From ac519f55713ce0aa4e25a7566b06b2fa5845e9b6 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 00:19:42 +0300
Subject: [PATCH 001/189] asset growth after other drugs

---
 src/js/DefaultRules.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 773f3c3076a..850c2f9060f 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -29,8 +29,8 @@ window.DefaultRules = (function() {
 		ProcessBellyImplant(slave, rule);
 		if (isFertile(slave))
 			ProcessContraceptives(slave, rule);
-		ProcessAssetGrowthDrugs(slave, rule);
 		ProcessOtherDrugs(slave, rule);
+		ProcessAssetGrowthDrugs(slave, rule);
 		ProcessDiet(slave, rule);
 		ProcessCuratives(slave, rule);
 		ProcessAphrodisiacs(slave, rule);
-- 
GitLab


From cc8ebaf1532baab61aef996ff701d4f58eabd40f Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 16:19:22 +0300
Subject: [PATCH 002/189] port slave name, slave title

---
 src/js/assayJS.tw           | 370 +++++++++++++++++++++++++++++++++++-
 src/utility/assayWidgets.tw | 351 +---------------------------------
 src/utility/miscWidgets.tw  |   4 +-
 3 files changed, 370 insertions(+), 355 deletions(-)

diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index e241f3d9d91..849a5e217dd 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -67,7 +67,7 @@ window.modScore = function modScore(slave) {
 	V.piercingScore = PiercingScore(slave);
 	V.tatScore = TatScore(slave);
 	V.modScore = V.tatScore + V.piercingScore;
-}
+};
 
 window.PiercingScore = function(slave) {
 	var piercingScore = 0;
@@ -268,8 +268,12 @@ window.getPronouns = function getPronouns(slave) {
 window.SlavePronouns = function SlavePronouns(slave) {
 	const V = State.variables;
 	var pronouns = getPronouns(slave);
-	V.pronoun = pronouns.pronoun, V.pronounCap = capFirstChar(pronouns.pronoun), V.possessive = pronouns.possessive, V.possessiveCap = capFirstChar(pronouns.possessive), V.object = pronouns.object;
-}
+	V.pronoun = pronouns.pronoun;
+	V.pronounCap = capFirstChar(pronouns.pronoun);
+	V.possessive = pronouns.possessive;
+	V.possessiveCap = capFirstChar(pronouns.possessive);
+	V.object = pronouns.object;
+};
 
 window.WrittenMaster = function WrittenMaster(slave) {
 	const V = State.variables;
@@ -414,4 +418,362 @@ window.fetishChangeChance = function fetishChangeChance(slave) {
 	}
 	
 	return chance;
-}
+};
+
+window.SlaveFullName = function SlaveFullName(slave) {
+	const V = State.variables;
+	const pair = slave.slaveSurname ? [slave.slaveName, slave.slaveSurname] : [slave.slaveName];
+	if (V.surnameOrder !== 1 && ["Cambodian", "Chinese", "Hungarian", "Japanese", "Korean", "Mongolian", "Taiwanese", "Vietnamese"].includes(slave.nationality))
+		pair.reverse();
+	return pair.join(" ");
+};
+
+window.SlaveTitle = function SlaveTitle(slave) {
+	const V = State.variables;
+	let r = "";
+	if (V.newDescriptions == 1) {
+		if (slave.dick > 0 && slave.balls > 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries == 1) {
+			if (random(1,100) > 50) {
+				r = "futanari";
+			} else {
+				r = "herm";
+			}
+		} else if (slave.dick > 0 && slave.balls == 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries == 1) {
+			r = "dickgirl";
+		} else if (slave.dick > 0 && slave.vagina > -1 && slave.ovaries == 0) {
+			r = "shemale";
+		} else if (slave.dick > 0 && slave.balls == 0 && slave.vagina == -1 && slave.ovaries == 0) {
+			r = "eunuch";
+		} else if (slave.dick > 0 && slave.balls > 0 && slave.vagina == -1 && slave.ovaries == 0) {
+			if (slave.face > 10 && slave.hips > -1 && slave.shoulders < 1 && slave.faceShape != "masculine") {
+				r = "trap";
+			} else if (slave.boobs > 800) {
+				r = "tittyboy";
+			} else if (slave.dick == 1 && slave.balls == 1) {
+				r = "sissy";
+			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 165 && slave.muscles < 5 && slave.visualAge < 19 && slave.faceShape != "masculine") {
+				r = "twink";
+			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 160 && slave.muscles < 5 && slave.visualAge < 19) {
+				r = "boytoy";
+			} else if (slave.muscles > 95 && slave.height >= 185) {
+				r = "titan";
+			} else if (slave.muscles > 30) {
+				r = "muscleboy";
+			} else {
+				r = "slaveboy";
+			}
+		} else if (slave.dick == 0 && slave.balls == 0 && slave.vagina > -1) {
+			if ((slave.shoulders > slave.hips || slave.faceShape == "masculine") && slave.boobs < 400 && slave.genes == "XY") {
+				r = "cuntboy";
+			} else if (slave.ovaries == 0 && slave.genes == "XY") {
+				r = "tranny";
+			} else if (slave.weight > 10 && slave.boobs > 800 && slave.birthsTotal > 0 && slave.physicalAge > 59) {
+				r = "GMILF";
+			} else if (slave.weight > 10 && slave.boobs > 800 && slave.birthsTotal > 0 && slave.physicalAge > 35) {
+				r = "MILF";
+			} else if (slave.lips > 70 && slave.boobs > 2000 && slave.butt > 3) {
+				r = "bimbo";
+			} else if (slave.hips > 1 && slave.boobs > 2000 && slave.butt > 3 && slave.waist < 50) {
+				r = "hourglass";
+			} else if (slave.muscles > 95 && slave.height >= 185) {
+				r = "amazon";
+			} else if (slave.muscles > 30) {
+				r = "musclegirl";
+			} else {
+				r = "slavegirl";
+			}
+		} else if (slave.dick == 0 && slave.balls == 0 && slave.vagina == -1) {
+			r = "neuter";
+		} else if (slave.dick == 0 && slave.vagina == -1) {
+			r = "ballslave";
+		} else {
+			r = "slave";
+		}
+
+		if (slave.visualAge < 13) {
+			if (slave.genes == "XY" && slave.vagina == -1) {
+				r = "shota " + r;
+			} else {
+				r = "loli " + r;
+			}
+		}
+
+		if (slave.dick > 9 && slave.balls > 9 && slave.boobs > 12000) {
+			r = "hyper " + r;
+		}
+
+		if (slave.boobs > 4000 && slave.lactation > 0) {
+			if (slave.physicalAge < 13) {
+				r = r + " calf";
+			} else {
+				r = r + " cow";
+			}
+		} else if (slave.lactation > 0) {
+			r = "milky " + r;
+		}
+
+		if (slave.boobs > 20000) {
+			r = "supermassive titted " + r;
+		} else if (slave.boobs > 10000) {
+			r = "giant titted " + r;
+		} else if (slave.boobs > 4000) {
+			r = "huge titted " + r;
+		} else if (slave.boobs > 1000) {
+			r = "busty " + r;
+		}
+
+		if (slave.dick > 5 && slave.balls > 5) {
+			r = "womb filling " + r;
+		} else if (slave.dick > 5) {
+			r = "well hung " + r;
+		}
+
+		if (slave.butt >= 12) {
+			r = "colossal assed " + r;
+		} else if (slave.butt >= 12) {
+			r = "massive assed " + r;
+		} else if (slave.butt >= 8) {
+			r = "fat assed " + r;
+		} else if (slave.butt >= 6) {
+			r = "bottom heavy " + r;
+		} else if (slave.butt >= 4) {
+			r = "big bottomed " + r;
+		}
+
+		if (slave.weight > 10 && slave.weight < 100 && slave.boobs > 5000 && slave.butt > 5 && slave.hips >= 2 && slave.bellyPreg >= 30000 && slave.births >= 10) {
+			r = r + "fertility goddess";
+		} else if (slave.births >= 6) {
+			r = r + " broodmother";
+		} else if (slave.births >= 3) {
+			r = r + " breeder";
+		}
+
+		if (slave.indenture > -1) {
+			r = "indentured " + r;
+		}
+
+		if (slave.preg > 10 && slave.pregKnown == 1) {
+			r = "pregnant " + r;
+		} else if (slave.bellyFluid >= 5000) {
+			r = "bloated " + r;
+		} else if (slave.belly >= 5000) {
+			r = "gravid " + r;
+		}
+
+		if (slave.fuckdoll > 0) {
+			r = r + " fuckdoll";
+		}
+	} else {
+		r = "slave"; /* I don't tihnk there is an 'else'? */
+		if ((slave.dick == 0) && (slave.vagina == -1)) { /* NULLS */
+			r = "null";
+				if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+					r = r + " cow";
+				} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+					r = r + " bimbo ";
+				} else if (slave.boobs > 6000) {
+					r = r + " boob";
+				} else if (slave.butt > 6) {
+					r = r + " ass";
+				} else if ((slave.muscles > 30) && (slave.height < 185)) {
+						r = r + " muscle";
+				}
+					if (slave.visualAge > 55) {
+						r = r + "GILF";
+					} else if (slave.visualAge > 35) {
+						r = r + "MILF";
+					} else if (slave.visualAge >= 25) {
+						r = r + "slave";
+					} else {
+						r = r + "girl";
+					}
+		}
+
+		if ((slave.dick == 0) && (slave.vagina != -1)) { /* FEMALES */
+			if (slave.visualAge > 55) {
+				r = "GILF";
+			} else if (slave.visualAge > 35) {
+				r = "MILF";
+			} else if (slave.visualAge >= 25) {
+				r = "slave";
+			} else {
+				r = "slavegirl";
+			}
+				if ((slave.muscles > 30) && (slave.height < 185)) {
+					r = "muscle " + r;
+				} else if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+					r = r + " cow";
+				} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+					r = r + " bimbo";
+				} else if (slave.boobs > 6000) {
+					r = "boob" + r;
+				} else if (slave.butt > 6) {
+					r = "ass" + r;
+				}
+		}
+
+		if ((slave.dick != 0) && (slave.vagina != -1)) {
+				if (slave.balls > 0) { /* FUTANARI: cock & balls & vagina */
+					r = "futanari ";
+				} else { /* FUTANARI: cock & vagina */
+					r = "futa ";
+				}
+					if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+						r = r + "cow";
+					} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+						r = r + "bimbo ";
+					} else if (slave.boobs > 6000) {
+						r = r + "boob";
+					} else if (slave.butt > 6) {
+						r = r + "ass";
+					} else if ((slave.muscles > 30) && (slave.height < 185)) {
+						r = r + "muscle";
+					}
+						if (slave.visualAge > 55) {
+							r = r + "GILF";
+						} else if (slave.visualAge > 35) {
+							r = r + "MILF";
+						} else if (slave.visualAge >= 25) {
+							r = r + "slave";
+						} else {
+							r = r + "girl";
+						}
+							if (slave.dick > 5 && slave.balls > 5 && slave.boobs > 5000) {
+								r = "hyper " + r;
+							}
+		}
+
+		if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0) && (slave.boobs > 300) && (slave.butt > 2)) { /* SHEMALES: cock & balls, T&A above minimum */
+			if (slave.visualAge > 55) {
+				r = "sheGILF";
+			} else if (slave.visualAge > 35) {
+				r = "sheMILF";
+			} else if (slave.visualAge >= 25) {
+				r = "shemale";
+			} else {
+				r = "tgirl";
+			}
+				if ((slave.muscles > 30) && (slave.height < 185)) {
+					r = "muscle" + r;
+				} else if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+					r = r + " cow";
+				} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+					r = r + " bimbo";
+				} else if (slave.boobs > 6000) {
+					r = "topheavy " + r;
+				} else if (slave.butt > 6) {
+					r = "bottomheavy " + r;
+				}
+		}
+
+		if ((slave.boobs < 300) || (slave.butt < 2)) {
+			if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0)) {
+				if ((slave.shoulders < 1) || (slave.muscles <= 30)) {
+					if ((slave.faceShape == "masculine") || (slave.faceShape == "androgynous")) { /* SISSIES: feminine shoulders or muscles, masculine faces */
+						if (slave.visualAge > 55) {
+							r = "sissyGILF";
+						} else if (slave.visualAge > 35) {
+							r = "sissyMILF";
+						} else {
+							r = "sissy";
+						}
+					} else { /* TRAPS: feminine shoulders or muscles, feminine faces */
+						if (slave.visualAge > 55) {
+							r = "trapGILF";
+						} else if (slave.visualAge > 35) {
+							r = "trapMILF";
+						} else if (slave.visualAge >= 25) {
+							r = "trap";
+						} else {
+							r = "trapgirl";
+						}
+					}
+						if (slave.lactation > 0) {
+							r = r + " cow";
+						} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+							r = r + " bimbo";
+						}
+				}
+			}
+		}
+
+		if ((slave.boobs < 300) || (slave.butt < 2)) {
+			if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0)) {
+				if ((slave.shoulders > 1) || (slave.muscles >= 30)) {	/* BITCHES: masculine shoulders or muscles */
+					r = "bitch";
+						if ((slave.muscles > 30) && (slave.height < 185)) {
+							r = "muscle" + r;
+						} else if (slave.lactation > 0) {
+							r = r + "cow";
+						} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+							r = "bimbo " + r;
+						}
+						if (slave.visualAge > 55) {
+							r = "aged " + r;
+						} else if (slave.visualAge > 35) {
+							r = "mature " + r;
+						} else if (slave.visualAge < 25) {
+							r = "young " + r;
+						}
+				}
+			}
+		}
+
+		if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls == 0)) {
+			r = "dick";
+				if (slave.visualAge > 55) {
+					r = r + "GILF";
+				} else if (slave.visualAge > 35) {
+					r = r + "MILF";
+				} else if (slave.visualAge >= 25) {
+					r = r + "slave";
+				} else {
+					r = r + "girl";
+				}
+					if ((slave.muscles > 30) && (slave.height < 185)) {
+						r = "muscle" + r;
+					} else if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+						r = r + " cow";
+					} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+						r = r + " bimbo";
+					} else if (slave.boobs > 6000) {
+						r = "boob " + r;
+					} else if (slave.butt > 6) {
+						r = "ass " + r;
+					}
+		}
+
+		if ((slave.muscles > 30) && (slave.height > 185)) {
+			r = "amazon " + r;
+		} else if ((slave.muscles < 30) && (slave.height > 185)) {
+			r = "statuesque " + r;
+		} else if ((slave.boobs < 800) && (slave.height < 150)) {
+			r = "petite " + r;
+		} else if ((slave.boobs > 800) && (slave.height < 150)) {
+			r = "shortstack " + r;
+		}
+
+		if (slave.births >= 5) {
+			r = r + " broodmother";
+		} else if (slave.births >= 2) {
+			r = r + " breeder";
+		}
+
+		if (slave.indenture > -1) {
+			r = "indentured " + r;
+		}
+
+		if (slave.preg > 10 && slave.pregKnown == 1) {
+			r = "pregnant " + r;
+		} else if (slave.bellyFluid >= 5000) {
+			r = "bloated " + r;
+		} else if (slave.belly >= 5000) {
+			r = "gravid " + r;
+		}
+
+		if (slave.fuckdoll > 0) {
+			r = r + " fuckdoll";
+		}
+	}
+	return r;
+};
diff --git a/src/utility/assayWidgets.tw b/src/utility/assayWidgets.tw
index 9fc4969469a..52ef51089bf 100644
--- a/src/utility/assayWidgets.tw
+++ b/src/utility/assayWidgets.tw
@@ -1221,356 +1221,7 @@
 <</widget>>
 
 <<widget "SlaveTitle">>
-
-<<if $newDescriptions == 1>>
-
-<<if $args[0].dick > 0 && $args[0].balls > 0 && $args[0].boobs > 300 && $args[0].vagina > -1 && $args[0].ovaries == 1>>
-	<<if random(1,100) > 50>>
-		<<set $desc = "futanari">>
-	<<else>>
-		<<set $desc = "herm">>
-	<</if>>
-<<elseif $args[0].dick > 0 && $args[0].balls == 0 && $args[0].boobs > 300 && $args[0].vagina > -1 && $args[0].ovaries == 1>>
-	<<set $desc = "dickgirl">>
-<<elseif $args[0].dick > 0 && $args[0].vagina > -1 && $args[0].ovaries == 0>>
-	<<set $desc = "shemale">>
-<<elseif $args[0].dick > 0 && $args[0].balls == 0 && $args[0].vagina == -1 && $args[0].ovaries == 0>>
-	<<set $desc = "eunuch">>
-<<elseif $args[0].dick > 0 && $args[0].balls > 0 && $args[0].vagina == -1 && $args[0].ovaries == 0>>
-	<<if $args[0].face > 10 && $args[0].hips > -1 && $args[0].shoulders < 1 && $args[0].faceShape != "masculine">>
-		<<set $desc = "trap">>
-	<<elseif $args[0].boobs > 800>>
-		<<set $desc = "tittyboy">>
-	<<elseif $args[0].dick == 1 && $args[0].balls == 1>>
-		<<set $desc = "sissy">>
-	<<elseif $args[0].dick > 1 && $args[0].balls > 1 && $args[0].height < 165 && $args[0].muscles < 5 && $args[0].visualAge < 19 && $args[0].faceShape != "masculine">>
-		<<set $desc = "twink">>
-	<<elseif $args[0].dick > 1 && $args[0].balls > 1 && $args[0].height < 160 && $args[0].muscles < 5 && $args[0].visualAge < 19>>
-		<<set $desc = "boytoy">>
-	<<elseif $args[0].muscles > 95 && $args[0].height >= 185>>
-		<<set $desc = "titan">>
-	<<elseif $args[0].muscles > 30>>
-		<<set $desc = "muscleboy">>
-	<<else>>
-		<<set $desc = "slaveboy">>
-	<</if>>
-<<elseif $args[0].dick == 0 && $args[0].balls == 0 && $args[0].vagina > -1>>
-	<<if ($args[0].shoulders > $args[0].hips || $args[0].faceShape == "masculine") && $args[0].boobs < 400 && $args[0].genes == "XY">>
-		<<set $desc = "cuntboy">>
-	<<elseif $args[0].ovaries == 0 && $args[0].genes == "XY">>
-		<<set $desc = "tranny">>
-	<<elseif $args[0].weight > 10 && $args[0].boobs > 800 && $args[0].birthsTotal > 0 && $args[0].physicalAge > 59>>
-		<<set $desc = "GMILF">>
-	<<elseif $args[0].weight > 10 && $args[0].boobs > 800 && $args[0].birthsTotal > 0 && $args[0].physicalAge > 35>>
-		<<set $desc = "MILF">>
-	<<elseif $args[0].lips > 70 && $args[0].boobs > 2000 && $args[0].butt > 3>>
-		<<set $desc = "bimbo">>
-	<<elseif $args[0].hips > 1 && $args[0].boobs > 2000 && $args[0].butt > 3 && $args[0].waist < 50>>
-		<<set $desc = "hourglass">>
-	<<elseif $args[0].muscles > 95 && $args[0].height >= 185>>
-		<<set $desc = "amazon">>
-	<<elseif $args[0].muscles > 30>>
-		<<set $desc = "musclegirl">>
-	<<else>>
-		<<set $desc = "slavegirl">>
-	<</if>>
-<<elseif $args[0].dick == 0 && $args[0].balls == 0 && $args[0].vagina == -1>>
-	<<set $desc = "neuter">>
-<<elseif $args[0].dick == 0 && $args[0].vagina == -1>>
-	<<set $desc = "ballslave">>
-<<else>>
-	<<set $desc = "slave">>
-<</if>>
-
-<<if $args[0].visualAge < 13>>
-	<<if $args[0].genes == "XY" && $args[0].vagina == -1>>
-		<<set $desc = "shota " + $desc>>
-	<<else>>
-		<<set $desc = "loli " + $desc>>
-	<</if>>
-<</if>>
-
-<<if $args[0].dick > 9 && $args[0].balls > 9 && $args[0].boobs > 12000>>
-	<<set $desc = "hyper " + $desc>>
-<</if>>
-
-<<if $args[0].boobs > 4000 && $args[0].lactation > 0>>
-	<<if $args[0].physicalAge < 13>>
-		<<set $desc = $desc + " calf">>
-	<<else>>
-		<<set $desc = $desc + " cow">>
-	<</if>>
-<<elseif $args[0].lactation > 0>>
-	<<set $desc = "milky " + $desc>>
-<</if>>
-
-<<if $args[0].boobs > 20000>>
-	<<set $desc = "supermassive titted " + $desc>>
-<<elseif $args[0].boobs > 10000>>
-	<<set $desc = "giant titted " + $desc>>
-<<elseif $args[0].boobs > 4000>>
-	<<set $desc = "huge titted " + $desc>>
-<<elseif $args[0].boobs > 1000>>
-	<<set $desc = "busty " + $desc>>
-<</if>>
-
-<<if $args[0].dick > 5 && $args[0].balls > 5>>
-	<<set $desc = "womb filling " + $desc>>
-<<elseif $args[0].dick > 5>>
-	<<set $desc = "well hung " + $desc>>
-<</if>>
-
-<<if $args[0].butt >= 12>>
-	<<set $desc = "colossal assed " + $desc>>
-<<elseif $args[0].butt >= 12>>
-	<<set $desc = "massive assed " + $desc>>
-<<elseif $args[0].butt >= 8>>
-	<<set $desc = "fat assed " + $desc>>
-<<elseif $args[0].butt >= 6>>
-	<<set $desc = "bottom heavy " + $desc>>
-<<elseif $args[0].butt >= 4>>
-	<<set $desc = "big bottomed " + $desc>>
-<</if>>
-
-<<if $args[0].weight > 10 && $args[0].weight < 100 && $args[0].boobs > 5000 && $args[0].butt > 5 && $args[0].hips >= 2 && $args[0].bellyPreg >= 30000 && $args[0].births >= 10>>
-	<<set $desc = $desc + "fertility goddess">>
-<<elseif $args[0].births >= 6>>
-	<<set $desc = $desc + " broodmother">>
-<<elseif $args[0].births >= 3>>
-	<<set $desc = $desc + " breeder">>
-<</if>>
-
-<<if $args[0].indenture > -1>>
-	<<set $desc = "indentured " + $desc>>
-<</if>>
-
-<<if $args[0].preg > 10 && $args[0].pregKnown == 1>>
-	<<set $desc = "pregnant " + $desc>>
-<<elseif $args[0].bellyFluid >= 5000>>
-	<<set $desc = "bloated " + $desc>>
-<<elseif $args[0].belly >= 5000>>
-	<<set $desc = "gravid " + $desc>>
-<</if>>
-
-<<if $args[0].fuckdoll > 0>>
-	<<set $desc = $desc + " fuckdoll">>
-<</if>>
-
-<<else>>
-
-<<set $desc = "slave">> /* I don't tihnk there is an 'else'? */
-<<if ($args[0].dick == 0) && ($args[0].vagina == -1)>> /* NULLS */
-	<<set $desc = "null">>
-		<<if ($args[0].lactation > 0) && ($args[0].boobs > 2000)>>
-			<<set $desc = $desc + " cow">>
-		<<elseif ($args[0].boobsImplant > 0) && ($args[0].buttImplant > 0)>>
-			<<set $desc = $desc + " bimbo ">>
-		<<elseif $args[0].boobs > 6000>>
-			<<set $desc = $desc + " boob">>
-		<<elseif $args[0].butt > 6>>
-			<<set $desc = $desc + " ass">>
-		<<elseif ($args[0].muscles > 30) && ($args[0].height < 185)>>
-				<<set $desc = $desc + " muscle">>
-		<</if>>
-			<<if $args[0].visualAge > 55>>
-				<<set $desc = $desc + "GILF">>
-			<<elseif $args[0].visualAge > 35>>
-				<<set $desc = $desc + "MILF">>
-			<<elseif $args[0].visualAge >= 25>>
-				<<set $desc = $desc + "slave">>
-			<<else>>
-				<<set $desc = $desc + "girl">>
-			<</if>>
-<</if>>
-
-<<if ($args[0].dick == 0) && ($args[0].vagina != -1)>> /* FEMALES */
-	<<if $args[0].visualAge > 55>>
-		<<set $desc = "GILF">>
-	<<elseif $args[0].visualAge > 35>>
-		<<set $desc = "MILF">>
-	<<elseif $args[0].visualAge >= 25>>
-		<<set $desc = "slave">>
-	<<else>>
-		<<set $desc = "slavegirl">>
-	<</if>>
-		<<if ($args[0].muscles > 30) && ($args[0].height < 185)>>
-				<<set $desc = "muscle " + $desc>>
-		<<elseif ($args[0].lactation > 0) && ($args[0].boobs > 2000)>>
-			<<set $desc = $desc + " cow">>
-		<<elseif ($args[0].boobsImplant > 0) && ($args[0].buttImplant > 0)>>
-			<<set $desc = $desc + " bimbo">>
-		<<elseif $args[0].boobs > 6000>>
-			<<set $desc = "boob" + $desc>>
-		<<elseif $args[0].butt > 6>>
-			<<set $desc = "ass" + $desc>>
-		<</if>>
-<</if>>
-
-<<if ($args[0].dick != 0) && ($args[0].vagina != -1)>>
-		<<if $args[0].balls > 0>> /* FUTANARI: cock & balls & vagina */
-			<<set $desc = "futanari ">>
-		<<else>> /* FUTANARI: cock & vagina */
-			<<set $desc = "futa ">>
-		<</if>>
-			<<if ($args[0].lactation > 0) && ($args[0].boobs > 2000)>>
-				<<set $desc = $desc + "cow">>
-			<<elseif ($args[0].boobsImplant > 0) && ($args[0].buttImplant > 0)>>
-				<<set $desc = $desc + "bimbo ">>
-			<<elseif $args[0].boobs > 6000>>
-				<<set $desc = $desc + "boob">>
-			<<elseif $args[0].butt > 6>>
-				<<set $desc = $desc + "ass">>
-			<<elseif ($args[0].muscles > 30) && ($args[0].height < 185)>>
-				<<set $desc = $desc + "muscle">>
-			<</if>>
-				<<if $args[0].visualAge > 55>>
-					<<set $desc = $desc + "GILF">>
-				<<elseif $args[0].visualAge > 35>>
-					<<set $desc = $desc + "MILF">>
-				<<elseif $args[0].visualAge >= 25>>
-					<<set $desc = $desc + "slave">>
-				<<else>>
-					<<set $desc = $desc + "girl">>
-				<</if>>
-					<<if $args[0].dick > 5 && $args[0].balls > 5 && $args[0].boobs > 5000>>
-						<<set $desc = "hyper " + $desc>>
-					<</if>>
-<</if>>
-
-<<if ($args[0].dick != 0) && ($args[0].vagina == -1) && ($args[0].balls > 0) && ($args[0].boobs > 300) && ($args[0].butt > 2)>> /* SHEMALES: cock & balls, T&A above minimum */
-	<<if $args[0].visualAge > 55>>
-		<<set $desc = "sheGILF">>
-	<<elseif $args[0].visualAge > 35>>
-		<<set $desc = "sheMILF">>
-	<<elseif $args[0].visualAge >= 25>>
-		<<set $desc = "shemale">>
-	<<else>>
-		<<set $desc = "tgirl">>
-	<</if>>
-		<<if ($args[0].muscles > 30) && ($args[0].height < 185)>>
-				<<set $desc = "muscle" + $desc>>
-		<<elseif ($args[0].lactation > 0) && ($args[0].boobs > 2000)>>
-			<<set $desc = $desc + " cow">>
-		<<elseif ($args[0].boobsImplant > 0) && ($args[0].buttImplant > 0)>>
-			<<set $desc = $desc + " bimbo">>
-		<<elseif $args[0].boobs > 6000>>
-			<<set $desc = "topheavy " + $desc>>
-		<<elseif $args[0].butt > 6>>
-			<<set $desc = "bottomheavy " + $desc>>
-		<</if>>
-<</if>>
-
-<<if ($args[0].boobs < 300) || ($args[0].butt < 2)>>
-	<<if ($args[0].dick != 0) && ($args[0].vagina == -1) && ($args[0].balls > 0)>>
-		<<if ($args[0].shoulders < 1) || ($args[0].muscles <= 30)>>
-			<<if ($args[0].faceShape == "masculine") || ($args[0].faceShape == "androgynous")>> /* SISSIES: feminine shoulders or muscles, masculine faces */
-				<<if $args[0].visualAge > 55>>
-					<<set $desc = "sissyGILF">>
-				<<elseif $args[0].visualAge > 35>>
-					<<set $desc = "sissyMILF">>
-				<<else>>
-					<<set $desc = "sissy">>
-				<</if>>
-			<<else>> /* TRAPS: feminine shoulders or muscles, feminine faces */
-				<<if $args[0].visualAge > 55>>
-					<<set $desc = "trapGILF">>
-				<<elseif $args[0].visualAge > 35>>
-					<<set $desc = "trapMILF">>
-				<<elseif $args[0].visualAge >= 25>>
-					<<set $desc = "trap">>
-				<<else>>
-					<<set $desc = "trapgirl">>
-				<</if>>
-			<</if>>
-				<<if $args[0].lactation > 0>>
-					<<set $desc = $desc + " cow">>
-				<<elseif ($args[0].boobsImplant > 0) && ($args[0].buttImplant > 0)>>
-					<<set $desc = $desc + " bimbo">>
-				<</if>>
-		<</if>>
-	<</if>>
-<</if>>
-
-<<if ($args[0].boobs < 300) || ($args[0].butt < 2)>>
-	<<if ($args[0].dick != 0) && ($args[0].vagina == -1) && ($args[0].balls > 0)>>
-		<<if ($args[0].shoulders > 1) || ($args[0].muscles >= 30)>>	/* BITCHES: masculine shoulders or muscles */
-			<<set $desc = "bitch">>
-				<<if ($args[0].muscles > 30) && ($args[0].height < 185)>>
-						<<set $desc = "muscle" + $desc>>
-				<<elseif $args[0].lactation > 0>>
-						<<set $desc = $desc + "cow">>
-				<<elseif ($args[0].boobsImplant > 0) && ($args[0].buttImplant > 0)>>
-						<<set $desc = "bimbo " + $desc>>
-				<</if>>
-					<<if $args[0].visualAge > 55>>
-						<<set $desc = "aged " + $desc>>
-					<<elseif $args[0].visualAge > 35>>
-						<<set $desc = "mature " + $desc>>
-					<<elseif $args[0].visualAge < 25>>
-						<<set $desc = "young " + $desc>>
-					<</if>>
-		<</if>>
-	<</if>>
-<</if>>
-
-<<if ($args[0].dick != 0) && ($args[0].vagina == -1) && ($args[0].balls == 0)>>
-	<<set $desc = "dick">>
-		<<if $args[0].visualAge > 55>>
-			<<set $desc = $desc + "GILF">>
-		<<elseif $args[0].visualAge > 35>>
-			<<set $desc = $desc + "MILF">>
-		<<elseif $args[0].visualAge >= 25>>
-			<<set $desc = $desc + "slave">>
-		<<else>>
-			<<set $desc = $desc + "girl">>
-		<</if>>
-			<<if ($args[0].muscles > 30) && ($args[0].height < 185)>>
-				<<set $desc = "muscle" + $desc>>
-			<<elseif ($args[0].lactation > 0) && ($args[0].boobs > 2000)>>
-				<<set $desc = $desc + " cow">>
-			<<elseif ($args[0].boobsImplant > 0) && ($args[0].buttImplant > 0)>>
-				<<set $desc = $desc + " bimbo">>
-			<<elseif $args[0].boobs > 6000>>
-				<<set $desc = "boob " + $desc>>
-			<<elseif $args[0].butt > 6>>
-				<<set $desc = "ass " + $desc>>
-			<</if>>
-<</if>>
-
-<<if ($args[0].muscles > 30) && ($args[0].height > 185)>>
-	<<set $desc = "amazon " + $desc>>
-<<elseif ($args[0].muscles < 30) && ($args[0].height > 185)>>
-	<<set $desc = "statuesque " + $desc>>
-<<elseif ($args[0].boobs < 800) && ($args[0].height < 150)>>
-	<<set $desc = "petite " + $desc>>
-<<elseif ($args[0].boobs > 800) && ($args[0].height < 150)>>
-	<<set $desc = "shortstack " + $desc>>
-<</if>>
-
-<<if $args[0].births >= 5>>
-	<<set $desc = $desc + " broodmother">>
-<<elseif $args[0].births >= 2>>
-	<<set $desc = $desc + " breeder">>
-<</if>>
-
-<<if $args[0].indenture > -1>>
-	<<set $desc = "indentured " + $desc>>
-<</if>>
-
-<<if $args[0].preg > 10 && $args[0].pregKnown == 1>>
-	<<set $desc = "pregnant " + $desc>>
-<<elseif $args[0].bellyFluid >= 5000>>
-	<<set $desc = "bloated " + $desc>>
-<<elseif $args[0].belly >= 5000>>
-	<<set $desc = "gravid " + $desc>>
-<</if>>
-
-<<if $args[0].fuckdoll > 0>>
-	<<set $desc = $desc + " fuckdoll">>
-<</if>>
-
-<</if>>
-
+	 <<set $desc = SlaveTitle($args[0])>>
 <</widget>>
 
 <<widget "slaveCost">>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 0ea8243bb8f..c0ffa160823 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -2077,7 +2077,9 @@ This experience
 /* see how they are on a single line? This permits "."s and other things to be appended directly onto the widget result */
 <<widget "PlayerName">><<if $surnameOrder != 1>><<switch $PC.nationality>><<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">><<if $PC.surname>>$PC.surname <</if>>$PC.name<<default>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</switch>><<else>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</if>><</widget>>
 
-<<widget "SlaveFullName">><<if $surnameOrder != 1>><<switch $args[0].nationality>><<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">><<if $args[0].slaveSurname>>$args[0].slaveSurname <</if>>$args[0].slaveName<<default>>$args[0].slaveName<<if $args[0].slaveSurname>> $args[0].slaveSurname<</if>><</switch>><<else>>$args[0].slaveName<<if $args[0].slaveSurname>> $args[0].slaveSurname<</if>><</if>><</widget>>
+<<widget "SlaveFullName">
+	<<= SlaveFullName($args[0])>>
+<</widget>>
 
 <<widget "PoliteRudeTitle">><<switch $args[0].nationality>><<case "Japanese">><<if $args[0].trust > 0>>$PC.name<<if $PC.title > 0>>kun<<else>>chan<</if>><<else>><<if $PC.surname>><<print $PC.surname>><<else>><<print $PC.name>><<s>>an<</if>><</if>><<default>><<if $args[0].intelligence < -2>><<Master>><<elseif $args[0].intelligence > 1>><<if $PC.title > 0>>Ma<<s>>ther<<else>>Mi<<s>>tre<<ss>><</if>><<elseif $args[0].trust > 0>>$PC.name<<else>><<if $PC.surname>>$PC.surname<<else>>$PC.name<</if>><</if>><</switch>><</widget>>
 
-- 
GitLab


From a19ff60c8b4ebf55d53d22da2b15b231c8908d55 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 16:19:57 +0300
Subject: [PATCH 003/189] begin porting slavesummaryuncached

---
 src/js/slaveSummaryWidgets.tw | 3217 +++++++++++++++++++++++++++++++++
 1 file changed, 3217 insertions(+)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index d203af4331c..55111f324d1 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -8,3 +8,3220 @@ window.clearSummaryCache = function clearSummaryCache(slave) {
 	else
 		setup.summaryCache[slave] = undefined;
 };
+
+window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
+	const V = State.variables;
+	let r = "";
+}
+<<if $abbreviateDevotion == 1>>
+	<<if slave.fetish == "mindbroken">>
+		r += `<span class="red">MB</span>`
+	<<elseif slave.devotion < -95>>
+		r += `<span class="darkviolet">VHate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+	<<elseif slave.devotion < -50>>
+		r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+	<<elseif slave.devotion < -20>>
+		r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+	<<elseif slave.devotion <= 20>>
+		r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+	<<elseif slave.devotion <= 50>>
+		r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+	<<elseif slave.devotion <= 95>>
+		r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+	<<else>>
+		r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+	<</if>>
+	<<if slave.fetish == "mindbroken">>
+		true;
+	<<elseif slave.trust < -95>>
+		r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+	<<elseif slave.trust < -50>>
+		r += `<span class="goldenrod">Terr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+	<<elseif slave.trust < -20>>
+		r += `<span class="gold">Fright${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+	<<elseif slave.trust <= 20>>
+		r += `<span class="yellow">Fear${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+	<<elseif slave.trust <= 50>>
+		<<if slave.devotion < -20>>
+			r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		<<else>>
+			r += `<span class="mediumaquamarine">Caref${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
+		<</if>>
+	<<elseif slave.trust < 95>>
+		<<if slave.devotion < -20>>
+			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		<<else>>
+			r += `<span class="mediumseagreen">Trust${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
+		<</if>>
+	<<else>>
+		<<if slave.devotion < -20>>
+			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		<<else>>
+			r += `<span class="seagreen">VTrust ${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
+		<</if>>
+	<</if>>
+<<elseif V.abbreviateDevotion == 2>>
+	<<if slave.fetish == "mindbroken">>
+		r += `<span class="red">Mindbroken.</span>`;
+	<<elseif slave.devotion < -95>>
+		r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+	<<elseif slave.devotion < -50>>
+		r += `<span class="darkviolet">Hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+	<<elseif slave.devotion < -20>>
+		r += `<span class="mediumorchid">Resistant${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+	<<elseif slave.devotion <= 20>>
+		r += `<span class="yellow">Ambivalent${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+	<<elseif slave.devotion <= 50>>
+		r += `<span class="hotpink">Accepting${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+	<<elseif slave.devotion <= 95>>
+		r += `<span class="deeppink">Devoted${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+	<<else>>
+		r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+	<</if>>
+	<<if slave.fetish == "mindbroken">>
+		true;
+	<<elseif slave.trust < -95>>
+		r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+	<<elseif slave.trust < -50>>
+		r += `<span class="goldenrod">Terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+	<<elseif slave.trust < -20>>
+		r += `<span class="gold">Frightened${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+	<<elseif slave.trust <= 20>>
+		r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+	<<elseif slave.trust <= 50>>
+		<<if slave.devotion < -20>>
+			r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+		<<else>>
+			r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+		<</if>>
+	<<elseif slave.trust < 95>>
+		<<if slave.devotion < -20>>
+			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+		<<else>>
+			r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+		<</if>>
+	<<else>>
+		<<if slave.devotion < -20>>
+			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+		<<else>>
+			r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+		<</if>>
+	<</if>>
+<</if>>
+
+<<if slave.fuckdoll == 0>>
+	<<if V.abbreviateRules == 1>>
+		<<switch slave.livingRules>>
+			<<case "luxurious">>
+				''LS:Lux''
+			<<case "normal">>
+				''LS:Nor''
+			<<default>>
+				''LS:Spa''
+		<</switch>>
+		<<if canTalk(slave)>>
+			<<switch slave.speechRules>>
+				<<case "permissive">>
+					''SpR:P''
+				<<case "accent elimination">>
+					''SpR:NoAcc''
+				<<case "language lessons">>
+					''SpR:LL''
+				<<default>>
+					''SpR:R''
+			<</switch>>
+		<</if>>
+		<<switch slave.relationshipRules>>
+			<<case "permissive">>
+				''ReR:P''
+			<<case "just friends">>
+				''ReR:Fr''
+			<<default>>
+				''ReR:R''
+		<</switch>>
+		<<switch slave.standardPunishment>>
+			<<case "confinement">>
+				''Pun:Conf''
+			<<case "whipping">>
+				''Pun:Whip''
+			<<case "chastity">>
+				''Pun:Chas''
+			<<default>>
+				''Pun:Situ''
+		<</switch>>
+		<<switch slave.standardReward>>
+			<<case "relaxation">>
+				''Rew:Relx''
+			<<case "drugs">>
+				''Rew:Drug''
+			<<case "orgasm">>
+				''Rew:Orga''
+			<<default>>
+				''Rew:Situ''
+		<</switch>>
+		<<switch slave.releaseRules>>
+			<<case "permissive">>
+				''MaR:P''
+			<<case "sapphic">>
+				''MaR:S''
+			<<case "masturbation">>
+				''MaR:M''
+			<<default>>
+				''MaR:R''
+		<</switch>>
+	<<elseif V.abbreviateRules == 2>>
+		r += `Living standard: ${slave.livingRules.`;
+		<<if canTalk(slave)>>
+			r += `Speech rules: ${slave.speechRules}.`
+		<</if>>
+		r += `Relationship rules: ${slave.relationshipRules}.`
+		r += `Typical punishment: ${slave.standardPunishment}.`
+		r += `Typical reward: ${slave.standardReward}.`
+		r += `Release rules: ${slave.releaseRules}.`
+	<</if>>
+<</if>>
+
+<<if slave.tired != 0>>
+	r += `Tired.`
+<</if>>
+
+<<if V.abbreviateDiet == 1>>
+	<<if slave.weight < -95>>
+		r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`
+	<<elseif slave.weight < -30>>
+		<<if slave.hips < -1>>
+			r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		<<else>>
+			r += `<strong><span class="red">W--${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		<</if>>
+	<<elseif slave.weight < -10>>
+		r += `<strong>W-${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+	<<elseif slave.weight <= 10 >>
+		r += `<strong>W${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+	<<elseif slave.weight <= 30>>
+		r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+	<<elseif slave.weight <= 95>>
+		<<if slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		<<else>>
+			r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		<</if>>
+	<<elseif slave.weight <= 130>>
+		<<if slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		<<else>>
+		r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		<</if>>
+	<<elseif slave.weight <= 160>>
+		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		<<else>>
+			r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		<</if>>
+	<<elseif slave.weight <= 190>>
+		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		<<else>>
+			r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		<</if>>
+	<<else>>
+		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		<<else>>
+			r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		<</if>>
+	<</if>>
+<<elseif V.abbreviateDiet == 2>>
+	<<if slave.weight < -95>>
+		r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+	<<elseif slave.weight < -30>>
+		<<if slave.hips < -1>>
+			Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.
+		<<else>>
+			r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		<</if>>
+	<<elseif slave.weight < -10>>
+		r += `Thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+	<<elseif slave.weight <= 10 >>
+		r += `Trim${V.summaryStats? `[${slave.weight}]`: ''}.`;
+	<<elseif slave.weight <= 30>>
+		r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
+	<<elseif slave.weight <= 95>>
+		<<if slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		<<else>>
+			r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		<</if>>
+	<<elseif slave.weight <= 130>>
+		<<if slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		<<else>>
+			r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		<</if>>
+	<<elseif slave.weight <= 160>>
+		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		<<else>>
+			r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		<</if>>
+	<<elseif slave.weight <= 190>>
+		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		<<else>>
+			r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		<</if>>
+	<<else>>
+		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+			r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		<<else>>
+			r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		<</if>>
+	<</if>>
+<</if>>
+
+<<if V.abbreviateDiet == 1>>
+	r += `<span class="teal">`
+	<<switch slave.diet>>
+		<<case "restricted">>
+			r += `<strong>Di:W-</strong>`;
+		<<case "fattening">>
+			r += `<strong>Di:W+</strong>`;
+		<<case "XX">>
+			r += `<strong>Di:XX+</strong>`;
+		<<case "XY">>
+			r += `<strong>Di:XY+</strong>`;
+		<<case "XXY">>
+			r += `<strong>Di:XXY+</strong>`;
+		<<case "muscle building">>
+			r += `<strong>Di:M+</strong>`;
+		<<case "slimming">>
+			r += `<strong>Di:M-</strong>`;
+		<<case "cum production">>
+			r += `<strong>Di:C+</strong>`;
+		<<case "cleansing">>
+			r += `<strong>Di:H+</strong>`;
+		<<case "fertility">>
+			r += `<strong>Di:F+</strong>`;
+	<</switch>>
+	r += `</span>`;
+	r += `<span class="cyan">`;
+	<<if slave.dietCum == 2>>
+		r += `<strong>Cum++</strong>`;
+	<<elseif ((slave.dietCum == 1) && (slave.dietMilk == 0))>>
+		r += `<strong>Cum+</strong>`;
+	<<elseif ((slave.dietCum == 1) && (slave.dietMilk == 1))>>
+		r += `<strong>Cum+ Milk+</strong>`;
+	<<elseif ((slave.dietCum == 0) && (slave.dietMilk == 1))>>
+		r += `<strong>Milk+</strong>`;
+	<<elseif (slave.dietMilk == 2)>>
+		r += `<strong>Milk++</strong>`;
+	<</if>>
+	r += `</span>`;
+<<elseif V.abbreviateDiet == 2>>
+	r += `<span class="teal">`;
+	<<switch slave.diet>>
+		<<case "restricted">>
+			r + `Dieting.`;
+		<<case "fattening">>
+			r + `Gaining weight.`;
+		<<case "XX">>
+			r + `Estrogen rich.`;
+		<<case "XY">>
+			r + `Testosterone rich.`;
+		<<case "XXY">>
+			r + `Futanari mix.`;
+		<<case "muscle building">>
+			r + `Pumping iron.`;
+		<<case "slimming">>
+			r + `Slimming down.`;
+		<<case "cum production">>
+			r + `Cum production.`;
+		<<case "cleansing">>
+			r + `Cleansing.`;
+		<<case "fertility">>
+			r + `Fertility.`;
+	<</switch>>
+	r += `</span>`;
+	<<if slave.dietCum == 2>>
+		r + `Diet Base: <span class="cyan">Cum Based.</span>`;
+	<<elseif ((slave.dietCum == 1) && (slave.dietMilk == 0))>>
+		r + `Diet Base: <span class="cyan">Cum Added.</span>`;
+	<<elseif ((slave.dietCum == 1) && (slave.dietMilk == 1))>>
+		r + `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
+	<<elseif ((slave.dietCum == 0) && (slave.dietMilk == 1))>>
+		r + `Diet Base: <span class="cyan">Milk Added.</span>`;
+	<<elseif (slave.dietMilk == 2)>>
+		r + `Diet Base: <span class="cyan">Milk Based.</span>`;
+	<</if>>
+<</if>>
+
+<<if V.abbreviateHealth == 1>>
+	<<if slave.health < -20>>
+		r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+	<<elseif slave.health <= 20>>
+		r += `<strong><span class="yellow">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+	<<elseif slave.health > 20>>
+		r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+	<</if>>
+<<elseif V.abbreviateHealth == 2>>
+	<<if slave.health < -90>>
+		r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+	<<elseif slave.health < -50>>
+		r += `<span class="red">Extremely unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+	<<elseif slave.health < -20>>
+		r += `<span class="red">Unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+	<<elseif slave.health <= 20>>
+		r += `<span class="yellow">Healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+	<<elseif slave.health <= 50>>
+		r += `<span class="green">Very healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+	<<elseif slave.health <= 90>>
+		r += `<span class="green">Extremely healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+	<<else>>
+		r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+	<</if>>
+<</if>>
+
+<<if V.abbreviateDrugs == 1>>
+	r += `<span class="tan">`
+	<<switch slave.drugs>>
+		<<case "breast injections">>
+			r += `<strong>Dr:Boobs+</strong>`;
+		<<case "intensive breast injections">>
+			r += `<strong>Dr:Boobs++</strong>`;
+		<<case "hyper breast injections">>
+			r += `<strong>Dr:Boobs+++</strong>`;
+		<<case "butt injections">>
+			r += `<strong>Dr:Butt+</strong>`;
+		<<case "intensive butt injections">>
+			r += `<strong>Dr:Butt++</strong>`;
+		<<case "hyper butt injections">>
+			r += `<strong>Dr:Butt+++</strong>`;
+		<<case "lip injections">>
+			r += `<strong>Dr:Lip+</strong>`;
+		<<case "fertility drugs">>
+			r += `<strong>Dr:Fert+</strong>`;
+		<<case "super fertility drugs">>
+			r += `<strong>Dr:Fert++</strong>`;
+		<<case "penis enhancement">>
+			r += `<strong>Dr:Dick+</strong>`;
+		<<case "intensive penis enhancement">>
+			r += `<strong>Dr:Dick++</strong>`;
+		<<case "hyper penis enhancement">>
+			r += `<strong>Dr:Dick+++</strong>`;
+		<<case "testicle enhancement">>
+			r += `<strong>Dr:Balls+</strong>`;
+		<<case "intensive testicle enhancement">>
+			r += `<strong>Dr:Balls++</strong>`;
+		<<case "hyper testicle enhancement">>
+			r += `<strong>Dr:Balls+++</strong>`;
+		<<case "psychosuppressants">>
+			r += `<strong>Dr:Psych</strong>`;
+		<<case "steroids">>
+			r += `<strong>Dr:Ster</strong>`;
+		<<case "female hormone injections">>
+			r += `<strong>Dr:HormXX++</strong>`;
+		<<case "male hormone injections">>
+			r += `<strong>Dr:HormXY++</strong>`;
+		<<case "hormone enhancers">>
+			r += `<strong>Dr:Horm+</strong>`;
+		<<case "hormone blockers">>
+			r += `<strong>Dr:Horm-</strong>`;
+		<<case "anti-aging cream">>
+			r += `<strong>Dr:Age-</strong>`;
+		<<case "appetite suppressors">>
+			r += `<strong>Dr:ApSup</strong>`;
+		<<case "penis atrophiers">>
+			r += `<strong>Dr:Dick-</strong>`;
+		<<case "testicle atrophiers">>
+			r += `<strong>Dr:Balls-</strong>`;
+		<<case "clitoris atrophiers">>
+			r += `<strong>Dr:Clit-</strong>`;
+		<<case "labia atrophiers">>
+			r += `<strong>Dr:Labia-</strong>`;
+		<<case "nipple atrophiers">>
+			r += `<strong>Dr:Nipple-</strong>`;
+		<<case "lip atrophiers">>
+			r += `<strong>Dr:Lip-</strong>`;
+		<<case "breast redistributors">>
+			r += `<strong>Dr:Breast-</strong>`;
+		<<case "butt redistributors">>
+			r += `<strong>Dr:Butt-</strong>`;
+		<<case "sag-B-gone">>
+			r += `<strong>Dr:AntiSag</strong>`;
+		<<case "growth stimulants">>
+			r += `<strong>Dr:groStim</strong>`;
+	<</switch>>
+	r += `</span>`;
+	r += `<span class="lightgreen">`;
+	<<if slave.curatives == 2>>
+		r += `<strong>Cura</strong>`;
+	<<elseif slave.curatives == 1>>
+		r += `<strong>Prev</strong>`;
+	<</if>>
+	r += `</span>`;
+	<<if slave.aphrodisiacs != 0>>
+		r += `<span class="lightblue">`;
+		<<if slave.aphrodisiacs == 1>>
+			r += `<strong>Aph</strong>`;
+		<<elseif slave.aphrodisiacs == 2>>
+			r += `<strong>Aph++</strong>`;
+		<<else>>
+			r += `<strong>Anaph</strong>`;
+		<</if>>
+		r += `</span>`;
+	<</if>>
+	<<if slave.addict != 0>>
+		r += `<span class="cyan">Add</span>`;
+	<</if>>
+	r += `<span class="lightsalmon">`;
+	<<if slave.hormones > 1>>
+		r += `<strong>Ho:F+</strong>`;
+	<<elseif slave.hormones > 0>>
+		r += `<strong>Ho:F</strong>`;
+	<<elseif slave.hormones < -1>>
+		r += `<strong>Ho:M+</strong>`;
+	<<elseif slave.hormones < 0>>
+		r += `<strong>Ho:M</strong>`;
+	<</if>>
+	r += `</span>`;
+	r += `<span class="mediumseagreen">`;
+	<<if (slave.bellyImplant > -1)>>
+		r += `<strong>Belly Imp</strong>`;
+	<<elseif ((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)>>
+		r += `<strong>Barr</strong>`;
+	<<elseif slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+		r += `<strong>Prepub</strong>`;
+	<<elseif slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+		r += `<strong>Meno</strong>`;
+	<<elseif slave.pregWeek < 0>>
+		r += `<strong>Postpartum</strong>`;
+	<<elseif slave.preg == -1>>
+		r += `<strong>CC</strong>`;
+	<<elseif slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+		r += `<strong>Fert+</strong>`;
+	<<elseif ((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1>>
+		r += `<strong>Preg?</strong>`;
+	<<elseif (slave.preg >= 36) && (slave.broodmother > 0)>>
+		r += `<strong>Perm preg</strong>`;
+	<<elseif slave.pregKnown == 1>>
+		r += `<strong>${slave.pregWeek} wks preg</strong>`;
+	<</if>>
+	r += `</span>`;
+	<<if slave.induce == 1>>
+		r += `<span class="orange"><strong>Early Labor</strong></span>`;
+	<</if>>
+	<<if slave.pubertyXY == 0 && slave.balls > 0>>
+		r += `<strong>Prepub balls</strong>`;
+	<</if>>
+	<<if slave.balls > 0 && slave.vasectomy == 1>>
+		r += `<strong>Vasect</strong>`;
+	<</if>>
+	r += `<span class="springgreen">`;
+	<<if slave.inflation == 3>>
+		r += `<strong>8 ltr ${slave.inflationType}</strong>`;
+	<<elseif slave.inflation == 2>>
+		r += `<strong>4 ltr ${slave.inflationType}</strong>`;
+	<<elseif slave.inflation == 1>>
+		r += `<strong>2 ltr ${slave.inflationType}</strong>`;
+	<<elseif slave.bellyFluid > 0>>
+		r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
+	<</if>>
+	r += `</span>`;
+// TODO: done up to here
+<<elseif V.abbreviateDrugs == 2>>
+	<<if (slave.drugs != "no drugs") && (slave.drugs != "none")>>
+		<span class="tan">On slave.drugs.</span>
+	<</if>>
+	<span class="lightgreen">
+	<<if slave.curatives == 2>>
+		On curatives.
+	<<elseif slave.curatives == 1>>
+		On preventatives.
+	<</if>>
+	</span>
+	<span class="lightblue">
+	<<if slave.aphrodisiacs > 0>>
+		On <<if slave.aphrodisiacs > 1>>extreme <</if>>aphrodisiacs.
+	<<elseif slave.aphrodisiacs === -1>>
+		On anaphrodisiacs.
+	<</if>>
+	</span>
+	<<if slave.addict != 0>>
+		<span class="cyan">Addict.</span>
+	<</if>>
+	<span class="lightsalmon">
+	<<if slave.hormones > 1>>
+		Heavy female hormones.
+	<<elseif slave.hormones > 0>>
+		Female hormones.
+	<<elseif slave.hormones < -1>>
+		Heavy male hormones.
+	<<elseif slave.hormones < 0>>
+		Male hormones.
+	<</if>>
+	</span>
+	<span class="mediumseagreen">
+	<<if (slave.bellyImplant > -1)>>
+		Belly Implant.
+	<<elseif ((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)>>
+		Barren.
+	<<elseif slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+		Not ovulating yet.
+	<<elseif slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+		Menopausal.
+	<<elseif slave.pregWeek < 0>>
+		Postpartum.
+	<<elseif slave.preg == -1>>
+		On contraceptives.
+	<<elseif slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+		Fertile.
+	<<elseif ((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1>>
+		May be pregnant.
+	<<elseif (slave.preg >= 36) && (slave.broodmother > 0)>>
+		Permanently pregnant.
+	<<elseif slave.pregKnown == 1>>
+		<<if slave.pregType < 2 || slave.broodmother > 0>>
+			slave.pregWeek weeks pregnant.
+		<<else>>
+			slave.pregWeek weeks pregnant with
+			<<if slave.pregType >= 40>>
+				a tremendous brood of offspring.
+			<<elseif slave.pregType >= 20>>
+				a brood of offspring.
+			<<elseif slave.pregType >= 10>>
+				slave.pregType babies.
+			<<elseif slave.pregType == 9>>
+				nonuplets.
+			<<elseif slave.pregType == 8>>
+				octuplets.
+			<<elseif slave.pregType == 7>>
+				septuplets.
+			<<elseif slave.pregType == 6>>
+				sextuplets.
+			<<elseif slave.pregType == 5>>
+				quintuplets.
+			<<elseif slave.pregType == 4>>
+				quadruplets.
+			<<elseif slave.pregType == 3>>
+				triplets.
+			<<else>>
+				twins.
+			<</if>>
+		<</if>>
+	<</if>>
+	</span>
+	<<if slave.induce == 1>>
+		<span class="orange">Showing signs of early labor.</span>
+	<</if>>
+	<<if slave.pubertyXY == 0 && slave.balls > 0>>
+		Has not had first ejaculation.
+	<</if>>
+	<<if slave.balls > 0 && slave.vasectomy == 1>>
+		Vasectomy.
+	<</if>>
+	<span class="springgreen">
+	<<if slave.inflation == 3>>
+		Filled with 8 liters of slave.inflationType.
+	<<elseif slave.inflation == 2>>
+		Filled with 4 liters of slave.inflationType.
+	<<elseif slave.inflation == 1>>
+		Filled with 2 liters of slave.inflationType.
+	<<elseif slave.bellyFluid > 0>>
+		Stuffed with <<print slave.bellyFluid>>ccs of slave.inflationType.
+	<</if>>
+	</span>
+<</if>>
+
+<<if V.abbreviateNationality+V.abbreviateGenitalia+V.abbreviatePhysicals+V.abbreviateSkills+V.abbreviateMental != 0>>
+	<br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
+<</if>>
+
+<<SlaveTitle slave>>
+<<set V.seed = V.desc.substring(0,1)>>
+<<set V.seed = V.seed.toUpperCase()>>
+<<set V.desc = V.seed + V.desc.substring(1)>>
+''<span class="coral">V.desc<<if V.abbreviatePhysicals == 2>>.<</if>></span>''
+
+<<if V.seeRace == 1>>
+<span class="tan">
+<<if V.abbreviateRace == 1>>
+<<switch slave.race>>
+<<case "white">>
+	C
+<<case "asian">>
+	A
+<<case "indo-aryan">>
+	I
+<<case "latina">>
+	L
+<<case "middle eastern">>
+	ME
+<<case "black">>
+	B
+<<case "pacific islander">>
+	PI
+<<case "malay">>
+	M
+<<case "amerindian">>
+	AI
+<<case "semitic">>
+	S
+<<case "southern european">>
+	SE
+<<case "mixed race">>
+	MR
+<<default>>
+	<<print slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)>>
+<</switch>>
+<<elseif V.abbreviateRace == 2>>
+<<switch slave.race>>
+<<case "white">>
+	Caucasian.
+<<case "asian">>
+	Asian.
+<<case "indo-aryan">>
+	Indo-aryan.
+<<case "latina">>
+	Latina.
+<<case "middle eastern">>
+	Middle Eastern.
+<<case "black">>
+	Black.
+<<case "pacific islander">>
+	Pacific Islander.
+<<case "malay">>
+	Malay.
+<<case "amerindian">>
+	Amerindian.
+<<case "semitic">>
+	Semitic.
+<<case "southern european">>
+	Southern European.
+<<case "mixed race">>
+	Mixed race.
+<<default>>
+	<<print slave.race.charAt(0).toUpperCase() + slave.race.slice(1)>>.
+<</switch>>
+<</if>>
+</span>
+<</if>>
+
+<<if V.abbreviateNationality == 1>>
+<span class="tan">
+<<switch slave.nationality>>
+<<case "Afghan">>
+	Afg
+<<case "Albanian">>
+	Alb
+<<case "Algerian">>
+	Alg
+<<case "American">>
+	USA
+<<case "Andorran">>
+	And
+<<case "Angolan">>
+	Ang
+<<case "Antiguan">>
+	AB
+<<case "Argentinian">>
+	Arg
+<<case "Armenian">>
+	Arm
+<<case "Aruban">>
+	Aru
+<<case "Australian">>
+	Aus
+<<case "Austrian">>
+	Aut
+<<case "Azerbaijani">>
+	Aze
+<<case "Bahamian">>
+	Bah
+<<case "Bahraini">>
+	Bah
+<<case "Bangladeshi">>
+	Bgd
+<<case "Barbadian">>
+	Bar
+<<case "Belarusian">>
+	Ber
+<<case "Belgian">>
+	Bel
+<<case "Belizean">>
+	Blz
+<<case "Beninese">>
+	Ben
+<<case "Bermudian">>
+	Bmd
+<<case "Bhutanese">>
+	Bhu
+<<case "Bissau-Guinean">>
+	GB
+<<case "Bolivian">>
+	Bol
+<<case "Bosnian">>
+	Bos
+<<case "Brazilian">>
+	Bra
+<<case "British">>
+	UK
+<<case "Bruneian">>
+	Bru
+<<case "Bulgarian">>
+	Bul
+<<case "Burkinabé">>
+	BF
+<<case "Burmese">>
+	Bur
+<<case "Burundian">>
+	Bnd
+<<case "Cambodian">>
+	Kam
+<<case "Cameroonian">>
+	Cam
+<<case "Canadian">>
+	Can
+<<case "Cape Verdean">>
+	CV
+<<case "Catalan">>
+	Cat
+<<case "Central African">>
+	CAR
+<<case "Chadian">>
+	Cha
+<<case "Chilean">>
+	Chl
+<<case "Chinese">>
+	Chi
+<<case "Colombian">>
+	Col
+<<case "Comorian">>
+	Com
+<<case "Congolese">>
+	RC
+<<case "a Cook Islander">>
+	CI
+<<case "Costa Rican">>
+	CR
+<<case "Croatian">>
+	Cro
+<<case "Cuban">>
+	Cub
+<<case "Cypriot">>
+	Cyp
+<<case "Czech">>
+	Cze
+<<case "Danish">>
+	Den
+<<case "Djiboutian">>
+	Dji
+<<case "Dominican">>
+	DR
+<<case "Dominiquais">>
+	Dom
+<<case "Dutch">>
+	Nld
+<<case "East Timorese">>
+	ET
+<<case "Ecuadorian">>
+	Ecu
+<<case "Egyptian">>
+	Egy
+<<case "Emirati">>
+	UAE
+<<case "Equatoguinean">>
+	EG
+<<case "Eritrean">>
+	Eri
+<<case "Estonian">>
+	Est
+<<case "Ethiopian">>
+	Eth
+<<case "Fijian">>
+	Fij
+<<case "Filipina">>
+	Phl
+<<case "Finnish">>
+	Fin
+<<case "French">>
+	Fra
+<<case "French Guianan">>
+	FG
+<<case "French Polynesian">>
+	FP
+<<case "Gabonese">>
+	Gab
+<<case "Gambian">>
+	Gam
+<<case "Georgian">>
+	Geo
+<<case "German">>
+	Ger
+<<case "Ghanan">>
+	Gha
+<<case "Greek">>
+	Gre
+<<case "Greenlandic">>
+	Grn
+<<case "Grenadian">>
+	Gda
+<<case "Guamanian">>
+	Gua
+<<case "Guatemalan">>
+	Gtm
+<<case "Guinean">>
+	Gui
+<<case "Guyanese">>
+	Guy
+<<case "Haitian">>
+	Hai
+<<case "Honduran">>
+	Hon
+<<case "Hungarian">>
+	Hun
+<<case "I-Kiribati">>
+	Kir
+<<case "Icelandic">>
+	Ice
+<<case "Indian">>
+	Ind
+<<case "Indonesian">>
+	Idn
+<<case "Iranian">>
+	Irn
+<<case "Iraqi">>
+	Irq
+<<case "Irish">>
+	Irl
+<<case "Israeli">>
+	Isr
+<<case "Italian">>
+	Ita
+<<case "Ivorian">>
+	IC
+<<case "Jamaican">>
+	Jam
+<<case "Japanese">>
+	Jpn
+<<case "Jordanian">>
+	Jor
+<<case "Kazakh">>
+	Kaz
+<<case "Kenyan">>
+	Ken
+<<case "Kittitian">>
+	SKN
+<<case "Korean">>
+	Kor
+<<case "Kosovan">>
+	Kos
+<<case "Kurdish">>
+	Kur
+<<case "Kuwaiti">>
+	Kuw
+<<case "Kyrgyz">>
+	Kyr
+<<case "Laotian">>
+	Lao
+<<case "Latvian">>
+	Lat
+<<case "Lebanese">>
+	Lbn
+<<case "Liberian">>
+	Lib
+<<case "Libyan">>
+	Lby
+<<case "a Liechtensteiner">>
+	Lie
+<<case "Lithuanian">>
+	Lit
+<<case "Luxembourgian">>
+	Lux
+<<case "Macedonian">>
+	Mac
+<<case "Malagasy">>
+	Mad
+<<case "Malawian">>
+	Mwi
+<<case "Malaysian">>
+	Mys
+<<case "Maldivian">>
+	Mdv
+<<case "Malian">>
+	Mal
+<<case "Maltese">>
+	Mlt
+<<case "Marshallese">>
+	MI
+<<case "Mauritanian">>
+	Mta
+<<case "Mauritian">>
+	Mts
+<<case "Mexican">>
+	Mex
+<<case "Micronesian">>
+	FSM
+<<case "Moldovan">>
+	Mol
+<<case "Monégasque">>
+	Mnc
+<<case "Mongolian">>
+	Mon
+<<case "Montenegrin">>
+	Mng
+<<case "Moroccan">>
+	Mor
+<<case "Mosotho">>
+	Les
+<<case "Motswana">>
+	Bot
+<<case "Mozambican">>
+	Moz
+<<case "Namibian">>
+	Nam
+<<case "Nauruan">>
+	Nau
+<<case "Nepalese">>
+	Npl
+<<case "New Caledonian">>
+	NC
+<<case "a New Zealander">>
+	NZ
+<<case "Ni-Vanuatu">>
+	Van
+<<case "Nicaraguan">>
+	Nic
+<<case "Nigerian">>
+	Nga
+<<case "Nigerien">>
+	Ngr
+<<case "Niuean">>
+	Niu
+<<case "Norwegian">>
+	Nor
+<<case "Omani">>
+	Omn
+<<case "Pakistani">>
+	Pak
+<<case "Palauan">>
+	Plu
+<<case "Palestinian">>
+	Pal
+<<case "Panamanian">>
+	Pan
+<<case "Papua New Guinean">>
+	PNG
+<<case "Paraguayan">>
+	Par
+<<case "Peruvian">>
+	Per
+<<case "Polish">>
+	Pol
+<<case "Portuguese">>
+	Por
+<<case "Puerto Rican">>
+	PR
+<<case "Qatari">>
+	Qat
+<<case "Romanian">>
+	Rom
+<<case "Russian">>
+	Rus
+<<case "Rwandan">>
+	Rwa
+<<case "Sahrawi">>
+	Sah
+<<case "Saint Lucian">>
+	SL
+<<case "Salvadoran">>
+	ES
+<<case "Sammarinese">>
+	SM
+<<case "Samoan">>
+	Sam
+<<case "São Toméan">>
+	STP
+<<case "Saudi">>
+	Sau
+<<case "Scottish">>
+	Sco
+<<case "Senegalese">>
+	Sen
+<<case "Serbian">>
+	Srb
+<<case "Seychellois">>
+	Sey
+<<case "Sierra Leonean">>
+	Sie
+<<case "Singaporean">>
+	Sng
+<<case "Slovak">>
+	Svk
+<<case "Slovene">>
+	Svn
+<<case "a Solomon Islander">>
+	SI
+<<case "Somali">>
+	Som
+<<case "South African">>
+	RSA
+<<case "South Sudanese">>
+	SS
+<<case "Spanish">>
+	Spa
+<<case "Sri Lankan">>
+	Sri
+<<case "Sudanese">>
+	Sud
+<<case "Surinamese">>
+	Sur
+<<case "Swazi">>
+	Swa
+<<case "Swedish">>
+	Swe
+<<case "Swiss">>
+	Swi
+<<case "Syrian">>
+	Syr
+<<case "Taiwanese">>
+	Tai
+<<case "Tajik">>
+	Taj
+<<case "Tanzanian">>
+	Tza
+<<case "Thai">>
+	Tha
+<<case "Tibetan">>
+	Tib
+<<case "Togolese">>
+	Tog
+<<case "Tongan">>
+	Ton
+<<case "Trinidadian">>
+	TT
+<<case "Tunisian">>
+	Tun
+<<case "Turkish">>
+	Tur
+<<case "Turkmen">>
+	Tkm
+<<case "Tuvaluan">>
+	Tuv
+<<case "Ugandan">>
+	Uga
+<<case "Ukrainian">>
+	Ukr
+<<case "Uruguayan">>
+	Uru
+<<case "Uzbek">>
+	Uzb
+<<case "Vatican">>
+	VC
+<<case "Venezuelan">>
+	Ven
+<<case "Vietnamese">>
+	Vnm
+<<case "Vincentian">>
+	SVG
+<<case "Yemeni">>
+	Yem
+<<case "Zairian">>
+	DRC
+<<case "Zambian">>
+	Zam
+<<case "Zimbabwean">>
+	<<if slave.race == "white">>
+		Rho
+	<<else>>
+		Zwe
+	<</if>>
+<<case "Ancient Chinese Revivalist">>
+	Chi Rev
+<<case "Ancient Egyptian Revivalist">>
+	Egy Rev
+<<case "Arabian Revivalist">>
+	Ara Rev
+<<case "Aztec Revivalist">>
+	Azt Rev
+<<case "Edo Revivalist">>
+	Edo Rev
+<<case "Roman Revivalist">>
+	Rom Rev
+<<case "" "none" "slave" "Stateless">>
+	None
+<<default>>
+	<<print slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)>>
+<</switch>>
+</span>
+<<elseif V.abbreviateNationality == 2>>
+<span class="tan">
+<<switch slave.nationality>>
+<<case "Zimbabwean">>
+	<<if slave.race == "white">>
+		Rhodesian.
+	<<else>>
+		slave.nationality.
+	<</if>>
+<<case "slave" "none" "" "Stateless">>
+	Stateless.
+<<default>>
+	slave.nationality.
+<</switch>>
+</span>
+<</if>>
+
+<<if V.abbreviatePhysicals == 1>>
+<span class="pink">
+	<<switch slave.skin>>
+	<<case "light brown">>
+		L. Br
+	<<case "dark brown">>
+		D. Br
+	<<case "light olive">>
+		L. Oli
+	<<case "dark olive">>
+		D. Oli
+	<<case "extremely pale">>
+		Ex. Pa
+	<<case "pure white">>
+		P. Whi
+	<<case "tanned">>
+		Tan
+	<<case "dark" "fair" "pale">>
+		<<print slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)>>
+	<<default>>
+		<<print slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)>>
+	<</switch>>
+<<else>>
+<<print slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)>> skin.
+</span>
+<</if>>
+<<if V.abbreviateGenitalia == 1>>
+<<if slave.dick > 0>>
+<span class="pink">
+<<if slave.balls == 0>>
+	Geld
+<</if>>
+<<if (slave.dick > 8) && (slave.balls > 8)>>
+	Junk+++
+<<elseif (slave.dick > 5) && (slave.balls > 5)>>
+	Junk++
+<<elseif (slave.dick > 4) && (slave.balls > 4)>>
+	Junk+
+<<elseif (slave.dick > 3) && (slave.balls > 3)>>
+	Junk
+<<elseif slave.dick > 8>>
+	Dick+++
+<<elseif slave.dick > 5>>
+	Dick++
+<<elseif slave.dick > 4>>
+	Dick+
+<<elseif slave.dick > 3>>
+	Dick
+<<elseif slave.balls > 10>>
+	Balls+++
+<<elseif slave.balls > 5>>
+	Balls++
+<<elseif slave.balls > 4>>
+	Balls+
+<<elseif slave.balls > 3>>
+	Balls
+<</if>>
+</span>
+<</if>>
+<<if slave.vagina == 0>>
+	<span class="lime">VV</span>
+<<elseif (slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")>>
+	<span class="pink">NBP</span>
+<</if>>
+<<if slave.anus == 0>>
+	<span class="lime">AV</span>
+<</if>>
+<span class="pink">
+<<if (slave.vagina > 3) && (slave.anus > 3)>>
+	V++A++
+<<elseif (slave.vagina > 2) && (slave.anus > 2)>>
+	V+A+
+<<elseif slave.vagina > 3>>
+	V++
+<<elseif slave.vagina > 2>>
+	V+
+<<elseif slave.anus > 3>>
+	A++
+<<elseif slave.anus > 2>>
+	A+
+<</if>>
+</span>
+<<elseif V.abbreviateGenitalia == 2>>
+<<if slave.dick > 0>>
+<span class="pink">
+<<if slave.balls == 0>>
+	Gelded.
+<</if>>
+<<if (slave.dick > 8) && (slave.balls > 8)>>
+	Hyper dick & balls.
+<<elseif (slave.dick > 5) && (slave.balls > 5)>>
+	Monster dick & balls.
+<<elseif (slave.dick > 4) && (slave.balls > 4)>>
+	Huge dick & balls.
+<<elseif (slave.dick > 3) && (slave.balls > 3)>>
+	Big dick & balls.
+<<elseif slave.dick > 8>>
+	Hyper dong.
+<<elseif slave.dick > 5>>
+	Monster dong.
+<<elseif slave.dick > 4>>
+	Huge dick.
+<<elseif slave.dick > 3>>
+	Big dick.
+<<elseif slave.balls > 8>>
+	Hyper balls.
+<<elseif slave.balls > 5>>
+	Monstrous balls.
+<<elseif slave.balls > 4>>
+	Huge balls.
+<<elseif slave.balls > 3>>
+	Big balls.
+<</if>>
+</span>
+<</if>>
+<<if slave.vagina == 0>>
+	<span class="lime">Virgin.</span>
+<<elseif (slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")>>
+	<span class="pink">Naked, barefoot, and pregnant.</span>
+<</if>>
+<<if slave.anus == 0>>
+	<span class="lime">Anal virgin.</span>
+<</if>>
+<span class="pink">
+<<if (slave.vagina > 3) && (slave.anus > 3)>>
+	Blown out holes.
+<<elseif (slave.vagina > 2) && (slave.anus > 2)>>
+	High mileage.
+<<elseif slave.vagina > 3>>
+	Cavernous pussy.
+<<elseif slave.vagina > 2>>
+	Loose pussy.
+<<elseif slave.anus > 3>>
+	Permagaped anus.
+<<elseif slave.anus > 2>>
+	Gaping anus.
+<</if>>
+</span>
+<</if>>
+
+<<if V.abbreviatePhysicals == 1>>
+<span class="pink">
+<<if V.showAgeDetail == 1>>
+	slave.actualAge
+<<elseif slave.actualAge >= 40>>
+	40s
+<<elseif slave.actualAge >= 35>>
+	Lt30s
+<<elseif slave.actualAge >= 30>>
+	Ea30s
+<<elseif slave.actualAge >= 25>>
+	Lt20s
+<<elseif slave.actualAge >= 20>>
+	Ea20s
+<<elseif slave.actualAge >= 18>>
+	slave.actualAge
+<</if>>
+<<if slave.actualAge != slave.physicalAge>>
+	<<print slave.physicalAge>>y-bdy
+<</if>>
+<<if slave.visualAge != slave.physicalAge>>
+	Lks<<print slave.visualAge>>
+<</if>>
+<<if slave.face < -95>>
+	<span class="red">Face---<<if V.summaryStats>>[slave.face]<</if>></span>
+<<elseif slave.face < -40>>
+	<span class="red">Face--<<if V.summaryStats>>[slave.face]<</if>></span>
+<<elseif slave.face < -10>>
+	<span class="red">Face-<<if V.summaryStats>>[slave.face]<</if>></span>
+<<elseif slave.face <= 10>>
+	Face<<if V.summaryStats>>[slave.face]<</if>>
+<<elseif slave.face <= 40>>
+	<span class="pink">Face+<<if V.summaryStats>>[slave.face]<</if>></span>
+<<elseif slave.face <= 95>>
+	<span class="pink">Face++<<if V.summaryStats>>[slave.face]<</if>></span>
+<<else>>
+	<span class="pink">Face+++<<if V.summaryStats>>[slave.face]<</if>></span>
+<</if>>
+<<if slave.eyes == -2>>
+	<span class="red">Blind</span>
+<<elseif ((slave.eyes == -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
+	<span class="yellow">Sight-</span>
+<</if>>
+
+<<if slave.markings != "none">>
+	Markings
+<</if>>
+
+<<if slave.lips > 95>>
+	Facepussy
+<<elseif slave.lips > 70>>
+	Lips+++<<if V.summaryStats>>[slave.lips]<</if>>
+<<elseif slave.lips > 40>>
+	Lips++<<if V.summaryStats>>[slave.lips]<</if>>
+<<elseif slave.lips > 20>>
+	Lips+<<if V.summaryStats>>[slave.lips]<</if>>
+<<elseif slave.lips > 10>>
+	Lips<<if V.summaryStats>>[slave.lips]<</if>>
+<<else>>
+	<span class="red">Lips-</span><<if V.summaryStats>>[slave.lips]<</if>>
+<</if>>
+<<if slave.teeth == "crooked">>
+	<span class="yellow">Cr Teeth</span>
+<<elseif slave.teeth == "cosmetic braces">>
+	Cos Braces
+<<elseif slave.teeth == "straightening braces">>
+	Braces
+<<elseif slave.teeth == "removable">>
+	Rem Teeth
+<<elseif slave.teeth == "pointy">>
+	Fangs
+<</if>>
+<<if slave.muscles > 95>>
+	Musc++<<if V.summaryStats>>[slave.muscles]<</if>>
+<<elseif slave.muscles > 50>>
+	Musc+<<if V.summaryStats>>[slave.muscles]<</if>>
+<<elseif slave.muscles > 5>>
+	Fit<<if V.summaryStats>>[slave.muscles]<</if>>
+<<elseif slave.muscles > -6>>
+	Soft<<if V.summaryStats>>[slave.muscles]<</if>>
+<<elseif slave.muscles > -31>>
+	<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+		<span class="red">Weak</span><<if V.summaryStats>>[slave.muscles]<</if>>
+	<<else>>
+		Soft<<if V.summaryStats>>[slave.muscles]<</if>>
+	<</if>>
+<<elseif slave.muscles > -96>>
+	<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+		<span class="red">Weak+</span><<if V.summaryStats>>[slave.muscles]<</if>>
+	<<else>>
+		Soft+<<if V.summaryStats>>[slave.muscles]<</if>>
+	<</if>>
+<<else>>
+	<span class="red">Weak++</span><<if V.summaryStats>>[slave.muscles]<</if>>
+<</if>>
+<<if slave.amp != 0>>
+  <<if slave.amp == -1>>
+	P-Limbs
+  <<elseif slave.amp == -2>>
+	Sex P-Limbs
+  <<elseif slave.amp == -3>>
+	Beauty P-Limbs
+  <<elseif slave.amp == -4>>
+	Combat P-Limbs
+  <<elseif slave.amp == -5>>
+	Cyber P-Limbs
+  <<else>>
+	Amp
+  <</if>>
+<</if>>
+<<if !canWalk(slave)>>
+	Immob
+<</if>>
+<<if slave.heels == 1>>
+	Heel
+<</if>>
+</span>
+<<if slave.voice == 0>>
+	<span class="pink">Mute</span>
+<<else>>
+	<<if slave.accent == 3>>
+		<span class="red">Acc--</span>
+	<<elseif slave.accent == 2>>
+		Acc-
+	<<elseif slave.accent == 4>>
+		Acc--
+	<<elseif slave.accent == 1>>
+		<span class="pink">Acc</span>
+	<</if>>
+<</if>>
+<span class="pink">
+<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
+	T&A+++
+<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
+	T&A++
+<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
+	T&A+
+<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
+	T&A
+<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
+	Girlish
+<<elseif slave.boobs >= 12000>>
+	Boobs+++
+<<elseif slave.boobs > 4000>>
+	Boobs++
+<<elseif slave.boobs > 2000>>
+	Boobs+
+<<elseif slave.boobs > 800>>
+	Boobs
+<<elseif slave.butt > 9>>
+	Ass+++
+<<elseif slave.butt > 8>>
+	Ass++
+<<elseif slave.butt > 6>>
+	Ass+
+<<elseif slave.butt > 4>>
+	Ass
+<</if>>
+</span>
+<span class="red">
+<<if slave.hips < -1>>
+<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	Disp+
+<</if>>
+<<elseif slave.hips < 0>>
+<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	Disp+
+<</if>>
+<<elseif slave.hips > 2>>
+<<if slave.butt <= 8>>
+	Disp-
+<</if>>
+<<elseif slave.hips > 1>>
+<<if slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+	Disp-
+<</if>>
+<<elseif slave.hips > 0>>
+<<if slave.butt > 8>>
+<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	Disp+
+<</if>>
+<<elseif slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+	Disp-
+<</if>>
+<<else>>
+<<if slave.butt > 6>>
+<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	Disp+
+<</if>>
+<<elseif slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+	Disp-
+<</if>>
+<</if>>
+</span>
+<<if slave.waist > 95>><span class="red">Wst---<<if V.summaryStats>>[slave.waist]<</if>></span>
+<<elseif slave.waist > 40>><span class="red">Wst--<<if V.summaryStats>>[slave.waist]<</if>></span>
+<<elseif slave.waist > 10>><span class="red">Wst-<<if V.summaryStats>>[slave.waist]<</if>></span>
+<<elseif slave.waist >= -10>>Wst<<if V.summaryStats>>[slave.waist]<</if>>
+<<elseif slave.waist >= -40>><span class="pink">Wst+<<if V.summaryStats>>[slave.waist]<</if>></span>
+<<elseif slave.waist >= -95>><span class="pink">Wst++<<if V.summaryStats>>[slave.waist]<</if>></span>
+<<else>><span class="pink">Wst+++<<if V.summaryStats>>[slave.waist]<</if>></span>
+<</if>>
+<span class="pink">
+<<if (slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)>>
+	Natr
+<<else>>
+	Impl
+<</if>>
+<<if slave.lactation == 1>>
+	Lact
+<<elseif slave.lactation == 2>>
+	Lact++
+<</if>>
+<<run modScore(slave)>>
+<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
+<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
+	Mods++
+<<elseif V.modScore > 7>>
+	Mods+
+<<else>>
+	Mods
+<</if>>
+<<if slave.brand != 0>>
+	Br
+<</if>>
+</span>
+<<elseif V.abbreviatePhysicals == 2>>
+<span class="pink">
+<<if V.showAgeDetail == 1>>
+	Age slave.actualAge.
+<<elseif slave.actualAge >= 40>>
+	Forties.
+<<elseif slave.actualAge >= 35>>
+	Late thirties.
+<<elseif slave.actualAge >= 30>>
+	Early thirties.
+<<elseif slave.actualAge >= 25>>
+	Late twenties.
+<<elseif slave.actualAge >= 20>>
+	Early twenties.
+<<elseif slave.actualAge >= 19>>
+	Nineteen.
+<<elseif slave.actualAge >= 18>>
+	Eighteen.
+<<else>>
+	Underage.
+<</if>>
+/*
+**  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
+**  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
+*/
+<<if ((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))>>
+        <<if slave.actualAge != slave.physicalAge>>
+                slave.physicalAge year old body.
+        <</if>>
+        <<if slave.visualAge != slave.physicalAge>>
+                Looks slave.visualAge.
+        <</if>>
+<<else>>
+        /*
+        **  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
+        **  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
+        **  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
+        **  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
+        **  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
+        **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
+        **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
+        */
+        Appears to have a slave.visualAge year old body.
+<</if>>
+<<if slave.inducedNCS == 1>>
+        (<span class="orange">NCS</span>)
+<</if>>
+<<if slave.face < -95>>
+	<span class="red">Very ugly<<if V.summaryStats>> [slave.face]<</if>></span>
+<<elseif slave.face < -40>>
+	<span class="red">Ugly<<if V.summaryStats>> [slave.face]<</if>></span>
+<<elseif slave.face < -10>>
+	<span class="red">Unattractive<<if V.summaryStats>> [slave.face]<</if>></span>
+<<elseif slave.face <= 10>>
+	Average<<if V.summaryStats>> [slave.face]<</if>>
+<<elseif slave.face <= 40>>
+	<span class="pink">Attractive<<if V.summaryStats>> [slave.face]<</if>></span>
+<<elseif slave.face <= 95>>
+	<span class="pink">Beautiful<<if V.summaryStats>> [slave.face]<</if>></span>
+<<else>>
+	<span class="pink">Very beautiful<<if V.summaryStats>> [slave.face]<</if>></span>
+<</if>>
+slave.faceShape face.
+<<if slave.eyes <= -2>>
+	<span class="red">Blind.</span>
+<<elseif ((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
+	<span class="yellow">Nearsighted.</span>
+<</if>>
+<<if slave.lips > 95>>
+	Facepussy<<if V.summaryStats>> [slave.lips]<</if>>.
+<<elseif slave.lips > 70>>
+	Huge lips<<if V.summaryStats>> [slave.lips]<</if>>.
+<<elseif slave.lips > 40>>
+	Big lips<<if V.summaryStats>> [slave.lips]<</if>>.
+<<elseif slave.lips > 20>>
+	Pretty lips<<if V.summaryStats>> [slave.lips]<</if>>.
+<<elseif slave.lips > 10>>
+	Normal lips<<if V.summaryStats>> [slave.lips]<</if>>.
+<<else>>
+	<span class="red">Thin lips<<if V.summaryStats>> [slave.lips]<</if>>.</span>
+<</if>>
+<<if slave.teeth == "crooked">>
+	<span class="yellow">Crooked teeth.</span>
+<<elseif slave.teeth == "cosmetic braces">>
+	Cosmetic braces.
+<<elseif slave.teeth == "straightening braces">>
+	Braces.
+<<elseif slave.teeth == "removable">>
+	Removable teeth.
+<<elseif slave.teeth == "pointy">>
+	Sharp fangs.
+<</if>>
+<<if slave.muscles > 95>>
+	Hugely muscular<<if V.summaryStats>> [slave.muscles]<</if>>.
+<<elseif slave.muscles > 50>>
+	Muscular<<if V.summaryStats>> [slave.muscles]<</if>>.
+<<elseif slave.muscles > 5>>
+	Fit<<if V.summaryStats>> [slave.muscles]<</if>>.
+<<elseif slave.muscles > -6>>
+	Soft<<if V.summaryStats>> [slave.muscles]<</if>>.
+<<elseif slave.muscles > -31>>
+	<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+		<span class="red">Weak<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+	<<else>>
+		Weak<<if V.summaryStats>> [slave.muscles]<</if>>.
+	<</if>>
+<<elseif slave.muscles > -96>>
+	<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+		<span class="red">Very weak<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+	<<else>>
+		Very weak<<if V.summaryStats>> [slave.muscles]<</if>>.
+	<</if>>
+<<else>>
+	<span class="red">Frail<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+<</if>>
+<<if slave.amp != 0>>
+	<<if slave.amp == -1>>
+	Prosthetic limbs.
+	<<elseif slave.amp == -2>>
+	Sexy prosthetic limbs.
+	<<elseif slave.amp == -3>>
+	Beautiful prosthetic limbs.
+	<<elseif slave.amp == -4>>
+	Deadly prosthetic limbs.
+	<<elseif slave.amp == -5>>
+	Cyber prosthetic limbs.
+	<<else>>
+	Amputee.
+	<</if>>
+<</if>>
+<<if !canWalk(slave)>>
+	Immobile.
+<</if>>
+<<if slave.heels == 1>>
+	Heeled.
+<</if>>
+</span>
+<<if slave.voice == 0>>
+	<span class="pink">Mute.</span>
+<<else>>
+	<<if slave.accent == 3>>
+		<span class="red">Bad accent.</span>
+	<<elseif slave.accent == 4>>
+		<span class="red">No language skills.</span>
+	<<elseif slave.accent == 2>>
+		Accent.
+	<<elseif slave.accent == 1>>
+		<span class="pink">Cute accent.</span>
+	<</if>>
+<</if>>
+<span class="pink">
+<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
+	Hyper T&A.
+<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
+	Enormous T&A.
+<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
+	Huge T&A.
+<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
+	Big T&A.
+<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
+	Girlish figure.
+<<elseif slave.boobs >= 12000>>
+	Immobilizing tits.
+<<elseif slave.boobs > 4000>>
+	Monstrous tits.
+<<elseif slave.boobs > 2000>>
+	Huge tits.
+<<elseif slave.boobs > 800>>
+	Big tits.
+<<elseif slave.butt > 9>>
+	Hyper ass.
+<<elseif slave.butt > 8>>
+	Titanic ass.
+<<elseif slave.butt > 6>>
+	Huge ass.
+<<elseif slave.butt > 4>>
+	Big ass.
+<</if>>
+</span>
+<span class="red">
+<<if slave.hips < -1>>
+<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	Disproportionately big butt.
+<</if>>
+<<elseif slave.hips < 0>>
+<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	Disproportionately big butt.
+<</if>>
+<<elseif slave.hips > 2>>
+<<if slave.butt <= 8>>
+	Disproportionately small butt.
+<</if>>
+<<elseif slave.hips > 1>>
+<<if slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+	Disproportionately small butt.
+<</if>>
+<<elseif slave.hips > 0>>
+<<if slave.butt > 8>>
+<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	Disproportionately big butt.
+<</if>>
+<<elseif slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+	Disproportionately small butt.
+<</if>>
+<<else>>
+<<if slave.butt > 6>>
+<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	Disproportionately big butt.
+<</if>>
+<<elseif slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+	Disproportionately small butt.
+<</if>>
+<</if>>
+</span>
+<<if slave.waist > 95>>
+<span class="red">Masculine waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+<<elseif slave.waist > 40>><span class="red">Ugly waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+<<elseif slave.waist > 10>><span class="red">Unattractive waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+<<elseif slave.waist >= -10>>Average waist<<if V.summaryStats>> [slave.waist]<</if>>.
+<<elseif slave.waist >= -40>><span class="pink">Feminine waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+<<elseif slave.waist >= -95>><span class="pink">Hourglass waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+<<else>><span class="pink">Absurdly narrow waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+<</if>>
+<span class="pink">
+<<if (slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)>>
+	Implants.
+<<elseif (slave.faceImplant >= 30) || (slave.waist < -95)>>
+	Surgery enhanced.
+<<else>>
+	All natural.
+<</if>>
+<<if slave.lactation == 1>>
+	Lactating naturally.
+<<elseif slave.lactation == 2>>
+	Heavy lactation.
+<</if>>
+<<run modScore(slave)>>
+<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
+<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
+	Extensive body mods.
+<<elseif V.modScore > 7>>
+	Noticeable body mods.
+<<else>>
+	Light body mods.
+<</if>>
+<<if slave.brand != 0>>
+	Branded.
+<</if>>
+</span>
+<</if>>
+
+<br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
+
+<<if V.abbreviateSkills == 1>>
+<<if slave.fetish == "mindbroken">>
+<<elseif slave.intelligenceImplant == 1>>
+<<switch slave.intelligence>>
+<<case 3>>
+	<span class="deepskyblue">I+++(e)</span>
+<<case 2>>
+	<span class="deepskyblue">I++(e)</span>
+<<case 1>>
+	<span class="deepskyblue">I+(e)</span>
+<<case -1>>
+	<span class="orangered">I-(e)</span>
+<<case -2>>
+	<span class="orangered">I--(e)</span>
+<<case -3>>
+	<span class="orangered">I---(e)</span>
+<<default>>
+	I(e)
+<</switch>>
+<<else>>
+<<switch slave.intelligence>>
+<<case 3>>
+	<span class="deepskyblue">I+++</span>
+<<case 2>>
+	<span class="deepskyblue">I++</span>
+<<case 1>>
+	<span class="deepskyblue">I+</span>
+<<case -1>>
+	<span class="orangered">I-</span>
+<<case -2>>
+	<span class="orangered">I--</span>
+<<case -3>>
+	<span class="orangered">I---</span>
+<<default>>
+	I
+<</switch>>
+<</if>>
+
+<<set _SSkills = slave.analSkill+slave.oralSkill>>
+<span class="aquamarine">
+<<if ((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))>>
+	MSS
+<<else>>
+	<<set _SSkills += slave.vaginalSkill>>
+	<<set _SSkills = Math.trunc(_SSkills)>>
+	<<if _SSkills > 180>>S++
+		<<elseif (_SSkills > 120) && (slave.vagina < 0)>>Sh++
+		<<elseif _SSkills > 90>>S+
+		<<elseif _SSkills > 30>>S
+		<<else>>S-
+	<</if>>
+	<<if V.summaryStats>>[_SSkills]<</if>>
+	<<if slave.whoreSkill >= 100>>W+++
+		<<elseif slave.whoreSkill > 60>>W++
+		<<elseif slave.whoreSkill > 30>>W+
+		<<elseif slave.whoreSkill > 10>>W
+	<</if>>
+	<<if slave.whoreSkill > 10>>
+		<<if V.summaryStats>>[slave.whoreSkill]<</if>>
+	<</if>>
+	<<if slave.entertainSkill >= 100>>E+++
+		<<elseif slave.entertainSkill > 60>>E++
+		<<elseif slave.entertainSkill > 30>>E+
+		<<elseif slave.entertainSkill > 10>>E
+	<</if>>
+	<<if slave.entertainSkill > 10>>
+		<<if V.summaryStats>>[slave.entertainSkill]<</if>>
+	<</if>>
+<</if>>
+<<if slave.combatSkill > 0>>
+	C
+<</if>>
+</span>
+<<if slave.prestige > 0>>
+<span class="green">
+<<if slave.prestige > 2>>
+	Prest++
+<<elseif slave.prestige == 2>>
+	Prest+
+<<elseif slave.prestige == 1>>
+	Prest
+<</if>>
+</span>
+<</if>>
+<<elseif V.abbreviateSkills == 2>>
+<<if slave.fetish == "mindbroken">>
+<<elseif slave.intelligenceImplant == 1>>
+<<switch slave.intelligence>>
+<<case 3>>
+	<span class="deepskyblue">Brilliant, educated.</span>
+<<case 2>>
+	<span class="deepskyblue">Very smart, educated.</span>
+<<case 1>>
+	<span class="deepskyblue">Smart, educated.</span>
+<<case -1>>
+	<span class="orangered">Slow, educated.</span>
+<<case -2>>
+	<span class="orangered">Very slow, educated.</span>
+<<case -3>>
+	<span class="orangered">Moronic, educated.</span>
+<<default>>
+	Average intelligence, educated.
+<</switch>>
+<<else>>
+<<switch slave.intelligence>>
+<<case 3>>
+	<span class="deepskyblue">Brilliant.</span>
+<<case 2>>
+	<span class="deepskyblue">Very smart.</span>
+<<case 1>>
+	<span class="deepskyblue">Smart.</span>
+<<case -1>>
+	<span class="orangered">Slow.</span>
+<<case -2>>
+	<span class="orangered">Very slow.</span>
+<<case -3>>
+	<span class="orangered">Moronic.</span>
+<<default>>
+	Average intelligence.
+<</switch>>
+<</if>>
+<<set _SSkills = (slave.analSkill+slave.oralSkill)>>
+<span class="aquamarine">
+<<if ((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))>>
+	Masterful Sex Slave.
+<<else>>
+	<<set _SSkills += slave.vaginalSkill>>
+	<<if _SSkills > 180>>
+		Sex master<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
+	<<elseif (_SSkills > 120) && (slave.vagina < 0)>>
+		Masterful shemale<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
+	<<elseif _SSkills > 90>>
+		Sexual expert<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
+	<<elseif _SSkills > 30>>
+		Sexually skilled<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
+	<<else>>
+		Sexually unskilled<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
+	<</if>>
+	<<if slave.whoreSkill >= 100>>
+		Masterful whore<<if V.summaryStats>> [slave.whoreSkill]<</if>>.
+	<<elseif slave.whoreSkill >= 60>>
+		Expert whore<<if V.summaryStats>> [slave.whoreSkill]<</if>>.
+	<<elseif slave.whoreSkill >= 30>>
+		Skilled whore<<if V.summaryStats>> [slave.whoreSkill]<</if>>.
+	<<elseif slave.whoreSkill >= 10>>
+		Basic whore<<if V.summaryStats>> [slave.whoreSkill]<</if>>.
+	<</if>>
+	<<if slave.entertainSkill >= 100>>
+		Masterful entertainer<<if V.summaryStats>> [slave.entertainSkill]<</if>>.
+	<<elseif slave.entertainSkill >= 60>>
+		Expert entertainer<<if V.summaryStats>> [slave.entertainSkill]<</if>>.
+	<<elseif slave.entertainSkill >= 30>>
+		Skilled entertainer<<if V.summaryStats>> [slave.entertainSkill]<</if>>.
+	<<elseif slave.entertainSkill >= 10>>
+		Basic entertainer<<if V.summaryStats>> [slave.entertainSkill]<</if>>.
+	<</if>>
+<</if>>
+<<if slave.combatSkill > 0>>
+	Trained fighter.
+<</if>>
+</span>
+<<if slave.prestige > 0>>
+<span class="green">
+<<if slave.prestige > 2>>
+	Extremely prestigious.
+<<elseif slave.prestige == 2>>
+	Very prestigious.
+<<elseif slave.prestige == 1>>
+	Prestigious.
+<</if>>
+</span>
+<</if>>
+<</if>>
+
+<<if V.abbreviateMental == 1>>
+	<<if slave.fetish != "mindbroken">>
+	<<if slave.fetishKnown == 1>>
+	<span class="lightcoral">
+	<<switch slave.fetish>>
+	<<case "submissive">>
+	<<if slave.fetishStrength > 95>>
+		Sub++
+	<<elseif slave.fetishStrength > 60>>
+		Sub+
+	<<else>>
+		Sub
+	<</if>>
+	<<case "cumslut">>
+	<<if slave.fetishStrength > 95>>
+		Oral++
+	<<elseif slave.fetishStrength > 60>>
+		Oral+
+	<<else>>
+		Oral
+	<</if>>
+	<<case "humiliation">>
+	<<if slave.fetishStrength > 95>>
+		Humil++
+	<<elseif slave.fetishStrength > 60>>
+		Humil+
+	<<else>>
+		Humil
+	<</if>>
+	<<case "buttslut">>
+	<<if slave.fetishStrength > 95>>
+		Anal++
+	<<elseif slave.fetishStrength > 60>>
+		Anal+
+	<<else>>
+		Anal
+	<</if>>
+	<<case "boobs">>
+	<<if slave.fetishStrength > 95>>
+		Boobs++
+	<<elseif slave.fetishStrength > 60>>
+		Boobs+
+	<<else>>
+		Boobs
+	<</if>>
+	<<case "sadist">>
+	<<if slave.fetishStrength > 95>>
+		Sadist++
+	<<elseif slave.fetishStrength > 60>>
+		Sadist+
+	<<else>>
+		Sadist
+	<</if>>
+	<<case "masochist">>
+	<<if slave.fetishStrength > 95>>
+		Pain++
+	<<elseif slave.fetishStrength > 60>>
+		Pain+
+	<<else>>
+		Pain
+	<</if>>
+	<<case "dom">>
+	<<if slave.fetishStrength > 95>>
+		Dom++
+	<<elseif slave.fetishStrength > 60>>
+		Dom+
+	<<else>>
+		Dom
+	<</if>>
+	<<case "pregnancy">>
+	<<if slave.fetishStrength > 95>>
+		Preg++
+	<<elseif slave.fetishStrength > 60>>
+		Preg+
+	<<else>>
+		Preg
+	<</if>>
+	<<default>>
+		Vanilla
+	<</switch>>
+	<<if V.summaryStats>>[slave.fetishStrength]<</if>>
+	</span>
+	<</if>>
+	<<if slave.attrKnown == 1>>
+	<<if slave.attrXY <= 5>>
+		<span class="red">XY---<<if V.summaryStats>>[slave.attrXY]<</if>></span>
+	<<elseif slave.attrXY <= 15>>
+		<span class="red">XY--<<if V.summaryStats>>[slave.attrXY]<</if>></span>
+	<<elseif slave.attrXY <= 35>>
+		<span class="red">XY-<<if V.summaryStats>>[slave.attrXY]<</if>></span>
+	<<elseif slave.attrXY <= 65>>
+		XY<<if V.summaryStats>>[slave.attrXY]<</if>>
+	<<elseif slave.attrXY <= 85>>
+		<span class="green">XY+<<if V.summaryStats>>[slave.attrXY]<</if>></span>
+	<<elseif slave.attrXY <= 95>>
+		<span class="green">XY++<<if V.summaryStats>>[slave.attrXY]<</if>></span>
+	<<elseif slave.attrXX > 95>>
+		<<if slave.energy <= 95>>
+			<span class="green">Omni!</span>
+		<<else>>
+			<span class="green">Omni+Nympho!!</span>
+		<</if>>
+	<<else>>
+		<span class="green">XY+++<<if V.summaryStats>>[slave.attrXY]<</if>></span>
+	<</if>>
+	<<if slave.attrXX <= 5>>
+		<span class="red">XX---<<if V.summaryStats>>[slave.attrXX]<</if>></span>
+	<<elseif slave.attrXX <= 15>>
+		<span class="red">XX--<<if V.summaryStats>>[slave.attrXX]<</if>></span>
+	<<elseif slave.attrXX <= 35>>
+		<span class="red">XX-<<if V.summaryStats>>[slave.attrXX]<</if>></span>
+	<<elseif slave.attrXX <= 65>>
+		XX<<if V.summaryStats>>[slave.attrXX]<</if>>
+	<<elseif slave.attrXX <= 85>>
+		<span class="green">XX+<<if V.summaryStats>>[slave.attrXX]<</if>></span>
+	<<elseif slave.attrXX <= 95>>
+		<span class="green">XX++<<if V.summaryStats>>[slave.attrXX]<</if>></span>
+	<<elseif slave.attrXY <= 95>>
+		<span class="green">XX+++<<if V.summaryStats>>[slave.attrXX]<</if>></span>
+	<</if>>
+	<<if slave.energy > 95>>
+		<<if (slave.attrXY <= 95) || (slave.attrXX <= 95)>>
+			<span class="green">Nympho!</span>
+		<</if>>
+	<<elseif slave.energy > 80>>
+		<span class="green">SD++<<if V.summaryStats>>[slave.energy]<</if>></span>
+	<<elseif slave.energy > 60>>
+		<span class="green">SD+<<if V.summaryStats>>[slave.energy]<</if>></span>
+	<<elseif slave.energy > 40>>
+		<span class="yellow">SD<<if V.summaryStats>>[slave.energy]<</if>></span>
+	<<elseif slave.energy > 20>>
+		<span class="red">SD-<<if V.summaryStats>>[slave.energy]<</if>></span>
+	<<else>>
+		<span class="red">SD--<<if V.summaryStats>>[slave.energy]<</if>></span>
+		<</if>>
+	<</if>>
+	<</if>>
+	<<if slave.clitPiercing == 3>>
+		<<if slave.fetishKnown == 1>>
+			<<if slave.clitSetting == "off">>
+				SP-
+			<<elseif ((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")>>
+				SP:sub
+			<<elseif ((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")>>
+				SP:oral
+			<<elseif ((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")>>
+				SP:humil
+			<<elseif ((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")>>
+				SP:anal
+			<<elseif ((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")>>
+				SP:boobs
+			<<elseif ((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")>>
+				SP:sade
+			<<elseif ((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")>>
+				SP:pain
+			<<elseif ((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")>>
+				SP:dom
+			<<elseif ((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")>>
+				SP:preg
+			<<elseif ((slave.fetish != "none") && (slave.clitSetting == "vanilla"))>>
+				SP:vanilla
+			<<elseif (slave.energy <= 95) && (slave.clitSetting == "all")>>
+				SP:all
+			<<elseif (slave.energy > 5) && (slave.clitSetting == "none")>>
+				SP:none
+			<<elseif !["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)>>
+				SP:monitoring
+			<</if>>
+		<<else>>
+			<<switch slave.clitSetting>>
+			<<case "off">>
+				SP-
+			<<case "submissive">>
+				SP:sub
+			<<case "lesbian">>
+				SP:les
+			<<case "oral">>
+				SP:oral
+			<<case "humiliation">>
+				SP:humil
+			<<case "anal">>
+				SP:anal
+			<<case "boobs">>
+				SP:boobs
+			<<case "sadist">>
+				SP:sade
+			<<case "masochist">>
+				SP:pain
+			<<case "dom">>
+				SP:dom
+			<<case "pregnancy">>
+				SP:pregnancy
+			<<case "vanilla">>
+				SP:vanilla
+			<<case "all">>
+				SP:all
+			<<case "none">>
+				SP:none
+			<</switch>>
+		<</if>>
+		<<if slave.attrKnown == 1>>
+			<<if slave.clitSetting == "women">>
+				<<if slave.attrXX < 95>>SP:women<<else>>SP:monitoring<</if>>
+			<<elseif slave.clitSetting == "men">>
+				<<if slave.attrXY < 95>>SP:men<<else>>SP:monitoring<</if>>
+			<<elseif slave.clitSetting == "anti-women">>
+				<<if slave.attrXX > 0>>SP:anti-women<<else>>SP:monitoring<</if>>
+			<<elseif slave.clitSetting == "anti-men">>
+				<<if slave.attrXY > 0>>SP:anti-men<<else>>SP:monitoring<</if>>
+			<</if>>
+		<<else>>
+			<<if slave.clitSetting == "women">>
+				SP:women
+			<<elseif slave.clitSetting == "men">>
+				SP:men
+			<<elseif slave.clitSetting == "anti-women">>
+				SP:anti-women
+			<<elseif slave.clitSetting == "anti-men">>
+				SP:anti-men
+			<</if>>
+		<</if>>
+	<</if>>
+	<span class="red">
+	<<switch slave.behavioralFlaw>>
+	<<case "arrogant">>
+		Arrog
+	<<case "bitchy">>
+		Bitchy
+	<<case "odd">>
+		Odd
+	<<case "hates men">>
+		Men-
+	<<case "hates women">>
+		Women-
+	<<case "gluttonous">>
+		Glut
+	<<case "anorexic">>
+		Ano
+	<<case "devout">>
+		Dev
+	<<case "liberated">>
+		Lib
+	<<default>>
+		<<set slave.behavioralFlaw = "none">>
+	<</switch>>
+	</span>
+	<<switch slave.sexualFlaw>>
+	<<case "hates oral">>
+		<span class="red">Oral-</span>
+	<<case "hates anal">>
+		<span class="red">Anal-</span>
+	<<case "hates penetration">>
+		<span class="red">Fuck-</span>
+	<<case "shamefast">>
+		<span class="red">Shame</span>
+	<<case "idealistic">>
+		<span class="red">Ideal</span>
+	<<case "repressed">>
+		<span class="red">Repre</span>
+	<<case "apathetic">>
+		<span class="red">Apath</span>
+	<<case "crude">>
+		<span class="red">Crude</span>
+	<<case "judgemental">>
+		<span class="red">Judge</span>
+	<<case "cum addict">>
+		<span class="yellow">CumAdd</span>
+	<<case "anal addict">>
+		<span class="yellow">AnalAdd</span>
+	<<case "attention whore">>
+		<span class="yellow">Attention</span>
+	<<case "breast growth">>
+		<span class="yellow">BoobObsess</span>
+	<<case "abusive">>
+		<span class="yellow">Abusive</span>
+	<<case "malicious">>
+		<span class="yellow">Malice</span>
+	<<case "self hating">>
+		<span class="yellow">SelfHatr</span>
+	<<case "neglectful">>
+		<span class="yellow">SelfNeglect</span>
+	<<case "breeder">>
+		<span class="yellow">BreedObsess</span>
+	<<default>>
+		<<set slave.sexualFlaw = "none">>
+	<</switch>>
+	<span class="green">
+	<<switch slave.behavioralQuirk>>
+	<<case "confident">>
+		Confid
+	<<case "cutting">>
+		Cutting
+	<<case "funny">>
+		Funny
+	<<case "fitness">>
+		Fit
+	<<case "adores women">>
+		Women+
+	<<case "adores men">>
+		Men+
+	<<case "insecure">>
+		Insec
+	<<case "sinful">>
+		Sinf
+	<<case "advocate">>
+		Advoc
+	<<default>>
+		<<set slave.behavioralQuirk = "none">>
+	<</switch>>
+	<<switch slave.sexualQuirk>>
+	<<case "gagfuck queen">>
+		Gagfuck
+	<<case "painal queen">>
+		Painal
+	<<case "strugglefuck queen">>
+		Struggle
+	<<case "tease">>
+		Tease
+	<<case "romantic">>
+		Romantic
+	<<case "perverted">>
+		Perverted
+	<<case "caring">>
+		Caring
+	<<case "unflinching">>
+		Unflinch
+	<<case "size queen">>
+		SizeQ
+	<<default>>
+		<<set slave.sexualQuirk = "none">>
+	<</switch>>
+	</span>
+<<elseif V.abbreviateMental == 2>>
+	<<if slave.fetish != "mindbroken">>
+	<<if slave.fetishKnown == 1>>
+		<span class="lightcoral">
+		<<switch slave.fetish>>
+		<<case "submissive">>
+			<<if slave.fetishStrength > 95>>
+				Complete submissive<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Submissive<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Submissive tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<case "cumslut">>
+			<<if slave.fetishStrength > 95>>
+				Cumslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Oral fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Prefers oral<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<case "humiliation">>
+			<<if slave.fetishStrength > 95>>
+				Humiliation slut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Exhibitionist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Interest in humiliation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<case "buttslut">>
+			<<if slave.fetishStrength > 95>>
+				Buttslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Anal fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Prefers anal<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<case "boobs">>
+			<<if slave.fetishStrength > 95>>
+				Boobslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Breast fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Loves boobs<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<case "sadist">>
+			<<if slave.fetishStrength > 95>>
+				Complete sadist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Sadist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Sadistic tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<case "masochist">>
+			<<if slave.fetishStrength > 95>>
+				Complete masochist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Masochist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Masochistic tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<case "dom">>
+			<<if slave.fetishStrength > 95>>
+				Complete dom<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Dominant<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Dominant tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<case "pregnancy">>
+			<<if slave.fetishStrength > 95>>
+				Pregnancy fetish<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<elseif slave.fetishStrength > 60>>
+				Pregnancy kink<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<else>>
+				Interest in impregnation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<</if>>
+		<<default>>
+			Sexually vanilla<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+		<</switch>>
+		</span>
+	<</if>>
+	<</if>>
+	<<if slave.attrKnown == 1>>
+		<<if slave.attrXY <= 5>>
+			<span class="red">Disgusted by men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+		<<elseif slave.attrXY <= 15>>
+			<span class="red">Turned off by men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+		<<elseif slave.attrXY <= 35>>
+			<span class="red">Not attracted to men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+		<<elseif slave.attrXY <= 65>>
+			Indifferent to men<<if V.summaryStats>> [slave.attrXY]<</if>>,
+		<<elseif slave.attrXY <= 85>>
+			<span class="green">Attracted to men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+		<<elseif slave.attrXY <= 95>>
+			<span class="green">Aroused by men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+		<<elseif slave.attrXX > 95>>
+			<<if slave.energy <= 95>>
+				<span class="green">Omnisexual!</span>
+			<<else>>
+				<span class="green">Omnisexual nymphomaniac!</span>
+			<</if>>
+		<<else>>
+			<span class="green">Passionate about men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+		<</if>>
+		<<if slave.attrXX <= 5>>
+			<span class="red">disgusted by women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+		<<elseif slave.attrXX <= 15>>
+			<span class="red">turned off by women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+		<<elseif slave.attrXX <= 35>>
+			<span class="red">not attracted to women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+		<<elseif slave.attrXX <= 65>>
+			indifferent to women<<if V.summaryStats>> [slave.attrXX]<</if>>. 
+		<<elseif slave.attrXX <= 85>>
+			<span class="green">attracted to women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+		<<elseif slave.attrXX <= 95>>
+			<span class="green">aroused by women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+		<<elseif slave.attrXY <= 95>>
+			<span class="green">passionate about women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+		<</if>>
+		<<if slave.energy > 95>>
+			<<if (slave.attrXY <= 95) || (slave.attrXX <= 95)>>
+				<span class="green">Nymphomaniac!</span>
+			<</if>>
+		<<elseif slave.energy > 80>>
+			<span class="green">Powerful sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+		<<elseif slave.energy > 60>>
+			<span class="green">Good sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+		<<elseif slave.energy > 40>>
+			<span class="yellow">Average sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+		<<elseif slave.energy > 20>>
+			<span class="red">Poor sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+		<<else>>
+			<span class="red">No sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+		<</if>>
+	<</if>>
+	<<if slave.clitPiercing == 3>>
+		<<if slave.fetishKnown == 1>>
+			<<if slave.clitSetting == "off">>
+				SP off.
+			<<elseif ((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")>>
+				SP: submissive.
+			<<elseif ((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")>>
+				SP: oral.
+			<<elseif ((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")>>
+				SP: humiliation.
+			<<elseif ((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")>>
+				SP: anal.
+			<<elseif ((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")>>
+				SP: breasts.
+			<<elseif ((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")>>
+				SP: sadism.
+			<<elseif ((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")>>
+				SP: masochism.
+			<<elseif ((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")>>
+				SP: dominance.
+			<<elseif ((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")>>
+				SP: pregnancy.
+			<<elseif (slave.fetish != "none") && (slave.clitSetting == "vanilla")>>
+				SP: vanilla.
+			<<elseif (slave.energy <= 95) && (slave.clitSetting == "all")>>
+				SP: all.
+			<<elseif (slave.energy > 5) && (slave.clitSetting == "none")>>
+				SP: none.
+			<<elseif !["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)>>
+				SP: monitoring.
+			<</if>>
+		<<else>>
+			<<switch slave.clitSetting>>
+			<<case "off">>
+				SP off.
+			<<case "submissive">>
+				SP: submissive.
+			<<case "oral">>
+				SP: oral.
+			<<case "humiliation">>
+				SP: humiliation.
+			<<case "anal">>
+				SP: anal.
+			<<case "boobs">>
+				SP: breasts.
+			<<case "sadist">>
+				SP: sadism.
+			<<case "masochist">>
+				SP: masochism.
+			<<case "dom">>
+				SP: dominance.
+			<<case "pregnancy">>
+				SP: pregnancy.
+			<<case "vanilla">>
+				SP: vanilla.
+			<<case "all">>
+				SP: all.
+			<<case "none">>
+				SP: none.
+			<</switch>>
+		<</if>>
+		<<if slave.attrKnown == 1>>
+			<<if (slave.attrXX < 100) && (slave.clitSetting == "women")>>
+				SP: women.
+			<<elseif (slave.attrXY < 100) && (slave.clitSetting == "men")>>
+				SP: men.
+			<</if>>
+		<<else>>
+			<<if slave.clitSetting == "women">>
+				SP: women.
+			<<elseif slave.clitSetting == "men">>
+				SP: men.
+			<</if>>
+		<</if>>
+	<</if>>
+	<span class="red">
+	<<switch slave.behavioralFlaw>>
+	<<case "arrogant">>
+		Arrogant.
+	<<case "bitchy">>
+		Bitchy.
+	<<case "odd">>
+		Odd.
+	<<case "hates men">>
+		Hates men.
+	<<case "hates women">>
+		Hates women.
+	<<case "gluttonous">>
+		Stress eater.
+	<<case "anorexic">>
+		Anorexic.
+	<<case "devout">>
+		Devoutly religious.
+	<<case "liberated">>
+		Mentally liberated.
+	<<default>>
+		<<set slave.behavioralFlaw = "none">>
+	<</switch>>
+	</span>
+	<<switch slave.sexualFlaw>>
+	<<case "hates oral">>
+		<span class="red">Hates oral.</span>
+	<<case "hates anal">>
+		<span class="red">Hates anal.</span>
+	<<case "hates penetration">>
+		<span class="red">Hates penetration.</span>
+	<<case "shamefast">>
+		<span class="red">Shamefast.</span>
+	<<case "idealistic">>
+		<span class="red">Sexually idealistic.</span>
+	<<case "repressed">>
+		<span class="red">Sexually repressed.</span>
+	<<case "apathetic">>
+		<span class="red">Sexually apathetic.</span>
+	<<case "crude">>
+		<span class="red">Sexually crude.</span>
+	<<case "judgemental">>
+		<span class="red">Sexually judgemental.</span>
+	<<case "cum addict">>
+		<span class="yellow">Cum addict.</span>
+	<<case "anal addict">>
+		<span class="yellow">Anal addict.</span>
+	<<case "attention whore">>
+		<span class="yellow">Attention whore.</span>
+	<<case "breast growth">>
+		<span class="yellow">Breast obsession.</span>
+	<<case "abusive">>
+		<span class="yellow">Sexually abusive.</span>
+	<<case "malicious">>
+		<span class="yellow">Sexually malicious.</span>
+	<<case "self hating">>
+		<span class="yellow">Self hatred.</span>
+	<<case "neglectful">>
+		<span class="yellow">Self neglectful.</span>
+	<<case "breeder">>
+		<span class="yellow">Breeding obsession.</span>
+	<<default>>
+		<<set slave.sexualFlaw = "none">>
+	<</switch>>
+	<span class="green">
+	<<switch slave.behavioralQuirk>>
+	<<case "confident">>
+		Confident.
+	<<case "cutting">>
+		Cutting.
+	<<case "funny">>
+		Funny.
+	<<case "fitness">>
+		Fitness.
+	<<case "adores women">>
+		Adores women.
+	<<case "adores men">>
+		Adores men.
+	<<case "insecure">>
+		Insecure.
+	<<case "sinful">>
+		Sinful.
+	<<case "advocate">>
+		Advocate.
+	<<default>>
+		<<set slave.behavioralQuirk = "none">>
+	<</switch>>
+	<<switch slave.sexualQuirk>>
+	<<case "gagfuck queen">>
+		Gagfuck queen.
+	<<case "painal queen">>
+		Painal queen.
+	<<case "strugglefuck queen">>
+		Strugglefuck queen.
+	<<case "tease">>
+		Tease.
+	<<case "romantic">>
+		Romantic.
+	<<case "perverted">>
+		Perverted.
+	<<case "caring">>
+		Caring.
+	<<case "unflinching">>
+		Unflinching.
+	<<case "size queen">>
+		Size queen.
+	<<default>>
+		<<set slave.sexualQuirk = "none">>
+	<</switch>>
+	</span>
+<</if>>
+
+<<if slave.customLabel != "">>''<span class="yellow">slave.customLabel</span>''<</if>>
+
+<<if (slave.relationship != 0) || (slave.relation != 0) || (V.abbreviateClothes == 2) || (V.abbreviateRulesets == 2)>>
+	<br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
+<</if>>
+
+<<if V.abbreviateMental == 1>>
+<span class="lightgreen">
+<<if V.familyTesting == 1>>
+	<<if slave.mother > 0>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s daughter
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
+				<<if slave.relationship == 1>> & friend
+				<<elseif slave.relationship == 2>> & BFF
+				<<elseif slave.relationship == 3>> & FWB
+				<<elseif slave.relationship == 4>> & lover
+				<<else>> & wife
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+		<</if>>
+	<<elseif slave.mother == -1>>
+		Your daughter
+		<<if slave.relationship == -3>>
+			& wife
+			<<set _relationshipHandled = 1>>
+		<<elseif slave.relationship == -2>>
+			& lover
+			<<set _relationshipHandled = 1>>
+		<</if>>
+	<</if>>
+	<<if slave.father > 0 && slave.father != slave.mother>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s daughter
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1>>
+				<<if slave.relationship == 1>> & friend
+				<<elseif slave.relationship == 2>> & BFF
+				<<elseif slave.relationship == 3>> & FWB
+				<<elseif slave.relationship == 4>> & lover
+				<<else>> & wife
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+		<</if>>
+	<<elseif slave.father == -1 && slave.mother != -1>>
+		Your daughter
+		<<if slave.relationship == -3>>
+			& wife
+			<<set _relationshipHandled = 1>>
+		<<elseif slave.relationship == -2>>
+			& lover
+			<<set _relationshipHandled = 1>>
+		<</if>>
+	<</if>>
+	<<if slave.daughters == 1>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s mother
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
+				<<if slave.relationship == 1>> & friend
+				<<elseif slave.relationship == 2>> & BFF
+				<<elseif slave.relationship == 3>> & FWB
+				<<elseif slave.relationship == 4>> & lover
+				<<else>> & wife
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+		<</if>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s father
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1>>
+				<<if slave.relationship == 1>> & friend
+				<<elseif slave.relationship == 2>> & BFF
+				<<elseif slave.relationship == 3>> & FWB
+				<<elseif slave.relationship == 4>> & lover
+				<<else>> & wife
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+		<</if>>
+	<<elseif slave.daughters > 1>>
+		multiple daughters
+	<</if>>
+	<<if slave.sisters == 1>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s sister
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
+				<<if slave.relationship == 1>> & friend
+				<<elseif slave.relationship == 2>> & BFF
+				<<elseif slave.relationship == 3>> & FWB
+				<<elseif slave.relationship == 4>> & lover
+				<<else>> & wife
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+		<</if>>
+	<<elseif slave.sisters > 1>>
+		multiple sisters
+	<</if>>
+	<<if slave.relationship > 0 && _relationshipHandled != 1>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s
+			<<switch slave.relationship>>	
+			<<case 1>>
+				friend
+			<<case 2>>
+				BFF
+			<<case 3>>
+				FWB
+			<<case 4>>
+				lover
+			<<case 5>>
+				wife
+			<</switch>>
+		<</if>>
+	<<elseif slave.relationship == -3>>
+		Your wife
+	<<elseif slave.relationship == -2>>
+		E Bonded
+	<<elseif slave.relationship == -1>>
+		E Slut
+	<</if>>
+<<else>>
+	<<if slave.relation != 0>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s slave.relation
+		<</if>>
+	<</if>>
+	<<if slave.relationship > 0>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
+		<<if _ssj != -1>>
+			<<switch slave.relationship>>
+			<<case 1>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>&<</if>> friend
+			<<case 2>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>&<</if>> BFF
+			<<case 3>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>&<</if>> FWB
+			<<case 4>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>&<</if>> lover
+			<<case 5>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>&<</if>> wife
+			<</switch>>
+		<</if>>
+	<<elseif slave.relationship == -3>>
+		Your wife
+	<<elseif slave.relationship == -2>>
+		E Bonded
+	<<elseif slave.relationship == -1>>
+		E Slut
+	<</if>>
+<</if>>
+</span>
+<<set _relationshipHandled = 0>>
+<<if slave.rivalry != 0>>
+	&nbsp;&nbsp;&nbsp;&nbsp;
+	<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; })>>
+	<<if _ssj != -1>>
+		<span class="lightsalmon">
+		<<if slave.rivalry <= 1>>
+			Disl <<SlaveFullName V.slaves[_ssj]>>
+		<<elseif slave.rivalry <= 2>>
+			<<SlaveFullName V.slaves[_ssj]>>'s rival
+		<<else>>
+			Hates <<SlaveFullName V.slaves[_ssj]>>
+		<</if>>
+		</span>
+	<</if>>
+<</if>>
+<<elseif V.abbreviateMental == 2>>
+<<if V.familyTesting == 1>>
+	<<if slave.mother > 0>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">daughter<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+		<</if>>
+	<<elseif slave.mother == -1>>
+		Your
+		<<if slave.relationship == -3>>
+			<span class="lightgreen">daughter and wife.</span>
+			<<set _relationshipHandled = 1>>
+		<<elseif slave.relationship == -2>>
+			<span class="lightgreen">daughter and lover.</span>
+			<<set _relationshipHandled = 1>>
+		<<else>>
+			<span class="lightgreen">daughter.</span>
+		<</if>>
+	<</if>>
+	<<if slave.father > 0 && slave.father != slave.mother>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">daughter<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+		<</if>>
+	<<elseif slave.father == -1 && slave.father != slave.mother>>
+		Your
+		<<if slave.relationship == -3>>
+			<span class="lightgreen">daughter and wife.</span>
+			<<set _relationshipHandled = 1>>
+		<<elseif slave.relationship == -2>>
+			<span class="lightgreen">daughter and lover.</span>
+			<<set _relationshipHandled = 1>>
+		<<else>>
+			<span class="lightgreen">daughter.</span>
+		<</if>>
+	<</if>>
+	<<if slave.daughters == 1>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">mother<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+		<</if>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">father<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+		<</if>>
+	<<elseif slave.daughters > 1>>
+		<<if slave.daughters > 10>>
+			<span class="lightgreen">Has tons of daughters.</span>
+		<<elseif slave.daughters > 5>>
+			<span class="lightgreen">Has many daughters.</span>
+		<<else>>
+			<span class="lightgreen">Has several daughters.</span>
+		<</if>>
+	<</if>>
+	<<if slave.sisters == 1>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">sister<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+		<</if>>
+	<<elseif slave.sisters > 1>>
+		<<if slave.sisters > 10>>
+			<span class="lightgreen">One of many sisters.</span>
+		<<elseif slave.sisters > 5>>
+			<span class="lightgreen">Has many sisters.</span>
+		<<else>>
+			<span class="lightgreen">Has several sisters.</span>
+		<</if>>
+	<</if>>
+	<<if slave.relationship > 0 && _relationshipHandled != 1>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s
+			<<switch slave.relationship>>
+			<<case 1>>
+				<span class="lightgreen">friend.</span>
+			<<case 2>>
+				<span class="lightgreen">best friend.</span>
+			<<case 3>>
+				<span class="lightgreen">FWB.</span>
+			<<case 4>>
+				<span class="lightgreen">lover.</span>
+			<<case 5>>
+				<span class="lightgreen">slave wife.</span>
+			<</switch>>
+		<</if>>
+	<<elseif slave.relationship == -3>>
+		<span class="lightgreen">Your wife.</span>
+	<<elseif slave.relationship == -2>>
+		<span class="lightgreen">Emotionally bonded to you.</span>
+	<<elseif slave.relationship == -1>>
+		<span class="lightgreen">Emotional slut.</span>
+	<</if>>
+<<else>>
+	<<if slave.relation != 0>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; })>>
+		<<if _ssj != -1>>
+			<<SlaveFullName V.slaves[_ssj]>>'s
+			<<if slave.relationshipTarget != slave.relationTarget>>
+				<span class="lightgreen">slave.relation<span class="
+			<<else>>
+				</span>.lightgreen">slave.relation</span>
+			<</if>>
+			<<if slave.relationship <= 0>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
+		<</if>>
+	<</if>>
+	<<if slave.relationship > 0>>
+		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
+		<<if _ssj != -1>>
+			<<switch slave.relationship>>
+			<<case 1>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>and<</if>> <span class="lightgreen">friend.</span>
+			<<case 2>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>and<</if>> <span class="lightgreen">best friend.</span>
+			<<case 3>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>and<</if>> <span class="lightgreen">FWB.</span>
+			<<case 4>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>and<</if>> <span class="lightgreen">lover.</span>
+			<<case 5>>
+				<<if slave.relationshipTarget != slave.relationTarget>>
+					<<SlaveFullName V.slaves[_ssj]>>'s
+				<<else>>and<</if>> <span class="lightgreen">slave wife.</span>
+			<</switch>>
+		<</if>>
+	<<elseif slave.relationship == -3>>
+		<span class="lightgreen">Your wife.</span>
+	<<elseif slave.relationship == -2>>
+		<span class="lightgreen">Emotionally bonded to you.</span>
+	<<elseif slave.relationship == -1>>
+		<span class="lightgreen">Emotional slut.</span>
+	<</if>>
+<</if>>
+<<set _relationshipHandled = 0>>
+<<if slave.rivalry != 0>>
+	&nbsp;&nbsp;&nbsp;&nbsp;
+	<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; })>>
+	<<if _ssj != -1>>
+		<<if slave.rivalry <= 1>>
+			<span class="lightsalmon">Dislikes</span> <<SlaveFullName V.slaves[_ssj]>>.
+		<<elseif slave.rivalry <= 2>>
+			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightsalmon">rival.</span>
+		<<else>>
+			<span class="lightsalmon">Hates</span> <<SlaveFullName V.slaves[_ssj]>>.
+		<</if>>
+	<</if>>
+<</if>>
+<</if>>
+
+<<if slave.fuckdoll == 0>>
+<<if V.abbreviateClothes == 2>>
+&nbsp;&nbsp;&nbsp;&nbsp;
+<<if slave.choosesOwnClothes == 1>>
+	Dressing herself.
+<</if>>
+<<switch slave.clothes>>
+<<case "attractive lingerie">>
+	Lingerie.
+<<case "a succubus outfit">>
+	Succubus outfit.
+<<case "a string bikini">>
+	String bikini.
+<<case "a scalemail bikini">>
+	Scalemail bikini.
+<<case "a monokini">>
+	Monokini.
+<<case "an apron">>
+	Apron.
+<<case "a cybersuit">>
+	Cybersuit.
+<<case "cutoffs and a t-shirt">>
+	Cutoffs, t-shirt.
+<<case "a slutty outfit">>
+	Slutty outfit.
+<<case "uncomfortable straps">>
+	Leather straps.
+<<case "a fallen nuns habit">>
+	Slutty habit.
+<<case "a chattel habit">>
+	Chattel habit.
+<<case "a penitent nuns habit">>
+	Cilice.
+<<case "slutty jewelry">>
+	Bangles.
+<<case "attractive lingerie for a pregnant woman">>
+	Preggo lingerie.
+<<case "a maternity dress">>
+	Maternity dress.
+<<case "stretch pants and a crop-top">>
+	Stretch pants, crop-top.
+<<case "harem gauze">>
+	Harem outfit.
+<<case "a slave gown">>
+	Slave gown.
+<<case "a halter top dress">>
+	Halter top dress.
+<<case "a mini dress">>
+	Mini dress.
+<<case "a ball gown">>
+	Ball gown.
+<<case "slutty business attire">>
+	Slutty suit.
+<<case "nice business attire">>
+	Nice suit.
+<<case "a comfortable bodysuit">>
+	Bodysuit.
+<<case "a military uniform">>
+	Military uniform.
+<<case "a schutzstaffel uniform">>
+	Schutzstaffel uniform.
+<<case "a slutty schutzstaffel uniform">>
+	Slutty Schutzstaffel uniform.
+<<case "a red army uniform">>
+	Red Army uniform.
+<<case "a long qipao">>
+	Long Qipao.
+<<case "battlearmor">>
+	Battlearmor.
+<<case "a mounty outfit">>
+	Mounty outfit.
+<<case "a dirndl">>
+	Dirndl.
+<<case "lederhosen">>
+	Lederhosen.
+<<case "a biyelgee costume">>
+	Biyelgee costume.
+<<case "a leotard">>
+	Leotard.
+<<case "a bunny outfit">>
+	Bunny outfit.
+<<case "a slutty maid outfit">>
+	Slutty maid.
+<<case "a nice maid outfit">>
+	Nice maid.
+<<case "a slutty nurse outfit">>
+	Slutty nurse.
+<<case "a nice nurse outfit">>
+	Nice nurse.
+<<case "a schoolgirl outfit">>
+	Schoolgirl outfit.
+<<case "a kimono">>
+	Kimono.
+<<case "a hijab and abaya">>
+	Hijab and abaya.
+<<case "battledress">>
+	Battledress.
+<<case "a latex catsuit">>
+	Nice latex.
+<<case "restrictive latex">>
+	Bondage latex.
+<<case "conservative clothing">>
+	Conservative clothing.
+<<case "chains">>
+	Chains.
+<<case "a cheerleader outfit">>
+	Cheerleader.
+<<case "clubslut netting">>
+	Netting.
+<<case "shibari ropes">>
+	Shibari.
+<<case "Western clothing">>
+	Chaps.
+<<case "body oil">>
+	Body oil.
+<<case "a toga">>
+	Toga.
+<<case "a huipil">>
+	Huipil.
+<<case "a slutty qipao">>
+	Qipao.
+<<case "spats and a tank top">>
+	Spats, tank top.
+<<default>>
+	Naked.
+<</switch>>
+<<switch slave.collar>>
+<<case "uncomfortable leather">>
+	Leather collar.
+<<case "tight steel">>
+	Steel collar.
+<<case "preg biometrics">>
+	Pregnancy biometrics collar.
+<<case "cruel retirement counter">>
+	Cruel counter collar.
+<<case "shock punishment">>
+	Shock collar.
+<<case "dildo gag">>
+	Dildo gag.
+<<case "massive dildo gag">>
+	Throat-bulging dildo gag.
+<<case "neck corset">>
+	Neck corset.
+<<case "stylish leather">>
+	Stylish leather collar.
+<<case "satin choker">>
+	Satin choker.
+<<case "silk ribbon">>
+	Silken ribbon.
+<<case "heavy gold">>
+	Gold collar.
+<<case "bowtie">>
+	Bowtie collar.
+<<case "pretty jewelry">>
+	Pretty collar.
+<<case "nice retirement counter">>
+	Nice counter collar.
+<<case "leather with cowbell">>
+	Cowbell collar.
+<<case "ancient Egyptian">>
+	Wesekh.
+<<case "ball gag">>
+	Ball gag.
+<<case "bit gag">>
+	Bit gag.
+<<case "porcelain mask">>
+	Porcelain mask.
+<</switch>>
+<<switch slave.bellyAccessory>>
+<<case "shapewear">>
+	Shapewear.
+<<case "a small empathy belly">>
+	Small fake belly.
+<<case "a medium empathy belly">>
+	Medium fake belly.
+<<case "a large empathy belly">>
+	Large fake belly.
+<<case "a huge empathy belly">>
+	Huge fake belly.
+<<case "a corset">>
+	Corset.
+<<case "an extreme corset">>
+	Extreme corsetage.
+<</switch>>
+<<if slave.amp != 1>>
+	<<if slave.legAccessory == "short stockings">>
+		Short stockings.
+	<<elseif slave.legAccessory == "long stockings">>
+		Long stockings.
+	<</if>>
+<</if>>
+<<if canWalk(slave)>>
+<<if slave.shoes == "heels">>
+	Heels.
+<<elseif slave.shoes == "pumps">>
+	Pumps.
+<<elseif slave.shoes == "extreme heels">>
+	Extreme heels.
+<<elseif slave.shoes == "boots">>
+	Boots.
+<<elseif slave.heels == 1>>
+	<span class="yellow">Crawling.</span>
+<<elseif slave.shoes == "flats">>
+	Flats.
+<</if>>
+<</if>>
+<<switch slave.vaginalAccessory>>
+<<case "chastity belt">>
+	Vaginal chastity.
+<<case "combined chastity">>
+	Combined chastity.
+<<case "anal chastity">>
+	Anal chastity.
+<<case "dildo">>
+	Vaginal dildo.
+<<case "large dildo">>
+	Large vaginal dildo.
+<<case "huge dildo">>
+	Huge vaginal dildo.
+<<case "long dildo">>
+	Long vaginal dildo.
+<<case "long, large dildo">>
+	Long and large vaginal dildo.
+<<case "long, huge dildo">>
+	Long and wide vaginal dildo.
+<</switch>>
+<<if slave.dickAccessory == "chastity">>
+	Chastity cage.
+<<elseif slave.dickAccessory == "combined chastity">>
+	Combined chastity.
+<<elseif slave.dickAccessory == "anal chastity">>
+	Anal chastity.
+<</if>>
+<<switch slave.buttplug>>
+<<case "plug">>
+	Buttplug.
+<<case "large plug">>
+	Large buttplug.
+<<case "huge plug">>
+	Huge buttplug.
+<<case "long plug">>
+	Long buttplug.
+<<case "long, large plug">>
+	Large, long buttplug.
+<<case "long, huge plug">>
+	Enormous buttplug.
+<</switch>>
+<<switch slave.buttplugAttachment>>
+<<case "tail">>
+	Attached tail.
+<</switch>>
+<</if>>
+<</if>>
+
+&nbsp;&nbsp;&nbsp;&nbsp;
+<<if slave.useRulesAssistant == 0>>
+	<span class="lightgreen">RA-Exempt</span>
+<<elseif V.abbreviateRulesets == 2 && (def slave.currentRules) && (slave.currentRules.length > 0)>>
+	Rules: 
+	<<= V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") >>
+<</if>>
+
+<<if V.abbreviateOrigins == 2 && slave.origin != 0>>
+	<br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
+    <span class="gray">slave.origin</span>
+<</if>>
-- 
GitLab


From 881aafcd9754de8cad96d83ea250c006ffd533fc Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 16:47:35 +0300
Subject: [PATCH 004/189] fix typo

---
 src/utility/miscWidgets.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index c0ffa160823..2460d62eadb 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -2077,7 +2077,7 @@ This experience
 /* see how they are on a single line? This permits "."s and other things to be appended directly onto the widget result */
 <<widget "PlayerName">><<if $surnameOrder != 1>><<switch $PC.nationality>><<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">><<if $PC.surname>>$PC.surname <</if>>$PC.name<<default>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</switch>><<else>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</if>><</widget>>
 
-<<widget "SlaveFullName">
+<<widget "SlaveFullName">>
 	<<= SlaveFullName($args[0])>>
 <</widget>>
 
-- 
GitLab


From 38cf169e51db42995fd5ea0c7ab2108255c7fc6a Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 18:33:29 +0300
Subject: [PATCH 005/189] more work on slave summary cache

---
 src/js/slaveSummaryWidgets.tw | 2333 +++++++++++++++++----------------
 1 file changed, 1172 insertions(+), 1161 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 55111f324d1..2e2cffb5af3 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -527,1264 +527,1275 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
 	<</if>>
 	r += `</span>`;
-// TODO: done up to here
 <<elseif V.abbreviateDrugs == 2>>
 	<<if (slave.drugs != "no drugs") && (slave.drugs != "none")>>
-		<span class="tan">On slave.drugs.</span>
+		r += `<span class="tan">${On slave.drugs}.</span>`;
 	<</if>>
-	<span class="lightgreen">
+	r += `<span class="lightgreen">`;
 	<<if slave.curatives == 2>>
-		On curatives.
+		r += `On curatives.`;
 	<<elseif slave.curatives == 1>>
-		On preventatives.
+		r += `On preventatives.`;
 	<</if>>
-	</span>
-	<span class="lightblue">
+	r += `</span>`;
+	r += `<span class="lightblue">`;
 	<<if slave.aphrodisiacs > 0>>
-		On <<if slave.aphrodisiacs > 1>>extreme <</if>>aphrodisiacs.
+		r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
 	<<elseif slave.aphrodisiacs === -1>>
-		On anaphrodisiacs.
+		r += `On anaphrodisiacs.`;
 	<</if>>
-	</span>
+	r += `</span>`;
 	<<if slave.addict != 0>>
-		<span class="cyan">Addict.</span>
+		r += `<span class="cyan">Addict.</span>`;
 	<</if>>
-	<span class="lightsalmon">
+	r += `<span class="lightsalmon">`;
 	<<if slave.hormones > 1>>
-		Heavy female hormones.
+		r += `Heavy female hormones.`;
 	<<elseif slave.hormones > 0>>
-		Female hormones.
+		r += `Female hormones.`;
 	<<elseif slave.hormones < -1>>
-		Heavy male hormones.
+		r += `Heavy male hormones.`;
 	<<elseif slave.hormones < 0>>
-		Male hormones.
+		r += `Male hormones.`;
 	<</if>>
-	</span>
-	<span class="mediumseagreen">
+	r += `</span>`;
+	r == `<span class="mediumseagreen">`;
 	<<if (slave.bellyImplant > -1)>>
-		Belly Implant.
+		r += `Belly Implant.`;
 	<<elseif ((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)>>
-		Barren.
+		r += `Barren.`;
 	<<elseif slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
-		Not ovulating yet.
+		r += `Not ovulating yet.`;
 	<<elseif slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)>>
-		Menopausal.
+		r += `Menopausal.`;
 	<<elseif slave.pregWeek < 0>>
-		Postpartum.
+		r += `Postpartum.`;
 	<<elseif slave.preg == -1>>
-		On contraceptives.
+		r += `On contraceptives.`;
 	<<elseif slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
-		Fertile.
+		r += `Fertile.`;
 	<<elseif ((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1>>
-		May be pregnant.
+		r += `May be pregnant.`;
 	<<elseif (slave.preg >= 36) && (slave.broodmother > 0)>>
-		Permanently pregnant.
+		r += `Permanently pregnant.`;
 	<<elseif slave.pregKnown == 1>>
 		<<if slave.pregType < 2 || slave.broodmother > 0>>
-			slave.pregWeek weeks pregnant.
+			r += `${slave.pregWeek} weeks pregnant.`;
 		<<else>>
 			slave.pregWeek weeks pregnant with
 			<<if slave.pregType >= 40>>
-				a tremendous brood of offspring.
+				r += `a tremendous brood of offspring.`;
 			<<elseif slave.pregType >= 20>>
-				a brood of offspring.
+				r += `a brood of offspring.`;
 			<<elseif slave.pregType >= 10>>
-				slave.pregType babies.
+				r += `slave.pregType babies.`;
 			<<elseif slave.pregType == 9>>
-				nonuplets.
+				r += `nonuplets.`;
 			<<elseif slave.pregType == 8>>
-				octuplets.
+				r += `octuplets.`;
 			<<elseif slave.pregType == 7>>
-				septuplets.
+				r += `septuplets.`;
 			<<elseif slave.pregType == 6>>
-				sextuplets.
+				r += `sextuplets.`;
 			<<elseif slave.pregType == 5>>
-				quintuplets.
+				r += `quintuplets.`;
 			<<elseif slave.pregType == 4>>
-				quadruplets.
+				r += `quadruplets.`;
 			<<elseif slave.pregType == 3>>
-				triplets.
+				r += `triplets.`;
 			<<else>>
-				twins.
+				r += `twins.`;
 			<</if>>
 		<</if>>
 	<</if>>
-	</span>
+	r += `</span>`;
 	<<if slave.induce == 1>>
-		<span class="orange">Showing signs of early labor.</span>
+		r += `<span class="orange">Showing signs of early labor.</span>`;
 	<</if>>
 	<<if slave.pubertyXY == 0 && slave.balls > 0>>
-		Has not had first ejaculation.
+		r += `Has not had first ejaculation.`;
 	<</if>>
 	<<if slave.balls > 0 && slave.vasectomy == 1>>
-		Vasectomy.
+		r += `Vasectomy.`;
 	<</if>>
 	<span class="springgreen">
 	<<if slave.inflation == 3>>
-		Filled with 8 liters of slave.inflationType.
+		r += `Filled with 8 liters of ${slave.inflationType}.`;
 	<<elseif slave.inflation == 2>>
-		Filled with 4 liters of slave.inflationType.
+		r += `Filled with 4 liters of ${slave.inflationType}.`;
 	<<elseif slave.inflation == 1>>
-		Filled with 2 liters of slave.inflationType.
+		r += `Filled with 2 liters of ${slave.inflationType}.`;
 	<<elseif slave.bellyFluid > 0>>
-		Stuffed with <<print slave.bellyFluid>>ccs of slave.inflationType.
+		r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
 	<</if>>
-	</span>
+	r += `</span>`;
 <</if>>
 
 <<if V.abbreviateNationality+V.abbreviateGenitalia+V.abbreviatePhysicals+V.abbreviateSkills+V.abbreviateMental != 0>>
-	<br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
+	r += `<br>`;
+	<<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	<</if>>
 <</if>>
 
 <<SlaveTitle slave>>
 <<set V.seed = V.desc.substring(0,1)>>
 <<set V.seed = V.seed.toUpperCase()>>
 <<set V.desc = V.seed + V.desc.substring(1)>>
-''<span class="coral">V.desc<<if V.abbreviatePhysicals == 2>>.<</if>></span>''
+r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : ''}</span></strong>`;
 
 <<if V.seeRace == 1>>
-<span class="tan">
-<<if V.abbreviateRace == 1>>
-<<switch slave.race>>
-<<case "white">>
-	C
-<<case "asian">>
-	A
-<<case "indo-aryan">>
-	I
-<<case "latina">>
-	L
-<<case "middle eastern">>
-	ME
-<<case "black">>
-	B
-<<case "pacific islander">>
-	PI
-<<case "malay">>
-	M
-<<case "amerindian">>
-	AI
-<<case "semitic">>
-	S
-<<case "southern european">>
-	SE
-<<case "mixed race">>
-	MR
-<<default>>
-	<<print slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)>>
-<</switch>>
-<<elseif V.abbreviateRace == 2>>
-<<switch slave.race>>
-<<case "white">>
-	Caucasian.
-<<case "asian">>
-	Asian.
-<<case "indo-aryan">>
-	Indo-aryan.
-<<case "latina">>
-	Latina.
-<<case "middle eastern">>
-	Middle Eastern.
-<<case "black">>
-	Black.
-<<case "pacific islander">>
-	Pacific Islander.
-<<case "malay">>
-	Malay.
-<<case "amerindian">>
-	Amerindian.
-<<case "semitic">>
-	Semitic.
-<<case "southern european">>
-	Southern European.
-<<case "mixed race">>
-	Mixed race.
-<<default>>
-	<<print slave.race.charAt(0).toUpperCase() + slave.race.slice(1)>>.
-<</switch>>
-<</if>>
-</span>
+	r += `<span class="tan">`;
+	<<if V.abbreviateRace == 1>>
+		<<switch slave.race>>
+			<<case "white">>
+				r += `C`;
+			<<case "asian">>
+				r += `A`;
+			<<case "indo-aryan">>
+				r += `I`;
+			<<case "latina">>
+				r += `L`;
+			<<case "middle eastern">>
+				r += `ME`;
+			<<case "black">>
+				r += `B`;
+			<<case "pacific islander">>
+				r += `PI`;
+			<<case "malay">>
+				r += `M`;
+			<<case "amerindian">>
+				r += `AI`;
+			<<case "semitic">>
+				r += `S`;
+			<<case "southern european">>
+				r += `SE`;
+			<<case "mixed race">>
+				r += `MR`;
+			<<default>>
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
+		<</switch>>
+	<<elseif V.abbreviateRace == 2>>
+		<<switch slave.race>>
+			<<case "white">>
+				r += `Caucasian.`;
+			<<case "asian">>
+				r += `Asian.`;
+			<<case "indo-aryan">>
+				r += `Indo-aryan.`;
+			<<case "latina">>
+				r += `Latina.`;
+			<<case "middle eastern">>
+				r += `Middle Eastern.`;
+			<<case "black">>
+				r += `Black.`;
+			<<case "pacific islander">>
+				r += `Pacific Islander.`;
+			<<case "malay">>
+				r += `Malay.`;
+			<<case "amerindian">>
+				r += `Amerindian.`;
+			<<case "semitic">>
+				r += `Semitic.`;
+			<<case "southern european">>
+				r += `Southern European.`;
+			<<case "mixed race">>
+				r += `Mixed race.`;
+			<<default>>
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
+		<</switch>>
+	<</if>>
+	r += `</span>`;
 <</if>>
 
 <<if V.abbreviateNationality == 1>>
-<span class="tan">
-<<switch slave.nationality>>
-<<case "Afghan">>
-	Afg
-<<case "Albanian">>
-	Alb
-<<case "Algerian">>
-	Alg
-<<case "American">>
-	USA
-<<case "Andorran">>
-	And
-<<case "Angolan">>
-	Ang
-<<case "Antiguan">>
-	AB
-<<case "Argentinian">>
-	Arg
-<<case "Armenian">>
-	Arm
-<<case "Aruban">>
-	Aru
-<<case "Australian">>
-	Aus
-<<case "Austrian">>
-	Aut
-<<case "Azerbaijani">>
-	Aze
-<<case "Bahamian">>
-	Bah
-<<case "Bahraini">>
-	Bah
-<<case "Bangladeshi">>
-	Bgd
-<<case "Barbadian">>
-	Bar
-<<case "Belarusian">>
-	Ber
-<<case "Belgian">>
-	Bel
-<<case "Belizean">>
-	Blz
-<<case "Beninese">>
-	Ben
-<<case "Bermudian">>
-	Bmd
-<<case "Bhutanese">>
-	Bhu
-<<case "Bissau-Guinean">>
-	GB
-<<case "Bolivian">>
-	Bol
-<<case "Bosnian">>
-	Bos
-<<case "Brazilian">>
-	Bra
-<<case "British">>
-	UK
-<<case "Bruneian">>
-	Bru
-<<case "Bulgarian">>
-	Bul
-<<case "Burkinabé">>
-	BF
-<<case "Burmese">>
-	Bur
-<<case "Burundian">>
-	Bnd
-<<case "Cambodian">>
-	Kam
-<<case "Cameroonian">>
-	Cam
-<<case "Canadian">>
-	Can
-<<case "Cape Verdean">>
-	CV
-<<case "Catalan">>
-	Cat
-<<case "Central African">>
-	CAR
-<<case "Chadian">>
-	Cha
-<<case "Chilean">>
-	Chl
-<<case "Chinese">>
-	Chi
-<<case "Colombian">>
-	Col
-<<case "Comorian">>
-	Com
-<<case "Congolese">>
-	RC
-<<case "a Cook Islander">>
-	CI
-<<case "Costa Rican">>
-	CR
-<<case "Croatian">>
-	Cro
-<<case "Cuban">>
-	Cub
-<<case "Cypriot">>
-	Cyp
-<<case "Czech">>
-	Cze
-<<case "Danish">>
-	Den
-<<case "Djiboutian">>
-	Dji
-<<case "Dominican">>
-	DR
-<<case "Dominiquais">>
-	Dom
-<<case "Dutch">>
-	Nld
-<<case "East Timorese">>
-	ET
-<<case "Ecuadorian">>
-	Ecu
-<<case "Egyptian">>
-	Egy
-<<case "Emirati">>
-	UAE
-<<case "Equatoguinean">>
-	EG
-<<case "Eritrean">>
-	Eri
-<<case "Estonian">>
-	Est
-<<case "Ethiopian">>
-	Eth
-<<case "Fijian">>
-	Fij
-<<case "Filipina">>
-	Phl
-<<case "Finnish">>
-	Fin
-<<case "French">>
-	Fra
-<<case "French Guianan">>
-	FG
-<<case "French Polynesian">>
-	FP
-<<case "Gabonese">>
-	Gab
-<<case "Gambian">>
-	Gam
-<<case "Georgian">>
-	Geo
-<<case "German">>
-	Ger
-<<case "Ghanan">>
-	Gha
-<<case "Greek">>
-	Gre
-<<case "Greenlandic">>
-	Grn
-<<case "Grenadian">>
-	Gda
-<<case "Guamanian">>
-	Gua
-<<case "Guatemalan">>
-	Gtm
-<<case "Guinean">>
-	Gui
-<<case "Guyanese">>
-	Guy
-<<case "Haitian">>
-	Hai
-<<case "Honduran">>
-	Hon
-<<case "Hungarian">>
-	Hun
-<<case "I-Kiribati">>
-	Kir
-<<case "Icelandic">>
-	Ice
-<<case "Indian">>
-	Ind
-<<case "Indonesian">>
-	Idn
-<<case "Iranian">>
-	Irn
-<<case "Iraqi">>
-	Irq
-<<case "Irish">>
-	Irl
-<<case "Israeli">>
-	Isr
-<<case "Italian">>
-	Ita
-<<case "Ivorian">>
-	IC
-<<case "Jamaican">>
-	Jam
-<<case "Japanese">>
-	Jpn
-<<case "Jordanian">>
-	Jor
-<<case "Kazakh">>
-	Kaz
-<<case "Kenyan">>
-	Ken
-<<case "Kittitian">>
-	SKN
-<<case "Korean">>
-	Kor
-<<case "Kosovan">>
-	Kos
-<<case "Kurdish">>
-	Kur
-<<case "Kuwaiti">>
-	Kuw
-<<case "Kyrgyz">>
-	Kyr
-<<case "Laotian">>
-	Lao
-<<case "Latvian">>
-	Lat
-<<case "Lebanese">>
-	Lbn
-<<case "Liberian">>
-	Lib
-<<case "Libyan">>
-	Lby
-<<case "a Liechtensteiner">>
-	Lie
-<<case "Lithuanian">>
-	Lit
-<<case "Luxembourgian">>
-	Lux
-<<case "Macedonian">>
-	Mac
-<<case "Malagasy">>
-	Mad
-<<case "Malawian">>
-	Mwi
-<<case "Malaysian">>
-	Mys
-<<case "Maldivian">>
-	Mdv
-<<case "Malian">>
-	Mal
-<<case "Maltese">>
-	Mlt
-<<case "Marshallese">>
-	MI
-<<case "Mauritanian">>
-	Mta
-<<case "Mauritian">>
-	Mts
-<<case "Mexican">>
-	Mex
-<<case "Micronesian">>
-	FSM
-<<case "Moldovan">>
-	Mol
-<<case "Monégasque">>
-	Mnc
-<<case "Mongolian">>
-	Mon
-<<case "Montenegrin">>
-	Mng
-<<case "Moroccan">>
-	Mor
-<<case "Mosotho">>
-	Les
-<<case "Motswana">>
-	Bot
-<<case "Mozambican">>
-	Moz
-<<case "Namibian">>
-	Nam
-<<case "Nauruan">>
-	Nau
-<<case "Nepalese">>
-	Npl
-<<case "New Caledonian">>
-	NC
-<<case "a New Zealander">>
-	NZ
-<<case "Ni-Vanuatu">>
-	Van
-<<case "Nicaraguan">>
-	Nic
-<<case "Nigerian">>
-	Nga
-<<case "Nigerien">>
-	Ngr
-<<case "Niuean">>
-	Niu
-<<case "Norwegian">>
-	Nor
-<<case "Omani">>
-	Omn
-<<case "Pakistani">>
-	Pak
-<<case "Palauan">>
-	Plu
-<<case "Palestinian">>
-	Pal
-<<case "Panamanian">>
-	Pan
-<<case "Papua New Guinean">>
-	PNG
-<<case "Paraguayan">>
-	Par
-<<case "Peruvian">>
-	Per
-<<case "Polish">>
-	Pol
-<<case "Portuguese">>
-	Por
-<<case "Puerto Rican">>
-	PR
-<<case "Qatari">>
-	Qat
-<<case "Romanian">>
-	Rom
-<<case "Russian">>
-	Rus
-<<case "Rwandan">>
-	Rwa
-<<case "Sahrawi">>
-	Sah
-<<case "Saint Lucian">>
-	SL
-<<case "Salvadoran">>
-	ES
-<<case "Sammarinese">>
-	SM
-<<case "Samoan">>
-	Sam
-<<case "São Toméan">>
-	STP
-<<case "Saudi">>
-	Sau
-<<case "Scottish">>
-	Sco
-<<case "Senegalese">>
-	Sen
-<<case "Serbian">>
-	Srb
-<<case "Seychellois">>
-	Sey
-<<case "Sierra Leonean">>
-	Sie
-<<case "Singaporean">>
-	Sng
-<<case "Slovak">>
-	Svk
-<<case "Slovene">>
-	Svn
-<<case "a Solomon Islander">>
-	SI
-<<case "Somali">>
-	Som
-<<case "South African">>
-	RSA
-<<case "South Sudanese">>
-	SS
-<<case "Spanish">>
-	Spa
-<<case "Sri Lankan">>
-	Sri
-<<case "Sudanese">>
-	Sud
-<<case "Surinamese">>
-	Sur
-<<case "Swazi">>
-	Swa
-<<case "Swedish">>
-	Swe
-<<case "Swiss">>
-	Swi
-<<case "Syrian">>
-	Syr
-<<case "Taiwanese">>
-	Tai
-<<case "Tajik">>
-	Taj
-<<case "Tanzanian">>
-	Tza
-<<case "Thai">>
-	Tha
-<<case "Tibetan">>
-	Tib
-<<case "Togolese">>
-	Tog
-<<case "Tongan">>
-	Ton
-<<case "Trinidadian">>
-	TT
-<<case "Tunisian">>
-	Tun
-<<case "Turkish">>
-	Tur
-<<case "Turkmen">>
-	Tkm
-<<case "Tuvaluan">>
-	Tuv
-<<case "Ugandan">>
-	Uga
-<<case "Ukrainian">>
-	Ukr
-<<case "Uruguayan">>
-	Uru
-<<case "Uzbek">>
-	Uzb
-<<case "Vatican">>
-	VC
-<<case "Venezuelan">>
-	Ven
-<<case "Vietnamese">>
-	Vnm
-<<case "Vincentian">>
-	SVG
-<<case "Yemeni">>
-	Yem
-<<case "Zairian">>
-	DRC
-<<case "Zambian">>
-	Zam
-<<case "Zimbabwean">>
-	<<if slave.race == "white">>
-		Rho
-	<<else>>
-		Zwe
-	<</if>>
-<<case "Ancient Chinese Revivalist">>
-	Chi Rev
-<<case "Ancient Egyptian Revivalist">>
-	Egy Rev
-<<case "Arabian Revivalist">>
-	Ara Rev
-<<case "Aztec Revivalist">>
-	Azt Rev
-<<case "Edo Revivalist">>
-	Edo Rev
-<<case "Roman Revivalist">>
-	Rom Rev
-<<case "" "none" "slave" "Stateless">>
-	None
-<<default>>
-	<<print slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)>>
-<</switch>>
-</span>
+	r += `<span class="tan">`;
+	<<switch slave.nationality>>
+		<<case "Afghan">>
+			r += `Afg`;
+		<<case "Albanian">>
+			r += `Alb`;
+		<<case "Algerian">>
+			r += `Alg`;
+		<<case "American">>
+			r += `USA`;
+		<<case "Andorran">>
+			r += `And`;
+		<<case "Angolan">>
+			r += `Ang`;
+		<<case "Antiguan">>
+			r += `AB`;
+		<<case "Argentinian">>
+			r += `Arg`;
+		<<case "Armenian">>
+			r += `Arm`;
+		<<case "Aruban">>
+			r += `Aru`;
+		<<case "Australian">>
+			r += `Aus`;
+		<<case "Austrian">>
+			r += `Aut`;
+		<<case "Azerbaijani">>
+			r += `Aze`;
+		<<case "Bahamian">>
+			r += `Bah`;
+		<<case "Bahraini">>
+			r += `Bah`;
+		<<case "Bangladeshi">>
+			r += `Bgd`;
+		<<case "Barbadian">>
+			r += `Bar`;
+		<<case "Belarusian">>
+			r += `Ber`;
+		<<case "Belgian">>
+			r += `Bel`;
+		<<case "Belizean">>
+			r += `Blz`;
+		<<case "Beninese">>
+			r += `Ben`;
+		<<case "Bermudian">>
+			r += `Bmd`;
+		<<case "Bhutanese">>
+			r += `Bhu`;
+		<<case "Bissau-Guinean">>
+			r += `GB`;
+		<<case "Bolivian">>
+			r += `Bol`;
+		<<case "Bosnian">>
+			r += `Bos`;
+		<<case "Brazilian">>
+			r += `Bra`;
+		<<case "British">>
+			r += `UK`;
+		<<case "Bruneian">>
+			r += `Bru`;
+		<<case "Bulgarian">>
+			r += `Bul`;
+		<<case "Burkinabé">>
+			r += `BF`;
+		<<case "Burmese">>
+			r += `Bur`;
+		<<case "Burundian">>
+			r += `Bnd`;
+		<<case "Cambodian">>
+			r += `Kam`;
+		<<case "Cameroonian">>
+			r += `Cam`;
+		<<case "Canadian">>
+			r += `Can`;
+		<<case "Cape Verdean">>
+			r += `CV`;
+		<<case "Catalan">>
+			r += `Cat`;
+		<<case "Central African">>
+			r += `CAR`;
+		<<case "Chadian">>
+			r += `Cha`;
+		<<case "Chilean">>
+			r += `Chl`;
+		<<case "Chinese">>
+			r += `Chi`;
+		<<case "Colombian">>
+			r += `Col`;
+		<<case "Comorian">>
+			r += `Com`;
+		<<case "Congolese">>
+			r += `RC`;
+		<<case "a Cook Islander">>
+			r += `CI`;
+		<<case "Costa Rican">>
+			r += `CR`;
+		<<case "Croatian">>
+			r += `Cro`;
+		<<case "Cuban">>
+			r += `Cub`;
+		<<case "Cypriot">>
+			r += `Cyp`;
+		<<case "Czech">>
+			r += `Cze`;
+		<<case "Danish">>
+			r += `Den`;
+		<<case "Djiboutian">>
+			r += `Dji`;
+		<<case "Dominican">>
+			r += `DR`;
+		<<case "Dominiquais">>
+			r += `Dom`;
+		<<case "Dutch">>
+			r += `Nld`;
+		<<case "East Timorese">>
+			r += `ET`;
+		<<case "Ecuadorian">>
+			r += `Ecu`;
+		<<case "Egyptian">>
+			r += `Egy`;
+		<<case "Emirati">>
+			r += `UAE`;
+		<<case "Equatoguinean">>
+			r += `EG`;
+		<<case "Eritrean">>
+			r += `Eri`;
+		<<case "Estonian">>
+			r += `Est`;
+		<<case "Ethiopian">>
+			r += `Eth`;
+		<<case "Fijian">>
+			r += `Fij`;
+		<<case "Filipina">>
+			r += `Phl`;
+		<<case "Finnish">>
+			r += `Fin`;
+		<<case "French">>
+			r += `Fra`;
+		<<case "French Guianan">>
+			r += `FG`;
+		<<case "French Polynesian">>
+			r += `FP`;
+		<<case "Gabonese">>
+			r += `Gab`;
+		<<case "Gambian">>
+			r += `Gam`;
+		<<case "Georgian">>
+			r += `Geo`;
+		<<case "German">>
+			r += `Ger`;
+		<<case "Ghanan">>
+			r += `Gha`;
+		<<case "Greek">>
+			r += `Gre`;
+		<<case "Greenlandic">>
+			r += `Grn`;
+		<<case "Grenadian">>
+			r += `Gda`;
+		<<case "Guamanian">>
+			r += `Gua`;
+		<<case "Guatemalan">>
+			r += `Gtm`;
+		<<case "Guinean">>
+			r += `Gui`;
+		<<case "Guyanese">>
+			r += `Guy`;
+		<<case "Haitian">>
+			r += `Hai`;
+		<<case "Honduran">>
+			r += `Hon`;
+		<<case "Hungarian">>
+			r += `Hun`;
+		<<case "I-Kiribati">>
+			r += `Kir`;
+		<<case "Icelandic">>
+			r += `Ice`;
+		<<case "Indian">>
+			r += `Ind`;
+		<<case "Indonesian">>
+			r += `Idn`;
+		<<case "Iranian">>
+			r += `Irn`;
+		<<case "Iraqi">>
+			r += `Irq`;
+		<<case "Irish">>
+			r += `Irl`;
+		<<case "Israeli">>
+			r += `Isr`;
+		<<case "Italian">>
+			r += `Ita`;
+		<<case "Ivorian">>
+			r += `IC`;
+		<<case "Jamaican">>
+			r += `Jam`;
+		<<case "Japanese">>
+			r += `Jpn`;
+		<<case "Jordanian">>
+			r += `Jor`;
+		<<case "Kazakh">>
+			r += `Kaz`;
+		<<case "Kenyan">>
+			r += `Ken`;
+		<<case "Kittitian">>
+			r += `SKN`;
+		<<case "Korean">>
+			r += `Kor`;
+		<<case "Kosovan">>
+			r += `Kos`;
+		<<case "Kurdish">>
+			r += `Kur`;
+		<<case "Kuwaiti">>
+			r += `Kuw`;
+		<<case "Kyrgyz">>
+			r += `Kyr`;
+		<<case "Laotian">>
+			r += `Lao`;
+		<<case "Latvian">>
+			r += `Lat`;
+		<<case "Lebanese">>
+			r += `Lbn`;
+		<<case "Liberian">>
+			r += `Lib`;
+		<<case "Libyan">>
+			r += `Lby`;
+		<<case "a Liechtensteiner">>
+			r += `Lie`;
+		<<case "Lithuanian">>
+			r += `Lit`;
+		<<case "Luxembourgian">>
+			r += `Lux`;
+		<<case "Macedonian">>
+			r += `Mac`;
+		<<case "Malagasy">>
+			r += `Mad`;
+		<<case "Malawian">>
+			r += `Mwi`;
+		<<case "Malaysian">>
+			r += `Mys`;
+		<<case "Maldivian">>
+			r += `Mdv`;
+		<<case "Malian">>
+			r += `Mal`;
+		<<case "Maltese">>
+			r += `Mlt`;
+		<<case "Marshallese">>
+			r += `MI`;
+		<<case "Mauritanian">>
+			r += `Mta`;
+		<<case "Mauritian">>
+			r += `Mts`;
+		<<case "Mexican">>
+			r += `Mex`;
+		<<case "Micronesian">>
+			r += `FSM`;
+		<<case "Moldovan">>
+			r += `Mol`;
+		<<case "Monégasque">>
+			r += `Mnc`;
+		<<case "Mongolian">>
+			r += `Mon`;
+		<<case "Montenegrin">>
+			r += `Mng`;
+		<<case "Moroccan">>
+			r += `Mor`;
+		<<case "Mosotho">>
+			r += `Les`;
+		<<case "Motswana">>
+			r += `Bot`;
+		<<case "Mozambican">>
+			r += `Moz`;
+		<<case "Namibian">>
+			r += `Nam`;
+		<<case "Nauruan">>
+			r += `Nau`;
+		<<case "Nepalese">>
+			r += `Npl`;
+		<<case "New Caledonian">>
+			r += `NC`;
+		<<case "a New Zealander">>
+			r += `NZ`;
+		<<case "Ni-Vanuatu">>
+			r += `Van`;
+		<<case "Nicaraguan">>
+			r += `Nic`;
+		<<case "Nigerian">>
+			r += `Nga`;
+		<<case "Nigerien">>
+			r += `Ngr`;
+		<<case "Niuean">>
+			r += `Niu`;
+		<<case "Norwegian">>
+			r += `Nor`;
+		<<case "Omani">>
+			r += `Omn`;
+		<<case "Pakistani">>
+			r += `Pak`;
+		<<case "Palauan">>
+			r += `Plu`;
+		<<case "Palestinian">>
+			r += `Pal`;
+		<<case "Panamanian">>
+			r += `Pan`;
+		<<case "Papua New Guinean">>
+			r += `PNG`;
+		<<case "Paraguayan">>
+			r += `Par`;
+		<<case "Peruvian">>
+			r += `Per`;
+		<<case "Polish">>
+			r += `Pol`;
+		<<case "Portuguese">>
+			r += `Por`;
+		<<case "Puerto Rican">>
+			r += `PR`;
+		<<case "Qatari">>
+			r += `Qat`;
+		<<case "Romanian">>
+			r += `Rom`;
+		<<case "Russian">>
+			r += `Rus`;
+		<<case "Rwandan">>
+			r += `Rwa`;
+		<<case "Sahrawi">>
+			r += `Sah`;
+		<<case "Saint Lucian">>
+			r += `SL`;
+		<<case "Salvadoran">>
+			r += `ES`;
+		<<case "Sammarinese">>
+			r += `SM`;
+		<<case "Samoan">>
+			r += `Sam`;
+		<<case "São Toméan">>
+			r += `STP`;
+		<<case "Saudi">>
+			r += `Sau`;
+		<<case "Scottish">>
+			r += `Sco`;
+		<<case "Senegalese">>
+			r += `Sen`;
+		<<case "Serbian">>
+			r += `Srb`;
+		<<case "Seychellois">>
+			r += `Sey`;
+		<<case "Sierra Leonean">>
+			r += `Sie`;
+		<<case "Singaporean">>
+			r += `Sng`;
+		<<case "Slovak">>
+			r += `Svk`;
+		<<case "Slovene">>
+			r += `Svn`;
+		<<case "a Solomon Islander">>
+			r += `SI`;
+		<<case "Somali">>
+			r += `Som`;
+		<<case "South African">>
+			r += `RSA`;
+		<<case "South Sudanese">>
+			r += `SS`;
+		<<case "Spanish">>
+			r += `Spa`;
+		<<case "Sri Lankan">>
+			r += `Sri`;
+		<<case "Sudanese">>
+			r += `Sud`;
+		<<case "Surinamese">>
+			r += `Sur`;
+		<<case "Swazi">>
+			r += `Swa`;
+		<<case "Swedish">>
+			r += `Swe`;
+		<<case "Swiss">>
+			r += `Swi`;
+		<<case "Syrian">>
+			r += `Syr`;
+		<<case "Taiwanese">>
+			r += `Tai`;
+		<<case "Tajik">>
+			r += `Taj`;
+		<<case "Tanzanian">>
+			r += `Tza`;
+		<<case "Thai">>
+			r += `Tha`;
+		<<case "Tibetan">>
+			r += `Tib`;
+		<<case "Togolese">>
+			r += `Tog`;
+		<<case "Tongan">>
+			r += `Ton`;
+		<<case "Trinidadian">>
+			r += `TT`;
+		<<case "Tunisian">>
+			r += `Tun`;
+		<<case "Turkish">>
+			r += `Tur`;
+		<<case "Turkmen">>
+			r += `Tkm`;
+		<<case "Tuvaluan">>
+			r += `Tuv`;
+		<<case "Ugandan">>
+			r += `Uga`;
+		<<case "Ukrainian">>
+			r += `Ukr`;
+		<<case "Uruguayan">>
+			r += `Uru`;
+		<<case "Uzbek">>
+			r += `Uzb`;
+		<<case "Vatican">>
+			r += `VC`;
+		<<case "Venezuelan">>
+			r += `Ven`;
+		<<case "Vietnamese">>
+			r += `Vnm`;
+		<<case "Vincentian">>
+			r += `SVG`;
+		<<case "Yemeni">>
+			r += `Yem`;
+		<<case "Zairian">>
+			r += `DRC`;
+		<<case "Zambian">>
+			r += `Zam`;
+		<<case "Zimbabwean">>
+			<<if slave.race == "white">>
+				r += `Rho`;
+			<<else>>
+				r += `Zwe`;
+			<</if>>
+		<<case "Ancient Chinese Revivalist">>
+			r += `Chi Rev`;
+		<<case "Ancient Egyptian Revivalist">>
+			r += `Egy Rev`;
+		<<case "Arabian Revivalist">>
+			r += `Ara Rev`;
+		<<case "Aztec Revivalist">>
+			r += `Azt Rev`;
+		<<case "Edo Revivalist">>
+			r += `Edo Rev`;
+		<<case "Roman Revivalist">>
+			r += `Rom Rev`;
+		<<case "" "none" "slave" "Stateless">>
+			r += `None`;
+		<<default>>
+			r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
+	<</switch>>
+	r += `</span>`;
 <<elseif V.abbreviateNationality == 2>>
-<span class="tan">
-<<switch slave.nationality>>
-<<case "Zimbabwean">>
-	<<if slave.race == "white">>
-		Rhodesian.
-	<<else>>
-		slave.nationality.
-	<</if>>
-<<case "slave" "none" "" "Stateless">>
-	Stateless.
-<<default>>
-	slave.nationality.
-<</switch>>
-</span>
+	r += `<span class="tan">`;
+	<<switch slave.nationality>>
+		<<case "Zimbabwean">>
+			<<if slave.race == "white">>
+				r += `Rhodesian.`;
+			<<else>>
+				r += slave.nationality.
+			<</if>>
+		<<case "slave" "none" "" "Stateless">>
+			r += `Stateless.`;
+		<<default>>
+			r += slave.nationality.
+	<</switch>>
+	r += `</span>`;
 <</if>>
 
 <<if V.abbreviatePhysicals == 1>>
-<span class="pink">
+	r += `<span class="pink">`;
 	<<switch slave.skin>>
-	<<case "light brown">>
-		L. Br
-	<<case "dark brown">>
-		D. Br
-	<<case "light olive">>
-		L. Oli
-	<<case "dark olive">>
-		D. Oli
-	<<case "extremely pale">>
-		Ex. Pa
-	<<case "pure white">>
-		P. Whi
-	<<case "tanned">>
-		Tan
-	<<case "dark" "fair" "pale">>
-		<<print slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)>>
-	<<default>>
-		<<print slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)>>
+		<<case "light brown">>
+			r += `L. Br`;
+		<<case "dark brown">>
+			r += `D. Br`;
+		<<case "light olive">>
+			r += `L. Oli`;
+		<<case "dark olive">>
+			r += `D. Oli`;
+		<<case "extremely pale">>
+			r += `Ex. Pa`;
+		<<case "pure white">>
+			r += `P. Whi`;
+		<<case "tanned">>
+			r += `Tan`;
+		<<case "dark" "fair" "pale">>
+			r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
+		<<default>>
+			r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
 	<</switch>>
-<<else>>
-<<print slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)>> skin.
-</span>
+	<<else>>
+		r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.`;
+	</span>
 <</if>>
 <<if V.abbreviateGenitalia == 1>>
-<<if slave.dick > 0>>
-<span class="pink">
-<<if slave.balls == 0>>
-	Geld
-<</if>>
-<<if (slave.dick > 8) && (slave.balls > 8)>>
-	Junk+++
-<<elseif (slave.dick > 5) && (slave.balls > 5)>>
-	Junk++
-<<elseif (slave.dick > 4) && (slave.balls > 4)>>
-	Junk+
-<<elseif (slave.dick > 3) && (slave.balls > 3)>>
-	Junk
-<<elseif slave.dick > 8>>
-	Dick+++
-<<elseif slave.dick > 5>>
-	Dick++
-<<elseif slave.dick > 4>>
-	Dick+
-<<elseif slave.dick > 3>>
-	Dick
-<<elseif slave.balls > 10>>
-	Balls+++
-<<elseif slave.balls > 5>>
-	Balls++
-<<elseif slave.balls > 4>>
-	Balls+
-<<elseif slave.balls > 3>>
-	Balls
-<</if>>
-</span>
-<</if>>
-<<if slave.vagina == 0>>
-	<span class="lime">VV</span>
-<<elseif (slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")>>
-	<span class="pink">NBP</span>
-<</if>>
-<<if slave.anus == 0>>
-	<span class="lime">AV</span>
-<</if>>
-<span class="pink">
-<<if (slave.vagina > 3) && (slave.anus > 3)>>
-	V++A++
-<<elseif (slave.vagina > 2) && (slave.anus > 2)>>
-	V+A+
-<<elseif slave.vagina > 3>>
-	V++
-<<elseif slave.vagina > 2>>
-	V+
-<<elseif slave.anus > 3>>
-	A++
-<<elseif slave.anus > 2>>
-	A+
-<</if>>
-</span>
+	<<if slave.dick > 0>>
+		r += `<span class="pink">`;
+		<<if slave.balls == 0>>
+			r += `Geld`;
+		<</if>>
+		<<if (slave.dick > 8) && (slave.balls > 8)>>
+			r += `Junk+++`;
+		<<elseif (slave.dick > 5) && (slave.balls > 5)>>
+			r += `Junk++`;
+		<<elseif (slave.dick > 4) && (slave.balls > 4)>>
+			r += `Junk+`;
+		<<elseif (slave.dick > 3) && (slave.balls > 3)>>
+			r += `Junk`;
+		<<elseif slave.dick > 8>>
+			r += `Dick+++`;
+		<<elseif slave.dick > 5>>
+			r += `Dick++`;
+		<<elseif slave.dick > 4>>
+			r += `Dick+`;
+		<<elseif slave.dick > 3>>
+			r += `Dick`;
+		<<elseif slave.balls > 10>>
+			r += `Balls+++`;
+		<<elseif slave.balls > 5>>
+			r += `Balls++`;
+		<<elseif slave.balls > 4>>
+			r += `Balls+`;
+		<<elseif slave.balls > 3>>
+			r += `Balls`;
+		<</if>>
+		r += `</span>`;
+	<</if>>
+	<<if slave.vagina == 0>>
+		r += `<span class="lime">VV</span>`;
+	<<elseif (slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")>>
+		r += `<span class="pink">NBP</span>`;
+	<</if>>
+	<<if slave.anus == 0>>
+	r += `	<span class="lime">AV</span>`;
+	<</if>>
+	r += `<span class="pink">`;
+	<<if (slave.vagina > 3) && (slave.anus > 3)>>
+		r += `V++A++`;
+	<<elseif (slave.vagina > 2) && (slave.anus > 2)>>
+		r += `V+A+`;
+	<<elseif slave.vagina > 3>>
+		r += `V++`;
+	<<elseif slave.vagina > 2>>
+		r += `V+`;
+	<<elseif slave.anus > 3>>
+		r += `A++`;
+	<<elseif slave.anus > 2>>
+		r += `A+`;
+	<</if>>
+	r += `</span>`;
 <<elseif V.abbreviateGenitalia == 2>>
-<<if slave.dick > 0>>
-<span class="pink">
-<<if slave.balls == 0>>
-	Gelded.
-<</if>>
-<<if (slave.dick > 8) && (slave.balls > 8)>>
-	Hyper dick & balls.
-<<elseif (slave.dick > 5) && (slave.balls > 5)>>
-	Monster dick & balls.
-<<elseif (slave.dick > 4) && (slave.balls > 4)>>
-	Huge dick & balls.
-<<elseif (slave.dick > 3) && (slave.balls > 3)>>
-	Big dick & balls.
-<<elseif slave.dick > 8>>
-	Hyper dong.
-<<elseif slave.dick > 5>>
-	Monster dong.
-<<elseif slave.dick > 4>>
-	Huge dick.
-<<elseif slave.dick > 3>>
-	Big dick.
-<<elseif slave.balls > 8>>
-	Hyper balls.
-<<elseif slave.balls > 5>>
-	Monstrous balls.
-<<elseif slave.balls > 4>>
-	Huge balls.
-<<elseif slave.balls > 3>>
-	Big balls.
-<</if>>
-</span>
-<</if>>
-<<if slave.vagina == 0>>
-	<span class="lime">Virgin.</span>
-<<elseif (slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")>>
-	<span class="pink">Naked, barefoot, and pregnant.</span>
-<</if>>
-<<if slave.anus == 0>>
-	<span class="lime">Anal virgin.</span>
-<</if>>
-<span class="pink">
-<<if (slave.vagina > 3) && (slave.anus > 3)>>
-	Blown out holes.
-<<elseif (slave.vagina > 2) && (slave.anus > 2)>>
-	High mileage.
-<<elseif slave.vagina > 3>>
-	Cavernous pussy.
-<<elseif slave.vagina > 2>>
-	Loose pussy.
-<<elseif slave.anus > 3>>
-	Permagaped anus.
-<<elseif slave.anus > 2>>
-	Gaping anus.
-<</if>>
-</span>
+	<<if slave.dick > 0>>
+		r += `<span class="pink">`;
+		<<if slave.balls == 0>>
+			r += `Gelded.`;
+		<</if>>
+		<<if (slave.dick > 8) && (slave.balls > 8)>>
+			r += `Hyper dick & balls.`;
+		<<elseif (slave.dick > 5) && (slave.balls > 5)>>
+			r += `Monster dick & balls.`;
+		<<elseif (slave.dick > 4) && (slave.balls > 4)>>
+			r += `Huge dick & balls.`;
+		<<elseif (slave.dick > 3) && (slave.balls > 3)>>
+			r += `Big dick & balls.`;
+		<<elseif slave.dick > 8>>
+			r += `Hyper dong.`;
+		<<elseif slave.dick > 5>>
+			r += `Monster dong.`;
+		<<elseif slave.dick > 4>>
+			r += `Huge dick.`;
+		<<elseif slave.dick > 3>>
+			r += `Big dick.`;
+		<<elseif slave.balls > 8>>
+			r += `Hyper balls.`;
+		<<elseif slave.balls > 5>>
+			r += `Monstrous balls.`;
+		<<elseif slave.balls > 4>>
+			r += `Huge balls.`;
+		<<elseif slave.balls > 3>>
+			r += `Big balls.`;
+		<</if>>
+		r += `</span>`;
+	<</if>>
+	<<if slave.vagina == 0>>
+		r += `<span class="lime">Virgin.</span>`;
+	<<elseif (slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")>>
+		r += `<span class="pink">Naked, barefoot, and pregnant.</span>`;
+	<</if>>
+	<<if slave.anus == 0>>
+		r += `<span class="lime">Anal virgin.</span>`;
+	<</if>>
+	r += `<span class="pink">`;
+	<<if (slave.vagina > 3) && (slave.anus > 3)>>
+		r += `Blown out holes.`;
+	<<elseif (slave.vagina > 2) && (slave.anus > 2)>>
+		r += `High mileage.`;
+	<<elseif slave.vagina > 3>>
+		r += `Cavernous pussy.`;
+	<<elseif slave.vagina > 2>>
+		r += `Loose pussy.`;
+	<<elseif slave.anus > 3>>
+		r += `Permagaped anus.`;
+	<<elseif slave.anus > 2>>
+		r += `Gaping anus.`;
+	<</if>>
+	r += `</span>`;
 <</if>>
 
 <<if V.abbreviatePhysicals == 1>>
-<span class="pink">
-<<if V.showAgeDetail == 1>>
-	slave.actualAge
-<<elseif slave.actualAge >= 40>>
-	40s
-<<elseif slave.actualAge >= 35>>
-	Lt30s
-<<elseif slave.actualAge >= 30>>
-	Ea30s
-<<elseif slave.actualAge >= 25>>
-	Lt20s
-<<elseif slave.actualAge >= 20>>
-	Ea20s
-<<elseif slave.actualAge >= 18>>
-	slave.actualAge
-<</if>>
-<<if slave.actualAge != slave.physicalAge>>
-	<<print slave.physicalAge>>y-bdy
-<</if>>
-<<if slave.visualAge != slave.physicalAge>>
-	Lks<<print slave.visualAge>>
-<</if>>
-<<if slave.face < -95>>
-	<span class="red">Face---<<if V.summaryStats>>[slave.face]<</if>></span>
-<<elseif slave.face < -40>>
-	<span class="red">Face--<<if V.summaryStats>>[slave.face]<</if>></span>
-<<elseif slave.face < -10>>
-	<span class="red">Face-<<if V.summaryStats>>[slave.face]<</if>></span>
-<<elseif slave.face <= 10>>
-	Face<<if V.summaryStats>>[slave.face]<</if>>
-<<elseif slave.face <= 40>>
-	<span class="pink">Face+<<if V.summaryStats>>[slave.face]<</if>></span>
-<<elseif slave.face <= 95>>
-	<span class="pink">Face++<<if V.summaryStats>>[slave.face]<</if>></span>
-<<else>>
-	<span class="pink">Face+++<<if V.summaryStats>>[slave.face]<</if>></span>
-<</if>>
-<<if slave.eyes == -2>>
-	<span class="red">Blind</span>
-<<elseif ((slave.eyes == -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
-	<span class="yellow">Sight-</span>
-<</if>>
+	r += `<span class="pink">`;
+	<<if V.showAgeDetail == 1>>
+		r += slave.actualAge;
+	<<elseif slave.actualAge >= 40>>
+		r += `40s`;
+	<<elseif slave.actualAge >= 35>>
+		r += `Lt30s`;
+	<<elseif slave.actualAge >= 30>>
+		r += `Ea30s`;
+	<<elseif slave.actualAge >= 25>>
+		r += `Lt20s`;
+	<<elseif slave.actualAge >= 20>>
+		r += `Ea20s`;
+	<<elseif slave.actualAge >= 18>>
+		r += slave.actualAge
+	<</if>>
+	<<if slave.actualAge != slave.physicalAge>>
+		r += `${slave.physicalAge}y-bdy`;
+	<</if>>
+	<<if slave.visualAge != slave.physicalAge>>
+		r += `Lks${slave.visualAge}`;
+	<</if>>
+	<<if slave.face < -95>>
+		r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+	<<elseif slave.face < -40>>
+		r += `<span class="red">Face--${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+	<<elseif slave.face < -10>>
+		r += `<span class="red">Face-${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+	<<elseif slave.face <= 10>>
+		r += `Face${V.summaryStats? `[${slave.face}]` : ''}`;
+	<<elseif slave.face <= 40>>
+		r += `<span class="pink">Face+${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+	<<elseif slave.face <= 95>>
+		r += `<span class="pink">Face++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+	<<else>>
+		r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+	<</if>>
+	<<if slave.eyes == -2>>
+		r += `<span class="red">Blind</span>`;
+	<<elseif ((slave.eyes == -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
+		r += `<span class="yellow">Sight-</span>`;
+	<</if>>
 
-<<if slave.markings != "none">>
-	Markings
-<</if>>
+	<<if slave.markings != "none">>
+		r += `Markings`;
+	<</if>>
 
-<<if slave.lips > 95>>
-	Facepussy
-<<elseif slave.lips > 70>>
-	Lips+++<<if V.summaryStats>>[slave.lips]<</if>>
-<<elseif slave.lips > 40>>
-	Lips++<<if V.summaryStats>>[slave.lips]<</if>>
-<<elseif slave.lips > 20>>
-	Lips+<<if V.summaryStats>>[slave.lips]<</if>>
-<<elseif slave.lips > 10>>
-	Lips<<if V.summaryStats>>[slave.lips]<</if>>
-<<else>>
-	<span class="red">Lips-</span><<if V.summaryStats>>[slave.lips]<</if>>
-<</if>>
-<<if slave.teeth == "crooked">>
-	<span class="yellow">Cr Teeth</span>
-<<elseif slave.teeth == "cosmetic braces">>
-	Cos Braces
-<<elseif slave.teeth == "straightening braces">>
-	Braces
-<<elseif slave.teeth == "removable">>
-	Rem Teeth
-<<elseif slave.teeth == "pointy">>
-	Fangs
-<</if>>
-<<if slave.muscles > 95>>
-	Musc++<<if V.summaryStats>>[slave.muscles]<</if>>
-<<elseif slave.muscles > 50>>
-	Musc+<<if V.summaryStats>>[slave.muscles]<</if>>
-<<elseif slave.muscles > 5>>
-	Fit<<if V.summaryStats>>[slave.muscles]<</if>>
-<<elseif slave.muscles > -6>>
-	Soft<<if V.summaryStats>>[slave.muscles]<</if>>
-<<elseif slave.muscles > -31>>
-	<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
-		<span class="red">Weak</span><<if V.summaryStats>>[slave.muscles]<</if>>
+	<<if slave.lips > 95>>
+		r += `Facepussy`;
+	<<elseif slave.lips > 70>>
+		r += `Lips+++${V.summaryStats? `[${slave.lips}]` : ''}`;
+	<<elseif slave.lips > 40>>
+		r += `Lips++${V.summaryStats? `[${slave.lips}]` : ''}`;
+	<<elseif slave.lips > 20>>
+		r += `Lips+${V.summaryStats? `[${slave.lips}]` : ''}`;
+	<<elseif slave.lips > 10>>
+		r += `Lips${V.summaryStats? `[${slave.lips}]` : ''}`;
+	<<else>>
+		r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
+	<</if>>
+	<<if slave.teeth == "crooked">>
+		r += `<span class="yellow">Cr Teeth</span>`;
+	<<elseif slave.teeth == "cosmetic braces">>
+		r += `Cos Braces`;
+	<<elseif slave.teeth == "straightening braces">>
+		r += `Braces`;
+	<<elseif slave.teeth == "removable">>
+		r += `Rem Teeth`;
+	<<elseif slave.teeth == "pointy">>
+		r += `Fangs`;
+	<</if>>
+	<<if slave.muscles > 95>>
+		r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
+	<<elseif slave.muscles > 50>>
+		r += `Musc+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+	<<elseif slave.muscles > 5>>
+		r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}`;
+	<<elseif slave.muscles > -6>>
+		r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+	<<elseif slave.muscles > -31>>
+		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+			r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		<<else>>
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		<</if>>
+	<<elseif slave.muscles > -96>>
+		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+			r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		<<else>>
+			r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		<</if>>
 	<<else>>
-		Soft<<if V.summaryStats>>[slave.muscles]<</if>>
+		r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+	<</if>>
+	<<if slave.amp != 0>>
+		<<if slave.amp == -1>>
+			r += `P-Limbs`;
+		<<elseif slave.amp == -2>>
+			r += `Sex P-Limbs`;
+		<<elseif slave.amp == -3>>
+			r += `Beauty P-Limbs`;
+		<<elseif slave.amp == -4>>
+			r += `Combat P-Limbs`;
+		<<elseif slave.amp == -5>>
+			r += `Cyber P-Limbs`;
+		<<else>>
+			r += `Amp`;
+		<</if>>
+	<</if>>
+	<<if !canWalk(slave)>>
+		r += `Immob`;
+	<</if>>
+	<<if slave.heels == 1>>
+		r += `Heel`;
 	<</if>>
-<<elseif slave.muscles > -96>>
-	<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
-		<span class="red">Weak+</span><<if V.summaryStats>>[slave.muscles]<</if>>
+	r += `</span>`;
+	<<if slave.voice == 0>>
+		r += `<span class="pink">Mute</span>`;
 	<<else>>
-		Soft+<<if V.summaryStats>>[slave.muscles]<</if>>
+		<<if slave.accent == 3>>
+			r += `<span class="red">Acc--</span>`;
+		<<elseif slave.accent == 2>>
+			r += `Acc-`;
+		<<elseif slave.accent == 4>>
+			r += `Acc--`;
+		<<elseif slave.accent == 1>>
+			r += `<span class="pink">Acc</span>`;
+		<</if>>
 	<</if>>
-<<else>>
-	<span class="red">Weak++</span><<if V.summaryStats>>[slave.muscles]<</if>>
-<</if>>
-<<if slave.amp != 0>>
-  <<if slave.amp == -1>>
-	P-Limbs
-  <<elseif slave.amp == -2>>
-	Sex P-Limbs
-  <<elseif slave.amp == -3>>
-	Beauty P-Limbs
-  <<elseif slave.amp == -4>>
-	Combat P-Limbs
-  <<elseif slave.amp == -5>>
-	Cyber P-Limbs
-  <<else>>
-	Amp
-  <</if>>
-<</if>>
-<<if !canWalk(slave)>>
-	Immob
-<</if>>
-<<if slave.heels == 1>>
-	Heel
-<</if>>
-</span>
-<<if slave.voice == 0>>
-	<span class="pink">Mute</span>
-<<else>>
-	<<if slave.accent == 3>>
-		<span class="red">Acc--</span>
-	<<elseif slave.accent == 2>>
-		Acc-
-	<<elseif slave.accent == 4>>
-		Acc--
-	<<elseif slave.accent == 1>>
-		<span class="pink">Acc</span>
+	r += `<span class="pink">`;
+	<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
+		r += `T&A+++`;
+	<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
+		r += `T&A++`;
+	<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
+		r += `T&A+`;
+	<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
+		r += `T&A`;
+	<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
+		r += `Girlish`;
+	<<elseif slave.boobs >= 12000>>
+		r += `Boobs+++`;
+	<<elseif slave.boobs > 4000>>
+		r += `Boobs++`;
+	<<elseif slave.boobs > 2000>>
+		r += `Boobs+`;
+	<<elseif slave.boobs > 800>>
+		r += `Boobs`;
+	<<elseif slave.butt > 9>>
+		r += `Ass+++`;
+	<<elseif slave.butt > 8>>
+		r += `Ass++`;
+	<<elseif slave.butt > 6>>
+		r += `Ass+`;
+	<<elseif slave.butt > 4>>
+		r += `Ass`;
 	<</if>>
-<</if>>
-<span class="pink">
-<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
-	T&A+++
-<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
-	T&A++
-<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
-	T&A+
-<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
-	T&A
-<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
-	Girlish
-<<elseif slave.boobs >= 12000>>
-	Boobs+++
-<<elseif slave.boobs > 4000>>
-	Boobs++
-<<elseif slave.boobs > 2000>>
-	Boobs+
-<<elseif slave.boobs > 800>>
-	Boobs
-<<elseif slave.butt > 9>>
-	Ass+++
-<<elseif slave.butt > 8>>
-	Ass++
-<<elseif slave.butt > 6>>
-	Ass+
-<<elseif slave.butt > 4>>
-	Ass
-<</if>>
-</span>
-<span class="red">
-<<if slave.hips < -1>>
-<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disp+
-<</if>>
-<<elseif slave.hips < 0>>
-<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disp+
-<</if>>
-<<elseif slave.hips > 2>>
-<<if slave.butt <= 8>>
-	Disp-
-<</if>>
-<<elseif slave.hips > 1>>
-<<if slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
-	Disp-
-<</if>>
+	r += `</span>`;
+	r += `<span class="red">`;
+	<<if slave.hips < -1>>
+		<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+			r += `Disp+`;
+		<</if>>
+	<<elseif slave.hips < 0>>
+		<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+			r += `Disp+`;
+		<</if>>
+	<<elseif slave.hips > 2>>
+		<<if slave.butt <= 8>>
+			r += `Disp-`;
+		<</if>>
+	<<elseif slave.hips > 1>>
+		<<if slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+			r += `Disp-`;
+		<</if>>
 <<elseif slave.hips > 0>>
-<<if slave.butt > 8>>
-<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disp+
-<</if>>
-<<elseif slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
-	Disp-
-<</if>>
-<<else>>
-<<if slave.butt > 6>>
-<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disp+
-<</if>>
-<<elseif slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
-	Disp-
-<</if>>
-<</if>>
-</span>
-<<if slave.waist > 95>><span class="red">Wst---<<if V.summaryStats>>[slave.waist]<</if>></span>
-<<elseif slave.waist > 40>><span class="red">Wst--<<if V.summaryStats>>[slave.waist]<</if>></span>
-<<elseif slave.waist > 10>><span class="red">Wst-<<if V.summaryStats>>[slave.waist]<</if>></span>
-<<elseif slave.waist >= -10>>Wst<<if V.summaryStats>>[slave.waist]<</if>>
-<<elseif slave.waist >= -40>><span class="pink">Wst+<<if V.summaryStats>>[slave.waist]<</if>></span>
-<<elseif slave.waist >= -95>><span class="pink">Wst++<<if V.summaryStats>>[slave.waist]<</if>></span>
-<<else>><span class="pink">Wst+++<<if V.summaryStats>>[slave.waist]<</if>></span>
-<</if>>
-<span class="pink">
-<<if (slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)>>
-	Natr
-<<else>>
-	Impl
-<</if>>
-<<if slave.lactation == 1>>
-	Lact
-<<elseif slave.lactation == 2>>
-	Lact++
-<</if>>
-<<run modScore(slave)>>
-<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
-<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
-	Mods++
-<<elseif V.modScore > 7>>
-	Mods+
-<<else>>
-	Mods
-<</if>>
-<<if slave.brand != 0>>
-	Br
-<</if>>
-</span>
+	<<if slave.butt > 8>>
+		<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+			r += `Disp+`;
+		<</if>>
+	<<elseif slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+		r += `Disp-`;
+	<</if>>
+	<<else>>
+		<<if slave.butt > 6>>
+			<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+				r += `Disp+`;
+			<</if>>
+		<<elseif slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+			r += `Disp-`;
+		<</if>>
+	<</if>>
+	r += `</span>`;
+	<<if slave.waist > 95>>
+		r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]`}</span>`;
+	<<elseif slave.waist > 40>>
+		r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`}</span>`;
+	<<elseif slave.waist > 10>>
+		r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]`}</span>`;
+	<<elseif slave.waist >= -10>>
+		r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
+	<<elseif slave.waist >= -40>>
+		r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]`}</span>`;
+	<<elseif slave.waist >= -95>>
+		r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]`}</span>`;
+	<<else>>
+		r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`}</span>`;
+	<</if>>
+	r += `<span class="pink">`;
+	<<if (slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)>>
+		r += `Natr`;
+	<<else>>
+		r += `Impl`;
+	<</if>>
+	<<if slave.lactation == 1>>
+		r += `Lact`;
+	<<elseif slave.lactation == 2>>
+		r += `Lact++`;
+	<</if>>
+	<<run modScore(slave)>>
+	<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
+		true
+	<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
+		r += `Mods++`;
+	<<elseif V.modScore > 7>>
+		r += `Mods+`;
+	<<else>>
+		r += `Mods`;
+	<</if>>
+	<<if slave.brand != 0>>
+		r += `Br`;
+	<</if>>
+	r += `</span>`;
+// TODO: DONE UP TO HERE
 <<elseif V.abbreviatePhysicals == 2>>
-<span class="pink">
-<<if V.showAgeDetail == 1>>
-	Age slave.actualAge.
-<<elseif slave.actualAge >= 40>>
-	Forties.
-<<elseif slave.actualAge >= 35>>
-	Late thirties.
-<<elseif slave.actualAge >= 30>>
-	Early thirties.
-<<elseif slave.actualAge >= 25>>
-	Late twenties.
-<<elseif slave.actualAge >= 20>>
-	Early twenties.
-<<elseif slave.actualAge >= 19>>
-	Nineteen.
-<<elseif slave.actualAge >= 18>>
-	Eighteen.
-<<else>>
-	Underage.
-<</if>>
-/*
-**  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
-**  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
-*/
-<<if ((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))>>
-        <<if slave.actualAge != slave.physicalAge>>
-                slave.physicalAge year old body.
-        <</if>>
-        <<if slave.visualAge != slave.physicalAge>>
-                Looks slave.visualAge.
-        <</if>>
-<<else>>
-        /*
-        **  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
-        **  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
-        **  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
-        **  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
-        **  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
-        **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
-        **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
-        */
-        Appears to have a slave.visualAge year old body.
-<</if>>
-<<if slave.inducedNCS == 1>>
-        (<span class="orange">NCS</span>)
-<</if>>
-<<if slave.face < -95>>
-	<span class="red">Very ugly<<if V.summaryStats>> [slave.face]<</if>></span>
-<<elseif slave.face < -40>>
-	<span class="red">Ugly<<if V.summaryStats>> [slave.face]<</if>></span>
-<<elseif slave.face < -10>>
-	<span class="red">Unattractive<<if V.summaryStats>> [slave.face]<</if>></span>
-<<elseif slave.face <= 10>>
-	Average<<if V.summaryStats>> [slave.face]<</if>>
-<<elseif slave.face <= 40>>
-	<span class="pink">Attractive<<if V.summaryStats>> [slave.face]<</if>></span>
-<<elseif slave.face <= 95>>
-	<span class="pink">Beautiful<<if V.summaryStats>> [slave.face]<</if>></span>
-<<else>>
-	<span class="pink">Very beautiful<<if V.summaryStats>> [slave.face]<</if>></span>
-<</if>>
-slave.faceShape face.
-<<if slave.eyes <= -2>>
-	<span class="red">Blind.</span>
-<<elseif ((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
-	<span class="yellow">Nearsighted.</span>
-<</if>>
-<<if slave.lips > 95>>
-	Facepussy<<if V.summaryStats>> [slave.lips]<</if>>.
-<<elseif slave.lips > 70>>
-	Huge lips<<if V.summaryStats>> [slave.lips]<</if>>.
-<<elseif slave.lips > 40>>
-	Big lips<<if V.summaryStats>> [slave.lips]<</if>>.
-<<elseif slave.lips > 20>>
-	Pretty lips<<if V.summaryStats>> [slave.lips]<</if>>.
-<<elseif slave.lips > 10>>
-	Normal lips<<if V.summaryStats>> [slave.lips]<</if>>.
-<<else>>
-	<span class="red">Thin lips<<if V.summaryStats>> [slave.lips]<</if>>.</span>
-<</if>>
-<<if slave.teeth == "crooked">>
-	<span class="yellow">Crooked teeth.</span>
-<<elseif slave.teeth == "cosmetic braces">>
-	Cosmetic braces.
-<<elseif slave.teeth == "straightening braces">>
-	Braces.
-<<elseif slave.teeth == "removable">>
-	Removable teeth.
-<<elseif slave.teeth == "pointy">>
-	Sharp fangs.
-<</if>>
-<<if slave.muscles > 95>>
-	Hugely muscular<<if V.summaryStats>> [slave.muscles]<</if>>.
-<<elseif slave.muscles > 50>>
-	Muscular<<if V.summaryStats>> [slave.muscles]<</if>>.
-<<elseif slave.muscles > 5>>
-	Fit<<if V.summaryStats>> [slave.muscles]<</if>>.
-<<elseif slave.muscles > -6>>
-	Soft<<if V.summaryStats>> [slave.muscles]<</if>>.
-<<elseif slave.muscles > -31>>
-	<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
-		<span class="red">Weak<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+	<span class="pink">
+	<<if V.showAgeDetail == 1>>
+		Age slave.actualAge.
+	<<elseif slave.actualAge >= 40>>
+		Forties.
+	<<elseif slave.actualAge >= 35>>
+		Late thirties.
+	<<elseif slave.actualAge >= 30>>
+		Early thirties.
+	<<elseif slave.actualAge >= 25>>
+		Late twenties.
+	<<elseif slave.actualAge >= 20>>
+		Early twenties.
+	<<elseif slave.actualAge >= 19>>
+		Nineteen.
+	<<elseif slave.actualAge >= 18>>
+		Eighteen.
+	<<else>>
+		Underage.
+	<</if>>
+	/*
+	**  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
+	**  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
+	*/
+	<<if ((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))>>
+		<<if slave.actualAge != slave.physicalAge>>
+			slave.physicalAge year old body.
+		<</if>>
+		<<if slave.visualAge != slave.physicalAge>>
+			Looks slave.visualAge.
+		<</if>>
 	<<else>>
-		Weak<<if V.summaryStats>> [slave.muscles]<</if>>.
+		/*
+		**  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
+		**  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
+		**  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
+		**  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
+		**  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
+		**  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
+		**  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
+		*/
+		Appears to have a slave.visualAge year old body.
+	<</if>>
+	<<if slave.inducedNCS == 1>>
+		(<span class="orange">NCS</span>)
+	<</if>>
+	<<if slave.face < -95>>
+		<span class="red">Very ugly<<if V.summaryStats>> [slave.face]<</if>></span>
+	<<elseif slave.face < -40>>
+		<span class="red">Ugly<<if V.summaryStats>> [slave.face]<</if>></span>
+	<<elseif slave.face < -10>>
+		<span class="red">Unattractive<<if V.summaryStats>> [slave.face]<</if>></span>
+	<<elseif slave.face <= 10>>
+		Average<<if V.summaryStats>> [slave.face]<</if>>
+	<<elseif slave.face <= 40>>
+		<span class="pink">Attractive<<if V.summaryStats>> [slave.face]<</if>></span>
+	<<elseif slave.face <= 95>>
+		<span class="pink">Beautiful<<if V.summaryStats>> [slave.face]<</if>></span>
+	<<else>>
+		<span class="pink">Very beautiful<<if V.summaryStats>> [slave.face]<</if>></span>
+	<</if>>
+	slave.faceShape face.
+	<<if slave.eyes <= -2>>
+		<span class="red">Blind.</span>
+	<<elseif ((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
+		<span class="yellow">Nearsighted.</span>
+	<</if>>
+	<<if slave.lips > 95>>
+		Facepussy<<if V.summaryStats>> [slave.lips]<</if>>.
+	<<elseif slave.lips > 70>>
+		Huge lips<<if V.summaryStats>> [slave.lips]<</if>>.
+	<<elseif slave.lips > 40>>
+		Big lips<<if V.summaryStats>> [slave.lips]<</if>>.
+	<<elseif slave.lips > 20>>
+		Pretty lips<<if V.summaryStats>> [slave.lips]<</if>>.
+	<<elseif slave.lips > 10>>
+		Normal lips<<if V.summaryStats>> [slave.lips]<</if>>.
+	<<else>>
+		<span class="red">Thin lips<<if V.summaryStats>> [slave.lips]<</if>>.</span>
+	<</if>>
+	<<if slave.teeth == "crooked">>
+		<span class="yellow">Crooked teeth.</span>
+	<<elseif slave.teeth == "cosmetic braces">>
+		Cosmetic braces.
+	<<elseif slave.teeth == "straightening braces">>
+		Braces.
+	<<elseif slave.teeth == "removable">>
+		Removable teeth.
+	<<elseif slave.teeth == "pointy">>
+		Sharp fangs.
+	<</if>>
+	<<if slave.muscles > 95>>
+		Hugely muscular<<if V.summaryStats>> [slave.muscles]<</if>>.
+	<<elseif slave.muscles > 50>>
+		Muscular<<if V.summaryStats>> [slave.muscles]<</if>>.
+	<<elseif slave.muscles > 5>>
+		Fit<<if V.summaryStats>> [slave.muscles]<</if>>.
+	<<elseif slave.muscles > -6>>
+		Soft<<if V.summaryStats>> [slave.muscles]<</if>>.
+	<<elseif slave.muscles > -31>>
+		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+			<span class="red">Weak<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+		<<else>>
+			Weak<<if V.summaryStats>> [slave.muscles]<</if>>.
+		<</if>>
+	<<elseif slave.muscles > -96>>
+		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+			<span class="red">Very weak<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+		<<else>>
+			Very weak<<if V.summaryStats>> [slave.muscles]<</if>>.
+		<</if>>
+	<<else>>
+		<span class="red">Frail<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+	<</if>>
+	<<if slave.amp != 0>>
+		<<if slave.amp == -1>>
+			Prosthetic limbs.
+		<<elseif slave.amp == -2>>
+			Sexy prosthetic limbs.
+		<<elseif slave.amp == -3>>
+			Beautiful prosthetic limbs.
+		<<elseif slave.amp == -4>>
+			Deadly prosthetic limbs.
+		<<elseif slave.amp == -5>>
+			Cyber prosthetic limbs.
+		<<else>>
+			Amputee.
+		<</if>>
+	<</if>>
+	<<if !canWalk(slave)>>
+		Immobile.
 	<</if>>
-<<elseif slave.muscles > -96>>
-	<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
-		<span class="red">Very weak<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+	<<if slave.heels == 1>>
+		Heeled.
+	<</if>>
+	</span>
+	<<if slave.voice == 0>>
+		<span class="pink">Mute.</span>
 	<<else>>
-		Very weak<<if V.summaryStats>> [slave.muscles]<</if>>.
+		<<if slave.accent == 3>>
+			<span class="red">Bad accent.</span>
+		<<elseif slave.accent == 4>>
+			<span class="red">No language skills.</span>
+		<<elseif slave.accent == 2>>
+			Accent.
+		<<elseif slave.accent == 1>>
+			<span class="pink">Cute accent.</span>
+		<</if>>
 	<</if>>
-<<else>>
-	<span class="red">Frail<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
-<</if>>
-<<if slave.amp != 0>>
-	<<if slave.amp == -1>>
-	Prosthetic limbs.
-	<<elseif slave.amp == -2>>
-	Sexy prosthetic limbs.
-	<<elseif slave.amp == -3>>
-	Beautiful prosthetic limbs.
-	<<elseif slave.amp == -4>>
-	Deadly prosthetic limbs.
-	<<elseif slave.amp == -5>>
-	Cyber prosthetic limbs.
+	<span class="pink">
+	<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
+		Hyper T&A.
+	<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
+		Enormous T&A.
+	<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
+		Huge T&A.
+	<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
+		Big T&A.
+	<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
+		Girlish figure.
+	<<elseif slave.boobs >= 12000>>
+		Immobilizing tits.
+	<<elseif slave.boobs > 4000>>
+		Monstrous tits.
+	<<elseif slave.boobs > 2000>>
+		Huge tits.
+	<<elseif slave.boobs > 800>>
+		Big tits.
+	<<elseif slave.butt > 9>>
+		Hyper ass.
+	<<elseif slave.butt > 8>>
+		Titanic ass.
+	<<elseif slave.butt > 6>>
+		Huge ass.
+	<<elseif slave.butt > 4>>
+		Big ass.
+	<</if>>
+	</span>
+	<span class="red">
+	<<if slave.hips < -1>>
+		<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+			Disproportionately big butt.
+		<</if>>
+	<<elseif slave.hips < 0>>
+		<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+			Disproportionately big butt.
+		<</if>>
+	<<elseif slave.hips > 2>>
+		<<if slave.butt <= 8>>
+			Disproportionately small butt.
+		<</if>>
+	<<elseif slave.hips > 1>>
+		<<if slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+			Disproportionately small butt.
+		<</if>>
+	<<elseif slave.hips > 0>>
+		<<if slave.butt > 8>>
+			<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+				Disproportionately big butt.
+			<</if>>
+		<<elseif slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+			Disproportionately small butt.
+		<</if>>
 	<<else>>
-	Amputee.
+		<<if slave.butt > 6>>
+			<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+				Disproportionately big butt.
+			<</if>>
+		<<elseif slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+			Disproportionately small butt.
+		<</if>>
 	<</if>>
-<</if>>
-<<if !canWalk(slave)>>
-	Immobile.
-<</if>>
-<<if slave.heels == 1>>
-	Heeled.
-<</if>>
-</span>
-<<if slave.voice == 0>>
-	<span class="pink">Mute.</span>
-<<else>>
-	<<if slave.accent == 3>>
-		<span class="red">Bad accent.</span>
-	<<elseif slave.accent == 4>>
-		<span class="red">No language skills.</span>
-	<<elseif slave.accent == 2>>
-		Accent.
-	<<elseif slave.accent == 1>>
-		<span class="pink">Cute accent.</span>
+	</span>
+	<<if slave.waist > 95>>
+		<span class="red">Masculine waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+	<<elseif slave.waist > 40>><span class="red">Ugly waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+	<<elseif slave.waist > 10>><span class="red">Unattractive waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+	<<elseif slave.waist >= -10>>Average waist<<if V.summaryStats>> [slave.waist]<</if>>.
+	<<elseif slave.waist >= -40>><span class="pink">Feminine waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+	<<elseif slave.waist >= -95>><span class="pink">Hourglass waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+	<<else>><span class="pink">Absurdly narrow waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
+	<</if>>
+	<span class="pink">
+	<<if (slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)>>
+		Implants.
+	<<elseif (slave.faceImplant >= 30) || (slave.waist < -95)>>
+		Surgery enhanced.
+	<<else>>
+		All natural.
+	<</if>>
+	<<if slave.lactation == 1>>
+		Lactating naturally.
+	<<elseif slave.lactation == 2>>
+		Heavy lactation.
+	<</if>>
+	<<run modScore(slave)>>
+	<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
+	<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
+		Extensive body mods.
+	<<elseif V.modScore > 7>>
+		Noticeable body mods.
+	<<else>>
+		Light body mods.
 	<</if>>
-<</if>>
-<span class="pink">
-<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
-	Hyper T&A.
-<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
-	Enormous T&A.
-<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
-	Huge T&A.
-<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
-	Big T&A.
-<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
-	Girlish figure.
-<<elseif slave.boobs >= 12000>>
-	Immobilizing tits.
-<<elseif slave.boobs > 4000>>
-	Monstrous tits.
-<<elseif slave.boobs > 2000>>
-	Huge tits.
-<<elseif slave.boobs > 800>>
-	Big tits.
-<<elseif slave.butt > 9>>
-	Hyper ass.
-<<elseif slave.butt > 8>>
-	Titanic ass.
-<<elseif slave.butt > 6>>
-	Huge ass.
-<<elseif slave.butt > 4>>
-	Big ass.
-<</if>>
-</span>
-<span class="red">
-<<if slave.hips < -1>>
-<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disproportionately big butt.
-<</if>>
-<<elseif slave.hips < 0>>
-<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disproportionately big butt.
-<</if>>
-<<elseif slave.hips > 2>>
-<<if slave.butt <= 8>>
-	Disproportionately small butt.
-<</if>>
-<<elseif slave.hips > 1>>
-<<if slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
-	Disproportionately small butt.
-<</if>>
-<<elseif slave.hips > 0>>
-<<if slave.butt > 8>>
-<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disproportionately big butt.
-<</if>>
-<<elseif slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
-	Disproportionately small butt.
-<</if>>
-<<else>>
-<<if slave.butt > 6>>
-<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disproportionately big butt.
-<</if>>
-<<elseif slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
-	Disproportionately small butt.
-<</if>>
-<</if>>
-</span>
-<<if slave.waist > 95>>
-<span class="red">Masculine waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-<<elseif slave.waist > 40>><span class="red">Ugly waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-<<elseif slave.waist > 10>><span class="red">Unattractive waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-<<elseif slave.waist >= -10>>Average waist<<if V.summaryStats>> [slave.waist]<</if>>.
-<<elseif slave.waist >= -40>><span class="pink">Feminine waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-<<elseif slave.waist >= -95>><span class="pink">Hourglass waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-<<else>><span class="pink">Absurdly narrow waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-<</if>>
-<span class="pink">
-<<if (slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)>>
-	Implants.
-<<elseif (slave.faceImplant >= 30) || (slave.waist < -95)>>
-	Surgery enhanced.
-<<else>>
-	All natural.
-<</if>>
-<<if slave.lactation == 1>>
-	Lactating naturally.
-<<elseif slave.lactation == 2>>
-	Heavy lactation.
-<</if>>
-<<run modScore(slave)>>
-<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
-<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
-	Extensive body mods.
-<<elseif V.modScore > 7>>
-	Noticeable body mods.
-<<else>>
-	Light body mods.
-<</if>>
-<<if slave.brand != 0>>
-	Branded.
-<</if>>
-</span>
+	<<if slave.brand != 0>>
+		Branded.
+	<</if>>
+	</span>
 <</if>>
 
 <br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
-- 
GitLab


From c5131e8ec093368dff058b3985ce7427af791541 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 19:07:59 +0300
Subject: [PATCH 006/189] some more summary caching work

---
 src/js/slaveSummaryWidgets.tw | 1293 +++++++++++++++++----------------
 1 file changed, 671 insertions(+), 622 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 2e2cffb5af3..e31ba74be84 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -1546,27 +1546,26 @@ r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : '
 		r += `Br`;
 	<</if>>
 	r += `</span>`;
-// TODO: DONE UP TO HERE
 <<elseif V.abbreviatePhysicals == 2>>
-	<span class="pink">
+	r += `<span class="pink">`;
 	<<if V.showAgeDetail == 1>>
-		Age slave.actualAge.
+		r += `Age ${slave.actualAge}.`;
 	<<elseif slave.actualAge >= 40>>
-		Forties.
+		r += `Forties.`;
 	<<elseif slave.actualAge >= 35>>
-		Late thirties.
+		r += `Late thirties.`;
 	<<elseif slave.actualAge >= 30>>
-		Early thirties.
+		r += `Early thirties.`;
 	<<elseif slave.actualAge >= 25>>
-		Late twenties.
+		r += `Late twenties.`;
 	<<elseif slave.actualAge >= 20>>
-		Early twenties.
+		r += `Early twenties.`;
 	<<elseif slave.actualAge >= 19>>
-		Nineteen.
+		r += `Nineteen.`;
 	<<elseif slave.actualAge >= 18>>
-		Eighteen.
+		r += `Eighteen.`;
 	<<else>>
-		Underage.
+		r += `Underage.`;
 	<</if>>
 	/*
 	**  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
@@ -1574,10 +1573,10 @@ r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : '
 	*/
 	<<if ((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))>>
 		<<if slave.actualAge != slave.physicalAge>>
-			slave.physicalAge year old body.
+			r += `${slave.physicalAge} year old body.`;
 		<</if>>
 		<<if slave.visualAge != slave.physicalAge>>
-			Looks slave.visualAge.
+			r += `Looks ${slave.visualAge}.`;
 		<</if>>
 	<<else>>
 		/*
@@ -1589,802 +1588,852 @@ r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : '
 		**  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
 		**  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
 		*/
-		Appears to have a slave.visualAge year old body.
+		r += `Appears to have a ${slave.visualAge} year old body.`;
 	<</if>>
 	<<if slave.inducedNCS == 1>>
-		(<span class="orange">NCS</span>)
+		r += `(<span class="orange">NCS</span>)`;
 	<</if>>
 	<<if slave.face < -95>>
-		<span class="red">Very ugly<<if V.summaryStats>> [slave.face]<</if>></span>
+		r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 	<<elseif slave.face < -40>>
-		<span class="red">Ugly<<if V.summaryStats>> [slave.face]<</if>></span>
+		r += `<span class="red">Ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 	<<elseif slave.face < -10>>
-		<span class="red">Unattractive<<if V.summaryStats>> [slave.face]<</if>></span>
+		r += `<span class="red">Unattractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 	<<elseif slave.face <= 10>>
-		Average<<if V.summaryStats>> [slave.face]<</if>>
+		r += `Average${V.summaryStats? `[${slave.face}]`: ''}`;
 	<<elseif slave.face <= 40>>
-		<span class="pink">Attractive<<if V.summaryStats>> [slave.face]<</if>></span>
+		r += `<span class="pink">Attractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 	<<elseif slave.face <= 95>>
-		<span class="pink">Beautiful<<if V.summaryStats>> [slave.face]<</if>></span>
+		r += `<span class="pink">Beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 	<<else>>
-		<span class="pink">Very beautiful<<if V.summaryStats>> [slave.face]<</if>></span>
+		r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 	<</if>>
-	slave.faceShape face.
+	r += `${slave.faceShape} face.`;
 	<<if slave.eyes <= -2>>
-		<span class="red">Blind.</span>
+		r += `<span class="red">Blind.</span>`;
 	<<elseif ((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
-		<span class="yellow">Nearsighted.</span>
+		r += `<span class="yellow">Nearsighted.</span>`;
 	<</if>>
 	<<if slave.lips > 95>>
-		Facepussy<<if V.summaryStats>> [slave.lips]<</if>>.
+		r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
 	<<elseif slave.lips > 70>>
-		Huge lips<<if V.summaryStats>> [slave.lips]<</if>>.
+		r += `Huge lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
 	<<elseif slave.lips > 40>>
-		Big lips<<if V.summaryStats>> [slave.lips]<</if>>.
+		r += `Big lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
 	<<elseif slave.lips > 20>>
-		Pretty lips<<if V.summaryStats>> [slave.lips]<</if>>.
+		r += `Pretty lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
 	<<elseif slave.lips > 10>>
-		Normal lips<<if V.summaryStats>> [slave.lips]<</if>>.
+		r += `Normal lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
 	<<else>>
-		<span class="red">Thin lips<<if V.summaryStats>> [slave.lips]<</if>>.</span>
+		r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
 	<</if>>
 	<<if slave.teeth == "crooked">>
-		<span class="yellow">Crooked teeth.</span>
+		r += `<span class="yellow">Crooked teeth.</span>`;
 	<<elseif slave.teeth == "cosmetic braces">>
-		Cosmetic braces.
+		r += `Cosmetic braces.`;
 	<<elseif slave.teeth == "straightening braces">>
-		Braces.
+		r += `Braces.`;
 	<<elseif slave.teeth == "removable">>
-		Removable teeth.
+		r += `Removable teeth.`;
 	<<elseif slave.teeth == "pointy">>
-		Sharp fangs.
+		r += `Sharp fangs.`;
 	<</if>>
 	<<if slave.muscles > 95>>
-		Hugely muscular<<if V.summaryStats>> [slave.muscles]<</if>>.
+		r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
 	<<elseif slave.muscles > 50>>
-		Muscular<<if V.summaryStats>> [slave.muscles]<</if>>.
+		r += `Muscular${V.summaryStats? `[${slave.muscles}]`: ''}.`;
 	<<elseif slave.muscles > 5>>
-		Fit<<if V.summaryStats>> [slave.muscles]<</if>>.
+		r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}.`;
 	<<elseif slave.muscles > -6>>
-		Soft<<if V.summaryStats>> [slave.muscles]<</if>>.
+		r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
 	<<elseif slave.muscles > -31>>
 		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
-			<span class="red">Weak<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+			r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 		<<else>>
-			Weak<<if V.summaryStats>> [slave.muscles]<</if>>.
+			r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
 		<</if>>
 	<<elseif slave.muscles > -96>>
 		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
-			<span class="red">Very weak<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+			r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 		<<else>>
-			Very weak<<if V.summaryStats>> [slave.muscles]<</if>>.
+			r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
 		<</if>>
 	<<else>>
-		<span class="red">Frail<<if V.summaryStats>> [slave.muscles]<</if>>.</span>
+		r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 	<</if>>
 	<<if slave.amp != 0>>
 		<<if slave.amp == -1>>
-			Prosthetic limbs.
+			r += `Prosthetic limbs.`;
 		<<elseif slave.amp == -2>>
-			Sexy prosthetic limbs.
+			r += `Sexy prosthetic limbs.`;
 		<<elseif slave.amp == -3>>
-			Beautiful prosthetic limbs.
+			r += `Beautiful prosthetic limbs.`;
 		<<elseif slave.amp == -4>>
-			Deadly prosthetic limbs.
+			r += `Deadly prosthetic limbs.`;
 		<<elseif slave.amp == -5>>
-			Cyber prosthetic limbs.
+			r += `Cyber prosthetic limbs.`;
 		<<else>>
-			Amputee.
+			r += `Amputee.`;
 		<</if>>
 	<</if>>
 	<<if !canWalk(slave)>>
-		Immobile.
+		r += `Immobile.`;
 	<</if>>
 	<<if slave.heels == 1>>
-		Heeled.
+		r += `Heeled.`;
 	<</if>>
-	</span>
+	r += `</span>`;
 	<<if slave.voice == 0>>
-		<span class="pink">Mute.</span>
+		r += `<span class="pink">Mute.</span>`;
 	<<else>>
 		<<if slave.accent == 3>>
-			<span class="red">Bad accent.</span>
+			r += `<span class="red">Bad accent.</span>`;
 		<<elseif slave.accent == 4>>
-			<span class="red">No language skills.</span>
+			r += `<span class="red">No language skills.</span>`;
 		<<elseif slave.accent == 2>>
-			Accent.
+			r += `Accent.`;
 		<<elseif slave.accent == 1>>
-			<span class="pink">Cute accent.</span>
+			r += `<span class="pink">Cute accent.</span>`;
 		<</if>>
 	<</if>>
-	<span class="pink">
+	r += `<span class="pink">`;
 	<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
-		Hyper T&A.
+		r += `Hyper T&A.`;
 	<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
-		Enormous T&A.
+		r += `Enormous T&A.`;
 	<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
-		Huge T&A.
+		r += `Huge T&A.`;
 	<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
-		Big T&A.
+		r += `Big T&A.`;
 	<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
-		Girlish figure.
+		r += `Girlish figure.`;
 	<<elseif slave.boobs >= 12000>>
-		Immobilizing tits.
+		r += `Immobilizing tits.`;
 	<<elseif slave.boobs > 4000>>
-		Monstrous tits.
+		r += `Monstrous tits.`;
 	<<elseif slave.boobs > 2000>>
-		Huge tits.
+		r += `Huge tits.`;
 	<<elseif slave.boobs > 800>>
-		Big tits.
+		r += `Big tits.`;
 	<<elseif slave.butt > 9>>
-		Hyper ass.
+		r += `Hyper ass.`;
 	<<elseif slave.butt > 8>>
-		Titanic ass.
+		r += `Titanic ass.`;
 	<<elseif slave.butt > 6>>
-		Huge ass.
+		r += `Huge ass.`;
 	<<elseif slave.butt > 4>>
-		Big ass.
+		r += `Big ass.`;
 	<</if>>
-	</span>
+	r == `</span>`;
 	<span class="red">
 	<<if slave.hips < -1>>
 		<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-			Disproportionately big butt.
+			r += `Disproportionately big butt.`;
 		<</if>>
 	<<elseif slave.hips < 0>>
 		<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-			Disproportionately big butt.
+			r += `Disproportionately big butt.`;
 		<</if>>
 	<<elseif slave.hips > 2>>
 		<<if slave.butt <= 8>>
-			Disproportionately small butt.
+			r += `Disproportionately small butt.`;
 		<</if>>
 	<<elseif slave.hips > 1>>
 		<<if slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
-			Disproportionately small butt.
+			r += `Disproportionately small butt.`;
 		<</if>>
 	<<elseif slave.hips > 0>>
 		<<if slave.butt > 8>>
 			<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-				Disproportionately big butt.
+				r += `Disproportionately big butt.`;
 			<</if>>
 		<<elseif slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
-			Disproportionately small butt.
+			r += `Disproportionately small butt.`;
 		<</if>>
 	<<else>>
 		<<if slave.butt > 6>>
 			<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
-				Disproportionately big butt.
+				r += `Disproportionately big butt.`;
 			<</if>>
 		<<elseif slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
-			Disproportionately small butt.
+			r += `Disproportionately small butt.`;
 		<</if>>
 	<</if>>
-	</span>
+	r += `</span>`;
 	<<if slave.waist > 95>>
-		<span class="red">Masculine waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-	<<elseif slave.waist > 40>><span class="red">Ugly waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-	<<elseif slave.waist > 10>><span class="red">Unattractive waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-	<<elseif slave.waist >= -10>>Average waist<<if V.summaryStats>> [slave.waist]<</if>>.
-	<<elseif slave.waist >= -40>><span class="pink">Feminine waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-	<<elseif slave.waist >= -95>><span class="pink">Hourglass waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-	<<else>><span class="pink">Absurdly narrow waist<<if V.summaryStats>> [slave.waist]<</if>>.</span>
-	<</if>>
-	<span class="pink">
+		r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+	<<elseif slave.waist > 40>>
+		r += `<span class="red">Ugly waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+	<<elseif slave.waist > 10>>
+		r += `<span class="red">Unattractive waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+	<<elseif slave.waist >= -10>>
+		r += `Average waist${V.summaryStats? `[${slave.waist}]`: ''}.`;
+	<<elseif slave.waist >= -40>>
+		r += `<span class="pink">Feminine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+	<<elseif slave.waist >= -95>>
+		r += `<span class="pink">Hourglass waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+	<<else>>
+		r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+	<</if>>
+	r += `<span class="pink">`;
 	<<if (slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)>>
-		Implants.
+		r += `Implants.`;
 	<<elseif (slave.faceImplant >= 30) || (slave.waist < -95)>>
-		Surgery enhanced.
+		r += `Surgery enhanced.`;
 	<<else>>
-		All natural.
+		r += `All natural.`;
 	<</if>>
 	<<if slave.lactation == 1>>
-		Lactating naturally.
+		r += `Lactating naturally.`;
 	<<elseif slave.lactation == 2>>
-		Heavy lactation.
+		r += `Heavy lactation.`;
 	<</if>>
 	<<run modScore(slave)>>
 	<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
+		true
 	<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
-		Extensive body mods.
+		r += `Extensive body mods.`;
 	<<elseif V.modScore > 7>>
-		Noticeable body mods.
+		r += `Noticeable body mods.`;
 	<<else>>
-		Light body mods.
+		r += `Light body mods.`;
 	<</if>>
 	<<if slave.brand != 0>>
-		Branded.
+		r += `Branded.`;
 	<</if>>
-	</span>
+	r += `</span>`;
 <</if>>
 
-<br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
-
-<<if V.abbreviateSkills == 1>>
-<<if slave.fetish == "mindbroken">>
-<<elseif slave.intelligenceImplant == 1>>
-<<switch slave.intelligence>>
-<<case 3>>
-	<span class="deepskyblue">I+++(e)</span>
-<<case 2>>
-	<span class="deepskyblue">I++(e)</span>
-<<case 1>>
-	<span class="deepskyblue">I+(e)</span>
-<<case -1>>
-	<span class="orangered">I-(e)</span>
-<<case -2>>
-	<span class="orangered">I--(e)</span>
-<<case -3>>
-	<span class="orangered">I---(e)</span>
-<<default>>
-	I(e)
-<</switch>>
-<<else>>
-<<switch slave.intelligence>>
-<<case 3>>
-	<span class="deepskyblue">I+++</span>
-<<case 2>>
-	<span class="deepskyblue">I++</span>
-<<case 1>>
-	<span class="deepskyblue">I+</span>
-<<case -1>>
-	<span class="orangered">I-</span>
-<<case -2>>
-	<span class="orangered">I--</span>
-<<case -3>>
-	<span class="orangered">I---</span>
-<<default>>
-	I
-<</switch>>
+r += `<br>`;
+<<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>
+	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 <</if>>
 
-<<set _SSkills = slave.analSkill+slave.oralSkill>>
-<span class="aquamarine">
-<<if ((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))>>
-	MSS
-<<else>>
-	<<set _SSkills += slave.vaginalSkill>>
-	<<set _SSkills = Math.trunc(_SSkills)>>
-	<<if _SSkills > 180>>S++
-		<<elseif (_SSkills > 120) && (slave.vagina < 0)>>Sh++
-		<<elseif _SSkills > 90>>S+
-		<<elseif _SSkills > 30>>S
-		<<else>>S-
-	<</if>>
-	<<if V.summaryStats>>[_SSkills]<</if>>
-	<<if slave.whoreSkill >= 100>>W+++
-		<<elseif slave.whoreSkill > 60>>W++
-		<<elseif slave.whoreSkill > 30>>W+
-		<<elseif slave.whoreSkill > 10>>W
-	<</if>>
-	<<if slave.whoreSkill > 10>>
-		<<if V.summaryStats>>[slave.whoreSkill]<</if>>
-	<</if>>
-	<<if slave.entertainSkill >= 100>>E+++
-		<<elseif slave.entertainSkill > 60>>E++
-		<<elseif slave.entertainSkill > 30>>E+
-		<<elseif slave.entertainSkill > 10>>E
-	<</if>>
-	<<if slave.entertainSkill > 10>>
-		<<if V.summaryStats>>[slave.entertainSkill]<</if>>
-	<</if>>
-<</if>>
-<<if slave.combatSkill > 0>>
-	C
-<</if>>
-</span>
-<<if slave.prestige > 0>>
-<span class="green">
-<<if slave.prestige > 2>>
-	Prest++
-<<elseif slave.prestige == 2>>
-	Prest+
-<<elseif slave.prestige == 1>>
-	Prest
-<</if>>
-</span>
-<</if>>
-<<elseif V.abbreviateSkills == 2>>
-<<if slave.fetish == "mindbroken">>
-<<elseif slave.intelligenceImplant == 1>>
-<<switch slave.intelligence>>
-<<case 3>>
-	<span class="deepskyblue">Brilliant, educated.</span>
-<<case 2>>
-	<span class="deepskyblue">Very smart, educated.</span>
-<<case 1>>
-	<span class="deepskyblue">Smart, educated.</span>
-<<case -1>>
-	<span class="orangered">Slow, educated.</span>
-<<case -2>>
-	<span class="orangered">Very slow, educated.</span>
-<<case -3>>
-	<span class="orangered">Moronic, educated.</span>
-<<default>>
-	Average intelligence, educated.
-<</switch>>
-<<else>>
-<<switch slave.intelligence>>
-<<case 3>>
-	<span class="deepskyblue">Brilliant.</span>
-<<case 2>>
-	<span class="deepskyblue">Very smart.</span>
-<<case 1>>
-	<span class="deepskyblue">Smart.</span>
-<<case -1>>
-	<span class="orangered">Slow.</span>
-<<case -2>>
-	<span class="orangered">Very slow.</span>
-<<case -3>>
-	<span class="orangered">Moronic.</span>
-<<default>>
-	Average intelligence.
-<</switch>>
-<</if>>
-<<set _SSkills = (slave.analSkill+slave.oralSkill)>>
-<span class="aquamarine">
-<<if ((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))>>
-	Masterful Sex Slave.
-<<else>>
-	<<set _SSkills += slave.vaginalSkill>>
-	<<if _SSkills > 180>>
-		Sex master<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<<elseif (_SSkills > 120) && (slave.vagina < 0)>>
-		Masterful shemale<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<<elseif _SSkills > 90>>
-		Sexual expert<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<<elseif _SSkills > 30>>
-		Sexually skilled<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
+<<if V.abbreviateSkills == 1>>
+	<<if slave.fetish == "mindbroken">>
+		true
+	<<elseif slave.intelligenceImplant == 1>>
+		<<switch slave.intelligence>>
+		<<case 3>>
+			r += `<span class="deepskyblue">I+++(e)</span>`;
+		<<case 2>>
+			r += `<span class="deepskyblue">I++(e)</span>`;
+		<<case 1>>
+			r += `<span class="deepskyblue">I+(e)</span>`;
+		<<case -1>>
+			r += `<span class="orangered">I-(e)</span>`;
+		<<case -2>>
+			r += `<span class="orangered">I--(e)</span>`;
+		<<case -3>>
+			r += `<span class="orangered">I---(e)</span>`;
+		<<default>>
+			r += `I(e)`;
+		<</switch>>
 	<<else>>
-		Sexually unskilled<<if V.summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<</if>>
-	<<if slave.whoreSkill >= 100>>
-		Masterful whore<<if V.summaryStats>> [slave.whoreSkill]<</if>>.
-	<<elseif slave.whoreSkill >= 60>>
-		Expert whore<<if V.summaryStats>> [slave.whoreSkill]<</if>>.
-	<<elseif slave.whoreSkill >= 30>>
-		Skilled whore<<if V.summaryStats>> [slave.whoreSkill]<</if>>.
-	<<elseif slave.whoreSkill >= 10>>
-		Basic whore<<if V.summaryStats>> [slave.whoreSkill]<</if>>.
-	<</if>>
-	<<if slave.entertainSkill >= 100>>
-		Masterful entertainer<<if V.summaryStats>> [slave.entertainSkill]<</if>>.
-	<<elseif slave.entertainSkill >= 60>>
-		Expert entertainer<<if V.summaryStats>> [slave.entertainSkill]<</if>>.
-	<<elseif slave.entertainSkill >= 30>>
-		Skilled entertainer<<if V.summaryStats>> [slave.entertainSkill]<</if>>.
-	<<elseif slave.entertainSkill >= 10>>
-		Basic entertainer<<if V.summaryStats>> [slave.entertainSkill]<</if>>.
+		<<switch slave.intelligence>>
+			<<case 3>>
+				r += `<span class="deepskyblue">I+++</span>`;
+			<<case 2>>
+				r += `<span class="deepskyblue">I++</span>`;
+			<<case 1>>
+				r += `<span class="deepskyblue">I+</span>`;
+			<<case -1>>
+				r += `<span class="orangered">I-</span>`;
+			<<case -2>>
+				r += `<span class="orangered">I--</span>`;
+			<<case -3>>
+				r += `<span class="orangered">I---</span>`;
+			<<default>>
+				r += `I`;
+		<</switch>>
 	<</if>>
-<</if>>
-<<if slave.combatSkill > 0>>
-	Trained fighter.
-<</if>>
-</span>
-<<if slave.prestige > 0>>
-<span class="green">
-<<if slave.prestige > 2>>
-	Extremely prestigious.
-<<elseif slave.prestige == 2>>
-	Very prestigious.
-<<elseif slave.prestige == 1>>
-	Prestigious.
-<</if>>
-</span>
-<</if>>
-<</if>>
 
-<<if V.abbreviateMental == 1>>
-	<<if slave.fetish != "mindbroken">>
-	<<if slave.fetishKnown == 1>>
-	<span class="lightcoral">
-	<<switch slave.fetish>>
-	<<case "submissive">>
-	<<if slave.fetishStrength > 95>>
-		Sub++
-	<<elseif slave.fetishStrength > 60>>
-		Sub+
-	<<else>>
-		Sub
-	<</if>>
-	<<case "cumslut">>
-	<<if slave.fetishStrength > 95>>
-		Oral++
-	<<elseif slave.fetishStrength > 60>>
-		Oral+
-	<<else>>
-		Oral
-	<</if>>
-	<<case "humiliation">>
-	<<if slave.fetishStrength > 95>>
-		Humil++
-	<<elseif slave.fetishStrength > 60>>
-		Humil+
-	<<else>>
-		Humil
-	<</if>>
-	<<case "buttslut">>
-	<<if slave.fetishStrength > 95>>
-		Anal++
-	<<elseif slave.fetishStrength > 60>>
-		Anal+
+	<<set _SSkills = slave.analSkill+slave.oralSkill>>
+	<span class="aquamarine">
+	<<if ((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))>>
+		r += `MSS`;
 	<<else>>
-		Anal
+		<<set _SSkills += slave.vaginalSkill>>
+		<<set _SSkills = Math.trunc(_SSkills)>>
+		<<if _SSkills > 180>>
+			r += `S++`;
+		<<elseif (_SSkills > 120) && (slave.vagina < 0)>>
+			r += `Sh++`;
+		<<elseif _SSkills > 90>>
+			r += `S+`;
+		<<elseif _SSkills > 30>>
+			r += `S`;
+		<<else>>
+			r += `S-`;
+		<</if>>
+		<<if V.summaryStats>>
+			r += `[${_SSkills}]`;
+		<</if>>
+		<<if slave.whoreSkill >= 100>>
+			r += `W+++`;
+		<<elseif slave.whoreSkill > 60>>
+			r += `W++`;
+		<<elseif slave.whoreSkill > 30>>
+			r += `W+`;
+		<<elseif slave.whoreSkill > 10>>
+			r += `W`;
+		<</if>>
+		<<if slave.whoreSkill > 10>>
+			<<if V.summaryStats>>
+				r += `[${slave.whoreSkill}]`;
+			<</if>>
+		<</if>>
+		<<if slave.entertainSkill >= 100>>
+			r += `E+++`;
+		<<elseif slave.entertainSkill > 60>>
+			r += `E++`;
+		<<elseif slave.entertainSkill > 30>>
+			r += `E+`;
+		<<elseif slave.entertainSkill > 10>>
+			r += `E`;
+		<</if>>
+		<<if slave.entertainSkill > 10>>
+			<<if V.summaryStats>>
+				r += `[${slave.entertainSkill}]`;
+			<</if>>
+		<</if>>
 	<</if>>
-	<<case "boobs">>
-	<<if slave.fetishStrength > 95>>
-		Boobs++
-	<<elseif slave.fetishStrength > 60>>
-		Boobs+
-	<<else>>
-		Boobs
+	<<if slave.combatSkill > 0>>
+		r += `C`;
 	<</if>>
-	<<case "sadist">>
-	<<if slave.fetishStrength > 95>>
-		Sadist++
-	<<elseif slave.fetishStrength > 60>>
-		Sadist+
-	<<else>>
-		Sadist
+	r += `</span>`;
+	<<if slave.prestige > 0>>
+		r += `<span class="green">`;
+		<<if slave.prestige > 2>>
+			r += `Prest++`;
+		<<elseif slave.prestige == 2>>
+			r += `Prest+`;
+		<<elseif slave.prestige == 1>>
+			r += `Prest`;
+		<</if>>
+		r += `</span>`;
 	<</if>>
-	<<case "masochist">>
-	<<if slave.fetishStrength > 95>>
-		Pain++
-	<<elseif slave.fetishStrength > 60>>
-		Pain+
+<<elseif V.abbreviateSkills == 2>>
+	<<if slave.fetish == "mindbroken">>
+		true
+	<<elseif slave.intelligenceImplant == 1>>
+		<<switch slave.intelligence>>
+			<<case 3>>
+				r += `<span class="deepskyblue">Brilliant, educated.</span>`;
+			<<case 2>>
+				r += `<span class="deepskyblue">Very smart, educated.</span>`;
+			<<case 1>>
+				r += `<span class="deepskyblue">Smart, educated.</span>`;
+			<<case -1>>
+				r += `<span class="orangered">Slow, educated.</span>`;
+			<<case -2>>
+				r += `<span class="orangered">Very slow, educated.</span>`;
+			<<case -3>>
+				r += `<span class="orangered">Moronic, educated.</span>`;
+			<<default>>
+				r += `Average intelligence, educated.`;
+			<</switch>>
 	<<else>>
-		Pain
+		<<switch slave.intelligence>>
+			<<case 3>>
+				r += `<span class="deepskyblue">Brilliant.</span>`;
+			<<case 2>>
+				r += `<span class="deepskyblue">Very smart.</span>`;
+			<<case 1>>
+				r += `<span class="deepskyblue">Smart.</span>`;
+			<<case -1>>
+				r += `<span class="orangered">Slow.</span>`;
+			<<case -2>>
+				r += `<span class="orangered">Very slow.</span>`;
+			<<case -3>>
+				r += `<span class="orangered">Moronic.</span>`;
+			<<default>>
+				r += `Average intelligence.`;
+		<</switch>>
 	<</if>>
-	<<case "dom">>
-	<<if slave.fetishStrength > 95>>
-		Dom++
-	<<elseif slave.fetishStrength > 60>>
-		Dom+
+	<<set _SSkills = (slave.analSkill+slave.oralSkill)>>
+	r += `<span class="aquamarine">`;
+	<<if ((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))>>
+		r += `Masterful Sex Slave.`;
 	<<else>>
-		Dom
+		<<set _SSkills += slave.vaginalSkill>>
+		<<if _SSkills > 180>>
+			r += `Sex master${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+		<<elseif (_SSkills > 120) && (slave.vagina < 0)>>
+			r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+		<<elseif _SSkills > 90>>
+			r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}].`: ''}.`;
+		<<elseif _SSkills > 30>>
+			r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]`. : ''}.`;
+		<<else>>
+			r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]`. : ''}.`;
+		<</if>>
+		<<if slave.whoreSkill >= 100>>
+			r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
+		<<elseif slave.whoreSkill >= 60>>
+			r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
+		<<elseif slave.whoreSkill >= 30>>
+			r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
+		<<elseif slave.whoreSkill >= 10>>
+			r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
+		<</if>>
+		<<if slave.entertainSkill >= 100>>
+			r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
+		<<elseif slave.entertainSkill >= 60>>
+			r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
+		<<elseif slave.entertainSkill >= 30>>
+			r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
+		<<elseif slave.entertainSkill >= 10>>
+			r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
+		<</if>>
+	<</if>>
+	<<if slave.combatSkill > 0>>
+		r += `Trained fighter.`;
 	<</if>>
-	<<case "pregnancy">>
-	<<if slave.fetishStrength > 95>>
-		Preg++
-	<<elseif slave.fetishStrength > 60>>
-		Preg+
-	<<else>>
-		Preg
+	r += `</span>`;
+	<<if slave.prestige > 0>>
+		r += `<span class="green">`;
+		<<if slave.prestige > 2>>
+			r += `Extremely prestigious.`;
+		<<elseif slave.prestige == 2>>
+			r += `Very prestigious.`;
+		<<elseif slave.prestige == 1>>
+			r += `Prestigious.`;
+		<</if>>
+		r += `</span>`;
 	<</if>>
-	<<default>>
-		Vanilla
-	<</switch>>
-	<<if V.summaryStats>>[slave.fetishStrength]<</if>>
-	</span>
+<</if>>
+
+<<if V.abbreviateMental == 1>>
+	<<if slave.fetish != "mindbroken">>
+	<<if slave.fetishKnown == 1>>
+		r += `<span class="lightcoral">`;
+		<<switch slave.fetish>>
+			<<case "submissive">>
+				<<if slave.fetishStrength > 95>>
+					r += `Sub++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Sub+`;
+				<<else>>
+					r += `Sub`;
+				<</if>>
+			<<case "cumslut">>
+				<<if slave.fetishStrength > 95>>
+					r += `Oral++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Oral+`;
+				<<else>>
+					r += `Oral`;
+				<</if>>
+			<<case "humiliation">>
+				<<if slave.fetishStrength > 95>>
+					r += `Humil++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Humil+`;
+				<<else>>
+					r += `Humil`;
+				<</if>>
+			<<case "buttslut">>
+				<<if slave.fetishStrength > 95>>
+					r += `Anal++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Anal+`;
+				<<else>>
+					r += `Anal`;
+				<</if>>
+			<<case "boobs">>
+				<<if slave.fetishStrength > 95>>
+					r += `Boobs++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Boobs+`;
+				<<else>>
+					r += `Boobs`;
+				<</if>>
+			<<case "sadist">>
+				<<if slave.fetishStrength > 95>>
+					r += `Sadist++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Sadist+`;
+				<<else>>
+					r += `Sadist`;
+				<</if>>
+			<<case "masochist">>
+				<<if slave.fetishStrength > 95>>
+					r += `Pain++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Pain+`;
+				<<else>>
+					r += `Pain`;
+				<</if>>
+			<<case "dom">>
+				<<if slave.fetishStrength > 95>>
+					r += `Dom++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Dom+`;
+				<<else>>
+					r += `Dom`;
+				<</if>>
+			<<case "pregnancy">>
+				<<if slave.fetishStrength > 95>>
+					r += `Preg++`;
+				<<elseif slave.fetishStrength > 60>>
+					r += `Preg+`;
+				<<else>>
+					r += `Preg`;
+				<</if>>
+			<<default>>
+				r += `Vanilla`;
+		<</switch>>
+		<<if V.summaryStats>>
+			r += `[${slave.fetishStrength}]`;
+		<</if>>
+		r += `</span>`;
 	<</if>>
 	<<if slave.attrKnown == 1>>
-	<<if slave.attrXY <= 5>>
-		<span class="red">XY---<<if V.summaryStats>>[slave.attrXY]<</if>></span>
-	<<elseif slave.attrXY <= 15>>
-		<span class="red">XY--<<if V.summaryStats>>[slave.attrXY]<</if>></span>
-	<<elseif slave.attrXY <= 35>>
-		<span class="red">XY-<<if V.summaryStats>>[slave.attrXY]<</if>></span>
-	<<elseif slave.attrXY <= 65>>
-		XY<<if V.summaryStats>>[slave.attrXY]<</if>>
-	<<elseif slave.attrXY <= 85>>
-		<span class="green">XY+<<if V.summaryStats>>[slave.attrXY]<</if>></span>
-	<<elseif slave.attrXY <= 95>>
-		<span class="green">XY++<<if V.summaryStats>>[slave.attrXY]<</if>></span>
-	<<elseif slave.attrXX > 95>>
-		<<if slave.energy <= 95>>
-			<span class="green">Omni!</span>
+		<<if slave.attrXY <= 5>>
+			r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		<<elseif slave.attrXY <= 15>>
+			r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		<<elseif slave.attrXY <= 35>>
+			r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		<<elseif slave.attrXY <= 65>>
+			r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
+		<<elseif slave.attrXY <= 85>>
+			r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		<<elseif slave.attrXY <= 95>>
+			r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		<<elseif slave.attrXX > 95>>
+			<<if slave.energy <= 95>>
+				r += `<span class="green">Omni!</span>`;
+			<<else>>
+				r += `<span class="green">Omni+Nympho!!</span>`;
+			<</if>>
 		<<else>>
-			<span class="green">Omni+Nympho!!</span>
+			<span class="green">XY+++<<if V.summaryStats>>[slave.attrXY}]`: ''}</span>`;
 		<</if>>
-	<<else>>
-		<span class="green">XY+++<<if V.summaryStats>>[slave.attrXY]<</if>></span>
-	<</if>>
-	<<if slave.attrXX <= 5>>
-		<span class="red">XX---<<if V.summaryStats>>[slave.attrXX]<</if>></span>
-	<<elseif slave.attrXX <= 15>>
-		<span class="red">XX--<<if V.summaryStats>>[slave.attrXX]<</if>></span>
-	<<elseif slave.attrXX <= 35>>
-		<span class="red">XX-<<if V.summaryStats>>[slave.attrXX]<</if>></span>
-	<<elseif slave.attrXX <= 65>>
-		XX<<if V.summaryStats>>[slave.attrXX]<</if>>
-	<<elseif slave.attrXX <= 85>>
-		<span class="green">XX+<<if V.summaryStats>>[slave.attrXX]<</if>></span>
-	<<elseif slave.attrXX <= 95>>
-		<span class="green">XX++<<if V.summaryStats>>[slave.attrXX]<</if>></span>
-	<<elseif slave.attrXY <= 95>>
-		<span class="green">XX+++<<if V.summaryStats>>[slave.attrXX]<</if>></span>
-	<</if>>
-	<<if slave.energy > 95>>
-		<<if (slave.attrXY <= 95) || (slave.attrXX <= 95)>>
-			<span class="green">Nympho!</span>
-		<</if>>
-	<<elseif slave.energy > 80>>
-		<span class="green">SD++<<if V.summaryStats>>[slave.energy]<</if>></span>
-	<<elseif slave.energy > 60>>
-		<span class="green">SD+<<if V.summaryStats>>[slave.energy]<</if>></span>
-	<<elseif slave.energy > 40>>
-		<span class="yellow">SD<<if V.summaryStats>>[slave.energy]<</if>></span>
-	<<elseif slave.energy > 20>>
-		<span class="red">SD-<<if V.summaryStats>>[slave.energy]<</if>></span>
-	<<else>>
-		<span class="red">SD--<<if V.summaryStats>>[slave.energy]<</if>></span>
+		<<if slave.attrXX <= 5>>
+			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		<<elseif slave.attrXX <= 15>>
+			r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		<<elseif slave.attrXX <= 35>>
+			r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		<<elseif slave.attrXX <= 65>>
+			r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
+		<<elseif slave.attrXX <= 85>>
+			r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		<<elseif slave.attrXX <= 95>>
+			r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		<<elseif slave.attrXY <= 95>>
+			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		<</if>>
+		<<if slave.energy > 95>>
+			<<if (slave.attrXY <= 95) || (slave.attrXX <= 95)>>
+				r += `<span class="green">Nympho!</span>`;
+			<</if>>
+		<<elseif slave.energy > 80>>
+			r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		<<elseif slave.energy > 60>>
+			r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		<<elseif slave.energy > 40>>
+			r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		<<elseif slave.energy > 20>>
+			r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		<<else>>
+			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+			<</if>>
 		<</if>>
-	<</if>>
 	<</if>>
 	<<if slave.clitPiercing == 3>>
 		<<if slave.fetishKnown == 1>>
 			<<if slave.clitSetting == "off">>
-				SP-
+				r += `SP-`;
 			<<elseif ((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")>>
-				SP:sub
+				r += `SP:sub`;
 			<<elseif ((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")>>
-				SP:oral
+				r += `SP:oral`;
 			<<elseif ((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")>>
-				SP:humil
+				r += `SP:humil`;
 			<<elseif ((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")>>
-				SP:anal
+				r += `SP:anal`;
 			<<elseif ((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")>>
-				SP:boobs
+				r += `SP:boobs`;
 			<<elseif ((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")>>
-				SP:sade
+				r += `SP:sade`;
 			<<elseif ((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")>>
-				SP:pain
+				r += `SP:pain`;
 			<<elseif ((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")>>
-				SP:dom
+				r += `SP:dom`;
 			<<elseif ((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")>>
-				SP:preg
+				r += `SP:preg`;
 			<<elseif ((slave.fetish != "none") && (slave.clitSetting == "vanilla"))>>
-				SP:vanilla
+				r += `SP:vanilla`;
 			<<elseif (slave.energy <= 95) && (slave.clitSetting == "all")>>
-				SP:all
+				r += `SP:all`;
 			<<elseif (slave.energy > 5) && (slave.clitSetting == "none")>>
-				SP:none
+				r += `SP:none`;
 			<<elseif !["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)>>
-				SP:monitoring
+				r += `SP:monitoring`;
 			<</if>>
 		<<else>>
 			<<switch slave.clitSetting>>
-			<<case "off">>
-				SP-
-			<<case "submissive">>
-				SP:sub
-			<<case "lesbian">>
-				SP:les
-			<<case "oral">>
-				SP:oral
-			<<case "humiliation">>
-				SP:humil
-			<<case "anal">>
-				SP:anal
-			<<case "boobs">>
-				SP:boobs
-			<<case "sadist">>
-				SP:sade
-			<<case "masochist">>
-				SP:pain
-			<<case "dom">>
-				SP:dom
-			<<case "pregnancy">>
-				SP:pregnancy
-			<<case "vanilla">>
-				SP:vanilla
-			<<case "all">>
-				SP:all
-			<<case "none">>
-				SP:none
+				<<case "off">>
+					r += `SP-`;
+				<<case "submissive">>
+					r += `SP:sub`;
+				<<case "lesbian">>
+					r += `SP:les`;
+				<<case "oral">>
+					r += `SP:oral`;
+				<<case "humiliation">>
+					r += `SP:humil`;
+				<<case "anal">>
+					r += `SP:anal`;
+				<<case "boobs">>
+					r += `SP:boobs`;
+				<<case "sadist">>
+					r += `SP:sade`;
+				<<case "masochist">>
+					r += `SP:pain`;
+				<<case "dom">>
+					r += `SP:dom`;
+				<<case "pregnancy">>
+					r += `SP:pregnancy`;
+				<<case "vanilla">>
+					r += `SP:vanilla`;
+				<<case "all">>
+					r += `SP:all`;
+				<<case "none">>
+					r += `SP:none`;
 			<</switch>>
 		<</if>>
 		<<if slave.attrKnown == 1>>
 			<<if slave.clitSetting == "women">>
-				<<if slave.attrXX < 95>>SP:women<<else>>SP:monitoring<</if>>
+				<<if slave.attrXX < 95>>
+					r += `SP:women`;
+				<<else>>
+					r += `SP:monitoring`;
+				<</if>>
 			<<elseif slave.clitSetting == "men">>
-				<<if slave.attrXY < 95>>SP:men<<else>>SP:monitoring<</if>>
+				<<if slave.attrXY < 95>>
+					r += `SP:men`;
+				<<else>>
+					r += `SP:monitoring`;
+				<</if>>
 			<<elseif slave.clitSetting == "anti-women">>
-				<<if slave.attrXX > 0>>SP:anti-women<<else>>SP:monitoring<</if>>
+				<<if slave.attrXX > 0>>
+					r += `SP:anti-women`;
+				<<else>>
+					r += `SP:monitoring`;
+				<</if>>
 			<<elseif slave.clitSetting == "anti-men">>
-				<<if slave.attrXY > 0>>SP:anti-men<<else>>SP:monitoring<</if>>
+				<<if slave.attrXY > 0>>
+					r += `SP:anti-men`;
+				<<else>>
+					r += `SP:monitoring`;
+				<</if>>
 			<</if>>
 		<<else>>
 			<<if slave.clitSetting == "women">>
-				SP:women
+				r += `SP:women`;
 			<<elseif slave.clitSetting == "men">>
-				SP:men
+				r += `SP:men`;
 			<<elseif slave.clitSetting == "anti-women">>
-				SP:anti-women
+				r += `SP:anti-women`;
 			<<elseif slave.clitSetting == "anti-men">>
-				SP:anti-men
+				r += `SP:anti-men`;
 			<</if>>
 		<</if>>
 	<</if>>
-	<span class="red">
+	r += `<span class="red">`;
 	<<switch slave.behavioralFlaw>>
-	<<case "arrogant">>
-		Arrog
-	<<case "bitchy">>
-		Bitchy
-	<<case "odd">>
-		Odd
-	<<case "hates men">>
-		Men-
-	<<case "hates women">>
-		Women-
-	<<case "gluttonous">>
-		Glut
-	<<case "anorexic">>
-		Ano
-	<<case "devout">>
-		Dev
-	<<case "liberated">>
-		Lib
-	<<default>>
-		<<set slave.behavioralFlaw = "none">>
+		<<case "arrogant">>
+			r += `Arrog`;
+		<<case "bitchy">>
+			r += `Bitchy`;
+		<<case "odd">>
+			r += `Odd`;
+		<<case "hates men">>
+			r += `Men-`;
+		<<case "hates women">>
+			r += `Women-`;
+		<<case "gluttonous">>
+			r += `Glut`;
+		<<case "anorexic">>
+			r += `Ano`;
+		<<case "devout">>
+			r += `Dev`;
+		<<case "liberated">>
+			r += `Lib`;
+		<<default>>
+			<<set slave.behavioralFlaw = "none">>
 	<</switch>>
-	</span>
+	r += `</span>`;
 	<<switch slave.sexualFlaw>>
-	<<case "hates oral">>
-		<span class="red">Oral-</span>
-	<<case "hates anal">>
-		<span class="red">Anal-</span>
-	<<case "hates penetration">>
-		<span class="red">Fuck-</span>
-	<<case "shamefast">>
-		<span class="red">Shame</span>
-	<<case "idealistic">>
-		<span class="red">Ideal</span>
-	<<case "repressed">>
-		<span class="red">Repre</span>
-	<<case "apathetic">>
-		<span class="red">Apath</span>
-	<<case "crude">>
-		<span class="red">Crude</span>
-	<<case "judgemental">>
-		<span class="red">Judge</span>
-	<<case "cum addict">>
-		<span class="yellow">CumAdd</span>
-	<<case "anal addict">>
-		<span class="yellow">AnalAdd</span>
-	<<case "attention whore">>
-		<span class="yellow">Attention</span>
-	<<case "breast growth">>
-		<span class="yellow">BoobObsess</span>
-	<<case "abusive">>
-		<span class="yellow">Abusive</span>
-	<<case "malicious">>
-		<span class="yellow">Malice</span>
-	<<case "self hating">>
-		<span class="yellow">SelfHatr</span>
-	<<case "neglectful">>
-		<span class="yellow">SelfNeglect</span>
-	<<case "breeder">>
-		<span class="yellow">BreedObsess</span>
-	<<default>>
-		<<set slave.sexualFlaw = "none">>
+		<<case "hates oral">>
+			r += `<span class="red">Oral-</span>`;
+		<<case "hates anal">>
+			r += `<span class="red">Anal-</span>`;
+		<<case "hates penetration">>
+			r += `<span class="red">Fuck-</span>`;
+		<<case "shamefast">>
+			r += `<span class="red">Shame</span>`;
+		<<case "idealistic">>
+			r += `<span class="red">Ideal</span>`;
+		<<case "repressed">>
+			r += `<span class="red">Repre</span>`;
+		<<case "apathetic">>
+			r += `<span class="red">Apath</span>`;
+		<<case "crude">>
+			r += `<span class="red">Crude</span>`;
+		<<case "judgemental">>
+			r += `<span class="red">Judge</span>`;
+		<<case "cum addict">>
+			r += `<span class="yellow">CumAdd</span>`;
+		<<case "anal addict">>
+			r += `<span class="yellow">AnalAdd</span>`;
+		<<case "attention whore">>
+			r += `<span class="yellow">Attention</span>`;
+		<<case "breast growth">>
+			r += `<span class="yellow">BoobObsess</span>`;
+		<<case "abusive">>
+			r += `<span class="yellow">Abusive</span>`;
+		<<case "malicious">>
+			r += `<span class="yellow">Malice</span>`;
+		<<case "self hating">>
+			r += `<span class="yellow">SelfHatr</span>`;
+		<<case "neglectful">>
+			r += `<span class="yellow">SelfNeglect</span>`;
+		<<case "breeder">>
+			r += `<span class="yellow">BreedObsess</span>`;
+		<<default>>
+			<<set slave.sexualFlaw = "none">>
 	<</switch>>
-	<span class="green">
+	r += `<span class="green">`;
 	<<switch slave.behavioralQuirk>>
-	<<case "confident">>
-		Confid
-	<<case "cutting">>
-		Cutting
-	<<case "funny">>
-		Funny
-	<<case "fitness">>
-		Fit
-	<<case "adores women">>
-		Women+
-	<<case "adores men">>
-		Men+
-	<<case "insecure">>
-		Insec
-	<<case "sinful">>
-		Sinf
-	<<case "advocate">>
-		Advoc
-	<<default>>
-		<<set slave.behavioralQuirk = "none">>
+		<<case "confident">>
+			r += `Confid`;
+		<<case "cutting">>
+			r += `Cutting`;
+		<<case "funny">>
+			r += `Funny`;
+		<<case "fitness">>
+			r += `Fit`;
+		<<case "adores women">>
+			r += `Women+`;
+		<<case "adores men">>
+			r += `Men+`;
+		<<case "insecure">>
+			r += `Insec`;
+		<<case "sinful">>
+			r += `Sinf`;
+		<<case "advocate">>
+			r += `Advoc`;
+		<<default>>
+			<<set slave.behavioralQuirk = "none">>
 	<</switch>>
 	<<switch slave.sexualQuirk>>
-	<<case "gagfuck queen">>
-		Gagfuck
-	<<case "painal queen">>
-		Painal
-	<<case "strugglefuck queen">>
-		Struggle
-	<<case "tease">>
-		Tease
-	<<case "romantic">>
-		Romantic
-	<<case "perverted">>
-		Perverted
-	<<case "caring">>
-		Caring
-	<<case "unflinching">>
-		Unflinch
-	<<case "size queen">>
-		SizeQ
-	<<default>>
-		<<set slave.sexualQuirk = "none">>
+		<<case "gagfuck queen">>
+			r += `Gagfuck`;
+		<<case "painal queen">>
+			r += `Painal`;
+		<<case "strugglefuck queen">>
+			r += `Struggle`;
+		<<case "tease">>
+			r += `Tease`;
+		<<case "romantic">>
+			r += `Romantic`;
+		<<case "perverted">>
+			r += `Perverted`;
+		<<case "caring">>
+			r += `Caring`;
+		<<case "unflinching">>
+			r += `Unflinch`;
+		<<case "size queen">>
+			r += `SizeQ`;
+		<<default>>
+			<<set slave.sexualQuirk = "none">>
 	<</switch>>
-	</span>
+	r += `</span>`;
+// TODO: done up to here
 <<elseif V.abbreviateMental == 2>>
 	<<if slave.fetish != "mindbroken">>
 	<<if slave.fetishKnown == 1>>
-		<span class="lightcoral">
+		r += `<span class="lightcoral">`;
 		<<switch slave.fetish>>
-		<<case "submissive">>
-			<<if slave.fetishStrength > 95>>
-				Complete submissive<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Submissive<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Submissive tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "cumslut">>
-			<<if slave.fetishStrength > 95>>
-				Cumslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Oral fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Prefers oral<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "humiliation">>
-			<<if slave.fetishStrength > 95>>
-				Humiliation slut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Exhibitionist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Interest in humiliation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "buttslut">>
-			<<if slave.fetishStrength > 95>>
-				Buttslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Anal fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Prefers anal<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "boobs">>
-			<<if slave.fetishStrength > 95>>
-				Boobslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Breast fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Loves boobs<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "sadist">>
-			<<if slave.fetishStrength > 95>>
-				Complete sadist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Sadist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Sadistic tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "masochist">>
-			<<if slave.fetishStrength > 95>>
-				Complete masochist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Masochist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Masochistic tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "dom">>
-			<<if slave.fetishStrength > 95>>
-				Complete dom<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Dominant<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Dominant tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "pregnancy">>
-			<<if slave.fetishStrength > 95>>
-				Pregnancy fetish<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<elseif slave.fetishStrength > 60>>
-				Pregnancy kink<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<<else>>
-				Interest in impregnation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
-			<</if>>
-		<<default>>
-			Sexually vanilla<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+			<<case "submissive">>
+				<<if slave.fetishStrength > 95>>
+					Complete submissive<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Submissive<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Submissive tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<case "cumslut">>
+				<<if slave.fetishStrength > 95>>
+					Cumslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Oral fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Prefers oral<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<case "humiliation">>
+				<<if slave.fetishStrength > 95>>
+					Humiliation slut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Exhibitionist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Interest in humiliation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<case "buttslut">>
+				<<if slave.fetishStrength > 95>>
+					Buttslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Anal fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Prefers anal<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<case "boobs">>
+				<<if slave.fetishStrength > 95>>
+					Boobslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Breast fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Loves boobs<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<case "sadist">>
+				<<if slave.fetishStrength > 95>>
+					Complete sadist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Sadist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Sadistic tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<case "masochist">>
+				<<if slave.fetishStrength > 95>>
+					Complete masochist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Masochist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Masochistic tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<case "dom">>
+				<<if slave.fetishStrength > 95>>
+					Complete dom<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Dominant<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Dominant tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<case "pregnancy">>
+				<<if slave.fetishStrength > 95>>
+					Pregnancy fetish<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<elseif slave.fetishStrength > 60>>
+					Pregnancy kink<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<<else>>
+					Interest in impregnation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				<</if>>
+			<<default>>
+				Sexually vanilla<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
 		<</switch>>
 		</span>
 	<</if>>
-- 
GitLab


From a1948ab317272f485e58151e3d22f9a674178056 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 19:52:09 +0300
Subject: [PATCH 007/189] fix multiple lines

---
 src/utility/miscWidgets.tw | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 2460d62eadb..55f9032f634 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -2077,9 +2077,7 @@ This experience
 /* see how they are on a single line? This permits "."s and other things to be appended directly onto the widget result */
 <<widget "PlayerName">><<if $surnameOrder != 1>><<switch $PC.nationality>><<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">><<if $PC.surname>>$PC.surname <</if>>$PC.name<<default>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</switch>><<else>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</if>><</widget>>
 
-<<widget "SlaveFullName">>
-	<<= SlaveFullName($args[0])>>
-<</widget>>
+<<widget "SlaveFullName">><<= SlaveFullName($args[0])>><</widget>>
 
 <<widget "PoliteRudeTitle">><<switch $args[0].nationality>><<case "Japanese">><<if $args[0].trust > 0>>$PC.name<<if $PC.title > 0>>kun<<else>>chan<</if>><<else>><<if $PC.surname>><<print $PC.surname>><<else>><<print $PC.name>><<s>>an<</if>><</if>><<default>><<if $args[0].intelligence < -2>><<Master>><<elseif $args[0].intelligence > 1>><<if $PC.title > 0>>Ma<<s>>ther<<else>>Mi<<s>>tre<<ss>><</if>><<elseif $args[0].trust > 0>>$PC.name<<else>><<if $PC.surname>>$PC.surname<<else>>$PC.name<</if>><</if>><</switch>><</widget>>
 
-- 
GitLab


From 5a693175805ec5b1c6bd32b8056636232724125f Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 22:26:17 +0300
Subject: [PATCH 008/189] clear application log

---
 src/js/rulesAssistantOptions.tw | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index d214ce00968..501d897b1bd 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -466,7 +466,8 @@ window.rulesAssistantOptions = (function() {
 
 	class ApplicationLog extends Element {
 		render() {
-			const elem = document.createElement("div");
+			const elem = document.querySelector("#application-log") || document.createElement("div");
+			elem.id = "application-log";
 			clearSummaryCache();
 			elem.innerHTML = V.slaves.map(slave => DefaultRules(slave)).join("");
 			return elem;
-- 
GitLab


From c6d1449bd4a6ea7192d96119a439b77916f3f8f7 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 23:02:54 +0300
Subject: [PATCH 009/189] finish stage 1

---
 src/js/slaveSummaryWidgets.tw | 1009 +++++++++++++++++++--------------
 1 file changed, 574 insertions(+), 435 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index e31ba74be84..ddd0ab23f44 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -2354,7 +2354,6 @@ r += `<br>`;
 			<<set slave.sexualQuirk = "none">>
 	<</switch>>
 	r += `</span>`;
-// TODO: done up to here
 <<elseif V.abbreviateMental == 2>>
 	<<if slave.fetish != "mindbroken">>
 	<<if slave.fetishKnown == 1>>
@@ -2362,455 +2361,485 @@ r += `<br>`;
 		<<switch slave.fetish>>
 			<<case "submissive">>
 				<<if slave.fetishStrength > 95>>
-					Complete submissive<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Submissive<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Submissive tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<case "cumslut">>
 				<<if slave.fetishStrength > 95>>
-					Cumslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Oral fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Prefers oral<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<case "humiliation">>
 				<<if slave.fetishStrength > 95>>
-					Humiliation slut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Exhibitionist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Interest in humiliation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<case "buttslut">>
 				<<if slave.fetishStrength > 95>>
-					Buttslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Anal fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Prefers anal<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<case "boobs">>
 				<<if slave.fetishStrength > 95>>
-					Boobslut<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Breast fixation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Loves boobs<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<case "sadist">>
 				<<if slave.fetishStrength > 95>>
-					Complete sadist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Sadist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Sadistic tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<case "masochist">>
 				<<if slave.fetishStrength > 95>>
-					Complete masochist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Masochist<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Masochistic tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<case "dom">>
 				<<if slave.fetishStrength > 95>>
-					Complete dom<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Dominant<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Dominant tendencies<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<case "pregnancy">>
 				<<if slave.fetishStrength > 95>>
-					Pregnancy fetish<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<elseif slave.fetishStrength > 60>>
-					Pregnancy kink<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<<else>>
-					Interest in impregnation<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+					r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				<</if>>
 			<<default>>
-				Sexually vanilla<<if V.summaryStats>> [slave.fetishStrength]<</if>>.
+				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 		<</switch>>
 		</span>
 	<</if>>
 	<</if>>
 	<<if slave.attrKnown == 1>>
 		<<if slave.attrXY <= 5>>
-			<span class="red">Disgusted by men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 		<<elseif slave.attrXY <= 15>>
-			<span class="red">Turned off by men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 		<<elseif slave.attrXY <= 35>>
-			<span class="red">Not attracted to men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 		<<elseif slave.attrXY <= 65>>
-			Indifferent to men<<if V.summaryStats>> [slave.attrXY]<</if>>,
+			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
 		<<elseif slave.attrXY <= 85>>
-			<span class="green">Attracted to men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 		<<elseif slave.attrXY <= 95>>
-			<span class="green">Aroused by men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 		<<elseif slave.attrXX > 95>>
 			<<if slave.energy <= 95>>
-				<span class="green">Omnisexual!</span>
+				r += `<span class="green">Omnisexual!</span>`;
 			<<else>>
-				<span class="green">Omnisexual nymphomaniac!</span>
+				r += `<span class="green">Omnisexual nymphomaniac!</span>`;
 			<</if>>
 		<<else>>
-			<span class="green">Passionate about men<<if V.summaryStats>> [slave.attrXY]<</if>>,</span>
+			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 		<</if>>
 		<<if slave.attrXX <= 5>>
-			<span class="red">disgusted by women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
 		<<elseif slave.attrXX <= 15>>
-			<span class="red">turned off by women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
 		<<elseif slave.attrXX <= 35>>
-			<span class="red">not attracted to women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
 		<<elseif slave.attrXX <= 65>>
-			indifferent to women<<if V.summaryStats>> [slave.attrXX]<</if>>. 
+			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
 		<<elseif slave.attrXX <= 85>>
-			<span class="green">attracted to women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
 		<<elseif slave.attrXX <= 95>>
-			<span class="green">aroused by women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
 		<<elseif slave.attrXY <= 95>>
-			<span class="green">passionate about women<<if V.summaryStats>> [slave.attrXX]<</if>>.</span>
+			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
 		<</if>>
 		<<if slave.energy > 95>>
 			<<if (slave.attrXY <= 95) || (slave.attrXX <= 95)>>
-				<span class="green">Nymphomaniac!</span>
+				r += `<span class="green">Nymphomaniac!</span>`;
 			<</if>>
 		<<elseif slave.energy > 80>>
-			<span class="green">Powerful sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+			r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		<<elseif slave.energy > 60>>
-			<span class="green">Good sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+			r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		<<elseif slave.energy > 40>>
-			<span class="yellow">Average sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+			r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		<<elseif slave.energy > 20>>
-			<span class="red">Poor sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+			r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		<<else>>
-			<span class="red">No sex drive<<if V.summaryStats>> [slave.energy]<</if>>.</span>
+			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		<</if>>
 	<</if>>
 	<<if slave.clitPiercing == 3>>
 		<<if slave.fetishKnown == 1>>
 			<<if slave.clitSetting == "off">>
-				SP off.
+				r += `SP off.`;
 			<<elseif ((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")>>
-				SP: submissive.
+				r += `SP: submissive.`;
 			<<elseif ((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")>>
-				SP: oral.
+				r += `SP: oral.`;
 			<<elseif ((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")>>
-				SP: humiliation.
+				r += `SP: humiliation.`;
 			<<elseif ((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")>>
-				SP: anal.
+				r += `SP: anal.`;
 			<<elseif ((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")>>
-				SP: breasts.
+				r += `SP: breasts.`;
 			<<elseif ((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")>>
-				SP: sadism.
+				r += `SP: sadism.`;
 			<<elseif ((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")>>
-				SP: masochism.
+				r += `SP: masochism.`;
 			<<elseif ((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")>>
-				SP: dominance.
+				r += `SP: dominance.`;
 			<<elseif ((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")>>
-				SP: pregnancy.
+				r += `SP: pregnancy.`;
 			<<elseif (slave.fetish != "none") && (slave.clitSetting == "vanilla")>>
-				SP: vanilla.
+				r += `SP: vanilla.`;
 			<<elseif (slave.energy <= 95) && (slave.clitSetting == "all")>>
-				SP: all.
+				r += `SP: all.`;
 			<<elseif (slave.energy > 5) && (slave.clitSetting == "none")>>
-				SP: none.
+				r += `SP: none.`;
 			<<elseif !["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)>>
-				SP: monitoring.
+				r += `SP: monitoring.`;
 			<</if>>
 		<<else>>
 			<<switch slave.clitSetting>>
-			<<case "off">>
-				SP off.
-			<<case "submissive">>
-				SP: submissive.
-			<<case "oral">>
-				SP: oral.
-			<<case "humiliation">>
-				SP: humiliation.
-			<<case "anal">>
-				SP: anal.
-			<<case "boobs">>
-				SP: breasts.
-			<<case "sadist">>
-				SP: sadism.
-			<<case "masochist">>
-				SP: masochism.
-			<<case "dom">>
-				SP: dominance.
-			<<case "pregnancy">>
-				SP: pregnancy.
-			<<case "vanilla">>
-				SP: vanilla.
-			<<case "all">>
-				SP: all.
-			<<case "none">>
-				SP: none.
+				<<case "off">>
+					r += `SP off.`;
+				<<case "submissive">>
+					r += `SP: submissive.`;
+				<<case "oral">>
+					r += `SP: oral.`;
+				<<case "humiliation">>
+					r += `SP: humiliation.`;
+				<<case "anal">>
+					r += `SP: anal.`;
+				<<case "boobs">>
+					r += `SP: breasts.`;
+				<<case "sadist">>
+					r += `SP: sadism.`;
+				<<case "masochist">>
+					r += `SP: masochism.`;
+				<<case "dom">>
+					r += `SP: dominance.`;
+				<<case "pregnancy">>
+					r += `SP: pregnancy.`;
+				<<case "vanilla">>
+					r += `SP: vanilla.`;
+				<<case "all">>
+					r += `SP: all.`;
+				<<case "none">>
+					r += `SP: none.`;
 			<</switch>>
 		<</if>>
 		<<if slave.attrKnown == 1>>
 			<<if (slave.attrXX < 100) && (slave.clitSetting == "women")>>
-				SP: women.
+				r += `SP: women.`;
 			<<elseif (slave.attrXY < 100) && (slave.clitSetting == "men")>>
-				SP: men.
+				r += `SP: men.`;
 			<</if>>
 		<<else>>
 			<<if slave.clitSetting == "women">>
-				SP: women.
+				r += `SP: women.`;
 			<<elseif slave.clitSetting == "men">>
-				SP: men.
+				r += `SP: men.`;
 			<</if>>
 		<</if>>
 	<</if>>
-	<span class="red">
+	r + =`<span class="red">`;
 	<<switch slave.behavioralFlaw>>
-	<<case "arrogant">>
-		Arrogant.
-	<<case "bitchy">>
-		Bitchy.
-	<<case "odd">>
-		Odd.
-	<<case "hates men">>
-		Hates men.
-	<<case "hates women">>
-		Hates women.
-	<<case "gluttonous">>
-		Stress eater.
-	<<case "anorexic">>
-		Anorexic.
-	<<case "devout">>
-		Devoutly religious.
-	<<case "liberated">>
-		Mentally liberated.
+		<<case "arrogant">>
+			r += `Arrogant.`;
+		<<case "bitchy">>
+			r += `Bitchy.`;
+		<<case "odd">>
+			r += `Odd.`;
+		<<case "hates men">>
+			r += `Hates men.`;
+		<<case "hates women">>
+			r += `Hates women.`;
+		<<case "gluttonous">>
+			r += `Stress eater.`;
+		<<case "anorexic">>
+			r += `Anorexic.`;
+		<<case "devout">>
+			r += `Devoutly religious.`;
+		<<case "liberated">>
+			r += `Mentally liberated.`;
 	<<default>>
 		<<set slave.behavioralFlaw = "none">>
 	<</switch>>
-	</span>
+	r += `</span>`;
 	<<switch slave.sexualFlaw>>
-	<<case "hates oral">>
-		<span class="red">Hates oral.</span>
-	<<case "hates anal">>
-		<span class="red">Hates anal.</span>
-	<<case "hates penetration">>
-		<span class="red">Hates penetration.</span>
-	<<case "shamefast">>
-		<span class="red">Shamefast.</span>
-	<<case "idealistic">>
-		<span class="red">Sexually idealistic.</span>
-	<<case "repressed">>
-		<span class="red">Sexually repressed.</span>
-	<<case "apathetic">>
-		<span class="red">Sexually apathetic.</span>
-	<<case "crude">>
-		<span class="red">Sexually crude.</span>
-	<<case "judgemental">>
-		<span class="red">Sexually judgemental.</span>
-	<<case "cum addict">>
-		<span class="yellow">Cum addict.</span>
-	<<case "anal addict">>
-		<span class="yellow">Anal addict.</span>
-	<<case "attention whore">>
-		<span class="yellow">Attention whore.</span>
-	<<case "breast growth">>
-		<span class="yellow">Breast obsession.</span>
-	<<case "abusive">>
-		<span class="yellow">Sexually abusive.</span>
-	<<case "malicious">>
-		<span class="yellow">Sexually malicious.</span>
-	<<case "self hating">>
-		<span class="yellow">Self hatred.</span>
-	<<case "neglectful">>
-		<span class="yellow">Self neglectful.</span>
-	<<case "breeder">>
-		<span class="yellow">Breeding obsession.</span>
-	<<default>>
-		<<set slave.sexualFlaw = "none">>
+		<<case "hates oral">>
+			r += `<span class="red">Hates oral.</span>`;
+		<<case "hates anal">>
+			r += `<span class="red">Hates anal.</span>`;
+		<<case "hates penetration">>
+			r += `<span class="red">Hates penetration.</span>`;
+		<<case "shamefast">>
+			r += `<span class="red">Shamefast.</span>`;
+		<<case "idealistic">>
+			r += `<span class="red">Sexually idealistic.</span>`;
+		<<case "repressed">>
+			r += `<span class="red">Sexually repressed.</span>`;
+		<<case "apathetic">>
+			r += `<span class="red">Sexually apathetic.</span>`;
+		<<case "crude">>
+			r += `<span class="red">Sexually crude.</span>`;
+		<<case "judgemental">>
+			r += `<span class="red">Sexually judgemental.</span>`;
+		<<case "cum addict">>
+			r += `<span class="yellow">Cum addict.</span>`;
+		<<case "anal addict">>
+			r += `<span class="yellow">Anal addict.</span>`;
+		<<case "attention whore">>
+			r += `<span class="yellow">Attention whore.</span>`;
+		<<case "breast growth">>
+			r += `<span class="yellow">Breast obsession.</span>`;
+		<<case "abusive">>
+			r += `<span class="yellow">Sexually abusive.</span>`;
+		<<case "malicious">>
+			r += `<span class="yellow">Sexually malicious.</span>`;
+		<<case "self hating">>
+			r += `<span class="yellow">Self hatred.</span>`;
+		<<case "neglectful">>
+			r += `<span class="yellow">Self neglectful.</span>`;
+		<<case "breeder">>
+			r += `<span class="yellow">Breeding obsession.</span>`;
+		<<default>>
+			<<set slave.sexualFlaw = "none">>
 	<</switch>>
-	<span class="green">
+	r += `<span class="green">`;
 	<<switch slave.behavioralQuirk>>
-	<<case "confident">>
-		Confident.
-	<<case "cutting">>
-		Cutting.
-	<<case "funny">>
-		Funny.
-	<<case "fitness">>
-		Fitness.
-	<<case "adores women">>
-		Adores women.
-	<<case "adores men">>
-		Adores men.
-	<<case "insecure">>
-		Insecure.
-	<<case "sinful">>
-		Sinful.
-	<<case "advocate">>
-		Advocate.
-	<<default>>
-		<<set slave.behavioralQuirk = "none">>
+		<<case "confident">>
+			r += `Confident.`;
+		<<case "cutting">>
+			r += `Cutting.`;
+		<<case "funny">>
+			r += `Funny.`;
+		<<case "fitness">>
+			r += `Fitness.`;
+		<<case "adores women">>
+			r += `Adores women.`;
+		<<case "adores men">>
+			r += `Adores men.`;
+		<<case "insecure">>
+			r += `Insecure.`;
+		<<case "sinful">>
+			r += `Sinful.`;
+		<<case "advocate">>
+			r += `Advocate.`;
+		<<default>>
+			<<set slave.behavioralQuirk = "none">>
 	<</switch>>
 	<<switch slave.sexualQuirk>>
-	<<case "gagfuck queen">>
-		Gagfuck queen.
-	<<case "painal queen">>
-		Painal queen.
-	<<case "strugglefuck queen">>
-		Strugglefuck queen.
-	<<case "tease">>
-		Tease.
-	<<case "romantic">>
-		Romantic.
-	<<case "perverted">>
-		Perverted.
-	<<case "caring">>
-		Caring.
-	<<case "unflinching">>
-		Unflinching.
-	<<case "size queen">>
-		Size queen.
-	<<default>>
-		<<set slave.sexualQuirk = "none">>
+		<<case "gagfuck queen">>
+			r += `Gagfuck queen.`;
+		<<case "painal queen">>
+			r += `Painal queen.`;
+		<<case "strugglefuck queen">>
+			r += `Strugglefuck queen.`;
+		<<case "tease">>
+			r += `Tease.`;
+		<<case "romantic">>
+			r += `Romantic.`;
+		<<case "perverted">>
+			r += `Perverted.`;
+		<<case "caring">>
+			r += `Caring.`;
+		<<case "unflinching">>
+			r += `Unflinching.`;
+		<<case "size queen">>
+			r += `Size queen.`;
+		<<default>>
+			<<set slave.sexualQuirk = "none">>
 	<</switch>>
-	</span>
+	r += `</span>`;
 <</if>>
 
-<<if slave.customLabel != "">>''<span class="yellow">slave.customLabel</span>''<</if>>
+<<if slave.customLabel != "">>
+	r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
+<</if>>
 
 <<if (slave.relationship != 0) || (slave.relation != 0) || (V.abbreviateClothes == 2) || (V.abbreviateRulesets == 2)>>
-	<br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
+	r += `<br>`;
+	<<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	<</if>>
 <</if>>
 
 <<if V.abbreviateMental == 1>>
-<span class="lightgreen">
+r += `<span class="lightgreen">`;
 <<if V.familyTesting == 1>>
 	<<if slave.mother > 0>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s daughter
+			r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
 			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>> & friend
-				<<elseif slave.relationship == 2>> & BFF
-				<<elseif slave.relationship == 3>> & FWB
-				<<elseif slave.relationship == 4>> & lover
-				<<else>> & wife
+				<<if slave.relationship == 1>>
+					r += ` & friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` & BFF`;
+				<<elseif slave.relationship == 3>>
+					r += ` & FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` & lover`;
+				<<else>>
+					r += ` & wife`;
 				<</if>>
 				<<set _relationshipHandled = 1>>
 			<</if>>
 		<</if>>
 	<<elseif slave.mother == -1>>
-		Your daughter
+		r += `Your daughter`;
 		<<if slave.relationship == -3>>
-			& wife
+			r += `& wife`;
 			<<set _relationshipHandled = 1>>
 		<<elseif slave.relationship == -2>>
-			& lover
+			r += `& lover`;
 			<<set _relationshipHandled = 1>>
 		<</if>>
 	<</if>>
 	<<if slave.father > 0 && slave.father != slave.mother>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s daughter
+			r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
 			<<if slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1>>
-				<<if slave.relationship == 1>> & friend
-				<<elseif slave.relationship == 2>> & BFF
-				<<elseif slave.relationship == 3>> & FWB
-				<<elseif slave.relationship == 4>> & lover
-				<<else>> & wife
+				<<if slave.relationship == 1>>
+					r += ` & friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` & BFF`;
+				<<elseif slave.relationship == 3>>
+					r += ` & FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` & lover`;
+				<<else>>
+					r += ` & wife`;
 				<</if>>
 				<<set _relationshipHandled = 1>>
 			<</if>>
 		<</if>>
 	<<elseif slave.father == -1 && slave.mother != -1>>
-		Your daughter
+		r += `Your daughter`;
 		<<if slave.relationship == -3>>
-			& wife
+			r += `& wife`;
 			<<set _relationshipHandled = 1>>
 		<<elseif slave.relationship == -2>>
-			& lover
+			r += `& lover`;
 			<<set _relationshipHandled = 1>>
 		<</if>>
 	<</if>>
 	<<if slave.daughters == 1>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s mother
+			r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
 			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>> & friend
-				<<elseif slave.relationship == 2>> & BFF
-				<<elseif slave.relationship == 3>> & FWB
-				<<elseif slave.relationship == 4>> & lover
-				<<else>> & wife
+				<<if slave.relationship == 1>>
+					r += ` & friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` & BFF`;
+				<<elseif slave.relationship == 3>>
+					r += ` & FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` & lover`;
+				<<else>>
+					r += ` & wife`;
 				<</if>>
 				<<set _relationshipHandled = 1>>
 			<</if>>
 		<</if>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s father
+			r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
 			<<if slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1>>
-				<<if slave.relationship == 1>> & friend
-				<<elseif slave.relationship == 2>> & BFF
-				<<elseif slave.relationship == 3>> & FWB
-				<<elseif slave.relationship == 4>> & lover
-				<<else>> & wife
+				<<if slave.relationship == 1>>
+					r += ` & friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` & BFF`;
+				<<elseif slave.relationship == 3>>
+					r += ` & FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` & lover`;
+				<<else>>
+					r += ` & wife`;
 				<</if>>
 				<<set _relationshipHandled = 1>>
 			<</if>>
 		<</if>>
 	<<elseif slave.daughters > 1>>
-		multiple daughters
+		r += `multiple daughters`;
 	<</if>>
 	<<if slave.sisters == 1>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s sister
+			r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
 			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>> & friend
-				<<elseif slave.relationship == 2>> & BFF
-				<<elseif slave.relationship == 3>> & FWB
-				<<elseif slave.relationship == 4>> & lover
-				<<else>> & wife
+				<<if slave.relationship == 1>>
+					r += ` & friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` & BFF`;
+				<<elseif slave.relationship == 3>>
+					r += ` & FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` & lover`;
+				<<else>>
+					r += ` & wife`;
 				<</if>>
 				<<set _relationshipHandled = 1>>
 			<</if>>
 		<</if>>
 	<<elseif slave.sisters > 1>>
-		multiple sisters
+		r += `multiple sisters`;
 	<</if>>
 	<<if slave.relationship > 0 && _relationshipHandled != 1>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s
+			r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 			<<switch slave.relationship>>	
 			<<case 1>>
-				friend
+				r += `friend`;
 			<<case 2>>
-				BFF
+				r += `BFF`;
 			<<case 3>>
-				FWB
+				r += `FWB`;
 			<<case 4>>
-				lover
+				r += `lover`;
 			<<case 5>>
-				wife
+				r += `wife`;
 			<</switch>>
 		<</if>>
 	<<elseif slave.relationship == -3>>
-		Your wife
+		r += `Your wife`;
 	<<elseif slave.relationship == -2>>
-		E Bonded
+		r += `E Bonded`;
 	<<elseif slave.relationship == -1>>
-		E Slut
+		r += `E Slut`;
 	<</if>>
 <<else>>
 	<<if slave.relation != 0>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s slave.relation
+			r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
 		<</if>>
 	<</if>>
 	<<if slave.relationship > 0>>
@@ -2819,47 +2848,62 @@ r += `<br>`;
 			<<switch slave.relationship>>
 			<<case 1>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>&<</if>> friend
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `&`;
+				<</if>>
+				r += `friend`;
 			<<case 2>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>&<</if>> BFF
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `&`;
+				<</if>>
+				r += `BFF`;
 			<<case 3>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>&<</if>> FWB
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `&`;
+				<</if>>
+				r += `FWB`;
 			<<case 4>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>&<</if>> lover
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `&`;
+				<</if>>
+				r += `lover`;
 			<<case 5>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>&<</if>> wife
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `&`;
+				<</if>>
+				r += `wife`;
 			<</switch>>
 		<</if>>
 	<<elseif slave.relationship == -3>>
-		Your wife
+		r += `Your wife`;
 	<<elseif slave.relationship == -2>>
-		E Bonded
+		r += `E Bonded`;
 	<<elseif slave.relationship == -1>>
-		E Slut
+		r += `E Slut`;
 	<</if>>
 <</if>>
-</span>
+r += `</span>`;
 <<set _relationshipHandled = 0>>
 <<if slave.rivalry != 0>>
-	&nbsp;&nbsp;&nbsp;&nbsp;
+	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 	<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; })>>
 	<<if _ssj != -1>>
-		<span class="lightsalmon">
+		r += `<span class="lightsalmon">`;
 		<<if slave.rivalry <= 1>>
-			Disl <<SlaveFullName V.slaves[_ssj]>>
+			r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
 		<<elseif slave.rivalry <= 2>>
-			<<SlaveFullName V.slaves[_ssj]>>'s rival
+			r += `${SlaveFullName(V.slaves[_ssj])}'s rival`;
 		<<else>>
-			Hates <<SlaveFullName V.slaves[_ssj]>>
+			r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
 		<</if>>
 		</span>
 	<</if>>
@@ -2869,104 +2913,182 @@ r += `<br>`;
 	<<if slave.mother > 0>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">daughter<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
+				<<if slave.relationship == 1>>
+					r += ` and friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` and best friend`;
+				<<elseif slave.relationship == 3>>
+					r += ` and FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` and lover`;
+				<<else>>
+					r += ` and wife`;
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+			r += `.</span>`;
 		<</if>>
 	<<elseif slave.mother == -1>>
-		Your
+		r += `Your`;
 		<<if slave.relationship == -3>>
-			<span class="lightgreen">daughter and wife.</span>
+			r += `<span class="lightgreen">daughter and wife.</span>`;
 			<<set _relationshipHandled = 1>>
 		<<elseif slave.relationship == -2>>
-			<span class="lightgreen">daughter and lover.</span>
+			r += `<span class="lightgreen">daughter and lover.</span>`;
 			<<set _relationshipHandled = 1>>
 		<<else>>
-			<span class="lightgreen">daughter.</span>
+			r += `<span class="lightgreen">daughter.</span>`;
 		<</if>>
 	<</if>>
+	// HERE
 	<<if slave.father > 0 && slave.father != slave.mother>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">daughter<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
+				<<if slave.relationship == 1>>
+					r += ` and friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` and best friend`;
+				<<elseif slave.relationship == 3>>
+					r += ` and FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` and lover`;
+				<<else>>
+					r += ` and wife`;
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+			r += `.</span>`;
 		<</if>>
 	<<elseif slave.father == -1 && slave.father != slave.mother>>
-		Your
+		r += `Your`;
 		<<if slave.relationship == -3>>
-			<span class="lightgreen">daughter and wife.</span>
+			r += `<span class="lightgreen">daughter and wife.</span>`;
 			<<set _relationshipHandled = 1>>
 		<<elseif slave.relationship == -2>>
-			<span class="lightgreen">daughter and lover.</span>
+			r += `<span class="lightgreen">daughter and lover.</span>`;
 			<<set _relationshipHandled = 1>>
 		<<else>>
-			<span class="lightgreen">daughter.</span>
+			r += `<span class="lightgreen">daughter.</span>`;
 		<</if>>
 	<</if>>
 	<<if slave.daughters == 1>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">mother<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
+				<<if slave.relationship == 1>>
+					r += ` and friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` and best friend`;
+				<<elseif slave.relationship == 3>>
+					r += ` and FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` and lover`;
+				<<else>>
+					r += ` and wife`;
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+			r += `.</span>`;
 		<</if>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">father<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
+				<<if slave.relationship == 1>>
+					r += ` and friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` and best friend`;
+				<<elseif slave.relationship == 3>>
+					r += ` and FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` and lover`;
+				<<else>>
+					r += ` and wife`;
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+			r += `.</span>`;
 		<</if>>
 	<<elseif slave.daughters > 1>>
 		<<if slave.daughters > 10>>
-			<span class="lightgreen">Has tons of daughters.</span>
+			r += `<span class="lightgreen">Has tons of daughters.</span>`;
 		<<elseif slave.daughters > 5>>
-			<span class="lightgreen">Has many daughters.</span>
+			r += `<span class="lightgreen">Has many daughters.</span>`;
 		<<else>>
-			<span class="lightgreen">Has several daughters.</span>
+			r += `<span class="lightgreen">Has several daughters.</span>`;
 		<</if>>
 	<</if>>
 	<<if slave.sisters == 1>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightgreen">sister<<if slave.relationshipTarget == V.slaves[_ssj].ID>><<if slave.relationship == 1>> and friend<<elseif slave.relationship == 2>> and best friend<<elseif slave.relationship == 3>> and FWB<<elseif slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.</span>
+			`${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
+			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
+				<<if slave.relationship == 1>>
+					r += ` and friend`;
+				<<elseif slave.relationship == 2>>
+					r += ` and best friend`;
+				<<elseif slave.relationship == 3>>
+					r += ` and FWB`;
+				<<elseif slave.relationship == 4>>
+					r += ` and lover`;
+				<<else>>
+					r += ` and wife`;
+				<</if>>
+				<<set _relationshipHandled = 1>>
+			<</if>>
+			r += `.</span>`;
 		<</if>>
 	<<elseif slave.sisters > 1>>
 		<<if slave.sisters > 10>>
-			<span class="lightgreen">One of many sisters.</span>
+			r += `<span class="lightgreen">One of many sisters.</span>`;
 		<<elseif slave.sisters > 5>>
-			<span class="lightgreen">Has many sisters.</span>
+			r += `<span class="lightgreen">Has many sisters.</span>`;
 		<<else>>
-			<span class="lightgreen">Has several sisters.</span>
+			r += `<span class="lightgreen">Has several sisters.</span>`;
 		<</if>>
 	<</if>>
 	<<if slave.relationship > 0 && _relationshipHandled != 1>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s
+			r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 			<<switch slave.relationship>>
 			<<case 1>>
-				<span class="lightgreen">friend.</span>
+				r += `<span class="lightgreen">friend.</span>`;
 			<<case 2>>
-				<span class="lightgreen">best friend.</span>
+				r += `<span class="lightgreen">best friend.</span>`;
 			<<case 3>>
-				<span class="lightgreen">FWB.</span>
+				r += `<span class="lightgreen">FWB.</span>`;
 			<<case 4>>
-				<span class="lightgreen">lover.</span>
+				r += `<span class="lightgreen">lover.</span>`;
 			<<case 5>>
-				<span class="lightgreen">slave wife.</span>
+				r += `<span class="lightgreen">slave wife.</span>`;
 			<</switch>>
 		<</if>>
 	<<elseif slave.relationship == -3>>
-		<span class="lightgreen">Your wife.</span>
+		r += `<span class="lightgreen">Your wife.</span>`;
 	<<elseif slave.relationship == -2>>
-		<span class="lightgreen">Emotionally bonded to you.</span>
+		r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
 	<<elseif slave.relationship == -1>>
-		<span class="lightgreen">Emotional slut.</span>
+		r += `<span class="lightgreen">Emotional slut.</span>`;
 	<</if>>
 <<else>>
 	<<if slave.relation != 0>>
 		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; })>>
 		<<if _ssj != -1>>
-			<<SlaveFullName V.slaves[_ssj]>>'s
+			r += `${SlaveFullName(V.slaves[_ssj])'s`;
 			<<if slave.relationshipTarget != slave.relationTarget>>
-				<span class="lightgreen">slave.relation<span class="
+				r += `<span class="lightgreen">${slave.relation}</span>.`;
 			<<else>>
-				</span>.lightgreen">slave.relation</span>
+				r += `<span class="lightgreen">${slave.relation}</span>`;
+			<</if>>
+			<<if slave.relationship <= 0>>
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 			<</if>>
-			<<if slave.relationship <= 0>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
 		<</if>>
 	<</if>>
 	<<if slave.relationship > 0>>
@@ -2975,45 +3097,60 @@ r += `<br>`;
 			<<switch slave.relationship>>
 			<<case 1>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>and<</if>> <span class="lightgreen">friend.</span>
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `and`;
+				<</if>>
+				r += `<span class="lightgreen">friend.</span>`;
 			<<case 2>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>and<</if>> <span class="lightgreen">best friend.</span>
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `and`;
+				<</if>>
+				r += `<span class="lightgreen">best friend.</span>`;
 			<<case 3>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>and<</if>> <span class="lightgreen">FWB.</span>
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `and`;
+				<</if>>
+				r += `<span class="lightgreen">FWB.</span>`;
 			<<case 4>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>and<</if>> <span class="lightgreen">lover.</span>
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `and`;
+				<</if>>
+				r += `<span class="lightgreen">lover.</span>`;
 			<<case 5>>
 				<<if slave.relationshipTarget != slave.relationTarget>>
-					<<SlaveFullName V.slaves[_ssj]>>'s
-				<<else>>and<</if>> <span class="lightgreen">slave wife.</span>
+					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				<<else>>
+					r += `and`;
+				<</if>>
+				r += `<span class="lightgreen">slave wife.</span>`;
 			<</switch>>
 		<</if>>
 	<<elseif slave.relationship == -3>>
-		<span class="lightgreen">Your wife.</span>
+		r += `<span class="lightgreen">Your wife.</span>`;
 	<<elseif slave.relationship == -2>>
-		<span class="lightgreen">Emotionally bonded to you.</span>
+		r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
 	<<elseif slave.relationship == -1>>
-		<span class="lightgreen">Emotional slut.</span>
+		r += `<span class="lightgreen">Emotional slut.</span>`;
 	<</if>>
 <</if>>
 <<set _relationshipHandled = 0>>
 <<if slave.rivalry != 0>>
-	&nbsp;&nbsp;&nbsp;&nbsp;
+	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 	<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; })>>
 	<<if _ssj != -1>>
 		<<if slave.rivalry <= 1>>
-			<span class="lightsalmon">Dislikes</span> <<SlaveFullName V.slaves[_ssj]>>.
+			r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
 		<<elseif slave.rivalry <= 2>>
-			<<SlaveFullName V.slaves[_ssj]>>'s <span class="lightsalmon">rival.</span>
+			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightsalmon">rival.</span>`;
 		<<else>>
-			<span class="lightsalmon">Hates</span> <<SlaveFullName V.slaves[_ssj]>>.
+			r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
 		<</if>>
 	<</if>>
 <</if>>
@@ -3021,267 +3158,269 @@ r += `<br>`;
 
 <<if slave.fuckdoll == 0>>
 <<if V.abbreviateClothes == 2>>
-&nbsp;&nbsp;&nbsp;&nbsp;
+r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 <<if slave.choosesOwnClothes == 1>>
-	Dressing herself.
+	r += `Dressing herself.`;
 <</if>>
 <<switch slave.clothes>>
 <<case "attractive lingerie">>
-	Lingerie.
+	r + =`Lingerie.`;
 <<case "a succubus outfit">>
-	Succubus outfit.
+	r + =`Succubus outfit.`;
 <<case "a string bikini">>
-	String bikini.
+	r + =`String bikini.`;
 <<case "a scalemail bikini">>
-	Scalemail bikini.
+	r + =`Scalemail bikini.`;
 <<case "a monokini">>
-	Monokini.
+	r + =`Monokini.`;
 <<case "an apron">>
-	Apron.
+	r + =`Apron.`;
 <<case "a cybersuit">>
-	Cybersuit.
+	r + =`Cybersuit.`;
 <<case "cutoffs and a t-shirt">>
-	Cutoffs, t-shirt.
+	r + =`Cutoffs, t-shirt.`;
 <<case "a slutty outfit">>
-	Slutty outfit.
+	r + =`Slutty outfit.`;
 <<case "uncomfortable straps">>
-	Leather straps.
+	r + =`Leather straps.`;
 <<case "a fallen nuns habit">>
-	Slutty habit.
+	r + =`Slutty habit.`;
 <<case "a chattel habit">>
-	Chattel habit.
+	r + =`Chattel habit.`;
 <<case "a penitent nuns habit">>
-	Cilice.
+	r + =`Cilice.`;
 <<case "slutty jewelry">>
-	Bangles.
+	r + =`Bangles.`;
 <<case "attractive lingerie for a pregnant woman">>
-	Preggo lingerie.
+	r + =`Preggo lingerie.`;
 <<case "a maternity dress">>
-	Maternity dress.
+	r + =`Maternity dress.`;
 <<case "stretch pants and a crop-top">>
-	Stretch pants, crop-top.
+	r + =`Stretch pants, crop-top.`;
 <<case "harem gauze">>
-	Harem outfit.
+	r + =`Harem outfit.`;
 <<case "a slave gown">>
-	Slave gown.
+	r + =`Slave gown.`;
 <<case "a halter top dress">>
-	Halter top dress.
+	r + =`Halter top dress.`;
 <<case "a mini dress">>
-	Mini dress.
+	r + =`Mini dress.`;
 <<case "a ball gown">>
-	Ball gown.
+	r + =`Ball gown.`;
 <<case "slutty business attire">>
-	Slutty suit.
+	r + =`Slutty suit.`;
 <<case "nice business attire">>
-	Nice suit.
+	r + =`Nice suit.`;
 <<case "a comfortable bodysuit">>
-	Bodysuit.
+	r + =`Bodysuit.`;
 <<case "a military uniform">>
-	Military uniform.
+	r + =`Military uniform.`;
 <<case "a schutzstaffel uniform">>
-	Schutzstaffel uniform.
+	r + =`Schutzstaffel uniform.`;
 <<case "a slutty schutzstaffel uniform">>
-	Slutty Schutzstaffel uniform.
+	r + =`Slutty Schutzstaffel uniform.`;
 <<case "a red army uniform">>
-	Red Army uniform.
+	r + =`Red Army uniform.`;
 <<case "a long qipao">>
-	Long Qipao.
+	r + =`Long Qipao.`;
 <<case "battlearmor">>
-	Battlearmor.
+	r + =`Battlearmor.`;
 <<case "a mounty outfit">>
-	Mounty outfit.
+	r + =`Mounty outfit.`;
 <<case "a dirndl">>
-	Dirndl.
+	r + =`Dirndl.`;
 <<case "lederhosen">>
-	Lederhosen.
+	r + =`Lederhosen.`;
 <<case "a biyelgee costume">>
-	Biyelgee costume.
+	r + =`Biyelgee costume.`;
 <<case "a leotard">>
-	Leotard.
+	r + =`Leotard.`;
 <<case "a bunny outfit">>
-	Bunny outfit.
+	r + =`Bunny outfit.`;
 <<case "a slutty maid outfit">>
-	Slutty maid.
+	r + =`Slutty maid.`;
 <<case "a nice maid outfit">>
-	Nice maid.
+	r + =`Nice maid.`;
 <<case "a slutty nurse outfit">>
-	Slutty nurse.
+	r + =`Slutty nurse.`;
 <<case "a nice nurse outfit">>
-	Nice nurse.
+	r + =`Nice nurse.`;
 <<case "a schoolgirl outfit">>
-	Schoolgirl outfit.
+	r + =`Schoolgirl outfit.`;
 <<case "a kimono">>
-	Kimono.
+	r + =`Kimono.`;
 <<case "a hijab and abaya">>
-	Hijab and abaya.
+	r + =`Hijab and abaya.`;
 <<case "battledress">>
-	Battledress.
+	r + =`Battledress.`;
 <<case "a latex catsuit">>
-	Nice latex.
+	r + =`Nice latex.`;
 <<case "restrictive latex">>
-	Bondage latex.
+	r + =`Bondage latex.`;
 <<case "conservative clothing">>
-	Conservative clothing.
+	r + =`Conservative clothing.`;
 <<case "chains">>
-	Chains.
+	r + =`Chains.`;
 <<case "a cheerleader outfit">>
-	Cheerleader.
+	r + =`Cheerleader.`;
 <<case "clubslut netting">>
-	Netting.
+	r + =`Netting.`;
 <<case "shibari ropes">>
-	Shibari.
+	r + =`Shibari.`;
 <<case "Western clothing">>
-	Chaps.
+	r + =`Chaps.`;
 <<case "body oil">>
-	Body oil.
+	r + =`Body oil.`;
 <<case "a toga">>
-	Toga.
+	r + =`Toga.`;
 <<case "a huipil">>
-	Huipil.
+	r + =`Huipil.`;
 <<case "a slutty qipao">>
-	Qipao.
+	r + =`Qipao.`;
 <<case "spats and a tank top">>
-	Spats, tank top.
+	r + =`Spats, tank top.`;
 <<default>>
-	Naked.
+	r + =`Naked.`;
 <</switch>>
 <<switch slave.collar>>
 <<case "uncomfortable leather">>
-	Leather collar.
+	r + =`Leather collar.`;
 <<case "tight steel">>
-	Steel collar.
+	r + =`Steel collar.`;
 <<case "preg biometrics">>
-	Pregnancy biometrics collar.
+	r + =`Pregnancy biometrics collar.`;
 <<case "cruel retirement counter">>
-	Cruel counter collar.
+	r + =`Cruel counter collar.`;
 <<case "shock punishment">>
-	Shock collar.
+	r + =`Shock collar.`;
 <<case "dildo gag">>
-	Dildo gag.
+	r + =`Dildo gag.`;
 <<case "massive dildo gag">>
-	Throat-bulging dildo gag.
+	r + =`Throat-bulging dildo gag.`;
 <<case "neck corset">>
-	Neck corset.
+	r + =`Neck corset.`;
 <<case "stylish leather">>
-	Stylish leather collar.
+	r + =`Stylish leather collar.`;
 <<case "satin choker">>
-	Satin choker.
+	r + =`Satin choker.`;
 <<case "silk ribbon">>
-	Silken ribbon.
+	r + =`Silken ribbon.`;
 <<case "heavy gold">>
-	Gold collar.
+	r + =`Gold collar.`;
 <<case "bowtie">>
-	Bowtie collar.
+	r + =`Bowtie collar.`;
 <<case "pretty jewelry">>
-	Pretty collar.
+	r + =`Pretty collar.`;
 <<case "nice retirement counter">>
-	Nice counter collar.
+	r + =`Nice counter collar.`;
 <<case "leather with cowbell">>
-	Cowbell collar.
+	r + =`Cowbell collar.`;
 <<case "ancient Egyptian">>
-	Wesekh.
+	r + =`Wesekh.`;
 <<case "ball gag">>
-	Ball gag.
+	r + =`Ball gag.`;
 <<case "bit gag">>
-	Bit gag.
+	r + =`Bit gag.`;
 <<case "porcelain mask">>
-	Porcelain mask.
+	r + =`Porcelain mask.`;
 <</switch>>
 <<switch slave.bellyAccessory>>
 <<case "shapewear">>
-	Shapewear.
+	r + =`Shapewear.`;
 <<case "a small empathy belly">>
-	Small fake belly.
+	r + =`Small fake belly.`;
 <<case "a medium empathy belly">>
-	Medium fake belly.
+	r + =`Medium fake belly.`;
 <<case "a large empathy belly">>
-	Large fake belly.
+	r + =`Large fake belly.`;
 <<case "a huge empathy belly">>
-	Huge fake belly.
+	r + =`Huge fake belly.`;
 <<case "a corset">>
-	Corset.
+	r + =`Corset.`;
 <<case "an extreme corset">>
-	Extreme corsetage.
+	r + =`Extreme corsetage.`;
 <</switch>>
 <<if slave.amp != 1>>
 	<<if slave.legAccessory == "short stockings">>
-		Short stockings.
+		r + =`Short stockings.`;
 	<<elseif slave.legAccessory == "long stockings">>
-		Long stockings.
+		r + =`Long stockings.`;
 	<</if>>
 <</if>>
 <<if canWalk(slave)>>
 <<if slave.shoes == "heels">>
-	Heels.
+	r + =`Heels.`;
 <<elseif slave.shoes == "pumps">>
-	Pumps.
+	r + =`Pumps.`;
 <<elseif slave.shoes == "extreme heels">>
-	Extreme heels.
+	r + =`Extreme heels.`;
 <<elseif slave.shoes == "boots">>
-	Boots.
+	r + =`Boots.`;
 <<elseif slave.heels == 1>>
-	<span class="yellow">Crawling.</span>
+	r + =`<span class="yellow">Crawling.</span>`;
 <<elseif slave.shoes == "flats">>
-	Flats.
+	r + =`Flats.`;
 <</if>>
 <</if>>
 <<switch slave.vaginalAccessory>>
 <<case "chastity belt">>
-	Vaginal chastity.
+	r + =`Vaginal chastity.`;
 <<case "combined chastity">>
-	Combined chastity.
+	r + =`Combined chastity.`;
 <<case "anal chastity">>
-	Anal chastity.
+	r + =`Anal chastity.`;
 <<case "dildo">>
-	Vaginal dildo.
+	r + =`Vaginal dildo.`;
 <<case "large dildo">>
-	Large vaginal dildo.
+	r + =`Large vaginal dildo.`;
 <<case "huge dildo">>
-	Huge vaginal dildo.
+	r + =`Huge vaginal dildo.`;
 <<case "long dildo">>
-	Long vaginal dildo.
+	r + =`Long vaginal dildo.`;
 <<case "long, large dildo">>
-	Long and large vaginal dildo.
+	r + =`Long and large vaginal dildo.`;
 <<case "long, huge dildo">>
-	Long and wide vaginal dildo.
+	r + =`Long and wide vaginal dildo.`;
 <</switch>>
 <<if slave.dickAccessory == "chastity">>
-	Chastity cage.
+	r + =`Chastity cage.`;
 <<elseif slave.dickAccessory == "combined chastity">>
-	Combined chastity.
+	r + =`Combined chastity.`;
 <<elseif slave.dickAccessory == "anal chastity">>
-	Anal chastity.
+	r + =`Anal chastity.`;
 <</if>>
 <<switch slave.buttplug>>
 <<case "plug">>
-	Buttplug.
+	r + =`Buttplug.`;
 <<case "large plug">>
-	Large buttplug.
+	r + =`Large buttplug.`;
 <<case "huge plug">>
-	Huge buttplug.
+	r + =`Huge buttplug.`;
 <<case "long plug">>
-	Long buttplug.
+	r + =`Long buttplug.`;
 <<case "long, large plug">>
-	Large, long buttplug.
+	r + =`Large, long buttplug.`;
 <<case "long, huge plug">>
-	Enormous buttplug.
+	r + =`Enormous buttplug.`;
 <</switch>>
 <<switch slave.buttplugAttachment>>
 <<case "tail">>
-	Attached tail.
+	r + =`Attached tail.`;
 <</switch>>
 <</if>>
 <</if>>
 
-&nbsp;&nbsp;&nbsp;&nbsp;
+r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 <<if slave.useRulesAssistant == 0>>
-	<span class="lightgreen">RA-Exempt</span>
+	r + =`<span class="lightgreen">RA-Exempt</span>`;
 <<elseif V.abbreviateRulesets == 2 && (def slave.currentRules) && (slave.currentRules.length > 0)>>
-	Rules: 
-	<<= V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") >>
+	r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") }`;
 <</if>>
 
 <<if V.abbreviateOrigins == 2 && slave.origin != 0>>
-	<br><<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
-    <span class="gray">slave.origin</span>
+	r += `<br>`;
+	<<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	<</if>>
+	r += `<span class="gray">${slave.origin}</span>`;
 <</if>>
-- 
GitLab


From 066d9121d3497cee69e982ce0506c62b704e051a Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 23:27:25 +0300
Subject: [PATCH 010/189] stage 2

---
 src/js/slaveSummaryWidgets.tw | 4582 +++++++++++++++++++--------------
 1 file changed, 2605 insertions(+), 1977 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index ddd0ab23f44..1e992b5ee3a 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -12,1573 +12,1904 @@ window.clearSummaryCache = function clearSummaryCache(slave) {
 window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 	const V = State.variables;
 	let r = "";
-}
-<<if $abbreviateDevotion == 1>>
-	<<if slave.fetish == "mindbroken">>
+	if (V.abbreviateDevotion == 1) {
+	if (slave.fetish == "mindbroken") {
 		r += `<span class="red">MB</span>`
-	<<elseif slave.devotion < -95>>
-		r += `<span class="darkviolet">VHate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-	<<elseif slave.devotion < -50>>
+	} else if (slave.devotion < -95) {
+		r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+	} else if (slave.devotion < -50) {
 		r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-	<<elseif slave.devotion < -20>>
+	} else if (slave.devotion < -20) {
 		r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-	<<elseif slave.devotion <= 20>>
+	} else if (slave.devotion <= 20) {
 		r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
-	<<elseif slave.devotion <= 50>>
+	} else if (slave.devotion <= 50) {
 		r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
-	<<elseif slave.devotion <= 95>>
+	} else if (slave.devotion <= 95) {
 		r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
-	<<else>>
+	} else {
 		r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
-	<</if>>
-	<<if slave.fetish == "mindbroken">>
+	}
+	if (slave.fetish == "mindbroken") {
 		true;
-	<<elseif slave.trust < -95>>
+	} else if (slave.trust < -95) {
 		r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-	<<elseif slave.trust < -50>>
+	} else if (slave.trust < -50) {
 		r += `<span class="goldenrod">Terr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-	<<elseif slave.trust < -20>>
+	} else if (slave.trust < -20) {
 		r += `<span class="gold">Fright${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-	<<elseif slave.trust <= 20>>
+	} else if (slave.trust <= 20) {
 		r += `<span class="yellow">Fear${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-	<<elseif slave.trust <= 50>>
-		<<if slave.devotion < -20>>
+	} else if (slave.trust <= 50) {
+		if (slave.devotion < -20) {
 			r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		<<else>>
+		} else {
 			r += `<span class="mediumaquamarine">Caref${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
-		<</if>>
-	<<elseif slave.trust < 95>>
-		<<if slave.devotion < -20>>
+		}
+	} else if (slave.trust < 95) {
+		if (slave.devotion < -20) {
 			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		<<else>>
+		} else {
 			r += `<span class="mediumseagreen">Trust${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
-		<</if>>
-	<<else>>
-		<<if slave.devotion < -20>>
+		}
+	} else {
+		if (slave.devotion < -20) {
 			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		<<else>>
+		} else {
 			r += `<span class="seagreen">VTrust ${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
-		<</if>>
-	<</if>>
-<<elseif V.abbreviateDevotion == 2>>
-	<<if slave.fetish == "mindbroken">>
+		}
+	}
+} else if (V.abbreviateDevotion == 2) {
+	if (slave.fetish == "mindbroken") {
 		r += `<span class="red">Mindbroken.</span>`;
-	<<elseif slave.devotion < -95>>
+	} else if (slave.devotion < -95) {
 		r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	<<elseif slave.devotion < -50>>
+	} else if (slave.devotion < -50) {
 		r += `<span class="darkviolet">Hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	<<elseif slave.devotion < -20>>
+	} else if (slave.devotion < -20) {
 		r += `<span class="mediumorchid">Resistant${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	<<elseif slave.devotion <= 20>>
+	} else if (slave.devotion <= 20) {
 		r += `<span class="yellow">Ambivalent${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	<<elseif slave.devotion <= 50>>
+	} else if (slave.devotion <= 50) {
 		r += `<span class="hotpink">Accepting${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	<<elseif slave.devotion <= 95>>
+	} else if (slave.devotion <= 95) {
 		r += `<span class="deeppink">Devoted${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	<<else>>
+	} else {
 		r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	<</if>>
-	<<if slave.fetish == "mindbroken">>
+	}
+	if (slave.fetish == "mindbroken") {
 		true;
-	<<elseif slave.trust < -95>>
+	} else if (slave.trust < -95) {
 		r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-	<<elseif slave.trust < -50>>
+	} else if (slave.trust < -50) {
 		r += `<span class="goldenrod">Terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-	<<elseif slave.trust < -20>>
+	} else if (slave.trust < -20) {
 		r += `<span class="gold">Frightened${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-	<<elseif slave.trust <= 20>>
+	} else if (slave.trust <= 20) {
 		r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-	<<elseif slave.trust <= 50>>
-		<<if slave.devotion < -20>>
+	} else if (slave.trust <= 50) {
+		if (slave.devotion < -20) {
 			r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
-		<<else>>
+		} else {
 			r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
-		<</if>>
-	<<elseif slave.trust < 95>>
-		<<if slave.devotion < -20>>
+		}
+	} else if (slave.trust < 95) {
+		if (slave.devotion < -20) {
 			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
-		<<else>>
+		} else {
 			r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
-		<</if>>
-	<<else>>
-		<<if slave.devotion < -20>>
+		}
+	} else {
+		if (slave.devotion < -20) {
 			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
-		<<else>>
+		} else {
 			r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
-		<</if>>
-	<</if>>
-<</if>>
+		}
+	}
+}
 
-<<if slave.fuckdoll == 0>>
-	<<if V.abbreviateRules == 1>>
-		<<switch slave.livingRules>>
-			<<case "luxurious">>
-				''LS:Lux''
-			<<case "normal">>
-				''LS:Nor''
-			<<default>>
-				''LS:Spa''
-		<</switch>>
-		<<if canTalk(slave)>>
-			<<switch slave.speechRules>>
-				<<case "permissive">>
-					''SpR:P''
-				<<case "accent elimination">>
-					''SpR:NoAcc''
-				<<case "language lessons">>
-					''SpR:LL''
-				<<default>>
-					''SpR:R''
-			<</switch>>
-		<</if>>
-		<<switch slave.relationshipRules>>
-			<<case "permissive">>
-				''ReR:P''
-			<<case "just friends">>
-				''ReR:Fr''
-			<<default>>
-				''ReR:R''
-		<</switch>>
-		<<switch slave.standardPunishment>>
-			<<case "confinement">>
-				''Pun:Conf''
-			<<case "whipping">>
-				''Pun:Whip''
-			<<case "chastity">>
-				''Pun:Chas''
-			<<default>>
-				''Pun:Situ''
-		<</switch>>
-		<<switch slave.standardReward>>
-			<<case "relaxation">>
-				''Rew:Relx''
-			<<case "drugs">>
-				''Rew:Drug''
-			<<case "orgasm">>
-				''Rew:Orga''
-			<<default>>
-				''Rew:Situ''
-		<</switch>>
-		<<switch slave.releaseRules>>
-			<<case "permissive">>
-				''MaR:P''
-			<<case "sapphic">>
-				''MaR:S''
-			<<case "masturbation">>
-				''MaR:M''
-			<<default>>
-				''MaR:R''
-		<</switch>>
-	<<elseif V.abbreviateRules == 2>>
+if (slave.fuckdoll == 0) {
+	if (V.abbreviateRules == 1) {
+		switch (slave.livingRules) {
+			case "luxurious":
+				r += `<strong>LS:Lux</strong>`;
+				break;
+			case "normal":
+				r += `<strong>LS:Nor</strong>`;
+				break;
+			default:
+				r += `<strong>LS:Spa</strong>`;
+				break;
+		}
+		if (canTalk(slave)) {
+			switch (slave.speechRules) {
+				case "permissive":
+					r += `<strong>SpR:P</strong>`;
+					break;
+				case "accent elimination":
+					r += `<strong>SpR:NoAcc</strong>`;
+					break;
+				case "language lessons":
+					r += `<strong>SpR:LL</strong>`;
+					break;
+				default:
+					r += `<strong>SpR:R</strong>`;
+					break;
+			}
+		}
+		switch (slave.relationshipRules) {
+			case "permissive":
+				r += `<strong>ReR:P</strong>`;
+				break;
+			case "just friends":
+				r += `<strong>ReR:Fr</strong>`;
+				break;
+			default:
+				r += `<strong>ReR:R</strong>`;
+				break;
+		}
+		switch (slave.standardPunishment) {
+			case "confinement":
+				r += `<strong>Pun:Conf</strong>`;
+				break;
+			case "whipping":
+				r += `<strong>Pun:Whip</strong>`;
+				break;
+			case "chastity":
+				r += `<strong>Pun:Chas</strong>`;
+				break;
+			default:
+				r += `<strong>Pun:Situ</strong>`;
+				break;
+		}
+		switch (slave.standardReward) {
+			case "relaxation":
+				r += `<strong>Rew:Relx</strong>`;
+				break;
+			case "drugs":
+				r += `<strong>Rew:Drug</strong>`;
+				break;
+			case "orgasm":
+				r += `<strong>Rew:Orga</strong>`;
+				break;
+			default:
+				r += `<strong>Rew:Situ</strong>`;
+				break;
+		}
+		switch (slave.releaseRules) {
+			case "permissive":
+				r += `<strong>MaR:P</strong>`;
+				break;
+			case "sapphic":
+				r += `<strong>MaR:S</strong>`;
+				break;
+			case "masturbation":
+				r += `<strong>MaR:M</strong>`;
+				break;
+			default:
+				r += `<strong>MaR:R</strong>`;
+				break;
+		}
+	} else if (V.abbreviateRules == 2) {
 		r += `Living standard: ${slave.livingRules.`;
-		<<if canTalk(slave)>>
+		if (canTalk(slave)) {
 			r += `Speech rules: ${slave.speechRules}.`
-		<</if>>
+		}
 		r += `Relationship rules: ${slave.relationshipRules}.`
 		r += `Typical punishment: ${slave.standardPunishment}.`
 		r += `Typical reward: ${slave.standardReward}.`
 		r += `Release rules: ${slave.releaseRules}.`
-	<</if>>
-<</if>>
+	}
+}
 
-<<if slave.tired != 0>>
+if (slave.tired != 0) {
 	r += `Tired.`
-<</if>>
+}
 
-<<if V.abbreviateDiet == 1>>
-	<<if slave.weight < -95>>
+if (V.abbreviateDiet == 1) {
+	if (slave.weight < -95) {
 		r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`
-	<<elseif slave.weight < -30>>
-		<<if slave.hips < -1>>
+	} else if (slave.weight < -30) {
+		if (slave.hips < -1) {
 			r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		<<else>>
+		} else {
 			r += `<strong><span class="red">W--${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-		<</if>>
-	<<elseif slave.weight < -10>>
+		}
+	} else if (slave.weight < -10) {
 		r += `<strong>W-${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-	<<elseif slave.weight <= 10 >>
+	} else if (slave.weight <= 10 ) {
 		r += `<strong>W${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-	<<elseif slave.weight <= 30>>
+	} else if (slave.weight <= 30) {
 		r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-	<<elseif slave.weight <= 95>>
-		<<if slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset">>
+	} else if (slave.weight <= 95) {
+		if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		<<else>>
+		} else {
 			r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-		<</if>>
-	<<elseif slave.weight <= 130>>
-		<<if slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset">>
+		}
+	} else if (slave.weight <= 130) {
+		if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		<<else>>
+		} else {
 		r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-		<</if>>
-	<<elseif slave.weight <= 160>>
-		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+		}
+	} else if (slave.weight <= 160) {
+		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		<<else>>
+		} else {
 			r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-		<</if>>
-	<<elseif slave.weight <= 190>>
-		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+		}
+	} else if (slave.weight <= 190) {
+		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		<<else>>
+		} else {
 			r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-		<</if>>
-	<<else>>
-		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+		}
+	} else {
+		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		<<else>>
+		} else {
 			r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-		<</if>>
-	<</if>>
-<<elseif V.abbreviateDiet == 2>>
-	<<if slave.weight < -95>>
+		}
+	}
+} else if (V.abbreviateDiet == 2) {
+	if (slave.weight < -95) {
 		r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-	<<elseif slave.weight < -30>>
-		<<if slave.hips < -1>>
+	} else if (slave.weight < -30) {
+		if (slave.hips < -1) {
 			Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.
-		<<else>>
+		} else {
 			r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-		<</if>>
-	<<elseif slave.weight < -10>>
+		}
+	} else if (slave.weight < -10) {
 		r += `Thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
-	<<elseif slave.weight <= 10 >>
+	} else if (slave.weight <= 10 ) {
 		r += `Trim${V.summaryStats? `[${slave.weight}]`: ''}.`;
-	<<elseif slave.weight <= 30>>
+	} else if (slave.weight <= 30) {
 		r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
-	<<elseif slave.weight <= 95>>
-		<<if slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset">>
+	} else if (slave.weight <= 95) {
+		if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		<<else>>
+		} else {
 			r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-		<</if>>
-	<<elseif slave.weight <= 130>>
-		<<if slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset">>
+		}
+	} else if (slave.weight <= 130) {
+		if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		<<else>>
+		} else {
 			r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-		<</if>>
-	<<elseif slave.weight <= 160>>
-		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+		}
+	} else if (slave.weight <= 160) {
+		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		<<else>>
+		} else {
 			r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-		<</if>>
-	<<elseif slave.weight <= 190>>
-		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+		}
+	} else if (slave.weight <= 190) {
+		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		<<else>>
+		} else {
 			r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-		<</if>>
-	<<else>>
-		<<if V.arcologies[0].FSHedonisticDecadence != "unset">>
+		}
+	} else {
+		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
 			r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		<<else>>
+		} else {
 			r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-		<</if>>
-	<</if>>
-<</if>>
+		}
+	}
+}
 
-<<if V.abbreviateDiet == 1>>
+if (V.abbreviateDiet == 1) {
 	r += `<span class="teal">`
-	<<switch slave.diet>>
-		<<case "restricted">>
+	switch (slave.diet) {
+		case "restricted":
 			r += `<strong>Di:W-</strong>`;
-		<<case "fattening">>
+			break;
+		case "fattening":
 			r += `<strong>Di:W+</strong>`;
-		<<case "XX">>
+			break;
+		case "XX":
 			r += `<strong>Di:XX+</strong>`;
-		<<case "XY">>
+			break;
+		case "XY":
 			r += `<strong>Di:XY+</strong>`;
-		<<case "XXY">>
+			break;
+		case "XXY":
 			r += `<strong>Di:XXY+</strong>`;
-		<<case "muscle building">>
+			break;
+		case "muscle building":
 			r += `<strong>Di:M+</strong>`;
-		<<case "slimming">>
+			break;
+		case "slimming":
 			r += `<strong>Di:M-</strong>`;
-		<<case "cum production">>
+			break;
+		case "cum production":
 			r += `<strong>Di:C+</strong>`;
-		<<case "cleansing">>
+			break;
+		case "cleansing":
 			r += `<strong>Di:H+</strong>`;
-		<<case "fertility">>
+			break;
+		case "fertility":
 			r += `<strong>Di:F+</strong>`;
-	<</switch>>
+			break;
+	}
 	r += `</span>`;
 	r += `<span class="cyan">`;
-	<<if slave.dietCum == 2>>
+	if (slave.dietCum == 2) {
 		r += `<strong>Cum++</strong>`;
-	<<elseif ((slave.dietCum == 1) && (slave.dietMilk == 0))>>
+	} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
 		r += `<strong>Cum+</strong>`;
-	<<elseif ((slave.dietCum == 1) && (slave.dietMilk == 1))>>
+	} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
 		r += `<strong>Cum+ Milk+</strong>`;
-	<<elseif ((slave.dietCum == 0) && (slave.dietMilk == 1))>>
+	} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
 		r += `<strong>Milk+</strong>`;
-	<<elseif (slave.dietMilk == 2)>>
+	} else if ((slave.dietMilk == 2)) {
 		r += `<strong>Milk++</strong>`;
-	<</if>>
+	}
 	r += `</span>`;
-<<elseif V.abbreviateDiet == 2>>
+} else if (V.abbreviateDiet == 2) {
 	r += `<span class="teal">`;
-	<<switch slave.diet>>
-		<<case "restricted">>
+	switch (slave.diet) {
+		case "restricted":
 			r + `Dieting.`;
-		<<case "fattening">>
+			break;
+		case "fattening":
 			r + `Gaining weight.`;
-		<<case "XX">>
+			break;
+		case "XX":
 			r + `Estrogen rich.`;
-		<<case "XY">>
+			break;
+		case "XY":
 			r + `Testosterone rich.`;
-		<<case "XXY">>
+			break;
+		case "XXY":
 			r + `Futanari mix.`;
-		<<case "muscle building">>
+			break;
+		case "muscle building":
 			r + `Pumping iron.`;
-		<<case "slimming">>
+			break;
+		case "slimming":
 			r + `Slimming down.`;
-		<<case "cum production">>
+			break;
+		case "cum production":
 			r + `Cum production.`;
-		<<case "cleansing">>
+			break;
+		case "cleansing":
 			r + `Cleansing.`;
-		<<case "fertility">>
+			break;
+		case "fertility":
 			r + `Fertility.`;
-	<</switch>>
+			break;
+	}
 	r += `</span>`;
-	<<if slave.dietCum == 2>>
+	if (slave.dietCum == 2) {
 		r + `Diet Base: <span class="cyan">Cum Based.</span>`;
-	<<elseif ((slave.dietCum == 1) && (slave.dietMilk == 0))>>
+	} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
 		r + `Diet Base: <span class="cyan">Cum Added.</span>`;
-	<<elseif ((slave.dietCum == 1) && (slave.dietMilk == 1))>>
+	} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
 		r + `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
-	<<elseif ((slave.dietCum == 0) && (slave.dietMilk == 1))>>
+	} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
 		r + `Diet Base: <span class="cyan">Milk Added.</span>`;
-	<<elseif (slave.dietMilk == 2)>>
+	} else if ((slave.dietMilk == 2)) {
 		r + `Diet Base: <span class="cyan">Milk Based.</span>`;
-	<</if>>
-<</if>>
+	}
+}
 
-<<if V.abbreviateHealth == 1>>
-	<<if slave.health < -20>>
+if (V.abbreviateHealth == 1) {
+	if (slave.health < -20) {
 		r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-	<<elseif slave.health <= 20>>
+	} else if (slave.health <= 20) {
 		r += `<strong><span class="yellow">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-	<<elseif slave.health > 20>>
+	} else if (slave.health > 20) {
 		r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-	<</if>>
-<<elseif V.abbreviateHealth == 2>>
-	<<if slave.health < -90>>
+	}
+} else if (V.abbreviateHealth == 2) {
+	if (slave.health < -90) {
 		r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	<<elseif slave.health < -50>>
+	} else if (slave.health < -50) {
 		r += `<span class="red">Extremely unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	<<elseif slave.health < -20>>
+	} else if (slave.health < -20) {
 		r += `<span class="red">Unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	<<elseif slave.health <= 20>>
+	} else if (slave.health <= 20) {
 		r += `<span class="yellow">Healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	<<elseif slave.health <= 50>>
+	} else if (slave.health <= 50) {
 		r += `<span class="green">Very healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	<<elseif slave.health <= 90>>
+	} else if (slave.health <= 90) {
 		r += `<span class="green">Extremely healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	<<else>>
+	} else {
 		r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	<</if>>
-<</if>>
+	}
+}
 
-<<if V.abbreviateDrugs == 1>>
+if (V.abbreviateDrugs == 1) {
 	r += `<span class="tan">`
-	<<switch slave.drugs>>
-		<<case "breast injections">>
+	switch (slave.drugs) {
+		case "breast injections":
 			r += `<strong>Dr:Boobs+</strong>`;
-		<<case "intensive breast injections">>
+			break;
+		case "intensive breast injections":
 			r += `<strong>Dr:Boobs++</strong>`;
-		<<case "hyper breast injections">>
+			break;
+		case "hyper breast injections":
 			r += `<strong>Dr:Boobs+++</strong>`;
-		<<case "butt injections">>
+			break;
+		case "butt injections":
 			r += `<strong>Dr:Butt+</strong>`;
-		<<case "intensive butt injections">>
+			break;
+		case "intensive butt injections":
 			r += `<strong>Dr:Butt++</strong>`;
-		<<case "hyper butt injections">>
+			break;
+		case "hyper butt injections":
 			r += `<strong>Dr:Butt+++</strong>`;
-		<<case "lip injections">>
+			break;
+		case "lip injections":
 			r += `<strong>Dr:Lip+</strong>`;
-		<<case "fertility drugs">>
+			break;
+		case "fertility drugs":
 			r += `<strong>Dr:Fert+</strong>`;
-		<<case "super fertility drugs">>
+			break;
+		case "super fertility drugs":
 			r += `<strong>Dr:Fert++</strong>`;
-		<<case "penis enhancement">>
+			break;
+		case "penis enhancement":
 			r += `<strong>Dr:Dick+</strong>`;
-		<<case "intensive penis enhancement">>
+			break;
+		case "intensive penis enhancement":
 			r += `<strong>Dr:Dick++</strong>`;
-		<<case "hyper penis enhancement">>
+			break;
+		case "hyper penis enhancement":
 			r += `<strong>Dr:Dick+++</strong>`;
-		<<case "testicle enhancement">>
+			break;
+		case "testicle enhancement":
 			r += `<strong>Dr:Balls+</strong>`;
-		<<case "intensive testicle enhancement">>
+			break;
+		case "intensive testicle enhancement":
 			r += `<strong>Dr:Balls++</strong>`;
-		<<case "hyper testicle enhancement">>
+			break;
+		case "hyper testicle enhancement":
 			r += `<strong>Dr:Balls+++</strong>`;
-		<<case "psychosuppressants">>
+			break;
+		case "psychosuppressants":
 			r += `<strong>Dr:Psych</strong>`;
-		<<case "steroids">>
+			break;
+		case "steroids":
 			r += `<strong>Dr:Ster</strong>`;
-		<<case "female hormone injections">>
+			break;
+		case "female hormone injections":
 			r += `<strong>Dr:HormXX++</strong>`;
-		<<case "male hormone injections">>
+			break;
+		case "male hormone injections":
 			r += `<strong>Dr:HormXY++</strong>`;
-		<<case "hormone enhancers">>
+			break;
+		case "hormone enhancers":
 			r += `<strong>Dr:Horm+</strong>`;
-		<<case "hormone blockers">>
+			break;
+		case "hormone blockers":
 			r += `<strong>Dr:Horm-</strong>`;
-		<<case "anti-aging cream">>
+			break;
+		case "anti-aging cream":
 			r += `<strong>Dr:Age-</strong>`;
-		<<case "appetite suppressors">>
+			break;
+		case "appetite suppressors":
 			r += `<strong>Dr:ApSup</strong>`;
-		<<case "penis atrophiers">>
+			break;
+		case "penis atrophiers":
 			r += `<strong>Dr:Dick-</strong>`;
-		<<case "testicle atrophiers">>
+			break;
+		case "testicle atrophiers":
 			r += `<strong>Dr:Balls-</strong>`;
-		<<case "clitoris atrophiers">>
+			break;
+		case "clitoris atrophiers":
 			r += `<strong>Dr:Clit-</strong>`;
-		<<case "labia atrophiers">>
+			break;
+		case "labia atrophiers":
 			r += `<strong>Dr:Labia-</strong>`;
-		<<case "nipple atrophiers">>
+			break;
+		case "nipple atrophiers":
 			r += `<strong>Dr:Nipple-</strong>`;
-		<<case "lip atrophiers">>
+			break;
+		case "lip atrophiers":
 			r += `<strong>Dr:Lip-</strong>`;
-		<<case "breast redistributors">>
+			break;
+		case "breast redistributors":
 			r += `<strong>Dr:Breast-</strong>`;
-		<<case "butt redistributors">>
+			break;
+		case "butt redistributors":
 			r += `<strong>Dr:Butt-</strong>`;
-		<<case "sag-B-gone">>
+			break;
+		case "sag-B-gone":
 			r += `<strong>Dr:AntiSag</strong>`;
-		<<case "growth stimulants">>
+			break;
+		case "growth stimulants":
 			r += `<strong>Dr:groStim</strong>`;
-	<</switch>>
+			break;
+	}
 	r += `</span>`;
 	r += `<span class="lightgreen">`;
-	<<if slave.curatives == 2>>
+	if (slave.curatives == 2) {
 		r += `<strong>Cura</strong>`;
-	<<elseif slave.curatives == 1>>
+	} else if (slave.curatives == 1) {
 		r += `<strong>Prev</strong>`;
-	<</if>>
+	}
 	r += `</span>`;
-	<<if slave.aphrodisiacs != 0>>
+	if (slave.aphrodisiacs != 0) {
 		r += `<span class="lightblue">`;
-		<<if slave.aphrodisiacs == 1>>
+		if (slave.aphrodisiacs == 1) {
 			r += `<strong>Aph</strong>`;
-		<<elseif slave.aphrodisiacs == 2>>
+		} else if (slave.aphrodisiacs == 2) {
 			r += `<strong>Aph++</strong>`;
-		<<else>>
+		} else {
 			r += `<strong>Anaph</strong>`;
-		<</if>>
+		}
 		r += `</span>`;
-	<</if>>
-	<<if slave.addict != 0>>
+	}
+	if (slave.addict != 0) {
 		r += `<span class="cyan">Add</span>`;
-	<</if>>
+	}
 	r += `<span class="lightsalmon">`;
-	<<if slave.hormones > 1>>
+	if (slave.hormones > 1) {
 		r += `<strong>Ho:F+</strong>`;
-	<<elseif slave.hormones > 0>>
+	} else if (slave.hormones > 0) {
 		r += `<strong>Ho:F</strong>`;
-	<<elseif slave.hormones < -1>>
+	} else if (slave.hormones < -1) {
 		r += `<strong>Ho:M+</strong>`;
-	<<elseif slave.hormones < 0>>
+	} else if (slave.hormones < 0) {
 		r += `<strong>Ho:M</strong>`;
-	<</if>>
+	}
 	r += `</span>`;
 	r += `<span class="mediumseagreen">`;
-	<<if (slave.bellyImplant > -1)>>
+	if ((slave.bellyImplant > -1)) {
 		r += `<strong>Belly Imp</strong>`;
-	<<elseif ((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)>>
+	} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
 		r += `<strong>Barr</strong>`;
-	<<elseif slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+	} else if (slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
 		r += `<strong>Prepub</strong>`;
-	<<elseif slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+	} else if (slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)) {
 		r += `<strong>Meno</strong>`;
-	<<elseif slave.pregWeek < 0>>
+	} else if (slave.pregWeek < 0) {
 		r += `<strong>Postpartum</strong>`;
-	<<elseif slave.preg == -1>>
+	} else if (slave.preg == -1) {
 		r += `<strong>CC</strong>`;
-	<<elseif slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+	} else if (slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
 		r += `<strong>Fert+</strong>`;
-	<<elseif ((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1>>
+	} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1) {
 		r += `<strong>Preg?</strong>`;
-	<<elseif (slave.preg >= 36) && (slave.broodmother > 0)>>
+	} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
 		r += `<strong>Perm preg</strong>`;
-	<<elseif slave.pregKnown == 1>>
+	} else if (slave.pregKnown == 1) {
 		r += `<strong>${slave.pregWeek} wks preg</strong>`;
-	<</if>>
+	}
 	r += `</span>`;
-	<<if slave.induce == 1>>
+	if (slave.induce == 1) {
 		r += `<span class="orange"><strong>Early Labor</strong></span>`;
-	<</if>>
-	<<if slave.pubertyXY == 0 && slave.balls > 0>>
+	}
+	if (slave.pubertyXY == 0 && slave.balls > 0) {
 		r += `<strong>Prepub balls</strong>`;
-	<</if>>
-	<<if slave.balls > 0 && slave.vasectomy == 1>>
+	}
+	if (slave.balls > 0 && slave.vasectomy == 1) {
 		r += `<strong>Vasect</strong>`;
-	<</if>>
+	}
 	r += `<span class="springgreen">`;
-	<<if slave.inflation == 3>>
+	if (slave.inflation == 3) {
 		r += `<strong>8 ltr ${slave.inflationType}</strong>`;
-	<<elseif slave.inflation == 2>>
+	} else if (slave.inflation == 2) {
 		r += `<strong>4 ltr ${slave.inflationType}</strong>`;
-	<<elseif slave.inflation == 1>>
+	} else if (slave.inflation == 1) {
 		r += `<strong>2 ltr ${slave.inflationType}</strong>`;
-	<<elseif slave.bellyFluid > 0>>
+	} else if (slave.bellyFluid > 0) {
 		r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
-	<</if>>
+	}
 	r += `</span>`;
-<<elseif V.abbreviateDrugs == 2>>
-	<<if (slave.drugs != "no drugs") && (slave.drugs != "none")>>
+} else if (V.abbreviateDrugs == 2) {
+	if ((slave.drugs != "no drugs") && (slave.drugs != "none")) {
 		r += `<span class="tan">${On slave.drugs}.</span>`;
-	<</if>>
+	}
 	r += `<span class="lightgreen">`;
-	<<if slave.curatives == 2>>
+	if (slave.curatives == 2) {
 		r += `On curatives.`;
-	<<elseif slave.curatives == 1>>
+	} else if (slave.curatives == 1) {
 		r += `On preventatives.`;
-	<</if>>
+	}
 	r += `</span>`;
 	r += `<span class="lightblue">`;
-	<<if slave.aphrodisiacs > 0>>
+	if (slave.aphrodisiacs > 0) {
 		r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
-	<<elseif slave.aphrodisiacs === -1>>
+	} else if (slave.aphrodisiacs === -1) {
 		r += `On anaphrodisiacs.`;
-	<</if>>
+	}
 	r += `</span>`;
-	<<if slave.addict != 0>>
+	if (slave.addict != 0) {
 		r += `<span class="cyan">Addict.</span>`;
-	<</if>>
+	}
 	r += `<span class="lightsalmon">`;
-	<<if slave.hormones > 1>>
+	if (slave.hormones > 1) {
 		r += `Heavy female hormones.`;
-	<<elseif slave.hormones > 0>>
+	} else if (slave.hormones > 0) {
 		r += `Female hormones.`;
-	<<elseif slave.hormones < -1>>
+	} else if (slave.hormones < -1) {
 		r += `Heavy male hormones.`;
-	<<elseif slave.hormones < 0>>
+	} else if (slave.hormones < 0) {
 		r += `Male hormones.`;
-	<</if>>
+	}
 	r += `</span>`;
 	r == `<span class="mediumseagreen">`;
-	<<if (slave.bellyImplant > -1)>>
+	if ((slave.bellyImplant > -1)) {
 		r += `Belly Implant.`;
-	<<elseif ((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)>>
+	} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
 		r += `Barren.`;
-	<<elseif slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+	} else if (slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
 		r += `Not ovulating yet.`;
-	<<elseif slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+	} else if (slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)) {
 		r += `Menopausal.`;
-	<<elseif slave.pregWeek < 0>>
+	} else if (slave.pregWeek < 0) {
 		r += `Postpartum.`;
-	<<elseif slave.preg == -1>>
+	} else if (slave.preg == -1) {
 		r += `On contraceptives.`;
-	<<elseif slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)>>
+	} else if (slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
 		r += `Fertile.`;
-	<<elseif ((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1>>
+	} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1) {
 		r += `May be pregnant.`;
-	<<elseif (slave.preg >= 36) && (slave.broodmother > 0)>>
+	} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
 		r += `Permanently pregnant.`;
-	<<elseif slave.pregKnown == 1>>
-		<<if slave.pregType < 2 || slave.broodmother > 0>>
+	} else if (slave.pregKnown == 1) {
+		if (slave.pregType < 2 || slave.broodmother > 0) {
 			r += `${slave.pregWeek} weeks pregnant.`;
-		<<else>>
+		} else {
 			slave.pregWeek weeks pregnant with
-			<<if slave.pregType >= 40>>
+			if (slave.pregType >= 40) {
 				r += `a tremendous brood of offspring.`;
-			<<elseif slave.pregType >= 20>>
+			} else if (slave.pregType >= 20) {
 				r += `a brood of offspring.`;
-			<<elseif slave.pregType >= 10>>
+			} else if (slave.pregType >= 10) {
 				r += `slave.pregType babies.`;
-			<<elseif slave.pregType == 9>>
+			} else if (slave.pregType == 9) {
 				r += `nonuplets.`;
-			<<elseif slave.pregType == 8>>
+			} else if (slave.pregType == 8) {
 				r += `octuplets.`;
-			<<elseif slave.pregType == 7>>
+			} else if (slave.pregType == 7) {
 				r += `septuplets.`;
-			<<elseif slave.pregType == 6>>
+			} else if (slave.pregType == 6) {
 				r += `sextuplets.`;
-			<<elseif slave.pregType == 5>>
+			} else if (slave.pregType == 5) {
 				r += `quintuplets.`;
-			<<elseif slave.pregType == 4>>
+			} else if (slave.pregType == 4) {
 				r += `quadruplets.`;
-			<<elseif slave.pregType == 3>>
+			} else if (slave.pregType == 3) {
 				r += `triplets.`;
-			<<else>>
+			} else {
 				r += `twins.`;
-			<</if>>
-		<</if>>
-	<</if>>
+			}
+		}
+	}
 	r += `</span>`;
-	<<if slave.induce == 1>>
+	if (slave.induce == 1) {
 		r += `<span class="orange">Showing signs of early labor.</span>`;
-	<</if>>
-	<<if slave.pubertyXY == 0 && slave.balls > 0>>
+	}
+	if (slave.pubertyXY == 0 && slave.balls > 0) {
 		r += `Has not had first ejaculation.`;
-	<</if>>
-	<<if slave.balls > 0 && slave.vasectomy == 1>>
+	}
+	if (slave.balls > 0 && slave.vasectomy == 1) {
 		r += `Vasectomy.`;
-	<</if>>
+	}
 	<span class="springgreen">
-	<<if slave.inflation == 3>>
+	if (slave.inflation == 3) {
 		r += `Filled with 8 liters of ${slave.inflationType}.`;
-	<<elseif slave.inflation == 2>>
+	} else if (slave.inflation == 2) {
 		r += `Filled with 4 liters of ${slave.inflationType}.`;
-	<<elseif slave.inflation == 1>>
+	} else if (slave.inflation == 1) {
 		r += `Filled with 2 liters of ${slave.inflationType}.`;
-	<<elseif slave.bellyFluid > 0>>
+	} else if (slave.bellyFluid > 0) {
 		r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
-	<</if>>
+	}
 	r += `</span>`;
-<</if>>
+}
 
-<<if V.abbreviateNationality+V.abbreviateGenitalia+V.abbreviatePhysicals+V.abbreviateSkills+V.abbreviateMental != 0>>
+if (V.abbreviateNationality+V.abbreviateGenitalia+V.abbreviatePhysicals+V.abbreviateSkills+V.abbreviateMental != 0) {
 	r += `<br>`;
-	<<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>
+	if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
 		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	<</if>>
-<</if>>
+	}
+}
 
-<<SlaveTitle slave>>
-<<set V.seed = V.desc.substring(0,1)>>
-<<set V.seed = V.seed.toUpperCase()>>
-<<set V.desc = V.seed + V.desc.substring(1)>>
+V.desc = SlaveTitle(slave);
+V.seed = V.desc.substring(0,1);
+V.seed = V.seed.toUpperCase();
+V.desc = V.seed + V.desc.substring(1);
 r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : ''}</span></strong>`;
 
-<<if V.seeRace == 1>>
+if (V.seeRace == 1) {
 	r += `<span class="tan">`;
-	<<if V.abbreviateRace == 1>>
-		<<switch slave.race>>
-			<<case "white">>
+	if (V.abbreviateRace == 1) {
+		switch (slave.race) {
+			case "white":
 				r += `C`;
-			<<case "asian">>
+				break;
+			case "asian":
 				r += `A`;
-			<<case "indo-aryan">>
+				break;
+			case "indo-aryan":
 				r += `I`;
-			<<case "latina">>
+				break;
+			case "latina":
 				r += `L`;
-			<<case "middle eastern">>
+				break;
+			case "middle eastern":
 				r += `ME`;
-			<<case "black">>
+				break;
+			case "black":
 				r += `B`;
-			<<case "pacific islander">>
+				break;
+			case "pacific islander":
 				r += `PI`;
-			<<case "malay">>
+				break;
+			case "malay":
 				r += `M`;
-			<<case "amerindian">>
+				break;
+			case "amerindian":
 				r += `AI`;
-			<<case "semitic">>
+				break;
+			case "semitic":
 				r += `S`;
-			<<case "southern european">>
+				break;
+			case "southern european":
 				r += `SE`;
-			<<case "mixed race">>
+				break;
+			case "mixed race":
 				r += `MR`;
-			<<default>>
+				break;
+			default:
 				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
-		<</switch>>
-	<<elseif V.abbreviateRace == 2>>
-		<<switch slave.race>>
-			<<case "white">>
+				break;
+		}
+	} else if (V.abbreviateRace == 2) {
+		switch (slave.race) {
+			case "white":
 				r += `Caucasian.`;
-			<<case "asian">>
+				break;
+			case "asian":
 				r += `Asian.`;
-			<<case "indo-aryan">>
+				break;
+			case "indo-aryan":
 				r += `Indo-aryan.`;
-			<<case "latina">>
+				break;
+			case "latina":
 				r += `Latina.`;
-			<<case "middle eastern">>
+				break;
+			case "middle eastern":
 				r += `Middle Eastern.`;
-			<<case "black">>
+				break;
+			case "black":
 				r += `Black.`;
-			<<case "pacific islander">>
+				break;
+			case "pacific islander":
 				r += `Pacific Islander.`;
-			<<case "malay">>
+				break;
+			case "malay":
 				r += `Malay.`;
-			<<case "amerindian">>
+				break;
+			case "amerindian":
 				r += `Amerindian.`;
-			<<case "semitic">>
+				break;
+			case "semitic":
 				r += `Semitic.`;
-			<<case "southern european">>
+				break;
+			case "southern european":
 				r += `Southern European.`;
-			<<case "mixed race">>
+				break;
+			case "mixed race":
 				r += `Mixed race.`;
-			<<default>>
+				break;
+			default:
 				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
-		<</switch>>
-	<</if>>
+				break;
+		}
+	}
 	r += `</span>`;
-<</if>>
+}
 
-<<if V.abbreviateNationality == 1>>
+if (V.abbreviateNationality == 1) {
 	r += `<span class="tan">`;
-	<<switch slave.nationality>>
-		<<case "Afghan">>
+	switch (slave.nationality) {
+		case "Afghan":
 			r += `Afg`;
-		<<case "Albanian">>
+			break;
+		case "Albanian":
 			r += `Alb`;
-		<<case "Algerian">>
+			break;
+		case "Algerian":
 			r += `Alg`;
-		<<case "American">>
+			break;
+		case "American":
 			r += `USA`;
-		<<case "Andorran">>
+			break;
+		case "Andorran":
 			r += `And`;
-		<<case "Angolan">>
+			break;
+		case "Angolan":
 			r += `Ang`;
-		<<case "Antiguan">>
+			break;
+		case "Antiguan":
 			r += `AB`;
-		<<case "Argentinian">>
+			break;
+		case "Argentinian":
 			r += `Arg`;
-		<<case "Armenian">>
+			break;
+		case "Armenian":
 			r += `Arm`;
-		<<case "Aruban">>
+			break;
+		case "Aruban":
 			r += `Aru`;
-		<<case "Australian">>
+			break;
+		case "Australian":
 			r += `Aus`;
-		<<case "Austrian">>
+			break;
+		case "Austrian":
 			r += `Aut`;
-		<<case "Azerbaijani">>
+			break;
+		case "Azerbaijani":
 			r += `Aze`;
-		<<case "Bahamian">>
+			break;
+		case "Bahamian":
 			r += `Bah`;
-		<<case "Bahraini">>
+			break;
+		case "Bahraini":
 			r += `Bah`;
-		<<case "Bangladeshi">>
+			break;
+		case "Bangladeshi":
 			r += `Bgd`;
-		<<case "Barbadian">>
+			break;
+		case "Barbadian":
 			r += `Bar`;
-		<<case "Belarusian">>
+			break;
+		case "Belarusian":
 			r += `Ber`;
-		<<case "Belgian">>
+			break;
+		case "Belgian":
 			r += `Bel`;
-		<<case "Belizean">>
+			break;
+		case "Belizean":
 			r += `Blz`;
-		<<case "Beninese">>
+			break;
+		case "Beninese":
 			r += `Ben`;
-		<<case "Bermudian">>
+			break;
+		case "Bermudian":
 			r += `Bmd`;
-		<<case "Bhutanese">>
+			break;
+		case "Bhutanese":
 			r += `Bhu`;
-		<<case "Bissau-Guinean">>
+			break;
+		case "Bissau-Guinean":
 			r += `GB`;
-		<<case "Bolivian">>
+			break;
+		case "Bolivian":
 			r += `Bol`;
-		<<case "Bosnian">>
+			break;
+		case "Bosnian":
 			r += `Bos`;
-		<<case "Brazilian">>
+			break;
+		case "Brazilian":
 			r += `Bra`;
-		<<case "British">>
+			break;
+		case "British":
 			r += `UK`;
-		<<case "Bruneian">>
+			break;
+		case "Bruneian":
 			r += `Bru`;
-		<<case "Bulgarian">>
+			break;
+		case "Bulgarian":
 			r += `Bul`;
-		<<case "Burkinabé">>
+			break;
+		case "Burkinabé":
 			r += `BF`;
-		<<case "Burmese">>
+			break;
+		case "Burmese":
 			r += `Bur`;
-		<<case "Burundian">>
+			break;
+		case "Burundian":
 			r += `Bnd`;
-		<<case "Cambodian">>
+			break;
+		case "Cambodian":
 			r += `Kam`;
-		<<case "Cameroonian">>
+			break;
+		case "Cameroonian":
 			r += `Cam`;
-		<<case "Canadian">>
+			break;
+		case "Canadian":
 			r += `Can`;
-		<<case "Cape Verdean">>
+			break;
+		case "Cape Verdean":
 			r += `CV`;
-		<<case "Catalan">>
+			break;
+		case "Catalan":
 			r += `Cat`;
-		<<case "Central African">>
+			break;
+		case "Central African":
 			r += `CAR`;
-		<<case "Chadian">>
+			break;
+		case "Chadian":
 			r += `Cha`;
-		<<case "Chilean">>
+			break;
+		case "Chilean":
 			r += `Chl`;
-		<<case "Chinese">>
+			break;
+		case "Chinese":
 			r += `Chi`;
-		<<case "Colombian">>
+			break;
+		case "Colombian":
 			r += `Col`;
-		<<case "Comorian">>
+			break;
+		case "Comorian":
 			r += `Com`;
-		<<case "Congolese">>
+			break;
+		case "Congolese":
 			r += `RC`;
-		<<case "a Cook Islander">>
+			break;
+		case "a Cook Islander":
 			r += `CI`;
-		<<case "Costa Rican">>
+			break;
+		case "Costa Rican":
 			r += `CR`;
-		<<case "Croatian">>
+			break;
+		case "Croatian":
 			r += `Cro`;
-		<<case "Cuban">>
+			break;
+		case "Cuban":
 			r += `Cub`;
-		<<case "Cypriot">>
+			break;
+		case "Cypriot":
 			r += `Cyp`;
-		<<case "Czech">>
+			break;
+		case "Czech":
 			r += `Cze`;
-		<<case "Danish">>
+			break;
+		case "Danish":
 			r += `Den`;
-		<<case "Djiboutian">>
+			break;
+		case "Djiboutian":
 			r += `Dji`;
-		<<case "Dominican">>
+			break;
+		case "Dominican":
 			r += `DR`;
-		<<case "Dominiquais">>
+			break;
+		case "Dominiquais":
 			r += `Dom`;
-		<<case "Dutch">>
+			break;
+		case "Dutch":
 			r += `Nld`;
-		<<case "East Timorese">>
+			break;
+		case "East Timorese":
 			r += `ET`;
-		<<case "Ecuadorian">>
+			break;
+		case "Ecuadorian":
 			r += `Ecu`;
-		<<case "Egyptian">>
+			break;
+		case "Egyptian":
 			r += `Egy`;
-		<<case "Emirati">>
+			break;
+		case "Emirati":
 			r += `UAE`;
-		<<case "Equatoguinean">>
+			break;
+		case "Equatoguinean":
 			r += `EG`;
-		<<case "Eritrean">>
+			break;
+		case "Eritrean":
 			r += `Eri`;
-		<<case "Estonian">>
+			break;
+		case "Estonian":
 			r += `Est`;
-		<<case "Ethiopian">>
+			break;
+		case "Ethiopian":
 			r += `Eth`;
-		<<case "Fijian">>
+			break;
+		case "Fijian":
 			r += `Fij`;
-		<<case "Filipina">>
+			break;
+		case "Filipina":
 			r += `Phl`;
-		<<case "Finnish">>
+			break;
+		case "Finnish":
 			r += `Fin`;
-		<<case "French">>
+			break;
+		case "French":
 			r += `Fra`;
-		<<case "French Guianan">>
+			break;
+		case "French Guianan":
 			r += `FG`;
-		<<case "French Polynesian">>
+			break;
+		case "French Polynesian":
 			r += `FP`;
-		<<case "Gabonese">>
+			break;
+		case "Gabonese":
 			r += `Gab`;
-		<<case "Gambian">>
+			break;
+		case "Gambian":
 			r += `Gam`;
-		<<case "Georgian">>
+			break;
+		case "Georgian":
 			r += `Geo`;
-		<<case "German">>
+			break;
+		case "German":
 			r += `Ger`;
-		<<case "Ghanan">>
+			break;
+		case "Ghanan":
 			r += `Gha`;
-		<<case "Greek">>
+			break;
+		case "Greek":
 			r += `Gre`;
-		<<case "Greenlandic">>
+			break;
+		case "Greenlandic":
 			r += `Grn`;
-		<<case "Grenadian">>
+			break;
+		case "Grenadian":
 			r += `Gda`;
-		<<case "Guamanian">>
+			break;
+		case "Guamanian":
 			r += `Gua`;
-		<<case "Guatemalan">>
+			break;
+		case "Guatemalan":
 			r += `Gtm`;
-		<<case "Guinean">>
+			break;
+		case "Guinean":
 			r += `Gui`;
-		<<case "Guyanese">>
+			break;
+		case "Guyanese":
 			r += `Guy`;
-		<<case "Haitian">>
+			break;
+		case "Haitian":
 			r += `Hai`;
-		<<case "Honduran">>
+			break;
+		case "Honduran":
 			r += `Hon`;
-		<<case "Hungarian">>
+			break;
+		case "Hungarian":
 			r += `Hun`;
-		<<case "I-Kiribati">>
+			break;
+		case "I-Kiribati":
 			r += `Kir`;
-		<<case "Icelandic">>
+			break;
+		case "Icelandic":
 			r += `Ice`;
-		<<case "Indian">>
+			break;
+		case "Indian":
 			r += `Ind`;
-		<<case "Indonesian">>
+			break;
+		case "Indonesian":
 			r += `Idn`;
-		<<case "Iranian">>
+			break;
+		case "Iranian":
 			r += `Irn`;
-		<<case "Iraqi">>
+			break;
+		case "Iraqi":
 			r += `Irq`;
-		<<case "Irish">>
+			break;
+		case "Irish":
 			r += `Irl`;
-		<<case "Israeli">>
+			break;
+		case "Israeli":
 			r += `Isr`;
-		<<case "Italian">>
+			break;
+		case "Italian":
 			r += `Ita`;
-		<<case "Ivorian">>
+			break;
+		case "Ivorian":
 			r += `IC`;
-		<<case "Jamaican">>
+			break;
+		case "Jamaican":
 			r += `Jam`;
-		<<case "Japanese">>
+			break;
+		case "Japanese":
 			r += `Jpn`;
-		<<case "Jordanian">>
+			break;
+		case "Jordanian":
 			r += `Jor`;
-		<<case "Kazakh">>
+			break;
+		case "Kazakh":
 			r += `Kaz`;
-		<<case "Kenyan">>
+			break;
+		case "Kenyan":
 			r += `Ken`;
-		<<case "Kittitian">>
+			break;
+		case "Kittitian":
 			r += `SKN`;
-		<<case "Korean">>
+			break;
+		case "Korean":
 			r += `Kor`;
-		<<case "Kosovan">>
+			break;
+		case "Kosovan":
 			r += `Kos`;
-		<<case "Kurdish">>
+			break;
+		case "Kurdish":
 			r += `Kur`;
-		<<case "Kuwaiti">>
+			break;
+		case "Kuwaiti":
 			r += `Kuw`;
-		<<case "Kyrgyz">>
+			break;
+		case "Kyrgyz":
 			r += `Kyr`;
-		<<case "Laotian">>
+			break;
+		case "Laotian":
 			r += `Lao`;
-		<<case "Latvian">>
+			break;
+		case "Latvian":
 			r += `Lat`;
-		<<case "Lebanese">>
+			break;
+		case "Lebanese":
 			r += `Lbn`;
-		<<case "Liberian">>
+			break;
+		case "Liberian":
 			r += `Lib`;
-		<<case "Libyan">>
+			break;
+		case "Libyan":
 			r += `Lby`;
-		<<case "a Liechtensteiner">>
+			break;
+		case "a Liechtensteiner":
 			r += `Lie`;
-		<<case "Lithuanian">>
+			break;
+		case "Lithuanian":
 			r += `Lit`;
-		<<case "Luxembourgian">>
+			break;
+		case "Luxembourgian":
 			r += `Lux`;
-		<<case "Macedonian">>
+			break;
+		case "Macedonian":
 			r += `Mac`;
-		<<case "Malagasy">>
+			break;
+		case "Malagasy":
 			r += `Mad`;
-		<<case "Malawian">>
+			break;
+		case "Malawian":
 			r += `Mwi`;
-		<<case "Malaysian">>
+			break;
+		case "Malaysian":
 			r += `Mys`;
-		<<case "Maldivian">>
+			break;
+		case "Maldivian":
 			r += `Mdv`;
-		<<case "Malian">>
+			break;
+		case "Malian":
 			r += `Mal`;
-		<<case "Maltese">>
+			break;
+		case "Maltese":
 			r += `Mlt`;
-		<<case "Marshallese">>
+			break;
+		case "Marshallese":
 			r += `MI`;
-		<<case "Mauritanian">>
+			break;
+		case "Mauritanian":
 			r += `Mta`;
-		<<case "Mauritian">>
+			break;
+		case "Mauritian":
 			r += `Mts`;
-		<<case "Mexican">>
+			break;
+		case "Mexican":
 			r += `Mex`;
-		<<case "Micronesian">>
+			break;
+		case "Micronesian":
 			r += `FSM`;
-		<<case "Moldovan">>
+			break;
+		case "Moldovan":
 			r += `Mol`;
-		<<case "Monégasque">>
+			break;
+		case "Monégasque":
 			r += `Mnc`;
-		<<case "Mongolian">>
+			break;
+		case "Mongolian":
 			r += `Mon`;
-		<<case "Montenegrin">>
+			break;
+		case "Montenegrin":
 			r += `Mng`;
-		<<case "Moroccan">>
+			break;
+		case "Moroccan":
 			r += `Mor`;
-		<<case "Mosotho">>
+			break;
+		case "Mosotho":
 			r += `Les`;
-		<<case "Motswana">>
+			break;
+		case "Motswana":
 			r += `Bot`;
-		<<case "Mozambican">>
+			break;
+		case "Mozambican":
 			r += `Moz`;
-		<<case "Namibian">>
+			break;
+		case "Namibian":
 			r += `Nam`;
-		<<case "Nauruan">>
+			break;
+		case "Nauruan":
 			r += `Nau`;
-		<<case "Nepalese">>
+			break;
+		case "Nepalese":
 			r += `Npl`;
-		<<case "New Caledonian">>
+			break;
+		case "New Caledonian":
 			r += `NC`;
-		<<case "a New Zealander">>
+			break;
+		case "a New Zealander":
 			r += `NZ`;
-		<<case "Ni-Vanuatu">>
+			break;
+		case "Ni-Vanuatu":
 			r += `Van`;
-		<<case "Nicaraguan">>
+			break;
+		case "Nicaraguan":
 			r += `Nic`;
-		<<case "Nigerian">>
+			break;
+		case "Nigerian":
 			r += `Nga`;
-		<<case "Nigerien">>
+			break;
+		case "Nigerien":
 			r += `Ngr`;
-		<<case "Niuean">>
+			break;
+		case "Niuean":
 			r += `Niu`;
-		<<case "Norwegian">>
+			break;
+		case "Norwegian":
 			r += `Nor`;
-		<<case "Omani">>
+			break;
+		case "Omani":
 			r += `Omn`;
-		<<case "Pakistani">>
+			break;
+		case "Pakistani":
 			r += `Pak`;
-		<<case "Palauan">>
+			break;
+		case "Palauan":
 			r += `Plu`;
-		<<case "Palestinian">>
+			break;
+		case "Palestinian":
 			r += `Pal`;
-		<<case "Panamanian">>
+			break;
+		case "Panamanian":
 			r += `Pan`;
-		<<case "Papua New Guinean">>
+			break;
+		case "Papua New Guinean":
 			r += `PNG`;
-		<<case "Paraguayan">>
+			break;
+		case "Paraguayan":
 			r += `Par`;
-		<<case "Peruvian">>
+			break;
+		case "Peruvian":
 			r += `Per`;
-		<<case "Polish">>
+			break;
+		case "Polish":
 			r += `Pol`;
-		<<case "Portuguese">>
+			break;
+		case "Portuguese":
 			r += `Por`;
-		<<case "Puerto Rican">>
+			break;
+		case "Puerto Rican":
 			r += `PR`;
-		<<case "Qatari">>
+			break;
+		case "Qatari":
 			r += `Qat`;
-		<<case "Romanian">>
+			break;
+		case "Romanian":
 			r += `Rom`;
-		<<case "Russian">>
+			break;
+		case "Russian":
 			r += `Rus`;
-		<<case "Rwandan">>
+			break;
+		case "Rwandan":
 			r += `Rwa`;
-		<<case "Sahrawi">>
+			break;
+		case "Sahrawi":
 			r += `Sah`;
-		<<case "Saint Lucian">>
+			break;
+		case "Saint Lucian":
 			r += `SL`;
-		<<case "Salvadoran">>
+			break;
+		case "Salvadoran":
 			r += `ES`;
-		<<case "Sammarinese">>
+			break;
+		case "Sammarinese":
 			r += `SM`;
-		<<case "Samoan">>
+			break;
+		case "Samoan":
 			r += `Sam`;
-		<<case "São Toméan">>
+			break;
+		case "São Toméan":
 			r += `STP`;
-		<<case "Saudi">>
+			break;
+		case "Saudi":
 			r += `Sau`;
-		<<case "Scottish">>
+			break;
+		case "Scottish":
 			r += `Sco`;
-		<<case "Senegalese">>
+			break;
+		case "Senegalese":
 			r += `Sen`;
-		<<case "Serbian">>
+			break;
+		case "Serbian":
 			r += `Srb`;
-		<<case "Seychellois">>
+			break;
+		case "Seychellois":
 			r += `Sey`;
-		<<case "Sierra Leonean">>
+			break;
+		case "Sierra Leonean":
 			r += `Sie`;
-		<<case "Singaporean">>
+			break;
+		case "Singaporean":
 			r += `Sng`;
-		<<case "Slovak">>
+			break;
+		case "Slovak":
 			r += `Svk`;
-		<<case "Slovene">>
+			break;
+		case "Slovene":
 			r += `Svn`;
-		<<case "a Solomon Islander">>
+			break;
+		case "a Solomon Islander":
 			r += `SI`;
-		<<case "Somali">>
+			break;
+		case "Somali":
 			r += `Som`;
-		<<case "South African">>
+			break;
+		case "South African":
 			r += `RSA`;
-		<<case "South Sudanese">>
+			break;
+		case "South Sudanese":
 			r += `SS`;
-		<<case "Spanish">>
+			break;
+		case "Spanish":
 			r += `Spa`;
-		<<case "Sri Lankan">>
+			break;
+		case "Sri Lankan":
 			r += `Sri`;
-		<<case "Sudanese">>
+			break;
+		case "Sudanese":
 			r += `Sud`;
-		<<case "Surinamese">>
+			break;
+		case "Surinamese":
 			r += `Sur`;
-		<<case "Swazi">>
+			break;
+		case "Swazi":
 			r += `Swa`;
-		<<case "Swedish">>
+			break;
+		case "Swedish":
 			r += `Swe`;
-		<<case "Swiss">>
+			break;
+		case "Swiss":
 			r += `Swi`;
-		<<case "Syrian">>
+			break;
+		case "Syrian":
 			r += `Syr`;
-		<<case "Taiwanese">>
+			break;
+		case "Taiwanese":
 			r += `Tai`;
-		<<case "Tajik">>
+			break;
+		case "Tajik":
 			r += `Taj`;
-		<<case "Tanzanian">>
+			break;
+		case "Tanzanian":
 			r += `Tza`;
-		<<case "Thai">>
+			break;
+		case "Thai":
 			r += `Tha`;
-		<<case "Tibetan">>
+			break;
+		case "Tibetan":
 			r += `Tib`;
-		<<case "Togolese">>
+			break;
+		case "Togolese":
 			r += `Tog`;
-		<<case "Tongan">>
+			break;
+		case "Tongan":
 			r += `Ton`;
-		<<case "Trinidadian">>
+			break;
+		case "Trinidadian":
 			r += `TT`;
-		<<case "Tunisian">>
+			break;
+		case "Tunisian":
 			r += `Tun`;
-		<<case "Turkish">>
+			break;
+		case "Turkish":
 			r += `Tur`;
-		<<case "Turkmen">>
+			break;
+		case "Turkmen":
 			r += `Tkm`;
-		<<case "Tuvaluan">>
+			break;
+		case "Tuvaluan":
 			r += `Tuv`;
-		<<case "Ugandan">>
+			break;
+		case "Ugandan":
 			r += `Uga`;
-		<<case "Ukrainian">>
+			break;
+		case "Ukrainian":
 			r += `Ukr`;
-		<<case "Uruguayan">>
+			break;
+		case "Uruguayan":
 			r += `Uru`;
-		<<case "Uzbek">>
+			break;
+		case "Uzbek":
 			r += `Uzb`;
-		<<case "Vatican">>
+			break;
+		case "Vatican":
 			r += `VC`;
-		<<case "Venezuelan">>
+			break;
+		case "Venezuelan":
 			r += `Ven`;
-		<<case "Vietnamese">>
+			break;
+		case "Vietnamese":
 			r += `Vnm`;
-		<<case "Vincentian">>
+			break;
+		case "Vincentian":
 			r += `SVG`;
-		<<case "Yemeni">>
+			break;
+		case "Yemeni":
 			r += `Yem`;
-		<<case "Zairian">>
+			break;
+		case "Zairian":
 			r += `DRC`;
-		<<case "Zambian">>
+			break;
+		case "Zambian":
 			r += `Zam`;
-		<<case "Zimbabwean">>
-			<<if slave.race == "white">>
+			break;
+		case "Zimbabwean":
+			if (slave.race == "white") {
 				r += `Rho`;
-			<<else>>
+			} else {
 				r += `Zwe`;
-			<</if>>
-		<<case "Ancient Chinese Revivalist">>
+			}
+			break;
+		case "Ancient Chinese Revivalist":
 			r += `Chi Rev`;
-		<<case "Ancient Egyptian Revivalist">>
+			break;
+		case "Ancient Egyptian Revivalist":
 			r += `Egy Rev`;
-		<<case "Arabian Revivalist">>
+			break;
+		case "Arabian Revivalist":
 			r += `Ara Rev`;
-		<<case "Aztec Revivalist">>
+			break;
+		case "Aztec Revivalist":
 			r += `Azt Rev`;
-		<<case "Edo Revivalist">>
+			break;
+		case "Edo Revivalist":
 			r += `Edo Rev`;
-		<<case "Roman Revivalist">>
+			break;
+		case "Roman Revivalist":
 			r += `Rom Rev`;
-		<<case "" "none" "slave" "Stateless">>
+			break;
+		case "" "none" "slave" "Stateless":
 			r += `None`;
-		<<default>>
+			break;
+		default:
 			r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
-	<</switch>>
+			break;
+	}
 	r += `</span>`;
-<<elseif V.abbreviateNationality == 2>>
+} else if (V.abbreviateNationality == 2) {
 	r += `<span class="tan">`;
-	<<switch slave.nationality>>
-		<<case "Zimbabwean">>
-			<<if slave.race == "white">>
+	switch (slave.nationality) {
+		case "Zimbabwean":
+			if (slave.race == "white") {
 				r += `Rhodesian.`;
-			<<else>>
+			} else {
 				r += slave.nationality.
-			<</if>>
-		<<case "slave" "none" "" "Stateless">>
+			}
+			break;
+		case "slave" "none" "" "Stateless":
 			r += `Stateless.`;
-		<<default>>
+			break;
+		default:
 			r += slave.nationality.
-	<</switch>>
+			break;
+	}
 	r += `</span>`;
-<</if>>
+}
 
-<<if V.abbreviatePhysicals == 1>>
+if (V.abbreviatePhysicals == 1) {
 	r += `<span class="pink">`;
-	<<switch slave.skin>>
-		<<case "light brown">>
+	switch (slave.skin) {
+		case "light brown":
 			r += `L. Br`;
-		<<case "dark brown">>
+			break;
+		case "dark brown":
 			r += `D. Br`;
-		<<case "light olive">>
+			break;
+		case "light olive":
 			r += `L. Oli`;
-		<<case "dark olive">>
+			break;
+		case "dark olive":
 			r += `D. Oli`;
-		<<case "extremely pale">>
+			break;
+		case "extremely pale":
 			r += `Ex. Pa`;
-		<<case "pure white">>
+			break;
+		case "pure white":
 			r += `P. Whi`;
-		<<case "tanned">>
+			break;
+		case "tanned":
 			r += `Tan`;
-		<<case "dark" "fair" "pale">>
+			break;
+		case "dark" "fair" "pale":
 			r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
-		<<default>>
+			break;
+		default:
 			r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
-	<</switch>>
-	<<else>>
+			break;
+	}
+	} else {
 		r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.`;
 	</span>
-<</if>>
-<<if V.abbreviateGenitalia == 1>>
-	<<if slave.dick > 0>>
+}
+if (V.abbreviateGenitalia == 1) {
+	if (slave.dick > 0) {
 		r += `<span class="pink">`;
-		<<if slave.balls == 0>>
+		if (slave.balls == 0) {
 			r += `Geld`;
-		<</if>>
-		<<if (slave.dick > 8) && (slave.balls > 8)>>
+		}
+		if ((slave.dick > 8) && (slave.balls > 8)) {
 			r += `Junk+++`;
-		<<elseif (slave.dick > 5) && (slave.balls > 5)>>
+		} else if ((slave.dick > 5) && (slave.balls > 5)) {
 			r += `Junk++`;
-		<<elseif (slave.dick > 4) && (slave.balls > 4)>>
+		} else if ((slave.dick > 4) && (slave.balls > 4)) {
 			r += `Junk+`;
-		<<elseif (slave.dick > 3) && (slave.balls > 3)>>
+		} else if ((slave.dick > 3) && (slave.balls > 3)) {
 			r += `Junk`;
-		<<elseif slave.dick > 8>>
+		} else if (slave.dick > 8) {
 			r += `Dick+++`;
-		<<elseif slave.dick > 5>>
+		} else if (slave.dick > 5) {
 			r += `Dick++`;
-		<<elseif slave.dick > 4>>
+		} else if (slave.dick > 4) {
 			r += `Dick+`;
-		<<elseif slave.dick > 3>>
+		} else if (slave.dick > 3) {
 			r += `Dick`;
-		<<elseif slave.balls > 10>>
+		} else if (slave.balls > 10) {
 			r += `Balls+++`;
-		<<elseif slave.balls > 5>>
+		} else if (slave.balls > 5) {
 			r += `Balls++`;
-		<<elseif slave.balls > 4>>
+		} else if (slave.balls > 4) {
 			r += `Balls+`;
-		<<elseif slave.balls > 3>>
+		} else if (slave.balls > 3) {
 			r += `Balls`;
-		<</if>>
+		}
 		r += `</span>`;
-	<</if>>
-	<<if slave.vagina == 0>>
+	}
+	if (slave.vagina == 0) {
 		r += `<span class="lime">VV</span>`;
-	<<elseif (slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")>>
+	} else if ((slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")) {
 		r += `<span class="pink">NBP</span>`;
-	<</if>>
-	<<if slave.anus == 0>>
+	}
+	if (slave.anus == 0) {
 	r += `	<span class="lime">AV</span>`;
-	<</if>>
+	}
 	r += `<span class="pink">`;
-	<<if (slave.vagina > 3) && (slave.anus > 3)>>
+	if ((slave.vagina > 3) && (slave.anus > 3)) {
 		r += `V++A++`;
-	<<elseif (slave.vagina > 2) && (slave.anus > 2)>>
+	} else if ((slave.vagina > 2) && (slave.anus > 2)) {
 		r += `V+A+`;
-	<<elseif slave.vagina > 3>>
+	} else if (slave.vagina > 3) {
 		r += `V++`;
-	<<elseif slave.vagina > 2>>
+	} else if (slave.vagina > 2) {
 		r += `V+`;
-	<<elseif slave.anus > 3>>
+	} else if (slave.anus > 3) {
 		r += `A++`;
-	<<elseif slave.anus > 2>>
+	} else if (slave.anus > 2) {
 		r += `A+`;
-	<</if>>
+	}
 	r += `</span>`;
-<<elseif V.abbreviateGenitalia == 2>>
-	<<if slave.dick > 0>>
+} else if (V.abbreviateGenitalia == 2) {
+	if (slave.dick > 0) {
 		r += `<span class="pink">`;
-		<<if slave.balls == 0>>
+		if (slave.balls == 0) {
 			r += `Gelded.`;
-		<</if>>
-		<<if (slave.dick > 8) && (slave.balls > 8)>>
+		}
+		if ((slave.dick > 8) && (slave.balls > 8)) {
 			r += `Hyper dick & balls.`;
-		<<elseif (slave.dick > 5) && (slave.balls > 5)>>
+		} else if ((slave.dick > 5) && (slave.balls > 5)) {
 			r += `Monster dick & balls.`;
-		<<elseif (slave.dick > 4) && (slave.balls > 4)>>
+		} else if ((slave.dick > 4) && (slave.balls > 4)) {
 			r += `Huge dick & balls.`;
-		<<elseif (slave.dick > 3) && (slave.balls > 3)>>
+		} else if ((slave.dick > 3) && (slave.balls > 3)) {
 			r += `Big dick & balls.`;
-		<<elseif slave.dick > 8>>
+		} else if (slave.dick > 8) {
 			r += `Hyper dong.`;
-		<<elseif slave.dick > 5>>
+		} else if (slave.dick > 5) {
 			r += `Monster dong.`;
-		<<elseif slave.dick > 4>>
+		} else if (slave.dick > 4) {
 			r += `Huge dick.`;
-		<<elseif slave.dick > 3>>
+		} else if (slave.dick > 3) {
 			r += `Big dick.`;
-		<<elseif slave.balls > 8>>
+		} else if (slave.balls > 8) {
 			r += `Hyper balls.`;
-		<<elseif slave.balls > 5>>
+		} else if (slave.balls > 5) {
 			r += `Monstrous balls.`;
-		<<elseif slave.balls > 4>>
+		} else if (slave.balls > 4) {
 			r += `Huge balls.`;
-		<<elseif slave.balls > 3>>
+		} else if (slave.balls > 3) {
 			r += `Big balls.`;
-		<</if>>
+		}
 		r += `</span>`;
-	<</if>>
-	<<if slave.vagina == 0>>
+	}
+	if (slave.vagina == 0) {
 		r += `<span class="lime">Virgin.</span>`;
-	<<elseif (slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")>>
+	} else if ((slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")) {
 		r += `<span class="pink">Naked, barefoot, and pregnant.</span>`;
-	<</if>>
-	<<if slave.anus == 0>>
+	}
+	if (slave.anus == 0) {
 		r += `<span class="lime">Anal virgin.</span>`;
-	<</if>>
+	}
 	r += `<span class="pink">`;
-	<<if (slave.vagina > 3) && (slave.anus > 3)>>
+	if ((slave.vagina > 3) && (slave.anus > 3)) {
 		r += `Blown out holes.`;
-	<<elseif (slave.vagina > 2) && (slave.anus > 2)>>
+	} else if ((slave.vagina > 2) && (slave.anus > 2)) {
 		r += `High mileage.`;
-	<<elseif slave.vagina > 3>>
+	} else if (slave.vagina > 3) {
 		r += `Cavernous pussy.`;
-	<<elseif slave.vagina > 2>>
+	} else if (slave.vagina > 2) {
 		r += `Loose pussy.`;
-	<<elseif slave.anus > 3>>
+	} else if (slave.anus > 3) {
 		r += `Permagaped anus.`;
-	<<elseif slave.anus > 2>>
+	} else if (slave.anus > 2) {
 		r += `Gaping anus.`;
-	<</if>>
+	}
 	r += `</span>`;
-<</if>>
+}
 
-<<if V.abbreviatePhysicals == 1>>
+if (V.abbreviatePhysicals == 1) {
 	r += `<span class="pink">`;
-	<<if V.showAgeDetail == 1>>
+	if (V.showAgeDetail == 1) {
 		r += slave.actualAge;
-	<<elseif slave.actualAge >= 40>>
+	} else if (slave.actualAge >= 40) {
 		r += `40s`;
-	<<elseif slave.actualAge >= 35>>
+	} else if (slave.actualAge >= 35) {
 		r += `Lt30s`;
-	<<elseif slave.actualAge >= 30>>
+	} else if (slave.actualAge >= 30) {
 		r += `Ea30s`;
-	<<elseif slave.actualAge >= 25>>
+	} else if (slave.actualAge >= 25) {
 		r += `Lt20s`;
-	<<elseif slave.actualAge >= 20>>
+	} else if (slave.actualAge >= 20) {
 		r += `Ea20s`;
-	<<elseif slave.actualAge >= 18>>
+	} else if (slave.actualAge >= 18) {
 		r += slave.actualAge
-	<</if>>
-	<<if slave.actualAge != slave.physicalAge>>
+	}
+	if (slave.actualAge != slave.physicalAge) {
 		r += `${slave.physicalAge}y-bdy`;
-	<</if>>
-	<<if slave.visualAge != slave.physicalAge>>
+	}
+	if (slave.visualAge != slave.physicalAge) {
 		r += `Lks${slave.visualAge}`;
-	<</if>>
-	<<if slave.face < -95>>
+	}
+	if (slave.face < -95) {
 		r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	<<elseif slave.face < -40>>
+	} else if (slave.face < -40) {
 		r += `<span class="red">Face--${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	<<elseif slave.face < -10>>
+	} else if (slave.face < -10) {
 		r += `<span class="red">Face-${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	<<elseif slave.face <= 10>>
+	} else if (slave.face <= 10) {
 		r += `Face${V.summaryStats? `[${slave.face}]` : ''}`;
-	<<elseif slave.face <= 40>>
+	} else if (slave.face <= 40) {
 		r += `<span class="pink">Face+${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	<<elseif slave.face <= 95>>
+	} else if (slave.face <= 95) {
 		r += `<span class="pink">Face++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	<<else>>
+	} else {
 		r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	<</if>>
-	<<if slave.eyes == -2>>
+	}
+	if (slave.eyes == -2) {
 		r += `<span class="red">Blind</span>`;
-	<<elseif ((slave.eyes == -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
+	} else if (((slave.eyes == -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))) {
 		r += `<span class="yellow">Sight-</span>`;
-	<</if>>
+	}
 
-	<<if slave.markings != "none">>
+	if (slave.markings != "none") {
 		r += `Markings`;
-	<</if>>
+	}
 
-	<<if slave.lips > 95>>
+	if (slave.lips > 95) {
 		r += `Facepussy`;
-	<<elseif slave.lips > 70>>
+	} else if (slave.lips > 70) {
 		r += `Lips+++${V.summaryStats? `[${slave.lips}]` : ''}`;
-	<<elseif slave.lips > 40>>
+	} else if (slave.lips > 40) {
 		r += `Lips++${V.summaryStats? `[${slave.lips}]` : ''}`;
-	<<elseif slave.lips > 20>>
+	} else if (slave.lips > 20) {
 		r += `Lips+${V.summaryStats? `[${slave.lips}]` : ''}`;
-	<<elseif slave.lips > 10>>
+	} else if (slave.lips > 10) {
 		r += `Lips${V.summaryStats? `[${slave.lips}]` : ''}`;
-	<<else>>
+	} else {
 		r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
-	<</if>>
-	<<if slave.teeth == "crooked">>
+	}
+	if (slave.teeth == "crooked") {
 		r += `<span class="yellow">Cr Teeth</span>`;
-	<<elseif slave.teeth == "cosmetic braces">>
+	} else if (slave.teeth == "cosmetic braces") {
 		r += `Cos Braces`;
-	<<elseif slave.teeth == "straightening braces">>
+	} else if (slave.teeth == "straightening braces") {
 		r += `Braces`;
-	<<elseif slave.teeth == "removable">>
+	} else if (slave.teeth == "removable") {
 		r += `Rem Teeth`;
-	<<elseif slave.teeth == "pointy">>
+	} else if (slave.teeth == "pointy") {
 		r += `Fangs`;
-	<</if>>
-	<<if slave.muscles > 95>>
+	}
+	if (slave.muscles > 95) {
 		r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	<<elseif slave.muscles > 50>>
+	} else if (slave.muscles > 50) {
 		r += `Musc+${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	<<elseif slave.muscles > 5>>
+	} else if (slave.muscles > 5) {
 		r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	<<elseif slave.muscles > -6>>
+	} else if (slave.muscles > -6) {
 		r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	<<elseif slave.muscles > -31>>
-		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+	} else if (slave.muscles > -31) {
+		if (V.arcologies[0].FSPhysicalIdealist == "unset") {
 			r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		<<else>>
+		} else {
 			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		<</if>>
-	<<elseif slave.muscles > -96>>
-		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+		}
+	} else if (slave.muscles > -96) {
+		if (V.arcologies[0].FSPhysicalIdealist == "unset") {
 			r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		<<else>>
+		} else {
 			r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		<</if>>
-	<<else>>
+		}
+	} else {
 		r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	<</if>>
-	<<if slave.amp != 0>>
-		<<if slave.amp == -1>>
+	}
+	if (slave.amp != 0) {
+		if (slave.amp == -1) {
 			r += `P-Limbs`;
-		<<elseif slave.amp == -2>>
+		} else if (slave.amp == -2) {
 			r += `Sex P-Limbs`;
-		<<elseif slave.amp == -3>>
+		} else if (slave.amp == -3) {
 			r += `Beauty P-Limbs`;
-		<<elseif slave.amp == -4>>
+		} else if (slave.amp == -4) {
 			r += `Combat P-Limbs`;
-		<<elseif slave.amp == -5>>
+		} else if (slave.amp == -5) {
 			r += `Cyber P-Limbs`;
-		<<else>>
+		} else {
 			r += `Amp`;
-		<</if>>
-	<</if>>
-	<<if !canWalk(slave)>>
+		}
+	}
+	if (!canWalk(slave)) {
 		r += `Immob`;
-	<</if>>
-	<<if slave.heels == 1>>
+	}
+	if (slave.heels == 1) {
 		r += `Heel`;
-	<</if>>
+	}
 	r += `</span>`;
-	<<if slave.voice == 0>>
+	if (slave.voice == 0) {
 		r += `<span class="pink">Mute</span>`;
-	<<else>>
-		<<if slave.accent == 3>>
+	} else {
+		if (slave.accent == 3) {
 			r += `<span class="red">Acc--</span>`;
-		<<elseif slave.accent == 2>>
+		} else if (slave.accent == 2) {
 			r += `Acc-`;
-		<<elseif slave.accent == 4>>
+		} else if (slave.accent == 4) {
 			r += `Acc--`;
-		<<elseif slave.accent == 1>>
+		} else if (slave.accent == 1) {
 			r += `<span class="pink">Acc</span>`;
-		<</if>>
-	<</if>>
+		}
+	}
 	r += `<span class="pink">`;
-	<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
+	if ((slave.boobs >= 12000) && (slave.butt > 9)) {
 		r += `T&A+++`;
-	<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
+	} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
 		r += `T&A++`;
-	<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
+	} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
 		r += `T&A+`;
-	<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
+	} else if ((slave.boobs > 800) && (slave.butt > 4)) {
 		r += `T&A`;
-	<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
+	} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
 		r += `Girlish`;
-	<<elseif slave.boobs >= 12000>>
+	} else if (slave.boobs >= 12000) {
 		r += `Boobs+++`;
-	<<elseif slave.boobs > 4000>>
+	} else if (slave.boobs > 4000) {
 		r += `Boobs++`;
-	<<elseif slave.boobs > 2000>>
+	} else if (slave.boobs > 2000) {
 		r += `Boobs+`;
-	<<elseif slave.boobs > 800>>
+	} else if (slave.boobs > 800) {
 		r += `Boobs`;
-	<<elseif slave.butt > 9>>
+	} else if (slave.butt > 9) {
 		r += `Ass+++`;
-	<<elseif slave.butt > 8>>
+	} else if (slave.butt > 8) {
 		r += `Ass++`;
-	<<elseif slave.butt > 6>>
+	} else if (slave.butt > 6) {
 		r += `Ass+`;
-	<<elseif slave.butt > 4>>
+	} else if (slave.butt > 4) {
 		r += `Ass`;
-	<</if>>
+	}
 	r += `</span>`;
 	r += `<span class="red">`;
-	<<if slave.hips < -1>>
-		<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	if (slave.hips < -1) {
+		if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 			r += `Disp+`;
-		<</if>>
-	<<elseif slave.hips < 0>>
-		<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+		}
+	} else if (slave.hips < 0) {
+		if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 			r += `Disp+`;
-		<</if>>
-	<<elseif slave.hips > 2>>
-		<<if slave.butt <= 8>>
+		}
+	} else if (slave.hips > 2) {
+		if (slave.butt <= 8) {
 			r += `Disp-`;
-		<</if>>
-	<<elseif slave.hips > 1>>
-		<<if slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+		}
+	} else if (slave.hips > 1) {
+		if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
 			r += `Disp-`;
-		<</if>>
-<<elseif slave.hips > 0>>
-	<<if slave.butt > 8>>
-		<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+		}
+} else if (slave.hips > 0) {
+	if (slave.butt > 8) {
+		if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 			r += `Disp+`;
-		<</if>>
-	<<elseif slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+		}
+	} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
 		r += `Disp-`;
-	<</if>>
-	<<else>>
-		<<if slave.butt > 6>>
-			<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	}
+	} else {
+		if (slave.butt > 6) {
+			if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 				r += `Disp+`;
-			<</if>>
-		<<elseif slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))>>
+			}
+		} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
 			r += `Disp-`;
-		<</if>>
-	<</if>>
+		}
+	}
 	r += `</span>`;
-	<<if slave.waist > 95>>
+	if (slave.waist > 95) {
 		r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]`}</span>`;
-	<<elseif slave.waist > 40>>
+	} else if (slave.waist > 40) {
 		r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`}</span>`;
-	<<elseif slave.waist > 10>>
+	} else if (slave.waist > 10) {
 		r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]`}</span>`;
-	<<elseif slave.waist >= -10>>
+	} else if (slave.waist >= -10) {
 		r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
-	<<elseif slave.waist >= -40>>
+	} else if (slave.waist >= -40) {
 		r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]`}</span>`;
-	<<elseif slave.waist >= -95>>
+	} else if (slave.waist >= -95) {
 		r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]`}</span>`;
-	<<else>>
+	} else {
 		r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`}</span>`;
-	<</if>>
+	}
 	r += `<span class="pink">`;
-	<<if (slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)>>
+	if ((slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)) {
 		r += `Natr`;
-	<<else>>
+	} else {
 		r += `Impl`;
-	<</if>>
-	<<if slave.lactation == 1>>
+	}
+	if (slave.lactation == 1) {
 		r += `Lact`;
-	<<elseif slave.lactation == 2>>
+	} else if (slave.lactation == 2) {
 		r += `Lact++`;
-	<</if>>
-	<<run modScore(slave)>>
-	<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
+	}
+	modScore(slave);
+	if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
 		true
-	<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
+	} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
 		r += `Mods++`;
-	<<elseif V.modScore > 7>>
+	} else if (V.modScore > 7) {
 		r += `Mods+`;
-	<<else>>
+	} else {
 		r += `Mods`;
-	<</if>>
-	<<if slave.brand != 0>>
+	}
+	if (slave.brand != 0) {
 		r += `Br`;
-	<</if>>
+	}
 	r += `</span>`;
-<<elseif V.abbreviatePhysicals == 2>>
+} else if (V.abbreviatePhysicals == 2) {
 	r += `<span class="pink">`;
-	<<if V.showAgeDetail == 1>>
+	if (V.showAgeDetail == 1) {
 		r += `Age ${slave.actualAge}.`;
-	<<elseif slave.actualAge >= 40>>
+	} else if (slave.actualAge >= 40) {
 		r += `Forties.`;
-	<<elseif slave.actualAge >= 35>>
+	} else if (slave.actualAge >= 35) {
 		r += `Late thirties.`;
-	<<elseif slave.actualAge >= 30>>
+	} else if (slave.actualAge >= 30) {
 		r += `Early thirties.`;
-	<<elseif slave.actualAge >= 25>>
+	} else if (slave.actualAge >= 25) {
 		r += `Late twenties.`;
-	<<elseif slave.actualAge >= 20>>
+	} else if (slave.actualAge >= 20) {
 		r += `Early twenties.`;
-	<<elseif slave.actualAge >= 19>>
+	} else if (slave.actualAge >= 19) {
 		r += `Nineteen.`;
-	<<elseif slave.actualAge >= 18>>
+	} else if (slave.actualAge >= 18) {
 		r += `Eighteen.`;
-	<<else>>
+	} else {
 		r += `Underage.`;
-	<</if>>
+	}
 	/*
 	**  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
 	**  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
 	*/
-	<<if ((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))>>
-		<<if slave.actualAge != slave.physicalAge>>
+	if (((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))) {
+		if (slave.actualAge != slave.physicalAge) {
 			r += `${slave.physicalAge} year old body.`;
-		<</if>>
-		<<if slave.visualAge != slave.physicalAge>>
+		}
+		if (slave.visualAge != slave.physicalAge) {
 			r += `Looks ${slave.visualAge}.`;
-		<</if>>
-	<<else>>
+		}
+	} else {
 		/*
 		**  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
 		**  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
@@ -1589,1838 +1920,2135 @@ r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : '
 		**  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
 		*/
 		r += `Appears to have a ${slave.visualAge} year old body.`;
-	<</if>>
-	<<if slave.inducedNCS == 1>>
+	}
+	if (slave.inducedNCS == 1) {
 		r += `(<span class="orange">NCS</span>)`;
-	<</if>>
-	<<if slave.face < -95>>
+	}
+	if (slave.face < -95) {
 		r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	<<elseif slave.face < -40>>
+	} else if (slave.face < -40) {
 		r += `<span class="red">Ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	<<elseif slave.face < -10>>
+	} else if (slave.face < -10) {
 		r += `<span class="red">Unattractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	<<elseif slave.face <= 10>>
+	} else if (slave.face <= 10) {
 		r += `Average${V.summaryStats? `[${slave.face}]`: ''}`;
-	<<elseif slave.face <= 40>>
+	} else if (slave.face <= 40) {
 		r += `<span class="pink">Attractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	<<elseif slave.face <= 95>>
+	} else if (slave.face <= 95) {
 		r += `<span class="pink">Beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	<<else>>
+	} else {
 		r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	<</if>>
+	}
 	r += `${slave.faceShape} face.`;
-	<<if slave.eyes <= -2>>
+	if (slave.eyes <= -2) {
 		r += `<span class="red">Blind.</span>`;
-	<<elseif ((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))>>
+	} else if (((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))) {
 		r += `<span class="yellow">Nearsighted.</span>`;
-	<</if>>
-	<<if slave.lips > 95>>
+	}
+	if (slave.lips > 95) {
 		r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	<<elseif slave.lips > 70>>
+	} else if (slave.lips > 70) {
 		r += `Huge lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	<<elseif slave.lips > 40>>
+	} else if (slave.lips > 40) {
 		r += `Big lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	<<elseif slave.lips > 20>>
+	} else if (slave.lips > 20) {
 		r += `Pretty lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	<<elseif slave.lips > 10>>
+	} else if (slave.lips > 10) {
 		r += `Normal lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	<<else>>
+	} else {
 		r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
-	<</if>>
-	<<if slave.teeth == "crooked">>
+	}
+	if (slave.teeth == "crooked") {
 		r += `<span class="yellow">Crooked teeth.</span>`;
-	<<elseif slave.teeth == "cosmetic braces">>
+	} else if (slave.teeth == "cosmetic braces") {
 		r += `Cosmetic braces.`;
-	<<elseif slave.teeth == "straightening braces">>
+	} else if (slave.teeth == "straightening braces") {
 		r += `Braces.`;
-	<<elseif slave.teeth == "removable">>
+	} else if (slave.teeth == "removable") {
 		r += `Removable teeth.`;
-	<<elseif slave.teeth == "pointy">>
+	} else if (slave.teeth == "pointy") {
 		r += `Sharp fangs.`;
-	<</if>>
-	<<if slave.muscles > 95>>
+	}
+	if (slave.muscles > 95) {
 		r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
-	<<elseif slave.muscles > 50>>
+	} else if (slave.muscles > 50) {
 		r += `Muscular${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-	<<elseif slave.muscles > 5>>
+	} else if (slave.muscles > 5) {
 		r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-	<<elseif slave.muscles > -6>>
+	} else if (slave.muscles > -6) {
 		r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-	<<elseif slave.muscles > -31>>
-		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+	} else if (slave.muscles > -31) {
+		if (V.arcologies[0].FSPhysicalIdealist == "unset") {
 			r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
-		<<else>>
+		} else {
 			r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-		<</if>>
-	<<elseif slave.muscles > -96>>
-		<<if V.arcologies[0].FSPhysicalIdealist == "unset">>
+		}
+	} else if (slave.muscles > -96) {
+		if (V.arcologies[0].FSPhysicalIdealist == "unset") {
 			r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
-		<<else>>
+		} else {
 			r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-		<</if>>
-	<<else>>
+		}
+	} else {
 		r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
-	<</if>>
-	<<if slave.amp != 0>>
-		<<if slave.amp == -1>>
+	}
+	if (slave.amp != 0) {
+		if (slave.amp == -1) {
 			r += `Prosthetic limbs.`;
-		<<elseif slave.amp == -2>>
+		} else if (slave.amp == -2) {
 			r += `Sexy prosthetic limbs.`;
-		<<elseif slave.amp == -3>>
+		} else if (slave.amp == -3) {
 			r += `Beautiful prosthetic limbs.`;
-		<<elseif slave.amp == -4>>
+		} else if (slave.amp == -4) {
 			r += `Deadly prosthetic limbs.`;
-		<<elseif slave.amp == -5>>
+		} else if (slave.amp == -5) {
 			r += `Cyber prosthetic limbs.`;
-		<<else>>
+		} else {
 			r += `Amputee.`;
-		<</if>>
-	<</if>>
-	<<if !canWalk(slave)>>
+		}
+	}
+	if (!canWalk(slave)) {
 		r += `Immobile.`;
-	<</if>>
-	<<if slave.heels == 1>>
+	}
+	if (slave.heels == 1) {
 		r += `Heeled.`;
-	<</if>>
+	}
 	r += `</span>`;
-	<<if slave.voice == 0>>
+	if (slave.voice == 0) {
 		r += `<span class="pink">Mute.</span>`;
-	<<else>>
-		<<if slave.accent == 3>>
+	} else {
+		if (slave.accent == 3) {
 			r += `<span class="red">Bad accent.</span>`;
-		<<elseif slave.accent == 4>>
+		} else if (slave.accent == 4) {
 			r += `<span class="red">No language skills.</span>`;
-		<<elseif slave.accent == 2>>
+		} else if (slave.accent == 2) {
 			r += `Accent.`;
-		<<elseif slave.accent == 1>>
+		} else if (slave.accent == 1) {
 			r += `<span class="pink">Cute accent.</span>`;
-		<</if>>
-	<</if>>
+		}
+	}
 	r += `<span class="pink">`;
-	<<if (slave.boobs >= 12000) && (slave.butt > 9)>>
+	if ((slave.boobs >= 12000) && (slave.butt > 9)) {
 		r += `Hyper T&A.`;
-	<<elseif (slave.boobs > 4000) && (slave.butt > 8)>>
+	} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
 		r += `Enormous T&A.`;
-	<<elseif (slave.boobs > 2000) && (slave.butt > 6)>>
+	} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
 		r += `Huge T&A.`;
-	<<elseif (slave.boobs > 800) && (slave.butt > 4)>>
+	} else if ((slave.boobs > 800) && (slave.butt > 4)) {
 		r += `Big T&A.`;
-	<<elseif (slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)>>
+	} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
 		r += `Girlish figure.`;
-	<<elseif slave.boobs >= 12000>>
+	} else if (slave.boobs >= 12000) {
 		r += `Immobilizing tits.`;
-	<<elseif slave.boobs > 4000>>
+	} else if (slave.boobs > 4000) {
 		r += `Monstrous tits.`;
-	<<elseif slave.boobs > 2000>>
+	} else if (slave.boobs > 2000) {
 		r += `Huge tits.`;
-	<<elseif slave.boobs > 800>>
+	} else if (slave.boobs > 800) {
 		r += `Big tits.`;
-	<<elseif slave.butt > 9>>
+	} else if (slave.butt > 9) {
 		r += `Hyper ass.`;
-	<<elseif slave.butt > 8>>
+	} else if (slave.butt > 8) {
 		r += `Titanic ass.`;
-	<<elseif slave.butt > 6>>
+	} else if (slave.butt > 6) {
 		r += `Huge ass.`;
-	<<elseif slave.butt > 4>>
+	} else if (slave.butt > 4) {
 		r += `Big ass.`;
-	<</if>>
+	}
 	r == `</span>`;
 	<span class="red">
-	<<if slave.hips < -1>>
-		<<if slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+	if (slave.hips < -1) {
+		if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 			r += `Disproportionately big butt.`;
-		<</if>>
-	<<elseif slave.hips < 0>>
-		<<if slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+		}
+	} else if (slave.hips < 0) {
+		if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 			r += `Disproportionately big butt.`;
-		<</if>>
-	<<elseif slave.hips > 2>>
-		<<if slave.butt <= 8>>
+		}
+	} else if (slave.hips > 2) {
+		if (slave.butt <= 8) {
 			r += `Disproportionately small butt.`;
-		<</if>>
-	<<elseif slave.hips > 1>>
-		<<if slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+		}
+	} else if (slave.hips > 1) {
+		if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
 			r += `Disproportionately small butt.`;
-		<</if>>
-	<<elseif slave.hips > 0>>
-		<<if slave.butt > 8>>
-			<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+		}
+	} else if (slave.hips > 0) {
+		if (slave.butt > 8) {
+			if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 				r += `Disproportionately big butt.`;
-			<</if>>
-		<<elseif slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+			}
+		} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
 			r += `Disproportionately small butt.`;
-		<</if>>
-	<<else>>
-		<<if slave.butt > 6>>
-			<<if (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")>>
+		}
+	} else {
+		if (slave.butt > 6) {
+			if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 				r += `Disproportionately big butt.`;
-			<</if>>
-		<<elseif slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))>>
+			}
+		} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
 			r += `Disproportionately small butt.`;
-		<</if>>
-	<</if>>
+		}
+	}
 	r += `</span>`;
-	<<if slave.waist > 95>>
+	if (slave.waist > 95) {
 		r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	<<elseif slave.waist > 40>>
+	} else if (slave.waist > 40) {
 		r += `<span class="red">Ugly waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	<<elseif slave.waist > 10>>
+	} else if (slave.waist > 10) {
 		r += `<span class="red">Unattractive waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	<<elseif slave.waist >= -10>>
+	} else if (slave.waist >= -10) {
 		r += `Average waist${V.summaryStats? `[${slave.waist}]`: ''}.`;
-	<<elseif slave.waist >= -40>>
+	} else if (slave.waist >= -40) {
 		r += `<span class="pink">Feminine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	<<elseif slave.waist >= -95>>
+	} else if (slave.waist >= -95) {
 		r += `<span class="pink">Hourglass waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	<<else>>
+	} else {
 		r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	<</if>>
+	}
 	r += `<span class="pink">`;
-	<<if (slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)>>
+	if ((slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)) {
 		r += `Implants.`;
-	<<elseif (slave.faceImplant >= 30) || (slave.waist < -95)>>
+	} else if ((slave.faceImplant >= 30) || (slave.waist < -95)) {
 		r += `Surgery enhanced.`;
-	<<else>>
+	} else {
 		r += `All natural.`;
-	<</if>>
-	<<if slave.lactation == 1>>
+	}
+	if (slave.lactation == 1) {
 		r += `Lactating naturally.`;
-	<<elseif slave.lactation == 2>>
+	} else if (slave.lactation == 2) {
 		r += `Heavy lactation.`;
-	<</if>>
-	<<run modScore(slave)>>
-	<<if slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2>>
+	}
+	modScore(slave);
+	if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
 		true
-	<<elseif V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)>>
+	} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
 		r += `Extensive body mods.`;
-	<<elseif V.modScore > 7>>
+	} else if (V.modScore > 7) {
 		r += `Noticeable body mods.`;
-	<<else>>
+	} else {
 		r += `Light body mods.`;
-	<</if>>
-	<<if slave.brand != 0>>
+	}
+	if (slave.brand != 0) {
 		r += `Branded.`;
-	<</if>>
+	}
 	r += `</span>`;
-<</if>>
+}
 
 r += `<br>`;
-<<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>
+if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
 	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-<</if>>
+}
 
-<<if V.abbreviateSkills == 1>>
-	<<if slave.fetish == "mindbroken">>
+if (V.abbreviateSkills == 1) {
+	if (slave.fetish == "mindbroken") {
 		true
-	<<elseif slave.intelligenceImplant == 1>>
-		<<switch slave.intelligence>>
-		<<case 3>>
+	} else if (slave.intelligenceImplant == 1) {
+		switch (slave.intelligence) {
+		case 3:
 			r += `<span class="deepskyblue">I+++(e)</span>`;
-		<<case 2>>
+			break
+		case 2:
 			r += `<span class="deepskyblue">I++(e)</span>`;
-		<<case 1>>
+			break;
+		case 1:
 			r += `<span class="deepskyblue">I+(e)</span>`;
-		<<case -1>>
+			break;
+		case -1:
 			r += `<span class="orangered">I-(e)</span>`;
-		<<case -2>>
+			break;
+		case -2:
 			r += `<span class="orangered">I--(e)</span>`;
-		<<case -3>>
+			break;
+		case -3:
 			r += `<span class="orangered">I---(e)</span>`;
-		<<default>>
+			break;
+		default:
 			r += `I(e)`;
-		<</switch>>
-	<<else>>
-		<<switch slave.intelligence>>
-			<<case 3>>
+			break;
+		}
+	} else {
+		switch (slave.intelligence) {
+			case 3:
 				r += `<span class="deepskyblue">I+++</span>`;
-			<<case 2>>
+				break;
+			case 2:
 				r += `<span class="deepskyblue">I++</span>`;
-			<<case 1>>
+				break;
+			case 1:
 				r += `<span class="deepskyblue">I+</span>`;
-			<<case -1>>
+				break;
+			case -1:
 				r += `<span class="orangered">I-</span>`;
-			<<case -2>>
+				break;
+			case -2:
 				r += `<span class="orangered">I--</span>`;
-			<<case -3>>
+				break;
+			case -3:
 				r += `<span class="orangered">I---</span>`;
-			<<default>>
+				break;
+			default:
 				r += `I`;
-		<</switch>>
-	<</if>>
+				break;
+		}
+	}
 
-	<<set _SSkills = slave.analSkill+slave.oralSkill>>
-	<span class="aquamarine">
-	<<if ((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))>>
+	_SSkills = slave.analSkill+slave.oralSkill;
+	r += `<span class="aquamarine">`;
+	if (((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
 		r += `MSS`;
-	<<else>>
-		<<set _SSkills += slave.vaginalSkill>>
-		<<set _SSkills = Math.trunc(_SSkills)>>
-		<<if _SSkills > 180>>
+	} else {
+		_SSkills += slave.vaginalSkill;
+		_SSkills = Math.trunc(_SSkills);
+		if (_SSkills > 180) {
 			r += `S++`;
-		<<elseif (_SSkills > 120) && (slave.vagina < 0)>>
+		} else if ((_SSkills > 120) && (slave.vagina < 0)) {
 			r += `Sh++`;
-		<<elseif _SSkills > 90>>
+		} else if (_SSkills > 90) {
 			r += `S+`;
-		<<elseif _SSkills > 30>>
+		} else if (_SSkills > 30) {
 			r += `S`;
-		<<else>>
+		} else {
 			r += `S-`;
-		<</if>>
-		<<if V.summaryStats>>
+		}
+		if (V.summaryStats) {
 			r += `[${_SSkills}]`;
-		<</if>>
-		<<if slave.whoreSkill >= 100>>
+		}
+		if (slave.whoreSkill >= 100) {
 			r += `W+++`;
-		<<elseif slave.whoreSkill > 60>>
+		} else if (slave.whoreSkill > 60) {
 			r += `W++`;
-		<<elseif slave.whoreSkill > 30>>
+		} else if (slave.whoreSkill > 30) {
 			r += `W+`;
-		<<elseif slave.whoreSkill > 10>>
+		} else if (slave.whoreSkill > 10) {
 			r += `W`;
-		<</if>>
-		<<if slave.whoreSkill > 10>>
-			<<if V.summaryStats>>
+		}
+		if (slave.whoreSkill > 10) {
+			if (V.summaryStats) {
 				r += `[${slave.whoreSkill}]`;
-			<</if>>
-		<</if>>
-		<<if slave.entertainSkill >= 100>>
+			}
+		}
+		if (slave.entertainSkill >= 100) {
 			r += `E+++`;
-		<<elseif slave.entertainSkill > 60>>
+		} else if (slave.entertainSkill > 60) {
 			r += `E++`;
-		<<elseif slave.entertainSkill > 30>>
+		} else if (slave.entertainSkill > 30) {
 			r += `E+`;
-		<<elseif slave.entertainSkill > 10>>
+		} else if (slave.entertainSkill > 10) {
 			r += `E`;
-		<</if>>
-		<<if slave.entertainSkill > 10>>
-			<<if V.summaryStats>>
+		}
+		if (slave.entertainSkill > 10) {
+			if (V.summaryStats) {
 				r += `[${slave.entertainSkill}]`;
-			<</if>>
-		<</if>>
-	<</if>>
-	<<if slave.combatSkill > 0>>
+			}
+		}
+	}
+	if (slave.combatSkill > 0) {
 		r += `C`;
-	<</if>>
+	}
 	r += `</span>`;
-	<<if slave.prestige > 0>>
+	if (slave.prestige > 0) {
 		r += `<span class="green">`;
-		<<if slave.prestige > 2>>
+		if (slave.prestige > 2) {
 			r += `Prest++`;
-		<<elseif slave.prestige == 2>>
+		} else if (slave.prestige == 2) {
 			r += `Prest+`;
-		<<elseif slave.prestige == 1>>
+		} else if (slave.prestige == 1) {
 			r += `Prest`;
-		<</if>>
+		}
 		r += `</span>`;
-	<</if>>
-<<elseif V.abbreviateSkills == 2>>
-	<<if slave.fetish == "mindbroken">>
+	}
+} else if (V.abbreviateSkills == 2) {
+	if (slave.fetish == "mindbroken") {
 		true
-	<<elseif slave.intelligenceImplant == 1>>
-		<<switch slave.intelligence>>
-			<<case 3>>
+	} else if (slave.intelligenceImplant == 1) {
+		switch (slave.intelligence) {
+			case 3:
 				r += `<span class="deepskyblue">Brilliant, educated.</span>`;
-			<<case 2>>
+				break;
+			case 2:
 				r += `<span class="deepskyblue">Very smart, educated.</span>`;
-			<<case 1>>
+				break;
+			case 1:
 				r += `<span class="deepskyblue">Smart, educated.</span>`;
-			<<case -1>>
+				break;
+			case -1:
 				r += `<span class="orangered">Slow, educated.</span>`;
-			<<case -2>>
+				break;
+			case -2:
 				r += `<span class="orangered">Very slow, educated.</span>`;
-			<<case -3>>
+				break;
+			case -3:
 				r += `<span class="orangered">Moronic, educated.</span>`;
-			<<default>>
+				break;
+			default:
 				r += `Average intelligence, educated.`;
-			<</switch>>
-	<<else>>
-		<<switch slave.intelligence>>
-			<<case 3>>
+				break;
+			}
+	} else {
+		switch (slave.intelligence) {
+			case 3:
 				r += `<span class="deepskyblue">Brilliant.</span>`;
-			<<case 2>>
+				break;
+			case 2:
 				r += `<span class="deepskyblue">Very smart.</span>`;
-			<<case 1>>
+				break;
+			case 1:
 				r += `<span class="deepskyblue">Smart.</span>`;
-			<<case -1>>
+				break;
+			case -1:
 				r += `<span class="orangered">Slow.</span>`;
-			<<case -2>>
+				break;
+			case -2:
 				r += `<span class="orangered">Very slow.</span>`;
-			<<case -3>>
+				break;
+			case -3:
 				r += `<span class="orangered">Moronic.</span>`;
-			<<default>>
+				break;
+			default:
 				r += `Average intelligence.`;
-		<</switch>>
-	<</if>>
-	<<set _SSkills = (slave.analSkill+slave.oralSkill)>>
+				break;
+		}
+	}
+	_SSkills = (slave.analSkill+slave.oralSkill);
 	r += `<span class="aquamarine">`;
-	<<if ((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))>>
+	if (((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
 		r += `Masterful Sex Slave.`;
-	<<else>>
-		<<set _SSkills += slave.vaginalSkill>>
-		<<if _SSkills > 180>>
+	} else {
+		_SSkills += slave.vaginalSkill;
+		if (_SSkills > 180) {
 			r += `Sex master${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
-		<<elseif (_SSkills > 120) && (slave.vagina < 0)>>
+		} else if ((_SSkills > 120) && (slave.vagina < 0)) {
 			r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
-		<<elseif _SSkills > 90>>
+		} else if (_SSkills > 90) {
 			r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}].`: ''}.`;
-		<<elseif _SSkills > 30>>
+		} else if (_SSkills > 30) {
 			r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]`. : ''}.`;
-		<<else>>
+		} else {
 			r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]`. : ''}.`;
-		<</if>>
-		<<if slave.whoreSkill >= 100>>
+		}
+		if (slave.whoreSkill >= 100) {
 			r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
-		<<elseif slave.whoreSkill >= 60>>
+		} else if (slave.whoreSkill >= 60) {
 			r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
-		<<elseif slave.whoreSkill >= 30>>
+		} else if (slave.whoreSkill >= 30) {
 			r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
-		<<elseif slave.whoreSkill >= 10>>
+		} else if (slave.whoreSkill >= 10) {
 			r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
-		<</if>>
-		<<if slave.entertainSkill >= 100>>
+		}
+		if (slave.entertainSkill >= 100) {
 			r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
-		<<elseif slave.entertainSkill >= 60>>
+		} else if (slave.entertainSkill >= 60) {
 			r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
-		<<elseif slave.entertainSkill >= 30>>
+		} else if (slave.entertainSkill >= 30) {
 			r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
-		<<elseif slave.entertainSkill >= 10>>
+		} else if (slave.entertainSkill >= 10) {
 			r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
-		<</if>>
-	<</if>>
-	<<if slave.combatSkill > 0>>
+		}
+	}
+	if (slave.combatSkill > 0) {
 		r += `Trained fighter.`;
-	<</if>>
+	}
 	r += `</span>`;
-	<<if slave.prestige > 0>>
+	if (slave.prestige > 0) {
 		r += `<span class="green">`;
-		<<if slave.prestige > 2>>
+		if (slave.prestige > 2) {
 			r += `Extremely prestigious.`;
-		<<elseif slave.prestige == 2>>
+		} else if (slave.prestige == 2) {
 			r += `Very prestigious.`;
-		<<elseif slave.prestige == 1>>
+		} else if (slave.prestige == 1) {
 			r += `Prestigious.`;
-		<</if>>
+		}
 		r += `</span>`;
-	<</if>>
-<</if>>
+	}
+}
 
-<<if V.abbreviateMental == 1>>
-	<<if slave.fetish != "mindbroken">>
-	<<if slave.fetishKnown == 1>>
+if (V.abbreviateMental == 1) {
+	if (slave.fetish != "mindbroken") {
+	if (slave.fetishKnown == 1) {
 		r += `<span class="lightcoral">`;
-		<<switch slave.fetish>>
-			<<case "submissive">>
-				<<if slave.fetishStrength > 95>>
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
 					r += `Sub++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Sub+`;
-				<<else>>
+				} else {
 					r += `Sub`;
-				<</if>>
-			<<case "cumslut">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
 					r += `Oral++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Oral+`;
-				<<else>>
+				} else {
 					r += `Oral`;
-				<</if>>
-			<<case "humiliation">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
 					r += `Humil++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Humil+`;
-				<<else>>
+				} else {
 					r += `Humil`;
-				<</if>>
-			<<case "buttslut">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
 					r += `Anal++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Anal+`;
-				<<else>>
+				} else {
 					r += `Anal`;
-				<</if>>
-			<<case "boobs">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
 					r += `Boobs++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Boobs+`;
-				<<else>>
+				} else {
 					r += `Boobs`;
-				<</if>>
-			<<case "sadist">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
 					r += `Sadist++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Sadist+`;
-				<<else>>
+				} else {
 					r += `Sadist`;
-				<</if>>
-			<<case "masochist">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
 					r += `Pain++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Pain+`;
-				<<else>>
+				} else {
 					r += `Pain`;
-				<</if>>
-			<<case "dom">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
 					r += `Dom++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Dom+`;
-				<<else>>
+				} else {
 					r += `Dom`;
-				<</if>>
-			<<case "pregnancy">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
 					r += `Preg++`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Preg+`;
-				<<else>>
+				} else {
 					r += `Preg`;
-				<</if>>
-			<<default>>
+				}
+				break;
+			default:
 				r += `Vanilla`;
-		<</switch>>
-		<<if V.summaryStats>>
+				break;
+		}
+		if (V.summaryStats) {
 			r += `[${slave.fetishStrength}]`;
-		<</if>>
+		}
 		r += `</span>`;
-	<</if>>
-	<<if slave.attrKnown == 1>>
-		<<if slave.attrXY <= 5>>
+	}
+	if (slave.attrKnown == 1) {
+		if (slave.attrXY <= 5) {
 			r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		<<elseif slave.attrXY <= 15>>
+		} else if (slave.attrXY <= 15) {
 			r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		<<elseif slave.attrXY <= 35>>
+		} else if (slave.attrXY <= 35) {
 			r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		<<elseif slave.attrXY <= 65>>
+		} else if (slave.attrXY <= 65) {
 			r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
-		<<elseif slave.attrXY <= 85>>
+		} else if (slave.attrXY <= 85) {
 			r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		<<elseif slave.attrXY <= 95>>
+		} else if (slave.attrXY <= 95) {
 			r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		<<elseif slave.attrXX > 95>>
-			<<if slave.energy <= 95>>
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
 				r += `<span class="green">Omni!</span>`;
-			<<else>>
+			} else {
 				r += `<span class="green">Omni+Nympho!!</span>`;
-			<</if>>
-		<<else>>
-			<span class="green">XY+++<<if V.summaryStats>>[slave.attrXY}]`: ''}</span>`;
-		<</if>>
-		<<if slave.attrXX <= 5>>
+			}
+		} else {
+			<span class="green">XY+++if (V.summaryStats) {[slave.attrXY}]`: ''}</span>`;
+		}
+		if (slave.attrXX <= 5) {
 			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		<<elseif slave.attrXX <= 15>>
+		} else if (slave.attrXX <= 15) {
 			r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		<<elseif slave.attrXX <= 35>>
+		} else if (slave.attrXX <= 35) {
 			r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		<<elseif slave.attrXX <= 65>>
+		} else if (slave.attrXX <= 65) {
 			r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
-		<<elseif slave.attrXX <= 85>>
+		} else if (slave.attrXX <= 85) {
 			r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		<<elseif slave.attrXX <= 95>>
+		} else if (slave.attrXX <= 95) {
 			r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		<<elseif slave.attrXY <= 95>>
+		} else if (slave.attrXY <= 95) {
 			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		<</if>>
-		<<if slave.energy > 95>>
-			<<if (slave.attrXY <= 95) || (slave.attrXX <= 95)>>
+		}
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
 				r += `<span class="green">Nympho!</span>`;
-			<</if>>
-		<<elseif slave.energy > 80>>
+			}
+		} else if (slave.energy > 80) {
 			r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		<<elseif slave.energy > 60>>
+		} else if (slave.energy > 60) {
 			r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		<<elseif slave.energy > 40>>
+		} else if (slave.energy > 40) {
 			r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		<<elseif slave.energy > 20>>
+		} else if (slave.energy > 20) {
 			r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		<<else>>
+		} else {
 			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-			<</if>>
-		<</if>>
-	<</if>>
-	<<if slave.clitPiercing == 3>>
-		<<if slave.fetishKnown == 1>>
-			<<if slave.clitSetting == "off">>
+			}
+		}
+	}
+	if (slave.clitPiercing == 3) {
+		if (slave.fetishKnown == 1) {
+			if (slave.clitSetting == "off") {
 				r += `SP-`;
-			<<elseif ((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")>>
+			} else if (((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")) {
 				r += `SP:sub`;
-			<<elseif ((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")>>
+			} else if (((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")) {
 				r += `SP:oral`;
-			<<elseif ((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")>>
+			} else if (((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")) {
 				r += `SP:humil`;
-			<<elseif ((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")>>
+			} else if (((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")) {
 				r += `SP:anal`;
-			<<elseif ((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")>>
+			} else if (((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")) {
 				r += `SP:boobs`;
-			<<elseif ((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")>>
+			} else if (((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")) {
 				r += `SP:sade`;
-			<<elseif ((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")>>
+			} else if (((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")) {
 				r += `SP:pain`;
-			<<elseif ((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")>>
+			} else if (((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")) {
 				r += `SP:dom`;
-			<<elseif ((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")>>
+			} else if (((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")) {
 				r += `SP:preg`;
-			<<elseif ((slave.fetish != "none") && (slave.clitSetting == "vanilla"))>>
+			} else if (((slave.fetish != "none") && (slave.clitSetting == "vanilla"))) {
 				r += `SP:vanilla`;
-			<<elseif (slave.energy <= 95) && (slave.clitSetting == "all")>>
+			} else if ((slave.energy <= 95) && (slave.clitSetting == "all")) {
 				r += `SP:all`;
-			<<elseif (slave.energy > 5) && (slave.clitSetting == "none")>>
+			} else if ((slave.energy > 5) && (slave.clitSetting == "none")) {
 				r += `SP:none`;
-			<<elseif !["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)>>
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
 				r += `SP:monitoring`;
-			<</if>>
-		<<else>>
-			<<switch slave.clitSetting>>
-				<<case "off">>
+			}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
 					r += `SP-`;
-				<<case "submissive">>
+					break;
+				case "submissive":
 					r += `SP:sub`;
-				<<case "lesbian">>
+					break;
+				case "lesbian":
 					r += `SP:les`;
-				<<case "oral">>
+					break;
+				case "oral":
 					r += `SP:oral`;
-				<<case "humiliation">>
+					break;
+				case "humiliation":
 					r += `SP:humil`;
-				<<case "anal">>
+					break;
+				case "anal":
 					r += `SP:anal`;
-				<<case "boobs">>
+					break;
+				case "boobs":
 					r += `SP:boobs`;
-				<<case "sadist">>
+					break;
+				case "sadist":
 					r += `SP:sade`;
-				<<case "masochist">>
+					break;
+				case "masochist":
 					r += `SP:pain`;
-				<<case "dom">>
+					break;
+				case "dom":
 					r += `SP:dom`;
-				<<case "pregnancy">>
+					break;
+				case "pregnancy":
 					r += `SP:pregnancy`;
-				<<case "vanilla">>
+					break;
+				case "vanilla":
 					r += `SP:vanilla`;
-				<<case "all">>
+					break;
+				case "all":
 					r += `SP:all`;
-				<<case "none">>
+					break;
+				case "none":
 					r += `SP:none`;
-			<</switch>>
-		<</if>>
-		<<if slave.attrKnown == 1>>
-			<<if slave.clitSetting == "women">>
-				<<if slave.attrXX < 95>>
+					break;
+			}
+		}
+		if (slave.attrKnown == 1) {
+			if (slave.clitSetting == "women") {
+				if (slave.attrXX < 95) {
 					r += `SP:women`;
-				<<else>>
+				} else {
 					r += `SP:monitoring`;
-				<</if>>
-			<<elseif slave.clitSetting == "men">>
-				<<if slave.attrXY < 95>>
+				}
+			} else if (slave.clitSetting == "men") {
+				if (slave.attrXY < 95) {
 					r += `SP:men`;
-				<<else>>
+				} else {
 					r += `SP:monitoring`;
-				<</if>>
-			<<elseif slave.clitSetting == "anti-women">>
-				<<if slave.attrXX > 0>>
+				}
+			} else if (slave.clitSetting == "anti-women") {
+				if (slave.attrXX > 0) {
 					r += `SP:anti-women`;
-				<<else>>
+				} else {
 					r += `SP:monitoring`;
-				<</if>>
-			<<elseif slave.clitSetting == "anti-men">>
-				<<if slave.attrXY > 0>>
+				}
+			} else if (slave.clitSetting == "anti-men") {
+				if (slave.attrXY > 0) {
 					r += `SP:anti-men`;
-				<<else>>
+				} else {
 					r += `SP:monitoring`;
-				<</if>>
-			<</if>>
-		<<else>>
-			<<if slave.clitSetting == "women">>
+				}
+			}
+		} else {
+			if (slave.clitSetting == "women") {
 				r += `SP:women`;
-			<<elseif slave.clitSetting == "men">>
+			} else if (slave.clitSetting == "men") {
 				r += `SP:men`;
-			<<elseif slave.clitSetting == "anti-women">>
+			} else if (slave.clitSetting == "anti-women") {
 				r += `SP:anti-women`;
-			<<elseif slave.clitSetting == "anti-men">>
+			} else if (slave.clitSetting == "anti-men") {
 				r += `SP:anti-men`;
-			<</if>>
-		<</if>>
-	<</if>>
+			}
+		}
+	}
 	r += `<span class="red">`;
-	<<switch slave.behavioralFlaw>>
-		<<case "arrogant">>
+	switch (slave.behavioralFlaw) {
+		case "arrogant":
 			r += `Arrog`;
-		<<case "bitchy">>
+			break;
+		case "bitchy":
 			r += `Bitchy`;
-		<<case "odd">>
+			break;
+		case "odd":
 			r += `Odd`;
-		<<case "hates men">>
+			break;
+		case "hates men":
 			r += `Men-`;
-		<<case "hates women">>
+			break;
+		case "hates women":
 			r += `Women-`;
-		<<case "gluttonous">>
+			break;
+		case "gluttonous":
 			r += `Glut`;
-		<<case "anorexic">>
+			break;
+		case "anorexic":
 			r += `Ano`;
-		<<case "devout">>
+			break;
+		case "devout":
 			r += `Dev`;
-		<<case "liberated">>
+			break;
+		case "liberated":
 			r += `Lib`;
-		<<default>>
-			<<set slave.behavioralFlaw = "none">>
-	<</switch>>
+			break;
+		default:
+			slave.behavioralFlaw = "none";
+			break;
+	}
 	r += `</span>`;
-	<<switch slave.sexualFlaw>>
-		<<case "hates oral">>
+	switch (slave.sexualFlaw) {
+		case "hates oral":
 			r += `<span class="red">Oral-</span>`;
-		<<case "hates anal">>
+			break;
+		case "hates anal":
 			r += `<span class="red">Anal-</span>`;
-		<<case "hates penetration">>
+			break;
+		case "hates penetration":
 			r += `<span class="red">Fuck-</span>`;
-		<<case "shamefast">>
+			break;
+		case "shamefast":
 			r += `<span class="red">Shame</span>`;
-		<<case "idealistic">>
+			break;
+		case "idealistic":
 			r += `<span class="red">Ideal</span>`;
-		<<case "repressed">>
+			break;
+		case "repressed":
 			r += `<span class="red">Repre</span>`;
-		<<case "apathetic">>
+			break;
+		case "apathetic":
 			r += `<span class="red">Apath</span>`;
-		<<case "crude">>
+			break;
+		case "crude":
 			r += `<span class="red">Crude</span>`;
-		<<case "judgemental">>
+			break;
+		case "judgemental":
 			r += `<span class="red">Judge</span>`;
-		<<case "cum addict">>
+			break;
+		case "cum addict":
 			r += `<span class="yellow">CumAdd</span>`;
-		<<case "anal addict">>
+			break;
+		case "anal addict":
 			r += `<span class="yellow">AnalAdd</span>`;
-		<<case "attention whore">>
+			break;
+		case "attention whore":
 			r += `<span class="yellow">Attention</span>`;
-		<<case "breast growth">>
+			break;
+		case "breast growth":
 			r += `<span class="yellow">BoobObsess</span>`;
-		<<case "abusive">>
+			break;
+		case "abusive":
 			r += `<span class="yellow">Abusive</span>`;
-		<<case "malicious">>
+			break;
+		case "malicious":
 			r += `<span class="yellow">Malice</span>`;
-		<<case "self hating">>
+			break;
+		case "self hating":
 			r += `<span class="yellow">SelfHatr</span>`;
-		<<case "neglectful">>
+			break;
+		case "neglectful":
 			r += `<span class="yellow">SelfNeglect</span>`;
-		<<case "breeder">>
+			break;
+		case "breeder":
 			r += `<span class="yellow">BreedObsess</span>`;
-		<<default>>
-			<<set slave.sexualFlaw = "none">>
-	<</switch>>
+			break;
+		default:
+			slave.sexualFlaw = "none";
+			break
+	}
 	r += `<span class="green">`;
-	<<switch slave.behavioralQuirk>>
-		<<case "confident">>
+	switch (slave.behavioralQuirk) {
+		case "confident":
 			r += `Confid`;
-		<<case "cutting">>
+			break;
+		case "cutting":
 			r += `Cutting`;
-		<<case "funny">>
+			break;
+		case "funny":
 			r += `Funny`;
-		<<case "fitness">>
+			break;
+		case "fitness":
 			r += `Fit`;
-		<<case "adores women">>
+			break;
+		case "adores women":
 			r += `Women+`;
-		<<case "adores men">>
+			break;
+		case "adores men":
 			r += `Men+`;
-		<<case "insecure">>
+			break;
+		case "insecure":
 			r += `Insec`;
-		<<case "sinful">>
+			break;
+		case "sinful":
 			r += `Sinf`;
-		<<case "advocate">>
+			break;
+		case "advocate":
 			r += `Advoc`;
-		<<default>>
-			<<set slave.behavioralQuirk = "none">>
-	<</switch>>
-	<<switch slave.sexualQuirk>>
-		<<case "gagfuck queen">>
+			break;
+		default:
+			slave.behavioralQuirk = "none";
+			break;
+	}
+	switch (slave.sexualQuirk) {
+		case "gagfuck queen":
 			r += `Gagfuck`;
-		<<case "painal queen">>
+			break;
+		case "painal queen":
 			r += `Painal`;
-		<<case "strugglefuck queen">>
+			break;
+		case "strugglefuck queen":
 			r += `Struggle`;
-		<<case "tease">>
+			break;
+		case "tease":
 			r += `Tease`;
-		<<case "romantic">>
+			break;
+		case "romantic":
 			r += `Romantic`;
-		<<case "perverted">>
+			break;
+		case "perverted":
 			r += `Perverted`;
-		<<case "caring">>
+			break;
+		case "caring":
 			r += `Caring`;
-		<<case "unflinching">>
+			break;
+		case "unflinching":
 			r += `Unflinch`;
-		<<case "size queen">>
+			break;
+		case "size queen":
 			r += `SizeQ`;
-		<<default>>
-			<<set slave.sexualQuirk = "none">>
-	<</switch>>
+			break;
+		default:
+			slave.sexualQuirk = "none";
+			break;
+	}
 	r += `</span>`;
-<<elseif V.abbreviateMental == 2>>
-	<<if slave.fetish != "mindbroken">>
-	<<if slave.fetishKnown == 1>>
+} else if (V.abbreviateMental == 2) {
+	if (slave.fetish != "mindbroken") {
+	if (slave.fetishKnown == 1) {
 		r += `<span class="lightcoral">`;
-		<<switch slave.fetish>>
-			<<case "submissive">>
-				<<if slave.fetishStrength > 95>>
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
 					r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<case "cumslut">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
 					r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<case "humiliation">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
 					r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<case "buttslut">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
 					r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<case "boobs">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
 					r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<case "sadist">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
 					r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<case "masochist">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
 					r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<case "dom">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
 					r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<case "pregnancy">>
-				<<if slave.fetishStrength > 95>>
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
 					r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<elseif slave.fetishStrength > 60>>
+				} else if (slave.fetishStrength > 60) {
 					r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<<else>>
+				} else {
 					r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				<</if>>
-			<<default>>
+				}
+				break;
+			default:
 				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-		<</switch>>
+				break;
+		}
 		</span>
-	<</if>>
-	<</if>>
-	<<if slave.attrKnown == 1>>
-		<<if slave.attrXY <= 5>>
+	}
+	}
+	if (slave.attrKnown == 1) {
+		if (slave.attrXY <= 5) {
 			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		<<elseif slave.attrXY <= 15>>
+		} else if (slave.attrXY <= 15) {
 			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		<<elseif slave.attrXY <= 35>>
+		} else if (slave.attrXY <= 35) {
 			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		<<elseif slave.attrXY <= 65>>
+		} else if (slave.attrXY <= 65) {
 			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
-		<<elseif slave.attrXY <= 85>>
+		} else if (slave.attrXY <= 85) {
 			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		<<elseif slave.attrXY <= 95>>
+		} else if (slave.attrXY <= 95) {
 			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		<<elseif slave.attrXX > 95>>
-			<<if slave.energy <= 95>>
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
 				r += `<span class="green">Omnisexual!</span>`;
-			<<else>>
+			} else {
 				r += `<span class="green">Omnisexual nymphomaniac!</span>`;
-			<</if>>
-		<<else>>
+			}
+		} else {
 			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		<</if>>
-		<<if slave.attrXX <= 5>>
+		}
+		if (slave.attrXX <= 5) {
 			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		<<elseif slave.attrXX <= 15>>
+		} else if (slave.attrXX <= 15) {
 			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		<<elseif slave.attrXX <= 35>>
+		} else if (slave.attrXX <= 35) {
 			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		<<elseif slave.attrXX <= 65>>
+		} else if (slave.attrXX <= 65) {
 			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
-		<<elseif slave.attrXX <= 85>>
+		} else if (slave.attrXX <= 85) {
 			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		<<elseif slave.attrXX <= 95>>
+		} else if (slave.attrXX <= 95) {
 			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		<<elseif slave.attrXY <= 95>>
+		} else if (slave.attrXY <= 95) {
 			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		<</if>>
-		<<if slave.energy > 95>>
-			<<if (slave.attrXY <= 95) || (slave.attrXX <= 95)>>
+		}
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
 				r += `<span class="green">Nymphomaniac!</span>`;
-			<</if>>
-		<<elseif slave.energy > 80>>
+			}
+		} else if (slave.energy > 80) {
 			r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		<<elseif slave.energy > 60>>
+		} else if (slave.energy > 60) {
 			r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		<<elseif slave.energy > 40>>
+		} else if (slave.energy > 40) {
 			r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		<<elseif slave.energy > 20>>
+		} else if (slave.energy > 20) {
 			r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		<<else>>
+		} else {
 			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		<</if>>
-	<</if>>
-	<<if slave.clitPiercing == 3>>
-		<<if slave.fetishKnown == 1>>
-			<<if slave.clitSetting == "off">>
+		}
+	}
+	if (slave.clitPiercing == 3) {
+		if (slave.fetishKnown == 1) {
+			if (slave.clitSetting == "off") {
 				r += `SP off.`;
-			<<elseif ((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")>>
+			} else if (((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")) {
 				r += `SP: submissive.`;
-			<<elseif ((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")>>
+			} else if (((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")) {
 				r += `SP: oral.`;
-			<<elseif ((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")>>
+			} else if (((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")) {
 				r += `SP: humiliation.`;
-			<<elseif ((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")>>
+			} else if (((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")) {
 				r += `SP: anal.`;
-			<<elseif ((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")>>
+			} else if (((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")) {
 				r += `SP: breasts.`;
-			<<elseif ((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")>>
+			} else if (((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")) {
 				r += `SP: sadism.`;
-			<<elseif ((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")>>
+			} else if (((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")) {
 				r += `SP: masochism.`;
-			<<elseif ((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")>>
+			} else if (((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")) {
 				r += `SP: dominance.`;
-			<<elseif ((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")>>
+			} else if (((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")) {
 				r += `SP: pregnancy.`;
-			<<elseif (slave.fetish != "none") && (slave.clitSetting == "vanilla")>>
+			} else if ((slave.fetish != "none") && (slave.clitSetting == "vanilla")) {
 				r += `SP: vanilla.`;
-			<<elseif (slave.energy <= 95) && (slave.clitSetting == "all")>>
+			} else if ((slave.energy <= 95) && (slave.clitSetting == "all")) {
 				r += `SP: all.`;
-			<<elseif (slave.energy > 5) && (slave.clitSetting == "none")>>
+			} else if ((slave.energy > 5) && (slave.clitSetting == "none")) {
 				r += `SP: none.`;
-			<<elseif !["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)>>
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
 				r += `SP: monitoring.`;
-			<</if>>
-		<<else>>
-			<<switch slave.clitSetting>>
-				<<case "off">>
+			}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
 					r += `SP off.`;
-				<<case "submissive">>
+					break;
+				case "submissive":
 					r += `SP: submissive.`;
-				<<case "oral">>
+					break;
+				case "oral":
 					r += `SP: oral.`;
-				<<case "humiliation">>
+					break;
+				case "humiliation":
 					r += `SP: humiliation.`;
-				<<case "anal">>
+					break;
+				case "anal":
 					r += `SP: anal.`;
-				<<case "boobs">>
+					break;
+				case "boobs":
 					r += `SP: breasts.`;
-				<<case "sadist">>
+					break;
+				case "sadist":
 					r += `SP: sadism.`;
-				<<case "masochist">>
+					break;
+				case "masochist":
 					r += `SP: masochism.`;
-				<<case "dom">>
+					break;
+				case "dom":
 					r += `SP: dominance.`;
-				<<case "pregnancy">>
+					break;
+				case "pregnancy":
 					r += `SP: pregnancy.`;
-				<<case "vanilla">>
+					break;
+				case "vanilla":
 					r += `SP: vanilla.`;
-				<<case "all">>
+					break;
+				case "all":
 					r += `SP: all.`;
-				<<case "none">>
+					break;
+				case "none":
 					r += `SP: none.`;
-			<</switch>>
-		<</if>>
-		<<if slave.attrKnown == 1>>
-			<<if (slave.attrXX < 100) && (slave.clitSetting == "women")>>
+					break;
+			}
+		}
+		if (slave.attrKnown == 1) {
+			if ((slave.attrXX < 100) && (slave.clitSetting == "women")) {
 				r += `SP: women.`;
-			<<elseif (slave.attrXY < 100) && (slave.clitSetting == "men")>>
+			} else if ((slave.attrXY < 100) && (slave.clitSetting == "men")) {
 				r += `SP: men.`;
-			<</if>>
-		<<else>>
-			<<if slave.clitSetting == "women">>
+			}
+		} else {
+			if (slave.clitSetting == "women") {
 				r += `SP: women.`;
-			<<elseif slave.clitSetting == "men">>
+			} else if (slave.clitSetting == "men") {
 				r += `SP: men.`;
-			<</if>>
-		<</if>>
-	<</if>>
+			}
+		}
+	}
 	r + =`<span class="red">`;
-	<<switch slave.behavioralFlaw>>
-		<<case "arrogant">>
+	switch (slave.behavioralFlaw) {
+		case "arrogant":
 			r += `Arrogant.`;
-		<<case "bitchy">>
+			break;
+		case "bitchy":
 			r += `Bitchy.`;
-		<<case "odd">>
+			break;
+		case "odd":
 			r += `Odd.`;
-		<<case "hates men">>
+			break;
+		case "hates men":
 			r += `Hates men.`;
-		<<case "hates women">>
+			break;
+		case "hates women":
 			r += `Hates women.`;
-		<<case "gluttonous">>
+			break;
+		case "gluttonous":
 			r += `Stress eater.`;
-		<<case "anorexic">>
+			break;
+		case "anorexic":
 			r += `Anorexic.`;
-		<<case "devout">>
+			break;
+		case "devout":
 			r += `Devoutly religious.`;
-		<<case "liberated">>
+			break;
+		case "liberated":
 			r += `Mentally liberated.`;
-	<<default>>
-		<<set slave.behavioralFlaw = "none">>
-	<</switch>>
+			break;
+		default:
+			slave.behavioralFlaw = "none";
+			break;
+	}
 	r += `</span>`;
-	<<switch slave.sexualFlaw>>
-		<<case "hates oral">>
+	switch (slave.sexualFlaw) {
+		case "hates oral":
 			r += `<span class="red">Hates oral.</span>`;
-		<<case "hates anal">>
+			break;
+		case "hates anal":
 			r += `<span class="red">Hates anal.</span>`;
-		<<case "hates penetration">>
+			break;
+		case "hates penetration":
 			r += `<span class="red">Hates penetration.</span>`;
-		<<case "shamefast">>
+			break;
+		case "shamefast":
 			r += `<span class="red">Shamefast.</span>`;
-		<<case "idealistic">>
+			break;
+		case "idealistic":
 			r += `<span class="red">Sexually idealistic.</span>`;
-		<<case "repressed">>
+			break;
+		case "repressed":
 			r += `<span class="red">Sexually repressed.</span>`;
-		<<case "apathetic">>
+			break;
+		case "apathetic":
 			r += `<span class="red">Sexually apathetic.</span>`;
-		<<case "crude">>
+			break;
+		case "crude":
 			r += `<span class="red">Sexually crude.</span>`;
-		<<case "judgemental">>
+			break;
+		case "judgemental":
 			r += `<span class="red">Sexually judgemental.</span>`;
-		<<case "cum addict">>
+			break;
+		case "cum addict":
 			r += `<span class="yellow">Cum addict.</span>`;
-		<<case "anal addict">>
+			break;
+		case "anal addict":
 			r += `<span class="yellow">Anal addict.</span>`;
-		<<case "attention whore">>
+			break;
+		case "attention whore":
 			r += `<span class="yellow">Attention whore.</span>`;
-		<<case "breast growth">>
+			break;
+		case "breast growth":
 			r += `<span class="yellow">Breast obsession.</span>`;
-		<<case "abusive">>
+			break;
+		case "abusive":
 			r += `<span class="yellow">Sexually abusive.</span>`;
-		<<case "malicious">>
+			break;
+		case "malicious":
 			r += `<span class="yellow">Sexually malicious.</span>`;
-		<<case "self hating">>
+			break;
+		case "self hating":
 			r += `<span class="yellow">Self hatred.</span>`;
-		<<case "neglectful">>
+			break;
+		case "neglectful":
 			r += `<span class="yellow">Self neglectful.</span>`;
-		<<case "breeder">>
+			break;
+		case "breeder":
 			r += `<span class="yellow">Breeding obsession.</span>`;
-		<<default>>
-			<<set slave.sexualFlaw = "none">>
-	<</switch>>
+			break;
+		default:
+			slave.sexualFlaw = "none";
+			break;
+	}
 	r += `<span class="green">`;
-	<<switch slave.behavioralQuirk>>
-		<<case "confident">>
+	switch (slave.behavioralQuirk) {
+		case "confident":
 			r += `Confident.`;
-		<<case "cutting">>
+			break;
+		case "cutting":
 			r += `Cutting.`;
-		<<case "funny">>
+			break;
+		case "funny":
 			r += `Funny.`;
-		<<case "fitness">>
+			break;
+		case "fitness":
 			r += `Fitness.`;
-		<<case "adores women">>
+			break;
+		case "adores women":
 			r += `Adores women.`;
-		<<case "adores men">>
+			break;
+		case "adores men":
 			r += `Adores men.`;
-		<<case "insecure">>
+			break;
+		case "insecure":
 			r += `Insecure.`;
-		<<case "sinful">>
+			break;
+		case "sinful":
 			r += `Sinful.`;
-		<<case "advocate">>
+			break;
+		case "advocate":
 			r += `Advocate.`;
-		<<default>>
-			<<set slave.behavioralQuirk = "none">>
-	<</switch>>
-	<<switch slave.sexualQuirk>>
-		<<case "gagfuck queen">>
+			break;
+		default:
+			slave.behavioralQuirk = "none";
+			break;
+	}
+	switch (slave.sexualQuirk) {
+		case "gagfuck queen":
 			r += `Gagfuck queen.`;
-		<<case "painal queen">>
+			break;
+		case "painal queen":
 			r += `Painal queen.`;
-		<<case "strugglefuck queen">>
+			break;
+		case "strugglefuck queen":
 			r += `Strugglefuck queen.`;
-		<<case "tease">>
+			break;
+		case "tease":
 			r += `Tease.`;
-		<<case "romantic">>
+			break;
+		case "romantic":
 			r += `Romantic.`;
-		<<case "perverted">>
+			break;
+		case "perverted":
 			r += `Perverted.`;
-		<<case "caring">>
+			break;
+		case "caring":
 			r += `Caring.`;
-		<<case "unflinching">>
+			break;
+		case "unflinching":
 			r += `Unflinching.`;
-		<<case "size queen">>
+			break;
+		case "size queen":
 			r += `Size queen.`;
-		<<default>>
-			<<set slave.sexualQuirk = "none">>
-	<</switch>>
+			break;
+		default:
+			slave.sexualQuirk = "none";
+			break;
+	}
 	r += `</span>`;
-<</if>>
+}
 
-<<if slave.customLabel != "">>
+if (slave.customLabel != "") {
 	r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
-<</if>>
+}
 
-<<if (slave.relationship != 0) || (slave.relation != 0) || (V.abbreviateClothes == 2) || (V.abbreviateRulesets == 2)>>
+if ((slave.relationship != 0) || (slave.relation != 0) || (V.abbreviateClothes == 2) || (V.abbreviateRulesets == 2)) {
 	r += `<br>`;
-	<<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>
+	if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
 		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	<</if>>
-<</if>>
+	}
+}
 
-<<if V.abbreviateMental == 1>>
+if (V.abbreviateMental == 1) {
 r += `<span class="lightgreen">`;
-<<if V.familyTesting == 1>>
-	<<if slave.mother > 0>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; })>>
-		<<if _ssj != -1>>
+if (V.familyTesting == 1) {
+	if (slave.mother > 0) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+				if (slave.relationship == 1) {
 					r += ` & friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` & BFF`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` & FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` & lover`;
-				<<else>>
+				} else {
 					r += ` & wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-	<<elseif slave.mother == -1>>
+				}
+				_relationshipHandled = 1;
+			}
+		}
+	} else if (slave.mother == -1) {
 		r += `Your daughter`;
-		<<if slave.relationship == -3>>
+		if (slave.relationship == -3) {
 			r += `& wife`;
-			<<set _relationshipHandled = 1>>
-		<<elseif slave.relationship == -2>>
+			_relationshipHandled = 1;
+		} else if (slave.relationship == -2) {
 			r += `& lover`;
-			<<set _relationshipHandled = 1>>
-		<</if>>
-	<</if>>
-	<<if slave.father > 0 && slave.father != slave.mother>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; })>>
-		<<if _ssj != -1>>
+			_relationshipHandled = 1;
+		}
+	}
+	if (slave.father > 0 && slave.father != slave.mother) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1) {
+				if (slave.relationship == 1) {
 					r += ` & friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` & BFF`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` & FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` & lover`;
-				<<else>>
+				} else {
 					r += ` & wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-	<<elseif slave.father == -1 && slave.mother != -1>>
+				}
+				_relationshipHandled = 1;
+			}
+		}
+	} else if (slave.father == -1 && slave.mother != -1) {
 		r += `Your daughter`;
-		<<if slave.relationship == -3>>
+		if (slave.relationship == -3) {
 			r += `& wife`;
-			<<set _relationshipHandled = 1>>
-		<<elseif slave.relationship == -2>>
+			_relationshipHandled = 1;
+		} else if (slave.relationship == -2) {
 			r += `& lover`;
-			<<set _relationshipHandled = 1>>
-		<</if>>
-	<</if>>
-	<<if slave.daughters == 1>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; })>>
-		<<if _ssj != -1>>
+			_relationshipHandled = 1;
+		}
+	}
+	if (slave.daughters == 1) {
+		_ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+				if (slave.relationship == 1) {
 					r += ` & friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` & BFF`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` & FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` & lover`;
-				<<else>>
+				} else {
 					r += ` & wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; })>>
-		<<if _ssj != -1>>
+				}
+				_relationshipHandled = 1;
+			}
+		}
+		_ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1) {
+				if (slave.relationship == 1) {
 					r += ` & friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` & BFF`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` & FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` & lover`;
-				<<else>>
+				} else {
 					r += ` & wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-	<<elseif slave.daughters > 1>>
+				}
+				_relationshipHandled = 1;
+			}
+		}
+	} else if (slave.daughters > 1) {
 		r += `multiple daughters`;
-	<</if>>
-	<<if slave.sisters == 1>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; })>>
-		<<if _ssj != -1>>
+	}
+	if (slave.sisters == 1) {
+		_ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+				if (slave.relationship == 1) {
 					r += ` & friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` & BFF`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` & FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` & lover`;
-				<<else>>
+				} else {
 					r += ` & wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-	<<elseif slave.sisters > 1>>
+				}
+				_relationshipHandled = 1;
+			}
+		}
+	} else if (slave.sisters > 1) {
 		r += `multiple sisters`;
-	<</if>>
-	<<if slave.relationship > 0 && _relationshipHandled != 1>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
-		<<if _ssj != -1>>
+	}
+	if (slave.relationship > 0 && _relationshipHandled != 1) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-			<<switch slave.relationship>>	
-			<<case 1>>
+			switch (slave.relationship) {	
+			case 1:
 				r += `friend`;
-			<<case 2>>
+				break;
+			case 2:
 				r += `BFF`;
-			<<case 3>>
+				break;
+			case 3:
 				r += `FWB`;
-			<<case 4>>
+				break;
+			case 4:
 				r += `lover`;
-			<<case 5>>
+				break;
+			case 5:
 				r += `wife`;
-			<</switch>>
-		<</if>>
-	<<elseif slave.relationship == -3>>
+				break;
+			}
+		}
+	} else if (slave.relationship == -3) {
 		r += `Your wife`;
-	<<elseif slave.relationship == -2>>
+	} else if (slave.relationship == -2) {
 		r += `E Bonded`;
-	<<elseif slave.relationship == -1>>
+	} else if (slave.relationship == -1) {
 		r += `E Slut`;
-	<</if>>
-<<else>>
-	<<if slave.relation != 0>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; })>>
-		<<if _ssj != -1>>
+	}
+} else {
+	if (slave.relation != 0) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
-		<</if>>
-	<</if>>
-	<<if slave.relationship > 0>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
-		<<if _ssj != -1>>
-			<<switch slave.relationship>>
-			<<case 1>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+		}
+	}
+	if (slave.relationship > 0) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; });
+		if (_ssj != -1) {
+			switch (slave.relationship) {
+			case 1:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `&`;
-				<</if>>
+				}
 				r += `friend`;
-			<<case 2>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+				break;
+			case 2:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `&`;
-				<</if>>
+				}
 				r += `BFF`;
-			<<case 3>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+				break;
+			case 3:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `&`;
-				<</if>>
+				}
 				r += `FWB`;
-			<<case 4>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+				break;
+			case 4:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `&`;
-				<</if>>
+				}
 				r += `lover`;
-			<<case 5>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+				break;
+			case 5:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `&`;
-				<</if>>
+				}
 				r += `wife`;
-			<</switch>>
-		<</if>>
-	<<elseif slave.relationship == -3>>
+				break;
+			}
+		}
+	} else if (slave.relationship == -3) {
 		r += `Your wife`;
-	<<elseif slave.relationship == -2>>
+	} else if (slave.relationship == -2) {
 		r += `E Bonded`;
-	<<elseif slave.relationship == -1>>
+	} else if (slave.relationship == -1) {
 		r += `E Slut`;
-	<</if>>
-<</if>>
+	}
+}
 r += `</span>`;
-<<set _relationshipHandled = 0>>
-<<if slave.rivalry != 0>>
+_relationshipHandled = 0;
+if (slave.rivalry != 0) {
 	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; })>>
-	<<if _ssj != -1>>
+	_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; });
+	if (_ssj != -1) {
 		r += `<span class="lightsalmon">`;
-		<<if slave.rivalry <= 1>>
+		if (slave.rivalry <= 1) {
 			r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
-		<<elseif slave.rivalry <= 2>>
+		} else if (slave.rivalry <= 2) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s rival`;
-		<<else>>
+		} else {
 			r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
-		<</if>>
+		}
 		</span>
-	<</if>>
-<</if>>
-<<elseif V.abbreviateMental == 2>>
-<<if V.familyTesting == 1>>
-	<<if slave.mother > 0>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; })>>
-		<<if _ssj != -1>>
+	}
+}
+} else if (V.abbreviateMental == 2) {
+if (V.familyTesting == 1) {
+	if (slave.mother > 0) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+				if (slave.relationship == 1) {
 					r += ` and friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` and best friend`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` and FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` and lover`;
-				<<else>>
+				} else {
 					r += ` and wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
+				}
+				_relationshipHandled = 1;
+			}
 			r += `.</span>`;
-		<</if>>
-	<<elseif slave.mother == -1>>
+		}
+	} else if (slave.mother == -1) {
 		r += `Your`;
-		<<if slave.relationship == -3>>
+		if (slave.relationship == -3) {
 			r += `<span class="lightgreen">daughter and wife.</span>`;
-			<<set _relationshipHandled = 1>>
-		<<elseif slave.relationship == -2>>
+			_relationshipHandled = 1;
+		} else if (slave.relationship == -2) {
 			r += `<span class="lightgreen">daughter and lover.</span>`;
-			<<set _relationshipHandled = 1>>
-		<<else>>
+			_relationshipHandled = 1;
+		} else {
 			r += `<span class="lightgreen">daughter.</span>`;
-		<</if>>
-	<</if>>
+		}
+	}
 	// HERE
-	<<if slave.father > 0 && slave.father != slave.mother>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; })>>
-		<<if _ssj != -1>>
+	if (slave.father > 0 && slave.father != slave.mother) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+				if (slave.relationship == 1) {
 					r += ` and friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` and best friend`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` and FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` and lover`;
-				<<else>>
+				} else {
 					r += ` and wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
+				}
+				_relationshipHandled = 1;
+			}
 			r += `.</span>`;
-		<</if>>
-	<<elseif slave.father == -1 && slave.father != slave.mother>>
+		}
+	} else if (slave.father == -1 && slave.father != slave.mother) {
 		r += `Your`;
-		<<if slave.relationship == -3>>
+		if (slave.relationship == -3) {
 			r += `<span class="lightgreen">daughter and wife.</span>`;
-			<<set _relationshipHandled = 1>>
-		<<elseif slave.relationship == -2>>
+			_relationshipHandled = 1;
+		} else if (slave.relationship == -2) {
 			r += `<span class="lightgreen">daughter and lover.</span>`;
-			<<set _relationshipHandled = 1>>
-		<<else>>
+			_relationshipHandled = 1;
+		} else {
 			r += `<span class="lightgreen">daughter.</span>`;
-		<</if>>
-	<</if>>
-	<<if slave.daughters == 1>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; })>>
-		<<if _ssj != -1>>
+		}
+	}
+	if (slave.daughters == 1) {
+		_ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+				if (slave.relationship == 1) {
 					r += ` and friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` and best friend`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` and FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` and lover`;
-				<<else>>
+				} else {
 					r += ` and wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
+				}
+				_relationshipHandled = 1;
+			}
 			r += `.</span>`;
-		<</if>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; })>>
-		<<if _ssj != -1>>
+		}
+		_ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+				if (slave.relationship == 1) {
 					r += ` and friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` and best friend`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` and FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` and lover`;
-				<<else>>
+				} else {
 					r += ` and wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
+				}
+				_relationshipHandled = 1;
+			}
 			r += `.</span>`;
-		<</if>>
-	<<elseif slave.daughters > 1>>
-		<<if slave.daughters > 10>>
+		}
+	} else if (slave.daughters > 1) {
+		if (slave.daughters > 10) {
 			r += `<span class="lightgreen">Has tons of daughters.</span>`;
-		<<elseif slave.daughters > 5>>
+		} else if (slave.daughters > 5) {
 			r += `<span class="lightgreen">Has many daughters.</span>`;
-		<<else>>
+		} else {
 			r += `<span class="lightgreen">Has several daughters.</span>`;
-		<</if>>
-	<</if>>
-	<<if slave.sisters == 1>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; })>>
-		<<if _ssj != -1>>
+		}
+	}
+	if (slave.sisters == 1) {
+		_ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; });
+		if (_ssj != -1) {
 			`${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
-			<<if slave.relationshipTarget == V.slaves[_ssj].ID>>
-				<<if slave.relationship == 1>>
+			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+				if (slave.relationship == 1) {
 					r += ` and friend`;
-				<<elseif slave.relationship == 2>>
+				} else if (slave.relationship == 2) {
 					r += ` and best friend`;
-				<<elseif slave.relationship == 3>>
+				} else if (slave.relationship == 3) {
 					r += ` and FWB`;
-				<<elseif slave.relationship == 4>>
+				} else if (slave.relationship == 4) {
 					r += ` and lover`;
-				<<else>>
+				} else {
 					r += ` and wife`;
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
+				}
+				_relationshipHandled = 1;
+			}
 			r += `.</span>`;
-		<</if>>
-	<<elseif slave.sisters > 1>>
-		<<if slave.sisters > 10>>
+		}
+	} else if (slave.sisters > 1) {
+		if (slave.sisters > 10) {
 			r += `<span class="lightgreen">One of many sisters.</span>`;
-		<<elseif slave.sisters > 5>>
+		} else if (slave.sisters > 5) {
 			r += `<span class="lightgreen">Has many sisters.</span>`;
-		<<else>>
+		} else {
 			r += `<span class="lightgreen">Has several sisters.</span>`;
-		<</if>>
-	<</if>>
-	<<if slave.relationship > 0 && _relationshipHandled != 1>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
-		<<if _ssj != -1>>
+		}
+	}
+	if (slave.relationship > 0 && _relationshipHandled != 1) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-			<<switch slave.relationship>>
-			<<case 1>>
+			switch (slave.relationship) {
+			case 1:
 				r += `<span class="lightgreen">friend.</span>`;
-			<<case 2>>
+				break;
+			case 2:
 				r += `<span class="lightgreen">best friend.</span>`;
-			<<case 3>>
+				break;
+			case 3:
 				r += `<span class="lightgreen">FWB.</span>`;
-			<<case 4>>
+				break;
+			case 4:
 				r += `<span class="lightgreen">lover.</span>`;
-			<<case 5>>
+				break;
+			case 5:
 				r += `<span class="lightgreen">slave wife.</span>`;
-			<</switch>>
-		<</if>>
-	<<elseif slave.relationship == -3>>
+				break;
+			}
+		}
+	} else if (slave.relationship == -3) {
 		r += `<span class="lightgreen">Your wife.</span>`;
-	<<elseif slave.relationship == -2>>
+	} else if (slave.relationship == -2) {
 		r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
-	<<elseif slave.relationship == -1>>
+	} else if (slave.relationship == -1) {
 		r += `<span class="lightgreen">Emotional slut.</span>`;
-	<</if>>
-<<else>>
-	<<if slave.relation != 0>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; })>>
-		<<if _ssj != -1>>
+	}
+} else {
+	if (slave.relation != 0) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; });
+		if (_ssj != -1) {
 			r += `${SlaveFullName(V.slaves[_ssj])'s`;
-			<<if slave.relationshipTarget != slave.relationTarget>>
+			if (slave.relationshipTarget != slave.relationTarget) {
 				r += `<span class="lightgreen">${slave.relation}</span>.`;
-			<<else>>
+			} else {
 				r += `<span class="lightgreen">${slave.relation}</span>`;
-			<</if>>
-			<<if slave.relationship <= 0>>
+			}
+			if (slave.relationship <= 0) {
 				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-			<</if>>
-		<</if>>
-	<</if>>
-	<<if slave.relationship > 0>>
-		<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; })>>
-		<<if _ssj != -1>>
-			<<switch slave.relationship>>
-			<<case 1>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+			}
+		}
+	}
+	if (slave.relationship > 0) {
+		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; });
+		if (_ssj != -1) {
+			switch (slave.relationship) {
+			case 1:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `and`;
-				<</if>>
+				}
 				r += `<span class="lightgreen">friend.</span>`;
-			<<case 2>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+				break;
+			case 2:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `and`;
-				<</if>>
+				}
 				r += `<span class="lightgreen">best friend.</span>`;
-			<<case 3>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+				break;
+			case 3:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `and`;
-				<</if>>
+				}
 				r += `<span class="lightgreen">FWB.</span>`;
-			<<case 4>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+				break;
+			case 4:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `and`;
-				<</if>>
+				}
 				r += `<span class="lightgreen">lover.</span>`;
-			<<case 5>>
-				<<if slave.relationshipTarget != slave.relationTarget>>
+				break;
+			case 5:
+				if (slave.relationshipTarget != slave.relationTarget) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				<<else>>
+				} else {
 					r += `and`;
-				<</if>>
+				}
 				r += `<span class="lightgreen">slave wife.</span>`;
-			<</switch>>
-		<</if>>
-	<<elseif slave.relationship == -3>>
+				break;
+			}
+		}
+	} else if (slave.relationship == -3) {
 		r += `<span class="lightgreen">Your wife.</span>`;
-	<<elseif slave.relationship == -2>>
+	} else if (slave.relationship == -2) {
 		r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
-	<<elseif slave.relationship == -1>>
+	} else if (slave.relationship == -1) {
 		r += `<span class="lightgreen">Emotional slut.</span>`;
-	<</if>>
-<</if>>
-<<set _relationshipHandled = 0>>
-<<if slave.rivalry != 0>>
+	}
+}
+_relationshipHandled = 0;
+if (slave.rivalry != 0) {
 	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	<<set _ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; })>>
-	<<if _ssj != -1>>
-		<<if slave.rivalry <= 1>>
+	_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; });
+	if (_ssj != -1) {
+		if (slave.rivalry <= 1) {
 			r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
-		<<elseif slave.rivalry <= 2>>
+		} else if (slave.rivalry <= 2) {
 			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightsalmon">rival.</span>`;
-		<<else>>
+		} else {
 			r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
-		<</if>>
-	<</if>>
-<</if>>
-<</if>>
+		}
+	}
+}
+}
 
-<<if slave.fuckdoll == 0>>
-<<if V.abbreviateClothes == 2>>
+if (slave.fuckdoll == 0) {
+if (V.abbreviateClothes == 2) {
 r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-<<if slave.choosesOwnClothes == 1>>
+if (slave.choosesOwnClothes == 1) {
 	r += `Dressing herself.`;
-<</if>>
-<<switch slave.clothes>>
-<<case "attractive lingerie">>
+}
+switch (slave.clothes) {
+case "attractive lingerie":
 	r + =`Lingerie.`;
-<<case "a succubus outfit">>
+	break;
+case "a succubus outfit":
 	r + =`Succubus outfit.`;
-<<case "a string bikini">>
+	break;
+case "a string bikini":
 	r + =`String bikini.`;
-<<case "a scalemail bikini">>
+	break;
+case "a scalemail bikini":
 	r + =`Scalemail bikini.`;
-<<case "a monokini">>
+	break;
+case "a monokini":
 	r + =`Monokini.`;
-<<case "an apron">>
+	break;
+case "an apron":
 	r + =`Apron.`;
-<<case "a cybersuit">>
+	break;
+case "a cybersuit":
 	r + =`Cybersuit.`;
-<<case "cutoffs and a t-shirt">>
+	break;
+case "cutoffs and a t-shirt":
 	r + =`Cutoffs, t-shirt.`;
-<<case "a slutty outfit">>
+	break;
+case "a slutty outfit":
 	r + =`Slutty outfit.`;
-<<case "uncomfortable straps">>
+	break;
+case "uncomfortable straps":
 	r + =`Leather straps.`;
-<<case "a fallen nuns habit">>
+	break;
+case "a fallen nuns habit":
 	r + =`Slutty habit.`;
-<<case "a chattel habit">>
+	break;
+case "a chattel habit":
 	r + =`Chattel habit.`;
-<<case "a penitent nuns habit">>
+	break;
+case "a penitent nuns habit":
 	r + =`Cilice.`;
-<<case "slutty jewelry">>
+	break;
+case "slutty jewelry":
 	r + =`Bangles.`;
-<<case "attractive lingerie for a pregnant woman">>
+	break;
+case "attractive lingerie for a pregnant woman":
 	r + =`Preggo lingerie.`;
-<<case "a maternity dress">>
+	break;
+case "a maternity dress":
 	r + =`Maternity dress.`;
-<<case "stretch pants and a crop-top">>
+	break;
+case "stretch pants and a crop-top":
 	r + =`Stretch pants, crop-top.`;
-<<case "harem gauze">>
+	break;
+case "harem gauze":
 	r + =`Harem outfit.`;
-<<case "a slave gown">>
+	break;
+case "a slave gown":
 	r + =`Slave gown.`;
-<<case "a halter top dress">>
+	break;
+case "a halter top dress":
 	r + =`Halter top dress.`;
-<<case "a mini dress">>
+	break;
+case "a mini dress":
 	r + =`Mini dress.`;
-<<case "a ball gown">>
+	break;
+case "a ball gown":
 	r + =`Ball gown.`;
-<<case "slutty business attire">>
+	break;
+case "slutty business attire":
 	r + =`Slutty suit.`;
-<<case "nice business attire">>
+	break;
+case "nice business attire":
 	r + =`Nice suit.`;
-<<case "a comfortable bodysuit">>
+	break;
+case "a comfortable bodysuit":
 	r + =`Bodysuit.`;
-<<case "a military uniform">>
+	break;
+case "a military uniform":
 	r + =`Military uniform.`;
-<<case "a schutzstaffel uniform">>
+	break;
+case "a schutzstaffel uniform":
 	r + =`Schutzstaffel uniform.`;
-<<case "a slutty schutzstaffel uniform">>
+	break;
+case "a slutty schutzstaffel uniform":
 	r + =`Slutty Schutzstaffel uniform.`;
-<<case "a red army uniform">>
+	break;
+case "a red army uniform":
 	r + =`Red Army uniform.`;
-<<case "a long qipao">>
+	break;
+case "a long qipao":
 	r + =`Long Qipao.`;
-<<case "battlearmor">>
+	break;
+case "battlearmor":
 	r + =`Battlearmor.`;
-<<case "a mounty outfit">>
+	break;
+case "a mounty outfit":
 	r + =`Mounty outfit.`;
-<<case "a dirndl">>
+	break;
+case "a dirndl":
 	r + =`Dirndl.`;
-<<case "lederhosen">>
+	break;
+case "lederhosen":
 	r + =`Lederhosen.`;
-<<case "a biyelgee costume">>
+	break;
+case "a biyelgee costume":
 	r + =`Biyelgee costume.`;
-<<case "a leotard">>
+	break;
+case "a leotard":
 	r + =`Leotard.`;
-<<case "a bunny outfit">>
+	break;
+case "a bunny outfit":
 	r + =`Bunny outfit.`;
-<<case "a slutty maid outfit">>
+	break;
+case "a slutty maid outfit":
 	r + =`Slutty maid.`;
-<<case "a nice maid outfit">>
+	break;
+case "a nice maid outfit":
 	r + =`Nice maid.`;
-<<case "a slutty nurse outfit">>
+	break;
+case "a slutty nurse outfit":
 	r + =`Slutty nurse.`;
-<<case "a nice nurse outfit">>
+	break;
+case "a nice nurse outfit":
 	r + =`Nice nurse.`;
-<<case "a schoolgirl outfit">>
+	break;
+case "a schoolgirl outfit":
 	r + =`Schoolgirl outfit.`;
-<<case "a kimono">>
+	break;
+case "a kimono":
 	r + =`Kimono.`;
-<<case "a hijab and abaya">>
+	break;
+case "a hijab and abaya":
 	r + =`Hijab and abaya.`;
-<<case "battledress">>
+	break;
+case "battledress":
 	r + =`Battledress.`;
-<<case "a latex catsuit">>
+	break;
+case "a latex catsuit":
 	r + =`Nice latex.`;
-<<case "restrictive latex">>
+	break;
+case "restrictive latex":
 	r + =`Bondage latex.`;
-<<case "conservative clothing">>
+	break;
+case "conservative clothing":
 	r + =`Conservative clothing.`;
-<<case "chains">>
+	break;
+case "chains":
 	r + =`Chains.`;
-<<case "a cheerleader outfit">>
+	break;
+case "a cheerleader outfit":
 	r + =`Cheerleader.`;
-<<case "clubslut netting">>
+	break;
+case "clubslut netting":
 	r + =`Netting.`;
-<<case "shibari ropes">>
+	break;
+case "shibari ropes":
 	r + =`Shibari.`;
-<<case "Western clothing">>
+	break;
+case "Western clothing":
 	r + =`Chaps.`;
-<<case "body oil">>
+	break;
+case "body oil":
 	r + =`Body oil.`;
-<<case "a toga">>
+	break;
+case "a toga":
 	r + =`Toga.`;
-<<case "a huipil">>
+	break;
+case "a huipil":
 	r + =`Huipil.`;
-<<case "a slutty qipao">>
+	break;
+case "a slutty qipao":
 	r + =`Qipao.`;
-<<case "spats and a tank top">>
+	break;
+case "spats and a tank top":
 	r + =`Spats, tank top.`;
-<<default>>
+	break;
+default:
 	r + =`Naked.`;
-<</switch>>
-<<switch slave.collar>>
-<<case "uncomfortable leather">>
+	break;
+}
+switch (slave.collar) {
+case "uncomfortable leather":
 	r + =`Leather collar.`;
-<<case "tight steel">>
+	break;
+case "tight steel":
 	r + =`Steel collar.`;
-<<case "preg biometrics">>
+	break;
+case "preg biometrics":
 	r + =`Pregnancy biometrics collar.`;
-<<case "cruel retirement counter">>
+	break;
+case "cruel retirement counter":
 	r + =`Cruel counter collar.`;
-<<case "shock punishment">>
+	break;
+case "shock punishment":
 	r + =`Shock collar.`;
-<<case "dildo gag">>
+	break;
+case "dildo gag":
 	r + =`Dildo gag.`;
-<<case "massive dildo gag">>
+	break;
+case "massive dildo gag":
 	r + =`Throat-bulging dildo gag.`;
-<<case "neck corset">>
+	break;
+case "neck corset":
 	r + =`Neck corset.`;
-<<case "stylish leather">>
+	break;
+case "stylish leather":
 	r + =`Stylish leather collar.`;
-<<case "satin choker">>
+	break;
+case "satin choker":
 	r + =`Satin choker.`;
-<<case "silk ribbon">>
+	break;
+case "silk ribbon":
 	r + =`Silken ribbon.`;
-<<case "heavy gold">>
+	break;
+case "heavy gold":
 	r + =`Gold collar.`;
-<<case "bowtie">>
+	break;
+case "bowtie":
 	r + =`Bowtie collar.`;
-<<case "pretty jewelry">>
+	break;
+case "pretty jewelry":
 	r + =`Pretty collar.`;
-<<case "nice retirement counter">>
+	break;
+case "nice retirement counter":
 	r + =`Nice counter collar.`;
-<<case "leather with cowbell">>
+	break;
+case "leather with cowbell":
 	r + =`Cowbell collar.`;
-<<case "ancient Egyptian">>
+	break;
+case "ancient Egyptian":
 	r + =`Wesekh.`;
-<<case "ball gag">>
+	break;
+case "ball gag":
 	r + =`Ball gag.`;
-<<case "bit gag">>
+	break;
+case "bit gag":
 	r + =`Bit gag.`;
-<<case "porcelain mask">>
+	break;
+case "porcelain mask":
 	r + =`Porcelain mask.`;
-<</switch>>
-<<switch slave.bellyAccessory>>
-<<case "shapewear">>
+	break;
+}
+switch (slave.bellyAccessory) {
+case "shapewear":
 	r + =`Shapewear.`;
-<<case "a small empathy belly">>
+	break;
+case "a small empathy belly":
 	r + =`Small fake belly.`;
-<<case "a medium empathy belly">>
+	break;
+case "a medium empathy belly":
 	r + =`Medium fake belly.`;
-<<case "a large empathy belly">>
+	break;
+case "a large empathy belly":
 	r + =`Large fake belly.`;
-<<case "a huge empathy belly">>
+	break;
+case "a huge empathy belly":
 	r + =`Huge fake belly.`;
-<<case "a corset">>
+	break;
+case "a corset":
 	r + =`Corset.`;
-<<case "an extreme corset">>
+	break;
+case "an extreme corset":
 	r + =`Extreme corsetage.`;
-<</switch>>
-<<if slave.amp != 1>>
-	<<if slave.legAccessory == "short stockings">>
+	break;
+}
+if (slave.amp != 1) {
+	if (slave.legAccessory == "short stockings") {
 		r + =`Short stockings.`;
-	<<elseif slave.legAccessory == "long stockings">>
+	} else if (slave.legAccessory == "long stockings") {
 		r + =`Long stockings.`;
-	<</if>>
-<</if>>
-<<if canWalk(slave)>>
-<<if slave.shoes == "heels">>
+	}
+}
+if (canWalk(slave)) {
+if (slave.shoes == "heels") {
 	r + =`Heels.`;
-<<elseif slave.shoes == "pumps">>
+} else if (slave.shoes == "pumps") {
 	r + =`Pumps.`;
-<<elseif slave.shoes == "extreme heels">>
+} else if (slave.shoes == "extreme heels") {
 	r + =`Extreme heels.`;
-<<elseif slave.shoes == "boots">>
+} else if (slave.shoes == "boots") {
 	r + =`Boots.`;
-<<elseif slave.heels == 1>>
+} else if (slave.heels == 1) {
 	r + =`<span class="yellow">Crawling.</span>`;
-<<elseif slave.shoes == "flats">>
+} else if (slave.shoes == "flats") {
 	r + =`Flats.`;
-<</if>>
-<</if>>
-<<switch slave.vaginalAccessory>>
-<<case "chastity belt">>
+}
+}
+switch (slave.vaginalAccessory) {
+case "chastity belt":
 	r + =`Vaginal chastity.`;
-<<case "combined chastity">>
+	break;
+case "combined chastity":
 	r + =`Combined chastity.`;
-<<case "anal chastity">>
+	break;
+case "anal chastity":
 	r + =`Anal chastity.`;
-<<case "dildo">>
+	break;
+case "dildo":
 	r + =`Vaginal dildo.`;
-<<case "large dildo">>
+	break;
+case "large dildo":
 	r + =`Large vaginal dildo.`;
-<<case "huge dildo">>
+	break;
+case "huge dildo":
 	r + =`Huge vaginal dildo.`;
-<<case "long dildo">>
+	break;
+case "long dildo":
 	r + =`Long vaginal dildo.`;
-<<case "long, large dildo">>
+	break;
+case "long, large dildo":
 	r + =`Long and large vaginal dildo.`;
-<<case "long, huge dildo">>
+	break;
+case "long, huge dildo":
 	r + =`Long and wide vaginal dildo.`;
-<</switch>>
-<<if slave.dickAccessory == "chastity">>
+	break;
+}
+if (slave.dickAccessory == "chastity") {
 	r + =`Chastity cage.`;
-<<elseif slave.dickAccessory == "combined chastity">>
+} else if (slave.dickAccessory == "combined chastity") {
 	r + =`Combined chastity.`;
-<<elseif slave.dickAccessory == "anal chastity">>
+} else if (slave.dickAccessory == "anal chastity") {
 	r + =`Anal chastity.`;
-<</if>>
-<<switch slave.buttplug>>
-<<case "plug">>
+}
+switch (slave.buttplug) {
+case "plug":
 	r + =`Buttplug.`;
-<<case "large plug">>
+	break;
+case "large plug":
 	r + =`Large buttplug.`;
-<<case "huge plug">>
+	break;
+case "huge plug":
 	r + =`Huge buttplug.`;
-<<case "long plug">>
+	break;
+case "long plug":
 	r + =`Long buttplug.`;
-<<case "long, large plug">>
+	break;
+case "long, large plug":
 	r + =`Large, long buttplug.`;
-<<case "long, huge plug">>
+	break;
+case "long, huge plug":
 	r + =`Enormous buttplug.`;
-<</switch>>
-<<switch slave.buttplugAttachment>>
-<<case "tail">>
-	r + =`Attached tail.`;
-<</switch>>
-<</if>>
-<</if>>
+	break;
+}
+switch (slave.buttplugAttachment) {
+	case "tail":
+		r + =`Attached tail.`;
+	break;
+}
+}
+}
 
 r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-<<if slave.useRulesAssistant == 0>>
+if (slave.useRulesAssistant == 0) {
 	r + =`<span class="lightgreen">RA-Exempt</span>`;
-<<elseif V.abbreviateRulesets == 2 && (def slave.currentRules) && (slave.currentRules.length > 0)>>
+} else if (V.abbreviateRulesets == 2 && (def slave.currentRules) && (slave.currentRules.length > 0)) {
 	r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") }`;
-<</if>>
+}
 
-<<if V.abbreviateOrigins == 2 && slave.origin != 0>>
+if (V.abbreviateOrigins == 2 && slave.origin != 0) {
 	r += `<br>`;
-	<<if V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1>>
+	if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
 		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	<</if>>
+	}
 	r += `<span class="gray">${slave.origin}</span>`;
-<</if>>
+}
+	return r;
+}
-- 
GitLab


From 32d5c0714d6ee322869fac2c13de2808e9fab4f5 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 23:43:12 +0300
Subject: [PATCH 011/189] fix all sorts of jshint complaints

---
 src/js/slaveSummaryWidgets.tw | 394 +++++++++++++++++-----------------
 1 file changed, 201 insertions(+), 193 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 1e992b5ee3a..b58d2d2325f 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -1,4 +1,4 @@
-:: Slave Summary Widgets JS [script]
+//:: Slave Summary Widgets JS [script]
 
 window.clearSummaryCache = function clearSummaryCache(slave) {
 	if (!slave)
@@ -14,7 +14,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 	let r = "";
 	if (V.abbreviateDevotion == 1) {
 	if (slave.fetish == "mindbroken") {
-		r += `<span class="red">MB</span>`
+		r += `<span class="red">MB</span>`;
 	} else if (slave.devotion < -95) {
 		r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 	} else if (slave.devotion < -50) {
@@ -44,19 +44,19 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		if (slave.devotion < -20) {
 			r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 		} else {
-			r += `<span class="mediumaquamarine">Caref${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
+			r += `<span class="mediumaquamarine">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 		}
 	} else if (slave.trust < 95) {
 		if (slave.devotion < -20) {
 			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 		} else {
-			r += `<span class="mediumseagreen">Trust${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
+			r += `<span class="mediumseagreen">Trust${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 		}
 	} else {
 		if (slave.devotion < -20) {
 			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 		} else {
-			r += `<span class="seagreen">VTrust ${V.summaryStats ?[`s${lave.trust}]` : ''}</span>`;
+			r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 		}
 	}
 } else if (V.abbreviateDevotion == 2) {
@@ -89,21 +89,21 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 	} else if (slave.trust <= 50) {
 		if (slave.devotion < -20) {
-			r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+			r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 		} else {
-			r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+			r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 		}
 	} else if (slave.trust < 95) {
 		if (slave.devotion < -20) {
-			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 		} else {
-			r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+			r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 		}
 	} else {
 		if (slave.devotion < -20) {
-			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 		} else {
-			r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}] : ''}`.</span>`;
+			r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 		}
 	}
 }
@@ -191,24 +191,24 @@ if (slave.fuckdoll == 0) {
 				break;
 		}
 	} else if (V.abbreviateRules == 2) {
-		r += `Living standard: ${slave.livingRules.`;
+		r += `Living standard: ${slave.livingRules}.`;
 		if (canTalk(slave)) {
-			r += `Speech rules: ${slave.speechRules}.`
+			r += `Speech rules: ${slave.speechRules}.`;
 		}
-		r += `Relationship rules: ${slave.relationshipRules}.`
-		r += `Typical punishment: ${slave.standardPunishment}.`
-		r += `Typical reward: ${slave.standardReward}.`
-		r += `Release rules: ${slave.releaseRules}.`
+		r += `Relationship rules: ${slave.relationshipRules}.`;
+		r += `Typical punishment: ${slave.standardPunishment}.`;
+		r += `Typical reward: ${slave.standardReward}.`;
+		r += `Release rules: ${slave.releaseRules}.`;
 	}
 }
 
 if (slave.tired != 0) {
-	r += `Tired.`
+	r += `Tired.`;
 }
 
 if (V.abbreviateDiet == 1) {
 	if (slave.weight < -95) {
-		r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`
+		r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 	} else if (slave.weight < -30) {
 		if (slave.hips < -1) {
 			r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
@@ -257,7 +257,7 @@ if (V.abbreviateDiet == 1) {
 		r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 	} else if (slave.weight < -30) {
 		if (slave.hips < -1) {
-			Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.
+			r += `Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
 		} else {
 			r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 		}
@@ -301,7 +301,7 @@ if (V.abbreviateDiet == 1) {
 }
 
 if (V.abbreviateDiet == 1) {
-	r += `<span class="teal">`
+	r += `<span class="teal">`;
 	switch (slave.diet) {
 		case "restricted":
 			r += `<strong>Di:W-</strong>`;
@@ -352,47 +352,47 @@ if (V.abbreviateDiet == 1) {
 	r += `<span class="teal">`;
 	switch (slave.diet) {
 		case "restricted":
-			r + `Dieting.`;
+			r += `Dieting.`;
 			break;
 		case "fattening":
-			r + `Gaining weight.`;
+			r += `Gaining weight.`;
 			break;
 		case "XX":
-			r + `Estrogen rich.`;
+			r += `Estrogen rich.`;
 			break;
 		case "XY":
-			r + `Testosterone rich.`;
+			r += `Testosterone rich.`;
 			break;
 		case "XXY":
-			r + `Futanari mix.`;
+			r += `Futanari mix.`;
 			break;
 		case "muscle building":
-			r + `Pumping iron.`;
+			r += `Pumping iron.`;
 			break;
 		case "slimming":
-			r + `Slimming down.`;
+			r += `Slimming down.`;
 			break;
 		case "cum production":
-			r + `Cum production.`;
+			r += `Cum production.`;
 			break;
 		case "cleansing":
-			r + `Cleansing.`;
+			r += `Cleansing.`;
 			break;
 		case "fertility":
-			r + `Fertility.`;
+			r += `Fertility.`;
 			break;
 	}
 	r += `</span>`;
 	if (slave.dietCum == 2) {
-		r + `Diet Base: <span class="cyan">Cum Based.</span>`;
+		r += `Diet Base: <span class="cyan">Cum Based.</span>`;
 	} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
-		r + `Diet Base: <span class="cyan">Cum Added.</span>`;
+		r += `Diet Base: <span class="cyan">Cum Added.</span>`;
 	} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
-		r + `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
+		r += `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
 	} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
-		r + `Diet Base: <span class="cyan">Milk Added.</span>`;
+		r += `Diet Base: <span class="cyan">Milk Added.</span>`;
 	} else if ((slave.dietMilk == 2)) {
-		r + `Diet Base: <span class="cyan">Milk Based.</span>`;
+		r += `Diet Base: <span class="cyan">Milk Based.</span>`;
 	}
 }
 
@@ -423,7 +423,7 @@ if (V.abbreviateHealth == 1) {
 }
 
 if (V.abbreviateDrugs == 1) {
-	r += `<span class="tan">`
+	r += `<span class="tan">`;
 	switch (slave.drugs) {
 		case "breast injections":
 			r += `<strong>Dr:Boobs+</strong>`;
@@ -633,7 +633,7 @@ if (V.abbreviateDrugs == 1) {
 		r += `Male hormones.`;
 	}
 	r += `</span>`;
-	r == `<span class="mediumseagreen">`;
+	r += `<span class="mediumseagreen">`;
 	if ((slave.bellyImplant > -1)) {
 		r += `Belly Implant.`;
 	} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
@@ -656,7 +656,7 @@ if (V.abbreviateDrugs == 1) {
 		if (slave.pregType < 2 || slave.broodmother > 0) {
 			r += `${slave.pregWeek} weeks pregnant.`;
 		} else {
-			slave.pregWeek weeks pregnant with
+			r += `${slave.pregWeek} weeks pregnant with`;
 			if (slave.pregType >= 40) {
 				r += `a tremendous brood of offspring.`;
 			} else if (slave.pregType >= 20) {
@@ -692,7 +692,7 @@ if (V.abbreviateDrugs == 1) {
 	if (slave.balls > 0 && slave.vasectomy == 1) {
 		r += `Vasectomy.`;
 	}
-	<span class="springgreen">
+	r += `<span class="springgreen">`;
 	if (slave.inflation == 3) {
 		r += `Filled with 8 liters of ${slave.inflationType}.`;
 	} else if (slave.inflation == 2) {
@@ -1466,7 +1466,10 @@ if (V.abbreviateNationality == 1) {
 		case "Roman Revivalist":
 			r += `Rom Rev`;
 			break;
-		case "" "none" "slave" "Stateless":
+		case "":
+		case "none":
+		case "slave":
+		case "Stateless":
 			r += `None`;
 			break;
 		default:
@@ -1481,10 +1484,13 @@ if (V.abbreviateNationality == 1) {
 			if (slave.race == "white") {
 				r += `Rhodesian.`;
 			} else {
-				r += slave.nationality.
+				r += `${slave.nationality}.`;
 			}
 			break;
-		case "slave" "none" "" "Stateless":
+		case "slave":
+		case "none":
+		case "":
+		case "Stateless":
 			r += `Stateless.`;
 			break;
 		default:
@@ -1518,7 +1524,9 @@ if (V.abbreviatePhysicals == 1) {
 		case "tanned":
 			r += `Tan`;
 			break;
-		case "dark" "fair" "pale":
+		case "dark":
+		case "fair":
+		case "pale":
 			r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
 			break;
 		default:
@@ -1527,7 +1535,7 @@ if (V.abbreviatePhysicals == 1) {
 	}
 	} else {
 		r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.`;
-	</span>
+	r += `</span>`;
 }
 if (V.abbreviateGenitalia == 1) {
 	if (slave.dick > 0) {
@@ -1658,7 +1666,7 @@ if (V.abbreviatePhysicals == 1) {
 	} else if (slave.actualAge >= 20) {
 		r += `Ea20s`;
 	} else if (slave.actualAge >= 18) {
-		r += slave.actualAge
+		r += slave.actualAge;
 	}
 	if (slave.actualAge != slave.physicalAge) {
 		r += `${slave.physicalAge}y-bdy`;
@@ -1838,19 +1846,19 @@ if (V.abbreviatePhysicals == 1) {
 	}
 	r += `</span>`;
 	if (slave.waist > 95) {
-		r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]`}</span>`;
+		r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
 	} else if (slave.waist > 40) {
-		r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`}</span>`;
+		r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
 	} else if (slave.waist > 10) {
-		r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]`}</span>`;
+		r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
 	} else if (slave.waist >= -10) {
 		r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
 	} else if (slave.waist >= -40) {
-		r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]`}</span>`;
+		r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
 	} else if (slave.waist >= -95) {
-		r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]`}</span>`;
+		r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
 	} else {
-		r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`}</span>`;
+		r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
 	}
 	r += `<span class="pink">`;
 	if ((slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)) {
@@ -1865,7 +1873,7 @@ if (V.abbreviatePhysicals == 1) {
 	}
 	modScore(slave);
 	if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
-		true
+		true;
 	} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
 		r += `Mods++`;
 	} else if (V.modScore > 7) {
@@ -2055,8 +2063,8 @@ if (V.abbreviatePhysicals == 1) {
 	} else if (slave.butt > 4) {
 		r += `Big ass.`;
 	}
-	r == `</span>`;
-	<span class="red">
+	r += `</span>`;
+	r += `<span class="red">`;
 	if (slave.hips < -1) {
 		if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 			r += `Disproportionately big butt.`;
@@ -2121,7 +2129,7 @@ if (V.abbreviatePhysicals == 1) {
 	}
 	modScore(slave);
 	if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
-		true
+		true;
 	} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
 		r += `Extensive body mods.`;
 	} else if (V.modScore > 7) {
@@ -2142,12 +2150,12 @@ if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
 
 if (V.abbreviateSkills == 1) {
 	if (slave.fetish == "mindbroken") {
-		true
+		true;
 	} else if (slave.intelligenceImplant == 1) {
 		switch (slave.intelligence) {
 		case 3:
 			r += `<span class="deepskyblue">I+++(e)</span>`;
-			break
+			break;
 		case 2:
 			r += `<span class="deepskyblue">I++(e)</span>`;
 			break;
@@ -2260,7 +2268,7 @@ if (V.abbreviateSkills == 1) {
 	}
 } else if (V.abbreviateSkills == 2) {
 	if (slave.fetish == "mindbroken") {
-		true
+		true;
 	} else if (slave.intelligenceImplant == 1) {
 		switch (slave.intelligence) {
 			case 3:
@@ -2321,29 +2329,29 @@ if (V.abbreviateSkills == 1) {
 		} else if ((_SSkills > 120) && (slave.vagina < 0)) {
 			r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
 		} else if (_SSkills > 90) {
-			r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}].`: ''}.`;
+			r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
 		} else if (_SSkills > 30) {
-			r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]`. : ''}.`;
+			r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
 		} else {
-			r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]`. : ''}.`;
+			r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
 		}
 		if (slave.whoreSkill >= 100) {
-			r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
+			r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 		} else if (slave.whoreSkill >= 60) {
-			r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
+			r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 		} else if (slave.whoreSkill >= 30) {
-			r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
+			r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 		} else if (slave.whoreSkill >= 10) {
-			r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}`]: ''}.`;
+			r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 		}
 		if (slave.entertainSkill >= 100) {
-			r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
+			r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 		} else if (slave.entertainSkill >= 60) {
-			r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
+			r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 		} else if (slave.entertainSkill >= 30) {
-			r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
+			r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 		} else if (slave.entertainSkill >= 10) {
-			r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}`]: ''}.`;
+			r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 		}
 	}
 	if (slave.combatSkill > 0) {
@@ -2478,7 +2486,7 @@ if (V.abbreviateMental == 1) {
 				r += `<span class="green">Omni+Nympho!!</span>`;
 			}
 		} else {
-			<span class="green">XY+++if (V.summaryStats) {[slave.attrXY}]`: ''}</span>`;
+			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
 		}
 		if (slave.attrXX <= 5) {
 			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
@@ -2718,7 +2726,7 @@ if (V.abbreviateMental == 1) {
 			break;
 		default:
 			slave.sexualFlaw = "none";
-			break
+			break;
 	}
 	r += `<span class="green">`;
 	switch (slave.behavioralQuirk) {
@@ -2876,7 +2884,7 @@ if (V.abbreviateMental == 1) {
 				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				break;
 		}
-		</span>
+		r += `</span>`;
 	}
 	}
 	if (slave.attrKnown == 1) {
@@ -3020,7 +3028,7 @@ if (V.abbreviateMental == 1) {
 			}
 		}
 	}
-	r + =`<span class="red">`;
+	r +=`<span class="red">`;
 	switch (slave.behavioralFlaw) {
 		case "arrogant":
 			r += `Arrogant.`;
@@ -3419,7 +3427,7 @@ if (slave.rivalry != 0) {
 		} else {
 			r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
 		}
-		</span>
+		r += `</span>`;
 	}
 }
 } else if (V.abbreviateMental == 2) {
@@ -3540,7 +3548,7 @@ if (V.familyTesting == 1) {
 	if (slave.sisters == 1) {
 		_ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; });
 		if (_ssj != -1) {
-			`${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
+			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
 			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
 				if (slave.relationship == 1) {
 					r += ` and friend`;
@@ -3599,7 +3607,7 @@ if (V.familyTesting == 1) {
 	if (slave.relation != 0) {
 		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; });
 		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])'s`;
+			r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 			if (slave.relationshipTarget != slave.relationTarget) {
 				r += `<span class="lightgreen">${slave.relation}</span>.`;
 			} else {
@@ -3688,349 +3696,349 @@ if (slave.choosesOwnClothes == 1) {
 }
 switch (slave.clothes) {
 case "attractive lingerie":
-	r + =`Lingerie.`;
+	r +=`Lingerie.`;
 	break;
 case "a succubus outfit":
-	r + =`Succubus outfit.`;
+	r +=`Succubus outfit.`;
 	break;
 case "a string bikini":
-	r + =`String bikini.`;
+	r +=`String bikini.`;
 	break;
 case "a scalemail bikini":
-	r + =`Scalemail bikini.`;
+	r +=`Scalemail bikini.`;
 	break;
 case "a monokini":
-	r + =`Monokini.`;
+	r +=`Monokini.`;
 	break;
 case "an apron":
-	r + =`Apron.`;
+	r +=`Apron.`;
 	break;
 case "a cybersuit":
-	r + =`Cybersuit.`;
+	r +=`Cybersuit.`;
 	break;
 case "cutoffs and a t-shirt":
-	r + =`Cutoffs, t-shirt.`;
+	r +=`Cutoffs, t-shirt.`;
 	break;
 case "a slutty outfit":
-	r + =`Slutty outfit.`;
+	r +=`Slutty outfit.`;
 	break;
 case "uncomfortable straps":
-	r + =`Leather straps.`;
+	r +=`Leather straps.`;
 	break;
 case "a fallen nuns habit":
-	r + =`Slutty habit.`;
+	r +=`Slutty habit.`;
 	break;
 case "a chattel habit":
-	r + =`Chattel habit.`;
+	r +=`Chattel habit.`;
 	break;
 case "a penitent nuns habit":
-	r + =`Cilice.`;
+	r +=`Cilice.`;
 	break;
 case "slutty jewelry":
-	r + =`Bangles.`;
+	r +=`Bangles.`;
 	break;
 case "attractive lingerie for a pregnant woman":
-	r + =`Preggo lingerie.`;
+	r +=`Preggo lingerie.`;
 	break;
 case "a maternity dress":
-	r + =`Maternity dress.`;
+	r +=`Maternity dress.`;
 	break;
 case "stretch pants and a crop-top":
-	r + =`Stretch pants, crop-top.`;
+	r +=`Stretch pants, crop-top.`;
 	break;
 case "harem gauze":
-	r + =`Harem outfit.`;
+	r +=`Harem outfit.`;
 	break;
 case "a slave gown":
-	r + =`Slave gown.`;
+	r +=`Slave gown.`;
 	break;
 case "a halter top dress":
-	r + =`Halter top dress.`;
+	r +=`Halter top dress.`;
 	break;
 case "a mini dress":
-	r + =`Mini dress.`;
+	r +=`Mini dress.`;
 	break;
 case "a ball gown":
-	r + =`Ball gown.`;
+	r +=`Ball gown.`;
 	break;
 case "slutty business attire":
-	r + =`Slutty suit.`;
+	r +=`Slutty suit.`;
 	break;
 case "nice business attire":
-	r + =`Nice suit.`;
+	r +=`Nice suit.`;
 	break;
 case "a comfortable bodysuit":
-	r + =`Bodysuit.`;
+	r +=`Bodysuit.`;
 	break;
 case "a military uniform":
-	r + =`Military uniform.`;
+	r +=`Military uniform.`;
 	break;
 case "a schutzstaffel uniform":
-	r + =`Schutzstaffel uniform.`;
+	r +=`Schutzstaffel uniform.`;
 	break;
 case "a slutty schutzstaffel uniform":
-	r + =`Slutty Schutzstaffel uniform.`;
+	r +=`Slutty Schutzstaffel uniform.`;
 	break;
 case "a red army uniform":
-	r + =`Red Army uniform.`;
+	r +=`Red Army uniform.`;
 	break;
 case "a long qipao":
-	r + =`Long Qipao.`;
+	r +=`Long Qipao.`;
 	break;
 case "battlearmor":
-	r + =`Battlearmor.`;
+	r +=`Battlearmor.`;
 	break;
 case "a mounty outfit":
-	r + =`Mounty outfit.`;
+	r +=`Mounty outfit.`;
 	break;
 case "a dirndl":
-	r + =`Dirndl.`;
+	r +=`Dirndl.`;
 	break;
 case "lederhosen":
-	r + =`Lederhosen.`;
+	r +=`Lederhosen.`;
 	break;
 case "a biyelgee costume":
-	r + =`Biyelgee costume.`;
+	r +=`Biyelgee costume.`;
 	break;
 case "a leotard":
-	r + =`Leotard.`;
+	r +=`Leotard.`;
 	break;
 case "a bunny outfit":
-	r + =`Bunny outfit.`;
+	r +=`Bunny outfit.`;
 	break;
 case "a slutty maid outfit":
-	r + =`Slutty maid.`;
+	r +=`Slutty maid.`;
 	break;
 case "a nice maid outfit":
-	r + =`Nice maid.`;
+	r +=`Nice maid.`;
 	break;
 case "a slutty nurse outfit":
-	r + =`Slutty nurse.`;
+	r +=`Slutty nurse.`;
 	break;
 case "a nice nurse outfit":
-	r + =`Nice nurse.`;
+	r +=`Nice nurse.`;
 	break;
 case "a schoolgirl outfit":
-	r + =`Schoolgirl outfit.`;
+	r +=`Schoolgirl outfit.`;
 	break;
 case "a kimono":
-	r + =`Kimono.`;
+	r +=`Kimono.`;
 	break;
 case "a hijab and abaya":
-	r + =`Hijab and abaya.`;
+	r +=`Hijab and abaya.`;
 	break;
 case "battledress":
-	r + =`Battledress.`;
+	r +=`Battledress.`;
 	break;
 case "a latex catsuit":
-	r + =`Nice latex.`;
+	r +=`Nice latex.`;
 	break;
 case "restrictive latex":
-	r + =`Bondage latex.`;
+	r +=`Bondage latex.`;
 	break;
 case "conservative clothing":
-	r + =`Conservative clothing.`;
+	r +=`Conservative clothing.`;
 	break;
 case "chains":
-	r + =`Chains.`;
+	r +=`Chains.`;
 	break;
 case "a cheerleader outfit":
-	r + =`Cheerleader.`;
+	r +=`Cheerleader.`;
 	break;
 case "clubslut netting":
-	r + =`Netting.`;
+	r +=`Netting.`;
 	break;
 case "shibari ropes":
-	r + =`Shibari.`;
+	r +=`Shibari.`;
 	break;
 case "Western clothing":
-	r + =`Chaps.`;
+	r +=`Chaps.`;
 	break;
 case "body oil":
-	r + =`Body oil.`;
+	r +=`Body oil.`;
 	break;
 case "a toga":
-	r + =`Toga.`;
+	r +=`Toga.`;
 	break;
 case "a huipil":
-	r + =`Huipil.`;
+	r +=`Huipil.`;
 	break;
 case "a slutty qipao":
-	r + =`Qipao.`;
+	r +=`Qipao.`;
 	break;
 case "spats and a tank top":
-	r + =`Spats, tank top.`;
+	r +=`Spats, tank top.`;
 	break;
 default:
-	r + =`Naked.`;
+	r +=`Naked.`;
 	break;
 }
 switch (slave.collar) {
 case "uncomfortable leather":
-	r + =`Leather collar.`;
+	r +=`Leather collar.`;
 	break;
 case "tight steel":
-	r + =`Steel collar.`;
+	r +=`Steel collar.`;
 	break;
 case "preg biometrics":
-	r + =`Pregnancy biometrics collar.`;
+	r +=`Pregnancy biometrics collar.`;
 	break;
 case "cruel retirement counter":
-	r + =`Cruel counter collar.`;
+	r +=`Cruel counter collar.`;
 	break;
 case "shock punishment":
-	r + =`Shock collar.`;
+	r +=`Shock collar.`;
 	break;
 case "dildo gag":
-	r + =`Dildo gag.`;
+	r +=`Dildo gag.`;
 	break;
 case "massive dildo gag":
-	r + =`Throat-bulging dildo gag.`;
+	r +=`Throat-bulging dildo gag.`;
 	break;
 case "neck corset":
-	r + =`Neck corset.`;
+	r +=`Neck corset.`;
 	break;
 case "stylish leather":
-	r + =`Stylish leather collar.`;
+	r +=`Stylish leather collar.`;
 	break;
 case "satin choker":
-	r + =`Satin choker.`;
+	r +=`Satin choker.`;
 	break;
 case "silk ribbon":
-	r + =`Silken ribbon.`;
+	r +=`Silken ribbon.`;
 	break;
 case "heavy gold":
-	r + =`Gold collar.`;
+	r +=`Gold collar.`;
 	break;
 case "bowtie":
-	r + =`Bowtie collar.`;
+	r +=`Bowtie collar.`;
 	break;
 case "pretty jewelry":
-	r + =`Pretty collar.`;
+	r +=`Pretty collar.`;
 	break;
 case "nice retirement counter":
-	r + =`Nice counter collar.`;
+	r +=`Nice counter collar.`;
 	break;
 case "leather with cowbell":
-	r + =`Cowbell collar.`;
+	r +=`Cowbell collar.`;
 	break;
 case "ancient Egyptian":
-	r + =`Wesekh.`;
+	r +=`Wesekh.`;
 	break;
 case "ball gag":
-	r + =`Ball gag.`;
+	r +=`Ball gag.`;
 	break;
 case "bit gag":
-	r + =`Bit gag.`;
+	r +=`Bit gag.`;
 	break;
 case "porcelain mask":
-	r + =`Porcelain mask.`;
+	r +=`Porcelain mask.`;
 	break;
 }
 switch (slave.bellyAccessory) {
 case "shapewear":
-	r + =`Shapewear.`;
+	r +=`Shapewear.`;
 	break;
 case "a small empathy belly":
-	r + =`Small fake belly.`;
+	r +=`Small fake belly.`;
 	break;
 case "a medium empathy belly":
-	r + =`Medium fake belly.`;
+	r +=`Medium fake belly.`;
 	break;
 case "a large empathy belly":
-	r + =`Large fake belly.`;
+	r +=`Large fake belly.`;
 	break;
 case "a huge empathy belly":
-	r + =`Huge fake belly.`;
+	r +=`Huge fake belly.`;
 	break;
 case "a corset":
-	r + =`Corset.`;
+	r +=`Corset.`;
 	break;
 case "an extreme corset":
-	r + =`Extreme corsetage.`;
+	r +=`Extreme corsetage.`;
 	break;
 }
 if (slave.amp != 1) {
 	if (slave.legAccessory == "short stockings") {
-		r + =`Short stockings.`;
+		r +=`Short stockings.`;
 	} else if (slave.legAccessory == "long stockings") {
-		r + =`Long stockings.`;
+		r +=`Long stockings.`;
 	}
 }
 if (canWalk(slave)) {
 if (slave.shoes == "heels") {
-	r + =`Heels.`;
+	r +=`Heels.`;
 } else if (slave.shoes == "pumps") {
-	r + =`Pumps.`;
+	r +=`Pumps.`;
 } else if (slave.shoes == "extreme heels") {
-	r + =`Extreme heels.`;
+	r +=`Extreme heels.`;
 } else if (slave.shoes == "boots") {
-	r + =`Boots.`;
+	r +=`Boots.`;
 } else if (slave.heels == 1) {
-	r + =`<span class="yellow">Crawling.</span>`;
+	r +=`<span class="yellow">Crawling.</span>`;
 } else if (slave.shoes == "flats") {
-	r + =`Flats.`;
+	r +=`Flats.`;
 }
 }
 switch (slave.vaginalAccessory) {
 case "chastity belt":
-	r + =`Vaginal chastity.`;
+	r +=`Vaginal chastity.`;
 	break;
 case "combined chastity":
-	r + =`Combined chastity.`;
+	r +=`Combined chastity.`;
 	break;
 case "anal chastity":
-	r + =`Anal chastity.`;
+	r +=`Anal chastity.`;
 	break;
 case "dildo":
-	r + =`Vaginal dildo.`;
+	r +=`Vaginal dildo.`;
 	break;
 case "large dildo":
-	r + =`Large vaginal dildo.`;
+	r +=`Large vaginal dildo.`;
 	break;
 case "huge dildo":
-	r + =`Huge vaginal dildo.`;
+	r +=`Huge vaginal dildo.`;
 	break;
 case "long dildo":
-	r + =`Long vaginal dildo.`;
+	r +=`Long vaginal dildo.`;
 	break;
 case "long, large dildo":
-	r + =`Long and large vaginal dildo.`;
+	r +=`Long and large vaginal dildo.`;
 	break;
 case "long, huge dildo":
-	r + =`Long and wide vaginal dildo.`;
+	r +=`Long and wide vaginal dildo.`;
 	break;
 }
 if (slave.dickAccessory == "chastity") {
-	r + =`Chastity cage.`;
+	r +=`Chastity cage.`;
 } else if (slave.dickAccessory == "combined chastity") {
-	r + =`Combined chastity.`;
+	r +=`Combined chastity.`;
 } else if (slave.dickAccessory == "anal chastity") {
-	r + =`Anal chastity.`;
+	r +=`Anal chastity.`;
 }
 switch (slave.buttplug) {
 case "plug":
-	r + =`Buttplug.`;
+	r +=`Buttplug.`;
 	break;
 case "large plug":
-	r + =`Large buttplug.`;
+	r +=`Large buttplug.`;
 	break;
 case "huge plug":
-	r + =`Huge buttplug.`;
+	r +=`Huge buttplug.`;
 	break;
 case "long plug":
-	r + =`Long buttplug.`;
+	r +=`Long buttplug.`;
 	break;
 case "long, large plug":
-	r + =`Large, long buttplug.`;
+	r +=`Large, long buttplug.`;
 	break;
 case "long, huge plug":
-	r + =`Enormous buttplug.`;
+	r +=`Enormous buttplug.`;
 	break;
 }
 switch (slave.buttplugAttachment) {
 	case "tail":
-		r + =`Attached tail.`;
+		r +=`Attached tail.`;
 	break;
 }
 }
@@ -4038,8 +4046,8 @@ switch (slave.buttplugAttachment) {
 
 r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 if (slave.useRulesAssistant == 0) {
-	r + =`<span class="lightgreen">RA-Exempt</span>`;
-} else if (V.abbreviateRulesets == 2 && (def slave.currentRules) && (slave.currentRules.length > 0)) {
+	r +=`<span class="lightgreen">RA-Exempt</span>`;
+} else if (V.abbreviateRulesets == 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
 	r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") }`;
 }
 
@@ -4051,4 +4059,4 @@ if (V.abbreviateOrigins == 2 && slave.origin != 0) {
 	r += `<span class="gray">${slave.origin}</span>`;
 }
 	return r;
-}
+};
-- 
GitLab


From 9662d19b66d0c4ddae63d2de67dd268a55fc7be8 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 23:45:11 +0300
Subject: [PATCH 012/189] beautify

---
 src/js/slaveSummaryWidgets.tw | 7630 +++++++++++++++++----------------
 1 file changed, 3833 insertions(+), 3797 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index b58d2d2325f..b68a4801796 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -13,4050 +13,4086 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 	const V = State.variables;
 	let r = "";
 	if (V.abbreviateDevotion == 1) {
-	if (slave.fetish == "mindbroken") {
-		r += `<span class="red">MB</span>`;
-	} else if (slave.devotion < -95) {
-		r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-	} else if (slave.devotion < -50) {
-		r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-	} else if (slave.devotion < -20) {
-		r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-	} else if (slave.devotion <= 20) {
-		r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
-	} else if (slave.devotion <= 50) {
-		r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
-	} else if (slave.devotion <= 95) {
-		r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
-	} else {
-		r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
-	}
-	if (slave.fetish == "mindbroken") {
-		true;
-	} else if (slave.trust < -95) {
-		r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-	} else if (slave.trust < -50) {
-		r += `<span class="goldenrod">Terr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-	} else if (slave.trust < -20) {
-		r += `<span class="gold">Fright${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-	} else if (slave.trust <= 20) {
-		r += `<span class="yellow">Fear${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-	} else if (slave.trust <= 50) {
-		if (slave.devotion < -20) {
-			r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		} else {
-			r += `<span class="mediumaquamarine">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		}
-	} else if (slave.trust < 95) {
-		if (slave.devotion < -20) {
-			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		if (slave.fetish == "mindbroken") {
+			r += `<span class="red">MB</span>`;
+		} else if (slave.devotion < -95) {
+			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion < -50) {
+			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion < -20) {
+			r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion <= 20) {
+			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+		} else if (slave.devotion <= 50) {
+			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+		} else if (slave.devotion <= 95) {
+			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
 		} else {
-			r += `<span class="mediumseagreen">Trust${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
 		}
-	} else {
-		if (slave.devotion < -20) {
-			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		} else {
-			r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		}
-	}
-} else if (V.abbreviateDevotion == 2) {
-	if (slave.fetish == "mindbroken") {
-		r += `<span class="red">Mindbroken.</span>`;
-	} else if (slave.devotion < -95) {
-		r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	} else if (slave.devotion < -50) {
-		r += `<span class="darkviolet">Hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	} else if (slave.devotion < -20) {
-		r += `<span class="mediumorchid">Resistant${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	} else if (slave.devotion <= 20) {
-		r += `<span class="yellow">Ambivalent${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	} else if (slave.devotion <= 50) {
-		r += `<span class="hotpink">Accepting${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	} else if (slave.devotion <= 95) {
-		r += `<span class="deeppink">Devoted${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	} else {
-		r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-	}
-	if (slave.fetish == "mindbroken") {
-		true;
-	} else if (slave.trust < -95) {
-		r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-	} else if (slave.trust < -50) {
-		r += `<span class="goldenrod">Terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-	} else if (slave.trust < -20) {
-		r += `<span class="gold">Frightened${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-	} else if (slave.trust <= 20) {
-		r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-	} else if (slave.trust <= 50) {
-		if (slave.devotion < -20) {
-			r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		if (slave.fetish == "mindbroken") {
+			true;
+		} else if (slave.trust < -95) {
+			r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust < -50) {
+			r += `<span class="goldenrod">Terr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust < -20) {
+			r += `<span class="gold">Fright${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust <= 20) {
+			r += `<span class="yellow">Fear${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust <= 50) {
+			if (slave.devotion < -20) {
+				r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="mediumaquamarine">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		} else if (slave.trust < 95) {
+			if (slave.devotion < -20) {
+				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="mediumseagreen">Trust${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
 		} else {
-			r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			if (slave.devotion < -20) {
+				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
 		}
-	} else if (slave.trust < 95) {
-		if (slave.devotion < -20) {
-			r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+	} else if (V.abbreviateDevotion == 2) {
+		if (slave.fetish == "mindbroken") {
+			r += `<span class="red">Mindbroken.</span>`;
+		} else if (slave.devotion < -95) {
+			r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion < -50) {
+			r += `<span class="darkviolet">Hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion < -20) {
+			r += `<span class="mediumorchid">Resistant${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 20) {
+			r += `<span class="yellow">Ambivalent${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 50) {
+			r += `<span class="hotpink">Accepting${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 95) {
+			r += `<span class="deeppink">Devoted${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
 		} else {
-			r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
 		}
-	} else {
-		if (slave.devotion < -20) {
-			r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		if (slave.fetish == "mindbroken") {
+			true;
+		} else if (slave.trust < -95) {
+			r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust < -50) {
+			r += `<span class="goldenrod">Terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust < -20) {
+			r += `<span class="gold">Frightened${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust <= 20) {
+			r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust <= 50) {
+			if (slave.devotion < -20) {
+				r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		} else if (slave.trust < 95) {
+			if (slave.devotion < -20) {
+				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
 		} else {
-			r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			if (slave.devotion < -20) {
+				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
 		}
 	}
-}
 
-if (slave.fuckdoll == 0) {
-	if (V.abbreviateRules == 1) {
-		switch (slave.livingRules) {
-			case "luxurious":
-				r += `<strong>LS:Lux</strong>`;
-				break;
-			case "normal":
-				r += `<strong>LS:Nor</strong>`;
-				break;
-			default:
-				r += `<strong>LS:Spa</strong>`;
-				break;
-		}
-		if (canTalk(slave)) {
-			switch (slave.speechRules) {
+	if (slave.fuckdoll == 0) {
+		if (V.abbreviateRules == 1) {
+			switch (slave.livingRules) {
+				case "luxurious":
+					r += `<strong>LS:Lux</strong>`;
+					break;
+				case "normal":
+					r += `<strong>LS:Nor</strong>`;
+					break;
+				default:
+					r += `<strong>LS:Spa</strong>`;
+					break;
+			}
+			if (canTalk(slave)) {
+				switch (slave.speechRules) {
+					case "permissive":
+						r += `<strong>SpR:P</strong>`;
+						break;
+					case "accent elimination":
+						r += `<strong>SpR:NoAcc</strong>`;
+						break;
+					case "language lessons":
+						r += `<strong>SpR:LL</strong>`;
+						break;
+					default:
+						r += `<strong>SpR:R</strong>`;
+						break;
+				}
+			}
+			switch (slave.relationshipRules) {
+				case "permissive":
+					r += `<strong>ReR:P</strong>`;
+					break;
+				case "just friends":
+					r += `<strong>ReR:Fr</strong>`;
+					break;
+				default:
+					r += `<strong>ReR:R</strong>`;
+					break;
+			}
+			switch (slave.standardPunishment) {
+				case "confinement":
+					r += `<strong>Pun:Conf</strong>`;
+					break;
+				case "whipping":
+					r += `<strong>Pun:Whip</strong>`;
+					break;
+				case "chastity":
+					r += `<strong>Pun:Chas</strong>`;
+					break;
+				default:
+					r += `<strong>Pun:Situ</strong>`;
+					break;
+			}
+			switch (slave.standardReward) {
+				case "relaxation":
+					r += `<strong>Rew:Relx</strong>`;
+					break;
+				case "drugs":
+					r += `<strong>Rew:Drug</strong>`;
+					break;
+				case "orgasm":
+					r += `<strong>Rew:Orga</strong>`;
+					break;
+				default:
+					r += `<strong>Rew:Situ</strong>`;
+					break;
+			}
+			switch (slave.releaseRules) {
 				case "permissive":
-					r += `<strong>SpR:P</strong>`;
+					r += `<strong>MaR:P</strong>`;
 					break;
-				case "accent elimination":
-					r += `<strong>SpR:NoAcc</strong>`;
+				case "sapphic":
+					r += `<strong>MaR:S</strong>`;
 					break;
-				case "language lessons":
-					r += `<strong>SpR:LL</strong>`;
+				case "masturbation":
+					r += `<strong>MaR:M</strong>`;
 					break;
 				default:
-					r += `<strong>SpR:R</strong>`;
+					r += `<strong>MaR:R</strong>`;
 					break;
 			}
+		} else if (V.abbreviateRules == 2) {
+			r += `Living standard: ${slave.livingRules}.`;
+			if (canTalk(slave)) {
+				r += `Speech rules: ${slave.speechRules}.`;
+			}
+			r += `Relationship rules: ${slave.relationshipRules}.`;
+			r += `Typical punishment: ${slave.standardPunishment}.`;
+			r += `Typical reward: ${slave.standardReward}.`;
+			r += `Release rules: ${slave.releaseRules}.`;
+		}
+	}
+
+	if (slave.tired != 0) {
+		r += `Tired.`;
+	}
+
+	if (V.abbreviateDiet == 1) {
+		if (slave.weight < -95) {
+			r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		} else if (slave.weight < -30) {
+			if (slave.hips < -1) {
+				r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W--${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight < -10) {
+			r += `<strong>W-${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 10) {
+			r += `<strong>W${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 30) {
+			r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 95) {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 130) {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 160) {
+			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 190) {
+			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else {
+			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		}
+	} else if (V.abbreviateDiet == 2) {
+		if (slave.weight < -95) {
+			r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		} else if (slave.weight < -30) {
+			if (slave.hips < -1) {
+				r += `Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight < -10) {
+			r += `Thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 10) {
+			r += `Trim${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 30) {
+			r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 95) {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 130) {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 160) {
+			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 190) {
+			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else {
+			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+				r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
 		}
-		switch (slave.relationshipRules) {
-			case "permissive":
-				r += `<strong>ReR:P</strong>`;
+	}
+
+	if (V.abbreviateDiet == 1) {
+		r += `<span class="teal">`;
+		switch (slave.diet) {
+			case "restricted":
+				r += `<strong>Di:W-</strong>`;
 				break;
-			case "just friends":
-				r += `<strong>ReR:Fr</strong>`;
+			case "fattening":
+				r += `<strong>Di:W+</strong>`;
 				break;
-			default:
-				r += `<strong>ReR:R</strong>`;
+			case "XX":
+				r += `<strong>Di:XX+</strong>`;
 				break;
-		}
-		switch (slave.standardPunishment) {
-			case "confinement":
-				r += `<strong>Pun:Conf</strong>`;
+			case "XY":
+				r += `<strong>Di:XY+</strong>`;
 				break;
-			case "whipping":
-				r += `<strong>Pun:Whip</strong>`;
+			case "XXY":
+				r += `<strong>Di:XXY+</strong>`;
 				break;
-			case "chastity":
-				r += `<strong>Pun:Chas</strong>`;
+			case "muscle building":
+				r += `<strong>Di:M+</strong>`;
 				break;
-			default:
-				r += `<strong>Pun:Situ</strong>`;
+			case "slimming":
+				r += `<strong>Di:M-</strong>`;
+				break;
+			case "cum production":
+				r += `<strong>Di:C+</strong>`;
 				break;
+			case "cleansing":
+				r += `<strong>Di:H+</strong>`;
+				break;
+			case "fertility":
+				r += `<strong>Di:F+</strong>`;
+				break;
+		}
+		r += `</span>`;
+		r += `<span class="cyan">`;
+		if (slave.dietCum == 2) {
+			r += `<strong>Cum++</strong>`;
+		} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
+			r += `<strong>Cum+</strong>`;
+		} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
+			r += `<strong>Cum+ Milk+</strong>`;
+		} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
+			r += `<strong>Milk+</strong>`;
+		} else if ((slave.dietMilk == 2)) {
+			r += `<strong>Milk++</strong>`;
 		}
-		switch (slave.standardReward) {
-			case "relaxation":
-				r += `<strong>Rew:Relx</strong>`;
+		r += `</span>`;
+	} else if (V.abbreviateDiet == 2) {
+		r += `<span class="teal">`;
+		switch (slave.diet) {
+			case "restricted":
+				r += `Dieting.`;
 				break;
-			case "drugs":
-				r += `<strong>Rew:Drug</strong>`;
+			case "fattening":
+				r += `Gaining weight.`;
 				break;
-			case "orgasm":
-				r += `<strong>Rew:Orga</strong>`;
+			case "XX":
+				r += `Estrogen rich.`;
 				break;
-			default:
-				r += `<strong>Rew:Situ</strong>`;
+			case "XY":
+				r += `Testosterone rich.`;
 				break;
-		}
-		switch (slave.releaseRules) {
-			case "permissive":
-				r += `<strong>MaR:P</strong>`;
+			case "XXY":
+				r += `Futanari mix.`;
 				break;
-			case "sapphic":
-				r += `<strong>MaR:S</strong>`;
+			case "muscle building":
+				r += `Pumping iron.`;
 				break;
-			case "masturbation":
-				r += `<strong>MaR:M</strong>`;
+			case "slimming":
+				r += `Slimming down.`;
 				break;
-			default:
-				r += `<strong>MaR:R</strong>`;
+			case "cum production":
+				r += `Cum production.`;
+				break;
+			case "cleansing":
+				r += `Cleansing.`;
+				break;
+			case "fertility":
+				r += `Fertility.`;
 				break;
 		}
-	} else if (V.abbreviateRules == 2) {
-		r += `Living standard: ${slave.livingRules}.`;
-		if (canTalk(slave)) {
-			r += `Speech rules: ${slave.speechRules}.`;
+		r += `</span>`;
+		if (slave.dietCum == 2) {
+			r += `Diet Base: <span class="cyan">Cum Based.</span>`;
+		} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
+			r += `Diet Base: <span class="cyan">Cum Added.</span>`;
+		} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
+			r += `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
+		} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
+			r += `Diet Base: <span class="cyan">Milk Added.</span>`;
+		} else if ((slave.dietMilk == 2)) {
+			r += `Diet Base: <span class="cyan">Milk Based.</span>`;
 		}
-		r += `Relationship rules: ${slave.relationshipRules}.`;
-		r += `Typical punishment: ${slave.standardPunishment}.`;
-		r += `Typical reward: ${slave.standardReward}.`;
-		r += `Release rules: ${slave.releaseRules}.`;
 	}
-}
-
-if (slave.tired != 0) {
-	r += `Tired.`;
-}
 
-if (V.abbreviateDiet == 1) {
-	if (slave.weight < -95) {
-		r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-	} else if (slave.weight < -30) {
-		if (slave.hips < -1) {
-			r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		} else {
-			r += `<strong><span class="red">W--${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-		}
-	} else if (slave.weight < -10) {
-		r += `<strong>W-${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-	} else if (slave.weight <= 10 ) {
-		r += `<strong>W${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-	} else if (slave.weight <= 30) {
-		r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-	} else if (slave.weight <= 95) {
-		if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		} else {
-			r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+	if (V.abbreviateHealth == 1) {
+		if (slave.health < -20) {
+			r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		} else if (slave.health <= 20) {
+			r += `<strong><span class="yellow">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		} else if (slave.health > 20) {
+			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
 		}
-	} else if (slave.weight <= 130) {
-		if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+	} else if (V.abbreviateHealth == 2) {
+		if (slave.health < -90) {
+			r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health < -50) {
+			r += `<span class="red">Extremely unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health < -20) {
+			r += `<span class="red">Unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 20) {
+			r += `<span class="yellow">Healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 50) {
+			r += `<span class="green">Very healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 90) {
+			r += `<span class="green">Extremely healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
 		} else {
-		r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
 		}
-	} else if (slave.weight <= 160) {
-		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		} else {
-			r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+	}
+
+	if (V.abbreviateDrugs == 1) {
+		r += `<span class="tan">`;
+		switch (slave.drugs) {
+			case "breast injections":
+				r += `<strong>Dr:Boobs+</strong>`;
+				break;
+			case "intensive breast injections":
+				r += `<strong>Dr:Boobs++</strong>`;
+				break;
+			case "hyper breast injections":
+				r += `<strong>Dr:Boobs+++</strong>`;
+				break;
+			case "butt injections":
+				r += `<strong>Dr:Butt+</strong>`;
+				break;
+			case "intensive butt injections":
+				r += `<strong>Dr:Butt++</strong>`;
+				break;
+			case "hyper butt injections":
+				r += `<strong>Dr:Butt+++</strong>`;
+				break;
+			case "lip injections":
+				r += `<strong>Dr:Lip+</strong>`;
+				break;
+			case "fertility drugs":
+				r += `<strong>Dr:Fert+</strong>`;
+				break;
+			case "super fertility drugs":
+				r += `<strong>Dr:Fert++</strong>`;
+				break;
+			case "penis enhancement":
+				r += `<strong>Dr:Dick+</strong>`;
+				break;
+			case "intensive penis enhancement":
+				r += `<strong>Dr:Dick++</strong>`;
+				break;
+			case "hyper penis enhancement":
+				r += `<strong>Dr:Dick+++</strong>`;
+				break;
+			case "testicle enhancement":
+				r += `<strong>Dr:Balls+</strong>`;
+				break;
+			case "intensive testicle enhancement":
+				r += `<strong>Dr:Balls++</strong>`;
+				break;
+			case "hyper testicle enhancement":
+				r += `<strong>Dr:Balls+++</strong>`;
+				break;
+			case "psychosuppressants":
+				r += `<strong>Dr:Psych</strong>`;
+				break;
+			case "steroids":
+				r += `<strong>Dr:Ster</strong>`;
+				break;
+			case "female hormone injections":
+				r += `<strong>Dr:HormXX++</strong>`;
+				break;
+			case "male hormone injections":
+				r += `<strong>Dr:HormXY++</strong>`;
+				break;
+			case "hormone enhancers":
+				r += `<strong>Dr:Horm+</strong>`;
+				break;
+			case "hormone blockers":
+				r += `<strong>Dr:Horm-</strong>`;
+				break;
+			case "anti-aging cream":
+				r += `<strong>Dr:Age-</strong>`;
+				break;
+			case "appetite suppressors":
+				r += `<strong>Dr:ApSup</strong>`;
+				break;
+			case "penis atrophiers":
+				r += `<strong>Dr:Dick-</strong>`;
+				break;
+			case "testicle atrophiers":
+				r += `<strong>Dr:Balls-</strong>`;
+				break;
+			case "clitoris atrophiers":
+				r += `<strong>Dr:Clit-</strong>`;
+				break;
+			case "labia atrophiers":
+				r += `<strong>Dr:Labia-</strong>`;
+				break;
+			case "nipple atrophiers":
+				r += `<strong>Dr:Nipple-</strong>`;
+				break;
+			case "lip atrophiers":
+				r += `<strong>Dr:Lip-</strong>`;
+				break;
+			case "breast redistributors":
+				r += `<strong>Dr:Breast-</strong>`;
+				break;
+			case "butt redistributors":
+				r += `<strong>Dr:Butt-</strong>`;
+				break;
+			case "sag-B-gone":
+				r += `<strong>Dr:AntiSag</strong>`;
+				break;
+			case "growth stimulants":
+				r += `<strong>Dr:groStim</strong>`;
+				break;
 		}
-	} else if (slave.weight <= 190) {
-		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		} else {
-			r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		r += `</span>`;
+		r += `<span class="lightgreen">`;
+		if (slave.curatives == 2) {
+			r += `<strong>Cura</strong>`;
+		} else if (slave.curatives == 1) {
+			r += `<strong>Prev</strong>`;
 		}
-	} else {
-		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		} else {
-			r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		r += `</span>`;
+		if (slave.aphrodisiacs != 0) {
+			r += `<span class="lightblue">`;
+			if (slave.aphrodisiacs == 1) {
+				r += `<strong>Aph</strong>`;
+			} else if (slave.aphrodisiacs == 2) {
+				r += `<strong>Aph++</strong>`;
+			} else {
+				r += `<strong>Anaph</strong>`;
+			}
+			r += `</span>`;
 		}
-	}
-} else if (V.abbreviateDiet == 2) {
-	if (slave.weight < -95) {
-		r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-	} else if (slave.weight < -30) {
-		if (slave.hips < -1) {
-			r += `Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else {
-			r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-		}
-	} else if (slave.weight < -10) {
-		r += `Thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
-	} else if (slave.weight <= 10 ) {
-		r += `Trim${V.summaryStats? `[${slave.weight}]`: ''}.`;
-	} else if (slave.weight <= 30) {
-		r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
-	} else if (slave.weight <= 95) {
-		if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else {
-			r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		if (slave.addict != 0) {
+			r += `<span class="cyan">Add</span>`;
 		}
-	} else if (slave.weight <= 130) {
-		if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else {
-			r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		r += `<span class="lightsalmon">`;
+		if (slave.hormones > 1) {
+			r += `<strong>Ho:F+</strong>`;
+		} else if (slave.hormones > 0) {
+			r += `<strong>Ho:F</strong>`;
+		} else if (slave.hormones < -1) {
+			r += `<strong>Ho:M+</strong>`;
+		} else if (slave.hormones < 0) {
+			r += `<strong>Ho:M</strong>`;
 		}
-	} else if (slave.weight <= 160) {
-		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else {
-			r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		r += `</span>`;
+		r += `<span class="mediumseagreen">`;
+		if ((slave.bellyImplant > -1)) {
+			r += `<strong>Belly Imp</strong>`;
+		} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
+			r += `<strong>Barr</strong>`;
+		} else if (slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+			r += `<strong>Prepub</strong>`;
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+			r += `<strong>Meno</strong>`;
+		} else if (slave.pregWeek < 0) {
+			r += `<strong>Postpartum</strong>`;
+		} else if (slave.preg == -1) {
+			r += `<strong>CC</strong>`;
+		} else if (slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+			r += `<strong>Fert+</strong>`;
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1) {
+			r += `<strong>Preg?</strong>`;
+		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
+			r += `<strong>Perm preg</strong>`;
+		} else if (slave.pregKnown == 1) {
+			r += `<strong>${slave.pregWeek} wks preg</strong>`;
 		}
-	} else if (slave.weight <= 190) {
-		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else {
-			r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		r += `</span>`;
+		if (slave.induce == 1) {
+			r += `<span class="orange"><strong>Early Labor</strong></span>`;
 		}
-	} else {
-		if (V.arcologies[0].FSHedonisticDecadence != "unset") {
-			r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else {
-			r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		if (slave.pubertyXY == 0 && slave.balls > 0) {
+			r += `<strong>Prepub balls</strong>`;
 		}
-	}
-}
-
-if (V.abbreviateDiet == 1) {
-	r += `<span class="teal">`;
-	switch (slave.diet) {
-		case "restricted":
-			r += `<strong>Di:W-</strong>`;
-			break;
-		case "fattening":
-			r += `<strong>Di:W+</strong>`;
-			break;
-		case "XX":
-			r += `<strong>Di:XX+</strong>`;
-			break;
-		case "XY":
-			r += `<strong>Di:XY+</strong>`;
-			break;
-		case "XXY":
-			r += `<strong>Di:XXY+</strong>`;
-			break;
-		case "muscle building":
-			r += `<strong>Di:M+</strong>`;
-			break;
-		case "slimming":
-			r += `<strong>Di:M-</strong>`;
-			break;
-		case "cum production":
-			r += `<strong>Di:C+</strong>`;
-			break;
-		case "cleansing":
-			r += `<strong>Di:H+</strong>`;
-			break;
-		case "fertility":
-			r += `<strong>Di:F+</strong>`;
-			break;
-	}
-	r += `</span>`;
-	r += `<span class="cyan">`;
-	if (slave.dietCum == 2) {
-		r += `<strong>Cum++</strong>`;
-	} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
-		r += `<strong>Cum+</strong>`;
-	} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
-		r += `<strong>Cum+ Milk+</strong>`;
-	} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
-		r += `<strong>Milk+</strong>`;
-	} else if ((slave.dietMilk == 2)) {
-		r += `<strong>Milk++</strong>`;
-	}
-	r += `</span>`;
-} else if (V.abbreviateDiet == 2) {
-	r += `<span class="teal">`;
-	switch (slave.diet) {
-		case "restricted":
-			r += `Dieting.`;
-			break;
-		case "fattening":
-			r += `Gaining weight.`;
-			break;
-		case "XX":
-			r += `Estrogen rich.`;
-			break;
-		case "XY":
-			r += `Testosterone rich.`;
-			break;
-		case "XXY":
-			r += `Futanari mix.`;
-			break;
-		case "muscle building":
-			r += `Pumping iron.`;
-			break;
-		case "slimming":
-			r += `Slimming down.`;
-			break;
-		case "cum production":
-			r += `Cum production.`;
-			break;
-		case "cleansing":
-			r += `Cleansing.`;
-			break;
-		case "fertility":
-			r += `Fertility.`;
-			break;
-	}
-	r += `</span>`;
-	if (slave.dietCum == 2) {
-		r += `Diet Base: <span class="cyan">Cum Based.</span>`;
-	} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
-		r += `Diet Base: <span class="cyan">Cum Added.</span>`;
-	} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
-		r += `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
-	} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
-		r += `Diet Base: <span class="cyan">Milk Added.</span>`;
-	} else if ((slave.dietMilk == 2)) {
-		r += `Diet Base: <span class="cyan">Milk Based.</span>`;
-	}
-}
-
-if (V.abbreviateHealth == 1) {
-	if (slave.health < -20) {
-		r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-	} else if (slave.health <= 20) {
-		r += `<strong><span class="yellow">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-	} else if (slave.health > 20) {
-		r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-	}
-} else if (V.abbreviateHealth == 2) {
-	if (slave.health < -90) {
-		r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	} else if (slave.health < -50) {
-		r += `<span class="red">Extremely unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	} else if (slave.health < -20) {
-		r += `<span class="red">Unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	} else if (slave.health <= 20) {
-		r += `<span class="yellow">Healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	} else if (slave.health <= 50) {
-		r += `<span class="green">Very healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	} else if (slave.health <= 90) {
-		r += `<span class="green">Extremely healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	} else {
-		r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-	}
-}
-
-if (V.abbreviateDrugs == 1) {
-	r += `<span class="tan">`;
-	switch (slave.drugs) {
-		case "breast injections":
-			r += `<strong>Dr:Boobs+</strong>`;
-			break;
-		case "intensive breast injections":
-			r += `<strong>Dr:Boobs++</strong>`;
-			break;
-		case "hyper breast injections":
-			r += `<strong>Dr:Boobs+++</strong>`;
-			break;
-		case "butt injections":
-			r += `<strong>Dr:Butt+</strong>`;
-			break;
-		case "intensive butt injections":
-			r += `<strong>Dr:Butt++</strong>`;
-			break;
-		case "hyper butt injections":
-			r += `<strong>Dr:Butt+++</strong>`;
-			break;
-		case "lip injections":
-			r += `<strong>Dr:Lip+</strong>`;
-			break;
-		case "fertility drugs":
-			r += `<strong>Dr:Fert+</strong>`;
-			break;
-		case "super fertility drugs":
-			r += `<strong>Dr:Fert++</strong>`;
-			break;
-		case "penis enhancement":
-			r += `<strong>Dr:Dick+</strong>`;
-			break;
-		case "intensive penis enhancement":
-			r += `<strong>Dr:Dick++</strong>`;
-			break;
-		case "hyper penis enhancement":
-			r += `<strong>Dr:Dick+++</strong>`;
-			break;
-		case "testicle enhancement":
-			r += `<strong>Dr:Balls+</strong>`;
-			break;
-		case "intensive testicle enhancement":
-			r += `<strong>Dr:Balls++</strong>`;
-			break;
-		case "hyper testicle enhancement":
-			r += `<strong>Dr:Balls+++</strong>`;
-			break;
-		case "psychosuppressants":
-			r += `<strong>Dr:Psych</strong>`;
-			break;
-		case "steroids":
-			r += `<strong>Dr:Ster</strong>`;
-			break;
-		case "female hormone injections":
-			r += `<strong>Dr:HormXX++</strong>`;
-			break;
-		case "male hormone injections":
-			r += `<strong>Dr:HormXY++</strong>`;
-			break;
-		case "hormone enhancers":
-			r += `<strong>Dr:Horm+</strong>`;
-			break;
-		case "hormone blockers":
-			r += `<strong>Dr:Horm-</strong>`;
-			break;
-		case "anti-aging cream":
-			r += `<strong>Dr:Age-</strong>`;
-			break;
-		case "appetite suppressors":
-			r += `<strong>Dr:ApSup</strong>`;
-			break;
-		case "penis atrophiers":
-			r += `<strong>Dr:Dick-</strong>`;
-			break;
-		case "testicle atrophiers":
-			r += `<strong>Dr:Balls-</strong>`;
-			break;
-		case "clitoris atrophiers":
-			r += `<strong>Dr:Clit-</strong>`;
-			break;
-		case "labia atrophiers":
-			r += `<strong>Dr:Labia-</strong>`;
-			break;
-		case "nipple atrophiers":
-			r += `<strong>Dr:Nipple-</strong>`;
-			break;
-		case "lip atrophiers":
-			r += `<strong>Dr:Lip-</strong>`;
-			break;
-		case "breast redistributors":
-			r += `<strong>Dr:Breast-</strong>`;
-			break;
-		case "butt redistributors":
-			r += `<strong>Dr:Butt-</strong>`;
-			break;
-		case "sag-B-gone":
-			r += `<strong>Dr:AntiSag</strong>`;
-			break;
-		case "growth stimulants":
-			r += `<strong>Dr:groStim</strong>`;
-			break;
-	}
-	r += `</span>`;
-	r += `<span class="lightgreen">`;
-	if (slave.curatives == 2) {
-		r += `<strong>Cura</strong>`;
-	} else if (slave.curatives == 1) {
-		r += `<strong>Prev</strong>`;
-	}
-	r += `</span>`;
-	if (slave.aphrodisiacs != 0) {
+		if (slave.balls > 0 && slave.vasectomy == 1) {
+			r += `<strong>Vasect</strong>`;
+		}
+		r += `<span class="springgreen">`;
+		if (slave.inflation == 3) {
+			r += `<strong>8 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.inflation == 2) {
+			r += `<strong>4 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.inflation == 1) {
+			r += `<strong>2 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.bellyFluid > 0) {
+			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
+		}
+		r += `</span>`;
+	} else if (V.abbreviateDrugs == 2) {
+		if ((slave.drugs != "no drugs") && (slave.drugs != "none")) {
+			r += `<span class="tan">${On slave.drugs}.</span>`;
+		}
+		r += `<span class="lightgreen">`;
+		if (slave.curatives == 2) {
+			r += `On curatives.`;
+		} else if (slave.curatives == 1) {
+			r += `On preventatives.`;
+		}
+		r += `</span>`;
 		r += `<span class="lightblue">`;
-		if (slave.aphrodisiacs == 1) {
-			r += `<strong>Aph</strong>`;
-		} else if (slave.aphrodisiacs == 2) {
-			r += `<strong>Aph++</strong>`;
-		} else {
-			r += `<strong>Anaph</strong>`;
+		if (slave.aphrodisiacs > 0) {
+			r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
+		} else if (slave.aphrodisiacs === -1) {
+			r += `On anaphrodisiacs.`;
 		}
 		r += `</span>`;
-	}
-	if (slave.addict != 0) {
-		r += `<span class="cyan">Add</span>`;
-	}
-	r += `<span class="lightsalmon">`;
-	if (slave.hormones > 1) {
-		r += `<strong>Ho:F+</strong>`;
-	} else if (slave.hormones > 0) {
-		r += `<strong>Ho:F</strong>`;
-	} else if (slave.hormones < -1) {
-		r += `<strong>Ho:M+</strong>`;
-	} else if (slave.hormones < 0) {
-		r += `<strong>Ho:M</strong>`;
-	}
-	r += `</span>`;
-	r += `<span class="mediumseagreen">`;
-	if ((slave.bellyImplant > -1)) {
-		r += `<strong>Belly Imp</strong>`;
-	} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
-		r += `<strong>Barr</strong>`;
-	} else if (slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
-		r += `<strong>Prepub</strong>`;
-	} else if (slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)) {
-		r += `<strong>Meno</strong>`;
-	} else if (slave.pregWeek < 0) {
-		r += `<strong>Postpartum</strong>`;
-	} else if (slave.preg == -1) {
-		r += `<strong>CC</strong>`;
-	} else if (slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
-		r += `<strong>Fert+</strong>`;
-	} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1) {
-		r += `<strong>Preg?</strong>`;
-	} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
-		r += `<strong>Perm preg</strong>`;
-	} else if (slave.pregKnown == 1) {
-		r += `<strong>${slave.pregWeek} wks preg</strong>`;
-	}
-	r += `</span>`;
-	if (slave.induce == 1) {
-		r += `<span class="orange"><strong>Early Labor</strong></span>`;
-	}
-	if (slave.pubertyXY == 0 && slave.balls > 0) {
-		r += `<strong>Prepub balls</strong>`;
-	}
-	if (slave.balls > 0 && slave.vasectomy == 1) {
-		r += `<strong>Vasect</strong>`;
-	}
-	r += `<span class="springgreen">`;
-	if (slave.inflation == 3) {
-		r += `<strong>8 ltr ${slave.inflationType}</strong>`;
-	} else if (slave.inflation == 2) {
-		r += `<strong>4 ltr ${slave.inflationType}</strong>`;
-	} else if (slave.inflation == 1) {
-		r += `<strong>2 ltr ${slave.inflationType}</strong>`;
-	} else if (slave.bellyFluid > 0) {
-		r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
-	}
-	r += `</span>`;
-} else if (V.abbreviateDrugs == 2) {
-	if ((slave.drugs != "no drugs") && (slave.drugs != "none")) {
-		r += `<span class="tan">${On slave.drugs}.</span>`;
-	}
-	r += `<span class="lightgreen">`;
-	if (slave.curatives == 2) {
-		r += `On curatives.`;
-	} else if (slave.curatives == 1) {
-		r += `On preventatives.`;
-	}
-	r += `</span>`;
-	r += `<span class="lightblue">`;
-	if (slave.aphrodisiacs > 0) {
-		r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
-	} else if (slave.aphrodisiacs === -1) {
-		r += `On anaphrodisiacs.`;
-	}
-	r += `</span>`;
-	if (slave.addict != 0) {
-		r += `<span class="cyan">Addict.</span>`;
-	}
-	r += `<span class="lightsalmon">`;
-	if (slave.hormones > 1) {
-		r += `Heavy female hormones.`;
-	} else if (slave.hormones > 0) {
-		r += `Female hormones.`;
-	} else if (slave.hormones < -1) {
-		r += `Heavy male hormones.`;
-	} else if (slave.hormones < 0) {
-		r += `Male hormones.`;
-	}
-	r += `</span>`;
-	r += `<span class="mediumseagreen">`;
-	if ((slave.bellyImplant > -1)) {
-		r += `Belly Implant.`;
-	} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
-		r += `Barren.`;
-	} else if (slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
-		r += `Not ovulating yet.`;
-	} else if (slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)) {
-		r += `Menopausal.`;
-	} else if (slave.pregWeek < 0) {
-		r += `Postpartum.`;
-	} else if (slave.preg == -1) {
-		r += `On contraceptives.`;
-	} else if (slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
-		r += `Fertile.`;
-	} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1) {
-		r += `May be pregnant.`;
-	} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
-		r += `Permanently pregnant.`;
-	} else if (slave.pregKnown == 1) {
-		if (slave.pregType < 2 || slave.broodmother > 0) {
-			r += `${slave.pregWeek} weeks pregnant.`;
-		} else {
-			r += `${slave.pregWeek} weeks pregnant with`;
-			if (slave.pregType >= 40) {
-				r += `a tremendous brood of offspring.`;
-			} else if (slave.pregType >= 20) {
-				r += `a brood of offspring.`;
-			} else if (slave.pregType >= 10) {
-				r += `slave.pregType babies.`;
-			} else if (slave.pregType == 9) {
-				r += `nonuplets.`;
-			} else if (slave.pregType == 8) {
-				r += `octuplets.`;
-			} else if (slave.pregType == 7) {
-				r += `septuplets.`;
-			} else if (slave.pregType == 6) {
-				r += `sextuplets.`;
-			} else if (slave.pregType == 5) {
-				r += `quintuplets.`;
-			} else if (slave.pregType == 4) {
-				r += `quadruplets.`;
-			} else if (slave.pregType == 3) {
-				r += `triplets.`;
+		if (slave.addict != 0) {
+			r += `<span class="cyan">Addict.</span>`;
+		}
+		r += `<span class="lightsalmon">`;
+		if (slave.hormones > 1) {
+			r += `Heavy female hormones.`;
+		} else if (slave.hormones > 0) {
+			r += `Female hormones.`;
+		} else if (slave.hormones < -1) {
+			r += `Heavy male hormones.`;
+		} else if (slave.hormones < 0) {
+			r += `Male hormones.`;
+		}
+		r += `</span>`;
+		r += `<span class="mediumseagreen">`;
+		if ((slave.bellyImplant > -1)) {
+			r += `Belly Implant.`;
+		} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
+			r += `Barren.`;
+		} else if (slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+			r += `Not ovulating yet.`;
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+			r += `Menopausal.`;
+		} else if (slave.pregWeek < 0) {
+			r += `Postpartum.`;
+		} else if (slave.preg == -1) {
+			r += `On contraceptives.`;
+		} else if (slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+			r += `Fertile.`;
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1) {
+			r += `May be pregnant.`;
+		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
+			r += `Permanently pregnant.`;
+		} else if (slave.pregKnown == 1) {
+			if (slave.pregType < 2 || slave.broodmother > 0) {
+				r += `${slave.pregWeek} weeks pregnant.`;
 			} else {
-				r += `twins.`;
+				r += `${slave.pregWeek} weeks pregnant with`;
+				if (slave.pregType >= 40) {
+					r += `a tremendous brood of offspring.`;
+				} else if (slave.pregType >= 20) {
+					r += `a brood of offspring.`;
+				} else if (slave.pregType >= 10) {
+					r += `slave.pregType babies.`;
+				} else if (slave.pregType == 9) {
+					r += `nonuplets.`;
+				} else if (slave.pregType == 8) {
+					r += `octuplets.`;
+				} else if (slave.pregType == 7) {
+					r += `septuplets.`;
+				} else if (slave.pregType == 6) {
+					r += `sextuplets.`;
+				} else if (slave.pregType == 5) {
+					r += `quintuplets.`;
+				} else if (slave.pregType == 4) {
+					r += `quadruplets.`;
+				} else if (slave.pregType == 3) {
+					r += `triplets.`;
+				} else {
+					r += `twins.`;
+				}
 			}
 		}
+		r += `</span>`;
+		if (slave.induce == 1) {
+			r += `<span class="orange">Showing signs of early labor.</span>`;
+		}
+		if (slave.pubertyXY == 0 && slave.balls > 0) {
+			r += `Has not had first ejaculation.`;
+		}
+		if (slave.balls > 0 && slave.vasectomy == 1) {
+			r += `Vasectomy.`;
+		}
+		r += `<span class="springgreen">`;
+		if (slave.inflation == 3) {
+			r += `Filled with 8 liters of ${slave.inflationType}.`;
+		} else if (slave.inflation == 2) {
+			r += `Filled with 4 liters of ${slave.inflationType}.`;
+		} else if (slave.inflation == 1) {
+			r += `Filled with 2 liters of ${slave.inflationType}.`;
+		} else if (slave.bellyFluid > 0) {
+			r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
+		}
+		r += `</span>`;
 	}
-	r += `</span>`;
-	if (slave.induce == 1) {
-		r += `<span class="orange">Showing signs of early labor.</span>`;
-	}
-	if (slave.pubertyXY == 0 && slave.balls > 0) {
-		r += `Has not had first ejaculation.`;
-	}
-	if (slave.balls > 0 && slave.vasectomy == 1) {
-		r += `Vasectomy.`;
-	}
-	r += `<span class="springgreen">`;
-	if (slave.inflation == 3) {
-		r += `Filled with 8 liters of ${slave.inflationType}.`;
-	} else if (slave.inflation == 2) {
-		r += `Filled with 4 liters of ${slave.inflationType}.`;
-	} else if (slave.inflation == 1) {
-		r += `Filled with 2 liters of ${slave.inflationType}.`;
-	} else if (slave.bellyFluid > 0) {
-		r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
-	}
-	r += `</span>`;
-}
 
-if (V.abbreviateNationality+V.abbreviateGenitalia+V.abbreviatePhysicals+V.abbreviateSkills+V.abbreviateMental != 0) {
-	r += `<br>`;
-	if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
-		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental != 0) {
+		r += `<br>`;
+		if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
 	}
-}
 
-V.desc = SlaveTitle(slave);
-V.seed = V.desc.substring(0,1);
-V.seed = V.seed.toUpperCase();
-V.desc = V.seed + V.desc.substring(1);
-r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : ''}</span></strong>`;
+	V.desc = SlaveTitle(slave);
+	V.seed = V.desc.substring(0, 1);
+	V.seed = V.seed.toUpperCase();
+	V.desc = V.seed + V.desc.substring(1);
+	r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : ''}</span></strong>`;
+
+	if (V.seeRace == 1) {
+		r += `<span class="tan">`;
+		if (V.abbreviateRace == 1) {
+			switch (slave.race) {
+				case "white":
+					r += `C`;
+					break;
+				case "asian":
+					r += `A`;
+					break;
+				case "indo-aryan":
+					r += `I`;
+					break;
+				case "latina":
+					r += `L`;
+					break;
+				case "middle eastern":
+					r += `ME`;
+					break;
+				case "black":
+					r += `B`;
+					break;
+				case "pacific islander":
+					r += `PI`;
+					break;
+				case "malay":
+					r += `M`;
+					break;
+				case "amerindian":
+					r += `AI`;
+					break;
+				case "semitic":
+					r += `S`;
+					break;
+				case "southern european":
+					r += `SE`;
+					break;
+				case "mixed race":
+					r += `MR`;
+					break;
+				default:
+					r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
+					break;
+			}
+		} else if (V.abbreviateRace == 2) {
+			switch (slave.race) {
+				case "white":
+					r += `Caucasian.`;
+					break;
+				case "asian":
+					r += `Asian.`;
+					break;
+				case "indo-aryan":
+					r += `Indo-aryan.`;
+					break;
+				case "latina":
+					r += `Latina.`;
+					break;
+				case "middle eastern":
+					r += `Middle Eastern.`;
+					break;
+				case "black":
+					r += `Black.`;
+					break;
+				case "pacific islander":
+					r += `Pacific Islander.`;
+					break;
+				case "malay":
+					r += `Malay.`;
+					break;
+				case "amerindian":
+					r += `Amerindian.`;
+					break;
+				case "semitic":
+					r += `Semitic.`;
+					break;
+				case "southern european":
+					r += `Southern European.`;
+					break;
+				case "mixed race":
+					r += `Mixed race.`;
+					break;
+				default:
+					r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
+					break;
+			}
+		}
+		r += `</span>`;
+	}
 
-if (V.seeRace == 1) {
-	r += `<span class="tan">`;
-	if (V.abbreviateRace == 1) {
-		switch (slave.race) {
-			case "white":
-				r += `C`;
+	if (V.abbreviateNationality == 1) {
+		r += `<span class="tan">`;
+		switch (slave.nationality) {
+			case "Afghan":
+				r += `Afg`;
 				break;
-			case "asian":
-				r += `A`;
+			case "Albanian":
+				r += `Alb`;
 				break;
-			case "indo-aryan":
-				r += `I`;
+			case "Algerian":
+				r += `Alg`;
 				break;
-			case "latina":
-				r += `L`;
+			case "American":
+				r += `USA`;
 				break;
-			case "middle eastern":
-				r += `ME`;
+			case "Andorran":
+				r += `And`;
 				break;
-			case "black":
-				r += `B`;
+			case "Angolan":
+				r += `Ang`;
 				break;
-			case "pacific islander":
-				r += `PI`;
+			case "Antiguan":
+				r += `AB`;
 				break;
-			case "malay":
-				r += `M`;
+			case "Argentinian":
+				r += `Arg`;
 				break;
-			case "amerindian":
-				r += `AI`;
+			case "Armenian":
+				r += `Arm`;
 				break;
-			case "semitic":
-				r += `S`;
+			case "Aruban":
+				r += `Aru`;
 				break;
-			case "southern european":
-				r += `SE`;
+			case "Australian":
+				r += `Aus`;
 				break;
-			case "mixed race":
-				r += `MR`;
+			case "Austrian":
+				r += `Aut`;
 				break;
-			default:
-				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
+			case "Azerbaijani":
+				r += `Aze`;
 				break;
-		}
-	} else if (V.abbreviateRace == 2) {
-		switch (slave.race) {
-			case "white":
-				r += `Caucasian.`;
+			case "Bahamian":
+				r += `Bah`;
 				break;
-			case "asian":
-				r += `Asian.`;
+			case "Bahraini":
+				r += `Bah`;
 				break;
-			case "indo-aryan":
-				r += `Indo-aryan.`;
+			case "Bangladeshi":
+				r += `Bgd`;
 				break;
-			case "latina":
-				r += `Latina.`;
+			case "Barbadian":
+				r += `Bar`;
 				break;
-			case "middle eastern":
-				r += `Middle Eastern.`;
+			case "Belarusian":
+				r += `Ber`;
 				break;
-			case "black":
-				r += `Black.`;
+			case "Belgian":
+				r += `Bel`;
 				break;
-			case "pacific islander":
-				r += `Pacific Islander.`;
+			case "Belizean":
+				r += `Blz`;
 				break;
-			case "malay":
-				r += `Malay.`;
+			case "Beninese":
+				r += `Ben`;
 				break;
-			case "amerindian":
-				r += `Amerindian.`;
+			case "Bermudian":
+				r += `Bmd`;
 				break;
-			case "semitic":
-				r += `Semitic.`;
+			case "Bhutanese":
+				r += `Bhu`;
 				break;
-			case "southern european":
-				r += `Southern European.`;
+			case "Bissau-Guinean":
+				r += `GB`;
 				break;
-			case "mixed race":
-				r += `Mixed race.`;
+			case "Bolivian":
+				r += `Bol`;
 				break;
-			default:
-				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
+			case "Bosnian":
+				r += `Bos`;
 				break;
-		}
-	}
-	r += `</span>`;
-}
-
-if (V.abbreviateNationality == 1) {
-	r += `<span class="tan">`;
-	switch (slave.nationality) {
-		case "Afghan":
-			r += `Afg`;
-			break;
-		case "Albanian":
-			r += `Alb`;
-			break;
-		case "Algerian":
-			r += `Alg`;
-			break;
-		case "American":
-			r += `USA`;
-			break;
-		case "Andorran":
-			r += `And`;
-			break;
-		case "Angolan":
-			r += `Ang`;
-			break;
-		case "Antiguan":
-			r += `AB`;
-			break;
-		case "Argentinian":
-			r += `Arg`;
-			break;
-		case "Armenian":
-			r += `Arm`;
-			break;
-		case "Aruban":
-			r += `Aru`;
-			break;
-		case "Australian":
-			r += `Aus`;
-			break;
-		case "Austrian":
-			r += `Aut`;
-			break;
-		case "Azerbaijani":
-			r += `Aze`;
-			break;
-		case "Bahamian":
-			r += `Bah`;
-			break;
-		case "Bahraini":
-			r += `Bah`;
-			break;
-		case "Bangladeshi":
-			r += `Bgd`;
-			break;
-		case "Barbadian":
-			r += `Bar`;
-			break;
-		case "Belarusian":
-			r += `Ber`;
-			break;
-		case "Belgian":
-			r += `Bel`;
-			break;
-		case "Belizean":
-			r += `Blz`;
-			break;
-		case "Beninese":
-			r += `Ben`;
-			break;
-		case "Bermudian":
-			r += `Bmd`;
-			break;
-		case "Bhutanese":
-			r += `Bhu`;
-			break;
-		case "Bissau-Guinean":
-			r += `GB`;
-			break;
-		case "Bolivian":
-			r += `Bol`;
-			break;
-		case "Bosnian":
-			r += `Bos`;
-			break;
-		case "Brazilian":
-			r += `Bra`;
-			break;
-		case "British":
-			r += `UK`;
-			break;
-		case "Bruneian":
-			r += `Bru`;
-			break;
-		case "Bulgarian":
-			r += `Bul`;
-			break;
-		case "Burkinabé":
-			r += `BF`;
-			break;
-		case "Burmese":
-			r += `Bur`;
-			break;
-		case "Burundian":
-			r += `Bnd`;
-			break;
-		case "Cambodian":
-			r += `Kam`;
-			break;
-		case "Cameroonian":
-			r += `Cam`;
-			break;
-		case "Canadian":
-			r += `Can`;
-			break;
-		case "Cape Verdean":
-			r += `CV`;
-			break;
-		case "Catalan":
-			r += `Cat`;
-			break;
-		case "Central African":
-			r += `CAR`;
-			break;
-		case "Chadian":
-			r += `Cha`;
-			break;
-		case "Chilean":
-			r += `Chl`;
-			break;
-		case "Chinese":
-			r += `Chi`;
-			break;
-		case "Colombian":
-			r += `Col`;
-			break;
-		case "Comorian":
-			r += `Com`;
-			break;
-		case "Congolese":
-			r += `RC`;
-			break;
-		case "a Cook Islander":
-			r += `CI`;
-			break;
-		case "Costa Rican":
-			r += `CR`;
-			break;
-		case "Croatian":
-			r += `Cro`;
-			break;
-		case "Cuban":
-			r += `Cub`;
-			break;
-		case "Cypriot":
-			r += `Cyp`;
-			break;
-		case "Czech":
-			r += `Cze`;
-			break;
-		case "Danish":
-			r += `Den`;
-			break;
-		case "Djiboutian":
-			r += `Dji`;
-			break;
-		case "Dominican":
-			r += `DR`;
-			break;
-		case "Dominiquais":
-			r += `Dom`;
-			break;
-		case "Dutch":
-			r += `Nld`;
-			break;
-		case "East Timorese":
-			r += `ET`;
-			break;
-		case "Ecuadorian":
-			r += `Ecu`;
-			break;
-		case "Egyptian":
-			r += `Egy`;
-			break;
-		case "Emirati":
-			r += `UAE`;
-			break;
-		case "Equatoguinean":
-			r += `EG`;
-			break;
-		case "Eritrean":
-			r += `Eri`;
-			break;
-		case "Estonian":
-			r += `Est`;
-			break;
-		case "Ethiopian":
-			r += `Eth`;
-			break;
-		case "Fijian":
-			r += `Fij`;
-			break;
-		case "Filipina":
-			r += `Phl`;
-			break;
-		case "Finnish":
-			r += `Fin`;
-			break;
-		case "French":
-			r += `Fra`;
-			break;
-		case "French Guianan":
-			r += `FG`;
-			break;
-		case "French Polynesian":
-			r += `FP`;
-			break;
-		case "Gabonese":
-			r += `Gab`;
-			break;
-		case "Gambian":
-			r += `Gam`;
-			break;
-		case "Georgian":
-			r += `Geo`;
-			break;
-		case "German":
-			r += `Ger`;
-			break;
-		case "Ghanan":
-			r += `Gha`;
-			break;
-		case "Greek":
-			r += `Gre`;
-			break;
-		case "Greenlandic":
-			r += `Grn`;
-			break;
-		case "Grenadian":
-			r += `Gda`;
-			break;
-		case "Guamanian":
-			r += `Gua`;
-			break;
-		case "Guatemalan":
-			r += `Gtm`;
-			break;
-		case "Guinean":
-			r += `Gui`;
-			break;
-		case "Guyanese":
-			r += `Guy`;
-			break;
-		case "Haitian":
-			r += `Hai`;
-			break;
-		case "Honduran":
-			r += `Hon`;
-			break;
-		case "Hungarian":
-			r += `Hun`;
-			break;
-		case "I-Kiribati":
-			r += `Kir`;
-			break;
-		case "Icelandic":
-			r += `Ice`;
-			break;
-		case "Indian":
-			r += `Ind`;
-			break;
-		case "Indonesian":
-			r += `Idn`;
-			break;
-		case "Iranian":
-			r += `Irn`;
-			break;
-		case "Iraqi":
-			r += `Irq`;
-			break;
-		case "Irish":
-			r += `Irl`;
-			break;
-		case "Israeli":
-			r += `Isr`;
-			break;
-		case "Italian":
-			r += `Ita`;
-			break;
-		case "Ivorian":
-			r += `IC`;
-			break;
-		case "Jamaican":
-			r += `Jam`;
-			break;
-		case "Japanese":
-			r += `Jpn`;
-			break;
-		case "Jordanian":
-			r += `Jor`;
-			break;
-		case "Kazakh":
-			r += `Kaz`;
-			break;
-		case "Kenyan":
-			r += `Ken`;
-			break;
-		case "Kittitian":
-			r += `SKN`;
-			break;
-		case "Korean":
-			r += `Kor`;
-			break;
-		case "Kosovan":
-			r += `Kos`;
-			break;
-		case "Kurdish":
-			r += `Kur`;
-			break;
-		case "Kuwaiti":
-			r += `Kuw`;
-			break;
-		case "Kyrgyz":
-			r += `Kyr`;
-			break;
-		case "Laotian":
-			r += `Lao`;
-			break;
-		case "Latvian":
-			r += `Lat`;
-			break;
-		case "Lebanese":
-			r += `Lbn`;
-			break;
-		case "Liberian":
-			r += `Lib`;
-			break;
-		case "Libyan":
-			r += `Lby`;
-			break;
-		case "a Liechtensteiner":
-			r += `Lie`;
-			break;
-		case "Lithuanian":
-			r += `Lit`;
-			break;
-		case "Luxembourgian":
-			r += `Lux`;
-			break;
-		case "Macedonian":
-			r += `Mac`;
-			break;
-		case "Malagasy":
-			r += `Mad`;
-			break;
-		case "Malawian":
-			r += `Mwi`;
-			break;
-		case "Malaysian":
-			r += `Mys`;
-			break;
-		case "Maldivian":
-			r += `Mdv`;
-			break;
-		case "Malian":
-			r += `Mal`;
-			break;
-		case "Maltese":
-			r += `Mlt`;
-			break;
-		case "Marshallese":
-			r += `MI`;
-			break;
-		case "Mauritanian":
-			r += `Mta`;
-			break;
-		case "Mauritian":
-			r += `Mts`;
-			break;
-		case "Mexican":
-			r += `Mex`;
-			break;
-		case "Micronesian":
-			r += `FSM`;
-			break;
-		case "Moldovan":
-			r += `Mol`;
-			break;
-		case "Monégasque":
-			r += `Mnc`;
-			break;
-		case "Mongolian":
-			r += `Mon`;
-			break;
-		case "Montenegrin":
-			r += `Mng`;
-			break;
-		case "Moroccan":
-			r += `Mor`;
-			break;
-		case "Mosotho":
-			r += `Les`;
-			break;
-		case "Motswana":
-			r += `Bot`;
-			break;
-		case "Mozambican":
-			r += `Moz`;
-			break;
-		case "Namibian":
-			r += `Nam`;
-			break;
-		case "Nauruan":
-			r += `Nau`;
-			break;
-		case "Nepalese":
-			r += `Npl`;
-			break;
-		case "New Caledonian":
-			r += `NC`;
-			break;
-		case "a New Zealander":
-			r += `NZ`;
-			break;
-		case "Ni-Vanuatu":
-			r += `Van`;
-			break;
-		case "Nicaraguan":
-			r += `Nic`;
-			break;
-		case "Nigerian":
-			r += `Nga`;
-			break;
-		case "Nigerien":
-			r += `Ngr`;
-			break;
-		case "Niuean":
-			r += `Niu`;
-			break;
-		case "Norwegian":
-			r += `Nor`;
-			break;
-		case "Omani":
-			r += `Omn`;
-			break;
-		case "Pakistani":
-			r += `Pak`;
-			break;
-		case "Palauan":
-			r += `Plu`;
-			break;
-		case "Palestinian":
-			r += `Pal`;
-			break;
-		case "Panamanian":
-			r += `Pan`;
-			break;
-		case "Papua New Guinean":
-			r += `PNG`;
-			break;
-		case "Paraguayan":
-			r += `Par`;
-			break;
-		case "Peruvian":
-			r += `Per`;
-			break;
-		case "Polish":
-			r += `Pol`;
-			break;
-		case "Portuguese":
-			r += `Por`;
-			break;
-		case "Puerto Rican":
-			r += `PR`;
-			break;
-		case "Qatari":
-			r += `Qat`;
-			break;
-		case "Romanian":
-			r += `Rom`;
-			break;
-		case "Russian":
-			r += `Rus`;
-			break;
-		case "Rwandan":
-			r += `Rwa`;
-			break;
-		case "Sahrawi":
-			r += `Sah`;
-			break;
-		case "Saint Lucian":
-			r += `SL`;
-			break;
-		case "Salvadoran":
-			r += `ES`;
-			break;
-		case "Sammarinese":
-			r += `SM`;
-			break;
-		case "Samoan":
-			r += `Sam`;
-			break;
-		case "São Toméan":
-			r += `STP`;
-			break;
-		case "Saudi":
-			r += `Sau`;
-			break;
-		case "Scottish":
-			r += `Sco`;
-			break;
-		case "Senegalese":
-			r += `Sen`;
-			break;
-		case "Serbian":
-			r += `Srb`;
-			break;
-		case "Seychellois":
-			r += `Sey`;
-			break;
-		case "Sierra Leonean":
-			r += `Sie`;
-			break;
-		case "Singaporean":
-			r += `Sng`;
-			break;
-		case "Slovak":
-			r += `Svk`;
-			break;
-		case "Slovene":
-			r += `Svn`;
-			break;
-		case "a Solomon Islander":
-			r += `SI`;
-			break;
-		case "Somali":
-			r += `Som`;
-			break;
-		case "South African":
-			r += `RSA`;
-			break;
-		case "South Sudanese":
-			r += `SS`;
-			break;
-		case "Spanish":
-			r += `Spa`;
-			break;
-		case "Sri Lankan":
-			r += `Sri`;
-			break;
-		case "Sudanese":
-			r += `Sud`;
-			break;
-		case "Surinamese":
-			r += `Sur`;
-			break;
-		case "Swazi":
-			r += `Swa`;
-			break;
-		case "Swedish":
-			r += `Swe`;
-			break;
-		case "Swiss":
-			r += `Swi`;
-			break;
-		case "Syrian":
-			r += `Syr`;
-			break;
-		case "Taiwanese":
-			r += `Tai`;
-			break;
-		case "Tajik":
-			r += `Taj`;
-			break;
-		case "Tanzanian":
-			r += `Tza`;
-			break;
-		case "Thai":
-			r += `Tha`;
-			break;
-		case "Tibetan":
-			r += `Tib`;
-			break;
-		case "Togolese":
-			r += `Tog`;
-			break;
-		case "Tongan":
-			r += `Ton`;
-			break;
-		case "Trinidadian":
-			r += `TT`;
-			break;
-		case "Tunisian":
-			r += `Tun`;
-			break;
-		case "Turkish":
-			r += `Tur`;
-			break;
-		case "Turkmen":
-			r += `Tkm`;
-			break;
-		case "Tuvaluan":
-			r += `Tuv`;
-			break;
-		case "Ugandan":
-			r += `Uga`;
-			break;
-		case "Ukrainian":
-			r += `Ukr`;
-			break;
-		case "Uruguayan":
-			r += `Uru`;
-			break;
-		case "Uzbek":
-			r += `Uzb`;
-			break;
-		case "Vatican":
-			r += `VC`;
-			break;
-		case "Venezuelan":
-			r += `Ven`;
-			break;
-		case "Vietnamese":
-			r += `Vnm`;
-			break;
-		case "Vincentian":
-			r += `SVG`;
-			break;
-		case "Yemeni":
-			r += `Yem`;
-			break;
-		case "Zairian":
-			r += `DRC`;
-			break;
-		case "Zambian":
-			r += `Zam`;
-			break;
-		case "Zimbabwean":
-			if (slave.race == "white") {
-				r += `Rho`;
-			} else {
-				r += `Zwe`;
-			}
-			break;
-		case "Ancient Chinese Revivalist":
-			r += `Chi Rev`;
-			break;
-		case "Ancient Egyptian Revivalist":
-			r += `Egy Rev`;
-			break;
-		case "Arabian Revivalist":
-			r += `Ara Rev`;
-			break;
-		case "Aztec Revivalist":
-			r += `Azt Rev`;
-			break;
-		case "Edo Revivalist":
-			r += `Edo Rev`;
-			break;
-		case "Roman Revivalist":
-			r += `Rom Rev`;
-			break;
-		case "":
-		case "none":
-		case "slave":
-		case "Stateless":
-			r += `None`;
-			break;
-		default:
-			r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
-			break;
-	}
-	r += `</span>`;
-} else if (V.abbreviateNationality == 2) {
-	r += `<span class="tan">`;
-	switch (slave.nationality) {
-		case "Zimbabwean":
-			if (slave.race == "white") {
-				r += `Rhodesian.`;
-			} else {
-				r += `${slave.nationality}.`;
-			}
-			break;
-		case "slave":
-		case "none":
-		case "":
-		case "Stateless":
-			r += `Stateless.`;
-			break;
-		default:
-			r += slave.nationality.
-			break;
+			case "Brazilian":
+				r += `Bra`;
+				break;
+			case "British":
+				r += `UK`;
+				break;
+			case "Bruneian":
+				r += `Bru`;
+				break;
+			case "Bulgarian":
+				r += `Bul`;
+				break;
+			case "Burkinabé":
+				r += `BF`;
+				break;
+			case "Burmese":
+				r += `Bur`;
+				break;
+			case "Burundian":
+				r += `Bnd`;
+				break;
+			case "Cambodian":
+				r += `Kam`;
+				break;
+			case "Cameroonian":
+				r += `Cam`;
+				break;
+			case "Canadian":
+				r += `Can`;
+				break;
+			case "Cape Verdean":
+				r += `CV`;
+				break;
+			case "Catalan":
+				r += `Cat`;
+				break;
+			case "Central African":
+				r += `CAR`;
+				break;
+			case "Chadian":
+				r += `Cha`;
+				break;
+			case "Chilean":
+				r += `Chl`;
+				break;
+			case "Chinese":
+				r += `Chi`;
+				break;
+			case "Colombian":
+				r += `Col`;
+				break;
+			case "Comorian":
+				r += `Com`;
+				break;
+			case "Congolese":
+				r += `RC`;
+				break;
+			case "a Cook Islander":
+				r += `CI`;
+				break;
+			case "Costa Rican":
+				r += `CR`;
+				break;
+			case "Croatian":
+				r += `Cro`;
+				break;
+			case "Cuban":
+				r += `Cub`;
+				break;
+			case "Cypriot":
+				r += `Cyp`;
+				break;
+			case "Czech":
+				r += `Cze`;
+				break;
+			case "Danish":
+				r += `Den`;
+				break;
+			case "Djiboutian":
+				r += `Dji`;
+				break;
+			case "Dominican":
+				r += `DR`;
+				break;
+			case "Dominiquais":
+				r += `Dom`;
+				break;
+			case "Dutch":
+				r += `Nld`;
+				break;
+			case "East Timorese":
+				r += `ET`;
+				break;
+			case "Ecuadorian":
+				r += `Ecu`;
+				break;
+			case "Egyptian":
+				r += `Egy`;
+				break;
+			case "Emirati":
+				r += `UAE`;
+				break;
+			case "Equatoguinean":
+				r += `EG`;
+				break;
+			case "Eritrean":
+				r += `Eri`;
+				break;
+			case "Estonian":
+				r += `Est`;
+				break;
+			case "Ethiopian":
+				r += `Eth`;
+				break;
+			case "Fijian":
+				r += `Fij`;
+				break;
+			case "Filipina":
+				r += `Phl`;
+				break;
+			case "Finnish":
+				r += `Fin`;
+				break;
+			case "French":
+				r += `Fra`;
+				break;
+			case "French Guianan":
+				r += `FG`;
+				break;
+			case "French Polynesian":
+				r += `FP`;
+				break;
+			case "Gabonese":
+				r += `Gab`;
+				break;
+			case "Gambian":
+				r += `Gam`;
+				break;
+			case "Georgian":
+				r += `Geo`;
+				break;
+			case "German":
+				r += `Ger`;
+				break;
+			case "Ghanan":
+				r += `Gha`;
+				break;
+			case "Greek":
+				r += `Gre`;
+				break;
+			case "Greenlandic":
+				r += `Grn`;
+				break;
+			case "Grenadian":
+				r += `Gda`;
+				break;
+			case "Guamanian":
+				r += `Gua`;
+				break;
+			case "Guatemalan":
+				r += `Gtm`;
+				break;
+			case "Guinean":
+				r += `Gui`;
+				break;
+			case "Guyanese":
+				r += `Guy`;
+				break;
+			case "Haitian":
+				r += `Hai`;
+				break;
+			case "Honduran":
+				r += `Hon`;
+				break;
+			case "Hungarian":
+				r += `Hun`;
+				break;
+			case "I-Kiribati":
+				r += `Kir`;
+				break;
+			case "Icelandic":
+				r += `Ice`;
+				break;
+			case "Indian":
+				r += `Ind`;
+				break;
+			case "Indonesian":
+				r += `Idn`;
+				break;
+			case "Iranian":
+				r += `Irn`;
+				break;
+			case "Iraqi":
+				r += `Irq`;
+				break;
+			case "Irish":
+				r += `Irl`;
+				break;
+			case "Israeli":
+				r += `Isr`;
+				break;
+			case "Italian":
+				r += `Ita`;
+				break;
+			case "Ivorian":
+				r += `IC`;
+				break;
+			case "Jamaican":
+				r += `Jam`;
+				break;
+			case "Japanese":
+				r += `Jpn`;
+				break;
+			case "Jordanian":
+				r += `Jor`;
+				break;
+			case "Kazakh":
+				r += `Kaz`;
+				break;
+			case "Kenyan":
+				r += `Ken`;
+				break;
+			case "Kittitian":
+				r += `SKN`;
+				break;
+			case "Korean":
+				r += `Kor`;
+				break;
+			case "Kosovan":
+				r += `Kos`;
+				break;
+			case "Kurdish":
+				r += `Kur`;
+				break;
+			case "Kuwaiti":
+				r += `Kuw`;
+				break;
+			case "Kyrgyz":
+				r += `Kyr`;
+				break;
+			case "Laotian":
+				r += `Lao`;
+				break;
+			case "Latvian":
+				r += `Lat`;
+				break;
+			case "Lebanese":
+				r += `Lbn`;
+				break;
+			case "Liberian":
+				r += `Lib`;
+				break;
+			case "Libyan":
+				r += `Lby`;
+				break;
+			case "a Liechtensteiner":
+				r += `Lie`;
+				break;
+			case "Lithuanian":
+				r += `Lit`;
+				break;
+			case "Luxembourgian":
+				r += `Lux`;
+				break;
+			case "Macedonian":
+				r += `Mac`;
+				break;
+			case "Malagasy":
+				r += `Mad`;
+				break;
+			case "Malawian":
+				r += `Mwi`;
+				break;
+			case "Malaysian":
+				r += `Mys`;
+				break;
+			case "Maldivian":
+				r += `Mdv`;
+				break;
+			case "Malian":
+				r += `Mal`;
+				break;
+			case "Maltese":
+				r += `Mlt`;
+				break;
+			case "Marshallese":
+				r += `MI`;
+				break;
+			case "Mauritanian":
+				r += `Mta`;
+				break;
+			case "Mauritian":
+				r += `Mts`;
+				break;
+			case "Mexican":
+				r += `Mex`;
+				break;
+			case "Micronesian":
+				r += `FSM`;
+				break;
+			case "Moldovan":
+				r += `Mol`;
+				break;
+			case "Monégasque":
+				r += `Mnc`;
+				break;
+			case "Mongolian":
+				r += `Mon`;
+				break;
+			case "Montenegrin":
+				r += `Mng`;
+				break;
+			case "Moroccan":
+				r += `Mor`;
+				break;
+			case "Mosotho":
+				r += `Les`;
+				break;
+			case "Motswana":
+				r += `Bot`;
+				break;
+			case "Mozambican":
+				r += `Moz`;
+				break;
+			case "Namibian":
+				r += `Nam`;
+				break;
+			case "Nauruan":
+				r += `Nau`;
+				break;
+			case "Nepalese":
+				r += `Npl`;
+				break;
+			case "New Caledonian":
+				r += `NC`;
+				break;
+			case "a New Zealander":
+				r += `NZ`;
+				break;
+			case "Ni-Vanuatu":
+				r += `Van`;
+				break;
+			case "Nicaraguan":
+				r += `Nic`;
+				break;
+			case "Nigerian":
+				r += `Nga`;
+				break;
+			case "Nigerien":
+				r += `Ngr`;
+				break;
+			case "Niuean":
+				r += `Niu`;
+				break;
+			case "Norwegian":
+				r += `Nor`;
+				break;
+			case "Omani":
+				r += `Omn`;
+				break;
+			case "Pakistani":
+				r += `Pak`;
+				break;
+			case "Palauan":
+				r += `Plu`;
+				break;
+			case "Palestinian":
+				r += `Pal`;
+				break;
+			case "Panamanian":
+				r += `Pan`;
+				break;
+			case "Papua New Guinean":
+				r += `PNG`;
+				break;
+			case "Paraguayan":
+				r += `Par`;
+				break;
+			case "Peruvian":
+				r += `Per`;
+				break;
+			case "Polish":
+				r += `Pol`;
+				break;
+			case "Portuguese":
+				r += `Por`;
+				break;
+			case "Puerto Rican":
+				r += `PR`;
+				break;
+			case "Qatari":
+				r += `Qat`;
+				break;
+			case "Romanian":
+				r += `Rom`;
+				break;
+			case "Russian":
+				r += `Rus`;
+				break;
+			case "Rwandan":
+				r += `Rwa`;
+				break;
+			case "Sahrawi":
+				r += `Sah`;
+				break;
+			case "Saint Lucian":
+				r += `SL`;
+				break;
+			case "Salvadoran":
+				r += `ES`;
+				break;
+			case "Sammarinese":
+				r += `SM`;
+				break;
+			case "Samoan":
+				r += `Sam`;
+				break;
+			case "São Toméan":
+				r += `STP`;
+				break;
+			case "Saudi":
+				r += `Sau`;
+				break;
+			case "Scottish":
+				r += `Sco`;
+				break;
+			case "Senegalese":
+				r += `Sen`;
+				break;
+			case "Serbian":
+				r += `Srb`;
+				break;
+			case "Seychellois":
+				r += `Sey`;
+				break;
+			case "Sierra Leonean":
+				r += `Sie`;
+				break;
+			case "Singaporean":
+				r += `Sng`;
+				break;
+			case "Slovak":
+				r += `Svk`;
+				break;
+			case "Slovene":
+				r += `Svn`;
+				break;
+			case "a Solomon Islander":
+				r += `SI`;
+				break;
+			case "Somali":
+				r += `Som`;
+				break;
+			case "South African":
+				r += `RSA`;
+				break;
+			case "South Sudanese":
+				r += `SS`;
+				break;
+			case "Spanish":
+				r += `Spa`;
+				break;
+			case "Sri Lankan":
+				r += `Sri`;
+				break;
+			case "Sudanese":
+				r += `Sud`;
+				break;
+			case "Surinamese":
+				r += `Sur`;
+				break;
+			case "Swazi":
+				r += `Swa`;
+				break;
+			case "Swedish":
+				r += `Swe`;
+				break;
+			case "Swiss":
+				r += `Swi`;
+				break;
+			case "Syrian":
+				r += `Syr`;
+				break;
+			case "Taiwanese":
+				r += `Tai`;
+				break;
+			case "Tajik":
+				r += `Taj`;
+				break;
+			case "Tanzanian":
+				r += `Tza`;
+				break;
+			case "Thai":
+				r += `Tha`;
+				break;
+			case "Tibetan":
+				r += `Tib`;
+				break;
+			case "Togolese":
+				r += `Tog`;
+				break;
+			case "Tongan":
+				r += `Ton`;
+				break;
+			case "Trinidadian":
+				r += `TT`;
+				break;
+			case "Tunisian":
+				r += `Tun`;
+				break;
+			case "Turkish":
+				r += `Tur`;
+				break;
+			case "Turkmen":
+				r += `Tkm`;
+				break;
+			case "Tuvaluan":
+				r += `Tuv`;
+				break;
+			case "Ugandan":
+				r += `Uga`;
+				break;
+			case "Ukrainian":
+				r += `Ukr`;
+				break;
+			case "Uruguayan":
+				r += `Uru`;
+				break;
+			case "Uzbek":
+				r += `Uzb`;
+				break;
+			case "Vatican":
+				r += `VC`;
+				break;
+			case "Venezuelan":
+				r += `Ven`;
+				break;
+			case "Vietnamese":
+				r += `Vnm`;
+				break;
+			case "Vincentian":
+				r += `SVG`;
+				break;
+			case "Yemeni":
+				r += `Yem`;
+				break;
+			case "Zairian":
+				r += `DRC`;
+				break;
+			case "Zambian":
+				r += `Zam`;
+				break;
+			case "Zimbabwean":
+				if (slave.race == "white") {
+					r += `Rho`;
+				} else {
+					r += `Zwe`;
+				}
+				break;
+			case "Ancient Chinese Revivalist":
+				r += `Chi Rev`;
+				break;
+			case "Ancient Egyptian Revivalist":
+				r += `Egy Rev`;
+				break;
+			case "Arabian Revivalist":
+				r += `Ara Rev`;
+				break;
+			case "Aztec Revivalist":
+				r += `Azt Rev`;
+				break;
+			case "Edo Revivalist":
+				r += `Edo Rev`;
+				break;
+			case "Roman Revivalist":
+				r += `Rom Rev`;
+				break;
+			case "":
+			case "none":
+			case "slave":
+			case "Stateless":
+				r += `None`;
+				break;
+			default:
+				r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
+				break;
+		}
+		r += `</span>`;
+	} else if (V.abbreviateNationality == 2) {
+		r += `<span class="tan">`;
+		switch (slave.nationality) {
+			case "Zimbabwean":
+				if (slave.race == "white") {
+					r += `Rhodesian.`;
+				} else {
+					r += `${slave.nationality}.`;
+				}
+				break;
+			case "slave":
+			case "none":
+			case "":
+			case "Stateless":
+				r += `Stateless.`;
+				break;
+			default:
+				r += slave.nationality.
+				break;
+		}
+		r += `</span>`;
 	}
-	r += `</span>`;
-}
 
-if (V.abbreviatePhysicals == 1) {
-	r += `<span class="pink">`;
-	switch (slave.skin) {
-		case "light brown":
-			r += `L. Br`;
-			break;
-		case "dark brown":
-			r += `D. Br`;
-			break;
-		case "light olive":
-			r += `L. Oli`;
-			break;
-		case "dark olive":
-			r += `D. Oli`;
-			break;
-		case "extremely pale":
-			r += `Ex. Pa`;
-			break;
-		case "pure white":
-			r += `P. Whi`;
-			break;
-		case "tanned":
-			r += `Tan`;
-			break;
-		case "dark":
-		case "fair":
-		case "pale":
-			r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
-			break;
-		default:
-			r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
-			break;
-	}
+	if (V.abbreviatePhysicals == 1) {
+		r += `<span class="pink">`;
+		switch (slave.skin) {
+			case "light brown":
+				r += `L. Br`;
+				break;
+			case "dark brown":
+				r += `D. Br`;
+				break;
+			case "light olive":
+				r += `L. Oli`;
+				break;
+			case "dark olive":
+				r += `D. Oli`;
+				break;
+			case "extremely pale":
+				r += `Ex. Pa`;
+				break;
+			case "pure white":
+				r += `P. Whi`;
+				break;
+			case "tanned":
+				r += `Tan`;
+				break;
+			case "dark":
+			case "fair":
+			case "pale":
+				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
+				break;
+			default:
+				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
+				break;
+		}
 	} else {
 		r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.`;
-	r += `</span>`;
-}
-if (V.abbreviateGenitalia == 1) {
-	if (slave.dick > 0) {
+		r += `</span>`;
+	}
+	if (V.abbreviateGenitalia == 1) {
+		if (slave.dick > 0) {
+			r += `<span class="pink">`;
+			if (slave.balls == 0) {
+				r += `Geld`;
+			}
+			if ((slave.dick > 8) && (slave.balls > 8)) {
+				r += `Junk+++`;
+			} else if ((slave.dick > 5) && (slave.balls > 5)) {
+				r += `Junk++`;
+			} else if ((slave.dick > 4) && (slave.balls > 4)) {
+				r += `Junk+`;
+			} else if ((slave.dick > 3) && (slave.balls > 3)) {
+				r += `Junk`;
+			} else if (slave.dick > 8) {
+				r += `Dick+++`;
+			} else if (slave.dick > 5) {
+				r += `Dick++`;
+			} else if (slave.dick > 4) {
+				r += `Dick+`;
+			} else if (slave.dick > 3) {
+				r += `Dick`;
+			} else if (slave.balls > 10) {
+				r += `Balls+++`;
+			} else if (slave.balls > 5) {
+				r += `Balls++`;
+			} else if (slave.balls > 4) {
+				r += `Balls+`;
+			} else if (slave.balls > 3) {
+				r += `Balls`;
+			}
+			r += `</span>`;
+		}
+		if (slave.vagina == 0) {
+			r += `<span class="lime">VV</span>`;
+		} else if ((slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")) {
+			r += `<span class="pink">NBP</span>`;
+		}
+		if (slave.anus == 0) {
+			r += `	<span class="lime">AV</span>`;
+		}
 		r += `<span class="pink">`;
-		if (slave.balls == 0) {
-			r += `Geld`;
-		}
-		if ((slave.dick > 8) && (slave.balls > 8)) {
-			r += `Junk+++`;
-		} else if ((slave.dick > 5) && (slave.balls > 5)) {
-			r += `Junk++`;
-		} else if ((slave.dick > 4) && (slave.balls > 4)) {
-			r += `Junk+`;
-		} else if ((slave.dick > 3) && (slave.balls > 3)) {
-			r += `Junk`;
-		} else if (slave.dick > 8) {
-			r += `Dick+++`;
-		} else if (slave.dick > 5) {
-			r += `Dick++`;
-		} else if (slave.dick > 4) {
-			r += `Dick+`;
-		} else if (slave.dick > 3) {
-			r += `Dick`;
-		} else if (slave.balls > 10) {
-			r += `Balls+++`;
-		} else if (slave.balls > 5) {
-			r += `Balls++`;
-		} else if (slave.balls > 4) {
-			r += `Balls+`;
-		} else if (slave.balls > 3) {
-			r += `Balls`;
+		if ((slave.vagina > 3) && (slave.anus > 3)) {
+			r += `V++A++`;
+		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
+			r += `V+A+`;
+		} else if (slave.vagina > 3) {
+			r += `V++`;
+		} else if (slave.vagina > 2) {
+			r += `V+`;
+		} else if (slave.anus > 3) {
+			r += `A++`;
+		} else if (slave.anus > 2) {
+			r += `A+`;
 		}
 		r += `</span>`;
-	}
-	if (slave.vagina == 0) {
-		r += `<span class="lime">VV</span>`;
-	} else if ((slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")) {
-		r += `<span class="pink">NBP</span>`;
-	}
-	if (slave.anus == 0) {
-	r += `	<span class="lime">AV</span>`;
-	}
-	r += `<span class="pink">`;
-	if ((slave.vagina > 3) && (slave.anus > 3)) {
-		r += `V++A++`;
-	} else if ((slave.vagina > 2) && (slave.anus > 2)) {
-		r += `V+A+`;
-	} else if (slave.vagina > 3) {
-		r += `V++`;
-	} else if (slave.vagina > 2) {
-		r += `V+`;
-	} else if (slave.anus > 3) {
-		r += `A++`;
-	} else if (slave.anus > 2) {
-		r += `A+`;
-	}
-	r += `</span>`;
-} else if (V.abbreviateGenitalia == 2) {
-	if (slave.dick > 0) {
+	} else if (V.abbreviateGenitalia == 2) {
+		if (slave.dick > 0) {
+			r += `<span class="pink">`;
+			if (slave.balls == 0) {
+				r += `Gelded.`;
+			}
+			if ((slave.dick > 8) && (slave.balls > 8)) {
+				r += `Hyper dick & balls.`;
+			} else if ((slave.dick > 5) && (slave.balls > 5)) {
+				r += `Monster dick & balls.`;
+			} else if ((slave.dick > 4) && (slave.balls > 4)) {
+				r += `Huge dick & balls.`;
+			} else if ((slave.dick > 3) && (slave.balls > 3)) {
+				r += `Big dick & balls.`;
+			} else if (slave.dick > 8) {
+				r += `Hyper dong.`;
+			} else if (slave.dick > 5) {
+				r += `Monster dong.`;
+			} else if (slave.dick > 4) {
+				r += `Huge dick.`;
+			} else if (slave.dick > 3) {
+				r += `Big dick.`;
+			} else if (slave.balls > 8) {
+				r += `Hyper balls.`;
+			} else if (slave.balls > 5) {
+				r += `Monstrous balls.`;
+			} else if (slave.balls > 4) {
+				r += `Huge balls.`;
+			} else if (slave.balls > 3) {
+				r += `Big balls.`;
+			}
+			r += `</span>`;
+		}
+		if (slave.vagina == 0) {
+			r += `<span class="lime">Virgin.</span>`;
+		} else if ((slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")) {
+			r += `<span class="pink">Naked, barefoot, and pregnant.</span>`;
+		}
+		if (slave.anus == 0) {
+			r += `<span class="lime">Anal virgin.</span>`;
+		}
 		r += `<span class="pink">`;
-		if (slave.balls == 0) {
-			r += `Gelded.`;
-		}
-		if ((slave.dick > 8) && (slave.balls > 8)) {
-			r += `Hyper dick & balls.`;
-		} else if ((slave.dick > 5) && (slave.balls > 5)) {
-			r += `Monster dick & balls.`;
-		} else if ((slave.dick > 4) && (slave.balls > 4)) {
-			r += `Huge dick & balls.`;
-		} else if ((slave.dick > 3) && (slave.balls > 3)) {
-			r += `Big dick & balls.`;
-		} else if (slave.dick > 8) {
-			r += `Hyper dong.`;
-		} else if (slave.dick > 5) {
-			r += `Monster dong.`;
-		} else if (slave.dick > 4) {
-			r += `Huge dick.`;
-		} else if (slave.dick > 3) {
-			r += `Big dick.`;
-		} else if (slave.balls > 8) {
-			r += `Hyper balls.`;
-		} else if (slave.balls > 5) {
-			r += `Monstrous balls.`;
-		} else if (slave.balls > 4) {
-			r += `Huge balls.`;
-		} else if (slave.balls > 3) {
-			r += `Big balls.`;
+		if ((slave.vagina > 3) && (slave.anus > 3)) {
+			r += `Blown out holes.`;
+		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
+			r += `High mileage.`;
+		} else if (slave.vagina > 3) {
+			r += `Cavernous pussy.`;
+		} else if (slave.vagina > 2) {
+			r += `Loose pussy.`;
+		} else if (slave.anus > 3) {
+			r += `Permagaped anus.`;
+		} else if (slave.anus > 2) {
+			r += `Gaping anus.`;
 		}
 		r += `</span>`;
 	}
-	if (slave.vagina == 0) {
-		r += `<span class="lime">Virgin.</span>`;
-	} else if ((slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")) {
-		r += `<span class="pink">Naked, barefoot, and pregnant.</span>`;
-	}
-	if (slave.anus == 0) {
-		r += `<span class="lime">Anal virgin.</span>`;
-	}
-	r += `<span class="pink">`;
-	if ((slave.vagina > 3) && (slave.anus > 3)) {
-		r += `Blown out holes.`;
-	} else if ((slave.vagina > 2) && (slave.anus > 2)) {
-		r += `High mileage.`;
-	} else if (slave.vagina > 3) {
-		r += `Cavernous pussy.`;
-	} else if (slave.vagina > 2) {
-		r += `Loose pussy.`;
-	} else if (slave.anus > 3) {
-		r += `Permagaped anus.`;
-	} else if (slave.anus > 2) {
-		r += `Gaping anus.`;
-	}
-	r += `</span>`;
-}
 
-if (V.abbreviatePhysicals == 1) {
-	r += `<span class="pink">`;
-	if (V.showAgeDetail == 1) {
-		r += slave.actualAge;
-	} else if (slave.actualAge >= 40) {
-		r += `40s`;
-	} else if (slave.actualAge >= 35) {
-		r += `Lt30s`;
-	} else if (slave.actualAge >= 30) {
-		r += `Ea30s`;
-	} else if (slave.actualAge >= 25) {
-		r += `Lt20s`;
-	} else if (slave.actualAge >= 20) {
-		r += `Ea20s`;
-	} else if (slave.actualAge >= 18) {
-		r += slave.actualAge;
-	}
-	if (slave.actualAge != slave.physicalAge) {
-		r += `${slave.physicalAge}y-bdy`;
-	}
-	if (slave.visualAge != slave.physicalAge) {
-		r += `Lks${slave.visualAge}`;
-	}
-	if (slave.face < -95) {
-		r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	} else if (slave.face < -40) {
-		r += `<span class="red">Face--${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	} else if (slave.face < -10) {
-		r += `<span class="red">Face-${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	} else if (slave.face <= 10) {
-		r += `Face${V.summaryStats? `[${slave.face}]` : ''}`;
-	} else if (slave.face <= 40) {
-		r += `<span class="pink">Face+${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	} else if (slave.face <= 95) {
-		r += `<span class="pink">Face++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	} else {
-		r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-	}
-	if (slave.eyes == -2) {
-		r += `<span class="red">Blind</span>`;
-	} else if (((slave.eyes == -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))) {
-		r += `<span class="yellow">Sight-</span>`;
-	}
+	if (V.abbreviatePhysicals == 1) {
+		r += `<span class="pink">`;
+		if (V.showAgeDetail == 1) {
+			r += slave.actualAge;
+		} else if (slave.actualAge >= 40) {
+			r += `40s`;
+		} else if (slave.actualAge >= 35) {
+			r += `Lt30s`;
+		} else if (slave.actualAge >= 30) {
+			r += `Ea30s`;
+		} else if (slave.actualAge >= 25) {
+			r += `Lt20s`;
+		} else if (slave.actualAge >= 20) {
+			r += `Ea20s`;
+		} else if (slave.actualAge >= 18) {
+			r += slave.actualAge;
+		}
+		if (slave.actualAge != slave.physicalAge) {
+			r += `${slave.physicalAge}y-bdy`;
+		}
+		if (slave.visualAge != slave.physicalAge) {
+			r += `Lks${slave.visualAge}`;
+		}
+		if (slave.face < -95) {
+			r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face < -40) {
+			r += `<span class="red">Face--${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face < -10) {
+			r += `<span class="red">Face-${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face <= 10) {
+			r += `Face${V.summaryStats? `[${slave.face}]` : ''}`;
+		} else if (slave.face <= 40) {
+			r += `<span class="pink">Face+${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face <= 95) {
+			r += `<span class="pink">Face++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else {
+			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		}
+		if (slave.eyes == -2) {
+			r += `<span class="red">Blind</span>`;
+		} else if (((slave.eyes == -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))) {
+			r += `<span class="yellow">Sight-</span>`;
+		}
 
-	if (slave.markings != "none") {
-		r += `Markings`;
-	}
+		if (slave.markings != "none") {
+			r += `Markings`;
+		}
 
-	if (slave.lips > 95) {
-		r += `Facepussy`;
-	} else if (slave.lips > 70) {
-		r += `Lips+++${V.summaryStats? `[${slave.lips}]` : ''}`;
-	} else if (slave.lips > 40) {
-		r += `Lips++${V.summaryStats? `[${slave.lips}]` : ''}`;
-	} else if (slave.lips > 20) {
-		r += `Lips+${V.summaryStats? `[${slave.lips}]` : ''}`;
-	} else if (slave.lips > 10) {
-		r += `Lips${V.summaryStats? `[${slave.lips}]` : ''}`;
-	} else {
-		r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
-	}
-	if (slave.teeth == "crooked") {
-		r += `<span class="yellow">Cr Teeth</span>`;
-	} else if (slave.teeth == "cosmetic braces") {
-		r += `Cos Braces`;
-	} else if (slave.teeth == "straightening braces") {
-		r += `Braces`;
-	} else if (slave.teeth == "removable") {
-		r += `Rem Teeth`;
-	} else if (slave.teeth == "pointy") {
-		r += `Fangs`;
-	}
-	if (slave.muscles > 95) {
-		r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	} else if (slave.muscles > 50) {
-		r += `Musc+${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	} else if (slave.muscles > 5) {
-		r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	} else if (slave.muscles > -6) {
-		r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	} else if (slave.muscles > -31) {
-		if (V.arcologies[0].FSPhysicalIdealist == "unset") {
-			r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		if (slave.lips > 95) {
+			r += `Facepussy`;
+		} else if (slave.lips > 70) {
+			r += `Lips+++${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 40) {
+			r += `Lips++${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 20) {
+			r += `Lips+${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 10) {
+			r += `Lips${V.summaryStats? `[${slave.lips}]` : ''}`;
 		} else {
-			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
+		}
+		if (slave.teeth == "crooked") {
+			r += `<span class="yellow">Cr Teeth</span>`;
+		} else if (slave.teeth == "cosmetic braces") {
+			r += `Cos Braces`;
+		} else if (slave.teeth == "straightening braces") {
+			r += `Braces`;
+		} else if (slave.teeth == "removable") {
+			r += `Rem Teeth`;
+		} else if (slave.teeth == "pointy") {
+			r += `Fangs`;
 		}
-	} else if (slave.muscles > -96) {
-		if (V.arcologies[0].FSPhysicalIdealist == "unset") {
-			r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		if (slave.muscles > 95) {
+			r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > 50) {
+			r += `Musc+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > 5) {
+			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > -6) {
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > -31) {
+			if (V.arcologies[0].FSPhysicalIdealist == "unset") {
+				r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			} else {
+				r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			}
+		} else if (slave.muscles > -96) {
+			if (V.arcologies[0].FSPhysicalIdealist == "unset") {
+				r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			} else {
+				r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			}
 		} else {
-			r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
 		}
-	} else {
-		r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
-	}
-	if (slave.amp != 0) {
-		if (slave.amp == -1) {
-			r += `P-Limbs`;
-		} else if (slave.amp == -2) {
-			r += `Sex P-Limbs`;
-		} else if (slave.amp == -3) {
-			r += `Beauty P-Limbs`;
-		} else if (slave.amp == -4) {
-			r += `Combat P-Limbs`;
-		} else if (slave.amp == -5) {
-			r += `Cyber P-Limbs`;
+		if (slave.amp != 0) {
+			if (slave.amp == -1) {
+				r += `P-Limbs`;
+			} else if (slave.amp == -2) {
+				r += `Sex P-Limbs`;
+			} else if (slave.amp == -3) {
+				r += `Beauty P-Limbs`;
+			} else if (slave.amp == -4) {
+				r += `Combat P-Limbs`;
+			} else if (slave.amp == -5) {
+				r += `Cyber P-Limbs`;
+			} else {
+				r += `Amp`;
+			}
+		}
+		if (!canWalk(slave)) {
+			r += `Immob`;
+		}
+		if (slave.heels == 1) {
+			r += `Heel`;
+		}
+		r += `</span>`;
+		if (slave.voice == 0) {
+			r += `<span class="pink">Mute</span>`;
 		} else {
-			r += `Amp`;
+			if (slave.accent == 3) {
+				r += `<span class="red">Acc--</span>`;
+			} else if (slave.accent == 2) {
+				r += `Acc-`;
+			} else if (slave.accent == 4) {
+				r += `Acc--`;
+			} else if (slave.accent == 1) {
+				r += `<span class="pink">Acc</span>`;
+			}
 		}
-	}
-	if (!canWalk(slave)) {
-		r += `Immob`;
-	}
-	if (slave.heels == 1) {
-		r += `Heel`;
-	}
-	r += `</span>`;
-	if (slave.voice == 0) {
-		r += `<span class="pink">Mute</span>`;
-	} else {
-		if (slave.accent == 3) {
-			r += `<span class="red">Acc--</span>`;
-		} else if (slave.accent == 2) {
-			r += `Acc-`;
-		} else if (slave.accent == 4) {
-			r += `Acc--`;
-		} else if (slave.accent == 1) {
-			r += `<span class="pink">Acc</span>`;
+		r += `<span class="pink">`;
+		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
+			r += `T&A+++`;
+		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
+			r += `T&A++`;
+		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
+			r += `T&A+`;
+		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
+			r += `T&A`;
+		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
+			r += `Girlish`;
+		} else if (slave.boobs >= 12000) {
+			r += `Boobs+++`;
+		} else if (slave.boobs > 4000) {
+			r += `Boobs++`;
+		} else if (slave.boobs > 2000) {
+			r += `Boobs+`;
+		} else if (slave.boobs > 800) {
+			r += `Boobs`;
+		} else if (slave.butt > 9) {
+			r += `Ass+++`;
+		} else if (slave.butt > 8) {
+			r += `Ass++`;
+		} else if (slave.butt > 6) {
+			r += `Ass+`;
+		} else if (slave.butt > 4) {
+			r += `Ass`;
 		}
-	}
-	r += `<span class="pink">`;
-	if ((slave.boobs >= 12000) && (slave.butt > 9)) {
-		r += `T&A+++`;
-	} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
-		r += `T&A++`;
-	} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
-		r += `T&A+`;
-	} else if ((slave.boobs > 800) && (slave.butt > 4)) {
-		r += `T&A`;
-	} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
-		r += `Girlish`;
-	} else if (slave.boobs >= 12000) {
-		r += `Boobs+++`;
-	} else if (slave.boobs > 4000) {
-		r += `Boobs++`;
-	} else if (slave.boobs > 2000) {
-		r += `Boobs+`;
-	} else if (slave.boobs > 800) {
-		r += `Boobs`;
-	} else if (slave.butt > 9) {
-		r += `Ass+++`;
-	} else if (slave.butt > 8) {
-		r += `Ass++`;
-	} else if (slave.butt > 6) {
-		r += `Ass+`;
-	} else if (slave.butt > 4) {
-		r += `Ass`;
-	}
-	r += `</span>`;
-	r += `<span class="red">`;
-	if (slave.hips < -1) {
-		if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
-			r += `Disp+`;
-		}
-	} else if (slave.hips < 0) {
-		if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
-			r += `Disp+`;
-		}
-	} else if (slave.hips > 2) {
-		if (slave.butt <= 8) {
-			r += `Disp-`;
-		}
-	} else if (slave.hips > 1) {
-		if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
-			r += `Disp-`;
-		}
-} else if (slave.hips > 0) {
-	if (slave.butt > 8) {
-		if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
-			r += `Disp+`;
-		}
-	} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
-		r += `Disp-`;
-	}
-	} else {
-		if (slave.butt > 6) {
-			if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+		r += `</span>`;
+		r += `<span class="red">`;
+		if (slave.hips < -1) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
 				r += `Disp+`;
 			}
-		} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
-			r += `Disp-`;
+		} else if (slave.hips < 0) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+				r += `Disp+`;
+			}
+		} else if (slave.hips > 2) {
+			if (slave.butt <= 8) {
+				r += `Disp-`;
+			}
+		} else if (slave.hips > 1) {
+			if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		} else if (slave.hips > 0) {
+			if (slave.butt > 8) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+					r += `Disp+`;
+				}
+			} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		} else {
+			if (slave.butt > 6) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+					r += `Disp+`;
+				}
+			} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
 		}
-	}
-	r += `</span>`;
-	if (slave.waist > 95) {
-		r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
-	} else if (slave.waist > 40) {
-		r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
-	} else if (slave.waist > 10) {
-		r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
-	} else if (slave.waist >= -10) {
-		r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
-	} else if (slave.waist >= -40) {
-		r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
-	} else if (slave.waist >= -95) {
-		r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
-	} else {
-		r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
-	}
-	r += `<span class="pink">`;
-	if ((slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)) {
-		r += `Natr`;
-	} else {
-		r += `Impl`;
-	}
-	if (slave.lactation == 1) {
-		r += `Lact`;
-	} else if (slave.lactation == 2) {
-		r += `Lact++`;
-	}
-	modScore(slave);
-	if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
-		true;
-	} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
-		r += `Mods++`;
-	} else if (V.modScore > 7) {
-		r += `Mods+`;
-	} else {
-		r += `Mods`;
-	}
-	if (slave.brand != 0) {
-		r += `Br`;
-	}
-	r += `</span>`;
-} else if (V.abbreviatePhysicals == 2) {
-	r += `<span class="pink">`;
-	if (V.showAgeDetail == 1) {
-		r += `Age ${slave.actualAge}.`;
-	} else if (slave.actualAge >= 40) {
-		r += `Forties.`;
-	} else if (slave.actualAge >= 35) {
-		r += `Late thirties.`;
-	} else if (slave.actualAge >= 30) {
-		r += `Early thirties.`;
-	} else if (slave.actualAge >= 25) {
-		r += `Late twenties.`;
-	} else if (slave.actualAge >= 20) {
-		r += `Early twenties.`;
-	} else if (slave.actualAge >= 19) {
-		r += `Nineteen.`;
-	} else if (slave.actualAge >= 18) {
-		r += `Eighteen.`;
-	} else {
-		r += `Underage.`;
-	}
-	/*
-	**  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
-	**  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
-	*/
-	if (((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))) {
-		if (slave.actualAge != slave.physicalAge) {
-			r += `${slave.physicalAge} year old body.`;
+		r += `</span>`;
+		if (slave.waist > 95) {
+			r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist > 40) {
+			r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
+		} else if (slave.waist > 10) {
+			r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist >= -10) {
+			r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
+		} else if (slave.waist >= -40) {
+			r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist >= -95) {
+			r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else {
+			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
 		}
-		if (slave.visualAge != slave.physicalAge) {
-			r += `Looks ${slave.visualAge}.`;
+		r += `<span class="pink">`;
+		if ((slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)) {
+			r += `Natr`;
+		} else {
+			r += `Impl`;
+		}
+		if (slave.lactation == 1) {
+			r += `Lact`;
+		} else if (slave.lactation == 2) {
+			r += `Lact++`;
+		}
+		modScore(slave);
+		if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
+			true;
+		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
+			r += `Mods++`;
+		} else if (V.modScore > 7) {
+			r += `Mods+`;
+		} else {
+			r += `Mods`;
+		}
+		if (slave.brand != 0) {
+			r += `Br`;
+		}
+		r += `</span>`;
+	} else if (V.abbreviatePhysicals == 2) {
+		r += `<span class="pink">`;
+		if (V.showAgeDetail == 1) {
+			r += `Age ${slave.actualAge}.`;
+		} else if (slave.actualAge >= 40) {
+			r += `Forties.`;
+		} else if (slave.actualAge >= 35) {
+			r += `Late thirties.`;
+		} else if (slave.actualAge >= 30) {
+			r += `Early thirties.`;
+		} else if (slave.actualAge >= 25) {
+			r += `Late twenties.`;
+		} else if (slave.actualAge >= 20) {
+			r += `Early twenties.`;
+		} else if (slave.actualAge >= 19) {
+			r += `Nineteen.`;
+		} else if (slave.actualAge >= 18) {
+			r += `Eighteen.`;
+		} else {
+			r += `Underage.`;
 		}
-	} else {
 		/*
-		**  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
-		**  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
-		**  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
-		**  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
-		**  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
-		**  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
-		**  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
-		*/
-		r += `Appears to have a ${slave.visualAge} year old body.`;
-	}
-	if (slave.inducedNCS == 1) {
-		r += `(<span class="orange">NCS</span>)`;
-	}
-	if (slave.face < -95) {
-		r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	} else if (slave.face < -40) {
-		r += `<span class="red">Ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	} else if (slave.face < -10) {
-		r += `<span class="red">Unattractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	} else if (slave.face <= 10) {
-		r += `Average${V.summaryStats? `[${slave.face}]`: ''}`;
-	} else if (slave.face <= 40) {
-		r += `<span class="pink">Attractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	} else if (slave.face <= 95) {
-		r += `<span class="pink">Beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	} else {
-		r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-	}
-	r += `${slave.faceShape} face.`;
-	if (slave.eyes <= -2) {
-		r += `<span class="red">Blind.</span>`;
-	} else if (((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))) {
-		r += `<span class="yellow">Nearsighted.</span>`;
-	}
-	if (slave.lips > 95) {
-		r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	} else if (slave.lips > 70) {
-		r += `Huge lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	} else if (slave.lips > 40) {
-		r += `Big lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	} else if (slave.lips > 20) {
-		r += `Pretty lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	} else if (slave.lips > 10) {
-		r += `Normal lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-	} else {
-		r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
-	}
-	if (slave.teeth == "crooked") {
-		r += `<span class="yellow">Crooked teeth.</span>`;
-	} else if (slave.teeth == "cosmetic braces") {
-		r += `Cosmetic braces.`;
-	} else if (slave.teeth == "straightening braces") {
-		r += `Braces.`;
-	} else if (slave.teeth == "removable") {
-		r += `Removable teeth.`;
-	} else if (slave.teeth == "pointy") {
-		r += `Sharp fangs.`;
-	}
-	if (slave.muscles > 95) {
-		r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
-	} else if (slave.muscles > 50) {
-		r += `Muscular${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-	} else if (slave.muscles > 5) {
-		r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-	} else if (slave.muscles > -6) {
-		r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-	} else if (slave.muscles > -31) {
-		if (V.arcologies[0].FSPhysicalIdealist == "unset") {
-			r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+		 **  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
+		 **  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
+		 */
+		if (((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))) {
+			if (slave.actualAge != slave.physicalAge) {
+				r += `${slave.physicalAge} year old body.`;
+			}
+			if (slave.visualAge != slave.physicalAge) {
+				r += `Looks ${slave.visualAge}.`;
+			}
 		} else {
-			r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			/*
+			 **  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
+			 **  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
+			 **  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
+			 **  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
+			 **  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
+			 **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
+			 **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
+			 */
+			r += `Appears to have a ${slave.visualAge} year old body.`;
 		}
-	} else if (slave.muscles > -96) {
-		if (V.arcologies[0].FSPhysicalIdealist == "unset") {
-			r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+		if (slave.inducedNCS == 1) {
+			r += `(<span class="orange">NCS</span>)`;
+		}
+		if (slave.face < -95) {
+			r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face < -40) {
+			r += `<span class="red">Ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face < -10) {
+			r += `<span class="red">Unattractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face <= 10) {
+			r += `Average${V.summaryStats? `[${slave.face}]`: ''}`;
+		} else if (slave.face <= 40) {
+			r += `<span class="pink">Attractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face <= 95) {
+			r += `<span class="pink">Beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 		} else {
-			r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 		}
-	} else {
-		r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
-	}
-	if (slave.amp != 0) {
-		if (slave.amp == -1) {
-			r += `Prosthetic limbs.`;
-		} else if (slave.amp == -2) {
-			r += `Sexy prosthetic limbs.`;
-		} else if (slave.amp == -3) {
-			r += `Beautiful prosthetic limbs.`;
-		} else if (slave.amp == -4) {
-			r += `Deadly prosthetic limbs.`;
-		} else if (slave.amp == -5) {
-			r += `Cyber prosthetic limbs.`;
+		r += `${slave.faceShape} face.`;
+		if (slave.eyes <= -2) {
+			r += `<span class="red">Blind.</span>`;
+		} else if (((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))) {
+			r += `<span class="yellow">Nearsighted.</span>`;
+		}
+		if (slave.lips > 95) {
+			r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 70) {
+			r += `Huge lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 40) {
+			r += `Big lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 20) {
+			r += `Pretty lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 10) {
+			r += `Normal lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
 		} else {
-			r += `Amputee.`;
+			r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
 		}
+		if (slave.teeth == "crooked") {
+			r += `<span class="yellow">Crooked teeth.</span>`;
+		} else if (slave.teeth == "cosmetic braces") {
+			r += `Cosmetic braces.`;
+		} else if (slave.teeth == "straightening braces") {
+			r += `Braces.`;
+		} else if (slave.teeth == "removable") {
+			r += `Removable teeth.`;
+		} else if (slave.teeth == "pointy") {
+			r += `Sharp fangs.`;
+		}
+		if (slave.muscles > 95) {
+			r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
+		} else if (slave.muscles > 50) {
+			r += `Muscular${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > 5) {
+			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > -6) {
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > -31) {
+			if (V.arcologies[0].FSPhysicalIdealist == "unset") {
+				r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+			} else {
+				r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			}
+		} else if (slave.muscles > -96) {
+			if (V.arcologies[0].FSPhysicalIdealist == "unset") {
+				r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+			} else {
+				r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			}
+		} else {
+			r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+		}
+		if (slave.amp != 0) {
+			if (slave.amp == -1) {
+				r += `Prosthetic limbs.`;
+			} else if (slave.amp == -2) {
+				r += `Sexy prosthetic limbs.`;
+			} else if (slave.amp == -3) {
+				r += `Beautiful prosthetic limbs.`;
+			} else if (slave.amp == -4) {
+				r += `Deadly prosthetic limbs.`;
+			} else if (slave.amp == -5) {
+				r += `Cyber prosthetic limbs.`;
+			} else {
+				r += `Amputee.`;
+			}
+		}
+		if (!canWalk(slave)) {
+			r += `Immobile.`;
+		}
+		if (slave.heels == 1) {
+			r += `Heeled.`;
+		}
+		r += `</span>`;
+		if (slave.voice == 0) {
+			r += `<span class="pink">Mute.</span>`;
+		} else {
+			if (slave.accent == 3) {
+				r += `<span class="red">Bad accent.</span>`;
+			} else if (slave.accent == 4) {
+				r += `<span class="red">No language skills.</span>`;
+			} else if (slave.accent == 2) {
+				r += `Accent.`;
+			} else if (slave.accent == 1) {
+				r += `<span class="pink">Cute accent.</span>`;
+			}
+		}
+		r += `<span class="pink">`;
+		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
+			r += `Hyper T&A.`;
+		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
+			r += `Enormous T&A.`;
+		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
+			r += `Huge T&A.`;
+		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
+			r += `Big T&A.`;
+		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
+			r += `Girlish figure.`;
+		} else if (slave.boobs >= 12000) {
+			r += `Immobilizing tits.`;
+		} else if (slave.boobs > 4000) {
+			r += `Monstrous tits.`;
+		} else if (slave.boobs > 2000) {
+			r += `Huge tits.`;
+		} else if (slave.boobs > 800) {
+			r += `Big tits.`;
+		} else if (slave.butt > 9) {
+			r += `Hyper ass.`;
+		} else if (slave.butt > 8) {
+			r += `Titanic ass.`;
+		} else if (slave.butt > 6) {
+			r += `Huge ass.`;
+		} else if (slave.butt > 4) {
+			r += `Big ass.`;
+		}
+		r += `</span>`;
+		r += `<span class="red">`;
+		if (slave.hips < -1) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+				r += `Disproportionately big butt.`;
+			}
+		} else if (slave.hips < 0) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+				r += `Disproportionately big butt.`;
+			}
+		} else if (slave.hips > 2) {
+			if (slave.butt <= 8) {
+				r += `Disproportionately small butt.`;
+			}
+		} else if (slave.hips > 1) {
+			if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		} else if (slave.hips > 0) {
+			if (slave.butt > 8) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+					r += `Disproportionately big butt.`;
+				}
+			} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		} else {
+			if (slave.butt > 6) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+					r += `Disproportionately big butt.`;
+				}
+			} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		}
+		r += `</span>`;
+		if (slave.waist > 95) {
+			r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist > 40) {
+			r += `<span class="red">Ugly waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist > 10) {
+			r += `<span class="red">Unattractive waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist >= -10) {
+			r += `Average waist${V.summaryStats? `[${slave.waist}]`: ''}.`;
+		} else if (slave.waist >= -40) {
+			r += `<span class="pink">Feminine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist >= -95) {
+			r += `<span class="pink">Hourglass waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else {
+			r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		}
+		r += `<span class="pink">`;
+		if ((slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)) {
+			r += `Implants.`;
+		} else if ((slave.faceImplant >= 30) || (slave.waist < -95)) {
+			r += `Surgery enhanced.`;
+		} else {
+			r += `All natural.`;
+		}
+		if (slave.lactation == 1) {
+			r += `Lactating naturally.`;
+		} else if (slave.lactation == 2) {
+			r += `Heavy lactation.`;
+		}
+		modScore(slave);
+		if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
+			true;
+		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
+			r += `Extensive body mods.`;
+		} else if (V.modScore > 7) {
+			r += `Noticeable body mods.`;
+		} else {
+			r += `Light body mods.`;
+		}
+		if (slave.brand != 0) {
+			r += `Branded.`;
+		}
+		r += `</span>`;
 	}
-	if (!canWalk(slave)) {
-		r += `Immobile.`;
-	}
-	if (slave.heels == 1) {
-		r += `Heeled.`;
+
+	r += `<br>`;
+	if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 	}
-	r += `</span>`;
-	if (slave.voice == 0) {
-		r += `<span class="pink">Mute.</span>`;
-	} else {
-		if (slave.accent == 3) {
-			r += `<span class="red">Bad accent.</span>`;
-		} else if (slave.accent == 4) {
-			r += `<span class="red">No language skills.</span>`;
-		} else if (slave.accent == 2) {
-			r += `Accent.`;
-		} else if (slave.accent == 1) {
-			r += `<span class="pink">Cute accent.</span>`;
+
+	if (V.abbreviateSkills == 1) {
+		if (slave.fetish == "mindbroken") {
+			true;
+		} else if (slave.intelligenceImplant == 1) {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">I+++(e)</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">I++(e)</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">I+(e)</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">I-(e)</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">I--(e)</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">I---(e)</span>`;
+					break;
+				default:
+					r += `I(e)`;
+					break;
+			}
+		} else {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">I+++</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">I++</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">I+</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">I-</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">I--</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">I---</span>`;
+					break;
+				default:
+					r += `I`;
+					break;
+			}
+		}
+
+		_SSkills = slave.analSkill + slave.oralSkill;
+		r += `<span class="aquamarine">`;
+		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
+			r += `MSS`;
+		} else {
+			_SSkills += slave.vaginalSkill;
+			_SSkills = Math.trunc(_SSkills);
+			if (_SSkills > 180) {
+				r += `S++`;
+			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
+				r += `Sh++`;
+			} else if (_SSkills > 90) {
+				r += `S+`;
+			} else if (_SSkills > 30) {
+				r += `S`;
+			} else {
+				r += `S-`;
+			}
+			if (V.summaryStats) {
+				r += `[${_SSkills}]`;
+			}
+			if (slave.whoreSkill >= 100) {
+				r += `W+++`;
+			} else if (slave.whoreSkill > 60) {
+				r += `W++`;
+			} else if (slave.whoreSkill > 30) {
+				r += `W+`;
+			} else if (slave.whoreSkill > 10) {
+				r += `W`;
+			}
+			if (slave.whoreSkill > 10) {
+				if (V.summaryStats) {
+					r += `[${slave.whoreSkill}]`;
+				}
+			}
+			if (slave.entertainSkill >= 100) {
+				r += `E+++`;
+			} else if (slave.entertainSkill > 60) {
+				r += `E++`;
+			} else if (slave.entertainSkill > 30) {
+				r += `E+`;
+			} else if (slave.entertainSkill > 10) {
+				r += `E`;
+			}
+			if (slave.entertainSkill > 10) {
+				if (V.summaryStats) {
+					r += `[${slave.entertainSkill}]`;
+				}
+			}
+		}
+		if (slave.combatSkill > 0) {
+			r += `C`;
+		}
+		r += `</span>`;
+		if (slave.prestige > 0) {
+			r += `<span class="green">`;
+			if (slave.prestige > 2) {
+				r += `Prest++`;
+			} else if (slave.prestige == 2) {
+				r += `Prest+`;
+			} else if (slave.prestige == 1) {
+				r += `Prest`;
+			}
+			r += `</span>`;
+		}
+	} else if (V.abbreviateSkills == 2) {
+		if (slave.fetish == "mindbroken") {
+			true;
+		} else if (slave.intelligenceImplant == 1) {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">Brilliant, educated.</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">Very smart, educated.</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">Smart, educated.</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">Slow, educated.</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">Very slow, educated.</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">Moronic, educated.</span>`;
+					break;
+				default:
+					r += `Average intelligence, educated.`;
+					break;
+			}
+		} else {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">Brilliant.</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">Very smart.</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">Smart.</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">Slow.</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">Very slow.</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">Moronic.</span>`;
+					break;
+				default:
+					r += `Average intelligence.`;
+					break;
+			}
+		}
+		_SSkills = (slave.analSkill + slave.oralSkill);
+		r += `<span class="aquamarine">`;
+		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
+			r += `Masterful Sex Slave.`;
+		} else {
+			_SSkills += slave.vaginalSkill;
+			if (_SSkills > 180) {
+				r += `Sex master${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
+				r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if (_SSkills > 90) {
+				r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if (_SSkills > 30) {
+				r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
+			} else {
+				r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
+			}
+			if (slave.whoreSkill >= 100) {
+				r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 60) {
+				r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 30) {
+				r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 10) {
+				r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			}
+			if (slave.entertainSkill >= 100) {
+				r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 60) {
+				r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 30) {
+				r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 10) {
+				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			}
+		}
+		if (slave.combatSkill > 0) {
+			r += `Trained fighter.`;
+		}
+		r += `</span>`;
+		if (slave.prestige > 0) {
+			r += `<span class="green">`;
+			if (slave.prestige > 2) {
+				r += `Extremely prestigious.`;
+			} else if (slave.prestige == 2) {
+				r += `Very prestigious.`;
+			} else if (slave.prestige == 1) {
+				r += `Prestigious.`;
+			}
+			r += `</span>`;
 		}
 	}
-	r += `<span class="pink">`;
-	if ((slave.boobs >= 12000) && (slave.butt > 9)) {
-		r += `Hyper T&A.`;
-	} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
-		r += `Enormous T&A.`;
-	} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
-		r += `Huge T&A.`;
-	} else if ((slave.boobs > 800) && (slave.butt > 4)) {
-		r += `Big T&A.`;
-	} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
-		r += `Girlish figure.`;
-	} else if (slave.boobs >= 12000) {
-		r += `Immobilizing tits.`;
-	} else if (slave.boobs > 4000) {
-		r += `Monstrous tits.`;
-	} else if (slave.boobs > 2000) {
-		r += `Huge tits.`;
-	} else if (slave.boobs > 800) {
-		r += `Big tits.`;
-	} else if (slave.butt > 9) {
-		r += `Hyper ass.`;
-	} else if (slave.butt > 8) {
-		r += `Titanic ass.`;
-	} else if (slave.butt > 6) {
-		r += `Huge ass.`;
-	} else if (slave.butt > 4) {
-		r += `Big ass.`;
-	}
-	r += `</span>`;
-	r += `<span class="red">`;
-	if (slave.hips < -1) {
-		if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
-			r += `Disproportionately big butt.`;
-		}
-	} else if (slave.hips < 0) {
-		if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
-			r += `Disproportionately big butt.`;
-		}
-	} else if (slave.hips > 2) {
-		if (slave.butt <= 8) {
-			r += `Disproportionately small butt.`;
-		}
-	} else if (slave.hips > 1) {
-		if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
-			r += `Disproportionately small butt.`;
-		}
-	} else if (slave.hips > 0) {
-		if (slave.butt > 8) {
-			if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
-				r += `Disproportionately big butt.`;
+
+	if (V.abbreviateMental == 1) {
+		if (slave.fetish != "mindbroken") {
+			if (slave.fetishKnown == 1) {
+				r += `<span class="lightcoral">`;
+				switch (slave.fetish) {
+					case "submissive":
+						if (slave.fetishStrength > 95) {
+							r += `Sub++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Sub+`;
+						} else {
+							r += `Sub`;
+						}
+						break;
+					case "cumslut":
+						if (slave.fetishStrength > 95) {
+							r += `Oral++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Oral+`;
+						} else {
+							r += `Oral`;
+						}
+						break;
+					case "humiliation":
+						if (slave.fetishStrength > 95) {
+							r += `Humil++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Humil+`;
+						} else {
+							r += `Humil`;
+						}
+						break;
+					case "buttslut":
+						if (slave.fetishStrength > 95) {
+							r += `Anal++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Anal+`;
+						} else {
+							r += `Anal`;
+						}
+						break;
+					case "boobs":
+						if (slave.fetishStrength > 95) {
+							r += `Boobs++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Boobs+`;
+						} else {
+							r += `Boobs`;
+						}
+						break;
+					case "sadist":
+						if (slave.fetishStrength > 95) {
+							r += `Sadist++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Sadist+`;
+						} else {
+							r += `Sadist`;
+						}
+						break;
+					case "masochist":
+						if (slave.fetishStrength > 95) {
+							r += `Pain++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Pain+`;
+						} else {
+							r += `Pain`;
+						}
+						break;
+					case "dom":
+						if (slave.fetishStrength > 95) {
+							r += `Dom++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Dom+`;
+						} else {
+							r += `Dom`;
+						}
+						break;
+					case "pregnancy":
+						if (slave.fetishStrength > 95) {
+							r += `Preg++`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Preg+`;
+						} else {
+							r += `Preg`;
+						}
+						break;
+					default:
+						r += `Vanilla`;
+						break;
+				}
+				if (V.summaryStats) {
+					r += `[${slave.fetishStrength}]`;
+				}
+				r += `</span>`;
+			}
+			if (slave.attrKnown == 1) {
+				if (slave.attrXY <= 5) {
+					r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+				} else if (slave.attrXY <= 15) {
+					r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+				} else if (slave.attrXY <= 35) {
+					r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+				} else if (slave.attrXY <= 65) {
+					r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
+				} else if (slave.attrXY <= 85) {
+					r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+				} else if (slave.attrXY <= 95) {
+					r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+				} else if (slave.attrXX > 95) {
+					if (slave.energy <= 95) {
+						r += `<span class="green">Omni!</span>`;
+					} else {
+						r += `<span class="green">Omni+Nympho!!</span>`;
+					}
+				} else {
+					r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+				}
+				if (slave.attrXX <= 5) {
+					r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+				} else if (slave.attrXX <= 15) {
+					r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+				} else if (slave.attrXX <= 35) {
+					r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+				} else if (slave.attrXX <= 65) {
+					r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
+				} else if (slave.attrXX <= 85) {
+					r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+				} else if (slave.attrXX <= 95) {
+					r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+				} else if (slave.attrXY <= 95) {
+					r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+				}
+				if (slave.energy > 95) {
+					if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+						r += `<span class="green">Nympho!</span>`;
+					}
+				} else if (slave.energy > 80) {
+					r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+				} else if (slave.energy > 60) {
+					r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+				} else if (slave.energy > 40) {
+					r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+				} else if (slave.energy > 20) {
+					r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+				} else {
+					r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+				}
+			}
+		}
+		if (slave.clitPiercing == 3) {
+			if (slave.fetishKnown == 1) {
+				if (slave.clitSetting == "off") {
+					r += `SP-`;
+				} else if (((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")) {
+					r += `SP:sub`;
+				} else if (((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")) {
+					r += `SP:oral`;
+				} else if (((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")) {
+					r += `SP:humil`;
+				} else if (((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")) {
+					r += `SP:anal`;
+				} else if (((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")) {
+					r += `SP:boobs`;
+				} else if (((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")) {
+					r += `SP:sade`;
+				} else if (((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")) {
+					r += `SP:pain`;
+				} else if (((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")) {
+					r += `SP:dom`;
+				} else if (((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")) {
+					r += `SP:preg`;
+				} else if (((slave.fetish != "none") && (slave.clitSetting == "vanilla"))) {
+					r += `SP:vanilla`;
+				} else if ((slave.energy <= 95) && (slave.clitSetting == "all")) {
+					r += `SP:all`;
+				} else if ((slave.energy > 5) && (slave.clitSetting == "none")) {
+					r += `SP:none`;
+				} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+					r += `SP:monitoring`;
+				}
+			} else {
+				switch (slave.clitSetting) {
+					case "off":
+						r += `SP-`;
+						break;
+					case "submissive":
+						r += `SP:sub`;
+						break;
+					case "lesbian":
+						r += `SP:les`;
+						break;
+					case "oral":
+						r += `SP:oral`;
+						break;
+					case "humiliation":
+						r += `SP:humil`;
+						break;
+					case "anal":
+						r += `SP:anal`;
+						break;
+					case "boobs":
+						r += `SP:boobs`;
+						break;
+					case "sadist":
+						r += `SP:sade`;
+						break;
+					case "masochist":
+						r += `SP:pain`;
+						break;
+					case "dom":
+						r += `SP:dom`;
+						break;
+					case "pregnancy":
+						r += `SP:pregnancy`;
+						break;
+					case "vanilla":
+						r += `SP:vanilla`;
+						break;
+					case "all":
+						r += `SP:all`;
+						break;
+					case "none":
+						r += `SP:none`;
+						break;
+				}
 			}
-		} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
-			r += `Disproportionately small butt.`;
-		}
-	} else {
-		if (slave.butt > 6) {
-			if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
-				r += `Disproportionately big butt.`;
+			if (slave.attrKnown == 1) {
+				if (slave.clitSetting == "women") {
+					if (slave.attrXX < 95) {
+						r += `SP:women`;
+					} else {
+						r += `SP:monitoring`;
+					}
+				} else if (slave.clitSetting == "men") {
+					if (slave.attrXY < 95) {
+						r += `SP:men`;
+					} else {
+						r += `SP:monitoring`;
+					}
+				} else if (slave.clitSetting == "anti-women") {
+					if (slave.attrXX > 0) {
+						r += `SP:anti-women`;
+					} else {
+						r += `SP:monitoring`;
+					}
+				} else if (slave.clitSetting == "anti-men") {
+					if (slave.attrXY > 0) {
+						r += `SP:anti-men`;
+					} else {
+						r += `SP:monitoring`;
+					}
+				}
+			} else {
+				if (slave.clitSetting == "women") {
+					r += `SP:women`;
+				} else if (slave.clitSetting == "men") {
+					r += `SP:men`;
+				} else if (slave.clitSetting == "anti-women") {
+					r += `SP:anti-women`;
+				} else if (slave.clitSetting == "anti-men") {
+					r += `SP:anti-men`;
+				}
 			}
-		} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
-			r += `Disproportionately small butt.`;
-		}
-	}
-	r += `</span>`;
-	if (slave.waist > 95) {
-		r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	} else if (slave.waist > 40) {
-		r += `<span class="red">Ugly waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	} else if (slave.waist > 10) {
-		r += `<span class="red">Unattractive waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	} else if (slave.waist >= -10) {
-		r += `Average waist${V.summaryStats? `[${slave.waist}]`: ''}.`;
-	} else if (slave.waist >= -40) {
-		r += `<span class="pink">Feminine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	} else if (slave.waist >= -95) {
-		r += `<span class="pink">Hourglass waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	} else {
-		r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-	}
-	r += `<span class="pink">`;
-	if ((slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)) {
-		r += `Implants.`;
-	} else if ((slave.faceImplant >= 30) || (slave.waist < -95)) {
-		r += `Surgery enhanced.`;
-	} else {
-		r += `All natural.`;
-	}
-	if (slave.lactation == 1) {
-		r += `Lactating naturally.`;
-	} else if (slave.lactation == 2) {
-		r += `Heavy lactation.`;
-	}
-	modScore(slave);
-	if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
-		true;
-	} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
-		r += `Extensive body mods.`;
-	} else if (V.modScore > 7) {
-		r += `Noticeable body mods.`;
-	} else {
-		r += `Light body mods.`;
-	}
-	if (slave.brand != 0) {
-		r += `Branded.`;
-	}
-	r += `</span>`;
-}
-
-r += `<br>`;
-if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
-	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-}
-
-if (V.abbreviateSkills == 1) {
-	if (slave.fetish == "mindbroken") {
-		true;
-	} else if (slave.intelligenceImplant == 1) {
-		switch (slave.intelligence) {
-		case 3:
-			r += `<span class="deepskyblue">I+++(e)</span>`;
-			break;
-		case 2:
-			r += `<span class="deepskyblue">I++(e)</span>`;
-			break;
-		case 1:
-			r += `<span class="deepskyblue">I+(e)</span>`;
-			break;
-		case -1:
-			r += `<span class="orangered">I-(e)</span>`;
-			break;
-		case -2:
-			r += `<span class="orangered">I--(e)</span>`;
-			break;
-		case -3:
-			r += `<span class="orangered">I---(e)</span>`;
-			break;
-		default:
-			r += `I(e)`;
-			break;
 		}
-	} else {
-		switch (slave.intelligence) {
-			case 3:
-				r += `<span class="deepskyblue">I+++</span>`;
+		r += `<span class="red">`;
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				r += `Arrog`;
+				break;
+			case "bitchy":
+				r += `Bitchy`;
 				break;
-			case 2:
-				r += `<span class="deepskyblue">I++</span>`;
+			case "odd":
+				r += `Odd`;
 				break;
-			case 1:
-				r += `<span class="deepskyblue">I+</span>`;
+			case "hates men":
+				r += `Men-`;
 				break;
-			case -1:
-				r += `<span class="orangered">I-</span>`;
+			case "hates women":
+				r += `Women-`;
 				break;
-			case -2:
-				r += `<span class="orangered">I--</span>`;
+			case "gluttonous":
+				r += `Glut`;
 				break;
-			case -3:
-				r += `<span class="orangered">I---</span>`;
+			case "anorexic":
+				r += `Ano`;
+				break;
+			case "devout":
+				r += `Dev`;
+				break;
+			case "liberated":
+				r += `Lib`;
 				break;
 			default:
-				r += `I`;
+				slave.behavioralFlaw = "none";
 				break;
 		}
-	}
-
-	_SSkills = slave.analSkill+slave.oralSkill;
-	r += `<span class="aquamarine">`;
-	if (((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
-		r += `MSS`;
-	} else {
-		_SSkills += slave.vaginalSkill;
-		_SSkills = Math.trunc(_SSkills);
-		if (_SSkills > 180) {
-			r += `S++`;
-		} else if ((_SSkills > 120) && (slave.vagina < 0)) {
-			r += `Sh++`;
-		} else if (_SSkills > 90) {
-			r += `S+`;
-		} else if (_SSkills > 30) {
-			r += `S`;
-		} else {
-			r += `S-`;
-		}
-		if (V.summaryStats) {
-			r += `[${_SSkills}]`;
-		}
-		if (slave.whoreSkill >= 100) {
-			r += `W+++`;
-		} else if (slave.whoreSkill > 60) {
-			r += `W++`;
-		} else if (slave.whoreSkill > 30) {
-			r += `W+`;
-		} else if (slave.whoreSkill > 10) {
-			r += `W`;
-		}
-		if (slave.whoreSkill > 10) {
-			if (V.summaryStats) {
-				r += `[${slave.whoreSkill}]`;
-			}
-		}
-		if (slave.entertainSkill >= 100) {
-			r += `E+++`;
-		} else if (slave.entertainSkill > 60) {
-			r += `E++`;
-		} else if (slave.entertainSkill > 30) {
-			r += `E+`;
-		} else if (slave.entertainSkill > 10) {
-			r += `E`;
-		}
-		if (slave.entertainSkill > 10) {
-			if (V.summaryStats) {
-				r += `[${slave.entertainSkill}]`;
-			}
-		}
-	}
-	if (slave.combatSkill > 0) {
-		r += `C`;
-	}
-	r += `</span>`;
-	if (slave.prestige > 0) {
-		r += `<span class="green">`;
-		if (slave.prestige > 2) {
-			r += `Prest++`;
-		} else if (slave.prestige == 2) {
-			r += `Prest+`;
-		} else if (slave.prestige == 1) {
-			r += `Prest`;
-		}
 		r += `</span>`;
-	}
-} else if (V.abbreviateSkills == 2) {
-	if (slave.fetish == "mindbroken") {
-		true;
-	} else if (slave.intelligenceImplant == 1) {
-		switch (slave.intelligence) {
-			case 3:
-				r += `<span class="deepskyblue">Brilliant, educated.</span>`;
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				r += `<span class="red">Oral-</span>`;
 				break;
-			case 2:
-				r += `<span class="deepskyblue">Very smart, educated.</span>`;
+			case "hates anal":
+				r += `<span class="red">Anal-</span>`;
 				break;
-			case 1:
-				r += `<span class="deepskyblue">Smart, educated.</span>`;
+			case "hates penetration":
+				r += `<span class="red">Fuck-</span>`;
 				break;
-			case -1:
-				r += `<span class="orangered">Slow, educated.</span>`;
+			case "shamefast":
+				r += `<span class="red">Shame</span>`;
 				break;
-			case -2:
-				r += `<span class="orangered">Very slow, educated.</span>`;
+			case "idealistic":
+				r += `<span class="red">Ideal</span>`;
 				break;
-			case -3:
-				r += `<span class="orangered">Moronic, educated.</span>`;
+			case "repressed":
+				r += `<span class="red">Repre</span>`;
 				break;
-			default:
-				r += `Average intelligence, educated.`;
+			case "apathetic":
+				r += `<span class="red">Apath</span>`;
 				break;
-			}
-	} else {
-		switch (slave.intelligence) {
-			case 3:
-				r += `<span class="deepskyblue">Brilliant.</span>`;
+			case "crude":
+				r += `<span class="red">Crude</span>`;
+				break;
+			case "judgemental":
+				r += `<span class="red">Judge</span>`;
+				break;
+			case "cum addict":
+				r += `<span class="yellow">CumAdd</span>`;
+				break;
+			case "anal addict":
+				r += `<span class="yellow">AnalAdd</span>`;
+				break;
+			case "attention whore":
+				r += `<span class="yellow">Attention</span>`;
 				break;
-			case 2:
-				r += `<span class="deepskyblue">Very smart.</span>`;
+			case "breast growth":
+				r += `<span class="yellow">BoobObsess</span>`;
 				break;
-			case 1:
-				r += `<span class="deepskyblue">Smart.</span>`;
+			case "abusive":
+				r += `<span class="yellow">Abusive</span>`;
 				break;
-			case -1:
-				r += `<span class="orangered">Slow.</span>`;
+			case "malicious":
+				r += `<span class="yellow">Malice</span>`;
 				break;
-			case -2:
-				r += `<span class="orangered">Very slow.</span>`;
+			case "self hating":
+				r += `<span class="yellow">SelfHatr</span>`;
 				break;
-			case -3:
-				r += `<span class="orangered">Moronic.</span>`;
+			case "neglectful":
+				r += `<span class="yellow">SelfNeglect</span>`;
+				break;
+			case "breeder":
+				r += `<span class="yellow">BreedObsess</span>`;
 				break;
 			default:
-				r += `Average intelligence.`;
+				slave.sexualFlaw = "none";
 				break;
 		}
-	}
-	_SSkills = (slave.analSkill+slave.oralSkill);
-	r += `<span class="aquamarine">`;
-	if (((_SSkills+slave.whoreSkill+slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
-		r += `Masterful Sex Slave.`;
-	} else {
-		_SSkills += slave.vaginalSkill;
-		if (_SSkills > 180) {
-			r += `Sex master${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
-		} else if ((_SSkills > 120) && (slave.vagina < 0)) {
-			r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
-		} else if (_SSkills > 90) {
-			r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
-		} else if (_SSkills > 30) {
-			r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
-		} else {
-			r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
-		}
-		if (slave.whoreSkill >= 100) {
-			r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
-		} else if (slave.whoreSkill >= 60) {
-			r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
-		} else if (slave.whoreSkill >= 30) {
-			r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
-		} else if (slave.whoreSkill >= 10) {
-			r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
-		}
-		if (slave.entertainSkill >= 100) {
-			r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
-		} else if (slave.entertainSkill >= 60) {
-			r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
-		} else if (slave.entertainSkill >= 30) {
-			r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
-		} else if (slave.entertainSkill >= 10) {
-			r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
-		}
-	}
-	if (slave.combatSkill > 0) {
-		r += `Trained fighter.`;
-	}
-	r += `</span>`;
-	if (slave.prestige > 0) {
 		r += `<span class="green">`;
-		if (slave.prestige > 2) {
-			r += `Extremely prestigious.`;
-		} else if (slave.prestige == 2) {
-			r += `Very prestigious.`;
-		} else if (slave.prestige == 1) {
-			r += `Prestigious.`;
-		}
-		r += `</span>`;
-	}
-}
-
-if (V.abbreviateMental == 1) {
-	if (slave.fetish != "mindbroken") {
-	if (slave.fetishKnown == 1) {
-		r += `<span class="lightcoral">`;
-		switch (slave.fetish) {
-			case "submissive":
-				if (slave.fetishStrength > 95) {
-					r += `Sub++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Sub+`;
-				} else {
-					r += `Sub`;
-				}
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				r += `Confid`;
 				break;
-			case "cumslut":
-				if (slave.fetishStrength > 95) {
-					r += `Oral++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Oral+`;
-				} else {
-					r += `Oral`;
-				}
+			case "cutting":
+				r += `Cutting`;
 				break;
-			case "humiliation":
-				if (slave.fetishStrength > 95) {
-					r += `Humil++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Humil+`;
-				} else {
-					r += `Humil`;
-				}
+			case "funny":
+				r += `Funny`;
 				break;
-			case "buttslut":
-				if (slave.fetishStrength > 95) {
-					r += `Anal++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Anal+`;
-				} else {
-					r += `Anal`;
-				}
+			case "fitness":
+				r += `Fit`;
 				break;
-			case "boobs":
-				if (slave.fetishStrength > 95) {
-					r += `Boobs++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Boobs+`;
-				} else {
-					r += `Boobs`;
-				}
+			case "adores women":
+				r += `Women+`;
 				break;
-			case "sadist":
-				if (slave.fetishStrength > 95) {
-					r += `Sadist++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Sadist+`;
-				} else {
-					r += `Sadist`;
-				}
+			case "adores men":
+				r += `Men+`;
 				break;
-			case "masochist":
-				if (slave.fetishStrength > 95) {
-					r += `Pain++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Pain+`;
-				} else {
-					r += `Pain`;
-				}
+			case "insecure":
+				r += `Insec`;
 				break;
-			case "dom":
-				if (slave.fetishStrength > 95) {
-					r += `Dom++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Dom+`;
-				} else {
-					r += `Dom`;
-				}
+			case "sinful":
+				r += `Sinf`;
 				break;
-			case "pregnancy":
-				if (slave.fetishStrength > 95) {
-					r += `Preg++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Preg+`;
-				} else {
-					r += `Preg`;
-				}
+			case "advocate":
+				r += `Advoc`;
 				break;
 			default:
-				r += `Vanilla`;
+				slave.behavioralQuirk = "none";
 				break;
 		}
-		if (V.summaryStats) {
-			r += `[${slave.fetishStrength}]`;
-		}
-		r += `</span>`;
-	}
-	if (slave.attrKnown == 1) {
-		if (slave.attrXY <= 5) {
-			r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXY <= 15) {
-			r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXY <= 35) {
-			r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXY <= 65) {
-			r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
-		} else if (slave.attrXY <= 85) {
-			r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXX > 95) {
-			if (slave.energy <= 95) {
-				r += `<span class="green">Omni!</span>`;
-			} else {
-				r += `<span class="green">Omni+Nympho!!</span>`;
-			}
-		} else {
-			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		}
-		if (slave.attrXX <= 5) {
-			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXX <= 15) {
-			r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXX <= 35) {
-			r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXX <= 65) {
-			r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
-		} else if (slave.attrXX <= 85) {
-			r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXX <= 95) {
-			r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		}
-		if (slave.energy > 95) {
-			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
-				r += `<span class="green">Nympho!</span>`;
-			}
-		} else if (slave.energy > 80) {
-			r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		} else if (slave.energy > 60) {
-			r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		} else if (slave.energy > 40) {
-			r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		} else if (slave.energy > 20) {
-			r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		} else {
-			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-			}
-		}
-	}
-	if (slave.clitPiercing == 3) {
-		if (slave.fetishKnown == 1) {
-			if (slave.clitSetting == "off") {
-				r += `SP-`;
-			} else if (((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")) {
-				r += `SP:sub`;
-			} else if (((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")) {
-				r += `SP:oral`;
-			} else if (((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")) {
-				r += `SP:humil`;
-			} else if (((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")) {
-				r += `SP:anal`;
-			} else if (((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")) {
-				r += `SP:boobs`;
-			} else if (((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")) {
-				r += `SP:sade`;
-			} else if (((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")) {
-				r += `SP:pain`;
-			} else if (((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")) {
-				r += `SP:dom`;
-			} else if (((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")) {
-				r += `SP:preg`;
-			} else if (((slave.fetish != "none") && (slave.clitSetting == "vanilla"))) {
-				r += `SP:vanilla`;
-			} else if ((slave.energy <= 95) && (slave.clitSetting == "all")) {
-				r += `SP:all`;
-			} else if ((slave.energy > 5) && (slave.clitSetting == "none")) {
-				r += `SP:none`;
-			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
-				r += `SP:monitoring`;
-			}
-		} else {
-			switch (slave.clitSetting) {
-				case "off":
-					r += `SP-`;
-					break;
-				case "submissive":
-					r += `SP:sub`;
-					break;
-				case "lesbian":
-					r += `SP:les`;
-					break;
-				case "oral":
-					r += `SP:oral`;
-					break;
-				case "humiliation":
-					r += `SP:humil`;
-					break;
-				case "anal":
-					r += `SP:anal`;
-					break;
-				case "boobs":
-					r += `SP:boobs`;
-					break;
-				case "sadist":
-					r += `SP:sade`;
-					break;
-				case "masochist":
-					r += `SP:pain`;
-					break;
-				case "dom":
-					r += `SP:dom`;
-					break;
-				case "pregnancy":
-					r += `SP:pregnancy`;
-					break;
-				case "vanilla":
-					r += `SP:vanilla`;
-					break;
-				case "all":
-					r += `SP:all`;
-					break;
-				case "none":
-					r += `SP:none`;
-					break;
-			}
-		}
-		if (slave.attrKnown == 1) {
-			if (slave.clitSetting == "women") {
-				if (slave.attrXX < 95) {
-					r += `SP:women`;
-				} else {
-					r += `SP:monitoring`;
-				}
-			} else if (slave.clitSetting == "men") {
-				if (slave.attrXY < 95) {
-					r += `SP:men`;
-				} else {
-					r += `SP:monitoring`;
-				}
-			} else if (slave.clitSetting == "anti-women") {
-				if (slave.attrXX > 0) {
-					r += `SP:anti-women`;
-				} else {
-					r += `SP:monitoring`;
-				}
-			} else if (slave.clitSetting == "anti-men") {
-				if (slave.attrXY > 0) {
-					r += `SP:anti-men`;
-				} else {
-					r += `SP:monitoring`;
-				}
-			}
-		} else {
-			if (slave.clitSetting == "women") {
-				r += `SP:women`;
-			} else if (slave.clitSetting == "men") {
-				r += `SP:men`;
-			} else if (slave.clitSetting == "anti-women") {
-				r += `SP:anti-women`;
-			} else if (slave.clitSetting == "anti-men") {
-				r += `SP:anti-men`;
-			}
-		}
-	}
-	r += `<span class="red">`;
-	switch (slave.behavioralFlaw) {
-		case "arrogant":
-			r += `Arrog`;
-			break;
-		case "bitchy":
-			r += `Bitchy`;
-			break;
-		case "odd":
-			r += `Odd`;
-			break;
-		case "hates men":
-			r += `Men-`;
-			break;
-		case "hates women":
-			r += `Women-`;
-			break;
-		case "gluttonous":
-			r += `Glut`;
-			break;
-		case "anorexic":
-			r += `Ano`;
-			break;
-		case "devout":
-			r += `Dev`;
-			break;
-		case "liberated":
-			r += `Lib`;
-			break;
-		default:
-			slave.behavioralFlaw = "none";
-			break;
-	}
-	r += `</span>`;
-	switch (slave.sexualFlaw) {
-		case "hates oral":
-			r += `<span class="red">Oral-</span>`;
-			break;
-		case "hates anal":
-			r += `<span class="red">Anal-</span>`;
-			break;
-		case "hates penetration":
-			r += `<span class="red">Fuck-</span>`;
-			break;
-		case "shamefast":
-			r += `<span class="red">Shame</span>`;
-			break;
-		case "idealistic":
-			r += `<span class="red">Ideal</span>`;
-			break;
-		case "repressed":
-			r += `<span class="red">Repre</span>`;
-			break;
-		case "apathetic":
-			r += `<span class="red">Apath</span>`;
-			break;
-		case "crude":
-			r += `<span class="red">Crude</span>`;
-			break;
-		case "judgemental":
-			r += `<span class="red">Judge</span>`;
-			break;
-		case "cum addict":
-			r += `<span class="yellow">CumAdd</span>`;
-			break;
-		case "anal addict":
-			r += `<span class="yellow">AnalAdd</span>`;
-			break;
-		case "attention whore":
-			r += `<span class="yellow">Attention</span>`;
-			break;
-		case "breast growth":
-			r += `<span class="yellow">BoobObsess</span>`;
-			break;
-		case "abusive":
-			r += `<span class="yellow">Abusive</span>`;
-			break;
-		case "malicious":
-			r += `<span class="yellow">Malice</span>`;
-			break;
-		case "self hating":
-			r += `<span class="yellow">SelfHatr</span>`;
-			break;
-		case "neglectful":
-			r += `<span class="yellow">SelfNeglect</span>`;
-			break;
-		case "breeder":
-			r += `<span class="yellow">BreedObsess</span>`;
-			break;
-		default:
-			slave.sexualFlaw = "none";
-			break;
-	}
-	r += `<span class="green">`;
-	switch (slave.behavioralQuirk) {
-		case "confident":
-			r += `Confid`;
-			break;
-		case "cutting":
-			r += `Cutting`;
-			break;
-		case "funny":
-			r += `Funny`;
-			break;
-		case "fitness":
-			r += `Fit`;
-			break;
-		case "adores women":
-			r += `Women+`;
-			break;
-		case "adores men":
-			r += `Men+`;
-			break;
-		case "insecure":
-			r += `Insec`;
-			break;
-		case "sinful":
-			r += `Sinf`;
-			break;
-		case "advocate":
-			r += `Advoc`;
-			break;
-		default:
-			slave.behavioralQuirk = "none";
-			break;
-	}
-	switch (slave.sexualQuirk) {
-		case "gagfuck queen":
-			r += `Gagfuck`;
-			break;
-		case "painal queen":
-			r += `Painal`;
-			break;
-		case "strugglefuck queen":
-			r += `Struggle`;
-			break;
-		case "tease":
-			r += `Tease`;
-			break;
-		case "romantic":
-			r += `Romantic`;
-			break;
-		case "perverted":
-			r += `Perverted`;
-			break;
-		case "caring":
-			r += `Caring`;
-			break;
-		case "unflinching":
-			r += `Unflinch`;
-			break;
-		case "size queen":
-			r += `SizeQ`;
-			break;
-		default:
-			slave.sexualQuirk = "none";
-			break;
-	}
-	r += `</span>`;
-} else if (V.abbreviateMental == 2) {
-	if (slave.fetish != "mindbroken") {
-	if (slave.fetishKnown == 1) {
-		r += `<span class="lightcoral">`;
-		switch (slave.fetish) {
-			case "submissive":
-				if (slave.fetishStrength > 95) {
-					r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				r += `Gagfuck`;
 				break;
-			case "cumslut":
-				if (slave.fetishStrength > 95) {
-					r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+			case "painal queen":
+				r += `Painal`;
 				break;
-			case "humiliation":
-				if (slave.fetishStrength > 95) {
-					r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+			case "strugglefuck queen":
+				r += `Struggle`;
 				break;
-			case "buttslut":
-				if (slave.fetishStrength > 95) {
-					r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+			case "tease":
+				r += `Tease`;
 				break;
-			case "boobs":
-				if (slave.fetishStrength > 95) {
-					r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+			case "romantic":
+				r += `Romantic`;
 				break;
-			case "sadist":
-				if (slave.fetishStrength > 95) {
-					r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+			case "perverted":
+				r += `Perverted`;
 				break;
-			case "masochist":
-				if (slave.fetishStrength > 95) {
-					r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+			case "caring":
+				r += `Caring`;
 				break;
-			case "dom":
-				if (slave.fetishStrength > 95) {
-					r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+			case "unflinching":
+				r += `Unflinch`;
 				break;
-			case "pregnancy":
-				if (slave.fetishStrength > 95) {
-					r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
+			case "size queen":
+				r += `SizeQ`;
 				break;
 			default:
-				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				slave.sexualQuirk = "none";
 				break;
 		}
 		r += `</span>`;
-	}
-	}
-	if (slave.attrKnown == 1) {
-		if (slave.attrXY <= 5) {
-			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		} else if (slave.attrXY <= 15) {
-			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		} else if (slave.attrXY <= 35) {
-			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		} else if (slave.attrXY <= 65) {
-			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
-		} else if (slave.attrXY <= 85) {
-			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		} else if (slave.attrXX > 95) {
-			if (slave.energy <= 95) {
-				r += `<span class="green">Omnisexual!</span>`;
-			} else {
-				r += `<span class="green">Omnisexual nymphomaniac!</span>`;
+	} else if (V.abbreviateMental == 2) {
+		if (slave.fetish != "mindbroken") {
+			if (slave.fetishKnown == 1) {
+				r += `<span class="lightcoral">`;
+				switch (slave.fetish) {
+					case "submissive":
+						if (slave.fetishStrength > 95) {
+							r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					case "cumslut":
+						if (slave.fetishStrength > 95) {
+							r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					case "humiliation":
+						if (slave.fetishStrength > 95) {
+							r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					case "buttslut":
+						if (slave.fetishStrength > 95) {
+							r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					case "boobs":
+						if (slave.fetishStrength > 95) {
+							r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					case "sadist":
+						if (slave.fetishStrength > 95) {
+							r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					case "masochist":
+						if (slave.fetishStrength > 95) {
+							r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					case "dom":
+						if (slave.fetishStrength > 95) {
+							r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					case "pregnancy":
+						if (slave.fetishStrength > 95) {
+							r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else if (slave.fetishStrength > 60) {
+							r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						} else {
+							r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						}
+						break;
+					default:
+						r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+						break;
+				}
+				r += `</span>`;
 			}
-		} else {
-			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-		}
-		if (slave.attrXX <= 5) {
-			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		} else if (slave.attrXX <= 15) {
-			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		} else if (slave.attrXX <= 35) {
-			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		} else if (slave.attrXX <= 65) {
-			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
-		} else if (slave.attrXX <= 85) {
-			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		} else if (slave.attrXX <= 95) {
-			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-		}
-		if (slave.energy > 95) {
-			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
-				r += `<span class="green">Nymphomaniac!</span>`;
-			}
-		} else if (slave.energy > 80) {
-			r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		} else if (slave.energy > 60) {
-			r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		} else if (slave.energy > 40) {
-			r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		} else if (slave.energy > 20) {
-			r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		} else {
-			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		}
-	}
-	if (slave.clitPiercing == 3) {
-		if (slave.fetishKnown == 1) {
-			if (slave.clitSetting == "off") {
-				r += `SP off.`;
-			} else if (((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")) {
-				r += `SP: submissive.`;
-			} else if (((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")) {
-				r += `SP: oral.`;
-			} else if (((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")) {
-				r += `SP: humiliation.`;
-			} else if (((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")) {
-				r += `SP: anal.`;
-			} else if (((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")) {
-				r += `SP: breasts.`;
-			} else if (((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")) {
-				r += `SP: sadism.`;
-			} else if (((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")) {
-				r += `SP: masochism.`;
-			} else if (((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")) {
-				r += `SP: dominance.`;
-			} else if (((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")) {
-				r += `SP: pregnancy.`;
-			} else if ((slave.fetish != "none") && (slave.clitSetting == "vanilla")) {
-				r += `SP: vanilla.`;
-			} else if ((slave.energy <= 95) && (slave.clitSetting == "all")) {
-				r += `SP: all.`;
-			} else if ((slave.energy > 5) && (slave.clitSetting == "none")) {
-				r += `SP: none.`;
-			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
-				r += `SP: monitoring.`;
+		if (slave.attrKnown == 1) {
+			if (slave.attrXY <= 5) {
+				r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			} else if (slave.attrXY <= 15) {
+				r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			} else if (slave.attrXY <= 35) {
+				r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			} else if (slave.attrXY <= 65) {
+				r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
+			} else if (slave.attrXY <= 85) {
+				r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			} else if (slave.attrXY <= 95) {
+				r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			} else if (slave.attrXX > 95) {
+				if (slave.energy <= 95) {
+					r += `<span class="green">Omnisexual!</span>`;
+				} else {
+					r += `<span class="green">Omnisexual nymphomaniac!</span>`;
+				}
+			} else {
+				r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 			}
-		} else {
-			switch (slave.clitSetting) {
-				case "off":
+			if (slave.attrXX <= 5) {
+				r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			} else if (slave.attrXX <= 15) {
+				r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			} else if (slave.attrXX <= 35) {
+				r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			} else if (slave.attrXX <= 65) {
+				r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
+			} else if (slave.attrXX <= 85) {
+				r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			} else if (slave.attrXX <= 95) {
+				r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			} else if (slave.attrXY <= 95) {
+				r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			}
+			if (slave.energy > 95) {
+				if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+					r += `<span class="green">Nymphomaniac!</span>`;
+				}
+			} else if (slave.energy > 80) {
+				r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+			} else if (slave.energy > 60) {
+				r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+			} else if (slave.energy > 40) {
+				r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+			} else if (slave.energy > 20) {
+				r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+			} else {
+				r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+			}
+		}
+		if (slave.clitPiercing == 3) {
+			if (slave.fetishKnown == 1) {
+				if (slave.clitSetting == "off") {
 					r += `SP off.`;
-					break;
-				case "submissive":
+				} else if (((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")) {
 					r += `SP: submissive.`;
-					break;
-				case "oral":
+				} else if (((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")) {
 					r += `SP: oral.`;
-					break;
-				case "humiliation":
+				} else if (((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")) {
 					r += `SP: humiliation.`;
-					break;
-				case "anal":
+				} else if (((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")) {
 					r += `SP: anal.`;
-					break;
-				case "boobs":
+				} else if (((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")) {
 					r += `SP: breasts.`;
-					break;
-				case "sadist":
+				} else if (((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")) {
 					r += `SP: sadism.`;
-					break;
-				case "masochist":
+				} else if (((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")) {
 					r += `SP: masochism.`;
-					break;
-				case "dom":
+				} else if (((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")) {
 					r += `SP: dominance.`;
-					break;
-				case "pregnancy":
+				} else if (((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")) {
 					r += `SP: pregnancy.`;
-					break;
-				case "vanilla":
+				} else if ((slave.fetish != "none") && (slave.clitSetting == "vanilla")) {
 					r += `SP: vanilla.`;
-					break;
-				case "all":
+				} else if ((slave.energy <= 95) && (slave.clitSetting == "all")) {
 					r += `SP: all.`;
-					break;
-				case "none":
+				} else if ((slave.energy > 5) && (slave.clitSetting == "none")) {
 					r += `SP: none.`;
-					break;
+				} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+					r += `SP: monitoring.`;
+				}
+			} else {
+				switch (slave.clitSetting) {
+					case "off":
+						r += `SP off.`;
+						break;
+					case "submissive":
+						r += `SP: submissive.`;
+						break;
+					case "oral":
+						r += `SP: oral.`;
+						break;
+					case "humiliation":
+						r += `SP: humiliation.`;
+						break;
+					case "anal":
+						r += `SP: anal.`;
+						break;
+					case "boobs":
+						r += `SP: breasts.`;
+						break;
+					case "sadist":
+						r += `SP: sadism.`;
+						break;
+					case "masochist":
+						r += `SP: masochism.`;
+						break;
+					case "dom":
+						r += `SP: dominance.`;
+						break;
+					case "pregnancy":
+						r += `SP: pregnancy.`;
+						break;
+					case "vanilla":
+						r += `SP: vanilla.`;
+						break;
+					case "all":
+						r += `SP: all.`;
+						break;
+					case "none":
+						r += `SP: none.`;
+						break;
+				}
+			}
+			if (slave.attrKnown == 1) {
+				if ((slave.attrXX < 100) && (slave.clitSetting == "women")) {
+					r += `SP: women.`;
+				} else if ((slave.attrXY < 100) && (slave.clitSetting == "men")) {
+					r += `SP: men.`;
+				}
+			} else {
+				if (slave.clitSetting == "women") {
+					r += `SP: women.`;
+				} else if (slave.clitSetting == "men") {
+					r += `SP: men.`;
+				}
 			}
 		}
-		if (slave.attrKnown == 1) {
-			if ((slave.attrXX < 100) && (slave.clitSetting == "women")) {
-				r += `SP: women.`;
-			} else if ((slave.attrXY < 100) && (slave.clitSetting == "men")) {
-				r += `SP: men.`;
-			}
-		} else {
-			if (slave.clitSetting == "women") {
-				r += `SP: women.`;
-			} else if (slave.clitSetting == "men") {
-				r += `SP: men.`;
-			}
+		r += `<span class="red">`;
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				r += `Arrogant.`;
+				break;
+			case "bitchy":
+				r += `Bitchy.`;
+				break;
+			case "odd":
+				r += `Odd.`;
+				break;
+			case "hates men":
+				r += `Hates men.`;
+				break;
+			case "hates women":
+				r += `Hates women.`;
+				break;
+			case "gluttonous":
+				r += `Stress eater.`;
+				break;
+			case "anorexic":
+				r += `Anorexic.`;
+				break;
+			case "devout":
+				r += `Devoutly religious.`;
+				break;
+			case "liberated":
+				r += `Mentally liberated.`;
+				break;
+			default:
+				slave.behavioralFlaw = "none";
+				break;
+		}
+		r += `</span>`;
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				r += `<span class="red">Hates oral.</span>`;
+				break;
+			case "hates anal":
+				r += `<span class="red">Hates anal.</span>`;
+				break;
+			case "hates penetration":
+				r += `<span class="red">Hates penetration.</span>`;
+				break;
+			case "shamefast":
+				r += `<span class="red">Shamefast.</span>`;
+				break;
+			case "idealistic":
+				r += `<span class="red">Sexually idealistic.</span>`;
+				break;
+			case "repressed":
+				r += `<span class="red">Sexually repressed.</span>`;
+				break;
+			case "apathetic":
+				r += `<span class="red">Sexually apathetic.</span>`;
+				break;
+			case "crude":
+				r += `<span class="red">Sexually crude.</span>`;
+				break;
+			case "judgemental":
+				r += `<span class="red">Sexually judgemental.</span>`;
+				break;
+			case "cum addict":
+				r += `<span class="yellow">Cum addict.</span>`;
+				break;
+			case "anal addict":
+				r += `<span class="yellow">Anal addict.</span>`;
+				break;
+			case "attention whore":
+				r += `<span class="yellow">Attention whore.</span>`;
+				break;
+			case "breast growth":
+				r += `<span class="yellow">Breast obsession.</span>`;
+				break;
+			case "abusive":
+				r += `<span class="yellow">Sexually abusive.</span>`;
+				break;
+			case "malicious":
+				r += `<span class="yellow">Sexually malicious.</span>`;
+				break;
+			case "self hating":
+				r += `<span class="yellow">Self hatred.</span>`;
+				break;
+			case "neglectful":
+				r += `<span class="yellow">Self neglectful.</span>`;
+				break;
+			case "breeder":
+				r += `<span class="yellow">Breeding obsession.</span>`;
+				break;
+			default:
+				slave.sexualFlaw = "none";
+				break;
+		}
+		r += `<span class="green">`;
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				r += `Confident.`;
+				break;
+			case "cutting":
+				r += `Cutting.`;
+				break;
+			case "funny":
+				r += `Funny.`;
+				break;
+			case "fitness":
+				r += `Fitness.`;
+				break;
+			case "adores women":
+				r += `Adores women.`;
+				break;
+			case "adores men":
+				r += `Adores men.`;
+				break;
+			case "insecure":
+				r += `Insecure.`;
+				break;
+			case "sinful":
+				r += `Sinful.`;
+				break;
+			case "advocate":
+				r += `Advocate.`;
+				break;
+			default:
+				slave.behavioralQuirk = "none";
+				break;
+		}
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				r += `Gagfuck queen.`;
+				break;
+			case "painal queen":
+				r += `Painal queen.`;
+				break;
+			case "strugglefuck queen":
+				r += `Strugglefuck queen.`;
+				break;
+			case "tease":
+				r += `Tease.`;
+				break;
+			case "romantic":
+				r += `Romantic.`;
+				break;
+			case "perverted":
+				r += `Perverted.`;
+				break;
+			case "caring":
+				r += `Caring.`;
+				break;
+			case "unflinching":
+				r += `Unflinching.`;
+				break;
+			case "size queen":
+				r += `Size queen.`;
+				break;
+			default:
+				slave.sexualQuirk = "none";
+				break;
 		}
+		r += `</span>`;
 	}
-	r +=`<span class="red">`;
-	switch (slave.behavioralFlaw) {
-		case "arrogant":
-			r += `Arrogant.`;
-			break;
-		case "bitchy":
-			r += `Bitchy.`;
-			break;
-		case "odd":
-			r += `Odd.`;
-			break;
-		case "hates men":
-			r += `Hates men.`;
-			break;
-		case "hates women":
-			r += `Hates women.`;
-			break;
-		case "gluttonous":
-			r += `Stress eater.`;
-			break;
-		case "anorexic":
-			r += `Anorexic.`;
-			break;
-		case "devout":
-			r += `Devoutly religious.`;
-			break;
-		case "liberated":
-			r += `Mentally liberated.`;
-			break;
-		default:
-			slave.behavioralFlaw = "none";
-			break;
-	}
-	r += `</span>`;
-	switch (slave.sexualFlaw) {
-		case "hates oral":
-			r += `<span class="red">Hates oral.</span>`;
-			break;
-		case "hates anal":
-			r += `<span class="red">Hates anal.</span>`;
-			break;
-		case "hates penetration":
-			r += `<span class="red">Hates penetration.</span>`;
-			break;
-		case "shamefast":
-			r += `<span class="red">Shamefast.</span>`;
-			break;
-		case "idealistic":
-			r += `<span class="red">Sexually idealistic.</span>`;
-			break;
-		case "repressed":
-			r += `<span class="red">Sexually repressed.</span>`;
-			break;
-		case "apathetic":
-			r += `<span class="red">Sexually apathetic.</span>`;
-			break;
-		case "crude":
-			r += `<span class="red">Sexually crude.</span>`;
-			break;
-		case "judgemental":
-			r += `<span class="red">Sexually judgemental.</span>`;
-			break;
-		case "cum addict":
-			r += `<span class="yellow">Cum addict.</span>`;
-			break;
-		case "anal addict":
-			r += `<span class="yellow">Anal addict.</span>`;
-			break;
-		case "attention whore":
-			r += `<span class="yellow">Attention whore.</span>`;
-			break;
-		case "breast growth":
-			r += `<span class="yellow">Breast obsession.</span>`;
-			break;
-		case "abusive":
-			r += `<span class="yellow">Sexually abusive.</span>`;
-			break;
-		case "malicious":
-			r += `<span class="yellow">Sexually malicious.</span>`;
-			break;
-		case "self hating":
-			r += `<span class="yellow">Self hatred.</span>`;
-			break;
-		case "neglectful":
-			r += `<span class="yellow">Self neglectful.</span>`;
-			break;
-		case "breeder":
-			r += `<span class="yellow">Breeding obsession.</span>`;
-			break;
-		default:
-			slave.sexualFlaw = "none";
-			break;
-	}
-	r += `<span class="green">`;
-	switch (slave.behavioralQuirk) {
-		case "confident":
-			r += `Confident.`;
-			break;
-		case "cutting":
-			r += `Cutting.`;
-			break;
-		case "funny":
-			r += `Funny.`;
-			break;
-		case "fitness":
-			r += `Fitness.`;
-			break;
-		case "adores women":
-			r += `Adores women.`;
-			break;
-		case "adores men":
-			r += `Adores men.`;
-			break;
-		case "insecure":
-			r += `Insecure.`;
-			break;
-		case "sinful":
-			r += `Sinful.`;
-			break;
-		case "advocate":
-			r += `Advocate.`;
-			break;
-		default:
-			slave.behavioralQuirk = "none";
-			break;
-	}
-	switch (slave.sexualQuirk) {
-		case "gagfuck queen":
-			r += `Gagfuck queen.`;
-			break;
-		case "painal queen":
-			r += `Painal queen.`;
-			break;
-		case "strugglefuck queen":
-			r += `Strugglefuck queen.`;
-			break;
-		case "tease":
-			r += `Tease.`;
-			break;
-		case "romantic":
-			r += `Romantic.`;
-			break;
-		case "perverted":
-			r += `Perverted.`;
-			break;
-		case "caring":
-			r += `Caring.`;
-			break;
-		case "unflinching":
-			r += `Unflinching.`;
-			break;
-		case "size queen":
-			r += `Size queen.`;
-			break;
-		default:
-			slave.sexualQuirk = "none";
-			break;
-	}
-	r += `</span>`;
-}
-
-if (slave.customLabel != "") {
-	r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
-}
 
-if ((slave.relationship != 0) || (slave.relation != 0) || (V.abbreviateClothes == 2) || (V.abbreviateRulesets == 2)) {
-	r += `<br>`;
-	if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
-		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	if (slave.customLabel != "") {
+		r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
 	}
-}
 
-if (V.abbreviateMental == 1) {
-r += `<span class="lightgreen">`;
-if (V.familyTesting == 1) {
-	if (slave.mother > 0) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-				if (slave.relationship == 1) {
-					r += ` & friend`;
-				} else if (slave.relationship == 2) {
-					r += ` & BFF`;
-				} else if (slave.relationship == 3) {
-					r += ` & FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` & lover`;
-				} else {
-					r += ` & wife`;
-				}
-				_relationshipHandled = 1;
-			}
-		}
-	} else if (slave.mother == -1) {
-		r += `Your daughter`;
-		if (slave.relationship == -3) {
-			r += `& wife`;
-			_relationshipHandled = 1;
-		} else if (slave.relationship == -2) {
-			r += `& lover`;
-			_relationshipHandled = 1;
+	if ((slave.relationship != 0) || (slave.relation != 0) || (V.abbreviateClothes == 2) || (V.abbreviateRulesets == 2)) {
+		r += `<br>`;
+		if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
 	}
-	if (slave.father > 0 && slave.father != slave.mother) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1) {
-				if (slave.relationship == 1) {
-					r += ` & friend`;
-				} else if (slave.relationship == 2) {
-					r += ` & BFF`;
-				} else if (slave.relationship == 3) {
-					r += ` & FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` & lover`;
-				} else {
-					r += ` & wife`;
+
+	if (V.abbreviateMental == 1) {
+		r += `<span class="lightgreen">`;
+		if (V.familyTesting == 1) {
+			if (slave.mother > 0) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.mother;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+						if (slave.relationship == 1) {
+							r += ` & friend`;
+						} else if (slave.relationship == 2) {
+							r += ` & BFF`;
+						} else if (slave.relationship == 3) {
+							r += ` & FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` & lover`;
+						} else {
+							r += ` & wife`;
+						}
+						_relationshipHandled = 1;
+					}
+				}
+			} else if (slave.mother == -1) {
+				r += `Your daughter`;
+				if (slave.relationship == -3) {
+					r += `& wife`;
+					_relationshipHandled = 1;
+				} else if (slave.relationship == -2) {
+					r += `& lover`;
+					_relationshipHandled = 1;
 				}
-				_relationshipHandled = 1;
 			}
-		}
-	} else if (slave.father == -1 && slave.mother != -1) {
-		r += `Your daughter`;
-		if (slave.relationship == -3) {
-			r += `& wife`;
-			_relationshipHandled = 1;
-		} else if (slave.relationship == -2) {
-			r += `& lover`;
-			_relationshipHandled = 1;
-		}
-	}
-	if (slave.daughters == 1) {
-		_ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-				if (slave.relationship == 1) {
-					r += ` & friend`;
-				} else if (slave.relationship == 2) {
-					r += ` & BFF`;
-				} else if (slave.relationship == 3) {
-					r += ` & FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` & lover`;
-				} else {
-					r += ` & wife`;
+			if (slave.father > 0 && slave.father != slave.mother) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.father;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1) {
+						if (slave.relationship == 1) {
+							r += ` & friend`;
+						} else if (slave.relationship == 2) {
+							r += ` & BFF`;
+						} else if (slave.relationship == 3) {
+							r += ` & FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` & lover`;
+						} else {
+							r += ` & wife`;
+						}
+						_relationshipHandled = 1;
+					}
 				}
-				_relationshipHandled = 1;
-			}
-		}
-		_ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1) {
-				if (slave.relationship == 1) {
-					r += ` & friend`;
-				} else if (slave.relationship == 2) {
-					r += ` & BFF`;
-				} else if (slave.relationship == 3) {
-					r += ` & FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` & lover`;
-				} else {
-					r += ` & wife`;
+			} else if (slave.father == -1 && slave.mother != -1) {
+				r += `Your daughter`;
+				if (slave.relationship == -3) {
+					r += `& wife`;
+					_relationshipHandled = 1;
+				} else if (slave.relationship == -2) {
+					r += `& lover`;
+					_relationshipHandled = 1;
 				}
-				_relationshipHandled = 1;
 			}
-		}
-	} else if (slave.daughters > 1) {
-		r += `multiple daughters`;
-	}
-	if (slave.sisters == 1) {
-		_ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-				if (slave.relationship == 1) {
-					r += ` & friend`;
-				} else if (slave.relationship == 2) {
-					r += ` & BFF`;
-				} else if (slave.relationship == 3) {
-					r += ` & FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` & lover`;
-				} else {
-					r += ` & wife`;
+			if (slave.daughters == 1) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.mother == slave.ID;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+						if (slave.relationship == 1) {
+							r += ` & friend`;
+						} else if (slave.relationship == 2) {
+							r += ` & BFF`;
+						} else if (slave.relationship == 3) {
+							r += ` & FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` & lover`;
+						} else {
+							r += ` & wife`;
+						}
+						_relationshipHandled = 1;
+					}
 				}
-				_relationshipHandled = 1;
-			}
-		}
-	} else if (slave.sisters > 1) {
-		r += `multiple sisters`;
-	}
-	if (slave.relationship > 0 && _relationshipHandled != 1) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-			switch (slave.relationship) {	
-			case 1:
-				r += `friend`;
-				break;
-			case 2:
-				r += `BFF`;
-				break;
-			case 3:
-				r += `FWB`;
-				break;
-			case 4:
-				r += `lover`;
-				break;
-			case 5:
-				r += `wife`;
-				break;
-			}
-		}
-	} else if (slave.relationship == -3) {
-		r += `Your wife`;
-	} else if (slave.relationship == -2) {
-		r += `E Bonded`;
-	} else if (slave.relationship == -1) {
-		r += `E Slut`;
-	}
-} else {
-	if (slave.relation != 0) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
-		}
-	}
-	if (slave.relationship > 0) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; });
-		if (_ssj != -1) {
-			switch (slave.relationship) {
-			case 1:
-				if (slave.relationshipTarget != slave.relationTarget) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				} else {
-					r += `&`;
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.father == slave.ID;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1) {
+						if (slave.relationship == 1) {
+							r += ` & friend`;
+						} else if (slave.relationship == 2) {
+							r += ` & BFF`;
+						} else if (slave.relationship == 3) {
+							r += ` & FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` & lover`;
+						} else {
+							r += ` & wife`;
+						}
+						_relationshipHandled = 1;
+					}
 				}
-				r += `friend`;
-				break;
-			case 2:
-				if (slave.relationshipTarget != slave.relationTarget) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				} else {
-					r += `&`;
+			} else if (slave.daughters > 1) {
+				r += `multiple daughters`;
+			}
+			if (slave.sisters == 1) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return areSisters(s, slave) > 0;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+						if (slave.relationship == 1) {
+							r += ` & friend`;
+						} else if (slave.relationship == 2) {
+							r += ` & BFF`;
+						} else if (slave.relationship == 3) {
+							r += ` & FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` & lover`;
+						} else {
+							r += ` & wife`;
+						}
+						_relationshipHandled = 1;
+					}
 				}
-				r += `BFF`;
-				break;
-			case 3:
-				if (slave.relationshipTarget != slave.relationTarget) {
+			} else if (slave.sisters > 1) {
+				r += `multiple sisters`;
+			}
+			if (slave.relationship > 0 && _relationshipHandled != 1) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.relationshipTarget;
+				});
+				if (_ssj != -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				} else {
-					r += `&`;
+					switch (slave.relationship) {
+						case 1:
+							r += `friend`;
+							break;
+						case 2:
+							r += `BFF`;
+							break;
+						case 3:
+							r += `FWB`;
+							break;
+						case 4:
+							r += `lover`;
+							break;
+						case 5:
+							r += `wife`;
+							break;
+					}
 				}
-				r += `FWB`;
-				break;
-			case 4:
-				if (slave.relationshipTarget != slave.relationTarget) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				} else {
-					r += `&`;
+			} else if (slave.relationship == -3) {
+				r += `Your wife`;
+			} else if (slave.relationship == -2) {
+				r += `E Bonded`;
+			} else if (slave.relationship == -1) {
+				r += `E Slut`;
+			}
+		} else {
+			if (slave.relation != 0) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.relationTarget;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
 				}
-				r += `lover`;
-				break;
-			case 5:
-				if (slave.relationshipTarget != slave.relationTarget) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				} else {
-					r += `&`;
+			}
+			if (slave.relationship > 0) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.relationshipTarget;
+				});
+				if (_ssj != -1) {
+					switch (slave.relationship) {
+						case 1:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `friend`;
+							break;
+						case 2:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `BFF`;
+							break;
+						case 3:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `FWB`;
+							break;
+						case 4:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `lover`;
+							break;
+						case 5:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `wife`;
+							break;
+					}
 				}
-				r += `wife`;
-				break;
+			} else if (slave.relationship == -3) {
+				r += `Your wife`;
+			} else if (slave.relationship == -2) {
+				r += `E Bonded`;
+			} else if (slave.relationship == -1) {
+				r += `E Slut`;
 			}
 		}
-	} else if (slave.relationship == -3) {
-		r += `Your wife`;
-	} else if (slave.relationship == -2) {
-		r += `E Bonded`;
-	} else if (slave.relationship == -1) {
-		r += `E Slut`;
-	}
-}
-r += `</span>`;
-_relationshipHandled = 0;
-if (slave.rivalry != 0) {
-	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; });
-	if (_ssj != -1) {
-		r += `<span class="lightsalmon">`;
-		if (slave.rivalry <= 1) {
-			r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
-		} else if (slave.rivalry <= 2) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s rival`;
-		} else {
-			r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
-		}
 		r += `</span>`;
-	}
-}
-} else if (V.abbreviateMental == 2) {
-if (V.familyTesting == 1) {
-	if (slave.mother > 0) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.mother; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-				if (slave.relationship == 1) {
-					r += ` and friend`;
-				} else if (slave.relationship == 2) {
-					r += ` and best friend`;
-				} else if (slave.relationship == 3) {
-					r += ` and FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` and lover`;
+		_relationshipHandled = 0;
+		if (slave.rivalry != 0) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.ID == slave.rivalryTarget;
+			});
+			if (_ssj != -1) {
+				r += `<span class="lightsalmon">`;
+				if (slave.rivalry <= 1) {
+					r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
+				} else if (slave.rivalry <= 2) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s rival`;
 				} else {
-					r += ` and wife`;
+					r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
 				}
-				_relationshipHandled = 1;
-			}
-			r += `.</span>`;
-		}
-	} else if (slave.mother == -1) {
-		r += `Your`;
-		if (slave.relationship == -3) {
-			r += `<span class="lightgreen">daughter and wife.</span>`;
-			_relationshipHandled = 1;
-		} else if (slave.relationship == -2) {
-			r += `<span class="lightgreen">daughter and lover.</span>`;
-			_relationshipHandled = 1;
-		} else {
-			r += `<span class="lightgreen">daughter.</span>`;
+				r += `</span>`;
+			}
 		}
-	}
-	// HERE
-	if (slave.father > 0 && slave.father != slave.mother) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.father; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-				if (slave.relationship == 1) {
-					r += ` and friend`;
-				} else if (slave.relationship == 2) {
-					r += ` and best friend`;
-				} else if (slave.relationship == 3) {
-					r += ` and FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` and lover`;
-				} else {
-					r += ` and wife`;
+	} else if (V.abbreviateMental == 2) {
+		if (V.familyTesting == 1) {
+			if (slave.mother > 0) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.mother;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+						if (slave.relationship == 1) {
+							r += ` and friend`;
+						} else if (slave.relationship == 2) {
+							r += ` and best friend`;
+						} else if (slave.relationship == 3) {
+							r += ` and FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` and lover`;
+						} else {
+							r += ` and wife`;
+						}
+						_relationshipHandled = 1;
+					}
+					r += `.</span>`;
 				}
-				_relationshipHandled = 1;
-			}
-			r += `.</span>`;
-		}
-	} else if (slave.father == -1 && slave.father != slave.mother) {
-		r += `Your`;
-		if (slave.relationship == -3) {
-			r += `<span class="lightgreen">daughter and wife.</span>`;
-			_relationshipHandled = 1;
-		} else if (slave.relationship == -2) {
-			r += `<span class="lightgreen">daughter and lover.</span>`;
-			_relationshipHandled = 1;
-		} else {
-			r += `<span class="lightgreen">daughter.</span>`;
-		}
-	}
-	if (slave.daughters == 1) {
-		_ssj = V.slaves.findIndex(function(s) { return s.mother == slave.ID; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-				if (slave.relationship == 1) {
-					r += ` and friend`;
-				} else if (slave.relationship == 2) {
-					r += ` and best friend`;
-				} else if (slave.relationship == 3) {
-					r += ` and FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` and lover`;
+			} else if (slave.mother == -1) {
+				r += `Your`;
+				if (slave.relationship == -3) {
+					r += `<span class="lightgreen">daughter and wife.</span>`;
+					_relationshipHandled = 1;
+				} else if (slave.relationship == -2) {
+					r += `<span class="lightgreen">daughter and lover.</span>`;
+					_relationshipHandled = 1;
 				} else {
-					r += ` and wife`;
+					r += `<span class="lightgreen">daughter.</span>`;
+				}
+			}
+			// HERE
+			if (slave.father > 0 && slave.father != slave.mother) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.father;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+						if (slave.relationship == 1) {
+							r += ` and friend`;
+						} else if (slave.relationship == 2) {
+							r += ` and best friend`;
+						} else if (slave.relationship == 3) {
+							r += ` and FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` and lover`;
+						} else {
+							r += ` and wife`;
+						}
+						_relationshipHandled = 1;
+					}
+					r += `.</span>`;
 				}
-				_relationshipHandled = 1;
-			}
-			r += `.</span>`;
-		}
-		_ssj = V.slaves.findIndex(function(s) { return s.father == slave.ID; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-				if (slave.relationship == 1) {
-					r += ` and friend`;
-				} else if (slave.relationship == 2) {
-					r += ` and best friend`;
-				} else if (slave.relationship == 3) {
-					r += ` and FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` and lover`;
+			} else if (slave.father == -1 && slave.father != slave.mother) {
+				r += `Your`;
+				if (slave.relationship == -3) {
+					r += `<span class="lightgreen">daughter and wife.</span>`;
+					_relationshipHandled = 1;
+				} else if (slave.relationship == -2) {
+					r += `<span class="lightgreen">daughter and lover.</span>`;
+					_relationshipHandled = 1;
 				} else {
-					r += ` and wife`;
+					r += `<span class="lightgreen">daughter.</span>`;
 				}
-				_relationshipHandled = 1;
 			}
-			r += `.</span>`;
-		}
-	} else if (slave.daughters > 1) {
-		if (slave.daughters > 10) {
-			r += `<span class="lightgreen">Has tons of daughters.</span>`;
-		} else if (slave.daughters > 5) {
-			r += `<span class="lightgreen">Has many daughters.</span>`;
-		} else {
-			r += `<span class="lightgreen">Has several daughters.</span>`;
-		}
-	}
-	if (slave.sisters == 1) {
-		_ssj = V.slaves.findIndex(function(s) { return areSisters(s, slave) > 0; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
-			if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-				if (slave.relationship == 1) {
-					r += ` and friend`;
-				} else if (slave.relationship == 2) {
-					r += ` and best friend`;
-				} else if (slave.relationship == 3) {
-					r += ` and FWB`;
-				} else if (slave.relationship == 4) {
-					r += ` and lover`;
+			if (slave.daughters == 1) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.mother == slave.ID;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+						if (slave.relationship == 1) {
+							r += ` and friend`;
+						} else if (slave.relationship == 2) {
+							r += ` and best friend`;
+						} else if (slave.relationship == 3) {
+							r += ` and FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` and lover`;
+						} else {
+							r += ` and wife`;
+						}
+						_relationshipHandled = 1;
+					}
+					r += `.</span>`;
+				}
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.father == slave.ID;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+						if (slave.relationship == 1) {
+							r += ` and friend`;
+						} else if (slave.relationship == 2) {
+							r += ` and best friend`;
+						} else if (slave.relationship == 3) {
+							r += ` and FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` and lover`;
+						} else {
+							r += ` and wife`;
+						}
+						_relationshipHandled = 1;
+					}
+					r += `.</span>`;
+				}
+			} else if (slave.daughters > 1) {
+				if (slave.daughters > 10) {
+					r += `<span class="lightgreen">Has tons of daughters.</span>`;
+				} else if (slave.daughters > 5) {
+					r += `<span class="lightgreen">Has many daughters.</span>`;
 				} else {
-					r += ` and wife`;
+					r += `<span class="lightgreen">Has several daughters.</span>`;
 				}
-				_relationshipHandled = 1;
-			}
-			r += `.</span>`;
-		}
-	} else if (slave.sisters > 1) {
-		if (slave.sisters > 10) {
-			r += `<span class="lightgreen">One of many sisters.</span>`;
-		} else if (slave.sisters > 5) {
-			r += `<span class="lightgreen">Has many sisters.</span>`;
-		} else {
-			r += `<span class="lightgreen">Has several sisters.</span>`;
-		}
-	}
-	if (slave.relationship > 0 && _relationshipHandled != 1) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-			switch (slave.relationship) {
-			case 1:
-				r += `<span class="lightgreen">friend.</span>`;
-				break;
-			case 2:
-				r += `<span class="lightgreen">best friend.</span>`;
-				break;
-			case 3:
-				r += `<span class="lightgreen">FWB.</span>`;
-				break;
-			case 4:
-				r += `<span class="lightgreen">lover.</span>`;
-				break;
-			case 5:
-				r += `<span class="lightgreen">slave wife.</span>`;
-				break;
-			}
-		}
-	} else if (slave.relationship == -3) {
-		r += `<span class="lightgreen">Your wife.</span>`;
-	} else if (slave.relationship == -2) {
-		r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
-	} else if (slave.relationship == -1) {
-		r += `<span class="lightgreen">Emotional slut.</span>`;
-	}
-} else {
-	if (slave.relation != 0) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationTarget; });
-		if (_ssj != -1) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-			if (slave.relationshipTarget != slave.relationTarget) {
-				r += `<span class="lightgreen">${slave.relation}</span>.`;
-			} else {
-				r += `<span class="lightgreen">${slave.relation}</span>`;
-			}
-			if (slave.relationship <= 0) {
-				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 			}
-		}
-	}
-	if (slave.relationship > 0) {
-		_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.relationshipTarget; });
-		if (_ssj != -1) {
-			switch (slave.relationship) {
-			case 1:
-				if (slave.relationshipTarget != slave.relationTarget) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				} else {
-					r += `and`;
+			if (slave.sisters == 1) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return areSisters(s, slave) > 0;
+				});
+				if (_ssj != -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
+					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
+						if (slave.relationship == 1) {
+							r += ` and friend`;
+						} else if (slave.relationship == 2) {
+							r += ` and best friend`;
+						} else if (slave.relationship == 3) {
+							r += ` and FWB`;
+						} else if (slave.relationship == 4) {
+							r += ` and lover`;
+						} else {
+							r += ` and wife`;
+						}
+						_relationshipHandled = 1;
+					}
+					r += `.</span>`;
 				}
-				r += `<span class="lightgreen">friend.</span>`;
-				break;
-			case 2:
-				if (slave.relationshipTarget != slave.relationTarget) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+			} else if (slave.sisters > 1) {
+				if (slave.sisters > 10) {
+					r += `<span class="lightgreen">One of many sisters.</span>`;
+				} else if (slave.sisters > 5) {
+					r += `<span class="lightgreen">Has many sisters.</span>`;
 				} else {
-					r += `and`;
+					r += `<span class="lightgreen">Has several sisters.</span>`;
 				}
-				r += `<span class="lightgreen">best friend.</span>`;
-				break;
-			case 3:
-				if (slave.relationshipTarget != slave.relationTarget) {
+			}
+			if (slave.relationship > 0 && _relationshipHandled != 1) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.relationshipTarget;
+				});
+				if (_ssj != -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				} else {
-					r += `and`;
+					switch (slave.relationship) {
+						case 1:
+							r += `<span class="lightgreen">friend.</span>`;
+							break;
+						case 2:
+							r += `<span class="lightgreen">best friend.</span>`;
+							break;
+						case 3:
+							r += `<span class="lightgreen">FWB.</span>`;
+							break;
+						case 4:
+							r += `<span class="lightgreen">lover.</span>`;
+							break;
+						case 5:
+							r += `<span class="lightgreen">slave wife.</span>`;
+							break;
+					}
 				}
-				r += `<span class="lightgreen">FWB.</span>`;
-				break;
-			case 4:
-				if (slave.relationshipTarget != slave.relationTarget) {
+			} else if (slave.relationship == -3) {
+				r += `<span class="lightgreen">Your wife.</span>`;
+			} else if (slave.relationship == -2) {
+				r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
+			} else if (slave.relationship == -1) {
+				r += `<span class="lightgreen">Emotional slut.</span>`;
+			}
+		} else {
+			if (slave.relation != 0) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.relationTarget;
+				});
+				if (_ssj != -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				} else {
-					r += `and`;
+					if (slave.relationshipTarget != slave.relationTarget) {
+						r += `<span class="lightgreen">${slave.relation}</span>.`;
+					} else {
+						r += `<span class="lightgreen">${slave.relation}</span>`;
+					}
+					if (slave.relationship <= 0) {
+						r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+					}
 				}
-				r += `<span class="lightgreen">lover.</span>`;
-				break;
-			case 5:
-				if (slave.relationshipTarget != slave.relationTarget) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+			}
+			if (slave.relationship > 0) {
+				_ssj = V.slaves.findIndex(function(s) {
+					return s.ID == slave.relationshipTarget;
+				});
+				if (_ssj != -1) {
+					switch (slave.relationship) {
+						case 1:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `and`;
+							}
+							r += `<span class="lightgreen">friend.</span>`;
+							break;
+						case 2:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `and`;
+							}
+							r += `<span class="lightgreen">best friend.</span>`;
+							break;
+						case 3:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `and`;
+							}
+							r += `<span class="lightgreen">FWB.</span>`;
+							break;
+						case 4:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `and`;
+							}
+							r += `<span class="lightgreen">lover.</span>`;
+							break;
+						case 5:
+							if (slave.relationshipTarget != slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `and`;
+							}
+							r += `<span class="lightgreen">slave wife.</span>`;
+							break;
+					}
+				}
+			} else if (slave.relationship == -3) {
+				r += `<span class="lightgreen">Your wife.</span>`;
+			} else if (slave.relationship == -2) {
+				r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
+			} else if (slave.relationship == -1) {
+				r += `<span class="lightgreen">Emotional slut.</span>`;
+			}
+		}
+		_relationshipHandled = 0;
+		if (slave.rivalry != 0) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.ID == slave.rivalryTarget;
+			});
+			if (_ssj != -1) {
+				if (slave.rivalry <= 1) {
+					r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
+				} else if (slave.rivalry <= 2) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightsalmon">rival.</span>`;
 				} else {
-					r += `and`;
+					r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
 				}
-				r += `<span class="lightgreen">slave wife.</span>`;
-				break;
 			}
 		}
-	} else if (slave.relationship == -3) {
-		r += `<span class="lightgreen">Your wife.</span>`;
-	} else if (slave.relationship == -2) {
-		r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
-	} else if (slave.relationship == -1) {
-		r += `<span class="lightgreen">Emotional slut.</span>`;
 	}
-}
-_relationshipHandled = 0;
-if (slave.rivalry != 0) {
-	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	_ssj = V.slaves.findIndex(function(s) { return s.ID == slave.rivalryTarget; });
-	if (_ssj != -1) {
-		if (slave.rivalry <= 1) {
-			r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
-		} else if (slave.rivalry <= 2) {
-			r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightsalmon">rival.</span>`;
-		} else {
-			r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
+
+	if (slave.fuckdoll == 0) {
+		if (V.abbreviateClothes == 2) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			if (slave.choosesOwnClothes == 1) {
+				r += `Dressing herself.`;
+			}
+			switch (slave.clothes) {
+				case "attractive lingerie":
+					r += `Lingerie.`;
+					break;
+				case "a succubus outfit":
+					r += `Succubus outfit.`;
+					break;
+				case "a string bikini":
+					r += `String bikini.`;
+					break;
+				case "a scalemail bikini":
+					r += `Scalemail bikini.`;
+					break;
+				case "a monokini":
+					r += `Monokini.`;
+					break;
+				case "an apron":
+					r += `Apron.`;
+					break;
+				case "a cybersuit":
+					r += `Cybersuit.`;
+					break;
+				case "cutoffs and a t-shirt":
+					r += `Cutoffs, t-shirt.`;
+					break;
+				case "a slutty outfit":
+					r += `Slutty outfit.`;
+					break;
+				case "uncomfortable straps":
+					r += `Leather straps.`;
+					break;
+				case "a fallen nuns habit":
+					r += `Slutty habit.`;
+					break;
+				case "a chattel habit":
+					r += `Chattel habit.`;
+					break;
+				case "a penitent nuns habit":
+					r += `Cilice.`;
+					break;
+				case "slutty jewelry":
+					r += `Bangles.`;
+					break;
+				case "attractive lingerie for a pregnant woman":
+					r += `Preggo lingerie.`;
+					break;
+				case "a maternity dress":
+					r += `Maternity dress.`;
+					break;
+				case "stretch pants and a crop-top":
+					r += `Stretch pants, crop-top.`;
+					break;
+				case "harem gauze":
+					r += `Harem outfit.`;
+					break;
+				case "a slave gown":
+					r += `Slave gown.`;
+					break;
+				case "a halter top dress":
+					r += `Halter top dress.`;
+					break;
+				case "a mini dress":
+					r += `Mini dress.`;
+					break;
+				case "a ball gown":
+					r += `Ball gown.`;
+					break;
+				case "slutty business attire":
+					r += `Slutty suit.`;
+					break;
+				case "nice business attire":
+					r += `Nice suit.`;
+					break;
+				case "a comfortable bodysuit":
+					r += `Bodysuit.`;
+					break;
+				case "a military uniform":
+					r += `Military uniform.`;
+					break;
+				case "a schutzstaffel uniform":
+					r += `Schutzstaffel uniform.`;
+					break;
+				case "a slutty schutzstaffel uniform":
+					r += `Slutty Schutzstaffel uniform.`;
+					break;
+				case "a red army uniform":
+					r += `Red Army uniform.`;
+					break;
+				case "a long qipao":
+					r += `Long Qipao.`;
+					break;
+				case "battlearmor":
+					r += `Battlearmor.`;
+					break;
+				case "a mounty outfit":
+					r += `Mounty outfit.`;
+					break;
+				case "a dirndl":
+					r += `Dirndl.`;
+					break;
+				case "lederhosen":
+					r += `Lederhosen.`;
+					break;
+				case "a biyelgee costume":
+					r += `Biyelgee costume.`;
+					break;
+				case "a leotard":
+					r += `Leotard.`;
+					break;
+				case "a bunny outfit":
+					r += `Bunny outfit.`;
+					break;
+				case "a slutty maid outfit":
+					r += `Slutty maid.`;
+					break;
+				case "a nice maid outfit":
+					r += `Nice maid.`;
+					break;
+				case "a slutty nurse outfit":
+					r += `Slutty nurse.`;
+					break;
+				case "a nice nurse outfit":
+					r += `Nice nurse.`;
+					break;
+				case "a schoolgirl outfit":
+					r += `Schoolgirl outfit.`;
+					break;
+				case "a kimono":
+					r += `Kimono.`;
+					break;
+				case "a hijab and abaya":
+					r += `Hijab and abaya.`;
+					break;
+				case "battledress":
+					r += `Battledress.`;
+					break;
+				case "a latex catsuit":
+					r += `Nice latex.`;
+					break;
+				case "restrictive latex":
+					r += `Bondage latex.`;
+					break;
+				case "conservative clothing":
+					r += `Conservative clothing.`;
+					break;
+				case "chains":
+					r += `Chains.`;
+					break;
+				case "a cheerleader outfit":
+					r += `Cheerleader.`;
+					break;
+				case "clubslut netting":
+					r += `Netting.`;
+					break;
+				case "shibari ropes":
+					r += `Shibari.`;
+					break;
+				case "Western clothing":
+					r += `Chaps.`;
+					break;
+				case "body oil":
+					r += `Body oil.`;
+					break;
+				case "a toga":
+					r += `Toga.`;
+					break;
+				case "a huipil":
+					r += `Huipil.`;
+					break;
+				case "a slutty qipao":
+					r += `Qipao.`;
+					break;
+				case "spats and a tank top":
+					r += `Spats, tank top.`;
+					break;
+				default:
+					r += `Naked.`;
+					break;
+			}
+			switch (slave.collar) {
+				case "uncomfortable leather":
+					r += `Leather collar.`;
+					break;
+				case "tight steel":
+					r += `Steel collar.`;
+					break;
+				case "preg biometrics":
+					r += `Pregnancy biometrics collar.`;
+					break;
+				case "cruel retirement counter":
+					r += `Cruel counter collar.`;
+					break;
+				case "shock punishment":
+					r += `Shock collar.`;
+					break;
+				case "dildo gag":
+					r += `Dildo gag.`;
+					break;
+				case "massive dildo gag":
+					r += `Throat-bulging dildo gag.`;
+					break;
+				case "neck corset":
+					r += `Neck corset.`;
+					break;
+				case "stylish leather":
+					r += `Stylish leather collar.`;
+					break;
+				case "satin choker":
+					r += `Satin choker.`;
+					break;
+				case "silk ribbon":
+					r += `Silken ribbon.`;
+					break;
+				case "heavy gold":
+					r += `Gold collar.`;
+					break;
+				case "bowtie":
+					r += `Bowtie collar.`;
+					break;
+				case "pretty jewelry":
+					r += `Pretty collar.`;
+					break;
+				case "nice retirement counter":
+					r += `Nice counter collar.`;
+					break;
+				case "leather with cowbell":
+					r += `Cowbell collar.`;
+					break;
+				case "ancient Egyptian":
+					r += `Wesekh.`;
+					break;
+				case "ball gag":
+					r += `Ball gag.`;
+					break;
+				case "bit gag":
+					r += `Bit gag.`;
+					break;
+				case "porcelain mask":
+					r += `Porcelain mask.`;
+					break;
+			}
+			switch (slave.bellyAccessory) {
+				case "shapewear":
+					r += `Shapewear.`;
+					break;
+				case "a small empathy belly":
+					r += `Small fake belly.`;
+					break;
+				case "a medium empathy belly":
+					r += `Medium fake belly.`;
+					break;
+				case "a large empathy belly":
+					r += `Large fake belly.`;
+					break;
+				case "a huge empathy belly":
+					r += `Huge fake belly.`;
+					break;
+				case "a corset":
+					r += `Corset.`;
+					break;
+				case "an extreme corset":
+					r += `Extreme corsetage.`;
+					break;
+			}
+			if (slave.amp != 1) {
+				if (slave.legAccessory == "short stockings") {
+					r += `Short stockings.`;
+				} else if (slave.legAccessory == "long stockings") {
+					r += `Long stockings.`;
+				}
+			}
+			if (canWalk(slave)) {
+				if (slave.shoes == "heels") {
+					r += `Heels.`;
+				} else if (slave.shoes == "pumps") {
+					r += `Pumps.`;
+				} else if (slave.shoes == "extreme heels") {
+					r += `Extreme heels.`;
+				} else if (slave.shoes == "boots") {
+					r += `Boots.`;
+				} else if (slave.heels == 1) {
+					r += `<span class="yellow">Crawling.</span>`;
+				} else if (slave.shoes == "flats") {
+					r += `Flats.`;
+				}
+			}
+			switch (slave.vaginalAccessory) {
+				case "chastity belt":
+					r += `Vaginal chastity.`;
+					break;
+				case "combined chastity":
+					r += `Combined chastity.`;
+					break;
+				case "anal chastity":
+					r += `Anal chastity.`;
+					break;
+				case "dildo":
+					r += `Vaginal dildo.`;
+					break;
+				case "large dildo":
+					r += `Large vaginal dildo.`;
+					break;
+				case "huge dildo":
+					r += `Huge vaginal dildo.`;
+					break;
+				case "long dildo":
+					r += `Long vaginal dildo.`;
+					break;
+				case "long, large dildo":
+					r += `Long and large vaginal dildo.`;
+					break;
+				case "long, huge dildo":
+					r += `Long and wide vaginal dildo.`;
+					break;
+			}
+			if (slave.dickAccessory == "chastity") {
+				r += `Chastity cage.`;
+			} else if (slave.dickAccessory == "combined chastity") {
+				r += `Combined chastity.`;
+			} else if (slave.dickAccessory == "anal chastity") {
+				r += `Anal chastity.`;
+			}
+			switch (slave.buttplug) {
+				case "plug":
+					r += `Buttplug.`;
+					break;
+				case "large plug":
+					r += `Large buttplug.`;
+					break;
+				case "huge plug":
+					r += `Huge buttplug.`;
+					break;
+				case "long plug":
+					r += `Long buttplug.`;
+					break;
+				case "long, large plug":
+					r += `Large, long buttplug.`;
+					break;
+				case "long, huge plug":
+					r += `Enormous buttplug.`;
+					break;
+			}
+			switch (slave.buttplugAttachment) {
+				case "tail":
+					r += `Attached tail.`;
+					break;
+			}
 		}
 	}
-}
-}
 
-if (slave.fuckdoll == 0) {
-if (V.abbreviateClothes == 2) {
-r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-if (slave.choosesOwnClothes == 1) {
-	r += `Dressing herself.`;
-}
-switch (slave.clothes) {
-case "attractive lingerie":
-	r +=`Lingerie.`;
-	break;
-case "a succubus outfit":
-	r +=`Succubus outfit.`;
-	break;
-case "a string bikini":
-	r +=`String bikini.`;
-	break;
-case "a scalemail bikini":
-	r +=`Scalemail bikini.`;
-	break;
-case "a monokini":
-	r +=`Monokini.`;
-	break;
-case "an apron":
-	r +=`Apron.`;
-	break;
-case "a cybersuit":
-	r +=`Cybersuit.`;
-	break;
-case "cutoffs and a t-shirt":
-	r +=`Cutoffs, t-shirt.`;
-	break;
-case "a slutty outfit":
-	r +=`Slutty outfit.`;
-	break;
-case "uncomfortable straps":
-	r +=`Leather straps.`;
-	break;
-case "a fallen nuns habit":
-	r +=`Slutty habit.`;
-	break;
-case "a chattel habit":
-	r +=`Chattel habit.`;
-	break;
-case "a penitent nuns habit":
-	r +=`Cilice.`;
-	break;
-case "slutty jewelry":
-	r +=`Bangles.`;
-	break;
-case "attractive lingerie for a pregnant woman":
-	r +=`Preggo lingerie.`;
-	break;
-case "a maternity dress":
-	r +=`Maternity dress.`;
-	break;
-case "stretch pants and a crop-top":
-	r +=`Stretch pants, crop-top.`;
-	break;
-case "harem gauze":
-	r +=`Harem outfit.`;
-	break;
-case "a slave gown":
-	r +=`Slave gown.`;
-	break;
-case "a halter top dress":
-	r +=`Halter top dress.`;
-	break;
-case "a mini dress":
-	r +=`Mini dress.`;
-	break;
-case "a ball gown":
-	r +=`Ball gown.`;
-	break;
-case "slutty business attire":
-	r +=`Slutty suit.`;
-	break;
-case "nice business attire":
-	r +=`Nice suit.`;
-	break;
-case "a comfortable bodysuit":
-	r +=`Bodysuit.`;
-	break;
-case "a military uniform":
-	r +=`Military uniform.`;
-	break;
-case "a schutzstaffel uniform":
-	r +=`Schutzstaffel uniform.`;
-	break;
-case "a slutty schutzstaffel uniform":
-	r +=`Slutty Schutzstaffel uniform.`;
-	break;
-case "a red army uniform":
-	r +=`Red Army uniform.`;
-	break;
-case "a long qipao":
-	r +=`Long Qipao.`;
-	break;
-case "battlearmor":
-	r +=`Battlearmor.`;
-	break;
-case "a mounty outfit":
-	r +=`Mounty outfit.`;
-	break;
-case "a dirndl":
-	r +=`Dirndl.`;
-	break;
-case "lederhosen":
-	r +=`Lederhosen.`;
-	break;
-case "a biyelgee costume":
-	r +=`Biyelgee costume.`;
-	break;
-case "a leotard":
-	r +=`Leotard.`;
-	break;
-case "a bunny outfit":
-	r +=`Bunny outfit.`;
-	break;
-case "a slutty maid outfit":
-	r +=`Slutty maid.`;
-	break;
-case "a nice maid outfit":
-	r +=`Nice maid.`;
-	break;
-case "a slutty nurse outfit":
-	r +=`Slutty nurse.`;
-	break;
-case "a nice nurse outfit":
-	r +=`Nice nurse.`;
-	break;
-case "a schoolgirl outfit":
-	r +=`Schoolgirl outfit.`;
-	break;
-case "a kimono":
-	r +=`Kimono.`;
-	break;
-case "a hijab and abaya":
-	r +=`Hijab and abaya.`;
-	break;
-case "battledress":
-	r +=`Battledress.`;
-	break;
-case "a latex catsuit":
-	r +=`Nice latex.`;
-	break;
-case "restrictive latex":
-	r +=`Bondage latex.`;
-	break;
-case "conservative clothing":
-	r +=`Conservative clothing.`;
-	break;
-case "chains":
-	r +=`Chains.`;
-	break;
-case "a cheerleader outfit":
-	r +=`Cheerleader.`;
-	break;
-case "clubslut netting":
-	r +=`Netting.`;
-	break;
-case "shibari ropes":
-	r +=`Shibari.`;
-	break;
-case "Western clothing":
-	r +=`Chaps.`;
-	break;
-case "body oil":
-	r +=`Body oil.`;
-	break;
-case "a toga":
-	r +=`Toga.`;
-	break;
-case "a huipil":
-	r +=`Huipil.`;
-	break;
-case "a slutty qipao":
-	r +=`Qipao.`;
-	break;
-case "spats and a tank top":
-	r +=`Spats, tank top.`;
-	break;
-default:
-	r +=`Naked.`;
-	break;
-}
-switch (slave.collar) {
-case "uncomfortable leather":
-	r +=`Leather collar.`;
-	break;
-case "tight steel":
-	r +=`Steel collar.`;
-	break;
-case "preg biometrics":
-	r +=`Pregnancy biometrics collar.`;
-	break;
-case "cruel retirement counter":
-	r +=`Cruel counter collar.`;
-	break;
-case "shock punishment":
-	r +=`Shock collar.`;
-	break;
-case "dildo gag":
-	r +=`Dildo gag.`;
-	break;
-case "massive dildo gag":
-	r +=`Throat-bulging dildo gag.`;
-	break;
-case "neck corset":
-	r +=`Neck corset.`;
-	break;
-case "stylish leather":
-	r +=`Stylish leather collar.`;
-	break;
-case "satin choker":
-	r +=`Satin choker.`;
-	break;
-case "silk ribbon":
-	r +=`Silken ribbon.`;
-	break;
-case "heavy gold":
-	r +=`Gold collar.`;
-	break;
-case "bowtie":
-	r +=`Bowtie collar.`;
-	break;
-case "pretty jewelry":
-	r +=`Pretty collar.`;
-	break;
-case "nice retirement counter":
-	r +=`Nice counter collar.`;
-	break;
-case "leather with cowbell":
-	r +=`Cowbell collar.`;
-	break;
-case "ancient Egyptian":
-	r +=`Wesekh.`;
-	break;
-case "ball gag":
-	r +=`Ball gag.`;
-	break;
-case "bit gag":
-	r +=`Bit gag.`;
-	break;
-case "porcelain mask":
-	r +=`Porcelain mask.`;
-	break;
-}
-switch (slave.bellyAccessory) {
-case "shapewear":
-	r +=`Shapewear.`;
-	break;
-case "a small empathy belly":
-	r +=`Small fake belly.`;
-	break;
-case "a medium empathy belly":
-	r +=`Medium fake belly.`;
-	break;
-case "a large empathy belly":
-	r +=`Large fake belly.`;
-	break;
-case "a huge empathy belly":
-	r +=`Huge fake belly.`;
-	break;
-case "a corset":
-	r +=`Corset.`;
-	break;
-case "an extreme corset":
-	r +=`Extreme corsetage.`;
-	break;
-}
-if (slave.amp != 1) {
-	if (slave.legAccessory == "short stockings") {
-		r +=`Short stockings.`;
-	} else if (slave.legAccessory == "long stockings") {
-		r +=`Long stockings.`;
+	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	if (slave.useRulesAssistant == 0) {
+		r += `<span class="lightgreen">RA-Exempt</span>`;
+	} else if (V.abbreviateRulesets == 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
+		r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") }`;
 	}
-}
-if (canWalk(slave)) {
-if (slave.shoes == "heels") {
-	r +=`Heels.`;
-} else if (slave.shoes == "pumps") {
-	r +=`Pumps.`;
-} else if (slave.shoes == "extreme heels") {
-	r +=`Extreme heels.`;
-} else if (slave.shoes == "boots") {
-	r +=`Boots.`;
-} else if (slave.heels == 1) {
-	r +=`<span class="yellow">Crawling.</span>`;
-} else if (slave.shoes == "flats") {
-	r +=`Flats.`;
-}
-}
-switch (slave.vaginalAccessory) {
-case "chastity belt":
-	r +=`Vaginal chastity.`;
-	break;
-case "combined chastity":
-	r +=`Combined chastity.`;
-	break;
-case "anal chastity":
-	r +=`Anal chastity.`;
-	break;
-case "dildo":
-	r +=`Vaginal dildo.`;
-	break;
-case "large dildo":
-	r +=`Large vaginal dildo.`;
-	break;
-case "huge dildo":
-	r +=`Huge vaginal dildo.`;
-	break;
-case "long dildo":
-	r +=`Long vaginal dildo.`;
-	break;
-case "long, large dildo":
-	r +=`Long and large vaginal dildo.`;
-	break;
-case "long, huge dildo":
-	r +=`Long and wide vaginal dildo.`;
-	break;
-}
-if (slave.dickAccessory == "chastity") {
-	r +=`Chastity cage.`;
-} else if (slave.dickAccessory == "combined chastity") {
-	r +=`Combined chastity.`;
-} else if (slave.dickAccessory == "anal chastity") {
-	r +=`Anal chastity.`;
-}
-switch (slave.buttplug) {
-case "plug":
-	r +=`Buttplug.`;
-	break;
-case "large plug":
-	r +=`Large buttplug.`;
-	break;
-case "huge plug":
-	r +=`Huge buttplug.`;
-	break;
-case "long plug":
-	r +=`Long buttplug.`;
-	break;
-case "long, large plug":
-	r +=`Large, long buttplug.`;
-	break;
-case "long, huge plug":
-	r +=`Enormous buttplug.`;
-	break;
-}
-switch (slave.buttplugAttachment) {
-	case "tail":
-		r +=`Attached tail.`;
-	break;
-}
-}
-}
-
-r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-if (slave.useRulesAssistant == 0) {
-	r +=`<span class="lightgreen">RA-Exempt</span>`;
-} else if (V.abbreviateRulesets == 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
-	r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") }`;
-}
 
-if (V.abbreviateOrigins == 2 && slave.origin != 0) {
-	r += `<br>`;
-	if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
-		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	if (V.abbreviateOrigins == 2 && slave.origin != 0) {
+		r += `<br>`;
+		if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		r += `<span class="gray">${slave.origin}</span>`;
 	}
-	r += `<span class="gray">${slave.origin}</span>`;
-}
 	return r;
 };
-- 
GitLab


From d4a22927a994abf4846586046868969cc1affccc Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 9 Jul 2018 23:48:48 +0300
Subject: [PATCH 013/189] remove defunct code

---
 src/pregmod/widgets/slaveSummaryWidgets.tw | 3187 +-------------------
 1 file changed, 2 insertions(+), 3185 deletions(-)

diff --git a/src/pregmod/widgets/slaveSummaryWidgets.tw b/src/pregmod/widgets/slaveSummaryWidgets.tw
index d00d96928af..c88e9092db9 100644
--- a/src/pregmod/widgets/slaveSummaryWidgets.tw
+++ b/src/pregmod/widgets/slaveSummaryWidgets.tw
@@ -6,7 +6,7 @@
 <<if $useSummaryCache>>
 	<<set _Slave = $args[0]>>
 	<<if !setup.summaryCache[_Slave.ID]>>
-		<<run setup.summaryCache[_Slave.ID] = new Wikifier(undefined, '<<SlaveSummaryUncached $args[0]>>').output>>
+		<<run setup.summaryCache[_Slave.ID] = SlaveSummaryUncached($args[0])>>
 	<</if>>
 	<<script>>
 		/*
@@ -24,3187 +24,4 @@
 <</if>>
 <</widget>>
 
-<<widget "SlaveSummaryUncached">>
-<<set _Slave = $args[0]>>
-<<if $abbreviateDevotion == 1>>
-	<<if _Slave.fetish == "mindbroken">>@@.red;MB@@
-	<<elseif _Slave.devotion < -95>>@@.darkviolet;VHate<<if $summaryStats>>[_Slave.devotion]<</if>>@@
-	<<elseif _Slave.devotion < -50>>@@.darkviolet;Hate<<if $summaryStats>>[_Slave.devotion]<</if>>@@
-	<<elseif _Slave.devotion < -20>>@@.mediumorchid;Res<<if $summaryStats>>[_Slave.devotion]<</if>>@@
-	<<elseif _Slave.devotion <= 20>>@@.yellow;Ambiv<<if $summaryStats>>[_Slave.devotion]<</if>>@@
-	<<elseif _Slave.devotion <= 50>>@@.hotpink;Accept<<if $summaryStats>>[_Slave.devotion]<</if>>@@
-	<<elseif _Slave.devotion <= 95>>@@.deeppink;Devo<<if $summaryStats>>[_Slave.devotion]<</if>>@@
-	<<else>>@@.magenta;Wor<<if $summaryStats>>[_Slave.devotion]<</if>>@@
-	<</if>>
-	<<if _Slave.fetish == "mindbroken">>
-	<<elseif _Slave.trust < -95>>@@.darkgoldenrod;ETerr<<if $summaryStats>>[_Slave.trust]<</if>>@@
-	<<elseif _Slave.trust < -50>>@@.goldenrod;Terr<<if $summaryStats>>[_Slave.trust]<</if>>@@
-	<<elseif _Slave.trust < -20>>@@.gold;Fright<<if $summaryStats>>[_Slave.trust]<</if>>@@
-	<<elseif _Slave.trust <= 20>>@@.yellow;Fear<<if $summaryStats>>[_Slave.trust]<</if>>@@
-	<<elseif _Slave.trust <= 50>>
-		<<if _Slave.devotion < -20>>
-			@@.orange;Caref<<if $summaryStats>> [_Slave.trust]<</if>>@@
-		<<else>>
-			@@.mediumaquamarine;Caref<<if $summaryStats>>[_Slave.trust]<</if>>@@
-		<</if>>
-	<<elseif _Slave.trust < 95>>
-		<<if _Slave.devotion < -20>>
-			@@.orangered;Bold<<if $summaryStats>> [_Slave.trust]<</if>>@@
-		<<else>>
-			@@.mediumseagreen;Trust<<if $summaryStats>>[_Slave.trust]<</if>>@@
-		<</if>>
-	<<else>>
-		<<if _Slave.devotion < -20>>
-			@@.darkred;Defiant<<if $summaryStats>> [_Slave.trust]<</if>>@@
-		<<else>>
-			@@.seagreen;VTrust <<if $summaryStats>>[_Slave.trust]<</if>>@@
-		<</if>>
-	<</if>>
-<<elseif $abbreviateDevotion == 2>>
-	<<if _Slave.fetish == "mindbroken">>@@.red;Mindbroken.@@
-	<<elseif _Slave.devotion < -95>>@@.darkviolet;Very hateful<<if $summaryStats>> [_Slave.devotion]<</if>>.@@
-	<<elseif _Slave.devotion < -50>>@@.darkviolet;Hateful<<if $summaryStats>> [_Slave.devotion]<</if>>.@@
-	<<elseif _Slave.devotion < -20>>@@.mediumorchid;Resistant<<if $summaryStats>> [_Slave.devotion]<</if>>.@@
-	<<elseif _Slave.devotion <= 20>>@@.yellow;Ambivalent<<if $summaryStats>> [_Slave.devotion]<</if>>.@@
-	<<elseif _Slave.devotion <= 50>>@@.hotpink;Accepting<<if $summaryStats>> [_Slave.devotion]<</if>>.@@
-	<<elseif _Slave.devotion <= 95>>@@.deeppink;Devoted<<if $summaryStats>> [_Slave.devotion]<</if>>.@@
-	<<else>>@@.magenta;Worshipful<<if $summaryStats>> [_Slave.devotion]<</if>>.@@
-	<</if>>
-	<<if _Slave.fetish == "mindbroken">>
-	<<elseif _Slave.trust < -95>>@@.darkgoldenrod;Extremely terrified<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-	<<elseif _Slave.trust < -50>>@@.goldenrod;Terrified<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-	<<elseif _Slave.trust < -20>>@@.gold;Frightened<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-	<<elseif _Slave.trust <= 20>>@@.yellow;Fearful<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-	<<elseif _Slave.trust <= 50>>
-		<<if _Slave.devotion < -20>>
-			@@.orange;Careful<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-		<<else>>
-			@@.mediumaquamarine;Careful<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-		<</if>>
-	<<elseif _Slave.trust < 95>>
-		<<if _Slave.devotion < -20>>
-			@@.orangered;Bold<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-		<<else>>
-			@@.mediumseagreen;Trusting<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-		<</if>>
-	<<else>>
-		<<if _Slave.devotion < -20>>
-			@@.darkred;Defiant<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-		<<else>>
-			@@.seagreen;Profoundly trusting<<if $summaryStats>> [_Slave.trust]<</if>>.@@
-		<</if>>
-	<</if>>
-<</if>>
-
-<<if _Slave.fuckdoll == 0>>
-<<if $abbreviateRules == 1>>
-<<switch _Slave.livingRules>>
-<<case "luxurious">>
-	''LS:Lux''
-<<case "normal">>
-	''LS:Nor''
-<<default>>
-	''LS:Spa''
-<</switch>>
-<<if canTalk(_Slave)>>
-<<switch _Slave.speechRules>>
-<<case "permissive">>
-	''SpR:P''
-<<case "accent elimination">>
-	''SpR:NoAcc''
-<<case "language lessons">>
-	''SpR:LL''
-<<default>>
-	''SpR:R''
-<</switch>>
-<</if>>
-<<switch _Slave.relationshipRules>>
-<<case "permissive">>
-	''ReR:P''
-<<case "just friends">>
-	''ReR:Fr''
-<<default>>
-	''ReR:R''
-<</switch>>
-<<switch _Slave.standardPunishment>>
-<<case "confinement">>
-	''Pun:Conf''
-<<case "whipping">>
-	''Pun:Whip''
-<<case "chastity">>
-	''Pun:Chas''
-<<default>>
-	''Pun:Situ''
-<</switch>>
-<<switch _Slave.standardReward>>
-<<case "relaxation">>
-	''Rew:Relx''
-<<case "drugs">>
-	''Rew:Drug''
-<<case "orgasm">>
-	''Rew:Orga''
-<<default>>
-	''Rew:Situ''
-<</switch>>
-<<switch _Slave.releaseRules>>
-<<case "permissive">>
-	''MaR:P''
-<<case "sapphic">>
-	''MaR:S''
-<<case "masturbation">>
-	''MaR:M''
-<<default>>
-	''MaR:R''
-<</switch>>
-<<elseif $abbreviateRules == 2>>
-Living standard: _Slave.livingRules.
-<<if canTalk(_Slave)>>Speech rules: _Slave.speechRules.<</if>>
-Relationship rules: _Slave.relationshipRules.
-Typical punishment: _Slave.standardPunishment.
-Typical reward: _Slave.standardReward.
-Release rules: _Slave.releaseRules.
-<</if>>
-<</if>>
-
-<<if _Slave.tired != 0>>Tired.<</if>>
-
-<<if $abbreviateDiet == 1>>
-	<<if _Slave.weight < -95>>
-		''@@.red;W---<<if $summaryStats>>[_Slave.weight]<</if>>@@''
-	<<elseif _Slave.weight < -30>>
-		<<if _Slave.hips < -1>>
-			''W--<<if $summaryStats>>[_Slave.weight]<</if>>''
-		<<else>>
-			''@@.red;W--<<if $summaryStats>>[_Slave.weight]<</if>>@@''
-		<</if>>
-	<<elseif _Slave.weight < -10>>
-		''W-<<if $summaryStats>>[_Slave.weight]<</if>>''
-	<<elseif _Slave.weight <= 10 >>
-		''W<<if $summaryStats>>[_Slave.weight]<</if>>''
-	<<elseif _Slave.weight <= 30>>
-		''W+<<if $summaryStats>>[_Slave.weight]<</if>>''
-	<<elseif _Slave.weight <= 95>>
-		<<if _Slave.hips > 1 || $arcologies[0].FSHedonisticDecadence != "unset">>
-			''W++<<if $summaryStats>>[_Slave.weight]<</if>>''
-		<<else>>
-			''@@.red;W++<<if $summaryStats>>[_Slave.weight]<</if>>@@''
-		<</if>>
-	<<elseif _Slave.weight <= 130>>
-		<<if _Slave.hips >= 2 || $arcologies[0].FSHedonisticDecadence != "unset">>
-			''W+++<<if $summaryStats>>[_Slave.weight]<</if>>''
-		<<else>>
-		''@@.red;W+++<<if $summaryStats>>[_Slave.weight]<</if>>@@''
-		<</if>>
-	<<elseif _Slave.weight <= 160>>
-		<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-			''W++++<<if $summaryStats>>[_Slave.weight]<</if>>''
-		<<else>>
-			''@@.red;W++++<<if $summaryStats>>[_Slave.weight]<</if>>@@''
-		<</if>>
-	<<elseif _Slave.weight <= 190>>
-		<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-			''W+++++<<if $summaryStats>>[_Slave.weight]<</if>>''
-		<<else>>
-			''@@.red;W+++++<<if $summaryStats>>[_Slave.weight]<</if>>@@''
-		<</if>>
-	<<else>>
-		<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-			''W++++++<<if $summaryStats>>[_Slave.weight]<</if>>''
-		<<else>>
-			''@@.red;W++++++<<if $summaryStats>>[_Slave.weight]<</if>>@@''
-		<</if>>
-	<</if>>
-<<elseif $abbreviateDiet == 2>>
-	<<if _Slave.weight < -95>>
-		@@.red;Emaciated<<if $summaryStats>> [_Slave.weight]<</if>>.@@
-	<<elseif _Slave.weight < -30>>
-		<<if _Slave.hips < -1>>
-			Model-thin<<if $summaryStats>> [_Slave.weight]<</if>>.
-		<<else>>
-			@@.red;Very thin<<if $summaryStats>> [_Slave.weight]<</if>>.@@
-		<</if>>
-	<<elseif _Slave.weight < -10>>
-		Thin<<if $summaryStats>> [_Slave.weight]<</if>>.
-	<<elseif _Slave.weight <= 10 >>
-		Trim<<if $summaryStats>> [_Slave.weight]<</if>>.
-	<<elseif _Slave.weight <= 30>>
-		Plush<<if $summaryStats>> [_Slave.weight]<</if>>.
-	<<elseif _Slave.weight <= 95>>
-		<<if _Slave.hips > 1 || $arcologies[0].FSHedonisticDecadence != "unset">>
-			Nicely chubby<<if $summaryStats>> [_Slave.weight]<</if>>.
-		<<else>>
-			@@.red;Overweight<<if $summaryStats>> [_Slave.weight]<</if>>.@@
-		<</if>>
-	<<elseif _Slave.weight <= 130>>
-		<<if _Slave.hips >= 2 || $arcologies[0].FSHedonisticDecadence != "unset">>
-			Pleasantly soft and shapely<<if $summaryStats>> [_Slave.weight]<</if>>.
-		<<else>>
-		@@.red;Fat<<if $summaryStats>> [_Slave.weight]<</if>>.@@
-		<</if>>
-	<<elseif _Slave.weight <= 160>>
-		<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-			Amazingly voluptuous<<if $summaryStats>> [_Slave.weight]<</if>>.
-		<<else>>
-		@@.red;Obese<<if $summaryStats>> [_Slave.weight]<</if>>.@@
-		<</if>>
-	<<elseif _Slave.weight <= 190>>
-		<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-			SSBBW<<if $summaryStats>> [_Slave.weight]<</if>>.
-		<<else>>
-		@@.red;Super Obese<<if $summaryStats>> [_Slave.weight]<</if>>.@@
-		<</if>>
-	<<else>>
-		<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-			Perfectly massive<<if $summaryStats>> [_Slave.weight]<</if>>.
-		<<else>>
-		@@.red;Dangerously Obese<<if $summaryStats>> [_Slave.weight]<</if>>.@@
-		<</if>>
-	<</if>>
-<</if>>
-
-<<if $abbreviateDiet == 1>>
-	@@.teal;
-	<<switch _Slave.diet>>
-	<<case "restricted">>
-		''Di:W-''
-	<<case "fattening">>
-		''Di:W+''
-	<<case "XX">>
-		''Di:XX+''
-	<<case "XY">>
-		''Di:XY+''
-	<<case "XXY">>
-		''Di:XXY+''
-	<<case "muscle building">>
-		''Di:M+''
-	<<case "slimming">>
-		''Di:M-''
-	<<case "cum production">>
-		''Di:C+''
-	<<case "cleansing">>
-		''Di:H+''
-	<<case "fertility">>
-		''Di:F+''
-	<</switch>>
-	@@
-	@@.cyan;
-	<<if _Slave.dietCum == 2>>
-		''Cum++''
-	<<elseif ((_Slave.dietCum == 1) && (_Slave.dietMilk == 0))>>
-		''Cum+''
-	<<elseif ((_Slave.dietCum == 1) && (_Slave.dietMilk == 1))>>
-		''Cum+ Milk+''
-	<<elseif ((_Slave.dietCum == 0) && (_Slave.dietMilk == 1))>>
-		''Milk+''
-	<<elseif (_Slave.dietMilk == 2)>>
-		''Milk++''
-	<</if>>
-	@@
-<<elseif $abbreviateDiet == 2>>
-	@@.teal;
-	<<switch _Slave.diet>>
-	<<case "restricted">>
-		Dieting.
-	<<case "fattening">>
-		Gaining weight.
-	<<case "XX">>
-		Estrogen rich.
-	<<case "XY">>
-		Testosterone rich.
-	<<case "XXY">>
-		Futanari mix.
-	<<case "muscle building">>
-		Pumping iron.
-	<<case "slimming">>
-		Slimming down.
-	<<case "cum production">>
-		Cum production.
-	<<case "cleansing">>
-		Cleansing.
-	<<case "fertility">>
-		Fertility.
-	<</switch>>
-	@@
-	<<if _Slave.dietCum == 2>>
-		Diet Base: @@.cyan;Cum Based.@@
-	<<elseif ((_Slave.dietCum == 1) && (_Slave.dietMilk == 0))>>
-		Diet Base: @@.cyan;Cum Added.@@
-	<<elseif ((_Slave.dietCum == 1) && (_Slave.dietMilk == 1))>>
-		Diet Base: @@.cyan;Milk & Cum Added.@@
-	<<elseif ((_Slave.dietCum == 0) && (_Slave.dietMilk == 1))>>
-		Diet Base: @@.cyan;Milk Added.@@
-	<<elseif (_Slave.dietMilk == 2)>>
-		Diet Base: @@.cyan;Milk Based.@@
-	<</if>>
-<</if>>
-
-<<if $abbreviateHealth == 1>>
-	<<if _Slave.health < -20>>
-		''@@.red;H<<if $summaryStats>>[_Slave.health]<</if>>@@''
-	<<elseif _Slave.health <= 20>>
-		''@@.yellow;H<<if $summaryStats>>[_Slave.health]<</if>>@@''
-	<<elseif _Slave.health > 20>>
-		''@@.green;H<<if $summaryStats>>[_Slave.health]<</if>>@@''
-	<</if>>
-<<elseif $abbreviateHealth == 2>>
-	<<if _Slave.health < -90>>
-		@@.red;On the edge of death<<if $summaryStats>> [_Slave.health]<</if>>.@@
-	<<elseif _Slave.health < -50>>
-		@@.red;Extremely unhealthy<<if $summaryStats>> [_Slave.health]<</if>>.@@
-	<<elseif _Slave.health < -20>>
-		@@.red;Unhealthy<<if $summaryStats>> [_Slave.health]<</if>>.@@
-	<<elseif _Slave.health <= 20>>
-		@@.yellow;Healthy<<if $summaryStats>> [_Slave.health]<</if>>.@@
-	<<elseif _Slave.health <= 50>>
-		@@.green;Very healthy<<if $summaryStats>> [_Slave.health]<</if>>.@@
-	<<elseif _Slave.health <= 90>>
-		@@.green;Extremely healthy<<if $summaryStats>> [_Slave.health]<</if>>.@@
-	<<else>>
-		@@.green;Unnaturally healthy<<if $summaryStats>> [_Slave.health]<</if>>.@@
-	<</if>>
-<</if>>
-
-<<if $abbreviateDrugs == 1>>
-	@@.tan;
-	<<switch _Slave.drugs>>
-	<<case "breast injections">>
-		''Dr:Boobs+''
-	<<case "intensive breast injections">>
-		''Dr:Boobs++''
-	<<case "hyper breast injections">>
-		''Dr:Boobs+++''
-	<<case "butt injections">>
-		''Dr:Butt+''
-	<<case "intensive butt injections">>
-		''Dr:Butt++''
-	<<case "hyper butt injections">>
-		''Dr:Butt+++''
-	<<case "lip injections">>
-		''Dr:Lip+''
-	<<case "fertility drugs">>
-		''Dr:Fert+''
-	<<case "super fertility drugs">>
-		''Dr:Fert++''
-	<<case "penis enhancement">>
-		''Dr:Dick+''
-	<<case "intensive penis enhancement">>
-		''Dr:Dick++''
-	<<case "hyper penis enhancement">>
-		''Dr:Dick+++''
-	<<case "testicle enhancement">>
-		''Dr:Balls+''
-	<<case "intensive testicle enhancement">>
-		''Dr:Balls++''
-	<<case "hyper testicle enhancement">>
-		''Dr:Balls+++''
-	<<case "psychosuppressants">>
-		''Dr:Psych''
-	<<case "steroids">>
-		''Dr:Ster''
-	<<case "female hormone injections">>
-		''Dr:HormXX++''
-	<<case "male hormone injections">>
-		''Dr:HormXY++''
-	<<case "hormone enhancers">>
-		''Dr:Horm+''
-	<<case "hormone blockers">>
-		''Dr:Horm-''
-	<<case "anti-aging cream">>
-		''Dr:Age-''
-	<<case "appetite suppressors">>
-		''Dr:ApSup''
-	<<case "penis atrophiers">>
-		''Dr:Dick-''
-	<<case "testicle atrophiers">>
-		''Dr:Balls-''
-	<<case "clitoris atrophiers">>
-		''Dr:Clit-''
-	<<case "labia atrophiers">>
-		''Dr:Labia-''
-	<<case "nipple atrophiers">>
-		''Dr:Nipple-''
-	<<case "lip atrophiers">>
-		''Dr:Lip-''
-	<<case "breast redistributors">>
-		''Dr:Breast-''
-	<<case "butt redistributors">>
-		''Dr:Butt-''
-	<<case "sag-B-gone">>
-		''Dr:AntiSag''
-	<<case "growth stimulants">>
-		''Dr:groStim''
-	<</switch>>
-	@@
-	@@.lightgreen;
-	<<if _Slave.curatives == 2>>
-		''Cura''
-	<<elseif _Slave.curatives == 1>>
-		''Prev''
-	<</if>>
-	@@
-	<<if _Slave.aphrodisiacs != 0>>
-	@@.lightblue;
-	<<if _Slave.aphrodisiacs == 1>>
-		''Aph''
-	<<elseif _Slave.aphrodisiacs == 2>>
-		''Aph++''
-	<<else>>
-		''Anaph''
-	<</if>>
-	@@
-	<</if>>
-	<<if _Slave.addict != 0>>
-		@@.cyan;Add@@
-	<</if>>
-	@@.lightsalmon;
-	<<if _Slave.hormones > 1>>
-		''Ho:F+''
-	<<elseif _Slave.hormones > 0>>
-		''Ho:F''
-	<<elseif _Slave.hormones < -1>>
-		''Ho:M+''
-	<<elseif _Slave.hormones < 0>>
-		''Ho:M''
-	<</if>>
-	@@
-	@@.mediumseagreen;
-	<<if (_Slave.bellyImplant > -1)>>
-		''Belly Imp''
-	<<elseif ((_Slave.preg <= -2) || (_Slave.ovaries == 0)) && (_Slave.vagina != -1)>>
-		''Barr''
-	<<elseif _Slave.pubertyXX == 0 && (_Slave.ovaries == 1 || _Slave.mpreg == 1)>>
-		''Prepub''
-	<<elseif _Slave.ovaryAge >= 47 && (_Slave.ovaries == 1 || _Slave.mpreg == 1)>>
-		''Meno''
-	<<elseif _Slave.pregWeek < 0>>
-		''Postpartum''
-	<<elseif _Slave.preg == -1>>
-		''CC''
-	<<elseif _Slave.preg == 0 && (_Slave.ovaries == 1 || _Slave.mpreg == 1)>>
-		''Fert+''
-	<<elseif ((_Slave.preg < 4) && (_Slave.preg > 0) && _Slave.pregKnown == 0) || _Slave.pregWeek == 1>>
-		''Preg?''
-	<<elseif (_Slave.preg >= 36) && (_Slave.broodmother > 0)>>
-		''Perm preg''
-	<<elseif _Slave.pregKnown == 1>>
-		''_Slave.pregWeek wks preg''
-	<</if>>
-	@@
-	<<if _Slave.induce == 1>>
-		@@.orange;''Early Labor''@@
-	<</if>>
-	<<if _Slave.pubertyXY == 0 && _Slave.balls > 0>>
-		''Prepub balls''
-	<</if>>
-	<<if _Slave.balls > 0 && _Slave.vasectomy == 1>>
-		''Vasect''
-	<</if>>
-	@@.springgreen;
-	<<if _Slave.inflation == 3>>
-		''8 ltr _Slave.inflationType''
-	<<elseif _Slave.inflation == 2>>
-		''4 ltr _Slave.inflationType''
-	<<elseif _Slave.inflation == 1>>
-		''2 ltr _Slave.inflationType''
-	<<elseif _Slave.bellyFluid > 0>>
-		''<<print _Slave.bellyFluid>>ccs _Slave.inflationType''
-	<</if>>
-	@@
-<<elseif $abbreviateDrugs == 2>>
-	<<if (_Slave.drugs != "no drugs") && (_Slave.drugs != "none")>>
-		@@.tan;On _Slave.drugs.@@
-	<</if>>
-	@@.lightgreen;
-	<<if _Slave.curatives == 2>>
-		On curatives.
-	<<elseif _Slave.curatives == 1>>
-		On preventatives.
-	<</if>>
-	@@
-	@@.lightblue;
-	<<if _Slave.aphrodisiacs > 0>>
-		On <<if _Slave.aphrodisiacs > 1>>extreme <</if>>aphrodisiacs.
-	<<elseif _Slave.aphrodisiacs === -1>>
-		On anaphrodisiacs.
-	<</if>>
-	@@
-	<<if _Slave.addict != 0>>
-		@@.cyan;Addict.@@
-	<</if>>
-	@@.lightsalmon;
-	<<if _Slave.hormones > 1>>
-		Heavy female hormones.
-	<<elseif _Slave.hormones > 0>>
-		Female hormones.
-	<<elseif _Slave.hormones < -1>>
-		Heavy male hormones.
-	<<elseif _Slave.hormones < 0>>
-		Male hormones.
-	<</if>>
-	@@
-	@@.mediumseagreen;
-	<<if (_Slave.bellyImplant > -1)>>
-		Belly Implant.
-	<<elseif ((_Slave.preg <= -2) || (_Slave.ovaries == 0)) && (_Slave.vagina != -1)>>
-		Barren.
-	<<elseif _Slave.pubertyXX == 0 && (_Slave.ovaries == 1 || _Slave.mpreg == 1)>>
-		Not ovulating yet.
-	<<elseif _Slave.ovaryAge >= 47 && (_Slave.ovaries == 1 || _Slave.mpreg == 1)>>
-		Menopausal.
-	<<elseif _Slave.pregWeek < 0>>
-		Postpartum.
-	<<elseif _Slave.preg == -1>>
-		On contraceptives.
-	<<elseif _Slave.preg == 0 && (_Slave.ovaries == 1 || _Slave.mpreg == 1)>>
-		Fertile.
-	<<elseif ((_Slave.preg < 4) && (_Slave.preg > 0) && _Slave.pregKnown == 0) || _Slave.pregWeek == 1>>
-		May be pregnant.
-	<<elseif (_Slave.preg >= 36) && (_Slave.broodmother > 0)>>
-		Permanently pregnant.
-	<<elseif _Slave.pregKnown == 1>>
-		<<if _Slave.pregType < 2 || _Slave.broodmother > 0>>
-			_Slave.pregWeek weeks pregnant.
-		<<else>>
-			_Slave.pregWeek weeks pregnant with
-			<<if _Slave.pregType >= 40>>
-				a tremendous brood of offspring.
-			<<elseif _Slave.pregType >= 20>>
-				a brood of offspring.
-			<<elseif _Slave.pregType >= 10>>
-				_Slave.pregType babies.
-			<<elseif _Slave.pregType == 9>>
-				nonuplets.
-			<<elseif _Slave.pregType == 8>>
-				octuplets.
-			<<elseif _Slave.pregType == 7>>
-				septuplets.
-			<<elseif _Slave.pregType == 6>>
-				sextuplets.
-			<<elseif _Slave.pregType == 5>>
-				quintuplets.
-			<<elseif _Slave.pregType == 4>>
-				quadruplets.
-			<<elseif _Slave.pregType == 3>>
-				triplets.
-			<<else>>
-				twins.
-			<</if>>
-		<</if>>
-	<</if>>
-	@@
-	<<if _Slave.induce == 1>>
-		@@.orange;Showing signs of early labor.@@
-	<</if>>
-	<<if _Slave.pubertyXY == 0 && _Slave.balls > 0>>
-		Has not had first ejaculation.
-	<</if>>
-	<<if _Slave.balls > 0 && _Slave.vasectomy == 1>>
-		Vasectomy.
-	<</if>>
-	@@.springgreen;
-	<<if _Slave.inflation == 3>>
-		Filled with 8 liters of _Slave.inflationType.
-	<<elseif _Slave.inflation == 2>>
-		Filled with 4 liters of _Slave.inflationType.
-	<<elseif _Slave.inflation == 1>>
-		Filled with 2 liters of _Slave.inflationType.
-	<<elseif _Slave.bellyFluid > 0>>
-		Stuffed with <<print _Slave.bellyFluid>>ccs of _Slave.inflationType.
-	<</if>>
-	@@
-<</if>>
-
-<<if $abbreviateNationality+$abbreviateGenitalia+$abbreviatePhysicals+$abbreviateSkills+$abbreviateMental != 0>>
-	<br><<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
-<</if>>
-
-<<SlaveTitle _Slave>>
-<<set $seed = $desc.substring(0,1)>>
-<<set $seed = $seed.toUpperCase()>>
-<<set $desc = $seed + $desc.substring(1)>>
-''@@.coral;$desc<<if $abbreviatePhysicals == 2>>.<</if>>@@''
-
-<<if $seeRace == 1>>
-@@.tan;
-<<if $abbreviateRace == 1>>
-<<switch _Slave.race>>
-<<case "white">>
-	C
-<<case "asian">>
-	A
-<<case "indo-aryan">>
-	I
-<<case "latina">>
-	L
-<<case "middle eastern">>
-	ME
-<<case "black">>
-	B
-<<case "pacific islander">>
-	PI
-<<case "malay">>
-	M
-<<case "amerindian">>
-	AI
-<<case "semitic">>
-	S
-<<case "southern european">>
-	SE
-<<case "mixed race">>
-	MR
-<<default>>
-	<<print _Slave.race.charAt(0).toUpperCase() + _Slave.race.charAt(1) + _Slave.race.charAt(2)>>
-<</switch>>
-<<elseif $abbreviateRace == 2>>
-<<switch _Slave.race>>
-<<case "white">>
-	Caucasian.
-<<case "asian">>
-	Asian.
-<<case "indo-aryan">>
-	Indo-aryan.
-<<case "latina">>
-	Latina.
-<<case "middle eastern">>
-	Middle Eastern.
-<<case "black">>
-	Black.
-<<case "pacific islander">>
-	Pacific Islander.
-<<case "malay">>
-	Malay.
-<<case "amerindian">>
-	Amerindian.
-<<case "semitic">>
-	Semitic.
-<<case "southern european">>
-	Southern European.
-<<case "mixed race">>
-	Mixed race.
-<<default>>
-	<<print _Slave.race.charAt(0).toUpperCase() + _Slave.race.slice(1)>>.
-<</switch>>
-<</if>>
-@@
-<</if>>
-
-<<if $abbreviateNationality == 1>>
-@@.tan;
-<<switch _Slave.nationality>>
-<<case "Afghan">>
-	Afg
-<<case "Albanian">>
-	Alb
-<<case "Algerian">>
-	Alg
-<<case "American">>
-	USA
-<<case "Andorran">>
-	And
-<<case "Angolan">>
-	Ang"
-<<case "Antiguan">>
-	AB
-<<case "Argentinian">>
-	Arg
-<<case "Armenian">>
-	Arm
-<<case "Aruban">>
-	Aru
-<<case "Australian">>
-	Aus
-<<case "Austrian">>
-	Aut
-<<case "Azerbaijani">>
-	Aze
-<<case "Bahamian">>
-	Bah
-<<case "Bahraini">>
-	Bah
-<<case "Bangladeshi">>
-	Bgd
-<<case "Barbadian">>
-	Bar
-<<case "Belarusian">>
-	Ber
-<<case "Belgian">>
-	Bel
-<<case "Belizean">>
-	Blz
-<<case "Beninese">>
-	Ben
-<<case "Bermudian">>
-	Bmd
-<<case "Bhutanese">>
-	Bhu
-<<case "Bissau-Guinean">>
-	GB
-<<case "Bolivian">>
-	Bol
-<<case "Bosnian">>
-	Bos
-<<case "Brazilian">>
-	Bra
-<<case "British">>
-	UK
-<<case "Bruneian">>
-	Bru
-<<case "Bulgarian">>
-	Bul
-<<case "Burkinabé">>
-	BF
-<<case "Burmese">>
-	Bur
-<<case "Burundian">>
-	Bnd
-<<case "Cambodian">>
-	Kam
-<<case "Cameroonian">>
-	Cam
-<<case "Canadian">>
-	Can
-<<case "Cape Verdean">>
-	CV
-<<case "Catalan">>
-	Cat
-<<case "Central African">>
-	CAR
-<<case "Chadian">>
-	Cha
-<<case "Chilean">>
-	Chl
-<<case "Chinese">>
-	Chi
-<<case "Colombian">>
-	Col
-<<case "Comorian">>
-	Com
-<<case "Congolese">>
-	RC
-<<case "a Cook Islander">>
-	CI
-<<case "Costa Rican">>
-	CR
-<<case "Croatian">>
-	Cro
-<<case "Cuban">>
-	Cub
-<<case "Cypriot">>
-	Cyp
-<<case "Czech">>
-	Cze
-<<case "Danish">>
-	Den
-<<case "Djiboutian">>
-	Dji
-<<case "Dominican">>
-	DR
-<<case "Dominiquais">>
-	Dom
-<<case "Dutch">>
-	Nld
-<<case "East Timorese">>
-	ET
-<<case "Ecuadorian">>
-	Ecu
-<<case "Egyptian">>
-	Egy
-<<case "Emirati">>
-	UAE
-<<case "Equatoguinean">>
-	EG
-<<case "Eritrean">>
-	Eri
-<<case "Estonian">>
-	Est
-<<case "Ethiopian">>
-	Eth
-<<case "Fijian">>
-	Fij
-<<case "Filipina">>
-	Phl
-<<case "Finnish">>
-	Fin
-<<case "French">>
-	Fra
-<<case "French Guianan">>
-	FG
-<<case "French Polynesian">>
-	FP
-<<case "Gabonese">>
-	Gab
-<<case "Gambian">>
-	Gam
-<<case "Georgian">>
-	Geo
-<<case "German">>
-	Ger
-<<case "Ghanan">>
-	Gha
-<<case "Greek">>
-	Gre
-<<case "Greenlandic">>
-	Grn
-<<case "Grenadian">>
-	Gda
-<<case "Guamanian">>
-	Gua
-<<case "Guatemalan">>
-	Gtm
-<<case "Guinean">>
-	Gui
-<<case "Guyanese">>
-	Guy
-<<case "Haitian">>
-	Hai
-<<case "Honduran">>
-	Hon
-<<case "Hungarian">>
-	Hun
-<<case "I-Kiribati">>
-	Kir
-<<case "Icelandic">>
-	Ice
-<<case "Indian">>
-	Ind
-<<case "Indonesian">>
-	Idn
-<<case "Iranian">>
-	Irn
-<<case "Iraqi">>
-	Irq
-<<case "Irish">>
-	Irl
-<<case "Israeli">>
-	Isr
-<<case "Italian">>
-	Ita
-<<case "Ivorian">>
-	IC
-<<case "Jamaican">>
-	Jam
-<<case "Japanese">>
-	Jpn
-<<case "Jordanian">>
-	Jor
-<<case "Kazakh">>
-	Kaz
-<<case "Kenyan">>
-	Ken
-<<case "Kittitian">>
-	SKN
-<<case "Korean">>
-	Kor
-<<case "Kosovan">>
-	Kos
-<<case "Kurdish">>
-	Kur
-<<case "Kuwaiti">>
-	Kuw
-<<case "Kyrgyz">>
-	Kyr
-<<case "Laotian">>
-	Lao
-<<case "Latvian">>
-	Lat
-<<case "Lebanese">>
-	Lbn
-<<case "Liberian">>
-	Lib
-<<case "Libyan">>
-	Lby
-<<case "a Liechtensteiner">>
-	Lie
-<<case "Lithuanian">>
-	Lit
-<<case "Luxembourgian">>
-	Lux
-<<case "Macedonian">>
-	Mac
-<<case "Malagasy">>
-	Mad
-<<case "Malawian">>
-	Mwi
-<<case "Malaysian">>
-	Mys
-<<case "Maldivian">>
-	Mdv
-<<case "Malian">>
-	Mal
-<<case "Maltese">>
-	Mlt
-<<case "Marshallese">>
-	MI
-<<case "Mauritanian">>
-	Mta
-<<case "Mauritian">>
-	Mts
-<<case "Mexican">>
-	Mex
-<<case "Micronesian">>
-	FSM
-<<case "Moldovan">>
-	Mol
-<<case "Monégasque">>
-	Mnc
-<<case "Mongolian">>
-	Mon
-<<case "Montenegrin">>
-	Mng
-<<case "Moroccan">>
-	Mor
-<<case "Mosotho">>
-	Les
-<<case "Motswana">>
-	Bot
-<<case "Mozambican">>
-	Moz
-<<case "Namibian">>
-	Nam
-<<case "Nauruan">>
-	Nau
-<<case "Nepalese">>
-	Npl
-<<case "New Caledonian">>
-	NC
-<<case "a New Zealander">>
-	NZ
-<<case "Ni-Vanuatu">>
-	Van
-<<case "Nicaraguan">>
-	Nic
-<<case "Nigerian">>
-	Nga
-<<case "Nigerien">>
-	Ngr
-<<case "Niuean">>
-	Niu
-<<case "Norwegian">>
-	Nor
-<<case "Omani">>
-	Omn
-<<case "Pakistani">>
-	Pak
-<<case "Palauan">>
-	Plu
-<<case "Palestinian">>
-	Pal
-<<case "Panamanian">>
-	Pan
-<<case "Papua New Guinean">>
-	PNG
-<<case "Paraguayan">>
-	Par
-<<case "Peruvian">>
-	Per
-<<case "Polish">>
-	Pol
-<<case "Portuguese">>
-	Por
-<<case "Puerto Rican">>
-	PR
-<<case "Qatari">>
-	Qat
-<<case "Romanian">>
-	Rom
-<<case "Russian">>
-	Rus
-<<case "Rwandan">>
-	Rwa
-<<case "Sahrawi">>
-	Sah
-<<case "Saint Lucian">>
-	SL
-<<case "Salvadoran">>
-	ES
-<<case "Sammarinese">>
-	SM
-<<case "Samoan">>
-	Sam
-<<case "São Toméan">>
-	STP
-<<case "Saudi">>
-	Sau
-<<case "Scottish">>
-	Sco
-<<case "Senegalese">>
-	Sen
-<<case "Serbian">>
-	Srb
-<<case "Seychellois">>
-	Sey
-<<case "Sierra Leonean">>
-	Sie
-<<case "Singaporean">>
-	Sng
-<<case "Slovak">>
-	Svk
-<<case "Slovene">>
-	Svn
-<<case "a Solomon Islander">>
-	SI
-<<case "Somali">>
-	Som
-<<case "South African">>
-	RSA
-<<case "South Sudanese">>
-	SS
-<<case "Spanish">>
-	Spa
-<<case "Sri Lankan">>
-	Sri
-<<case "Sudanese">>
-	Sud
-<<case "Surinamese">>
-	Sur
-<<case "Swazi">>
-	Swa
-<<case "Swedish">>
-	Swe
-<<case "Swiss">>
-	Swi
-<<case "Syrian">>
-	Syr
-<<case "Taiwanese">>
-	Tai
-<<case "Tajik">>
-	Taj
-<<case "Tanzanian">>
-	Tza
-<<case "Thai">>
-	Tha
-<<case "Tibetan">>
-	Tib
-<<case "Togolese">>
-	Tog
-<<case "Tongan">>
-	Ton
-<<case "Trinidadian">>
-	TT
-<<case "Tunisian">>
-	Tun
-<<case "Turkish">>
-	Tur
-<<case "Turkmen">>
-	Tkm
-<<case "Tuvaluan">>
-	Tuv
-<<case "Ugandan">>
-	Uga
-<<case "Ukrainian">>
-	Ukr
-<<case "Uruguayan">>
-	Uru
-<<case "Uzbek">>
-	Uzb
-<<case "Vatican">>
-	VC
-<<case "Venezuelan">>
-	Ven
-<<case "Vietnamese">>
-	Vnm
-<<case "Vincentian">>
-	SVG
-<<case "Yemeni">>
-	Yem
-<<case "Zairian">>
-	DRC
-<<case "Zambian">>
-	Zam
-<<case "Zimbabwean">>
-	<<if _Slave.race == "white">>
-		Rho
-	<<else>>
-		Zwe
-	<</if>>
-<<case "Ancient Chinese Revivalist">>
-	Chi Rev
-<<case "Ancient Egyptian Revivalist">>
-	Egy Rev
-<<case "Arabian Revivalist">>
-	Ara Rev
-<<case "Aztec Revivalist">>
-	Azt Rev
-<<case "Edo Revivalist">>
-	Edo Rev
-<<case "Roman Revivalist">>
-	Rom Rev
-<<case "" "none" "slave" "Stateless">>
-	None
-<<default>>
-	<<print _Slave.nationality.charAt(0) + _Slave.nationality.charAt(1) + _Slave.nationality.charAt(2)>>
-<</switch>>
-@@
-<<elseif $abbreviateNationality == 2>>
-@@.tan;
-<<switch _Slave.nationality>>
-<<case "Zimbabwean">>
-	<<if _Slave.race == "white">>
-		Rhodesian.
-	<<else>>
-		_Slave.nationality.
-	<</if>>
-<<case "slave" "none" "" "Stateless">>
-	Stateless.
-<<default>>
-	_Slave.nationality.
-<</switch>>
-@@
-<</if>>
-
-<<if $abbreviatePhysicals == 1>>
-@@.pink;
-	<<switch _Slave.skin>>
-	<<case "light brown">>
-		L. Br
-	<<case "dark brown">>
-		D. Br
-	<<case "light olive">>
-		L. Oli
-	<<case "dark olive">>
-		D. Oli
-	<<case "extremely pale">>
-		Ex. Pa
-	<<case "pure white">>
-		P. Whi
-	<<case "tanned">>
-		Tan
-	<<case "dark" "fair" "pale">>
-		<<print _Slave.skin.charAt(0).toUpperCase() + _Slave.skin.slice(1)>>
-	<<default>>
-		<<print _Slave.skin.charAt(0).toUpperCase() + _Slave.skin.charAt(1) + _Slave.skin.charAt(2)>>
-	<</switch>>
-<<else>>
-<<print _Slave.skin.charAt(0).toUpperCase() + _Slave.skin.slice(1)>> skin.
-@@
-<</if>>
-<<if $abbreviateGenitalia == 1>>
-<<if _Slave.dick > 0>>
-@@.pink;
-<<if _Slave.balls == 0>>
-	Geld
-<</if>>
-<<if (_Slave.dick > 8) && (_Slave.balls > 8)>>
-	Junk+++
-<<elseif (_Slave.dick > 5) && (_Slave.balls > 5)>>
-	Junk++
-<<elseif (_Slave.dick > 4) && (_Slave.balls > 4)>>
-	Junk+
-<<elseif (_Slave.dick > 3) && (_Slave.balls > 3)>>
-	Junk
-<<elseif _Slave.dick > 8>>
-	Dick+++
-<<elseif _Slave.dick > 5>>
-	Dick++
-<<elseif _Slave.dick > 4>>
-	Dick+
-<<elseif _Slave.dick > 3>>
-	Dick
-<<elseif _Slave.balls > 10>>
-	Balls+++
-<<elseif _Slave.balls > 5>>
-	Balls++
-<<elseif _Slave.balls > 4>>
-	Balls+
-<<elseif _Slave.balls > 3>>
-	Balls
-<</if>>
-@@
-<</if>>
-<<if _Slave.vagina == 0>>
-	@@.lime;VV@@
-<<elseif (_Slave.pregKnown == 1) && canWalk(_Slave) && (_Slave.clothes == "no clothing" || _Slave.clothes == "body oil") && (_Slave.shoes == "none")>>
-	@@.pink;NBP@@
-<</if>>
-<<if _Slave.anus == 0>>
-	@@.lime;AV@@
-<</if>>
-@@.pink;
-<<if (_Slave.vagina > 3) && (_Slave.anus > 3)>>
-	V++A++
-<<elseif (_Slave.vagina > 2) && (_Slave.anus > 2)>>
-	V+A+
-<<elseif _Slave.vagina > 3>>
-	V++
-<<elseif _Slave.vagina > 2>>
-	V+
-<<elseif _Slave.anus > 3>>
-	A++
-<<elseif _Slave.anus > 2>>
-	A+
-<</if>>
-@@
-<<elseif $abbreviateGenitalia == 2>>
-<<if _Slave.dick > 0>>
-@@.pink;
-<<if _Slave.balls == 0>>
-	Gelded.
-<</if>>
-<<if (_Slave.dick > 8) && (_Slave.balls > 8)>>
-	Hyper dick & balls.
-<<elseif (_Slave.dick > 5) && (_Slave.balls > 5)>>
-	Monster dick & balls.
-<<elseif (_Slave.dick > 4) && (_Slave.balls > 4)>>
-	Huge dick & balls.
-<<elseif (_Slave.dick > 3) && (_Slave.balls > 3)>>
-	Big dick & balls.
-<<elseif _Slave.dick > 8>>
-	Hyper dong.
-<<elseif _Slave.dick > 5>>
-	Monster dong.
-<<elseif _Slave.dick > 4>>
-	Huge dick.
-<<elseif _Slave.dick > 3>>
-	Big dick.
-<<elseif _Slave.balls > 8>>
-	Hyper balls.
-<<elseif _Slave.balls > 5>>
-	Monstrous balls.
-<<elseif _Slave.balls > 4>>
-	Huge balls.
-<<elseif _Slave.balls > 3>>
-	Big balls.
-<</if>>
-@@
-<</if>>
-<<if _Slave.vagina == 0>>
-	@@.lime;Virgin.@@
-<<elseif (_Slave.pregKnown == 1) && canWalk(_Slave) && (_Slave.clothes == "no clothing" || _Slave.clothes == "body oil") && (_Slave.shoes == "none")>>
-	@@.pink;Naked, barefoot, and pregnant.@@
-<</if>>
-<<if _Slave.anus == 0>>
-	@@.lime;Anal virgin.@@
-<</if>>
-@@.pink;
-<<if (_Slave.vagina > 3) && (_Slave.anus > 3)>>
-	Blown out holes.
-<<elseif (_Slave.vagina > 2) && (_Slave.anus > 2)>>
-	High mileage.
-<<elseif _Slave.vagina > 3>>
-	Cavernous pussy.
-<<elseif _Slave.vagina > 2>>
-	Loose pussy.
-<<elseif _Slave.anus > 3>>
-	Permagaped anus.
-<<elseif _Slave.anus > 2>>
-	Gaping anus.
-<</if>>
-@@
-<</if>>
-
-<<if $abbreviatePhysicals == 1>>
-@@.pink;
-<<if $showAgeDetail == 1>>
-	_Slave.actualAge
-<<elseif _Slave.actualAge >= 40>>
-	40s
-<<elseif _Slave.actualAge >= 35>>
-	Lt30s
-<<elseif _Slave.actualAge >= 30>>
-	Ea30s
-<<elseif _Slave.actualAge >= 25>>
-	Lt20s
-<<elseif _Slave.actualAge >= 20>>
-	Ea20s
-<<elseif _Slave.actualAge >= 18>>
-	_Slave.actualAge
-<</if>>
-<<if _Slave.actualAge != _Slave.physicalAge>>
-	<<print _Slave.physicalAge>>y-bdy
-<</if>>
-<<if _Slave.visualAge != _Slave.physicalAge>>
-	Lks<<print _Slave.visualAge>>
-<</if>>
-<<if _Slave.face < -95>>
-	@@.red;Face---<<if $summaryStats>>[_Slave.face]<</if>>@@
-<<elseif _Slave.face < -40>>
-	@@.red;Face--<<if $summaryStats>>[_Slave.face]<</if>>@@
-<<elseif _Slave.face < -10>>
-	@@.red;Face-<<if $summaryStats>>[_Slave.face]<</if>>@@
-<<elseif _Slave.face <= 10>>
-	Face<<if $summaryStats>>[_Slave.face]<</if>>
-<<elseif _Slave.face <= 40>>
-	@@.pink;Face+<<if $summaryStats>>[_Slave.face]<</if>>@@
-<<elseif _Slave.face <= 95>>
-	@@.pink;Face++<<if $summaryStats>>[_Slave.face]<</if>>@@
-<<else>>
-	@@.pink;Face+++<<if $summaryStats>>[_Slave.face]<</if>>@@
-<</if>>
-<<if _Slave.eyes == -2>>
-	@@.red;Blind@@
-<<elseif ((_Slave.eyes == -1) && (_Slave.eyewear != "corrective glasses") && (_Slave.eyewear != "corrective contacts"))>>
-	@@.yellow;Sight-@@
-<</if>>
-
-<<if _Slave.markings != "none">>
-	Markings
-<</if>>
-
-<<if _Slave.lips > 95>>
-	Facepussy
-<<elseif _Slave.lips > 70>>
-	Lips+++<<if $summaryStats>>[_Slave.lips]<</if>>
-<<elseif _Slave.lips > 40>>
-	Lips++<<if $summaryStats>>[_Slave.lips]<</if>>
-<<elseif _Slave.lips > 20>>
-	Lips+<<if $summaryStats>>[_Slave.lips]<</if>>
-<<elseif _Slave.lips > 10>>
-	Lips<<if $summaryStats>>[_Slave.lips]<</if>>
-<<else>>
-	@@.red;Lips-@@<<if $summaryStats>>[_Slave.lips]<</if>>
-<</if>>
-<<if _Slave.teeth == "crooked">>
-	@@.yellow;Cr Teeth@@
-<<elseif _Slave.teeth == "cosmetic braces">>
-	Cos Braces
-<<elseif _Slave.teeth == "straightening braces">>
-	Braces
-<<elseif _Slave.teeth == "removable">>
-	Rem Teeth
-<<elseif _Slave.teeth == "pointy">>
-	Fangs
-<</if>>
-<<if _Slave.muscles > 95>>
-	Musc++<<if $summaryStats>>[_Slave.muscles]<</if>>
-<<elseif _Slave.muscles > 50>>
-	Musc+<<if $summaryStats>>[_Slave.muscles]<</if>>
-<<elseif _Slave.muscles > 5>>
-	Fit<<if $summaryStats>>[_Slave.muscles]<</if>>
-<<elseif _Slave.muscles > -6>>
-	Soft<<if $summaryStats>>[_Slave.muscles]<</if>>
-<<elseif _Slave.muscles > -31>>
-	<<if $arcologies[0].FSPhysicalIdealist == "unset">>
-		@@.red;Weak@@<<if $summaryStats>>[_Slave.muscles]<</if>>
-	<<else>>
-		Soft<<if $summaryStats>>[_Slave.muscles]<</if>>
-	<</if>>
-<<elseif _Slave.muscles > -96>>
-	<<if $arcologies[0].FSPhysicalIdealist == "unset">>
-		@@.red;Weak+@@<<if $summaryStats>>[_Slave.muscles]<</if>>
-	<<else>>
-		Soft+<<if $summaryStats>>[_Slave.muscles]<</if>>
-	<</if>>
-<<else>>
-	@@.red;Weak++@@<<if $summaryStats>>[_Slave.muscles]<</if>>
-<</if>>
-<<if _Slave.amp != 0>>
-  <<if _Slave.amp == -1>>
-	P-Limbs
-  <<elseif _Slave.amp == -2>>
-	Sex P-Limbs
-  <<elseif _Slave.amp == -3>>
-	Beauty P-Limbs
-  <<elseif _Slave.amp == -4>>
-	Combat P-Limbs
-  <<elseif _Slave.amp == -5>>
-	Cyber P-Limbs
-  <<else>>
-	Amp
-  <</if>>
-<</if>>
-<<if !canWalk(_Slave)>>
-	Immob
-<</if>>
-<<if _Slave.heels == 1>>
-	Heel
-<</if>>
-@@
-<<if _Slave.voice == 0>>
-	@@.pink;Mute@@
-<<else>>
-	<<if _Slave.accent == 3>>
-		@@.red;Acc--@@
-	<<elseif _Slave.accent == 2>>
-		Acc-
-	<<elseif _Slave.accent == 4>>
-		Acc--
-	<<elseif _Slave.accent == 1>>
-		@@.pink;Acc@@
-	<</if>>
-<</if>>
-@@.pink;
-<<if (_Slave.boobs >= 12000) && (_Slave.butt > 9)>>
-	T&A+++
-<<elseif (_Slave.boobs > 4000) && (_Slave.butt > 8)>>
-	T&A++
-<<elseif (_Slave.boobs > 2000) && (_Slave.butt > 6)>>
-	T&A+
-<<elseif (_Slave.boobs > 800) && (_Slave.butt > 4)>>
-	T&A
-<<elseif (_Slave.boobs < 500) && (_Slave.butt < 3) && (_Slave.weight <= 10) && (_Slave.muscles <= 30)>>
-	Girlish
-<<elseif _Slave.boobs >= 12000>>
-	Boobs+++
-<<elseif _Slave.boobs > 4000>>
-	Boobs++
-<<elseif _Slave.boobs > 2000>>
-	Boobs+
-<<elseif _Slave.boobs > 800>>
-	Boobs
-<<elseif _Slave.butt > 9>>
-	Ass+++
-<<elseif _Slave.butt > 8>>
-	Ass++
-<<elseif _Slave.butt > 6>>
-	Ass+
-<<elseif _Slave.butt > 4>>
-	Ass
-<</if>>
-@@
-@@.red;
-<<if _Slave.hips < -1>>
-<<if _Slave.butt > 2 && ($arcologies[0].FSTransformationFetishist < 20 || $arcologies[0].FSTransformationFetishist == "unset") && ($arcologies[0].FSHedonisticDecadence < 20 || $arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disp+
-<</if>>
-<<elseif _Slave.hips < 0>>
-<<if _Slave.butt > 4 && ($arcologies[0].FSTransformationFetishist < 20 || $arcologies[0].FSTransformationFetishist == "unset") && ($arcologies[0].FSHedonisticDecadence < 20 || $arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disp+
-<</if>>
-<<elseif _Slave.hips > 2>>
-<<if _Slave.butt <= 8>>
-	Disp-
-<</if>>
-<<elseif _Slave.hips > 1>>
-<<if _Slave.butt <= 3 && ($arcologies[0].FSSlimnessEnthusiast == "unset" || (_Slave.boobs >= 500))>>
-	Disp-
-<</if>>
-<<elseif _Slave.hips > 0>>
-<<if _Slave.butt > 8>>
-<<if ($arcologies[0].FSTransformationFetishist < 20 || $arcologies[0].FSTransformationFetishist == "unset") && ($arcologies[0].FSHedonisticDecadence < 20 || $arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disp+
-<</if>>
-<<elseif _Slave.butt <= 2 && ($arcologies[0].FSSlimnessEnthusiast == "unset" || (_Slave.boobs >= 500))>>
-	Disp-
-<</if>>
-<<else>>
-<<if _Slave.butt > 6>>
-<<if ($arcologies[0].FSTransformationFetishist < 20 || $arcologies[0].FSTransformationFetishist == "unset") && ($arcologies[0].FSHedonisticDecadence < 20 || $arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disp+
-<</if>>
-<<elseif _Slave.butt <= 1 && ($arcologies[0].FSSlimnessEnthusiast == "unset" || (_Slave.boobs >= 500))>>
-	Disp-
-<</if>>
-<</if>>
-@@
-<<if _Slave.waist > 95>>@@.red;Wst---<<if $summaryStats>>[_Slave.waist]<</if>>@@
-<<elseif _Slave.waist > 40>>@@.red;Wst--<<if $summaryStats>>[_Slave.waist]<</if>>@@
-<<elseif _Slave.waist > 10>>@@.red;Wst-<<if $summaryStats>>[_Slave.waist]<</if>>@@
-<<elseif _Slave.waist >= -10>>Wst<<if $summaryStats>>[_Slave.waist]<</if>>
-<<elseif _Slave.waist >= -40>>@@.pink;Wst+<<if $summaryStats>>[_Slave.waist]<</if>>@@
-<<elseif _Slave.waist >= -95>>@@.pink;Wst++<<if $summaryStats>>[_Slave.waist]<</if>>@@
-<<else>>@@.pink;Wst+++<<if $summaryStats>>[_Slave.waist]<</if>>@@
-<</if>>
-@@.pink;
-<<if (_Slave.boobsImplant == 0) && (_Slave.buttImplant == 0) && (_Slave.waist >= -95) && (_Slave.lipsImplant == 0) && (_Slave.faceImplant <= 5) && (_Slave.bellyImplant == -1)>>
-	Natr
-<<else>>
-	Impl
-<</if>>
-<<if _Slave.lactation == 1>>
-	Lact
-<<elseif _Slave.lactation == 2>>
-	Lact++
-<</if>>
-<<run modScore(_Slave)>>
-<<if _Slave.corsetPiercing == 0 && $piercingScore < 3 && $tatScore < 2>>
-<<elseif $modScore > 15 || ($piercingScore > 8 && $tatScore > 5)>>
-	Mods++
-<<elseif $modScore > 7>>
-	Mods+
-<<else>>
-	Mods
-<</if>>
-<<if _Slave.brand != 0>>
-	Br
-<</if>>
-@@
-<<elseif $abbreviatePhysicals == 2>>
-@@.pink;
-<<if $showAgeDetail == 1>>
-	Age _Slave.actualAge.
-<<elseif _Slave.actualAge >= 40>>
-	Forties.
-<<elseif _Slave.actualAge >= 35>>
-	Late thirties.
-<<elseif _Slave.actualAge >= 30>>
-	Early thirties.
-<<elseif _Slave.actualAge >= 25>>
-	Late twenties.
-<<elseif _Slave.actualAge >= 20>>
-	Early twenties.
-<<elseif _Slave.actualAge >= 19>>
-	Nineteen.
-<<elseif _Slave.actualAge >= 18>>
-	Eighteen.
-<<else>>
-	Underage.
-<</if>>
-/*
-**  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
-**  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
-*/
-<<if ((_Slave.inducedNCS == 0) || (_Slave.visualAge >= _Slave.physicalAge))>>
-        <<if _Slave.actualAge != _Slave.physicalAge>>
-                _Slave.physicalAge year old body.
-        <</if>>
-        <<if _Slave.visualAge != _Slave.physicalAge>>
-                Looks _Slave.visualAge.
-        <</if>>
-<<else>>
-        /*
-        **  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
-        **  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
-        **  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
-        **  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
-        **  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
-        **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
-        **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
-        */
-        Appears to have a _Slave.visualAge year old body.
-<</if>>
-<<if _Slave.inducedNCS == 1>>
-        (@@.orange;NCS@@)
-<</if>>
-<<if _Slave.face < -95>>
-	@@.red;Very ugly<<if $summaryStats>> [_Slave.face]<</if>>@@
-<<elseif _Slave.face < -40>>
-	@@.red;Ugly<<if $summaryStats>> [_Slave.face]<</if>>@@
-<<elseif _Slave.face < -10>>
-	@@.red;Unattractive<<if $summaryStats>> [_Slave.face]<</if>>@@
-<<elseif _Slave.face <= 10>>
-	Average<<if $summaryStats>> [_Slave.face]<</if>>
-<<elseif _Slave.face <= 40>>
-	@@.pink;Attractive<<if $summaryStats>> [_Slave.face]<</if>>@@
-<<elseif _Slave.face <= 95>>
-	@@.pink;Beautiful<<if $summaryStats>> [_Slave.face]<</if>>@@
-<<else>>
-	@@.pink;Very beautiful<<if $summaryStats>> [_Slave.face]<</if>>@@
-<</if>>
-_Slave.faceShape face.
-<<if _Slave.eyes <= -2>>
-	@@.red;Blind.@@
-<<elseif ((_Slave.eyes <= -1) && (_Slave.eyewear != "corrective glasses") && (_Slave.eyewear != "corrective contacts"))>>
-	@@.yellow;Nearsighted.@@
-<</if>>
-<<if _Slave.lips > 95>>
-	Facepussy<<if $summaryStats>> [_Slave.lips]<</if>>.
-<<elseif _Slave.lips > 70>>
-	Huge lips<<if $summaryStats>> [_Slave.lips]<</if>>.
-<<elseif _Slave.lips > 40>>
-	Big lips<<if $summaryStats>> [_Slave.lips]<</if>>.
-<<elseif _Slave.lips > 20>>
-	Pretty lips<<if $summaryStats>> [_Slave.lips]<</if>>.
-<<elseif _Slave.lips > 10>>
-	Normal lips<<if $summaryStats>> [_Slave.lips]<</if>>.
-<<else>>
-	@@.red;Thin lips<<if $summaryStats>> [_Slave.lips]<</if>>.@@
-<</if>>
-<<if _Slave.teeth == "crooked">>
-	@@.yellow;Crooked teeth.@@
-<<elseif _Slave.teeth == "cosmetic braces">>
-	Cosmetic braces.
-<<elseif _Slave.teeth == "straightening braces">>
-	Braces.
-<<elseif _Slave.teeth == "removable">>
-	Removable teeth.
-<<elseif _Slave.teeth == "pointy">>
-	Sharp fangs.
-<</if>>
-<<if _Slave.muscles > 95>>
-	Hugely muscular<<if $summaryStats>> [_Slave.muscles]<</if>>.
-<<elseif _Slave.muscles > 50>>
-	Muscular<<if $summaryStats>> [_Slave.muscles]<</if>>.
-<<elseif _Slave.muscles > 5>>
-	Fit<<if $summaryStats>> [_Slave.muscles]<</if>>.
-<<elseif _Slave.muscles > -6>>
-	Soft<<if $summaryStats>> [_Slave.muscles]<</if>>.
-<<elseif _Slave.muscles > -31>>
-	<<if $arcologies[0].FSPhysicalIdealist == "unset">>
-		@@.red;Weak<<if $summaryStats>> [_Slave.muscles]<</if>>.@@
-	<<else>>
-		Weak<<if $summaryStats>> [_Slave.muscles]<</if>>.
-	<</if>>
-<<elseif _Slave.muscles > -96>>
-	<<if $arcologies[0].FSPhysicalIdealist == "unset">>
-		@@.red;Very weak<<if $summaryStats>> [_Slave.muscles]<</if>>.@@
-	<<else>>
-		Very weak<<if $summaryStats>> [_Slave.muscles]<</if>>.
-	<</if>>
-<<else>>
-	@@.red;Frail<<if $summaryStats>> [_Slave.muscles]<</if>>.@@
-<</if>>
-<<if _Slave.amp != 0>>
-	<<if _Slave.amp == -1>>
-	Prosthetic limbs.
-	<<elseif _Slave.amp == -2>>
-	Sexy prosthetic limbs.
-	<<elseif _Slave.amp == -3>>
-	Beautiful prosthetic limbs.
-	<<elseif _Slave.amp == -4>>
-	Deadly prosthetic limbs.
-	<<elseif _Slave.amp == -5>>
-	Cyber prosthetic limbs.
-	<<else>>
-	Amputee.
-	<</if>>
-<</if>>
-<<if !canWalk(_Slave)>>
-	Immobile.
-<</if>>
-<<if _Slave.heels == 1>>
-	Heeled.
-<</if>>
-@@
-<<if _Slave.voice == 0>>
-	@@.pink;Mute.@@
-<<else>>
-	<<if _Slave.accent == 3>>
-		@@.red;Bad accent.@@
-	<<elseif _Slave.accent == 4>>
-		@@.red;No language skills.@@
-	<<elseif _Slave.accent == 2>>
-		Accent.
-	<<elseif _Slave.accent == 1>>
-		@@.pink;Cute accent.@@
-	<</if>>
-<</if>>
-@@.pink;
-<<if (_Slave.boobs >= 12000) && (_Slave.butt > 9)>>
-	Hyper T&A.
-<<elseif (_Slave.boobs > 4000) && (_Slave.butt > 8)>>
-	Enormous T&A.
-<<elseif (_Slave.boobs > 2000) && (_Slave.butt > 6)>>
-	Huge T&A.
-<<elseif (_Slave.boobs > 800) && (_Slave.butt > 4)>>
-	Big T&A.
-<<elseif (_Slave.boobs < 500) && (_Slave.butt < 3) && (_Slave.weight <= 10) && (_Slave.muscles <= 30)>>
-	Girlish figure.
-<<elseif _Slave.boobs >= 12000>>
-	Immobilizing tits.
-<<elseif _Slave.boobs > 4000>>
-	Monstrous tits.
-<<elseif _Slave.boobs > 2000>>
-	Huge tits.
-<<elseif _Slave.boobs > 800>>
-	Big tits.
-<<elseif _Slave.butt > 9>>
-	Hyper ass.
-<<elseif _Slave.butt > 8>>
-	Titanic ass.
-<<elseif _Slave.butt > 6>>
-	Huge ass.
-<<elseif _Slave.butt > 4>>
-	Big ass.
-<</if>>
-@@
-@@.red;
-<<if _Slave.hips < -1>>
-<<if _Slave.butt > 2 && ($arcologies[0].FSTransformationFetishist < 20 || $arcologies[0].FSTransformationFetishist == "unset") && ($arcologies[0].FSHedonisticDecadence < 20 || $arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disproportionately big butt.
-<</if>>
-<<elseif _Slave.hips < 0>>
-<<if _Slave.butt > 4 && ($arcologies[0].FSTransformationFetishist < 20 || $arcologies[0].FSTransformationFetishist == "unset") && ($arcologies[0].FSHedonisticDecadence < 20 || $arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disproportionately big butt.
-<</if>>
-<<elseif _Slave.hips > 2>>
-<<if _Slave.butt <= 8>>
-	Disproportionately small butt.
-<</if>>
-<<elseif _Slave.hips > 1>>
-<<if _Slave.butt <= 3 && (($arcologies[0].FSSlimnessEnthusiast == "unset") || (_Slave.boobs >= 500))>>
-	Disproportionately small butt.
-<</if>>
-<<elseif _Slave.hips > 0>>
-<<if _Slave.butt > 8>>
-<<if ($arcologies[0].FSTransformationFetishist < 20 || $arcologies[0].FSTransformationFetishist == "unset") && ($arcologies[0].FSHedonisticDecadence < 20 || $arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disproportionately big butt.
-<</if>>
-<<elseif _Slave.butt <= 2 && (($arcologies[0].FSSlimnessEnthusiast == "unset") || (_Slave.boobs >= 500))>>
-	Disproportionately small butt.
-<</if>>
-<<else>>
-<<if _Slave.butt > 6>>
-<<if ($arcologies[0].FSTransformationFetishist < 20 || $arcologies[0].FSTransformationFetishist == "unset") && ($arcologies[0].FSHedonisticDecadence < 20 || $arcologies[0].FSHedonisticDecadence == "unset")>>
-	Disproportionately big butt.
-<</if>>
-<<elseif _Slave.butt <= 1 && (($arcologies[0].FSSlimnessEnthusiast == "unset") || (_Slave.boobs >= 500))>>
-	Disproportionately small butt.
-<</if>>
-<</if>>
-@@
-<<if _Slave.waist > 95>>
-@@.red;Masculine waist<<if $summaryStats>> [_Slave.waist]<</if>>.@@
-<<elseif _Slave.waist > 40>>@@.red;Ugly waist<<if $summaryStats>> [_Slave.waist]<</if>>.@@
-<<elseif _Slave.waist > 10>>@@.red;Unattractive waist<<if $summaryStats>> [_Slave.waist]<</if>>.@@
-<<elseif _Slave.waist >= -10>>Average waist<<if $summaryStats>> [_Slave.waist]<</if>>.
-<<elseif _Slave.waist >= -40>>@@.pink;Feminine waist<<if $summaryStats>> [_Slave.waist]<</if>>.@@
-<<elseif _Slave.waist >= -95>>@@.pink;Hourglass waist<<if $summaryStats>> [_Slave.waist]<</if>>.@@
-<<else>>@@.pink;Absurdly narrow waist<<if $summaryStats>> [_Slave.waist]<</if>>.@@
-<</if>>
-@@.pink;
-<<if (_Slave.boobsImplant != 0) || (_Slave.buttImplant != 0) || (_Slave.lipsImplant != 0) || (_Slave.bellyImplant != -1)>>
-	Implants.
-<<elseif (_Slave.faceImplant >= 30) || (_Slave.waist < -95)>>
-	Surgery enhanced.
-<<else>>
-	All natural.
-<</if>>
-<<if _Slave.lactation == 1>>
-	Lactating naturally.
-<<elseif _Slave.lactation == 2>>
-	Heavy lactation.
-<</if>>
-<<run modScore(_Slave)>>
-<<if _Slave.corsetPiercing == 0 && $piercingScore < 3 && $tatScore < 2>>
-<<elseif $modScore > 15 || ($piercingScore > 8 && $tatScore > 5)>>
-	Extensive body mods.
-<<elseif $modScore > 7>>
-	Noticeable body mods.
-<<else>>
-	Light body mods.
-<</if>>
-<<if _Slave.brand != 0>>
-	Branded.
-<</if>>
-@@
-<</if>>
-
-<br><<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
-
-<<if $abbreviateSkills == 1>>
-<<if _Slave.fetish == "mindbroken">>
-<<elseif _Slave.intelligenceImplant == 1>>
-<<switch _Slave.intelligence>>
-<<case 3>>
-	@@.deepskyblue;I+++(e)@@
-<<case 2>>
-	@@.deepskyblue;I++(e)@@
-<<case 1>>
-	@@.deepskyblue;I+(e)@@
-<<case -1>>
-	@@.orangered;I-(e)@@
-<<case -2>>
-	@@.orangered;I--(e)@@
-<<case -3>>
-	@@.orangered;I---(e)@@
-<<default>>
-	I(e)
-<</switch>>
-<<else>>
-<<switch _Slave.intelligence>>
-<<case 3>>
-	@@.deepskyblue;I+++@@
-<<case 2>>
-	@@.deepskyblue;I++@@
-<<case 1>>
-	@@.deepskyblue;I+@@
-<<case -1>>
-	@@.orangered;I-@@
-<<case -2>>
-	@@.orangered;I--@@
-<<case -3>>
-	@@.orangered;I---@@
-<<default>>
-	I
-<</switch>>
-<</if>>
-
-<<set _SSkills = _Slave.analSkill+_Slave.oralSkill>>
-@@.aquamarine;
-<<if ((_SSkills+_Slave.whoreSkill+_Slave.entertainSkill) >= 400) && ((_Slave.vagina < 0) || (_Slave.vaginalSkill >= 100))>>
-	MSS
-<<else>>
-	<<set _SSkills += _Slave.vaginalSkill>>
-	<<set _SSkills = Math.trunc(_SSkills)>>
-	<<if _SSkills > 180>>S++
-		<<elseif (_SSkills > 120) && (_Slave.vagina < 0)>>Sh++
-		<<elseif _SSkills > 90>>S+
-		<<elseif _SSkills > 30>>S
-		<<else>>S-
-	<</if>>
-	<<if $summaryStats>>[_SSkills]<</if>>
-	<<if _Slave.whoreSkill >= 100>>W+++
-		<<elseif _Slave.whoreSkill > 60>>W++
-		<<elseif _Slave.whoreSkill > 30>>W+
-		<<elseif _Slave.whoreSkill > 10>>W
-	<</if>>
-	<<if _Slave.whoreSkill > 10>>
-		<<if $summaryStats>>[_Slave.whoreSkill]<</if>>
-	<</if>>
-	<<if _Slave.entertainSkill >= 100>>E+++
-		<<elseif _Slave.entertainSkill > 60>>E++
-		<<elseif _Slave.entertainSkill > 30>>E+
-		<<elseif _Slave.entertainSkill > 10>>E
-	<</if>>
-	<<if _Slave.entertainSkill > 10>>
-		<<if $summaryStats>>[_Slave.entertainSkill]<</if>>
-	<</if>>
-<</if>>
-<<if _Slave.combatSkill > 0>>
-	C
-<</if>>
-@@
-<<if _Slave.prestige > 0>>
-@@.green;
-<<if _Slave.prestige > 2>>
-	Prest++
-<<elseif _Slave.prestige == 2>>
-	Prest+
-<<elseif _Slave.prestige == 1>>
-	Prest
-<</if>>
-@@
-<</if>>
-<<elseif $abbreviateSkills == 2>>
-<<if _Slave.fetish == "mindbroken">>
-<<elseif _Slave.intelligenceImplant == 1>>
-<<switch _Slave.intelligence>>
-<<case 3>>
-	@@.deepskyblue;Brilliant, educated.@@
-<<case 2>>
-	@@.deepskyblue;Very smart, educated.@@
-<<case 1>>
-	@@.deepskyblue;Smart, educated.@@
-<<case -1>>
-	@@.orangered;Slow, educated.@@
-<<case -2>>
-	@@.orangered;Very slow, educated.@@
-<<case -3>>
-	@@.orangered;Moronic, educated.@@
-<<default>>
-	Average intelligence, educated.
-<</switch>>
-<<else>>
-<<switch _Slave.intelligence>>
-<<case 3>>
-	@@.deepskyblue;Brilliant.@@
-<<case 2>>
-	@@.deepskyblue;Very smart.@@
-<<case 1>>
-	@@.deepskyblue;Smart.@@
-<<case -1>>
-	@@.orangered;Slow.@@
-<<case -2>>
-	@@.orangered;Very slow.@@
-<<case -3>>
-	@@.orangered;Moronic.@@
-<<default>>
-	Average intelligence.
-<</switch>>
-<</if>>
-<<set _SSkills = (_Slave.analSkill+_Slave.oralSkill)>>
-@@.aquamarine;
-<<if ((_SSkills+_Slave.whoreSkill+_Slave.entertainSkill) >= 400) && ((_Slave.vagina < 0) || (_Slave.vaginalSkill >= 100))>>
-	Masterful Sex Slave.
-<<else>>
-	<<set _SSkills += _Slave.vaginalSkill>>
-	<<if _SSkills > 180>>
-		Sex master<<if $summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<<elseif (_SSkills > 120) && (_Slave.vagina < 0)>>
-		Masterful shemale<<if $summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<<elseif _SSkills > 90>>
-		Sexual expert<<if $summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<<elseif _SSkills > 30>>
-		Sexually skilled<<if $summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<<else>>
-		Sexually unskilled<<if $summaryStats>><<set _SSkills = Math.trunc(_SSkills)>> [_SSkills]<</if>>.
-	<</if>>
-	<<if _Slave.whoreSkill >= 100>>
-		Masterful whore<<if $summaryStats>> [_Slave.whoreSkill]<</if>>.
-	<<elseif _Slave.whoreSkill >= 60>>
-		Expert whore<<if $summaryStats>> [_Slave.whoreSkill]<</if>>.
-	<<elseif _Slave.whoreSkill >= 30>>
-		Skilled whore<<if $summaryStats>> [_Slave.whoreSkill]<</if>>.
-	<<elseif _Slave.whoreSkill >= 10>>
-		Basic whore<<if $summaryStats>> [_Slave.whoreSkill]<</if>>.
-	<</if>>
-	<<if _Slave.entertainSkill >= 100>>
-		Masterful entertainer<<if $summaryStats>> [_Slave.entertainSkill]<</if>>.
-	<<elseif _Slave.entertainSkill >= 60>>
-		Expert entertainer<<if $summaryStats>> [_Slave.entertainSkill]<</if>>.
-	<<elseif _Slave.entertainSkill >= 30>>
-		Skilled entertainer<<if $summaryStats>> [_Slave.entertainSkill]<</if>>.
-	<<elseif _Slave.entertainSkill >= 10>>
-		Basic entertainer<<if $summaryStats>> [_Slave.entertainSkill]<</if>>.
-	<</if>>
-<</if>>
-<<if _Slave.combatSkill > 0>>
-	Trained fighter.
-<</if>>
-@@
-<<if _Slave.prestige > 0>>
-@@.green;
-<<if _Slave.prestige > 2>>
-	Extremely prestigious.
-<<elseif _Slave.prestige == 2>>
-	Very prestigious.
-<<elseif _Slave.prestige == 1>>
-	Prestigious.
-<</if>>
-@@
-<</if>>
-<</if>>
-
-<<if $abbreviateMental == 1>>
-	<<if _Slave.fetish != "mindbroken">>
-	<<if _Slave.fetishKnown == 1>>
-	@@.lightcoral;
-	<<switch _Slave.fetish>>
-	<<case "submissive">>
-	<<if _Slave.fetishStrength > 95>>
-		Sub++
-	<<elseif _Slave.fetishStrength > 60>>
-		Sub+
-	<<else>>
-		Sub
-	<</if>>
-	<<case "cumslut">>
-	<<if _Slave.fetishStrength > 95>>
-		Oral++
-	<<elseif _Slave.fetishStrength > 60>>
-		Oral+
-	<<else>>
-		Oral
-	<</if>>
-	<<case "humiliation">>
-	<<if _Slave.fetishStrength > 95>>
-		Humil++
-	<<elseif _Slave.fetishStrength > 60>>
-		Humil+
-	<<else>>
-		Humil
-	<</if>>
-	<<case "buttslut">>
-	<<if _Slave.fetishStrength > 95>>
-		Anal++
-	<<elseif _Slave.fetishStrength > 60>>
-		Anal+
-	<<else>>
-		Anal
-	<</if>>
-	<<case "boobs">>
-	<<if _Slave.fetishStrength > 95>>
-		Boobs++
-	<<elseif _Slave.fetishStrength > 60>>
-		Boobs+
-	<<else>>
-		Boobs
-	<</if>>
-	<<case "sadist">>
-	<<if _Slave.fetishStrength > 95>>
-		Sadist++
-	<<elseif _Slave.fetishStrength > 60>>
-		Sadist+
-	<<else>>
-		Sadist
-	<</if>>
-	<<case "masochist">>
-	<<if _Slave.fetishStrength > 95>>
-		Pain++
-	<<elseif _Slave.fetishStrength > 60>>
-		Pain+
-	<<else>>
-		Pain
-	<</if>>
-	<<case "dom">>
-	<<if _Slave.fetishStrength > 95>>
-		Dom++
-	<<elseif _Slave.fetishStrength > 60>>
-		Dom+
-	<<else>>
-		Dom
-	<</if>>
-	<<case "pregnancy">>
-	<<if _Slave.fetishStrength > 95>>
-		Preg++
-	<<elseif _Slave.fetishStrength > 60>>
-		Preg+
-	<<else>>
-		Preg
-	<</if>>
-	<<default>>
-		Vanilla
-	<</switch>>
-	<<if $summaryStats>>[_Slave.fetishStrength]<</if>>
-	@@
-	<</if>>
-	<<if _Slave.attrKnown == 1>>
-	<<if _Slave.attrXY <= 5>>
-		@@.red;XY---<<if $summaryStats>>[_Slave.attrXY]<</if>>@@
-	<<elseif _Slave.attrXY <= 15>>
-		@@.red;XY--<<if $summaryStats>>[_Slave.attrXY]<</if>>@@
-	<<elseif _Slave.attrXY <= 35>>
-		@@.red;XY-<<if $summaryStats>>[_Slave.attrXY]<</if>>@@
-	<<elseif _Slave.attrXY <= 65>>
-		XY<<if $summaryStats>>[_Slave.attrXY]<</if>>
-	<<elseif _Slave.attrXY <= 85>>
-		@@.green;XY+<<if $summaryStats>>[_Slave.attrXY]<</if>>@@
-	<<elseif _Slave.attrXY <= 95>>
-		@@.green;XY++<<if $summaryStats>>[_Slave.attrXY]<</if>>@@
-	<<elseif _Slave.attrXX > 95>>
-		<<if _Slave.energy <= 95>>
-			@@.green;Omni!@@
-		<<else>>
-			@@.green;Omni+Nympho!!@@
-		<</if>>
-	<<else>>
-		@@.green;XY+++<<if $summaryStats>>[_Slave.attrXY]<</if>>@@
-	<</if>>
-	<<if _Slave.attrXX <= 5>>
-		@@.red;XX---<<if $summaryStats>>[_Slave.attrXX]<</if>>@@
-	<<elseif _Slave.attrXX <= 15>>
-		@@.red;XX--<<if $summaryStats>>[_Slave.attrXX]<</if>>@@
-	<<elseif _Slave.attrXX <= 35>>
-		@@.red;XX-<<if $summaryStats>>[_Slave.attrXX]<</if>>@@
-	<<elseif _Slave.attrXX <= 65>>
-		XX<<if $summaryStats>>[_Slave.attrXX]<</if>>
-	<<elseif _Slave.attrXX <= 85>>
-		@@.green;XX+<<if $summaryStats>>[_Slave.attrXX]<</if>>@@
-	<<elseif _Slave.attrXX <= 95>>
-		@@.green;XX++<<if $summaryStats>>[_Slave.attrXX]<</if>>@@
-	<<elseif _Slave.attrXY <= 95>>
-		@@.green;XX+++<<if $summaryStats>>[_Slave.attrXX]<</if>>@@
-	<</if>>
-	<<if _Slave.energy > 95>>
-		<<if (_Slave.attrXY <= 95) || (_Slave.attrXX <= 95)>>
-			@@.green;Nympho!@@
-		<</if>>
-	<<elseif _Slave.energy > 80>>
-		@@.green;SD++<<if $summaryStats>>[_Slave.energy]<</if>>@@
-	<<elseif _Slave.energy > 60>>
-		@@.green;SD+<<if $summaryStats>>[_Slave.energy]<</if>>@@
-	<<elseif _Slave.energy > 40>>
-		@@.yellow;SD<<if $summaryStats>>[_Slave.energy]<</if>>@@
-	<<elseif _Slave.energy > 20>>
-		@@.red;SD-<<if $summaryStats>>[_Slave.energy]<</if>>@@
-	<<else>>
-		@@.red;SD--<<if $summaryStats>>[_Slave.energy]<</if>>@@
-		<</if>>
-	<</if>>
-	<</if>>
-	<<if _Slave.clitPiercing == 3>>
-		<<if _Slave.fetishKnown == 1>>
-			<<if _Slave.clitSetting == "off">>
-				SP-
-			<<elseif ((_Slave.fetish != "submissive") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "submissive")>>
-				SP:sub
-			<<elseif ((_Slave.fetish != "cumslut") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "oral")>>
-				SP:oral
-			<<elseif ((_Slave.fetish != "humiliation") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "humiliation")>>
-				SP:humil
-			<<elseif ((_Slave.fetish != "buttslut") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "anal")>>
-				SP:anal
-			<<elseif ((_Slave.fetish != "boobs") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "boobs")>>
-				SP:boobs
-			<<elseif ((_Slave.fetish != "sadist") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "sadist")>>
-				SP:sade
-			<<elseif ((_Slave.fetish != "masochist") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "masochist")>>
-				SP:pain
-			<<elseif ((_Slave.fetish != "dom") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "dom")>>
-				SP:dom
-			<<elseif ((_Slave.fetish != "pregnancy") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "pregnancy")>>
-				SP:preg
-			<<elseif ((_Slave.fetish != "none") && (_Slave.clitSetting == "vanilla"))>>
-				SP:vanilla
-			<<elseif (_Slave.energy <= 95) && (_Slave.clitSetting == "all")>>
-				SP:all
-			<<elseif (_Slave.energy > 5) && (_Slave.clitSetting == "none")>>
-				SP:none
-			<<elseif !["women", "men", "anti-women", "anti-men"].includes(_Slave.clitSetting)>>
-				SP:monitoring
-			<</if>>
-		<<else>>
-			<<switch _Slave.clitSetting>>
-			<<case "off">>
-				SP-
-			<<case "submissive">>
-				SP:sub
-			<<case "lesbian">>
-				SP:les
-			<<case "oral">>
-				SP:oral
-			<<case "humiliation">>
-				SP:humil
-			<<case "anal">>
-				SP:anal
-			<<case "boobs">>
-				SP:boobs
-			<<case "sadist">>
-				SP:sade
-			<<case "masochist">>
-				SP:pain
-			<<case "dom">>
-				SP:dom
-			<<case "pregnancy">>
-				SP:pregnancy
-			<<case "vanilla">>
-				SP:vanilla
-			<<case "all">>
-				SP:all
-			<<case "none">>
-				SP:none
-			<</switch>>
-		<</if>>
-		<<if _Slave.attrKnown == 1>>
-			<<if _Slave.clitSetting == "women">>
-				<<if _Slave.attrXX < 95>>SP:women<<else>>SP:monitoring<</if>>
-			<<elseif _Slave.clitSetting == "men">>
-				<<if _Slave.attrXY < 95>>SP:men<<else>>SP:monitoring<</if>>
-			<<elseif _Slave.clitSetting == "anti-women">>
-				<<if _Slave.attrXX > 0>>SP:anti-women<<else>>SP:monitoring<</if>>
-			<<elseif _Slave.clitSetting == "anti-men">>
-				<<if _Slave.attrXY > 0>>SP:anti-men<<else>>SP:monitoring<</if>>
-			<</if>>
-		<<else>>
-			<<if _Slave.clitSetting == "women">>
-				SP:women
-			<<elseif _Slave.clitSetting == "men">>
-				SP:men
-			<<elseif _Slave.clitSetting == "anti-women">>
-				SP:anti-women
-			<<elseif _Slave.clitSetting == "anti-men">>
-				SP:anti-men
-			<</if>>
-		<</if>>
-	<</if>>
-	@@.red;
-	<<switch _Slave.behavioralFlaw>>
-	<<case "arrogant">>
-		Arrog
-	<<case "bitchy">>
-		Bitchy
-	<<case "odd">>
-		Odd
-	<<case "hates men">>
-		Men-
-	<<case "hates women">>
-		Women-
-	<<case "gluttonous">>
-		Glut
-	<<case "anorexic">>
-		Ano
-	<<case "devout">>
-		Dev
-	<<case "liberated">>
-		Lib
-	<<default>>
-		<<set _Slave.behavioralFlaw = "none">>
-	<</switch>>
-	@@
-	<<switch _Slave.sexualFlaw>>
-	<<case "hates oral">>
-		@@.red;Oral-@@
-	<<case "hates anal">>
-		@@.red;Anal-@@
-	<<case "hates penetration">>
-		@@.red;Fuck-@@
-	<<case "shamefast">>
-		@@.red;Shame@@
-	<<case "idealistic">>
-		@@.red;Ideal@@
-	<<case "repressed">>
-		@@.red;Repre@@
-	<<case "apathetic">>
-		@@.red;Apath@@
-	<<case "crude">>
-		@@.red;Crude@@
-	<<case "judgemental">>
-		@@.red;Judge@@
-	<<case "cum addict">>
-		@@.yellow;CumAdd@@
-	<<case "anal addict">>
-		@@.yellow;AnalAdd@@
-	<<case "attention whore">>
-		@@.yellow;Attention@@
-	<<case "breast growth">>
-		@@.yellow;BoobObsess@@
-	<<case "abusive">>
-		@@.yellow;Abusive@@
-	<<case "malicious">>
-		@@.yellow;Malice@@
-	<<case "self hating">>
-		@@.yellow;SelfHatr@@
-	<<case "neglectful">>
-		@@.yellow;SelfNeglect@@
-	<<case "breeder">>
-		@@.yellow;BreedObsess@@
-	<<default>>
-		<<set _Slave.sexualFlaw = "none">>
-	<</switch>>
-	@@.green;
-	<<switch _Slave.behavioralQuirk>>
-	<<case "confident">>
-		Confid
-	<<case "cutting">>
-		Cutting
-	<<case "funny">>
-		Funny
-	<<case "fitness">>
-		Fit
-	<<case "adores women">>
-		Women+
-	<<case "adores men">>
-		Men+
-	<<case "insecure">>
-		Insec
-	<<case "sinful">>
-		Sinf
-	<<case "advocate">>
-		Advoc
-	<<default>>
-		<<set _Slave.behavioralQuirk = "none">>
-	<</switch>>
-	<<switch _Slave.sexualQuirk>>
-	<<case "gagfuck queen">>
-		Gagfuck
-	<<case "painal queen">>
-		Painal
-	<<case "strugglefuck queen">>
-		Struggle
-	<<case "tease">>
-		Tease
-	<<case "romantic">>
-		Romantic
-	<<case "perverted">>
-		Perverted
-	<<case "caring">>
-		Caring
-	<<case "unflinching">>
-		Unflinch
-	<<case "size queen">>
-		SizeQ
-	<<default>>
-		<<set _Slave.sexualQuirk = "none">>
-	<</switch>>
-	@@
-<<elseif $abbreviateMental == 2>>
-	<<if _Slave.fetish != "mindbroken">>
-	<<if _Slave.fetishKnown == 1>>
-		@@.lightcoral;
-		<<switch _Slave.fetish>>
-		<<case "submissive">>
-			<<if _Slave.fetishStrength > 95>>
-				Complete submissive<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Submissive<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Submissive tendencies<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "cumslut">>
-			<<if _Slave.fetishStrength > 95>>
-				Cumslut<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Oral fixation<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Prefers oral<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "humiliation">>
-			<<if _Slave.fetishStrength > 95>>
-				Humiliation slut<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Exhibitionist<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Interest in humiliation<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "buttslut">>
-			<<if _Slave.fetishStrength > 95>>
-				Buttslut<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Anal fixation<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Prefers anal<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "boobs">>
-			<<if _Slave.fetishStrength > 95>>
-				Boobslut<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Breast fixation<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Loves boobs<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "sadist">>
-			<<if _Slave.fetishStrength > 95>>
-				Complete sadist<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Sadist<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Sadistic tendencies<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "masochist">>
-			<<if _Slave.fetishStrength > 95>>
-				Complete masochist<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Masochist<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Masochistic tendencies<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "dom">>
-			<<if _Slave.fetishStrength > 95>>
-				Complete dom<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Dominant<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Dominant tendencies<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<case "pregnancy">>
-			<<if _Slave.fetishStrength > 95>>
-				Pregnancy fetish<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<elseif _Slave.fetishStrength > 60>>
-				Pregnancy kink<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<<else>>
-				Interest in impregnation<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-			<</if>>
-		<<default>>
-			Sexually vanilla<<if $summaryStats>> [_Slave.fetishStrength]<</if>>.
-		<</switch>>
-		@@
-	<</if>>
-	<</if>>
-	<<if _Slave.attrKnown == 1>>
-		<<if _Slave.attrXY <= 5>>
-			@@.red;Disgusted by men<<if $summaryStats>> [_Slave.attrXY]<</if>>,@@
-		<<elseif _Slave.attrXY <= 15>>
-			@@.red;Turned off by men<<if $summaryStats>> [_Slave.attrXY]<</if>>,@@
-		<<elseif _Slave.attrXY <= 35>>
-			@@.red;Not attracted to men<<if $summaryStats>> [_Slave.attrXY]<</if>>,@@
-		<<elseif _Slave.attrXY <= 65>>
-			Indifferent to men<<if $summaryStats>> [_Slave.attrXY]<</if>>,
-		<<elseif _Slave.attrXY <= 85>>
-			@@.green;Attracted to men<<if $summaryStats>> [_Slave.attrXY]<</if>>,@@
-		<<elseif _Slave.attrXY <= 95>>
-			@@.green;Aroused by men<<if $summaryStats>> [_Slave.attrXY]<</if>>,@@
-		<<elseif _Slave.attrXX > 95>>
-			<<if _Slave.energy <= 95>>
-				@@.green;Omnisexual!@@
-			<<else>>
-				@@.green;Omnisexual nymphomaniac!@@
-			<</if>>
-		<<else>>
-			@@.green;Passionate about men<<if $summaryStats>> [_Slave.attrXY]<</if>>,@@
-		<</if>>
-		<<if _Slave.attrXX <= 5>>
-			@@.red;disgusted by women<<if $summaryStats>> [_Slave.attrXX]<</if>>.@@
-		<<elseif _Slave.attrXX <= 15>>
-			@@.red;turned off by women<<if $summaryStats>> [_Slave.attrXX]<</if>>.@@
-		<<elseif _Slave.attrXX <= 35>>
-			@@.red;not attracted to women<<if $summaryStats>> [_Slave.attrXX]<</if>>.@@
-		<<elseif _Slave.attrXX <= 65>>
-			indifferent to women<<if $summaryStats>> [_Slave.attrXX]<</if>>. 
-		<<elseif _Slave.attrXX <= 85>>
-			@@.green;attracted to women<<if $summaryStats>> [_Slave.attrXX]<</if>>.@@
-		<<elseif _Slave.attrXX <= 95>>
-			@@.green;aroused by women<<if $summaryStats>> [_Slave.attrXX]<</if>>.@@
-		<<elseif _Slave.attrXY <= 95>>
-			@@.green;passionate about women<<if $summaryStats>> [_Slave.attrXX]<</if>>.@@
-		<</if>>
-		<<if _Slave.energy > 95>>
-			<<if (_Slave.attrXY <= 95) || (_Slave.attrXX <= 95)>>
-				@@.green;Nymphomaniac!@@
-			<</if>>
-		<<elseif _Slave.energy > 80>>
-			@@.green;Powerful sex drive<<if $summaryStats>> [_Slave.energy]<</if>>.@@
-		<<elseif _Slave.energy > 60>>
-			@@.green;Good sex drive<<if $summaryStats>> [_Slave.energy]<</if>>.@@
-		<<elseif _Slave.energy > 40>>
-			@@.yellow;Average sex drive<<if $summaryStats>> [_Slave.energy]<</if>>.@@
-		<<elseif _Slave.energy > 20>>
-			@@.red;Poor sex drive<<if $summaryStats>> [_Slave.energy]<</if>>.@@
-		<<else>>
-			@@.red;No sex drive<<if $summaryStats>> [_Slave.energy]<</if>>.@@
-		<</if>>
-	<</if>>
-	<<if _Slave.clitPiercing == 3>>
-		<<if _Slave.fetishKnown == 1>>
-			<<if _Slave.clitSetting == "off">>
-				SP off.
-			<<elseif ((_Slave.fetish != "submissive") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "submissive")>>
-				SP: submissive.
-			<<elseif ((_Slave.fetish != "cumslut") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "oral")>>
-				SP: oral.
-			<<elseif ((_Slave.fetish != "humiliation") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "humiliation")>>
-				SP: humiliation.
-			<<elseif ((_Slave.fetish != "buttslut") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "anal")>>
-				SP: anal.
-			<<elseif ((_Slave.fetish != "boobs") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "boobs")>>
-				SP: breasts.
-			<<elseif ((_Slave.fetish != "sadist") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "sadist")>>
-				SP: sadism.
-			<<elseif ((_Slave.fetish != "masochist") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "masochist")>>
-				SP: masochism.
-			<<elseif ((_Slave.fetish != "dom") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "dom")>>
-				SP: dominance.
-			<<elseif ((_Slave.fetish != "pregnancy") || (_Slave.fetishStrength <= 95)) && (_Slave.clitSetting == "pregnancy")>>
-				SP: pregnancy.
-			<<elseif (_Slave.fetish != "none") && (_Slave.clitSetting == "vanilla")>>
-				SP: vanilla.
-			<<elseif (_Slave.energy <= 95) && (_Slave.clitSetting == "all")>>
-				SP: all.
-			<<elseif (_Slave.energy > 5) && (_Slave.clitSetting == "none")>>
-				SP: none.
-			<<elseif !["women", "men", "anti-women", "anti-men"].includes(_Slave.clitSetting)>>
-				SP: monitoring.
-			<</if>>
-		<<else>>
-			<<switch _Slave.clitSetting>>
-			<<case "off">>
-				SP off.
-			<<case "submissive">>
-				SP: submissive.
-			<<case "oral">>
-				SP: oral.
-			<<case "humiliation">>
-				SP: humiliation.
-			<<case "anal">>
-				SP: anal.
-			<<case "boobs">>
-				SP: breasts.
-			<<case "sadist">>
-				SP: sadism.
-			<<case "masochist">>
-				SP: masochism.
-			<<case "dom">>
-				SP: dominance.
-			<<case "pregnancy">>
-				SP: pregnancy.
-			<<case "vanilla">>
-				SP: vanilla.
-			<<case "all">>
-				SP: all.
-			<<case "none">>
-				SP: none.
-			<</switch>>
-		<</if>>
-		<<if _Slave.attrKnown == 1>>
-			<<if (_Slave.attrXX < 100) && (_Slave.clitSetting == "women")>>
-				SP: women.
-			<<elseif (_Slave.attrXY < 100) && (_Slave.clitSetting == "men")>>
-				SP: men.
-			<</if>>
-		<<else>>
-			<<if _Slave.clitSetting == "women">>
-				SP: women.
-			<<elseif _Slave.clitSetting == "men">>
-				SP: men.
-			<</if>>
-		<</if>>
-	<</if>>
-	@@.red;
-	<<switch _Slave.behavioralFlaw>>
-	<<case "arrogant">>
-		Arrogant.
-	<<case "bitchy">>
-		Bitchy.
-	<<case "odd">>
-		Odd.
-	<<case "hates men">>
-		Hates men.
-	<<case "hates women">>
-		Hates women.
-	<<case "gluttonous">>
-		Stress eater.
-	<<case "anorexic">>
-		Anorexic.
-	<<case "devout">>
-		Devoutly religious.
-	<<case "liberated">>
-		Mentally liberated.
-	<<default>>
-		<<set _Slave.behavioralFlaw = "none">>
-	<</switch>>
-	@@
-	<<switch _Slave.sexualFlaw>>
-	<<case "hates oral">>
-		@@.red;Hates oral.@@
-	<<case "hates anal">>
-		@@.red;Hates anal.@@
-	<<case "hates penetration">>
-		@@.red;Hates penetration.@@
-	<<case "shamefast">>
-		@@.red;Shamefast.@@
-	<<case "idealistic">>
-		@@.red;Sexually idealistic.@@
-	<<case "repressed">>
-		@@.red;Sexually repressed.@@
-	<<case "apathetic">>
-		@@.red;Sexually apathetic.@@
-	<<case "crude">>
-		@@.red;Sexually crude.@@
-	<<case "judgemental">>
-		@@.red;Sexually judgemental.@@
-	<<case "cum addict">>
-		@@.yellow;Cum addict.@@
-	<<case "anal addict">>
-		@@.yellow;Anal addict.@@
-	<<case "attention whore">>
-		@@.yellow;Attention whore.@@
-	<<case "breast growth">>
-		@@.yellow;Breast obsession.@@
-	<<case "abusive">>
-		@@.yellow;Sexually abusive.@@
-	<<case "malicious">>
-		@@.yellow;Sexually malicious.@@
-	<<case "self hating">>
-		@@.yellow;Self hatred.@@
-	<<case "neglectful">>
-		@@.yellow;Self neglectful.@@
-	<<case "breeder">>
-		@@.yellow;Breeding obsession.@@
-	<<default>>
-		<<set _Slave.sexualFlaw = "none">>
-	<</switch>>
-	@@.green;
-	<<switch _Slave.behavioralQuirk>>
-	<<case "confident">>
-		Confident.
-	<<case "cutting">>
-		Cutting.
-	<<case "funny">>
-		Funny.
-	<<case "fitness">>
-		Fitness.
-	<<case "adores women">>
-		Adores women.
-	<<case "adores men">>
-		Adores men.
-	<<case "insecure">>
-		Insecure.
-	<<case "sinful">>
-		Sinful.
-	<<case "advocate">>
-		Advocate.
-	<<default>>
-		<<set _Slave.behavioralQuirk = "none">>
-	<</switch>>
-	<<switch _Slave.sexualQuirk>>
-	<<case "gagfuck queen">>
-		Gagfuck queen.
-	<<case "painal queen">>
-		Painal queen.
-	<<case "strugglefuck queen">>
-		Strugglefuck queen.
-	<<case "tease">>
-		Tease.
-	<<case "romantic">>
-		Romantic.
-	<<case "perverted">>
-		Perverted.
-	<<case "caring">>
-		Caring.
-	<<case "unflinching">>
-		Unflinching.
-	<<case "size queen">>
-		Size queen.
-	<<default>>
-		<<set _Slave.sexualQuirk = "none">>
-	<</switch>>
-	@@
-<</if>>
-
-<<if _Slave.customLabel != "">>''@@.yellow;_Slave.customLabel@@''<</if>>
-
-<<if (_Slave.relationship != 0) || (_Slave.relation != 0) || ($abbreviateClothes == 2) || ($abbreviateRulesets == 2)>>
-	<br><<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
-<</if>>
-
-<<if $abbreviateMental == 1>>
-@@.lightgreen;
-<<if $familyTesting == 1>>
-	<<if _Slave.mother > 0>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.mother; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s daughter
-			<<if _Slave.relationshipTarget == $slaves[_ssj].ID>>
-				<<if _Slave.relationship == 1>> & friend
-				<<elseif _Slave.relationship == 2>> & BFF
-				<<elseif _Slave.relationship == 3>> & FWB
-				<<elseif _Slave.relationship == 4>> & lover
-				<<else>> & wife
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-	<<elseif _Slave.mother == -1>>
-		Your daughter
-		<<if _Slave.relationship == -3>>
-			& wife
-			<<set _relationshipHandled = 1>>
-		<<elseif _Slave.relationship == -2>>
-			& lover
-			<<set _relationshipHandled = 1>>
-		<</if>>
-	<</if>>
-	<<if _Slave.father > 0 && _Slave.father != _Slave.mother>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.father; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s daughter
-			<<if _Slave.relationshipTarget == $slaves[_ssj].ID && _relationshipHandled != 1>>
-				<<if _Slave.relationship == 1>> & friend
-				<<elseif _Slave.relationship == 2>> & BFF
-				<<elseif _Slave.relationship == 3>> & FWB
-				<<elseif _Slave.relationship == 4>> & lover
-				<<else>> & wife
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-	<<elseif _Slave.father == -1 && _Slave.mother != -1>>
-		Your daughter
-		<<if _Slave.relationship == -3>>
-			& wife
-			<<set _relationshipHandled = 1>>
-		<<elseif _Slave.relationship == -2>>
-			& lover
-			<<set _relationshipHandled = 1>>
-		<</if>>
-	<</if>>
-	<<if _Slave.daughters == 1>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.mother == _Slave.ID; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s mother
-			<<if _Slave.relationshipTarget == $slaves[_ssj].ID>>
-				<<if _Slave.relationship == 1>> & friend
-				<<elseif _Slave.relationship == 2>> & BFF
-				<<elseif _Slave.relationship == 3>> & FWB
-				<<elseif _Slave.relationship == 4>> & lover
-				<<else>> & wife
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.father == _Slave.ID; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s father
-			<<if _Slave.relationshipTarget == $slaves[_ssj].ID && _relationshipHandled != 1>>
-				<<if _Slave.relationship == 1>> & friend
-				<<elseif _Slave.relationship == 2>> & BFF
-				<<elseif _Slave.relationship == 3>> & FWB
-				<<elseif _Slave.relationship == 4>> & lover
-				<<else>> & wife
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-	<<elseif _Slave.daughters > 1>>
-		multiple daughters
-	<</if>>
-	<<if _Slave.sisters == 1>>
-		<<set _ssj = $slaves.findIndex(function(s) { return areSisters(s, _Slave) > 0; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s sister
-			<<if _Slave.relationshipTarget == $slaves[_ssj].ID>>
-				<<if _Slave.relationship == 1>> & friend
-				<<elseif _Slave.relationship == 2>> & BFF
-				<<elseif _Slave.relationship == 3>> & FWB
-				<<elseif _Slave.relationship == 4>> & lover
-				<<else>> & wife
-				<</if>>
-				<<set _relationshipHandled = 1>>
-			<</if>>
-		<</if>>
-	<<elseif _Slave.sisters > 1>>
-		multiple sisters
-	<</if>>
-	<<if _Slave.relationship > 0 && _relationshipHandled != 1>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.relationshipTarget; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s
-			<<switch _Slave.relationship>>	
-			<<case 1>>
-				friend
-			<<case 2>>
-				BFF
-			<<case 3>>
-				FWB
-			<<case 4>>
-				lover
-			<<case 5>>
-				wife
-			<</switch>>
-		<</if>>
-	<<elseif _Slave.relationship == -3>>
-		Your wife
-	<<elseif _Slave.relationship == -2>>
-		E Bonded
-	<<elseif _Slave.relationship == -1>>
-		E Slut
-	<</if>>
-<<else>>
-	<<if _Slave.relation != 0>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.relationTarget; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s _Slave.relation
-		<</if>>
-	<</if>>
-	<<if _Slave.relationship > 0>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.relationshipTarget; })>>
-		<<if _ssj != -1>>
-			<<switch _Slave.relationship>>
-			<<case 1>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>&<</if>> friend
-			<<case 2>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>&<</if>> BFF
-			<<case 3>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>&<</if>> FWB
-			<<case 4>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>&<</if>> lover
-			<<case 5>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>&<</if>> wife
-			<</switch>>
-		<</if>>
-	<<elseif _Slave.relationship == -3>>
-		Your wife
-	<<elseif _Slave.relationship == -2>>
-		E Bonded
-	<<elseif _Slave.relationship == -1>>
-		E Slut
-	<</if>>
-<</if>>
-@@
-<<set _relationshipHandled = 0>>
-<<if _Slave.rivalry != 0>>
-	&nbsp;&nbsp;&nbsp;&nbsp;
-	<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.rivalryTarget; })>>
-	<<if _ssj != -1>>
-		@@.lightsalmon;
-		<<if _Slave.rivalry <= 1>>
-			Disl <<SlaveFullName $slaves[_ssj]>>
-		<<elseif _Slave.rivalry <= 2>>
-			<<SlaveFullName $slaves[_ssj]>>'s rival
-		<<else>>
-			Hates <<SlaveFullName $slaves[_ssj]>>
-		<</if>>
-		@@
-	<</if>>
-<</if>>
-<<elseif $abbreviateMental == 2>>
-<<if $familyTesting == 1>>
-	<<if _Slave.mother > 0>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.mother; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s @@.lightgreen;daughter<<if _Slave.relationshipTarget == $slaves[_ssj].ID>><<if _Slave.relationship == 1>> and friend<<elseif _Slave.relationship == 2>> and best friend<<elseif _Slave.relationship == 3>> and FWB<<elseif _Slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.@@
-		<</if>>
-	<<elseif _Slave.mother == -1>>
-		Your
-		<<if _Slave.relationship == -3>>
-			@@.lightgreen;daughter and wife.@@
-			<<set _relationshipHandled = 1>>
-		<<elseif _Slave.relationship == -2>>
-			@@.lightgreen;daughter and lover.@@
-			<<set _relationshipHandled = 1>>
-		<<else>>
-			@@.lightgreen;daughter.@@
-		<</if>>
-	<</if>>
-	<<if _Slave.father > 0 && _Slave.father != _Slave.mother>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.father; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s @@.lightgreen;daughter<<if _Slave.relationshipTarget == $slaves[_ssj].ID>><<if _Slave.relationship == 1>> and friend<<elseif _Slave.relationship == 2>> and best friend<<elseif _Slave.relationship == 3>> and FWB<<elseif _Slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.@@
-		<</if>>
-	<<elseif _Slave.father == -1 && _Slave.father != _Slave.mother>>
-		Your
-		<<if _Slave.relationship == -3>>
-			@@.lightgreen;daughter and wife.@@
-			<<set _relationshipHandled = 1>>
-		<<elseif _Slave.relationship == -2>>
-			@@.lightgreen;daughter and lover.@@
-			<<set _relationshipHandled = 1>>
-		<<else>>
-			@@.lightgreen;daughter.@@
-		<</if>>
-	<</if>>
-	<<if _Slave.daughters == 1>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.mother == _Slave.ID; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s @@.lightgreen;mother<<if _Slave.relationshipTarget == $slaves[_ssj].ID>><<if _Slave.relationship == 1>> and friend<<elseif _Slave.relationship == 2>> and best friend<<elseif _Slave.relationship == 3>> and FWB<<elseif _Slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.@@
-		<</if>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.father == _Slave.ID; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s @@.lightgreen;father<<if _Slave.relationshipTarget == $slaves[_ssj].ID>><<if _Slave.relationship == 1>> and friend<<elseif _Slave.relationship == 2>> and best friend<<elseif _Slave.relationship == 3>> and FWB<<elseif _Slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.@@
-		<</if>>
-	<<elseif _Slave.daughters > 1>>
-		<<if _Slave.daughters > 10>>
-			@@.lightgreen;Has tons of daughters.@@
-		<<elseif _Slave.daughters > 5>>
-			@@.lightgreen;Has many daughters.@@
-		<<else>>
-			@@.lightgreen;Has several daughters.@@
-		<</if>>
-	<</if>>
-	<<if _Slave.sisters == 1>>
-		<<set _ssj = $slaves.findIndex(function(s) { return areSisters(s, _Slave) > 0; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s @@.lightgreen;sister<<if _Slave.relationshipTarget == $slaves[_ssj].ID>><<if _Slave.relationship == 1>> and friend<<elseif _Slave.relationship == 2>> and best friend<<elseif _Slave.relationship == 3>> and FWB<<elseif _Slave.relationship == 4>> and lover<<else>> and wife<</if>><<set _relationshipHandled = 1>><</if>>.@@
-		<</if>>
-	<<elseif _Slave.sisters > 1>>
-		<<if _Slave.sisters > 10>>
-			@@.lightgreen;One of many sisters.@@
-		<<elseif _Slave.sisters > 5>>
-			@@.lightgreen;Has many sisters.@@
-		<<else>>
-			@@.lightgreen;Has several sisters.@@
-		<</if>>
-	<</if>>
-	<<if _Slave.relationship > 0 && _relationshipHandled != 1>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.relationshipTarget; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s
-			<<switch _Slave.relationship>>
-			<<case 1>>
-				@@.lightgreen;friend.@@
-			<<case 2>>
-				@@.lightgreen;best friend.@@
-			<<case 3>>
-				@@.lightgreen;FWB.@@
-			<<case 4>>
-				@@.lightgreen;lover.@@
-			<<case 5>>
-				@@.lightgreen;slave wife.@@
-			<</switch>>
-		<</if>>
-	<<elseif _Slave.relationship == -3>>
-		@@.lightgreen;Your wife.@@
-	<<elseif _Slave.relationship == -2>>
-		@@.lightgreen;Emotionally bonded to you.@@
-	<<elseif _Slave.relationship == -1>>
-		@@.lightgreen;Emotional slut.@@
-	<</if>>
-<<else>>
-	<<if _Slave.relation != 0>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.relationTarget; })>>
-		<<if _ssj != -1>>
-			<<SlaveFullName $slaves[_ssj]>>'s
-			<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-				@@.lightgreen;_Slave.relation@@.
-			<<else>>
-				@@.lightgreen;_Slave.relation@@
-			<</if>>
-			<<if _Slave.relationship <= 0>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
-		<</if>>
-	<</if>>
-	<<if _Slave.relationship > 0>>
-		<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.relationshipTarget; })>>
-		<<if _ssj != -1>>
-			<<switch _Slave.relationship>>
-			<<case 1>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>and<</if>> @@.lightgreen;friend.@@
-			<<case 2>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>and<</if>> @@.lightgreen;best friend.@@
-			<<case 3>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>and<</if>> @@.lightgreen;FWB.@@
-			<<case 4>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>and<</if>> @@.lightgreen;lover.@@
-			<<case 5>>
-				<<if _Slave.relationshipTarget != _Slave.relationTarget>>
-					<<SlaveFullName $slaves[_ssj]>>'s
-				<<else>>and<</if>> @@.lightgreen;slave wife.@@
-			<</switch>>
-		<</if>>
-	<<elseif _Slave.relationship == -3>>
-		@@.lightgreen;Your wife.@@
-	<<elseif _Slave.relationship == -2>>
-		@@.lightgreen;Emotionally bonded to you.@@
-	<<elseif _Slave.relationship == -1>>
-		@@.lightgreen;Emotional slut.@@
-	<</if>>
-<</if>>
-<<set _relationshipHandled = 0>>
-<<if _Slave.rivalry != 0>>
-	&nbsp;&nbsp;&nbsp;&nbsp;
-	<<set _ssj = $slaves.findIndex(function(s) { return s.ID == _Slave.rivalryTarget; })>>
-	<<if _ssj != -1>>
-		<<if _Slave.rivalry <= 1>>
-			@@.lightsalmon;Dislikes@@ <<SlaveFullName $slaves[_ssj]>>.
-		<<elseif _Slave.rivalry <= 2>>
-			<<SlaveFullName $slaves[_ssj]>>'s @@.lightsalmon;rival.@@
-		<<else>>
-			@@.lightsalmon;Hates@@ <<SlaveFullName $slaves[_ssj]>>.
-		<</if>>
-	<</if>>
-<</if>>
-<</if>>
-
-<<if _Slave.fuckdoll == 0>>
-<<if $abbreviateClothes == 2>>
-&nbsp;&nbsp;&nbsp;&nbsp;
-<<if _Slave.choosesOwnClothes == 1>>
-	Dressing herself.
-<</if>>
-<<switch _Slave.clothes>>
-<<case "attractive lingerie">>
-	Lingerie.
-<<case "a succubus outfit">>
-	Succubus outfit.
-<<case "a string bikini">>
-	String bikini.
-<<case "a scalemail bikini">>
-	Scalemail bikini.
-<<case "a monokini">>
-	Monokini.
-<<case "an apron">>
-	Apron.
-<<case "a cybersuit">>
-	Cybersuit.
-<<case "cutoffs and a t-shirt">>
-	Cutoffs, t-shirt.
-<<case "a slutty outfit">>
-	Slutty outfit.
-<<case "uncomfortable straps">>
-	Leather straps.
-<<case "a fallen nuns habit">>
-	Slutty habit.
-<<case "a chattel habit">>
-	Chattel habit.
-<<case "a penitent nuns habit">>
-	Cilice.
-<<case "slutty jewelry">>
-	Bangles.
-<<case "attractive lingerie for a pregnant woman">>
-	Preggo lingerie.
-<<case "a maternity dress">>
-	Maternity dress.
-<<case "stretch pants and a crop-top">>
-	Stretch pants, crop-top.
-<<case "harem gauze">>
-	Harem outfit.
-<<case "a slave gown">>
-	Slave gown.
-<<case "a halter top dress">>
-	Halter top dress.
-<<case "a mini dress">>
-	Mini dress.
-<<case "a ball gown">>
-	Ball gown.
-<<case "slutty business attire">>
-	Slutty suit.
-<<case "nice business attire">>
-	Nice suit.
-<<case "a comfortable bodysuit">>
-	Bodysuit.
-<<case "a military uniform">>
-	Military uniform.
-<<case "a schutzstaffel uniform">>
-	Schutzstaffel uniform.
-<<case "a slutty schutzstaffel uniform">>
-	Slutty Schutzstaffel uniform.
-<<case "a red army uniform">>
-	Red Army uniform.
-<<case "a long qipao">>
-	Long Qipao.
-<<case "battlearmor">>
-	Battlearmor.
-<<case "a mounty outfit">>
-	Mounty outfit.
-<<case "a dirndl">>
-	Dirndl.
-<<case "lederhosen">>
-	Lederhosen.
-<<case "a biyelgee costume">>
-	Biyelgee costume.
-<<case "a leotard">>
-	Leotard.
-<<case "a bunny outfit">>
-	Bunny outfit.
-<<case "a slutty maid outfit">>
-	Slutty maid.
-<<case "a nice maid outfit">>
-	Nice maid.
-<<case "a slutty nurse outfit">>
-	Slutty nurse.
-<<case "a nice nurse outfit">>
-	Nice nurse.
-<<case "a schoolgirl outfit">>
-	Schoolgirl outfit.
-<<case "a kimono">>
-	Kimono.
-<<case "a hijab and abaya">>
-	Hijab and abaya.
-<<case "battledress">>
-	Battledress.
-<<case "a latex catsuit">>
-	Nice latex.
-<<case "restrictive latex">>
-	Bondage latex.
-<<case "conservative clothing">>
-	Conservative clothing.
-<<case "chains">>
-	Chains.
-<<case "a cheerleader outfit">>
-	Cheerleader.
-<<case "clubslut netting">>
-	Netting.
-<<case "shibari ropes">>
-	Shibari.
-<<case "Western clothing">>
-	Chaps.
-<<case "body oil">>
-	Body oil.
-<<case "a toga">>
-	Toga.
-<<case "a huipil">>
-	Huipil.
-<<case "a slutty qipao">>
-	Qipao.
-<<case "spats and a tank top">>
-	Spats, tank top.
-<<default>>
-	Naked.
-<</switch>>
-<<switch _Slave.collar>>
-<<case "uncomfortable leather">>
-	Leather collar.
-<<case "tight steel">>
-	Steel collar.
-<<case "preg biometrics">>
-	Pregnancy biometrics collar.
-<<case "cruel retirement counter">>
-	Cruel counter collar.
-<<case "shock punishment">>
-	Shock collar.
-<<case "dildo gag">>
-	Dildo gag.
-<<case "massive dildo gag">>
-	Throat-bulging dildo gag.
-<<case "neck corset">>
-	Neck corset.
-<<case "stylish leather">>
-	Stylish leather collar.
-<<case "satin choker">>
-	Satin choker.
-<<case "silk ribbon">>
-	Silken ribbon.
-<<case "heavy gold">>
-	Gold collar.
-<<case "bowtie">>
-	Bowtie collar.
-<<case "pretty jewelry">>
-	Pretty collar.
-<<case "nice retirement counter">>
-	Nice counter collar.
-<<case "leather with cowbell">>
-	Cowbell collar.
-<<case "ancient Egyptian">>
-	Wesekh.
-<<case "ball gag">>
-	Ball gag.
-<<case "bit gag">>
-	Bit gag.
-<<case "porcelain mask">>
-	Porcelain mask.
-<</switch>>
-<<switch _Slave.bellyAccessory>>
-<<case "shapewear">>
-	Shapewear.
-<<case "a small empathy belly">>
-	Small fake belly.
-<<case "a medium empathy belly">>
-	Medium fake belly.
-<<case "a large empathy belly">>
-	Large fake belly.
-<<case "a huge empathy belly">>
-	Huge fake belly.
-<<case "a corset">>
-	Corset.
-<<case "an extreme corset">>
-	Extreme corsetage.
-<</switch>>
-<<if _Slave.amp != 1>>
-	<<if _Slave.legAccessory == "short stockings">>
-		Short stockings.
-	<<elseif _Slave.legAccessory == "long stockings">>
-		Long stockings.
-	<</if>>
-<</if>>
-<<if canWalk(_Slave)>>
-<<if _Slave.shoes == "heels">>
-	Heels.
-<<elseif _Slave.shoes == "pumps">>
-	Pumps.
-<<elseif _Slave.shoes == "extreme heels">>
-	Extreme heels.
-<<elseif _Slave.shoes == "boots">>
-	Boots.
-<<elseif _Slave.heels == 1>>
-	@@.yellow;Crawling.@@
-<<elseif _Slave.shoes == "flats">>
-	Flats.
-<</if>>
-<</if>>
-<<switch _Slave.vaginalAccessory>>
-<<case "chastity belt">>
-	Vaginal chastity.
-<<case "combined chastity">>
-	Combined chastity.
-<<case "anal chastity">>
-	Anal chastity.
-<<case "dildo">>
-	Vaginal dildo.
-<<case "large dildo">>
-	Large vaginal dildo.
-<<case "huge dildo">>
-	Huge vaginal dildo.
-<<case "long dildo">>
-	Long vaginal dildo.
-<<case "long, large dildo">>
-	Long and large vaginal dildo.
-<<case "long, huge dildo">>
-	Long and wide vaginal dildo.
-<</switch>>
-<<if _Slave.dickAccessory == "chastity">>
-	Chastity cage.
-<<elseif _Slave.dickAccessory == "combined chastity">>
-	Combined chastity.
-<<elseif _Slave.dickAccessory == "anal chastity">>
-	Anal chastity.
-<</if>>
-<<switch _Slave.buttplug>>
-<<case "plug">>
-	Buttplug.
-<<case "large plug">>
-	Large buttplug.
-<<case "huge plug">>
-	Huge buttplug.
-<<case "long plug">>
-	Long buttplug.
-<<case "long, large plug">>
-	Large, long buttplug.
-<<case "long, huge plug">>
-	Enormous buttplug.
-<</switch>>
-<<switch _Slave.buttplugAttachment>>
-<<case "tail">>
-	Attached tail.
-<</switch>>
-<</if>>
-<</if>>
-
-&nbsp;&nbsp;&nbsp;&nbsp;
-<<if _Slave.useRulesAssistant == 0>>
-	@@.lightgreen;RA-Exempt@@
-<<elseif $abbreviateRulesets == 2 && (def _Slave.currentRules) && (_Slave.currentRules.length > 0)>>
-	Rules: 
-	<<= $defaultRules.filter(x => ruleApplied(_Slave, x)).map(x => x.name).join(" ") >>
-<</if>>
-
-<<if $abbreviateOrigins == 2 && _Slave.origin != 0>>
-	<br><<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
-    @@.gray;_Slave.origin@@
-<</if>>
-<</widget>>
+<<widget "SlaveSummaryUncached">><<=SlaveSummaryUncached($args[0])>><</widget>>
-- 
GitLab


From 4983a364076f5d4e0ec149b3d6315451a0b0ce6a Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Tue, 10 Jul 2018 00:22:55 +0300
Subject: [PATCH 014/189] fix remaining issues

---
 src/js/slaveSummaryWidgets.tw              | 856 +++++++++++----------
 src/pregmod/widgets/slaveSummaryWidgets.tw |  23 +-
 2 files changed, 436 insertions(+), 443 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index b68a4801796..dfcdfd633f1 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -1,4 +1,4 @@
-//:: Slave Summary Widgets JS [script]
+:: Slave Summary Widgets JS [script]
 
 window.clearSummaryCache = function clearSummaryCache(slave) {
 	if (!slave)
@@ -9,11 +9,22 @@ window.clearSummaryCache = function clearSummaryCache(slave) {
 		setup.summaryCache[slave] = undefined;
 };
 
+window.SlaveSummary = function SlaveSummary(slave) {
+	const V = State.variables;
+	if(V.useSummaryCache) {
+		if (setup.summaryCache[slave.ID] === undefined)
+			setup.summaryCache[slave.ID] = SlaveSummaryUncached(slave);
+		//this.output.appendChild(setup.summaryCache[State.temporary.Slave.ID].cloneNode(true))
+		return setup.summaryCache[slave.ID];
+	} else return SlaveSummaryUncached(slave);
+};
+
 window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
+	"use strict";
 	const V = State.variables;
 	let r = "";
-	if (V.abbreviateDevotion == 1) {
-		if (slave.fetish == "mindbroken") {
+	if (V.abbreviateDevotion === 1) {
+		if (slave.fetish === "mindbroken") {
 			r += `<span class="red">MB</span>`;
 		} else if (slave.devotion < -95) {
 			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
@@ -30,7 +41,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
 		}
-		if (slave.fetish == "mindbroken") {
+		if (slave.fetish === "mindbroken") {
 			true;
 		} else if (slave.trust < -95) {
 			r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
@@ -59,8 +70,8 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 			}
 		}
-	} else if (V.abbreviateDevotion == 2) {
-		if (slave.fetish == "mindbroken") {
+	} else if (V.abbreviateDevotion === 2) {
+		if (slave.fetish === "mindbroken") {
 			r += `<span class="red">Mindbroken.</span>`;
 		} else if (slave.devotion < -95) {
 			r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
@@ -77,7 +88,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
 		}
-		if (slave.fetish == "mindbroken") {
+		if (slave.fetish === "mindbroken") {
 			true;
 		} else if (slave.trust < -95) {
 			r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
@@ -108,8 +119,8 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 	}
 
-	if (slave.fuckdoll == 0) {
-		if (V.abbreviateRules == 1) {
+	if (slave.fuckdoll === 0) {
+		if (V.abbreviateRules === 1) {
 			switch (slave.livingRules) {
 				case "luxurious":
 					r += `<strong>LS:Lux</strong>`;
@@ -190,7 +201,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					r += `<strong>MaR:R</strong>`;
 					break;
 			}
-		} else if (V.abbreviateRules == 2) {
+		} else if (V.abbreviateRules === 2) {
 			r += `Living standard: ${slave.livingRules}.`;
 			if (canTalk(slave)) {
 				r += `Speech rules: ${slave.speechRules}.`;
@@ -202,11 +213,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 	}
 
-	if (slave.tired != 0) {
+	if (slave.tired !== 0) {
 		r += `Tired.`;
 	}
 
-	if (V.abbreviateDiet == 1) {
+	if (V.abbreviateDiet === 1) {
 		if (slave.weight < -95) {
 			r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 		} else if (slave.weight < -30) {
@@ -222,37 +233,37 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else if (slave.weight <= 30) {
 			r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 		} else if (slave.weight <= 95) {
-			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 			} else {
 				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		} else if (slave.weight <= 130) {
-			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 			} else {
 				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		} else if (slave.weight <= 160) {
-			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 			} else {
 				r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		} else if (slave.weight <= 190) {
-			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 			} else {
 				r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		} else {
-			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 			} else {
 				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		}
-	} else if (V.abbreviateDiet == 2) {
+	} else if (V.abbreviateDiet === 2) {
 		if (slave.weight < -95) {
 			r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 		} else if (slave.weight < -30) {
@@ -268,31 +279,31 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else if (slave.weight <= 30) {
 			r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
 		} else if (slave.weight <= 95) {
-			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
 			} else {
 				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		} else if (slave.weight <= 130) {
-			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
 			} else {
 				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		} else if (slave.weight <= 160) {
-			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
 			} else {
 				r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		} else if (slave.weight <= 190) {
-			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
 			} else {
 				r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		} else {
-			if (V.arcologies[0].FSHedonisticDecadence != "unset") {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
 			} else {
 				r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
@@ -300,7 +311,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 	}
 
-	if (V.abbreviateDiet == 1) {
+	if (V.abbreviateDiet === 1) {
 		r += `<span class="teal">`;
 		switch (slave.diet) {
 			case "restricted":
@@ -336,19 +347,19 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 		r += `</span>`;
 		r += `<span class="cyan">`;
-		if (slave.dietCum == 2) {
+		if (slave.dietCum === 2) {
 			r += `<strong>Cum++</strong>`;
-		} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
 			r += `<strong>Cum+</strong>`;
-		} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
 			r += `<strong>Cum+ Milk+</strong>`;
-		} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
+		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
 			r += `<strong>Milk+</strong>`;
-		} else if ((slave.dietMilk == 2)) {
+		} else if ((slave.dietMilk === 2)) {
 			r += `<strong>Milk++</strong>`;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateDiet == 2) {
+	} else if (V.abbreviateDiet === 2) {
 		r += `<span class="teal">`;
 		switch (slave.diet) {
 			case "restricted":
@@ -383,20 +394,20 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				break;
 		}
 		r += `</span>`;
-		if (slave.dietCum == 2) {
+		if (slave.dietCum === 2) {
 			r += `Diet Base: <span class="cyan">Cum Based.</span>`;
-		} else if (((slave.dietCum == 1) && (slave.dietMilk == 0))) {
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
 			r += `Diet Base: <span class="cyan">Cum Added.</span>`;
-		} else if (((slave.dietCum == 1) && (slave.dietMilk == 1))) {
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
 			r += `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
-		} else if (((slave.dietCum == 0) && (slave.dietMilk == 1))) {
+		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
 			r += `Diet Base: <span class="cyan">Milk Added.</span>`;
-		} else if ((slave.dietMilk == 2)) {
+		} else if ((slave.dietMilk === 2)) {
 			r += `Diet Base: <span class="cyan">Milk Based.</span>`;
 		}
 	}
 
-	if (V.abbreviateHealth == 1) {
+	if (V.abbreviateHealth === 1) {
 		if (slave.health < -20) {
 			r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
 		} else if (slave.health <= 20) {
@@ -404,7 +415,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else if (slave.health > 20) {
 			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
 		}
-	} else if (V.abbreviateHealth == 2) {
+	} else if (V.abbreviateHealth === 2) {
 		if (slave.health < -90) {
 			r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
 		} else if (slave.health < -50) {
@@ -422,7 +433,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 	}
 
-	if (V.abbreviateDrugs == 1) {
+	if (V.abbreviateDrugs === 1) {
 		r += `<span class="tan">`;
 		switch (slave.drugs) {
 			case "breast injections":
@@ -527,24 +538,24 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 		r += `</span>`;
 		r += `<span class="lightgreen">`;
-		if (slave.curatives == 2) {
+		if (slave.curatives === 2) {
 			r += `<strong>Cura</strong>`;
-		} else if (slave.curatives == 1) {
+		} else if (slave.curatives === 1) {
 			r += `<strong>Prev</strong>`;
 		}
 		r += `</span>`;
-		if (slave.aphrodisiacs != 0) {
+		if (slave.aphrodisiacs !== 0) {
 			r += `<span class="lightblue">`;
-			if (slave.aphrodisiacs == 1) {
+			if (slave.aphrodisiacs === 1) {
 				r += `<strong>Aph</strong>`;
-			} else if (slave.aphrodisiacs == 2) {
+			} else if (slave.aphrodisiacs === 2) {
 				r += `<strong>Aph++</strong>`;
 			} else {
 				r += `<strong>Anaph</strong>`;
 			}
 			r += `</span>`;
 		}
-		if (slave.addict != 0) {
+		if (slave.addict !== 0) {
 			r += `<span class="cyan">Add</span>`;
 		}
 		r += `<span class="lightsalmon">`;
@@ -561,54 +572,54 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `<span class="mediumseagreen">`;
 		if ((slave.bellyImplant > -1)) {
 			r += `<strong>Belly Imp</strong>`;
-		} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
+		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
 			r += `<strong>Barr</strong>`;
-		} else if (slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
 			r += `<strong>Prepub</strong>`;
-		} else if (slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
 			r += `<strong>Meno</strong>`;
 		} else if (slave.pregWeek < 0) {
 			r += `<strong>Postpartum</strong>`;
-		} else if (slave.preg == -1) {
+		} else if (slave.preg === -1) {
 			r += `<strong>CC</strong>`;
-		} else if (slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
 			r += `<strong>Fert+</strong>`;
-		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1) {
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
 			r += `<strong>Preg?</strong>`;
 		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
 			r += `<strong>Perm preg</strong>`;
-		} else if (slave.pregKnown == 1) {
+		} else if (slave.pregKnown === 1) {
 			r += `<strong>${slave.pregWeek} wks preg</strong>`;
 		}
 		r += `</span>`;
-		if (slave.induce == 1) {
+		if (slave.induce === 1) {
 			r += `<span class="orange"><strong>Early Labor</strong></span>`;
 		}
-		if (slave.pubertyXY == 0 && slave.balls > 0) {
+		if (slave.pubertyXY === 0 && slave.balls > 0) {
 			r += `<strong>Prepub balls</strong>`;
 		}
-		if (slave.balls > 0 && slave.vasectomy == 1) {
+		if (slave.balls > 0 && slave.vasectomy === 1) {
 			r += `<strong>Vasect</strong>`;
 		}
 		r += `<span class="springgreen">`;
-		if (slave.inflation == 3) {
+		if (slave.inflation === 3) {
 			r += `<strong>8 ltr ${slave.inflationType}</strong>`;
-		} else if (slave.inflation == 2) {
+		} else if (slave.inflation === 2) {
 			r += `<strong>4 ltr ${slave.inflationType}</strong>`;
-		} else if (slave.inflation == 1) {
+		} else if (slave.inflation === 1) {
 			r += `<strong>2 ltr ${slave.inflationType}</strong>`;
 		} else if (slave.bellyFluid > 0) {
 			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateDrugs == 2) {
-		if ((slave.drugs != "no drugs") && (slave.drugs != "none")) {
-			r += `<span class="tan">${On slave.drugs}.</span>`;
+	} else if (V.abbreviateDrugs === 2) {
+		if ((slave.drugs !== "no drugs") && (slave.drugs !== "none")) {
+			r += `<span class="tan">On ${slave.drugs}.</span>`;
 		}
 		r += `<span class="lightgreen">`;
-		if (slave.curatives == 2) {
+		if (slave.curatives === 2) {
 			r += `On curatives.`;
-		} else if (slave.curatives == 1) {
+		} else if (slave.curatives === 1) {
 			r += `On preventatives.`;
 		}
 		r += `</span>`;
@@ -619,7 +630,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `On anaphrodisiacs.`;
 		}
 		r += `</span>`;
-		if (slave.addict != 0) {
+		if (slave.addict !== 0) {
 			r += `<span class="cyan">Addict.</span>`;
 		}
 		r += `<span class="lightsalmon">`;
@@ -636,23 +647,23 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `<span class="mediumseagreen">`;
 		if ((slave.bellyImplant > -1)) {
 			r += `Belly Implant.`;
-		} else if (((slave.preg <= -2) || (slave.ovaries == 0)) && (slave.vagina != -1)) {
+		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
 			r += `Barren.`;
-		} else if (slave.pubertyXX == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
 			r += `Not ovulating yet.`;
-		} else if (slave.ovaryAge >= 47 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
 			r += `Menopausal.`;
 		} else if (slave.pregWeek < 0) {
 			r += `Postpartum.`;
-		} else if (slave.preg == -1) {
+		} else if (slave.preg === -1) {
 			r += `On contraceptives.`;
-		} else if (slave.preg == 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
 			r += `Fertile.`;
-		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown == 0) || slave.pregWeek == 1) {
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
 			r += `May be pregnant.`;
 		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
 			r += `Permanently pregnant.`;
-		} else if (slave.pregKnown == 1) {
+		} else if (slave.pregKnown === 1) {
 			if (slave.pregType < 2 || slave.broodmother > 0) {
 				r += `${slave.pregWeek} weeks pregnant.`;
 			} else {
@@ -663,19 +674,19 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					r += `a brood of offspring.`;
 				} else if (slave.pregType >= 10) {
 					r += `slave.pregType babies.`;
-				} else if (slave.pregType == 9) {
+				} else if (slave.pregType === 9) {
 					r += `nonuplets.`;
-				} else if (slave.pregType == 8) {
+				} else if (slave.pregType === 8) {
 					r += `octuplets.`;
-				} else if (slave.pregType == 7) {
+				} else if (slave.pregType === 7) {
 					r += `septuplets.`;
-				} else if (slave.pregType == 6) {
+				} else if (slave.pregType === 6) {
 					r += `sextuplets.`;
-				} else if (slave.pregType == 5) {
+				} else if (slave.pregType === 5) {
 					r += `quintuplets.`;
-				} else if (slave.pregType == 4) {
+				} else if (slave.pregType === 4) {
 					r += `quadruplets.`;
-				} else if (slave.pregType == 3) {
+				} else if (slave.pregType === 3) {
 					r += `triplets.`;
 				} else {
 					r += `twins.`;
@@ -683,21 +694,21 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			}
 		}
 		r += `</span>`;
-		if (slave.induce == 1) {
+		if (slave.induce === 1) {
 			r += `<span class="orange">Showing signs of early labor.</span>`;
 		}
-		if (slave.pubertyXY == 0 && slave.balls > 0) {
+		if (slave.pubertyXY === 0 && slave.balls > 0) {
 			r += `Has not had first ejaculation.`;
 		}
-		if (slave.balls > 0 && slave.vasectomy == 1) {
+		if (slave.balls > 0 && slave.vasectomy === 1) {
 			r += `Vasectomy.`;
 		}
 		r += `<span class="springgreen">`;
-		if (slave.inflation == 3) {
+		if (slave.inflation === 3) {
 			r += `Filled with 8 liters of ${slave.inflationType}.`;
-		} else if (slave.inflation == 2) {
+		} else if (slave.inflation === 2) {
 			r += `Filled with 4 liters of ${slave.inflationType}.`;
-		} else if (slave.inflation == 1) {
+		} else if (slave.inflation === 1) {
 			r += `Filled with 2 liters of ${slave.inflationType}.`;
 		} else if (slave.bellyFluid > 0) {
 			r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
@@ -705,9 +716,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `</span>`;
 	}
 
-	if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental != 0) {
+	if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
 		r += `<br>`;
-		if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
 	}
@@ -716,11 +727,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 	V.seed = V.desc.substring(0, 1);
 	V.seed = V.seed.toUpperCase();
 	V.desc = V.seed + V.desc.substring(1);
-	r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals == 2? '.' : ''}</span></strong>`;
+	r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong>`;
 
-	if (V.seeRace == 1) {
+	if (V.seeRace === 1) {
 		r += `<span class="tan">`;
-		if (V.abbreviateRace == 1) {
+		if (V.abbreviateRace === 1) {
 			switch (slave.race) {
 				case "white":
 					r += `C`;
@@ -762,7 +773,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
 					break;
 			}
-		} else if (V.abbreviateRace == 2) {
+		} else if (V.abbreviateRace === 2) {
 			switch (slave.race) {
 				case "white":
 					r += `Caucasian.`;
@@ -808,7 +819,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `</span>`;
 	}
 
-	if (V.abbreviateNationality == 1) {
+	if (V.abbreviateNationality === 1) {
 		r += `<span class="tan">`;
 		switch (slave.nationality) {
 			case "Afghan":
@@ -1442,7 +1453,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `Zam`;
 				break;
 			case "Zimbabwean":
-				if (slave.race == "white") {
+				if (slave.race === "white") {
 					r += `Rho`;
 				} else {
 					r += `Zwe`;
@@ -1477,11 +1488,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				break;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateNationality == 2) {
+	} else if (V.abbreviateNationality === 2) {
 		r += `<span class="tan">`;
 		switch (slave.nationality) {
 			case "Zimbabwean":
-				if (slave.race == "white") {
+				if (slave.race === "white") {
 					r += `Rhodesian.`;
 				} else {
 					r += `${slave.nationality}.`;
@@ -1494,13 +1505,13 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `Stateless.`;
 				break;
 			default:
-				r += slave.nationality.
+				r += `${slave.nationality}.`;
 				break;
 		}
 		r += `</span>`;
 	}
 
-	if (V.abbreviatePhysicals == 1) {
+	if (V.abbreviatePhysicals === 1) {
 		r += `<span class="pink">`;
 		switch (slave.skin) {
 			case "light brown":
@@ -1533,14 +1544,14 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
 				break;
 		}
-	} else {
-		r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.`;
 		r += `</span>`;
+	} else {
+		r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
 	}
-	if (V.abbreviateGenitalia == 1) {
+	if (V.abbreviateGenitalia === 1) {
 		if (slave.dick > 0) {
 			r += `<span class="pink">`;
-			if (slave.balls == 0) {
+			if (slave.balls === 0) {
 				r += `Geld`;
 			}
 			if ((slave.dick > 8) && (slave.balls > 8)) {
@@ -1570,12 +1581,12 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			}
 			r += `</span>`;
 		}
-		if (slave.vagina == 0) {
+		if (slave.vagina === 0) {
 			r += `<span class="lime">VV</span>`;
-		} else if ((slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")) {
+		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
 			r += `<span class="pink">NBP</span>`;
 		}
-		if (slave.anus == 0) {
+		if (slave.anus === 0) {
 			r += `	<span class="lime">AV</span>`;
 		}
 		r += `<span class="pink">`;
@@ -1593,10 +1604,10 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `A+`;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateGenitalia == 2) {
+	} else if (V.abbreviateGenitalia === 2) {
 		if (slave.dick > 0) {
 			r += `<span class="pink">`;
-			if (slave.balls == 0) {
+			if (slave.balls === 0) {
 				r += `Gelded.`;
 			}
 			if ((slave.dick > 8) && (slave.balls > 8)) {
@@ -1626,12 +1637,12 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			}
 			r += `</span>`;
 		}
-		if (slave.vagina == 0) {
+		if (slave.vagina === 0) {
 			r += `<span class="lime">Virgin.</span>`;
-		} else if ((slave.pregKnown == 1) && canWalk(slave) && (slave.clothes == "no clothing" || slave.clothes == "body oil") && (slave.shoes == "none")) {
+		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
 			r += `<span class="pink">Naked, barefoot, and pregnant.</span>`;
 		}
-		if (slave.anus == 0) {
+		if (slave.anus === 0) {
 			r += `<span class="lime">Anal virgin.</span>`;
 		}
 		r += `<span class="pink">`;
@@ -1651,9 +1662,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `</span>`;
 	}
 
-	if (V.abbreviatePhysicals == 1) {
+	if (V.abbreviatePhysicals === 1) {
 		r += `<span class="pink">`;
-		if (V.showAgeDetail == 1) {
+		if (V.showAgeDetail === 1) {
 			r += slave.actualAge;
 		} else if (slave.actualAge >= 40) {
 			r += `40s`;
@@ -1668,10 +1679,10 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else if (slave.actualAge >= 18) {
 			r += slave.actualAge;
 		}
-		if (slave.actualAge != slave.physicalAge) {
+		if (slave.actualAge !== slave.physicalAge) {
 			r += `${slave.physicalAge}y-bdy`;
 		}
-		if (slave.visualAge != slave.physicalAge) {
+		if (slave.visualAge !== slave.physicalAge) {
 			r += `Lks${slave.visualAge}`;
 		}
 		if (slave.face < -95) {
@@ -1689,13 +1700,13 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
 		}
-		if (slave.eyes == -2) {
+		if (slave.eyes === -2) {
 			r += `<span class="red">Blind</span>`;
-		} else if (((slave.eyes == -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))) {
+		} else if (((slave.eyes === -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
 			r += `<span class="yellow">Sight-</span>`;
 		}
 
-		if (slave.markings != "none") {
+		if (slave.markings !== "none") {
 			r += `Markings`;
 		}
 
@@ -1712,15 +1723,15 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
 		}
-		if (slave.teeth == "crooked") {
+		if (slave.teeth === "crooked") {
 			r += `<span class="yellow">Cr Teeth</span>`;
-		} else if (slave.teeth == "cosmetic braces") {
+		} else if (slave.teeth === "cosmetic braces") {
 			r += `Cos Braces`;
-		} else if (slave.teeth == "straightening braces") {
+		} else if (slave.teeth === "straightening braces") {
 			r += `Braces`;
-		} else if (slave.teeth == "removable") {
+		} else if (slave.teeth === "removable") {
 			r += `Rem Teeth`;
-		} else if (slave.teeth == "pointy") {
+		} else if (slave.teeth === "pointy") {
 			r += `Fangs`;
 		}
 		if (slave.muscles > 95) {
@@ -1732,13 +1743,13 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else if (slave.muscles > -6) {
 			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
 		} else if (slave.muscles > -31) {
-			if (V.arcologies[0].FSPhysicalIdealist == "unset") {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
 				r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
 			} else {
 				r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
 			}
 		} else if (slave.muscles > -96) {
-			if (V.arcologies[0].FSPhysicalIdealist == "unset") {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
 				r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
 			} else {
 				r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
@@ -1746,16 +1757,16 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
 		}
-		if (slave.amp != 0) {
-			if (slave.amp == -1) {
+		if (slave.amp !== 0) {
+			if (slave.amp === -1) {
 				r += `P-Limbs`;
-			} else if (slave.amp == -2) {
+			} else if (slave.amp === -2) {
 				r += `Sex P-Limbs`;
-			} else if (slave.amp == -3) {
+			} else if (slave.amp === -3) {
 				r += `Beauty P-Limbs`;
-			} else if (slave.amp == -4) {
+			} else if (slave.amp === -4) {
 				r += `Combat P-Limbs`;
-			} else if (slave.amp == -5) {
+			} else if (slave.amp === -5) {
 				r += `Cyber P-Limbs`;
 			} else {
 				r += `Amp`;
@@ -1764,20 +1775,20 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		if (!canWalk(slave)) {
 			r += `Immob`;
 		}
-		if (slave.heels == 1) {
+		if (slave.heels === 1) {
 			r += `Heel`;
 		}
 		r += `</span>`;
-		if (slave.voice == 0) {
+		if (slave.voice === 0) {
 			r += `<span class="pink">Mute</span>`;
 		} else {
-			if (slave.accent == 3) {
+			if (slave.accent === 3) {
 				r += `<span class="red">Acc--</span>`;
-			} else if (slave.accent == 2) {
+			} else if (slave.accent === 2) {
 				r += `Acc-`;
-			} else if (slave.accent == 4) {
+			} else if (slave.accent === 4) {
 				r += `Acc--`;
-			} else if (slave.accent == 1) {
+			} else if (slave.accent === 1) {
 				r += `<span class="pink">Acc</span>`;
 			}
 		}
@@ -1812,11 +1823,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `</span>`;
 		r += `<span class="red">`;
 		if (slave.hips < -1) {
-			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
 				r += `Disp+`;
 			}
 		} else if (slave.hips < 0) {
-			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
 				r += `Disp+`;
 			}
 		} else if (slave.hips > 2) {
@@ -1824,23 +1835,23 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `Disp-`;
 			}
 		} else if (slave.hips > 1) {
-			if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
+			if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
 				r += `Disp-`;
 			}
 		} else if (slave.hips > 0) {
 			if (slave.butt > 8) {
-				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
 					r += `Disp+`;
 				}
-			} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
+			} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
 				r += `Disp-`;
 			}
 		} else {
 			if (slave.butt > 6) {
-				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
 					r += `Disp+`;
 				}
-			} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast == "unset" || (slave.boobs >= 500))) {
+			} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
 				r += `Disp-`;
 			}
 		}
@@ -1861,18 +1872,18 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
 		}
 		r += `<span class="pink">`;
-		if ((slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant <= 5) && (slave.bellyImplant == -1)) {
+		if ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant <= 5) && (slave.bellyImplant === -1)) {
 			r += `Natr`;
 		} else {
 			r += `Impl`;
 		}
-		if (slave.lactation == 1) {
+		if (slave.lactation === 1) {
 			r += `Lact`;
-		} else if (slave.lactation == 2) {
+		} else if (slave.lactation === 2) {
 			r += `Lact++`;
 		}
 		modScore(slave);
-		if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
+		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
 			true;
 		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
 			r += `Mods++`;
@@ -1881,13 +1892,13 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `Mods`;
 		}
-		if (slave.brand != 0) {
+		if (slave.brand !== 0) {
 			r += `Br`;
 		}
 		r += `</span>`;
-	} else if (V.abbreviatePhysicals == 2) {
+	} else if (V.abbreviatePhysicals === 2) {
 		r += `<span class="pink">`;
-		if (V.showAgeDetail == 1) {
+		if (V.showAgeDetail === 1) {
 			r += `Age ${slave.actualAge}.`;
 		} else if (slave.actualAge >= 40) {
 			r += `Forties.`;
@@ -1910,11 +1921,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		 **  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
 		 **  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
 		 */
-		if (((slave.inducedNCS == 0) || (slave.visualAge >= slave.physicalAge))) {
-			if (slave.actualAge != slave.physicalAge) {
+		if (((slave.inducedNCS === 0) || (slave.visualAge >= slave.physicalAge))) {
+			if (slave.actualAge !== slave.physicalAge) {
 				r += `${slave.physicalAge} year old body.`;
 			}
-			if (slave.visualAge != slave.physicalAge) {
+			if (slave.visualAge !== slave.physicalAge) {
 				r += `Looks ${slave.visualAge}.`;
 			}
 		} else {
@@ -1929,7 +1940,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			 */
 			r += `Appears to have a ${slave.visualAge} year old body.`;
 		}
-		if (slave.inducedNCS == 1) {
+		if (slave.inducedNCS === 1) {
 			r += `(<span class="orange">NCS</span>)`;
 		}
 		if (slave.face < -95) {
@@ -1950,7 +1961,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `${slave.faceShape} face.`;
 		if (slave.eyes <= -2) {
 			r += `<span class="red">Blind.</span>`;
-		} else if (((slave.eyes <= -1) && (slave.eyewear != "corrective glasses") && (slave.eyewear != "corrective contacts"))) {
+		} else if (((slave.eyes <= -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
 			r += `<span class="yellow">Nearsighted.</span>`;
 		}
 		if (slave.lips > 95) {
@@ -1966,15 +1977,15 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
 		}
-		if (slave.teeth == "crooked") {
+		if (slave.teeth === "crooked") {
 			r += `<span class="yellow">Crooked teeth.</span>`;
-		} else if (slave.teeth == "cosmetic braces") {
+		} else if (slave.teeth === "cosmetic braces") {
 			r += `Cosmetic braces.`;
-		} else if (slave.teeth == "straightening braces") {
+		} else if (slave.teeth === "straightening braces") {
 			r += `Braces.`;
-		} else if (slave.teeth == "removable") {
+		} else if (slave.teeth === "removable") {
 			r += `Removable teeth.`;
-		} else if (slave.teeth == "pointy") {
+		} else if (slave.teeth === "pointy") {
 			r += `Sharp fangs.`;
 		}
 		if (slave.muscles > 95) {
@@ -1986,13 +1997,13 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else if (slave.muscles > -6) {
 			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
 		} else if (slave.muscles > -31) {
-			if (V.arcologies[0].FSPhysicalIdealist == "unset") {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
 				r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 			} else {
 				r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
 			}
 		} else if (slave.muscles > -96) {
-			if (V.arcologies[0].FSPhysicalIdealist == "unset") {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
 				r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 			} else {
 				r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
@@ -2000,16 +2011,16 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 		}
-		if (slave.amp != 0) {
-			if (slave.amp == -1) {
+		if (slave.amp !== 0) {
+			if (slave.amp === -1) {
 				r += `Prosthetic limbs.`;
-			} else if (slave.amp == -2) {
+			} else if (slave.amp === -2) {
 				r += `Sexy prosthetic limbs.`;
-			} else if (slave.amp == -3) {
+			} else if (slave.amp === -3) {
 				r += `Beautiful prosthetic limbs.`;
-			} else if (slave.amp == -4) {
+			} else if (slave.amp === -4) {
 				r += `Deadly prosthetic limbs.`;
-			} else if (slave.amp == -5) {
+			} else if (slave.amp === -5) {
 				r += `Cyber prosthetic limbs.`;
 			} else {
 				r += `Amputee.`;
@@ -2018,20 +2029,20 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		if (!canWalk(slave)) {
 			r += `Immobile.`;
 		}
-		if (slave.heels == 1) {
+		if (slave.heels === 1) {
 			r += `Heeled.`;
 		}
 		r += `</span>`;
-		if (slave.voice == 0) {
+		if (slave.voice === 0) {
 			r += `<span class="pink">Mute.</span>`;
 		} else {
-			if (slave.accent == 3) {
+			if (slave.accent === 3) {
 				r += `<span class="red">Bad accent.</span>`;
-			} else if (slave.accent == 4) {
+			} else if (slave.accent === 4) {
 				r += `<span class="red">No language skills.</span>`;
-			} else if (slave.accent == 2) {
+			} else if (slave.accent === 2) {
 				r += `Accent.`;
-			} else if (slave.accent == 1) {
+			} else if (slave.accent === 1) {
 				r += `<span class="pink">Cute accent.</span>`;
 			}
 		}
@@ -2066,11 +2077,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `</span>`;
 		r += `<span class="red">`;
 		if (slave.hips < -1) {
-			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
 				r += `Disproportionately big butt.`;
 			}
 		} else if (slave.hips < 0) {
-			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
 				r += `Disproportionately big butt.`;
 			}
 		} else if (slave.hips > 2) {
@@ -2078,23 +2089,23 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `Disproportionately small butt.`;
 			}
 		} else if (slave.hips > 1) {
-			if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
+			if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
 				r += `Disproportionately small butt.`;
 			}
 		} else if (slave.hips > 0) {
 			if (slave.butt > 8) {
-				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
 					r += `Disproportionately big butt.`;
 				}
-			} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
+			} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
 				r += `Disproportionately small butt.`;
 			}
 		} else {
 			if (slave.butt > 6) {
-				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist == "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence == "unset")) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
 					r += `Disproportionately big butt.`;
 				}
-			} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast == "unset") || (slave.boobs >= 500))) {
+			} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
 				r += `Disproportionately small butt.`;
 			}
 		}
@@ -2115,20 +2126,20 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
 		}
 		r += `<span class="pink">`;
-		if ((slave.boobsImplant != 0) || (slave.buttImplant != 0) || (slave.lipsImplant != 0) || (slave.bellyImplant != -1)) {
+		if ((slave.boobsImplant !== 0) || (slave.buttImplant !== 0) || (slave.lipsImplant !== 0) || (slave.bellyImplant !== -1)) {
 			r += `Implants.`;
 		} else if ((slave.faceImplant >= 30) || (slave.waist < -95)) {
 			r += `Surgery enhanced.`;
 		} else {
 			r += `All natural.`;
 		}
-		if (slave.lactation == 1) {
+		if (slave.lactation === 1) {
 			r += `Lactating naturally.`;
-		} else if (slave.lactation == 2) {
+		} else if (slave.lactation === 2) {
 			r += `Heavy lactation.`;
 		}
 		modScore(slave);
-		if (slave.corsetPiercing == 0 && V.piercingScore < 3 && V.tatScore < 2) {
+		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
 			true;
 		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
 			r += `Extensive body mods.`;
@@ -2137,21 +2148,21 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `Light body mods.`;
 		}
-		if (slave.brand != 0) {
+		if (slave.brand !== 0) {
 			r += `Branded.`;
 		}
 		r += `</span>`;
 	}
 
 	r += `<br>`;
-	if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
+	if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
 		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 	}
 
-	if (V.abbreviateSkills == 1) {
-		if (slave.fetish == "mindbroken") {
+	if (V.abbreviateSkills === 1) {
+		if (slave.fetish === "mindbroken") {
 			true;
-		} else if (slave.intelligenceImplant == 1) {
+		} else if (slave.intelligenceImplant === 1) {
 			switch (slave.intelligence) {
 				case 3:
 					r += `<span class="deepskyblue">I+++(e)</span>`;
@@ -2201,7 +2212,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			}
 		}
 
-		_SSkills = slave.analSkill + slave.oralSkill;
+		let _SSkills = slave.analSkill + slave.oralSkill;
 		r += `<span class="aquamarine">`;
 		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
 			r += `MSS`;
@@ -2259,17 +2270,17 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `<span class="green">`;
 			if (slave.prestige > 2) {
 				r += `Prest++`;
-			} else if (slave.prestige == 2) {
+			} else if (slave.prestige === 2) {
 				r += `Prest+`;
-			} else if (slave.prestige == 1) {
+			} else if (slave.prestige === 1) {
 				r += `Prest`;
 			}
 			r += `</span>`;
 		}
-	} else if (V.abbreviateSkills == 2) {
-		if (slave.fetish == "mindbroken") {
+	} else if (V.abbreviateSkills === 2) {
+		if (slave.fetish === "mindbroken") {
 			true;
-		} else if (slave.intelligenceImplant == 1) {
+		} else if (slave.intelligenceImplant === 1) {
 			switch (slave.intelligence) {
 				case 3:
 					r += `<span class="deepskyblue">Brilliant, educated.</span>`;
@@ -2318,7 +2329,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					break;
 			}
 		}
-		_SSkills = (slave.analSkill + slave.oralSkill);
+		let _SSkills = (slave.analSkill + slave.oralSkill);
 		r += `<span class="aquamarine">`;
 		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
 			r += `Masterful Sex Slave.`;
@@ -2362,18 +2373,18 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `<span class="green">`;
 			if (slave.prestige > 2) {
 				r += `Extremely prestigious.`;
-			} else if (slave.prestige == 2) {
+			} else if (slave.prestige === 2) {
 				r += `Very prestigious.`;
-			} else if (slave.prestige == 1) {
+			} else if (slave.prestige === 1) {
 				r += `Prestigious.`;
 			}
 			r += `</span>`;
 		}
 	}
 
-	if (V.abbreviateMental == 1) {
-		if (slave.fetish != "mindbroken") {
-			if (slave.fetishKnown == 1) {
+	if (V.abbreviateMental === 1) {
+		if (slave.fetish !== "mindbroken") {
+			if (slave.fetishKnown === 1) {
 				r += `<span class="lightcoral">`;
 				switch (slave.fetish) {
 					case "submissive":
@@ -2466,7 +2477,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				}
 				r += `</span>`;
 			}
-			if (slave.attrKnown == 1) {
+			if (slave.attrKnown === 1) {
 				if (slave.attrXY <= 5) {
 					r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
 				} else if (slave.attrXY <= 15) {
@@ -2520,33 +2531,33 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				}
 			}
 		}
-		if (slave.clitPiercing == 3) {
-			if (slave.fetishKnown == 1) {
-				if (slave.clitSetting == "off") {
+		if (slave.clitPiercing === 3) {
+			if (slave.fetishKnown === 1) {
+				if (slave.clitSetting === "off") {
 					r += `SP-`;
-				} else if (((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")) {
+				} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
 					r += `SP:sub`;
-				} else if (((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")) {
+				} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
 					r += `SP:oral`;
-				} else if (((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")) {
+				} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
 					r += `SP:humil`;
-				} else if (((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")) {
+				} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
 					r += `SP:anal`;
-				} else if (((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")) {
+				} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
 					r += `SP:boobs`;
-				} else if (((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")) {
+				} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
 					r += `SP:sade`;
-				} else if (((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")) {
+				} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
 					r += `SP:pain`;
-				} else if (((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")) {
+				} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
 					r += `SP:dom`;
-				} else if (((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")) {
+				} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
 					r += `SP:preg`;
-				} else if (((slave.fetish != "none") && (slave.clitSetting == "vanilla"))) {
+				} else if (((slave.fetish !== "none") && (slave.clitSetting === "vanilla"))) {
 					r += `SP:vanilla`;
-				} else if ((slave.energy <= 95) && (slave.clitSetting == "all")) {
+				} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
 					r += `SP:all`;
-				} else if ((slave.energy > 5) && (slave.clitSetting == "none")) {
+				} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
 					r += `SP:none`;
 				} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
 					r += `SP:monitoring`;
@@ -2597,26 +2608,26 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 						break;
 				}
 			}
-			if (slave.attrKnown == 1) {
-				if (slave.clitSetting == "women") {
+			if (slave.attrKnown === 1) {
+				if (slave.clitSetting === "women") {
 					if (slave.attrXX < 95) {
 						r += `SP:women`;
 					} else {
 						r += `SP:monitoring`;
 					}
-				} else if (slave.clitSetting == "men") {
+				} else if (slave.clitSetting === "men") {
 					if (slave.attrXY < 95) {
 						r += `SP:men`;
 					} else {
 						r += `SP:monitoring`;
 					}
-				} else if (slave.clitSetting == "anti-women") {
+				} else if (slave.clitSetting === "anti-women") {
 					if (slave.attrXX > 0) {
 						r += `SP:anti-women`;
 					} else {
 						r += `SP:monitoring`;
 					}
-				} else if (slave.clitSetting == "anti-men") {
+				} else if (slave.clitSetting === "anti-men") {
 					if (slave.attrXY > 0) {
 						r += `SP:anti-men`;
 					} else {
@@ -2624,13 +2635,13 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					}
 				}
 			} else {
-				if (slave.clitSetting == "women") {
+				if (slave.clitSetting === "women") {
 					r += `SP:women`;
-				} else if (slave.clitSetting == "men") {
+				} else if (slave.clitSetting === "men") {
 					r += `SP:men`;
-				} else if (slave.clitSetting == "anti-women") {
+				} else if (slave.clitSetting === "anti-women") {
 					r += `SP:anti-women`;
-				} else if (slave.clitSetting == "anti-men") {
+				} else if (slave.clitSetting === "anti-men") {
 					r += `SP:anti-men`;
 				}
 			}
@@ -2794,9 +2805,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				break;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateMental == 2) {
-		if (slave.fetish != "mindbroken") {
-			if (slave.fetishKnown == 1) {
+	} else if (V.abbreviateMental === 2) {
+		if (slave.fetish !== "mindbroken") {
+			if (slave.fetishKnown === 1) {
 				r += `<span class="lightcoral">`;
 				switch (slave.fetish) {
 					case "submissive":
@@ -2887,7 +2898,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `</span>`;
 			}
 		}
-		if (slave.attrKnown == 1) {
+		if (slave.attrKnown === 1) {
 			if (slave.attrXY <= 5) {
 				r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 			} else if (slave.attrXY <= 15) {
@@ -2940,33 +2951,33 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 			}
 		}
-		if (slave.clitPiercing == 3) {
-			if (slave.fetishKnown == 1) {
-				if (slave.clitSetting == "off") {
+		if (slave.clitPiercing === 3) {
+			if (slave.fetishKnown === 1) {
+				if (slave.clitSetting === "off") {
 					r += `SP off.`;
-				} else if (((slave.fetish != "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "submissive")) {
+				} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
 					r += `SP: submissive.`;
-				} else if (((slave.fetish != "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "oral")) {
+				} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
 					r += `SP: oral.`;
-				} else if (((slave.fetish != "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "humiliation")) {
+				} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
 					r += `SP: humiliation.`;
-				} else if (((slave.fetish != "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "anal")) {
+				} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
 					r += `SP: anal.`;
-				} else if (((slave.fetish != "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "boobs")) {
+				} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
 					r += `SP: breasts.`;
-				} else if (((slave.fetish != "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "sadist")) {
+				} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
 					r += `SP: sadism.`;
-				} else if (((slave.fetish != "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "masochist")) {
+				} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
 					r += `SP: masochism.`;
-				} else if (((slave.fetish != "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "dom")) {
+				} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
 					r += `SP: dominance.`;
-				} else if (((slave.fetish != "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting == "pregnancy")) {
+				} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
 					r += `SP: pregnancy.`;
-				} else if ((slave.fetish != "none") && (slave.clitSetting == "vanilla")) {
+				} else if ((slave.fetish !== "none") && (slave.clitSetting === "vanilla")) {
 					r += `SP: vanilla.`;
-				} else if ((slave.energy <= 95) && (slave.clitSetting == "all")) {
+				} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
 					r += `SP: all.`;
-				} else if ((slave.energy > 5) && (slave.clitSetting == "none")) {
+				} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
 					r += `SP: none.`;
 				} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
 					r += `SP: monitoring.`;
@@ -3014,16 +3025,16 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 						break;
 				}
 			}
-			if (slave.attrKnown == 1) {
-				if ((slave.attrXX < 100) && (slave.clitSetting == "women")) {
+			if (slave.attrKnown === 1) {
+				if ((slave.attrXX < 100) && (slave.clitSetting === "women")) {
 					r += `SP: women.`;
-				} else if ((slave.attrXY < 100) && (slave.clitSetting == "men")) {
+				} else if ((slave.attrXY < 100) && (slave.clitSetting === "men")) {
 					r += `SP: men.`;
 				}
 			} else {
-				if (slave.clitSetting == "women") {
+				if (slave.clitSetting === "women") {
 					r += `SP: women.`;
-				} else if (slave.clitSetting == "men") {
+				} else if (slave.clitSetting === "men") {
 					r += `SP: men.`;
 				}
 			}
@@ -3189,34 +3200,35 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `</span>`;
 	}
 
-	if (slave.customLabel != "") {
+	if (slave.customLabel !== "") {
 		r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
 	}
 
-	if ((slave.relationship != 0) || (slave.relation != 0) || (V.abbreviateClothes == 2) || (V.abbreviateRulesets == 2)) {
+	if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
 		r += `<br>`;
-		if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
 	}
 
-	if (V.abbreviateMental == 1) {
+	if (V.abbreviateMental === 1) {
 		r += `<span class="lightgreen">`;
-		if (V.familyTesting == 1) {
+		let _relationshipHandled = 0;
+		if (V.familyTesting === 1) {
 			if (slave.mother > 0) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.mother;
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.mother;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+						if (slave.relationship === 1) {
 							r += ` & friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` & BFF`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` & FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` & lover`;
 						} else {
 							r += ` & wife`;
@@ -3224,30 +3236,30 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 						_relationshipHandled = 1;
 					}
 				}
-			} else if (slave.mother == -1) {
+			} else if (slave.mother === -1) {
 				r += `Your daughter`;
-				if (slave.relationship == -3) {
+				if (slave.relationship === -3) {
 					r += `& wife`;
 					_relationshipHandled = 1;
-				} else if (slave.relationship == -2) {
+				} else if (slave.relationship === -2) {
 					r += `& lover`;
 					_relationshipHandled = 1;
 				}
 			}
-			if (slave.father > 0 && slave.father != slave.mother) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.father;
+			if (slave.father > 0 && slave.father !== slave.mother) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.father;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+						if (slave.relationship === 1) {
 							r += ` & friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` & BFF`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` & FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` & lover`;
 						} else {
 							r += ` & wife`;
@@ -3255,30 +3267,30 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 						_relationshipHandled = 1;
 					}
 				}
-			} else if (slave.father == -1 && slave.mother != -1) {
+			} else if (slave.father === -1 && slave.mother !== -1) {
 				r += `Your daughter`;
-				if (slave.relationship == -3) {
+				if (slave.relationship === -3) {
 					r += `& wife`;
 					_relationshipHandled = 1;
-				} else if (slave.relationship == -2) {
+				} else if (slave.relationship === -2) {
 					r += `& lover`;
 					_relationshipHandled = 1;
 				}
 			}
-			if (slave.daughters == 1) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.mother == slave.ID;
+			if (slave.daughters === 1) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.mother === slave.ID;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+						if (slave.relationship === 1) {
 							r += ` & friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` & BFF`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` & FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` & lover`;
 						} else {
 							r += ` & wife`;
@@ -3287,18 +3299,18 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					}
 				}
 				_ssj = V.slaves.findIndex(function(s) {
-					return s.father == slave.ID;
+					return s.father === slave.ID;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID && _relationshipHandled != 1) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+						if (slave.relationship === 1) {
 							r += ` & friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` & BFF`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` & FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` & lover`;
 						} else {
 							r += ` & wife`;
@@ -3309,20 +3321,20 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			} else if (slave.daughters > 1) {
 				r += `multiple daughters`;
 			}
-			if (slave.sisters == 1) {
-				_ssj = V.slaves.findIndex(function(s) {
+			if (slave.sisters === 1) {
+				let _ssj = V.slaves.findIndex(function(s) {
 					return areSisters(s, slave) > 0;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+						if (slave.relationship === 1) {
 							r += ` & friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` & BFF`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` & FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` & lover`;
 						} else {
 							r += ` & wife`;
@@ -3333,11 +3345,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			} else if (slave.sisters > 1) {
 				r += `multiple sisters`;
 			}
-			if (slave.relationship > 0 && _relationshipHandled != 1) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.relationshipTarget;
+			if (slave.relationship > 0 && _relationshipHandled !== 1) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.relationshipTarget;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 					switch (slave.relationship) {
 						case 1:
@@ -3357,30 +3369,30 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							break;
 					}
 				}
-			} else if (slave.relationship == -3) {
+			} else if (slave.relationship === -3) {
 				r += `Your wife`;
-			} else if (slave.relationship == -2) {
+			} else if (slave.relationship === -2) {
 				r += `E Bonded`;
-			} else if (slave.relationship == -1) {
+			} else if (slave.relationship === -1) {
 				r += `E Slut`;
 			}
 		} else {
-			if (slave.relation != 0) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.relationTarget;
+			if (slave.relation !== 0) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.relationTarget;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
 				}
 			}
 			if (slave.relationship > 0) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.relationshipTarget;
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.relationshipTarget;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					switch (slave.relationship) {
 						case 1:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `&`;
@@ -3388,7 +3400,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							r += `friend`;
 							break;
 						case 2:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `&`;
@@ -3396,7 +3408,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							r += `BFF`;
 							break;
 						case 3:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `&`;
@@ -3404,7 +3416,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							r += `FWB`;
 							break;
 						case 4:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `&`;
@@ -3412,7 +3424,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							r += `lover`;
 							break;
 						case 5:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `&`;
@@ -3421,22 +3433,22 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							break;
 					}
 				}
-			} else if (slave.relationship == -3) {
+			} else if (slave.relationship === -3) {
 				r += `Your wife`;
-			} else if (slave.relationship == -2) {
+			} else if (slave.relationship === -2) {
 				r += `E Bonded`;
-			} else if (slave.relationship == -1) {
+			} else if (slave.relationship === -1) {
 				r += `E Slut`;
 			}
 		}
 		r += `</span>`;
 		_relationshipHandled = 0;
-		if (slave.rivalry != 0) {
+		if (slave.rivalry !== 0) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-			_ssj = V.slaves.findIndex(function(s) {
-				return s.ID == slave.rivalryTarget;
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.rivalryTarget;
 			});
-			if (_ssj != -1) {
+			if (_ssj !== -1) {
 				r += `<span class="lightsalmon">`;
 				if (slave.rivalry <= 1) {
 					r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
@@ -3448,22 +3460,23 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `</span>`;
 			}
 		}
-	} else if (V.abbreviateMental == 2) {
-		if (V.familyTesting == 1) {
+	} else if (V.abbreviateMental === 2) {
+		let _relationshipHandled = 0;
+		if (V.familyTesting === 1) {
 			if (slave.mother > 0) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.mother;
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.mother;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+						if (slave.relationship === 1) {
 							r += ` and friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` and best friend`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` and FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` and lover`;
 						} else {
 							r += ` and wife`;
@@ -3472,33 +3485,32 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					}
 					r += `.</span>`;
 				}
-			} else if (slave.mother == -1) {
+			} else if (slave.mother === -1) {
 				r += `Your`;
-				if (slave.relationship == -3) {
+				if (slave.relationship === -3) {
 					r += `<span class="lightgreen">daughter and wife.</span>`;
 					_relationshipHandled = 1;
-				} else if (slave.relationship == -2) {
+				} else if (slave.relationship === -2) {
 					r += `<span class="lightgreen">daughter and lover.</span>`;
 					_relationshipHandled = 1;
 				} else {
 					r += `<span class="lightgreen">daughter.</span>`;
 				}
 			}
-			// HERE
-			if (slave.father > 0 && slave.father != slave.mother) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.father;
+			if (slave.father > 0 && slave.father !== slave.mother) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.father;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+						if (slave.relationship === 1) {
 							r += ` and friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` and best friend`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` and FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` and lover`;
 						} else {
 							r += ` and wife`;
@@ -3507,32 +3519,32 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					}
 					r += `.</span>`;
 				}
-			} else if (slave.father == -1 && slave.father != slave.mother) {
+			} else if (slave.father === -1 && slave.father !== slave.mother) {
 				r += `Your`;
-				if (slave.relationship == -3) {
+				if (slave.relationship === -3) {
 					r += `<span class="lightgreen">daughter and wife.</span>`;
 					_relationshipHandled = 1;
-				} else if (slave.relationship == -2) {
+				} else if (slave.relationship === -2) {
 					r += `<span class="lightgreen">daughter and lover.</span>`;
 					_relationshipHandled = 1;
 				} else {
 					r += `<span class="lightgreen">daughter.</span>`;
 				}
 			}
-			if (slave.daughters == 1) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.mother == slave.ID;
+			if (slave.daughters === 1) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.mother === slave.ID;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+						if (slave.relationship === 1) {
 							r += ` and friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` and best friend`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` and FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` and lover`;
 						} else {
 							r += ` and wife`;
@@ -3542,18 +3554,18 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					r += `.</span>`;
 				}
 				_ssj = V.slaves.findIndex(function(s) {
-					return s.father == slave.ID;
+					return s.father === slave.ID;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+						if (slave.relationship === 1) {
 							r += ` and friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` and best friend`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` and FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` and lover`;
 						} else {
 							r += ` and wife`;
@@ -3571,20 +3583,20 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					r += `<span class="lightgreen">Has several daughters.</span>`;
 				}
 			}
-			if (slave.sisters == 1) {
-				_ssj = V.slaves.findIndex(function(s) {
+			if (slave.sisters === 1) {
+				let _ssj = V.slaves.findIndex(function(s) {
 					return areSisters(s, slave) > 0;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
-					if (slave.relationshipTarget == V.slaves[_ssj].ID) {
-						if (slave.relationship == 1) {
+					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+						if (slave.relationship === 1) {
 							r += ` and friend`;
-						} else if (slave.relationship == 2) {
+						} else if (slave.relationship === 2) {
 							r += ` and best friend`;
-						} else if (slave.relationship == 3) {
+						} else if (slave.relationship === 3) {
 							r += ` and FWB`;
-						} else if (slave.relationship == 4) {
+						} else if (slave.relationship === 4) {
 							r += ` and lover`;
 						} else {
 							r += ` and wife`;
@@ -3602,11 +3614,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					r += `<span class="lightgreen">Has several sisters.</span>`;
 				}
 			}
-			if (slave.relationship > 0 && _relationshipHandled != 1) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.relationshipTarget;
+			if (slave.relationship > 0 && _relationshipHandled !== 1) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.relationshipTarget;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 					switch (slave.relationship) {
 						case 1:
@@ -3626,21 +3638,21 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							break;
 					}
 				}
-			} else if (slave.relationship == -3) {
+			} else if (slave.relationship === -3) {
 				r += `<span class="lightgreen">Your wife.</span>`;
-			} else if (slave.relationship == -2) {
+			} else if (slave.relationship === -2) {
 				r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
-			} else if (slave.relationship == -1) {
+			} else if (slave.relationship === -1) {
 				r += `<span class="lightgreen">Emotional slut.</span>`;
 			}
 		} else {
-			if (slave.relation != 0) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.relationTarget;
+			if (slave.relation !== 0) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.relationTarget;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-					if (slave.relationshipTarget != slave.relationTarget) {
+					if (slave.relationshipTarget !== slave.relationTarget) {
 						r += `<span class="lightgreen">${slave.relation}</span>.`;
 					} else {
 						r += `<span class="lightgreen">${slave.relation}</span>`;
@@ -3651,13 +3663,13 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				}
 			}
 			if (slave.relationship > 0) {
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.ID == slave.relationshipTarget;
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.relationshipTarget;
 				});
-				if (_ssj != -1) {
+				if (_ssj !== -1) {
 					switch (slave.relationship) {
 						case 1:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `and`;
@@ -3665,7 +3677,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							r += `<span class="lightgreen">friend.</span>`;
 							break;
 						case 2:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `and`;
@@ -3673,7 +3685,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							r += `<span class="lightgreen">best friend.</span>`;
 							break;
 						case 3:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `and`;
@@ -3681,7 +3693,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							r += `<span class="lightgreen">FWB.</span>`;
 							break;
 						case 4:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `and`;
@@ -3689,7 +3701,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							r += `<span class="lightgreen">lover.</span>`;
 							break;
 						case 5:
-							if (slave.relationshipTarget != slave.relationTarget) {
+							if (slave.relationshipTarget !== slave.relationTarget) {
 								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 							} else {
 								r += `and`;
@@ -3698,21 +3710,21 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 							break;
 					}
 				}
-			} else if (slave.relationship == -3) {
+			} else if (slave.relationship === -3) {
 				r += `<span class="lightgreen">Your wife.</span>`;
-			} else if (slave.relationship == -2) {
+			} else if (slave.relationship === -2) {
 				r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
-			} else if (slave.relationship == -1) {
+			} else if (slave.relationship === -1) {
 				r += `<span class="lightgreen">Emotional slut.</span>`;
 			}
 		}
 		_relationshipHandled = 0;
-		if (slave.rivalry != 0) {
+		if (slave.rivalry !== 0) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-			_ssj = V.slaves.findIndex(function(s) {
-				return s.ID == slave.rivalryTarget;
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.rivalryTarget;
 			});
-			if (_ssj != -1) {
+			if (_ssj !== -1) {
 				if (slave.rivalry <= 1) {
 					r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
 				} else if (slave.rivalry <= 2) {
@@ -3724,10 +3736,10 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 	}
 
-	if (slave.fuckdoll == 0) {
-		if (V.abbreviateClothes == 2) {
+	if (slave.fuckdoll === 0) {
+		if (V.abbreviateClothes === 2) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-			if (slave.choosesOwnClothes == 1) {
+			if (slave.choosesOwnClothes === 1) {
 				r += `Dressing herself.`;
 			}
 			switch (slave.clothes) {
@@ -3994,25 +4006,25 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					r += `Extreme corsetage.`;
 					break;
 			}
-			if (slave.amp != 1) {
-				if (slave.legAccessory == "short stockings") {
+			if (slave.amp !== 1) {
+				if (slave.legAccessory === "short stockings") {
 					r += `Short stockings.`;
-				} else if (slave.legAccessory == "long stockings") {
+				} else if (slave.legAccessory === "long stockings") {
 					r += `Long stockings.`;
 				}
 			}
 			if (canWalk(slave)) {
-				if (slave.shoes == "heels") {
+				if (slave.shoes === "heels") {
 					r += `Heels.`;
-				} else if (slave.shoes == "pumps") {
+				} else if (slave.shoes === "pumps") {
 					r += `Pumps.`;
-				} else if (slave.shoes == "extreme heels") {
+				} else if (slave.shoes === "extreme heels") {
 					r += `Extreme heels.`;
-				} else if (slave.shoes == "boots") {
+				} else if (slave.shoes === "boots") {
 					r += `Boots.`;
-				} else if (slave.heels == 1) {
+				} else if (slave.heels === 1) {
 					r += `<span class="yellow">Crawling.</span>`;
-				} else if (slave.shoes == "flats") {
+				} else if (slave.shoes === "flats") {
 					r += `Flats.`;
 				}
 			}
@@ -4045,11 +4057,11 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 					r += `Long and wide vaginal dildo.`;
 					break;
 			}
-			if (slave.dickAccessory == "chastity") {
+			if (slave.dickAccessory === "chastity") {
 				r += `Chastity cage.`;
-			} else if (slave.dickAccessory == "combined chastity") {
+			} else if (slave.dickAccessory === "combined chastity") {
 				r += `Combined chastity.`;
-			} else if (slave.dickAccessory == "anal chastity") {
+			} else if (slave.dickAccessory === "anal chastity") {
 				r += `Anal chastity.`;
 			}
 			switch (slave.buttplug) {
@@ -4081,15 +4093,15 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 	}
 
 	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	if (slave.useRulesAssistant == 0) {
+	if (slave.useRulesAssistant === 0) {
 		r += `<span class="lightgreen">RA-Exempt</span>`;
-	} else if (V.abbreviateRulesets == 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
+	} else if (V.abbreviateRulesets === 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
 		r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") }`;
 	}
 
-	if (V.abbreviateOrigins == 2 && slave.origin != 0) {
+	if (V.abbreviateOrigins === 2 && slave.origin !== 0) {
 		r += `<br>`;
-		if (V.seeImages != 1 || V.seeSummaryImages != 1 || V.imageChoice == 1) {
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
 		r += `<span class="gray">${slave.origin}</span>`;
diff --git a/src/pregmod/widgets/slaveSummaryWidgets.tw b/src/pregmod/widgets/slaveSummaryWidgets.tw
index c88e9092db9..1ef14f1e4b4 100644
--- a/src/pregmod/widgets/slaveSummaryWidgets.tw
+++ b/src/pregmod/widgets/slaveSummaryWidgets.tw
@@ -2,26 +2,7 @@
 
 /* Try to use cached summary */
 <<run setup.summaryCache = {}>>
-<<widget "SlaveSummary">>
-<<if $useSummaryCache>>
-	<<set _Slave = $args[0]>>
-	<<if !setup.summaryCache[_Slave.ID]>>
-		<<run setup.summaryCache[_Slave.ID] = SlaveSummaryUncached($args[0])>>
-	<</if>>
-	<<script>>
-		/*
-		 * NOTE: This is for text passages only. Links inside it need to have their events re-attached
-		 * Example basic code to do so:
-		 * jQuery(summary).find('.link-internal').each(function() {
-		 *   var el = jQuery(this);
-		 *   el.ariaClick({ one : true }, () => Engine.play(el.attr('data-passage')));
-		 * });
-		 */
-		this.output.appendChild(setup.summaryCache[State.temporary.Slave.ID].cloneNode(true))
-	<</script>>
-<<else>>
-	<<SlaveSummaryUncached $args[0]>>
-<</if>>
-<</widget>>
+
+<<widget "SlaveSummary">><<=SlaveSummary($args[0])>><</widget>>
 
 <<widget "SlaveSummaryUncached">><<=SlaveSummaryUncached($args[0])>><</widget>>
-- 
GitLab


From 0e07a688c05d7e62a7eacf24a224e04ec6a7e1b8 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Tue, 10 Jul 2018 00:31:25 +0300
Subject: [PATCH 015/189] better rule separation

---
 src/js/slaveSummaryWidgets.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index dfcdfd633f1..c60e62e5cb1 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -4096,7 +4096,7 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 	if (slave.useRulesAssistant === 0) {
 		r += `<span class="lightgreen">RA-Exempt</span>`;
 	} else if (V.abbreviateRulesets === 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
-		r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(" ") }`;
+		r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(", ") }`;
 	}
 
 	if (V.abbreviateOrigins === 2 && slave.origin !== 0) {
-- 
GitLab


From 1d579794d20c04a77eb9a3b79a3ab2050c30240f Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Tue, 10 Jul 2018 01:14:32 +0300
Subject: [PATCH 016/189] split into smaller functions part 1

---
 TODO.txt                      |   3 -
 src/js/slaveSummaryWidgets.tw | 583 +++++++++++++++++++++-------------
 2 files changed, 361 insertions(+), 225 deletions(-)

diff --git a/TODO.txt b/TODO.txt
index 76cefd27d0f..b7c5a96afd2 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -17,6 +17,3 @@ Rules Assistant:
 
 main.tw porting:
 - slaveart
-- slavesummary
-- slavesummaryuncached
-- clothingSelectionJS.tw pronouns
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index c60e62e5cb1..158d458bd76 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -19,11 +19,16 @@ window.SlaveSummary = function SlaveSummary(slave) {
 	} else return SlaveSummaryUncached(slave);
 };
 
-window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
+window.SlaveSummaryUncached = (function(){
 	"use strict";
-	const V = State.variables;
-	let r = "";
-	if (V.abbreviateDevotion === 1) {
+	let V, r
+	
+	function SlaveSummaryUncached(slave) {
+		V = State.variables;
+		r = "";
+	}
+	
+	function short_devotion(slave) {
 		if (slave.fetish === "mindbroken") {
 			r += `<span class="red">MB</span>`;
 		} else if (slave.devotion < -95) {
@@ -70,7 +75,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 			}
 		}
-	} else if (V.abbreviateDevotion === 2) {
+	}
+	
+	function long_devotion(slave) {
 		if (slave.fetish === "mindbroken") {
 			r += `<span class="red">Mindbroken.</span>`;
 		} else if (slave.devotion < -95) {
@@ -118,106 +125,102 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			}
 		}
 	}
-
-	if (slave.fuckdoll === 0) {
-		if (V.abbreviateRules === 1) {
-			switch (slave.livingRules) {
-				case "luxurious":
-					r += `<strong>LS:Lux</strong>`;
-					break;
-				case "normal":
-					r += `<strong>LS:Nor</strong>`;
-					break;
-				default:
-					r += `<strong>LS:Spa</strong>`;
-					break;
-			}
-			if (canTalk(slave)) {
-				switch (slave.speechRules) {
-					case "permissive":
-						r += `<strong>SpR:P</strong>`;
-						break;
-					case "accent elimination":
-						r += `<strong>SpR:NoAcc</strong>`;
-						break;
-					case "language lessons":
-						r += `<strong>SpR:LL</strong>`;
-						break;
-					default:
-						r += `<strong>SpR:R</strong>`;
-						break;
-				}
-			}
-			switch (slave.relationshipRules) {
-				case "permissive":
-					r += `<strong>ReR:P</strong>`;
-					break;
-				case "just friends":
-					r += `<strong>ReR:Fr</strong>`;
-					break;
-				default:
-					r += `<strong>ReR:R</strong>`;
-					break;
-			}
-			switch (slave.standardPunishment) {
-				case "confinement":
-					r += `<strong>Pun:Conf</strong>`;
-					break;
-				case "whipping":
-					r += `<strong>Pun:Whip</strong>`;
-					break;
-				case "chastity":
-					r += `<strong>Pun:Chas</strong>`;
-					break;
-				default:
-					r += `<strong>Pun:Situ</strong>`;
-					break;
-			}
-			switch (slave.standardReward) {
-				case "relaxation":
-					r += `<strong>Rew:Relx</strong>`;
-					break;
-				case "drugs":
-					r += `<strong>Rew:Drug</strong>`;
-					break;
-				case "orgasm":
-					r += `<strong>Rew:Orga</strong>`;
-					break;
-				default:
-					r += `<strong>Rew:Situ</strong>`;
-					break;
-			}
-			switch (slave.releaseRules) {
+	
+	function short_rules(slave) {
+		switch (slave.livingRules) {
+			case "luxurious":
+				r += `<strong>LS:Lux</strong>`;
+				break;
+			case "normal":
+				r += `<strong>LS:Nor</strong>`;
+				break;
+			default:
+				r += `<strong>LS:Spa</strong>`;
+				break;
+		}
+		if (canTalk(slave)) {
+			switch (slave.speechRules) {
 				case "permissive":
-					r += `<strong>MaR:P</strong>`;
+					r += `<strong>SpR:P</strong>`;
 					break;
-				case "sapphic":
-					r += `<strong>MaR:S</strong>`;
+				case "accent elimination":
+					r += `<strong>SpR:NoAcc</strong>`;
 					break;
-				case "masturbation":
-					r += `<strong>MaR:M</strong>`;
+				case "language lessons":
+					r += `<strong>SpR:LL</strong>`;
 					break;
 				default:
-					r += `<strong>MaR:R</strong>`;
+					r += `<strong>SpR:R</strong>`;
 					break;
 			}
-		} else if (V.abbreviateRules === 2) {
-			r += `Living standard: ${slave.livingRules}.`;
-			if (canTalk(slave)) {
-				r += `Speech rules: ${slave.speechRules}.`;
-			}
-			r += `Relationship rules: ${slave.relationshipRules}.`;
-			r += `Typical punishment: ${slave.standardPunishment}.`;
-			r += `Typical reward: ${slave.standardReward}.`;
-			r += `Release rules: ${slave.releaseRules}.`;
+		}
+		switch (slave.relationshipRules) {
+			case "permissive":
+				r += `<strong>ReR:P</strong>`;
+				break;
+			case "just friends":
+				r += `<strong>ReR:Fr</strong>`;
+				break;
+			default:
+				r += `<strong>ReR:R</strong>`;
+				break;
+		}
+		switch (slave.standardPunishment) {
+			case "confinement":
+				r += `<strong>Pun:Conf</strong>`;
+				break;
+			case "whipping":
+				r += `<strong>Pun:Whip</strong>`;
+				break;
+			case "chastity":
+				r += `<strong>Pun:Chas</strong>`;
+				break;
+			default:
+				r += `<strong>Pun:Situ</strong>`;
+				break;
+		}
+		switch (slave.standardReward) {
+			case "relaxation":
+				r += `<strong>Rew:Relx</strong>`;
+				break;
+			case "drugs":
+				r += `<strong>Rew:Drug</strong>`;
+				break;
+			case "orgasm":
+				r += `<strong>Rew:Orga</strong>`;
+				break;
+			default:
+				r += `<strong>Rew:Situ</strong>`;
+				break;
+		}
+		switch (slave.releaseRules) {
+			case "permissive":
+				r += `<strong>MaR:P</strong>`;
+				break;
+			case "sapphic":
+				r += `<strong>MaR:S</strong>`;
+				break;
+			case "masturbation":
+				r += `<strong>MaR:M</strong>`;
+				break;
+			default:
+				r += `<strong>MaR:R</strong>`;
+				break;
 		}
 	}
-
-	if (slave.tired !== 0) {
-		r += `Tired.`;
+	
+	function long_rules(slave) {
+		r += `Living standard: ${slave.livingRules}.`;
+		if (canTalk(slave)) {
+			r += `Speech rules: ${slave.speechRules}.`;
+		}
+		r += `Relationship rules: ${slave.relationshipRules}.`;
+		r += `Typical punishment: ${slave.standardPunishment}.`;
+		r += `Typical reward: ${slave.standardReward}.`;
+		r += `Release rules: ${slave.releaseRules}.`;
 	}
-
-	if (V.abbreviateDiet === 1) {
+	
+	function short_weight(slave) {
 		if (slave.weight < -95) {
 			r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 		} else if (slave.weight < -30) {
@@ -263,7 +266,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		}
-	} else if (V.abbreviateDiet === 2) {
+	}
+	
+	function long_weight(slave) {
 		if (slave.weight < -95) {
 			r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 		} else if (slave.weight < -30) {
@@ -309,9 +314,10 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		}
-	}
 
-	if (V.abbreviateDiet === 1) {
+	}
+	
+	function short_diet(slave) {
 		r += `<span class="teal">`;
 		switch (slave.diet) {
 			case "restricted":
@@ -359,7 +365,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `<strong>Milk++</strong>`;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateDiet === 2) {
+	}
+	
+	function long_diet(slave) {
 		r += `<span class="teal">`;
 		switch (slave.diet) {
 			case "restricted":
@@ -406,8 +414,8 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `Diet Base: <span class="cyan">Milk Based.</span>`;
 		}
 	}
-
-	if (V.abbreviateHealth === 1) {
+	
+	function short_health(slave) {
 		if (slave.health < -20) {
 			r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
 		} else if (slave.health <= 20) {
@@ -415,7 +423,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else if (slave.health > 20) {
 			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
 		}
-	} else if (V.abbreviateHealth === 2) {
+	}
+	
+	function long_health(slave) {
 		if (slave.health < -90) {
 			r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
 		} else if (slave.health < -50) {
@@ -432,8 +442,8 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
 		}
 	}
-
-	if (V.abbreviateDrugs === 1) {
+	
+	function short_drugs(slave) {
 		r += `<span class="tan">`;
 		switch (slave.drugs) {
 			case "breast injections":
@@ -612,7 +622,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateDrugs === 2) {
+	}
+	
+	function long_drugs(slave) {
 		if ((slave.drugs !== "no drugs") && (slave.drugs !== "none")) {
 			r += `<span class="tan">On ${slave.drugs}.</span>`;
 		}
@@ -715,111 +727,96 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 		r += `</span>`;
 	}
-
-	if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
-		r += `<br>`;
-		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	
+	function long_race(slave) {
+		switch (slave.race) {
+			case "white":
+				r += `Caucasian.`;
+				break;
+			case "asian":
+				r += `Asian.`;
+				break;
+			case "indo-aryan":
+				r += `Indo-aryan.`;
+				break;
+			case "latina":
+				r += `Latina.`;
+				break;
+			case "middle eastern":
+				r += `Middle Eastern.`;
+				break;
+			case "black":
+				r += `Black.`;
+				break;
+			case "pacific islander":
+				r += `Pacific Islander.`;
+				break;
+			case "malay":
+				r += `Malay.`;
+				break;
+			case "amerindian":
+				r += `Amerindian.`;
+				break;
+			case "semitic":
+				r += `Semitic.`;
+				break;
+			case "southern european":
+				r += `Southern European.`;
+				break;
+			case "mixed race":
+				r += `Mixed race.`;
+				break;
+			default:
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
+				break;
 		}
 	}
-
-	V.desc = SlaveTitle(slave);
-	V.seed = V.desc.substring(0, 1);
-	V.seed = V.seed.toUpperCase();
-	V.desc = V.seed + V.desc.substring(1);
-	r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong>`;
-
-	if (V.seeRace === 1) {
-		r += `<span class="tan">`;
-		if (V.abbreviateRace === 1) {
-			switch (slave.race) {
-				case "white":
-					r += `C`;
-					break;
-				case "asian":
-					r += `A`;
-					break;
-				case "indo-aryan":
-					r += `I`;
-					break;
-				case "latina":
-					r += `L`;
-					break;
-				case "middle eastern":
-					r += `ME`;
-					break;
-				case "black":
-					r += `B`;
-					break;
-				case "pacific islander":
-					r += `PI`;
-					break;
-				case "malay":
-					r += `M`;
-					break;
-				case "amerindian":
-					r += `AI`;
-					break;
-				case "semitic":
-					r += `S`;
-					break;
-				case "southern european":
-					r += `SE`;
-					break;
-				case "mixed race":
-					r += `MR`;
-					break;
-				default:
-					r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
-					break;
-			}
-		} else if (V.abbreviateRace === 2) {
-			switch (slave.race) {
-				case "white":
-					r += `Caucasian.`;
-					break;
-				case "asian":
-					r += `Asian.`;
-					break;
-				case "indo-aryan":
-					r += `Indo-aryan.`;
-					break;
-				case "latina":
-					r += `Latina.`;
-					break;
-				case "middle eastern":
-					r += `Middle Eastern.`;
-					break;
-				case "black":
-					r += `Black.`;
-					break;
-				case "pacific islander":
-					r += `Pacific Islander.`;
-					break;
-				case "malay":
-					r += `Malay.`;
-					break;
-				case "amerindian":
-					r += `Amerindian.`;
-					break;
-				case "semitic":
-					r += `Semitic.`;
-					break;
-				case "southern european":
-					r += `Southern European.`;
-					break;
-				case "mixed race":
-					r += `Mixed race.`;
-					break;
-				default:
-					r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
-					break;
-			}
+	
+	function short_race(slave) {
+		switch (slave.race) {
+			case "white":
+				r += `C`;
+				break;
+			case "asian":
+				r += `A`;
+				break;
+			case "indo-aryan":
+				r += `I`;
+				break;
+			case "latina":
+				r += `L`;
+				break;
+			case "middle eastern":
+				r += `ME`;
+				break;
+			case "black":
+				r += `B`;
+				break;
+			case "pacific islander":
+				r += `PI`;
+				break;
+			case "malay":
+				r += `M`;
+				break;
+			case "amerindian":
+				r += `AI`;
+				break;
+			case "semitic":
+				r += `S`;
+				break;
+			case "southern european":
+				r += `SE`;
+				break;
+			case "mixed race":
+				r += `MR`;
+				break;
+			default:
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
+				break;
 		}
-		r += `</span>`;
 	}
-
-	if (V.abbreviateNationality === 1) {
+	
+	function short_nationality(slave) {
 		r += `<span class="tan">`;
 		switch (slave.nationality) {
 			case "Afghan":
@@ -1488,7 +1485,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				break;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateNationality === 2) {
+	}
+	
+	function long_nationality(slave) {
 		r += `<span class="tan">`;
 		switch (slave.nationality) {
 			case "Zimbabwean":
@@ -1510,8 +1509,8 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 		r += `</span>`;
 	}
-
-	if (V.abbreviatePhysicals === 1) {
+	
+	function short_skin(slave) {
 		r += `<span class="pink">`;
 		switch (slave.skin) {
 			case "light brown":
@@ -1545,10 +1544,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				break;
 		}
 		r += `</span>`;
-	} else {
-		r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
 	}
-	if (V.abbreviateGenitalia === 1) {
+	
+	function short_genitals(slave) {
 		if (slave.dick > 0) {
 			r += `<span class="pink">`;
 			if (slave.balls === 0) {
@@ -1604,7 +1602,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `A+`;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateGenitalia === 2) {
+	}
+	
+	function long_genitals(slave) {
 		if (slave.dick > 0) {
 			r += `<span class="pink">`;
 			if (slave.balls === 0) {
@@ -1661,8 +1661,8 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		}
 		r += `</span>`;
 	}
-
-	if (V.abbreviatePhysicals === 1) {
+	
+	function short_age(slave) {
 		r += `<span class="pink">`;
 		if (V.showAgeDetail === 1) {
 			r += slave.actualAge;
@@ -1685,6 +1685,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		if (slave.visualAge !== slave.physicalAge) {
 			r += `Lks${slave.visualAge}`;
 		}
+	}
+	
+	function short_face(slave) {
 		if (slave.face < -95) {
 			r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
 		} else if (slave.face < -40) {
@@ -1700,16 +1703,17 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
 		}
+	}
+	
+	function short_eyes(slave) {
 		if (slave.eyes === -2) {
 			r += `<span class="red">Blind</span>`;
 		} else if (((slave.eyes === -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
 			r += `<span class="yellow">Sight-</span>`;
 		}
-
-		if (slave.markings !== "none") {
-			r += `Markings`;
-		}
-
+	}
+	
+	function short_lips(slave) {
 		if (slave.lips > 95) {
 			r += `Facepussy`;
 		} else if (slave.lips > 70) {
@@ -1723,6 +1727,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
 		}
+	}
+	
+	function short_teeth(slave) {
 		if (slave.teeth === "crooked") {
 			r += `<span class="yellow">Cr Teeth</span>`;
 		} else if (slave.teeth === "cosmetic braces") {
@@ -1734,6 +1741,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else if (slave.teeth === "pointy") {
 			r += `Fangs`;
 		}
+	}
+	
+	function short_muscles(slave) {
 		if (slave.muscles > 95) {
 			r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
 		} else if (slave.muscles > 50) {
@@ -1757,6 +1767,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
 		}
+	}
+	
+	function short_limbs(slave) {
 		if (slave.amp !== 0) {
 			if (slave.amp === -1) {
 				r += `P-Limbs`;
@@ -1779,6 +1792,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `Heel`;
 		}
 		r += `</span>`;
+	}
+	
+	function short_voice(slave) {
 		if (slave.voice === 0) {
 			r += `<span class="pink">Mute</span>`;
 		} else {
@@ -1792,6 +1808,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 				r += `<span class="pink">Acc</span>`;
 			}
 		}
+	}
+	
+	function short_tits_ass(slave) {
 		r += `<span class="pink">`;
 		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
 			r += `T&A+++`;
@@ -1821,6 +1840,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `Ass`;
 		}
 		r += `</span>`;
+	}
+	
+	function short_hips(slave) {
 		r += `<span class="red">`;
 		if (slave.hips < -1) {
 			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
@@ -1856,6 +1878,9 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			}
 		}
 		r += `</span>`;
+	}
+	
+	function short_waist(slave) {
 		if (slave.waist > 95) {
 			r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
 		} else if (slave.waist > 40) {
@@ -1871,18 +1896,26 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		} else {
 			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
 		}
+	}
+	
+	function short_implants(slave) {
 		r += `<span class="pink">`;
 		if ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant <= 5) && (slave.bellyImplant === -1)) {
 			r += `Natr`;
 		} else {
 			r += `Impl`;
 		}
+	}
+	
+	function short_lactation(slave) {
 		if (slave.lactation === 1) {
 			r += `Lact`;
 		} else if (slave.lactation === 2) {
 			r += `Lact++`;
 		}
-		modScore(slave);
+	}
+	
+	function short_mods(slave) {
 		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
 			true;
 		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
@@ -1896,6 +1929,112 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 			r += `Br`;
 		}
 		r += `</span>`;
+	}
+	
+	return SlaveSummaryUncached;
+	
+	if (V.abbreviateDevotion === 1) {
+		short_devotion(slave);
+	} else if (V.abbreviateDevotion === 2) {
+		long_devotion(slave);
+	}
+
+	if (slave.fuckdoll === 0) {
+		if (V.abbreviateRules === 1) {
+			short_rules(slave);
+		} else if (V.abbreviateRules === 2) {
+			long_rules(slave);
+		}
+	}
+
+	if (slave.tired !== 0) {
+		r += `Tired.`;
+	}
+
+	if (V.abbreviateDiet === 1) {
+		short_weight(slave);
+	} else if (V.abbreviateDiet === 2) {
+		long_weight(slave);
+	}
+
+	if (V.abbreviateDiet === 1) {
+		short_diet(slave);
+	} else if (V.abbreviateDiet === 2) {
+		long_diet(slave);
+	}
+
+	if (V.abbreviateHealth === 1) {
+		short_health(slave);
+	} else if (V.abbreviateHealth === 2) {
+		long_health(slave);
+	}
+
+	if (V.abbreviateDrugs === 1) {
+		short_drugs(slave);
+	} else if (V.abbreviateDrugs === 2) {
+		long_drugs(slave);
+	}
+
+	if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+	}
+
+	V.desc = SlaveTitle(slave);
+	V.seed = V.desc.substring(0, 1);
+	V.seed = V.seed.toUpperCase();
+	V.desc = V.seed + V.desc.substring(1);
+	r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong>`;
+
+	if (V.seeRace === 1) {
+		r += `<span class="tan">`;
+		if (V.abbreviateRace === 1) {
+			short_race(slave);
+		} else if (V.abbreviateRace === 2) {
+			long_race(slave);
+		}
+		r += `</span>`;
+	}
+
+	if (V.abbreviateNationality === 1) {
+		short_nationality(slave);
+	} else if (V.abbreviateNationality === 2) {
+		long_nationality(slave);
+	}
+
+	if (V.abbreviatePhysicals === 1) {
+		short_skin(slave);
+	} else {
+		r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
+	}
+	if (V.abbreviateGenitalia === 1) {
+		short_genitals(slave);
+	} else if (V.abbreviateGenitalia === 2) {
+		long_genitals(slave);
+	}
+
+	if (V.abbreviatePhysicals === 1) {
+		short_age(slave);
+		short_face(slave);
+		short_eyes(slave);
+		if (slave.markings !== "none") {
+			r += `Markings`;
+		}
+		short_lips(slave);
+		short_teeth(slave);
+		short_muscles(slave);
+		short_limbs(slave);
+		short_voice(slave);
+		short_tits_ass(slave);
+		short_hips(slave);
+		short_waist(slave);
+		short_implants(slave);
+		short_lactation(slave);
+		modScore(slave);
+		short_mods(slave);
+	// TODO: done up to here
 	} else if (V.abbreviatePhysicals === 2) {
 		r += `<span class="pink">`;
 		if (V.showAgeDetail === 1) {
@@ -4107,4 +4246,4 @@ window.SlaveSummaryUncached = function SlaveSummaryUncached(slave) {
 		r += `<span class="gray">${slave.origin}</span>`;
 	}
 	return r;
-};
+})();
-- 
GitLab


From 857934212750dcfe22ae44fd075896d18c971c7f Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 9 Jul 2018 20:44:49 -0400
Subject: [PATCH 017/189] Fixes

---
 devNotes/twine JS.txt                    | 372 ++++++++++++++++++++++-
 src/uncategorized/neighborsFSAdoption.tw |  24 ++
 src/uncategorized/pRivalryHostage.tw     |   3 +-
 3 files changed, 392 insertions(+), 7 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 19430ede9e0..c84bdc5df14 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -6427,7 +6427,7 @@ window.modScore = function modScore(slave) {
 	V.piercingScore = PiercingScore(slave);
 	V.tatScore = TatScore(slave);
 	V.modScore = V.tatScore + V.piercingScore;
-}
+};
 
 window.PiercingScore = function(slave) {
 	var piercingScore = 0;
@@ -6628,8 +6628,12 @@ window.getPronouns = function getPronouns(slave) {
 window.SlavePronouns = function SlavePronouns(slave) {
 	const V = State.variables;
 	var pronouns = getPronouns(slave);
-	V.pronoun = pronouns.pronoun, V.pronounCap = capFirstChar(pronouns.pronoun), V.possessive = pronouns.possessive, V.possessiveCap = capFirstChar(pronouns.possessive), V.object = pronouns.object;
-}
+	V.pronoun = pronouns.pronoun;
+	V.pronounCap = capFirstChar(pronouns.pronoun);
+	V.possessive = pronouns.possessive;
+	V.possessiveCap = capFirstChar(pronouns.possessive);
+	V.object = pronouns.object;
+};
 
 window.WrittenMaster = function WrittenMaster(slave) {
 	const V = State.variables;
@@ -6774,7 +6778,365 @@ window.fetishChangeChance = function fetishChangeChance(slave) {
 	}
 	
 	return chance;
-}
+};
+
+window.SlaveFullName = function SlaveFullName(slave) {
+	const V = State.variables;
+	const pair = slave.slaveSurname ? [slave.slaveName, slave.slaveSurname] : [slave.slaveName];
+	if (V.surnameOrder !== 1 && ["Cambodian", "Chinese", "Hungarian", "Japanese", "Korean", "Mongolian", "Taiwanese", "Vietnamese"].includes(slave.nationality))
+		pair.reverse();
+	return pair.join(" ");
+};
+
+window.SlaveTitle = function SlaveTitle(slave) {
+	const V = State.variables;
+	let r = "";
+	if (V.newDescriptions == 1) {
+		if (slave.dick > 0 && slave.balls > 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries == 1) {
+			if (random(1,100) > 50) {
+				r = "futanari";
+			} else {
+				r = "herm";
+			}
+		} else if (slave.dick > 0 && slave.balls == 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries == 1) {
+			r = "dickgirl";
+		} else if (slave.dick > 0 && slave.vagina > -1 && slave.ovaries == 0) {
+			r = "shemale";
+		} else if (slave.dick > 0 && slave.balls == 0 && slave.vagina == -1 && slave.ovaries == 0) {
+			r = "eunuch";
+		} else if (slave.dick > 0 && slave.balls > 0 && slave.vagina == -1 && slave.ovaries == 0) {
+			if (slave.face > 10 && slave.hips > -1 && slave.shoulders < 1 && slave.faceShape != "masculine") {
+				r = "trap";
+			} else if (slave.boobs > 800) {
+				r = "tittyboy";
+			} else if (slave.dick == 1 && slave.balls == 1) {
+				r = "sissy";
+			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 165 && slave.muscles < 5 && slave.visualAge < 19 && slave.faceShape != "masculine") {
+				r = "twink";
+			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 160 && slave.muscles < 5 && slave.visualAge < 19) {
+				r = "boytoy";
+			} else if (slave.muscles > 95 && slave.height >= 185) {
+				r = "titan";
+			} else if (slave.muscles > 30) {
+				r = "muscleboy";
+			} else {
+				r = "slaveboy";
+			}
+		} else if (slave.dick == 0 && slave.balls == 0 && slave.vagina > -1) {
+			if ((slave.shoulders > slave.hips || slave.faceShape == "masculine") && slave.boobs < 400 && slave.genes == "XY") {
+				r = "cuntboy";
+			} else if (slave.ovaries == 0 && slave.genes == "XY") {
+				r = "tranny";
+			} else if (slave.weight > 10 && slave.boobs > 800 && slave.birthsTotal > 0 && slave.physicalAge > 59) {
+				r = "GMILF";
+			} else if (slave.weight > 10 && slave.boobs > 800 && slave.birthsTotal > 0 && slave.physicalAge > 35) {
+				r = "MILF";
+			} else if (slave.lips > 70 && slave.boobs > 2000 && slave.butt > 3) {
+				r = "bimbo";
+			} else if (slave.hips > 1 && slave.boobs > 2000 && slave.butt > 3 && slave.waist < 50) {
+				r = "hourglass";
+			} else if (slave.muscles > 95 && slave.height >= 185) {
+				r = "amazon";
+			} else if (slave.muscles > 30) {
+				r = "musclegirl";
+			} else {
+				r = "slavegirl";
+			}
+		} else if (slave.dick == 0 && slave.balls == 0 && slave.vagina == -1) {
+			r = "neuter";
+		} else if (slave.dick == 0 && slave.vagina == -1) {
+			r = "ballslave";
+		} else {
+			r = "slave";
+		}
+
+		if (slave.visualAge < 13) {
+			if (slave.genes == "XY" && slave.vagina == -1) {
+				r = "shota " + r;
+			} else {
+				r = "loli " + r;
+			}
+		}
+
+		if (slave.dick > 9 && slave.balls > 9 && slave.boobs > 12000) {
+			r = "hyper " + r;
+		}
+
+		if (slave.boobs > 4000 && slave.lactation > 0) {
+			if (slave.physicalAge < 13) {
+				r = r + " calf";
+			} else {
+				r = r + " cow";
+			}
+		} else if (slave.lactation > 0) {
+			r = "milky " + r;
+		}
+
+		if (slave.boobs > 20000) {
+			r = "supermassive titted " + r;
+		} else if (slave.boobs > 10000) {
+			r = "giant titted " + r;
+		} else if (slave.boobs > 4000) {
+			r = "huge titted " + r;
+		} else if (slave.boobs > 1000) {
+			r = "busty " + r;
+		}
+
+		if (slave.dick > 5 && slave.balls > 5) {
+			r = "womb filling " + r;
+		} else if (slave.dick > 5) {
+			r = "well hung " + r;
+		}
+
+		if (slave.butt >= 12) {
+			r = "colossal assed " + r;
+		} else if (slave.butt >= 12) {
+			r = "massive assed " + r;
+		} else if (slave.butt >= 8) {
+			r = "fat assed " + r;
+		} else if (slave.butt >= 6) {
+			r = "bottom heavy " + r;
+		} else if (slave.butt >= 4) {
+			r = "big bottomed " + r;
+		}
+
+		if (slave.weight > 10 && slave.weight < 100 && slave.boobs > 5000 && slave.butt > 5 && slave.hips >= 2 && slave.bellyPreg >= 30000 && slave.births >= 10) {
+			r = r + "fertility goddess";
+		} else if (slave.births >= 6) {
+			r = r + " broodmother";
+		} else if (slave.births >= 3) {
+			r = r + " breeder";
+		}
+
+		if (slave.indenture > -1) {
+			r = "indentured " + r;
+		}
+
+		if (slave.preg > 10 && slave.pregKnown == 1) {
+			r = "pregnant " + r;
+		} else if (slave.bellyFluid >= 5000) {
+			r = "bloated " + r;
+		} else if (slave.belly >= 5000) {
+			r = "gravid " + r;
+		}
+
+		if (slave.fuckdoll > 0) {
+			r = r + " fuckdoll";
+		}
+	} else {
+		r = "slave"; /* I don't tihnk there is an 'else'? */
+		if ((slave.dick == 0) && (slave.vagina == -1)) { /* NULLS */
+			r = "null";
+				if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+					r = r + " cow";
+				} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+					r = r + " bimbo ";
+				} else if (slave.boobs > 6000) {
+					r = r + " boob";
+				} else if (slave.butt > 6) {
+					r = r + " ass";
+				} else if ((slave.muscles > 30) && (slave.height < 185)) {
+						r = r + " muscle";
+				}
+					if (slave.visualAge > 55) {
+						r = r + "GILF";
+					} else if (slave.visualAge > 35) {
+						r = r + "MILF";
+					} else if (slave.visualAge >= 25) {
+						r = r + "slave";
+					} else {
+						r = r + "girl";
+					}
+		}
+
+		if ((slave.dick == 0) && (slave.vagina != -1)) { /* FEMALES */
+			if (slave.visualAge > 55) {
+				r = "GILF";
+			} else if (slave.visualAge > 35) {
+				r = "MILF";
+			} else if (slave.visualAge >= 25) {
+				r = "slave";
+			} else {
+				r = "slavegirl";
+			}
+				if ((slave.muscles > 30) && (slave.height < 185)) {
+					r = "muscle " + r;
+				} else if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+					r = r + " cow";
+				} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+					r = r + " bimbo";
+				} else if (slave.boobs > 6000) {
+					r = "boob" + r;
+				} else if (slave.butt > 6) {
+					r = "ass" + r;
+				}
+		}
+
+		if ((slave.dick != 0) && (slave.vagina != -1)) {
+				if (slave.balls > 0) { /* FUTANARI: cock & balls & vagina */
+					r = "futanari ";
+				} else { /* FUTANARI: cock & vagina */
+					r = "futa ";
+				}
+					if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+						r = r + "cow";
+					} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+						r = r + "bimbo ";
+					} else if (slave.boobs > 6000) {
+						r = r + "boob";
+					} else if (slave.butt > 6) {
+						r = r + "ass";
+					} else if ((slave.muscles > 30) && (slave.height < 185)) {
+						r = r + "muscle";
+					}
+						if (slave.visualAge > 55) {
+							r = r + "GILF";
+						} else if (slave.visualAge > 35) {
+							r = r + "MILF";
+						} else if (slave.visualAge >= 25) {
+							r = r + "slave";
+						} else {
+							r = r + "girl";
+						}
+							if (slave.dick > 5 && slave.balls > 5 && slave.boobs > 5000) {
+								r = "hyper " + r;
+							}
+		}
+
+		if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0) && (slave.boobs > 300) && (slave.butt > 2)) { /* SHEMALES: cock & balls, T&A above minimum */
+			if (slave.visualAge > 55) {
+				r = "sheGILF";
+			} else if (slave.visualAge > 35) {
+				r = "sheMILF";
+			} else if (slave.visualAge >= 25) {
+				r = "shemale";
+			} else {
+				r = "tgirl";
+			}
+				if ((slave.muscles > 30) && (slave.height < 185)) {
+					r = "muscle" + r;
+				} else if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+					r = r + " cow";
+				} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+					r = r + " bimbo";
+				} else if (slave.boobs > 6000) {
+					r = "topheavy " + r;
+				} else if (slave.butt > 6) {
+					r = "bottomheavy " + r;
+				}
+		}
+
+		if ((slave.boobs < 300) || (slave.butt < 2)) {
+			if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0)) {
+				if ((slave.shoulders < 1) || (slave.muscles <= 30)) {
+					if ((slave.faceShape == "masculine") || (slave.faceShape == "androgynous")) { /* SISSIES: feminine shoulders or muscles, masculine faces */
+						if (slave.visualAge > 55) {
+							r = "sissyGILF";
+						} else if (slave.visualAge > 35) {
+							r = "sissyMILF";
+						} else {
+							r = "sissy";
+						}
+					} else { /* TRAPS: feminine shoulders or muscles, feminine faces */
+						if (slave.visualAge > 55) {
+							r = "trapGILF";
+						} else if (slave.visualAge > 35) {
+							r = "trapMILF";
+						} else if (slave.visualAge >= 25) {
+							r = "trap";
+						} else {
+							r = "trapgirl";
+						}
+					}
+						if (slave.lactation > 0) {
+							r = r + " cow";
+						} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+							r = r + " bimbo";
+						}
+				}
+			}
+		}
+
+		if ((slave.boobs < 300) || (slave.butt < 2)) {
+			if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0)) {
+				if ((slave.shoulders > 1) || (slave.muscles >= 30)) {	/* BITCHES: masculine shoulders or muscles */
+					r = "bitch";
+						if ((slave.muscles > 30) && (slave.height < 185)) {
+							r = "muscle" + r;
+						} else if (slave.lactation > 0) {
+							r = r + "cow";
+						} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+							r = "bimbo " + r;
+						}
+						if (slave.visualAge > 55) {
+							r = "aged " + r;
+						} else if (slave.visualAge > 35) {
+							r = "mature " + r;
+						} else if (slave.visualAge < 25) {
+							r = "young " + r;
+						}
+				}
+			}
+		}
+
+		if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls == 0)) {
+			r = "dick";
+				if (slave.visualAge > 55) {
+					r = r + "GILF";
+				} else if (slave.visualAge > 35) {
+					r = r + "MILF";
+				} else if (slave.visualAge >= 25) {
+					r = r + "slave";
+				} else {
+					r = r + "girl";
+				}
+					if ((slave.muscles > 30) && (slave.height < 185)) {
+						r = "muscle" + r;
+					} else if ((slave.lactation > 0) && (slave.boobs > 2000)) {
+						r = r + " cow";
+					} else if ((slave.boobsImplant > 0) && (slave.buttImplant > 0)) {
+						r = r + " bimbo";
+					} else if (slave.boobs > 6000) {
+						r = "boob " + r;
+					} else if (slave.butt > 6) {
+						r = "ass " + r;
+					}
+		}
+
+		if ((slave.muscles > 30) && (slave.height > 185)) {
+			r = "amazon " + r;
+		} else if ((slave.muscles < 30) && (slave.height > 185)) {
+			r = "statuesque " + r;
+		} else if ((slave.boobs < 800) && (slave.height < 150)) {
+			r = "petite " + r;
+		} else if ((slave.boobs > 800) && (slave.height < 150)) {
+			r = "shortstack " + r;
+		}
+
+		if (slave.births >= 5) {
+			r = r + " broodmother";
+		} else if (slave.births >= 2) {
+			r = r + " breeder";
+		}
+
+		if (slave.indenture > -1) {
+			r = "indentured " + r;
+		}
+
+		if (slave.preg > 10 && slave.pregKnown == 1) {
+			r = "pregnant " + r;
+		} else if (slave.bellyFluid >= 5000) {
+			r = "bloated " + r;
+		} else if (slave.belly >= 5000) {
+			r = "gravid " + r;
+		}
+
+		if (slave.fuckdoll > 0) {
+			r = r + " fuckdoll";
+		}
+	}
+	return r;
+};
 
 /*:: Summary Widgets JS [script]*/
 
@@ -9971,8 +10333,8 @@ window.DefaultRules = (function() {
 		ProcessBellyImplant(slave, rule);
 		if (isFertile(slave))
 			ProcessContraceptives(slave, rule);
-		ProcessAssetGrowthDrugs(slave, rule);
 		ProcessOtherDrugs(slave, rule);
+		ProcessAssetGrowthDrugs(slave, rule);
 		ProcessDiet(slave, rule);
 		ProcessCuratives(slave, rule);
 		ProcessAphrodisiacs(slave, rule);
diff --git a/src/uncategorized/neighborsFSAdoption.tw b/src/uncategorized/neighborsFSAdoption.tw
index e1e876623f1..fd4f7c0e124 100644
--- a/src/uncategorized/neighborsFSAdoption.tw
+++ b/src/uncategorized/neighborsFSAdoption.tw
@@ -115,26 +115,50 @@ societal development.
 	<<set $arcologies[$i].FSChattelReligionist = 5>><<set _adopted = 1>>
   <<case "Roman Revivalism">>
 	<<if $arcologies[$i].FSRomanRevivalist != "unset">><<set $arcologies[$i].FSRomanRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSEgyptianRevivalist != "unset">><<set $arcologies[$i].FSEgyptianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSEdoRevivalist != "unset">><<set $arcologies[$i].FSEdoRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSArabianRevivalist != "unset">><<set $arcologies[$i].FSArabianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSChineseRevivalist != "unset">><<set $arcologies[$i].FSChineseRevivalist = "unset">><</if>>
 	$desc fascinated by ancient Aztec history, leading the arcology to @@.yellow;adopt Aztec Revivalism.@@
 	<<set $arcologies[$i].FSAztecRevivalist = 5>><<set _adopted = 1>>
   <<case "Egyptian Revivalism">>
 	<<if $arcologies[$i].FSEgyptianRevivalist != "unset">><<set $arcologies[$i].FSEgyptianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSRomanRevivalist != "unset">><<set $arcologies[$i].FSRomanRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSEdoRevivalist != "unset">><<set $arcologies[$i].FSEdoRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSChineseRevivalist != "unset">><<set $arcologies[$i].FSChineseRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSAztecRevivalist != "unset">><<set $arcologies[$i].FSAztecRevivalist = "unset">><</if>>
 	$desc fascinated by Arabian romanticism, leading the arcology to @@.yellow;adopt Arabian Revivalism.@@
 	<<set $arcologies[$i].FSArabianRevivalist = 5>><<set _adopted = 1>>
   <<case "Edo Revivalism">>
 	<<if $arcologies[$i].FSEdoRevivalist != "unset">><<set $arcologies[$i].FSEdoRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSRomanRevivalist != "unset">><<set $arcologies[$i].FSRomanRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSEgyptianRevivalist != "unset">><<set $arcologies[$i].FSEgyptianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSArabianRevivalist != "unset">><<set $arcologies[$i].FSArabianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSAztecRevivalist != "unset">><<set $arcologies[$i].FSAztecRevivalist = "unset">><</if>>
 	$desc fascinated by the long tale of Chinese history, leading the arcology to @@.yellow;adopt Chinese Revivalism.@@
 	<<set $arcologies[$i].FSChineseRevivalist = 5>><<set _adopted = 1>>
   <<case "Arabian Revivalism">>
 	<<if $arcologies[$i].FSArabianRevivalist != "unset">><<set $arcologies[$i].FSArabianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSRomanRevivalist != "unset">><<set $arcologies[$i].FSRomanRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSEdoRevivalist != "unset">><<set $arcologies[$i].FSEdoRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSChineseRevivalist != "unset">><<set $arcologies[$i].FSChineseRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSAztecRevivalist != "unset">><<set $arcologies[$i].FSAztecRevivalist = "unset">><</if>>
 	$desc fascinated by ancient Egyptian history, leading the arcology to @@.yellow;adopt Egyptian Revivalism.@@
 	<<set $arcologies[$i].FSEgyptianRevivalist = 5>><<set _adopted = 1>>
   <<case "Chinese Revivalism">>
 	<<if $arcologies[$i].FSChineseRevivalist != "unset">><<set $arcologies[$i].FSChineseRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSRomanRevivalist != "unset">><<set $arcologies[$i].FSRomanRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSEgyptianRevivalist != "unset">><<set $arcologies[$i].FSEgyptianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSArabianRevivalist != "unset">><<set $arcologies[$i].FSArabianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSAztecRevivalist != "unset">><<set $arcologies[$i].FSAztecRevivalist = "unset">><</if>>
 	$desc fascinated by Japanese history, leading the arcology to @@.yellow;adopt Edo Revivalism.@@
 	<<set $arcologies[$i].FSEdoRevivalist = 5>><<set _adopted = 1>>
   <<case "Aztec Revivalism">>
 	<<if $arcologies[$i].FSAztecRevivalist != "unset">><<set $arcologies[$i].FSAztecRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSEgyptianRevivalist != "unset">><<set $arcologies[$i].FSEgyptianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSEdoRevivalist != "unset">><<set $arcologies[$i].FSEdoRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSArabianRevivalist != "unset">><<set $arcologies[$i].FSArabianRevivalist = "unset">><</if>>
+	<<if $arcologies[$i].FSChineseRevivalist != "unset">><<set $arcologies[$i].FSChineseRevivalist = "unset">><</if>>
 	$desc fascinated by classical Roman history, leading the arcology to @@.yellow;adopt Roman Revivalism.@@
 	<<set $arcologies[$i].FSRomanRevivalist = 5>><<set _adopted = 1>>
   <<default>>
diff --git a/src/uncategorized/pRivalryHostage.tw b/src/uncategorized/pRivalryHostage.tw
index 12b13eecd6d..9815e1f7cbb 100644
--- a/src/uncategorized/pRivalryHostage.tw
+++ b/src/uncategorized/pRivalryHostage.tw
@@ -49,8 +49,7 @@
 <<set $activeSlave.trust = Number($activeSlave.trust) || 0>>
 <<set $activeSlave.boobs = Number($activeSlave.boobs) || 400>>
 
-<<set $hostage = $activeSlave>>
-<<set WombFlush($hostage)>>
+<<set WombFlush($activeSlave)>>
 
 Only a few days into your inter-arcology war, you receive a video message from your rival. Once $assistantName is satisfied that the file is clean, you clear your office and pull it up. To your surprise, there are two faces on your desk, not one. One of them is your rival, and after a moment, you remember who the other is. You recognize her from your
 <<switch $PC.career>>
-- 
GitLab


From 61abb9e7fad2fcf0c63678e5f01c74b289f1d8f9 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 9 Jul 2018 22:54:08 -0400
Subject: [PATCH 018/189] Corrections and tweaks to contradictions

---
 src/pregmod/fillUpButt.tw             | 2 +-
 src/uncategorized/saServeThePublic.tw | 3 +++
 src/uncategorized/saWhore.tw          | 3 +++
 3 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/pregmod/fillUpButt.tw b/src/pregmod/fillUpButt.tw
index d0dc27030a9..b0f8008f59b 100644
--- a/src/pregmod/fillUpButt.tw
+++ b/src/pregmod/fillUpButt.tw
@@ -122,7 +122,7 @@ before calling $him over so you can play with $his
 	<<elseif ($activeSlave.amp != 1)>>
 		You instruct $him to present $his anus for a $activeSlave.inflationType enema. $He's opposed to the thought of being filled <<if $activeSlave.inflation > 0>>more <</if>>with $activeSlave.inflationType, but since $he is immobile, can't escape. You reach around and grab $his
 	<<else>>
-		$he's opposed to the thought of being filled with <<if $activeSlave.inflation > 0>>more <</if>>$activeSlave.inflationType, but as an amputee can do nothing about it. You reach around and grab $his
+		$He's opposed to the thought of being filled with <<if $activeSlave.inflation > 0>>more <</if>>$activeSlave.inflationType, but as an amputee can do nothing about it. You reach around and grab $his
 	<</if>>
 		<<if $activeSlave.butt < 2>>
 			flat
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index fafaa94185f..4e042c6eddc 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -861,6 +861,9 @@ Her appearance attracted $beauty members of the public (<<print Math.trunc($beau
 <<elseif ($slaves[$i].energy > 80)>>
 	With her powerful sex drive she rarely has to fake an orgasm.
 	<<set $slaves[$i].need -= $beauty*.9>>
+<<elseif $slaves[$i].aphrodisiacs > 0 || ($slaves[$i].inflationType == "aphrodisiac")>>
+	With her aphrodisiac boosted libido, it's barely possible to discern her from a natural nymphomaniac.
+	<<set $slaves[$i].need -= $beauty*.9>>
 <<elseif ($slaves[$i].energy > 60)>>
 	With her good sex drive she often orgasms with citizens.
 	<<set $slaves[$i].need -= $beauty*.8>>
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index ffcae970404..b3904c472bc 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -860,6 +860,9 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <<elseif ($slaves[$i].energy > 80)>>
 	With her powerful sex drive she rarely has to fake an orgasm.
 	<<set $slaves[$i].need -= $beauty*.9>>
+<<elseif $slaves[$i].aphrodisiacs > 0 || ($slaves[$i].inflationType == "aphrodisiac")>>
+	With her aphrodisiac boosted libido, it's barely possible to discern her from a natural nymphomaniac.
+	<<set $slaves[$i].need -= $beauty*.9>>
 <<elseif ($slaves[$i].energy > 60)>>
 	With her good sex drive she often orgasms with customers.
 	<<set $slaves[$i].need -= $beauty*.8>>
-- 
GitLab


From 746b64caec2de13067afe28d80b141ada36f2dc3 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Tue, 10 Jul 2018 00:47:51 -0400
Subject: [PATCH 019/189] startingGirls, extended family, new game plus
 compatibility

---
 src/npc/startingGirls/startingGirls.tw |   4 +-
 src/utility/extendedFamilyWidgets.tw   | 406 ++++++++++++++++---------
 2 files changed, 256 insertions(+), 154 deletions(-)

diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw
index a890e161a2d..30100dbbfb7 100644
--- a/src/npc/startingGirls/startingGirls.tw
+++ b/src/npc/startingGirls/startingGirls.tw
@@ -521,9 +521,7 @@ __You are customizing this slave:__
 <<link "XY">><<set $activeSlave.genes = "XY">><<replace "#originalSex">>$activeSlave.genes.<</replace>><</link>>
 
 <<if $familyTesting == 1>>
-	<<if $saveImported == 1>>//Player children are not available in NG+ due to code limitations (Since the player's background changes with ng+, consistency issues arise.)//
-	<<else>><br><<editFamily>>
-	<</if>>
+	<<editFamily>>
 <</if>>
 
 <br>''Health:''
diff --git a/src/utility/extendedFamilyWidgets.tw b/src/utility/extendedFamilyWidgets.tw
index f1eb9dd3018..c07f81482b6 100644
--- a/src/utility/extendedFamilyWidgets.tw
+++ b/src/utility/extendedFamilyWidgets.tw
@@ -871,13 +871,32 @@
 <</widget>>
 
 <<widget "parentName">>
-<<if $activeSlave[$args[0]] == $PC.ID>>You<</if>><<for _j = 0; _j < $slaves.length; _j++>><<if $slaves[_j].ID == $activeSlave[$args[0]]>><<print $slaves[_j].slaveName>><</if>><</for>>
+<<if $activeSlave[$args[0]] == $PC.ID>>
+	You
+<<else>>
+	<<set _j = $slaveIndices[$activeSlave[$args[0]]]>>
+	<<if def _j>>
+		<<print $slaves[_j].slaveName>>
+	<<else>>
+		Unknown
+	<</if>>
+<</if>>
 <</widget>>
 
 <<widget "listOfSlavesWithSameParent">>
 <<if $activeSlave[$args[0]] != 0>>
-<<set _printSeperator = false>>
-<<if $activeSlave[$args[0]] == $PC[$args[0]]>>You<<set _printSeperator = true>><</if>><<for _j = 0; _j < $slaves.length; _j++>><<if $slaves[_j][$args[0]] == $activeSlave[$args[0]]>><<if _printSeperator>> | <</if>><<set _printSeperator = true>><<print $slaves[_j].slaveName>><</if>><</for>>
+	<<set _printSeperator = false>>
+	<<if $activeSlave[$args[0]] == $PC[$args[0]]>>
+		You
+		<<set _printSeperator = true>>
+	<</if>>
+	<<for _j = 0; _j < $slaves.length; _j++>>
+		<<if $slaves[_j][$args[0]] == $activeSlave[$args[0]]>>
+			<<if _printSeperator>> | <</if>>
+			<<set _printSeperator = true>>
+			<<print $slaves[_j].slaveName>>
+		<</if>>
+	<</for>>
 <</if>>
 <</widget>>
 
@@ -898,191 +917,276 @@
 /* First parameter is e.g. "father" or "mother" and second parameter is the ID to match */
 <<widget "listOfSlavesWithParent">>
 <<if $args[1] != 0>>
-<<set _printSeperator = false>>
-<<if $args[1] == $PC[$args[0]]>>You<<set _printSeperator = true>><</if>><<for _j = 0; _j < $slaves.length; _j++>><<if $slaves[_j][$args[0]] == $args[1]>><<if _printSeperator>> | <</if>><<set _printSeperator = true>><<print $slaves[_j].slaveName>><</if>><</for>>
+	<<set _printSeperator = false>>
+	<<if $args[1] == $PC[$args[0]]>>
+		You
+		<<set _printSeperator = true>>
+	<</if>>
+	<<for _j = 0; _j < $slaves.length; _j++>>
+		<<if $slaves[_j][$args[0]] == $args[1]>>
+			<<if _printSeperator>> | <</if>>
+			<<set _printSeperator = true>>
+			<<print $slaves[_j].slaveName>>
+		<</if>>
+	<</for>>
 <</if>>
 <</widget>>
 
 <<widget "editFamily">>
 <div id="editFamily"><div id="familyTable">
-<br>''Mother:'' <span id="motherName"><<parentName "mother">></span>.
+
+<br>''Mother:'' <span id="motherName"><<parentName "mother">></span>
 <<link "Reset">>
-<<set $activeSlave.mother = 0>>
-<<redisplayFamily>>
+	<<set $activeSlave.mother = 0>>
+	<<redisplayFamily>>
 <</link>>
-<<if $PC.vagina == 1 && (($PC.actualAge - $activeSlave.actualAge) >= $fertilityAge)>> | <<link "You">><<set $activeSlave.mother = $PC.ID>><<redisplayFamily>><</link>><</if>>
+<<if $PC.vagina == 1 && (($PC.actualAge - $activeSlave.actualAge) >= $fertilityAge) && $saveImported == 0>> | <<link "You">><<set $activeSlave.mother = $PC.ID>><<redisplayFamily>><</link>><</if>>
 <<for _efw = 0; _efw < $slaves.length; _efw++>>
-<<if $slaves[_efw].vagina > 0 && (($slaves[_efw].actualAge - $activeSlave.actualAge) >= $fertilityAge)>>
- |
-<<set _id = $slaves[_efw].ID>>
-<<set _slaveName = $slaves[_efw].slaveName>>
-<<print "
-<<link _slaveName>>
-<<set $activeSlave.mother = " + _id + ">>
-<<redisplayFamily>>
-<</link>>
-">>
-<</if>>
+	<<if $slaves[_efw].vagina > 0 && (($slaves[_efw].actualAge - $activeSlave.actualAge) >= $fertilityAge) && $slaves[_efw].newGamePlus == 0>>
+	|
+	<<set _id = $slaves[_efw].ID>>
+	<<set _slaveName = $slaves[_efw].slaveName>>
+	<<print "
+		<<link _slaveName>>
+			<<set $activeSlave.mother = " + _id + ">>
+			<<redisplayFamily>>
+		<</link>>
+	">>
+	<</if>>
 <</for>>
-<br>''Father:'' <span id="fatherName"><<parentName "father">></span>.
+
+<br>''Father:'' <span id="fatherName"><<parentName "father">></span>
 <<link "Reset">>
-<<set $activeSlave.father = 0>>
-<<redisplayFamily>>
+	<<set $activeSlave.father = 0>>
+	<<redisplayFamily>>
 <</link>>
-<<if ($PC.dick == 1) && (($PC.actualAge - $activeSlave.actualAge) >= $potencyAge) >> | <<link "You">><<set $activeSlave.father = $PC.ID>><<redisplayFamily>><</link>><</if>>
+<<if ($PC.dick == 1) && (($PC.actualAge - $activeSlave.actualAge) >= $potencyAge) && $saveImported == 0>> | <<link "You">><<set $activeSlave.father = $PC.ID>><<redisplayFamily>><</link>><</if>>
 <<for _efw = 0; _efw < $slaves.length; _efw++>>
-<<if ($slaves[_efw].dick > 0) && ((($slaves[_efw].actualAge - $activeSlave.actualAge) >= $potencyAge))>>
- |
-<<set _id = $slaves[_efw].ID>>
-<<set _slaveName = $slaves[_efw].slaveName>>
-<<print "
-<<link _slaveName>>
-<<set $activeSlave.father = " + _id + ">>
-<<redisplayFamily>>
-<</link>>
-">>
-<</if>>
+	<<if ($slaves[_efw].dick > 0) && ((($slaves[_efw].actualAge - $activeSlave.actualAge) >= $potencyAge)) && $slaves[_efw].newGamePlus == 0>>
+		|
+		<<set _id = $slaves[_efw].ID>>
+		<<set _slaveName = $slaves[_efw].slaveName>>
+		<<print "
+			<<link _slaveName>>
+				<<set $activeSlave.father = " + _id + ">>
+				<<redisplayFamily>>
+			<</link>>
+		">>
+	<</if>>
 <</for>>
 
-<br>''Same mother as:'' <span id="sameMotherNames"><<listOfSlavesWithSameParent 'mother'>></span>.
+<br>''Same mother as:'' <span id="sameMotherNames"><<listOfSlavesWithSameParent 'mother'>></span>
 <<link "Reset">>
-<<set $activeSlave.mother = 0>>
-<<redisplayFamily>>
+	<<set $activeSlave.mother = 0>>
+	<<redisplayFamily>>
 <</link>>
- | <<link "You">>
-<<if $PC.mother != 0>>
-<<set $activeSlave.mother = $PC.mother>>
-<<elseif $activeSlave.mother != 0>>
-<<set $PC.mother = $activeSlave.mother>>
-<<else>>
-<<set $activeSlave.mother = -5 - 2*$activeSlave.ID>>
-<<set $PC.mother = $activeSlave.mother>>
+<<if $saveImported == 0>>
+	|
+	<<link "You">>
+		<<if $PC.mother != 0>>
+			<<set $activeSlave.mother = $PC.mother>>
+		<<elseif $activeSlave.mother != 0>>
+			<<set $PC.mother = $activeSlave.mother>>
+		<<else>>
+			<<set $activeSlave.mother = -5 - 2*$activeSlave.ID>>
+			<<set $PC.mother = $activeSlave.mother>>
+		<</if>>
+		<<redisplayFamily>>
+	<</link>>
 <</if>>
-<<redisplayFamily>>
-<</link>>
 <<for _efw = 0; _efw < $slaves.length; _efw++>>
- |
-<<set _slaveName = $slaves[_efw].slaveName>>
-
-<<print "
-<<link _slaveName>>
-<<set _slave = $slaves[" + _efw + "]>>
-<<if _slave.mother != 0>>
-<<set $activeSlave.mother = _slave.mother>>
-<<elseif $activeSlave.mother != 0>>
-<<set _slave.mother = $activeSlave.mother>>
-<<else>>
-<<set $activeSlave.mother = -5 - 2*$activeSlave.ID>>
-<<set _slave.mother = $activeSlave.mother>>
-<</if>>
-<<redisplayFamily>>
-<</link>>
-">>
+	<<if $slaves[_efw].newGamePlus == 0>>
+		<<if $saveImported == 1>>|<</if>>
+		<<set _slaveName = $slaves[_efw].slaveName>>
+		<<print "
+			<<link _slaveName>>
+				<<set _slave = $slaves[" + _efw + "]>>
+				<<if _slave.mother != 0>>
+					<<set $activeSlave.mother = _slave.mother>>
+				<<elseif $activeSlave.mother != 0>>
+					<<set _slave.mother = $activeSlave.mother>>
+				<<else>>
+					<<set $activeSlave.mother = -5 - 2*$activeSlave.ID>>
+					<<set _slave.mother = $activeSlave.mother>>
+				<</if>>
+				<<redisplayFamily>>
+			<</link>>
+		">>
+	<</if>>
 <</for>>
 
-<br>''Same father as:'' <span id="sameFatherNames"><<listOfSlavesWithSameParent 'father'>></span>.
+<br>''Same father as:'' <span id="sameFatherNames"><<listOfSlavesWithSameParent 'father'>></span>
 <<link "Reset">>
-<<set $activeSlave.father = 0>>
-<<replace '#fatherName'>><</replace>>
-<<replace '#sameFatherNames'>><</replace>>
-<<redisplayFamily>>
+	<<set $activeSlave.father = 0>>
+	<<replace '#fatherName'>><</replace>>
+	<<replace '#sameFatherNames'>><</replace>>
+	<<redisplayFamily>>
 <</link>>
-| <<link "You">>
-<<if $PC.father != 0>>
-<<set $activeSlave.father = $PC.father>>
-<<elseif $activeSlave.father != 0>>
-<<set $PC.father = $activeSlave.father>>
-<<else>>
-<<set $activeSlave.father = -5 - 2*$activeSlave.ID -1>>
-<<set $PC.father = $activeSlave.father>>
+<<if $saveImported == 0>>
+	|
+	<<link "You">>
+		<<if $PC.father != 0>>
+			<<set $activeSlave.father = $PC.father>>
+		<<elseif $activeSlave.father != 0>>
+			<<set $PC.father = $activeSlave.father>>
+		<<else>>
+			<<set $activeSlave.father = -5 - 2*$activeSlave.ID -1>>
+			<<set $PC.father = $activeSlave.father>>
+		<</if>>
+		<<redisplayFamily>>
+	<</link>>
 <</if>>
-<<redisplayFamily>>
-<</link>>
-
 <<for _efw = 0; _efw < $slaves.length; _efw++>>
- |
-<<set _slaveName = $slaves[_efw].slaveName>>
-<<print "
-<<link _slaveName>>
-<<set _slave = $slaves[" + _efw + "]>>
-<<if _slave.father != 0>>
-<<set $activeSlave.father = _slave.father>>
-<<elseif $activeSlave.father != 0>>
-<<set _slave.father = $activeSlave.father>>
-<<else>>
-<<set $activeSlave.father = -5 - 2*$activeSlave.ID -1>>
-<<set _slave.father = $activeSlave.father>>
-<</if>>
-<<redisplayFamily>>
-<</link>>
-">>
+	<<if $slaves[_efw].newGamePlus == 0>>
+		<<if $saveImported == 1>>|<</if>>
+		<<set _slaveName = $slaves[_efw].slaveName>>
+		<<print "
+			<<link _slaveName>>
+				<<set _slave = $slaves[" + _efw + "]>>
+				<<if _slave.father != 0>>
+					<<set $activeSlave.father = _slave.father>>
+				<<elseif $activeSlave.father != 0>>
+					<<set _slave.father = $activeSlave.father>>
+				<<else>>
+					<<set $activeSlave.father = -5 - 2*$activeSlave.ID -1>>
+					<<set _slave.father = $activeSlave.father>>
+				<</if>>
+				<<redisplayFamily>>
+			<</link>>
+		">>
+	<</if>>
 <</for>>
 
-<br>''Mother of the children:'' <span id="motheredNames"><<listOfSlavesWithParent "mother" $activeSlave.ID>></span>.
+<br>''Mother of the children:'' <span id="motheredNames"><<listOfSlavesWithParent "mother" $activeSlave.ID>></span>
 <<link "Reset">>
-<<for _efw = 0; _efw < $slaves.length; _efw++>>
-<<if $slaves[_efw].mother == $activeSlave.ID>><<set $slaves[_efw].mother = 0>><</if>>
-<</for>>
-<<if $PC.mother == $activeSlave.ID>><<set $PC.mother = 0>><</if>>
-<<redisplayFamily>>
+	<<for _efw = 0; _efw < $slaves.length; _efw++>>
+		<<if $slaves[_efw].mother == $activeSlave.ID && $slaves[_efw].newGamePlus == 0>>
+			<<set $slaves[_efw].mother = 0>>
+		<</if>>
+	<</for>>
+	<<if $PC.mother == $activeSlave.ID && $saveImported == 0>>
+		<<set $PC.mother = 0>>
+	<</if>>
+	<<redisplayFamily>>
 <</link>>
 <<if $activeSlave.vagina >= 0>>
-<<if ($activeSlave.actualAge - $PC.actualAge) >= $fertilityAge>>
-| <<link "You">>
-<<set $PC.mother = $activeSlave.ID>>
-<<if $activeSlave.vagina == 0>><<set $activeSlave.vagina = 1>><</if>>
-<<redisplayFamily>>
-<</link>>
-<</if>>
+	<<if ($activeSlave.actualAge - $PC.actualAge) >= $fertilityAge && $saveImported == 0>>
+		|
+		<<link "You">>
+			<<set $PC.mother = $activeSlave.ID>>
+			<<if $activeSlave.vagina == 0>>
+				<<set $activeSlave.vagina = 1>>
+			<</if>>
+			<<redisplayFamily>>
+		<</link>>
+	<</if>>
 
-<<for _efw = 0; _efw < $slaves.length; _efw++>>
-<<set _slaveName = $slaves[_efw].slaveName>>
-<<set _slave = $slaves[_efw]>>
-<<if ($activeSlave.actualAge - _slave.actualAge) >= $fertilityAge>>
- |
-<<print "
-<<link _slaveName>>
-<<set _slave = $slaves[" + _efw + "]>>
-<<set _slave.mother = $activeSlave.ID>>
-<<if $activeSlave.vagina == 0>><<set $activeSlave.vagina = 1>><</if>>
-<<redisplayFamily>>
-<</link>>
-">>
-<</if>>
-<</for>>
+	<<for _efw = 0; _efw < $slaves.length; _efw++>>
+		<<if $slaves[_efw].newGamePlus == 0>>
+			<<set _slaveName = $slaves[_efw].slaveName>>
+			<<set _slave = $slaves[_efw]>>
+			<<if ($activeSlave.actualAge - _slave.actualAge) >= $fertilityAge>>
+				|
+				<<print "
+					<<link _slaveName>>
+						<<set _slave = $slaves[" + _efw + "]>>
+						<<set _slave.mother = $activeSlave.ID>>
+						<<if $activeSlave.vagina == 0>>
+							<<set $activeSlave.vagina = 1>>
+						<</if>>
+						<<redisplayFamily>>
+					<</link>>
+				">>
+			<</if>>
+		<</if>>
+	<</for>>
 <</if>>
 
-<br>''Father of the children:'' <span id="fatheredNames"><<listOfSlavesWithParent "father" $activeSlave.ID>></span>.
+<br>''Father of the children:'' <span id="fatheredNames"><<listOfSlavesWithParent "father" $activeSlave.ID>></span>
 <<link "Reset">>
-<<for _efw = 0; _efw < $slaves.length; _efw++>>
-<<if $slaves[_efw].father == $activeSlave.ID>><<set $slaves[_efw].father = 0>><</if>>
-<</for>>
-<<if $PC.father == $activeSlave.ID>><<set $PC.father = 0>><</if>>
-<<redisplayFamily>>
+	<<for _efw = 0; _efw < $slaves.length; _efw++>>
+		<<if $slaves[_efw].father == $activeSlave.ID && $slaves[_efw].newGamePlus == 0>>
+			<<set $slaves[_efw].father = 0>>
+		<</if>>
+	<</for>>
+	<<if $PC.father == $activeSlave.ID && $saveImported == 0>>
+		<<set $PC.father = 0>>
+	<</if>>
+	<<redisplayFamily>>
 <</link>>
 <<if $activeSlave.dick > 0>>
-<<if ($activeSlave.actualAge - $PC.actualAge) >= $fertilityAge>>
-| <<link "You">>
-<<set $PC.father = $activeSlave.ID>>
-<<redisplayFamily>>
-<</link>>
-<</if>>
-
-<<for _efw = 0; _efw < $slaves.length; _efw++>>
+	<<if ($activeSlave.actualAge - $PC.actualAge) >= $fertilityAge && $saveImported == 0>>
+		| 
+		<<link "You">>
+			<<set $PC.father = $activeSlave.ID>>
+			<<redisplayFamily>>
+		<</link>>
+	<</if>>
 
-<<set _slaveName = $slaves[_efw].slaveName>>
-<<set _slave = $slaves[_efw]>>
-<<if ($activeSlave.actualAge - _slave.actualAge) >= $fertilityAge>>
- |
-<<print "
-<<link _slaveName>>
-<<set _slave = $slaves[" + _efw + "]>>
-<<set _slave.father = $activeSlave.ID>>
-<<redisplayFamily>>
-<</link>>
-">>
+	<<for _efw = 0; _efw < $slaves.length; _efw++>>
+		<<if $slaves[_efw].newGamePlus == 0>>
+			<<set _slaveName = $slaves[_efw].slaveName>>
+			<<set _slave = $slaves[_efw]>>
+			<<if ($activeSlave.actualAge - _slave.actualAge) >= $fertilityAge>>
+				|
+				<<print "
+					<<link _slaveName>>
+						<<set _slave = $slaves[" + _efw + "]>>
+						<<set _slave.father = $activeSlave.ID>>
+						<<redisplayFamily>>
+					<</link>>
+				">>
+			<</if>>
+		<</if>>
+	<</for>>
 <</if>>
-<</for>>
+
+<br>
+<<if $saveImported == 0>>
+	<<link "Reset ALL PC Relatives">>
+		<<set _sameMother = 0, _sameFather = 0>>
+		<<for _efw = 0; _efw < $slaves.length; _efw++>>
+			<<if $slaves[_efw].newGamePlus == 0>>
+				<<if $slaves[_efw].mother == $PC.ID>>
+					<<set $slaves[_efw].mother = 0>>
+				<</if>>
+				<<if $slaves[_efw].father == $PC.ID>>
+					<<set $slaves[_efw].father = 0>>
+				<</if>>
+				<<if $slaves[_efw].mother == $PC.mother>>
+					<<set _sameMother++>>
+				<</if>>
+				<<if $slaves[_efw].father == $PC.father>>
+					<<set _sameFather++>>
+				<</if>>
+			<</if>>
+		<</for>>
+		<<if _sameMother == 0 && $activeSlave.mother == $PC.mother>>
+			<<set $activeSlave.mother = 0>>
+		<</if>>
+		<<if _sameFather == 0 && $activeSlave.father == $PC.father>>
+			<<set $activeSlave.father = 0>>
+		<</if>>
+		<<for _efw = 0; (_efw < $slaves.length && (_sameMother == 1 || _sameFather == 1)); _efw++>>
+			<<if $slaves[_efw].newGamePlus == 0>>
+				<<if $slaves[_efw].mother == $PC.mother && _sameMother == 1>>
+					<<set $slaves[_efw].mother = 0, _sameMother = 0>>
+				<</if>>
+				<<if $slaves[_efw].father == $PC.father && _sameFather == 1>>
+					<<set $slaves[_efw].father = 0, _sameFather = 0>>
+				<</if>>
+			<</if>>
+		<</for>>
+		<<if $activeSlave.mother == $PC.ID>>
+			<<set $activeSlave.mother = 0>>
+		<</if>>
+		<<if $activeSlave.father == $PC.ID>>
+			<<set $activeSlave.father = 0>>
+		<</if>>
+		<<set $PC.father = 0>>
+		<<set $PC.mother = 0>>
+		<<redisplayFamily>>
+	<</link>>
 <</if>>
 
 <br>
-- 
GitLab


From 4cc9cfedad6130301435d9fcee8c48459e723648 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Tue, 10 Jul 2018 13:32:36 +0300
Subject: [PATCH 020/189] more organisation

---
 src/js/slaveSummaryWidgets.tw | 1297 ++++++++++++++++++---------------
 1 file changed, 722 insertions(+), 575 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 158d458bd76..1a0aeeb1029 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -21,7 +21,7 @@ window.SlaveSummary = function SlaveSummary(slave) {
 
 window.SlaveSummaryUncached = (function(){
 	"use strict";
-	let V, r
+	let V, r;
 	
 	function SlaveSummaryUncached(slave) {
 		V = State.variables;
@@ -1916,6 +1916,7 @@ window.SlaveSummaryUncached = (function(){
 	}
 	
 	function short_mods(slave) {
+		modScore(slave);
 		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
 			true;
 		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
@@ -1931,111 +1932,7 @@ window.SlaveSummaryUncached = (function(){
 		r += `</span>`;
 	}
 	
-	return SlaveSummaryUncached;
-	
-	if (V.abbreviateDevotion === 1) {
-		short_devotion(slave);
-	} else if (V.abbreviateDevotion === 2) {
-		long_devotion(slave);
-	}
-
-	if (slave.fuckdoll === 0) {
-		if (V.abbreviateRules === 1) {
-			short_rules(slave);
-		} else if (V.abbreviateRules === 2) {
-			long_rules(slave);
-		}
-	}
-
-	if (slave.tired !== 0) {
-		r += `Tired.`;
-	}
-
-	if (V.abbreviateDiet === 1) {
-		short_weight(slave);
-	} else if (V.abbreviateDiet === 2) {
-		long_weight(slave);
-	}
-
-	if (V.abbreviateDiet === 1) {
-		short_diet(slave);
-	} else if (V.abbreviateDiet === 2) {
-		long_diet(slave);
-	}
-
-	if (V.abbreviateHealth === 1) {
-		short_health(slave);
-	} else if (V.abbreviateHealth === 2) {
-		long_health(slave);
-	}
-
-	if (V.abbreviateDrugs === 1) {
-		short_drugs(slave);
-	} else if (V.abbreviateDrugs === 2) {
-		long_drugs(slave);
-	}
-
-	if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
-		r += `<br>`;
-		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-		}
-	}
-
-	V.desc = SlaveTitle(slave);
-	V.seed = V.desc.substring(0, 1);
-	V.seed = V.seed.toUpperCase();
-	V.desc = V.seed + V.desc.substring(1);
-	r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong>`;
-
-	if (V.seeRace === 1) {
-		r += `<span class="tan">`;
-		if (V.abbreviateRace === 1) {
-			short_race(slave);
-		} else if (V.abbreviateRace === 2) {
-			long_race(slave);
-		}
-		r += `</span>`;
-	}
-
-	if (V.abbreviateNationality === 1) {
-		short_nationality(slave);
-	} else if (V.abbreviateNationality === 2) {
-		long_nationality(slave);
-	}
-
-	if (V.abbreviatePhysicals === 1) {
-		short_skin(slave);
-	} else {
-		r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
-	}
-	if (V.abbreviateGenitalia === 1) {
-		short_genitals(slave);
-	} else if (V.abbreviateGenitalia === 2) {
-		long_genitals(slave);
-	}
-
-	if (V.abbreviatePhysicals === 1) {
-		short_age(slave);
-		short_face(slave);
-		short_eyes(slave);
-		if (slave.markings !== "none") {
-			r += `Markings`;
-		}
-		short_lips(slave);
-		short_teeth(slave);
-		short_muscles(slave);
-		short_limbs(slave);
-		short_voice(slave);
-		short_tits_ass(slave);
-		short_hips(slave);
-		short_waist(slave);
-		short_implants(slave);
-		short_lactation(slave);
-		modScore(slave);
-		short_mods(slave);
-	// TODO: done up to here
-	} else if (V.abbreviatePhysicals === 2) {
+	function long_age(slave) {
 		r += `<span class="pink">`;
 		if (V.showAgeDetail === 1) {
 			r += `Age ${slave.actualAge}.`;
@@ -2082,6 +1979,9 @@ window.SlaveSummaryUncached = (function(){
 		if (slave.inducedNCS === 1) {
 			r += `(<span class="orange">NCS</span>)`;
 		}
+	}
+	
+	function long_face(slave) {
 		if (slave.face < -95) {
 			r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 		} else if (slave.face < -40) {
@@ -2098,11 +1998,17 @@ window.SlaveSummaryUncached = (function(){
 			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 		}
 		r += `${slave.faceShape} face.`;
+	}
+	
+	function long_eyes(slave) {
 		if (slave.eyes <= -2) {
 			r += `<span class="red">Blind.</span>`;
 		} else if (((slave.eyes <= -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
 			r += `<span class="yellow">Nearsighted.</span>`;
 		}
+	}
+	
+	function long_lips(slave) {
 		if (slave.lips > 95) {
 			r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
 		} else if (slave.lips > 70) {
@@ -2116,6 +2022,9 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
 		}
+	}
+	
+	function long_teeth(slave) {
 		if (slave.teeth === "crooked") {
 			r += `<span class="yellow">Crooked teeth.</span>`;
 		} else if (slave.teeth === "cosmetic braces") {
@@ -2127,6 +2036,9 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.teeth === "pointy") {
 			r += `Sharp fangs.`;
 		}
+	}
+	
+	function long_muscles(slave) {
 		if (slave.muscles > 95) {
 			r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
 		} else if (slave.muscles > 50) {
@@ -2150,6 +2062,9 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 		}
+	}
+	
+	function long_limbs(slave) {
 		if (slave.amp !== 0) {
 			if (slave.amp === -1) {
 				r += `Prosthetic limbs.`;
@@ -2172,6 +2087,9 @@ window.SlaveSummaryUncached = (function(){
 			r += `Heeled.`;
 		}
 		r += `</span>`;
+	}
+	
+	function long_voice(slave) {
 		if (slave.voice === 0) {
 			r += `<span class="pink">Mute.</span>`;
 		} else {
@@ -2185,6 +2103,9 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="pink">Cute accent.</span>`;
 			}
 		}
+	}
+	
+	function long_tits_ass(slave) {
 		r += `<span class="pink">`;
 		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
 			r += `Hyper T&A.`;
@@ -2214,6 +2135,9 @@ window.SlaveSummaryUncached = (function(){
 			r += `Big ass.`;
 		}
 		r += `</span>`;
+	}
+	
+	function long_hips(slave) {
 		r += `<span class="red">`;
 		if (slave.hips < -1) {
 			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
@@ -2249,6 +2173,9 @@ window.SlaveSummaryUncached = (function(){
 			}
 		}
 		r += `</span>`;
+	}
+	
+	function long_waist(slave) {
 		if (slave.waist > 95) {
 			r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
 		} else if (slave.waist > 40) {
@@ -2264,6 +2191,9 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
 		}
+	}
+	
+	function long_implants(slave) {
 		r += `<span class="pink">`;
 		if ((slave.boobsImplant !== 0) || (slave.buttImplant !== 0) || (slave.lipsImplant !== 0) || (slave.bellyImplant !== -1)) {
 			r += `Implants.`;
@@ -2272,11 +2202,17 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `All natural.`;
 		}
+	}
+	
+	function long_lactation(slave) {
 		if (slave.lactation === 1) {
 			r += `Lactating naturally.`;
 		} else if (slave.lactation === 2) {
 			r += `Heavy lactation.`;
 		}
+	}
+	
+	function long_mods(slave) {
 		modScore(slave);
 		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
 			true;
@@ -2287,18 +2223,9 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `Light body mods.`;
 		}
-		if (slave.brand !== 0) {
-			r += `Branded.`;
-		}
-		r += `</span>`;
-	}
-
-	r += `<br>`;
-	if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
-		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 	}
-
-	if (V.abbreviateSkills === 1) {
+	
+	function short_intelligence(slave) {
 		if (slave.fetish === "mindbroken") {
 			true;
 		} else if (slave.intelligenceImplant === 1) {
@@ -2350,7 +2277,9 @@ window.SlaveSummaryUncached = (function(){
 					break;
 			}
 		}
-
+	} 
+	
+	function short_sex_skills(slave) {
 		let _SSkills = slave.analSkill + slave.oralSkill;
 		r += `<span class="aquamarine">`;
 		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
@@ -2401,10 +2330,9 @@ window.SlaveSummaryUncached = (function(){
 				}
 			}
 		}
-		if (slave.combatSkill > 0) {
-			r += `C`;
-		}
-		r += `</span>`;
+	}
+	
+	function short_prestige(slave) {
 		if (slave.prestige > 0) {
 			r += `<span class="green">`;
 			if (slave.prestige > 2) {
@@ -2416,7 +2344,9 @@ window.SlaveSummaryUncached = (function(){
 			}
 			r += `</span>`;
 		}
-	} else if (V.abbreviateSkills === 2) {
+	}
+	
+	function long_intelligence(slave) {
 		if (slave.fetish === "mindbroken") {
 			true;
 		} else if (slave.intelligenceImplant === 1) {
@@ -2468,6 +2398,9 @@ window.SlaveSummaryUncached = (function(){
 					break;
 			}
 		}
+	}
+	
+	function long_sex_skills(slave) {
 		let _SSkills = (slave.analSkill + slave.oralSkill);
 		r += `<span class="aquamarine">`;
 		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
@@ -2504,10 +2437,9 @@ window.SlaveSummaryUncached = (function(){
 				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 			}
 		}
-		if (slave.combatSkill > 0) {
-			r += `Trained fighter.`;
-		}
-		r += `</span>`;
+	}
+	
+	function long_prestige(slave) {
 		if (slave.prestige > 0) {
 			r += `<span class="green">`;
 			if (slave.prestige > 2) {
@@ -2520,271 +2452,275 @@ window.SlaveSummaryUncached = (function(){
 			r += `</span>`;
 		}
 	}
-
-	if (V.abbreviateMental === 1) {
-		if (slave.fetish !== "mindbroken") {
-			if (slave.fetishKnown === 1) {
-				r += `<span class="lightcoral">`;
-				switch (slave.fetish) {
-					case "submissive":
-						if (slave.fetishStrength > 95) {
-							r += `Sub++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Sub+`;
-						} else {
-							r += `Sub`;
-						}
-						break;
-					case "cumslut":
-						if (slave.fetishStrength > 95) {
-							r += `Oral++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Oral+`;
-						} else {
-							r += `Oral`;
-						}
-						break;
-					case "humiliation":
-						if (slave.fetishStrength > 95) {
-							r += `Humil++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Humil+`;
-						} else {
-							r += `Humil`;
-						}
-						break;
-					case "buttslut":
-						if (slave.fetishStrength > 95) {
-							r += `Anal++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Anal+`;
-						} else {
-							r += `Anal`;
-						}
-						break;
-					case "boobs":
-						if (slave.fetishStrength > 95) {
-							r += `Boobs++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Boobs+`;
-						} else {
-							r += `Boobs`;
-						}
-						break;
-					case "sadist":
-						if (slave.fetishStrength > 95) {
-							r += `Sadist++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Sadist+`;
-						} else {
-							r += `Sadist`;
-						}
-						break;
-					case "masochist":
-						if (slave.fetishStrength > 95) {
-							r += `Pain++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Pain+`;
-						} else {
-							r += `Pain`;
-						}
-						break;
-					case "dom":
-						if (slave.fetishStrength > 95) {
-							r += `Dom++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Dom+`;
-						} else {
-							r += `Dom`;
-						}
-						break;
-					case "pregnancy":
-						if (slave.fetishStrength > 95) {
-							r += `Preg++`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Preg+`;
-						} else {
-							r += `Preg`;
-						}
-						break;
-					default:
-						r += `Vanilla`;
-						break;
+	
+	function short_fetish(slave) {
+		r += `<span class="lightcoral">`;
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
+					r += `Sub++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sub+`;
+				} else {
+					r += `Sub`;
 				}
-				if (V.summaryStats) {
-					r += `[${slave.fetishStrength}]`;
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
+					r += `Oral++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Oral+`;
+				} else {
+					r += `Oral`;
 				}
-				r += `</span>`;
-			}
-			if (slave.attrKnown === 1) {
-				if (slave.attrXY <= 5) {
-					r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-				} else if (slave.attrXY <= 15) {
-					r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-				} else if (slave.attrXY <= 35) {
-					r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-				} else if (slave.attrXY <= 65) {
-					r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
-				} else if (slave.attrXY <= 85) {
-					r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-				} else if (slave.attrXY <= 95) {
-					r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-				} else if (slave.attrXX > 95) {
-					if (slave.energy <= 95) {
-						r += `<span class="green">Omni!</span>`;
-					} else {
-						r += `<span class="green">Omni+Nympho!!</span>`;
-					}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
+					r += `Humil++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Humil+`;
 				} else {
-					r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+					r += `Humil`;
 				}
-				if (slave.attrXX <= 5) {
-					r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-				} else if (slave.attrXX <= 15) {
-					r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-				} else if (slave.attrXX <= 35) {
-					r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-				} else if (slave.attrXX <= 65) {
-					r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
-				} else if (slave.attrXX <= 85) {
-					r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-				} else if (slave.attrXX <= 95) {
-					r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-				} else if (slave.attrXY <= 95) {
-					r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
+					r += `Anal++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Anal+`;
+				} else {
+					r += `Anal`;
 				}
-				if (slave.energy > 95) {
-					if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
-						r += `<span class="green">Nympho!</span>`;
-					}
-				} else if (slave.energy > 80) {
-					r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-				} else if (slave.energy > 60) {
-					r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-				} else if (slave.energy > 40) {
-					r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-				} else if (slave.energy > 20) {
-					r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
+					r += `Boobs++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Boobs+`;
+				} else {
+					r += `Boobs`;
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
+					r += `Sadist++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sadist+`;
+				} else {
+					r += `Sadist`;
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
+					r += `Pain++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Pain+`;
+				} else {
+					r += `Pain`;
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
+					r += `Dom++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Dom+`;
 				} else {
-					r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+					r += `Dom`;
 				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
+					r += `Preg++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Preg+`;
+				} else {
+					r += `Preg`;
+				}
+				break;
+			default:
+				r += `Vanilla`;
+				break;
+		}
+		if (V.summaryStats) {
+			r += `[${slave.fetishStrength}]`;
+		}
+		r += `</span>`;
+	}
+	
+	function short_attraction(slave) {
+		if (slave.attrXY <= 5) {
+			r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 15) {
+			r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 35) {
+			r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 65) {
+			r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
+		} else if (slave.attrXY <= 85) {
+			r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
+				r += `<span class="green">Omni!</span>`;
+			} else {
+				r += `<span class="green">Omni+Nympho!!</span>`;
 			}
+		} else {
+			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
 		}
-		if (slave.clitPiercing === 3) {
-			if (slave.fetishKnown === 1) {
-				if (slave.clitSetting === "off") {
+		if (slave.attrXX <= 5) {
+			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 15) {
+			r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 35) {
+			r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 65) {
+			r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
+		} else if (slave.attrXX <= 85) {
+			r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 95) {
+			r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		}
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+				r += `<span class="green">Nympho!</span>`;
+			}
+		} else if (slave.energy > 80) {
+			r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 60) {
+			r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 40) {
+			r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 20) {
+			r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else {
+			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		}
+	}
+	
+	function short_smart_fetish(slave) {
+		if (slave.fetishKnown === 1) {
+			if (slave.clitSetting === "off") {
+				r += `SP-`;
+			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+				r += `SP:sub`;
+			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+				r += `SP:oral`;
+			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+				r += `SP:humil`;
+			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+				r += `SP:anal`;
+			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+				r += `SP:boobs`;
+			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+				r += `SP:sade`;
+			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+				r += `SP:pain`;
+			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+				r += `SP:dom`;
+			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+				r += `SP:preg`;
+			} else if (((slave.fetish !== "none") && (slave.clitSetting === "vanilla"))) {
+				r += `SP:vanilla`;
+			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+				r += `SP:all`;
+			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+				r += `SP:none`;
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+				r += `SP:monitoring`;
+			}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
 					r += `SP-`;
-				} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+					break;
+				case "submissive":
 					r += `SP:sub`;
-				} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+					break;
+				case "lesbian":
+					r += `SP:les`;
+					break;
+				case "oral":
 					r += `SP:oral`;
-				} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+					break;
+				case "humiliation":
 					r += `SP:humil`;
-				} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+					break;
+				case "anal":
 					r += `SP:anal`;
-				} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+					break;
+				case "boobs":
 					r += `SP:boobs`;
-				} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+					break;
+				case "sadist":
 					r += `SP:sade`;
-				} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+					break;
+				case "masochist":
 					r += `SP:pain`;
-				} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+					break;
+				case "dom":
 					r += `SP:dom`;
-				} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
-					r += `SP:preg`;
-				} else if (((slave.fetish !== "none") && (slave.clitSetting === "vanilla"))) {
+					break;
+				case "pregnancy":
+					r += `SP:pregnancy`;
+					break;
+				case "vanilla":
 					r += `SP:vanilla`;
-				} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+					break;
+				case "all":
 					r += `SP:all`;
-				} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+					break;
+				case "none":
 					r += `SP:none`;
-				} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+					break;
+			}
+		}
+	}
+	
+	function short_smart_attraction(slave) {
+		if (slave.attrKnown === 1) {
+			if (slave.clitSetting === "women") {
+				if (slave.attrXX < 95) {
+					r += `SP:women`;
+				} else {
 					r += `SP:monitoring`;
 				}
-			} else {
-				switch (slave.clitSetting) {
-					case "off":
-						r += `SP-`;
-						break;
-					case "submissive":
-						r += `SP:sub`;
-						break;
-					case "lesbian":
-						r += `SP:les`;
-						break;
-					case "oral":
-						r += `SP:oral`;
-						break;
-					case "humiliation":
-						r += `SP:humil`;
-						break;
-					case "anal":
-						r += `SP:anal`;
-						break;
-					case "boobs":
-						r += `SP:boobs`;
-						break;
-					case "sadist":
-						r += `SP:sade`;
-						break;
-					case "masochist":
-						r += `SP:pain`;
-						break;
-					case "dom":
-						r += `SP:dom`;
-						break;
-					case "pregnancy":
-						r += `SP:pregnancy`;
-						break;
-					case "vanilla":
-						r += `SP:vanilla`;
-						break;
-					case "all":
-						r += `SP:all`;
-						break;
-					case "none":
-						r += `SP:none`;
-						break;
+			} else if (slave.clitSetting === "men") {
+				if (slave.attrXY < 95) {
+					r += `SP:men`;
+				} else {
+					r += `SP:monitoring`;
 				}
-			}
-			if (slave.attrKnown === 1) {
-				if (slave.clitSetting === "women") {
-					if (slave.attrXX < 95) {
-						r += `SP:women`;
-					} else {
-						r += `SP:monitoring`;
-					}
-				} else if (slave.clitSetting === "men") {
-					if (slave.attrXY < 95) {
-						r += `SP:men`;
-					} else {
-						r += `SP:monitoring`;
-					}
-				} else if (slave.clitSetting === "anti-women") {
-					if (slave.attrXX > 0) {
-						r += `SP:anti-women`;
-					} else {
-						r += `SP:monitoring`;
-					}
-				} else if (slave.clitSetting === "anti-men") {
-					if (slave.attrXY > 0) {
-						r += `SP:anti-men`;
-					} else {
-						r += `SP:monitoring`;
-					}
-				}
-			} else {
-				if (slave.clitSetting === "women") {
-					r += `SP:women`;
-				} else if (slave.clitSetting === "men") {
-					r += `SP:men`;
-				} else if (slave.clitSetting === "anti-women") {
+			} else if (slave.clitSetting === "anti-women") {
+				if (slave.attrXX > 0) {
 					r += `SP:anti-women`;
-				} else if (slave.clitSetting === "anti-men") {
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "anti-men") {
+				if (slave.attrXY > 0) {
 					r += `SP:anti-men`;
+				} else {
+					r += `SP:monitoring`;
 				}
 			}
+		} else {
+			if (slave.clitSetting === "women") {
+				r += `SP:women`;
+			} else if (slave.clitSetting === "men") {
+				r += `SP:men`;
+			} else if (slave.clitSetting === "anti-women") {
+				r += `SP:anti-women`;
+			} else if (slave.clitSetting === "anti-men") {
+				r += `SP:anti-men`;
+			}
 		}
+	}
+	
+	function short_behavior_flaw(slave) {
 		r += `<span class="red">`;
 		switch (slave.behavioralFlaw) {
 			case "arrogant":
@@ -2819,6 +2755,9 @@ window.SlaveSummaryUncached = (function(){
 				break;
 		}
 		r += `</span>`;
+	}
+	
+	function short_sex_flaw(slave) {
 		switch (slave.sexualFlaw) {
 			case "hates oral":
 				r += `<span class="red">Oral-</span>`;
@@ -2878,6 +2817,9 @@ window.SlaveSummaryUncached = (function(){
 				slave.sexualFlaw = "none";
 				break;
 		}
+	}	
+	
+	function short_behavior_quirk(slave) {
 		r += `<span class="green">`;
 		switch (slave.behavioralQuirk) {
 			case "confident":
@@ -2911,6 +2853,9 @@ window.SlaveSummaryUncached = (function(){
 				slave.behavioralQuirk = "none";
 				break;
 		}
+	}
+	
+	function short_sex_quirk(slave) {
 		switch (slave.sexualQuirk) {
 			case "gagfuck queen":
 				r += `Gagfuck`;
@@ -2944,240 +2889,246 @@ window.SlaveSummaryUncached = (function(){
 				break;
 		}
 		r += `</span>`;
-	} else if (V.abbreviateMental === 2) {
-		if (slave.fetish !== "mindbroken") {
-			if (slave.fetishKnown === 1) {
-				r += `<span class="lightcoral">`;
-				switch (slave.fetish) {
-					case "submissive":
-						if (slave.fetishStrength > 95) {
-							r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					case "cumslut":
-						if (slave.fetishStrength > 95) {
-							r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					case "humiliation":
-						if (slave.fetishStrength > 95) {
-							r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					case "buttslut":
-						if (slave.fetishStrength > 95) {
-							r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					case "boobs":
-						if (slave.fetishStrength > 95) {
-							r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					case "sadist":
-						if (slave.fetishStrength > 95) {
-							r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					case "masochist":
-						if (slave.fetishStrength > 95) {
-							r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					case "dom":
-						if (slave.fetishStrength > 95) {
-							r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					case "pregnancy":
-						if (slave.fetishStrength > 95) {
-							r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else if (slave.fetishStrength > 60) {
-							r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						} else {
-							r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						}
-						break;
-					default:
-						r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-						break;
+	}
+	
+	function long_fetish(slave) {
+		r += `<span class="lightcoral">`;
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
+					r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				}
-				r += `</span>`;
-			}
-		}
-		if (slave.attrKnown === 1) {
-			if (slave.attrXY <= 5) {
-				r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-			} else if (slave.attrXY <= 15) {
-				r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-			} else if (slave.attrXY <= 35) {
-				r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-			} else if (slave.attrXY <= 65) {
-				r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
-			} else if (slave.attrXY <= 85) {
-				r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-			} else if (slave.attrXY <= 95) {
-				r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-			} else if (slave.attrXX > 95) {
-				if (slave.energy <= 95) {
-					r += `<span class="green">Omnisexual!</span>`;
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
+					r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				} else {
-					r += `<span class="green">Omnisexual nymphomaniac!</span>`;
+					r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				}
-			} else {
-				r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
-			}
-			if (slave.attrXX <= 5) {
-				r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-			} else if (slave.attrXX <= 15) {
-				r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-			} else if (slave.attrXX <= 35) {
-				r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-			} else if (slave.attrXX <= 65) {
-				r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
-			} else if (slave.attrXX <= 85) {
-				r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-			} else if (slave.attrXX <= 95) {
-				r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-			} else if (slave.attrXY <= 95) {
-				r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
-			}
-			if (slave.energy > 95) {
-				if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
-					r += `<span class="green">Nymphomaniac!</span>`;
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
+					r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
+					r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
+					r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
+					r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				}
-			} else if (slave.energy > 80) {
-				r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-			} else if (slave.energy > 60) {
-				r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-			} else if (slave.energy > 40) {
-				r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-			} else if (slave.energy > 20) {
-				r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
+					r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
+					r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
+					r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			default:
+				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				break;
+		}
+		r += `</span>`;
+	}
+	
+	function long_attraction(slave) {
+		if (slave.attrXY <= 5) {
+			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXY <= 15) {
+			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXY <= 35) {
+			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXY <= 65) {
+			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
+		} else if (slave.attrXY <= 85) {
+			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
+				r += `<span class="green">Omnisexual!</span>`;
 			} else {
-				r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+				r += `<span class="green">Omnisexual nymphomaniac!</span>`;
 			}
+		} else {
+			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
 		}
-		if (slave.clitPiercing === 3) {
-			if (slave.fetishKnown === 1) {
-				if (slave.clitSetting === "off") {
+		if (slave.attrXX <= 5) {
+			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXX <= 15) {
+			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXX <= 35) {
+			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXX <= 65) {
+			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
+		} else if (slave.attrXX <= 85) {
+			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXX <= 95) {
+			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		}
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+				r += `<span class="green">Nymphomaniac!</span>`;
+			}
+		} else if (slave.energy > 80) {
+			r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 60) {
+			r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 40) {
+			r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 20) {
+			r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else {
+			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		}
+	}
+	
+	function long_smart_fetish(slave) {
+		if (slave.fetishKnown === 1) {
+			if (slave.clitSetting === "off") {
+				r += `SP off.`;
+			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+				r += `SP: submissive.`;
+			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+				r += `SP: oral.`;
+			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+				r += `SP: humiliation.`;
+			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+				r += `SP: anal.`;
+			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+				r += `SP: breasts.`;
+			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+				r += `SP: sadism.`;
+			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+				r += `SP: masochism.`;
+			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+				r += `SP: dominance.`;
+			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+				r += `SP: pregnancy.`;
+			} else if ((slave.fetish !== "none") && (slave.clitSetting === "vanilla")) {
+				r += `SP: vanilla.`;
+			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+				r += `SP: all.`;
+			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+				r += `SP: none.`;
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+				r += `SP: monitoring.`;
+			}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
 					r += `SP off.`;
-				} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+					break;
+				case "submissive":
 					r += `SP: submissive.`;
-				} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+					break;
+				case "oral":
 					r += `SP: oral.`;
-				} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+					break;
+				case "humiliation":
 					r += `SP: humiliation.`;
-				} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+					break;
+				case "anal":
 					r += `SP: anal.`;
-				} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+					break;
+				case "boobs":
 					r += `SP: breasts.`;
-				} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+					break;
+				case "sadist":
 					r += `SP: sadism.`;
-				} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+					break;
+				case "masochist":
 					r += `SP: masochism.`;
-				} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+					break;
+				case "dom":
 					r += `SP: dominance.`;
-				} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+					break;
+				case "pregnancy":
 					r += `SP: pregnancy.`;
-				} else if ((slave.fetish !== "none") && (slave.clitSetting === "vanilla")) {
+					break;
+				case "vanilla":
 					r += `SP: vanilla.`;
-				} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+					break;
+				case "all":
 					r += `SP: all.`;
-				} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+					break;
+				case "none":
 					r += `SP: none.`;
-				} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
-					r += `SP: monitoring.`;
-				}
-			} else {
-				switch (slave.clitSetting) {
-					case "off":
-						r += `SP off.`;
-						break;
-					case "submissive":
-						r += `SP: submissive.`;
-						break;
-					case "oral":
-						r += `SP: oral.`;
-						break;
-					case "humiliation":
-						r += `SP: humiliation.`;
-						break;
-					case "anal":
-						r += `SP: anal.`;
-						break;
-					case "boobs":
-						r += `SP: breasts.`;
-						break;
-					case "sadist":
-						r += `SP: sadism.`;
-						break;
-					case "masochist":
-						r += `SP: masochism.`;
-						break;
-					case "dom":
-						r += `SP: dominance.`;
-						break;
-					case "pregnancy":
-						r += `SP: pregnancy.`;
-						break;
-					case "vanilla":
-						r += `SP: vanilla.`;
-						break;
-					case "all":
-						r += `SP: all.`;
-						break;
-					case "none":
-						r += `SP: none.`;
-						break;
-				}
+					break;
 			}
-			if (slave.attrKnown === 1) {
-				if ((slave.attrXX < 100) && (slave.clitSetting === "women")) {
-					r += `SP: women.`;
-				} else if ((slave.attrXY < 100) && (slave.clitSetting === "men")) {
-					r += `SP: men.`;
-				}
-			} else {
-				if (slave.clitSetting === "women") {
-					r += `SP: women.`;
-				} else if (slave.clitSetting === "men") {
-					r += `SP: men.`;
-				}
+		}
+	}
+	
+	function long_smart_attraction(slave) {
+		if (slave.attrKnown === 1) {
+			if ((slave.attrXX < 100) && (slave.clitSetting === "women")) {
+				r += `SP: women.`;
+			} else if ((slave.attrXY < 100) && (slave.clitSetting === "men")) {
+				r += `SP: men.`;
+			}
+		} else {
+			if (slave.clitSetting === "women") {
+				r += `SP: women.`;
+			} else if (slave.clitSetting === "men") {
+				r += `SP: men.`;
 			}
 		}
+	}
+	
+	function long_behavior_flaw(slave) {
 		r += `<span class="red">`;
 		switch (slave.behavioralFlaw) {
 			case "arrogant":
@@ -3212,6 +3163,9 @@ window.SlaveSummaryUncached = (function(){
 				break;
 		}
 		r += `</span>`;
+	}
+	
+	function long_sex_flaw(slave) {
 		switch (slave.sexualFlaw) {
 			case "hates oral":
 				r += `<span class="red">Hates oral.</span>`;
@@ -3271,6 +3225,9 @@ window.SlaveSummaryUncached = (function(){
 				slave.sexualFlaw = "none";
 				break;
 		}
+	}
+	
+	function long_behavior_quirk(slave) {
 		r += `<span class="green">`;
 		switch (slave.behavioralQuirk) {
 			case "confident":
@@ -3304,6 +3261,9 @@ window.SlaveSummaryUncached = (function(){
 				slave.behavioralQuirk = "none";
 				break;
 		}
+	}
+	
+	function long_sex_quirk(slave) {
 		switch (slave.sexualQuirk) {
 			case "gagfuck queen":
 				r += `Gagfuck queen.`;
@@ -3338,6 +3298,192 @@ window.SlaveSummaryUncached = (function(){
 		}
 		r += `</span>`;
 	}
+	
+	
+	
+	return SlaveSummaryUncached;
+	
+	if (V.abbreviateDevotion === 1) {
+		short_devotion(slave);
+	} else if (V.abbreviateDevotion === 2) {
+		long_devotion(slave);
+	}
+
+	if (slave.fuckdoll === 0) {
+		if (V.abbreviateRules === 1) {
+			short_rules(slave);
+		} else if (V.abbreviateRules === 2) {
+			long_rules(slave);
+		}
+	}
+
+	if (slave.tired !== 0) {
+		r += `Tired.`;
+	}
+
+	if (V.abbreviateDiet === 1) {
+		short_weight(slave);
+	} else if (V.abbreviateDiet === 2) {
+		long_weight(slave);
+	}
+
+	if (V.abbreviateDiet === 1) {
+		short_diet(slave);
+	} else if (V.abbreviateDiet === 2) {
+		long_diet(slave);
+	}
+
+	if (V.abbreviateHealth === 1) {
+		short_health(slave);
+	} else if (V.abbreviateHealth === 2) {
+		long_health(slave);
+	}
+
+	if (V.abbreviateDrugs === 1) {
+		short_drugs(slave);
+	} else if (V.abbreviateDrugs === 2) {
+		long_drugs(slave);
+	}
+
+	if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+	}
+
+	V.desc = SlaveTitle(slave);
+	V.seed = V.desc.substring(0, 1);
+	V.seed = V.seed.toUpperCase();
+	V.desc = V.seed + V.desc.substring(1);
+	r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong>`;
+
+	if (V.seeRace === 1) {
+		r += `<span class="tan">`;
+		if (V.abbreviateRace === 1) {
+			short_race(slave);
+		} else if (V.abbreviateRace === 2) {
+			long_race(slave);
+		}
+		r += `</span>`;
+	}
+
+	if (V.abbreviateNationality === 1) {
+		short_nationality(slave);
+	} else if (V.abbreviateNationality === 2) {
+		long_nationality(slave);
+	}
+
+	if (V.abbreviatePhysicals === 1) {
+		short_skin(slave);
+	} else {
+		r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
+	}
+	if (V.abbreviateGenitalia === 1) {
+		short_genitals(slave);
+	} else if (V.abbreviateGenitalia === 2) {
+		long_genitals(slave);
+	}
+
+	if (V.abbreviatePhysicals === 1) {
+		short_age(slave);
+		short_face(slave);
+		short_eyes(slave);
+		if (slave.markings !== "none") {
+			r += `Markings`;
+		}
+		short_lips(slave);
+		short_teeth(slave);
+		short_muscles(slave);
+		short_limbs(slave);
+		short_voice(slave);
+		short_tits_ass(slave);
+		short_hips(slave);
+		short_waist(slave);
+		short_implants(slave);
+		short_lactation(slave);
+		short_mods(slave);
+	} else if (V.abbreviatePhysicals === 2) {
+		long_age(slave);
+		long_face(slave);
+		long_eyes(slave);
+		long_lips(slave);
+		long_teeth(slave);
+		long_muscles(slave);
+		long_limbs(slave);
+		long_voice(slave);
+		long_tits_ass(slave);
+		long_hips(slave);
+		long_waist(slave);
+		long_implants(slave);
+		long_lactation(slave);
+		long_mods(slave);
+		if (slave.brand !== 0) {
+			r += `Branded.`;
+		}
+		r += `</span>`;
+	}
+
+	r += `<br>`;
+	if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+	}
+
+	if (V.abbreviateSkills === 1) {
+		short_intelligence(slave);
+		short_sex_skills(slave);
+		
+		if (slave.combatSkill > 0) {
+			r += `C`;
+		}
+		r += `</span>`;
+		short_prestige(slave);
+	} else if (V.abbreviateSkills === 2) {
+		long_intelligence(slave);
+		long_sex_skills(slave);
+		if (slave.combatSkill > 0) {
+			r += `Trained fighter.`;
+		}
+		r += `</span>`;
+		long_prestige(slave);
+	}
+
+	if (V.abbreviateMental === 1) {
+		if (slave.fetish !== "mindbroken") {
+			if (slave.fetishKnown === 1) {
+				short_fetish(slave);
+			}
+			if (slave.attrKnown === 1) {
+				short_attraction(slave);
+			}
+		}
+		if (slave.clitPiercing === 3) {
+			short_smart_fetish(slave);
+			short_smart_attraction(slave);
+			
+		}
+		short_behavior_flaw(slave);
+		short_sex_flaw(slave);
+		short_behavior_quirk(slave);
+		short_sex_quirk(slave);
+	} else if (V.abbreviateMental === 2) {
+		if (slave.fetish !== "mindbroken") {
+			if (slave.fetishKnown === 1) {
+				long_fetish(slave);
+			}
+		}
+		if (slave.attrKnown === 1) {
+			long_attraction(slave);
+		}
+		if (slave.clitPiercing === 3) {
+			long_smart_fetish(slave);
+			long_smart_attraction(slave);
+		}
+		long_behavior_flaw(slave);
+		long_sex_flaw(slave);
+		long_behavior_quirk(slave);
+		long_sex_quirk(slave);
+	}
 
 	if (slave.customLabel !== "") {
 		r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
@@ -3349,7 +3495,8 @@ window.SlaveSummaryUncached = (function(){
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
 	}
-
+	
+	// TODO done up to here
 	if (V.abbreviateMental === 1) {
 		r += `<span class="lightgreen">`;
 		let _relationshipHandled = 0;
-- 
GitLab


From 40bd933549d3059a16fd4b8e60d102a7036f92c3 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Tue, 10 Jul 2018 14:20:43 +0300
Subject: [PATCH 021/189] finish organisation and fixing stylistic issues

---
 src/js/slaveSummaryWidgets.tw | 2009 +++++++++++++++++----------------
 1 file changed, 1025 insertions(+), 984 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 1a0aeeb1029..c09a7546849 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -26,6 +26,197 @@ window.SlaveSummaryUncached = (function(){
 	function SlaveSummaryUncached(slave) {
 		V = State.variables;
 		r = "";
+		if (V.abbreviateDevotion === 1)
+			short_devotion(slave);
+		else if (V.abbreviateDevotion === 2)
+			long_devotion(slave);
+		if (slave.fuckdoll === 0) {
+			if (V.abbreviateRules === 1)
+				short_rules(slave);
+			else if (V.abbreviateRules === 2)
+				long_rules(slave);
+		}
+		if (slave.tired !== 0)
+			r += `Tired.`;
+		if (V.abbreviateDiet === 1)
+			short_weight(slave);
+		else if (V.abbreviateDiet === 2)
+			long_weight(slave);
+		if (V.abbreviateDiet === 1)
+			short_diet(slave);
+		else if (V.abbreviateDiet === 2)
+			long_diet(slave);
+		if (V.abbreviateHealth === 1)
+			short_health(slave);
+		else if (V.abbreviateHealth === 2)
+			long_health(slave);
+		if (V.abbreviateDrugs === 1)
+			short_drugs(slave);
+		else if (V.abbreviateDrugs === 2)
+			long_drugs(slave);
+		if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
+			r += `<br>`;
+			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		V.desc = SlaveTitle(slave);
+		V.seed = V.desc.substring(0, 1);
+		V.seed = V.seed.toUpperCase();
+		V.desc = V.seed + V.desc.substring(1);
+		r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong> `;
+		if (V.seeRace === 1) {
+			r += `<span class="tan">`;
+			if (V.abbreviateRace === 1)
+				short_race(slave);
+			else if (V.abbreviateRace === 2)
+				long_race(slave);
+			r += `</span>`;
+		}
+		if (V.abbreviateNationality === 1)
+			short_nationality(slave);
+		else if (V.abbreviateNationality === 2)
+			long_nationality(slave);
+		if (V.abbreviatePhysicals === 1)
+			short_skin(slave);
+		else
+			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
+		if (V.abbreviateGenitalia === 1)
+			short_genitals(slave);
+		else if (V.abbreviateGenitalia === 2)
+			long_genitals(slave);
+		if (V.abbreviatePhysicals === 1) {
+			short_age(slave);
+			short_face(slave);
+			short_eyes(slave);
+			if (slave.markings !== "none")
+				r += `Markings`;
+			short_lips(slave);
+			short_teeth(slave);
+			short_muscles(slave);
+			short_limbs(slave);
+			short_voice(slave);
+			short_tits_ass(slave);
+			short_hips(slave);
+			short_waist(slave);
+			short_implants(slave);
+			short_lactation(slave);
+			short_mods(slave);
+		} else if (V.abbreviatePhysicals === 2) {
+			long_age(slave);
+			long_face(slave);
+			long_eyes(slave);
+			long_lips(slave);
+			long_teeth(slave);
+			long_muscles(slave);
+			long_limbs(slave);
+			long_voice(slave);
+			long_tits_ass(slave);
+			long_hips(slave);
+			long_waist(slave);
+			long_implants(slave);
+			long_lactation(slave);
+			long_mods(slave);
+			if (slave.brand !== 0)
+				r += `Branded.`;
+			r += `</span>`;
+		}
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		if (V.abbreviateSkills === 1) {
+			short_intelligence(slave);
+			short_sex_skills(slave);
+			if (slave.combatSkill > 0)
+				r += `C`;
+			r += `</span>`;
+			short_prestige(slave);
+		} else if (V.abbreviateSkills === 2) {
+			long_intelligence(slave);
+			long_sex_skills(slave);
+			if (slave.combatSkill > 0)
+				r += `Trained fighter.`;
+			r += `</span>`;
+			long_prestige(slave);
+		}
+		if (V.abbreviateMental === 1) {
+			if (slave.fetish !== "mindbroken") {
+				if (slave.fetishKnown === 1)
+					short_fetish(slave);
+				if (slave.attrKnown === 1)
+					short_attraction(slave);
+			}
+			if (slave.clitPiercing === 3) {
+				short_smart_fetish(slave);
+				short_smart_attraction(slave);
+			}
+			short_behavior_flaw(slave);
+			short_sex_flaw(slave);
+			short_behavior_quirk(slave);
+			short_sex_quirk(slave);
+		} else if (V.abbreviateMental === 2) {
+			if (slave.fetish !== "mindbroken") {
+				if (slave.fetishKnown === 1)
+					long_fetish(slave);
+				if (slave.attrKnown === 1)
+					long_attraction(slave);
+			}
+			if (slave.clitPiercing === 3) {
+				long_smart_fetish(slave);
+				long_smart_attraction(slave);
+			}
+			long_behavior_flaw(slave);
+			long_sex_flaw(slave);
+			long_behavior_quirk(slave);
+			long_sex_quirk(slave);
+		}
+		if (slave.customLabel !== "")
+			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
+		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
+			r += `<br>`;
+			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		if (V.abbreviateMental === 1) {
+			r += `<span class="lightgreen">`;
+			let _relationshipHandled = 0;
+			if (V.familyTesting === 1)
+				short_extended_family(slave);
+			else
+				short_legacy_family(slave);
+			r += `</span>`;
+			_relationshipHandled = 0;
+			short_rival(slave);
+		} else if (V.abbreviateMental === 2) {
+			let _relationshipHandled = 0;
+			if (V.familyTesting === 1)
+				long_extended_family(slave);
+			else
+				long_legacy_family(slave);
+			_relationshipHandled = 0;
+			long_rival(slave);
+		}
+		if (slave.fuckdoll === 0) {
+			if (V.abbreviateClothes === 2) {
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+				if (slave.choosesOwnClothes === 1)
+					r += `Dressing herself.`;
+				long_clothes(slave);
+				long_collar(slave);
+				long_belly(slave);
+				if (slave.amp !== 1)
+					long_legs(slave);
+				if (canWalk(slave))
+					long_shoes(slave);
+				long_vaginal_acc(slave);
+				long_dick_acc(slave);
+				long_buttplug(slave);
+			}
+		}
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		rules_assistant(slave);
+		if (V.abbreviateOrigins === 2 && slave.origin !== 0)
+			origins(slave);
+		return r;
 	}
 	
 	function short_devotion(slave) {
@@ -47,7 +238,7 @@ window.SlaveSummaryUncached = (function(){
 			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
 		}
 		if (slave.fetish === "mindbroken") {
-			true;
+			return;
 		} else if (slave.trust < -95) {
 			r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 		} else if (slave.trust < -50) {
@@ -95,8 +286,9 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
 		}
+		r += " ";
 		if (slave.fetish === "mindbroken") {
-			true;
+			return;
 		} else if (slave.trust < -95) {
 			r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 		} else if (slave.trust < -50) {
@@ -124,6 +316,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
 			}
 		}
+		r += " ";
 	}
 	
 	function short_rules(slave) {
@@ -210,14 +403,14 @@ window.SlaveSummaryUncached = (function(){
 	}
 	
 	function long_rules(slave) {
-		r += `Living standard: ${slave.livingRules}.`;
+		r += `Living standard: ${slave.livingRules}. `;
 		if (canTalk(slave)) {
-			r += `Speech rules: ${slave.speechRules}.`;
+			r += `Speech rules: ${slave.speechRules}. `;
 		}
-		r += `Relationship rules: ${slave.relationshipRules}.`;
-		r += `Typical punishment: ${slave.standardPunishment}.`;
-		r += `Typical reward: ${slave.standardReward}.`;
-		r += `Release rules: ${slave.releaseRules}.`;
+		r += `Relationship rules: ${slave.relationshipRules}. `;
+		r += `Typical punishment: ${slave.standardPunishment}. `;
+		r += `Typical reward: ${slave.standardReward}. `;
+		r += `Release rules: ${slave.releaseRules}. `;
 	}
 	
 	function short_weight(slave) {
@@ -314,6 +507,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		}
+		r += " ";
 
 	}
 	
@@ -401,7 +595,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `Fertility.`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		if (slave.dietCum === 2) {
 			r += `Diet Base: <span class="cyan">Cum Based.</span>`;
 		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
@@ -413,6 +607,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if ((slave.dietMilk === 2)) {
 			r += `Diet Base: <span class="cyan">Milk Based.</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_health(slave) {
@@ -441,6 +636,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_drugs(slave) {
@@ -626,7 +822,7 @@ window.SlaveSummaryUncached = (function(){
 	
 	function long_drugs(slave) {
 		if ((slave.drugs !== "no drugs") && (slave.drugs !== "none")) {
-			r += `<span class="tan">On ${slave.drugs}.</span>`;
+			r += `<span class="tan">On ${slave.drugs}.</span> `;
 		}
 		r += `<span class="lightgreen">`;
 		if (slave.curatives === 2) {
@@ -634,14 +830,14 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.curatives === 1) {
 			r += `On preventatives.`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		r += `<span class="lightblue">`;
 		if (slave.aphrodisiacs > 0) {
 			r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
 		} else if (slave.aphrodisiacs === -1) {
 			r += `On anaphrodisiacs.`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		if (slave.addict !== 0) {
 			r += `<span class="cyan">Addict.</span>`;
 		}
@@ -655,7 +851,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.hormones < 0) {
 			r += `Male hormones.`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		r += `<span class="mediumseagreen">`;
 		if ((slave.bellyImplant > -1)) {
 			r += `Belly Implant.`;
@@ -705,7 +901,7 @@ window.SlaveSummaryUncached = (function(){
 				}
 			}
 		}
-		r += `</span>`;
+		r += `</span> `;
 		if (slave.induce === 1) {
 			r += `<span class="orange">Showing signs of early labor.</span>`;
 		}
@@ -725,7 +921,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.bellyFluid > 0) {
 			r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_race(slave) {
@@ -770,6 +966,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
 				break;
 		}
+		r += " ";
 	}
 	
 	function short_race(slave) {
@@ -1507,7 +1704,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `${slave.nationality}.`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_skin(slave) {
@@ -1635,15 +1832,15 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.balls > 3) {
 				r += `Big balls.`;
 			}
-			r += `</span>`;
+			r += `</span> `;
 		}
 		if (slave.vagina === 0) {
-			r += `<span class="lime">Virgin.</span>`;
+			r += `<span class="lime">Virgin.</span> `;
 		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
-			r += `<span class="pink">Naked, barefoot, and pregnant.</span>`;
+			r += `<span class="pink">Naked, barefoot, and pregnant.</span> `;
 		}
 		if (slave.anus === 0) {
-			r += `<span class="lime">Anal virgin.</span>`;
+			r += `<span class="lime">Anal virgin.</span> `;
 		}
 		r += `<span class="pink">`;
 		if ((slave.vagina > 3) && (slave.anus > 3)) {
@@ -1659,7 +1856,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.anus > 2) {
 			r += `Gaping anus.`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_age(slave) {
@@ -1918,7 +2115,7 @@ window.SlaveSummaryUncached = (function(){
 	function short_mods(slave) {
 		modScore(slave);
 		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
-			true;
+			return;
 		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
 			r += `Mods++`;
 		} else if (V.modScore > 7) {
@@ -1953,16 +2150,17 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `Underage.`;
 		}
+		r += " ";
 		/*
 		 **  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
 		 **  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
 		 */
 		if (((slave.inducedNCS === 0) || (slave.visualAge >= slave.physicalAge))) {
 			if (slave.actualAge !== slave.physicalAge) {
-				r += `${slave.physicalAge} year old body.`;
+				r += `${slave.physicalAge} year old body. `;
 			}
 			if (slave.visualAge !== slave.physicalAge) {
-				r += `Looks ${slave.visualAge}.`;
+				r += `Looks ${slave.visualAge}. `;
 			}
 		} else {
 			/*
@@ -1974,10 +2172,10 @@ window.SlaveSummaryUncached = (function(){
 			 **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
 			 **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
 			 */
-			r += `Appears to have a ${slave.visualAge} year old body.`;
+			r += `Appears to have a ${slave.visualAge} year old body. `;
 		}
 		if (slave.inducedNCS === 1) {
-			r += `(<span class="orange">NCS</span>)`;
+			r += `(<span class="orange">NCS</span>) `;
 		}
 	}
 	
@@ -1997,7 +2195,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 		}
-		r += `${slave.faceShape} face.`;
+		r += ` ${slave.faceShape} face.`;
 	}
 	
 	function long_eyes(slave) {
@@ -2006,6 +2204,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (((slave.eyes <= -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
 			r += `<span class="yellow">Nearsighted.</span>`;
 		}
+		r += " ";
 	}
 	
 	function long_lips(slave) {
@@ -2022,6 +2221,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
 		}
+		r += " ";
 	}
 	
 	function long_teeth(slave) {
@@ -2036,6 +2236,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.teeth === "pointy") {
 			r += `Sharp fangs.`;
 		}
+		r += " ";
 	}
 	
 	function long_muscles(slave) {
@@ -2062,6 +2263,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 		}
+		r += " ";
 	}
 	
 	function long_limbs(slave) {
@@ -2080,13 +2282,14 @@ window.SlaveSummaryUncached = (function(){
 				r += `Amputee.`;
 			}
 		}
+		r += " ";
 		if (!canWalk(slave)) {
-			r += `Immobile.`;
+			r += `Immobile. `;
 		}
 		if (slave.heels === 1) {
-			r += `Heeled.`;
+			r += `Heeled. `;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_voice(slave) {
@@ -2103,6 +2306,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="pink">Cute accent.</span>`;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_tits_ass(slave) {
@@ -2134,7 +2338,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.butt > 4) {
 			r += `Big ass.`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_hips(slave) {
@@ -2172,7 +2376,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `Disproportionately small butt.`;
 			}
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_waist(slave) {
@@ -2191,6 +2395,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
 		}
+		r += " ";
 	}
 	
 	function long_implants(slave) {
@@ -2202,6 +2407,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `All natural.`;
 		}
+		r += " ";
 	}
 	
 	function long_lactation(slave) {
@@ -2210,12 +2416,13 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.lactation === 2) {
 			r += `Heavy lactation.`;
 		}
+		r += " ";
 	}
 	
 	function long_mods(slave) {
 		modScore(slave);
 		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
-			true;
+			return;
 		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
 			r += `Extensive body mods.`;
 		} else if (V.modScore > 7) {
@@ -2223,11 +2430,12 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `Light body mods.`;
 		}
+		r += " ";
 	}
 	
 	function short_intelligence(slave) {
 		if (slave.fetish === "mindbroken") {
-			true;
+			return;
 		} else if (slave.intelligenceImplant === 1) {
 			switch (slave.intelligence) {
 				case 3:
@@ -2348,7 +2556,7 @@ window.SlaveSummaryUncached = (function(){
 	
 	function long_intelligence(slave) {
 		if (slave.fetish === "mindbroken") {
-			true;
+			return;
 		} else if (slave.intelligenceImplant === 1) {
 			switch (slave.intelligence) {
 				case 3:
@@ -2398,6 +2606,7 @@ window.SlaveSummaryUncached = (function(){
 					break;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_sex_skills(slave) {
@@ -2437,6 +2646,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_prestige(slave) {
@@ -2449,7 +2659,7 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.prestige === 1) {
 				r += `Prestigious.`;
 			}
-			r += `</span>`;
+			r += `</span> `;
 		}
 	}
 	
@@ -2979,7 +3189,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_attraction(slave) {
@@ -3034,6 +3244,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		}
+		r += " ";
 	}
 	
 	function long_smart_fetish(slave) {
@@ -3110,6 +3321,7 @@ window.SlaveSummaryUncached = (function(){
 					break;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_smart_attraction(slave) {
@@ -3126,6 +3338,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `SP: men.`;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_behavior_flaw(slave) {
@@ -3162,7 +3375,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.behavioralFlaw = "none";
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_sex_flaw(slave) {
@@ -3225,6 +3438,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.sexualFlaw = "none";
 				break;
 		}
+		r += " ";
 	}
 	
 	function long_behavior_quirk(slave) {
@@ -3261,6 +3475,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.behavioralQuirk = "none";
 				break;
 		}
+		r += " ";
 	}
 	
 	function long_sex_quirk(slave) {
@@ -3296,374 +3511,175 @@ window.SlaveSummaryUncached = (function(){
 				slave.sexualQuirk = "none";
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
-	
-	
-	return SlaveSummaryUncached;
-	
-	if (V.abbreviateDevotion === 1) {
-		short_devotion(slave);
-	} else if (V.abbreviateDevotion === 2) {
-		long_devotion(slave);
-	}
-
-	if (slave.fuckdoll === 0) {
-		if (V.abbreviateRules === 1) {
-			short_rules(slave);
-		} else if (V.abbreviateRules === 2) {
-			long_rules(slave);
-		}
-	}
-
-	if (slave.tired !== 0) {
-		r += `Tired.`;
-	}
-
-	if (V.abbreviateDiet === 1) {
-		short_weight(slave);
-	} else if (V.abbreviateDiet === 2) {
-		long_weight(slave);
-	}
-
-	if (V.abbreviateDiet === 1) {
-		short_diet(slave);
-	} else if (V.abbreviateDiet === 2) {
-		long_diet(slave);
-	}
-
-	if (V.abbreviateHealth === 1) {
-		short_health(slave);
-	} else if (V.abbreviateHealth === 2) {
-		long_health(slave);
-	}
-
-	if (V.abbreviateDrugs === 1) {
-		short_drugs(slave);
-	} else if (V.abbreviateDrugs === 2) {
-		long_drugs(slave);
-	}
-
-	if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
-		r += `<br>`;
-		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-		}
-	}
-
-	V.desc = SlaveTitle(slave);
-	V.seed = V.desc.substring(0, 1);
-	V.seed = V.seed.toUpperCase();
-	V.desc = V.seed + V.desc.substring(1);
-	r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong>`;
-
-	if (V.seeRace === 1) {
-		r += `<span class="tan">`;
-		if (V.abbreviateRace === 1) {
-			short_race(slave);
-		} else if (V.abbreviateRace === 2) {
-			long_race(slave);
-		}
-		r += `</span>`;
-	}
-
-	if (V.abbreviateNationality === 1) {
-		short_nationality(slave);
-	} else if (V.abbreviateNationality === 2) {
-		long_nationality(slave);
-	}
-
-	if (V.abbreviatePhysicals === 1) {
-		short_skin(slave);
-	} else {
-		r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
-	}
-	if (V.abbreviateGenitalia === 1) {
-		short_genitals(slave);
-	} else if (V.abbreviateGenitalia === 2) {
-		long_genitals(slave);
-	}
-
-	if (V.abbreviatePhysicals === 1) {
-		short_age(slave);
-		short_face(slave);
-		short_eyes(slave);
-		if (slave.markings !== "none") {
-			r += `Markings`;
-		}
-		short_lips(slave);
-		short_teeth(slave);
-		short_muscles(slave);
-		short_limbs(slave);
-		short_voice(slave);
-		short_tits_ass(slave);
-		short_hips(slave);
-		short_waist(slave);
-		short_implants(slave);
-		short_lactation(slave);
-		short_mods(slave);
-	} else if (V.abbreviatePhysicals === 2) {
-		long_age(slave);
-		long_face(slave);
-		long_eyes(slave);
-		long_lips(slave);
-		long_teeth(slave);
-		long_muscles(slave);
-		long_limbs(slave);
-		long_voice(slave);
-		long_tits_ass(slave);
-		long_hips(slave);
-		long_waist(slave);
-		long_implants(slave);
-		long_lactation(slave);
-		long_mods(slave);
-		if (slave.brand !== 0) {
-			r += `Branded.`;
-		}
-		r += `</span>`;
-	}
-
-	r += `<br>`;
-	if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
-		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	}
-
-	if (V.abbreviateSkills === 1) {
-		short_intelligence(slave);
-		short_sex_skills(slave);
-		
-		if (slave.combatSkill > 0) {
-			r += `C`;
-		}
-		r += `</span>`;
-		short_prestige(slave);
-	} else if (V.abbreviateSkills === 2) {
-		long_intelligence(slave);
-		long_sex_skills(slave);
-		if (slave.combatSkill > 0) {
-			r += `Trained fighter.`;
-		}
-		r += `</span>`;
-		long_prestige(slave);
-	}
-
-	if (V.abbreviateMental === 1) {
-		if (slave.fetish !== "mindbroken") {
-			if (slave.fetishKnown === 1) {
-				short_fetish(slave);
-			}
-			if (slave.attrKnown === 1) {
-				short_attraction(slave);
+	function short_extended_family(slave) {
+		if (slave.mother > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.mother;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					_relationshipHandled = 1;
+				}
 			}
-		}
-		if (slave.clitPiercing === 3) {
-			short_smart_fetish(slave);
-			short_smart_attraction(slave);
-			
-		}
-		short_behavior_flaw(slave);
-		short_sex_flaw(slave);
-		short_behavior_quirk(slave);
-		short_sex_quirk(slave);
-	} else if (V.abbreviateMental === 2) {
-		if (slave.fetish !== "mindbroken") {
-			if (slave.fetishKnown === 1) {
-				long_fetish(slave);
+		} else if (slave.mother === -1) {
+			r += `Your daughter`;
+			if (slave.relationship === -3) {
+				r += `& wife`;
+				_relationshipHandled = 1;
+			} else if (slave.relationship === -2) {
+				r += `& lover`;
+				_relationshipHandled = 1;
 			}
 		}
-		if (slave.attrKnown === 1) {
-			long_attraction(slave);
-		}
-		if (slave.clitPiercing === 3) {
-			long_smart_fetish(slave);
-			long_smart_attraction(slave);
-		}
-		long_behavior_flaw(slave);
-		long_sex_flaw(slave);
-		long_behavior_quirk(slave);
-		long_sex_quirk(slave);
-	}
-
-	if (slave.customLabel !== "") {
-		r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
-	}
-
-	if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
-		r += `<br>`;
-		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-		}
-	}
-	
-	// TODO done up to here
-	if (V.abbreviateMental === 1) {
-		r += `<span class="lightgreen">`;
-		let _relationshipHandled = 0;
-		if (V.familyTesting === 1) {
-			if (slave.mother > 0) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.mother;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-						if (slave.relationship === 1) {
-							r += ` & friend`;
-						} else if (slave.relationship === 2) {
-							r += ` & BFF`;
-						} else if (slave.relationship === 3) {
-							r += ` & FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` & lover`;
-						} else {
-							r += ` & wife`;
-						}
-						_relationshipHandled = 1;
+		if (slave.father > 0 && slave.father !== slave.mother) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.father;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
 					}
-				}
-			} else if (slave.mother === -1) {
-				r += `Your daughter`;
-				if (slave.relationship === -3) {
-					r += `& wife`;
-					_relationshipHandled = 1;
-				} else if (slave.relationship === -2) {
-					r += `& lover`;
 					_relationshipHandled = 1;
 				}
 			}
-			if (slave.father > 0 && slave.father !== slave.mother) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.father;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
-						if (slave.relationship === 1) {
-							r += ` & friend`;
-						} else if (slave.relationship === 2) {
-							r += ` & BFF`;
-						} else if (slave.relationship === 3) {
-							r += ` & FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` & lover`;
-						} else {
-							r += ` & wife`;
-						}
-						_relationshipHandled = 1;
+		} else if (slave.father === -1 && slave.mother !== -1) {
+			r += `Your daughter`;
+			if (slave.relationship === -3) {
+				r += `& wife`;
+				_relationshipHandled = 1;
+			} else if (slave.relationship === -2) {
+				r += `& lover`;
+				_relationshipHandled = 1;
+			}
+		}
+		if (slave.daughters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.mother === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
 					}
-				}
-			} else if (slave.father === -1 && slave.mother !== -1) {
-				r += `Your daughter`;
-				if (slave.relationship === -3) {
-					r += `& wife`;
-					_relationshipHandled = 1;
-				} else if (slave.relationship === -2) {
-					r += `& lover`;
 					_relationshipHandled = 1;
 				}
 			}
-			if (slave.daughters === 1) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.mother === slave.ID;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-						if (slave.relationship === 1) {
-							r += ` & friend`;
-						} else if (slave.relationship === 2) {
-							r += ` & BFF`;
-						} else if (slave.relationship === 3) {
-							r += ` & FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` & lover`;
-						} else {
-							r += ` & wife`;
-						}
-						_relationshipHandled = 1;
-					}
-				}
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.father === slave.ID;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
-						if (slave.relationship === 1) {
-							r += ` & friend`;
-						} else if (slave.relationship === 2) {
-							r += ` & BFF`;
-						} else if (slave.relationship === 3) {
-							r += ` & FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` & lover`;
-						} else {
-							r += ` & wife`;
-						}
-						_relationshipHandled = 1;
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.father === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
 					}
+					_relationshipHandled = 1;
 				}
-			} else if (slave.daughters > 1) {
-				r += `multiple daughters`;
 			}
-			if (slave.sisters === 1) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return areSisters(s, slave) > 0;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-						if (slave.relationship === 1) {
-							r += ` & friend`;
-						} else if (slave.relationship === 2) {
-							r += ` & BFF`;
-						} else if (slave.relationship === 3) {
-							r += ` & FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` & lover`;
-						} else {
-							r += ` & wife`;
-						}
-						_relationshipHandled = 1;
+		} else if (slave.daughters > 1) {
+			r += `multiple daughters`;
+		}
+		if (slave.sisters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return areSisters(s, slave) > 0;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
 					}
+					_relationshipHandled = 1;
 				}
-			} else if (slave.sisters > 1) {
-				r += `multiple sisters`;
 			}
-			if (slave.relationship > 0 && _relationshipHandled !== 1) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.relationshipTarget;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-					switch (slave.relationship) {
-						case 1:
-							r += `friend`;
-							break;
-						case 2:
-							r += `BFF`;
-							break;
-						case 3:
-							r += `FWB`;
-							break;
-						case 4:
-							r += `lover`;
-							break;
-						case 5:
-							r += `wife`;
-							break;
-					}
+		} else if (slave.sisters > 1) {
+			r += `multiple sisters`;
+		}
+		if (slave.relationship > 0 && _relationshipHandled !== 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				switch (slave.relationship) {
+					case 1:
+						r += `friend`;
+						break;
+					case 2:
+						r += `BFF`;
+						break;
+					case 3:
+						r += `FWB`;
+						break;
+					case 4:
+						r += `lover`;
+						break;
+					case 5:
+						r += `wife`;
+						break;
 				}
-			} else if (slave.relationship === -3) {
-				r += `Your wife`;
-			} else if (slave.relationship === -2) {
-				r += `E Bonded`;
-			} else if (slave.relationship === -1) {
-				r += `E Slut`;
 			}
-		} else {
-			if (slave.relation !== 0) {
+		} else if (slave.relationship === -3) {
+			r += `Your wife`;
+		} else if (slave.relationship === -2) {
+			r += `E Bonded`;
+		} else if (slave.relationship === -1) {
+			r += `E Slut`;
+		}
+	}
+	
+	function short_legacy_family(slave) {
+		if (slave.relation !== 0) {
 				let _ssj = V.slaves.findIndex(function(s) {
 					return s.ID === slave.relationTarget;
 				});
@@ -3726,9 +3742,9 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.relationship === -1) {
 				r += `E Slut`;
 			}
-		}
-		r += `</span>`;
-		_relationshipHandled = 0;
+	}
+	
+	function short_rival(slave) {
 		if (slave.rivalry !== 0) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 			let _ssj = V.slaves.findIndex(function(s) {
@@ -3746,265 +3762,268 @@ window.SlaveSummaryUncached = (function(){
 				r += `</span>`;
 			}
 		}
-	} else if (V.abbreviateMental === 2) {
-		let _relationshipHandled = 0;
-		if (V.familyTesting === 1) {
-			if (slave.mother > 0) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.mother;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-						if (slave.relationship === 1) {
-							r += ` and friend`;
-						} else if (slave.relationship === 2) {
-							r += ` and best friend`;
-						} else if (slave.relationship === 3) {
-							r += ` and FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` and lover`;
-						} else {
-							r += ` and wife`;
-						}
-						_relationshipHandled = 1;
+	}
+	
+	function long_extended_family(slave) {
+		if (slave.mother > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.mother;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
 					}
-					r += `.</span>`;
-				}
-			} else if (slave.mother === -1) {
-				r += `Your`;
-				if (slave.relationship === -3) {
-					r += `<span class="lightgreen">daughter and wife.</span>`;
-					_relationshipHandled = 1;
-				} else if (slave.relationship === -2) {
-					r += `<span class="lightgreen">daughter and lover.</span>`;
 					_relationshipHandled = 1;
-				} else {
-					r += `<span class="lightgreen">daughter.</span>`;
 				}
+				r += `.</span> `;
 			}
-			if (slave.father > 0 && slave.father !== slave.mother) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.father;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-						if (slave.relationship === 1) {
-							r += ` and friend`;
-						} else if (slave.relationship === 2) {
-							r += ` and best friend`;
-						} else if (slave.relationship === 3) {
-							r += ` and FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` and lover`;
-						} else {
-							r += ` and wife`;
-						}
-						_relationshipHandled = 1;
+		} else if (slave.mother === -1) {
+			r += `Your`;
+			if (slave.relationship === -3) {
+				r += `<span class="lightgreen">daughter and wife.</span> `;
+				_relationshipHandled = 1;
+			} else if (slave.relationship === -2) {
+				r += `<span class="lightgreen">daughter and lover.</span> `;
+				_relationshipHandled = 1;
+			} else {
+				r += `<span class="lightgreen">daughter.</span> `;
+			}
+		}
+		if (slave.father > 0 && slave.father !== slave.mother) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.father;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
 					}
-					r += `.</span>`;
-				}
-			} else if (slave.father === -1 && slave.father !== slave.mother) {
-				r += `Your`;
-				if (slave.relationship === -3) {
-					r += `<span class="lightgreen">daughter and wife.</span>`;
-					_relationshipHandled = 1;
-				} else if (slave.relationship === -2) {
-					r += `<span class="lightgreen">daughter and lover.</span>`;
 					_relationshipHandled = 1;
-				} else {
-					r += `<span class="lightgreen">daughter.</span>`;
 				}
+				r += `.</span> `;
 			}
-			if (slave.daughters === 1) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.mother === slave.ID;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-						if (slave.relationship === 1) {
-							r += ` and friend`;
-						} else if (slave.relationship === 2) {
-							r += ` and best friend`;
-						} else if (slave.relationship === 3) {
-							r += ` and FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` and lover`;
-						} else {
-							r += ` and wife`;
-						}
-						_relationshipHandled = 1;
+		} else if (slave.father === -1 && slave.father !== slave.mother) {
+			r += `Your`;
+			if (slave.relationship === -3) {
+				r += `<span class="lightgreen">daughter and wife.</span> `;
+				_relationshipHandled = 1;
+			} else if (slave.relationship === -2) {
+				r += `<span class="lightgreen">daughter and lover.</span> `;
+				_relationshipHandled = 1;
+			} else {
+				r += `<span class="lightgreen">daughter.</span> `;
+			}
+		}
+		if (slave.daughters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.mother === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
 					}
-					r += `.</span>`;
+					_relationshipHandled = 1;
 				}
-				_ssj = V.slaves.findIndex(function(s) {
-					return s.father === slave.ID;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-						if (slave.relationship === 1) {
-							r += ` and friend`;
-						} else if (slave.relationship === 2) {
-							r += ` and best friend`;
-						} else if (slave.relationship === 3) {
-							r += ` and FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` and lover`;
-						} else {
-							r += ` and wife`;
-						}
-						_relationshipHandled = 1;
+				r += `.</span> `;
+			}
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.father === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
 					}
-					r += `.</span>`;
-				}
-			} else if (slave.daughters > 1) {
-				if (slave.daughters > 10) {
-					r += `<span class="lightgreen">Has tons of daughters.</span>`;
-				} else if (slave.daughters > 5) {
-					r += `<span class="lightgreen">Has many daughters.</span>`;
-				} else {
-					r += `<span class="lightgreen">Has several daughters.</span>`;
+					_relationshipHandled = 1;
 				}
+				r += `.</span> `;
 			}
-			if (slave.sisters === 1) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return areSisters(s, slave) > 0;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
-					if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-						if (slave.relationship === 1) {
-							r += ` and friend`;
-						} else if (slave.relationship === 2) {
-							r += ` and best friend`;
-						} else if (slave.relationship === 3) {
-							r += ` and FWB`;
-						} else if (slave.relationship === 4) {
-							r += ` and lover`;
-						} else {
-							r += ` and wife`;
-						}
-						_relationshipHandled = 1;
+		} else if (slave.daughters > 1) {
+			if (slave.daughters > 10) {
+				r += `<span class="lightgreen">Has tons of daughters.</span> `;
+			} else if (slave.daughters > 5) {
+				r += `<span class="lightgreen">Has many daughters.</span> `;
+			} else {
+				r += `<span class="lightgreen">Has several daughters.</span> `;
+			}
+		}
+		if (slave.sisters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return areSisters(s, slave) > 0;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
 					}
-					r += `.</span>`;
-				}
-			} else if (slave.sisters > 1) {
-				if (slave.sisters > 10) {
-					r += `<span class="lightgreen">One of many sisters.</span>`;
-				} else if (slave.sisters > 5) {
-					r += `<span class="lightgreen">Has many sisters.</span>`;
-				} else {
-					r += `<span class="lightgreen">Has several sisters.</span>`;
+					_relationshipHandled = 1;
 				}
+				r += `.</span> `;
 			}
-			if (slave.relationship > 0 && _relationshipHandled !== 1) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.relationshipTarget;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-					switch (slave.relationship) {
-						case 1:
-							r += `<span class="lightgreen">friend.</span>`;
-							break;
-						case 2:
-							r += `<span class="lightgreen">best friend.</span>`;
-							break;
-						case 3:
-							r += `<span class="lightgreen">FWB.</span>`;
-							break;
-						case 4:
-							r += `<span class="lightgreen">lover.</span>`;
-							break;
-						case 5:
-							r += `<span class="lightgreen">slave wife.</span>`;
-							break;
-					}
+		} else if (slave.sisters > 1) {
+			if (slave.sisters > 10) {
+				r += `<span class="lightgreen">One of many sisters.</span> `;
+			} else if (slave.sisters > 5) {
+				r += `<span class="lightgreen">Has many sisters.</span> `;
+			} else {
+				r += `<span class="lightgreen">Has several sisters.</span> `;
+			}
+		}
+		if (slave.relationship > 0 && _relationshipHandled !== 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				switch (slave.relationship) {
+					case 1:
+						r += `<span class="lightgreen">friend.</span> `;
+						break;
+					case 2:
+						r += `<span class="lightgreen">best friend.</span> `;
+						break;
+					case 3:
+						r += `<span class="lightgreen">FWB.</span> `;
+						break;
+					case 4:
+						r += `<span class="lightgreen">lover.</span> `;
+						break;
+					case 5:
+						r += `<span class="lightgreen">slave wife.</span> `;
+						break;
 				}
-			} else if (slave.relationship === -3) {
-				r += `<span class="lightgreen">Your wife.</span>`;
-			} else if (slave.relationship === -2) {
-				r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
-			} else if (slave.relationship === -1) {
-				r += `<span class="lightgreen">Emotional slut.</span>`;
 			}
-		} else {
-			if (slave.relation !== 0) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.relationTarget;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-					if (slave.relationshipTarget !== slave.relationTarget) {
-						r += `<span class="lightgreen">${slave.relation}</span>.`;
-					} else {
-						r += `<span class="lightgreen">${slave.relation}</span>`;
-					}
-					if (slave.relationship <= 0) {
-						r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-					}
+		} else if (slave.relationship === -3) {
+			r += `<span class="lightgreen">Your wife.</span> `;
+		} else if (slave.relationship === -2) {
+			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
+		} else if (slave.relationship === -1) {
+			r += `<span class="lightgreen">Emotional slut.</span> `;
+		}
+	}
+	
+	function long_legacy_family(slave) {
+		if (slave.relation !== 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				if (slave.relationshipTarget !== slave.relationTarget) {
+					r += `<span class="lightgreen">${slave.relation}</span>. `;
+				} else {
+					r += `<span class="lightgreen">${slave.relation}</span> `;
+				}
+				if (slave.relationship <= 0) {
+					r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 				}
 			}
-			if (slave.relationship > 0) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.relationshipTarget;
-				});
-				if (_ssj !== -1) {
-					switch (slave.relationship) {
-						case 1:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `and`;
-							}
-							r += `<span class="lightgreen">friend.</span>`;
-							break;
-						case 2:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `and`;
-							}
-							r += `<span class="lightgreen">best friend.</span>`;
-							break;
-						case 3:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `and`;
-							}
-							r += `<span class="lightgreen">FWB.</span>`;
-							break;
-						case 4:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `and`;
-							}
-							r += `<span class="lightgreen">lover.</span>`;
-							break;
-						case 5:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `and`;
-							}
-							r += `<span class="lightgreen">slave wife.</span>`;
-							break;
-					}
+		}
+		if (slave.relationship > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				switch (slave.relationship) {
+					case 1:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">friend.</span> `;
+						break;
+					case 2:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">best friend.</span> `;
+						break;
+					case 3:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">FWB.</span> `;
+						break;
+					case 4:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">lover.</span> `;
+						break;
+					case 5:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">slave wife.</span> `;
+						break;
 				}
-			} else if (slave.relationship === -3) {
-				r += `<span class="lightgreen">Your wife.</span>`;
-			} else if (slave.relationship === -2) {
-				r += `<span class="lightgreen">Emotionally bonded to you.</span>`;
-			} else if (slave.relationship === -1) {
-				r += `<span class="lightgreen">Emotional slut.</span>`;
 			}
+		} else if (slave.relationship === -3) {
+			r += `<span class="lightgreen">Your wife.</span> `;
+		} else if (slave.relationship === -2) {
+			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
+		} else if (slave.relationship === -1) {
+			r += `<span class="lightgreen">Emotional slut.</span> `;
 		}
-		_relationshipHandled = 0;
+	}
+	
+	function long_rival(slave) {
 		if (slave.rivalry !== 0) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 			let _ssj = V.slaves.findIndex(function(s) {
@@ -4019,378 +4038,400 @@ window.SlaveSummaryUncached = (function(){
 					r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
 				}
 			}
+			r += " ";
+		}
+	}
+	
+	function long_clothes(slave) {
+		switch (slave.clothes) {
+			case "attractive lingerie":
+				r += `Lingerie.`;
+				break;
+			case "a succubus outfit":
+				r += `Succubus outfit.`;
+				break;
+			case "a string bikini":
+				r += `String bikini.`;
+				break;
+			case "a scalemail bikini":
+				r += `Scalemail bikini.`;
+				break;
+			case "a monokini":
+				r += `Monokini.`;
+				break;
+			case "an apron":
+				r += `Apron.`;
+				break;
+			case "a cybersuit":
+				r += `Cybersuit.`;
+				break;
+			case "cutoffs and a t-shirt":
+				r += `Cutoffs, t-shirt.`;
+				break;
+			case "a slutty outfit":
+				r += `Slutty outfit.`;
+				break;
+			case "uncomfortable straps":
+				r += `Leather straps.`;
+				break;
+			case "a fallen nuns habit":
+				r += `Slutty habit.`;
+				break;
+			case "a chattel habit":
+				r += `Chattel habit.`;
+				break;
+			case "a penitent nuns habit":
+				r += `Cilice.`;
+				break;
+			case "slutty jewelry":
+				r += `Bangles.`;
+				break;
+			case "attractive lingerie for a pregnant woman":
+				r += `Preggo lingerie.`;
+				break;
+			case "a maternity dress":
+				r += `Maternity dress.`;
+				break;
+			case "stretch pants and a crop-top":
+				r += `Stretch pants, crop-top.`;
+				break;
+			case "harem gauze":
+				r += `Harem outfit.`;
+				break;
+			case "a slave gown":
+				r += `Slave gown.`;
+				break;
+			case "a halter top dress":
+				r += `Halter top dress.`;
+				break;
+			case "a mini dress":
+				r += `Mini dress.`;
+				break;
+			case "a ball gown":
+				r += `Ball gown.`;
+				break;
+			case "slutty business attire":
+				r += `Slutty suit.`;
+				break;
+			case "nice business attire":
+				r += `Nice suit.`;
+				break;
+			case "a comfortable bodysuit":
+				r += `Bodysuit.`;
+				break;
+			case "a military uniform":
+				r += `Military uniform.`;
+				break;
+			case "a schutzstaffel uniform":
+				r += `Schutzstaffel uniform.`;
+				break;
+			case "a slutty schutzstaffel uniform":
+				r += `Slutty Schutzstaffel uniform.`;
+				break;
+			case "a red army uniform":
+				r += `Red Army uniform.`;
+				break;
+			case "a long qipao":
+				r += `Long Qipao.`;
+				break;
+			case "battlearmor":
+				r += `Battlearmor.`;
+				break;
+			case "a mounty outfit":
+				r += `Mounty outfit.`;
+				break;
+			case "a dirndl":
+				r += `Dirndl.`;
+				break;
+			case "lederhosen":
+				r += `Lederhosen.`;
+				break;
+			case "a biyelgee costume":
+				r += `Biyelgee costume.`;
+				break;
+			case "a leotard":
+				r += `Leotard.`;
+				break;
+			case "a bunny outfit":
+				r += `Bunny outfit.`;
+				break;
+			case "a slutty maid outfit":
+				r += `Slutty maid.`;
+				break;
+			case "a nice maid outfit":
+				r += `Nice maid.`;
+				break;
+			case "a slutty nurse outfit":
+				r += `Slutty nurse.`;
+				break;
+			case "a nice nurse outfit":
+				r += `Nice nurse.`;
+				break;
+			case "a schoolgirl outfit":
+				r += `Schoolgirl outfit.`;
+				break;
+			case "a kimono":
+				r += `Kimono.`;
+				break;
+			case "a hijab and abaya":
+				r += `Hijab and abaya.`;
+				break;
+			case "battledress":
+				r += `Battledress.`;
+				break;
+			case "a latex catsuit":
+				r += `Nice latex.`;
+				break;
+			case "restrictive latex":
+				r += `Bondage latex.`;
+				break;
+			case "conservative clothing":
+				r += `Conservative clothing.`;
+				break;
+			case "chains":
+				r += `Chains.`;
+				break;
+			case "a cheerleader outfit":
+				r += `Cheerleader.`;
+				break;
+			case "clubslut netting":
+				r += `Netting.`;
+				break;
+			case "shibari ropes":
+				r += `Shibari.`;
+				break;
+			case "Western clothing":
+				r += `Chaps.`;
+				break;
+			case "body oil":
+				r += `Body oil.`;
+				break;
+			case "a toga":
+				r += `Toga.`;
+				break;
+			case "a huipil":
+				r += `Huipil.`;
+				break;
+			case "a slutty qipao":
+				r += `Qipao.`;
+				break;
+			case "spats and a tank top":
+				r += `Spats, tank top.`;
+				break;
+			default:
+				r += `Naked.`;
+				break;
 		}
+		r += " ";
 	}
 
-	if (slave.fuckdoll === 0) {
-		if (V.abbreviateClothes === 2) {
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-			if (slave.choosesOwnClothes === 1) {
-				r += `Dressing herself.`;
-			}
-			switch (slave.clothes) {
-				case "attractive lingerie":
-					r += `Lingerie.`;
-					break;
-				case "a succubus outfit":
-					r += `Succubus outfit.`;
-					break;
-				case "a string bikini":
-					r += `String bikini.`;
-					break;
-				case "a scalemail bikini":
-					r += `Scalemail bikini.`;
-					break;
-				case "a monokini":
-					r += `Monokini.`;
-					break;
-				case "an apron":
-					r += `Apron.`;
-					break;
-				case "a cybersuit":
-					r += `Cybersuit.`;
-					break;
-				case "cutoffs and a t-shirt":
-					r += `Cutoffs, t-shirt.`;
-					break;
-				case "a slutty outfit":
-					r += `Slutty outfit.`;
-					break;
-				case "uncomfortable straps":
-					r += `Leather straps.`;
-					break;
-				case "a fallen nuns habit":
-					r += `Slutty habit.`;
-					break;
-				case "a chattel habit":
-					r += `Chattel habit.`;
-					break;
-				case "a penitent nuns habit":
-					r += `Cilice.`;
-					break;
-				case "slutty jewelry":
-					r += `Bangles.`;
-					break;
-				case "attractive lingerie for a pregnant woman":
-					r += `Preggo lingerie.`;
-					break;
-				case "a maternity dress":
-					r += `Maternity dress.`;
-					break;
-				case "stretch pants and a crop-top":
-					r += `Stretch pants, crop-top.`;
-					break;
-				case "harem gauze":
-					r += `Harem outfit.`;
-					break;
-				case "a slave gown":
-					r += `Slave gown.`;
-					break;
-				case "a halter top dress":
-					r += `Halter top dress.`;
-					break;
-				case "a mini dress":
-					r += `Mini dress.`;
-					break;
-				case "a ball gown":
-					r += `Ball gown.`;
-					break;
-				case "slutty business attire":
-					r += `Slutty suit.`;
-					break;
-				case "nice business attire":
-					r += `Nice suit.`;
-					break;
-				case "a comfortable bodysuit":
-					r += `Bodysuit.`;
-					break;
-				case "a military uniform":
-					r += `Military uniform.`;
-					break;
-				case "a schutzstaffel uniform":
-					r += `Schutzstaffel uniform.`;
-					break;
-				case "a slutty schutzstaffel uniform":
-					r += `Slutty Schutzstaffel uniform.`;
-					break;
-				case "a red army uniform":
-					r += `Red Army uniform.`;
-					break;
-				case "a long qipao":
-					r += `Long Qipao.`;
-					break;
-				case "battlearmor":
-					r += `Battlearmor.`;
-					break;
-				case "a mounty outfit":
-					r += `Mounty outfit.`;
-					break;
-				case "a dirndl":
-					r += `Dirndl.`;
-					break;
-				case "lederhosen":
-					r += `Lederhosen.`;
-					break;
-				case "a biyelgee costume":
-					r += `Biyelgee costume.`;
-					break;
-				case "a leotard":
-					r += `Leotard.`;
-					break;
-				case "a bunny outfit":
-					r += `Bunny outfit.`;
-					break;
-				case "a slutty maid outfit":
-					r += `Slutty maid.`;
-					break;
-				case "a nice maid outfit":
-					r += `Nice maid.`;
-					break;
-				case "a slutty nurse outfit":
-					r += `Slutty nurse.`;
-					break;
-				case "a nice nurse outfit":
-					r += `Nice nurse.`;
-					break;
-				case "a schoolgirl outfit":
-					r += `Schoolgirl outfit.`;
-					break;
-				case "a kimono":
-					r += `Kimono.`;
-					break;
-				case "a hijab and abaya":
-					r += `Hijab and abaya.`;
-					break;
-				case "battledress":
-					r += `Battledress.`;
-					break;
-				case "a latex catsuit":
-					r += `Nice latex.`;
-					break;
-				case "restrictive latex":
-					r += `Bondage latex.`;
-					break;
-				case "conservative clothing":
-					r += `Conservative clothing.`;
-					break;
-				case "chains":
-					r += `Chains.`;
-					break;
-				case "a cheerleader outfit":
-					r += `Cheerleader.`;
-					break;
-				case "clubslut netting":
-					r += `Netting.`;
-					break;
-				case "shibari ropes":
-					r += `Shibari.`;
-					break;
-				case "Western clothing":
-					r += `Chaps.`;
-					break;
-				case "body oil":
-					r += `Body oil.`;
-					break;
-				case "a toga":
-					r += `Toga.`;
-					break;
-				case "a huipil":
-					r += `Huipil.`;
-					break;
-				case "a slutty qipao":
-					r += `Qipao.`;
-					break;
-				case "spats and a tank top":
-					r += `Spats, tank top.`;
-					break;
-				default:
-					r += `Naked.`;
-					break;
-			}
-			switch (slave.collar) {
-				case "uncomfortable leather":
-					r += `Leather collar.`;
-					break;
-				case "tight steel":
-					r += `Steel collar.`;
-					break;
-				case "preg biometrics":
-					r += `Pregnancy biometrics collar.`;
-					break;
-				case "cruel retirement counter":
-					r += `Cruel counter collar.`;
-					break;
-				case "shock punishment":
-					r += `Shock collar.`;
-					break;
-				case "dildo gag":
-					r += `Dildo gag.`;
-					break;
-				case "massive dildo gag":
-					r += `Throat-bulging dildo gag.`;
-					break;
-				case "neck corset":
-					r += `Neck corset.`;
-					break;
-				case "stylish leather":
-					r += `Stylish leather collar.`;
-					break;
-				case "satin choker":
-					r += `Satin choker.`;
-					break;
-				case "silk ribbon":
-					r += `Silken ribbon.`;
-					break;
-				case "heavy gold":
-					r += `Gold collar.`;
-					break;
-				case "bowtie":
-					r += `Bowtie collar.`;
-					break;
-				case "pretty jewelry":
-					r += `Pretty collar.`;
-					break;
-				case "nice retirement counter":
-					r += `Nice counter collar.`;
-					break;
-				case "leather with cowbell":
-					r += `Cowbell collar.`;
-					break;
-				case "ancient Egyptian":
-					r += `Wesekh.`;
-					break;
-				case "ball gag":
-					r += `Ball gag.`;
-					break;
-				case "bit gag":
-					r += `Bit gag.`;
-					break;
-				case "porcelain mask":
-					r += `Porcelain mask.`;
-					break;
-			}
-			switch (slave.bellyAccessory) {
-				case "shapewear":
-					r += `Shapewear.`;
-					break;
-				case "a small empathy belly":
-					r += `Small fake belly.`;
-					break;
-				case "a medium empathy belly":
-					r += `Medium fake belly.`;
-					break;
-				case "a large empathy belly":
-					r += `Large fake belly.`;
-					break;
-				case "a huge empathy belly":
-					r += `Huge fake belly.`;
-					break;
-				case "a corset":
-					r += `Corset.`;
-					break;
-				case "an extreme corset":
-					r += `Extreme corsetage.`;
-					break;
-			}
-			if (slave.amp !== 1) {
-				if (slave.legAccessory === "short stockings") {
-					r += `Short stockings.`;
-				} else if (slave.legAccessory === "long stockings") {
-					r += `Long stockings.`;
-				}
-			}
-			if (canWalk(slave)) {
-				if (slave.shoes === "heels") {
-					r += `Heels.`;
-				} else if (slave.shoes === "pumps") {
-					r += `Pumps.`;
-				} else if (slave.shoes === "extreme heels") {
-					r += `Extreme heels.`;
-				} else if (slave.shoes === "boots") {
-					r += `Boots.`;
-				} else if (slave.heels === 1) {
-					r += `<span class="yellow">Crawling.</span>`;
-				} else if (slave.shoes === "flats") {
-					r += `Flats.`;
-				}
-			}
-			switch (slave.vaginalAccessory) {
-				case "chastity belt":
-					r += `Vaginal chastity.`;
-					break;
-				case "combined chastity":
-					r += `Combined chastity.`;
-					break;
-				case "anal chastity":
-					r += `Anal chastity.`;
-					break;
-				case "dildo":
-					r += `Vaginal dildo.`;
-					break;
-				case "large dildo":
-					r += `Large vaginal dildo.`;
-					break;
-				case "huge dildo":
-					r += `Huge vaginal dildo.`;
-					break;
-				case "long dildo":
-					r += `Long vaginal dildo.`;
-					break;
-				case "long, large dildo":
-					r += `Long and large vaginal dildo.`;
-					break;
-				case "long, huge dildo":
-					r += `Long and wide vaginal dildo.`;
-					break;
-			}
-			if (slave.dickAccessory === "chastity") {
-				r += `Chastity cage.`;
-			} else if (slave.dickAccessory === "combined chastity") {
+	function long_collar(slave) {
+		switch (slave.collar) {
+			case "uncomfortable leather":
+				r += `Leather collar.`;
+				break;
+			case "tight steel":
+				r += `Steel collar.`;
+				break;
+			case "preg biometrics":
+				r += `Pregnancy biometrics collar.`;
+				break;
+			case "cruel retirement counter":
+				r += `Cruel counter collar.`;
+				break;
+			case "shock punishment":
+				r += `Shock collar.`;
+				break;
+			case "dildo gag":
+				r += `Dildo gag.`;
+				break;
+			case "massive dildo gag":
+				r += `Throat-bulging dildo gag.`;
+				break;
+			case "neck corset":
+				r += `Neck corset.`;
+				break;
+			case "stylish leather":
+				r += `Stylish leather collar.`;
+				break;
+			case "satin choker":
+				r += `Satin choker.`;
+				break;
+			case "silk ribbon":
+				r += `Silken ribbon.`;
+				break;
+			case "heavy gold":
+				r += `Gold collar.`;
+				break;
+			case "bowtie":
+				r += `Bowtie collar.`;
+				break;
+			case "pretty jewelry":
+				r += `Pretty collar.`;
+				break;
+			case "nice retirement counter":
+				r += `Nice counter collar.`;
+				break;
+			case "leather with cowbell":
+				r += `Cowbell collar.`;
+				break;
+			case "ancient Egyptian":
+				r += `Wesekh.`;
+				break;
+			case "ball gag":
+				r += `Ball gag.`;
+				break;
+			case "bit gag":
+				r += `Bit gag.`;
+				break;
+			case "porcelain mask":
+				r += `Porcelain mask.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_belly(slave) {
+		switch (slave.bellyAccessory) {
+			case "shapewear":
+				r += `Shapewear.`;
+				break;
+			case "a small empathy belly":
+				r += `Small fake belly.`;
+				break;
+			case "a medium empathy belly":
+				r += `Medium fake belly.`;
+				break;
+			case "a large empathy belly":
+				r += `Large fake belly.`;
+				break;
+			case "a huge empathy belly":
+				r += `Huge fake belly.`;
+				break;
+			case "a corset":
+				r += `Corset.`;
+				break;
+			case "an extreme corset":
+				r += `Extreme corsetage.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_legs(slave) {
+		if (slave.legAccessory === "short stockings") {
+			r += `Short stockings.`;
+		} else if (slave.legAccessory === "long stockings") {
+			r += `Long stockings.`;
+		}
+		r += " ";
+	}
+	
+	function long_shoes(slave) {
+		if (slave.shoes === "heels") {
+			r += `Heels.`;
+		} else if (slave.shoes === "pumps") {
+			r += `Pumps.`;
+		} else if (slave.shoes === "extreme heels") {
+			r += `Extreme heels.`;
+		} else if (slave.shoes === "boots") {
+			r += `Boots.`;
+		} else if (slave.heels === 1) {
+			r += `<span class="yellow">Crawling.</span>`;
+		} else if (slave.shoes === "flats") {
+			r += `Flats.`;
+		}
+		r += " ";
+	}
+	
+	function long_vaginal_acc(slave) {
+		switch (slave.vaginalAccessory) {
+			case "chastity belt":
+				r += `Vaginal chastity.`;
+				break;
+			case "combined chastity":
 				r += `Combined chastity.`;
-			} else if (slave.dickAccessory === "anal chastity") {
+				break;
+			case "anal chastity":
 				r += `Anal chastity.`;
-			}
-			switch (slave.buttplug) {
-				case "plug":
-					r += `Buttplug.`;
-					break;
-				case "large plug":
-					r += `Large buttplug.`;
-					break;
-				case "huge plug":
-					r += `Huge buttplug.`;
-					break;
-				case "long plug":
-					r += `Long buttplug.`;
-					break;
-				case "long, large plug":
-					r += `Large, long buttplug.`;
-					break;
-				case "long, huge plug":
-					r += `Enormous buttplug.`;
-					break;
-			}
-			switch (slave.buttplugAttachment) {
-				case "tail":
-					r += `Attached tail.`;
-					break;
-			}
+				break;
+			case "dildo":
+				r += `Vaginal dildo.`;
+				break;
+			case "large dildo":
+				r += `Large vaginal dildo.`;
+				break;
+			case "huge dildo":
+				r += `Huge vaginal dildo.`;
+				break;
+			case "long dildo":
+				r += `Long vaginal dildo.`;
+				break;
+			case "long, large dildo":
+				r += `Long and large vaginal dildo.`;
+				break;
+			case "long, huge dildo":
+				r += `Long and wide vaginal dildo.`;
+				break;
 		}
+		r += " ";
 	}
-
-	r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-	if (slave.useRulesAssistant === 0) {
-		r += `<span class="lightgreen">RA-Exempt</span>`;
-	} else if (V.abbreviateRulesets === 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
-		r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(", ") }`;
+	
+	function long_dick_acc(slave) {
+		if (slave.dickAccessory === "chastity") {
+			r += `Chastity cage.`;
+		} else if (slave.dickAccessory === "combined chastity") {
+			r += `Combined chastity.`;
+		} else if (slave.dickAccessory === "anal chastity") {
+			r += `Anal chastity.`;
+		}
+		r += " ";
 	}
-
-	if (V.abbreviateOrigins === 2 && slave.origin !== 0) {
+	
+	function long_buttplug(slave) {
+		switch (slave.buttplug) {
+			case "plug":
+				r += `Buttplug.`;
+				break;
+			case "large plug":
+				r += `Large buttplug.`;
+				break;
+			case "huge plug":
+				r += `Huge buttplug.`;
+				break;
+			case "long plug":
+				r += `Long buttplug.`;
+				break;
+			case "long, large plug":
+				r += `Large, long buttplug.`;
+				break;
+			case "long, huge plug":
+				r += `Enormous buttplug.`;
+				break;
+		}
+		r += " ";
+		switch (slave.buttplugAttachment) {
+			case "tail":
+				r += `Attached tail. `;
+				break;
+		}
+	}
+	
+	function rules_assistant(slave) {
+		if (slave.useRulesAssistant === 0) {
+			r += `<span class="lightgreen">RA-Exempt</span> `;
+		} else if (V.abbreviateRulesets === 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
+			r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(", ") }`;
+		}
+	}
+	
+	function origins(slave) {
 		r += `<br>`;
 		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
 			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
 		r += `<span class="gray">${slave.origin}</span>`;
 	}
-	return r;
+	
+	return SlaveSummaryUncached;
 })();
-- 
GitLab


From 5445044f5072a396ebe9f11756e27818ab9500a3 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Tue, 10 Jul 2018 15:46:26 +0300
Subject: [PATCH 022/189] port slavesort

---
 TODO.txt                   | 11 ++++++++
 src/js/assayJS.tw          | 55 +++++++++++++++++++++++++++++++++++++
 src/utility/miscWidgets.tw | 56 ++++----------------------------------
 3 files changed, 71 insertions(+), 51 deletions(-)

diff --git a/TODO.txt b/TODO.txt
index b7c5a96afd2..a8ce562749c 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -17,3 +17,14 @@ Rules Assistant:
 
 main.tw porting:
 - slaveart
+- createsimpletabs
+- displaybuilding
+- optionssortasappearsonmain
+- resetassignmentfilter
+- mainlinks
+- arcology description
+- office description
+- slave summary
+- use guard
+- toychest
+- walk past
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index 849a5e217dd..9a03663c6dc 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -777,3 +777,58 @@ window.SlaveTitle = function SlaveTitle(slave) {
 	}
 	return r;
 };
+
+window.SlaveSort = function SlaveSort(slaves, main=false) {
+	const V = State.variables;
+	if (main) {
+		switch (V.sortSlavesBy) {
+		case "name":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.slaveName < b.slaveName ? -1 : 1);
+			else
+				slaves = slaves.sort((a, b) => a.slaveName > b.slaveName ? -1 : 1);
+			break;
+		case "assignment":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.assignment < b.assignment ? -1 : 1);
+			else
+				slaves = slaves.sort((a, b) => a.assignment > b.assignment ? -1 : 1);
+			break;
+		case "seniority":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => b.weekAcquired - a.weekAcquired);
+			else
+				slaves = slaves.sort((a, b) => a.weekAcquired - b.weekAcquired);
+			break;
+		case "actualAge":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.actualAge - b.actualAge);
+			else
+				slaves = slaves.sort((a, b) => b.actualAge - a.actualAge);
+			break;
+		case "visualAge":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.visualAge - b.visualAge);
+			else
+				slaves = slaves.sort((a, b) => b.visualAge - a.visualAge);
+			break;
+		case "physicalAge":
+			if (V.sortSlavesOrder == "physicalAge")
+				slaves = slaves.sort((a, b) => a.physicalAge - b.physicalAge);
+			else
+				slaves = slaves.sort((a, b) => b.physicalAge - a.physicalAge);
+			break;
+		default:
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.devotion - b.devotion);
+			else
+				slaves = slaves.sort((a, b) => b.devotion - a.devotion);
+			break;
+		}
+		V.slaveIndices = slaves2indices();
+	} else {
+		V.slaveIndices = slaves2indices();
+		filterInPlace(slaves, s => V.slaveIndices[s] !== undefined);
+		slaves.sort((a, b) => V.slaveIndices[a] - V.slaveIndices[b]);
+	}
+};
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 2460d62eadb..0d44b849ef3 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -1544,57 +1544,11 @@ This experience
  $args[0]: array to sort
 %/
 <<widget "SlaveSort">>
-<<if passage() == "Main">>
-	<<switch $sortSlavesBy>>
-	<<case "name">>
-		<<if ($sortSlavesOrder == "ascending")>>
-			<<set $args[0] = $args[0].sort(function(a, b){if(a.slaveName < b.slaveName) return -1; if(a.slaveName > b.slaveName) return 1; return 0;})>>
-		<<else>>
-			<<set $args[0] = $args[0].sort(function(a, b){if(a.slaveName > b.slaveName) return -1; if(a.slaveName < b.slaveName) return 1; return 0;})>>
-		<</if>>
-	<<case "assignment">>
-		<<if ($sortSlavesOrder == "ascending")>>
-			<<set $args[0] = $args[0].sort(function(a, b){if(a.assignment < b.assignment) return -1; if(a.assignment > b.assignment) return 1; return 0;})>>
-		<<else>>
-			<<set $args[0] = $args[0].sort(function(a, b){if(a.assignment > b.assignment) return -1; if(a.assignment < b.assignment) return 1; return 0;})>>
-		<</if>>
-	<<case "seniority">>
-		<<if ($sortSlavesOrder == "ascending")>>
-			<<set $args[0] = $args[0].sort(function(a, b){return b.weekAcquired-a.weekAcquired})>>
-		<<else>>
-			<<set $args[0] = $args[0].sort(function(a, b){return a.weekAcquired-b.weekAcquired})>>
-		<</if>>
-	<<case "actualAge">>
-		<<if ($sortSlavesOrder == "ascending")>>
-			<<set $args[0] = $args[0].sort(function(a, b){return a.actualAge-b.actualAge})>>
-		<<else>>
-			<<set $args[0] = $args[0].sort(function(a, b){return b.actualAge-a.actualAge})>>
-		<</if>>
-	<<case "visualAge">>
-		<<if ($sortSlavesOrder == "ascending")>>
-			<<set $args[0] = $args[0].sort(function(a, b){return a.visualAge-b.visualAge})>>
-		<<else>>
-			<<set $args[0] = $args[0].sort(function(a, b){return b.visualAge-a.visualAge})>>
-		<</if>>
-	<<case "physicalAge">>
-		<<if ($sortSlavesOrder == "physicalAge")>>
-			<<set $args[0] = $args[0].sort(function(a, b){return a.physicalAge-b.physicalAge})>>
-		<<else>>
-			<<set $args[0] = $args[0].sort(function(a, b){return b.physicalAge-a.physicalAge})>>
-		<</if>>
-	<<default>>
-		<<if ($sortSlavesOrder == "ascending")>>
-			<<set $args[0] = $args[0].sort(function(a, b){return a.devotion-b.devotion})>>
-		<<else>>
-			<<set $args[0] = $args[0].sort(function(a, b){return b.devotion-a.devotion})>>
-		<</if>>
-	<</switch>>
-	<<set $slaveIndices = slaves2indices()>>
-<<else>>
-	<<set $slaveIndices = slaves2indices()>>
-	<<set filterInPlace($args[0], function(s) { return $slaveIndices[s] !== undefined; })>>
-	<<set $args[0].sort(function(a, b) { return $slaveIndices[a] - $slaveIndices[b]; })>>
-<</if>>
+	<<if passage() == "Main">>
+		<<run SlaveSort($args[0], true)>>
+	<<else>>
+		<<run SlaveSort($args[0])>>
+	<</if>>
 <</widget>>
 
 /%
-- 
GitLab


From a9b8b2fd1db5450c453eec6c52edadda1b27bda8 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Wed, 11 Jul 2018 00:34:34 +0300
Subject: [PATCH 023/189] fix abbreviated summaries

---
 src/js/slaveSummaryWidgets.tw | 236 ++++++++++++++++++++--------------
 1 file changed, 138 insertions(+), 98 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index c09a7546849..075124d81f5 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -229,14 +229,15 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.devotion < -20) {
 			r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		} else if (slave.devotion <= 20) {
-			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		} else if (slave.devotion <= 50) {
-			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		} else if (slave.devotion <= 95) {
-			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		} else {
-			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		}
+		r += " ";
 		if (slave.fetish === "mindbroken") {
 			return;
 		} else if (slave.trust < -95) {
@@ -266,6 +267,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_devotion(slave) {
@@ -331,6 +333,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>LS:Spa</strong>`;
 				break;
 		}
+		r += " ";
 		if (canTalk(slave)) {
 			switch (slave.speechRules) {
 				case "permissive":
@@ -346,6 +349,7 @@ window.SlaveSummaryUncached = (function(){
 					r += `<strong>SpR:R</strong>`;
 					break;
 			}
+			r += " ";
 		}
 		switch (slave.relationshipRules) {
 			case "permissive":
@@ -358,6 +362,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>ReR:R</strong>`;
 				break;
 		}
+		r += " ";
 		switch (slave.standardPunishment) {
 			case "confinement":
 				r += `<strong>Pun:Conf</strong>`;
@@ -372,6 +377,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>Pun:Situ</strong>`;
 				break;
 		}
+		r += " ";
 		switch (slave.standardReward) {
 			case "relaxation":
 				r += `<strong>Rew:Relx</strong>`;
@@ -386,6 +392,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>Rew:Situ</strong>`;
 				break;
 		}
+		r += " ";
 		switch (slave.releaseRules) {
 			case "permissive":
 				r += `<strong>MaR:P</strong>`;
@@ -400,6 +407,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>MaR:R</strong>`;
 				break;
 		}
+		r += " ";
 	}
 	
 	function long_rules(slave) {
@@ -459,6 +467,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_weight(slave) {
@@ -545,7 +554,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>Di:F+</strong>`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		r += `<span class="cyan">`;
 		if (slave.dietCum === 2) {
 			r += `<strong>Cum++</strong>`;
@@ -558,7 +567,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if ((slave.dietMilk === 2)) {
 			r += `<strong>Milk++</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_diet(slave) {
@@ -618,6 +627,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.health > 20) {
 			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
 		}
+		r += " ";
 	}
 	
 	function long_health(slave) {
@@ -742,14 +752,14 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>Dr:groStim</strong>`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		r += `<span class="lightgreen">`;
 		if (slave.curatives === 2) {
 			r += `<strong>Cura</strong>`;
 		} else if (slave.curatives === 1) {
 			r += `<strong>Prev</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		if (slave.aphrodisiacs !== 0) {
 			r += `<span class="lightblue">`;
 			if (slave.aphrodisiacs === 1) {
@@ -759,7 +769,7 @@ window.SlaveSummaryUncached = (function(){
 			} else {
 				r += `<strong>Anaph</strong>`;
 			}
-			r += `</span>`;
+			r += `</span> `;
 		}
 		if (slave.addict !== 0) {
 			r += `<span class="cyan">Add</span>`;
@@ -774,7 +784,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.hormones < 0) {
 			r += `<strong>Ho:M</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		r += `<span class="mediumseagreen">`;
 		if ((slave.bellyImplant > -1)) {
 			r += `<strong>Belly Imp</strong>`;
@@ -797,7 +807,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.pregKnown === 1) {
 			r += `<strong>${slave.pregWeek} wks preg</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		if (slave.induce === 1) {
 			r += `<span class="orange"><strong>Early Labor</strong></span>`;
 		}
@@ -817,7 +827,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.bellyFluid > 0) {
 			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_drugs(slave) {
@@ -1011,6 +1021,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
 				break;
 		}
+		r += " ";
 	}
 	
 	function short_nationality(slave) {
@@ -1681,7 +1692,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_nationality(slave) {
@@ -1740,7 +1751,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_genitals(slave) {
@@ -1774,7 +1785,7 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.balls > 3) {
 				r += `Balls`;
 			}
-			r += `</span>`;
+			r += `</span> `;
 		}
 		if (slave.vagina === 0) {
 			r += `<span class="lime">VV</span>`;
@@ -1798,7 +1809,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.anus > 2) {
 			r += `A+`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_genitals(slave) {
@@ -1882,6 +1893,7 @@ window.SlaveSummaryUncached = (function(){
 		if (slave.visualAge !== slave.physicalAge) {
 			r += `Lks${slave.visualAge}`;
 		}
+		r += " ";
 	}
 	
 	function short_face(slave) {
@@ -1900,6 +1912,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_eyes(slave) {
@@ -1908,6 +1921,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (((slave.eyes === -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
 			r += `<span class="yellow">Sight-</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_lips(slave) {
@@ -1924,6 +1938,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
 		}
+		r += " ";
 	}
 	
 	function short_teeth(slave) {
@@ -1938,6 +1953,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.teeth === "pointy") {
 			r += `Fangs`;
 		}
+		r += " ";
 	}
 	
 	function short_muscles(slave) {
@@ -1964,6 +1980,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
 		}
+		r += " ";
 	}
 	
 	function short_limbs(slave) {
@@ -1981,6 +1998,7 @@ window.SlaveSummaryUncached = (function(){
 			} else {
 				r += `Amp`;
 			}
+			r += " ";
 		}
 		if (!canWalk(slave)) {
 			r += `Immob`;
@@ -1988,7 +2006,7 @@ window.SlaveSummaryUncached = (function(){
 		if (slave.heels === 1) {
 			r += `Heel`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_voice(slave) {
@@ -2005,6 +2023,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="pink">Acc</span>`;
 			}
 		}
+		r += " ";
 	}
 	
 	function short_tits_ass(slave) {
@@ -2036,7 +2055,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.butt > 4) {
 			r += `Ass`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_hips(slave) {
@@ -2074,7 +2093,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `Disp-`;
 			}
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_waist(slave) {
@@ -2093,6 +2112,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_implants(slave) {
@@ -2102,6 +2122,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `Impl`;
 		}
+		r += " ";
 	}
 	
 	function short_lactation(slave) {
@@ -2110,6 +2131,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.lactation === 2) {
 			r += `Lact++`;
 		}
+		r += " ";
 	}
 	
 	function short_mods(slave) {
@@ -2126,7 +2148,7 @@ window.SlaveSummaryUncached = (function(){
 		if (slave.brand !== 0) {
 			r += `Br`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_age(slave) {
@@ -2485,6 +2507,7 @@ window.SlaveSummaryUncached = (function(){
 					break;
 			}
 		}
+		r += " ";
 	} 
 	
 	function short_sex_skills(slave) {
@@ -2507,8 +2530,9 @@ window.SlaveSummaryUncached = (function(){
 				r += `S-`;
 			}
 			if (V.summaryStats) {
-				r += `[${_SSkills}]`;
+				r += `[${_SSkills}] `;
 			}
+			r += " ";
 			if (slave.whoreSkill >= 100) {
 				r += `W+++`;
 			} else if (slave.whoreSkill > 60) {
@@ -2520,9 +2544,10 @@ window.SlaveSummaryUncached = (function(){
 			}
 			if (slave.whoreSkill > 10) {
 				if (V.summaryStats) {
-					r += `[${slave.whoreSkill}]`;
+					r += `[${slave.whoreSkill}] `;
 				}
 			}
+			r += " ";
 			if (slave.entertainSkill >= 100) {
 				r += `E+++`;
 			} else if (slave.entertainSkill > 60) {
@@ -2534,9 +2559,10 @@ window.SlaveSummaryUncached = (function(){
 			}
 			if (slave.entertainSkill > 10) {
 				if (V.summaryStats) {
-					r += `[${slave.entertainSkill}]`;
+					r += `[${slave.entertainSkill}] `;
 				}
 			}
+			r += " ";
 		}
 	}
 	
@@ -2550,7 +2576,7 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.prestige === 1) {
 				r += `Prest`;
 			}
-			r += `</span>`;
+			r += `</span> `;
 		}
 	}
 	
@@ -2754,7 +2780,7 @@ window.SlaveSummaryUncached = (function(){
 		if (V.summaryStats) {
 			r += `[${slave.fetishStrength}]`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_attraction(slave) {
@@ -2779,6 +2805,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
 		}
+		r += " ";
 		if (slave.attrXX <= 5) {
 			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
 		} else if (slave.attrXX <= 15) {
@@ -2794,6 +2821,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.attrXY <= 95) {
 			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
 		}
+		r += " ";
 		if (slave.energy > 95) {
 			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
 				r += `<span class="green">Nympho!</span>`;
@@ -2809,6 +2837,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_smart_fetish(slave) {
@@ -2888,6 +2917,7 @@ window.SlaveSummaryUncached = (function(){
 					break;
 			}
 		}
+		r += " ";
 	}
 	
 	function short_smart_attraction(slave) {
@@ -2928,6 +2958,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `SP:anti-men`;
 			}
 		}
+		r += " ";
 	}
 	
 	function short_behavior_flaw(slave) {
@@ -2964,7 +2995,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.behavioralFlaw = "none";
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_sex_flaw(slave) {
@@ -3027,6 +3058,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.sexualFlaw = "none";
 				break;
 		}
+		r += " ";
 	}	
 	
 	function short_behavior_quirk(slave) {
@@ -3063,6 +3095,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.behavioralQuirk = "none";
 				break;
 		}
+		r += " ";
 	}
 	
 	function short_sex_quirk(slave) {
@@ -3098,7 +3131,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.sexualQuirk = "none";
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_fetish(slave) {
@@ -3536,15 +3569,17 @@ window.SlaveSummaryUncached = (function(){
 					_relationshipHandled = 1;
 				}
 			}
+			r += " ";
 		} else if (slave.mother === -1) {
 			r += `Your daughter`;
 			if (slave.relationship === -3) {
-				r += `& wife`;
+				r += ` & wife`;
 				_relationshipHandled = 1;
 			} else if (slave.relationship === -2) {
-				r += `& lover`;
+				r += ` & lover`;
 				_relationshipHandled = 1;
 			}
+			r += " ";
 		}
 		if (slave.father > 0 && slave.father !== slave.mother) {
 			let _ssj = V.slaves.findIndex(function(s) {
@@ -3567,13 +3602,14 @@ window.SlaveSummaryUncached = (function(){
 					_relationshipHandled = 1;
 				}
 			}
+			r += " ";
 		} else if (slave.father === -1 && slave.mother !== -1) {
 			r += `Your daughter`;
 			if (slave.relationship === -3) {
-				r += `& wife`;
+				r += ` & wife`;
 				_relationshipHandled = 1;
 			} else if (slave.relationship === -2) {
-				r += `& lover`;
+				r += ` & lover`;
 				_relationshipHandled = 1;
 			}
 		}
@@ -3598,6 +3634,7 @@ window.SlaveSummaryUncached = (function(){
 					_relationshipHandled = 1;
 				}
 			}
+			r += " ";
 			_ssj = V.slaves.findIndex(function(s) {
 				return s.father === slave.ID;
 			});
@@ -3618,8 +3655,9 @@ window.SlaveSummaryUncached = (function(){
 					_relationshipHandled = 1;
 				}
 			}
+			r += " ";
 		} else if (slave.daughters > 1) {
-			r += `multiple daughters`;
+			r += `multiple daughters `;
 		}
 		if (slave.sisters === 1) {
 			let _ssj = V.slaves.findIndex(function(s) {
@@ -3642,8 +3680,9 @@ window.SlaveSummaryUncached = (function(){
 					_relationshipHandled = 1;
 				}
 			}
+			r += " ";
 		} else if (slave.sisters > 1) {
-			r += `multiple sisters`;
+			r += `multiple sisters `;
 		}
 		if (slave.relationship > 0 && _relationshipHandled !== 1) {
 			let _ssj = V.slaves.findIndex(function(s) {
@@ -3653,19 +3692,19 @@ window.SlaveSummaryUncached = (function(){
 				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 				switch (slave.relationship) {
 					case 1:
-						r += `friend`;
+						r += ` friend`;
 						break;
 					case 2:
-						r += `BFF`;
+						r += ` BFF`;
 						break;
 					case 3:
-						r += `FWB`;
+						r += ` FWB`;
 						break;
 					case 4:
-						r += `lover`;
+						r += ` lover`;
 						break;
 					case 5:
-						r += `wife`;
+						r += ` wife`;
 						break;
 				}
 			}
@@ -3676,72 +3715,73 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.relationship === -1) {
 			r += `E Slut`;
 		}
+		r += " ";
 	}
 	
 	function short_legacy_family(slave) {
 		if (slave.relation !== 0) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.relationTarget;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
-				}
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
 			}
-			if (slave.relationship > 0) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.relationshipTarget;
-				});
-				if (_ssj !== -1) {
-					switch (slave.relationship) {
-						case 1:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `friend`;
-							break;
-						case 2:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `BFF`;
-							break;
-						case 3:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `FWB`;
-							break;
-						case 4:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `lover`;
-							break;
-						case 5:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `wife`;
-							break;
-					}
+		}
+		if (slave.relationship > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				switch (slave.relationship) {
+					case 1:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` friend`;
+						break;
+					case 2:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` BFF`;
+						break;
+					case 3:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` FWB`;
+						break;
+					case 4:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` lover`;
+						break;
+					case 5:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` wife`;
+						break;
 				}
-			} else if (slave.relationship === -3) {
-				r += `Your wife`;
-			} else if (slave.relationship === -2) {
-				r += `E Bonded`;
-			} else if (slave.relationship === -1) {
-				r += `E Slut`;
 			}
+		} else if (slave.relationship === -3) {
+			r += `Your wife`;
+		} else if (slave.relationship === -2) {
+			r += `E Bonded`;
+		} else if (slave.relationship === -1) {
+			r += `E Slut`;
+		}
 	}
 	
 	function short_rival(slave) {
@@ -3759,7 +3799,7 @@ window.SlaveSummaryUncached = (function(){
 				} else {
 					r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
 				}
-				r += `</span>`;
+				r += `</span> `;
 			}
 		}
 	}
-- 
GitLab


From e92a043cfd84bf57e5fa674eefed8ae4b5e398cf Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Wed, 11 Jul 2018 11:03:04 +1200
Subject: [PATCH 024/189] Shoe and Glasses default colour fix

Shoes and glasses default to their actual colour instead of the clothing
base colour.
---
 src/uncategorized/wardrobeUse.tw | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/uncategorized/wardrobeUse.tw b/src/uncategorized/wardrobeUse.tw
index 57859cbfb13..12706f252f1 100644
--- a/src/uncategorized/wardrobeUse.tw
+++ b/src/uncategorized/wardrobeUse.tw
@@ -531,9 +531,9 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 <<if ($seeImages == 1) && ($imageChoice == 1)>>
 	/* prepare display of currently selected color. */
 	/* _glassesColour is always set by display (Art_Vector_Set_Colour_Outfit_) */
-	<<if def $activeSlave.clothingBaseColor>>
+	<<if def $activeSlave.glassesColor>>
 		/* regard current user selection */
-		<<set _glassesColour = $activeSlave.clothingBaseColor>>
+		<<set _glassesColour = $activeSlave.glassesColor>>
 	<</if>>
 	/* Display an HTML5 color picker */
 	/* This is hackish due to direct accessment of SugarCube internal data structure. Improvements are welcome. */
@@ -594,9 +594,9 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	/* prepare display of currently selected color. */
 	/* _shoeColour is always set by display (Art_Vector_Set_Colour_Shoe_) */
 	/* TODO: update currently selected color upon shoe select */
-	<<if def $activeSlave.clothingBaseColor>>
+	<<if def $activeSlave.shoeColor>>
 		/* regard current user selection */
-		<<set _shoeColour = $activeSlave.clothingBaseColor>>
+		<<set _shoeColour = $activeSlave.shoeColor>>
 	<</if>>
 	/* Display an HTML5 color picker */
 	/* This is hackish due to direct accessment of SugarCube internal data structure. Improvements are welcome. */
-- 
GitLab


From f693aab5a099e6bc84f2980c41f1fb0b4c51be26 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Tue, 10 Jul 2018 22:31:11 -0400
Subject: [PATCH 025/189] summary fixes

---
 src/js/slaveSummaryWidgets.tw | 56 ++++++++++++++++++-----------------
 1 file changed, 29 insertions(+), 27 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 075124d81f5..8d0632680a4 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -22,10 +22,12 @@ window.SlaveSummary = function SlaveSummary(slave) {
 window.SlaveSummaryUncached = (function(){
 	"use strict";
 	let V, r;
+	var _relationshipHandled;
 	
 	function SlaveSummaryUncached(slave) {
 		V = State.variables;
 		r = "";
+		_relationshipHandled = 0;
 		if (V.abbreviateDevotion === 1)
 			short_devotion(slave);
 		else if (V.abbreviateDevotion === 2)
@@ -199,7 +201,7 @@ window.SlaveSummaryUncached = (function(){
 			if (V.abbreviateClothes === 2) {
 				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 				if (slave.choosesOwnClothes === 1)
-					r += `Dressing herself.`;
+					r += `Dressing herself. `;
 				long_clothes(slave);
 				long_collar(slave);
 				long_belly(slave);
@@ -1797,17 +1799,17 @@ window.SlaveSummaryUncached = (function(){
 		}
 		r += `<span class="pink">`;
 		if ((slave.vagina > 3) && (slave.anus > 3)) {
-			r += `V++A++`;
+			r += ` V++A++`;
 		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
-			r += `V+A+`;
+			r += ` V+A+`;
 		} else if (slave.vagina > 3) {
-			r += `V++`;
+			r += ` V++`;
 		} else if (slave.vagina > 2) {
-			r += `V+`;
+			r += ` V+`;
 		} else if (slave.anus > 3) {
-			r += `A++`;
+			r += ` A++`;
 		} else if (slave.anus > 2) {
-			r += `A+`;
+			r += ` A+`;
 		}
 		r += `</span> `;
 	}
@@ -2562,8 +2564,8 @@ window.SlaveSummaryUncached = (function(){
 					r += `[${slave.entertainSkill}] `;
 				}
 			}
-			r += " ";
 		}
+		r += " ";
 	}
 	
 	function short_prestige(slave) {
@@ -3227,40 +3229,40 @@ window.SlaveSummaryUncached = (function(){
 	
 	function long_attraction(slave) {
 		if (slave.attrXY <= 5) {
-			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXY <= 15) {
-			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXY <= 35) {
-			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXY <= 65) {
-			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
+			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''}, `;
 		} else if (slave.attrXY <= 85) {
-			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXX > 95) {
 			if (slave.energy <= 95) {
-				r += `<span class="green">Omnisexual!</span>`;
+				r += `<span class="green">Omnisexual!</span> `;
 			} else {
-				r += `<span class="green">Omnisexual nymphomaniac!</span>`;
+				r += `<span class="green">Omnisexual nymphomaniac!</span> `;
 			}
 		} else {
-			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		}
 		if (slave.attrXX <= 5) {
-			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXX <= 15) {
-			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXX <= 35) {
-			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXX <= 65) {
 			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
 		} else if (slave.attrXX <= 85) {
-			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXX <= 95) {
-			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		}
 		if (slave.energy > 95) {
 			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
@@ -3828,7 +3830,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `.</span> `;
 			}
 		} else if (slave.mother === -1) {
-			r += `Your`;
+			r += `Your `;
 			if (slave.relationship === -3) {
 				r += `<span class="lightgreen">daughter and wife.</span> `;
 				_relationshipHandled = 1;
@@ -3862,7 +3864,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `.</span> `;
 			}
 		} else if (slave.father === -1 && slave.father !== slave.mother) {
-			r += `Your`;
+			r += `Your `;
 			if (slave.relationship === -3) {
 				r += `<span class="lightgreen">daughter and wife.</span> `;
 				_relationshipHandled = 1;
@@ -3961,7 +3963,7 @@ window.SlaveSummaryUncached = (function(){
 				return s.ID === slave.relationshipTarget;
 			});
 			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
 				switch (slave.relationship) {
 					case 1:
 						r += `<span class="lightgreen">friend.</span> `;
@@ -3995,7 +3997,7 @@ window.SlaveSummaryUncached = (function(){
 				return s.ID === slave.relationTarget;
 			});
 			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
 				if (slave.relationshipTarget !== slave.relationTarget) {
 					r += `<span class="lightgreen">${slave.relation}</span>. `;
 				} else {
-- 
GitLab


From afc9f633657002db40f2e757657c70112dadff94 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Wed, 11 Jul 2018 16:50:59 +1200
Subject: [PATCH 026/189] Groundwork

Added JS functions for feet and inches, added $showInches variable.
---
 src/init/storyInit.tw                   |  1 +
 src/js/utilJS.tw                        | 72 +++++++++++++++++++++++++
 src/uncategorized/descriptionOptions.tw | 11 ++++
 3 files changed, 84 insertions(+)

diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index 7738dff64fa..dd1a958ecbb 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -285,6 +285,7 @@ You should have received a copy of the GNU General Public License along with thi
 	<<set $showBoobCCs = 1>>
 	<<set $showHeightCMs = 1>>
 	<<set $showDickCMs = 1>>
+	<<set $showInches = 0>>
 	<<set $showScores = 1>>
 	<<set $showAssignToScenes = 1>>
 	<<set $showEWD = 1>>
diff --git a/src/js/utilJS.tw b/src/js/utilJS.tw
index 71110801fa5..8b91c9a0d9e 100644
--- a/src/js/utilJS.tw
+++ b/src/js/utilJS.tw
@@ -584,3 +584,75 @@ window.getSlaveTrustClass = function (slave) {
 		else return 'profoundly-trusting';
 	}
 };
+
+//takes an integer e.g. $activeSlave.hLength, returns a string in the format 10 inches
+window.cmToInchString = function(s) {
+	in = Math.round(s/2.54);
+	return in + (in === 1?" inch":" inches");
+};
+
+//takes an integer e.g. $activeSlave.height, returns a string in the format 6'5"
+window.cmToFootInchString = function(s) {
+	in = Math.round(s/2.54);
+	if(in < 12)
+		return cmToInchString(s);
+	return Math.trunc(in/12) + `'` + in%12 + `"`;
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns a string in the format 6 inches
+window.dickToInchString = function(s) {
+	return cmToInchString(dickToCM(s));
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns an int of the dick length in cm
+window.dickToCM = function(s) {
+	return (s<9?s*5:(s===9?50:s*6));
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns a string in the format 3 inches
+window.ballsToInchString = function(s) {
+	return cmToInchString(ballsToCM(s));
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns an int of the ball size in cm
+window.ballsToCM = function(s) {
+	if (s < 2)
+		return 0;
+	return (s<10?(s-1)*2:s*2);
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns a string in the format of either `20cm (8 inches)`, `8 inches`, or `20cm`
+window.dickToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return dickToCM(s) + "cm (" + dickToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return dickToInchString(s);
+	return dickToCM(s) + "cm";
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns a string in the format of either `20cm (8 inches)`, `8 inches`, or `20cm`
+window.ballsToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return ballsToCM(s) + "cm (" + ballsToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return ballsToInchString(s);
+	return ballsToCM(s) + "cm";
+};
+
+//takes an int in centimetres e.g. $activeSlave.height, returns a string in the format of either `200cm (6'7")`, `6'7"`, or `200cm`
+window.heightToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return s + "cm (" + cmToFootInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return cmToFootInchString(s);
+	return s + "cm";
+};
+
+//takes an int in centimetres e.g. $activeSlave.hLength, returns a string in the format of either `30cm (12 inches)`, `12 inches`, or `30cm`
+window.lengthToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return s + "cm (" + cmToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return cmToInchString(s);
+	return s + "cm";
+};
diff --git a/src/uncategorized/descriptionOptions.tw b/src/uncategorized/descriptionOptions.tw
index bef0ffef674..6a20e5529be 100644
--- a/src/uncategorized/descriptionOptions.tw
+++ b/src/uncategorized/descriptionOptions.tw
@@ -75,6 +75,17 @@ Approximate sizes of dicks and balls are
 
 <br>
 
+Height and length units are in
+<<if $showInches == 1>>
+	@@.green;BOTH UNITS.@@ //[[Centimetres|Description Options][$showDickCMs = 0]]// | //[[Inches|Description Options][$showDickCMs = 2]]//
+<<elseif $showInches == 2>>
+	@@.yellow;INCHES ONLY.@@ //[[Centimetres|Description Options][$showDickCMs = 0]]// | //[[Both|Description Options][$showDickCMs = 1]]//
+<<else>>
+	@@.yellow;CENTIMETRES ONLY.@@ //[[Inches|Description Options][$showDickCMs = 2]]// | //[[Both|Description Options][$showDickCMs = 1]]//
+<</if>>
+
+<br>
+
 Attractiveness and Sexual scores are
 <<if $showScores == 1>>
 	@@.green;SHOWN.@@ //[[Hide|Description Options][$showScores = 0]]//
-- 
GitLab


From 5caaba4596d48aa4fae338f21b5a2bff7d8f5c53 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Wed, 11 Jul 2018 17:11:18 +1200
Subject: [PATCH 027/189] Phase One

Implemented showInches for everything except incubator, newChildIntro, and
descriptionWidgetsFlesh.
---
 src/gui/Encyclopedia/encyclopedia.tw      |  2 +-
 src/js/DefaultRules.tw                    |  2 +-
 src/npc/startingGirls/startingGirls.tw    |  2 +-
 src/pregmod/assistantAppearancePackTwo.tw |  2 +-
 src/uncategorized/assistantEvents.tw      |  4 ++--
 src/uncategorized/longSlaveDescription.tw |  2 +-
 src/uncategorized/salon.tw                | 16 ++++++++--------
 src/utility/slaveCreationWidgets.tw       |  2 +-
 8 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw
index 6faac89a060..f2ab6d6654b 100644
--- a/src/gui/Encyclopedia/encyclopedia.tw
+++ b/src/gui/Encyclopedia/encyclopedia.tw
@@ -931,7 +931,7 @@ SLAVE BODY:
 	//Masculine// faces are very negative: [[gender fundamentalism|Encyclopedia][$encyclopedia = "Gender Fundamentalism"]] accentuates this effect, while [[gender radicalism|Encyclopedia][$encyclopedia = "Gender Radicalism"]] reduces and at high levels can eliminate it.
 
 <<case "Height">>
-	Slaves' ''height'' contributes to beauty and improves combat effectiveness. It is measured in centimeters, though the game handles it in terms of ranges; beyond 190cm, all very tall slaves will be treated almost identically. Height can be affected by surgery, and younger slaves can also see minor hormonal impacts on height. Unlike most other attributes, a slave's height cannot be changed more than one step by surgery.
+	Slaves' ''height'' contributes to beauty and improves combat effectiveness. It is measured in centimeters, though the game handles it in terms of ranges; beyond <<= heightToEitherUnit(190)>>, all very tall slaves will be treated almost identically. Height can be affected by surgery, and younger slaves can also see minor hormonal impacts on height. Unlike most other attributes, a slave's height cannot be changed more than one step by surgery.
 
 <<case "Hips">>
 	Slaves' ''hips'' contribute to beauty. (wiki: needs more technical detail)
diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 850c2f9060f..efaa52801c0 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -1763,7 +1763,7 @@ window.DefaultRules = (function() {
 						V.cash -= V.modCost*Math.trunc((rule.hLength-slave.hLength)/10);
 						r += `<br>${slave.slaveName} has been given extensions; her hair `;
 					}
-				r += `is now ${rule.hLength} cm long.`;
+				r += `is now ` + lengthToEitherUnit(rule.hLength) + ` long.`;
 				slave.hLength = rule.hLength;
 				}
 			}
diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw
index 30100dbbfb7..e8252453de5 100644
--- a/src/npc/startingGirls/startingGirls.tw
+++ b/src/npc/startingGirls/startingGirls.tw
@@ -606,7 +606,7 @@ __You are customizing this slave:__
 <<elseif $activeSlave.height < 185>>Tall.
 <<else>>Very tall.
 <</if>>
-<<textbox "$activeSlave.height" $activeSlave.height "Starting Girls">> cm
+<<textbox "$activeSlave.height" $activeSlave.height "Starting Girls">> <<= heightToEitherUnit($activeSlave.height)>>
 </span>
 
 | <<link "Resync height with age">>
diff --git a/src/pregmod/assistantAppearancePackTwo.tw b/src/pregmod/assistantAppearancePackTwo.tw
index f22a36fdf05..a8cb264ecbd 100644
--- a/src/pregmod/assistantAppearancePackTwo.tw
+++ b/src/pregmod/assistantAppearancePackTwo.tw
@@ -2,7 +2,7 @@
 
 <<if $seeImages == 1>><<AssistantArt 3>><</if>>
 
-"Cool! New appearances to play around with!" Your assistant happily chimes. "Let's see what's inside! This looks heavenly..." She hunches forward as a large pair of white feathered wings extend from her upper back. She takes several experimental flaps before taking to the sky. "I feel positively radiant! Maybe a smaller version will be more to your liking?" She loses both height and wingspan until she stands roughly equivalent to 120cm. She flutters around cutely. "This is neat, I'm like cupid. Want me to hook you up with anyone?" She winks as her wings become bat-like and a pair of cute little nubs appears on her head. "Or maybe you'd just like to play with me instead." The impish figure flirts, before landing and blossoming into a stunning woman. "You know a succubus can take her lover's ideal form." She runs her hands down her sides and to her crotch. <<if $seeDicks != 0>>She begins rubbing her clit as it steadily grows into a meaty cock. "Or an incubus, for the ladies." She returns to her previous form. <</if>>"Says here it comes with 'bonus novice witch' too. Neat. What's this though? It looks like an appeara"
+"Cool! New appearances to play around with!" Your assistant happily chimes. "Let's see what's inside! This looks heavenly..." She hunches forward as a large pair of white feathered wings extend from her upper back. She takes several experimental flaps before taking to the sky. "I feel positively radiant! Maybe a smaller version will be more to your liking?" She loses both height and wingspan until she stands roughly equivalent to <<= heightToEitherUnit(120)>>. She flutters around cutely. "This is neat, I'm like cupid. Want me to hook you up with anyone?" She winks as her wings become bat-like and a pair of cute little nubs appears on her head. "Or maybe you'd just like to play with me instead." The impish figure flirts, before landing and blossoming into a stunning woman. "You know a succubus can take her lover's ideal form." She runs her hands down her sides and to her crotch. <<if $seeDicks != 0>>She begins rubbing her clit as it steadily grows into a meaty cock. "Or an incubus, for the ladies." She returns to her previous form. <</if>>"Says here it comes with 'bonus novice witch' too. Neat. What's this though? It looks like an appeara"
 
 <br><br><br><br><br><br><br><br>You tap at the screen; did she crash or something?
 
diff --git a/src/uncategorized/assistantEvents.tw b/src/uncategorized/assistantEvents.tw
index 57b16917599..4440b557e22 100644
--- a/src/uncategorized/assistantEvents.tw
+++ b/src/uncategorized/assistantEvents.tw
@@ -826,9 +826,9 @@ of your personal assistant pops up on the nearest screen. "<<if $PC.title != 0>>
 		<<if $minimumSlaveAge == 3>>
 			she rapidly shrinks until she is struggling to stand. She has reverted to a toddler!
 		<<elseif $minimumSlaveAge <= 7>>
-			she rapidly shrinks until she is barely 120cm tall. She has become a loli!
+			she rapidly shrinks until she is barely <<= heightToEitherUnit(120)>> tall. She has become a loli!
 		<<elseif $minimumSlaveAge <= 13>>
-			she rapidly shrinks until she is barely 150cm tall. She has reverted into a fresh teenager!
+			she rapidly shrinks until she is barely <<= heightToEitherUnit(150)>> tall. She has reverted into a fresh teenager!
 		<<else>>
 			the years peel off of her until she looks fresh into adulthood again. The spell actually worked?
 		<</if>>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index 2a18d53c0b3..8a60f731d4f 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -1623,7 +1623,7 @@ is
 <<elseif $activeSlave.height > (_averageHeight+5)>>
 	tall<<if $activeSlave.physicalAge < 16>> for $his age<</if>>
 <</if>>
-<<if $showHeightCMs == 1>> at $activeSlave.height cm,<</if>>
+<<if $showHeightCMs == 1>> at <<= heightToEitherUnit($activeSlave.height)>>,<</if>>
 
 and
 
diff --git a/src/uncategorized/salon.tw b/src/uncategorized/salon.tw
index 5d5c438345f..2169816eb37 100644
--- a/src/uncategorized/salon.tw
+++ b/src/uncategorized/salon.tw
@@ -194,7 +194,7 @@
 		[[Dye her hair|Salon][$activeSlave.hColor = ($primaryHairColor + $secondaryHairColor),$cash -= $modCost, $primaryHairColor = 0, $secondaryHairColor = ""]] $primaryHairColor $secondaryHairColor now?
 	<</if>>
 
-	<br><br>$possessiveCap $activeSlave.hStyle hair is $activeSlave.hLength cm long. //General hairstyles will conform to hair length and clothing choices.//
+	<br><br>$possessiveCap $activeSlave.hStyle hair is <<= lengthToEitherUnit($activeSlave.hLength)>> long. //General hairstyles will conform to hair length and clothing choices.//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if $activeSlave.hLength > 1>>
 		Style $possessive hair:
@@ -320,7 +320,7 @@
 
 	<<if $activeSlave.hStyle != "bald">>
 		<br><br>
-		$possessiveCap $activeSlave.hStyle wig is $activeSlave.hLength cm long. 
+		$possessiveCap $activeSlave.hStyle wig is <<= lengthToEitherUnit($activeSlave.hLength)>> long. 
 		
 		//General hairstyles will conform to hair length and clothing choices.//
 		
@@ -328,12 +328,12 @@
 		
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		Set wig length to:
-		<<if $activeSlave.hLength != 10>>[[10cm|Salon][$activeSlave.hLength = 10,$cash -= $modCost]]<</if>>
-		<<if $activeSlave.hLength != 30>>[[30cm|Salon][$activeSlave.hLength = 30,$cash -= $modCost]]<</if>>
-		<<if $activeSlave.hLength != 60>>[[60cm|Salon][$activeSlave.hLength = 60,$cash -= $modCost]]<</if>>
-		<<if $activeSlave.hLength != 90>>[[90cm|Salon][$activeSlave.hLength = 90,$cash -= $modCost]]<</if>>
-		<<if $activeSlave.hLength != 120>>[[120cm|Salon][$activeSlave.hLength = 120,$cash -= $modCost]]<</if>>
-		<<if $activeSlave.hLength != 150>>[[150cm|Salon][$activeSlave.hLength = 150,$cash -= $modCost]]<</if>>
+		<<if $activeSlave.hLength != 10>>[[lengthToEitherUnit(10)|Salon][$activeSlave.hLength = 10,$cash -= $modCost]]<</if>>
+		<<if $activeSlave.hLength != 30>>[[lengthToEitherUnit(30)|Salon][$activeSlave.hLength = 30,$cash -= $modCost]]<</if>>
+		<<if $activeSlave.hLength != 60>>[[lengthToEitherUnit(60)|Salon][$activeSlave.hLength = 60,$cash -= $modCost]]<</if>>
+		<<if $activeSlave.hLength != 90>>[[lengthToEitherUnit(90)|Salon][$activeSlave.hLength = 90,$cash -= $modCost]]<</if>>
+		<<if $activeSlave.hLength != 120>>[[lengthToEitherUnit(120)|Salon][$activeSlave.hLength = 120,$cash -= $modCost]]<</if>>
+		<<if $activeSlave.hLength != 150>>[[lengthToEitherUnit(150)|Salon][$activeSlave.hLength = 150,$cash -= $modCost]]<</if>>
 	<<else>>
 		$pronounCap is not wearing a wig.
 	<</if>>
diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw
index 1ad45982fda..5a7051fae03 100644
--- a/src/utility/slaveCreationWidgets.tw
+++ b/src/utility/slaveCreationWidgets.tw
@@ -223,7 +223,7 @@
 		<<elseif $activeSlave.height < 185>>Tall.
 		<<else>>Very tall.
 		<</if>>
-		<<textbox "$activeSlave.height" $activeSlave.height "Starting Girls">> cm
+		<<textbox "$activeSlave.height" $activeSlave.height "Starting Girls">> <<= heightToEitherUnit($activeSlave.height)>>
 	<</replace>>
 
 	<<replace "#weight">>
-- 
GitLab


From c6b18f05dd7d20e58eb55d3cbc391153e3e0336c Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 11 Jul 2018 01:17:40 -0400
Subject: [PATCH 028/189] SlaveTitle and SlaveSummary conversion

---
 src/npc/agent/agentWorkaround.tw           |  2 +-
 src/npc/descriptions/fVagina.tw            |  2 +-
 src/pregmod/newChildIntro.tw               |  2 +-
 src/pregmod/widgets/slaveSummaryWidgets.tw |  8 --------
 src/uncategorized/PESS.tw                  |  2 +-
 src/uncategorized/PETS.tw                  |  2 +-
 src/uncategorized/RECI.tw                  |  2 +-
 src/uncategorized/REFI.tw                  |  2 +-
 src/uncategorized/REFS.tw                  |  2 +-
 src/uncategorized/RESS.tw                  |  2 +-
 src/uncategorized/RESSTR.tw                |  2 +-
 src/uncategorized/RETS.tw                  | 16 ++++++++--------
 src/uncategorized/longSlaveDescription.tw  |  2 +-
 src/uncategorized/matchmaking.tw           |  2 +-
 src/uncategorized/newSlaveIntro.tw         |  2 +-
 src/uncategorized/reRelativeRecruiter.tw   |  4 ++--
 src/uncategorized/reStandardPunishment.tw  |  2 +-
 src/uncategorized/saChoosesOwnJob.tw       |  2 +-
 src/uncategorized/saServeThePublic.tw      |  2 +-
 src/uncategorized/saWhore.tw               |  2 +-
 src/uncategorized/slaveSummary.tw          |  2 +-
 src/utility/assayWidgets.tw                |  4 ----
 22 files changed, 28 insertions(+), 40 deletions(-)
 delete mode 100644 src/pregmod/widgets/slaveSummaryWidgets.tw

diff --git a/src/npc/agent/agentWorkaround.tw b/src/npc/agent/agentWorkaround.tw
index bb38dcbd44f..86bf766107d 100644
--- a/src/npc/agent/agentWorkaround.tw
+++ b/src/npc/agent/agentWorkaround.tw
@@ -31,7 +31,7 @@
 
 <<set $activeArcology.leaderID = _ID, $activeArcology.government = "your agent">>
 
-<<SlaveTitle $slaves[$i]>>
+<<set $desc = SlaveTitle($slaves[$i])>>
 
 You order $slaves[$i].slaveName to come into your office for orders. The devoted $desc has no prior warning that this is anything unusual, and from the <<if $slaves[$i].energy > 95>>horny glint<<else>>glow of sexual availability<</if>> in her $slaves[$i].eyeColor eyes as she <<if canWalk($slaves[$i])>>enters<<else>>is helped in<</if>>, she <<if $slaves[$i].energy > 95>>seems to be hoping<<else>>wouldn't mind hearing<</if>> that you've called her in for a quick fuck. In fact, the matter at hand is about as far as it could possibly be from that, on the spectrum of interactions between <<if $PC.title != 0>>master<<else>>mistress<</if>> and slave.
 
diff --git a/src/npc/descriptions/fVagina.tw b/src/npc/descriptions/fVagina.tw
index aa208dac77e..d66817424ff 100644
--- a/src/npc/descriptions/fVagina.tw
+++ b/src/npc/descriptions/fVagina.tw
@@ -1,6 +1,6 @@
 :: FVagina [nobr]
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 <<run clearSummaryCache($activeSlave)>>
 <<setLocalPronouns $activeSlave>>
 
diff --git a/src/pregmod/newChildIntro.tw b/src/pregmod/newChildIntro.tw
index c2e4d79e1be..eb20c8089a1 100644
--- a/src/pregmod/newChildIntro.tw
+++ b/src/pregmod/newChildIntro.tw
@@ -2,7 +2,7 @@
 
 <<set $showEncyclopedia = 0>>
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 
 <<if $activeSlave.mother > 0>>
 	<<set _tempMom = getSlave($activeSlave.mother)>>
diff --git a/src/pregmod/widgets/slaveSummaryWidgets.tw b/src/pregmod/widgets/slaveSummaryWidgets.tw
deleted file mode 100644
index 1ef14f1e4b4..00000000000
--- a/src/pregmod/widgets/slaveSummaryWidgets.tw
+++ /dev/null
@@ -1,8 +0,0 @@
-:: Slave Summary Widgets [nobr widget]
-
-/* Try to use cached summary */
-<<run setup.summaryCache = {}>>
-
-<<widget "SlaveSummary">><<=SlaveSummary($args[0])>><</widget>>
-
-<<widget "SlaveSummaryUncached">><<=SlaveSummaryUncached($args[0])>><</widget>>
diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw
index 3dc043e0d20..403165dcfd5 100644
--- a/src/uncategorized/PESS.tw
+++ b/src/uncategorized/PESS.tw
@@ -68,7 +68,7 @@
 <</if>>
 /* 000-250-006 */
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 <<Enunciate $activeSlave>>
 
 <<switch $PESSevent>>
diff --git a/src/uncategorized/PETS.tw b/src/uncategorized/PETS.tw
index 40476072e96..72ef4418e10 100644
--- a/src/uncategorized/PETS.tw
+++ b/src/uncategorized/PETS.tw
@@ -54,7 +54,7 @@
 		<<set $activeSlave = $Attendant, $subSlave = $slaves.find(function(s) { return s.assignment == "rest in the spa"; })>>
 <</switch>>
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
diff --git a/src/uncategorized/RECI.tw b/src/uncategorized/RECI.tw
index 6663bdbe7d0..31db4737d02 100644
--- a/src/uncategorized/RECI.tw
+++ b/src/uncategorized/RECI.tw
@@ -52,7 +52,7 @@
 /* 000-250-006 */
 
 <<Enunciate $activeSlave>>
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 
 <<switch $RECIevent>>
 
diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw
index ae4314161f1..baa5dba67ca 100644
--- a/src/uncategorized/REFI.tw
+++ b/src/uncategorized/REFI.tw
@@ -60,7 +60,7 @@
 
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check">>
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 <<Enunciate $activeSlave>>
 <<set _belly = bellyAdjective($activeSlave)>>
 
diff --git a/src/uncategorized/REFS.tw b/src/uncategorized/REFS.tw
index 786d091546d..1ce3a544f3f 100644
--- a/src/uncategorized/REFS.tw
+++ b/src/uncategorized/REFS.tw
@@ -40,7 +40,7 @@
 
 <<set $nextButton = "Continue", $nextLink = "RIE Eligibility Check", $returnTo = "RIE Eligibility Check">>
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 <<Enunciate $activeSlave>>
 
 <<switch $REFSevent>>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 374e9fac2dc..31249354690 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -53,7 +53,7 @@
 /* 000-250-006 */
 </span>
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 <<Enunciate $activeSlave>>
 <<set _belly = bellyAdjective($activeSlave)>>
 
diff --git a/src/uncategorized/RESSTR.tw b/src/uncategorized/RESSTR.tw
index 7404e1c23ab..320de515890 100644
--- a/src/uncategorized/RESSTR.tw
+++ b/src/uncategorized/RESSTR.tw
@@ -51,7 +51,7 @@
 <</if>>
 /* 000-250-006 */
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 <<Enunciate $activeSlave>>
 
 <<switch $RESSTRevent>>
diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw
index ae5f4e6801e..c1c0290d31e 100644
--- a/src/uncategorized/RETS.tw
+++ b/src/uncategorized/RETS.tw
@@ -161,7 +161,7 @@
 	<br>ERROR: bad RETS event $RETSevent
 <</switch>>
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
@@ -720,9 +720,9 @@ Mere moments after you absorb this arresting scene, $subSlave.slaveName thrusts
 <<set $activeSlave.penetrativeCount++, $penetrativeTotal++>>
 <<set _vaginal = 0>>
 <<if $subSlave.vagina != 0 && canDoVaginal($subSlave)>><<set _vaginal = 1>><</if>>
-You round a corner and almost trip over <<EventNameLink $activeSlave>>. She's on top of another slave, humping away; her <<if $activeSlave.butt > 8>>monstrous, naked ass jiggles lewdly<<elseif $activeSlave.anus > 2>>loose asspussy winks lewdly<<elseif $activeSlave.muscles > 30>>heavily muscled butt flexes powerfully<<elseif $activeSlave.butt > 3>>big butt pumps energetically<<else>>nice little butt flexes cutely<</if>> as she thrusts. You can't see much of the slave <<if _vaginal>>lying on her back<<else>>face-down<</if>> underneath $activeSlave.slaveName, but you recognize her as $subSlave.slaveName by her sobbing. She's struggling a little, but $activeSlave.slaveName has her pinned to the floor by her wrists, and $activeSlave.slaveName is quickly raping the resistance out of the <<SlaveTitle $subSlave>>$desc.
+You round a corner and almost trip over <<EventNameLink $activeSlave>>. She's on top of another slave, humping away; her <<if $activeSlave.butt > 8>>monstrous, naked ass jiggles lewdly<<elseif $activeSlave.anus > 2>>loose asspussy winks lewdly<<elseif $activeSlave.muscles > 30>>heavily muscled butt flexes powerfully<<elseif $activeSlave.butt > 3>>big butt pumps energetically<<else>>nice little butt flexes cutely<</if>> as she thrusts. You can't see much of the slave <<if _vaginal>>lying on her back<<else>>face-down<</if>> underneath $activeSlave.slaveName, but you recognize her as $subSlave.slaveName by her sobbing. She's struggling a little, but $activeSlave.slaveName has her pinned to the floor by her wrists, and $activeSlave.slaveName is quickly raping the resistance out of the <<print SlaveTitle($subSlave)>>.
 <br><br>
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 $activeSlave.slaveName senses your presence above and behind her, and twists her $activeSlave.hColor head around to <<if canSee($activeSlave)>>see who it is. She sees that it's you<<else>>discern who it is. She realizes that it's you<</if>>, and greets you cheerfully. "Hi, <<Master>>," she trills.
 <<if $activeSlave.fetishKnown && $activeSlave.fetish == "sadist">>
 	"Thi<<s>> i<<s>> <<s>>o awe<<s>>ome," the sadistic $desc gushes. "The crying, the <<s>>truggling. Thank you for letting u<<s>> do thi<<s>>."
@@ -856,9 +856,9 @@ Her objections sound a bit feigned, and she's obviously in no hurry to put an en
 <<elseif $activeSlave.ID == $HeadGirl.ID>>
 	listening to the Head Girl beg to be allowed to put her cock inside her. Usually, it's $activeSlave.slaveName giving the orders.
 <<elseif $activeSlave.fetishKnown && ($activeSlave.fetish == "dom" || $activeSlave.fetish == "sadist")>>
-	having a dominant <<SlaveTitle $activeSlave>>$desc like $activeSlave.slaveName beg her for sex.
+	having a dominant $desc like $activeSlave.slaveName beg her for sex.
 <<elseif $activeSlave.face > 40>>
-	having a <<if $activeSlave.face > 95>>perfect<<else>>really very pretty<</if>> <<SlaveTitle $activeSlave>>$desc beg her for sex.
+	having a <<if $activeSlave.face > 95>>perfect<<else>>really very pretty<</if>> $desc beg her for sex.
 <<else>>
 	having somebody beg her for sex. She's a sex slave, and she doesn't always have the luxury of feeling so wanted.
 <</if>>
@@ -879,7 +879,7 @@ The slaves are about to go to bed; they're naked, and the horny $activeSlave.sla
 <<elseif $activeSlave.fetishKnown && $activeSlave.fetish == "pregnancy" && $subSlave.bellyPreg >= 5000>>
 	"You're <<s>>o hot with that belly," she wheedles. "It'<<s>> ju<<s>>t <<s>>o big, and round, and, um, out there." She swallows, getting distracted.
 <<elseif $subSlave.face > 95>>
-	"You're the prettie<<s>>t <<SlaveTitle $subSlave>>$desc in the whole arcology," she wheedles. "I can't look at your perfect $subSlave.faceShape fa<<c>>e and not want to make love to you<<if !_vaginal>>r butt<</if>>!"
+	"You're the prettie<<s>>t <<print SlaveTitle($subSlave)>> in the whole arcology," she wheedles. "I can't look at your perfect $subSlave.faceShape fa<<c>>e and not want to make love to you<<if !_vaginal>>r butt<</if>>!"
 <<elseif !_vaginal && $subSlave.butt > 3>>
 	"You've got <<s>>uch a ni<<c>>e a<<ss>>," she wheedles. "It'<<s>> ju<<s>>t <<s>>o big, and round, and, um, out there." She swallows, getting distracted.
 <<elseif $subSlave.boobShape == "perky">>
@@ -1869,9 +1869,9 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 	<<if !_vaginal || $subSlave.vaginaLube > 1>>She lets a gob of her saliva fall onto her cockhead, <<if !_vaginal>>out of politeness to $subSlave.slaveName's asshole<<elseif $subSlave.vaginaLube > 0>>out of politeness, since she knows $subSlave.slaveName might not be really wet for her<<else>>since she knows that $subSlave.slaveName has a chronically dry cunt<</if>>.<</if>>
 	Then she
 	<<if _vaginal>>
-		gets down between $subSlave.slaveName's legs, guiding herself inside the <<SlaveTitle $subSlave>>$desc's womanhood. $subSlave.slaveName kisses $activeSlave.slaveName on the lips, wordlessly encouraging her, and the randy <<SlaveTitle $activeSlave>>$desc starts fucking her harder, moaning with satisfaction.
+		gets down between $subSlave.slaveName's legs, guiding herself inside the <<print SlaveTitle($subSlave)>>'s womanhood. $subSlave.slaveName kisses $activeSlave.slaveName on the lips, wordlessly encouraging her, and the randy <<print SlaveTitle($activeSlave)>> starts fucking her harder, moaning with satisfaction.
 	<<else>>
-		turns to $subSlave.slaveName, shoving her dick up the <<SlaveTitle $subSlave>>$desc's butt. $subSlave.slaveName gasps, wriggles herself into a more comfortable position, and then flexes her ass a little, letting the <<SlaveTitle $activeSlave>>$desc whose cock is inside her anus know that she can go for it. $activeSlave.slaveName does, thrusting happily.
+		turns to $subSlave.slaveName, shoving her dick up the <<print SlaveTitle($subSlave)>>'s butt. $subSlave.slaveName gasps, wriggles herself into a more comfortable position, and then flexes her ass a little, letting the <<print SlaveTitle($activeSlave)>> whose cock is inside her anus know that she can go for it. $activeSlave.slaveName does, thrusting happily.
 	<</if>>
 	<<set $activeSlave.devotion += 5, $activeSlave.penetrativeCount++, $penetrativeTotal++>>
 	<<if _vaginal>>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index 2a18d53c0b3..c044d6bf715 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -68,7 +68,7 @@ is
 	<</if>>
 <</if>>
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 ''@@.coral;$desc.@@''
 
 <<if $activeSlave.indenture > -1>>
diff --git a/src/uncategorized/matchmaking.tw b/src/uncategorized/matchmaking.tw
index f07ba4adfd0..5e90eda66f0 100644
--- a/src/uncategorized/matchmaking.tw
+++ b/src/uncategorized/matchmaking.tw
@@ -4,7 +4,7 @@
 
 <<if $subSlave == 0>>
 
-<<SlaveTitle $eventSlave>>
+<<set $desc = SlaveTitle($eventSlave)>>
 <<set _belly = bellyAdjective($eventSlave)>>
 
 /* 000-250-006 */
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index f89121e6831..ee66968b5d2 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -7,7 +7,7 @@
 	<<set $returnTo = $nextLink, $nextLink = "AS Dump">>
 <</if>>
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 <<Enunciate $activeSlave>>
 
 <<if $specialSlave == 1>>
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index ffa9e7636b5..bcbff9fa85b 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -737,7 +737,7 @@ You look up the _relationType. She costs <<print cashFormat($slaveCost)>>, a bar
 			<<set $missingParentID-->>
 		<</if>>
 	<</switch>>
-	<<SlaveTitle $eventSlave>>
+	<<set $desc = SlaveTitle($eventSlave)>>
 	<<replace "#result">>
 	You complete the legalities and biometric scanning quickly and without fuss. $activeSlave.slaveName arrives shortly. The two slaves remember each other only dimly - they parted a long time ago - but they embrace. The devoted $desc explains the situation and encourages her _relationType to be a good slave to you. $activeSlave.slaveName looks a little fearful but clearly realizes that she's lucky to be here.
 	<<include "New Slave Intro">>
@@ -1026,7 +1026,7 @@ You look up the $activeSlave.relation. She costs <<print cashFormat($slaveCost)>
 	<<set $slaves[$i].relation = relationTargetWord($activeSlave)>>
 	<<set $slaves[$i].relationTarget = $activeSlave.ID>>
 	<<set $cash -= $slaveCost>>
-	<<SlaveTitle $eventSlave>>
+	<<set $desc = SlaveTitle($eventSlave)>>
 	You complete the legalities and biometric scanning quickly and without fuss. $activeSlave.slaveName arrives shortly. The two slaves remember each other only dimly - they parted a long time ago - but they embrace. The devoted $desc explains the situation and encourages her $activeSlave.relation to be a good slave to you. $activeSlave.slaveName looks a little fearful but clearly realizes that she's lucky to be here.
 	<<include "New Slave Intro">>
 	<</replace>>
diff --git a/src/uncategorized/reStandardPunishment.tw b/src/uncategorized/reStandardPunishment.tw
index a6f26c65eb8..8235cc04264 100644
--- a/src/uncategorized/reStandardPunishment.tw
+++ b/src/uncategorized/reStandardPunishment.tw
@@ -14,7 +14,7 @@
 <</if>>
 /* 000-250-006 */
 
-<<SlaveTitle $activeSlave>>
+<<set $desc = SlaveTitle($activeSlave)>>
 
 <<set _sins = []>>
 
diff --git a/src/uncategorized/saChoosesOwnJob.tw b/src/uncategorized/saChoosesOwnJob.tw
index f0bc897270e..f394aead752 100644
--- a/src/uncategorized/saChoosesOwnJob.tw
+++ b/src/uncategorized/saChoosesOwnJob.tw
@@ -7,7 +7,7 @@
 	/* display text but don't change assignment (already done) */
 
 	<<run SlavePronouns($slaves[$i])>>
-	<<SlaveTitle $slaves[$i]>>
+	<<set $desc = SlaveTitle($slaves[$i])>>
 	<<set _oself = $object + "self">>
 	<<print $slaves[$i].choosesOwnAssignmentText>>
 	<<set $slaves[$i].choosesOwnAssignmentText = "", $slaves[$i].choosesOwnAssignment = 1>> /* continue cycle for next week */
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index 4e042c6eddc..763aca9c96d 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -270,7 +270,7 @@ Her appearance attracted $beauty members of the public (<<print Math.trunc($beau
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 <<elseif ($slaves[$i].vagina < 0)>>
-	<<SlaveTitle $slaves[$i]>>
+	<<set $desc = SlaveTitle($slaves[$i])>>
 	<<if (($slaves[$i].analSkill + $slaves[$i].oralSkill) >= 200)>>
 	She's such an expert public servant that she copes with the stress of being a $desc slut.
 	<<elseif random(1,100) > 40+(10*($slaves[$i].analSkill + $slaves[$i].oralSkill))>>
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index b3904c472bc..14882f6f560 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -254,7 +254,7 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 <<elseif ($slaves[$i].vagina < 0)>>
-	<<SlaveTitle $slaves[$i]>>
+	<<set $desc = SlaveTitle($slaves[$i])>>
 	<<if (($slaves[$i].analSkill + $slaves[$i].oralSkill) >= 200)>>
 	She's such an expert whore that she copes with the stress of being a $desc prostitute.
 	<<elseif random(1,100) > 40+(10*($slaves[$i].analSkill + $slaves[$i].oralSkill))>>
diff --git a/src/uncategorized/slaveSummary.tw b/src/uncategorized/slaveSummary.tw
index 817a32724c2..632439cbe7c 100644
--- a/src/uncategorized/slaveSummary.tw
+++ b/src/uncategorized/slaveSummary.tw
@@ -732,7 +732,7 @@ will
 <br/>
 <<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
 
-<<SlaveSummary _Slave>>
+<<= SlaveSummary(_Slave)>>
 
 <<set $slaves[_ssi] = _Slave>>
 
diff --git a/src/utility/assayWidgets.tw b/src/utility/assayWidgets.tw
index 52ef51089bf..8d252bb0955 100644
--- a/src/utility/assayWidgets.tw
+++ b/src/utility/assayWidgets.tw
@@ -1220,10 +1220,6 @@
 
 <</widget>>
 
-<<widget "SlaveTitle">>
-	 <<set $desc = SlaveTitle($args[0])>>
-<</widget>>
-
 <<widget "slaveCost">>
 
 <<Beauty $args[0]>>
-- 
GitLab


From c4390fadb2ad58e63f142fb92e4409dd8dac9906 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Wed, 11 Jul 2018 17:45:47 +1200
Subject: [PATCH 029/189] Phase Two

There may be some grammar issues in newChildIntro.
---
 src/pregmod/incubator.tw               |  2 +-
 src/pregmod/newChildIntro.tw           |  8 ++--
 src/utility/descriptionWidgetsFlesh.tw | 66 +++++++++++++-------------
 3 files changed, 38 insertions(+), 38 deletions(-)

diff --git a/src/pregmod/incubator.tw b/src/pregmod/incubator.tw
index 1603f1ad913..d88dd61b1ba 100644
--- a/src/pregmod/incubator.tw
+++ b/src/pregmod/incubator.tw
@@ -289,7 +289,7 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 <<for $i = 0; $i < $incubatorSlaves; $i++>>
 	<<capture $i>>
 		<br><br>@@.pink;$tanks[$i].slaveName@@ occupies this tank. She appears to be <<if $tanks[$i].genes == "XX">>a natural girl<<else>>a natural boy<</if>>, with $tanks[$i].hColor hair<<if $tanks[$i].eyes != -2>> and $tanks[$i].eyeColor eyes.<<else>>. She most likely will be blind.<</if>>
-		Statistical projections indicates that once released she will be around <<print $tanks[$i].height + random(-5,5)>> cm tall. Most likely she will be
+		Statistical projections indicates that once released she will be around <<= heightToEitherUnit($tanks[$i].height + random(-5,5))>> tall. Most likely she will be
 			<<if $tanks[$i].weight <= 30 && $tanks[$i].weight >= -30>>
 				at a healthy weight and
 			<<elseif $tanks[$i].weight >= 31 && $tanks[$i].weight <= 95>>
diff --git a/src/pregmod/newChildIntro.tw b/src/pregmod/newChildIntro.tw
index c2e4d79e1be..6c462bf6b56 100644
--- a/src/pregmod/newChildIntro.tw
+++ b/src/pregmod/newChildIntro.tw
@@ -322,10 +322,10 @@ You completed the legalities before heading to $incubatorName, knowing the tank
 		Her eyes focus on _tempMom.slaveName's rounded middle, staring in fascination at the unfamiliar bulge.<<if $activeSlave.readyOva >= 20>> A hand runs across her own middle and another down to her moist pussy.<</if>>
 		<<set _momInterest = "belly">>
 	<<elseif _tempMom.dick > 15>>
-		Her eyes focus on _tempMom.slaveName's <<print (6*_tempMom.dick)>>cm long dick, trying to understand how it can fit in a girl.
+		Her eyes focus on _tempMom.slaveName's <<= dickToEitherUnit($activeSlave.dick)>> long dick, trying to understand how it can fit in a girl.
 		<<set _momInterest = "dick">>
 	<<elseif _tempMom.balls > 60>>
-		Her eyes focus on _tempMom.slaveName's <<print (_tempMom.balls*2)>>cm long testicles, taking in every centimeter of their enormity, before shifting to the cum steadily drooling from <<if _tempMom.dick > 0>>the tip of her dick<<else>>the hole in her crotch<</if>>.
+		Her eyes focus on _tempMom.slaveName's <<= ballsToEitherUnit($activeSlave.balls)>> long testicles, taking in every centimeter of their enormity, before shifting to the cum steadily drooling from <<if _tempMom.dick > 0>>the tip of her dick<<else>>the hole in her crotch<</if>>.
 		<<set _momInterest = "balls">>
 	<<elseif _tempMom.hips > 2>>
 		Her eyes focus on _tempMom.slaveName's abnormally wide hips. She runs her hands down her own sides, pondering how such a wonder occurs.
@@ -406,10 +406,10 @@ You completed the legalities before heading to $incubatorName, knowing the tank
 		Her eyes focus on _tempDad.slaveName's rounded middle, staring in fascination at the unfamiliar bulge.<<if $activeSlave.readyOva >= 20>> A hand runs across her own middle and another down to her moist pussy.<</if>>
 		<<set _dadInterest = "belly">>
 	<<elseif _tempDad.dick > 15>>
-		Her eyes focus on _tempDad.slaveName's <<print (6*_tempDad.dick)>>cm long dick, trying to understand how it can fit in a girl.
+		Her eyes focus on _tempDad.slaveName's <<= dickToEitherUnit($activeSlave.dick)>> long dick, trying to understand how it can fit in a girl.
 		<<set _dadInterest = "dick">>
 	<<elseif _tempDad.balls > 60>>
-		Her eyes focus on _tempDad.slaveName's <<print (_tempDad.balls*2)>>cm long testicles, taking in every centimeter of their enormity, before shifting to the cum steadily drooling from <<if _tempDad.dick > 0>>the tip of her dick<<else>>the hole in her crotch<</if>>..
+		Her eyes focus on _tempDad.slaveName's <<= ballsToEitherUnit($activeSlave.balls)>> long testicles, taking in every centimeter of their enormity, before shifting to the cum steadily drooling from <<if _tempDad.dick > 0>>the tip of her dick<<else>>the hole in her crotch<</if>>..
 		<<set _dadInterest = "balls">>
 	<<elseif _tempDad.hips > 2>>
 		Her eyes focus on _tempDad.slaveName's abnormally wide hips. She runs her hands down her own sides, pondering how such a wonder occurs.
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index fba47a67c04..772d0110c8b 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -2989,7 +2989,7 @@ $He's got a
 <<case 10>>
 	<<if $showDickCMs == 1>>
 		$His awe-inspiring<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
-		penis is around 60cm long,
+		penis is around <<= dickToEitherUnit($activeSlave.dick)>> long,
 	<<else>>
 		$He has an awe-inspiring<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
 		penis,
@@ -2997,7 +2997,7 @@ $He's got a
 <<case 9>>
 	<<if $showDickCMs == 1>>
 		$His monstrous<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
-		penis is around 50cm long,
+		penis is around <<= dickToEitherUnit($activeSlave.dick)>> long,
 	<<else>>
 		$He has a monstrous<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
 		penis,
@@ -3005,7 +3005,7 @@ $He's got a
 <<case 8>>
 	<<if $showDickCMs == 1>>
 		$His truly imposing<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
-		penis is around 40cm long when as hard as it can get,
+		penis is around <<= dickToEitherUnit($activeSlave.dick)>> long when as hard as it can get,
 	<<else>>
 		$He has a truly imposing<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
 		penis,
@@ -3013,27 +3013,27 @@ $He's got a
 <<case 7>>
 	<<if $showDickCMs == 1>>
 		$His massive<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
-		penis is around 35cm long when as hard as it can get,
+		penis is around <<= dickToEitherUnit($activeSlave.dick)>> long when as hard as it can get,
 	<<else>>
 		$He has a massive<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
 		penis,
 	<</if>> larger than a dick can grow naturally,
 <<case 6>>
-	<<if $showDickCMs == 1>>$His enormous<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is around 30cm long when<<else>>would be around 30cm long if it could become<</if>> erect<<else>>$He has an enormous<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>, a rival to the world's largest natural dicks,
+	<<if $showDickCMs == 1>>$His enormous<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is around <<= dickToEitherUnit($activeSlave.dick)>> long when<<else>>would be around <<= dickToEitherUnit($activeSlave.dick)>> long if it could become<</if>> erect<<else>>$He has an enormous<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>, a rival to the world's largest natural dicks,
 <<case 5>>
-	<<if $showDickCMs == 1>>$His huge<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is more than 25cm long when<<else>>would be around 25cm long if it could become<</if>> erect<<else>>$He has a huge<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>, large enough to be sexually inconvenient,
+	<<if $showDickCMs == 1>>$His huge<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is more than <<= dickToEitherUnit($activeSlave.dick)>> long when<<else>>would be around <<= dickToEitherUnit($activeSlave.dick)>> long if it could become<</if>> erect<<else>>$He has a huge<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>, large enough to be sexually inconvenient,
 <<case 4>>
-	<<if $showDickCMs == 1>>$His large<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is around 20cm long when<<else>>would be around 20cm long if it could become<</if>> erect<<else>>$He has a large<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>, big enough to be a source of pride on a male,
+	<<if $showDickCMs == 1>>$His large<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is around <<= dickToEitherUnit($activeSlave.dick)>> long when<<else>>would be around <<= dickToEitherUnit($activeSlave.dick)>> long if it could become<</if>> erect<<else>>$He has a large<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>, big enough to be a source of pride on a male,
 <<case 3>>
-	<<if $showDickCMs == 1>>$His average-sized<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is around 15cm long when<<else>>would be around 15cm long if it could become<</if>> erect<<else>>$He has an average-sized<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>,
+	<<if $showDickCMs == 1>>$His average-sized<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is around <<= dickToEitherUnit($activeSlave.dick)>> long when<<else>>would be around <<= dickToEitherUnit($activeSlave.dick)>> long if it could become<</if>> erect<<else>>$He has an average-sized<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>,
 <<case 2>>
-	<<if $showDickCMs == 1>>$His small<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is around 10cm long when<<else>>would be around 10cm long if it could become<</if>> erect<<else>>$He has a small<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>, little enough to be a source of embarrassment on a male,
+	<<if $showDickCMs == 1>>$His small<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis <<if canAchieveErection($activeSlave)>>is around <<= dickToEitherUnit($activeSlave.dick)>> long when<<else>>would be around <<= dickToEitherUnit($activeSlave.dick)>> long if it could become<</if>> erect<<else>>$He has a small<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> penis<</if>>, little enough to be a source of embarrassment on a male,
 <<case 1>>
-	<<if $showDickCMs == 1>>$His<<if $seeCircumcision == 1>> <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> micropenis <<if canAchieveErection($activeSlave)>>is less than 5cm long when<<else>>would be less than 5cm long if it could become<</if>> erect<<else>>$He has <<if $seeCircumcision == 1>><<if $activeSlave.foreskin > 0>>an uncut<<else>>a circumcised<</if>><<else>>a<</if>> micropenis<</if>>,
+	<<if $showDickCMs == 1>>$His<<if $seeCircumcision == 1>> <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>> micropenis <<if canAchieveErection($activeSlave)>>is less than <<= dickToEitherUnit($activeSlave.dick)>> long when<<else>>would be less than <<= dickToEitherUnit($activeSlave.dick)>> long if it could become<</if>> erect<<else>>$He has <<if $seeCircumcision == 1>><<if $activeSlave.foreskin > 0>>an uncut<<else>>a circumcised<</if>><<else>>a<</if>> micropenis<</if>>,
 <<default>>
 	<<if $showDickCMs == 1>>
 		$His mind-shattering<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
-		penis is around <<print (6*$activeSlave.dick)>>cm long,
+		penis is around <<= dickToEitherUnit($activeSlave.dick)>> long,
 	<<else>>
 		$He has a mind-shattering<<if $seeCircumcision == 1>>, <<if $activeSlave.foreskin > 0>>uncut<<else>>circumcised<</if>><</if>>
 		penis,
@@ -3061,23 +3061,23 @@ $He's got a
 <<else>>
 	<<switch $activeSlave.balls>>
 	<<case 10>>
-		and $he has an inhuman pair of testicles<<if $showDickCMs == 1>>, nearly 20cm long<</if>>.
+		and $he has an inhuman pair of testicles<<if $showDickCMs == 1>>, nearly <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 9>>
-		and $he has a titanic pair of testicles<<if $showDickCMs == 1>>, about 16cm long<</if>>.
+		and $he has a titanic pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 8>>
-		and $he has a gigantic pair of testicles<<if $showDickCMs == 1>>, about 14cm long<</if>>.
+		and $he has a gigantic pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 7>>
-		and $he has a monstrous pair of testicles<<if $showDickCMs == 1>>, about 12cm long<</if>>.
+		and $he has a monstrous pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 6>>
-		and $he has an enormous pair of testicles<<if $showDickCMs == 1>>, about 10cm long<</if>>.
+		and $he has an enormous pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 5>>
-		and $he has a huge pair of testicles<<if $showDickCMs == 1>>, about 8cm long<</if>>.
+		and $he has a huge pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 4>>
-		and $he has a big pair of testicles<<if $showDickCMs == 1>>, about 6cm long<</if>>.
+		and $he has a big pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 3>>
-		and $he has an average pair of testicles<<if $showDickCMs == 1>>, about 4cm long<</if>>.
+		and $he has an average pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 2>>
-		and $he has a small pair of testicles<<if $showDickCMs == 1>>, about 2cm long<</if>>.
+		and $he has a small pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 	<<case 1>>
 		and $his testicles are so small they have retreated up into $his abdomen.
 	<<case 0>>
@@ -3089,7 +3089,7 @@ $He's got a
 			but $he lacks testicles.
 		<</if>>
 	<<default>>
-		and $he has a hypertrophied, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about <<print ($activeSlave.balls*2)>>cm long<</if>>, a true masterpiece of modern growth hormone treatment.
+		and $he has a hypertrophied, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>, a true masterpiece of modern growth hormone treatment.
 	<</switch>>
 	<<if $activeSlave.fuckdoll == 0 && $activeSlave.balls > 0 && $activeSlave.scrotum > 0>>
 		<<set _scrotalFullness = $activeSlave.scrotum - $activeSlave.balls>>
@@ -3526,21 +3526,21 @@ $He's got a
 		$He has <<if $seeDicks > 0>>no penis and <</if>>no vagina, just a tiny hole above
 		<<switch $activeSlave.balls>>
 		<<case 6>>
-			a gigantic, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about 10cm long<</if>>.
+			a gigantic, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 5>>
-			a huge pair of testicles<<if $showDickCMs == 1>>, about 8cm long<</if>>.
+			a huge pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 4>>
-			a big pair of testicles<<if $showDickCMs == 1>>, about 6cm long<</if>>.
+			a big pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 3>>
-			an average pair of testicles<<if $showDickCMs == 1>>, about 4cm long<</if>>.
+			an average pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 2>>
-			a small pair of testicles<<if $showDickCMs == 1>>, about 2cm long<</if>>.
+			a small pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 1>>
 			a soft little trace of scrotum, since $his testicles are so small they have retreated up into $his abdomen.
 		<<case 0>>
 			smooth $activeSlave.skin.
 		<<default>>
-			a hypertrophied, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about <<print ($activeSlave.balls*2)>>cm long<</if>>, a true masterpiece of modern growth hormone treatment.
+			a hypertrophied, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>, a true masterpiece of modern growth hormone treatment.
 		<</switch>>
 		<<if $activeSlave.fuckdoll == 0 && $activeSlave.balls > 0 && $activeSlave.scrotum > 0>>
 			<<set _scrotalFullness = $activeSlave.scrotum - $activeSlave.balls>>
@@ -3752,21 +3752,21 @@ $He's got a
 		$He has no penis, just a tiny hole above
 		<<switch $activeSlave.balls>>
 		<<case 6>>
-			a gigantic, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about 10cm long<</if>>.
+			a gigantic, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 5>>
-			a huge pair of testicles<<if $showDickCMs == 1>>, about 8cm long<</if>>.
+			a huge pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 4>>
-			a big pair of testicles<<if $showDickCMs == 1>>, about 6cm long<</if>>.
+			a big pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 3>>
-			an average pair of testicles<<if $showDickCMs == 1>>, about 4cm long<</if>>.
+			an average pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 2>>
-			a small pair of testicles<<if $showDickCMs == 1>>, about 2cm long<</if>>.
+			a small pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>.
 		<<case 1>>
 			a soft little trace of scrotum, since $his testicles are so small they have retreated up into $his abdomen.
 		<<case 0>>
 			smooth $activeSlave.skin.
 		<<default>>
-			a hypertrophied, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about <<print ($activeSlave.balls*2)>>cm long<</if>>, a true masterpiece of modern growth hormone treatment.
+			a hypertrophied, clearly unnatural pair of testicles<<if $showDickCMs == 1>>, about <<= ballsToEitherUnit($activeSlave.balls)>> long<</if>>, a true masterpiece of modern growth hormone treatment.
 		<</switch>>
 		<<if $activeSlave.fuckdoll == 0 && $activeSlave.balls > 0 && $activeSlave.scrotum > 0>>
 			<<set _scrotalFullness = $activeSlave.scrotum - $activeSlave.balls>>
-- 
GitLab


From f01c39baf3863e46ddb538fba13eec33b4413c50 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Wed, 11 Jul 2018 17:52:26 +1200
Subject: [PATCH 030/189] Backwards Compatibility

Adding $showInches to backwards compat.
---
 src/uncategorized/BackwardsCompatibility.tw | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 0e4c1e000fb..7ce96339b6c 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -764,6 +764,10 @@
 <<if $arcologies[0].childFertilityInducedNCSResearch>>
 	<<unset $arcologies[0].childFertilityInducedNCSResearch>>
 <</if>>
+<<if ndef $showInches>>
+	<<set $showInches = 0>>
+<</if>>
+
 
 <<if $SFMODToggle == 1 && $securityForceCreate == 1>>
 	/* SF anon additional Special Force Variables [SFVAR] */
-- 
GitLab


From b145bf94c428e297e9538fd5aabb43535f878068 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Wed, 11 Jul 2018 17:59:55 +1200
Subject: [PATCH 031/189] Fix

Description option now actually toggles $showInches like it's supposed to.
---
 src/uncategorized/descriptionOptions.tw | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/uncategorized/descriptionOptions.tw b/src/uncategorized/descriptionOptions.tw
index 6a20e5529be..ae78529edc5 100644
--- a/src/uncategorized/descriptionOptions.tw
+++ b/src/uncategorized/descriptionOptions.tw
@@ -77,11 +77,11 @@ Approximate sizes of dicks and balls are
 
 Height and length units are in
 <<if $showInches == 1>>
-	@@.green;BOTH UNITS.@@ //[[Centimetres|Description Options][$showDickCMs = 0]]// | //[[Inches|Description Options][$showDickCMs = 2]]//
+	@@.green;BOTH UNITS.@@ //[[Centimetres|Description Options][$showInches = 0]]// | //[[Inches|Description Options][$showInches = 2]]//
 <<elseif $showInches == 2>>
-	@@.yellow;INCHES ONLY.@@ //[[Centimetres|Description Options][$showDickCMs = 0]]// | //[[Both|Description Options][$showDickCMs = 1]]//
+	@@.yellow;INCHES ONLY.@@ //[[Centimetres|Description Options][$showInches = 0]]// | //[[Both|Description Options][$showInches = 1]]//
 <<else>>
-	@@.yellow;CENTIMETRES ONLY.@@ //[[Inches|Description Options][$showDickCMs = 2]]// | //[[Both|Description Options][$showDickCMs = 1]]//
+	@@.yellow;CENTIMETRES ONLY.@@ //[[Inches|Description Options][$showInches = 2]]// | //[[Both|Description Options][$showInches = 1]]//
 <</if>>
 
 <br>
-- 
GitLab


From b0312055b2683946e84fd77554c4ec061c3f92db Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Wed, 11 Jul 2018 21:35:32 +1200
Subject: [PATCH 032/189] Fix 2

Uses _tempMom and _tempDad in newChildIntro rather than $activeSlave
---
 src/pregmod/newChildIntro.tw | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/pregmod/newChildIntro.tw b/src/pregmod/newChildIntro.tw
index 6c462bf6b56..1b3cc5038f4 100644
--- a/src/pregmod/newChildIntro.tw
+++ b/src/pregmod/newChildIntro.tw
@@ -322,10 +322,10 @@ You completed the legalities before heading to $incubatorName, knowing the tank
 		Her eyes focus on _tempMom.slaveName's rounded middle, staring in fascination at the unfamiliar bulge.<<if $activeSlave.readyOva >= 20>> A hand runs across her own middle and another down to her moist pussy.<</if>>
 		<<set _momInterest = "belly">>
 	<<elseif _tempMom.dick > 15>>
-		Her eyes focus on _tempMom.slaveName's <<= dickToEitherUnit($activeSlave.dick)>> long dick, trying to understand how it can fit in a girl.
+		Her eyes focus on _tempMom.slaveName's <<= dickToEitherUnit(_tempMom.dick).replace("es","")>> long dick, trying to understand how it can fit in a girl.
 		<<set _momInterest = "dick">>
 	<<elseif _tempMom.balls > 60>>
-		Her eyes focus on _tempMom.slaveName's <<= ballsToEitherUnit($activeSlave.balls)>> long testicles, taking in every centimeter of their enormity, before shifting to the cum steadily drooling from <<if _tempMom.dick > 0>>the tip of her dick<<else>>the hole in her crotch<</if>>.
+		Her eyes focus on _tempMom.slaveName's <<= ballsToEitherUnit(_tempMom.balls).replace("es","")>> long testicles, taking in every centimeter of their enormity, before shifting to the cum steadily drooling from <<if _tempMom.dick > 0>>the tip of her dick<<else>>the hole in her crotch<</if>>.
 		<<set _momInterest = "balls">>
 	<<elseif _tempMom.hips > 2>>
 		Her eyes focus on _tempMom.slaveName's abnormally wide hips. She runs her hands down her own sides, pondering how such a wonder occurs.
@@ -406,10 +406,10 @@ You completed the legalities before heading to $incubatorName, knowing the tank
 		Her eyes focus on _tempDad.slaveName's rounded middle, staring in fascination at the unfamiliar bulge.<<if $activeSlave.readyOva >= 20>> A hand runs across her own middle and another down to her moist pussy.<</if>>
 		<<set _dadInterest = "belly">>
 	<<elseif _tempDad.dick > 15>>
-		Her eyes focus on _tempDad.slaveName's <<= dickToEitherUnit($activeSlave.dick)>> long dick, trying to understand how it can fit in a girl.
+		Her eyes focus on _tempDad.slaveName's <<= dickToEitherUnit(_tempDad.dick).replace("es","")>> long dick, trying to understand how it can fit in a girl.
 		<<set _dadInterest = "dick">>
 	<<elseif _tempDad.balls > 60>>
-		Her eyes focus on _tempDad.slaveName's <<= ballsToEitherUnit($activeSlave.balls)>> long testicles, taking in every centimeter of their enormity, before shifting to the cum steadily drooling from <<if _tempDad.dick > 0>>the tip of her dick<<else>>the hole in her crotch<</if>>..
+		Her eyes focus on _tempDad.slaveName's <<= ballsToEitherUnit(_tempDad.balls).replace("es","")>> long testicles, taking in every centimeter of their enormity, before shifting to the cum steadily drooling from <<if _tempDad.dick > 0>>the tip of her dick<<else>>the hole in her crotch<</if>>..
 		<<set _dadInterest = "balls">>
 	<<elseif _tempDad.hips > 2>>
 		Her eyes focus on _tempDad.slaveName's abnormally wide hips. She runs her hands down her own sides, pondering how such a wonder occurs.
-- 
GitLab


From 961fe7035f6ab7ef6264768ee3c481a802702d02 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Wed, 11 Jul 2018 21:57:34 +1200
Subject: [PATCH 033/189] Fix 3

No more variables.
---
 src/js/utilJS.tw | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/js/utilJS.tw b/src/js/utilJS.tw
index 8b91c9a0d9e..4c8b2174f91 100644
--- a/src/js/utilJS.tw
+++ b/src/js/utilJS.tw
@@ -587,16 +587,14 @@ window.getSlaveTrustClass = function (slave) {
 
 //takes an integer e.g. $activeSlave.hLength, returns a string in the format 10 inches
 window.cmToInchString = function(s) {
-	in = Math.round(s/2.54);
-	return in + (in === 1?" inch":" inches");
+	return Math.round(s/2.54) + (Math.round(s/2.54) === 1?" inch":" inches");
 };
 
 //takes an integer e.g. $activeSlave.height, returns a string in the format 6'5"
 window.cmToFootInchString = function(s) {
-	in = Math.round(s/2.54);
-	if(in < 12)
+	if (Math.round(s/2.54) < 12)
 		return cmToInchString(s);
-	return Math.trunc(in/12) + `'` + in%12 + `"`;
+	return Math.trunc(Math.round(s/2.54)/12) + `'` + Math.round(s/2.54)%12 + `"`;
 };
 
 //takes a dick value e.g. $activeSlave.dick, returns a string in the format 6 inches
-- 
GitLab


From fa9586f535fbbbef92946d9e09063a097bcea98e Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Wed, 11 Jul 2018 13:41:54 +0300
Subject: [PATCH 034/189] relationshiphandled

---
 src/js/slaveSummaryWidgets.tw | 52 ++++++++++++++++-------------------
 1 file changed, 24 insertions(+), 28 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 8d0632680a4..e7a8ae11761 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -22,12 +22,10 @@ window.SlaveSummary = function SlaveSummary(slave) {
 window.SlaveSummaryUncached = (function(){
 	"use strict";
 	let V, r;
-	var _relationshipHandled;
 	
 	function SlaveSummaryUncached(slave) {
 		V = State.variables;
 		r = "";
-		_relationshipHandled = 0;
 		if (V.abbreviateDevotion === 1)
 			short_devotion(slave);
 		else if (V.abbreviateDevotion === 2)
@@ -180,21 +178,17 @@ window.SlaveSummaryUncached = (function(){
 		}
 		if (V.abbreviateMental === 1) {
 			r += `<span class="lightgreen">`;
-			let _relationshipHandled = 0;
 			if (V.familyTesting === 1)
 				short_extended_family(slave);
 			else
 				short_legacy_family(slave);
 			r += `</span>`;
-			_relationshipHandled = 0;
 			short_rival(slave);
 		} else if (V.abbreviateMental === 2) {
-			let _relationshipHandled = 0;
 			if (V.familyTesting === 1)
 				long_extended_family(slave);
 			else
 				long_legacy_family(slave);
-			_relationshipHandled = 0;
 			long_rival(slave);
 		}
 		if (slave.fuckdoll === 0) {
@@ -3550,6 +3544,7 @@ window.SlaveSummaryUncached = (function(){
 	}
 	
 	function short_extended_family(slave) {
+		let handled = 0;
 		if (slave.mother > 0) {
 			let _ssj = V.slaves.findIndex(function(s) {
 				return s.ID === slave.mother;
@@ -3568,7 +3563,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
 			r += " ";
@@ -3576,10 +3571,10 @@ window.SlaveSummaryUncached = (function(){
 			r += `Your daughter`;
 			if (slave.relationship === -3) {
 				r += ` & wife`;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else if (slave.relationship === -2) {
 				r += ` & lover`;
-				_relationshipHandled = 1;
+				handled = 1;
 			}
 			r += " ";
 		}
@@ -3589,7 +3584,7 @@ window.SlaveSummaryUncached = (function(){
 			});
 			if (_ssj !== -1) {
 				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
 					if (slave.relationship === 1) {
 						r += ` & friend`;
 					} else if (slave.relationship === 2) {
@@ -3601,7 +3596,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
 			r += " ";
@@ -3609,10 +3604,10 @@ window.SlaveSummaryUncached = (function(){
 			r += `Your daughter`;
 			if (slave.relationship === -3) {
 				r += ` & wife`;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else if (slave.relationship === -2) {
 				r += ` & lover`;
-				_relationshipHandled = 1;
+				handled = 1;
 			}
 		}
 		if (slave.daughters === 1) {
@@ -3633,7 +3628,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
 			r += " ";
@@ -3642,7 +3637,7 @@ window.SlaveSummaryUncached = (function(){
 			});
 			if (_ssj !== -1) {
 				r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
 					if (slave.relationship === 1) {
 						r += ` & friend`;
 					} else if (slave.relationship === 2) {
@@ -3654,7 +3649,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
 			r += " ";
@@ -3679,14 +3674,14 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
 			r += " ";
 		} else if (slave.sisters > 1) {
 			r += `multiple sisters `;
 		}
-		if (slave.relationship > 0 && _relationshipHandled !== 1) {
+		if (slave.relationship > 0 && handled !== 1) {
 			let _ssj = V.slaves.findIndex(function(s) {
 				return s.ID === slave.relationshipTarget;
 			});
@@ -3807,6 +3802,7 @@ window.SlaveSummaryUncached = (function(){
 	}
 	
 	function long_extended_family(slave) {
+		let handled = 0;
 		if (slave.mother > 0) {
 			let _ssj = V.slaves.findIndex(function(s) {
 				return s.ID === slave.mother;
@@ -3825,7 +3821,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
@@ -3833,10 +3829,10 @@ window.SlaveSummaryUncached = (function(){
 			r += `Your `;
 			if (slave.relationship === -3) {
 				r += `<span class="lightgreen">daughter and wife.</span> `;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else if (slave.relationship === -2) {
 				r += `<span class="lightgreen">daughter and lover.</span> `;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else {
 				r += `<span class="lightgreen">daughter.</span> `;
 			}
@@ -3859,7 +3855,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
@@ -3867,10 +3863,10 @@ window.SlaveSummaryUncached = (function(){
 			r += `Your `;
 			if (slave.relationship === -3) {
 				r += `<span class="lightgreen">daughter and wife.</span> `;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else if (slave.relationship === -2) {
 				r += `<span class="lightgreen">daughter and lover.</span> `;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else {
 				r += `<span class="lightgreen">daughter.</span> `;
 			}
@@ -3893,7 +3889,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
@@ -3914,7 +3910,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
@@ -3945,7 +3941,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
@@ -3958,7 +3954,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="lightgreen">Has several sisters.</span> `;
 			}
 		}
-		if (slave.relationship > 0 && _relationshipHandled !== 1) {
+		if (slave.relationship > 0 && handled !== 1) {
 			let _ssj = V.slaves.findIndex(function(s) {
 				return s.ID === slave.relationshipTarget;
 			});
-- 
GitLab


From 81858c9a06425a51ce4229347248855613db1ee6 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Wed, 11 Jul 2018 13:57:09 +0300
Subject: [PATCH 035/189] pregnancy typo

---
 src/js/slaveSummaryWidgets.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index e7a8ae11761..ad41a1d1cfa 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -881,7 +881,7 @@ window.SlaveSummaryUncached = (function(){
 			if (slave.pregType < 2 || slave.broodmother > 0) {
 				r += `${slave.pregWeek} weeks pregnant.`;
 			} else {
-				r += `${slave.pregWeek} weeks pregnant with`;
+				r += `${slave.pregWeek} weeks pregnant with `;
 				if (slave.pregType >= 40) {
 					r += `a tremendous brood of offspring.`;
 				} else if (slave.pregType >= 20) {
-- 
GitLab


From 2246b9a0848e1aae305a49aa32fffd39dcf1dc60 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 11 Jul 2018 18:58:21 -0400
Subject: [PATCH 036/189] Extraneous SlaveTitle

---
 src/uncategorized/RETS.tw | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw
index c1c0290d31e..8239f746828 100644
--- a/src/uncategorized/RETS.tw
+++ b/src/uncategorized/RETS.tw
@@ -722,7 +722,6 @@ Mere moments after you absorb this arresting scene, $subSlave.slaveName thrusts
 <<if $subSlave.vagina != 0 && canDoVaginal($subSlave)>><<set _vaginal = 1>><</if>>
 You round a corner and almost trip over <<EventNameLink $activeSlave>>. She's on top of another slave, humping away; her <<if $activeSlave.butt > 8>>monstrous, naked ass jiggles lewdly<<elseif $activeSlave.anus > 2>>loose asspussy winks lewdly<<elseif $activeSlave.muscles > 30>>heavily muscled butt flexes powerfully<<elseif $activeSlave.butt > 3>>big butt pumps energetically<<else>>nice little butt flexes cutely<</if>> as she thrusts. You can't see much of the slave <<if _vaginal>>lying on her back<<else>>face-down<</if>> underneath $activeSlave.slaveName, but you recognize her as $subSlave.slaveName by her sobbing. She's struggling a little, but $activeSlave.slaveName has her pinned to the floor by her wrists, and $activeSlave.slaveName is quickly raping the resistance out of the <<print SlaveTitle($subSlave)>>.
 <br><br>
-<<set $desc = SlaveTitle($activeSlave)>>
 $activeSlave.slaveName senses your presence above and behind her, and twists her $activeSlave.hColor head around to <<if canSee($activeSlave)>>see who it is. She sees that it's you<<else>>discern who it is. She realizes that it's you<</if>>, and greets you cheerfully. "Hi, <<Master>>," she trills.
 <<if $activeSlave.fetishKnown && $activeSlave.fetish == "sadist">>
 	"Thi<<s>> i<<s>> <<s>>o awe<<s>>ome," the sadistic $desc gushes. "The crying, the <<s>>truggling. Thank you for letting u<<s>> do thi<<s>>."
-- 
GitLab


From 6845f9f30e086285d99ed7df64bf2c16a9e576fb Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 11 Jul 2018 21:20:33 -0400
Subject: [PATCH 037/189] fix

---
 src/uncategorized/slaveSummary.tw | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/uncategorized/slaveSummary.tw b/src/uncategorized/slaveSummary.tw
index 632439cbe7c..d5aee53b136 100644
--- a/src/uncategorized/slaveSummary.tw
+++ b/src/uncategorized/slaveSummary.tw
@@ -732,6 +732,7 @@ will
 <br/>
 <<if $seeImages != 1 || $seeSummaryImages != 1 || $imageChoice == 1>>&nbsp;&nbsp;&nbsp;&nbsp;<</if>>
 
+<<run clearSummaryCache()>>
 <<= SlaveSummary(_Slave)>>
 
 <<set $slaves[_ssi] = _Slave>>
-- 
GitLab


From 64ce2f3b838dc44eaa845a77ec0129ca000d5c3d Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 12 Jul 2018 02:13:57 -0400
Subject: [PATCH 038/189] Display fix

---
 src/uncategorized/slaveSummary.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/uncategorized/slaveSummary.tw b/src/uncategorized/slaveSummary.tw
index d5aee53b136..06a23e24fcf 100644
--- a/src/uncategorized/slaveSummary.tw
+++ b/src/uncategorized/slaveSummary.tw
@@ -639,7 +639,7 @@ will
 	<br>Transfer to:
 
 	<<if _Slave.assignment != "rest" && _Slave.assignment != "please you" && _Slave.assignment != "take classes" && _Slave.assignment != "be a servant" && _Slave.assignment != "whore" && _Slave.assignment != "serve the public" && _Slave.assignment != "get milked" && _Slave.assignment != "stay confined">>
-		<<link "Penthouse" "Main">><<= removeJob($slaves[_ssi], $slaves[_ssi].assignment)>><</link>>
+		<<link "Penthouse" "Main">><<= removeJob($slaves[_ssi], $slaves[_ssi].assignment)>><</link>> |
 	<<else>>
 		Penthouse |
 	<</if>>
-- 
GitLab


From ad51e1171dd035656c0f84e5b7173067db21c749 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 12 Jul 2018 20:26:30 -0400
Subject: [PATCH 039/189] Convert Enunciate and WrittenMaster

---
 .../brothel/brothelAssignmentScene.tw         |   2 +-
 src/npc/agent/agentCompany.tw                 |   4 +-
 src/npc/descriptions/fVagina.tw               |   4 +-
 src/npc/fFeelings.tw                          |   2 +-
 src/npc/fKiss.tw                              |   2 +-
 src/npc/fPCImpreg.tw                          |   8 +-
 src/npc/fRelation.tw                          |   2 +-
 src/pregmod/fDick.tw                          |   6 +-
 src/pregmod/fMarry.tw                         |   2 +-
 src/pregmod/fPat.tw                           |  14 +--
 src/pregmod/fSlaveSlaveDickConsummate.tw      |   2 +-
 src/pregmod/fSlaveSlaveVagConsummate.tw       |   4 +-
 src/pregmod/forceFeeding.tw                   |   2 +-
 src/pregmod/reTheSirenStrikesBack.tw          |   2 +-
 src/pregmod/seFCTVshows.tw                    |   4 +-
 src/societies/aztec/slaveSacrifice.tw         |   2 +-
 src/uncategorized/PESS.tw                     |   8 +-
 src/uncategorized/RECI.tw                     |  10 +-
 src/uncategorized/REFI.tw                     |  12 +-
 src/uncategorized/REFS.tw                     |   2 +-
 src/uncategorized/RESS.tw                     | 116 +++++++++---------
 src/uncategorized/RESSTR.tw                   |   2 +-
 src/uncategorized/RETS.tw                     |  68 +++++-----
 src/uncategorized/bodyModification.tw         |   2 +-
 src/uncategorized/multiImplant.tw             |   2 +-
 src/uncategorized/newSlaveIntro.tw            |   4 +-
 src/uncategorized/pMercenaryRomeo.tw          |   4 +-
 src/uncategorized/pUndergroundRailroad.tw     |   2 +-
 src/uncategorized/peConcubineInterview.tw     |   2 +-
 src/uncategorized/peLonelyBodyguard.tw        |   2 +-
 src/uncategorized/ptWorkaround.tw             |   2 +-
 src/uncategorized/reBoomerang.tw              |   2 +-
 src/uncategorized/reBusyArcade.tw             |   2 +-
 src/uncategorized/reFSAcquisition.tw          |   4 +-
 src/uncategorized/reHGReplacement.tw          |   4 +-
 src/uncategorized/reMilfTourist.tw            |   2 +-
 src/uncategorized/reRelationshipAdvice.tw     |   4 +-
 src/uncategorized/reRelativeRecruiter.tw      |   4 +-
 src/uncategorized/reShelterInspection.tw      |   2 +-
 src/uncategorized/reShowerPunishment.tw       |   2 +-
 src/uncategorized/reSlaveMarriage.tw          |   2 +-
 src/uncategorized/saLongTermEffects.tw        |   8 +-
 src/uncategorized/saPleaseYou.tw              |  16 +--
 src/uncategorized/seExpiration.tw             |   2 +-
 src/uncategorized/seRetirement.tw             |   2 +-
 src/utility/descriptionWidgetsFlesh.tw        |   8 +-
 src/utility/descriptionWidgetsStyle.tw        |   2 +-
 src/utility/miscWidgets.tw                    |  11 +-
 48 files changed, 184 insertions(+), 193 deletions(-)

diff --git a/src/facilities/brothel/brothelAssignmentScene.tw b/src/facilities/brothel/brothelAssignmentScene.tw
index f65d331c152..08184ace4c3 100644
--- a/src/facilities/brothel/brothelAssignmentScene.tw
+++ b/src/facilities/brothel/brothelAssignmentScene.tw
@@ -1,7 +1,7 @@
 :: Brothel Assignment Scene [nobr]
 
 <<set $nextButton = "Continue", $nextLink = $returnTo>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 You could direct $assistantName to relay your orders to $activeSlave.slaveName, but you've decided to avoid relying too much on machine assistance. So, she is merely directed to report to your office. The
 <<if $activeSlave.devotion > 95>>
diff --git a/src/npc/agent/agentCompany.tw b/src/npc/agent/agentCompany.tw
index a02fa49f93e..73aec9afa8c 100644
--- a/src/npc/agent/agentCompany.tw
+++ b/src/npc/agent/agentCompany.tw
@@ -33,7 +33,7 @@ Her question is answered when you bring $activeSlave.slaveName in close, putting
 <<if !canTalk($activeSlave)>>
   Unable to speak herself, she simply makes a heart shape with her hands in view of the video call, and blows her <<if $activeSlave.relationship == 4>>lover<<else>>wife<</if>> a kiss.
 <<else>>
-  <<Enunciate $activeSlave>>
+  <<run Enunciate($activeSlave)>>
   "Hi <<if $activeSlave.relationship == 4>>lover<<else>><<s>>weetheart<</if>>," she <<say>>s in a syrupy tone. "Mi<<ss>> me?"
 <</if>>
 
@@ -41,7 +41,7 @@ Her question is answered when you bring $activeSlave.slaveName in close, putting
 
 $subSlave.slaveName smiles back at her, glowing with pleasure, and responds with exaggerated arousal.
 
-<<Enunciate $subSlave>>
+<<run Enunciate($subSlave)>>
 
 <<switch $subSlave.fetish>>
 <<case "submissive">>
diff --git a/src/npc/descriptions/fVagina.tw b/src/npc/descriptions/fVagina.tw
index d66817424ff..cff5b4d7004 100644
--- a/src/npc/descriptions/fVagina.tw
+++ b/src/npc/descriptions/fVagina.tw
@@ -167,10 +167,10 @@ You call $him over so you can
 	<<if ($activeSlave.fetish == "mindbroken")>>
 		$He accepts your orders dumbly and presents $his virgin pussy for defloration<<if ($PC.dick == 0)>>, watching without real interest as you don a strap-on<</if>>. Since $he is mindbroken, @@.lime;losing $his virginity@@ has no impact on any part of $him other than $his vagina.
 	<<elseif ($activeSlave.devotion > 20)>>
-		$He accepts your orders without comment and presents $his virgin pussy for defloration<<if ($PC.dick == 0)>>, watching with some small trepidation as you don a strap-on<</if>>. You gently ease into $his pussy before gradually increasing the intensity of your thrusts into $his. Before long, $he's moaning loudly as you pound away. Since $he is already well broken, this new connection with $him <<WrittenMaster $activeSlave>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His pussy has been broken in.@@ $He looks forward to having $his pussy fucked by you again.
+		$He accepts your orders without comment and presents $his virgin pussy for defloration<<if ($PC.dick == 0)>>, watching with some small trepidation as you don a strap-on<</if>>. You gently ease into $his pussy before gradually increasing the intensity of your thrusts into $his. Before long, $he's moaning loudly as you pound away. Since $he is already well broken, this new connection with $him <<= WrittenMaster($activeSlave)>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His pussy has been broken in.@@ $He looks forward to having $his pussy fucked by you again.
 		<<set $activeSlave.devotion += 10>>
 	<<elseif ($activeSlave.devotion >= -20)>>
-		$He is clearly unhappy at losing $his pearl of great price to you; this probably isn't what $he imagined $his first real sex would be like.<<if ($PC.dick == 0)>>$His lower lip quivers with trepidation as $he watches you don a strap-on and maneuver to fuck $his virgin hole.<</if>> You gently ease into $his pussy before gradually increasing the intensity of your thrusts into $him. Before long, $he's moaning as you pound away. Nevertheless, this new connection with $him <<WrittenMaster $activeSlave>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His pussy has been broken in,@@ and $he is @@.gold;fearful@@ that sex will continue to be painful.
+		$He is clearly unhappy at losing $his pearl of great price to you; this probably isn't what $he imagined $his first real sex would be like.<<if ($PC.dick == 0)>>$His lower lip quivers with trepidation as $he watches you don a strap-on and maneuver to fuck $his virgin hole.<</if>> You gently ease into $his pussy before gradually increasing the intensity of your thrusts into $him. Before long, $he's moaning as you pound away. Nevertheless, this new connection with $him <<= WrittenMaster($activeSlave)>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His pussy has been broken in,@@ and $he is @@.gold;fearful@@ that sex will continue to be painful.
 		<<set $activeSlave.devotion += 4, $activeSlave.trust -= 4>>
 	<<else>>
 		As you anticipated, $he refuses to give you $his virginity. And as you expected, $he is unable to resist you. $He cries as <<if ($PC.dick == 0)>>your strap-on<<else>>your cock<</if>> opens $his fresh, tight hole. You force your way into $his pussy and continue thrusting into $him. $He sobs and cries with horror as you pound away. The rape @@.mediumorchid;decreases $his devotion to you.@@ @@.lime;$His pussy has been broken in,@@ and $he @@.gold;fears further abuse.@@
diff --git a/src/npc/fFeelings.tw b/src/npc/fFeelings.tw
index fe221edd396..98fb32dabca 100644
--- a/src/npc/fFeelings.tw
+++ b/src/npc/fFeelings.tw
@@ -1,6 +1,6 @@
 :: FFeelings [nobr]
 
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<set _lisping = 0>>
 <<if ($activeSlave.amp != 1) && canTalk($activeSlave) && SlaveStatsChecker.checkForLisp($activeSlave)>>
 	<<set _lisping = 1>>
diff --git a/src/npc/fKiss.tw b/src/npc/fKiss.tw
index c4ee79dbaa4..6b51cec4ef8 100644
--- a/src/npc/fKiss.tw
+++ b/src/npc/fKiss.tw
@@ -31,7 +31,7 @@ You tell $activeSlave.slaveName to
 	<</if>>
 <</switch>>
 
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<if ($activeSlave.fetish == "mindbroken") && ($activeSlave.relationship != -3)>>
 	$He complies mechanically. $He remembers that when <<Master>>'s commands are not obeyed, there is punishment.
diff --git a/src/npc/fPCImpreg.tw b/src/npc/fPCImpreg.tw
index df5df085ccb..62988a633c8 100644
--- a/src/npc/fPCImpreg.tw
+++ b/src/npc/fPCImpreg.tw
@@ -53,7 +53,7 @@ You call $him over so you can
 <</if>>
 
 <<if ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60) && ($activeSlave.fetishKnown == 1) && ($activeSlave.vagina == 0 || ($activeSlave.anus == 0 && $activeSlave.mpreg == 1))>>
-	$He cries with joy and presents $his virgin <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> for fertilization. $He sobs with happiness when $he feels your hot seed<<if $PC.balls == 3>> filling $him until $his belly is distended and wobbling with your cum<<elseif $PC.balls == 2>> pouring into $him until $he is stuffed with your cum<<elseif $PC.balls == 1>> pouring into $him<</if>>, knowing that $his first time will always be special to $him. $He spends the rest of the day cherishing $his stomach. This new connection with $his <<WrittenMaster $activeSlave>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> has been broken in, and there's a good chance $he's pregnant.@@
+	$He cries with joy and presents $his virgin <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> for fertilization. $He sobs with happiness when $he feels your hot seed<<if $PC.balls == 3>> filling $him until $his belly is distended and wobbling with your cum<<elseif $PC.balls == 2>> pouring into $him until $he is stuffed with your cum<<elseif $PC.balls == 1>> pouring into $him<</if>>, knowing that $his first time will always be special to $him. $He spends the rest of the day cherishing $his stomach. This new connection with $his <<= WrittenMaster($activeSlave)>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> has been broken in, and there's a good chance $he's pregnant.@@
 	<<if $activeSlave.mpreg == 1>>
 		<<set $activeSlave.anus = 1>>
 	<<else>>
@@ -61,10 +61,10 @@ You call $him over so you can
 	<</if>>
 	<<set  $activeSlave.devotion += 15>>
 <<elseif ($activeSlave.fetish == "pregnancy") && ($activeSlave.fetishStrength > 60) && ($activeSlave.fetishKnown == 1)>>
-	$He cries with joy and presents $his fertile <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> for breeding. $He sobs with happiness when $he feels your hot seed<<if $PC.balls == 3>> filling $him until $his belly is distended and wobbling with your cum<<elseif $PC.balls == 2>> pouring into $him until $he is stuffed with your cum<<elseif $PC.balls == 1>> pouring into $him<</if>>. $He spends the rest of the day considering $his own stomach with pride. This new connection with $his <<WrittenMaster $activeSlave>> @@.hotpink;increases $his devotion to you.@@
+	$He cries with joy and presents $his fertile <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> for breeding. $He sobs with happiness when $he feels your hot seed<<if $PC.balls == 3>> filling $him until $his belly is distended and wobbling with your cum<<elseif $PC.balls == 2>> pouring into $him until $he is stuffed with your cum<<elseif $PC.balls == 1>> pouring into $him<</if>>. $He spends the rest of the day considering $his own stomach with pride. This new connection with $his <<= WrittenMaster($activeSlave)>> @@.hotpink;increases $his devotion to you.@@
 	<<set  $activeSlave.devotion += 10>>
 <<elseif ($activeSlave.devotion > 20) && ($activeSlave.vagina == 0 || ($activeSlave.anus == 0 && $activeSlave.mpreg == 1))>>
-	$He accepts your orders without comment and presents $his virgin <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> for fertilization. $He gasps in shock when $he feels your hot seed<<if $PC.balls == 3>> filling $him until $his belly is distended and wobbling with your cum<<elseif $PC.balls == 2>> pouring into $him until $he is stuffed with your cum<<elseif $PC.balls == 1>> pouring into $him<</if>>. $He spends the rest of the day struggling with roiling emotions. Since $he is already well broken, this new connection with $his <<WrittenMaster $activeSlave>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> has been broken in, and there's a good chance $he's pregnant.@@
+	$He accepts your orders without comment and presents $his virgin <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> for fertilization. $He gasps in shock when $he feels your hot seed<<if $PC.balls == 3>> filling $him until $his belly is distended and wobbling with your cum<<elseif $PC.balls == 2>> pouring into $him until $he is stuffed with your cum<<elseif $PC.balls == 1>> pouring into $him<</if>>. $He spends the rest of the day struggling with roiling emotions. Since $he is already well broken, this new connection with $his <<= WrittenMaster($activeSlave)>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> has been broken in, and there's a good chance $he's pregnant.@@
 	<<if $activeSlave.mpreg == 1>>
 		<<set $activeSlave.anus = 1>>
 	<<else>>
@@ -72,7 +72,7 @@ You call $him over so you can
 	<</if>>
 	<<set  $activeSlave.devotion += 10>>
 <<elseif ($activeSlave.devotion >= -20) && ($activeSlave.vagina == 0 || ($activeSlave.anus == 0 && $activeSlave.mpreg == 1))>>
-	$He is clearly unhappy at losing $his pearl of great price to you; this probably isn't what $he imagined $his first real sex would be like. Worse, $he knows $he's fertile and realizes $he'll likely get pregnant. Nevertheless, this new connection with $his <<WrittenMaster $activeSlave>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> has been broken in.@@
+	$He is clearly unhappy at losing $his pearl of great price to you; this probably isn't what $he imagined $his first real sex would be like. Worse, $he knows $he's fertile and realizes $he'll likely get pregnant. Nevertheless, this new connection with $his <<= WrittenMaster($activeSlave)>> @@.hotpink;increases $his devotion to you.@@ @@.lime;$His <<if $activeSlave.mpreg == 1>>asshole<<else>>pussy<</if>> has been broken in.@@
 	<<if $activeSlave.mpreg == 1>>
 		<<set $activeSlave.anus = 1>>
 	<<else>>
diff --git a/src/npc/fRelation.tw b/src/npc/fRelation.tw
index ca62be627b6..c19e8374bb0 100644
--- a/src/npc/fRelation.tw
+++ b/src/npc/fRelation.tw
@@ -43,7 +43,7 @@
 		<<set _activeSlaveRel = "slave wife", _partnerRel = "slave wife">>
 	<</switch>>
 <</if>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<run clearSummaryCache($activeSlave)>>
 <<setLocalPronouns $activeSlave>>
 
diff --git a/src/pregmod/fDick.tw b/src/pregmod/fDick.tw
index f4ed7b612f1..63cf9802152 100644
--- a/src/pregmod/fDick.tw
+++ b/src/pregmod/fDick.tw
@@ -19,9 +19,9 @@
 	
 	<<if $activeSlave.fetish != "mindbroken" && $activeSlave.fuckdoll == 0>>
 		<<if $activeSlave.devotion > 20>>
-			$He thought $he would be fucking another slave, not $his <<WrittenMaster>>, so to say $he's pleasantly surprised would be an understatement.
+			$He thought $he would be fucking another slave, not $his <<= WrittenMaster()>>, so to say $he's pleasantly surprised would be an understatement.
 		<<elseif $activeSlave.devotion >= -20>>
-			$He thought $he would fucking another slave, not $his <<WrittenMaster>>; $he has mixed feelings about this, but $his body can't wait to plunge your depths.
+			$He thought $he would fucking another slave, not $his <<= WrittenMaster()>>; $he has mixed feelings about this, but $his body can't wait to plunge your depths.
 		<<else>>
 			<<if $activeSlave.trust > 20>>
 				$He was already horrified at the thought of being ordered to lie down and let another slave rape $his dick, but when $he realized it would be you instead, that horror turned to a mix of confusion and sheer terror.
@@ -87,7 +87,7 @@
 	making it abundantly clear that you want $his cum.
 
 	<<if ($activeSlave.fetish == "mindbroken")>>
-		Like a doll, $he dumbly remains still, completely indifferent that $he's deep in $his <<WrittenMaster>>'s <<if $PC.vagina == 1>>pussy<<else>>butt<</if>>.
+		Like a doll, $he dumbly remains still, completely indifferent that $he's deep in $his <<= WrittenMaster()>>'s <<if $PC.vagina == 1>>pussy<<else>>butt<</if>>.
 		You start moving up and on $his shaft, continuing until you climax and lift yourself off of $him. A strand of cum slips from your <<if $PC.vagina == 1>>slit<<else>>anus<</if>>; it seems $activeSlave.slaveName came too.
 		Since $he is mindbroken, $his responses to you are purely physiological and your actions have no affect on $his mentally. You leave your toy for one of your other slaves to clean and maintain.
 	<<elseif $activeSlave.devotion > 50>> 
diff --git a/src/pregmod/fMarry.tw b/src/pregmod/fMarry.tw
index 2ed039ff149..5632317141d 100644
--- a/src/pregmod/fMarry.tw
+++ b/src/pregmod/fMarry.tw
@@ -1,7 +1,7 @@
 :: FMarry [nobr]
 
 <<set $nextButton = "Back", $nextLink = "Slave Interact", $weddingSlaveID = $activeSlave.ID>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<set _belly = bellyAdjective($activeSlave)>>
 <<run clearSummaryCache($activeSlave)>>
 
diff --git a/src/pregmod/fPat.tw b/src/pregmod/fPat.tw
index de2b27a88e3..a6097f4c02e 100644
--- a/src/pregmod/fPat.tw
+++ b/src/pregmod/fPat.tw
@@ -1,6 +1,6 @@
 :: FPat [nobr]
 
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<run clearSummaryCache($activeSlave)>>
 <<setLocalPronouns $activeSlave>>
 
@@ -26,7 +26,7 @@ You tell $activeSlave.slaveName to
 /*approach*/
 
 <<if ($activeSlave.fetish == "mindbroken") && ($activeSlave.relationship != -3)>>
-	$He complies robotically. $He remembers that when <<WrittenMaster>>'s commands are not obeyed, there is punishment.
+	$He complies robotically. $He remembers that when <<= WrittenMaster()>>'s commands are not obeyed, there is punishment.
 <<elseif ($activeSlave.relationship == -2)>>
 	$He eagerly complies, happy to be near the object of $his longing. Once $he's close, you hold $his face in your palms and gaze deeply
 	<<if canSee($activeSlave)>>
@@ -37,7 +37,7 @@ You tell $activeSlave.slaveName to
 	$He blushes furiously.
 <<elseif $activeSlave.relationship == -3>>
 	<<if $activeSlave.fetish == "mindbroken">>
-		$He complies mechanically. $He remembers that when <<WrittenMaster>>'s commands are not obeyed, there is punishment. Once $he's close, you hold $his face in your palms and look into $his empty $activeSlave.eyeColor eyes. $He shows no reaction
+		$He complies mechanically. $He remembers that when <<= WrittenMaster()>>'s commands are not obeyed, there is punishment. Once $he's close, you hold $his face in your palms and look into $his empty $activeSlave.eyeColor eyes. $He shows no reaction
 	<<elseif $activeSlave.devotion+$activeSlave.trust >= 175>>
 		$He complies in a wifely fashion, moving $his body as $he approaches to best enflame your desire, eager to be close to the <<if $PC.title == 1>>man<<else>>woman<</if>> who married $him. Once $he's close, you hold $his face in your palms and gaze
 		<<if canSee($activeSlave)>>
@@ -70,7 +70,7 @@ You tell $activeSlave.slaveName to
 <<elseif ($activeSlave.devotion > 75)>>
 	$He hurriedly complies, happy to be near you. Once $he's close, you hold $his face in your palms and take a moment to gaze deeply
 	<<if canSee($activeSlave)>>
-		into $his $activeSlave.eyeColor eyes. $He finds the intense look from $his beloved <<WrittenMaster>> disconcerting, and $his eyes flick downward after a moment.
+		into $his $activeSlave.eyeColor eyes. $He finds the intense look from $his beloved <<= WrittenMaster()>> disconcerting, and $his eyes flick downward after a moment.
 	<<else>>
 		upon $his face. $He can feel the intense look from $his beloved <<Master>> and it is disconcerting, causing $him to glance away after only a moment, $his face flushed.
 	<</if>>
@@ -78,21 +78,21 @@ You tell $activeSlave.slaveName to
 <<elseif ($activeSlave.devotion > 50)>>
 	$He hurriedly complies, happy to be near you. Once $he's close, you hold $his face in your palms and take a moment to gaze deeply
 	<<if canSee($activeSlave)>>
-		into $his $activeSlave.eyeColor eyes. $He finds the intense attention from $his <<WrittenMaster>> disconcerting, and $he looks down after a moment, blushing.
+		into $his $activeSlave.eyeColor eyes. $He finds the intense attention from $his <<= WrittenMaster()>> disconcerting, and $he looks down after a moment, blushing.
 	<<else>>
 		upon $his face. $He finds the intense attention from $his <<Master>> disconcerting, and it causes him to glance away after only a moment, blushing.
 		<</if>>
 <<elseif ($activeSlave.devotion > 20)>>
 	$He hurriedly complies, happy to be near you. Once $he's close, you hold $his face in your palms and take a moment to gaze deeply
 	<<if canSee($activeSlave)>>
-		into $his $activeSlave.eyeColor eyes. $He finds the intense attention from $his <<WrittenMaster>> worrying, and $he looks down after a moment, blushing nervously.
+		into $his $activeSlave.eyeColor eyes. $He finds the intense attention from $his <<= WrittenMaster()>> worrying, and $he looks down after a moment, blushing nervously.
 	<<else>>
 		upon $his face. $He finds the intense attention from $his <<Master>> worrying, and $he looks down after a moment, blushing nervously.
 		<</if>>
 <<elseif ($activeSlave.devotion >= -20) && ($activeSlave.trust > -20)>>
 	$He visibly considers disobedience, but decides that complying with such an apparently harmless order is safe, for now. Once $he's close, you hold $his face in your palms and take a moment to gaze deeply
 	<<if canSee($activeSlave)>>
-		into $his $activeSlave.eyeColor eyes. $He finds the intense attention from $his <<WrittenMaster>> troubling, and $he looks down after a moment, $his lower lip trembling with nervousness.
+		into $his $activeSlave.eyeColor eyes. $He finds the intense attention from $his <<= WrittenMaster()>> troubling, and $he looks down after a moment, $his lower lip trembling with nervousness.
 	<<else>>
 		upon $his face. $He finds the intense attention from $his <<Master>> worrying, and turns away after a moment, $his lower lip trembling with nervousness.
 	<</if>>
diff --git a/src/pregmod/fSlaveSlaveDickConsummate.tw b/src/pregmod/fSlaveSlaveDickConsummate.tw
index f524e61bdf7..b2c04bd4c67 100644
--- a/src/pregmod/fSlaveSlaveDickConsummate.tw
+++ b/src/pregmod/fSlaveSlaveDickConsummate.tw
@@ -285,7 +285,7 @@ You call $slaverapistx.slaveName into the room.
 			<<elseif ($slaverapistx.fetish == "sadist")>>
 				$slaverapistx.slaveName is a sadist, and seeing a human dildo tied town for _him2 to abuse and enjoy has _him2 almost panting in arousal. The ecstatic look of devotion _he2 flashes you makes it clear _he2's going to enjoy _himself2, regardless of how the <<if ($activeSlave.clit >= 4)>>massive clit<<else>>_dicksize cock<</if>>'s owner feels.
 			<<elseif ($slaverapistx.fetish == "humiliation")>>
-				$slaverapistx.slaveName usually gets off on humiliation, and you know _he2 wishes the roles were reversed here. Despite that, having _his2 <<WrittenMaster $slaverapistx>> order _him2 to get _himself2 off with the human dildo beneath _him2 is quite thrilling, sexually.
+				$slaverapistx.slaveName usually gets off on humiliation, and you know _he2 wishes the roles were reversed here. Despite that, having _his2 <<= WrittenMaster($slaverapistx)>> order _him2 to get _himself2 off with the human dildo beneath _him2 is quite thrilling, sexually.
 			<</if>>
 		<</if>>
 	<</if>>
diff --git a/src/pregmod/fSlaveSlaveVagConsummate.tw b/src/pregmod/fSlaveSlaveVagConsummate.tw
index 67bb1ed0552..6c68793ec9e 100644
--- a/src/pregmod/fSlaveSlaveVagConsummate.tw
+++ b/src/pregmod/fSlaveSlaveVagConsummate.tw
@@ -81,7 +81,7 @@ You take a look at the slave you selected.
 		<</if>>
 		<<set _incestMood = "Top">>
 	<<elseif ($slaverapistx.relationshipTarget == $activeSlave.ID) && ($slaverapistx.relationship > 2)>>
-		but since _he2's already in a sexual relationship with $him, it's only special because _his2 <<WrittenMaster $slaverapistx>> is watching.
+		but since _he2's already in a sexual relationship with $him, it's only special because _his2 <<= WrittenMaster($slaverapistx)>> is watching.
 		<<set _incestMood = "Top">>
 	<<else>>
 		<<if $slaverapistx.devotion > 95>>
@@ -242,7 +242,7 @@ Next, you see to $activeSlave.slaveName.
 		invite you into $activeSlave.slaveName's crowded pussy.
 		<<set $activeSlave.vaginalCount++, $vaginalTotal++>>
 	<</if>>
-	You take up the offer and penetrate $activeSlave.slaveName with your <<if $PC.dick > 0>>dick<<else>>strap-on<</if>>. With the added stimulus of penetrating a tight hole alongside $his dear <<WrittenMaster $slaverapistx>>, $he comes indecently hard, but no where near as hard as the completely overloaded $activeSlave.slaveName. All of you collapse into an exhausted, happy pile of flesh.
+	You take up the offer and penetrate $activeSlave.slaveName with your <<if $PC.dick > 0>>dick<<else>>strap-on<</if>>. With the added stimulus of penetrating a tight hole alongside $his dear <<= WrittenMaster($slaverapistx)>>, $he comes indecently hard, but no where near as hard as the completely overloaded $activeSlave.slaveName. All of you collapse into an exhausted, happy pile of flesh.
 
 
 <</if>>
diff --git a/src/pregmod/forceFeeding.tw b/src/pregmod/forceFeeding.tw
index 91823242fe5..40f0de860f8 100644
--- a/src/pregmod/forceFeeding.tw
+++ b/src/pregmod/forceFeeding.tw
@@ -309,7 +309,7 @@ and a little jiggle from $his gut.
 			Gulping, $he diligently opens up for the next serving.
 		<<else>>
 			$He still has another gallon to go and $he knows it,
-			but if <<WrittenMaster>> wants $him to be stuffed like a turkey, $he'll happily comply.
+			but if <<= WrittenMaster()>> wants $him to be stuffed like a turkey, $he'll happily comply.
 			$He wastes no time in opening up for your next helping.
 		<</if>>
 
diff --git a/src/pregmod/reTheSirenStrikesBack.tw b/src/pregmod/reTheSirenStrikesBack.tw
index 6e068bc73f0..1ca85e50052 100644
--- a/src/pregmod/reTheSirenStrikesBack.tw
+++ b/src/pregmod/reTheSirenStrikesBack.tw
@@ -41,7 +41,7 @@ Several weeks have passed since you gained the musical prodigy and you couldn't
 <<set _ssb = $slaves.find(function(s) { return s.origin == "She came to you to escape being sold to a cruel master after her producer informed her of her debt." && s.newGamePlus == 0 && s.fetish != "mindbroken" && s.fuckdoll == 0; })>>
 
 <<if def _ssb>>
-	<<Enunciate _ssb>>
+	<<run Enunciate(_ssb)>>
 	 Just as the coward at your feet finishes, _ssb.slaveName
 	 <<if canWalk(_ssb)>>
 		walks in,
diff --git a/src/pregmod/seFCTVshows.tw b/src/pregmod/seFCTVshows.tw
index 893654e3387..7d824cfe7f1 100644
--- a/src/pregmod/seFCTVshows.tw
+++ b/src/pregmod/seFCTVshows.tw
@@ -579,7 +579,7 @@ The offered price is <<print cashFormat($slaveCost)>>.
 	<<if $purchasedSagBGone == 1>>
 		You've already made the mistake of ordering the sham of a product. While it gave you a great excuse to fondle breasts, it's not like you needed one in the first place.
 		<<if $Concubine != 0 && canTalk($Concubine)>>
-			<<Enunciate $Concubine>>
+			<<run Enunciate($Concubine)>>
 			"I told you it wouldn't work, <<Master>>. Plu<<s>> you know you can touch the<<s>>e anytime!" $Concubine.slaveName shakes her chest at you.
 		<</if>>
 	<<elseif $showEleven > 1>>
@@ -596,7 +596,7 @@ The offered price is <<print cashFormat($slaveCost)>>.
 	<<else>>
 		You could always order a crate to play around with. Who knows, maybe it'll actually work?<<if $PC.dick == 1>> At the very least it should make for some decent lubricant for a titfuck.<</if>>
 		<<if $Concubine != 0>>
-			<<Enunciate $Concubine>>
+			<<run Enunciate($Concubine)>>
 			<<if $Concubine.boobs > 2000 && $Concubine.boobShape == "saggy">>
 				$Concubine.slaveName hefts her breasts and lets them flop back into their usual saggy position. <<if canTalk($Concubine)>>"Far too late for the<<s>>e ladie<<s>>. I doubt it will work though, product<<s>> like that never do."<<else>>She sighs doubtfully.<</if>>
 			<<elseif $Concubine.boobs > 2000>>
diff --git a/src/societies/aztec/slaveSacrifice.tw b/src/societies/aztec/slaveSacrifice.tw
index d3567c3d5a1..23bdf9fb91c 100644
--- a/src/societies/aztec/slaveSacrifice.tw
+++ b/src/societies/aztec/slaveSacrifice.tw
@@ -2,7 +2,7 @@
  
 <<set $nextButton = "Back to Main", $nextLink = "Main", $returnTo = "Main", $showEncyclopedia = 1, $encyclopedia = "Aztec Revivalism">>
 <<run SlavePronouns($activeSlave)>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<set _activeSlaveRepSacrifice = repGainSacrifice()>>
 
diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw
index 403165dcfd5..7c0d5c91357 100644
--- a/src/uncategorized/PESS.tw
+++ b/src/uncategorized/PESS.tw
@@ -69,7 +69,7 @@
 /* 000-250-006 */
 
 <<set $desc = SlaveTitle($activeSlave)>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<switch $PESSevent>>
 
@@ -273,7 +273,7 @@ She sees you examining at her, and looks back at you submissively, too tired to
 <<link "Make her the face of an ad campaign">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	You bring her out to a pretty balcony and put her through an extended photo shoot. She has no idea what you're planning, but she's skilled enough not to need to. She dons different outfits, changes makeup, and even shifts personas for the camera, producing hundreds of elegant, sensual and eye-catching images. You dismiss her back to the club when you're done, and she clearly thinks little of it. The next day, however, you walk her out onto the club in the morning. When the two of you, <<WrittenMaster>> and DJ, reach the main club, she stops short when she catches sight of the main billboard screen. There she is, resplendent and opulent, ten meters tall, giving the viewer a sultry look. She only breaks down for a single moment, but it's quite a moment: she cries rather inelegantly, <<if canTalk($activeSlave)>><<say sobb>>ing "I love you <<Master>>" into your ear<</if>> before giving you a @@.hotpink;wet kiss.@@ Then she runs over to stand under the screen, looking back at you to give you a @@.green;picture-perfect@@ imitation of the billboard she's standing under before laughing at herself a little.
+	You bring her out to a pretty balcony and put her through an extended photo shoot. She has no idea what you're planning, but she's skilled enough not to need to. She dons different outfits, changes makeup, and even shifts personas for the camera, producing hundreds of elegant, sensual and eye-catching images. You dismiss her back to the club when you're done, and she clearly thinks little of it. The next day, however, you walk her out onto the club in the morning. When the two of you, <<= WrittenMaster()>> and DJ, reach the main club, she stops short when she catches sight of the main billboard screen. There she is, resplendent and opulent, ten meters tall, giving the viewer a sultry look. She only breaks down for a single moment, but it's quite a moment: she cries rather inelegantly, <<if canTalk($activeSlave)>><<say sobb>>ing "I love you <<Master>>" into your ear<</if>> before giving you a @@.hotpink;wet kiss.@@ Then she runs over to stand under the screen, looking back at you to give you a @@.green;picture-perfect@@ imitation of the billboard she's standing under before laughing at herself a little.
 	<<set $cash -= 1000>>
 	<<set $rep += 500>>
 	<<set $activeSlave.devotion += 4>>
@@ -282,7 +282,7 @@ She sees you examining at her, and looks back at you submissively, too tired to
 <br><<link "Keep her to yourself for a week">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	Exclusivity and slavery interact in ways more than merely complex. $activeSlave.slaveName's most passionate devotees are devastated to find her nowhere but by your side for the whole week. Their reaction is mixed: awe, envy, resentment; but mostly @@.green;renewed respect@@ that she is your creature, and yours alone. A lesser slave might show off the particularity you show her, bringing shame on you by giving the impression that you care for her as more than a slave. She is no lesser slave, though, and thoroughly understands the fine line the two of you must walk as <<WrittenMaster>> and slave. She makes @@.hotpink;painstakingly@@ clear, through every public glance and gesture, that she is yours as a matter of @@.mediumaquamarine;trust@@ rather than as a matter of love.
+	Exclusivity and slavery interact in ways more than merely complex. $activeSlave.slaveName's most passionate devotees are devastated to find her nowhere but by your side for the whole week. Their reaction is mixed: awe, envy, resentment; but mostly @@.green;renewed respect@@ that she is your creature, and yours alone. A lesser slave might show off the particularity you show her, bringing shame on you by giving the impression that you care for her as more than a slave. She is no lesser slave, though, and thoroughly understands the fine line the two of you must walk as <<= WrittenMaster()>> and slave. She makes @@.hotpink;painstakingly@@ clear, through every public glance and gesture, that she is yours as a matter of @@.mediumaquamarine;trust@@ rather than as a matter of love.
 	<<set $activeSlave.devotion += 4>>
 	<<set $activeSlave.trust += 4>>
 	<<set $rep += 100>>
@@ -305,7 +305,7 @@ She sees you examining at her, and looks back at you submissively, too tired to
 <<link "Use her ass as she looks after herself">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	Wordlessly, you<<if ($PC.dick == 0)>> don a strap-on and<</if>> come up behind her; the first thing to touch her is <<if ($PC.dick == 0)>>the phallus<<else>>your rapidly hardening dick<</if>>, which pokes against <<if $activeSlave.height >= 170>>right up against her asshole, since she's nice and tall enough for standing anal. She gasps a little and angles her hips to accept your cock.<<else>>her lower back, since she's shorter than you. She gasps a little and hikes herself up on tiptoe to accept your cock.<</if>> As she feels you slide into her body she whimpers with devotion, turning her upper body so she can kiss her <<WrittenMaster>> while he sodomizes her. <<if !canTalk($activeSlave)>>She uses gestures to thank you for making her feel like the milkers do.<<else>>"<<S>>o thi<<s>> i<<s>> how it feel<<s>> when I do them," she whispers.<</if>> She uses the lotion to masturbate while she takes it, wincing whenever she loses control and squeezes her sore cock too hard. When you're done she sinks to the bathroom floor in a boneless pool of @@.hotpink;satisfied sexual exhaustion,@@ dripping ejaculate from her front<<if ($PC.dick == 0)>><<else>> and back<</if>>.
+	Wordlessly, you<<if ($PC.dick == 0)>> don a strap-on and<</if>> come up behind her; the first thing to touch her is <<if ($PC.dick == 0)>>the phallus<<else>>your rapidly hardening dick<</if>>, which pokes against <<if $activeSlave.height >= 170>>right up against her asshole, since she's nice and tall enough for standing anal. She gasps a little and angles her hips to accept your cock.<<else>>her lower back, since she's shorter than you. She gasps a little and hikes herself up on tiptoe to accept your cock.<</if>> As she feels you slide into her body she whimpers with devotion, turning her upper body so she can kiss her <<= WrittenMaster()>> while he sodomizes her. <<if !canTalk($activeSlave)>>She uses gestures to thank you for making her feel like the milkers do.<<else>>"<<S>>o thi<<s>> i<<s>> how it feel<<s>> when I do them," she whispers.<</if>> She uses the lotion to masturbate while she takes it, wincing whenever she loses control and squeezes her sore cock too hard. When you're done she sinks to the bathroom floor in a boneless pool of @@.hotpink;satisfied sexual exhaustion,@@ dripping ejaculate from her front<<if ($PC.dick == 0)>><<else>> and back<</if>>.
 	<<set $activeSlave.devotion += 4>>
 	<<set $activeSlave.analCount += 1>>
 	<<set $analTotal += 1>>
diff --git a/src/uncategorized/RECI.tw b/src/uncategorized/RECI.tw
index 31db4737d02..06227682a4f 100644
--- a/src/uncategorized/RECI.tw
+++ b/src/uncategorized/RECI.tw
@@ -51,7 +51,7 @@
 <</if>>
 /* 000-250-006 */
 
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<set $desc = SlaveTitle($activeSlave)>>
 
 <<switch $RECIevent>>
@@ -296,9 +296,9 @@ She looks pensive, and goes through two false starts before she clears her throa
 	$HeadGirl.slaveName guides her <<if $HeadGirl.dick == 0>>strap-on<<else>>cock<</if>> inside the <<if ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishKnown == 1)>>enthusiastic<<else>>compliant<</if>> $activeSlave.slaveName, who begins to ride it, enjoying both the <<if $activeSlave.dick > 0>>prostate<<else>>anal<</if>> stimulation and the feeling of her <<if $activeSlave.dick > 0>><<if ($activeSlave.hormoneBalance >= 100) || ($activeSlave.dickAccessory == "chastity")>>midsection trapped between her and <<elseif ($activeSlave.hormoneBalance >= 100) || ($activeSlave.balls == 0)>>erection trapped between her and <<else>>soft dick trapped between her and <</if>><<else>>pussy pressed against<</if>> $HeadGirl.slaveName. $HeadGirl.slaveName smacks the humping <<if $activeSlave.physicalAge > 30>>woman<<else>>girl<</if>>'s butt to get her to stop, and slides an index finger up her ass alongside the <<if $HeadGirl.dick == 0>>phallus<<else>>cock<</if>>. $activeSlave.slaveName shudders, and then begins to whine as $HeadGirl.slaveName pulls her sphincter wider.
 	<br><br>
 	"Plea<<s>>e," the slave begs incoherently as you press your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> against $HeadGirl.slaveName's finger. It's not clear whether she's begging you to DP her anus, or begging you not to, but whichever it is, $HeadGirl.slaveName withdraws her finger and you shove yourself inside. $activeSlave.slaveName jerks with discomfort and gives a gasping "Oh f-fuck-k" that <<if $activeSlave.anus > 2>>she repeats over and over<<else>>is followed by some minor struggling<</if>> as you begin to fuck her. From her angle, $HeadGirl.slaveName can't pound $activeSlave.slaveName quite as hard as you can, but she does her best. When you've both had your fun, extracted yourselves, and let the exhausted, gaped bitch collapse onto the floor, $HeadGirl.slaveName gives you a naughty wink.
-	<<Enunciate $HeadGirl>>
+	<<run Enunciate($HeadGirl)>>
 	"@@.hotpink;That wa<<s>> fun,@@ <<Master>>!" she <<say>>s. "<<Sh>>all we flip her over and go again?" 
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	"@@.hotpink;Plea<<s>>e nooo,@@" comes a quiet wail from the floor.
 	<<set $activeSlave.devotion += 2, $activeSlave.analCount += 1, $activeSlave.oralCount += 1>>
 	<<set $analTotal += 1, $oralTotal += 1>>
@@ -326,9 +326,9 @@ She looks pensive, and goes through two false starts before she clears her throa
 	$Concubine.slaveName guides her <<if $Concubine.dick == 0>>strap-on<<else>>cock<</if>> inside the <<if ($activeSlave.fetish == "buttslut") && ($activeSlave.fetishKnown == 1)>>enthusiastic<<else>>compliant<</if>> $activeSlave.slaveName, who begins to ride it, enjoying both the <<if $activeSlave.prostate > 0>>prostate<<else>>anal<</if>> stimulation and the feeling of her <<if $activeSlave.dick > 0>><<if ($activeSlave.hormoneBalance >= 100) || ($activeSlave.dickAccessory == "chastity")>>midsection trapped between her and <<elseif ($activeSlave.hormoneBalance >= 100) || ($activeSlave.balls == 0)>>erection trapped between her and <<else>>soft dick trapped between her and <</if>><<else>>pussy pressed against<</if>> $Concubine.slaveName. $Concubine.slaveName smacks the humping <<if $activeSlave.physicalAge > 30>>woman<<else>>girl<</if>>'s butt to get her to stop, and slides an index finger up her ass alongside the <<if $Concubine.dick == 0>>phallus<<else>>cock<</if>>. $activeSlave.slaveName shudders, and then begins to whine as $Concubine.slaveName pulls her sphincter wider.
 	<br><br>
 	"Plea<<s>>e," the slave begs incoherently as you press your <<if $PC.dick == 1>>dick<<else>>strap-on<</if>> against $Concubine.slaveName's finger. It's not clear whether she's begging you to DP her anus, or begging you not to, but whichever it is, $Concubine.slaveName withdraws her finger and you shove yourself inside. $activeSlave.slaveName jerks with discomfort and gives a gasping "Oh f-fuck-k" that <<if $activeSlave.anus > 2>>she repeats over and over<<else>>is followed by some minor struggling<</if>> as you begin to fuck her. From her angle, $Concubine.slaveName can't pound $activeSlave.slaveName quite as hard as you can, but she does her best. When you've both had your fun, extracted yourselves, and let the exhausted, gaped bitch collapse onto the floor, $Concubine.slaveName gives you a naughty wink.
-	<<Enunciate $Concubine>>
+	<<run Enunciate($Concubine)>>
 	"@@.hotpink;That wa<<s>> fun,@@ <<Master>>!" she <<say>>s. "<<Sh>>all we flip her over and go again?" 
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	"@@.hotpink;Plea<<s>>e nooo,@@" comes a quiet wail from the floor.
 	<<set $activeSlave.devotion += 2, $activeSlave.analCount += 1, $activeSlave.oralCount += 1>>
 	<<set $analTotal += 1, $oralTotal += 1>>
diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw
index baa5dba67ca..5fbe202a885 100644
--- a/src/uncategorized/REFI.tw
+++ b/src/uncategorized/REFI.tw
@@ -61,7 +61,7 @@
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check">>
 
 <<set $desc = SlaveTitle($activeSlave)>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<set _belly = bellyAdjective($activeSlave)>>
 
 
@@ -193,7 +193,7 @@ It seems she passed by while you were beating $subSlave.slaveName and found the
 
 $subSlave.slaveName gets inspected more regularly than your other slaves, since she's quite pregnant. Her pregnancy is progressing acceptably, but having her belly inspected gets her
 <<if $subSlave.pregSource == -1>>
-	extremely eager to feel more of her <<WrittenMaster $subSlave>>'s seed in her fertile <<if $subSlave.mpreg == 1>>rear<<else>>cunt<</if>>. $subSlave.slaveName has been a good girl,
+	extremely eager to feel more of her <<= WrittenMaster($subSlave)>>'s seed in her fertile <<if $subSlave.mpreg == 1>>rear<<else>>cunt<</if>>. $subSlave.slaveName has been a good girl,
 	<<if ($subSlave.mpreg == 1 && canDoAnal($subSlave) && $subSlave.anus > 0) || ($subSlave.mpreg == 0 && canDoVaginal($subSlave) && $subSlave.vagina > 0)>>
 		<<if $PC.belly >= 5000>>
 			so you take her 
@@ -227,7 +227,7 @@ $subSlave.slaveName gets inspected more regularly than your other slaves, since
 		<</if>>
 	<</if>>
 <<elseif $PC.dick == 1>>
-	extremely eager for a good fuck and there's no better dick than her <<WrittenMaster $subSlave>>'s. $subSlave.slaveName has been a good girl,
+	extremely eager for a good fuck and there's no better dick than her <<= WrittenMaster($subSlave)>>'s. $subSlave.slaveName has been a good girl,
 	<<if ($subSlave.mpreg == 1 && canDoAnal($subSlave) && $subSlave.anus > 0) || ($subSlave.mpreg == 0 && canDoVaginal($subSlave) && $subSlave.vagina > 0)>>
 		<<if $PC.belly >= 5000>>
 			so you take her 
@@ -1019,7 +1019,7 @@ There was a glint of envy <<if canSee($activeSlave)>>in her eyes when she saw<<e
 			"I would love to knock <<s>>omeone up, <<Master>>!"
 		<</if>>
 		<<if $activeSlave.toyHole == "dick">>
-			You push her onto the couch, line yourself up with her throbbing erection, and ask if she wants to impregnate a girl. She's almost beside herself, shuddering at the titillation, but before she can answer, you tell her that getting to use her dick is a very special reward for very good slaves, and you might give it to her one day - but that she doesn't deserve it yet. With that, you tease the tip of her penis with your pussy; a clear mistake, as this sets her over the edge. She can only gasp wordlessly over having just accidentally came in her <<WrittenMaster>>, something you take full advantage of. You clearly inform her that you were fertile. //Were.// You continue to tease the blooming impregnation fetishist with descriptions of how hard it will be for you so heavily laden with child and how she had better plan on taking responsibility. She can't take it and releases another spurt of cum, this time onto herself; 
+			You push her onto the couch, line yourself up with her throbbing erection, and ask if she wants to impregnate a girl. She's almost beside herself, shuddering at the titillation, but before she can answer, you tell her that getting to use her dick is a very special reward for very good slaves, and you might give it to her one day - but that she doesn't deserve it yet. With that, you tease the tip of her penis with your pussy; a clear mistake, as this sets her over the edge. She can only gasp wordlessly over having just accidentally came in her <<= WrittenMaster()>>, something you take full advantage of. You clearly inform her that you were fertile. //Were.// You continue to tease the blooming impregnation fetishist with descriptions of how hard it will be for you so heavily laden with child and how she had better plan on taking responsibility. She can't take it and releases another spurt of cum, this time onto herself; 
 			<<if isPlayerFertile($PC) && $activeSlave.ballType == "human" && $activeSlave.vasectomy == 0>>
 				<<= knockMeUp($PC, 20, 0, $activeSlave.ID, 1)>>
 				you aren't taking more chances with her.
@@ -1148,7 +1148,7 @@ There was a glint of envy <<if canSee($activeSlave)>>in her eyes when she saw<<e
 			<<else>>
 				"Of cour<<s>>e I find you attractive, <<Master>>, but the way your belly bulge<<s>> out <<s>>o far and the way it move<<s>> when you u<<s>>e u<<s>> ju<<s>>t... It turn<<s>> me on <<s>>o much lately!"
 			<</if>>
-			You waddle to the couch, slowly settle yourself onto it and spread your legs wide revealing your aching sex. She's almost beside herself, shuddering at the invitation, but before she can answer, you struggle forward and pull her onto you. She wastes no more time on words, instead trying her hardest to split her focus between filling your pussy and molesting your gravid swell. Mentally, you are in no position to control her actions, being in such a hormonal state, but she doesn't overstep her boundaries and dutifully brings you to orgasm. Even better, once she is satisfied, she still doesn't leave your vulnerable side, instead cozying up for some post-coital quality time with the her fecund <<WrittenMaster>>.
+			You waddle to the couch, slowly settle yourself onto it and spread your legs wide revealing your aching sex. She's almost beside herself, shuddering at the invitation, but before she can answer, you struggle forward and pull her onto you. She wastes no more time on words, instead trying her hardest to split her focus between filling your pussy and molesting your gravid swell. Mentally, you are in no position to control her actions, being in such a hormonal state, but she doesn't overstep her boundaries and dutifully brings you to orgasm. Even better, once she is satisfied, she still doesn't leave your vulnerable side, instead cozying up for some post-coital quality time with the her fecund <<= WrittenMaster()>>.
 			She has become @@.hotpink;much more devoted to you,@@ @@.mediumaquamarine;more trusting of you,@@ and @@.lightcoral;she has developed a pregnancy fetish.@@
 			<<set $activeSlave.devotion += 6, $activeSlave.trust += 4>>
 			<<set $activeSlave.penetrativeCount++, $penetrativeTotal++>>
@@ -1169,7 +1169,7 @@ There was a glint of envy <<if canSee($activeSlave)>>in her eyes when she saw<<e
 			<<elseif $PC.belly >= 10000>>
 				big
 			<</if>>
-			baby bump as you bounce. She takes an active roll in being used like this, not that it surprises you, but her interest in your middle is what you wanted to see. You've @@.lightcoral;driven her to embrace her pregnancy fetish.@@ As you dismount, you remind her that getting to sate her <<WrittenMaster>>'s growing libido like this is a very special reward for very good slaves, and it would do her well to remain in your favor. @@.hotpink;She wholeheartedly agrees.@@
+			baby bump as you bounce. She takes an active roll in being used like this, not that it surprises you, but her interest in your middle is what you wanted to see. You've @@.lightcoral;driven her to embrace her pregnancy fetish.@@ As you dismount, you remind her that getting to sate her <<= WrittenMaster()>>'s growing libido like this is a very special reward for very good slaves, and it would do her well to remain in your favor. @@.hotpink;She wholeheartedly agrees.@@
 			<<set $activeSlave.devotion += 6>>
 			<<set $activeSlave.penetrativeCount++, $penetrativeTotal++>>
 		<</if>>
diff --git a/src/uncategorized/REFS.tw b/src/uncategorized/REFS.tw
index 1ce3a544f3f..9277e9ee5f7 100644
--- a/src/uncategorized/REFS.tw
+++ b/src/uncategorized/REFS.tw
@@ -41,7 +41,7 @@
 <<set $nextButton = "Continue", $nextLink = "RIE Eligibility Check", $returnTo = "RIE Eligibility Check">>
 
 <<set $desc = SlaveTitle($activeSlave)>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<switch $REFSevent>>
 
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 31249354690..d40a72447e3 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -54,7 +54,7 @@
 </span>
 
 <<set $desc = SlaveTitle($activeSlave)>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<set _belly = bellyAdjective($activeSlave)>>
 
 <<switch $RESSevent>>
@@ -137,7 +137,7 @@ Finishing your work, you lean back for a break well deserved break. Your peace i
 	<</if>>
 	in a desperate attempt at taking control.
 	<<if $HeadGirl != 0>>
-		<<Enunciate $HeadGirl>>
+		<<run Enunciate($HeadGirl)>>
 		You jump in surprise as $HeadGirl.slaveName tackles her off you and to the floor
 		<<if $HeadGirl.combatSkill > 0>>
 			where she twists her arm in an arm hold until the rebellious slave stops struggling.
@@ -468,7 +468,7 @@ provides just enough stimulation that she climaxes. Her hands ball into fists at
 	<</if>>
 	of girlcum out onto her legs and the floor.
 <</if>>
-She stands up straight, but this brings her <<if canSee($activeSlave)>>$activeSlave.eyeColor eyes up to gaze straight into yours<<else>>face to face with you<</if>>, and the mixed release, humiliation, and naughtiness of having climaxed prematurely right in front of her <<WrittenMaster>> produces an aftershock, adding to the mess on the floor.
+She stands up straight, but this brings her <<if canSee($activeSlave)>>$activeSlave.eyeColor eyes up to gaze straight into yours<<else>>face to face with you<</if>>, and the mixed release, humiliation, and naughtiness of having climaxed prematurely right in front of her <<= WrittenMaster()>> produces an aftershock, adding to the mess on the floor.
 
 <<case "devoted exhibition">>
 
@@ -713,7 +713,7 @@ the doorframe to either side of her. She reaches out to press her palms against
 <</if>>
 form. She's good at this, so you let her continue; <<if $activeSlave.clothes != "none">>her clothes rapidly form a pile at her feet<<else>>she's already naked<</if>>. She begins to buck and bend, making sure to show you that she's
 <<if ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>>
-	limp and submissive for her <<WrittenMaster>>.
+	limp and submissive for her <<= WrittenMaster()>>.
 <<elseif $activeSlave.dick > 0>>
 	rock hard at the prospect of getting
 	<<if ($activeSlave.toyHole == "dick" || $sexualOpeness == 1) && canPenetrate($activeSlave)>>
@@ -721,15 +721,15 @@ form. She's good at this, so you let her continue; <<if $activeSlave.clothes !=
 	<<else>>
 		fucked by
 	<</if>>
-	her <<WrittenMaster>>.
+	her <<= WrittenMaster()>>.
 <<elseif $activeSlave.clit > 0>>
-	so horny for her <<WrittenMaster>> she's got a stiffly prominent clit.
+	so horny for her <<= WrittenMaster()>> she's got a stiffly prominent clit.
 <<elseif $activeSlave.labia > 1>>
-	so horny for her <<WrittenMaster>> her dangling petals are swollen and moist.
+	so horny for her <<= WrittenMaster()>> her dangling petals are swollen and moist.
 <<elseif $activeSlave.vagina == -1>>
-	ready for her <<WrittenMaster>>.
+	ready for her <<= WrittenMaster()>>.
 <<else>>
-	wet for her <<WrittenMaster>>.
+	wet for her <<= WrittenMaster()>>.
 <</if>>
 <br><br>
 Finally, she pulls herself over to one side of the doorframe, <<if $activeSlave.belly >= 5000>>leaning far forward to accommodate her gravid body and<</if>> clasping it like a lover.
@@ -773,15 +773,15 @@ As if the invitation wasn't already blindingly clear, she reaches a hand down wi
 She pulls the buttock closest to you aside, giving you a clear view of her
 <<if canDoVaginal($activeSlave)>>
 	<<if $activeSlave.vagina == 10>>
-		gaping birth hole<<if $activeSlave.belly >= 100000>> and nearly prolapsing cervix<</if>>. She runs her fingers around its edge before sinking her fist into it and preparing herself like a good slavegirl for her <<WrittenMaster>>.
+		gaping birth hole<<if $activeSlave.belly >= 100000>> and nearly prolapsing cervix<</if>>. She runs her fingers around its edge before sinking her fist into it and preparing herself like a good slavegirl for her <<= WrittenMaster()>>.
 	<<elseif $activeSlave.vagina > 2>>
-		lewd, well traveled pussy. She traces a finger around it before sinking her hand into it and spreading herself wide like a good slavegirl for her <<WrittenMaster>>.
+		lewd, well traveled pussy. She traces a finger around it before sinking her hand into it and spreading herself wide like a good slavegirl for her <<= WrittenMaster()>>.
 	<<elseif $activeSlave.vagina > 1>>
-		loose pussy. She traces a finger around it before spreading herself wide like a good slavegirl for her <<WrittenMaster>>.
+		loose pussy. She traces a finger around it before spreading herself wide like a good slavegirl for her <<= WrittenMaster()>>.
 	<<elseif $activeSlave.vagina > 0>>
-		tight pussy. She traces a finger around it before spreading herself like a good slavegirl for her <<WrittenMaster>>.
+		tight pussy. She traces a finger around it before spreading herself like a good slavegirl for her <<= WrittenMaster()>>.
 	<<else>>
-		virgin pussy. She traces a finger around it before spreading herself like a good slavegirl for her <<WrittenMaster>>.
+		virgin pussy. She traces a finger around it before spreading herself like a good slavegirl for her <<= WrittenMaster()>>.
 	<</if>>
 <<else>>
 	<<if $activeSlave.anus > 2>>
@@ -791,7 +791,7 @@ She pulls the buttock closest to you aside, giving you a clear view of her
 	<<else>>
 		tight anus.
 	<</if>>
-	She clenches it and relaxes it, clenches it and relaxes it, winking her butthole at her <<WrittenMaster>> like a good anal slave.
+	She clenches it and relaxes it, clenches it and relaxes it, winking her butthole at her <<= WrittenMaster()>> like a good anal slave.
 <</if>>
 
 <<case "resistant shower">>
@@ -859,7 +859,7 @@ One morning, despite the fact that she is not allowed to speak without being spo
 	<<else>>
 		lisp,
 	<</if>>
-	"I'm tired, can I have the day off?" She didn't even call you <<WrittenMaster>>.
+	"I'm tired, can I have the day off?" She didn't even call you <<= WrittenMaster()>>.
 <<else>>
 	boldly, "I'm tired, can I have the day off, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>?"
 <</if>>
@@ -1052,7 +1052,7 @@ As you watch, her sleeping struggles against the sheet <<if $activeSlave.boobs >
 <<else>>
 	little sex toy
 <</if>>
-she is. You've been busy and haven't used her for a while, and since she's accepted her place as a helpless living fucktoy, she's gotten quite aroused with nothing to do but lie there and watch her <<WrittenMaster>> work. It's not like she can touch herself any more.
+she is. You've been busy and haven't used her for a while, and since she's accepted her place as a helpless living fucktoy, she's gotten quite aroused with nothing to do but lie there and watch her <<= WrittenMaster()>> work. It's not like she can touch herself any more.
 <<if ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>>
 	Her caged cock reduces her to a set of holes in a limbless torso.
 <<elseif ($activeSlave.dick > 0) && !canAchieveErection($activeSlave)>>
@@ -2833,7 +2833,7 @@ Coming to a stop, she <<if $activeSlave.height > 190>>bends the long, long way d
 <br><br>
 
 <<if !canTalk($activeSlave)>>
-	She mouths 'I love you, <<WrittenMaster>>,' holding her hands out in front of you both to say it in sign language at the same time.
+	She mouths 'I love you, <<= WrittenMaster()>>,' holding her hands out in front of you both to say it in sign language at the same time.
 <<else>>
 	"I love you, <<Master>>," she whispers.
 <</if>>
@@ -4199,7 +4199,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 	<<else>>
 		her massive tits stop her from bringing herself too close to you as you take her.
 	<</if>>
-	She enjoys herself immensely, but she loses it again when she feels your seed in her, realizing that she will find herself swelling with your child over the coming months. She has become @@.hotpink;more submissive@@ to your will now that her very first egg has been fertilized by her <<WrittenMaster>>.
+	She enjoys herself immensely, but she loses it again when she feels your seed in her, realizing that she will find herself swelling with your child over the coming months. She has become @@.hotpink;more submissive@@ to your will now that her very first egg has been fertilized by her <<= WrittenMaster()>>.
 	<<set $activeSlave.devotion += 5, $activeSlave.preg = 1, $activeSlave.pregWeek = 1, $activeSlave.pregKnown = 1, $activeSlave.pregSource = -1>>
 	<<set $activeSlave.pregType = setPregType($activeSlave)>>
 	<<set WombImpregnate($activeSlave, $activeSlave.pregType, -1, 1)>>
@@ -4348,7 +4348,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 	<<elseif $activeSlave.dick == 6>>
 		huge dick.
 	<</if>>
-	You push her back down as you straddle her cock, lining it up before lowering <<if $PC.belly >= 1500>>your pregnant body until she delightfully penetrates you<<else>>yourself onto her needy prick<</if>>. You slowly ride her dick, instructing her the proper way to thrust into you and how to adequately support your weight. Once she gets the hand of things, you dismount and lie down on the couch, legs spread, beckoning her into you. She gingerly inserts her cock<<if $activeSlave.belly >= 100000>> while you do your best to manage her _belly stomach<</if>> and begins thrusting, slowly at first, before getting the hang of things and speeding up<<if $PC.dick == 1>>, your own neglected dick bobbing along to her thrusts<</if>>. As soon as you feel her beginning to tense you <<if $PC.pregKnown == 1>>tell her it's safe to cum in you, you're already pregnant<<else>>order her to pull out<</if>>. The poor girl is so caught up in her lust, she can't stop thrusting. Before you can rectify this, she pushes you over the edge and gushes deep into you as you climax<<if $PC.dick == 1>> and spray your own cum <<if $PC.belly >= 5000 && $activeSlave.belly >= 5000>>into the cramped space between your swollen bodies<<elseif $activeSlave.belly >= 100000>>across your belly and the underside of hers<<else>>across her chest<</if>><</if>>. She gingerly pulls herself from you, apologizes @@.hotpink;meekly@@ for losing control, and snuggles up next to you. Cumming in her <<WrittenMaster>>'s pussy as her first time builds @@.mediumaquamarine;a special bond@@ with you.
+	You push her back down as you straddle her cock, lining it up before lowering <<if $PC.belly >= 1500>>your pregnant body until she delightfully penetrates you<<else>>yourself onto her needy prick<</if>>. You slowly ride her dick, instructing her the proper way to thrust into you and how to adequately support your weight. Once she gets the hand of things, you dismount and lie down on the couch, legs spread, beckoning her into you. She gingerly inserts her cock<<if $activeSlave.belly >= 100000>> while you do your best to manage her _belly stomach<</if>> and begins thrusting, slowly at first, before getting the hang of things and speeding up<<if $PC.dick == 1>>, your own neglected dick bobbing along to her thrusts<</if>>. As soon as you feel her beginning to tense you <<if $PC.pregKnown == 1>>tell her it's safe to cum in you, you're already pregnant<<else>>order her to pull out<</if>>. The poor girl is so caught up in her lust, she can't stop thrusting. Before you can rectify this, she pushes you over the edge and gushes deep into you as you climax<<if $PC.dick == 1>> and spray your own cum <<if $PC.belly >= 5000 && $activeSlave.belly >= 5000>>into the cramped space between your swollen bodies<<elseif $activeSlave.belly >= 100000>>across your belly and the underside of hers<<else>>across her chest<</if>><</if>>. She gingerly pulls herself from you, apologizes @@.hotpink;meekly@@ for losing control, and snuggles up next to you. Cumming in her <<= WrittenMaster()>>'s pussy as her first time builds @@.mediumaquamarine;a special bond@@ with you.
 	<<if $PC.preg == 0 && $PC.pregWeek == 0>>
 		You aren't on contraceptives right now; her first time may be more fruitful than she realizes.
 	<</if>>
@@ -4951,7 +4951,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 		<<if $Concubine != 0>>
 			with $Concubine.slaveName trying her best to drain your swollen belly.
 			<<if canTalk($Concubine) && $Concubine.amp != 1>>
-				<<Enunciate $Concubine>>
+				<<run Enunciate($Concubine)>>
 				"I'm <<s>>o <<s>>orry <<Master>>... I <<s>>tepped out for a minute and thi<<s>> happen<<s>>." You ask what happened to $activeSlave.slaveName. "<<Sh>>e'<<s>> bound and gagged now, <<sh>>e won't hurt you anymore. But what are you going to do with that belly? I won't tell anyone what happened, but we've got to get rid of it."
 			<<else>>
 				She gestures her apologies and points to the bound and gagged $activeSlave.slaveName, before expressing her concerns about your visible state.
@@ -4960,7 +4960,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 		<<elseif $Bodyguard != 0>>
 			with $Bodyguard.slaveName sobbing over your swollen belly.
 			<<if canTalk($Bodyguard)>>
-				<<Enunciate $Bodyguard>>
+				<<run Enunciate($Bodyguard)>>
 				"I'm <<s>>o <<s>>orry <<Master>>... I <<s>>tepped out for a minute and thi<<s>> happen<<s>>." You ask what happened to $activeSlave.slaveName. "<<Sh>>e'<<s>> bound and gagged now, <<sh>>e won't hurt you again." She sniffles, "But plea<<s>>e puni<<sh>> me too. Thi<<s>> i<<s>> all my fault."
 			<<else>>
 				She gestures her apologies and points to the bound and gagged $activeSlave.slaveName, before begging you to punish her too for her failures as your guardian.
@@ -5000,7 +5000,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 			<<else>>
 				Her face lightens at your words. It seems you told her just what she wanted to hear. She gives her thanks and
 			<</if>>
-			leaves your office @@.hotpink;slightly more faith@@ in her <<WrittenMaster>>.
+			leaves your office @@.hotpink;slightly more faith@@ in her <<= WrittenMaster()>>.
 			<<set $activeSlave.trust += 5>>
 		<<else>>
 			<<if canTalk($activeSlave)>>
@@ -5085,7 +5085,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 	<<replace "#result">>
 		All that she should be worried about is serving you, not inconsequential changes to her body.
 		<<if $activeSlave.behavioralQuirk == "insecure">>
-			That's all she needed to hear. @@.hotpink;All's well and good@@ if <<WrittenMaster>> says so.
+			That's all she needed to hear. @@.hotpink;All's well and good@@ if <<= WrittenMaster()>> says so.
 			<<set $activeSlave.devotion += 3>>
 		<<else>>
 			She nods in acceptance and silently heads on her way. Her thoughts of your indifference @@.gold;written across her face.@@
@@ -6217,7 +6217,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 <<link "Slaveowners do not hold their slaves' hands">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	<<if canSee($activeSlave)>>You shake your head sternly<<else>>You say nothing but don't take her hand<</if>>. She looks neither afraid nor crushed, but simply gazes properly at you, clearly waiting for punishment. When none comes, she accepts that it was not culpably wrong of her to ask, but that the answer is no. She leaves the balcony feeling reassured about her place in $arcologies[0].name - a little more independent of her <<WrittenMaster>> and yet a little more inured to the reality of his control. She is a proper devoted slave and will remain so.
+	<<if canSee($activeSlave)>>You shake your head sternly<<else>>You say nothing but don't take her hand<</if>>. She looks neither afraid nor crushed, but simply gazes properly at you, clearly waiting for punishment. When none comes, she accepts that it was not culpably wrong of her to ask, but that the answer is no. She leaves the balcony feeling reassured about her place in $arcologies[0].name - a little more independent of her <<= WrittenMaster()>> and yet a little more inured to the reality of his control. She is a proper devoted slave and will remain so.
 	<</replace>>
 <</link>>
 <br><<link "Hold her hand">>
@@ -7406,7 +7406,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<replace "#result">>
 	You drag a fearful, embarrassed<<if $activeSlave.belly >= 1500>>, <<if $activeSlave.bellyPreg >= 0>>pregnant<<else>>swollen<</if>><</if>> and totally naked $activeSlave.slaveName out into a public hall. A small knot of passersby gather around grinning, enjoying the sight of her nakedness and anticipating a show. To her surprise, you order her to take a few minutes to recount her life story. She's hesitant at first, but obeys, only realizing as she nears the present day what an abject story of degradation and humiliation her life truly is. She continues shakily, describing in brief her current life, crying a little and trembling with arousal. At a whispered command from you, she concludes
 	<<if !canTalk($activeSlave)>>
-		in embarrassed gestures, "and now my <<WrittenMaster>> is going to fuck my worthless body in public."
+		in embarrassed gestures, "and now my <<= WrittenMaster()>> is going to fuck my worthless body in public."
 	<<else>>
 		"and now my <<Master>> i<<s>> going to fuck my worthle<<ss>> body in public."
 	<</if>>
@@ -8437,7 +8437,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		She coos a wordless thanks,
 	<</if>>
-	and she starts humping away. If she thought you were too tired for sex, you certainly @@.hotpink;impress her;@@ as you spend an hour exhausting yourself against her vagina, she wonders whether her <<WrittenMaster>> is ever too tired to fuck.
+	and she starts humping away. If she thought you were too tired for sex, you certainly @@.hotpink;impress her;@@ as you spend an hour exhausting yourself against her vagina, she wonders whether her <<= WrittenMaster()>> is ever too tired to fuck.
 	<<set $activeSlave.devotion += 4>>
 	<<= VaginalVCheck()>>
 	<</replace>>
@@ -8498,7 +8498,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		She coos a wordless thanks,
 	<</if>>
-	and she starts humping away. If she thought you were too tired for sex, you certainly @@.hotpink;impress her;@@ as you spend an hour exhausting yourself against her asshole, she wonders whether her <<WrittenMaster>> is ever too tired to fuck a butt.
+	and she starts humping away. If she thought you were too tired for sex, you certainly @@.hotpink;impress her;@@ as you spend an hour exhausting yourself against her asshole, she wonders whether her <<= WrittenMaster()>> is ever too tired to fuck a butt.
 	<<set $activeSlave.devotion += 4>>
 	<<= AnalVCheck()>>
 	<</replace>>
@@ -8807,7 +8807,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <<link "No, and her role is to suck dick and take it in the ass">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You patiently explain that you've decided to use her as an oral and anal slave, and leave her pussy unfucked. She's unsurprised, but she understands your decision. You usually fuck slaves during your inspection, and you don't exempt her from this, but you do let her take it easy. Rather than facefucking her you let her suckle you gently. Rather that a hard buttfuck, you take her to the couch and gently spoon her with your <<if $PC.dick == 0>>strap-on<<else>>dick<</if>> up her ass while making out with her and playing with her nipples. She understands your forbearance and @@.hotpink;appreciates how kind her <<WrittenMaster>> is.@@
+	You patiently explain that you've decided to use her as an oral and anal slave, and leave her pussy unfucked. She's unsurprised, but she understands your decision. You usually fuck slaves during your inspection, and you don't exempt her from this, but you do let her take it easy. Rather than facefucking her you let her suckle you gently. Rather that a hard buttfuck, you take her to the couch and gently spoon her with your <<if $PC.dick == 0>>strap-on<<else>>dick<</if>> up her ass while making out with her and playing with her nipples. She understands your forbearance and @@.hotpink;appreciates how kind her <<= WrittenMaster()>> is.@@
 	<<set $activeSlave.devotion += 4, $activeSlave.oralCount++, $oralTotal++>>
 	<<= AnalVCheck()>>
 	<</replace>>
@@ -8816,7 +8816,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <<link "No, and her role is to suck dick and like it">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You patiently explain that you've decided to use her as an oral slave, since her ass is off-limits, and leave her pussy unfucked. She's unsurprised, but she understands your decision. You usually fuck slaves during your inspection, and you don't exempt her from this, but you do let her take it easy. Rather than facefucking her you let her suckle you gently, calmly patting her head as she does. She understands your forbearance and @@.hotpink;appreciates how kind her <<WrittenMaster>> is.@@
+	You patiently explain that you've decided to use her as an oral slave, since her ass is off-limits, and leave her pussy unfucked. She's unsurprised, but she understands your decision. You usually fuck slaves during your inspection, and you don't exempt her from this, but you do let her take it easy. Rather than facefucking her you let her suckle you gently, calmly patting her head as she does. She understands your forbearance and @@.hotpink;appreciates how kind her <<= WrittenMaster()>> is.@@
 	<<set $activeSlave.devotion += 4, $activeSlave.oralCount++, $oralTotal++>>
 	<</replace>>
 <</link>>
@@ -8824,7 +8824,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <br><<link "No, and she shouldn't have asked">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	Despite being allowed to ask questions she should not question her <<WrittenMaster>>'s choices about her sexual duties. To communicate the point, you<<if $PC.dick == 0>> don a strap-on and<</if>> order her to lie on the desk, on her back, with her throat slack for penetration.
+	Despite being allowed to ask questions she should not question her <<= WrittenMaster()>>'s choices about her sexual duties. To communicate the point, you<<if $PC.dick == 0>> don a strap-on and<</if>> order her to lie on the desk, on her back, with her throat slack for penetration.
 	<<if canDoAnal($activeSlave)>>
 		After a good long throatfuck that leaves her gasping and moaning, you flip her over and fuck her ass until she's squealing with each thrust.
 	<<else>>
@@ -8843,13 +8843,13 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <br><<link "Yes, the time has come">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	She framed her desire to lose her virginity in businesslike terms, but her reaction to your assent suggests that she also wouldn't mind having vanilla sex with her <<WrittenMaster>>. You're already quite
+	She framed her desire to lose her virginity in businesslike terms, but her reaction to your assent suggests that she also wouldn't mind having vanilla sex with her <<= WrittenMaster()>>. You're already quite
 	<<if $PC.dick == 0>>
 		turned on by the idea, so you pull on a strap-on, pull her over to the couch<<if ["chastity belt", "combined chastity"].includes($activeSlave.vaginalAccessory)>>, unfasten her chastity belt<</if>>,
 	<<else>>
 		hard, so you just lie down with her on the couch<<if ["chastity belt", "combined chastity"].includes($activeSlave.vaginalAccessory)>>, unfasten her chastity belt,<</if>>
 	<</if>>
-	and have gentle vaginal sex in the missionary position <<if $PC.vagina == 1>><<if $PC.dick == 1>>, your own pussy moving back and forth gently at the base of your dick as you fuck her<</if>><</if>>. She gasps at the first penetration, but you take it slowly and lavish attention on her lips, breasts, and nipples. Soon she's shamelessly enjoying herself. Her first vaginal sex is crowned with an abdominal-clenching orgasm. She @@.hotpink;adores her kind <<WrittenMaster>>.@@
+	and have gentle vaginal sex in the missionary position <<if $PC.vagina == 1>><<if $PC.dick == 1>>, your own pussy moving back and forth gently at the base of your dick as you fuck her<</if>><</if>>. She gasps at the first penetration, but you take it slowly and lavish attention on her lips, breasts, and nipples. Soon she's shamelessly enjoying herself. Her first vaginal sex is crowned with an abdominal-clenching orgasm. She @@.hotpink;adores her kind <<= WrittenMaster()>>.@@
 	<<set $activeSlave.devotion += 10, $activeSlave.vaginalCount++, $activeSlave.vagina = 1, $vaginalTotal++>>
 	<<if ["chastity belt", "combined chastity"].includes($activeSlave.vaginalAccessory)>><<set $activeSlave.vaginalAccessory = "none">><</if>>
 	<<if $PC.dick == 1 && $activeSlave.eggType == "human" && canGetPregnant($activeSlave)>>
@@ -9353,7 +9353,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <<link "No, reassure her that she doesn't need to be a slut">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You kindly explain that you've decided to save her virginity - for now. She looks slightly down-hearted and tries to smile nonetheless, but finds herself swept off her <<if $activeSlave.amp == 1>>stumps<<else>>feet<</if>> and<<if $activeSlave.bellyPreg >= 5000>> gently<</if>> deposited on the couch. She gasps with surprise when she finds herself being teased, fondled, and massaged rather than outright used. In no time at all she's pressing her whole<<if $activeSlave.belly >= 5000>> <<if $activeSlave.bellyPreg >= 3000>>gravid<<else>>rounded<</if>><</if>> body against you and shivering with delight. She shudders, almost uncontrollably, when you grind your <<if $PC.dick == 0>>clitoris<<else>>dick<</if>> against her moistened, wet pussy between her thighs, taking extra care not to penetrate the willing slave. She leaves your office feeling @@.hotpink;very close to her <<WrittenMaster>> indeed,@@ and seems to have forgotten her unfucked vagina, for now.
+	You kindly explain that you've decided to save her virginity - for now. She looks slightly down-hearted and tries to smile nonetheless, but finds herself swept off her <<if $activeSlave.amp == 1>>stumps<<else>>feet<</if>> and<<if $activeSlave.bellyPreg >= 5000>> gently<</if>> deposited on the couch. She gasps with surprise when she finds herself being teased, fondled, and massaged rather than outright used. In no time at all she's pressing her whole<<if $activeSlave.belly >= 5000>> <<if $activeSlave.bellyPreg >= 3000>>gravid<<else>>rounded<</if>><</if>> body against you and shivering with delight. She shudders, almost uncontrollably, when you grind your <<if $PC.dick == 0>>clitoris<<else>>dick<</if>> against her moistened, wet pussy between her thighs, taking extra care not to penetrate the willing slave. She leaves your office feeling @@.hotpink;very close to her <<= WrittenMaster()>> indeed,@@ and seems to have forgotten her unfucked vagina, for now.
 	<<set $activeSlave.devotion += 4>>
 	<</replace>>
 <</link>>
@@ -9403,7 +9403,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		<<if $PC.dick == 0>>You ride her face,<<else>>You push your dick<<if $PC.vagina == 1>> and as much of the upper part of your pussy as you can manage<</if>> between her thighs for some frottage,<</if>> lavishing attention on her nipples to ensure that she has fun, too.
 	<</if>>
-	She leaves your office feeling @@.hotpink;very close to her <<WrittenMaster>> indeed,@@ and seems to have forgotten her unfucked butthole for now.
+	She leaves your office feeling @@.hotpink;very close to her <<= WrittenMaster()>> indeed,@@ and seems to have forgotten her unfucked butthole for now.
 	<<set $activeSlave.devotion += 4>>
 	<<if $activeSlave.vagina > 0 && canDoVaginal($activeSlave)>>
 		<<= VaginalVCheck()>>
@@ -10846,7 +10846,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		Perversely, this milk cow has no pussy, so you spit on her ass and sodomize her<<if $PC.dick == 0>> with a strap-on<</if>> instead as she bucks and grinds against the chair.
 		<<= AnalVCheck()>>
 	<</if>>
-	When she comes, the milkers detect her orgasm to your fucking and shunt the milk into different reservoirs. Though you've never been able to taste much difference, there's a belief out there that 'milk-cum,' the squirts of milk a slave milk girl produces when climaxing with her <<WrittenMaster>>, have special aphrodisiac powers. @@.yellowgreen;It can be sold at a special premium.@@ Naturally, @@.hotpink;her devotion to you has also increased.@@
+	When she comes, the milkers detect her orgasm to your fucking and shunt the milk into different reservoirs. Though you've never been able to taste much difference, there's a belief out there that 'milk-cum,' the squirts of milk a slave milk girl produces when climaxing with her <<= WrittenMaster()>>, have special aphrodisiac powers. @@.yellowgreen;It can be sold at a special premium.@@ Naturally, @@.hotpink;her devotion to you has also increased.@@
 	<</replace>>
 	<<set $cash += 100>>
 	<<set $activeSlave.devotion += 4>>
@@ -11300,7 +11300,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <br><<link "Teach her a new meaning of birthdays">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You explain at length that she will feel this way once a year, and that this day is special. On the day that makes her feel this way, she is to cover her nipples with whipped cream, add a pattern with chocolate syrup, garnish each with a cherry, and present herself to her <<WrittenMaster>>. She nods in understanding and gets to work. When she's done, you help her reach the confection on her left breast herself while you eat the one on her right. When you're done, she @@.hotpink;kisses you impulsively@@. She tastes like whipped cream and chocolate.
+	You explain at length that she will feel this way once a year, and that this day is special. On the day that makes her feel this way, she is to cover her nipples with whipped cream, add a pattern with chocolate syrup, garnish each with a cherry, and present herself to her <<= WrittenMaster()>>. She nods in understanding and gets to work. When she's done, you help her reach the confection on her left breast herself while you eat the one on her right. When you're done, she @@.hotpink;kisses you impulsively@@. She tastes like whipped cream and chocolate.
 	<<set $activeSlave.devotion += 4>>
 	<</replace>>
 <</link>>
@@ -11317,7 +11317,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <<link "Let her have labiaplasty to resolve the issue">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	When you assent, she cheers up immediately, looking remarkably happy for a girl who's just learned her vagina is about to have a surgical operation performed on it. Then again, having those huge pussylips constantly getting in her way when she runs must be extremely uncomfortable, so it's not shocking she would consider a radical solution to her problem. When she exits the remote surgery, she looks @@.red;sorer than ever,@@ of course, but she @@.hotpink;smiles gratefully@@ at you the next time she <<if canSee($activeSlave)>>sees<<else>>meets<</if>> you, and lets you know she's really looking forward to recovering enough for her to take her beloved <<WrittenMaster>> into her @@.orange;newly streamlined cunt.@@
+	When you assent, she cheers up immediately, looking remarkably happy for a girl who's just learned her vagina is about to have a surgical operation performed on it. Then again, having those huge pussylips constantly getting in her way when she runs must be extremely uncomfortable, so it's not shocking she would consider a radical solution to her problem. When she exits the remote surgery, she looks @@.red;sorer than ever,@@ of course, but she @@.hotpink;smiles gratefully@@ at you the next time she <<if canSee($activeSlave)>>sees<<else>>meets<</if>> you, and lets you know she's really looking forward to recovering enough for her to take her beloved <<= WrittenMaster()>> into her @@.orange;newly streamlined cunt.@@
 	<<set $activeSlave.devotion += 4, $activeSlave.health -= 10, $activeSlave.labia = 0>>
 	<</replace>>
 <</link>>
@@ -11385,13 +11385,13 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		your manly chest.
 	<</if>>
-	Before long being kissed and held by her beloved <<WrittenMaster>> has her playing the slut in your arms, and she backs against the wall before wrapping her legs around your middle to bring her pussy against your
+	Before long being kissed and held by her beloved <<= WrittenMaster()>> has her playing the slut in your arms, and she backs against the wall before wrapping her legs around your middle to bring her pussy against your
 	<<if $PC.dick == 0>>
 		own.<<if $activeSlave.belly >= 5000>> You move your hands under her to better support her <<if $activeSlave.bellyPreg >= 3000>>gravid bulk<<else>>distended body<</if>>.<</if>> She moans in pain as you scissor against her sore pussy,
 	<<else>>
 		stiff prick.<<if $activeSlave.preg > 20>> You move your hands under her to better support her <<if $activeSlave.bellyPreg >= 3000>>gravid bulk<<else>>distended body<</if>>.<</if>> She gasps in pain as you press past her sore pussylips,
 	<</if>>
-	but before long she's grinding against you with her back propped against the wall, using the embrace of her strong legs to provide the power for a vigorous fuck. When she finally slides down the wall to stand again, a look of @@.hotpink;profound pleasure@@ on her face, she lets you know that she understands your meaning and that she'll put up with sore petals, since her <<WrittenMaster>> prefers her that way.
+	but before long she's grinding against you with her back propped against the wall, using the embrace of her strong legs to provide the power for a vigorous fuck. When she finally slides down the wall to stand again, a look of @@.hotpink;profound pleasure@@ on her face, she lets you know that she understands your meaning and that she'll put up with sore petals, since her <<= WrittenMaster()>> prefers her that way.
 	<<= VaginalVCheck()>>
 	<<set $activeSlave.devotion += 4>>
 	<</replace>>
@@ -11551,7 +11551,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		you,
 	<</if>>
-	knowing that her <<WrittenMaster>> can never and will never reciprocate, but @@.hotpink;accepting@@ that the loving physical contact is a tremendously kind gesture for a master to make.
+	knowing that her <<= WrittenMaster()>> can never and will never reciprocate, but @@.hotpink;accepting@@ that the loving physical contact is a tremendously kind gesture for a master to make.
 	<<set $activeSlave.devotion += 4>>
 	<</replace>>
 <</link>>
@@ -11565,7 +11565,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <br><<link "Keep her quiet but spend some time with her">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You announce that you're finished with business for the day, and feel like some quiet time. She cannot keep <<if canSee($activeSlave)>>a gleam of humor out of her eye<<else>>the corners of her lips from rising slightly<</if>> at hearing 'quiet time,' and she <<if $activeSlave.amp == 1>>presents herself to be carried<<else>>follows you<</if>> happily enough. When she <<if canSee($activeSlave)>>sees<<else>>realizes<</if>> you're headed to your bedroom she begins to anticipate her <<WrittenMaster>>'s <<if $PC.dick == 0>>strap-on<<else>>cock<</if>>, but is surprised to find that instead of using her you simply
+	You announce that you're finished with business for the day, and feel like some quiet time. She cannot keep <<if canSee($activeSlave)>>a gleam of humor out of her eye<<else>>the corners of her lips from rising slightly<</if>> at hearing 'quiet time,' and she <<if $activeSlave.amp == 1>>presents herself to be carried<<else>>follows you<</if>> happily enough. When she <<if canSee($activeSlave)>>sees<<else>>realizes<</if>> you're headed to your bedroom she begins to anticipate her <<= WrittenMaster()>>'s <<if $PC.dick == 0>>strap-on<<else>>cock<</if>>, but is surprised to find that instead of using her you simply
 	<<if $activeSlave.amp == 1>>
 		place her in bed and curl up around her limbless torso.
 	<<elseif $activeSlave.bellyPreg >= 5000>>
@@ -11997,7 +11997,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <br><<link "Not when you're pregnant">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You tell her that you would prefer not to inject your pregnant slaves with large doses of growth hormones, and she must respect your judgment in this regard. She leaves looking disappointed, but vows to return once she has given birth. She isn't satisfied with her body, but @@.mediumaquamarine;trusts@@ that her <<WrittenMaster>> cares for her and her unborn child<<if $activeSlave.pregType > 1>>ren<</if>>'s health.
+	You tell her that you would prefer not to inject your pregnant slaves with large doses of growth hormones, and she must respect your judgment in this regard. She leaves looking disappointed, but vows to return once she has given birth. She isn't satisfied with her body, but @@.mediumaquamarine;trusts@@ that her <<= WrittenMaster()>> cares for her and her unborn child<<if $activeSlave.pregType > 1>>ren<</if>>'s health.
 	<<set $activeSlave.trust++>>
 	<</replace>>
 <</link>>
@@ -12005,7 +12005,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <br><<link "Decline">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You tell her that she's better as she is, and she must respect your judgment in this regard. She leaves looking more @@.hotpink;flattered@@ than disappointed. She's less insecure in her own body, and @@.mediumaquamarine;trusts@@ that her <<WrittenMaster>> has a plan for her.
+	You tell her that she's better as she is, and she must respect your judgment in this regard. She leaves looking more @@.hotpink;flattered@@ than disappointed. She's less insecure in her own body, and @@.mediumaquamarine;trusts@@ that her <<= WrittenMaster()>> has a plan for her.
 	<<set $activeSlave.devotion++, $activeSlave.trust++>>
 	<</replace>>
 <</link>>
@@ -12950,7 +12950,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <<link "Let her get dressed and spend some quality time with her">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You let $activeSlave.slaveName don a nice dress and take her out. She's a little suspicious at first but when you reach the first balcony on your lazy route around the huge building the sun on her face and the gentle breeze around her ears convince her there's no trick. She watches you shyly as you lead her around, soaking in the sights and relaxing. Though you still speak as her <<WrittenMaster>>, you chat about goings on around the arcology, and you buy her a fresh fruit from a vendor. The unexpected show of care and compassion has her quite agog. By the time you take her out onto another parklike balcony and fuck her on a bench,
+	You let $activeSlave.slaveName don a nice dress and take her out. She's a little suspicious at first but when you reach the first balcony on your lazy route around the huge building the sun on her face and the gentle breeze around her ears convince her there's no trick. She watches you shyly as you lead her around, soaking in the sights and relaxing. Though you still speak as her <<= WrittenMaster()>>, you chat about goings on around the arcology, and you buy her a fresh fruit from a vendor. The unexpected show of care and compassion has her quite agog. By the time you take her out onto another parklike balcony and fuck her on a bench,
 	<<if ($activeSlave.dick > 0) && ($activeSlave.dickAccessory == "chastity")>>
 		her chastity cage is dribbling precum, a sign she wouldn't mind having to take it up the ass.
 	<<elseif ($activeSlave.dick > 0) && ($activeSlave.dickAccessory == "combined chastity")>>
@@ -13432,7 +13432,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<replace "#result">>
 	$activeSlave.slaveName's hermaphroditic genitalia is a little crammed together; it's busy down there. She obediently stops fucking so you can maneuver into her.
 	<<= VaginalVCheck()>>
-	Having a <<if $PC.dick == 0>>strap-on<<else>>dick<</if>> in her pussy reduces her erection a little, so the slave beneath her helps her penetration as much as she can. It's not the most convenient of fucks, but that's to be expected when a <<WrittenMaster>> and two slaves successfully have two separate instances of vaginal intercourse running at once.<<if $PC.vagina == 1>><<if $PC.dick == 1>> You add a third by grabbing a free hand and guiding it to your own pussy; its owner gets the idea and strokes it as best she can.<</if>><</if>> $activeSlave.slaveName's orgasm is general and intense. @@.hotpink;Her devotion to you has increased.@@
+	Having a <<if $PC.dick == 0>>strap-on<<else>>dick<</if>> in her pussy reduces her erection a little, so the slave beneath her helps her penetration as much as she can. It's not the most convenient of fucks, but that's to be expected when a <<= WrittenMaster()>> and two slaves successfully have two separate instances of vaginal intercourse running at once.<<if $PC.vagina == 1>><<if $PC.dick == 1>> You add a third by grabbing a free hand and guiding it to your own pussy; its owner gets the idea and strokes it as best she can.<</if>><</if>> $activeSlave.slaveName's orgasm is general and intense. @@.hotpink;Her devotion to you has increased.@@
 	<<set $activeSlave.devotion += 4, $activeSlave.penetrativeCount++, $penetrativeTotal++>>
 	<</replace>>
 <</link>><<if ($activeSlave.vagina == 0)>> //This option will take virginity//<</if>>
@@ -13467,7 +13467,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<replace "#result">>
 	Since $activeSlave.slaveName is on top, it's a trivial matter to<<if $PC.dick == 0>> don a strap-on,<</if>> come up behind the fucking slaves, stop her thrusting for a moment, and insert yourself into her pussy. She obediently stops fucking so you can maneuver into her.
 	<<= VaginalVCheck()>>
-	Having a <<if $PC.dick == 0>>strap-on<<else>>dick<</if>> in her pussy reduces her ability to use her engorged clit like a penis a little, so the slave beneath her helps her penetration as much as she can. It's not the most convenient of fucks, but that's to be expected when a <<WrittenMaster>> and two slaves successfully have two separate instances of vaginal intercourse running at once. Her orgasm is general and intense. @@.hotpink;Her devotion to you has increased.@@
+	Having a <<if $PC.dick == 0>>strap-on<<else>>dick<</if>> in her pussy reduces her ability to use her engorged clit like a penis a little, so the slave beneath her helps her penetration as much as she can. It's not the most convenient of fucks, but that's to be expected when a <<= WrittenMaster()>> and two slaves successfully have two separate instances of vaginal intercourse running at once. Her orgasm is general and intense. @@.hotpink;Her devotion to you has increased.@@
 	<<set $activeSlave.devotion += 4, $activeSlave.penetrativeCount++, $penetrativeTotal++>>
 	<</replace>>
 <</link>><<if ($activeSlave.vagina == 0)>> //This option will take vaginal virginity//<</if>>
@@ -14372,7 +14372,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		@@.lightcoral;Her enjoyment of pain has increased.@@
 	<<elseif random(1,100) > 50>>
 		<<set $activeSlave.fetish = "masochist", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>>
-		Before she realizes what's happening, @@.lightcoral;she's getting aroused at the thought of <<WrittenMaster>> beating her.@@
+		Before she realizes what's happening, @@.lightcoral;she's getting aroused at the thought of <<= WrittenMaster()>> beating her.@@
 	<</if>>
 	<</replace>>
 <</link>>
@@ -16254,7 +16254,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <<link "Carry her to where she needs to go">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You scoop her up into a bridal carry. She <<if $activeSlave.voice == 0>>gasps, since she can't squeal<<else>>squeals cutely<</if>>, holding on for dear life, and keeps her face nestled against her <<WrittenMaster>>.
+	You scoop her up into a bridal carry. She <<if $activeSlave.voice == 0>>gasps, since she can't squeal<<else>>squeals cutely<</if>>, holding on for dear life, and keeps her face nestled against her <<= WrittenMaster()>>.
 	<<set _carried = 1>>
 	<<if $activeSlave.belly >= 300000>>
 		<<if $activeSlave.bellyPreg > 3000>>
@@ -17378,7 +17378,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 			trib her with assurance, grinding your hips against hers and making her feel your heat.
 			<<set $activeSlave.vaginalCount++, $vaginalTotal++>>
 		<</if>>
-		She clings to you, accepting the closeness to her <<WrittenMaster>> and enjoying the loving attention, even as the extreme wetness of her cunt and your <<if $PC.dick == 1>>powerful thrusting<<else>>hungry grinding<</if>> begin to produce lewd noises from between you. Her generous natural lubrication lessens the friction and sensation a little, and you go for a long time before you both climax. You lead her into your office shower, since you're both coated in her pussyjuice<<if $PC.dick == 1>> and she's carrying a big load of your cum<<else>>, and your own<</if>>. Under the hot water, you don't even have to pull her close; @@.hotpink;she presses herself into your arms on her own.@@
+		She clings to you, accepting the closeness to her <<= WrittenMaster()>> and enjoying the loving attention, even as the extreme wetness of her cunt and your <<if $PC.dick == 1>>powerful thrusting<<else>>hungry grinding<</if>> begin to produce lewd noises from between you. Her generous natural lubrication lessens the friction and sensation a little, and you go for a long time before you both climax. You lead her into your office shower, since you're both coated in her pussyjuice<<if $PC.dick == 1>> and she's carrying a big load of your cum<<else>>, and your own<</if>>. Under the hot water, you don't even have to pull her close; @@.hotpink;she presses herself into your arms on her own.@@
 		<<if $activeSlave.sexualQuirk == "romantic">>
 			For an incorrigible romantic like her, this encounter was perfect, and she @@.hotpink;loves you all the more for it.@@
 			<<set $activeSlave.devotion += 3>>
@@ -17653,7 +17653,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		<<else>>
 			muscular chest,
 		<</if>>
-		you reach around her and take over the breast-cradling responsibilities. You say nothing for a while, just hefting her weighty udders, rolling them from side to side slightly. After letting her get used to the gentle treatment, you tell her that you're her owner, and you find big breasts very attractive. You tell her that you understand that they can be uncomfortable at times, but you expect her to tolerate that without complaint. It isn't easy to be pretty, but it's easier to be a pretty slave than to be a homely one. This last point affects her, and she seems to @@.mediumaquamarine;take heart in the idea that you're improving her,@@ at least from your perspective. After all, she's sitting atop <<if $PC.dick == 1>>your hard dick, which she can definitely feel<<else>>your hot cunt, which she can probably detect<</if>> through your clothes. She does understand that having her <<WrittenMaster>> enjoy touching her boobs will be advantageous to her.
+		you reach around her and take over the breast-cradling responsibilities. You say nothing for a while, just hefting her weighty udders, rolling them from side to side slightly. After letting her get used to the gentle treatment, you tell her that you're her owner, and you find big breasts very attractive. You tell her that you understand that they can be uncomfortable at times, but you expect her to tolerate that without complaint. It isn't easy to be pretty, but it's easier to be a pretty slave than to be a homely one. This last point affects her, and she seems to @@.mediumaquamarine;take heart in the idea that you're improving her,@@ at least from your perspective. After all, she's sitting atop <<if $PC.dick == 1>>your hard dick, which she can definitely feel<<else>>your hot cunt, which she can probably detect<</if>> through your clothes. She does understand that having her <<= WrittenMaster()>> enjoy touching her boobs will be advantageous to her.
 		<<set $activeSlave.trust += 5>>
 	<</replace>>
 <</link>>
@@ -18483,9 +18483,9 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		<<if $PC.dick == 1>>cock<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>cunt<</if>>
 		but you lay a hand on her forehead and halt her - she'll do that last.
 		<<if $PC.boobs == 1 || $PC.title == 0>>
-			Soon enough she manages to lick all the way up from your feet to your breasts, cleansing your <<if $PC.belly >= 60000>>massively gravid <<elseif $PC.belly >= 5000>>motherly <</if>>body with her wet tongue all the way. She hesitates before teasingly laying a single lap on your nipples, so you take her head and hold it against your breasts to enjoy her skillful tongue on your nipples.<<if $PC.preg > 22>> She even gets a special treat to savor, fresh from her <<WrittenMaster>>'s milky breasts. She makes sure your sore breasts are sufficiently relieved.<</if>>
+			Soon enough she manages to lick all the way up from your feet to your breasts, cleansing your <<if $PC.belly >= 60000>>massively gravid <<elseif $PC.belly >= 5000>>motherly <</if>>body with her wet tongue all the way. She hesitates before teasingly laying a single lap on your nipples, so you take her head and hold it against your breasts to enjoy her skillful tongue on your nipples.<<if $PC.preg > 22>> She even gets a special treat to savor, fresh from her <<= WrittenMaster()>>'s milky breasts. She makes sure your sore breasts are sufficiently relieved.<</if>>
 		<<else>>
-			Soon enough she manages to lick all the way up from your feet to your <<if $PC.belly >= 10000>>taut dome of a stomach<<elseif $PC.belly >= 5000>>pregnancy strained abs<<else>>abs<</if>>, pecs, and collarbone, cleansing your body with her wet tongue all the way. She lavishes particular attention on every nook and groove of your chiseled body, clearly eager to please her muscular <<if $PC.belly >= 5000>>(and very pregnant) <</if>><<WrittenMaster>>.
+			Soon enough she manages to lick all the way up from your feet to your <<if $PC.belly >= 10000>>taut dome of a stomach<<elseif $PC.belly >= 5000>>pregnancy strained abs<<else>>abs<</if>>, pecs, and collarbone, cleansing your body with her wet tongue all the way. She lavishes particular attention on every nook and groove of your chiseled body, clearly eager to please her muscular <<if $PC.belly >= 5000>>(and very pregnant) <</if>><<= WrittenMaster()>>.
 		<</if>>
 		When she's satisfied that every other inch of your body has been bathed by her tongue, she moves for your
 		<<if $PC.dick == 0>>
@@ -18533,7 +18533,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		anus
 	<</if>>
-	she <<if canSee($activeSlave)>>looks<<else>>gazes sightlessly<</if>> up at you with @@.hotpink;adoration@@ and a new @@.mediumaquamarine;trust@@ in her young <<WrittenMaster>>.
+	she <<if canSee($activeSlave)>>looks<<else>>gazes sightlessly<</if>> up at you with @@.hotpink;adoration@@ and a new @@.mediumaquamarine;trust@@ in her young <<= WrittenMaster()>>.
 	<<set $activeSlave.devotion += 4, $activeSlave.trust += 4>>
 	<<if canDoVaginal($activeSlave)>>
 		<<= VaginalVCheck()>>
@@ -18561,7 +18561,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		cute ass,
 	<</if>>
-	she seems almost resigned to accept any of the standard punishments you've been known to dole out. When your lips lightly brush one of her ears, she flinches harder at the gentle touch than any of your harsh, disciplinary spanks. When you start whispering wicked reminders about her sexual submission and subservience to so young a <<WrittenMaster>>, she begins to sob quietly
+	she seems almost resigned to accept any of the standard punishments you've been known to dole out. When your lips lightly brush one of her ears, she flinches harder at the gentle touch than any of your harsh, disciplinary spanks. When you start whispering wicked reminders about her sexual submission and subservience to so young a <<= WrittenMaster()>>, she begins to sob quietly
 	<<if $activeSlave.belly >= 300000>>
 		<<if $activeSlave.boobs > 600>>
 			into her breasts.
@@ -18572,7 +18572,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		against the hard surface of your desk.
 	<</if>>
 	<br><br>
-	By the time you deign to <<if $PC.dick == 0>>don a strap-on and <</if>>mount her ass, she seems catatonic at the revelation that her body is owned by a cruel <<WrittenMaster>>, nearly half her age. Even when you accompany each brutal thrust with a harsh spank and a harsher jab at the dearth in years between the two of you, she merely winces at the
+	By the time you deign to <<if $PC.dick == 0>>don a strap-on and <</if>>mount her ass, she seems catatonic at the revelation that her body is owned by a cruel <<= WrittenMaster()>>, nearly half her age. Even when you accompany each brutal thrust with a harsh spank and a harsher jab at the dearth in years between the two of you, she merely winces at the
 	<<if canDoVaginal($activeSlave)>>
 		force
 	<<else>>
@@ -18685,7 +18685,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		anus
 	<</if>>
-	she <<if canSee($activeSlave)>>looks<<else>>gazes sightlessly<</if>> up at you with @@.hotpink;adoration@@ and a new @@.mediumaquamarine;trust@@ in her aged <<WrittenMaster>>.
+	she <<if canSee($activeSlave)>>looks<<else>>gazes sightlessly<</if>> up at you with @@.hotpink;adoration@@ and a new @@.mediumaquamarine;trust@@ in her aged <<= WrittenMaster()>>.
 	<<set $activeSlave.devotion += 4, $activeSlave.trust += 4>>
 	<<if canDoVaginal($activeSlave)>>
 		<<= VaginalVCheck()>>
@@ -18713,7 +18713,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		cute ass,
 	<</if>>
-	she seems almost resigned to accept any of the standard punishments you've been known to dole out. When your lips lightly brush one of her ears, she flinches harder at the gentle touch than any of your harsh, disciplinary spanks. When you start whispering wicked reminders about her sexual submission and subservience to so old a <<WrittenMaster>>, she begins to sob quietly
+	she seems almost resigned to accept any of the standard punishments you've been known to dole out. When your lips lightly brush one of her ears, she flinches harder at the gentle touch than any of your harsh, disciplinary spanks. When you start whispering wicked reminders about her sexual submission and subservience to so old a <<= WrittenMaster()>>, she begins to sob quietly
 	<<if $activeSlave.belly >= 300000>>
 		<<if $activeSlave.boobs > 600>>
 			into her breasts.
diff --git a/src/uncategorized/RESSTR.tw b/src/uncategorized/RESSTR.tw
index 320de515890..744c8dfc6b0 100644
--- a/src/uncategorized/RESSTR.tw
+++ b/src/uncategorized/RESSTR.tw
@@ -52,7 +52,7 @@
 /* 000-250-006 */
 
 <<set $desc = SlaveTitle($activeSlave)>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<switch $RESSTRevent>>
 
diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw
index 8239f746828..e873205dc88 100644
--- a/src/uncategorized/RETS.tw
+++ b/src/uncategorized/RETS.tw
@@ -174,7 +174,7 @@
 <</if>>
 /* 000-250-006 */
 
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<switch $RETSevent>>
 
@@ -203,10 +203,10 @@ her breakfast. You pull out a tablet and start getting some work done, enjoying
 	draws her ration and heads over towards $activeSlave.slaveName to drink it next to her.
 <</if>>
 She's clearly looking for some companionship this morning, but her gears visibly turn for a while before her sleepy head can come up with something to say. Both the slaves are allowed some variety of flavor in their liquid slave food, so she finally settles on that.
-<<Enunciate $subSlave>>
+<<run Enunciate($subSlave)>>
 "What flavor did you choo<<s>>e?"she asks $activeSlave.slaveName.
 <br><br>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 $activeSlave.slaveName
 <<if $cockFeeder == 1>>
 	pulls her mouth off her feeder with a luscious pop.
@@ -219,7 +219,7 @@ $activeSlave.slaveName
 	"The tart fruity kind," she responds. "It'<<s>> refre<<sh>>ing fir<<s>>t thing in the morning."
 <</if>>
 <br><br>
-<<Enunciate $subSlave>>
+<<run Enunciate($subSlave)>>
 "Oh," says $subSlave.slaveName. "Um, can I try <<s>>ome?"
 <br><br>
 $activeSlave.slaveName smiles and murmurs, "Mm hm." There is a distinct <<if canSee($activeSlave)>>glint in her eye<<else>>look on her face<</if>>. She's got a healthy libido, to put it mildly. Like all slaves, $subSlave.slaveName sleeps nude and hasn't gotten dressed yet, and $activeSlave.slaveName has
@@ -625,7 +625,7 @@ Both slaves notice you at the same time. $subSlave.slaveName's <<if canSee($subS
 
 <<case "repressed anal virgin">>
 
-$subSlave.slaveName has been a very good girl this week, so when her <<if $subSlave.anus > 2>>loose asshole<<elseif $subSlave.anus > 1>>big butthole<<else>>tight anus<</if>> catches your eye near the start of a long inspection, you decide to be kind to her as you conduct the rest of your inspection with <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>>. <<EventNameLink $activeSlave>> is next on the inspection schedule, and when she comes into your office, it's to the <<if canSee($activeSlave)>>sight of $subSlave.slaveName's back and rear<<else>>sound of $subSlave.slaveName<</if>> as she lazily rides her <<WrittenMaster $subSlave>>. You've been sitting on the couch, making out with the compliant girl as she rides you, for a good half hour. Poor $subSlave.slaveName was pent up when you started, and she's climaxed already; she's feeling very devoted and relaxed at the moment, and is doing her best to get you off, too. When you finally come, she moans her thanks into your mouth nonverbally, breaks your lip lock, gives you a peck on the nose, and climbs off you. As she does, she lifts her ass off your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>>, her <<if $subSlave.anus > 2>>gaping anus dripping <<if $PC.dick == 1>>cum<<else>>lube<</if>> all over her $subSlave.skin legs<<elseif $subSlave.anus > 1>>well-fucked backdoor taking a few seconds to recover from its gape, dripping a little <<if $PC.dick == 1>>cum<<else>>lube<</if>> down her $subSlave.skin legs<<else>>still-tight backdoor sliding quickly off you, visibly slick with <<if $PC.dick == 1>>cum<<else>>lube<</if>><</if>>. You didn't fuck her too hard, but <<if $PC.dick == 1>>you're not small<<else>>your strap-ons are not small<</if>>, and she walks a little gingerly as she heads for the bathroom. $activeSlave.slaveName, standing there nude for inspection, stares openmouthed at $subSlave.slaveName as she goes. She's obviously unfamiliar with anal sex.
+$subSlave.slaveName has been a very good girl this week, so when her <<if $subSlave.anus > 2>>loose asshole<<elseif $subSlave.anus > 1>>big butthole<<else>>tight anus<</if>> catches your eye near the start of a long inspection, you decide to be kind to her as you conduct the rest of your inspection with <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>>. <<EventNameLink $activeSlave>> is next on the inspection schedule, and when she comes into your office, it's to the <<if canSee($activeSlave)>>sight of $subSlave.slaveName's back and rear<<else>>sound of $subSlave.slaveName<</if>> as she lazily rides her <<= WrittenMaster($subSlave)>>. You've been sitting on the couch, making out with the compliant girl as she rides you, for a good half hour. Poor $subSlave.slaveName was pent up when you started, and she's climaxed already; she's feeling very devoted and relaxed at the moment, and is doing her best to get you off, too. When you finally come, she moans her thanks into your mouth nonverbally, breaks your lip lock, gives you a peck on the nose, and climbs off you. As she does, she lifts her ass off your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>>, her <<if $subSlave.anus > 2>>gaping anus dripping <<if $PC.dick == 1>>cum<<else>>lube<</if>> all over her $subSlave.skin legs<<elseif $subSlave.anus > 1>>well-fucked backdoor taking a few seconds to recover from its gape, dripping a little <<if $PC.dick == 1>>cum<<else>>lube<</if>> down her $subSlave.skin legs<<else>>still-tight backdoor sliding quickly off you, visibly slick with <<if $PC.dick == 1>>cum<<else>>lube<</if>><</if>>. You didn't fuck her too hard, but <<if $PC.dick == 1>>you're not small<<else>>your strap-ons are not small<</if>>, and she walks a little gingerly as she heads for the bathroom. $activeSlave.slaveName, standing there nude for inspection, stares openmouthed at $subSlave.slaveName as she goes. She's obviously unfamiliar with anal sex.
 <br><br>
 $activeSlave.slaveName coughs and looks doubtful, like she's mulling over a question. You let the poor repressed girl chew on it for a while, and eventually she bursts out, "<<Master $activeSlave>>, what were you doing with $subSlave.slaveName?" The absurdity gives you a moment's pause, but you answer gamely that you were fucking her ass. $activeSlave.slaveName blushes furiously but plunges on, "I'm <<s>>-<<s>>orry, <<Master>>, but I <<s>>till don't under<<s>>tand. I thought <<s>>e<<x>> happened in a v-vagina. I d-didn't think b-butt<<s>> were - were for, you know, that."
 <<set $subSlave.analCount++, $analTotal++>>
@@ -737,13 +737,13 @@ $activeSlave.slaveName senses your presence above and behind her, and twists her
 	"I know it'<<s>> not like me," the $desc admits. "But I a<<s>>ked her, like, mo<<s>>tly joking, and she tried to <<s>>ay no."
 <</if>>
 <br><br>
-<<Enunciate $subSlave>>
+<<run Enunciate($subSlave)>>
 $subSlave.slaveName <<if _vaginal>>looks out from under $activeSlave.slaveName<<else>>turns her head<</if>> and <<if canSee($subSlave)>>looks at<<else>>faces<</if>> you too. "<<Master $subSlave>>, plea<<s>>e," she begs. "P-plea<<s>>e, make her <<s>>-<<s>>top - mhhh -" $activeSlave.slaveName shuts her up by <<if _vaginal>>kissing her unwilling mouth<<else>>shoving her face back against the floor<</if>>. Once she has $subSlave.slaveName back under control, $activeSlave.slaveName slows her thrusting, reaches around behind herself, and <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>>spreads her futa pussy for you.<<else>>pulls one asscheek aside to offer you her anus. To make the offer extra clear, she starts winking it lewdly.<</if>>
 <br><br>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 "Plea<<s>>e fuck me while I rape her, <<Master>>," $activeSlave.slaveName <<say>>s in a mockery of $subSlave.slaveName's <<if $subSlave.voice > 2>>high-pitched whining<<elseif $subSlave.voice > 1>>begging<<else>>deep-voiced begging<</if>>. "Ooh, or, plea<<s>>e, <<Master>>, may I flip her over? I'd love to feel <<if $PC.dick>>your cock in<<s>>ide her along<<s>>ide mine<<else>>that <<s>>trap-on you u<<s>>e in<<s>>ide her along<<s>>ide my cock<</if>>!"
 <br><br>
-<<Enunciate $subSlave>>
+<<run Enunciate($subSlave)>>
 "Plea<<s>>e, no," sobs $subSlave.slaveName.
 
 <<case "cockmilk interception">>
@@ -813,7 +813,7 @@ Passing the slave quarters late at night, you hear <span id="name"><<print "[[$a
 <</if>>
 "Pleeea<<s>>e let me fuck <<if _vaginal>>you<<else>>your butt,<</if>>" she whines.
 <br><br>
-<<Enunciate $subSlave>>
+<<run Enunciate($subSlave)>>
 "I'm tired," <<say>>s 
 <<if $activeSlave.voice > $subSlave.voice>>another, lower,
 <<elseif $activeSlave.voice < $subSlave.voice>>another, higher,
@@ -862,7 +862,7 @@ Her objections sound a bit feigned, and she's obviously in no hurry to put an en
 	having somebody beg her for sex. She's a sex slave, and she doesn't always have the luxury of feeling so wanted.
 <</if>>
 <br><br>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<set _belly = bellyAdjective($subSlave)>>
 The slaves are about to go to bed; they're naked, and the horny $activeSlave.slaveName's <<if $activeSlave.dick > 5>>enormous erection is pointed threateningly<<elseif $activeSlave.dick > 2>>stiff dick is pointed straight<<else>>pathetic dick is pointed right<</if>> at $subSlave.slaveName's _belly midsection. Desperate, $activeSlave.slaveName decides to try praise instead. 
 <<set _lewd = 0>>
@@ -894,7 +894,7 @@ The slaves are about to go to bed; they're naked, and the horny $activeSlave.sla
 	<<set _lewd = 1>>
 <</if>>
 <br><br>
-<<Enunciate $subSlave>>
+<<run Enunciate($subSlave)>>
 $subSlave.slaveName <<if _lewd>>blushes at the lewd<<else>>smiles at the<</if>> flattery, but after a moment's hesitation she maintains her reluctance.
 <<if $activeSlave.releaseRules == "permissive">>
 	"Why don't you ju<<s>>t jerk off," she asks dismissively. "<<S>>eriou<<s>>ly, you're allowed to."
@@ -903,7 +903,7 @@ $subSlave.slaveName <<if _lewd>>blushes at the lewd<<else>>smiles at the<</if>>
 <</if>>
 She turns away.
 <br><br>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 $activeSlave.slaveName is almost in tears.
 <<if $activeSlave.releaseRules == "permissive">>
 	"I have," she moans, blue balled. "<<if $activeSlave.aphrodisiacs > 0 || $activeSlave.inflationType == "aphrodisiac">>It'<<s>> the<<s>>e fucking aphrodi<<s>>iac<<s>>. I can't help it. Plea<<s>>e, plea<<s>>e let me try cumming in<<s>>ide you. I won't be able to <<s>>leep.<<else>>It'<<s>> not the <<s>>ame. I need to <<s>>tick my dick in <<s>>omething <<s>>o bad. Plea<<s>>e.<</if>>"
@@ -1009,10 +1009,10 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 <br><<link "Get involved in the taste testing">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	You move in. $activeSlave.slaveName <<if canSee($activeSlave)>>catches sight of<<else>>notices<</if>> your approach, and you see the corners of her mouth quirk upward. She breaks the lip lock and says breathily, "Hey $subSlave.slaveName, I think there'<<s>> <<s>>omething el<<s>>e you <<sh>>ould ta<<s>>te te<<s>>t."
 	<br><br>
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	"Whaa-" the slave starts to ask warily before $activeSlave.slaveName pushes her to her knees, spinning her around as she does so. This brings $subSlave.slaveName face to face with your <<if $PC.dick == 1>>stiff prick, a bead of precum already present at its tip<<else>>wet cunt, a bead of pussyjuice already trailing down your inner thigh<</if>>. "Oh, um, hi <<Master $subSlave>>," she stammers, and then starts to <<if $PC.dick == 1>>suck your dick<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>eat your pussy<</if>>. This leaves poor $activeSlave.slaveName without anyone to make out with, so you step in there, grabbing her and pulling the giggling slave in to kiss her deeply. Her mouth is indeed a bit <<if $activeSlave.preg > 20>>sour<<else>>tart<</if>>. She moans into your mouth as she feels her nipples press against <<if $PC.boobs == 1>>yours<<else>>your hard chest<</if>>, and then again as your tongue invades her. When you <<if $PC.dick == 1>>fill $subSlave.slaveName's mouth with cum<<else>>climax wetly against $subSlave.slaveName's mouth<</if>>, you pull away slightly, letting the slave on her knees below you gasp "You ta<<s>>te great, <<Master>>!" before you spin her around in turn so she can give $activeSlave.slaveName her own allotment of oral sex. You leave them to it. They @@.mediumaquamarine;trust you a bit more@@ after such a lighthearted little escapade.
 	<<set $activeSlave.trust += 2, $subSlave.trust += 2, $subSlave.oralCount += 2>>
 	<<set $oralTotal += 2>>
@@ -1314,12 +1314,12 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 			<<= knockMeUp($activeSlave, 5, 1, -1, 1)>>
 		<</if>>
 	<</if>>
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	When you're done, you pull out, leaving $activeSlave.slaveName to collapse, whimpering and shaking, onto $subSlave.slaveName's boobs. $subSlave.slaveName <<if canSee($subSlave)>>winks<<else>>smiles<</if>> at you over her shoulder. "That wa<<s>> fun <<Master $subSlave>>," she <<say>>s brightly. "@@.hotpink;Can we do that again@@ <<s>>oon, plea<<s>>e?"
 	<br><br>
 	"Ohh fffuck," $activeSlave.slaveName moans into her boobs, to no one in particular.
 	<<set $subSlave.devotion += 4>>
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	<<if $activeSlave.anus < 3>>
 		"Plea<<s>>e nooo, @@.lime;my poor hole will never be the <<s>>ame againnn.@@"
 		<<set $activeSlave.anus += 1>>
@@ -1337,14 +1337,14 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 	"I gue<<ss>> I never really thought about you that way,"
 	she says to the huge-boobed <<if $subSlave.physicalAge > 30>>woman<<elseif $subSlave.physicalAge > 18>>girl<<elseif $subSlave.physicalAge > 12>>teen<<else>>loli<</if>> trapped beneath her.
 	<br><br>
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	$subSlave.slaveName, who is still holding $activeSlave.slaveName's buttocks, gives them a squeeze. "Well, you <<s>>illy girl, what do you think about it now?"
 	<br><br>
 	$activeSlave.slaveName stiffens with sudden embarrassment. "Uh, um," she stammers, before saying in a rush, "$subSlave.slaveName, will you go out with me?"
 	<br><br>
 	$subSlave.slaveName laughs, a pure, unclouded sound, and gives $activeSlave.slaveName a cute little peck on the tip of her nose. "@@.lightgreen;Of cour<<s>>e I will,@@" she purrs, and runs her hands up $activeSlave.slaveName's back to hug her tightly.
 	<br><br>
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	The encounter becomes far more heartfelt than it was before you spoke up. $activeSlave.slaveName, who seems affected, says self-consciously, "Um, doe<<s>> thi<<s>> mean I get a girlfriend every time I'm clum<<s>>y?" $subSlave.slaveName giggles and shushes her. They begin to kiss earnestly while they fuck, and you leave them to it. Each of them comes to you later to @@.hotpink;thank you@@ for permitting them to be together.
 	<<set $subSlave.devotion += 2, $activeSlave.devotion += 2>>
 	<<set $subSlave.relationship = 3, $subSlave.relationshipTarget = $activeSlave.ID>>
@@ -1360,11 +1360,11 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 <<link "Just watch">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	You settle down to watch what happens. $activeSlave.slaveName, who has a devoted slave's sixth sense about her <<WrittenMaster $activeSlave>>'s presence, realizes you're there and turns toward you. <<if canSee($activeSlave)>>You've already got a reassuring, silent hand raised, and you gesture that she should continue<<else>>Not hearing any comments, she takes it as a gesture to continue<</if>>. She smiles naughtily at you, @@.mediumaquamarine;pleased with your trust in her,@@ before going back to $subSlave.slaveName. She <<if canPenetrate($activeSlave)>>hauls $subSlave.slaveName's <<if $subSlave.belly >= 5000>>gravid <</if>>torso partway up<<else>>bends over the poor girl<</if>> so she can speak directly into her ear, and <<say>>s quietly, "You're <<s>>tarting to enjoy thi<<s>>, aren't you, bitch?" $subSlave.slaveName, still unaware you're there, shakes her head unhappily, tears starting to leak out the corners of her eyes.
+	You settle down to watch what happens. $activeSlave.slaveName, who has a devoted slave's sixth sense about her <<= WrittenMaster($activeSlave)>>'s presence, realizes you're there and turns toward you. <<if canSee($activeSlave)>>You've already got a reassuring, silent hand raised, and you gesture that she should continue<<else>>Not hearing any comments, she takes it as a gesture to continue<</if>>. She smiles naughtily at you, @@.mediumaquamarine;pleased with your trust in her,@@ before going back to $subSlave.slaveName. She <<if canPenetrate($activeSlave)>>hauls $subSlave.slaveName's <<if $subSlave.belly >= 5000>>gravid <</if>>torso partway up<<else>>bends over the poor girl<</if>> so she can speak directly into her ear, and <<say>>s quietly, "You're <<s>>tarting to enjoy thi<<s>>, aren't you, bitch?" $subSlave.slaveName, still unaware you're there, shakes her head unhappily, tears starting to leak out the corners of her eyes.
 	<br><br>
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	"N-no," she gasps. "I'm not! Plea<<s>>e t-take <<if canPenetrate($activeSlave)>>it<<else>>them<</if>> out!"
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	$activeSlave.slaveName makes no verbal reply, but continues her manual stimulation, and sticks her tongue into $subSlave.slaveName's ear. The poor girl lets out a startled yelp that trails off into a moan as $activeSlave.slaveName's <<if ($activeSlave.oralSkill >= 60)>>excellent<<elseif ($activeSlave.oralSkill > 1)>>skillful<<else>>enthusiastic<</if>> ministrations really begin to have an effect on her.
 	<br><br>
 	$activeSlave.slaveName laughs unpleasantly at the desperately uncomfortable slave, and <<say>>s, "Tell you what, <<s>>lut. I'll leave you alone if thi<<s>> doe<<s>>n't get you off." Already realizing her predicament, $subSlave.slaveName begins to protest, but $activeSlave.slaveName cuts her off. "<<Sh>>ut your fucking cockhol<<s>>ter, bitch, I'm talking. I'll leave you alone if thi<<s>> doe<<s>>n't get you off, but if you come, you've obviou<<s>>ly been lying to me, and you obviou<<s>>ly want me to buttfuck you all night long." $subSlave.slaveName tries very hard, taking a huge breath of air and holding it in, biting her lip, shutting her eyes tight, and more, but it's all for naught. Before long, she stiffens <<if $subSlave.balls > 0 || $subSlave.prostate > 0>>and makes a mess on the bedroll<<else>>with orgasm<</if>>, moaning as her anal sphincter tightens against the invading <<if canPenetrate($activeSlave)>>cock<<else>>fingers<</if>>. Once the climax leaves her, she begins to sob, knowing what this means. $activeSlave.slaveName takes her hand away from the crying girl's crotch and begins to massage her back with surprising tenderness. "<<S>>hh, <<s>>weetie, it'<<s>> all right. I promi<<s>>e you'll enjoy thi<<s>>, if you let your<<s>>elf." You leave quietly, letting $activeSlave.slaveName have her fun. As the week goes on, $subSlave.slaveName's @@.lightcoral;attitude towards anal sex@@ improves quickly, though she feels rather conflicted about $activeSlave.slaveName for forcing this on her.
@@ -1383,7 +1383,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 <br><<link "She's being too gentle">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	You advance on the slaves. $activeSlave.slaveName, who has a devoted slave's sixth sense about her <<WrittenMaster $activeSlave>>'s presence, realizes you're there and turns toward you. <<if canSee($activeSlave)>>Silently but forcefully, you use a simple hand gesture to instruct her unequivocally<<else>>She can feel<</if>> that she's to stop fucking around and pound the bitch's butt. She looks a little taken aback, but obeys instantly, <<if canPenetrate($activeSlave)>>pumping her dick in and out of $subSlave.slaveName<<else>>fingerfucking $subSlave.slaveName's ass<</if>> without mercy. The slave screams at the sudden change of pace, thrashing a little. Her struggles bring <<if canSee($subSlave)>>her head around, and she's surprised to come face to face with your ankles. With dawning comprehension, her eyes track rapidly up your
+	You advance on the slaves. $activeSlave.slaveName, who has a devoted slave's sixth sense about her <<= WrittenMaster($activeSlave)>>'s presence, realizes you're there and turns toward you. <<if canSee($activeSlave)>>Silently but forcefully, you use a simple hand gesture to instruct her unequivocally<<else>>She can feel<</if>> that she's to stop fucking around and pound the bitch's butt. She looks a little taken aback, but obeys instantly, <<if canPenetrate($activeSlave)>>pumping her dick in and out of $subSlave.slaveName<<else>>fingerfucking $subSlave.slaveName's ass<</if>> without mercy. The slave screams at the sudden change of pace, thrashing a little. Her struggles bring <<if canSee($subSlave)>>her head around, and she's surprised to come face to face with your ankles. With dawning comprehension, her eyes track rapidly up your
 	<<if $arcologies[0].FSPhysicalIdealist != "unset">>
 		muscular
 	<<elseif $PC.title != 0>>
@@ -1666,7 +1666,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
 	You order $activeSlave.slaveName to go back to what she was doing. She's a little disappointed you're not joining in, but she obeys, pounding the crying $subSlave.slaveName without mercy. Then $activeSlave.slaveName feels the head of <<if $PC.dick>>your dick<<else>>a strap-on<</if>> brush her butt.
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	"Ooh!" she squeals, @@.hotpink;pleased she was wrong after all.@@ "Ye<<s>>, thank you, <<Master>>! Fuck me! Fuck me while I rape her!" Underneath her, $subSlave.slaveName cries harder, even though $activeSlave.slaveName has to stop her thrusting for a moment to let you inside. In fact, you reflect as you hammer $activeSlave.slaveName's <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>><<if $activeSlave.vagina > 2>>roomy<<elseif $activeSlave.vagina > 1>>delectable<<else>>tight little<</if>> cunt<<else>><<if $activeSlave.anus > 2>>gaping<<elseif $activeSlave.anus > 1>>relaxed<<else>>poor little<</if>> asspussy<</if>>, it's a little strange that $subSlave.slaveName @@.gold;seems to think this is worse@@ than just being raped by $activeSlave.slaveName. After all, having your <<if $PC.dick>>turgid cock<<else>>formidable strap-on<</if>> sliding energetically in and out of her <<if $activeSlave.vagina != 0 && canDoVaginal($activeSlave)>>womanhood<<else>>rectum<</if>> is cramping $activeSlave.slaveName's style a bit. Maybe it's that $subSlave.slaveName is a little squashed under there.
 	<<set $activeSlave.devotion += 4>>
 	<<set $activeSlave.penetrativeCount++, $penetrativeTotal++>>
@@ -1700,7 +1700,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
 	You order $activeSlave.slaveName to flip $subSlave.slaveName over and let you in too. Just as you expected, $activeSlave.slaveName responds with a vicious giggle, and $subSlave.slaveName cries even harder.
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	"Plea<<s>>e!" she screams. "<<Master $subSlave>>, it'll hurt! Plea<<s>>e don't!"
 	<<set _fit = 0>>
 	<<if _vaginal>><<if $subSlave.vagina > 2>><<set _fit = 1>><</if>><<else>><<if $subSlave.anus > 2>><<set _fit = 1>><</if>><</if>>
@@ -1743,10 +1743,10 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
 	You order $activeSlave.slaveName to stop raping $subSlave.slaveName.
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	"Ye<<s>>, <<Master>>," she <<say>>s automatically, and gets up, pulling her dick out of $subSlave.slaveName's poor <<if _vaginal>>pussy<<else>>asshole<</if>>. $activeSlave.slaveName doesn't understand, and her prick softens quickly with her confusion. She thought she didn't need consent to fuck other slaves, and she @@.gold;doubts herself.@@
 	<br><br>
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	$subSlave.slaveName gets to her feet too, using a hand to massage her outraged hole. "Thank you, <<Master $subSlave>>, thank you," she repeats over and over, @@.mediumaquamarine;weeping with relief.@@
 	<<set $activeSlave.trust -= 4, $activeSlave.penetrativeCount++, $penetrativeTotal++>>
 	<<set $subSlave.trust += 4>>
@@ -1859,11 +1859,11 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 <<link "Give the poor slave what she's asking for">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	<<set _belly = bellyAdjective($subSlave)>>
 	You resolve to give the poor slave what she's asking for: $subSlave.slaveName<<if !_vaginal>>'s ass<</if>>. Your slaves might have the right to refuse each other, but they have to obey you. You clear your throat, getting both slaves' attention, and then fix your gaze on $subSlave.slaveName. You tilt your head ever so slightly in $activeSlave.slaveName's direction. That's all that's necessary. "Ye<<s>>, <<Master $subSlave>>!" says $subSlave.slaveName obediently, and <<if _vaginal>>gets right down at $activeSlave.slaveName's feet, lying on her back, legs spread<<if $subSlave.belly >= 5000>> to either side of her <<if $subSlave.bellyPreg >= 3000>>_belly pregnancy<<else>>_belly rounded belly<</if>><</if>>, compliantly offering up her pussy<<else>>turns her back to $activeSlave.slaveName, bends a little, cocks her hips, and spreads her buttocks, compliantly offering her asspussy<</if>>. She's yours to do with as you please, and you've decided to give her to $activeSlave.slaveName, at least for right now.
 	<br><br>
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	"Thank you, <<Master>>," <<say>>s $activeSlave.slaveName @@.hotpink;devotedly.@@
 	<<if !_vaginal || $subSlave.vaginaLube > 1>>She lets a gob of her saliva fall onto her cockhead, <<if !_vaginal>>out of politeness to $subSlave.slaveName's asshole<<elseif $subSlave.vaginaLube > 0>>out of politeness, since she knows $subSlave.slaveName might not be really wet for her<<else>>since she knows that $subSlave.slaveName has a chronically dry cunt<</if>>.<</if>>
 	Then she
@@ -1893,7 +1893,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
 	$subSlave.slaveName has a perfectly healthy libido; there has to be something she'd like getting from $activeSlave.slaveName in turn. You clear your throat, getting the slaves' attention, and ask $subSlave.slaveName if there's anything she'd like $activeSlave.slaveName to do for her in return for sex. $activeSlave.slaveName is so desperate that she makes a suggestion before $subSlave.slaveName can open her mouth. Everyone knows $subSlave.slaveName
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	<<switch $subSlave.fetish>>
 	<<case "submissive">>
 		is a shameless submissive and loves to be fucked. $activeSlave.slaveName must know she's being had, at least a little. "$subSlave.slaveName," she purrs, "I'll fuck you until your toe<<s>> curl."
@@ -1950,10 +1950,10 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 		<<set $subSlave.oralCount++, $oralTotal++>>
 	<</switch>>
 	<br><br>
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	$subSlave.slaveName is a seasoned sex slave but that doesn't stop her from blushing a little at such a blunt suggestion. "Okay," she says, biting her <<if $activeSlave.lips > 40>>absurdly generous<<elseif $activeSlave.lips > 10>>full<<else>>thin<</if>> lower lip cutely. "I wa<<s>> actually going to <<s>>ay ye<<s>> anyway, but it'<<s>> really ni<<c>>e to have <<s>>omeone like you a<<s>>k me for it like that. I'm <<s>>orry I made you beg."
 	<br><br>
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	"Don't care!" <<say>>s $activeSlave.slaveName exultantly, and grabs her conquest, planting a lusty kiss on $subSlave.slaveName's giggling mouth and <<if _vaginal>>rubbing her erection against $subSlave.slaveName's<<if $subSlave.labia > 0>> puffy<</if>> pussylips<<else>>reaching around $subSlave.slaveName to start teasing her asshole<</if>>. "Don't care, a<<s>> long a<<s>> I get to fuck your <<if _vaginal>>hot cunt<<else>>beautiful a<<ss>><</if>>!" Your work here is done, and once she's done blowing her load inside $subSlave.slaveName<<if !_vaginal>>'s anus<</if>>, $activeSlave.slaveName should remember to be @@.mediumaquamarine;grateful@@ to you for the reminder on how to seduce
 	<<switch $subSlave.fetish>>
 	<<case "submissive">>coquettish subs.
@@ -1987,7 +1987,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 <br><<link "Assert your dominance">>
 	<<replace "#name">>$activeSlave.slaveName<</replace>>
 	<<replace "#result">>
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	<<set _belly = bellyAdjective($activeSlave)>>
 	You brush past $activeSlave.slaveName without a word. "Um, <<Master>>," she starts to greet you, and then loses track of the greeting as she sees what you're doing. You stride forward, grab $subSlave.slaveName by her
 	<<if $subSlave.hips > 1>>
@@ -2120,7 +2120,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 	<<replace "#result">>
 	Deciding that this should be encouraged, you praise $activeSlave.slaveName for her close relationship to her daughter. "Thank you, <<Master>>," she <<say>>s. "I try to be the be<<s>>t mom I can." She bends and kisses the top of $subSlave.slaveName's head.
 	<br><br>
-	<<Enunciate $subSlave>>
+	<<run Enunciate($subSlave)>>
 	$subSlave.slaveName <<if $activeSlave.nipples != "fuckable">>lets the nipple pop free of<<else>>releases the nipple from<</if>> her mouth and looks up at $activeSlave.slaveName. "That'<<s>> <<s>>illy, Mommy," she scolds, using an exaggeratedly whiny tone. I'm
 	<<if $activeSlave.dick > 0 && $activeSlave.dickAccessory == "none">>jerking you off, 
 	<<elseif canDoVaginal($activeSlave)>>fingerbanging you,
@@ -2129,7 +2129,7 @@ she adds impishly. Hearing this, $subSlave.slaveName lets the breast pop free of
 	<</if>>
 	and you're totally enjoying it!" She sticks out her tongue, and does something with her hands that makes $activeSlave.slaveName shudder helplessly. "Admit it, you're ba<<s>>ically my fuckbuddy, or even my girlfriend!"
 	<br><br>
-	<<Enunciate $activeSlave>>
+	<<run Enunciate($activeSlave)>>
 	<<if $subSlave.sexualQuirk == "perverted">>"You're one t-to t-talk, you little perv," she gasps.
 	<<elseif $activeSlave.sexualQuirk == "perverted">>"I c-can't h-help it," she gasps. "You're <<s>>o h-hot, <<s>>weetie. I d-dream about you."
 	<<else>>"W-we're f-fuck<<s>>slaves, <<s>>weetie," she gasps. "I h-have to."
diff --git a/src/uncategorized/bodyModification.tw b/src/uncategorized/bodyModification.tw
index 3324fdfda95..fb3399621e3 100644
--- a/src/uncategorized/bodyModification.tw
+++ b/src/uncategorized/bodyModification.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Continue", $nextLink = "Slave Interact">>
 <<run clearSummaryCache($activeSlave)>>
 <<run SlavePronouns($activeSlave)>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<set $showEncyclopedia = 1, $encyclopedia = "The Studio">>
 
diff --git a/src/uncategorized/multiImplant.tw b/src/uncategorized/multiImplant.tw
index caf4c7c59e0..d7d55afe313 100644
--- a/src/uncategorized/multiImplant.tw
+++ b/src/uncategorized/multiImplant.tw
@@ -130,7 +130,7 @@ You head down to your <<if $surgeryUpgrade == 1>>heavily upgraded and customized
 			<</if>>
 			<<set $surgeryType = "restoreVoice">>
 			<br><hr>
-			<<Enunciate $activeSlave>>
+			<<run Enunciate($activeSlave)>>
 			<<include "Surgery Degradation">>
 		<<else>>
 			<br><hr>
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index ee66968b5d2..71f2062ff6f 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -8,7 +8,7 @@
 <</if>>
 
 <<set $desc = SlaveTitle($activeSlave)>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<if $specialSlave == 1>>
 	<<set $i = $heroSlaves.findIndex(function(s) { return s.ID == $activeSlave.ID; })>>
@@ -1495,7 +1495,7 @@ The legalities completed, ''__@@.pink;<<SlaveFullName $activeSlave>>@@__'' <<if
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Let your ample bust dominate her pathetic one">>
 		<<replace "#introResult">>
-			You quickly strip off your shirt and draw close to $activeSlave.slaveName. You grab her as she attempts to back away and pull her tits directly into your own. Both of sets of eyes lock onto their pair of breasts, or they would have, had yours not utterly eclipsed their rival. Scoffing, you release the confused girl and walk away; leaving her cupping her own breasts and feeling uncertain about herself. She gets caught up in how small they really are, and how much @@.hotpink;lesser@@ than her <<WrittenMaster $activeSlave>> she is.
+			You quickly strip off your shirt and draw close to $activeSlave.slaveName. You grab her as she attempts to back away and pull her tits directly into your own. Both of sets of eyes lock onto their pair of breasts, or they would have, had yours not utterly eclipsed their rival. Scoffing, you release the confused girl and walk away; leaving her cupping her own breasts and feeling uncertain about herself. She gets caught up in how small they really are, and how much @@.hotpink;lesser@@ than her <<= WrittenMaster($activeSlave)>> she is.
 			<<if $activeSlave.fetish == "boobs">>
 				<<if $activeSlave.fetishKnown == 0>>
 					You did note one thing when your breasts touched, her nipples <<if $activeSlave.nipples == "fuckable">>tightened around yours<<else>>got very hard<</if>>. @@.green;Looks like she's a breast fetishist!@@
diff --git a/src/uncategorized/pMercenaryRomeo.tw b/src/uncategorized/pMercenaryRomeo.tw
index 3f31ae7a74d..4779201b470 100644
--- a/src/uncategorized/pMercenaryRomeo.tw
+++ b/src/uncategorized/pMercenaryRomeo.tw
@@ -91,7 +91,7 @@ I've scraped together what I can, and I can pay <<print cashFormat($slaveCost)>>
 			<<else>>
 				As he picks up her limbless form to give her a hug,
 			<</if>>
-			she gives the nearest camera a little nod and silently mouths the words "Thank you, <<WrittenMaster $activeSlave>>." Soon the romantic story of The Mercenary and the Slave Girl is being told in bars and brothels across the Free City, with you naturally playing @@.green;a supporting role.@@
+			she gives the nearest camera a little nod and silently mouths the words "Thank you, <<= WrittenMaster($activeSlave)>>." Soon the romantic story of The Mercenary and the Slave Girl is being told in bars and brothels across the Free City, with you naturally playing @@.green;a supporting role.@@
 			<<set $rep += 500, $cash += $slaveCost>>
 			<<include "Remove activeSlave">>
 		<</if>>
@@ -118,7 +118,7 @@ I've scraped together what I can, and I can pay <<print cashFormat($slaveCost)>>
 			<<else>>
 				As he picks up her limbless form to give her a hug,
 			<</if>>
-			she gives the nearest camera a little nod and silently mouths the words "Thank you, <<WrittenMaster $activeSlave>>." You smile to yourself; when they get there they'll find flowers and a paid reservation at the arcology's best restaurant. Soon the story is being told in bars and brothels across the Free City, with you naturally playing @@.green;a starring role.@@ Some days later, you hear a dramatization is being filmed, with an aging action star playing the mercenary, a rising starlet playing $activeSlave.slaveName, and a noted character actor playing you.
+			she gives the nearest camera a little nod and silently mouths the words "Thank you, <<= WrittenMaster($activeSlave)>>." You smile to yourself; when they get there they'll find flowers and a paid reservation at the arcology's best restaurant. Soon the story is being told in bars and brothels across the Free City, with you naturally playing @@.green;a starring role.@@ Some days later, you hear a dramatization is being filmed, with an aging action star playing the mercenary, a rising starlet playing $activeSlave.slaveName, and a noted character actor playing you.
 			<<set $rep += 3000>>
 			<<set _poster = "a poster for the movie that was made about the love between one of your mercenaries and " + $activeSlave.slaveName>>
 			<<set $trinkets.push(_poster)>>
diff --git a/src/uncategorized/pUndergroundRailroad.tw b/src/uncategorized/pUndergroundRailroad.tw
index 46d4885c1eb..be92069e8ab 100644
--- a/src/uncategorized/pUndergroundRailroad.tw
+++ b/src/uncategorized/pUndergroundRailroad.tw
@@ -61,7 +61,7 @@ This is disturbing, to say the least. After close investigation, it appears some
 "You will immediately free $activeSlave.slaveName," it reads. "This is the price of your continued survival. Agree and you buy yourself a few more moments at the top of your heap of shit. Refuse, and you shall fall that much sooner." The message is signed "The Daughters of Liberty."
 
 <br><br>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 You call $activeSlave.slaveName in and politely inquire as to whether she knows anything about the matter. She nearly flees in terror, but gathers her courage and
 <<if !canTalk($activeSlave)>>
diff --git a/src/uncategorized/peConcubineInterview.tw b/src/uncategorized/peConcubineInterview.tw
index 4e4c6d04029..c809bea0769 100644
--- a/src/uncategorized/peConcubineInterview.tw
+++ b/src/uncategorized/peConcubineInterview.tw
@@ -1,7 +1,7 @@
 :: PE concubine interview [nobr]
 
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check", $activeSlave = $Concubine, $oldRep = $rep>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 <<set _belly = bellyAdjective($activeSlave)>>
 <<if SlaveStatsChecker.checkForLisp($activeSlave)>>
 	<<set _lisps = 1>>
diff --git a/src/uncategorized/peLonelyBodyguard.tw b/src/uncategorized/peLonelyBodyguard.tw
index 3400802f998..7548d45dd75 100644
--- a/src/uncategorized/peLonelyBodyguard.tw
+++ b/src/uncategorized/peLonelyBodyguard.tw
@@ -9,7 +9,7 @@
 	<</if>>
 <</for>>
 <<set $j = _targetSlaveIndex.random()>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 You take an unusually close interest in $activeSlave.slaveName's health and mental well-being, since your health and mental well-being may rely on her combat effectiveness. She performs her duties acceptably, difficult though they are. Hers is a life of long hours and constant vigilance, and she has very little time to herself. The daily wear hasn't really affected her yet, but it may.
 
diff --git a/src/uncategorized/ptWorkaround.tw b/src/uncategorized/ptWorkaround.tw
index 4e51f0879d2..db5c5679c25 100644
--- a/src/uncategorized/ptWorkaround.tw
+++ b/src/uncategorized/ptWorkaround.tw
@@ -65,7 +65,7 @@
 		<<set $activeSlave.devotion += 1>>
 	<</if>>
 	<<if ($activeSlave.trust > 10)>>
-		Spending time with you @@.mediumaquamarine;builds her trust in <<WrittenMaster>>.@@
+		Spending time with you @@.mediumaquamarine;builds her trust in <<= WrittenMaster()>>.@@
 		<<set $activeSlave.trust += 4>>
 	<<else>>
 		Spending time with you @@.mediumaquamarine;reduces her fear towards you.@@
diff --git a/src/uncategorized/reBoomerang.tw b/src/uncategorized/reBoomerang.tw
index 79a2d96a12f..3c4df721bf4 100644
--- a/src/uncategorized/reBoomerang.tw
+++ b/src/uncategorized/reBoomerang.tw
@@ -12,7 +12,7 @@ Your work is interrupted by $assistantName with an alert from the entrance to th
 	It's got the incident flagged as not fitting into any of the usual categories of disturbance, and requests your attention. It
 <</if>>
 brings up the relevant feeds. There's a naked body crumpled pathetically against one wall of the entryway, beneath the communications panel. It's $activeSlave.slaveName<<if $activeSlave.slaveSurname>> $activeSlave.slaveSurname<</if>>, who you sold _weeks weeks ago. She's looking up into one of the cameras plaintively.
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 "Plea<<s>>e take me back," she whispers, not wanting to draw the attention of passersby, and knowing that her faint words will be picked up and amplified for you.
 
 <<set $activeSlave.collar = "none", $activeSlave.choosesOwnClothes = 0, $activeSlave.clothes = "no clothing", $activeSlave.buttplug = "none", $activeSlave.vaginalAccessory = "none", $activeSlave.dickAccessory = "none">>
diff --git a/src/uncategorized/reBusyArcade.tw b/src/uncategorized/reBusyArcade.tw
index 8e890428605..6e9665a71d4 100644
--- a/src/uncategorized/reBusyArcade.tw
+++ b/src/uncategorized/reBusyArcade.tw
@@ -14,7 +14,7 @@
 <<else>>
 
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check">>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 Slaves in your arcade are not immured in the facility permanently, since holding them in one position at all times would negatively impact their health. They are released to exercise, eat, bathe, and sleep, though for nothing else. You occasionally inspect them when they do so, to see that their harsh lives are not inappropriately difficult for them. One day when you are doing so, <<EventNameLink $activeSlave>> flings herself on the ground in front of you the instant she sees you.
 
diff --git a/src/uncategorized/reFSAcquisition.tw b/src/uncategorized/reFSAcquisition.tw
index 4a525fef05d..a5a40cc14af 100644
--- a/src/uncategorized/reFSAcquisition.tw
+++ b/src/uncategorized/reFSAcquisition.tw
@@ -1145,14 +1145,14 @@ And this one is a rare one indeed. It's a personal file, and you suppress the ur
 \
 <<case "Hedonistic Decadence">>\
 \
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
 This one is coming from inside your own arcology, from a tourist interested in permanent residence even if it means enslavement. You have them bought to your office to hear them out. A heavily pregnant girl waddles into your office, her distended belly a stark contrast to her relative thinness. She smiles, her many piercings clicking against each other in the process, and pats her middle. "It'<<s>> food, not a baby. I really enjoyed <<s>>taying in your arcology, I mean, I live like thi<<s>> back home, but everyone alway<<s>> pick<<s>> on me for eating <<s>>o much and never getting off my a<<ss>> to work. I can't find a lover either, no one can <<s>>ati<<s>>fy me anymore..." She exposes her gaping asshole to you. "I overdid it with the toy<<s>>. It felt <<s>>o good, I couldn't <<s>>top going bigger. Once I realized that, I <<s>>tarted getting piercing<<s>> and eating, anything to make me feel better. But on<<c>>e I arrived here, I never felt <<s>>o a<<c>>epted before, everyone wa<<s>> enjoying them<<s>>elve<<s>> however they wanted. <<S>>o plea<<s>>e, let me <<s>>tay, I'll do everything you can think of."
 \
 <<case "Hedonistic Decadence Two">>\
 \
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
 This one is interesting, even by the standards of messages from people who want to become slaves. The individual is neither sick nor abused, and speaks with directness. "I'm what you'd call 'vanilla'," she sighs. "And, well, I want to expand my horizons and I heard how much fun people have in your arcology. I'm yours to experiment with.
diff --git a/src/uncategorized/reHGReplacement.tw b/src/uncategorized/reHGReplacement.tw
index e7fb749f71e..9e7267da6b7 100644
--- a/src/uncategorized/reHGReplacement.tw
+++ b/src/uncategorized/reHGReplacement.tw
@@ -3,7 +3,7 @@
 <<nobr>>
 
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "Next Week", $activeSlave = $eventSlave>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 There's a constant traffic of slaves in and out of your office as girls come in for instructions, inspections, and sex. Your Head Girl $HeadGirl.slaveName is one of the most frequent visitors, since although you trust her, she's still a slave and has to check with you before acting on some matters.<<if $HeadGirl.relationship == -3>> (She's also your wife, making her visits a pleasant diversion.)<<elseif $arcologies[0].FSEgyptianRevivalistLaw == 1>> (She's also your Consort, making her visits a pleasant diversion.)<</if>> During one of her visits, <<EventNameLink $activeSlave>> happens to come in for her scheduled inspection. She perches politely on the couch, waiting her turn like a good girl. Her $activeSlave.eyeColor eyes are watchful, however, and she seems to be paying very close attention to your conversation with your Head Girl.
 
@@ -54,7 +54,7 @@ When $HeadGirl.slaveName leaves, she clears her throat nervously. She gathers he
 	<</replace>>\
 	<<replace "#result">>
 	<<nobr>>
-	<<Enunciate $HeadGirl>>
+	<<run Enunciate($HeadGirl)>>
 	You page $HeadGirl.slaveName, telling her to get back up to your office. $activeSlave.slaveName hears you, of course, and stiffens with fear. She knows she's in trouble, but she doesn't yet know how much. You tell $HeadGirl.slaveName to have a seat next to $activeSlave.slaveName on the couch, and instruct $assistantName to replay the last five minutes of the feeds from your office on a wallscreen. $activeSlave.slaveName's<<if $activeSlave.lips > 40>> pillowlike<</if>> lower lip begins to tremble at this, and she can barely manage to keep her gaze on the fatal replay of her attempt to convince you to replace $HeadGirl.slaveName with her. $HeadGirl.slaveName, who is no fool, is not surprised by this, but the replay still angers her. As it rolls on, her hands begin to roam across $activeSlave.slaveName, who winces at her touch. About halfway through, $HeadGirl.slaveName looks straight at you and cruelly pinches one of $activeSlave.slaveName's nipples. You respond to the nonverbal question with a silent nod, and $HeadGirl.slaveName smiles briefly at you. Then, she sticks her tongue in $activeSlave.slaveName's ear. The poor slave starts at the warm, wet intrusion, but knows better than to try to resist. She closes her eyes tight.
 	<br><br>
 	$HeadGirl.slaveName hops off the couch, gets down in front of her victim, and shoves her legs apart. $activeSlave.slaveName scrunches up her face, expecting something agonizing to happen to her <<if $activeSlave.dick == 0>>pussy, but $HeadGirl.slaveName shocks her by starting to hungrily eat her out.<<else>>cock, but $HeadGirl.slaveName shocks her by giving her a lush blowjob.<</if>> $activeSlave.slaveName clearly expects a trap, but $HeadGirl.slaveName's attentions slowly distract her. When she's on the very verge of orgasm, your Head Girl suddenly stops and <<if $activeSlave.dick == 0>>pinches the girl's pussylips,<<else>>tugs the girl's cock downward by its head,<</if>> not painfully, but hard enough to communicate threat. $activeSlave.slaveName, shocked out of her pleasure, looks down at her. $HeadGirl.slaveName <<say>>s menacingly, "Bitch, if you orga<<s>>m, I'm going to fucking de<<s>>troy you." Then she goes back to giving $activeSlave.slaveName oral. $activeSlave.slaveName begins to cry, realizing how comprehensively fucked she is.
diff --git a/src/uncategorized/reMilfTourist.tw b/src/uncategorized/reMilfTourist.tw
index 232c1d821f6..44ccb3a753c 100644
--- a/src/uncategorized/reMilfTourist.tw
+++ b/src/uncategorized/reMilfTourist.tw
@@ -4,7 +4,7 @@
 
 <<set _milfed = $slaveIndices[$milfSlaveID]>>
 <<set _milfSlave = $slaves[_milfed]>>
-<<Enunciate _milfSlave>>
+<<run Enunciate(_milfSlave)>>
 
 
 <<set $activeSlaveOneTimeMinAge = 36>>
diff --git a/src/uncategorized/reRelationshipAdvice.tw b/src/uncategorized/reRelationshipAdvice.tw
index c5d0e67e1ae..3e9c9f4c034 100644
--- a/src/uncategorized/reRelationshipAdvice.tw
+++ b/src/uncategorized/reRelationshipAdvice.tw
@@ -1,7 +1,7 @@
 :: RE relationship advice [nobr]
 
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "Next Week", $activeSlave = $eventSlave>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<set _i = $slaveIndices[$activeSlave.relationshipTarget]>>
 <<set $subSlave = $slaves[_i]>>
@@ -129,7 +129,7 @@ She nods her head quickly, still staring at her feet. She shuts her eyes tight a
 		<</if>>
 		But I - I really like you." $subSlave.slaveName looks relieved, and <<if $subSlave.voice != 0>>says, "I really like you too. And you're really cute! I'd love to be your girlfriend." She<<else>>lovingly<</if>> takes $activeSlave.slaveName's hands in hers, and then kisses her on the cheek. $activeSlave.slaveName crushes $subSlave.slaveName in a hug, pressing a squeak out of her. They're now @@.lightgreen;lovers.@@
 	<<elseif $activeSlave.relationship == 4>>
-		- " She stops herself. "No, I want to do thi<<s>> right." She takes $subSlave.slaveName's hand, and then drops to one knee. After a moment of uncomprehending shock, $subSlave.slaveName begins to cry. "Will you marry me?" $subSlave.slaveName turns to you and asks if it's all right with you; you nod, and she turns back to $activeSlave.slaveName. <<if !canTalk($subSlave)>>She gestures distractedly that $activeSlave.slaveName is being silly, and of course she'll marry her, because she loves her.<<else>><<Enunciate $subSlave>>"O-of cour<<s>>e I'll m-marry you, <<s>>illy girl. I love you."<</if>> $activeSlave.slaveName jumps up and crushes $subSlave.slaveName in a hug, kissing her frantically through her tears. You @@.lightgreen;marry them@@ solemnly, and they embrace tightly, hugging each other close. $activeSlave.slaveName comes to face you over her wife's shoulder, and she mouths a silent thanks to you.
+		- " She stops herself. "No, I want to do thi<<s>> right." She takes $subSlave.slaveName's hand, and then drops to one knee. After a moment of uncomprehending shock, $subSlave.slaveName begins to cry. "Will you marry me?" $subSlave.slaveName turns to you and asks if it's all right with you; you nod, and she turns back to $activeSlave.slaveName. <<if !canTalk($subSlave)>>She gestures distractedly that $activeSlave.slaveName is being silly, and of course she'll marry her, because she loves her.<<else>><<run Enunciate($subSlave)>>"O-of cour<<s>>e I'll m-marry you, <<s>>illy girl. I love you."<</if>> $activeSlave.slaveName jumps up and crushes $subSlave.slaveName in a hug, kissing her frantically through her tears. You @@.lightgreen;marry them@@ solemnly, and they embrace tightly, hugging each other close. $activeSlave.slaveName comes to face you over her wife's shoulder, and she mouths a silent thanks to you.
 	<</if>>
 	If $activeSlave.slaveName had doubts about you, @@.mediumaquamarine;they've been addressed.@@
 
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index bcbff9fa85b..10c7014e3cc 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -21,7 +21,7 @@
 	<<set $newRelativeRecruitID = 1100000>>
 <</if>>
 
-<<Enunciate $eventSlave>>
+<<run Enunciate($eventSlave)>>
 
 <<set _recruitedType = []>>
 <<if $eventSlave.mother == 0 && $activeSlave.actualAge < 24 && $seeDicks != 100>>
@@ -756,7 +756,7 @@ You look up the _relationType. She costs <<print cashFormat($slaveCost)>>, a bar
 
 <<set $eventSlave = $slaves[$i]>>
 <<set $activeSlave = clone($genePool[$j])>>
-<<Enunciate $eventSlave>>
+<<run Enunciate($eventSlave)>>
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
diff --git a/src/uncategorized/reShelterInspection.tw b/src/uncategorized/reShelterInspection.tw
index 40b5f294152..8287e238bd1 100644
--- a/src/uncategorized/reShelterInspection.tw
+++ b/src/uncategorized/reShelterInspection.tw
@@ -43,7 +43,7 @@
 <</if>>
 */
 
-<<Enunciate $subSlave>>
+<<run Enunciate($subSlave)>>
 
 Your assistant announces a visitor in the entryway of your penthouse, and adds<<if $assistant > 0>> with disapproval<</if>> that it's an inspector from the Slave Shelter.
 <<if $assistant > 0>>
diff --git a/src/uncategorized/reShowerPunishment.tw b/src/uncategorized/reShowerPunishment.tw
index c6ebadb1317..e75d1c187de 100644
--- a/src/uncategorized/reShowerPunishment.tw
+++ b/src/uncategorized/reShowerPunishment.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "Next Week">>
 
 <<set $activeSlave = $eventSlave>>
-<<Enunciate $HeadGirl>>
+<<run Enunciate($HeadGirl)>>
 
 <<if $HGSuite == 1>>
 	Looking in on your Head Girl in her suite, you hear her private shower running and head that way. Through the thick steam the shower makes on its hottest setting, you see
diff --git a/src/uncategorized/reSlaveMarriage.tw b/src/uncategorized/reSlaveMarriage.tw
index 0c8490ae593..00573d70f10 100644
--- a/src/uncategorized/reSlaveMarriage.tw
+++ b/src/uncategorized/reSlaveMarriage.tw
@@ -12,7 +12,7 @@
 <<if $brideSlave == 0>>
 	<<set $brideSlave = getSlave($groomSlave.relationshipTarget)>>
 <</if>>
-<<Enunciate $groomSlave>>
+<<run Enunciate($groomSlave)>>
 <</nobr>>\
 \
 <<print "[[$groomSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1,$activeSlave = $groomSlave]]">> and <<print "[[$brideSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1,$activeSlave = $brideSlave]]">> come into your office <<if ($groomSlave.amp != 1) && ($brideSlave.amp != 1)>>holding hands<<else>>doing their best to stay close to one another despite their physical limitations<</if>>. $brideSlave.slaveName looks at $groomSlave.slaveName expectantly, but she's terribly nervous and makes several false starts before beginning. Finally $groomSlave.slaveName musters her courage and <<if !canTalk($groomSlave)>>asks you with simple gestures to grant the two of them a slave marriage.<<else>>asks with her voice cracking, "<<Master>>, would you plea<<s>>e grant u<<s>> a <<s>>lave marriage?"<</if>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 719d156e32d..986e158c00a 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -2388,7 +2388,7 @@
 
 <<switch $slaves[$i].career>>
 <<case "a slave">>
-	She has been a slave so long that she can barely remember making decisions for herself, and @@.hotpink;feels naturally drawn@@ to her <<WrittenMaster $slaves[$i]>>.
+	She has been a slave so long that she can barely remember making decisions for herself, and @@.hotpink;feels naturally drawn@@ to her <<= WrittenMaster($slaves[$i])>>.
 	<<set $slaves[$i].devotion += 1>>
 <<case "a dairy slave">>
 	She is @@.hotpink;thankful@@ that you saved her from becoming a mindless cow<<if $slaves[$i].trust < 50>>, though she still has her doubts<</if>>.
@@ -4928,7 +4928,7 @@
 			<<set $slaves[$i].behavioralFlaw = "arrogant">>
 		<</if>>
 	<<else>>
-		She bears the mark of the Societal Elite @@.hotpink;with pride.@@ It signals that she is yours, and yours alone, drawing her ever closer to her beloved <<WrittenMaster $slaves[$i]>>.
+		She bears the mark of the Societal Elite @@.hotpink;with pride.@@ It signals that she is yours, and yours alone, drawing her ever closer to her beloved <<= WrittenMaster($slaves[$i])>>.
 		<<set $slaves[$i].devotion += 10>>
 	<</if>>
 <</if>>
@@ -4985,7 +4985,7 @@
 					<</if>>
 				<<else>> /* no treats for you */
 					<<if $slaves[$i].behavioralQuirk == "insecure">>
-						She is @@.mediumaquamarine;relieved@@ she doesn't have to fret over eating the treats and gaining weight as her <<WrittenMaster $slaves[$i]>> is carefully directing her.
+						She is @@.mediumaquamarine;relieved@@ she doesn't have to fret over eating the treats and gaining weight as her <<= WrittenMaster($slaves[$i])>> is carefully directing her.
 						<<set $slaves[$i].trust++>>
 					<<elseif $slaves[$i].behavioralQuirk == "fitness">>
 						She is @@.mediumaquamarine;thankful@@ that she isn't permitted to eat the treats. She's seen others try one, only to start shoveling them down.
@@ -5075,7 +5075,7 @@
 				<</if>>
 			<<else>> /* no treats for you */
 				<<if $slaves[$i].behavioralQuirk == "insecure">>
-					She is @@.mediumaquamarine;relieved@@ she doesn't have to fret over eating the treats and gaining weight as her <<WrittenMaster $slaves[$i]>> is carefully directing her.
+					She is @@.mediumaquamarine;relieved@@ she doesn't have to fret over eating the treats and gaining weight as her <<= WrittenMaster($slaves[$i])>> is carefully directing her.
 					<<set $slaves[$i].trust++>>
 				<<elseif $slaves[$i].behavioralQuirk == "fitness">>
 					She is @@.mediumaquamarine;thankful@@ that she isn't permitted to eat the treats. She's seen others try one, only to start shoveling them down.
diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw
index 66cbf8b5eba..e67ed8de720 100644
--- a/src/uncategorized/saPleaseYou.tw
+++ b/src/uncategorized/saPleaseYou.tw
@@ -685,7 +685,7 @@ serves you this week.
 					on occasion;
 					<<set $slaves[$i].devotion -= 5, $slaves[$i].trust += 7>>
 				<</if>>
-				getting to dominantly fuck $possessive '<<WrittenMaster $slaves[$i]>>' @@.mediumorchid;builds $possessive self-confidence@@ and @@.mediumaquamarine;lessens $possessive fear@@ of you.
+				getting to dominantly fuck $possessive '<<= WrittenMaster($slaves[$i])>>' @@.mediumorchid;builds $possessive self-confidence@@ and @@.mediumaquamarine;lessens $possessive fear@@ of you.
 			<<elseif ($slaves[$i].devotion <= 20)>>
 				<<if ($fuckSlaves <= $PC.sexualEnergy/2)>>
 					<<set _penetrativeUse = random(21,40)>>
@@ -700,7 +700,7 @@ serves you this week.
 					on occasion;
 					<<set $slaves[$i].devotion -= 3, $slaves[$i].trust += 3>>
 				<</if>>
-				 getting to dominantly fuck $possessive '<<WrittenMaster $slaves[$i]>>' @@.mediumorchid;builds $possessive self-confidence,@@ yet @@.mediumaquamarine;makes $possessive more trusting@@ of you.
+				 getting to dominantly fuck $possessive '<<= WrittenMaster($slaves[$i])>>' @@.mediumorchid;builds $possessive self-confidence,@@ yet @@.mediumaquamarine;makes $possessive more trusting@@ of you.
 			<<else>>
 				<<if ($fuckSlaves <= $PC.sexualEnergy/2)>>
 					<<set _penetrativeUse = random(21,40)>>
@@ -943,13 +943,13 @@ serves you this week.
 		<</if>>
 		available for you at all times.
 		<<if canAchieveErection($slaves[$i]) && $slaves[$i].dickAccessory != "chastity"  && $slaves[$i].dickAccessory != "combined chastity">>
-			Every time $possessive beloved <<WrittenMaster $slaves[$i]>> fucks $object, $pronoun gets a hardon.
+			Every time $possessive beloved <<= WrittenMaster($slaves[$i])>> fucks $object, $pronoun gets a hardon.
 		<<elseif ($slaves[$i].dick != 0) && ($slaves[$i].prostate > 0) && canDoVaginal($slaves[$i])>>
-			$pronounCap doesn't get a hardon as you use $object, but $pronoun comes from the prostate stimulation when $possessive beloved <<WrittenMaster $slaves[$i]>> uses $possessive pussy.
+			$pronounCap doesn't get a hardon as you use $object, but $pronoun comes from the prostate stimulation when $possessive beloved <<= WrittenMaster($slaves[$i])>> uses $possessive pussy.
 		<<elseif ($slaves[$i].dick != 0) && ($slaves[$i].prostate > 0) && canDoAnal($slaves[$i])>>
-			$pronounCap doesn't get a hardon as you use $object, but $pronoun comes from the prostate stimulation when $possessive beloved <<WrittenMaster $slaves[$i]>> uses $possessive butt.
+			$pronounCap doesn't get a hardon as you use $object, but $pronoun comes from the prostate stimulation when $possessive beloved <<= WrittenMaster($slaves[$i])>> uses $possessive butt.
 		<<else>>
-			$pronounCap comes indecently hard whenever $possessive beloved <<WrittenMaster $slaves[$i]>> uses $possessive body.
+			$pronounCap comes indecently hard whenever $possessive beloved <<= WrittenMaster($slaves[$i])>> uses $possessive body.
 		<</if>>
 		You have the sexual energy to fuck $object
 		<<if ($fuckSlaves <= $PC.sexualEnergy/2)>>
@@ -1261,7 +1261,7 @@ Keeping $object as nothing but your personal
 	<</if>>
 	<<if $slaves[$i].fetish != "mindbroken">>
 		<<if $slaves[$i].fetish == "pregnancy" && ($PC.preg >= 20 || ($PC.preg >= 16 && $PC.career == "escort"))>>
-			$slaves[$i].slaveName @@.hotpink;enjoys being so close her gravid <<WrittenMaster $slaves[$i]>>.@@
+			$slaves[$i].slaveName @@.hotpink;enjoys being so close her gravid <<= WrittenMaster($slaves[$i])>>.@@
 			<<set $slaves[$i].devotion += 1>>
 			<<if $slaves[$i].fetishKnown == 0>>
 				She enjoys being tasked with servicing a pregnant woman far more than a normal slave would; @@.lightcoral;she's harboring a pregnancy fetish!@@
@@ -1271,7 +1271,7 @@ Keeping $object as nothing but your personal
 				<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<elseif _fetishChangeChance > random(0,100) && ($PC.preg >= 20 || ($PC.preg >= 16 && $PC.career == "escort"))>>
-			At first she found the prospect of being used by her increasingly pregnant <<WrittenMaster $slaves[$i]>> a turn off, but being so close to your gravid form serves to be more erotic than she anticipated. Soon she finds herself aroused less from the prospect of sex and more @@.lightcoral;the chance to be near your child laden belly.@@
+			At first she found the prospect of being used by her increasingly pregnant <<= WrittenMaster($slaves[$i])>> a turn off, but being so close to your gravid form serves to be more erotic than she anticipated. Soon she finds herself aroused less from the prospect of sex and more @@.lightcoral;the chance to be near your child laden belly.@@
 			<<set $slaves[$i].fetish = "pregnancy", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<</if>>
 	<</if>>
diff --git a/src/uncategorized/seExpiration.tw b/src/uncategorized/seExpiration.tw
index e036edce7fd..99e8e85e6a1 100644
--- a/src/uncategorized/seExpiration.tw
+++ b/src/uncategorized/seExpiration.tw
@@ -6,7 +6,7 @@
 
 <<set $activeSlave = getSlave($expiree)>>
 
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 $activeSlave.slaveName's indentured servitude is ending this week, meaning that your arcology is gaining a citizen.
 <<set $ACitizens += 1>>
diff --git a/src/uncategorized/seRetirement.tw b/src/uncategorized/seRetirement.tw
index 5c20d5321df..c7153abaf84 100644
--- a/src/uncategorized/seRetirement.tw
+++ b/src/uncategorized/seRetirement.tw
@@ -9,7 +9,7 @@
 <<else>>
 	<<set _playerName = $PC.name>>
 <</if>>
-<<Enunciate $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 $activeSlave.slaveName is retiring from sexual slavery this week,
 
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index fba47a67c04..e7e8976a337 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -3244,14 +3244,14 @@ $He's got a
 	<<elseif ($activeSlave.fetish == "boobs") && ($activeSlave.fetishStrength > 60) && ($activeSlave.fetishKnown == 1)>>
 		Judging by how hard $he is<<if $activeSlave.prostate > 1>> and the constant flow of precum leaking from the tip of $his dick<<elseif $activeSlave.prostate > 0>> and the little bead of precum forming at the tip of $his dick<</if>>, $he's probably fantasizing about boobs.
 	<<elseif ($activeSlave.devotion > 50)>>
-		As a devoted sex slave, $he has no trouble keeping $himself hard for $his <<WrittenMaster $activeSlave>>.
+		As a devoted sex slave, $he has no trouble keeping $himself hard for $his <<= WrittenMaster($activeSlave)>>.
 		<<if ($activeSlave.prostate > 2)>>
 			The area above $his crotch has a slight swell to it from $his prostate implant. A constant dribble of precum drips from the tip of $his cock; $his artificially hyperactive prostate keeps $him that way.
 		<<elseif ($activeSlave.prostate > 1)>>
 			$He's got a string of precum dangling from the tip of $his cock; $his artificially hyperactive prostate keeps $him that way.
 		<</if>>
 	<<elseif ($activeSlave.devotion > 20)>>
-		As an obedient sex slave, $he does $his best to keep <<print $his>>self hard for $his <<WrittenMaster $activeSlave>>.
+		As an obedient sex slave, $he does $his best to keep <<print $his>>self hard for $his <<= WrittenMaster($activeSlave)>>.
 		<<if ($activeSlave.prostate > 2)>>
 			The area above $his crotch has a slight swell to it from $his prostate implant. A constant dribble of precum drips from the tip of $his cock; $his artificially hyperactive prostate keeps $him that way.
 		<<elseif ($activeSlave.prostate > 1)>>
@@ -4127,9 +4127,9 @@ $He's got a
 			getting fucked.
 		<</switch>>
 	<<elseif ($activeSlave.devotion > 50)>>
-		As a devoted sex slave, $he has no trouble keeping $himself wet for $his <<WrittenMaster $activeSlave>>.
+		As a devoted sex slave, $he has no trouble keeping $himself wet for $his <<= WrittenMaster($activeSlave)>>.
 	<<elseif ($activeSlave.devotion > 20)>>
-		As an obedient sex slave, $he does $his best to keep $himself wet for $his <<WrittenMaster $activeSlave>>.
+		As an obedient sex slave, $he does $his best to keep $himself wet for $his <<= WrittenMaster($activeSlave)>>.
 	<</if>>
 	<<if $activeSlave.prostate != 0>>
 	<<if $activeSlave.dick == 0>>
diff --git a/src/utility/descriptionWidgetsStyle.tw b/src/utility/descriptionWidgetsStyle.tw
index b650f21c1a7..7ad2a3c6d5d 100644
--- a/src/utility/descriptionWidgetsStyle.tw
+++ b/src/utility/descriptionWidgetsStyle.tw
@@ -2524,7 +2524,7 @@ $His
 				<<elseif $activeSlave.pregKnown == 0>>
 					"Put a baby in me today!"
 				<<elseif $activeSlave.pregSource == -1>>
-					"Womb claimed by my <<WrittenMaster>>!"
+					"Womb claimed by my <<= WrittenMaster()>>!"
 				<<elseif ($activeSlave.pregSource == -2 || $activeSlave.pregSource == 0)>>
 					"Baby made by slutting around!"
 				<<elseif $activeSlave.pregSource > 0>>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index a34281ca93a..3f95ad41abe 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -1407,16 +1407,7 @@
 
 <</widget>>
 
-/%
- Call as <<Enunciate>>
- $args[0]: Slave.
-%/
-<<widget "Enunciate">>
-	<<run Enunciate($args[0]) >>
-<</widget>>
-
-<<widget "Master">><<if def $args[0]>><<Enunciate $args[0]>><<elseif ndef $titleEnunciate>><<Enunciate $activeSlave>><</if>>$titleEnunciate<</widget>>
-<<widget "WrittenMaster">><<= WrittenMaster($args[0]) >><</widget>>
+<<widget "Master">><<if def $args[0]>><<run Enunciate($args[0])>><<elseif ndef $titleEnunciate>><<run Enunciate($activeSlave)>><</if>>$titleEnunciate<</widget>>
 <<widget "say">><<if def $args[0] && $sayEnunciate != "lisp">>$args[0]<<else>>$sayEnunciate<</if>><</widget>>
 <<widget "s">>$sEnunciate<</widget>>
 <<widget "S">>$SEnunciate<</widget>>
-- 
GitLab


From cf25e5a1a5b937c0284289e52755f9c3f1f94a90 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 12 Jul 2018 22:13:47 -0400
Subject: [PATCH 040/189] Hidden penis art fix

---
 src/art/vector/Penis.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/art/vector/Penis.tw b/src/art/vector/Penis.tw
index 26720ebbdad..f22171e8648 100644
--- a/src/art/vector/Penis.tw
+++ b/src/art/vector/Penis.tw
@@ -72,7 +72,7 @@
 
 <<if _penisSize >= 0>>
   <<if canAchieveErection(_artSlave) && (_artSlave.dickAccessory != "chastity") && (_artSlave.dickAccessory != "combined chastity") >>
-    <<if (def _art_have_boobs) && (_art_scale_factor < 2.6)>>
+    <<if (def _art_have_boobs) && (_art_scale_factor < 3.7)>>
       /* only draw erect penis over boobs if boobs do not hide the penis' base */
       <<set _art = "Art_Vector_Penis_"+_penisSize>>
       <<include _art>>
-- 
GitLab


From c63926d23f141f62cfa6e1579396f333667776e0 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Thu, 12 Jul 2018 20:06:42 -0700
Subject: [PATCH 041/189] Self-impreg PC parent extendedFamilyWidgets update

If the PC's mother and father are the same slave, the PlayerFamily widget now reports that instead of implying the PC has two
parents.
---
 src/utility/extendedFamilyWidgets.tw | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/utility/extendedFamilyWidgets.tw b/src/utility/extendedFamilyWidgets.tw
index c07f81482b6..f9dcf782244 100644
--- a/src/utility/extendedFamilyWidgets.tw
+++ b/src/utility/extendedFamilyWidgets.tw
@@ -684,7 +684,11 @@
 <<if $children.length > 1>>
 	<br>Your parents are @@.lightgreen;$children[0].slaveName and $children[1].slaveName@@.
 <<elseif $children.length > 0>>
-	<br>You know one of your parents, @@.lightgreen;$children[0].slaveName@@.
+	<<if $PC.father == $PC.mother>>
+	    <br>Your parent is @@.lightgreen;$children[0].slaveName@@, who impregnated herself with you.
+	<<else>>
+	    <br>You know one of your parents, @@.lightgreen;$children[0].slaveName@@.
+	<</if>>
 <</if>>
 <<set $children = []>>
 
-- 
GitLab


From 72ee9af5eee2526ca105caed48a1f624c13dd8e0 Mon Sep 17 00:00:00 2001
From: Solvent Abuse <mermontquatre@gmail.com>
Date: Thu, 12 Jul 2018 21:18:34 -0700
Subject: [PATCH 042/189] fix and consistency

---
 src/art/artWidgets.tw | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/art/artWidgets.tw b/src/art/artWidgets.tw
index 580062c50e8..27a152a7f6a 100644
--- a/src/art/artWidgets.tw
+++ b/src/art/artWidgets.tw
@@ -314,14 +314,14 @@ vector art added later is drawn over previously added art
 <</if>>
 
 /% Torso %/
-<<if _artSlave.waist < -40>>
-	<<if _artSlave.weight > 30>>
+<<if $args[0].waist < -40>>
+	<<if $args[0].weight > 30>>
 		<<set _torsoSize = "Hourglass">>
 	<<else>>
 		<<set _torsoSize = "Unnatural">>
 	<</if>>
-<<elseif _artSlave.waist <= 10>>
-	<<if _artSlave.weight > 30>>
+<<elseif $args[0].waist <= 10>>
+	<<if $args[0].weight > 30>>
 		<<set _torsoSize = "Normal">>
 	<<else>>
 		<<set _torsoSize = "Hourglass">>
-- 
GitLab


From fae47a60da67f23864fd60a1bb0abe58ef2b845b Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Fri, 13 Jul 2018 12:14:00 -0400
Subject: [PATCH 043/189] sugarCubeConfig tweaks

---
 src/art/vector/Set_Colour_Hair.tw | 6 +++---
 src/config/sugarCubeConfig.tw     | 2 +-
 src/js/storyJS.tw                 | 2 --
 3 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/art/vector/Set_Colour_Hair.tw b/src/art/vector/Set_Colour_Hair.tw
index 23d45df451f..000d324e052 100644
--- a/src/art/vector/Set_Colour_Hair.tw
+++ b/src/art/vector/Set_Colour_Hair.tw
@@ -6,6 +6,6 @@ to-"HTML Color"-Map
 courtesy of Nov-X 
 */
 
-<<set _hairColour to extractHairColor(_artSlave.hColor) >>
-<<set _pubicHairColour to extractHairColor(_artSlave.pubicHColor) >>
-<<set _underarmHairColour to extractHairColor(_artSlave.underArmHColor) >>
+<<set _hairColour = extractHairColor(_artSlave.hColor) >>
+<<set _pubicHairColour = extractHairColor(_artSlave.pubicHColor) >>
+<<set _underarmHairColour = extractHairColor(_artSlave.underArmHColor) >>
diff --git a/src/config/sugarCubeConfig.tw b/src/config/sugarCubeConfig.tw
index 94bd87302af..477f842262b 100644
--- a/src/config/sugarCubeConfig.tw
+++ b/src/config/sugarCubeConfig.tw
@@ -10,7 +10,7 @@ Config.passages.start = "init";
 Config.history.controls = false;
 
 /* Set Autosaves. */
-config.saves.autosave = "autosave";
+Config.saves.autosave = "autosave";
 
 /* Save only one game state. */
 Config.history.maxStates = 1;
diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw
index 82082c72f8a..368ff852656 100644
--- a/src/js/storyJS.tw
+++ b/src/js/storyJS.tw
@@ -36,9 +36,7 @@ if (typeof interpolate == "undefined") {
 	};
 	window.interpolate = interpolate;
 }
-config.history.maxStates = 1;
 
-config.saves.autosave = "autosave";
 window.isFullyPotent = function(slave) {
 	if (!slave) {
 		return null;
-- 
GitLab


From 7437ba468d25c7d30bd01ca0d4dbd2a0f92cea57 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Fri, 13 Jul 2018 12:41:15 -0400
Subject: [PATCH 044/189] use template literals

---
 src/js/DefaultRules.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index efaa52801c0..029db52dbd0 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -1763,7 +1763,7 @@ window.DefaultRules = (function() {
 						V.cash -= V.modCost*Math.trunc((rule.hLength-slave.hLength)/10);
 						r += `<br>${slave.slaveName} has been given extensions; her hair `;
 					}
-				r += `is now ` + lengthToEitherUnit(rule.hLength) + ` long.`;
+				r += `is now ${lengthToEitherUnit(rule.hLength)} long.`;
 				slave.hLength = rule.hLength;
 				}
 			}
-- 
GitLab


From c28910e760da4bb36267040f429521f91146293a Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Fri, 13 Jul 2018 19:45:07 -0400
Subject: [PATCH 045/189] SlaveFullName conversion

---
 src/SecExp/propagandaHub.tw                   |  4 +-
 src/SecExp/securityReport.tw                  |  2 +-
 src/npc/startingGirls/commitStartingGirl.tw   |  2 +-
 .../SecForceEX/SpecialForceUpgradeDec.tw      |  2 +-
 src/pregmod/widgets/pregmodWidgets.tw         |  6 +-
 src/uncategorized/RESS.tw                     |  2 +-
 src/uncategorized/SFMBarracks.tw              |  2 +-
 src/uncategorized/arcadeReport.tw             |  2 +-
 src/uncategorized/arcmgmt.tw                  |  4 +-
 src/uncategorized/attendantSelect.tw          |  2 +-
 src/uncategorized/bgSelect.tw                 |  2 +-
 src/uncategorized/bodyModification.tw         |  2 +-
 src/uncategorized/brothelReport.tw            |  6 +-
 src/uncategorized/cellblockReport.tw          |  6 +-
 src/uncategorized/clinicReport.tw             |  6 +-
 src/uncategorized/clubReport.tw               |  6 +-
 src/uncategorized/concubineSelect.tw          |  2 +-
 src/uncategorized/coursingAssociation.tw      |  2 +-
 src/uncategorized/dairyReport.tw              |  8 +--
 src/uncategorized/djSelect.tw                 |  2 +-
 src/uncategorized/fsDevelopments.tw           |  2 +-
 src/uncategorized/longSlaveDescription.tw     | 40 ++++++------
 src/uncategorized/madamSelect.tw              |  2 +-
 src/uncategorized/main.tw                     |  6 +-
 src/uncategorized/masterSuiteReport.tw        |  4 +-
 src/uncategorized/milkmaidSelect.tw           |  2 +-
 src/uncategorized/neighborInteract.tw         |  2 +-
 src/uncategorized/neighborsDevelopment.tw     |  2 +-
 src/uncategorized/newSlaveIntro.tw            |  2 +-
 src/uncategorized/nurseSelect.tw              |  2 +-
 src/uncategorized/pHostageAcquisition.tw      |  2 +-
 src/uncategorized/pRivalryActions.tw          | 44 ++++++-------
 src/uncategorized/pRivalryHostage.tw          | 40 ++++++------
 src/uncategorized/penthouseReport.tw          |  4 +-
 src/uncategorized/personalAttentionSelect.tw  |  2 +-
 src/uncategorized/recruiterSelect.tw          |  2 +-
 src/uncategorized/saLiveWithHG.tw             | 12 ++--
 src/uncategorized/saRivalries.tw              | 62 +++++++++----------
 src/uncategorized/saServeThePublic.tw         |  6 +-
 src/uncategorized/saWhore.tw                  |  6 +-
 src/uncategorized/schoolteacherSelect.tw      |  2 +-
 src/uncategorized/seWedding.tw                |  6 +-
 src/uncategorized/securityForceEOWReport.tw   |  6 +-
 src/uncategorized/servantsQuartersReport.tw   |  6 +-
 src/uncategorized/slaveInteract.tw            | 14 ++---
 src/uncategorized/spaReport.tw                |  6 +-
 src/uncategorized/stewardessSelect.tw         |  2 +-
 src/uncategorized/wardenessSelect.tw          |  2 +-
 src/utility/descriptionWidgets.tw             |  8 +--
 src/utility/miscWidgets.tw                    |  4 +-
 src/utility/saRulesWidgets.tw                 |  6 +-
 51 files changed, 187 insertions(+), 189 deletions(-)

diff --git a/src/SecExp/propagandaHub.tw b/src/SecExp/propagandaHub.tw
index 7edf60ce273..fc68a563e27 100644
--- a/src/SecExp/propagandaHub.tw
+++ b/src/SecExp/propagandaHub.tw
@@ -16,10 +16,10 @@ The propaganda hub is a surprisingly inconspicuous building, dimly lit from the
 
 <<if $Recruiter != 0>><br><br>
 <<if $RecuriterOffice == 0>>
-	<<link "Give ''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' an office.""propagandaHub">>
+	<<link "Give ''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' an office.""propagandaHub">>
 	<<set $RecuriterOffice = 1>> <</link>>
 <<else>>
-	<<link "Remove ''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' from her office.""propagandaHub">>
+	<<link "Remove ''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' from her office.""propagandaHub">>
 		<<set $RecuriterOffice = 0>> <</link>>
 <</if>>
 <</if>>
diff --git a/src/SecExp/securityReport.tw b/src/SecExp/securityReport.tw
index 5818fbbb260..56eb883bc4e 100644
--- a/src/SecExp/securityReport.tw
+++ b/src/SecExp/securityReport.tw
@@ -260,7 +260,7 @@
 				<<set _recruits += 1>>
 			<</if>>
 		<<else>>
-			''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' is able to further boost your militia recruitement campaign from her PR hub office.
+			''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is able to further boost your militia recruitement campaign from her PR hub office.
 			<<if $propCampaignBoost == 1>>
 				<<set _recruits += 4+$Recruiter.intelligence+$Recruiter.intelligenceImplant>>
 			<<else>>
diff --git a/src/npc/startingGirls/commitStartingGirl.tw b/src/npc/startingGirls/commitStartingGirl.tw
index 597f6cf3556..8318ec63780 100644
--- a/src/npc/startingGirls/commitStartingGirl.tw
+++ b/src/npc/startingGirls/commitStartingGirl.tw
@@ -25,7 +25,7 @@
 	<<set $hostage = $slaveWithoutBonuses, $hostageCost = $slaveCost, $hostageAnnounced = -1>>
 <</if>>
 
-<<SlaveFullName $activeSlave>> has been added to your starting stable of slaves. You now have <<print cashFormat($cash)>> remaining.
+<<= SlaveFullName($activeSlave)>> has been added to your starting stable of slaves. You now have <<print cashFormat($cash)>> remaining.
 <br>
 <<if $cash >= $minimumSlaveCost>>
 	<br>
diff --git a/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw b/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
index cebd38e90ff..988baf9a0a8 100644
--- a/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
+++ b/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
@@ -61,7 +61,7 @@
 	<br><br>
 	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ''$SupportFacilityName:''
 	<<if $LieutenantColonel == 1>>
-		<<SlaveFullName $LieutenantColonel>> is the Lieutenant Colonel of $securityForceName, primarily in charge of this facility.
+		<<= SlaveFullName($LieutenantColonel)>> is the Lieutenant Colonel of $securityForceName, primarily in charge of this facility.
 	<</if>>
 	There are
 	<<if $SupportFacilitySlaves > 0>>
diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw
index 12f38c95000..0c2049a8bcd 100644
--- a/src/pregmod/widgets/pregmodWidgets.tw
+++ b/src/pregmod/widgets/pregmodWidgets.tw
@@ -747,12 +747,12 @@ $activeSlave.slaveName is up for review:
 <</if>>
 <br><br>
 <<if _passing == 2>>
-	The slave known as "<<SlaveFullName $activeSlave>>" has been deemed @@.yellow;currently unsuitable@@ for breeding, but may be resubmitted after corrections are applied. We understand the subjective nature of "fit" and do not wish to preclude the use a viable breeder over such a trivial fix. She has been placed on a contraceptive routine to protect against "accidents" in the interim.
+	The slave known as "<<= SlaveFullName($activeSlave)>>" has been deemed @@.yellow;currently unsuitable@@ for breeding, but may be resubmitted after corrections are applied. We understand the subjective nature of "fit" and do not wish to preclude the use a viable breeder over such a trivial fix. She has been placed on a contraceptive routine to protect against "accidents" in the interim.
 <<elseif _passing != 0>>
-	The slave known as "<<SlaveFullName $activeSlave>>" has been deemed @@.red;unsuitable@@ for breeding and has been @@.green;sterilized@@ as per agreement.
+	The slave known as "<<= SlaveFullName($activeSlave)>>" has been deemed @@.red;unsuitable@@ for breeding and has been @@.green;sterilized@@ as per agreement.
 	<<set $activeSlave.preg = -3>>
 <<else>>
-	The slave known as "<<SlaveFullName $activeSlave>>" has been deemed @@.green;worthy@@ of being used for breeding and has been marked as such. Please note the increased restrictions on breeding slaves.
+	The slave known as "<<= SlaveFullName($activeSlave)>>" has been deemed @@.green;worthy@@ of being used for breeding and has been marked as such. Please note the increased restrictions on breeding slaves.
 	<br>They are not permitted for public use or anything that may harm their growing child. The child within them is considered a member of the elite class and as such, any harm that comes to them will result in severe penalties to the breeder's owner. Development of the child will be closely monitored; should the fetus be identified as not of the owner's blood (or any other member of the Elite class), said owner shall face severe fines.
 	<<set $activeSlave.breedingMark = 1, $activeSlave.pregControl = "none">>
 <</if>>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index d40a72447e3..98fc8445765 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -18375,7 +18375,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 				<<replace "#result2">>
 					She seems to be focusing on the purely physical aspects of the degradation here. The true meaning of this place is so much more, and you decide to share it with her. You call her name, tearing her attention away from the spectacle mere centimeters over your heads, and <<if canSee($activeSlave)>>point<<else>>direct her<</if>> to a particular slave. You tell $activeSlave.slaveName that this particular Arcade inmate's name is
 					<<set _ress = $slaveIndices[$ArcadeiIDs.random()]>>
-					<<SlaveFullName $slaves[_ress]>>. You tell her that she is $slaves[_ress].actualAge years old, that she is $slaves[_ress].nationality, and that she was once $slaves[_ress].career. You list more details of her life before she was placed here to be fucked endlessly. $activeSlave.slaveName's eyes widen as you recite the details of the prior life of this piece of human sexual equipment and the sheer weight of the intellectual sadism smashes into her. Then the slave above you both jerks a little. <<if $activeSlave.dick == 0>>There's no visible sign her pussy's being fucked, so it must be<<else>>Her cock hardens involuntarily, indicating that it's<</if>> going into her ass. You resume, mentioning that she's been buttfucked $slaves[_ress].analCount times.
+					<<= SlaveFullName($slaves[_ress])>>. You tell her that she is $slaves[_ress].actualAge years old, that she is $slaves[_ress].nationality, and that she was once $slaves[_ress].career. You list more details of her life before she was placed here to be fucked endlessly. $activeSlave.slaveName's eyes widen as you recite the details of the prior life of this piece of human sexual equipment and the sheer weight of the intellectual sadism smashes into her. Then the slave above you both jerks a little. <<if $activeSlave.dick == 0>>There's no visible sign her pussy's being fucked, so it must be<<else>>Her cock hardens involuntarily, indicating that it's<</if>> going into her ass. You resume, mentioning that she's been buttfucked $slaves[_ress].analCount times.
 					$activeSlave.slaveName jerks suddenly, <<if canAchieveErection($activeSlave)>>shooting her cum onto the floor<<elseif $activeSlave.vagina < 0>>dribbling a little<<elseif $activeSlave.vaginaLube > 0>>squirting onto the floor<<else>>orgasming<</if>>. She came without being touched. She <<if canSee($activeSlave)>>stares at<<else>>faces<</if>> the mess she made just by being in the presence of the arcology's @@.hotpink;undisputed preeminent sadist;@@ she shudders at the sheer gothic glory of it. She has a new moment to think of when she feels like @@.lightsalmon;indulging her own sadism.@@
 				<</replace>>
 				<<set $activeSlave.devotion += 5, $activeSlave.fetishStrength = Math.clamp($activeSlave.fetishStrength+10, 0, 100)>>
diff --git a/src/uncategorized/SFMBarracks.tw b/src/uncategorized/SFMBarracks.tw
index fbd00102680..58d4f58f55a 100644
--- a/src/uncategorized/SFMBarracks.tw
+++ b/src/uncategorized/SFMBarracks.tw
@@ -1,6 +1,6 @@
 :: SFM Barracks [nobr]
 
-<<set _Name = "<<if $CurrentTradeShowAttendance == 1 && $LieutenantColonel == 2>>Lieutenant Colonel <<SlaveFullName $LieutenantColonel>> <<elseif $CurrentTradeShowAttendance == 1 && $LieutenantColonel != 2>> a soldier <<elseif $CurrentTradeShowAttendance == 0>> The Colonel<</if>>">>
+<<set _Name = "<<if $CurrentTradeShowAttendance == 1 && $LieutenantColonel == 2>>Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>> <<elseif $CurrentTradeShowAttendance == 1 && $LieutenantColonel != 2>> a soldier <<elseif $CurrentTradeShowAttendance == 0>> The Colonel<</if>>">>
 
 <<if ndef $ColonelRelationship>>
 	<<set $ColonelRelationship = 0>> /* 0 - Employee and boss, 10 - Friend, 25 - Close friend, 45 - Girlfriend, 65 - Lover */
diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw
index 3278b4a0f15..bf65638ef1c 100644
--- a/src/uncategorized/arcadeReport.tw
+++ b/src/uncategorized/arcadeReport.tw
@@ -69,7 +69,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 		<<if $slaves[$i].choosesOwnAssignment == 2>>
 			<<include "SA chooses own job">>
 		<<else>>
diff --git a/src/uncategorized/arcmgmt.tw b/src/uncategorized/arcmgmt.tw
index 5c9444649de..aee0913f8da 100644
--- a/src/uncategorized/arcmgmt.tw
+++ b/src/uncategorized/arcmgmt.tw
@@ -116,7 +116,7 @@ This week, <<if _flux >= 20>>many<<elseif _flux >= 5>>some<<else>>few to none<</
 					<<set _immigrants += random(1,4) * $propCampaign>>
 				<</if>>
 			<<else>>
-				''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' is able to further boost your imgration campaign from her PR hub office.
+				''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is able to further boost your imgration campaign from her PR hub office.
 				<<if $propCampaignBoost == 0>>
 					<<set _immigrants += random(2,5+$Recruiter.intelligence+$Recruiter.intelligenceImplant) * $propCampaign>>
 				<<else>>
@@ -372,7 +372,7 @@ earning you @@.yellowgreen;<<print cashFormat(_earnings)>>.@@
 				<<set _refugees += random(0,2)>>
 			<</if>>
 		<<else>>
-			''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' is able to further boost your self-enslavement campaign from her PR hub office.
+			''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is able to further boost your self-enslavement campaign from her PR hub office.
 			<<if $propCampaignBoost == 1>>
 				<<set _refugees += random(0,5+$Recruiter.intelligence+$Recruiter.intelligenceImplant)>>
 			<<else>>
diff --git a/src/uncategorized/attendantSelect.tw b/src/uncategorized/attendantSelect.tw
index 9d6b548b0fa..0073f42da6e 100644
--- a/src/uncategorized/attendantSelect.tw
+++ b/src/uncategorized/attendantSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Spa", $showEncyclopedia = 1, $encyclopedia = "Attendant">>
 <<showallAssignmentFilter>>
 <<if ($Attendant != 0)>>
-	''__@@.pink;<<SlaveFullName $Attendant>>@@__'' is serving as your Attendant.<br><br>She will help pamper and counsel your slaves.
+	''__@@.pink;<<= SlaveFullName($Attendant)>>@@__'' is serving as your Attendant.<br><br>She will help pamper and counsel your slaves.
 <<else>>
 	You have not selected an Attendant.
 <</if>>
diff --git a/src/uncategorized/bgSelect.tw b/src/uncategorized/bgSelect.tw
index 454a7caac2d..2c003271d03 100644
--- a/src/uncategorized/bgSelect.tw
+++ b/src/uncategorized/bgSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back to Main", $nextLink = "Main", $showEncyclopedia = 1, $encyclopedia = "Bodyguard">>
 <<showallAssignmentFilter>>
 <<if ($Bodyguard != 0)>>
-	''__@@.pink;<<SlaveFullName $Bodyguard>>@@__'' is serving as your bodyguard.<br><br>She will remain close to you at all times and guard your person.
+	''__@@.pink;<<= SlaveFullName($Bodyguard)>>@@__'' is serving as your bodyguard.<br><br>She will remain close to you at all times and guard your person.
 <<else>>
 	You have not selected a bodyguard.
 <</if>>
diff --git a/src/uncategorized/bodyModification.tw b/src/uncategorized/bodyModification.tw
index fb3399621e3..ee6a1c5aba8 100644
--- a/src/uncategorized/bodyModification.tw
+++ b/src/uncategorized/bodyModification.tw
@@ -9,7 +9,7 @@
 
 <h1>Body Modification Studio</h1>
 
-<<SlaveFullName $activeSlave>> is lying strapped down on the table in your body modification studio. $pronounCap is entirely at your mercy.
+<<= SlaveFullName($activeSlave)>> is lying strapped down on the table in your body modification studio. $pronounCap is entirely at your mercy.
 
 <<if $brandApplied || $degradation>>
 	<<if $activeSlave.fuckdoll == 0>>
diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw
index 7708cf21aca..ee6d56c7d9e 100644
--- a/src/uncategorized/brothelReport.tw
+++ b/src/uncategorized/brothelReport.tw
@@ -46,7 +46,7 @@
 	/% Make sure we have registered living expenses as for any other slave %/
 	<<run getSlaveStatisticData($Madam, $facility.brothel)>>
 	<<set $Madam = $slaves[_FLs]>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<SlaveFullName $Madam>> is serving as the Madam.
+	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName($Madam)>> is serving as the Madam.
 	<<if $Madam.relationship == -3 && $Madam.devotion > 50>>
 		As your loving wife, she does her best to attract attention to your brothel.
 		<<set $madamCashBonus += 0.25>>
@@ -229,7 +229,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[_FLs]>>@@__'' is serving as the Madam.
+		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as the Madam.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
 		<<include "SA rules">>
@@ -342,7 +342,7 @@
 			</div>
 			<</if>>
 			/* 000-250-006 */
-			''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+			''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 			<<if $slaves[$i].choosesOwnAssignment == 2>>
 				<<include "SA chooses own job">>
 			<<else>>
diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw
index 0ef5e349db6..603ace957a2 100644
--- a/src/uncategorized/cellblockReport.tw
+++ b/src/uncategorized/cellblockReport.tw
@@ -46,7 +46,7 @@
 	<<if ($Wardeness.energy > 95) || ($Wardeness.fetish == "sadist")>>
 		<<set _devBonus++, _trustMalus++, _idleBonus++>>
 	<</if>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<SlaveFullName $Wardeness>> is serving as the Wardeness.
+	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName($Wardeness)>> is serving as the Wardeness.
 	<<if $Wardeness.relationship == -3 && $Wardeness.devotion > 50>>
 		<<set _devBonus++, _trustMalus++, _idleBonus++>>
 		As your wife, she tries her best to break the disobedient slaves to your will.
@@ -151,7 +151,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__'' is serving as the Wardeness in $cellblockName.
+		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__'' is serving as the Wardeness in $cellblockName.
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
 		<<include "SA rules">>
@@ -258,7 +258,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 		<<if $slaves[$i].choosesOwnAssignment == 2>>
 			<<include "SA chooses own job">>
 		<<else>>
diff --git a/src/uncategorized/clinicReport.tw b/src/uncategorized/clinicReport.tw
index a1254fd9b78..b0b8e8e5ffd 100644
--- a/src/uncategorized/clinicReport.tw
+++ b/src/uncategorized/clinicReport.tw
@@ -39,7 +39,7 @@
 		<</if>>
 	<</if>>
 	<<set $Nurse = $slaves[_FLs]>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<SlaveFullName $Nurse>> is serving as the clinical nurse.
+	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName($Nurse)>> is serving as the clinical nurse.
 	<<if $Nurse.relationship == -3 && $Nurse.devotion > 50>>
 		She does her best to be a caring and nurturing wife.
 		<<set _healthBonus += 2>>
@@ -213,7 +213,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[_FLs]>>@@__'' is serving as the clinical nurse.
+		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as the clinical nurse.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
 		<<include "SA rules">>
@@ -289,7 +289,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 		<<if $slaves[$i].choosesOwnAssignment == 2>>
 			<<include "SA chooses own job">>
 		<<else>>
diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw
index 44460378814..8dbdffa6dd9 100644
--- a/src/uncategorized/clubReport.tw
+++ b/src/uncategorized/clubReport.tw
@@ -46,7 +46,7 @@
 	/% Make sure we have registered living expenses as for any other slave %/
 	<<run getSlaveStatisticData($DJ, $facility.club)>>
 	<<set $DJ = $slaves[_FLs]>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<SlaveFullName $DJ>> is performing as the DJ.
+	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName($DJ)>> is performing as the DJ.
 	<<if $DJ.relationship == -3 && $DJ.devotion > 50>>
 		She tries her best to be your energetic, cheerful wife.
 		<<set $DJRepBonus += 0.1>>
@@ -138,7 +138,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[_FLs]>>@@__'' is performing as the DJ in $clubName.
+		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is performing as the DJ in $clubName.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
 		<<include "SA rules">>
@@ -238,7 +238,7 @@
 			</div>
 			<</if>>
 			/* 000-250-006 */
-			''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+			''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 			<<if $slaves[$i].choosesOwnAssignment == 2>>
 				<<include "SA chooses own job">>
 			<<else>>
diff --git a/src/uncategorized/concubineSelect.tw b/src/uncategorized/concubineSelect.tw
index 5b0299a879b..de211911a9a 100644
--- a/src/uncategorized/concubineSelect.tw
+++ b/src/uncategorized/concubineSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Master Suite", $showEncyclopedia = 1, $encyclopedia = "Concubine">>
 <<showallAssignmentFilter>>
 <<if ($Concubine != 0)>>
-	''__@@.pink;<<SlaveFullName $Concubine>>@@__'' is serving as your Concubine.<br><br>She will take the lead in seeing to your pleasure.
+	''__@@.pink;<<= SlaveFullName($Concubine)>>@@__'' is serving as your Concubine.<br><br>She will take the lead in seeing to your pleasure.
 <<else>>
 	You have not selected a Concubine.
 <</if>>
diff --git a/src/uncategorized/coursingAssociation.tw b/src/uncategorized/coursingAssociation.tw
index 8583cdca472..52c1eaa1976 100644
--- a/src/uncategorized/coursingAssociation.tw
+++ b/src/uncategorized/coursingAssociation.tw
@@ -9,7 +9,7 @@ You are a member of $arcologies[0].name's Coursing Association. Coursing is a Fr
 <br><br>The chasing slaves are known as lurchers, the term once used for the sighthounds. They require speed most of all, but must also be able to tackle their quarry; lurchers with the ability and willingness to make a spectacle of molesting the hares can improve their owners' reputations.
 <<showallAssignmentFilter>>
 <<if $Lurcher != 0>>
-	<<SlaveFullName $Lurcher>> is assigned to compete as your lurcher.
+	<<= SlaveFullName($Lurcher)>> is assigned to compete as your lurcher.
 <<else>>
 	You have not selected a lurcher, meaning that you will not participate in coursing events.
 <</if>>
diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw
index c3fd638e642..ed33c55cd44 100644
--- a/src/uncategorized/dairyReport.tw
+++ b/src/uncategorized/dairyReport.tw
@@ -50,7 +50,7 @@
 	<</if>>
 	<<run getSlaveStatisticData($Milkmaid, $facility.dairy)>>
 	<<set $Milkmaid = $slaves[_FLs], $i = _FLs>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<SlaveFullName $Milkmaid>> is serving as your Milkmaid.
+	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName($Milkmaid)>> is serving as your Milkmaid.
 	<<if $Milkmaid.relationship == -3 && $Milkmaid.devotion > 50>>
 		<<set $milkmaidDevotionBonus += 2, $milkmaidTrustBonus += 2>>
 		She tries her best to be your perfect farmwife.
@@ -258,7 +258,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[_FLs]>>@@__'' is serving as your Milkmaid.
+		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as your Milkmaid.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
 		<<include "SA rules">>
@@ -358,7 +358,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 		<<if $slaves[$i].choosesOwnAssignment == 2>>
 			<<include "SA chooses own job">>
 		<<else>>
@@ -1031,7 +1031,7 @@ $dairyNameCaps produced <<print _milkWeek+_outputMilk>> liters of milk<<if _cumW
 	<<for _dI = 0; _dI < _DL; _dI++>>
 		<<set $i = $slaveIndices[$DairyiIDs[_dI]]>>
 		<<if ($slaves[$i].ID == $bioreactorPerfectedID)>>
-			<br><br>&nbsp;&nbsp;&nbsp;&nbsp;<<SlaveFullName $slaves[$i]>>'s breasts<<if $slaves[$i].balls > 0>>, balls<</if>><<if $slaves[$i].ovaries == 1>>, belly<</if>>, body, and mind have been completely adapted to synthesize useful products. She has been reclassified as part of the machine she's now permanently attached to. This combination is projected to produce approximately
+			<br><br>&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName($slaves[$i])>>'s breasts<<if $slaves[$i].balls > 0>>, balls<</if>><<if $slaves[$i].ovaries == 1>>, belly<</if>>, body, and mind have been completely adapted to synthesize useful products. She has been reclassified as part of the machine she's now permanently attached to. This combination is projected to produce approximately
 			<<if $slaves[$i].balls > 0>><<print 1000*Math.trunc((3*52*(45-$slaves[$i].physicalAge))/1000)>> liters of cum,<</if>>
 			<<if $slaves[$i].ovaries == 1>><<print 100*Math.trunc((52*(45-$slaves[$i].physicalAge))/100)>> liters of vaginal secretions, <<if $dairyPregSetting == 3>><<print 13*(45-$slaves[$i].physicalAge)>><<else>><<print 5*(45-$slaves[$i].physicalAge)>><</if>> slaves,<</if>>
 			and <<print 1000*Math.trunc((300*52*(45-$slaves[$i].physicalAge))/1000)>> liters of milk over a <<print 45-$slaves[$i].physicalAge>> year period before its biological components must be replaced.
diff --git a/src/uncategorized/djSelect.tw b/src/uncategorized/djSelect.tw
index ab31adb2143..09971ddbab2 100644
--- a/src/uncategorized/djSelect.tw
+++ b/src/uncategorized/djSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Club", $showEncyclopedia = 1>><<set $encyclopedia = "DJ">>
 <<showallAssignmentFilter>>
 <<if ($DJ != 0)>>
-	''__@@.pink;<<SlaveFullName $DJ>>@@__'' is serving as your DJ.<br><br>She will headline entertainment in $clubName.
+	''__@@.pink;<<= SlaveFullName($DJ)>>@@__'' is serving as your DJ.<br><br>She will headline entertainment in $clubName.
 <<else>>
 	You have not selected a DJ.
 <</if>>
diff --git a/src/uncategorized/fsDevelopments.tw b/src/uncategorized/fsDevelopments.tw
index c76d691ebf2..d52e39f094f 100644
--- a/src/uncategorized/fsDevelopments.tw
+++ b/src/uncategorized/fsDevelopments.tw
@@ -134,7 +134,7 @@
 				<<set _broadProgress += 1>>
 			<</if>>
 		<<else>>
-			''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' is able to further boost your societal engineering campaign from her PR hub office.
+			''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is able to further boost your societal engineering campaign from her PR hub office.
 			<<if $propCampaignBoost == 1>>
 				<<set _broadProgress += 4+$Recruiter.intelligence+$Recruiter.intelligenceImplant>>
 			<<else>>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index d625959d135..9dd12b4ba85 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -19,7 +19,7 @@
 &nbsp;&nbsp;&nbsp;&nbsp;
 
 
-''@@.pink;<<SlaveFullName $activeSlave>>@@''
+''@@.pink;<<= SlaveFullName($activeSlave)>>@@''
 
 <<if ($activeSlave.customLabel != "")>> (@@.yellow;''<<print $activeSlave.customLabel>>''@@)<</if>>
 
@@ -91,7 +91,7 @@ is
 	<<if $activeSlave.assignment == "be a subordinate slave">>
 		<<set _lsd = $slaveIndices[$activeSlave.subTarget]>>
 		<<if def _lsd>>
-			$He has been ordered to serve ''@@.pink;<<SlaveFullName $slaves[_lsd]>>@@'' specifically.
+			$He has been ordered to serve ''@@.pink;<<= SlaveFullName($slaves[_lsd])>>@@'' specifically.
 		<</if>>
 	<</if>>
 <<else>>
@@ -201,15 +201,15 @@ $He comes to you for an inspection
 <<if def _lsd>>
 	$He is
 	<<if $activeSlave.relationship <= 1>>
-		''@@.lightgreen;friends with <<SlaveFullName $slaves[_lsd]>>;@@'' the rules <<if $activeSlave.relationshipRules != "restrictive">>encourage<<else>> discourage<</if>> their relationship.
+		''@@.lightgreen;friends with <<= SlaveFullName($slaves[_lsd])>>;@@'' the rules <<if $activeSlave.relationshipRules != "restrictive">>encourage<<else>> discourage<</if>> their relationship.
 	<<elseif $activeSlave.relationship <= 2>>
-		''@@.lightgreen;best friends with <<SlaveFullName $slaves[_lsd]>>;@@'' the rules <<if $activeSlave.relationshipRules != "restrictive">>encourage<<else>> discourage<</if>> their close relationship.
+		''@@.lightgreen;best friends with <<= SlaveFullName($slaves[_lsd])>>;@@'' the rules <<if $activeSlave.relationshipRules != "restrictive">>encourage<<else>> discourage<</if>> their close relationship.
 	<<elseif $activeSlave.relationship <= 3>>
-		''@@.lightgreen;<<SlaveFullName $slaves[_lsd]>>'s friend with benefits;@@'' the rules <<if $activeSlave.relationshipRules == "permissive">>encourage<<else>> discourage<</if>> their sexual relationship.
+		''@@.lightgreen;<<= SlaveFullName($slaves[_lsd])>>'s friend with benefits;@@'' the rules <<if $activeSlave.relationshipRules == "permissive">>encourage<<else>> discourage<</if>> their sexual relationship.
 	<<elseif $activeSlave.relationship <= 4>>
-		''@@.lightgreen;<<SlaveFullName $slaves[_lsd]>>'s lover;@@'' the rules <<if $activeSlave.relationshipRules == "permissive">>encourage<<else>> discourage<</if>> their passionate relationship.
+		''@@.lightgreen;<<= SlaveFullName($slaves[_lsd])>>'s lover;@@'' the rules <<if $activeSlave.relationshipRules == "permissive">>encourage<<else>> discourage<</if>> their passionate relationship.
 	<<elseif $slaves[_lsd].relationship > 4>>
-		''@@.lightgreen;<<SlaveFullName $slaves[_lsd]>>'s slave wife;@@'' the rules <<if $activeSlave.relationshipRules == "permissive">>encourage<<else>> discourage<</if>> marital bliss.
+		''@@.lightgreen;<<= SlaveFullName($slaves[_lsd])>>'s slave wife;@@'' the rules <<if $activeSlave.relationshipRules == "permissive">>encourage<<else>> discourage<</if>> marital bliss.
 	<</if>>
 <</if>>
 <<elseif $activeSlave.fuckdoll == 0>>
@@ -292,7 +292,7 @@ $He comes to you for an inspection
 <<if $activeSlave.slaveName != $activeSlave.birthName || $activeSlave.slaveSurname != $activeSlave.birthSurname>>
 <<if $activeSlave.fuckdoll == 0>>
 	<<if $activeSlave.slaveName != $activeSlave.birthName && $activeSlave.slaveSurname != $activeSlave.birthSurname>>
-		<<SlaveFullName $activeSlave>> is not $his original full name;
+		<<= SlaveFullName($activeSlave)>> is not $his original full name;
 		<<if $activeSlave.birthName === "" || $activeSlave.birthSurname === "">>
 			whatever it was, however, has been lost forever.
 		<</if>>
@@ -1136,19 +1136,19 @@ when a dick is pushed inside <<if $activeSlave.vagina >= -1>>either of its lower
 	<<set _lover = getSlave($activeSlave.relationshipTarget)>>
 	<<if def _lover>>
 		<<if $activeSlave.mother == _lover.ID>>
-			$He is in an @@.lightgreen;incestuous relationship with $his mother, <<SlaveFullName _lover>>.@@
+			$He is in an @@.lightgreen;incestuous relationship with $his mother, <<= SlaveFullName(_lover)>>.@@
 		<<elseif $activeSlave.father == _lover.ID>>
-			$He is in an @@.lightgreen;incestuous relationship with $his father, <<SlaveFullName _lover>>.@@
+			$He is in an @@.lightgreen;incestuous relationship with $his father, <<= SlaveFullName(_lover)>>.@@
 		<<elseif _lover.mother == $activeSlave.ID || _lover.father == $activeSlave.ID>>
-			$He is in an @@.lightgreen;incestuous relationship with $his daughter, <<SlaveFullName _lover>>.@@
+			$He is in an @@.lightgreen;incestuous relationship with $his daughter, <<= SlaveFullName(_lover)>>.@@
 		<<else>>
 			<<switch areSisters($activeSlave, _lover)>>
 			<<case 1>>
-				$He is in an @@.lightgreen;incestuous relationship with $his twin, <<SlaveFullName _lover>>.@@
+				$He is in an @@.lightgreen;incestuous relationship with $his twin, <<= SlaveFullName(_lover)>>.@@
 			<<case 2>>
-				$He is in an @@.lightgreen;incestuous relationship with $his sister, <<SlaveFullName _lover>>.@@
+				$He is in an @@.lightgreen;incestuous relationship with $his sister, <<= SlaveFullName(_lover)>>.@@
 			<<case 3>>
-				$He is in an @@.lightgreen;incestuous relationship with $his half-sister, <<SlaveFullName _lover>>.@@
+				$He is in an @@.lightgreen;incestuous relationship with $his half-sister, <<= SlaveFullName(_lover)>>.@@
 			<</switch>>
 		<</if>>
 	<</if>>
@@ -1192,9 +1192,9 @@ when a dick is pushed inside <<if $activeSlave.vagina >= -1>>either of its lower
 	<<set _lsd = $slaveIndices[$activeSlave.relationTarget]>>
 	<<if def _lsd>>
 		<<if ($slaves[_lsd].ID == $activeSlave.relationshipTarget) && ($activeSlave.relationship >= 3)>>
-			$He is @@.lightgreen;<<SlaveFullName $slaves[_lsd]>>'s $activeSlave.relation, making their relationship incestuous.@@
+			$He is @@.lightgreen;<<= SlaveFullName($slaves[_lsd])>>'s $activeSlave.relation, making their relationship incestuous.@@
 		<<else>>
-			$He is @@.lightgreen;<<SlaveFullName $slaves[_lsd]>>'s $activeSlave.relation.@@
+			$He is @@.lightgreen;<<= SlaveFullName($slaves[_lsd])>>'s $activeSlave.relation.@@
 		<</if>>
 	<</if>>
 <</if>>
@@ -1206,11 +1206,11 @@ when a dick is pushed inside <<if $activeSlave.vagina >= -1>>either of its lower
 	<<if def _lsd>>
 		$He
 		<<if $activeSlave.rivalry <= 1>>
-			@@.lightsalmon;dislikes@@ <<SlaveFullName $slaves[_lsd]>>.
+			@@.lightsalmon;dislikes@@ <<= SlaveFullName($slaves[_lsd])>>.
 		<<elseif $activeSlave.rivalry <= 2>>
-			is <<SlaveFullName $slaves[_lsd]>>'s @@.lightsalmon;rival.@@
+			is <<= SlaveFullName($slaves[_lsd])>>'s @@.lightsalmon;rival.@@
 		<<else>>
-			@@.lightsalmon;bitterly hates@@ <<SlaveFullName $slaves[_lsd]>>.
+			@@.lightsalmon;bitterly hates@@ <<= SlaveFullName($slaves[_lsd])>>.
    		<</if>>
 	<</if>>
 <</if>>
@@ -1222,7 +1222,7 @@ when a dick is pushed inside <<if $activeSlave.vagina >= -1>>either of its lower
 	<<if $activeSlave.fetish != "mindbroken" && $activeSlave.fuckdoll == 0 && $activeSlave.origBodyOwnerID > 0>>
 		<<set _lsd = $slaveIndices[$activeSlave.origBodyOwnerID]>>
 		<<if def _lsd>>
-			$He is fully aware that <<SlaveFullName $slaves[_lsd]>> is in $his old body.
+			$He is fully aware that <<= SlaveFullName($slaves[_lsd])>> is in $his old body.
 		<</if>>
 	<</if>>
 <</if>>
diff --git a/src/uncategorized/madamSelect.tw b/src/uncategorized/madamSelect.tw
index f0a441c6d80..16237564f8b 100644
--- a/src/uncategorized/madamSelect.tw
+++ b/src/uncategorized/madamSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Brothel", $showEncyclopedia = 1, $encyclopedia = "Madam">>
 <<showallAssignmentFilter>>
 <<if ($Madam != 0)>>
-	''__@@.pink;<<SlaveFullName $Madam>>@@__'' is serving as your Madam.<br><br>She will manage the brothel.
+	''__@@.pink;<<= SlaveFullName($Madam)>>@@__'' is serving as your Madam.<br><br>She will manage the brothel.
 <<else>>
 	You have not selected a Madam.
 <</if>>
diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw
index 9ff5815ced9..db215524348 100644
--- a/src/uncategorized/main.tw
+++ b/src/uncategorized/main.tw
@@ -145,7 +145,7 @@ __''MAIN MENU''__&nbsp;&nbsp;&nbsp;&nbsp;//[[Summary Options]]//
 		<div class="content">
 			<<set $slaveAssignmentTab = "overview">>			
 			<<if def _HG>>
-				''__@@.pink;<<SlaveFullName $HeadGirl>>@@__'' is serving as your head girl<<if $arcologies[0].FSEgyptianRevivalistLaw == 1>> and Consort<</if>>.
+				''__@@.pink;<<= SlaveFullName($HeadGirl)>>@@__'' is serving as your head girl<<if $arcologies[0].FSEgyptianRevivalistLaw == 1>> and Consort<</if>>.
 				<span id="manageHG"><strong><<link "Manage Head Girl">><<goto "HG Select">><</link>></strong></span> @@.cyan;[H]@@
 				<<set $showOneSlave = "Head Girl">>
 				<<include "Slave Summary">>
@@ -156,7 +156,7 @@ __''MAIN MENU''__&nbsp;&nbsp;&nbsp;&nbsp;//[[Summary Options]]//
 			<</if>>
 			<br><br>
 			<<if def _RC>>
-				''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' is working
+				''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is working
 				<<if $recruiterTarget != "other arcologies">>
 					to recruit girls.
 				<<else>>
@@ -177,7 +177,7 @@ __''MAIN MENU''__&nbsp;&nbsp;&nbsp;&nbsp;//[[Summary Options]]//
 			<<if ($dojo != 0)>>
 				<br><br>
 				<<if def _BG>>
-					''__@@.pink;<<SlaveFullName $Bodyguard>>@@__'' is serving as your bodyguard. <span id="manageBG"><strong><<link "Manage Bodyguard">><<goto "BG Select">><</link>></strong></span> @@.cyan;[B]@@
+					''__@@.pink;<<= SlaveFullName($Bodyguard)>>@@__'' is serving as your bodyguard. <span id="manageBG"><strong><<link "Manage Bodyguard">><<goto "BG Select">><</link>></strong></span> @@.cyan;[B]@@
 					<<set $showOneSlave = "guard you">>
 					<<include "Slave Summary">>
 				<<else>>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index 28517020d49..ee73218403e 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -107,7 +107,7 @@
 		/* 000-250-006 */
 		<<if ($slaves[$i].assignment == "be your Concubine")>>
 			<<set $Concubine = $slaves[_FLs]>>
-			''Your concubine <<SlaveFullName $Concubine>> is serving you in $masterSuiteName.'' More than any other slave, her sexual brilliance and physical appeal are @@.green;critical@@ to your reputation.
+			''Your concubine <<= SlaveFullName($Concubine)>> is serving you in $masterSuiteName.'' More than any other slave, her sexual brilliance and physical appeal are @@.green;critical@@ to your reputation.
 
 			<<if ($Concubine.career == "an arcology owner")>>
 				She was once your rival, and your relationship is widely thought to be @@.green;the perfect modern romance.@@
@@ -164,7 +164,7 @@
 				<<set $slaves[$i].devotion++>>
 			<</if>>
 		<<else>> /* not Concubine */
-			''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+			''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 			<<if $slaves[$i].choosesOwnAssignment == 2>>
 				<<include "SA chooses own job">>
 			<<else>>
diff --git a/src/uncategorized/milkmaidSelect.tw b/src/uncategorized/milkmaidSelect.tw
index 49816bff5dc..3b376235814 100644
--- a/src/uncategorized/milkmaidSelect.tw
+++ b/src/uncategorized/milkmaidSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Dairy", $showEncyclopedia = 1, $encyclopedia = "Milkmaid">>
 <<showallAssignmentFilter>>
 <<if ($Milkmaid != 0)>>
-	''__@@.pink;<<SlaveFullName $Milkmaid>>@@__'' is serving as your Milkmaid.<br><br>She will look after your livestock, helping them give milk<<if $seeDicks > 0>> and semen<</if>>.
+	''__@@.pink;<<= SlaveFullName($Milkmaid)>>@@__'' is serving as your Milkmaid.<br><br>She will look after your livestock, helping them give milk<<if $seeDicks > 0>> and semen<</if>>.
 <<else>>
 	You have not selected a Milkmaid.
 <</if>>
diff --git a/src/uncategorized/neighborInteract.tw b/src/uncategorized/neighborInteract.tw
index f29fd3c3c20..930dc798dfa 100644
--- a/src/uncategorized/neighborInteract.tw
+++ b/src/uncategorized/neighborInteract.tw
@@ -228,7 +228,7 @@ A 1% interest in $activeArcology.name is worth <<print cashFormat($seed)>> and w
 		<br>
 		<<for $j = 0; $j < $leaders.length; $j++>>
 		<<if $activeArcology.leaderID == $leaders[$j].ID>>
-			Your agent @@.deeppink;<<SlaveFullName $leaders[$j]>>@@ is running this arcology. [[Recall and reenslave her|Agent Retrieve]]
+			Your agent @@.deeppink;<<= SlaveFullName($leaders[$j])>>@@ is running this arcology. [[Recall and reenslave her|Agent Retrieve]]
 			<span id="rename"> | <<link "Instruct her to rename the arcology">><<replace #rename>> | <<textbox "$activeArcology.name" $activeArcology.name>> [[Confirm name|Neighbor Interact]]<</replace>><</link>></span>
 			<br>Her <<if $leaders[$j].intelligence >= 3>>brilliance<<else>>intelligence<</if>> and education are the most important qualities for her.
 			<<if $leaders[$j].actualAge > 35>>
diff --git a/src/uncategorized/neighborsDevelopment.tw b/src/uncategorized/neighborsDevelopment.tw
index 7347b94396e..2df820584f3 100644
--- a/src/uncategorized/neighborsDevelopment.tw
+++ b/src/uncategorized/neighborsDevelopment.tw
@@ -49,7 +49,7 @@
 <<if $arcologies[$i].government == "your agent">>
 <<for _k = 0; _k < $leaders.length; _k++>>
 <<if $leaders[_k].ID == $arcologies[$i].leaderID>>
-	is being run by your agent @@.deeppink;<<SlaveFullName $leaders[_k]>>@@.
+	is being run by your agent @@.deeppink;<<= SlaveFullName($leaders[_k])>>@@.
 	<<set _agentIndex = $slaveIndices[$leaders[_k].ID]>>
 	<<if def _agentIndex && $slaves[_agentIndex].assignment != "be your agent">>
 		@@.red;BUG: $slaves[_agentIndex].slaveName also was <<print $slaves[_agentIndex].assignment>>!@@
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index 71f2062ff6f..1bb54f4cfdf 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -19,7 +19,7 @@
 <</if>>
 
 <br>
-The legalities completed, ''__@@.pink;<<SlaveFullName $activeSlave>>@@__'' <<if $activeSlave.amp == 1>>lies helplessly on your desk,<<elseif !canWalk($activeSlave)>>kneels before your desk,<<else>>stands before your desk,<</if>>
+The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<if $activeSlave.amp == 1>>lies helplessly on your desk,<<elseif !canWalk($activeSlave)>>kneels before your desk,<<else>>stands before your desk,<</if>>
 <<if $activeSlave.devotion < -50>>
 	looking you in the eyes with defiance.
 <<elseif $activeSlave.devotion < -20>>
diff --git a/src/uncategorized/nurseSelect.tw b/src/uncategorized/nurseSelect.tw
index 681c9825f87..0f32ba3b5fb 100644
--- a/src/uncategorized/nurseSelect.tw
+++ b/src/uncategorized/nurseSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Clinic", $showEncyclopedia = 1, $encyclopedia = "Nurse">>
 <<showallAssignmentFilter>>
 <<if ($Nurse != 0)>>
-	''__@@.pink;<<SlaveFullName $Nurse>>@@__'' is serving as your Nurse.<br><br>She will help heal your slaves.
+	''__@@.pink;<<= SlaveFullName($Nurse)>>@@__'' is serving as your Nurse.<br><br>She will help heal your slaves.
 <<else>>
 	You have not selected a Nurse.
 <</if>>
diff --git a/src/uncategorized/pHostageAcquisition.tw b/src/uncategorized/pHostageAcquisition.tw
index b7f2d074687..d593002e6f2 100644
--- a/src/uncategorized/pHostageAcquisition.tw
+++ b/src/uncategorized/pHostageAcquisition.tw
@@ -7,7 +7,7 @@
 <<set $activeSlave.ID += 55555>>
 <<set $activeSlave.weekAcquired = $week>>
 
-<<SlaveFullName $activeSlave>>, once
+<<= SlaveFullName($activeSlave)>>, once
 <<switch $PC.career>>
 <<case "wealth">>
 	a popular party girl
diff --git a/src/uncategorized/pRivalryActions.tw b/src/uncategorized/pRivalryActions.tw
index 705a07c2f4c..a7113e45096 100644
--- a/src/uncategorized/pRivalryActions.tw
+++ b/src/uncategorized/pRivalryActions.tw
@@ -19,7 +19,7 @@
 Your inter-arcology war with the arcology owner behind the Daughters of Liberty has dragged on for $rivalryDuration week<<if $rivalryDuration > 1>>s<</if>>. The tone of your arcology is a bit more somber than usual. You have enhanced security in place, and the populace has caught the mood.
 
 <<if $hostageAnnounced == 1>>
-<<if $rivalryDuration >= 30>>The latest message from your rival is a live communication.<<else>>The latest message from your rival recently arrived, showing <<SlaveFullName $hostage>><</if>>
+<<if $rivalryDuration >= 30>>The latest message from your rival is a live communication.<<else>>The latest message from your rival recently arrived, showing <<= SlaveFullName($hostage)>><</if>>
 <<if $rivalryDuration == 1>>
 	<<switch $rivalryFS>>
 	<<case "Racial Subjugationism">>
@@ -1253,7 +1253,7 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 		<<set $hostage.fetishStrength = 100>>
 		<<set $hostage.vaginalCount += 60>>
 		<<set $hostage.vagina = 5>>
-		moaning as she shoves food into her mouth with one hand and fondles her lover's body with the other. "My apologies. I don't have her weight for you this week. You see, she broke the scale when she stepped on it, well I suppose that tells you plenty. Though I have another surprise for you! <<SlaveFullName $hostage>>, would you like to tell 'em yourself?" She shouts, spewing crumbs everywhere,
+		moaning as she shoves food into her mouth with one hand and fondles her lover's body with the other. "My apologies. I don't have her weight for you this week. You see, she broke the scale when she stepped on it, well I suppose that tells you plenty. Though I have another surprise for you! <<= SlaveFullName($hostage)>>, would you like to tell 'em yourself?" She shouts, spewing crumbs everywhere,
 		<<switch $hostageFetish>>
 		<<case "submissive">>
 			"I haven't orgasmed all week, but I've made sure to bring every one of my lovers to climax! That's what I love most, seeing the look of satisfaction on their faces as they blow their loads deep into me!"
@@ -1310,45 +1310,45 @@ Your inter-arcology war with the arcology owner behind the Daughters of Liberty
 	<<set $hostageAnnounced = 0>>
 	<<switch $rivalryFS>>
 	<<case "Racial Subjugationism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her and her lovers someplace far away. Someplace you'll never find them. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her and her lovers someplace far away. Someplace you'll never find them. Bet tha-You end the call.
 	<<case "Racial Supremacism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, the poor bitch died trying to give birth to her baby. We had lots of room in the clinic too, but slaves like her aren't worth the expenses, you know? I should find some more people you knew, keep our little game goi-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, the poor bitch died trying to give birth to her baby. We had lots of room in the clinic too, but slaves like her aren't worth the expenses, you know? I should find some more people you knew, keep our little game goi-You end the call.
 	<<case "Repopulation Focus">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
 	<<case "Eugenics">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
 	<<case "Gender Radicalism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. I'll miss her, of course, but there is no way I'd let you have her. Bet that piss-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. I'll miss her, of course, but there is no way I'd let you have her. Bet that piss-You end the call.
 	<<case "Gender Fundamentalism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, she took a dick a little too big for her ass and ruined her sphincter. She's off, someplace far away, recovering. But I'll never tell you where, bet that piss-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, she took a dick a little too big for her ass and ruined her sphincter. She's off, someplace far away, recovering. But I'll never tell you where, bet that piss-You end the call.
 	<<case "Paternalism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, she got kicked around just a little too much. We had lots of fun with her, before she broke of course... Say, do you have anyone else you love, or even were familiar with? I should acquire them, keep our little game goi-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, she got kicked around just a little too much. We had lots of fun with her, before she broke of course... Say, do you have anyone else you love, or even were familiar with? I should acquire them, keep our little game goi-You end the call.
 	<<case "Degradationism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. I'll miss her, of course, but there is no way I'd let you have her. I'll keep her saf-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. I'll miss her, of course, but there is no way I'd let you have her. I'll keep her saf-You end the call.
 	<<case "Body Purism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, apparently implants can be too big. Her breasts literally popped, couldn't save her though. Definitely going to miss playing with those balloons. I should hunt down more people you knew, keep our little game goi-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, apparently implants can be too big. Her breasts literally popped, couldn't save her though. Definitely going to miss playing with those balloons. I should hunt down more people you knew, keep our little game goi-You end the call.
 	<<case "Transformation Fetishism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
 	<<case "Youth Preferentialism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her and her lover someplace far away. Someplace you'll never find them. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her and her lover someplace far away. Someplace you'll never find them. Bet tha-You end the call.
 	<<case "Maturity Preferentialism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her and her lover someplace far away. Someplace you'll never find them. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her and her lover someplace far away. Someplace you'll never find them. Bet tha-You end the call.
 	<<case "Slimness Enthusiasm">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, apparently those growth drugs have quite the side effects. Pretty much had cancer everywhere. Definitely going to miss playing with those milkbags, though. I should hunt down more people you knew, keep our little game goi-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, apparently those growth drugs have quite the side effects. Pretty much had cancer everywhere. Definitely going to miss playing with those milkbags, though. I should hunt down more people you knew, keep our little game goi-You end the call.
 	<<case "Asset Expansionism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
 	<<case "Pastoralism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. I'll miss her, of course, but there is no way I'd let you have her. Bet that piss-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. I'll miss her, of course, but there is no way I'd let you have her. Bet that piss-You end the call.
 	<<case "Physical Idealism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, apparently being that fat isn't good for your heart, who knew? Definitely going to miss playing with those folds; she jiggled so much when I fucked her. I should hunt down more people you knew, fatten them up, keep our little game goi-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, apparently being that fat isn't good for your heart, who knew? Definitely going to miss playing with those folds; she jiggled so much when I fucked her. I should hunt down more people you knew, fatten them up, keep our little game goi-You end the call.
 	<<case "Hedonistic Decadence">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. I'll miss her, of course, but there is no way I'd let you have her. Bet that piss-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. I'll miss her, of course, but there is no way I'd let you have her. Bet that piss-You end the call.
 	<<case "Chattel Religionism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
 	<<case "Multiculturalism">>
-		Looking for <<SlaveFullName $hostage>>? Too bad, she decided to martyr herself for your arcology's salvation. Got fucked till her body gave out. Of course I enjoyed her in her final moments, and don't worry, she died smiling. I should hunt down more people you knew, keep our little game goi-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, she decided to martyr herself for your arcology's salvation. Got fucked till her body gave out. Of course I enjoyed her in her final moments, and don't worry, she died smiling. I should hunt down more people you knew, keep our little game goi-You end the call.
 	<<default>>
-		Looking for <<SlaveFullName $hostage>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
+		Looking for <<= SlaveFullName($hostage)>>? Too bad, I couldn't bear to think of you ever getting your rotten little hands on her, so I sent her far away. Someplace you'll never find her. Bet tha-You end the call.
 	<</switch>>
 <<else>>
 <<set $seed = random(0,2)>>
diff --git a/src/uncategorized/pRivalryHostage.tw b/src/uncategorized/pRivalryHostage.tw
index 9815e1f7cbb..32a987532bd 100644
--- a/src/uncategorized/pRivalryHostage.tw
+++ b/src/uncategorized/pRivalryHostage.tw
@@ -280,66 +280,66 @@ but you do remember her, and your rival knows it. This is obviously the best the
 but look what I have here! I just acquired her recently. Lovely, isn't she? I know she wasn't important to you, but she //is// a reminder of who you were. I think she must have been your type." Your rival turns to the slave and continues. "While we have our little war,
 <<switch $rivalryFS>>
 <<case "Racial Subjugationism">>
-	I'm going to treat her well. Train her. She's a fine Head Girl prospect, don't you think? She'll have lots of nice $arcologies[0].FSSubjugationistRace girls to make love to whenever she wants. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	I'm going to treat her well. Train her. She's a fine Head Girl prospect, don't you think? She'll have lots of nice $arcologies[0].FSSubjugationistRace girls to make love to whenever she wants. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <<case "Racial Supremacism">>
-	I'm going to destroy her. She's got a whipping post with her name on it, right between a couple of $arcologies[0].FSSupremacist bitches. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave begins to scream, and the noise goes on and on as the slave is tied up and scourged.
+	I'm going to destroy her. She's got a whipping post with her name on it, right between a couple of $arcologies[0].FSSupremacist bitches. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave begins to scream, and the noise goes on and on as the slave is tied up and scourged.
 <<case "Gender Radicalism">>
 	I'm going to treat her well. Train her. Teach her her proper role in society, and make her happy here. Isn't that right, $activeSlave.slaveName?" The slave nods uncertainly.
 <<case "Gender Fundamentalism">>
-	She's going to be my special pet. She'll have everything she could ever want, as long as she has a dick up her ass. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods hesitantly, but with evident arousal.
+	She's going to be my special pet. She'll have everything she could ever want, as long as she has a dick up her ass. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods hesitantly, but with evident arousal.
 <<case "Paternalism">>
-	I'm going to destroy her. Holes first, of course. I'll have to get more inventive after that, and I'll leave her vocal cords for last. That way, she'll be able to beg. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave begins to scream, and the noise goes on and on. And on.
+	I'm going to destroy her. Holes first, of course. I'll have to get more inventive after that, and I'll leave her vocal cords for last. That way, she'll be able to beg. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave begins to scream, and the noise goes on and on. And on.
 <<case "Repopulation Focus">>
 	I'm going to ruin her womb, making sure she can never have children again. I bet you spent lots of nights fantasizing about her with a huge belly didn't you?
 	<<set $activeSlave.preg = -3>>
 <<case "Eugenics">>
 	<<if $seeHyperPreg == 1>>
-		I'm going to have her knocked up; not with my seed, of course, but the seed of the lowest of the low. I'm also going to fill her with the most powerful experimental fertility drugs out there. She'll have so many children shoved into her poor womb she'll be bursting at the seams. But she'll enjoy that, won't you <<SlaveFullName $activeSlave>>?" The slave nods hesitantly, but with evident arousal.
+		I'm going to have her knocked up; not with my seed, of course, but the seed of the lowest of the low. I'm also going to fill her with the most powerful experimental fertility drugs out there. She'll have so many children shoved into her poor womb she'll be bursting at the seams. But she'll enjoy that, won't you <<= SlaveFullName($activeSlave)>>?" The slave nods hesitantly, but with evident arousal.
 	<<else>>
-		I'm going to have her knocked up; not with my seed, of course, but the seed of the lowest of the low. I'm also going to fill her with the most powerful fertility drugs I can get. Her poor little womb will be stretched to the limit with society's worst. But she'll enjoy that, won't you <<SlaveFullName $activeSlave>>?" The slave nods hesitantly, but with evident arousal.
+		I'm going to have her knocked up; not with my seed, of course, but the seed of the lowest of the low. I'm also going to fill her with the most powerful fertility drugs I can get. Her poor little womb will be stretched to the limit with society's worst. But she'll enjoy that, won't you <<= SlaveFullName($activeSlave)>>?" The slave nods hesitantly, but with evident arousal.
 	<</if>>
 <<case "Degradationism">>
-	She's going to be my lover. She'll have everything she could ever want, and I'll be sure to let her know all about what you do to your slaves. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	She's going to be my lover. She'll have everything she could ever want, and I'll be sure to let her know all about what you do to your slaves. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <<case "Body Purism">>
-	I'm going to give her a nice pair of fake tits. No reason to be excessively clever when I can just make her tits so huge she won't be able to walk. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave begins to sob.
+	I'm going to give her a nice pair of fake tits. No reason to be excessively clever when I can just make her tits so huge she won't be able to walk. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave begins to sob.
 	<<set $activeSlave.boobs = 300>>
 <<case "Transformation Fetishism">>
-	She's going to be my lover. I'll be sure to let her know all about what you do to your slaves, and rest assured, I'll never treat her that way. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	She's going to be my lover. I'll be sure to let her know all about what you do to your slaves, and rest assured, I'll never treat her that way. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <<case "Youth Preferentialism">>
-	I've set her up with a nice motherly woman already. I believe they'll be a perfect match. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	I've set her up with a nice motherly woman already. I believe they'll be a perfect match. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <<case "Maturity Preferentialism">>
-	I've set her up with a nice young girl already.  I believe they'll be a perfect match. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	I've set her up with a nice young girl already.  I believe they'll be a perfect match. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <<case "Slimness Enthusiasm">>
-	I think I'll make her IV line permanent. After all, she's never going off breast growth hormones. I'd estimate she shouldn't be able to walk within a month. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave begins to sob.
+	I think I'll make her IV line permanent. After all, she's never going off breast growth hormones. I'd estimate she shouldn't be able to walk within a month. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave begins to sob.
 	<<set $activeSlave.weight = -20>>
 	<<set $activeSlave.boobs = 800>>
 <<case "Asset Expansionism">>
-	She's going to be my lover. I'll be sure to let her know all about what you do to your slaves, and rest assured, I'll never give her growth hormones, not one single dose. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	She's going to be my lover. I'll be sure to let her know all about what you do to your slaves, and rest assured, I'll never give her growth hormones, not one single dose. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <<case "Pastoralism">>
-	She's going to be my spotter. Girls should be strong, smoking hot ladies, not disgusting cows. Isn't that right, <<SlaveFullName $activeSlave>>?"  The slave nods uncertainly.
+	She's going to be my spotter. Girls should be strong, smoking hot ladies, not disgusting cows. Isn't that right, <<= SlaveFullName($activeSlave)>>?"  The slave nods uncertainly.
 	<<set $activeSlave.weight = 100>>
 	<<set $activeSlave.muscles = 0>>
 	<<set $activeSlave.boobs = 1200>>
 <<case "Cummunism">>
-	She's going to be my personal milk dispenser. I shouldn't have to chain her to my desk after the first month, since her udders will pin her in place. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave begins to sob.
+	She's going to be my personal milk dispenser. I shouldn't have to chain her to my desk after the first month, since her udders will pin her in place. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave begins to sob.
 	<<set $activeSlave.boobs = 800>>
 	<<set $activeSlave.weight = -20>>
 <<case "Physical Idealism">>
-	She's going to learn to enjoy yourself. I'm going to force her face full of food, her cunt full of dicks and discover her deepest, darkest desires. Wouldn't you like that, <<SlaveFullName $activeSlave>>?" The slave begins to sob. "To start, how about a weigh in? Sixty three and a half kilograms, such a pity, but don't worry, I'll have her nice and plump soon enough."
+	She's going to learn to enjoy yourself. I'm going to force her face full of food, her cunt full of dicks and discover her deepest, darkest desires. Wouldn't you like that, <<= SlaveFullName($activeSlave)>>?" The slave begins to sob. "To start, how about a weigh in? Sixty three and a half kilograms, such a pity, but don't worry, I'll have her nice and plump soon enough."
 	<<set $activeSlave.boobs = 200>>
 	<<set $activeSlave.butt = 1>>
 	<<set $activeSlave.weight = -20>>
 <<case "Hedonistic Decadence">>
-	She's going to be my spotter. Girls should be strong, smoking hot ladies, not disgusting obese slobs. Isn't that right, <<SlaveFullName $activeSlave>>?"  The slave nods uncertainly.
+	She's going to be my spotter. Girls should be strong, smoking hot ladies, not disgusting obese slobs. Isn't that right, <<= SlaveFullName($activeSlave)>>?"  The slave nods uncertainly.
 	<<set $activeSlave.weight = 100>>
 	<<set $activeSlave.muscles = 0>>
 	<<set $activeSlave.boobs = 1200>>
 <<case "Chattel Religionism">>
-	She's going to be the perfect courtesan. No preaching, no praying, just good, clean sex for money. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	She's going to be the perfect courtesan. No preaching, no praying, just good, clean sex for money. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <<case "Multiculturalism">>
-	She's going to be the ideal holy whore. Thousands of citizens are going to find rapture inside her. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	She's going to be the ideal holy whore. Thousands of citizens are going to find rapture inside her. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <<default>>
-	She's shaping up to be a good slave. I'm keeping her informed of your revisionist nonsense, and what your slaves suffer because of it. Isn't that right, <<SlaveFullName $activeSlave>>?" The slave nods uncertainly.
+	She's shaping up to be a good slave. I'm keeping her informed of your revisionist nonsense, and what your slaves suffer because of it. Isn't that right, <<= SlaveFullName($activeSlave)>>?" The slave nods uncertainly.
 <</switch>>
 
 <<set $activeSlave.trust = 0>>
diff --git a/src/uncategorized/penthouseReport.tw b/src/uncategorized/penthouseReport.tw
index c4aec477423..16b326270af 100644
--- a/src/uncategorized/penthouseReport.tw
+++ b/src/uncategorized/penthouseReport.tw
@@ -5,7 +5,7 @@
 
 <<for $i = 0; $i < _SL; $i++>>
 	<<if $slaves[$i].assignmentVisible == 1>>
-		<div>''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+		<div>''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 		<<if $slaves[$i].choosesOwnAssignment == 2>>
 			<<include "SA chooses own job">>
 			$pronounCap
@@ -22,7 +22,7 @@
 				<br>@@.red;$slaves[$i].slaveName had been assigned to live with your Head Girl, but this week she was assigned to $slaves[$i].assignment. She has been released to your penthouse for reassignment.@@
 				<<= removeJob($slaves[$i], "live with your Head Girl")>>
 			<<else>>
-				''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+				''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 				<<if $slaves[$i].choosesOwnAssignment == 2>>
 					<<include "SA chooses own job">>
 					$pronounCap
diff --git a/src/uncategorized/personalAttentionSelect.tw b/src/uncategorized/personalAttentionSelect.tw
index 65b16ec46bc..236cfb5d11d 100644
--- a/src/uncategorized/personalAttentionSelect.tw
+++ b/src/uncategorized/personalAttentionSelect.tw
@@ -196,7 +196,7 @@
 		
 		<<if _i > 0>><br><br><</if>>
 		
-		You will give ''__@@.pink;<<SlaveFullName $activeSlave>>@@__'' your personal attention this week.
+		You will give ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' your personal attention this week.
 		
 		Your training will seek to <<span "training"+_i>><strong>$personalAttention[_i].trainingRegimen</strong><</span>>.
 
diff --git a/src/uncategorized/recruiterSelect.tw b/src/uncategorized/recruiterSelect.tw
index 398766ffde7..cc3fd7d92b0 100644
--- a/src/uncategorized/recruiterSelect.tw
+++ b/src/uncategorized/recruiterSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back to Main", $nextLink = "Main", $showEncyclopedia = 1, $encyclopedia = "Recruiter">>
 <<showallAssignmentFilter>>
 <<if ($Recruiter != 0)>>
-	''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' is
+	''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is
 	<<if $recruiterTarget != "other arcologies">>
 		recruiting girls.
 	<<else>>
diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw
index e59a1a7d3ff..b9cc5f13edc 100644
--- a/src/uncategorized/saLiveWithHG.tw
+++ b/src/uncategorized/saLiveWithHG.tw
@@ -5,21 +5,21 @@
 
 <<if $slaves[$i].devotion > 20>>
 	<<if $HGSlaveSuccess == 1>>
-		looks after your Head Girl <<SlaveFullName $HeadGirl>> domestically and sexually, freeing her to devote more of her time to looking after your other slaves.
+		looks after your Head Girl <<= SlaveFullName($HeadGirl)>> domestically and sexually, freeing her to devote more of her time to looking after your other slaves.
 	<<else>>
-		does her best to look after your Head Girl <<SlaveFullName $HeadGirl>> domestically and sexually, but doesn't free up much of her time this week.
+		does her best to look after your Head Girl <<= SlaveFullName($HeadGirl)>> domestically and sexually, but doesn't free up much of her time this week.
 	<</if>>
 <<elseif $slaves[$i].trust < -20>>
 	<<if $HGSlaveSuccess == 1>>
-		obeys Head Girl <<SlaveFullName $HeadGirl>> domestically and sexually, freeing her to devote more of her time to looking after your other slaves.
+		obeys Head Girl <<= SlaveFullName($HeadGirl)>> domestically and sexually, freeing her to devote more of her time to looking after your other slaves.
 	<<else>>
-		tries to look after your Head Girl <<SlaveFullName $HeadGirl>> domestically and sexually, but doesn't free up much of her time this week.
+		tries to look after your Head Girl <<= SlaveFullName($HeadGirl)>> domestically and sexually, but doesn't free up much of her time this week.
 	<</if>>
 <<else>>
 	<<if $HGSlaveSuccess == 1>>
-		resists Head Girl <<SlaveFullName $HeadGirl>>'s domestic and sexual use, but still frees her to devote more of her time to looking after your other slaves.
+		resists Head Girl <<= SlaveFullName($HeadGirl)>>'s domestic and sexual use, but still frees her to devote more of her time to looking after your other slaves.
 	<<else>>
-		resists Head Girl <<SlaveFullName $HeadGirl>>'s domestic and sexual use, and doesn't free up much of her time this week.
+		resists Head Girl <<= SlaveFullName($HeadGirl)>>'s domestic and sexual use, and doesn't free up much of her time this week.
 	<</if>>
 <</if>>
 
diff --git a/src/uncategorized/saRivalries.tw b/src/uncategorized/saRivalries.tw
index 7bf63c5f1f4..5aaecc3d0b6 100644
--- a/src/uncategorized/saRivalries.tw
+++ b/src/uncategorized/saRivalries.tw
@@ -18,7 +18,7 @@
 		<<if $slaves[_j].devotion < random(20,100)>>
 		<<if $slaves[_j].trust > random(-100,-20)>>
 			<<if $slaves[_j].origBodyOwnerID == $slaves[$i].ID && $slaves[_j].devotion > 0 && $slaves[$i].devotion < -30>>
-				$slaves[$i].slaveName loathes that <<SlaveFullName $slaves[_j]>> is using //her// body to benefit you and makes it abundantly clear every chance she gets. @@.lightsalmon;They start to dislike each other.@@
+				$slaves[$i].slaveName loathes that <<= SlaveFullName($slaves[_j])>> is using //her// body to benefit you and makes it abundantly clear every chance she gets. @@.lightsalmon;They start to dislike each other.@@
 				<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 				<<break>>
 			<</if>>
@@ -26,19 +26,19 @@
 				<<switch $slaves[$i].behavioralFlaw>>
 				<<case "arrogant">>
 					<<if $slaves[_j].intelligence > $slaves[$i].intelligence>>
-						$slaves[$i].slaveName is an arrogant bitch, and <<SlaveFullName $slaves[_j]>> is authentically smarter than she is, which of course she cannot stand. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName is an arrogant bitch, and <<= SlaveFullName($slaves[_j])>> is authentically smarter than she is, which of course she cannot stand. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
 				<<case "bitchy">>
 					<<if $slaves[_j].behavioralFlaw == "odd">>
-						$slaves[$i].slaveName is a bit of a bitch, and poor odd <<SlaveFullName $slaves[_j]>> is a convenient target for her bullying. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName is a bit of a bitch, and poor odd <<= SlaveFullName($slaves[_j])>> is a convenient target for her bullying. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
 				<<case "odd">>
 					<<if $slaves[_j].behavioralFlaw == "bitchy">>
-						$slaves[$i].slaveName is rather strange. <<SlaveFullName $slaves[_j]>>, who is kind of a bitch, frequently bullies her about it. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName is rather strange. <<= SlaveFullName($slaves[_j])>>, who is kind of a bitch, frequently bullies her about it. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
@@ -47,11 +47,11 @@
 					<<if $slaves[_j].faceShape == "masculine" || $slaves[_j].faceShape == "androgynous" >>
 					<<if $slaves[_j].muscles > 10>>
 					<<if $slaves[_j].vagina > -1>>
-						$slaves[$i].slaveName hates men, and poor butch <<SlaveFullName $slaves[_j]>> really gets to her, despite having a pussy and everything. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName hates men, and poor butch <<= SlaveFullName($slaves[_j])>> really gets to her, despite having a pussy and everything. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<<else>>
-						$slaves[$i].slaveName hates men, and poor masculine <<SlaveFullName $slaves[_j]>> really gets to her. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName hates men, and poor masculine <<= SlaveFullName($slaves[_j])>> really gets to her. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
@@ -63,11 +63,11 @@
 					<<if $slaves[_j].faceShape != "masculine">>
 					<<if $slaves[_j].muscles <= 30>>
 					<<if $slaves[_j].vagina > -1>>
-						$slaves[$i].slaveName hates women, and something about the feminine <<SlaveFullName $slaves[_j]>> really gets to her. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName hates women, and something about the feminine <<= SlaveFullName($slaves[_j])>> really gets to her. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<<else>>
-						$slaves[$i].slaveName hates women, and something about the girly <<SlaveFullName $slaves[_j]>> really gets to her, despite poor $slaves[_j].slaveName not being perfectly female at all. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName hates women, and something about the girly <<= SlaveFullName($slaves[_j])>> really gets to her, despite poor $slaves[_j].slaveName not being perfectly female at all. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
@@ -76,25 +76,25 @@
 					<</if>>
 				<<case "gluttonous">>
 					<<if $slaves[_j].behavioralFlaw == "anorexic">>
-						$slaves[$i].slaveName, who loves food, can't stand <<SlaveFullName $slaves[_j]>>'s prissy anorexia. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName, who loves food, can't stand <<= SlaveFullName($slaves[_j])>>'s prissy anorexia. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
 				<<case "anorexic">>
 					<<if $slaves[_j].behavioralFlaw == "gluttonous">>
-						$slaves[$i].slaveName, an anorexic, can't stand <<SlaveFullName $slaves[_j]>>'s disgusting gluttony. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName, an anorexic, can't stand <<= SlaveFullName($slaves[_j])>>'s disgusting gluttony. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
 				<<case "devout">>
 					<<if $slaves[_j].behavioralFlaw == "liberated">>
-						$slaves[$i].slaveName, who is devout and might be considered rather conservative if she were free, can't stand <<SlaveFullName $slaves[_j]>>'s revolting gender liberation. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName, who is devout and might be considered rather conservative if she were free, can't stand <<= SlaveFullName($slaves[_j])>>'s revolting gender liberation. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
 				<<case "liberated">>
 					<<if $slaves[_j].behavioralFlaw == "devout">>
-						$slaves[$i].slaveName, who is liberated and might be considered rather liberal if she were free, can't stand <<SlaveFullName $slaves[_j]>>'s bigoted religious faith. @@.lightsalmon;They start to dislike each other.@@
+						$slaves[$i].slaveName, who is liberated and might be considered rather liberal if she were free, can't stand <<= SlaveFullName($slaves[_j])>>'s bigoted religious faith. @@.lightsalmon;They start to dislike each other.@@
 						<<set $slaves[_j].rivalry = 1, $slaves[$i].rivalry = 1, $slaves[_j].rivalryTarget = $slaves[$i].ID, $slaves[$i].rivalryTarget = $slaves[_j].ID>>
 						<<break>>
 					<</if>>
@@ -102,7 +102,7 @@
 			<</if>>
 			<<if $slaves[_j].assignment == $slaves[$i].assignment>>
 			<<if random(0,1) == 1>>
-				$slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> see too much of each other while they
+				$slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> see too much of each other while they
 				<<switch $slaves[_j].assignment>>
 				<<case "be a servant" "work as a servant">>
 					work as servants
@@ -141,10 +141,10 @@
 <<set _j = $slaveIndices[$slaves[$i].rivalryTarget]>>
 <<if def _j>>
 	<<if $slaves[$i].fuckdoll>>
-		$slaves[$i].slaveName is a living sex toy, not a person, it @@.lightsalmon;can't really maintain any meaningful rivalry@@ with <<SlaveFullName $slaves[_j]>>.
+		$slaves[$i].slaveName is a living sex toy, not a person, it @@.lightsalmon;can't really maintain any meaningful rivalry@@ with <<= SlaveFullName($slaves[_j])>>.
 		<<set $slaves[_j].rivalry = 0,$slaves[_j].rivalryTarget = 0, $slaves[$i].rivalry = 0, $slaves[$i].rivalryTarget = 0>>
 	<<elseif $slaves[$i].fetish == "mindbroken">>
-		Since $slaves[$i].slaveName is mindbroken, she @@.lightsalmon;can't really maintain any meaningful rivalry@@ with <<SlaveFullName $slaves[_j]>>.
+		Since $slaves[$i].slaveName is mindbroken, she @@.lightsalmon;can't really maintain any meaningful rivalry@@ with <<= SlaveFullName($slaves[_j])>>.
 		<<set $slaves[_j].rivalry = 0,$slaves[_j].rivalryTarget = 0, $slaves[$i].rivalry = 0, $slaves[$i].rivalryTarget = 0>>
 	<<else>>
 		<<if $slaves[$i].need>>
@@ -153,14 +153,14 @@
 					<<if $slaves[_j].releaseRules != "restrictive">>
 						<<if $slaves[$i].fetishKnown>>
 							<<if $slaves[$i].fetish == "sadist">>
-								$slaves[$i].slaveName is horny and sadistic, so she rapes her rival <<SlaveFullName $slaves[_j]>> every chance she gets; this @@.hotpink;thrills@@ $slaves[$i].slaveName, but $slaves[_j].slaveName is @@.golden;frightened@@ that you let it happen.
+								$slaves[$i].slaveName is horny and sadistic, so she rapes her rival <<= SlaveFullName($slaves[_j])>> every chance she gets; this @@.hotpink;thrills@@ $slaves[$i].slaveName, but $slaves[_j].slaveName is @@.golden;frightened@@ that you let it happen.
 								<<set $slaves[$i].need = 0, $slaves[$i].devotion += 3, $slaves[_j].trust -= 3, $slaves[$i].penetrativeCount += 5, $slaves[_j].oralCount += 5>>
 								<<if $slaves[$i].rivalry < 3>> 
 									Of course, this @@.lightsalmon;worsens their rivalry.@@
 									<<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1, _worsenedRivalry = 1>>
 								<</if>>
 							<<elseif $slaves[$i].fetish == "dom">>
-								$slaves[$i].slaveName is horny and dominant, so she forces her rival <<SlaveFullName $slaves[_j]>> to submit to her whenever she can; this @@.hotpink;thoroughly satisfies@@ $slaves[$i].slaveName, but $slaves[_j].slaveName is @@.golden;angered@@ that you let it happen.
+								$slaves[$i].slaveName is horny and dominant, so she forces her rival <<= SlaveFullName($slaves[_j])>> to submit to her whenever she can; this @@.hotpink;thoroughly satisfies@@ $slaves[$i].slaveName, but $slaves[_j].slaveName is @@.golden;angered@@ that you let it happen.
 								<<set $slaves[$i].need = 0, $slaves[$i].devotion += 3, $slaves[_j].devotion -= 3, $slaves[$i].penetrativeCount += 5, $slaves[_j].oralCount += 5>>
 								<<if $slaves[$i].rivalry < 3>> 
 									Of course, this @@.lightsalmon;worsens their rivalry.@@
@@ -178,7 +178,7 @@
 				<<if $slaves[_j].fetish == $slaves[$i].fetish>>
 				<<if $slaves[_j].fetishKnown>>
 				<<if $slaves[$i].fetishKnown>>
-					$slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> share sexual interests, and in the sexual atmosphere of the arcology, it's @@.lightgreen;difficult for them to keep up their dislike@@ of one another with the mutual attraction.
+					$slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> share sexual interests, and in the sexual atmosphere of the arcology, it's @@.lightgreen;difficult for them to keep up their dislike@@ of one another with the mutual attraction.
 					<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1>>
 				<</if>>
 				<</if>>
@@ -192,25 +192,25 @@
 				<<if _roll > 80 && $slaves[$i].rivalry > 0>>
 					<<if $slaves[_j].trust < -20>>
 					<<if $slaves[$i].trust < -20>>
-						Since both $slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> are terrified of you, they work together to @@.lightgreen;get over their feud,@@ since it brings punishment on both of them.
+						Since both $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> are terrified of you, they work together to @@.lightgreen;get over their feud,@@ since it brings punishment on both of them.
 						<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1>>
 					<</if>>
 					<</if>>
 					<<if $slaves[_j].devotion > 50>>
 					<<if $slaves[$i].devotion > 50>>
-						Since both $slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> are devoted to you, they work together to @@.lightgreen;get over their feud,@@ since it gets in the way of their duties.
+						Since both $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> are devoted to you, they work together to @@.lightgreen;get over their feud,@@ since it gets in the way of their duties.
 						<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1>>
 					<</if>>
 					<</if>>
 					<<if _roll > 90 && $slaves[$i].rivalry > 0>>
 						<<if $slaves[$i].energy > 95>>
-							$slaves[$i].slaveName lusts after <<SlaveFullName $slaves[_j]>>, and does everything she can to @@.lightgreen;patch up their differences.@@
+							$slaves[$i].slaveName lusts after <<= SlaveFullName($slaves[_j])>>, and does everything she can to @@.lightgreen;patch up their differences.@@
 							<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lustyFix = 1>>
 						<</if>>
 						<<if _lustyFix != 1>>
 							<<if $slaves[$i].attrXX > 85>>
 								<<if ($slaves[_j].vagina > -1) || ($slaves[_j].faceShape != "masculine")>>
-									$slaves[$i].slaveName lusts after <<SlaveFullName $slaves[_j]>>, and does everything she can to @@.lightgreen;patch up their differences.@@
+									$slaves[$i].slaveName lusts after <<= SlaveFullName($slaves[_j])>>, and does everything she can to @@.lightgreen;patch up their differences.@@
 									<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lustyFix = 1>>
 								<</if>>
 							<</if>>
@@ -218,7 +218,7 @@
 						<<if _lustyFix != 1>>
 							<<if $slaves[$i].attrXY > 85>>
 								<<if ($slaves[_j].balls > 0) || ($slaves[_j].faceShape == "masculine")>>
-									$slaves[$i].slaveName lusts after <<SlaveFullName $slaves[_j]>>, and does everything she can to @@.lightgreen;patch up their differences.@@
+									$slaves[$i].slaveName lusts after <<= SlaveFullName($slaves[_j])>>, and does everything she can to @@.lightgreen;patch up their differences.@@
 									<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1, _lustyFix = 1>>
 								<</if>>
 							<</if>>
@@ -227,7 +227,7 @@
 							<<if $slaves[_j].assignment != $slaves[$i].assignment>>
 								<<if $slaves[$i].subTarget != $slaves[_j].ID>>
 									<<if $slaves[_j].subTarget != $slaves[$i].ID>>
-										With time apart $slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> @@.lightgreen;dislike each other less.@@
+										With time apart $slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> @@.lightgreen;dislike each other less.@@
 										<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1>>
 									<</if>>
 								<</if>>
@@ -241,10 +241,10 @@
 	<<if $familyTesting>>
 		<<if $slaves[$i].mother == $slaves[_j].ID || $slaves[$i].father == $slaves[_j].ID || $slaves[_j].mother == $slaves[$i].ID || $slaves[_j].father == $slaves[$i].ID || areSisters($slaves[$i], $slaves[_j])>>
 			<<if _roll > 70 && $slaves[$i].rivalry < 3>>
-				$slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> @@.lightsalmon;pursue their family rivalry.@@
+				$slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> @@.lightsalmon;pursue their family rivalry.@@
 				<<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1>>
 			<<elseif _roll > 40 && $slaves[$i].rivalry > 0 && _worsenedRivalry != 1>>
-				$slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> @@.lightgreen;patch up their family relationship.@@
+				$slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> @@.lightgreen;patch up their family relationship.@@
 				<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1>>
 			<</if>>
 		<</if>>
@@ -252,10 +252,10 @@
 		<<if $slaves[$i].relation>>
 		<<if $slaves[$i].relationTarget == $slaves[$i].rivalryTarget>>
 			<<if _roll > 70 && $slaves[$i].rivalry < 3>>
-				$slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> @@.lightsalmon;pursue their family rivalry.@@
+				$slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> @@.lightsalmon;pursue their family rivalry.@@
 				<<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1>>
 			<<elseif _roll > 40 && $slaves[$i].rivalry > 0 && _worsenedRivalry != 1>>
-				$slaves[$i].slaveName and <<SlaveFullName $slaves[_j]>> @@.lightgreen;patch up their family relationship.@@
+				$slaves[$i].slaveName and <<= SlaveFullName($slaves[_j])>> @@.lightgreen;patch up their family relationship.@@
 				<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1>>
 			<</if>>
 		<</if>>
@@ -263,16 +263,16 @@
 	<</if>>
 	<<if $slaves[_j].origBodyOwnerID == $slaves[$i].ID>>
 		<<if $slaves[$i].rivalry < 3>>
-			$slaves[$i].slaveName @@.lightsalmon;refuses to accept <<SlaveFullName $slaves[_j]>>'s control of her former body,@@ worsening their rivalry.
+			$slaves[$i].slaveName @@.lightsalmon;refuses to accept <<= SlaveFullName($slaves[_j])>>'s control of her former body,@@ worsening their rivalry.
 			<<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1>>
 		<</if>>
 	<<elseif _roll > $slaves[$i].devotion-$slaves[$i].trust+10>>
 		<<if $slaves[$i].rivalry < 3>>
-			$slaves[$i].slaveName @@.lightsalmon;bickers with <<SlaveFullName $slaves[_j]>>@@ whenever she can, worsening their rivalry.
+			$slaves[$i].slaveName @@.lightsalmon;bickers with <<= SlaveFullName($slaves[_j])>>@@ whenever she can, worsening their rivalry.
 			<<set $slaves[_j].rivalry += 1, $slaves[$i].rivalry += 1>>
 		<</if>>
 	<<elseif _roll < $slaves[$i].devotion-$slaves[$i].trust-10 && $slaves[$i].rivalry > 0 && _worsenedRivalry != 1>>
-		$slaves[$i].slaveName does her best to be nice to <<SlaveFullName $slaves[_j]>>, and manages to @@.lightgreen;de-escalate their little feud.@@
+		$slaves[$i].slaveName does her best to be nice to <<= SlaveFullName($slaves[_j])>>, and manages to @@.lightgreen;de-escalate their little feud.@@
 		<<set $slaves[_j].rivalry -= 1, $slaves[$i].rivalry -= 1>>
 	<</if>>
 <<else>>
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index 763aca9c96d..1cf416d6c53 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -180,7 +180,7 @@ the public.
 		<<else>>
 			Living and working
 		<</if>>
-		out of the club, she comes under <<SlaveFullName $DJ>>'s
+		out of the club, she comes under <<= SlaveFullName($DJ)>>'s
 		<<if $DJRepBonus < 0.1>>
 			completely inept
 		<<elseif $DJRepBonus < 0.2>>
@@ -198,10 +198,10 @@ the public.
 		<</if>>
 		<<if $DJignoresFlaws != 1>>
 			<<if !["none", "neglectful", "cum addict", "anal addict", "attention whore", "breast growth", "abusive", "malicious", "self hating", "breeder"].includes($slaves[$i].sexualFlaw) && (random(1,100) > 90)>>
-				<<SlaveFullName $DJ>> manages to @@.green;break@@ $slaves[$i].slaveName of her sexual flaws.
+				<<= SlaveFullName($DJ)>> manages to @@.green;break@@ $slaves[$i].slaveName of her sexual flaws.
 				<<set $slaves[$i].sexualFlaw = "none">>
 			<<elseif ($slaves[$i].behavioralFlaw != "none") && (random(1,100) > 90)>>
-				<<SlaveFullName $DJ>> manages to @@.green;break@@ $slaves[$i].slaveName of her flaws.
+				<<= SlaveFullName($DJ)>> manages to @@.green;break@@ $slaves[$i].slaveName of her flaws.
 				<<set $slaves[$i].behavioralFlaw = "none">>
 			<</if>>
 		<</if>>
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index 14882f6f560..7dfc94a393c 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -171,7 +171,7 @@ her body.
 		<<else>>
 			Living and working
 		<</if>>
-		out of the brothel, she comes under <<SlaveFullName $Madam>>'s
+		out of the brothel, she comes under <<= SlaveFullName($Madam)>>'s
 		<<if $madamCashBonus < 0.1>>
 			completely inept
 		<<elseif $madamCashBonus < 0.2>>
@@ -191,10 +191,10 @@ her body.
 		<</if>>
 		<<if $MadamIgnoresFlaws != 1>>
 			<<if !["none", "neglectful", "cum addict", "anal addict", "attention whore", "breast growth", "abusive", "malicious", "self hating", "breeder"].includes($slaves[$i].sexualFlaw) && (random(1,100) > 90)>>
-				<<SlaveFullName $Madam>> manages to @@.green;break@@ $slaves[$i].slaveName of her sexual flaws.
+				<<= SlaveFullName($Madam)>> manages to @@.green;break@@ $slaves[$i].slaveName of her sexual flaws.
 				<<set $slaves[$i].sexualFlaw = "none">>
 			<<elseif ($slaves[$i].behavioralFlaw != "none") && (random(1,100) > 90)>>
-				<<SlaveFullName $Madam>> manages to @@.green;break@@ $slaves[$i].slaveName of her flaws.
+				<<= SlaveFullName($Madam)>> manages to @@.green;break@@ $slaves[$i].slaveName of her flaws.
 				<<set $slaves[$i].behavioralFlaw = "none">>
 			<</if>>
 		<</if>>
diff --git a/src/uncategorized/schoolteacherSelect.tw b/src/uncategorized/schoolteacherSelect.tw
index 0df98c5a06b..d81f3f7aae7 100644
--- a/src/uncategorized/schoolteacherSelect.tw
+++ b/src/uncategorized/schoolteacherSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Schoolroom", $showEncyclopedia = 1, $encyclopedia = "Schoolteacher">>
 <<showallAssignmentFilter>>
 <<if ($Schoolteacher != 0)>>
-	''__@@.pink;<<SlaveFullName $Schoolteacher>>@@__'' is serving as your Schoolteacher.<br><br>She will help teach your slaves.
+	''__@@.pink;<<= SlaveFullName($Schoolteacher)>>@@__'' is serving as your Schoolteacher.<br><br>She will help teach your slaves.
 <<else>>
 	You have not selected a Schoolteacher.
 <</if>>
diff --git a/src/uncategorized/seWedding.tw b/src/uncategorized/seWedding.tw
index ec2b4163525..7b625b544b6 100644
--- a/src/uncategorized/seWedding.tw
+++ b/src/uncategorized/seWedding.tw
@@ -273,7 +273,7 @@
 <</if>>
 
 <<if $weddingPlanned == 3>>
-	The ceremony to bind <<SlaveFullName $activeSlave>> to you as your slave wife, and her womb to you as your private breeding ground, is a polite affair which you host in the lower floor of your penthouse. <<if $arcologies[0].FSRestart != "unset" && $activeSlave.breedingMark == 0>>Barely anyone is there, mostly lower-class citizens, several accompanied by their slaves. Many of your other slaves, that is your slaves who are not being married and fucked pregnant tonight, are present to serve your guests, but are dressed more conservatively than usual. There is a distinct air of unrest in the room, as if the absent Elites' distaste of your actions came in their place.<<else>>All the arcology's most prominent citizens are there, most with a favored slave or two and some even with their slave wives. Many of your other slaves, that is your slaves who are not being married and fucked pregnant tonight, are present to serve your guests, but are dressed more conservatively than usual. When assignations between citizen and slave develop, guests are politely encouraged to perform them in side rooms rather than out in view of the main gathering.<</if>>
+	The ceremony to bind <<= SlaveFullName($activeSlave)>> to you as your slave wife, and her womb to you as your private breeding ground, is a polite affair which you host in the lower floor of your penthouse. <<if $arcologies[0].FSRestart != "unset" && $activeSlave.breedingMark == 0>>Barely anyone is there, mostly lower-class citizens, several accompanied by their slaves. Many of your other slaves, that is your slaves who are not being married and fucked pregnant tonight, are present to serve your guests, but are dressed more conservatively than usual. There is a distinct air of unrest in the room, as if the absent Elites' distaste of your actions came in their place.<<else>>All the arcology's most prominent citizens are there, most with a favored slave or two and some even with their slave wives. Many of your other slaves, that is your slaves who are not being married and fucked pregnant tonight, are present to serve your guests, but are dressed more conservatively than usual. When assignations between citizen and slave develop, guests are politely encouraged to perform them in side rooms rather than out in view of the main gathering.<</if>>
 	<br><br>
 	$activeSlave.slaveName appears after everyone has had a chance to socialize,<<if ($activeSlave.amp == 1)>> carried by another slave since she's a quadruple amputee and she cannot walk,<</if>> wearing beautiful bridal lingerie in
 	<<if ($activeSlave.vagina == 0)>>
@@ -516,7 +516,7 @@
 		<<set $failedElite += 250>>
 	<</if>>
 <<elseif $weddingPlanned == 2>>
-	The ceremony to bind <<SlaveFullName $activeSlave>> to you as your slave wife is an all day affair.
+	The ceremony to bind <<= SlaveFullName($activeSlave)>> to you as your slave wife is an all day affair.
 	<<if $activeSlave.fetish == "mindbroken">>
 		She spent the day before resting and preparing herself, if you can call sitting around mindlessly preparing. She spends most of the daylong party at the center of a nonstop gangbang, occasionally moaning as more of physical reaction than anything. The theory is that she’ll be bound to you as your slave wife from this day onward, so she must get the promiscuity that is a sex slave’s responsibility out of the way now. Whatever their opinions on the idea, your guests take part with enthusiasm, completely unhampered by your slave’s utter emptiness. Many brought their own slaves to participate, too. $activeSlave.slaveName spends hours with numerous cocks inside her, with attending slaves using their mouths on any erogenous zones they can reach. When the moment of the ceremony nears, she’s extracted and taken off to be bathed.
 		<br><br>
@@ -660,7 +660,7 @@
 	<</if>>
 	<<set $trinkets.push($desc)>>
 <<else>>
-	The ceremony to bind <<SlaveFullName $activeSlave>> to you as your slave wife is a polite affair which you host in the lower floor of your penthouse. All the arcology's most prominent citizens are there, most with a favored slave or two and some even with their slave wives. Many of your other slaves, that is your slaves who are not being married tonight, are present to serve your guests, but are dressed more conservatively than usual. When assignations between citizen and slave develop, guests are politely encouraged to perform them in side rooms rather than out in view of the main gathering.
+	The ceremony to bind <<= SlaveFullName($activeSlave)>> to you as your slave wife is a polite affair which you host in the lower floor of your penthouse. All the arcology's most prominent citizens are there, most with a favored slave or two and some even with their slave wives. Many of your other slaves, that is your slaves who are not being married tonight, are present to serve your guests, but are dressed more conservatively than usual. When assignations between citizen and slave develop, guests are politely encouraged to perform them in side rooms rather than out in view of the main gathering.
 	<br><br>
 	$activeSlave.slaveName appears after everyone has had a chance to socialize,<<if ($activeSlave.amp == 1)>> carried by another slave since she's a quadruple amputee and she cannot walk,<</if>> wearing beautiful bridal lingerie in
 	<<if ($activeSlave.vagina == 0)>>
diff --git a/src/uncategorized/securityForceEOWReport.tw b/src/uncategorized/securityForceEOWReport.tw
index 6bf53e148ba..35a7d1f6d4f 100644
--- a/src/uncategorized/securityForceEOWReport.tw
+++ b/src/uncategorized/securityForceEOWReport.tw
@@ -410,14 +410,14 @@
 	<<elseif $securityForceFocus == "raiding">>locating and striking targets of opportunity, capturing both material loot and new slaves. Smaller parties secured the most important of the arcology's trade routes and processed new recruits.<</if>> <<if $securityForceStimulantPower == 8 || $securityForceStimulantPower == 10 && _OverdoseDeaths > 0>> <<print (_OverdoseDeaths)>> soldiers fatally overdosed on the drug cocktail, The Colonel's much heavier than average drug use saves her from this side effect.<</if>> These activities have, overall, @@.green;improved@@ your arcology's prosperity. <<if $securityForceProfitable == 1>>The goods procured by the $securityForceName this week, after accounting for the spoils retained by individual soldiers, were @@.green;more than sufficient@@ to cover expenses. Excess material and human assets totaling @@.yellowgreen;<<print cashFormat($securityForceIncome)>>@@ (after liquidation) were transferred to your accounts. <<elseif $securityForceProfitable == 0>>The goods procured by the special force were, after accounting for the spoils retained by individual soldiers, @@.red;barely enough@@ to cover expenses. More growth will be needed to ensure profitability.<</if>> $securityForceName managed to recruit $securityForceRecruit new soldiers this week, and your reputation has @@.green;improved@@ through the improvement of trade security.
 
 <</nobr>>
-	<br>&nbsp;&nbsp;&nbsp;&nbsp;//Your instructions to <<if $CurrentTradeShowAttendance == 1>>Lieutenant Colonel <<SlaveFullName $LieutenantColonel>><<else>>The Colonel<</if>>://
+	<br>&nbsp;&nbsp;&nbsp;&nbsp;//Your instructions to <<if $CurrentTradeShowAttendance == 1>>Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>><<else>>The Colonel<</if>>://
 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Deployment focus: <span id="focus"><<if $securityForceFocus == "recruit">>''Recruiting and Training''<<elseif $securityForceFocus == "secure">>''Securing Trade Routes''<<else>>''Raiding and Slaving''<</if>></span>.&nbsp;&nbsp; <<link "Recruit and Train">><<set $securityForceFocus = "recruit">><<replace "#focus">>''Recruiting and Training''<</replace>><</link>> | <<link "Secure Trade Routes">><<set $securityForceFocus = "secure">><<replace "#focus">>''Securing Trade Routes''<</replace>><</link>> | <<link "Raiding and Slaving">><<set $securityForceFocus = "raiding">><<replace "#focus">>''Raiding and Slaving''<</replace>><</link>>
 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Rules of Engagement: <span id="roe"><<if $securityForceRulesOfEngagement == "hold">>''Hold Fire''<<elseif $securityForceRulesOfEngagement == "limited">>''Limited Fire''<<else>>''Free Fire''<</if>></span>.&nbsp;&nbsp; <<link "Hold Fire">><<set $securityForceRulesOfEngagement = "hold">><<replace "#roe">>''Hold Fire''<</replace>><</link>> | <<link "Limited Fire">><<set $securityForceRulesOfEngagement = "limited">><<replace "#roe">>''Limited Fire''<</replace>><</link>> | <<link "Free Fire">><<set $securityForceRulesOfEngagement = "free">><<replace "#roe">>''Free Fire''<</replace>><</link>>
 		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Accountability: <span id="accountability"><<if $securityForceAccountability == "strict">>''Strict Accountability''<<elseif $securityForceAccountability == "some">>''Some Accountability''<<else>>''No Accountability''<</if>></span>.&nbsp;&nbsp; <<link "Strict Accountability">><<set $securityForceAccountability = "strict">><<replace "#accountability">>''Strict Accountability''<</replace>><</link>> | <<link "Some Accountability">><<set $securityForceAccountability = "some">><<replace "#accountability">>''Some Accountability''<</replace>><</link>> | <<link "No Accountability">><<set $securityForceAccountability = "none">><<replace "#accountability">>''No Accountability''<</replace>><</link>>
 	<<if $OverallTradeShowAttendance == 1>>
-		<br>Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>> for letting me to go back to it, hopefully <<if $LieutenantColonel == 2>>Lieutenant Colonel <<SlaveFullName $LieutenantColonel>> has been doing her job <<else>> that nothing serious happened while I was away.<</if>> There was some interest in our developments, I could probably sell generic schematics next time I go if you want?
+		<br>Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>> for letting me to go back to it, hopefully <<if $LieutenantColonel == 2>>Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>> has been doing her job <<else>> that nothing serious happened while I was away.<</if>> There was some interest in our developments, I could probably sell generic schematics next time I go if you want?
 	<<elseif $OverallTradeShowAttendance >= 2>>
-		<br>Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>> for letting me to go back to it, hopefully <<if $LieutenantColonel == 2>>Lieutenant Colonel <<SlaveFullName $LieutenantColonel>> has been doing her job <<else>> that nothing serious happened while I was away.<</if>>
+		<br>Thank you <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>sir<<else>>ma'am<</if>> for letting me to go back to it, hopefully <<if $LieutenantColonel == 2>>Lieutenant Colonel <<= SlaveFullName($LieutenantColonel)>> has been doing her job <<else>> that nothing serious happened while I was away.<</if>>
 		<br>While at the recent TradeShow, <<print cashFormat($TradeShowIncome)>> was made selling generic schematics and $TradeShowHelots menial slaves were sent as a bonus.
 		Overall <<print cashFormat($TotalTradeShowIncome)>> has been made and <<print commaNum($TotalTradeShowHelots)>> menial slaves have been acquired during the $OverallTradeShowAttendance TradeShow's I have attended.
 	<</if>>
diff --git a/src/uncategorized/servantsQuartersReport.tw b/src/uncategorized/servantsQuartersReport.tw
index a2586f1664b..c82db200d59 100644
--- a/src/uncategorized/servantsQuartersReport.tw
+++ b/src/uncategorized/servantsQuartersReport.tw
@@ -43,7 +43,7 @@
 		<<set $slaves[_FLs].livingRules = "luxurious">>
 	<</if>>
 	<<set $Stewardess = $slaves[_FLs]>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<SlaveFullName $Stewardess>> is serving as your Stewardess.<<if $Stewardess.relationship == -3 && $Stewardess.devotion > 50>> She does her best to be your perfect lovely housewife.<</if>>
+	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName($Stewardess)>> is serving as your Stewardess.<<if $Stewardess.relationship == -3 && $Stewardess.devotion > 50>> She does her best to be your perfect lovely housewife.<</if>>
 	<<if ($stewardessImpregnates == 1) && (_DL > 0) && (canPenetrate($Stewardess)) && $Stewardess.pubertyXY == 1>>
 		<<set _stewardessImpregnated = 0>>
 		<<for _dI = 0; _dI < _DL; _dI++>>
@@ -208,7 +208,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[_FLs]>>@@__'' is serving as your Stewardess.
+		''__@@.pink;<<= SlaveFullName($slaves[_FLs])>>@@__'' is serving as your Stewardess.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
 		<<include "SA rules">>
@@ -273,7 +273,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 		<<if $slaves[$i].choosesOwnAssignment == 2>>
 			<<include "SA chooses own job">>
 		<<else>>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 76a5f6fccbf..4c5c9a64d68 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -282,20 +282,20 @@
 		<<set _si = $slaveIndices[$activeSlave.relationshipTarget]>>
 		<<if isSlaveAvailable($slaves[_si])>>
 			<<if ($activeSlave.relationship == 1)>>
-				| <<link `"Fuck $him with $his friend <<SlaveFullName $slaves[_si]>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
+				| <<link `"Fuck $him with $his friend <<= SlaveFullName($slaves[_si])>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
 			<<elseif ($activeSlave.relationship == 2)>>
-				| <<link `"Fuck $him with $his best friend <<SlaveFullName $slaves[_si]>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
+				| <<link `"Fuck $him with $his best friend <<= SlaveFullName($slaves[_si])>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
 			<<elseif ($activeSlave.relationship == 3)>>
-				| <<link `"Fuck $him with $his FWB <<SlaveFullName $slaves[_si]>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
+				| <<link `"Fuck $him with $his FWB <<= SlaveFullName($slaves[_si])>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
 			<<elseif ($activeSlave.relationship == 4)>>
-				| <<link `"Fuck $him with $his lover <<SlaveFullName $slaves[_si]>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
+				| <<link `"Fuck $him with $his lover <<= SlaveFullName($slaves[_si])>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
 			<<else>>
-				| <<link `"Fuck $him with $his slave wife <<SlaveFullName $slaves[_si]>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
+				| <<link `"Fuck $him with $his slave wife <<= SlaveFullName($slaves[_si])>>"`>><<replace "#miniscene">><<set $partner = "relationship">><<include "FRelation">><br>&nbsp;&nbsp;&nbsp;&nbsp;<</replace>><</link>>
 			<</if>>
 		<<else>>
 			<<if $slaves[_si].assignment == "be your agent">>
 				<<if $activeSlave.broodmother < 2>>
-					| <<link `"Send $him to live with your agent <<SlaveFullName $slaves[_si]>>"`>>
+					| <<link `"Send $him to live with your agent <<= SlaveFullName($slaves[_si])>>"`>>
 						<<set $subSlave = $slaves[_si]>>
 						<<goto "Agent Company">>
 					<</link>>
@@ -303,7 +303,7 @@
 					| //A hyper-broodmother cannot be sent to live with your agent//
 				<</if>>
 			<<else>>
-				| //<<SlaveFullName $slaves[_si]>> is unavailable//
+				| //<<= SlaveFullName($slaves[_si])>> is unavailable//
 			<</if>>
 		<</if>>
 	<</if>>
diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw
index 8985097f2b6..df76fb78f94 100644
--- a/src/uncategorized/spaReport.tw
+++ b/src/uncategorized/spaReport.tw
@@ -40,7 +40,7 @@
 		<<set _devBonus++>>
 	<</if>>
 	<<set $slaves[_FLs].devotion += _devBonus, $Attendant = $slaves[_FLs]>>
-	&nbsp;&nbsp;&nbsp;&nbsp;<<SlaveFullName $Attendant>> is serving as the spa attendant.<<if $Attendant.relationship == -3 && $Attendant.devotion > 50>> She tries her best to be your perfect attentive, caring and loving wife.<</if>>
+	&nbsp;&nbsp;&nbsp;&nbsp;<<= SlaveFullName($Attendant)>> is serving as the spa attendant.<<if $Attendant.relationship == -3 && $Attendant.devotion > 50>> She tries her best to be your perfect attentive, caring and loving wife.<</if>>
 	<<if (_FLsFetish == 1)>>
 		When she is paid a visit by a slave with sexual issues to work out, she provides her with an understanding, willing, giving partner. She finds real satisfaction in helping your slaves find sexual gratification, and @@.lightsalmon;becomes a submissive.@@
 	<<elseif (_FLsFetish == 2)>>
@@ -235,7 +235,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__'' is serving as the Attendant in $spaName.
+		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__'' is serving as the Attendant in $spaName.
 		<br>&nbsp;&nbsp;&nbsp;
 		<<= saChoosesOwnClothes($slaves[$i])>>
 		<<include "SA rules">>
@@ -296,7 +296,7 @@
 		</div>
 		<</if>>
 		/* 000-250-006 */
-		''__@@.pink;<<SlaveFullName $slaves[$i]>>@@__''
+		''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 		<<if $slaves[$i].choosesOwnAssignment == 2>>
 			<<include "SA chooses own job">>
 		<<else>>
diff --git a/src/uncategorized/stewardessSelect.tw b/src/uncategorized/stewardessSelect.tw
index d843f64ffee..45d64a5b854 100644
--- a/src/uncategorized/stewardessSelect.tw
+++ b/src/uncategorized/stewardessSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Servants' Quarters", $showEncyclopedia = 1, $encyclopedia = "Stewardesses">>
 <<showallAssignmentFilter>>
 <<if ($Stewardess != 0)>>
-	''__@@.pink;<<SlaveFullName $Stewardess>>@@__'' is serving as your Stewardess.<br><br>She will manage the Servants' Quarters.
+	''__@@.pink;<<= SlaveFullName($Stewardess)>>@@__'' is serving as your Stewardess.<br><br>She will manage the Servants' Quarters.
 <<else>>
 	You have not selected a Stewardess.
 <</if>>
diff --git a/src/uncategorized/wardenessSelect.tw b/src/uncategorized/wardenessSelect.tw
index 5c56005bd21..fc352b2f0fa 100644
--- a/src/uncategorized/wardenessSelect.tw
+++ b/src/uncategorized/wardenessSelect.tw
@@ -3,7 +3,7 @@
 <<set $nextButton = "Back", $nextLink = "Cellblock", $showEncyclopedia = 1, $encyclopedia = "Wardeness">>
 <<showallAssignmentFilter>>
 <<if ($Wardeness != 0)>>
-	''__@@.pink;<<SlaveFullName $Wardeness>>@@__'' is serving as your Wardeness.<br><br>She will help break your prisoners.
+	''__@@.pink;<<= SlaveFullName($Wardeness)>>@@__'' is serving as your Wardeness.<br><br>She will help break your prisoners.
 <<else>>
 	You have not selected a Wardeness.
 <</if>>
diff --git a/src/utility/descriptionWidgets.tw b/src/utility/descriptionWidgets.tw
index 061c3cea15e..925d8819a6a 100644
--- a/src/utility/descriptionWidgets.tw
+++ b/src/utility/descriptionWidgets.tw
@@ -26,7 +26,7 @@
 		You plan to train
 		<<for _dwi = 0; _dwi < _PA.length; _dwi++>>
 			<<if _dwi > 0 && _dwi == _PA.length - 1>>and<</if>>
-			''__@@.pink;<<SlaveFullName _PA[_dwi]>>@@__'' to $personalAttention[_dwi].trainingRegimen<<if _dwi > 0 && _dwi < _PA.length - 2>>,<</if>>
+			''__@@.pink;<<= SlaveFullName(_PA[_dwi])>>@@__'' to $personalAttention[_dwi].trainingRegimen<<if _dwi > 0 && _dwi < _PA.length - 2>>,<</if>>
 		<</for>>
 		this week.
 	<</if>>
@@ -39,7 +39,7 @@
 <<if $useSlaveSummaryOverviewTab != 1>> /* Hide this block if it will be shown on the overview tab */
 	<br>
 	<<if def _HG>>
-		''__@@.pink;<<SlaveFullName $HeadGirl>>@@__'' is serving as your head girl<<if $arcologies[0].FSEgyptianRevivalistLaw == 1>> and Consort<</if>>.
+		''__@@.pink;<<= SlaveFullName($HeadGirl)>>@@__'' is serving as your head girl<<if $arcologies[0].FSEgyptianRevivalistLaw == 1>> and Consort<</if>>.
 		<span id="manageHG"><strong><<link "Manage Head Girl">><<goto "HG Select">><</link>></strong></span> @@.cyan;[H]@@
 	<<elseif (ndef _HG) && ($slaves.length > 1)>>
 		You have not selected a Head Girl<<if $arcologies[0].FSEgyptianRevivalistLaw == 1>> and Consort<</if>>. <span id="manageHG"><strong><<link "Select one">><<goto "HG Select">><</link>></strong></span> @@.cyan;[H]@@
@@ -48,7 +48,7 @@
 	<</if>>
 	<br>
 	<<if def _RC>>
-		''__@@.pink;<<SlaveFullName $Recruiter>>@@__'' is working to recruit girls.
+		''__@@.pink;<<= SlaveFullName($Recruiter)>>@@__'' is working to recruit girls.
 		<span id="manageRecruiter"><strong><<link "Manage Recruiter">><<goto "Recruiter Select">><</link>></strong></span> @@.cyan;[U]@@
 	<<else>>
 		You have not selected a Recruiter.
@@ -57,7 +57,7 @@
 	<<if ($dojo != 0)>>
 		<br>
 		<<if def _BG>>
-			''__@@.pink;<<SlaveFullName $Bodyguard>>@@__'' is serving as your bodyguard. <span id="manageBG"><strong><<link "Manage Bodyguard">><<goto "BG Select">><</link>></strong></span> @@.cyan;[B]@@
+			''__@@.pink;<<= SlaveFullName($Bodyguard)>>@@__'' is serving as your bodyguard. <span id="manageBG"><strong><<link "Manage Bodyguard">><<goto "BG Select">><</link>></strong></span> @@.cyan;[B]@@
 		<<else>>
 			You have not selected a Bodyguard. <span id="manageBG"><strong><<link "Select one">><<goto "BG Select">><</link>></strong></span> @@.cyan;[B]@@
 		<</if>>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 3f95ad41abe..690460ea8cc 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -2022,8 +2022,6 @@ This experience
 /* see how they are on a single line? This permits "."s and other things to be appended directly onto the widget result */
 <<widget "PlayerName">><<if $surnameOrder != 1>><<switch $PC.nationality>><<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">><<if $PC.surname>>$PC.surname <</if>>$PC.name<<default>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</switch>><<else>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</if>><</widget>>
 
-<<widget "SlaveFullName">><<= SlaveFullName($args[0])>><</widget>>
-
 <<widget "PoliteRudeTitle">><<switch $args[0].nationality>><<case "Japanese">><<if $args[0].trust > 0>>$PC.name<<if $PC.title > 0>>kun<<else>>chan<</if>><<else>><<if $PC.surname>><<print $PC.surname>><<else>><<print $PC.name>><<s>>an<</if>><</if>><<default>><<if $args[0].intelligence < -2>><<Master>><<elseif $args[0].intelligence > 1>><<if $PC.title > 0>>Ma<<s>>ther<<else>>Mi<<s>>tre<<ss>><</if>><<elseif $args[0].trust > 0>>$PC.name<<else>><<if $PC.surname>>$PC.surname<<else>>$PC.name<</if>><</if>><</switch>><</widget>>
 
 /*
@@ -2036,7 +2034,7 @@ This experience
  Call as <<EventNameDelink>>
  $args[0]: Slave.
 */
-<<widget "EventNameDelink">><<replace "#name">><<SlaveFullName $args[0]>><</replace>><</widget>>
+<<widget "EventNameDelink">><<replace "#name">><<= SlaveFullName($args[0])>><</replace>><</widget>>
 
 /*
  Call as <<DegradingName $slave>> where $slave is any slave object
diff --git a/src/utility/saRulesWidgets.tw b/src/utility/saRulesWidgets.tw
index d1227463529..523cd4c01a4 100644
--- a/src/utility/saRulesWidgets.tw
+++ b/src/utility/saRulesWidgets.tw
@@ -423,7 +423,7 @@ and
 											<<if $slaves[_j].assignmentVisible || $slaves[_j].assignment == $slaves[$i].assignment>>
 											<<if $slaves[_j].devotion < 20>>
 											<<if $slaves[_j].trust < -20>>
-												Craving a rush, she repeatedly forces a reluctant <<SlaveFullName $slaves[_j]>> to have sex with her in public. $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
+												Craving a rush, she repeatedly forces a reluctant <<= SlaveFullName($slaves[_j])>> to have sex with her in public. $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
 												<<set $slaves[$i].rivalry = 1, $slaves[_j].rivalry = 1, $slaves[$i].rivalryTarget = $slaves[_j].ID, $slaves[_j].rivalryTarget = $slaves[$i].ID>>
 												<<run SimpleSlaveFucking($slaves[_j], 4)>>
 												<<if canPenetrate($slaves[_j])>>
@@ -470,7 +470,7 @@ and
 											<<if $slaves[_j].assignmentVisible || $slaves[_j].assignment == $slaves[$i].assignment>>
 											<<if $slaves[_j].devotion <= 50>>
 											<<if $slaves[_j].sexualFlaw != "none">>
-												She focuses on <<SlaveFullName $slaves[_j]>>, who has a sexual flaw $slaves[$i].slaveName can exploit. She sadistically
+												She focuses on <<= SlaveFullName($slaves[_j])>>, who has a sexual flaw $slaves[$i].slaveName can exploit. She sadistically
 												<<if $slaves[_j].sexualFlaw == "hates oral">>
 													rapes the poor slave's face<<if !canAchieveErection($slaves[$i])>> with her fingers<</if>>. $slaves[_j].slaveName hates oral
 												<<elseif $slaves[_j].sexualFlaw == "hates penetration" && canDoVaginal($slaves[_j])>>
@@ -536,7 +536,7 @@ and
 											<<if $slaves[_j].assignmentVisible || $slaves[_j].assignment == $slaves[$i].assignment>>
 											<<if $slaves[_j].devotion < 20>>
 											<<if $slaves[_j].trust < -20>>
-												She repeatedly rapes a reluctant <<SlaveFullName $slaves[_j]>>; she can't seem to keep her hands off the poor slave, who can't avoid her. Not surprisingly, $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
+												She repeatedly rapes a reluctant <<= SlaveFullName($slaves[_j])>>; she can't seem to keep her hands off the poor slave, who can't avoid her. Not surprisingly, $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
 												<<set $slaves[$i].rivalry = 1, $slaves[_j].rivalry = 1, $slaves[$i].rivalryTarget = $slaves[_j].ID, $slaves[_j].rivalryTarget = $slaves[$i].ID>>
 												<<break>>
 												<<run SimpleSlaveFucking($slaves[_j], 4)>>
-- 
GitLab


From 6bb32ffeeec721f03717049cca7f55b82410d4d0 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 13 Jul 2018 21:13:38 -0400
Subject: [PATCH 046/189] Fixes

---
 slave variables documentation - Pregmod.txt | 2 +-
 src/uncategorized/PESS.tw                   | 2 +-
 src/uncategorized/ptWorkaround.tw           | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt
index 2293e8792aa..edf173d6eeb 100644
--- a/slave variables documentation - Pregmod.txt	
+++ b/slave variables documentation - Pregmod.txt	
@@ -1210,7 +1210,7 @@ face:
 face attractiveness
 -96-       - very ugly
 -95 - -41  - ugly
--40 - -11  - unnattractive
+-40 - -11  - unattractive
 -10 -  10  - attractive
  11 -  40  - very pretty
  41 -  95  - gorgeous
diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw
index 3dc043e0d20..fe661b82a5e 100644
--- a/src/uncategorized/PESS.tw
+++ b/src/uncategorized/PESS.tw
@@ -125,7 +125,7 @@ The business is brief and inconsequential, but it's good to speak with her. When
 
 <<case "worshipful impregnatrix">>
 
-<<EventNameLink $activeSlave>> comes wearily into your office at the end of her day to check in with you, like a good Head Girl should. You're busy at the moment, so she waits quietly, not wanting to interrupt you. She seems tired, and leans <<if $activeSlave.physicalAge > 35>>heavily<<else>>lightly<</if>> against the back of the office couch<<if $activeSlave.amp < 0>>, her mechanical hand hard against the leather<</if>>. Your Head Girl is a <<if $activeSlave.fetish == "dom">>very dominant $slaveTitle<<elseif $activeSlave.fetish == "sadist">>sadistic and dominant $slaveTitle<<else>>dutiful $slaveTitle and takes her leadership position seriously<</if>>, but she knows she doesn't have to pretend to be invincible around you.
+<<EventNameLink $activeSlave>> comes wearily into your office at the end of her day to check in with you, like a good Head Girl should. You're busy at the moment, so she waits quietly, not wanting to interrupt you. She seems tired, and leans <<if $activeSlave.physicalAge > 35>>heavily<<else>>lightly<</if>> against the back of the office couch<<if $activeSlave.amp < 0>>, her mechanical hand hard against the leather<</if>>. Your Head Girl is a <<if $activeSlave.fetish == "dom">>very dominant $desc<<elseif $activeSlave.fetish == "sadist">>sadistic and dominant $desc<<else>>dutiful $desc and takes her leadership position seriously<</if>>, but she knows she doesn't have to pretend to be invincible around you.
 <br><br>
 When you've finished your task, you raise your eyes to examine her. She's standing with her <<if $activeSlave.hips > 1>>broad<<elseif $activeSlave.hips < -1>>narrow<<else>>womanly<</if>> hips slightly cocked and her <<if $activeSlave.muscles > 95>>incredibly muscular<<elseif $activeSlave.weight > 10>>soft<<elseif $activeSlave.muscles > 10>>hard<<else>>trim<</if>> thighs bowed a bit wide. You immediately understand why: it's her job to impregnate fertile slaves, a duty she takes very seriously, and her dick must be very sore.
 <<if $activeSlave.clothes == "no clothing">>
diff --git a/src/uncategorized/ptWorkaround.tw b/src/uncategorized/ptWorkaround.tw
index 4e51f0879d2..ab83c7dc2bf 100644
--- a/src/uncategorized/ptWorkaround.tw
+++ b/src/uncategorized/ptWorkaround.tw
@@ -314,11 +314,11 @@
 
 <<case "learn skills">>
 	<<set _trainingEfficiency = 10+Math.trunc($activeSlave.devotion/30)+$activeSlave.intelligence>>
-	<<set $skillIncrease = _trainingEfficiency>>
 	<<if $PC.career == "escort">>
 		You are well-versed in sexual techniques and how to employ them, giving you an edge in teaching her.
 		<<set _trainingEfficiency += 10>>
 	<</if>>
+	<<set $skillIncrease = _trainingEfficiency>>
 	<<if $activeSlave.devotion > 50>>
 		She's devoted to you, making sexual training much easier.
 	<<elseif $activeSlave.devotion > 20>>
-- 
GitLab


From 7f7377c2d52bbfa88e47e8fc98c1674eb5fa7690 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Fri, 13 Jul 2018 19:34:45 -0700
Subject: [PATCH 047/189] Pronoun fix

herself -> objectself
---
 src/utility/extendedFamilyWidgets.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/utility/extendedFamilyWidgets.tw b/src/utility/extendedFamilyWidgets.tw
index f9dcf782244..1dbf8bcdcc2 100644
--- a/src/utility/extendedFamilyWidgets.tw
+++ b/src/utility/extendedFamilyWidgets.tw
@@ -685,7 +685,7 @@
 	<br>Your parents are @@.lightgreen;$children[0].slaveName and $children[1].slaveName@@.
 <<elseif $children.length > 0>>
 	<<if $PC.father == $PC.mother>>
-	    <br>Your parent is @@.lightgreen;$children[0].slaveName@@, who impregnated herself with you.
+	    <br>Your parent is @@.lightgreen;$children[0].slaveName@@, who impregnated <<print $object>>self with you.
 	<<else>>
 	    <br>You know one of your parents, @@.lightgreen;$children[0].slaveName@@.
 	<</if>>
-- 
GitLab


From 1ca5acdf2c6ed2e992eccb2210f4fb3f7b1cb155 Mon Sep 17 00:00:00 2001
From: 2hu4u <2hu4u@airmail.cc>
Date: Sat, 14 Jul 2018 15:14:49 +1200
Subject: [PATCH 048/189] Rules Assistant Haircuts

Added hair length maintenance to the RA, put RA haircuts into backwards
compat.
---
 src/js/DefaultRules.tw                      | 12 ++++++++++++
 src/js/rulesAssistant.tw                    |  1 +
 src/js/rulesAssistantOptions.tw             | 15 +++++++++++++++
 src/uncategorized/BackwardsCompatibility.tw |  4 ++++
 src/uncategorized/initRules.tw              |  2 ++
 5 files changed, 34 insertions(+)

diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 029db52dbd0..2b7898375cc 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -1769,6 +1769,18 @@ window.DefaultRules = (function() {
 			}
 		}
 
+		if (rule.haircuts !== undefined && (rule.haircuts !== "no default setting")) {
+			if (slave.bald != 1) {
+				if (rule.haircuts === 1 && slave.haircuts !== 1) {
+					r += `<br>${slave.slaveName}'s hair will now be maintained at ${lengthToEitherUnit(slave.hLength)} long.`;
+					slave.haircuts = 1;
+				} else if (rule.haircuts === 0 && slave.haircuts !== 0) {
+					r += `<br>${slave.slaveName}'s hair length will no longer be maintained.`;
+					slave.haircuts = 0;
+				}
+			}
+		}
+
 		if (rule.pubicHColor !== undefined && (rule.pubicHColor !== "no default setting")) {
 			if (slave.pubicHStyle != "bald" && slave.pubicHStyle != "hairless") {
 				if ((slave.pubicHColor !== rule.pubicHColor)) {
diff --git a/src/js/rulesAssistant.tw b/src/js/rulesAssistant.tw
index 3e0d87f0bdf..c7fcfe7abf3 100644
--- a/src/js/rulesAssistant.tw
+++ b/src/js/rulesAssistant.tw
@@ -208,6 +208,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			nails: "no default setting",
 			hColor: "no default setting",
 			hLength: "no default setting",
+			haircuts: "no default setting",
 			hStyle: "no default setting",
 			pubicHColor: "no default setting",
 			pubicHStyle: "no default setting",
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index 501d897b1bd..dd4a98aa105 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -969,6 +969,7 @@ window.rulesAssistantOptions = (function() {
 			this.appendChild(new MakeupList());
 			this.appendChild(new NailsList());
 			this.appendChild(new HairLengthList());
+			this.appendChild(new HaircutsList());
 			this.appendChild(new HairColourList());
 			this.appendChild(new HairStyleList());
 			this.appendChild(new PubicHairColourList());
@@ -2076,6 +2077,20 @@ window.rulesAssistantOptions = (function() {
 			this.onchange = (value) => current_rule.set.hLength = value;
 		}
 	}
+
+	class HaircutsList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["maintain hair length", 1],
+				["do not maintain hair length", 0]
+			];
+			super("Hair length maintenance", pairs);
+			this.setValue(current_rule.set.haircuts);
+			this.onchange = (value) => current_rule.set.haircuts = value;
+		}
+	}
+
 	class HairColourList extends List {
 		constructor() {
 			const pairs = [
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 7ce96339b6c..87c736cf6b9 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2945,3 +2945,7 @@ Done!
 	if (x.set.preg === -1) x.set.preg = true;
 	else x.set.preg = false;
 })>>
+
+<<run $defaultRules.filter(x => !([1, 0, "no default setting"].includes(x.set.haircuts))).forEach(x => {
+	x.set.haircuts = "no default setting";
+})>>
diff --git a/src/uncategorized/initRules.tw b/src/uncategorized/initRules.tw
index 2dc97f98aae..aaf8c51768e 100644
--- a/src/uncategorized/initRules.tw
+++ b/src/uncategorized/initRules.tw
@@ -47,6 +47,7 @@
 	nails: "no default setting",
 	hColor: "no default setting",
 	hLength: "no default setting",
+	haircuts: "no default setting",
 	hStyle: "no default setting",
 	pubicHColor: "no default setting",
 	pubicHStyle: "no default setting",
@@ -169,6 +170,7 @@
 	nails: "no default setting",
 	hColor: "no default setting",
 	hLength: "no default setting",
+	haircuts: "no default setting",
 	hStyle: "no default setting",
 	pubicHColor: "no default setting",
 	pubicHStyle: "no default setting",
-- 
GitLab


From 1fb2d8a937321412f96251075152e1f09496693c Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sat, 14 Jul 2018 00:04:45 -0400
Subject: [PATCH 049/189] Pregmod v1026

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |    7 +
 devNotes/twine JS.txt                        | 4441 +++++++++++++++++-
 slave variables documentation - Pregmod.txt  |  206 +
 src/init/storyInit.tw                        |   79 +-
 src/pregmod/widgets/pregmodWidgets.tw        |   50 +
 src/uncategorized/BackwardsCompatibility.tw  |   80 +
 src/uncategorized/managePenthouse.tw         |    6 +
 src/uncategorized/nextWeek.tw                |   47 +
 src/uncategorized/saLongTermEffects.tw       |  170 +-
 src/uncategorized/saPorn.tw                  | 1343 ++++++
 src/uncategorized/slaveInteract.tw           |  132 +-
 src/utility/slaveCreationWidgets.tw          |    2 +-
 12 files changed, 6378 insertions(+), 185 deletions(-)
 create mode 100644 src/uncategorized/saPorn.tw

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index fbc8ea56f77..8935d888c31 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,13 @@
 
 0.10.7.1-0.4.x
 
+	22
+	-fixes
+	-slaveSummary JS conversion
+	-startingGirls slaves can now be relatives in NG+, bu only with each other
+	-more widget to JS conversion
+	-imperial measurement is now an option
+
 7/08/2018
 
 	21
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index c84bdc5df14..b5373e2c63e 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -12947,7 +12947,8 @@ window.rulesAssistantOptions = (function() {
 
 	class ApplicationLog extends Element {
 		render() {
-			const elem = document.createElement("div");
+			const elem = document.querySelector("#application-log") || document.createElement("div");
+			elem.id = "application-log";
 			clearSummaryCache();
 			elem.innerHTML = V.slaves.map(slave => DefaultRules(slave)).join("");
 			return elem;
@@ -16776,3 +16777,4441 @@ window.I = function() {
 	else
 		name = V.incubatorNameCaps;
 	return `<<link "${name}""Incubator">><</link>> `}
+
+/*:: Slave Summary Widgets JS [script]*/
+
+window.clearSummaryCache = function clearSummaryCache(slave) {
+	if (!slave)
+		setup.summaryCache = {};
+	else if (slave instanceof Object && slave.ID !== Infinity && slave.ID !== -Infinity)
+		setup.summaryCache[slave.ID] = undefined;
+	else
+		setup.summaryCache[slave] = undefined;
+};
+
+window.SlaveSummary = function SlaveSummary(slave) {
+	const V = State.variables;
+	if(V.useSummaryCache) {
+		if (setup.summaryCache[slave.ID] === undefined)
+			setup.summaryCache[slave.ID] = SlaveSummaryUncached(slave);
+		//this.output.appendChild(setup.summaryCache[State.temporary.Slave.ID].cloneNode(true))
+		return setup.summaryCache[slave.ID];
+	} else return SlaveSummaryUncached(slave);
+};
+
+window.SlaveSummaryUncached = (function(){
+	"use strict";
+	let V, r;
+	
+	function SlaveSummaryUncached(slave) {
+		V = State.variables;
+		r = "";
+		if (V.abbreviateDevotion === 1)
+			short_devotion(slave);
+		else if (V.abbreviateDevotion === 2)
+			long_devotion(slave);
+		if (slave.fuckdoll === 0) {
+			if (V.abbreviateRules === 1)
+				short_rules(slave);
+			else if (V.abbreviateRules === 2)
+				long_rules(slave);
+		}
+		if (slave.tired !== 0)
+			r += `Tired.`;
+		if (V.abbreviateDiet === 1)
+			short_weight(slave);
+		else if (V.abbreviateDiet === 2)
+			long_weight(slave);
+		if (V.abbreviateDiet === 1)
+			short_diet(slave);
+		else if (V.abbreviateDiet === 2)
+			long_diet(slave);
+		if (V.abbreviateHealth === 1)
+			short_health(slave);
+		else if (V.abbreviateHealth === 2)
+			long_health(slave);
+		if (V.abbreviateDrugs === 1)
+			short_drugs(slave);
+		else if (V.abbreviateDrugs === 2)
+			long_drugs(slave);
+		if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
+			r += `<br>`;
+			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		V.desc = SlaveTitle(slave);
+		V.seed = V.desc.substring(0, 1);
+		V.seed = V.seed.toUpperCase();
+		V.desc = V.seed + V.desc.substring(1);
+		r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong> `;
+		if (V.seeRace === 1) {
+			r += `<span class="tan">`;
+			if (V.abbreviateRace === 1)
+				short_race(slave);
+			else if (V.abbreviateRace === 2)
+				long_race(slave);
+			r += `</span>`;
+		}
+		if (V.abbreviateNationality === 1)
+			short_nationality(slave);
+		else if (V.abbreviateNationality === 2)
+			long_nationality(slave);
+		if (V.abbreviatePhysicals === 1)
+			short_skin(slave);
+		else
+			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
+		if (V.abbreviateGenitalia === 1)
+			short_genitals(slave);
+		else if (V.abbreviateGenitalia === 2)
+			long_genitals(slave);
+		if (V.abbreviatePhysicals === 1) {
+			short_age(slave);
+			short_face(slave);
+			short_eyes(slave);
+			if (slave.markings !== "none")
+				r += `Markings`;
+			short_lips(slave);
+			short_teeth(slave);
+			short_muscles(slave);
+			short_limbs(slave);
+			short_voice(slave);
+			short_tits_ass(slave);
+			short_hips(slave);
+			short_waist(slave);
+			short_implants(slave);
+			short_lactation(slave);
+			short_mods(slave);
+		} else if (V.abbreviatePhysicals === 2) {
+			long_age(slave);
+			long_face(slave);
+			long_eyes(slave);
+			long_lips(slave);
+			long_teeth(slave);
+			long_muscles(slave);
+			long_limbs(slave);
+			long_voice(slave);
+			long_tits_ass(slave);
+			long_hips(slave);
+			long_waist(slave);
+			long_implants(slave);
+			long_lactation(slave);
+			long_mods(slave);
+			if (slave.brand !== 0)
+				r += `Branded.`;
+			r += `</span>`;
+		}
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		if (V.abbreviateSkills === 1) {
+			short_intelligence(slave);
+			short_sex_skills(slave);
+			if (slave.combatSkill > 0)
+				r += `C`;
+			r += `</span>`;
+			short_prestige(slave);
+		} else if (V.abbreviateSkills === 2) {
+			long_intelligence(slave);
+			long_sex_skills(slave);
+			if (slave.combatSkill > 0)
+				r += `Trained fighter.`;
+			r += `</span>`;
+			long_prestige(slave);
+		}
+		if (V.abbreviateMental === 1) {
+			if (slave.fetish !== "mindbroken") {
+				if (slave.fetishKnown === 1)
+					short_fetish(slave);
+				if (slave.attrKnown === 1)
+					short_attraction(slave);
+			}
+			if (slave.clitPiercing === 3) {
+				short_smart_fetish(slave);
+				short_smart_attraction(slave);
+			}
+			short_behavior_flaw(slave);
+			short_sex_flaw(slave);
+			short_behavior_quirk(slave);
+			short_sex_quirk(slave);
+		} else if (V.abbreviateMental === 2) {
+			if (slave.fetish !== "mindbroken") {
+				if (slave.fetishKnown === 1)
+					long_fetish(slave);
+				if (slave.attrKnown === 1)
+					long_attraction(slave);
+			}
+			if (slave.clitPiercing === 3) {
+				long_smart_fetish(slave);
+				long_smart_attraction(slave);
+			}
+			long_behavior_flaw(slave);
+			long_sex_flaw(slave);
+			long_behavior_quirk(slave);
+			long_sex_quirk(slave);
+		}
+		if (slave.customLabel !== "")
+			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
+		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
+			r += `<br>`;
+			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		if (V.abbreviateMental === 1) {
+			r += `<span class="lightgreen">`;
+			let _relationshipHandled = 0;
+			if (V.familyTesting === 1)
+				short_extended_family(slave);
+			else
+				short_legacy_family(slave);
+			r += `</span>`;
+			_relationshipHandled = 0;
+			short_rival(slave);
+		} else if (V.abbreviateMental === 2) {
+			let _relationshipHandled = 0;
+			if (V.familyTesting === 1)
+				long_extended_family(slave);
+			else
+				long_legacy_family(slave);
+			_relationshipHandled = 0;
+			long_rival(slave);
+		}
+		if (slave.fuckdoll === 0) {
+			if (V.abbreviateClothes === 2) {
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+				if (slave.choosesOwnClothes === 1)
+					r += `Dressing herself.`;
+				long_clothes(slave);
+				long_collar(slave);
+				long_belly(slave);
+				if (slave.amp !== 1)
+					long_legs(slave);
+				if (canWalk(slave))
+					long_shoes(slave);
+				long_vaginal_acc(slave);
+				long_dick_acc(slave);
+				long_buttplug(slave);
+			}
+		}
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		rules_assistant(slave);
+		if (V.abbreviateOrigins === 2 && slave.origin !== 0)
+			origins(slave);
+		return r;
+	}
+	
+	function short_devotion(slave) {
+		if (slave.fetish === "mindbroken") {
+			r += `<span class="red">MB</span>`;
+		} else if (slave.devotion < -95) {
+			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion < -50) {
+			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion < -20) {
+			r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion <= 20) {
+			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+		} else if (slave.devotion <= 50) {
+			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+		} else if (slave.devotion <= 95) {
+			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+		} else {
+			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+		}
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.trust < -95) {
+			r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust < -50) {
+			r += `<span class="goldenrod">Terr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust < -20) {
+			r += `<span class="gold">Fright${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust <= 20) {
+			r += `<span class="yellow">Fear${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust <= 50) {
+			if (slave.devotion < -20) {
+				r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="mediumaquamarine">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		} else if (slave.trust < 95) {
+			if (slave.devotion < -20) {
+				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="mediumseagreen">Trust${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		} else {
+			if (slave.devotion < -20) {
+				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		}
+	}
+	
+	function long_devotion(slave) {
+		if (slave.fetish === "mindbroken") {
+			r += `<span class="red">Mindbroken.</span>`;
+		} else if (slave.devotion < -95) {
+			r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion < -50) {
+			r += `<span class="darkviolet">Hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion < -20) {
+			r += `<span class="mediumorchid">Resistant${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 20) {
+			r += `<span class="yellow">Ambivalent${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 50) {
+			r += `<span class="hotpink">Accepting${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 95) {
+			r += `<span class="deeppink">Devoted${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else {
+			r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		}
+		r += " ";
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.trust < -95) {
+			r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust < -50) {
+			r += `<span class="goldenrod">Terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust < -20) {
+			r += `<span class="gold">Frightened${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust <= 20) {
+			r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust <= 50) {
+			if (slave.devotion < -20) {
+				r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		} else if (slave.trust < 95) {
+			if (slave.devotion < -20) {
+				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		} else {
+			if (slave.devotion < -20) {
+				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		}
+		r += " ";
+	}
+	
+	function short_rules(slave) {
+		switch (slave.livingRules) {
+			case "luxurious":
+				r += `<strong>LS:Lux</strong>`;
+				break;
+			case "normal":
+				r += `<strong>LS:Nor</strong>`;
+				break;
+			default:
+				r += `<strong>LS:Spa</strong>`;
+				break;
+		}
+		if (canTalk(slave)) {
+			switch (slave.speechRules) {
+				case "permissive":
+					r += `<strong>SpR:P</strong>`;
+					break;
+				case "accent elimination":
+					r += `<strong>SpR:NoAcc</strong>`;
+					break;
+				case "language lessons":
+					r += `<strong>SpR:LL</strong>`;
+					break;
+				default:
+					r += `<strong>SpR:R</strong>`;
+					break;
+			}
+		}
+		switch (slave.relationshipRules) {
+			case "permissive":
+				r += `<strong>ReR:P</strong>`;
+				break;
+			case "just friends":
+				r += `<strong>ReR:Fr</strong>`;
+				break;
+			default:
+				r += `<strong>ReR:R</strong>`;
+				break;
+		}
+		switch (slave.standardPunishment) {
+			case "confinement":
+				r += `<strong>Pun:Conf</strong>`;
+				break;
+			case "whipping":
+				r += `<strong>Pun:Whip</strong>`;
+				break;
+			case "chastity":
+				r += `<strong>Pun:Chas</strong>`;
+				break;
+			default:
+				r += `<strong>Pun:Situ</strong>`;
+				break;
+		}
+		switch (slave.standardReward) {
+			case "relaxation":
+				r += `<strong>Rew:Relx</strong>`;
+				break;
+			case "drugs":
+				r += `<strong>Rew:Drug</strong>`;
+				break;
+			case "orgasm":
+				r += `<strong>Rew:Orga</strong>`;
+				break;
+			default:
+				r += `<strong>Rew:Situ</strong>`;
+				break;
+		}
+		switch (slave.releaseRules) {
+			case "permissive":
+				r += `<strong>MaR:P</strong>`;
+				break;
+			case "sapphic":
+				r += `<strong>MaR:S</strong>`;
+				break;
+			case "masturbation":
+				r += `<strong>MaR:M</strong>`;
+				break;
+			default:
+				r += `<strong>MaR:R</strong>`;
+				break;
+		}
+	}
+	
+	function long_rules(slave) {
+		r += `Living standard: ${slave.livingRules}. `;
+		if (canTalk(slave)) {
+			r += `Speech rules: ${slave.speechRules}. `;
+		}
+		r += `Relationship rules: ${slave.relationshipRules}. `;
+		r += `Typical punishment: ${slave.standardPunishment}. `;
+		r += `Typical reward: ${slave.standardReward}. `;
+		r += `Release rules: ${slave.releaseRules}. `;
+	}
+	
+	function short_weight(slave) {
+		if (slave.weight < -95) {
+			r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		} else if (slave.weight < -30) {
+			if (slave.hips < -1) {
+				r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W--${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight < -10) {
+			r += `<strong>W-${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 10) {
+			r += `<strong>W${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 30) {
+			r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 95) {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 130) {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 160) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 190) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		}
+	}
+	
+	function long_weight(slave) {
+		if (slave.weight < -95) {
+			r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		} else if (slave.weight < -30) {
+			if (slave.hips < -1) {
+				r += `Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight < -10) {
+			r += `Thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 10) {
+			r += `Trim${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 30) {
+			r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 95) {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 130) {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 160) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 190) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		}
+		r += " ";
+
+	}
+	
+	function short_diet(slave) {
+		r += `<span class="teal">`;
+		switch (slave.diet) {
+			case "restricted":
+				r += `<strong>Di:W-</strong>`;
+				break;
+			case "fattening":
+				r += `<strong>Di:W+</strong>`;
+				break;
+			case "XX":
+				r += `<strong>Di:XX+</strong>`;
+				break;
+			case "XY":
+				r += `<strong>Di:XY+</strong>`;
+				break;
+			case "XXY":
+				r += `<strong>Di:XXY+</strong>`;
+				break;
+			case "muscle building":
+				r += `<strong>Di:M+</strong>`;
+				break;
+			case "slimming":
+				r += `<strong>Di:M-</strong>`;
+				break;
+			case "cum production":
+				r += `<strong>Di:C+</strong>`;
+				break;
+			case "cleansing":
+				r += `<strong>Di:H+</strong>`;
+				break;
+			case "fertility":
+				r += `<strong>Di:F+</strong>`;
+				break;
+		}
+		r += `</span>`;
+		r += `<span class="cyan">`;
+		if (slave.dietCum === 2) {
+			r += `<strong>Cum++</strong>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
+			r += `<strong>Cum+</strong>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
+			r += `<strong>Cum+ Milk+</strong>`;
+		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
+			r += `<strong>Milk+</strong>`;
+		} else if ((slave.dietMilk === 2)) {
+			r += `<strong>Milk++</strong>`;
+		}
+		r += `</span>`;
+	}
+	
+	function long_diet(slave) {
+		r += `<span class="teal">`;
+		switch (slave.diet) {
+			case "restricted":
+				r += `Dieting.`;
+				break;
+			case "fattening":
+				r += `Gaining weight.`;
+				break;
+			case "XX":
+				r += `Estrogen rich.`;
+				break;
+			case "XY":
+				r += `Testosterone rich.`;
+				break;
+			case "XXY":
+				r += `Futanari mix.`;
+				break;
+			case "muscle building":
+				r += `Pumping iron.`;
+				break;
+			case "slimming":
+				r += `Slimming down.`;
+				break;
+			case "cum production":
+				r += `Cum production.`;
+				break;
+			case "cleansing":
+				r += `Cleansing.`;
+				break;
+			case "fertility":
+				r += `Fertility.`;
+				break;
+		}
+		r += `</span> `;
+		if (slave.dietCum === 2) {
+			r += `Diet Base: <span class="cyan">Cum Based.</span>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
+			r += `Diet Base: <span class="cyan">Cum Added.</span>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
+			r += `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
+		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
+			r += `Diet Base: <span class="cyan">Milk Added.</span>`;
+		} else if ((slave.dietMilk === 2)) {
+			r += `Diet Base: <span class="cyan">Milk Based.</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_health(slave) {
+		if (slave.health < -20) {
+			r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		} else if (slave.health <= 20) {
+			r += `<strong><span class="yellow">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		} else if (slave.health > 20) {
+			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		}
+	}
+	
+	function long_health(slave) {
+		if (slave.health < -90) {
+			r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health < -50) {
+			r += `<span class="red">Extremely unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health < -20) {
+			r += `<span class="red">Unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 20) {
+			r += `<span class="yellow">Healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 50) {
+			r += `<span class="green">Very healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 90) {
+			r += `<span class="green">Extremely healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else {
+			r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_drugs(slave) {
+		r += `<span class="tan">`;
+		switch (slave.drugs) {
+			case "breast injections":
+				r += `<strong>Dr:Boobs+</strong>`;
+				break;
+			case "intensive breast injections":
+				r += `<strong>Dr:Boobs++</strong>`;
+				break;
+			case "hyper breast injections":
+				r += `<strong>Dr:Boobs+++</strong>`;
+				break;
+			case "butt injections":
+				r += `<strong>Dr:Butt+</strong>`;
+				break;
+			case "intensive butt injections":
+				r += `<strong>Dr:Butt++</strong>`;
+				break;
+			case "hyper butt injections":
+				r += `<strong>Dr:Butt+++</strong>`;
+				break;
+			case "lip injections":
+				r += `<strong>Dr:Lip+</strong>`;
+				break;
+			case "fertility drugs":
+				r += `<strong>Dr:Fert+</strong>`;
+				break;
+			case "super fertility drugs":
+				r += `<strong>Dr:Fert++</strong>`;
+				break;
+			case "penis enhancement":
+				r += `<strong>Dr:Dick+</strong>`;
+				break;
+			case "intensive penis enhancement":
+				r += `<strong>Dr:Dick++</strong>`;
+				break;
+			case "hyper penis enhancement":
+				r += `<strong>Dr:Dick+++</strong>`;
+				break;
+			case "testicle enhancement":
+				r += `<strong>Dr:Balls+</strong>`;
+				break;
+			case "intensive testicle enhancement":
+				r += `<strong>Dr:Balls++</strong>`;
+				break;
+			case "hyper testicle enhancement":
+				r += `<strong>Dr:Balls+++</strong>`;
+				break;
+			case "psychosuppressants":
+				r += `<strong>Dr:Psych</strong>`;
+				break;
+			case "steroids":
+				r += `<strong>Dr:Ster</strong>`;
+				break;
+			case "female hormone injections":
+				r += `<strong>Dr:HormXX++</strong>`;
+				break;
+			case "male hormone injections":
+				r += `<strong>Dr:HormXY++</strong>`;
+				break;
+			case "hormone enhancers":
+				r += `<strong>Dr:Horm+</strong>`;
+				break;
+			case "hormone blockers":
+				r += `<strong>Dr:Horm-</strong>`;
+				break;
+			case "anti-aging cream":
+				r += `<strong>Dr:Age-</strong>`;
+				break;
+			case "appetite suppressors":
+				r += `<strong>Dr:ApSup</strong>`;
+				break;
+			case "penis atrophiers":
+				r += `<strong>Dr:Dick-</strong>`;
+				break;
+			case "testicle atrophiers":
+				r += `<strong>Dr:Balls-</strong>`;
+				break;
+			case "clitoris atrophiers":
+				r += `<strong>Dr:Clit-</strong>`;
+				break;
+			case "labia atrophiers":
+				r += `<strong>Dr:Labia-</strong>`;
+				break;
+			case "nipple atrophiers":
+				r += `<strong>Dr:Nipple-</strong>`;
+				break;
+			case "lip atrophiers":
+				r += `<strong>Dr:Lip-</strong>`;
+				break;
+			case "breast redistributors":
+				r += `<strong>Dr:Breast-</strong>`;
+				break;
+			case "butt redistributors":
+				r += `<strong>Dr:Butt-</strong>`;
+				break;
+			case "sag-B-gone":
+				r += `<strong>Dr:AntiSag</strong>`;
+				break;
+			case "growth stimulants":
+				r += `<strong>Dr:groStim</strong>`;
+				break;
+		}
+		r += `</span>`;
+		r += `<span class="lightgreen">`;
+		if (slave.curatives === 2) {
+			r += `<strong>Cura</strong>`;
+		} else if (slave.curatives === 1) {
+			r += `<strong>Prev</strong>`;
+		}
+		r += `</span>`;
+		if (slave.aphrodisiacs !== 0) {
+			r += `<span class="lightblue">`;
+			if (slave.aphrodisiacs === 1) {
+				r += `<strong>Aph</strong>`;
+			} else if (slave.aphrodisiacs === 2) {
+				r += `<strong>Aph++</strong>`;
+			} else {
+				r += `<strong>Anaph</strong>`;
+			}
+			r += `</span>`;
+		}
+		if (slave.addict !== 0) {
+			r += `<span class="cyan">Add</span>`;
+		}
+		r += `<span class="lightsalmon">`;
+		if (slave.hormones > 1) {
+			r += `<strong>Ho:F+</strong>`;
+		} else if (slave.hormones > 0) {
+			r += `<strong>Ho:F</strong>`;
+		} else if (slave.hormones < -1) {
+			r += `<strong>Ho:M+</strong>`;
+		} else if (slave.hormones < 0) {
+			r += `<strong>Ho:M</strong>`;
+		}
+		r += `</span>`;
+		r += `<span class="mediumseagreen">`;
+		if ((slave.bellyImplant > -1)) {
+			r += `<strong>Belly Imp</strong>`;
+		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
+			r += `<strong>Barr</strong>`;
+		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Prepub</strong>`;
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Meno</strong>`;
+		} else if (slave.pregWeek < 0) {
+			r += `<strong>Postpartum</strong>`;
+		} else if (slave.preg === -1) {
+			r += `<strong>CC</strong>`;
+		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Fert+</strong>`;
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
+			r += `<strong>Preg?</strong>`;
+		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
+			r += `<strong>Perm preg</strong>`;
+		} else if (slave.pregKnown === 1) {
+			r += `<strong>${slave.pregWeek} wks preg</strong>`;
+		}
+		r += `</span>`;
+		if (slave.induce === 1) {
+			r += `<span class="orange"><strong>Early Labor</strong></span>`;
+		}
+		if (slave.pubertyXY === 0 && slave.balls > 0) {
+			r += `<strong>Prepub balls</strong>`;
+		}
+		if (slave.balls > 0 && slave.vasectomy === 1) {
+			r += `<strong>Vasect</strong>`;
+		}
+		r += `<span class="springgreen">`;
+		if (slave.inflation === 3) {
+			r += `<strong>8 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.inflation === 2) {
+			r += `<strong>4 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.inflation === 1) {
+			r += `<strong>2 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.bellyFluid > 0) {
+			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
+		}
+		r += `</span>`;
+	}
+	
+	function long_drugs(slave) {
+		if ((slave.drugs !== "no drugs") && (slave.drugs !== "none")) {
+			r += `<span class="tan">On ${slave.drugs}.</span> `;
+		}
+		r += `<span class="lightgreen">`;
+		if (slave.curatives === 2) {
+			r += `On curatives.`;
+		} else if (slave.curatives === 1) {
+			r += `On preventatives.`;
+		}
+		r += `</span> `;
+		r += `<span class="lightblue">`;
+		if (slave.aphrodisiacs > 0) {
+			r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
+		} else if (slave.aphrodisiacs === -1) {
+			r += `On anaphrodisiacs.`;
+		}
+		r += `</span> `;
+		if (slave.addict !== 0) {
+			r += `<span class="cyan">Addict.</span>`;
+		}
+		r += `<span class="lightsalmon">`;
+		if (slave.hormones > 1) {
+			r += `Heavy female hormones.`;
+		} else if (slave.hormones > 0) {
+			r += `Female hormones.`;
+		} else if (slave.hormones < -1) {
+			r += `Heavy male hormones.`;
+		} else if (slave.hormones < 0) {
+			r += `Male hormones.`;
+		}
+		r += `</span> `;
+		r += `<span class="mediumseagreen">`;
+		if ((slave.bellyImplant > -1)) {
+			r += `Belly Implant.`;
+		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
+			r += `Barren.`;
+		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Not ovulating yet.`;
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Menopausal.`;
+		} else if (slave.pregWeek < 0) {
+			r += `Postpartum.`;
+		} else if (slave.preg === -1) {
+			r += `On contraceptives.`;
+		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Fertile.`;
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
+			r += `May be pregnant.`;
+		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
+			r += `Permanently pregnant.`;
+		} else if (slave.pregKnown === 1) {
+			if (slave.pregType < 2 || slave.broodmother > 0) {
+				r += `${slave.pregWeek} weeks pregnant.`;
+			} else {
+				r += `${slave.pregWeek} weeks pregnant with`;
+				if (slave.pregType >= 40) {
+					r += `a tremendous brood of offspring.`;
+				} else if (slave.pregType >= 20) {
+					r += `a brood of offspring.`;
+				} else if (slave.pregType >= 10) {
+					r += `slave.pregType babies.`;
+				} else if (slave.pregType === 9) {
+					r += `nonuplets.`;
+				} else if (slave.pregType === 8) {
+					r += `octuplets.`;
+				} else if (slave.pregType === 7) {
+					r += `septuplets.`;
+				} else if (slave.pregType === 6) {
+					r += `sextuplets.`;
+				} else if (slave.pregType === 5) {
+					r += `quintuplets.`;
+				} else if (slave.pregType === 4) {
+					r += `quadruplets.`;
+				} else if (slave.pregType === 3) {
+					r += `triplets.`;
+				} else {
+					r += `twins.`;
+				}
+			}
+		}
+		r += `</span> `;
+		if (slave.induce === 1) {
+			r += `<span class="orange">Showing signs of early labor.</span>`;
+		}
+		if (slave.pubertyXY === 0 && slave.balls > 0) {
+			r += `Has not had first ejaculation.`;
+		}
+		if (slave.balls > 0 && slave.vasectomy === 1) {
+			r += `Vasectomy.`;
+		}
+		r += `<span class="springgreen">`;
+		if (slave.inflation === 3) {
+			r += `Filled with 8 liters of ${slave.inflationType}.`;
+		} else if (slave.inflation === 2) {
+			r += `Filled with 4 liters of ${slave.inflationType}.`;
+		} else if (slave.inflation === 1) {
+			r += `Filled with 2 liters of ${slave.inflationType}.`;
+		} else if (slave.bellyFluid > 0) {
+			r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
+		}
+		r += `</span> `;
+	}
+	
+	function long_race(slave) {
+		switch (slave.race) {
+			case "white":
+				r += `Caucasian.`;
+				break;
+			case "asian":
+				r += `Asian.`;
+				break;
+			case "indo-aryan":
+				r += `Indo-aryan.`;
+				break;
+			case "latina":
+				r += `Latina.`;
+				break;
+			case "middle eastern":
+				r += `Middle Eastern.`;
+				break;
+			case "black":
+				r += `Black.`;
+				break;
+			case "pacific islander":
+				r += `Pacific Islander.`;
+				break;
+			case "malay":
+				r += `Malay.`;
+				break;
+			case "amerindian":
+				r += `Amerindian.`;
+				break;
+			case "semitic":
+				r += `Semitic.`;
+				break;
+			case "southern european":
+				r += `Southern European.`;
+				break;
+			case "mixed race":
+				r += `Mixed race.`;
+				break;
+			default:
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function short_race(slave) {
+		switch (slave.race) {
+			case "white":
+				r += `C`;
+				break;
+			case "asian":
+				r += `A`;
+				break;
+			case "indo-aryan":
+				r += `I`;
+				break;
+			case "latina":
+				r += `L`;
+				break;
+			case "middle eastern":
+				r += `ME`;
+				break;
+			case "black":
+				r += `B`;
+				break;
+			case "pacific islander":
+				r += `PI`;
+				break;
+			case "malay":
+				r += `M`;
+				break;
+			case "amerindian":
+				r += `AI`;
+				break;
+			case "semitic":
+				r += `S`;
+				break;
+			case "southern european":
+				r += `SE`;
+				break;
+			case "mixed race":
+				r += `MR`;
+				break;
+			default:
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
+				break;
+		}
+	}
+	
+	function short_nationality(slave) {
+		r += `<span class="tan">`;
+		switch (slave.nationality) {
+			case "Afghan":
+				r += `Afg`;
+				break;
+			case "Albanian":
+				r += `Alb`;
+				break;
+			case "Algerian":
+				r += `Alg`;
+				break;
+			case "American":
+				r += `USA`;
+				break;
+			case "Andorran":
+				r += `And`;
+				break;
+			case "Angolan":
+				r += `Ang`;
+				break;
+			case "Antiguan":
+				r += `AB`;
+				break;
+			case "Argentinian":
+				r += `Arg`;
+				break;
+			case "Armenian":
+				r += `Arm`;
+				break;
+			case "Aruban":
+				r += `Aru`;
+				break;
+			case "Australian":
+				r += `Aus`;
+				break;
+			case "Austrian":
+				r += `Aut`;
+				break;
+			case "Azerbaijani":
+				r += `Aze`;
+				break;
+			case "Bahamian":
+				r += `Bah`;
+				break;
+			case "Bahraini":
+				r += `Bah`;
+				break;
+			case "Bangladeshi":
+				r += `Bgd`;
+				break;
+			case "Barbadian":
+				r += `Bar`;
+				break;
+			case "Belarusian":
+				r += `Ber`;
+				break;
+			case "Belgian":
+				r += `Bel`;
+				break;
+			case "Belizean":
+				r += `Blz`;
+				break;
+			case "Beninese":
+				r += `Ben`;
+				break;
+			case "Bermudian":
+				r += `Bmd`;
+				break;
+			case "Bhutanese":
+				r += `Bhu`;
+				break;
+			case "Bissau-Guinean":
+				r += `GB`;
+				break;
+			case "Bolivian":
+				r += `Bol`;
+				break;
+			case "Bosnian":
+				r += `Bos`;
+				break;
+			case "Brazilian":
+				r += `Bra`;
+				break;
+			case "British":
+				r += `UK`;
+				break;
+			case "Bruneian":
+				r += `Bru`;
+				break;
+			case "Bulgarian":
+				r += `Bul`;
+				break;
+			case "Burkinabé":
+				r += `BF`;
+				break;
+			case "Burmese":
+				r += `Bur`;
+				break;
+			case "Burundian":
+				r += `Bnd`;
+				break;
+			case "Cambodian":
+				r += `Kam`;
+				break;
+			case "Cameroonian":
+				r += `Cam`;
+				break;
+			case "Canadian":
+				r += `Can`;
+				break;
+			case "Cape Verdean":
+				r += `CV`;
+				break;
+			case "Catalan":
+				r += `Cat`;
+				break;
+			case "Central African":
+				r += `CAR`;
+				break;
+			case "Chadian":
+				r += `Cha`;
+				break;
+			case "Chilean":
+				r += `Chl`;
+				break;
+			case "Chinese":
+				r += `Chi`;
+				break;
+			case "Colombian":
+				r += `Col`;
+				break;
+			case "Comorian":
+				r += `Com`;
+				break;
+			case "Congolese":
+				r += `RC`;
+				break;
+			case "a Cook Islander":
+				r += `CI`;
+				break;
+			case "Costa Rican":
+				r += `CR`;
+				break;
+			case "Croatian":
+				r += `Cro`;
+				break;
+			case "Cuban":
+				r += `Cub`;
+				break;
+			case "Cypriot":
+				r += `Cyp`;
+				break;
+			case "Czech":
+				r += `Cze`;
+				break;
+			case "Danish":
+				r += `Den`;
+				break;
+			case "Djiboutian":
+				r += `Dji`;
+				break;
+			case "Dominican":
+				r += `DR`;
+				break;
+			case "Dominiquais":
+				r += `Dom`;
+				break;
+			case "Dutch":
+				r += `Nld`;
+				break;
+			case "East Timorese":
+				r += `ET`;
+				break;
+			case "Ecuadorian":
+				r += `Ecu`;
+				break;
+			case "Egyptian":
+				r += `Egy`;
+				break;
+			case "Emirati":
+				r += `UAE`;
+				break;
+			case "Equatoguinean":
+				r += `EG`;
+				break;
+			case "Eritrean":
+				r += `Eri`;
+				break;
+			case "Estonian":
+				r += `Est`;
+				break;
+			case "Ethiopian":
+				r += `Eth`;
+				break;
+			case "Fijian":
+				r += `Fij`;
+				break;
+			case "Filipina":
+				r += `Phl`;
+				break;
+			case "Finnish":
+				r += `Fin`;
+				break;
+			case "French":
+				r += `Fra`;
+				break;
+			case "French Guianan":
+				r += `FG`;
+				break;
+			case "French Polynesian":
+				r += `FP`;
+				break;
+			case "Gabonese":
+				r += `Gab`;
+				break;
+			case "Gambian":
+				r += `Gam`;
+				break;
+			case "Georgian":
+				r += `Geo`;
+				break;
+			case "German":
+				r += `Ger`;
+				break;
+			case "Ghanan":
+				r += `Gha`;
+				break;
+			case "Greek":
+				r += `Gre`;
+				break;
+			case "Greenlandic":
+				r += `Grn`;
+				break;
+			case "Grenadian":
+				r += `Gda`;
+				break;
+			case "Guamanian":
+				r += `Gua`;
+				break;
+			case "Guatemalan":
+				r += `Gtm`;
+				break;
+			case "Guinean":
+				r += `Gui`;
+				break;
+			case "Guyanese":
+				r += `Guy`;
+				break;
+			case "Haitian":
+				r += `Hai`;
+				break;
+			case "Honduran":
+				r += `Hon`;
+				break;
+			case "Hungarian":
+				r += `Hun`;
+				break;
+			case "I-Kiribati":
+				r += `Kir`;
+				break;
+			case "Icelandic":
+				r += `Ice`;
+				break;
+			case "Indian":
+				r += `Ind`;
+				break;
+			case "Indonesian":
+				r += `Idn`;
+				break;
+			case "Iranian":
+				r += `Irn`;
+				break;
+			case "Iraqi":
+				r += `Irq`;
+				break;
+			case "Irish":
+				r += `Irl`;
+				break;
+			case "Israeli":
+				r += `Isr`;
+				break;
+			case "Italian":
+				r += `Ita`;
+				break;
+			case "Ivorian":
+				r += `IC`;
+				break;
+			case "Jamaican":
+				r += `Jam`;
+				break;
+			case "Japanese":
+				r += `Jpn`;
+				break;
+			case "Jordanian":
+				r += `Jor`;
+				break;
+			case "Kazakh":
+				r += `Kaz`;
+				break;
+			case "Kenyan":
+				r += `Ken`;
+				break;
+			case "Kittitian":
+				r += `SKN`;
+				break;
+			case "Korean":
+				r += `Kor`;
+				break;
+			case "Kosovan":
+				r += `Kos`;
+				break;
+			case "Kurdish":
+				r += `Kur`;
+				break;
+			case "Kuwaiti":
+				r += `Kuw`;
+				break;
+			case "Kyrgyz":
+				r += `Kyr`;
+				break;
+			case "Laotian":
+				r += `Lao`;
+				break;
+			case "Latvian":
+				r += `Lat`;
+				break;
+			case "Lebanese":
+				r += `Lbn`;
+				break;
+			case "Liberian":
+				r += `Lib`;
+				break;
+			case "Libyan":
+				r += `Lby`;
+				break;
+			case "a Liechtensteiner":
+				r += `Lie`;
+				break;
+			case "Lithuanian":
+				r += `Lit`;
+				break;
+			case "Luxembourgian":
+				r += `Lux`;
+				break;
+			case "Macedonian":
+				r += `Mac`;
+				break;
+			case "Malagasy":
+				r += `Mad`;
+				break;
+			case "Malawian":
+				r += `Mwi`;
+				break;
+			case "Malaysian":
+				r += `Mys`;
+				break;
+			case "Maldivian":
+				r += `Mdv`;
+				break;
+			case "Malian":
+				r += `Mal`;
+				break;
+			case "Maltese":
+				r += `Mlt`;
+				break;
+			case "Marshallese":
+				r += `MI`;
+				break;
+			case "Mauritanian":
+				r += `Mta`;
+				break;
+			case "Mauritian":
+				r += `Mts`;
+				break;
+			case "Mexican":
+				r += `Mex`;
+				break;
+			case "Micronesian":
+				r += `FSM`;
+				break;
+			case "Moldovan":
+				r += `Mol`;
+				break;
+			case "Monégasque":
+				r += `Mnc`;
+				break;
+			case "Mongolian":
+				r += `Mon`;
+				break;
+			case "Montenegrin":
+				r += `Mng`;
+				break;
+			case "Moroccan":
+				r += `Mor`;
+				break;
+			case "Mosotho":
+				r += `Les`;
+				break;
+			case "Motswana":
+				r += `Bot`;
+				break;
+			case "Mozambican":
+				r += `Moz`;
+				break;
+			case "Namibian":
+				r += `Nam`;
+				break;
+			case "Nauruan":
+				r += `Nau`;
+				break;
+			case "Nepalese":
+				r += `Npl`;
+				break;
+			case "New Caledonian":
+				r += `NC`;
+				break;
+			case "a New Zealander":
+				r += `NZ`;
+				break;
+			case "Ni-Vanuatu":
+				r += `Van`;
+				break;
+			case "Nicaraguan":
+				r += `Nic`;
+				break;
+			case "Nigerian":
+				r += `Nga`;
+				break;
+			case "Nigerien":
+				r += `Ngr`;
+				break;
+			case "Niuean":
+				r += `Niu`;
+				break;
+			case "Norwegian":
+				r += `Nor`;
+				break;
+			case "Omani":
+				r += `Omn`;
+				break;
+			case "Pakistani":
+				r += `Pak`;
+				break;
+			case "Palauan":
+				r += `Plu`;
+				break;
+			case "Palestinian":
+				r += `Pal`;
+				break;
+			case "Panamanian":
+				r += `Pan`;
+				break;
+			case "Papua New Guinean":
+				r += `PNG`;
+				break;
+			case "Paraguayan":
+				r += `Par`;
+				break;
+			case "Peruvian":
+				r += `Per`;
+				break;
+			case "Polish":
+				r += `Pol`;
+				break;
+			case "Portuguese":
+				r += `Por`;
+				break;
+			case "Puerto Rican":
+				r += `PR`;
+				break;
+			case "Qatari":
+				r += `Qat`;
+				break;
+			case "Romanian":
+				r += `Rom`;
+				break;
+			case "Russian":
+				r += `Rus`;
+				break;
+			case "Rwandan":
+				r += `Rwa`;
+				break;
+			case "Sahrawi":
+				r += `Sah`;
+				break;
+			case "Saint Lucian":
+				r += `SL`;
+				break;
+			case "Salvadoran":
+				r += `ES`;
+				break;
+			case "Sammarinese":
+				r += `SM`;
+				break;
+			case "Samoan":
+				r += `Sam`;
+				break;
+			case "São Toméan":
+				r += `STP`;
+				break;
+			case "Saudi":
+				r += `Sau`;
+				break;
+			case "Scottish":
+				r += `Sco`;
+				break;
+			case "Senegalese":
+				r += `Sen`;
+				break;
+			case "Serbian":
+				r += `Srb`;
+				break;
+			case "Seychellois":
+				r += `Sey`;
+				break;
+			case "Sierra Leonean":
+				r += `Sie`;
+				break;
+			case "Singaporean":
+				r += `Sng`;
+				break;
+			case "Slovak":
+				r += `Svk`;
+				break;
+			case "Slovene":
+				r += `Svn`;
+				break;
+			case "a Solomon Islander":
+				r += `SI`;
+				break;
+			case "Somali":
+				r += `Som`;
+				break;
+			case "South African":
+				r += `RSA`;
+				break;
+			case "South Sudanese":
+				r += `SS`;
+				break;
+			case "Spanish":
+				r += `Spa`;
+				break;
+			case "Sri Lankan":
+				r += `Sri`;
+				break;
+			case "Sudanese":
+				r += `Sud`;
+				break;
+			case "Surinamese":
+				r += `Sur`;
+				break;
+			case "Swazi":
+				r += `Swa`;
+				break;
+			case "Swedish":
+				r += `Swe`;
+				break;
+			case "Swiss":
+				r += `Swi`;
+				break;
+			case "Syrian":
+				r += `Syr`;
+				break;
+			case "Taiwanese":
+				r += `Tai`;
+				break;
+			case "Tajik":
+				r += `Taj`;
+				break;
+			case "Tanzanian":
+				r += `Tza`;
+				break;
+			case "Thai":
+				r += `Tha`;
+				break;
+			case "Tibetan":
+				r += `Tib`;
+				break;
+			case "Togolese":
+				r += `Tog`;
+				break;
+			case "Tongan":
+				r += `Ton`;
+				break;
+			case "Trinidadian":
+				r += `TT`;
+				break;
+			case "Tunisian":
+				r += `Tun`;
+				break;
+			case "Turkish":
+				r += `Tur`;
+				break;
+			case "Turkmen":
+				r += `Tkm`;
+				break;
+			case "Tuvaluan":
+				r += `Tuv`;
+				break;
+			case "Ugandan":
+				r += `Uga`;
+				break;
+			case "Ukrainian":
+				r += `Ukr`;
+				break;
+			case "Uruguayan":
+				r += `Uru`;
+				break;
+			case "Uzbek":
+				r += `Uzb`;
+				break;
+			case "Vatican":
+				r += `VC`;
+				break;
+			case "Venezuelan":
+				r += `Ven`;
+				break;
+			case "Vietnamese":
+				r += `Vnm`;
+				break;
+			case "Vincentian":
+				r += `SVG`;
+				break;
+			case "Yemeni":
+				r += `Yem`;
+				break;
+			case "Zairian":
+				r += `DRC`;
+				break;
+			case "Zambian":
+				r += `Zam`;
+				break;
+			case "Zimbabwean":
+				if (slave.race === "white") {
+					r += `Rho`;
+				} else {
+					r += `Zwe`;
+				}
+				break;
+			case "Ancient Chinese Revivalist":
+				r += `Chi Rev`;
+				break;
+			case "Ancient Egyptian Revivalist":
+				r += `Egy Rev`;
+				break;
+			case "Arabian Revivalist":
+				r += `Ara Rev`;
+				break;
+			case "Aztec Revivalist":
+				r += `Azt Rev`;
+				break;
+			case "Edo Revivalist":
+				r += `Edo Rev`;
+				break;
+			case "Roman Revivalist":
+				r += `Rom Rev`;
+				break;
+			case "":
+			case "none":
+			case "slave":
+			case "Stateless":
+				r += `None`;
+				break;
+			default:
+				r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
+				break;
+		}
+		r += `</span>`;
+	}
+	
+	function long_nationality(slave) {
+		r += `<span class="tan">`;
+		switch (slave.nationality) {
+			case "Zimbabwean":
+				if (slave.race === "white") {
+					r += `Rhodesian.`;
+				} else {
+					r += `${slave.nationality}.`;
+				}
+				break;
+			case "slave":
+			case "none":
+			case "":
+			case "Stateless":
+				r += `Stateless.`;
+				break;
+			default:
+				r += `${slave.nationality}.`;
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function short_skin(slave) {
+		r += `<span class="pink">`;
+		switch (slave.skin) {
+			case "light brown":
+				r += `L. Br`;
+				break;
+			case "dark brown":
+				r += `D. Br`;
+				break;
+			case "light olive":
+				r += `L. Oli`;
+				break;
+			case "dark olive":
+				r += `D. Oli`;
+				break;
+			case "extremely pale":
+				r += `Ex. Pa`;
+				break;
+			case "pure white":
+				r += `P. Whi`;
+				break;
+			case "tanned":
+				r += `Tan`;
+				break;
+			case "dark":
+			case "fair":
+			case "pale":
+				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
+				break;
+			default:
+				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
+				break;
+		}
+		r += `</span>`;
+	}
+	
+	function short_genitals(slave) {
+		if (slave.dick > 0) {
+			r += `<span class="pink">`;
+			if (slave.balls === 0) {
+				r += `Geld`;
+			}
+			if ((slave.dick > 8) && (slave.balls > 8)) {
+				r += `Junk+++`;
+			} else if ((slave.dick > 5) && (slave.balls > 5)) {
+				r += `Junk++`;
+			} else if ((slave.dick > 4) && (slave.balls > 4)) {
+				r += `Junk+`;
+			} else if ((slave.dick > 3) && (slave.balls > 3)) {
+				r += `Junk`;
+			} else if (slave.dick > 8) {
+				r += `Dick+++`;
+			} else if (slave.dick > 5) {
+				r += `Dick++`;
+			} else if (slave.dick > 4) {
+				r += `Dick+`;
+			} else if (slave.dick > 3) {
+				r += `Dick`;
+			} else if (slave.balls > 10) {
+				r += `Balls+++`;
+			} else if (slave.balls > 5) {
+				r += `Balls++`;
+			} else if (slave.balls > 4) {
+				r += `Balls+`;
+			} else if (slave.balls > 3) {
+				r += `Balls`;
+			}
+			r += `</span>`;
+		}
+		if (slave.vagina === 0) {
+			r += `<span class="lime">VV</span>`;
+		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
+			r += `<span class="pink">NBP</span>`;
+		}
+		if (slave.anus === 0) {
+			r += `	<span class="lime">AV</span>`;
+		}
+		r += `<span class="pink">`;
+		if ((slave.vagina > 3) && (slave.anus > 3)) {
+			r += `V++A++`;
+		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
+			r += `V+A+`;
+		} else if (slave.vagina > 3) {
+			r += `V++`;
+		} else if (slave.vagina > 2) {
+			r += `V+`;
+		} else if (slave.anus > 3) {
+			r += `A++`;
+		} else if (slave.anus > 2) {
+			r += `A+`;
+		}
+		r += `</span>`;
+	}
+	
+	function long_genitals(slave) {
+		if (slave.dick > 0) {
+			r += `<span class="pink">`;
+			if (slave.balls === 0) {
+				r += `Gelded.`;
+			}
+			if ((slave.dick > 8) && (slave.balls > 8)) {
+				r += `Hyper dick & balls.`;
+			} else if ((slave.dick > 5) && (slave.balls > 5)) {
+				r += `Monster dick & balls.`;
+			} else if ((slave.dick > 4) && (slave.balls > 4)) {
+				r += `Huge dick & balls.`;
+			} else if ((slave.dick > 3) && (slave.balls > 3)) {
+				r += `Big dick & balls.`;
+			} else if (slave.dick > 8) {
+				r += `Hyper dong.`;
+			} else if (slave.dick > 5) {
+				r += `Monster dong.`;
+			} else if (slave.dick > 4) {
+				r += `Huge dick.`;
+			} else if (slave.dick > 3) {
+				r += `Big dick.`;
+			} else if (slave.balls > 8) {
+				r += `Hyper balls.`;
+			} else if (slave.balls > 5) {
+				r += `Monstrous balls.`;
+			} else if (slave.balls > 4) {
+				r += `Huge balls.`;
+			} else if (slave.balls > 3) {
+				r += `Big balls.`;
+			}
+			r += `</span> `;
+		}
+		if (slave.vagina === 0) {
+			r += `<span class="lime">Virgin.</span> `;
+		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
+			r += `<span class="pink">Naked, barefoot, and pregnant.</span> `;
+		}
+		if (slave.anus === 0) {
+			r += `<span class="lime">Anal virgin.</span> `;
+		}
+		r += `<span class="pink">`;
+		if ((slave.vagina > 3) && (slave.anus > 3)) {
+			r += `Blown out holes.`;
+		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
+			r += `High mileage.`;
+		} else if (slave.vagina > 3) {
+			r += `Cavernous pussy.`;
+		} else if (slave.vagina > 2) {
+			r += `Loose pussy.`;
+		} else if (slave.anus > 3) {
+			r += `Permagaped anus.`;
+		} else if (slave.anus > 2) {
+			r += `Gaping anus.`;
+		}
+		r += `</span> `;
+	}
+	
+	function short_age(slave) {
+		r += `<span class="pink">`;
+		if (V.showAgeDetail === 1) {
+			r += slave.actualAge;
+		} else if (slave.actualAge >= 40) {
+			r += `40s`;
+		} else if (slave.actualAge >= 35) {
+			r += `Lt30s`;
+		} else if (slave.actualAge >= 30) {
+			r += `Ea30s`;
+		} else if (slave.actualAge >= 25) {
+			r += `Lt20s`;
+		} else if (slave.actualAge >= 20) {
+			r += `Ea20s`;
+		} else if (slave.actualAge >= 18) {
+			r += slave.actualAge;
+		}
+		if (slave.actualAge !== slave.physicalAge) {
+			r += `${slave.physicalAge}y-bdy`;
+		}
+		if (slave.visualAge !== slave.physicalAge) {
+			r += `Lks${slave.visualAge}`;
+		}
+	}
+	
+	function short_face(slave) {
+		if (slave.face < -95) {
+			r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face < -40) {
+			r += `<span class="red">Face--${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face < -10) {
+			r += `<span class="red">Face-${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face <= 10) {
+			r += `Face${V.summaryStats? `[${slave.face}]` : ''}`;
+		} else if (slave.face <= 40) {
+			r += `<span class="pink">Face+${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face <= 95) {
+			r += `<span class="pink">Face++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else {
+			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		}
+	}
+	
+	function short_eyes(slave) {
+		if (slave.eyes === -2) {
+			r += `<span class="red">Blind</span>`;
+		} else if (((slave.eyes === -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
+			r += `<span class="yellow">Sight-</span>`;
+		}
+	}
+	
+	function short_lips(slave) {
+		if (slave.lips > 95) {
+			r += `Facepussy`;
+		} else if (slave.lips > 70) {
+			r += `Lips+++${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 40) {
+			r += `Lips++${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 20) {
+			r += `Lips+${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 10) {
+			r += `Lips${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else {
+			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
+		}
+	}
+	
+	function short_teeth(slave) {
+		if (slave.teeth === "crooked") {
+			r += `<span class="yellow">Cr Teeth</span>`;
+		} else if (slave.teeth === "cosmetic braces") {
+			r += `Cos Braces`;
+		} else if (slave.teeth === "straightening braces") {
+			r += `Braces`;
+		} else if (slave.teeth === "removable") {
+			r += `Rem Teeth`;
+		} else if (slave.teeth === "pointy") {
+			r += `Fangs`;
+		}
+	}
+	
+	function short_muscles(slave) {
+		if (slave.muscles > 95) {
+			r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > 50) {
+			r += `Musc+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > 5) {
+			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > -6) {
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > -31) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			} else {
+				r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			}
+		} else if (slave.muscles > -96) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			} else {
+				r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			}
+		} else {
+			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		}
+	}
+	
+	function short_limbs(slave) {
+		if (slave.amp !== 0) {
+			if (slave.amp === -1) {
+				r += `P-Limbs`;
+			} else if (slave.amp === -2) {
+				r += `Sex P-Limbs`;
+			} else if (slave.amp === -3) {
+				r += `Beauty P-Limbs`;
+			} else if (slave.amp === -4) {
+				r += `Combat P-Limbs`;
+			} else if (slave.amp === -5) {
+				r += `Cyber P-Limbs`;
+			} else {
+				r += `Amp`;
+			}
+		}
+		if (!canWalk(slave)) {
+			r += `Immob`;
+		}
+		if (slave.heels === 1) {
+			r += `Heel`;
+		}
+		r += `</span>`;
+	}
+	
+	function short_voice(slave) {
+		if (slave.voice === 0) {
+			r += `<span class="pink">Mute</span>`;
+		} else {
+			if (slave.accent === 3) {
+				r += `<span class="red">Acc--</span>`;
+			} else if (slave.accent === 2) {
+				r += `Acc-`;
+			} else if (slave.accent === 4) {
+				r += `Acc--`;
+			} else if (slave.accent === 1) {
+				r += `<span class="pink">Acc</span>`;
+			}
+		}
+	}
+	
+	function short_tits_ass(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
+			r += `T&A+++`;
+		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
+			r += `T&A++`;
+		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
+			r += `T&A+`;
+		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
+			r += `T&A`;
+		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
+			r += `Girlish`;
+		} else if (slave.boobs >= 12000) {
+			r += `Boobs+++`;
+		} else if (slave.boobs > 4000) {
+			r += `Boobs++`;
+		} else if (slave.boobs > 2000) {
+			r += `Boobs+`;
+		} else if (slave.boobs > 800) {
+			r += `Boobs`;
+		} else if (slave.butt > 9) {
+			r += `Ass+++`;
+		} else if (slave.butt > 8) {
+			r += `Ass++`;
+		} else if (slave.butt > 6) {
+			r += `Ass+`;
+		} else if (slave.butt > 4) {
+			r += `Ass`;
+		}
+		r += `</span>`;
+	}
+	
+	function short_hips(slave) {
+		r += `<span class="red">`;
+		if (slave.hips < -1) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disp+`;
+			}
+		} else if (slave.hips < 0) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disp+`;
+			}
+		} else if (slave.hips > 2) {
+			if (slave.butt <= 8) {
+				r += `Disp-`;
+			}
+		} else if (slave.hips > 1) {
+			if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		} else if (slave.hips > 0) {
+			if (slave.butt > 8) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disp+`;
+				}
+			} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		} else {
+			if (slave.butt > 6) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disp+`;
+				}
+			} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		}
+		r += `</span>`;
+	}
+	
+	function short_waist(slave) {
+		if (slave.waist > 95) {
+			r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist > 40) {
+			r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
+		} else if (slave.waist > 10) {
+			r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist >= -10) {
+			r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
+		} else if (slave.waist >= -40) {
+			r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist >= -95) {
+			r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else {
+			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
+		}
+	}
+	
+	function short_implants(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant <= 5) && (slave.bellyImplant === -1)) {
+			r += `Natr`;
+		} else {
+			r += `Impl`;
+		}
+	}
+	
+	function short_lactation(slave) {
+		if (slave.lactation === 1) {
+			r += `Lact`;
+		} else if (slave.lactation === 2) {
+			r += `Lact++`;
+		}
+	}
+	
+	function short_mods(slave) {
+		modScore(slave);
+		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
+			return;
+		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
+			r += `Mods++`;
+		} else if (V.modScore > 7) {
+			r += `Mods+`;
+		} else {
+			r += `Mods`;
+		}
+		if (slave.brand !== 0) {
+			r += `Br`;
+		}
+		r += `</span>`;
+	}
+	
+	function long_age(slave) {
+		r += `<span class="pink">`;
+		if (V.showAgeDetail === 1) {
+			r += `Age ${slave.actualAge}.`;
+		} else if (slave.actualAge >= 40) {
+			r += `Forties.`;
+		} else if (slave.actualAge >= 35) {
+			r += `Late thirties.`;
+		} else if (slave.actualAge >= 30) {
+			r += `Early thirties.`;
+		} else if (slave.actualAge >= 25) {
+			r += `Late twenties.`;
+		} else if (slave.actualAge >= 20) {
+			r += `Early twenties.`;
+		} else if (slave.actualAge >= 19) {
+			r += `Nineteen.`;
+		} else if (slave.actualAge >= 18) {
+			r += `Eighteen.`;
+		} else {
+			r += `Underage.`;
+		}
+		r += " ";
+		/*
+		 **  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
+		 **  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
+		 */
+		if (((slave.inducedNCS === 0) || (slave.visualAge >= slave.physicalAge))) {
+			if (slave.actualAge !== slave.physicalAge) {
+				r += `${slave.physicalAge} year old body. `;
+			}
+			if (slave.visualAge !== slave.physicalAge) {
+				r += `Looks ${slave.visualAge}. `;
+			}
+		} else {
+			/*
+			 **  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
+			 **  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
+			 **  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
+			 **  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
+			 **  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
+			 **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
+			 **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
+			 */
+			r += `Appears to have a ${slave.visualAge} year old body. `;
+		}
+		if (slave.inducedNCS === 1) {
+			r += `(<span class="orange">NCS</span>) `;
+		}
+	}
+	
+	function long_face(slave) {
+		if (slave.face < -95) {
+			r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face < -40) {
+			r += `<span class="red">Ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face < -10) {
+			r += `<span class="red">Unattractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face <= 10) {
+			r += `Average${V.summaryStats? `[${slave.face}]`: ''}`;
+		} else if (slave.face <= 40) {
+			r += `<span class="pink">Attractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face <= 95) {
+			r += `<span class="pink">Beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else {
+			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		}
+		r += ` ${slave.faceShape} face.`;
+	}
+	
+	function long_eyes(slave) {
+		if (slave.eyes <= -2) {
+			r += `<span class="red">Blind.</span>`;
+		} else if (((slave.eyes <= -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
+			r += `<span class="yellow">Nearsighted.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_lips(slave) {
+		if (slave.lips > 95) {
+			r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 70) {
+			r += `Huge lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 40) {
+			r += `Big lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 20) {
+			r += `Pretty lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 10) {
+			r += `Normal lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else {
+			r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_teeth(slave) {
+		if (slave.teeth === "crooked") {
+			r += `<span class="yellow">Crooked teeth.</span>`;
+		} else if (slave.teeth === "cosmetic braces") {
+			r += `Cosmetic braces.`;
+		} else if (slave.teeth === "straightening braces") {
+			r += `Braces.`;
+		} else if (slave.teeth === "removable") {
+			r += `Removable teeth.`;
+		} else if (slave.teeth === "pointy") {
+			r += `Sharp fangs.`;
+		}
+		r += " ";
+	}
+	
+	function long_muscles(slave) {
+		if (slave.muscles > 95) {
+			r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
+		} else if (slave.muscles > 50) {
+			r += `Muscular${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > 5) {
+			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > -6) {
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > -31) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+			} else {
+				r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			}
+		} else if (slave.muscles > -96) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+			} else {
+				r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			}
+		} else {
+			r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_limbs(slave) {
+		if (slave.amp !== 0) {
+			if (slave.amp === -1) {
+				r += `Prosthetic limbs.`;
+			} else if (slave.amp === -2) {
+				r += `Sexy prosthetic limbs.`;
+			} else if (slave.amp === -3) {
+				r += `Beautiful prosthetic limbs.`;
+			} else if (slave.amp === -4) {
+				r += `Deadly prosthetic limbs.`;
+			} else if (slave.amp === -5) {
+				r += `Cyber prosthetic limbs.`;
+			} else {
+				r += `Amputee.`;
+			}
+		}
+		r += " ";
+		if (!canWalk(slave)) {
+			r += `Immobile. `;
+		}
+		if (slave.heels === 1) {
+			r += `Heeled. `;
+		}
+		r += `</span> `;
+	}
+	
+	function long_voice(slave) {
+		if (slave.voice === 0) {
+			r += `<span class="pink">Mute.</span>`;
+		} else {
+			if (slave.accent === 3) {
+				r += `<span class="red">Bad accent.</span>`;
+			} else if (slave.accent === 4) {
+				r += `<span class="red">No language skills.</span>`;
+			} else if (slave.accent === 2) {
+				r += `Accent.`;
+			} else if (slave.accent === 1) {
+				r += `<span class="pink">Cute accent.</span>`;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_tits_ass(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
+			r += `Hyper T&A.`;
+		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
+			r += `Enormous T&A.`;
+		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
+			r += `Huge T&A.`;
+		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
+			r += `Big T&A.`;
+		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
+			r += `Girlish figure.`;
+		} else if (slave.boobs >= 12000) {
+			r += `Immobilizing tits.`;
+		} else if (slave.boobs > 4000) {
+			r += `Monstrous tits.`;
+		} else if (slave.boobs > 2000) {
+			r += `Huge tits.`;
+		} else if (slave.boobs > 800) {
+			r += `Big tits.`;
+		} else if (slave.butt > 9) {
+			r += `Hyper ass.`;
+		} else if (slave.butt > 8) {
+			r += `Titanic ass.`;
+		} else if (slave.butt > 6) {
+			r += `Huge ass.`;
+		} else if (slave.butt > 4) {
+			r += `Big ass.`;
+		}
+		r += `</span> `;
+	}
+	
+	function long_hips(slave) {
+		r += `<span class="red">`;
+		if (slave.hips < -1) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disproportionately big butt.`;
+			}
+		} else if (slave.hips < 0) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disproportionately big butt.`;
+			}
+		} else if (slave.hips > 2) {
+			if (slave.butt <= 8) {
+				r += `Disproportionately small butt.`;
+			}
+		} else if (slave.hips > 1) {
+			if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		} else if (slave.hips > 0) {
+			if (slave.butt > 8) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disproportionately big butt.`;
+				}
+			} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		} else {
+			if (slave.butt > 6) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disproportionately big butt.`;
+				}
+			} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		}
+		r += `</span> `;
+	}
+	
+	function long_waist(slave) {
+		if (slave.waist > 95) {
+			r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist > 40) {
+			r += `<span class="red">Ugly waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist > 10) {
+			r += `<span class="red">Unattractive waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist >= -10) {
+			r += `Average waist${V.summaryStats? `[${slave.waist}]`: ''}.`;
+		} else if (slave.waist >= -40) {
+			r += `<span class="pink">Feminine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist >= -95) {
+			r += `<span class="pink">Hourglass waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else {
+			r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_implants(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobsImplant !== 0) || (slave.buttImplant !== 0) || (slave.lipsImplant !== 0) || (slave.bellyImplant !== -1)) {
+			r += `Implants.`;
+		} else if ((slave.faceImplant >= 30) || (slave.waist < -95)) {
+			r += `Surgery enhanced.`;
+		} else {
+			r += `All natural.`;
+		}
+		r += " ";
+	}
+	
+	function long_lactation(slave) {
+		if (slave.lactation === 1) {
+			r += `Lactating naturally.`;
+		} else if (slave.lactation === 2) {
+			r += `Heavy lactation.`;
+		}
+		r += " ";
+	}
+	
+	function long_mods(slave) {
+		modScore(slave);
+		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
+			return;
+		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
+			r += `Extensive body mods.`;
+		} else if (V.modScore > 7) {
+			r += `Noticeable body mods.`;
+		} else {
+			r += `Light body mods.`;
+		}
+		r += " ";
+	}
+	
+	function short_intelligence(slave) {
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.intelligenceImplant === 1) {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">I+++(e)</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">I++(e)</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">I+(e)</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">I-(e)</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">I--(e)</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">I---(e)</span>`;
+					break;
+				default:
+					r += `I(e)`;
+					break;
+			}
+		} else {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">I+++</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">I++</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">I+</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">I-</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">I--</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">I---</span>`;
+					break;
+				default:
+					r += `I`;
+					break;
+			}
+		}
+	} 
+	
+	function short_sex_skills(slave) {
+		let _SSkills = slave.analSkill + slave.oralSkill;
+		r += `<span class="aquamarine">`;
+		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
+			r += `MSS`;
+		} else {
+			_SSkills += slave.vaginalSkill;
+			_SSkills = Math.trunc(_SSkills);
+			if (_SSkills > 180) {
+				r += `S++`;
+			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
+				r += `Sh++`;
+			} else if (_SSkills > 90) {
+				r += `S+`;
+			} else if (_SSkills > 30) {
+				r += `S`;
+			} else {
+				r += `S-`;
+			}
+			if (V.summaryStats) {
+				r += `[${_SSkills}]`;
+			}
+			if (slave.whoreSkill >= 100) {
+				r += `W+++`;
+			} else if (slave.whoreSkill > 60) {
+				r += `W++`;
+			} else if (slave.whoreSkill > 30) {
+				r += `W+`;
+			} else if (slave.whoreSkill > 10) {
+				r += `W`;
+			}
+			if (slave.whoreSkill > 10) {
+				if (V.summaryStats) {
+					r += `[${slave.whoreSkill}]`;
+				}
+			}
+			if (slave.entertainSkill >= 100) {
+				r += `E+++`;
+			} else if (slave.entertainSkill > 60) {
+				r += `E++`;
+			} else if (slave.entertainSkill > 30) {
+				r += `E+`;
+			} else if (slave.entertainSkill > 10) {
+				r += `E`;
+			}
+			if (slave.entertainSkill > 10) {
+				if (V.summaryStats) {
+					r += `[${slave.entertainSkill}]`;
+				}
+			}
+		}
+	}
+	
+	function short_prestige(slave) {
+		if (slave.prestige > 0) {
+			r += `<span class="green">`;
+			if (slave.prestige > 2) {
+				r += `Prest++`;
+			} else if (slave.prestige === 2) {
+				r += `Prest+`;
+			} else if (slave.prestige === 1) {
+				r += `Prest`;
+			}
+			r += `</span>`;
+		}
+	}
+	
+	function long_intelligence(slave) {
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.intelligenceImplant === 1) {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">Brilliant, educated.</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">Very smart, educated.</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">Smart, educated.</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">Slow, educated.</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">Very slow, educated.</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">Moronic, educated.</span>`;
+					break;
+				default:
+					r += `Average intelligence, educated.`;
+					break;
+			}
+		} else {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">Brilliant.</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">Very smart.</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">Smart.</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">Slow.</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">Very slow.</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">Moronic.</span>`;
+					break;
+				default:
+					r += `Average intelligence.`;
+					break;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_sex_skills(slave) {
+		let _SSkills = (slave.analSkill + slave.oralSkill);
+		r += `<span class="aquamarine">`;
+		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
+			r += `Masterful Sex Slave.`;
+		} else {
+			_SSkills += slave.vaginalSkill;
+			if (_SSkills > 180) {
+				r += `Sex master${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
+				r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if (_SSkills > 90) {
+				r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if (_SSkills > 30) {
+				r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
+			} else {
+				r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
+			}
+			if (slave.whoreSkill >= 100) {
+				r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 60) {
+				r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 30) {
+				r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 10) {
+				r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			}
+			if (slave.entertainSkill >= 100) {
+				r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 60) {
+				r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 30) {
+				r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 10) {
+				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_prestige(slave) {
+		if (slave.prestige > 0) {
+			r += `<span class="green">`;
+			if (slave.prestige > 2) {
+				r += `Extremely prestigious.`;
+			} else if (slave.prestige === 2) {
+				r += `Very prestigious.`;
+			} else if (slave.prestige === 1) {
+				r += `Prestigious.`;
+			}
+			r += `</span> `;
+		}
+	}
+	
+	function short_fetish(slave) {
+		r += `<span class="lightcoral">`;
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
+					r += `Sub++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sub+`;
+				} else {
+					r += `Sub`;
+				}
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
+					r += `Oral++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Oral+`;
+				} else {
+					r += `Oral`;
+				}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
+					r += `Humil++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Humil+`;
+				} else {
+					r += `Humil`;
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
+					r += `Anal++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Anal+`;
+				} else {
+					r += `Anal`;
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
+					r += `Boobs++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Boobs+`;
+				} else {
+					r += `Boobs`;
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
+					r += `Sadist++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sadist+`;
+				} else {
+					r += `Sadist`;
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
+					r += `Pain++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Pain+`;
+				} else {
+					r += `Pain`;
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
+					r += `Dom++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Dom+`;
+				} else {
+					r += `Dom`;
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
+					r += `Preg++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Preg+`;
+				} else {
+					r += `Preg`;
+				}
+				break;
+			default:
+				r += `Vanilla`;
+				break;
+		}
+		if (V.summaryStats) {
+			r += `[${slave.fetishStrength}]`;
+		}
+		r += `</span>`;
+	}
+	
+	function short_attraction(slave) {
+		if (slave.attrXY <= 5) {
+			r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 15) {
+			r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 35) {
+			r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 65) {
+			r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
+		} else if (slave.attrXY <= 85) {
+			r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
+				r += `<span class="green">Omni!</span>`;
+			} else {
+				r += `<span class="green">Omni+Nympho!!</span>`;
+			}
+		} else {
+			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		}
+		if (slave.attrXX <= 5) {
+			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 15) {
+			r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 35) {
+			r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 65) {
+			r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
+		} else if (slave.attrXX <= 85) {
+			r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 95) {
+			r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		}
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+				r += `<span class="green">Nympho!</span>`;
+			}
+		} else if (slave.energy > 80) {
+			r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 60) {
+			r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 40) {
+			r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 20) {
+			r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else {
+			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		}
+	}
+	
+	function short_smart_fetish(slave) {
+		if (slave.fetishKnown === 1) {
+			if (slave.clitSetting === "off") {
+				r += `SP-`;
+			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+				r += `SP:sub`;
+			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+				r += `SP:oral`;
+			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+				r += `SP:humil`;
+			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+				r += `SP:anal`;
+			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+				r += `SP:boobs`;
+			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+				r += `SP:sade`;
+			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+				r += `SP:pain`;
+			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+				r += `SP:dom`;
+			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+				r += `SP:preg`;
+			} else if (((slave.fetish !== "none") && (slave.clitSetting === "vanilla"))) {
+				r += `SP:vanilla`;
+			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+				r += `SP:all`;
+			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+				r += `SP:none`;
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+				r += `SP:monitoring`;
+			}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
+					r += `SP-`;
+					break;
+				case "submissive":
+					r += `SP:sub`;
+					break;
+				case "lesbian":
+					r += `SP:les`;
+					break;
+				case "oral":
+					r += `SP:oral`;
+					break;
+				case "humiliation":
+					r += `SP:humil`;
+					break;
+				case "anal":
+					r += `SP:anal`;
+					break;
+				case "boobs":
+					r += `SP:boobs`;
+					break;
+				case "sadist":
+					r += `SP:sade`;
+					break;
+				case "masochist":
+					r += `SP:pain`;
+					break;
+				case "dom":
+					r += `SP:dom`;
+					break;
+				case "pregnancy":
+					r += `SP:pregnancy`;
+					break;
+				case "vanilla":
+					r += `SP:vanilla`;
+					break;
+				case "all":
+					r += `SP:all`;
+					break;
+				case "none":
+					r += `SP:none`;
+					break;
+			}
+		}
+	}
+	
+	function short_smart_attraction(slave) {
+		if (slave.attrKnown === 1) {
+			if (slave.clitSetting === "women") {
+				if (slave.attrXX < 95) {
+					r += `SP:women`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "men") {
+				if (slave.attrXY < 95) {
+					r += `SP:men`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "anti-women") {
+				if (slave.attrXX > 0) {
+					r += `SP:anti-women`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "anti-men") {
+				if (slave.attrXY > 0) {
+					r += `SP:anti-men`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			}
+		} else {
+			if (slave.clitSetting === "women") {
+				r += `SP:women`;
+			} else if (slave.clitSetting === "men") {
+				r += `SP:men`;
+			} else if (slave.clitSetting === "anti-women") {
+				r += `SP:anti-women`;
+			} else if (slave.clitSetting === "anti-men") {
+				r += `SP:anti-men`;
+			}
+		}
+	}
+	
+	function short_behavior_flaw(slave) {
+		r += `<span class="red">`;
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				r += `Arrog`;
+				break;
+			case "bitchy":
+				r += `Bitchy`;
+				break;
+			case "odd":
+				r += `Odd`;
+				break;
+			case "hates men":
+				r += `Men-`;
+				break;
+			case "hates women":
+				r += `Women-`;
+				break;
+			case "gluttonous":
+				r += `Glut`;
+				break;
+			case "anorexic":
+				r += `Ano`;
+				break;
+			case "devout":
+				r += `Dev`;
+				break;
+			case "liberated":
+				r += `Lib`;
+				break;
+			default:
+				slave.behavioralFlaw = "none";
+				break;
+		}
+		r += `</span>`;
+	}
+	
+	function short_sex_flaw(slave) {
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				r += `<span class="red">Oral-</span>`;
+				break;
+			case "hates anal":
+				r += `<span class="red">Anal-</span>`;
+				break;
+			case "hates penetration":
+				r += `<span class="red">Fuck-</span>`;
+				break;
+			case "shamefast":
+				r += `<span class="red">Shame</span>`;
+				break;
+			case "idealistic":
+				r += `<span class="red">Ideal</span>`;
+				break;
+			case "repressed":
+				r += `<span class="red">Repre</span>`;
+				break;
+			case "apathetic":
+				r += `<span class="red">Apath</span>`;
+				break;
+			case "crude":
+				r += `<span class="red">Crude</span>`;
+				break;
+			case "judgemental":
+				r += `<span class="red">Judge</span>`;
+				break;
+			case "cum addict":
+				r += `<span class="yellow">CumAdd</span>`;
+				break;
+			case "anal addict":
+				r += `<span class="yellow">AnalAdd</span>`;
+				break;
+			case "attention whore":
+				r += `<span class="yellow">Attention</span>`;
+				break;
+			case "breast growth":
+				r += `<span class="yellow">BoobObsess</span>`;
+				break;
+			case "abusive":
+				r += `<span class="yellow">Abusive</span>`;
+				break;
+			case "malicious":
+				r += `<span class="yellow">Malice</span>`;
+				break;
+			case "self hating":
+				r += `<span class="yellow">SelfHatr</span>`;
+				break;
+			case "neglectful":
+				r += `<span class="yellow">SelfNeglect</span>`;
+				break;
+			case "breeder":
+				r += `<span class="yellow">BreedObsess</span>`;
+				break;
+			default:
+				slave.sexualFlaw = "none";
+				break;
+		}
+	}	
+	
+	function short_behavior_quirk(slave) {
+		r += `<span class="green">`;
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				r += `Confid`;
+				break;
+			case "cutting":
+				r += `Cutting`;
+				break;
+			case "funny":
+				r += `Funny`;
+				break;
+			case "fitness":
+				r += `Fit`;
+				break;
+			case "adores women":
+				r += `Women+`;
+				break;
+			case "adores men":
+				r += `Men+`;
+				break;
+			case "insecure":
+				r += `Insec`;
+				break;
+			case "sinful":
+				r += `Sinf`;
+				break;
+			case "advocate":
+				r += `Advoc`;
+				break;
+			default:
+				slave.behavioralQuirk = "none";
+				break;
+		}
+	}
+	
+	function short_sex_quirk(slave) {
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				r += `Gagfuck`;
+				break;
+			case "painal queen":
+				r += `Painal`;
+				break;
+			case "strugglefuck queen":
+				r += `Struggle`;
+				break;
+			case "tease":
+				r += `Tease`;
+				break;
+			case "romantic":
+				r += `Romantic`;
+				break;
+			case "perverted":
+				r += `Perverted`;
+				break;
+			case "caring":
+				r += `Caring`;
+				break;
+			case "unflinching":
+				r += `Unflinch`;
+				break;
+			case "size queen":
+				r += `SizeQ`;
+				break;
+			default:
+				slave.sexualQuirk = "none";
+				break;
+		}
+		r += `</span>`;
+	}
+	
+	function long_fetish(slave) {
+		r += `<span class="lightcoral">`;
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
+					r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
+					r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
+					r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
+					r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
+					r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
+					r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
+					r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
+					r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
+					r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			default:
+				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function long_attraction(slave) {
+		if (slave.attrXY <= 5) {
+			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXY <= 15) {
+			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXY <= 35) {
+			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXY <= 65) {
+			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
+		} else if (slave.attrXY <= 85) {
+			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
+				r += `<span class="green">Omnisexual!</span>`;
+			} else {
+				r += `<span class="green">Omnisexual nymphomaniac!</span>`;
+			}
+		} else {
+			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+		}
+		if (slave.attrXX <= 5) {
+			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXX <= 15) {
+			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXX <= 35) {
+			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXX <= 65) {
+			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
+		} else if (slave.attrXX <= 85) {
+			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXX <= 95) {
+			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+		}
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+				r += `<span class="green">Nymphomaniac!</span>`;
+			}
+		} else if (slave.energy > 80) {
+			r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 60) {
+			r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 40) {
+			r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 20) {
+			r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else {
+			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_smart_fetish(slave) {
+		if (slave.fetishKnown === 1) {
+			if (slave.clitSetting === "off") {
+				r += `SP off.`;
+			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+				r += `SP: submissive.`;
+			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+				r += `SP: oral.`;
+			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+				r += `SP: humiliation.`;
+			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+				r += `SP: anal.`;
+			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+				r += `SP: breasts.`;
+			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+				r += `SP: sadism.`;
+			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+				r += `SP: masochism.`;
+			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+				r += `SP: dominance.`;
+			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+				r += `SP: pregnancy.`;
+			} else if ((slave.fetish !== "none") && (slave.clitSetting === "vanilla")) {
+				r += `SP: vanilla.`;
+			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+				r += `SP: all.`;
+			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+				r += `SP: none.`;
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+				r += `SP: monitoring.`;
+			}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
+					r += `SP off.`;
+					break;
+				case "submissive":
+					r += `SP: submissive.`;
+					break;
+				case "oral":
+					r += `SP: oral.`;
+					break;
+				case "humiliation":
+					r += `SP: humiliation.`;
+					break;
+				case "anal":
+					r += `SP: anal.`;
+					break;
+				case "boobs":
+					r += `SP: breasts.`;
+					break;
+				case "sadist":
+					r += `SP: sadism.`;
+					break;
+				case "masochist":
+					r += `SP: masochism.`;
+					break;
+				case "dom":
+					r += `SP: dominance.`;
+					break;
+				case "pregnancy":
+					r += `SP: pregnancy.`;
+					break;
+				case "vanilla":
+					r += `SP: vanilla.`;
+					break;
+				case "all":
+					r += `SP: all.`;
+					break;
+				case "none":
+					r += `SP: none.`;
+					break;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_smart_attraction(slave) {
+		if (slave.attrKnown === 1) {
+			if ((slave.attrXX < 100) && (slave.clitSetting === "women")) {
+				r += `SP: women.`;
+			} else if ((slave.attrXY < 100) && (slave.clitSetting === "men")) {
+				r += `SP: men.`;
+			}
+		} else {
+			if (slave.clitSetting === "women") {
+				r += `SP: women.`;
+			} else if (slave.clitSetting === "men") {
+				r += `SP: men.`;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_behavior_flaw(slave) {
+		r += `<span class="red">`;
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				r += `Arrogant.`;
+				break;
+			case "bitchy":
+				r += `Bitchy.`;
+				break;
+			case "odd":
+				r += `Odd.`;
+				break;
+			case "hates men":
+				r += `Hates men.`;
+				break;
+			case "hates women":
+				r += `Hates women.`;
+				break;
+			case "gluttonous":
+				r += `Stress eater.`;
+				break;
+			case "anorexic":
+				r += `Anorexic.`;
+				break;
+			case "devout":
+				r += `Devoutly religious.`;
+				break;
+			case "liberated":
+				r += `Mentally liberated.`;
+				break;
+			default:
+				slave.behavioralFlaw = "none";
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function long_sex_flaw(slave) {
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				r += `<span class="red">Hates oral.</span>`;
+				break;
+			case "hates anal":
+				r += `<span class="red">Hates anal.</span>`;
+				break;
+			case "hates penetration":
+				r += `<span class="red">Hates penetration.</span>`;
+				break;
+			case "shamefast":
+				r += `<span class="red">Shamefast.</span>`;
+				break;
+			case "idealistic":
+				r += `<span class="red">Sexually idealistic.</span>`;
+				break;
+			case "repressed":
+				r += `<span class="red">Sexually repressed.</span>`;
+				break;
+			case "apathetic":
+				r += `<span class="red">Sexually apathetic.</span>`;
+				break;
+			case "crude":
+				r += `<span class="red">Sexually crude.</span>`;
+				break;
+			case "judgemental":
+				r += `<span class="red">Sexually judgemental.</span>`;
+				break;
+			case "cum addict":
+				r += `<span class="yellow">Cum addict.</span>`;
+				break;
+			case "anal addict":
+				r += `<span class="yellow">Anal addict.</span>`;
+				break;
+			case "attention whore":
+				r += `<span class="yellow">Attention whore.</span>`;
+				break;
+			case "breast growth":
+				r += `<span class="yellow">Breast obsession.</span>`;
+				break;
+			case "abusive":
+				r += `<span class="yellow">Sexually abusive.</span>`;
+				break;
+			case "malicious":
+				r += `<span class="yellow">Sexually malicious.</span>`;
+				break;
+			case "self hating":
+				r += `<span class="yellow">Self hatred.</span>`;
+				break;
+			case "neglectful":
+				r += `<span class="yellow">Self neglectful.</span>`;
+				break;
+			case "breeder":
+				r += `<span class="yellow">Breeding obsession.</span>`;
+				break;
+			default:
+				slave.sexualFlaw = "none";
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_behavior_quirk(slave) {
+		r += `<span class="green">`;
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				r += `Confident.`;
+				break;
+			case "cutting":
+				r += `Cutting.`;
+				break;
+			case "funny":
+				r += `Funny.`;
+				break;
+			case "fitness":
+				r += `Fitness.`;
+				break;
+			case "adores women":
+				r += `Adores women.`;
+				break;
+			case "adores men":
+				r += `Adores men.`;
+				break;
+			case "insecure":
+				r += `Insecure.`;
+				break;
+			case "sinful":
+				r += `Sinful.`;
+				break;
+			case "advocate":
+				r += `Advocate.`;
+				break;
+			default:
+				slave.behavioralQuirk = "none";
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_sex_quirk(slave) {
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				r += `Gagfuck queen.`;
+				break;
+			case "painal queen":
+				r += `Painal queen.`;
+				break;
+			case "strugglefuck queen":
+				r += `Strugglefuck queen.`;
+				break;
+			case "tease":
+				r += `Tease.`;
+				break;
+			case "romantic":
+				r += `Romantic.`;
+				break;
+			case "perverted":
+				r += `Perverted.`;
+				break;
+			case "caring":
+				r += `Caring.`;
+				break;
+			case "unflinching":
+				r += `Unflinching.`;
+				break;
+			case "size queen":
+				r += `Size queen.`;
+				break;
+			default:
+				slave.sexualQuirk = "none";
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function short_extended_family(slave) {
+		if (slave.mother > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.mother;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					_relationshipHandled = 1;
+				}
+			}
+		} else if (slave.mother === -1) {
+			r += `Your daughter`;
+			if (slave.relationship === -3) {
+				r += `& wife`;
+				_relationshipHandled = 1;
+			} else if (slave.relationship === -2) {
+				r += `& lover`;
+				_relationshipHandled = 1;
+			}
+		}
+		if (slave.father > 0 && slave.father !== slave.mother) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.father;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					_relationshipHandled = 1;
+				}
+			}
+		} else if (slave.father === -1 && slave.mother !== -1) {
+			r += `Your daughter`;
+			if (slave.relationship === -3) {
+				r += `& wife`;
+				_relationshipHandled = 1;
+			} else if (slave.relationship === -2) {
+				r += `& lover`;
+				_relationshipHandled = 1;
+			}
+		}
+		if (slave.daughters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.mother === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					_relationshipHandled = 1;
+				}
+			}
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.father === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					_relationshipHandled = 1;
+				}
+			}
+		} else if (slave.daughters > 1) {
+			r += `multiple daughters`;
+		}
+		if (slave.sisters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return areSisters(s, slave) > 0;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					_relationshipHandled = 1;
+				}
+			}
+		} else if (slave.sisters > 1) {
+			r += `multiple sisters`;
+		}
+		if (slave.relationship > 0 && _relationshipHandled !== 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				switch (slave.relationship) {
+					case 1:
+						r += `friend`;
+						break;
+					case 2:
+						r += `BFF`;
+						break;
+					case 3:
+						r += `FWB`;
+						break;
+					case 4:
+						r += `lover`;
+						break;
+					case 5:
+						r += `wife`;
+						break;
+				}
+			}
+		} else if (slave.relationship === -3) {
+			r += `Your wife`;
+		} else if (slave.relationship === -2) {
+			r += `E Bonded`;
+		} else if (slave.relationship === -1) {
+			r += `E Slut`;
+		}
+	}
+	
+	function short_legacy_family(slave) {
+		if (slave.relation !== 0) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.relationTarget;
+				});
+				if (_ssj !== -1) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
+				}
+			}
+			if (slave.relationship > 0) {
+				let _ssj = V.slaves.findIndex(function(s) {
+					return s.ID === slave.relationshipTarget;
+				});
+				if (_ssj !== -1) {
+					switch (slave.relationship) {
+						case 1:
+							if (slave.relationshipTarget !== slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `friend`;
+							break;
+						case 2:
+							if (slave.relationshipTarget !== slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `BFF`;
+							break;
+						case 3:
+							if (slave.relationshipTarget !== slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `FWB`;
+							break;
+						case 4:
+							if (slave.relationshipTarget !== slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `lover`;
+							break;
+						case 5:
+							if (slave.relationshipTarget !== slave.relationTarget) {
+								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+							} else {
+								r += `&`;
+							}
+							r += `wife`;
+							break;
+					}
+				}
+			} else if (slave.relationship === -3) {
+				r += `Your wife`;
+			} else if (slave.relationship === -2) {
+				r += `E Bonded`;
+			} else if (slave.relationship === -1) {
+				r += `E Slut`;
+			}
+	}
+	
+	function short_rival(slave) {
+		if (slave.rivalry !== 0) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.rivalryTarget;
+			});
+			if (_ssj !== -1) {
+				r += `<span class="lightsalmon">`;
+				if (slave.rivalry <= 1) {
+					r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
+				} else if (slave.rivalry <= 2) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s rival`;
+				} else {
+					r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
+				}
+				r += `</span>`;
+			}
+		}
+	}
+	
+	function long_extended_family(slave) {
+		if (slave.mother > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.mother;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					_relationshipHandled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.mother === -1) {
+			r += `Your`;
+			if (slave.relationship === -3) {
+				r += `<span class="lightgreen">daughter and wife.</span> `;
+				_relationshipHandled = 1;
+			} else if (slave.relationship === -2) {
+				r += `<span class="lightgreen">daughter and lover.</span> `;
+				_relationshipHandled = 1;
+			} else {
+				r += `<span class="lightgreen">daughter.</span> `;
+			}
+		}
+		if (slave.father > 0 && slave.father !== slave.mother) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.father;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					_relationshipHandled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.father === -1 && slave.father !== slave.mother) {
+			r += `Your`;
+			if (slave.relationship === -3) {
+				r += `<span class="lightgreen">daughter and wife.</span> `;
+				_relationshipHandled = 1;
+			} else if (slave.relationship === -2) {
+				r += `<span class="lightgreen">daughter and lover.</span> `;
+				_relationshipHandled = 1;
+			} else {
+				r += `<span class="lightgreen">daughter.</span> `;
+			}
+		}
+		if (slave.daughters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.mother === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					_relationshipHandled = 1;
+				}
+				r += `.</span> `;
+			}
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.father === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					_relationshipHandled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.daughters > 1) {
+			if (slave.daughters > 10) {
+				r += `<span class="lightgreen">Has tons of daughters.</span> `;
+			} else if (slave.daughters > 5) {
+				r += `<span class="lightgreen">Has many daughters.</span> `;
+			} else {
+				r += `<span class="lightgreen">Has several daughters.</span> `;
+			}
+		}
+		if (slave.sisters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return areSisters(s, slave) > 0;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					_relationshipHandled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.sisters > 1) {
+			if (slave.sisters > 10) {
+				r += `<span class="lightgreen">One of many sisters.</span> `;
+			} else if (slave.sisters > 5) {
+				r += `<span class="lightgreen">Has many sisters.</span> `;
+			} else {
+				r += `<span class="lightgreen">Has several sisters.</span> `;
+			}
+		}
+		if (slave.relationship > 0 && _relationshipHandled !== 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				switch (slave.relationship) {
+					case 1:
+						r += `<span class="lightgreen">friend.</span> `;
+						break;
+					case 2:
+						r += `<span class="lightgreen">best friend.</span> `;
+						break;
+					case 3:
+						r += `<span class="lightgreen">FWB.</span> `;
+						break;
+					case 4:
+						r += `<span class="lightgreen">lover.</span> `;
+						break;
+					case 5:
+						r += `<span class="lightgreen">slave wife.</span> `;
+						break;
+				}
+			}
+		} else if (slave.relationship === -3) {
+			r += `<span class="lightgreen">Your wife.</span> `;
+		} else if (slave.relationship === -2) {
+			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
+		} else if (slave.relationship === -1) {
+			r += `<span class="lightgreen">Emotional slut.</span> `;
+		}
+	}
+	
+	function long_legacy_family(slave) {
+		if (slave.relation !== 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				if (slave.relationshipTarget !== slave.relationTarget) {
+					r += `<span class="lightgreen">${slave.relation}</span>. `;
+				} else {
+					r += `<span class="lightgreen">${slave.relation}</span> `;
+				}
+				if (slave.relationship <= 0) {
+					r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+				}
+			}
+		}
+		if (slave.relationship > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				switch (slave.relationship) {
+					case 1:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">friend.</span> `;
+						break;
+					case 2:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">best friend.</span> `;
+						break;
+					case 3:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">FWB.</span> `;
+						break;
+					case 4:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">lover.</span> `;
+						break;
+					case 5:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">slave wife.</span> `;
+						break;
+				}
+			}
+		} else if (slave.relationship === -3) {
+			r += `<span class="lightgreen">Your wife.</span> `;
+		} else if (slave.relationship === -2) {
+			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
+		} else if (slave.relationship === -1) {
+			r += `<span class="lightgreen">Emotional slut.</span> `;
+		}
+	}
+	
+	function long_rival(slave) {
+		if (slave.rivalry !== 0) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.rivalryTarget;
+			});
+			if (_ssj !== -1) {
+				if (slave.rivalry <= 1) {
+					r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
+				} else if (slave.rivalry <= 2) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightsalmon">rival.</span>`;
+				} else {
+					r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
+				}
+			}
+			r += " ";
+		}
+	}
+	
+	function long_clothes(slave) {
+		switch (slave.clothes) {
+			case "attractive lingerie":
+				r += `Lingerie.`;
+				break;
+			case "a succubus outfit":
+				r += `Succubus outfit.`;
+				break;
+			case "a string bikini":
+				r += `String bikini.`;
+				break;
+			case "a scalemail bikini":
+				r += `Scalemail bikini.`;
+				break;
+			case "a monokini":
+				r += `Monokini.`;
+				break;
+			case "an apron":
+				r += `Apron.`;
+				break;
+			case "a cybersuit":
+				r += `Cybersuit.`;
+				break;
+			case "cutoffs and a t-shirt":
+				r += `Cutoffs, t-shirt.`;
+				break;
+			case "a slutty outfit":
+				r += `Slutty outfit.`;
+				break;
+			case "uncomfortable straps":
+				r += `Leather straps.`;
+				break;
+			case "a fallen nuns habit":
+				r += `Slutty habit.`;
+				break;
+			case "a chattel habit":
+				r += `Chattel habit.`;
+				break;
+			case "a penitent nuns habit":
+				r += `Cilice.`;
+				break;
+			case "slutty jewelry":
+				r += `Bangles.`;
+				break;
+			case "attractive lingerie for a pregnant woman":
+				r += `Preggo lingerie.`;
+				break;
+			case "a maternity dress":
+				r += `Maternity dress.`;
+				break;
+			case "stretch pants and a crop-top":
+				r += `Stretch pants, crop-top.`;
+				break;
+			case "harem gauze":
+				r += `Harem outfit.`;
+				break;
+			case "a slave gown":
+				r += `Slave gown.`;
+				break;
+			case "a halter top dress":
+				r += `Halter top dress.`;
+				break;
+			case "a mini dress":
+				r += `Mini dress.`;
+				break;
+			case "a ball gown":
+				r += `Ball gown.`;
+				break;
+			case "slutty business attire":
+				r += `Slutty suit.`;
+				break;
+			case "nice business attire":
+				r += `Nice suit.`;
+				break;
+			case "a comfortable bodysuit":
+				r += `Bodysuit.`;
+				break;
+			case "a military uniform":
+				r += `Military uniform.`;
+				break;
+			case "a schutzstaffel uniform":
+				r += `Schutzstaffel uniform.`;
+				break;
+			case "a slutty schutzstaffel uniform":
+				r += `Slutty Schutzstaffel uniform.`;
+				break;
+			case "a red army uniform":
+				r += `Red Army uniform.`;
+				break;
+			case "a long qipao":
+				r += `Long Qipao.`;
+				break;
+			case "battlearmor":
+				r += `Battlearmor.`;
+				break;
+			case "a mounty outfit":
+				r += `Mounty outfit.`;
+				break;
+			case "a dirndl":
+				r += `Dirndl.`;
+				break;
+			case "lederhosen":
+				r += `Lederhosen.`;
+				break;
+			case "a biyelgee costume":
+				r += `Biyelgee costume.`;
+				break;
+			case "a leotard":
+				r += `Leotard.`;
+				break;
+			case "a bunny outfit":
+				r += `Bunny outfit.`;
+				break;
+			case "a slutty maid outfit":
+				r += `Slutty maid.`;
+				break;
+			case "a nice maid outfit":
+				r += `Nice maid.`;
+				break;
+			case "a slutty nurse outfit":
+				r += `Slutty nurse.`;
+				break;
+			case "a nice nurse outfit":
+				r += `Nice nurse.`;
+				break;
+			case "a schoolgirl outfit":
+				r += `Schoolgirl outfit.`;
+				break;
+			case "a kimono":
+				r += `Kimono.`;
+				break;
+			case "a hijab and abaya":
+				r += `Hijab and abaya.`;
+				break;
+			case "battledress":
+				r += `Battledress.`;
+				break;
+			case "a latex catsuit":
+				r += `Nice latex.`;
+				break;
+			case "restrictive latex":
+				r += `Bondage latex.`;
+				break;
+			case "conservative clothing":
+				r += `Conservative clothing.`;
+				break;
+			case "chains":
+				r += `Chains.`;
+				break;
+			case "a cheerleader outfit":
+				r += `Cheerleader.`;
+				break;
+			case "clubslut netting":
+				r += `Netting.`;
+				break;
+			case "shibari ropes":
+				r += `Shibari.`;
+				break;
+			case "Western clothing":
+				r += `Chaps.`;
+				break;
+			case "body oil":
+				r += `Body oil.`;
+				break;
+			case "a toga":
+				r += `Toga.`;
+				break;
+			case "a huipil":
+				r += `Huipil.`;
+				break;
+			case "a slutty qipao":
+				r += `Qipao.`;
+				break;
+			case "spats and a tank top":
+				r += `Spats, tank top.`;
+				break;
+			default:
+				r += `Naked.`;
+				break;
+		}
+		r += " ";
+	}
+
+	function long_collar(slave) {
+		switch (slave.collar) {
+			case "uncomfortable leather":
+				r += `Leather collar.`;
+				break;
+			case "tight steel":
+				r += `Steel collar.`;
+				break;
+			case "preg biometrics":
+				r += `Pregnancy biometrics collar.`;
+				break;
+			case "cruel retirement counter":
+				r += `Cruel counter collar.`;
+				break;
+			case "shock punishment":
+				r += `Shock collar.`;
+				break;
+			case "dildo gag":
+				r += `Dildo gag.`;
+				break;
+			case "massive dildo gag":
+				r += `Throat-bulging dildo gag.`;
+				break;
+			case "neck corset":
+				r += `Neck corset.`;
+				break;
+			case "stylish leather":
+				r += `Stylish leather collar.`;
+				break;
+			case "satin choker":
+				r += `Satin choker.`;
+				break;
+			case "silk ribbon":
+				r += `Silken ribbon.`;
+				break;
+			case "heavy gold":
+				r += `Gold collar.`;
+				break;
+			case "bowtie":
+				r += `Bowtie collar.`;
+				break;
+			case "pretty jewelry":
+				r += `Pretty collar.`;
+				break;
+			case "nice retirement counter":
+				r += `Nice counter collar.`;
+				break;
+			case "leather with cowbell":
+				r += `Cowbell collar.`;
+				break;
+			case "ancient Egyptian":
+				r += `Wesekh.`;
+				break;
+			case "ball gag":
+				r += `Ball gag.`;
+				break;
+			case "bit gag":
+				r += `Bit gag.`;
+				break;
+			case "porcelain mask":
+				r += `Porcelain mask.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_belly(slave) {
+		switch (slave.bellyAccessory) {
+			case "shapewear":
+				r += `Shapewear.`;
+				break;
+			case "a small empathy belly":
+				r += `Small fake belly.`;
+				break;
+			case "a medium empathy belly":
+				r += `Medium fake belly.`;
+				break;
+			case "a large empathy belly":
+				r += `Large fake belly.`;
+				break;
+			case "a huge empathy belly":
+				r += `Huge fake belly.`;
+				break;
+			case "a corset":
+				r += `Corset.`;
+				break;
+			case "an extreme corset":
+				r += `Extreme corsetage.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_legs(slave) {
+		if (slave.legAccessory === "short stockings") {
+			r += `Short stockings.`;
+		} else if (slave.legAccessory === "long stockings") {
+			r += `Long stockings.`;
+		}
+		r += " ";
+	}
+	
+	function long_shoes(slave) {
+		if (slave.shoes === "heels") {
+			r += `Heels.`;
+		} else if (slave.shoes === "pumps") {
+			r += `Pumps.`;
+		} else if (slave.shoes === "extreme heels") {
+			r += `Extreme heels.`;
+		} else if (slave.shoes === "boots") {
+			r += `Boots.`;
+		} else if (slave.heels === 1) {
+			r += `<span class="yellow">Crawling.</span>`;
+		} else if (slave.shoes === "flats") {
+			r += `Flats.`;
+		}
+		r += " ";
+	}
+	
+	function long_vaginal_acc(slave) {
+		switch (slave.vaginalAccessory) {
+			case "chastity belt":
+				r += `Vaginal chastity.`;
+				break;
+			case "combined chastity":
+				r += `Combined chastity.`;
+				break;
+			case "anal chastity":
+				r += `Anal chastity.`;
+				break;
+			case "dildo":
+				r += `Vaginal dildo.`;
+				break;
+			case "large dildo":
+				r += `Large vaginal dildo.`;
+				break;
+			case "huge dildo":
+				r += `Huge vaginal dildo.`;
+				break;
+			case "long dildo":
+				r += `Long vaginal dildo.`;
+				break;
+			case "long, large dildo":
+				r += `Long and large vaginal dildo.`;
+				break;
+			case "long, huge dildo":
+				r += `Long and wide vaginal dildo.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_dick_acc(slave) {
+		if (slave.dickAccessory === "chastity") {
+			r += `Chastity cage.`;
+		} else if (slave.dickAccessory === "combined chastity") {
+			r += `Combined chastity.`;
+		} else if (slave.dickAccessory === "anal chastity") {
+			r += `Anal chastity.`;
+		}
+		r += " ";
+	}
+	
+	function long_buttplug(slave) {
+		switch (slave.buttplug) {
+			case "plug":
+				r += `Buttplug.`;
+				break;
+			case "large plug":
+				r += `Large buttplug.`;
+				break;
+			case "huge plug":
+				r += `Huge buttplug.`;
+				break;
+			case "long plug":
+				r += `Long buttplug.`;
+				break;
+			case "long, large plug":
+				r += `Large, long buttplug.`;
+				break;
+			case "long, huge plug":
+				r += `Enormous buttplug.`;
+				break;
+		}
+		r += " ";
+		switch (slave.buttplugAttachment) {
+			case "tail":
+				r += `Attached tail. `;
+				break;
+		}
+	}
+	
+	function rules_assistant(slave) {
+		if (slave.useRulesAssistant === 0) {
+			r += `<span class="lightgreen">RA-Exempt</span> `;
+		} else if (V.abbreviateRulesets === 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
+			r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(", ") }`;
+		}
+	}
+	
+	function origins(slave) {
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		r += `<span class="gray">${slave.origin}</span>`;
+	}
+	
+	return SlaveSummaryUncached;
+})();
diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt
index edf173d6eeb..08c3ef209bd 100644
--- a/slave variables documentation - Pregmod.txt	
+++ b/slave variables documentation - Pregmod.txt	
@@ -248,6 +248,12 @@ slave's prestige
 2 - Very prestigious
 > 2 - Extremely prestigious
 
+pornFeed:
+
+is the studio outputting porn of her?
+0 - no
+1 - yes
+
 pornFame:
 
 how famous her porn is?
@@ -258,6 +264,206 @@ pornFameSpending:
 how much money is being spent on promoting her porn
 accepts int
 
+pornPrestige:
+
+how famous she is in porn
+0 - not
+1 - some
+2 - recognized
+3 - world renowned
+
+pornPrestigeDesc:
+
+description to go with above pornPrestige
+accepts string
+
+pornFameType:
+
+what porn she is known for
+** Needs to be pulled from saPorn! **
+"none"
+
+pornFocus:
+
+what aspect of her the upgraded studio is focusing on for porn
+** Needs to be pulled from saPorn! **
+"none"
+
+pornTypeGeneral:
+
+generic porn fame
+accepts int
+
+pornTypeFuckdoll:
+
+fuckdoll porn fame
+accepts int
+
+pornTypeRape:
+
+rape porn fame
+accepts int
+
+pornTypePreggo:
+
+preggo porn fame
+accepts int
+
+pornTypeBBW:
+
+BBW porn fame
+accepts int
+
+pornTypeGainer:
+
+weight gain porn fame
+accepts int
+
+pornTypeStud:
+
+well hung porn fame
+accepts int
+
+pornTypeLoli:
+
+underage porn fame
+accepts int
+
+pornTypeDeepThroat:
+
+gagfuck queen porn fame
+accepts int
+
+pornTypeStruggleFuck:
+
+strugglefuck queen porn fame
+accepts int
+
+pornTypePainal:
+
+painal queen porn fame
+accepts int
+
+pornTypeTease:
+
+tease porn fame
+accepts int
+
+pornTypeRomantic:
+
+romantic porn fame
+accepts int
+
+pornTypePervert:
+
+pervert porn fame
+accepts int
+
+pornTypeCaring:
+
+caring porn fame
+accepts int
+
+pornTypeUnflinching:
+
+unflinching porn fame
+accepts int
+
+pornTypeSizeQueen:
+
+size queen porn fame
+accepts int
+
+pornTypeNeglectful:
+
+neglectful porn fame
+accepts int
+
+pornTypeCumAddict:
+
+cum addict porn fame
+accepts int
+
+pornTypeAnalAddict:
+
+anal addict porn fame
+accepts int
+
+pornTypeAttentionWhore:
+
+attention whore porn fame
+accepts int
+
+pornTypeBreastGrowth:
+
+breast growth porn fame
+accepts int
+
+pornTypeAbusive:
+
+abusive porn fame
+accepts int
+
+pornTypeMalicious:
+
+malicious porn fame
+accepts int
+
+pornTypeSelfHating:
+
+self hating porn fame
+accepts int
+
+pornTypeBreeder:
+
+breeder porn fame
+accepts int
+
+pornTypeSub:
+
+submissive porn fame
+accepts int
+
+pornTypeCumSlut:
+
+cumslut porn fame
+accepts int
+
+pornTypeAnal:
+
+buttslut porn fame
+accepts int
+
+pornTypeHumiliation:
+
+humiliation porn fame
+accepts int
+
+pornTypeBoobs:
+
+boob porn fame
+accepts int
+
+pornTypeDom:
+
+dom porn fame
+accepts int
+
+pornTypeSadist:
+
+sadist porn fame
+accepts int
+
+pornTypeMasochist:
+
+masochist porn fame
+accepts int
+
+pornTypePregnancy:
+
+pregnancy porn fame
+accepts int
+
 prestigeDesc:
 
 reason for prestige
diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index 7738dff64fa..feff4a088f6 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -605,7 +605,6 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $feeder = 0>>
 <<set $cockFeeder = 0>>
 <<set $suppository = 0>>
-<<set $studio = 0>>
 <<set $weatherCladding = 0>>
 <<set $weatherAwareness = 0>>
 <<set $boobAccessibility = 0>>
@@ -614,6 +613,84 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $foodCost = 25>>
 <<set $revealFoodEffects = 0>>
 
+<<set $studio = 0>>
+<<set $studioFeed = 0>>
+<<set $PCSlutContacts = 0>>
+
+/* Porn type counts */
+<<set $pornStars = 0>>
+<<set $pornStarFuckdolls = 0>>
+<<set $pornStarRapees = 0>>
+<<set $pornStarPreggos = 0>>
+<<set $pornStarBBWs = 0>>
+<<set $pornStarGainers = 0>>
+<<set $pornStarStuds = 0>>
+<<set $pornStarLolis = 0>>
+<<set $pornStarDeepThroats = 0>>
+<<set $pornStarStruggleFucks = 0>>
+<<set $pornStarPainals = 0>>
+<<set $pornStarTeases = 0>>
+<<set $pornStarRomantics = 0>>
+<<set $pornStarPerverts = 0>>
+<<set $pornStarCarings = 0>>
+<<set $pornStarUnflinchings = 0>>
+<<set $pornStarSizeQueens = 0>>
+<<set $pornStarNeglectfuls = 0>>
+<<set $pornStarCumAddicts = 0>>
+<<set $pornStarAnalAddicts = 0>>
+<<set $pornStarAttentionWhores = 0>>
+<<set $pornStarBreastGrowths = 0>>
+<<set $pornStarAbusives = 0>>
+<<set $pornStarMalicious = 0>>
+<<set $pornStarSelfHatings = 0>>
+<<set $pornStarBreeders = 0>>
+<<set $pornStarSubs = 0>>
+<<set $pornStarCumSluts = 0>>
+<<set $pornStarAnals = 0>>
+<<set $pornStarHumiliations = 0>>
+<<set $pornStarBoobs = 0>>
+<<set $pornStarDoms = 0>>
+<<set $pornStarSadists = 0>>
+<<set $pornStarMasochists = 0>>
+<<set $pornStarPregnancySluts = 0>>
+
+/* level 3 prestige */
+<<set $pornStarID = 0>>
+<<set $pornStarFuckdollID = 0>>
+<<set $pornStarRapeID = 0>>
+<<set $pornStarPreggoID = 0>>
+<<set $pornStarBBWID = 0>>
+<<set $pornStarGainerID = 0>>
+<<set $pornStarStudID = 0>>
+<<set $pornStarLoliID = 0>>
+<<set $pornStarDeepThroatID = 0>>
+<<set $pornStarStruggleFuckID = 0>>
+<<set $pornStarPainalID = 0>>
+<<set $pornStarTeaseID = 0>>
+<<set $pornStarRomanticID = 0>>
+<<set $pornStarPervertID = 0>>
+<<set $pornStarCaringID = 0>>
+<<set $pornStarUnflinchingID = 0>>
+<<set $pornStarSizeQueenID = 0>>
+<<set $pornStarNeglectfulID = 0>>
+<<set $pornStarCumAddictID = 0>>
+<<set $pornStarAnalAddictID = 0>>
+<<set $pornStarAttentionWhoreID = 0>>
+<<set $pornStarBreastGrowthID = 0>>
+<<set $pornStarAbusiveID = 0>>
+<<set $pornStarMaliciousID = 0>>
+<<set $pornStarSelfHatingID = 0>>
+<<set $pornStarBreederID = 0>>
+<<set $pornStarSubID = 0>>
+<<set $pornStarCumSlutID = 0>>
+<<set $pornStarAnalID = 0>>
+<<set $pornStarHumiliationID = 0>>
+<<set $pornStarBoobsID = 0>>
+<<set $pornStarDomID = 0>>
+<<set $pornStarSadistID = 0>>
+<<set $pornStarMasochistID = 0>>
+<<set $pornStarPregnancyID = 0>>
+
 <<set $legendaryWhoreID = 0>>
 <<set $legendaryEntertainerID = 0>>
 <<set $legendaryCowID = 0>>
diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw
index 12f38c95000..438b85c2974 100644
--- a/src/pregmod/widgets/pregmodWidgets.tw
+++ b/src/pregmod/widgets/pregmodWidgets.tw
@@ -307,6 +307,56 @@
 <<if ndef $args[0].NCSyouthening>>
         <<set $args[0].NCSyouthening = 0>>
 <</if>>
+
+<<if ndef $args[0].pornFeed>>
+	<<set $args[0].pornFame = 0>>
+	<<set $args[0].pornFameSpending = 0>>
+	<<set $args[0].pornFeed = 0>>
+	<<set $args[0].pornPrestige = 0>>
+	<<set $args[0].pornPrestigeDesc = 0>>
+	<<set $args[0].pornFameType = "none">>
+	<<set $args[0].pornFocus = "none">>
+	/*General*/
+	<<set $args[0].pornTypeGeneral = 0>>
+	<<set $args[0].pornTypeFuckdoll = 0>>
+	<<set $args[0].pornTypeRape = 0>>
+	<<set $args[0].pornTypePreggo = 0>>
+	<<set $args[0].pornTypeBBW = 0>>
+	<<set $args[0].pornTypeGainer = 0>>
+	<<set $args[0].pornTypeStud = 0>>
+	<<set $args[0].pornTypeLoli = 0>>
+	/*Quirks*/
+	<<set $args[0].pornTypeDeepThroat = 0>>
+	<<set $args[0].pornTypeStruggleFuck = 0>>
+	<<set $args[0].pornTypePainal = 0>>
+	<<set $args[0].pornTypeTease = 0>>
+	<<set $args[0].pornTypeRomantic = 0>>
+	<<set $args[0].pornTypePervert = 0>>
+	<<set $args[0].pornTypeCaring = 0>>
+	<<set $args[0].pornTypeUnflinching = 0>>
+	<<set $args[0].pornTypeSizeQueen = 0>>
+	/*Paraphilia*/
+	<<set $args[0].pornTypeNeglectful = 0>>
+	<<set $args[0].pornTypeCumAddict = 0>>
+	<<set $args[0].pornTypeAnalAddict = 0>>
+	<<set $args[0].pornTypeAttentionWhore = 0>>
+	<<set $args[0].pornTypeBreastGrowth = 0>>
+	<<set $args[0].pornTypeAbusive = 0>>
+	<<set $args[0].pornTypeMalicious = 0>>
+	<<set $args[0].pornTypeSelfHating = 0>>
+	<<set $args[0].pornTypeBreeder = 0>>
+	/*fetish*/
+	<<set $args[0].pornTypeSub = 0>>
+	<<set $args[0].pornTypeCumSlut = 0>>
+	<<set $args[0].pornTypeAnal = 0>>
+	<<set $args[0].pornTypeHumiliation = 0>>
+	<<set $args[0].pornTypeBoobs = 0>>
+	<<set $args[0].pornTypeDom = 0>>
+	<<set $args[0].pornTypeSadist = 0>>
+	<<set $args[0].pornTypeMasochist = 0>>
+	<<set $args[0].pornTypePregnancy = 0>>
+<</if>>
+
 <</widget>>
 
 
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 0e4c1e000fb..a19479b2855 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2156,6 +2156,86 @@ Setting missing global variables:
 <</if>>
 <<set WombInit($PC)>>
 
+<<if ndef $pornStarID>>
+
+	<<set $studioFeed = 0>>
+	<<set $PCSlutContacts = 0>>
+
+	/* Porn type counts */
+	<<set $pornStars = 0>>
+	<<set $pornStarFuckdolls = 0>>
+	<<set $pornStarRapees = 0>>
+	<<set $pornStarPreggos = 0>>
+	<<set $pornStarBBWs = 0>>
+	<<set $pornStarGainers = 0>>
+	<<set $pornStarStuds = 0>>
+	<<set $pornStarLolis = 0>>
+	<<set $pornStarDeepThroats = 0>>
+	<<set $pornStarStruggleFucks = 0>>
+	<<set $pornStarPainals = 0>>
+	<<set $pornStarTeases = 0>>
+	<<set $pornStarRomantics = 0>>
+	<<set $pornStarPerverts = 0>>
+	<<set $pornStarCarings = 0>>
+	<<set $pornStarUnflinchings = 0>>
+	<<set $pornStarSizeQueens = 0>>
+	<<set $pornStarNeglectfuls = 0>>
+	<<set $pornStarCumAddicts = 0>>
+	<<set $pornStarAnalAddicts = 0>>
+	<<set $pornStarAttentionWhores = 0>>
+	<<set $pornStarBreastGrowths = 0>>
+	<<set $pornStarAbusives = 0>>
+	<<set $pornStarMalicious = 0>>
+	<<set $pornStarSelfHatings = 0>>
+	<<set $pornStarBreeders = 0>>
+	<<set $pornStarSubs = 0>>
+	<<set $pornStarCumSluts = 0>>
+	<<set $pornStarAnals = 0>>
+	<<set $pornStarHumiliations = 0>>
+	<<set $pornStarBoobs = 0>>
+	<<set $pornStarDoms = 0>>
+	<<set $pornStarSadists = 0>>
+	<<set $pornStarMasochists = 0>>
+	<<set $pornStarPregnancySluts = 0>>
+
+	/* level 3 prestige */
+	<<set $pornStarID = 0>>
+	<<set $pornStarFuckdollID = 0>>
+	<<set $pornStarRapeID = 0>>
+	<<set $pornStarPreggoID = 0>>
+	<<set $pornStarBBWID = 0>>
+	<<set $pornStarGainerID = 0>>
+	<<set $pornStarStudID = 0>>
+	<<set $pornStarLoliID = 0>>
+	<<set $pornStarDeepThroatID = 0>>
+	<<set $pornStarStruggleFuckID = 0>>
+	<<set $pornStarPainalID = 0>>
+	<<set $pornStarTeaseID = 0>>
+	<<set $pornStarRomanticID = 0>>
+	<<set $pornStarPervertID = 0>>
+	<<set $pornStarCaringID = 0>>
+	<<set $pornStarUnflinchingID = 0>>
+	<<set $pornStarSizeQueenID = 0>>
+	<<set $pornStarNeglectfulID = 0>>
+	<<set $pornStarCumAddictID = 0>>
+	<<set $pornStarAnalAddictID = 0>>
+	<<set $pornStarAttentionWhoreID = 0>>
+	<<set $pornStarBreastGrowthID = 0>>
+	<<set $pornStarAbusiveID = 0>>
+	<<set $pornStarMaliciousID = 0>>
+	<<set $pornStarSelfHatingID = 0>>
+	<<set $pornStarBreederID = 0>>
+	<<set $pornStarSubID = 0>>
+	<<set $pornStarCumSlutID = 0>>
+	<<set $pornStarAnalID = 0>>
+	<<set $pornStarHumiliationID = 0>>
+	<<set $pornStarBoobsID = 0>>
+	<<set $pornStarDomID = 0>>
+	<<set $pornStarSadistID = 0>>
+	<<set $pornStarMasochistID = 0>>
+	<<set $pornStarPregnancyID = 0>>
+<</if>>
+
 Done!
 
 <br><br>
diff --git a/src/uncategorized/managePenthouse.tw b/src/uncategorized/managePenthouse.tw
index c735c868d6c..74dcc2fe8bb 100644
--- a/src/uncategorized/managePenthouse.tw
+++ b/src/uncategorized/managePenthouse.tw
@@ -250,6 +250,12 @@ __Penthouse Upgrades__
 	//Costs <<print cashFormat(Math.trunc(10000*$upgradeMultiplierArcology))>>//
 <<else>>
 	The arcology's video systems are connected to a media hub that can convert slave video feeds into pornography.
+	<<if $studioFeed == 0>>
+		[[Upgrade the media hub to allow better control of pornographic content|Manage Penthouse][$cash -= Math.trunc(15000*$upgradeMultiplierArcology), $studioFeed = 1]]
+		//Costs <<print cashFormat(Math.trunc(15000*$upgradeMultiplierArcology))>>//
+	<<else>>
+		It has been upgraded to allow superior control of a slave's pornographic content.
+	<</if>>
 <</if>>
 
 <br>
diff --git a/src/uncategorized/nextWeek.tw b/src/uncategorized/nextWeek.tw
index 92faac3763f..f9d4b2d4729 100644
--- a/src/uncategorized/nextWeek.tw
+++ b/src/uncategorized/nextWeek.tw
@@ -22,6 +22,16 @@
 <</if>>
 
 <<set $averageTrust = 0, $averageDevotion = 0, _slavesContributing = 0, _OldHG = -1, _NewHG = -1, _SL = $slaves.length>>
+<<if $studio == 1>>
+	<<set $pornStars = 0, $pornStarFuckdolls = 0, $pornStarRapees = 0, $pornStarPreggos = 0,
+	$pornStarBBWs = 0, $pornStarGainers = 0, $pornStarStuds = 0, $pornStarLolis = 0,
+	$pornStarDeepThroats = 0, $pornStarStruggleFucks = 0, $pornStarTeases = 0,
+	$pornStarRomantics = 0, $pornStarPerverts = 0, $pornStarCarings = 0, $pornStarUnflinchings = 0,
+	$pornStarSizeQueens = 0, $pornStarNeglectfuls = 0, $pornStarCumAddicts = 0, $pornStarAnalAddicts = 0,
+	$pornStarAttentionWhores = 0, $pornStarBreastGrowths = 0, $pornStarAbusives = 0, $pornStarMalicious = 0, $pornStarSelfHatings = 0, $pornStarBreeders = 0, $pornStarSubs = 0, $pornStarCumSluts = 0,
+	$pornStarAnals = 0, $pornStarHumiliations = 0, $pornStarBoobs = 0, $pornStarDoms = 0,
+	$pornStarSadists = 0, $pornStarMasochists = 0, $pornStarPregnancySluts = 0>>
+<</if>>
 <<for _i = 0; _i < _SL; _i++>>
 	<<if $seeAge != 0>>
 	<<set $slaves[_i].birthWeek++>>
@@ -109,6 +119,43 @@
 	<<elseif ($slaves[_i].assignment != "be confined in the cellblock") && ($slaves[_i].assignment != "be confined in the arcade") && (($slaves[_i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2)) && $slaves[_i].assignment != "labor in the production line">>
 		<<set $averageTrust += $slaves[_i].trust*0.5, $averageDevotion += $slaves[_i].devotion*0.5, _slavesContributing += 0.5>>
 	<</if>>
+	<<if $studio == 1>>
+		<<if $slaves[_i].pornTypeGeneral > 0>><<set $pornStars++>><</if>>
+		<<if $slaves[_i].pornTypeFuckdoll > 0>><<set $pornStarFuckdolls++>><</if>>
+		<<if $slaves[_i].pornTypeRape > 0>><<set $pornStarRapees++>><</if>>
+		<<if $slaves[_i].pornTypePreggo > 0>><<set $pornStarPreggos++>><</if>>
+		<<if $slaves[_i].pornTypeBBW > 0>><<set $pornStarBBWs++>><</if>>
+		<<if $slaves[_i].pornTypeGainer > 0>><<set $pornStarGainers++>><</if>>
+		<<if $slaves[_i].pornTypeStud > 0>><<set $pornStarStuds++>><</if>>
+		<<if $slaves[_i].pornTypeLoli > 0>><<set $pornStarLolis++>><</if>>
+		<<if $slaves[_i].pornTypeDeepThroat > 0>><<set $pornStarDeepThroats++>><</if>>
+		<<if $slaves[_i].pornTypeStruggleFuck > 0>><<set $pornStarStruggleFucks++>><</if>>
+		<<if $slaves[_i].pornTypePainal > 0>><<set $pornStarPainals++>><</if>>
+		<<if $slaves[_i].pornTypeTease > 0>><<set $pornStarTeases++>><</if>>
+		<<if $slaves[_i].pornTypeRomantic > 0>><<set $pornStarRomantics++>><</if>>
+		<<if $slaves[_i].pornTypePervert > 0>><<set $pornStarPerverts++>><</if>>
+		<<if $slaves[_i].pornTypeCaring > 0>><<set $pornStarCarings++>><</if>>
+		<<if $slaves[_i].pornTypeUnflinching > 0>><<set $pornStarUnflinchings++>><</if>>
+		<<if $slaves[_i].pornTypeSizeQueen > 0>><<set $pornStarSizeQueens++>><</if>>
+		<<if $slaves[_i].pornTypeNeglectful > 0>><<set $pornStarNeglectfuls++>><</if>>
+		<<if $slaves[_i].pornTypeCumAddict > 0>><<set $pornStarCumAddicts++>><</if>>
+		<<if $slaves[_i].pornTypeAnalAddict > 0>><<set $pornStarAnalAddicts++>><</if>>
+		<<if $slaves[_i].pornTypeAttentionWhore > 0>><<set $pornStarAttentionWhores++>><</if>>
+		<<if $slaves[_i].pornTypeBreastGrowth > 0>><<set $pornStarBreastGrowths++>><</if>>
+		<<if $slaves[_i].pornTypeAbusive > 0>><<set $pornStarAbusives++>><</if>>
+		<<if $slaves[_i].pornTypeMalicious > 0>><<set $pornStarMalicious++>><</if>>
+		<<if $slaves[_i].pornTypeSelfHating > 0>><<set $pornStarSelfHatings++>><</if>>
+		<<if $slaves[_i].pornTypeBreeder > 0>><<set $pornStarBreeders++>><</if>>
+		<<if $slaves[_i].pornTypeSub > 0>><<set $pornStarSubs++>><</if>>
+		<<if $slaves[_i].pornTypeCumSlut > 0>><<set $pornStarCumSluts++>><</if>>
+		<<if $slaves[_i].pornTypeAnal > 0>><<set $pornStarAnals++>><</if>>
+		<<if $slaves[_i].pornTypeHumiliation > 0>><<set $pornStarHumiliations++>><</if>>
+		<<if $slaves[_i].pornTypeBoobs > 0>><<set $pornStarBoobs++>><</if>>
+		<<if $slaves[_i].pornTypeDom > 0>><<set $pornStarDoms++>><</if>>
+		<<if $slaves[_i].pornTypeSadist > 0>><<set $pornStarSadists++>><</if>>
+		<<if $slaves[_i].pornTypeMasochist > 0>><<set $pornStarMasochists++>><</if>>
+		<<if $slaves[_i].pornTypePregnancy > 0>><<set $pornStarPregnancySluts++>><</if>>
+	<</if>>
 <</for>>
 <<set $averageTrust = $averageTrust/_slavesContributing>>
 <<set $averageDevotion = $averageDevotion/_slavesContributing>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 719d156e32d..9d5305736bf 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -7664,170 +7664,12 @@
 	<<set $repGain += (10*$slaves[$i].prestige)>>
 <</if>>
 
-<<if $studio == 1>>
-<<if $slaves[$i].pornFameSpending > 0>>
-	<<set _oldFame = $slaves[$i].pornFame>>
-	<<if ($slaves[$i].pornFame < 35) && ($slaves[$i].prestige > 1)>>
-		Interest in porn of $object is very high, since $pronoun's already quite prestigious.
-                <<set $slaves[$i].pornFame += 1*$HackingSkillMultiplier>>
-	<<elseif ($slaves[$i].pornFame < 10) && ($slaves[$i].prestige > 0)>>
-		Interest in porn of $object is high, since $pronoun's already prestigious.
-                <<set $slaves[$i].pornFame += 1*$HackingSkillMultiplier>>
-	<</if>>
-	<<set $slaves[$i].pornFame += (($slaves[$i].pornFameSpending/1000)/$HackingSkillMultiplier)>>
-	<<if ($slaves[$i].prestige < 3) && ($slaves[$i].pornFame >= 100) && (_oldFame < 100)>>
-		<<set $slaves[$i].prestige = 3>>
-		@@.green;$pronounCap has become world famous for $possessive career in slave pornography!@@ Millions are now intimately familiar with
-		<<if $slaves[$i].fuckdoll > 0>>
-			<<set $slaves[$i].prestigeDesc = "It is world famous for its career in slave pornography. Millions are intimately familiar with the sight of it being used.">>
-			the sight of it being used,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing it offering itself">>
-		<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being raped.">>
-			the sight of her being raped,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her crying">>
-		<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds she makes when being throatfucked.">>
-			the sounds she makes when being throatfucked,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting facefucked">>
-		<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her screams of anal pain.">>
-			her screams of anal pain,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking a brutal assfuck">>
-		<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being gagfucked.">>
-			how she struggles when taking a fuck,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her screaming and struggling">>
-		<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her lewd striptease.">>
-			her lewd striptease,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stripping">>
-		<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her authentic pleasure.">>
-			her authentic pleasure,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her in ecstasy">>
-		<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her most perverted tendencies.">>
-			her most perverted tendencies,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something perverted">>
-		<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her devotion to her partners' pleasure.">>
-			her devotion to her partners' pleasure,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her smiling genuinely">>
-		<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her willingness to do things not repeated in polite company.">>
-			her willingness to do things not repeated in polite company,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something extreme">>
-		<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her holes stretched to their limits.">>
-			the sight of her holes stretched to their limits,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stuffed to her limit">>
-		<<elseif $slaves[$i].bellyPreg >= 1500>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the growth of her belly and her pregnant pussy.">>
-			the sight of her rounded belly and pregnant pussy,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pregnant pussy getting pounded">>
-		<<else>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being fucked.">>
-			the sight of her being fucked,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting fucked">>
-		<</if>>
-		<<set $trinkets.push($desc)>>
-		so it is now extremely prestigious to own $object.
-	<<elseif ($slaves[$i].prestige < 2) && ($slaves[$i].pornFame >= 35) && (_oldFame < 35)>>
-	<<set $slaves[$i].prestige = 2>>
-	@@.green;$pronounCap has become famous for $possessive recurring role in slave pornography!@@ Her many fans relish
-	<<if $slaves[$i].fuckdoll > 0>>
-		<<set $slaves[$i].prestigeDesc = "It is famous for her recurring role in slave pornography. Its many fans relish the sight of it being used.">>
-		the sight of it being used,
-	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being raped.">>
-		the sight of her being raped,
-	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
-		the sounds she makes when being throatfucked,
-	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her screams of anal pain.">>
-		her screams of anal pain,
-	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being gagfucked.">>
-		how she struggles when taking a fuck,
-	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her lewd striptease.">>
-		her lewd striptease,
-	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her authentic pleasure.">>
-		her authentic pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her most perverted tendencies.">>
-		her most perverted tendencies,
-	<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
-		her devotion to her partners' pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring in slave pornography. Her many fans relish her willingness to do things not repeated in polite company.">>
-		her willingness to do things not repeated in polite company,
-	<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring in slave pornography. Her many fans relish the sight of her holes stretched to their limits.">>
-		the sight of her holes stretched to their limits,
-	<<elseif $slaves[$i].bellyPreg >= 1500>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her rounded belly and pregnant pussy.">>
-		the sight of her rounded belly and pregnant pussy,
-	<<else>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being fucked.">>
-		the sight of her being fucked,
-	<</if>>
-	so it is now very prestigious to own $object.
-	<<elseif ($slaves[$i].prestige < 1) && ($slaves[$i].pornFame >= 10) && (_oldFame < 10)>>
-	<<set $slaves[$i].prestige = 1>>
-	@@.green;$pronounCap has become well known from slave pornography!@@ Thousands have enjoyed
-	<<if $slaves[$i].fuckdoll > 0>>
-		<<set $slaves[$i].prestigeDesc = "It is well known from slave pornography. Its many fans relish the sight of it being used.">>
-		the sight of it being used,
-	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being raped.">>
-		the sight of her being raped,
-	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
-		the sounds she makes when being throatfucked,
-	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her screams of anal pain.">>
-		her screams of anal pain,
-	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being gagfucked.">>
-		how she struggles when taking a fuck,
-	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her lewd striptease.">>
-		her lewd striptease,
-	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her authentic pleasure.">>
-		her authentic pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her most perverted tendencies.">>
-		her most perverted tendencies,
-	<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her devotion to her partners' pleasure.">>
-		her devotion to her partners' pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her willingness to do things not repeated in polite company.">>
-		her willingness to do things not repeated in polite company,
-	<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her holes stretched to their limits.">>
-		the sight of her holes stretched to their limits,
-	<<elseif $slaves[$i].bellyPreg >= 1500>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her rounded belly and pregnant pussy.">>
-		the sight of her rounded belly and pregnant pussy,
-	<<else>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being fucked.">>
-		the sight of her being fucked,
-	<</if>>
-	so it is now prestigious to own $object.
-	<</if>>
-	<<if ($slaves[$i].prestige >= 3)>>
-		Further paid publicity cannot increase $possessive fame, so subsidy of porn featuring $object has stopped.
-		<<set $slaves[$i].pornFameSpending = 0>>
-	<</if>>
-	<<set $slaves[$i].pornFame = Math.trunc($slaves[$i].pornFame)>>
-<</if>>
+/* saPorn */
+<<if $slaves[$i].pornPrestige == 3>>
+	$pronounCap is the whore people envision of when they think of $slaves[$i].pornFameType porn. $possessiveCap ever presence on the internet @@.green;boosts $possessive owner's reputation.@@
+	<<set $repGain += (100*$slaves[$i].pornPrestige)>>
+<<elseif $slaves[$i].pornFame > 0>>
+	<<include "SA Porn">>
 <</if>>
 
 <<if $seeAge != 0>>
diff --git a/src/uncategorized/saPorn.tw b/src/uncategorized/saPorn.tw
new file mode 100644
index 00000000000..14b6d84a35b
--- /dev/null
+++ b/src/uncategorized/saPorn.tw
@@ -0,0 +1,1343 @@
+:: SA Porn [nobr]
+
+<<if $studio == 1 && $slaves[$i].pornFeed == 1>> /* content is being produced */
+
+	/* rate of decay*/
+	<<if $slaves[$i].pornPrestige > 1>> /* 500k */
+		<<set _decayRate = 5000>>
+		<<set _viewership = (500/$HackingSkillMultiplier) + ($slaves[$i].pornFameSpending) + ($slaves[$i].face*2) + ($slaves[$i].prestige*10) - _decayRate>>
+	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
+		<<set _decayRate = 500>>
+		<<set _viewership = (150/$HackingSkillMultiplier) + ($slaves[$i].pornFameSpending/100) + ($slaves[$i].face) + ($slaves[$i].prestige*50) - _decayRate>>
+	<<else>>
+		<<set _decayRate = 30>>
+		<<set _viewership = (50/$HackingSkillMultiplier) + ($slaves[$i].pornFameSpending/1000) + ($slaves[$i].face/20) + ($slaves[$i].prestige*10) - _decayRate>>
+	<</if>>
+	<<set _viewerSoaking = 1>>
+	<<set_viewership = Math.trunc(_viewership)>>
+	<<set _oldFame = $slaves[$i].pornFame>>
+	
+	<<if $slaves[$i].pornPrestige > 1>>
+		$pronounCap is widely regarded in $slaves[$i].pornFameType porn, but with so many watchers, turn over is high.
+	<<elseif $slaves[$i].pornPrestige > 0>>
+		$pronounCap has a clear niche in <<print $object>>self in $slaves[$i].pornFameType porn, so there is a constant cycle of new arrivals and bored ex-watchers.
+	<<else>>
+		$pronounCap is borderline unknown, so $pronoun tends to hold onto what little watchers $pronoun has.
+	<</if>>
+	
+	<<if ($slaves[$i].prestige > 1)>>
+		Interest in porn of $object is very high, since $pronoun's already quite prestigious.
+	<<elseif ($slaves[$i].prestige > 0)>>
+		Interest in porn of $object is high, since $pronoun's already prestigious.
+	<</if>>
+	
+	<<if $slaves[$i].face > 95>>
+		$possessiveCap unbelievable face siezes the attention of all who see it.
+	<<elseif $slaves[$i].face > 40>>
+		$possessiveCap gorgeous face draws viewers in and keeps them watching.
+	<<elseif $slaves[$i].face > 10>>
+		$possessiveCap pretty face draws viewers in.
+	<<elseif $slaves[$i].face > 0>>
+		$possessiveCap face is attractive, but it attracts few viewers.
+	<<elseif $slaves[$i].face == 0>>
+		$possessiveCap face is completely average and makes no difference to $possessive viewers.
+	<<elseif $slaves[$i].face >= -10>>
+		$possessiveCap face, while attractive, is so average it turns off some viewers.
+	<<elseif $slaves[$i].face >= -40>>
+		$possessiveCap unattractive face causes viewers to move on.
+	<<elseif $slaves[$i].face >= -95>>
+		$possessiveCap ugly face drives viewers off.
+	<<else>>
+		$possessiveCap face chases off all but the most desperate viewers.
+	<</if>>
+	
+	<<if $PC.hacking > 0>>
+		With your hacking skills, you manage to tweak search algorithms to display $possessive content more often.
+	<<elseif $PC.hacking < 0>>
+		With your lack of skill with computers you manage to misidentify $possessive content, complicating searches.
+	<</if>>
+	
+	/*Paraphilias have the highest take of viewers*/
+	<<if $slaves[$i].sexualFlaw == "neglectful">>
+		<<if $slaves[$i].pornFocus == "neglectful" || $slaves[$i].pornFameType == "orgasm denial">> /*perhaps split these? */
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeNeglectful>>
+		<<set $slaves[$i].pornTypeNeglectful += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarNeglectfuls-1))>>
+		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+		
+		<<if $slaves[$i].pornFocus == "neglectful" || $slaves[$i].pornFameType == "orgasm denial">>
+			$possessiveCap lack of interest in getting off <<print $object>>self, even when at the verge of climax, makes $object a hit with viewers that enjoy orgasm denial.
+			<<if $slaves[$i].pornTypeNeglectful > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeNeglectful < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
+	<<elseif slaves[$i].pornTypeNeglectful > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeNeglectful>><</if>>
+		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualFlaw == "cum addict">>
+		<<if $slaves[$i].pornFocus == "cum addict" || $slaves[$i].pornFameType == "cum addiction">>
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeCumAddict>>
+		<<set $slaves[$i].pornTypeCumAddict += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarCumAddicts-1))>>
+		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+		
+		<<if $slaves[$i].pornFocus == "cum addict" || $slaves[$i].pornFameType == "bukkake">>
+			$possessiveCap complete obsession with cum makes $object a hit with viewers that enjoy bukkake and cum drinking.
+			<<if $slaves[$i].pornTypeCumAddict > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeCumAddict < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
+	<<elseif slaves[$i].pornTypeCumAddict > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumAddict>><</if>>
+		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualFlaw == "anal addict" && canDoAnal($slaves[$i])>>
+		<<if $slaves[$i].pornFocus == "anal addict" || $slaves[$i].pornFameType == "anal addiction">>
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeAnalAddict>>
+		<<set $slaves[$i].pornTypeAnalAddict += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarAnalAddicts-1))>>
+		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+		
+		<<if $slaves[$i].sexualFlaw == "anal addict" || $slaves[$i].pornFameType == "anal addiction">>
+			$possessiveCap complete obsession with taking things up $possessive ass makes $object a hit with viewers that enjoy hardcore anal.
+			<<if $slaves[$i].pornTypeAnalAddict > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeAnalAddict < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
+	<<elseif slaves[$i].pornTypeAnalAddict > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnalAddict>><</if>>
+		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualFlaw == "attention whore">>
+		<<if $slaves[$i].pornFocus == "attention whore" || $slaves[$i].pornFameType == "exhibition">>
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeAttentionWhore>>
+		<<set $slaves[$i].pornTypeAttentionWhore += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarAttentionWhores-1))>>
+		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "attention whore" || $slaves[$i].pornFameType == "exhibition">>
+			$possessiveCap complete obsession with being the center of attention makes $object a hit with viewers that savor $possessive frequent exhibitionism.
+			<<if $slaves[$i].pornTypeAttentionWhore > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeAttentionWhore < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
+	<<elseif slaves[$i].pornTypeAttentionWhore > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAttentionWhore>><</if>>
+		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualFlaw == "breast growth">>
+		<<if $slaves[$i].pornFocus == "breast growth" || $slaves[$i].pornFameType == "breast expansion">>
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeBreastGrowth>>
+		<<set $slaves[$i].pornTypeBreastGrowth += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarBreastGrowths-1))>>
+		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+		
+		<<if $slaves[$i].pornFocus == "breast growth" || $slaves[$i].pornFameType == "breast expansion">>
+			$possessiveCap complete obsession with the ever increasing size of $possessive tits makes $object a hit with viewers that enjoy enormous knockers and breast expansion.
+			<<if $slaves[$i].pornTypeBreastGrowth > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeBreastGrowth < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
+	<<elseif slaves[$i].pornTypeBreastGrowth > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreastGrowth>><</if>>
+		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualFlaw == "abusive">>
+		<<if $slaves[$i].pornFocus == "abusive" || $slaves[$i].pornFameType == "abuse">>
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeAbusive>>
+		<<set $slaves[$i].pornTypeAbusive += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarAbusives-1))>>
+		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+		
+		<<if $slaves[$i].pornFocus == "abusive" || $slaves[$i].pornFameType == "abuse">>
+			$possessiveCap wanton enjoyment of pleasure through force amuses viewers that enjoy rape and abuse.
+			<<if $slaves[$i].pornTypeAbusive > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeAbusive < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
+	<<elseif slaves[$i].pornTypeAbusive > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAbusive>><</if>>
+		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualFlaw == "malicious">>
+		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "malefic">>
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeMalicious>>
+		<<set $slaves[$i].pornTypeMalicious += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarMalicious-1))>>
+		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "malefic">>
+			$possessiveCap sexual appetite of other's suffering makes $object a hit with viewers that enjoy sadism and violence.
+			<<if $slaves[$i].pornTypeMalicious > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeMalicious < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
+	<<elseif slaves[$i].pornTypeMalicious > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMalicious>><</if>>
+		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualFlaw == "self hating">>
+		<<if $slaves[$i].pornFocus == "self hating" || $slaves[$i].pornFameType == "self hating">>
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeSelfHating>>
+		<<set $slaves[$i].pornTypeSelfHating += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarSelfHatings-1))>>
+		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+		
+		<<if $slaves[$i].pornFocus == "self hating" || $slaves[$i].pornFameType == "self hating">>
+			$possessiveCap complete disregard for $possessive own wellbeing makes $object a hit with viewers that enjoy watching $object suffer.
+			<<if $slaves[$i].pornTypeSelfHating > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeSelfHating < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
+	<<elseif slaves[$i].pornTypeSelfHating > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSelfHating>><</if>>
+		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualFlaw == "breeder">>
+		<<if $slaves[$i].pornFocus == "breeder" || $slaves[$i].pornFameType == "breeder">>
+			<<set _adjustedViewership = _viewership*2>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeBreeder>>
+		<<set $slaves[$i].pornTypeBreeder += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarBreeders-1))>>
+		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "breeder" || $slaves[$i].pornFameType == "breeder">>
+			$possessiveCap complete obsession with getting and staying pregnant makes $object a hit with viewers with all manner of pregnancy fetish, but particularly resonates with those as focused on it as $pronoun is.
+			<<if $slaves[$i].pornTypeBreeder > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeBreeder < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
+	<<elseif slaves[$i].pornTypeBreeder > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreeder>><</if>>
+		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
+	<</if>>
+
+	/*fetish*/
+	<<if $slaves[$i].fetish == "submissive">>
+		<<if $slaves[$i].pornFocus == "submissive" || $slaves[$i].pornFameType == "submissive">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeSub>>
+		<<set $slaves[$i].pornTypeSub += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarSubs-1))>>
+		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "submissive" || $slaves[$i].pornFameType == "submissive">>
+			With $possessive submissive streak, $pronoun has a clear advantage when it comes to fetish smut.
+			<<if $slaves[$i].pornTypeSub > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeSub < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
+	<<elseif slaves[$i].pornTypeSub > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSub>><</if>>
+		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
+	<</if>>
+	<<if $slaves[$i].fetish == "cumslut">>
+		<<if $slaves[$i].pornFocus == "cumslut" || $slaves[$i].pornFameType == "cum">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeCumSlut>>
+		<<set $slaves[$i].pornTypeCumSlut += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarCumSluts-1))>>
+		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+		
+		<<if $slaves[$i].pornFocus == "cumslut" || $slaves[$i].pornFameType == "cum">>
+			With $possessive taste for cum, $pronoun has a clear advantage when it comes to ejaculate-based smut.
+			<<if $slaves[$i].pornTypeCumSlut > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeCumSlut < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
+	<<elseif slaves[$i].pornTypeCumSlut > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumSlut>><</if>>
+		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
+	<</if>>
+	<<if $slaves[$i].fetish == "buttslut">>
+		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "booty">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeAnal>>
+		<<set $slaves[$i].pornTypeAnal += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarAnals-1))>>
+		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "booty">>
+			With $possessive fetish for asses, $pronoun finds in the company of viewers that love rear ends.
+			<<if $slaves[$i].pornTypeAnal > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeAnal < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Buttslut: (_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
+	<<elseif slaves[$i].pornTypeAnal > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnal>><</if>>
+		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
+	<</if>>
+	<<if $slaves[$i].fetish == "humiliation">>
+		<<if $slaves[$i].pornFocus == "humiliation" || $slaves[$i].pornFameType == "humiliating">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeHumiliation>>
+		<<set $slaves[$i].pornTypeHumiliation += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarHumiliations-1))>>
+		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "humiliation" || $slaves[$i].pornFameType == "humiliating">>
+			With $possessive fetish for humiliation, $pronoun has a clear advantage when it comes to demeaning smut.
+			<<if $slaves[$i].pornTypeHumiliation > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeHumiliation < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
+	<<elseif slaves[$i].pornTypeHumiliation > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeHumiliation>><</if>>
+		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
+	<</if>>
+	<<if $slaves[$i].fetish == "boobs">>
+		<<if $slaves[$i].pornFocus == "boobs" || $slaves[$i].pornFameType == "breast">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeBoobs>>
+		<<set $slaves[$i].pornTypeBoobs += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarBoobs-1))>>
+		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "boobs" || $slaves[$i].pornFameType == "breast">>
+			With $possessive fetish for tits, $pronoun has a clear advantage when it comes to breast focused smut.
+			<<if $slaves[$i].pornTypeBoobs > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeBoobs < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
+	<<elseif slaves[$i].pornTypeBoobs > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBoobs>><</if>>
+		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
+	<</if>>
+	<<if $slaves[$i].fetish == "dom">>
+		<<if $slaves[$i].pornFocus == "dom" || $slaves[$i].pornFameType == "dominant">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeDom>>
+		<<set $slaves[$i].pornTypeDom += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarDoms-1))>>
+		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "dom" || $slaves[$i].pornFameType == "dominant">>
+			With $possessive dominant streak, $pronoun has a clear advantage when it comes to fetish smut.
+			<<if $slaves[$i].pornTypeDom > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeDom < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
+	<<elseif slaves[$i].pornTypeDom > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDom>><</if>>
+		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
+	<</if>>
+	<<if $slaves[$i].fetish == "sadist">>
+		<<if $slaves[$i].pornFocus == "sadist" || $slaves[$i].pornFameType == "sadistic">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeSadist>>
+		<<set $slaves[$i].pornTypeSadist += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarSadists-1))>>
+		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "sadist" || $slaves[$i].pornFameType == "sadistic">>
+			With $possessive sadistic streak, $pronoun has a clear advantage when it comes to fetish smut.
+			<<if $slaves[$i].pornTypeSadist > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeSadist < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
+	<<elseif slaves[$i].pornTypeSadist > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSadist>><</if>>
+		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
+	<</if>>
+	<<if $slaves[$i].fetish == "masochist">>
+		<<if $slaves[$i].pornFocus == "masochist" || $slaves[$i].pornFameType == "masochistic">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeMasochist>>
+		<<set $slaves[$i].pornTypeMasochist += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarMasochists-1))>>
+		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "masochist" || $slaves[$i].pornFameType == "masochistic">>
+			With $possessive masochistic streak, $pronoun has a clear advantage when it comes to fetish smut.
+			<<if $slaves[$i].pornTypeMasochist > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeMasochist < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
+	<<elseif slaves[$i].pornTypeMasochist > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMasochist>><</if>>
+		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
+	<</if>>
+	<<if $slaves[$i].fetish == "pregnancy">>
+		<<if $slaves[$i].pornFocus == "pregnancy" || $slaves[$i].pornFameType == "pregnancy fetish">>
+			<<set _adjustedViewership = _viewership*2.5>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypePregnancy>>
+		<<set $slaves[$i].pornTypePregnancy += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarPregnancySluts-1))>>
+		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "pregnancy" || $slaves[$i].pornFameType == "pregnancy fetish">>
+			With $possessive fetish for all things pregnancy, $pronoun has a clear advantage when it comes to fetish smut.
+			<<if $slaves[$i].pornTypePregnancy > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypePregnancy < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
+	<<elseif slaves[$i].pornTypePregnancy > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePregnancy>><</if>>
+		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
+	<</if>>
+	
+	/*General*/
+
+	<<if $slaves[$i].fuckdoll > 0>>
+		<<if $slaves[$i].pornFocus == "fuckdoll" || $slaves[$i].pornFameType == "fuckdoll">>
+			<<set _adjustedViewership = _viewership*4>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeFuckdoll>>
+		<<set $slaves[$i].pornTypeFuckdoll += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarFuckdolls-1))>>
+		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "fuckdoll" || $slaves[$i].pornFameType == "fuckdoll">>
+			$possessiveCap latex encased body attracts a variety of viewers with tastes ranging from bondage to dolls.
+			<<if $slaves[$i].pornTypeFuckdoll > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeFuckdoll < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
+	<<elseif slaves[$i].pornTypeFuckdoll > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeFuckdoll>><</if>>
+		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
+	<</if>>
+	<<if ($slaves[$i].devotion < -20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
+		<<if $slaves[$i].pornFocus == "rape" || $slaves[$i].pornFameType == "rape">>
+			<<set _adjustedViewership = _viewership*4>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeRape>>
+		<<set $slaves[$i].pornTypeRape += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarRapees-1))>>
+		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "rape" || $slaves[$i].pornFameType == "rape">>
+			$pronounCap is too unbroken for consensual sex, but $possessive viewers wouldn't want it any other way.
+			<<if $slaves[$i].pornTypeRape > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeRape < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
+	<<elseif slaves[$i].pornTypeRape > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRape>><</if>>
+		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
+	<</if>>
+	<<if $slaves[$i].bellyPreg > 500>>
+		<<if $slaves[$i].pornFocus == "preggo" || $slaves[$i].pornFameType == "preggo">>
+			<<set _adjustedViewership = _viewership*4>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypePreggo>>
+		<<set $slaves[$i].pornTypePreggo += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarPreggos-1))>>
+		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "preggo" || $slaves[$i].pornFameType == "preggo">>
+			$possessiveCap gravid swell may be a turn off to some, but the maiesiophiliacs love it.
+			<<if $slaves[$i].pornTypePreggo > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypePreggo < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
+	<<elseif slaves[$i].pornTypePreggo > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePreggo>><</if>>
+		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
+	<</if>>
+	<<if $slaves[$i].weight > 95>>
+		<<if $slaves[$i].pornFocus == "BBW" || $slaves[$i].pornFameType == "BBW">>
+			<<set _adjustedViewership = _viewership*4>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeBBW>>
+		<<set $slaves[$i].pornTypeBBW += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarBBWs-1))>>
+		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "BBW" || $slaves[$i].pornFameType == "BBW">>
+			$possessiveCap weight gives $object a heavy allure to the chubby chasers and BBS lovers out there.
+			<<if $slaves[$i].pornTypeBBW > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeBBW < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
+	<<elseif slaves[$i].pornTypeBBW > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBBW>><</if>>
+		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
+	<</if>>
+	<<if $slaves[$i].visualAge <= 12>>
+		<<if $slaves[$i].pornFocus == "loli" || $slaves[$i].pornFameType == "underage">>
+			<<set _adjustedViewership = _viewership*4>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeLoli>>
+		<<set $slaves[$i].pornTypeLoli += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarLolis-1))>>
+		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "loli" || $slaves[$i].pornFameType == "underage">>
+			$possessiveCap young age gives $object a dangerous edge and a number of careful viewers.
+			<<if $slaves[$i].pornTypeLoli > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeLoli < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
+	<<elseif slaves[$i].pornTypeLoli > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeLoli>><</if>>
+		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
+	<</if>>
+	<<if ($slaves[$i].weight > 30 && $slaves[$i].diet == "fattening") || ($slaves[$i].inflation > 0 && $slaves[$i].inflationType == "food")>>
+		<<if $slaves[$i].pornFocus == "gainer" || $slaves[$i].pornFameType == "weight gain">>
+			<<set _adjustedViewership = _viewership*4>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeGainer>>
+		<<set $slaves[$i].pornTypeGainer += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarGainers-1))>>
+		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "gainer" || $slaves[$i].pornFameType == "weight gain">>
+			$possessiveCap expanding waistline attracts those who enjoy seeing a girl pack on the pounds while stuffing $possessive face.
+			<<if $slaves[$i].pornTypeGainer > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeGainer < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
+	<<elseif slaves[$i].pornTypeGainer > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGainer>><</if>>
+		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
+	<</if>>
+	<<if canPenetrate($slaves[$i]) && $slaves[$i].dick > 3>>
+		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "well hung">>
+			<<set _adjustedViewership = _viewership*4>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeStud>>
+		<<set $slaves[$i].pornTypeStud += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarStuds-1))>>
+		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud, 0, 1000000000)>>
+		<<set _viewerSoaking++>>
+
+		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "well hung">>
+			$possessiveCap powerful erection excites those who see it, especially when it is put to good use.
+			<<if $slaves[$i].pornTypeStud > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeStud < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
+	<<elseif slaves[$i].pornTypeStud > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStud>><</if>>
+		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
+	<</if>>
+	<<if $slaves[$i].pornFocus == "porn" || $slaves[$i].pornFameType === "">>
+		<<set _adjustedViewership = _viewership*5>>
+	<<else>>
+		<<set _adjustedViewership = _viewership>>
+	<</if>>
+	<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGeneral>><</if>>
+	<<set $slaves[$i].pornTypeGeneral += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStars-1))>>
+	<<set $slaves[$i].pornTypeGeneral = Math.clamp($slaves[$i].pornTypeGeneral, 0, 1000000000)>>
+	<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeGeneral).<</if>>
+
+	/*Quirks are low and unlikely, requiring focus to push into the limelight*/
+	<<if $slaves[$i].sexualQuirk == "gagfuck queen">>
+		<<if $slaves[$i].pornFocus == "gagfuck queen" || $slaves[$i].pornFameType == "deepthroat">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeDeepThroat>>
+		<<set $slaves[$i].pornTypeDeepThroat += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarDeepThroats-1))>>
+		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "gagfuck queen" || $slaves[$i].pornFameType == "deepthroat">>
+			$possessiveCap impresses with just how much dick can slip down $possessive throat.
+			<<if $slaves[$i].pornTypeDeepThroat > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeDeepThroat < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
+	<<elseif slaves[$i].pornTypeDeepThroat > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDeepThroat>><</if>>
+		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualQuirk == "strugglefuck queen" && (canDoVaginal($slaves[$i]) || canDoAnal($slaves[$i]))>>
+		<<if $slaves[$i].pornFocus == "strugglefuck queen" || $slaves[$i].pornFameType == "unwilling">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeStruggleFuck>>
+		<<set $slaves[$i].pornTypeStruggleFuck += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarStruggleFucks-1))>>
+		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "strugglefuck queen" || $slaves[$i].pornFameType == "unwilling">>
+			$possessiveCap impresses with $possessive ability to put up just the right amount of fight during sex.
+			<<if $slaves[$i].pornTypeStruggleFuck > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeStruggleFuck < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
+	<<elseif slaves[$i].pornTypeStruggleFuck > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStruggleFuck>><</if>>
+		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualQuirk == "painal queen" && canDoAnal($slaves[$i])>>
+		<<if $slaves[$i].pornFocus == "painal queen" || $slaves[$i].pornFameType == "hardcore anal">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypePainal>>
+		<<set $slaves[$i].pornTypePainal += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarPainals-1))>>
+		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "painal queen" || $slaves[$i].pornFameType == "hardcore anal">>
+			$possessiveCap impresses with $possessive ability to push $possessive anus to its limit.
+			<<if $slaves[$i].pornTypePainal > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypePainal < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Painal Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
+	<<elseif slaves[$i].pornTypePainal > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePainal>><</if>>
+		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualQuirk == "tease">>
+		<<if $slaves[$i].pornFocus == "tease" || $slaves[$i].pornFameType == "softcore">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeTease>>
+		<<set $slaves[$i].pornTypeTease += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarTeases-1))>>
+		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "tease" || $slaves[$i].pornFameType == "softcore">>
+			$possessiveCap tantalizes viewers with $possessive suggestive moves.
+			<<if $slaves[$i].pornTypeTease > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeTease < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
+	<<elseif slaves[$i].pornTypeTease > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeTease>><</if>>
+		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualQuirk == "romantic">>
+		<<if $slaves[$i].pornFocus == "romantic" || $slaves[$i].pornFameType == "romantic">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeRomantic>>
+		<<set $slaves[$i].pornTypeRomantic += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarRomantics-1))>>
+		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "romantic" || $slaves[$i].pornFameType == "romantic">>
+			$possessiveCap draws viewers in with $possessive genuine pleasure.
+			<<if $slaves[$i].pornTypeRomantic > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeRomantic < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
+	<<elseif slaves[$i].pornTypeRomantic > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRomantic>><</if>>
+		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualQuirk == "perverted">>
+		<<if $slaves[$i].pornFocus == "perverted" || $slaves[$i].pornFameType == "really perverted">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypePervert>>
+		<<set $slaves[$i].pornTypePervert += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarPerverts-1))>>
+		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "perverted" || $slaves[$i].pornFameType == "really perverted">>
+			$possessiveCap perverted tastes shocks and allures viewers in ways they didn't even realize.
+			<<if $slaves[$i].pornTypePervert > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypePervert < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
+	<<elseif slaves[$i].pornTypePervert > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePervert>><</if>>
+		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualQuirk == "caring">>
+		<<if $slaves[$i].pornFocus == "caring" || $slaves[$i].pornFameType == "voyeur">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeCaring>>
+		<<set $slaves[$i].pornTypeCaring += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarCarings-1))>>
+		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "caring" || $slaves[$i].pornFameType == "voyeur">>
+			$possessiveCap sincere devotion to $possessive partner's pleasure draws in viewers with an interest in watching couples fuck.
+			<<if $slaves[$i].pornTypeCaring > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeCaring < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
+	<<elseif slaves[$i].pornTypeCaring > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCaring>><</if>>
+		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualQuirk == "unflinching">>
+		<<if $slaves[$i].pornFocus == "unflinching" || $slaves[$i].pornFameType == "unspeakable">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeUnflinching>>
+		<<set $slaves[$i].pornTypeUnflinching += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarUnflinchings-1))>>
+		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "unflinching" || $slaves[$i].pornFameType == "unspeakable">>
+			$possessiveCap willingness to do anything catches the attention of those who enjoy acts that should never be mentioned to others.
+			<<if $slaves[$i].pornTypeUnflinching > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeUnflinching < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
+	<<elseif slaves[$i].pornTypeUnflinching > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeUnflinching>><</if>>
+		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
+	<</if>>
+	<<if $slaves[$i].sexualQuirk == "size queen">>
+		<<if $slaves[$i].pornFocus == "size queen" || $slaves[$i].pornFameType == "huge insertion">>
+			<<set _adjustedViewership = _viewership*6>>
+		<<elseif $slaves[$i].pornFocus != "none">>
+			<<set _adjustedViewership = _viewership*.5>>
+		<</if>>
+		<<set _oldPorn = $slaves[$i].pornTypeSizeQueen>>
+		<<set $slaves[$i].pornTypeSizeQueen += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarSizeQueens-1))>>
+		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen, 0, 1000000000)>>
+
+		<<if $slaves[$i].pornFocus == "size queen" || $slaves[$i].pornFameType == "huge insertion">>
+			$possessiveCap intent on taking the largest things possible into her holes draws in viewers with an interest for huge insertions.
+			<<if $slaves[$i].pornTypeSizeQueen > _oldPorn>>
+				Viewship @@.green:increased@@ this week.
+			<<elseif $slaves[$i].pornTypeSizeQueen < _oldPorn>>
+				Viewship @@.red:declined@@ this week.
+			<<else>>
+				Viewship @@.yellow:was stable@@ this week.
+			<</if>>
+		<</if>>
+		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
+	<<elseif slaves[$i].pornTypeSizeQueen > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSizeQueen>><</if>>
+		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
+	<</if>>
+
+	<<set $slaves[$i].pornFame = $slaves[$i].pornTypeGeneral + $slaves[$i].pornTypeFuckdoll + $slaves[$i].pornTypeRape + $slaves[$i].pornTypePreggo + $slaves[$i].pornTypeBBW + $slaves[$i].pornTypeGainer + $slaves[$i].pornTypeStud + $slaves[$i].pornTypeLoli + $slaves[$i].pornTypeDeepThroat + $slaves[$i].pornTypeStruggleFuck + $slaves[$i].pornTypePainal + $slaves[$i].pornTypeTease + $slaves[$i].pornTypeRomantic + $slaves[$i].pornTypePervert + $slaves[$i].pornTypeCaring + $slaves[$i].pornTypeUnflinching + $slaves[$i].pornTypeSizeQueen + $slaves[$i].pornTypeNeglectful + $slaves[$i].pornTypeCumAddict + $slaves[$i].pornTypeAnalAddict + $slaves[$i].pornTypeAttentionWhore + $slaves[$i].pornTypeBreastGrowth + $slaves[$i].pornTypeAbusive + $slaves[$i].pornTypeMalicious + $slaves[$i].pornTypeSelfHating + $slaves[$i].pornTypeBreeder + $slaves[$i].pornTypeSub + $slaves[$i].pornTypeCumSlut + $slaves[$i].pornTypeAnal + $slaves[$i].pornTypeHumiliation + $slaves[$i].pornTypeBoobs + $slaves[$i].pornTypeDom + $slaves[$i].pornTypeSadist + $slaves[$i].pornTypeMasochist + $slaves[$i].pornTypePregnancy>>
+	<<set $slaves[$i].pornFame = Math.trunc($slaves[$i].pornFame)>>
+
+	<<if _oldFame > $slaves[$i].pornFame>>
+		Overall, $possessive online fame @@.red:dropped@@ this week.
+	<<elseif _oldFame < $slaves[$i].pornFame>>
+		Overall, $possessive online fame @@.green:rose@@ this week.
+	<<else>>
+		Surprisingly, $possessive online fame @@.yellow;remained consistant@@ this week despite how fickle watchers can be.
+	<</if>>
+	
+	/* prestige gen */
+	<<if ($slaves[$i].prestige < 3) && ($slaves[$i].pornFame >= 100) && (_oldFame < 100)>>
+		<<set $slaves[$i].prestige = 3>>
+		@@.green;$pronounCap has become world famous for $possessive career in slave pornography!@@ Millions are now intimately familiar with
+		<<if $slaves[$i].fuckdoll > 0>>
+			<<set $slaves[$i].prestigeDesc = "It is world famous for its career in slave pornography. Millions are intimately familiar with the sight of it being used.">>
+			the sight of it being used,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing it offering itself">>
+		<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being raped.">>
+			the sight of her being raped,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her crying">>
+		<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds she makes when being throatfucked.">>
+			the sounds she makes when being throatfucked,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting facefucked">>
+		<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her screams of anal pain.">>
+			her screams of anal pain,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking a brutal assfuck">>
+		<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being gagfucked.">>
+			how she struggles when taking a fuck,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her screaming and struggling">>
+		<<elseif ($slaves[$i].sexualQuirk == "tease")>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her lewd striptease.">>
+			her lewd striptease,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stripping">>
+		<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her authentic pleasure.">>
+			her authentic pleasure,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her in ecstasy">>
+		<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her most perverted tendencies.">>
+			her most perverted tendencies,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something perverted">>
+		<<elseif ($slaves[$i].sexualQuirk == "caring")>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her devotion to her partners' pleasure.">>
+			her devotion to her partners' pleasure,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her smiling genuinely">>
+		<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her willingness to do things not repeated in polite company.">>
+			her willingness to do things not repeated in polite company,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something extreme">>
+		<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her holes stretched to their limits.">>
+			the sight of her holes stretched to their limits,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stuffed to her limit">>
+		<<elseif $slaves[$i].bellyPreg >= 1500>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the growth of her belly and her pregnant pussy.">>
+			the sight of her rounded belly and pregnant pussy,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pregnant pussy getting pounded">>
+		<<else>>
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being fucked.">>
+			the sight of her being fucked,
+			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting fucked">>
+		<</if>>
+		<<set $trinkets.push($desc)>>
+		so it is now extremely prestigious to own $object.
+	<<elseif ($slaves[$i].prestige < 2) && ($slaves[$i].pornFame >= 35) && (_oldFame < 35)>>
+	<<set $slaves[$i].prestige = 2>>
+	@@.green;$pronounCap has become famous for $possessive recurring role in slave pornography!@@ Her many fans relish
+	<<if $slaves[$i].fuckdoll > 0>>
+		<<set $slaves[$i].prestigeDesc = "It is famous for her recurring role in slave pornography. Its many fans relish the sight of it being used.">>
+		the sight of it being used,
+	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being raped.">>
+		the sight of her being raped,
+	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
+		the sounds she makes when being throatfucked,
+	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her screams of anal pain.">>
+		her screams of anal pain,
+	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being gagfucked.">>
+		how she struggles when taking a fuck,
+	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her lewd striptease.">>
+		her lewd striptease,
+	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her authentic pleasure.">>
+		her authentic pleasure,
+	<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her most perverted tendencies.">>
+		her most perverted tendencies,
+	<<elseif ($slaves[$i].sexualQuirk == "caring")>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
+		her devotion to her partners' pleasure,
+	<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring in slave pornography. Her many fans relish her willingness to do things not repeated in polite company.">>
+		her willingness to do things not repeated in polite company,
+	<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring in slave pornography. Her many fans relish the sight of her holes stretched to their limits.">>
+		the sight of her holes stretched to their limits,
+	<<elseif $slaves[$i].bellyPreg >= 1500>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her rounded belly and pregnant pussy.">>
+		the sight of her rounded belly and pregnant pussy,
+	<<else>>
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being fucked.">>
+		the sight of her being fucked,
+	<</if>>
+	so it is now very prestigious to own $object.
+	<<elseif ($slaves[$i].prestige < 1) && ($slaves[$i].pornFame >= 10) && (_oldFame < 10)>>
+	<<set $slaves[$i].prestige = 1>>
+	@@.green;$pronounCap has become well known from slave pornography!@@ Thousands have enjoyed
+	<<if $slaves[$i].fuckdoll > 0>>
+		<<set $slaves[$i].prestigeDesc = "It is well known from slave pornography. Its many fans relish the sight of it being used.">>
+		the sight of it being used,
+	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being raped.">>
+		the sight of her being raped,
+	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
+		the sounds she makes when being throatfucked,
+	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her screams of anal pain.">>
+		her screams of anal pain,
+	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being gagfucked.">>
+		how she struggles when taking a fuck,
+	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her lewd striptease.">>
+		her lewd striptease,
+	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her authentic pleasure.">>
+		her authentic pleasure,
+	<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her most perverted tendencies.">>
+		her most perverted tendencies,
+	<<elseif ($slaves[$i].sexualQuirk == "caring")>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her devotion to her partners' pleasure.">>
+		her devotion to her partners' pleasure,
+	<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her willingness to do things not repeated in polite company.">>
+		her willingness to do things not repeated in polite company,
+	<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her holes stretched to their limits.">>
+		the sight of her holes stretched to their limits,
+	<<elseif $slaves[$i].bellyPreg >= 1500>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her rounded belly and pregnant pussy.">>
+		the sight of her rounded belly and pregnant pussy,
+	<<else>>
+		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being fucked.">>
+		the sight of her being fucked,
+	<</if>>
+	so it is now prestigious to own $object.
+	<</if>>
+	<<if ($slaves[$i].prestige >= 3)>>
+		Further paid publicity cannot increase $possessive fame, so subsidy of porn featuring $object has stopped.
+		<<set $slaves[$i].pornFameSpending = 0>>
+	<</if>>
+	
+<<else>> /* popularity decay from lack of new content */
+
+	<<if $slaves[$i].pornPrestige > 1>> /* 500k */
+		<<set _decayRate = 5000>>
+	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
+		<<set _decayRate = 500>>
+	<<else>>
+		<<set _decayRate = 30>>
+	<</if>>
+
+	<<if slaves[$i].pornTypeNeglectful > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeNeglectful>><</if>>
+		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeCumAddict > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumAddict>><</if>>
+		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeAnalAddict > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnalAddict>><</if>>
+		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeAttentionWhore > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAttentionWhore>><</if>>
+		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeBreastGrowth > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreastGrowth>><</if>>
+		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeAbusive > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAbusive>><</if>>
+		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeMalicious > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMalicious>><</if>>
+		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeSelfHating > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSelfHating>><</if>>
+		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeBreeder > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreeder>><</if>>
+		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
+	<</if>>
+
+	<<if slaves[$i].pornTypeSub > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSub>><</if>>
+		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeCumSlut > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumSlut>><</if>>
+		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeAnal > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnal>><</if>>
+		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeHumiliation > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeHumiliation>><</if>>
+		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeBoobs > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBoobs>><</if>>
+		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeDom > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDom>><</if>>
+		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeSadist > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSadist>><</if>>
+		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeMasochist > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMasochist>><</if>>
+		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypePregnancy > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePregnancy>><</if>>
+		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
+	<</if>>
+
+	<<if slaves[$i].pornTypeFuckdoll > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeFuckdoll>><</if>>
+		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeRape > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRape>><</if>>
+		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypePreggo > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePreggo>><</if>>
+		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeBBW > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBBW>><</if>>
+		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeLoli > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeLoli>><</if>>
+		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeGainer > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGainer>><</if>>
+		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeStud > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStud>><</if>>
+		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeGeneral > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGeneral>><</if>>
+		<<set $slaves[$i].pornTypeGeneral = Math.clamp($slaves[$i].pornTypeGeneral-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeGeneral).<</if>>
+	<</if>>
+
+	<<if slaves[$i].pornTypeDeepThroat > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDeepThroat>><</if>>
+		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeStruggleFuck > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStruggleFuck>><</if>>
+		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypePainal > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePainal>><</if>>
+		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeTease > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeTease>><</if>>
+		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeRomantic > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRomantic>><</if>>
+		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypePervert > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePervert>><</if>>
+		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeCaring > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCaring>><</if>>
+		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeUnflinching > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeUnflinching>><</if>>
+		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
+	<</if>>
+	<<if slaves[$i].pornTypeSizeQueen > 0>>
+		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSizeQueen>><</if>>
+		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen-(_decayRate*2), 0, 1000000000)>>
+		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
+	<</if>>
+
+	<<set $slaves[$i].pornFame = $slaves[$i].pornTypeGeneral + $slaves[$i].pornTypeFuckdoll + $slaves[$i].pornTypeRape + $slaves[$i].pornTypePreggo + $slaves[$i].pornTypeBBW + $slaves[$i].pornTypeGainer + $slaves[$i].pornTypeStud + $slaves[$i].pornTypeLoli + $slaves[$i].pornTypeDeepThroat + $slaves[$i].pornTypeStruggleFuck + $slaves[$i].pornTypePainal + $slaves[$i].pornTypeTease + $slaves[$i].pornTypeRomantic + $slaves[$i].pornTypePervert + $slaves[$i].pornTypeCaring + $slaves[$i].pornTypeUnflinching + $slaves[$i].pornTypeSizeQueen + $slaves[$i].pornTypeNeglectful + $slaves[$i].pornTypeCumAddict + $slaves[$i].pornTypeAnalAddict + $slaves[$i].pornTypeAttentionWhore + $slaves[$i].pornTypeBreastGrowth + $slaves[$i].pornTypeAbusive + $slaves[$i].pornTypeMalicious + $slaves[$i].pornTypeSelfHating + $slaves[$i].pornTypeBreeder + $slaves[$i].pornTypeSub + $slaves[$i].pornTypeCumSlut + $slaves[$i].pornTypeAnal + $slaves[$i].pornTypeHumiliation + $slaves[$i].pornTypeBoobs + $slaves[$i].pornTypeDom + $slaves[$i].pornTypeSadist + $slaves[$i].pornTypeMasochist + $slaves[$i].pornTypePregnancy>>
+	<<set $slaves[$i].pornFame = Math.trunc($slaves[$i].pornFame)>>
+
+<</if>>
\ No newline at end of file
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 76a5f6fccbf..9441f37b982 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1339,30 +1339,126 @@ Relationship rules: ''<span id="relationshipRules">$activeSlave.relationshipRule
 <<link "Permissive">><<set $activeSlave.relationshipRules = "permissive">><<replace "#relationshipRules">>$activeSlave.relationshipRules<</replace>><</link>>
 
 <<if $studio == 1>>
-	<br>
-	<<if $activeSlave.pornFameSpending == -1>>
-		The media hub is not releasing highlights of $his sex life. [[Release|Slave Interact][$activeSlave.pornFameSpending = 0]]
+	<br><br>
+	<<if $activeSlave.pornPrestige == 3>>
+		//$He is so prestigious in the realm of $activeSlave.pornFameType porn that $his fame is self-sustaining.//
+	<<elseif $activeSlave.pornFeed == 0>>
+		The media hub is not releasing highlights of $his sex life. [[Release|Slave Interact][$activeSlave.pornFeed = 1]]
 	<<else>>
-		<<if $activeSlave.prestige < 3>>
-			The media hub is releasing
-			<<if $activeSlave.pornFameSpending  < 500>>
-				minimal
-			<</if>> highlights of $his sex life.
-			<<if $activeSlave.pornFameSpending == 0>>
-				[[Begin publicizing?|Slave Interact][$activeSlave.pornFameSpending += 1000]]
-				//Will cost <<print cashFormat(1000)>> weekly.//
+		The media hub is releasing highlights of $his sex life <<if $activeSlave.pornFameSpending  < 500>>to those who can find it<<elseif $activeSlave.pornFameSpending  < 2500>>on several websites<<elseif $activeSlave.pornFameSpending  > 5000>>through your old distributor<<else>>on many websites<</if>>.
+		<<if $activeSlave.pornFameSpending == 0>>
+			[[Begin publicizing?|Slave Interact][$activeSlave.pornFameSpending += 1000]]
+			//Will cost <<print cashFormat(1000)>> weekly.//
+		<<else>>
+			<<print cashFormat($activeSlave.pornFameSpending)>> weekly is spent to publicize them.
+			<<if $activeSlave.pornFameSpending < 5000>>
+				[[Increase|Slave Interact][$activeSlave.pornFameSpending += 1000]] |
+			<</if>>
+			[[Decrease|Slave Interact][$activeSlave.pornFameSpending -= 1000]] |
+			[[Halt|Slave Interact][$activeSlave.pornFeed = 0, $activeSlave.pornFocus = "none"]]
+		<</if>>
+		<<if $studioFeed == 1>>
+			<br>
+			<<if $activeSlave.pornPrestige > 0>>
+				$He is known for $activeSlave.pornFameType porn and viewers demand nothing else from $him.
+			<<elseif $activeSlave.pornFame < 1000>>
+				$He lacks the fame in porn needed to discern what $his feed is getting tagged as.
 			<<else>>
-				<<print cashFormat($activeSlave.pornFameSpending)>> weekly is spent to publicize them.
-				<<if $activeSlave.pornFameSpending < 5000>>
-					[[Increase|Slave Interact][$activeSlave.pornFameSpending += 1000]] |
+				<<if $activeSlave.pornFocus == "none">>
+					You are allowing $his viewers to guide the direction of $his content.
+				<<else>>
+					You are focusing attention on the $activeSlave.pornFocus aspect of $his content.
 				<</if>>
-				[[Decrease|Slave Interact][$activeSlave.pornFameSpending -= 1000]]
+				<<switch $activeSlave.sexualFlaw>>
+				<<case "neglectful">>
+					[[Neglectful|Slave Interact][$activeSlave.pornFocus = "neglectful"]] |
+				<<case "cum addict">>
+					[[Cum addiction|Slave Interact][$activeSlave.pornFocus = "cum addict"]] |
+				<<case "anal addict">>
+					[[Anal addiction|Slave Interact][$activeSlave.pornFocus = "anal addict"]] |
+				<<case "attention whore">>
+					[[Attention whore|Slave Interact][$activeSlave.pornFocus = "attention whore"]] |
+				<<case "breast growth">>
+					[[Breast growth|Slave Interact][$activeSlave.pornFocus = "breast growth"]] |
+				<<case "abusive">>
+					[[Abusive|Slave Interact][$activeSlave.pornFocus = "abusive"]] |
+				<<case "malicious">>
+					[[Malicious|Slave Interact][$activeSlave.pornFocus = "malicious"]] |
+				<<case "self hating">>
+					[[Self hating|Slave Interact][$activeSlave.pornFocus = "self hating"]] |
+				<<case "breeder">>
+					[[Breeder|Slave Interact][$activeSlave.pornFocus = "breeder"]] |
+				<</switch>>
+
+				<<switch $activeSlave.fetish>>
+				<<case "submissive">>
+					[[Submissive|Slave Interact][$activeSlave.pornFocus = "submissive"]] |
+				<<case "cumslut">>
+					[[Cumslut|Slave Interact][$activeSlave.pornFocus = "cumslut"]] |
+				<<case "buttslut">>
+					[[Buttslut|Slave Interact][$activeSlave.pornFocus = "buttslut"]] |
+				<<case "humiliation">>
+					[[Humiliation|Slave Interact][$activeSlave.pornFocus = "humiliation"]] |
+				<<case "boobs">>
+					[[Boobs|Slave Interact][$activeSlave.pornFocus = "boobs"]] |
+				<<case "dom">>
+					[[Dominant|Slave Interact][$activeSlave.pornFocus = "dom"]] |
+				<<case "sadist">>
+					[[Sadist|Slave Interact][$activeSlave.pornFocus = "sadist"]] |
+				<<case "masochist">>
+					[[Masochist|Slave Interact][$activeSlave.pornFocus = "masochist"]] |
+				<<case "pregnancy">>
+					[[Pregnancy|Slave Interact][$activeSlave.pornFocus = "pregnancy"]] |
+				<</switch>>
+				
+				<<switch $activeSlave.sexualQuirk>>
+				<<case "gagfuck queen">>
+					[[Gagfuck queen|Slave Interact][$activeSlave.pornFocus = "gagfuck queen"]] |
+				<<case "strugglefuck queen">>
+					[[Strugglefuck queen|Slave Interact][$activeSlave.pornFocus = "strugglefuck queen"]] |
+				<<case "painal queen">>
+					[[Painal queen|Slave Interact][$activeSlave.pornFocus = "painal queen"]] |
+				<<case "tease">>
+					[[Tease|Slave Interact][$activeSlave.pornFocus = "tease"]] |
+				<<case "romantic">>
+					[[Romantic|Slave Interact][$activeSlave.pornFocus = "romantic"]] |
+				<<case "perverted">>
+					[[Perverted|Slave Interact][$activeSlave.pornFocus = "perverted"]] |
+				<<case "caring">>
+					[[Caring|Slave Interact][$activeSlave.pornFocus = "caring"]] |
+				<<case "unflinching">>
+					[[Unspeakable|Slave Interact][$activeSlave.pornFocus = "unspeakable"]] |
+				<<case "size queen">>
+					[[Size queen|Slave Interact][$activeSlave.pornFocus = "size queen"]] |
+				<</switch>>
+
+				<<if $activeSlave.fuckdoll > 0>>
+					[[Fuckdoll|Slave Interact][$activeSlave.pornFocus = "fuckdoll"]] |
+				<</if>>
+				<<if ($activeSlave.devotion < -20) && ($activeSlave.analCount + $activeSlave.vaginalCount > 0)>>
+					[[Rape|Slave Interact][$activeSlave.pornFocus = "rape"]] |
+				<</if>>
+				<<if $activeSlave.bellyPreg > 500>>
+					[[Preggo|Slave Interact][$activeSlave.pornFocus = "preggo"]] |
+				<</if>>
+				<<if $activeSlave.weight > 95>>
+					[[BBW|Slave Interact][$activeSlave.pornFocus = "BBW"]] |
+				<</if>>
+				<<if $activeSlave.visualAge <= 12>>
+					[[Underage|Slave Interact][$activeSlave.pornFocus = "underage"]] |
+				<</if>>
+				<<if ($activeSlave.weight > 30 && $activeSlave.diet == "fattening") || ($activeSlave.inflation > 0 && $activeSlave.inflationType == "food")>>
+					[[Weight gain|Slave Interact][$activeSlave.pornFocus = "weight gain"]] |
+				<</if>>
+				<<if canPenetrate($activeSlave) && $activeSlave.dick > 3>>
+					[[Big dick|Slave Interact][$activeSlave.pornFocus = "well hung"]] |
+				<</if>>
+
+				[[Smut is smut|Slave Interact][$activeSlave.pornFocus = "porn"]] |
+				[[No focus|Slave Interact][$activeSlave.pornFocus = "none"]] |
 			<</if>>
-		<<else>>
-			//$He is so prestigious that subsidizing coverage of $his sex life will not increase $his fame.//
 		<</if>>
 	<</if>>
-	<br>
 <</if>>
 
 <br><br>
diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw
index 1ad45982fda..4c1c8e2ee58 100644
--- a/src/utility/slaveCreationWidgets.tw
+++ b/src/utility/slaveCreationWidgets.tw
@@ -6,7 +6,7 @@
 	Called from Gen XX, Gen XY, CheatMode DB, InitNationalities.
 %/
 <<widget "BaseSlave">>
-	<<set $activeSlave = {slaveName: "blank", slaveSurname: 0, birthName: "blank", birthSurname: 0, genes: "XX", pronoun: "she", possessive: "her", possessivePronoun: "hers", objectReflexive: "herself", object: "her", noun: "girl", weekAcquired: 0, origin: 0, career: 0, ID: 0, prestige: 0, pornFame: 0, pornFameSpending: 0, prestigeDesc: 0, recruiter: 0, relation: 0, relationTarget: 0, relationship: 0, relationshipTarget: 0, rivalry: 0, rivalryTarget: 0, subTarget: 0, father: 0, mother: 0, daughters: 0, sisters: 0, canRecruit: 0, choosesOwnAssignment: 0, assignment: "rest", assignmentVisible: 1, sentence: 0, training: 0, toyHole: "all her holes", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), actualAge: 18, visualAge: 18, physicalAge: 18, ovaryAge: 18, ageImplant: 0, health: 0, minorInjury: 0, trust: 0, oldTrust: 0, devotion: 0, oldDevotion: 0, weight: 0, muscles: 0, height: 170, heightImplant: 0, nationality: "slave", race: "white", markings: "none", eyes: 1, eyeColor: "brown", origEye: "brown", eyewear: "none", origHColor: "brown", hColor: "brown", pubicHColor: "brown", skin: "light", hLength: 60, hStyle: "short", pubicHStyle: "neat", waist: 0, corsetPiercing: 0, PLimb: 0, amp: 0, heels:0, voice: 2, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, boobsImplant: 0, boobsImplantType: 0, boobShape: "normal", nipples: "cute",  nipplesPiercing: 0, nipplesAccessory: 0, areolae: 0, areolaePiercing: 0, boobsTat: 0, lactation: 0, lactationAdaptation: 0, milk: 0, cum: 0, hips: 0, hipsImplant: 0, butt: 0, buttImplant: 0, buttImplantType: 0, buttTat: 0, face: 0, faceImplant: 0, faceShape: "normal", lips: 15, lipsImplant: 0, lipsPiercing: 0, lipsTat: 0, teeth: "normal", tonguePiercing: 0, vagina: 0, vaginaLube: 0, vaginaPiercing: 0, vaginaTat: 0, preg: -1, pregSource: 0, pregType: 0, pregAdaptation: 50, broodmother: 0, broodmotherFetuses: 0, broodmotherOnHold: 0, broodmotherCountDown: 0, labor: 0, births: 0, cSec: 0, bellyAccessory: "none", labia: 0, clit: 0, clitPiercing: 0, clitSetting: "vanilla", foreskin: 0, anus: 0, dick: 0, analArea: 1, dickPiercing: 0, dickTat: 0, prostate: 0, balls: 0, scrotum: 0, ovaries: 0, anusPiercing: 0, anusTat: 0, makeup: 0, nails: 0, brand: 0, brandLocation: 0, earPiercing: 0, nosePiercing: 0, eyebrowPiercing: 0, navelPiercing: 0, shouldersTat: 0, armsTat: 0, legsTat: 0, backTat: 0, stampTat: 0, vaginalSkill: 0, oralSkill: 0, analSkill: 0, whoreSkill: 0, entertainSkill: 0, combatSkill: 0, livingRules: "spare", speechRules: "restrictive", releaseRules: "restrictive", relationshipRules: "restrictive", standardPunishment: "situational", standardReward: "situational", useRulesAssistant: 1, diet: "healthy", dietCum: 0, dietMilk: 0, tired: 0, hormones: 0, drugs: "no drugs", curatives: 0, chem: 0, aphrodisiacs: 0, addict: 0, fuckdoll: 0, choosesOwnClothes: 0, clothes: "no clothing", collar: "none", shoes: "none", vaginalAccessory: "none", dickAccessory: "none", legAccessory: "none", buttplug: "none", buttplugAttachment: "none", intelligence: 0, intelligenceImplant: 0, energy: 50, need: 0, attrXX: 0, attrXY: 0, attrKnown: 0, fetish: "none", fetishStrength: 70, fetishKnown: 0, behavioralFlaw: "none", behavioralQuirk: "none", sexualFlaw: "none", sexualQuirk: "none", oralCount: 0, vaginalCount: 0, analCount: 0, mammaryCount: 0, penetrativeCount: 0, publicCount: 0, pitKills: 0, customTat: "", customLabel: "", customDesc: "", customTitle: "", customTitleLisp: "", rudeTitle: 0, customImage: 0, currentRules: [], bellyTat: 0, induce: 0, mpreg: 0, inflation: 0, inflationType: "none", inflationMethod: 0, milkSource: 0, cumSource: 0, burst: 0, pregKnown: 0, pregWeek: 0, belly: 0, bellyPreg: 0, bellyFluid: 0, bellyImplant: -1, bellySag: 0, bellySagPreg: 0, bellyPain: 0, cervixImplant: 0, birthsTotal: 0, pubertyAgeXX: 13, pubertyAgeXY: 13, scars: 0, breedingMark: 0, underArmHStyle: "waxed", bodySwap: 0, HGExclude: 0, ballType: "human", eggType: "human", reservedChildren: 0, choosesOwnChastity: 0, pregControl: "none", readyLimbs: [], ageAdjust: 0, bald: 0, origBodyOwner: "", origBodyOwnerID: 0, death: "", hormoneBalance: 0, onDiet: 0, breastMesh: 0, slavesFathered: 0, PCChildrenFathered: 0, slavesKnockedUp: 0, PCKnockedUp: 0, origSkin: "white", vasectomy: 0, haircuts: 0, newGamePlus: 0, skillHG: 0, skillRC: 0, skillBG: 0, skillMD: 0, skillDJ: 0, skillNU: 0, skillTE: 0, skillAT: 0, skillST: 0, skillMM: 0, skillWA: 0, skillS: 0, skillE: 0, skillW: 0, tankBaby: 0, inducedNCS: 0, NCSyouthening: 0}>>
+	<<set $activeSlave = {slaveName: "blank", slaveSurname: 0, birthName: "blank", birthSurname: 0, genes: "XX", pronoun: "she", possessive: "her", possessivePronoun: "hers", objectReflexive: "herself", object: "her", noun: "girl", weekAcquired: 0, origin: 0, career: 0, ID: 0, prestige: 0, pornFeed: 0, pornFame: 0, pornFameSpending: 0, pornPrestige: 0, pornPrestigeDesc: 0, pornFameType: "none", pornFocus: "none", pornTypeGeneral: 0, pornTypeFuckdoll: 0, pornTypeRape: 0, pornTypePreggo: 0, pornTypeBBW: 0, pornTypeGainer: 0, pornTypeStud: 0, pornTypeLoli: 0, pornTypeDeepThroat: 0, pornTypeStruggleFuck: 0, pornTypePainal: 0, pornTypeTease: 0, pornTypeRomantic: 0, pornTypePervert: 0, pornTypeCaring: 0, pornTypeUnflinching: 0, pornTypeSizeQueen: 0, pornTypeNeglectful: 0, pornTypeCumAddict: 0, pornTypeAnalAddict: 0, pornTypeAttentionWhore: 0, pornTypeBreastGrowth: 0, pornTypeAbusive: 0, pornTypeMalicious: 0, pornTypeSelfHating: 0, pornTypeBreeder: 0, pornTypeSub: 0, pornTypeCumSlut: 0, pornTypeAnal: 0, pornTypeHumiliation: 0, pornTypeBoobs: 0, pornTypeDom: 0, pornTypeSadist: 0, pornTypeMasochist: 0, pornTypePregnancy: 0, prestigeDesc: 0, recruiter: 0, relation: 0, relationTarget: 0, relationship: 0, relationshipTarget: 0, rivalry: 0, rivalryTarget: 0, subTarget: 0, father: 0, mother: 0, daughters: 0, sisters: 0, canRecruit: 0, choosesOwnAssignment: 0, assignment: "rest", assignmentVisible: 1, sentence: 0, training: 0, toyHole: "all her holes", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), actualAge: 18, visualAge: 18, physicalAge: 18, ovaryAge: 18, ageImplant: 0, health: 0, minorInjury: 0, trust: 0, oldTrust: 0, devotion: 0, oldDevotion: 0, weight: 0, muscles: 0, height: 170, heightImplant: 0, nationality: "slave", race: "white", markings: "none", eyes: 1, eyeColor: "brown", origEye: "brown", eyewear: "none", origHColor: "brown", hColor: "brown", pubicHColor: "brown", skin: "light", hLength: 60, hStyle: "short", pubicHStyle: "neat", waist: 0, corsetPiercing: 0, PLimb: 0, amp: 0, heels:0, voice: 2, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, boobsImplant: 0, boobsImplantType: 0, boobShape: "normal", nipples: "cute",  nipplesPiercing: 0, nipplesAccessory: 0, areolae: 0, areolaePiercing: 0, boobsTat: 0, lactation: 0, lactationAdaptation: 0, milk: 0, cum: 0, hips: 0, hipsImplant: 0, butt: 0, buttImplant: 0, buttImplantType: 0, buttTat: 0, face: 0, faceImplant: 0, faceShape: "normal", lips: 15, lipsImplant: 0, lipsPiercing: 0, lipsTat: 0, teeth: "normal", tonguePiercing: 0, vagina: 0, vaginaLube: 0, vaginaPiercing: 0, vaginaTat: 0, preg: -1, pregSource: 0, pregType: 0, pregAdaptation: 50, broodmother: 0, broodmotherFetuses: 0, broodmotherOnHold: 0, broodmotherCountDown: 0, labor: 0, births: 0, cSec: 0, bellyAccessory: "none", labia: 0, clit: 0, clitPiercing: 0, clitSetting: "vanilla", foreskin: 0, anus: 0, dick: 0, analArea: 1, dickPiercing: 0, dickTat: 0, prostate: 0, balls: 0, scrotum: 0, ovaries: 0, anusPiercing: 0, anusTat: 0, makeup: 0, nails: 0, brand: 0, brandLocation: 0, earPiercing: 0, nosePiercing: 0, eyebrowPiercing: 0, navelPiercing: 0, shouldersTat: 0, armsTat: 0, legsTat: 0, backTat: 0, stampTat: 0, vaginalSkill: 0, oralSkill: 0, analSkill: 0, whoreSkill: 0, entertainSkill: 0, combatSkill: 0, livingRules: "spare", speechRules: "restrictive", releaseRules: "restrictive", relationshipRules: "restrictive", standardPunishment: "situational", standardReward: "situational", useRulesAssistant: 1, diet: "healthy", dietCum: 0, dietMilk: 0, tired: 0, hormones: 0, drugs: "no drugs", curatives: 0, chem: 0, aphrodisiacs: 0, addict: 0, fuckdoll: 0, choosesOwnClothes: 0, clothes: "no clothing", collar: "none", shoes: "none", vaginalAccessory: "none", dickAccessory: "none", legAccessory: "none", buttplug: "none", buttplugAttachment: "none", intelligence: 0, intelligenceImplant: 0, energy: 50, need: 0, attrXX: 0, attrXY: 0, attrKnown: 0, fetish: "none", fetishStrength: 70, fetishKnown: 0, behavioralFlaw: "none", behavioralQuirk: "none", sexualFlaw: "none", sexualQuirk: "none", oralCount: 0, vaginalCount: 0, analCount: 0, mammaryCount: 0, penetrativeCount: 0, publicCount: 0, pitKills: 0, customTat: "", customLabel: "", customDesc: "", customTitle: "", customTitleLisp: "", rudeTitle: 0, customImage: 0, currentRules: [], bellyTat: 0, induce: 0, mpreg: 0, inflation: 0, inflationType: "none", inflationMethod: 0, milkSource: 0, cumSource: 0, burst: 0, pregKnown: 0, pregWeek: 0, belly: 0, bellyPreg: 0, bellyFluid: 0, bellyImplant: -1, bellySag: 0, bellySagPreg: 0, bellyPain: 0, cervixImplant: 0, birthsTotal: 0, pubertyAgeXX: 13, pubertyAgeXY: 13, scars: 0, breedingMark: 0, underArmHStyle: "waxed", bodySwap: 0, HGExclude: 0, ballType: "human", eggType: "human", reservedChildren: 0, choosesOwnChastity: 0, pregControl: "none", readyLimbs: [], ageAdjust: 0, bald: 0, origBodyOwner: "", origBodyOwnerID: 0, death: "", hormoneBalance: 0, onDiet: 0, breastMesh: 0, slavesFathered: 0, PCChildrenFathered: 0, slavesKnockedUp: 0, PCKnockedUp: 0, origSkin: "white", vasectomy: 0, haircuts: 0, newGamePlus: 0, skillHG: 0, skillRC: 0, skillBG: 0, skillMD: 0, skillDJ: 0, skillNU: 0, skillTE: 0, skillAT: 0, skillST: 0, skillMM: 0, skillWA: 0, skillS: 0, skillE: 0, skillW: 0, tankBaby: 0, inducedNCS: 0, NCSyouthening: 0}>>
 <</widget>>
 
 /%
-- 
GitLab


From e2ae908216f04828ea8f10e1e2e53aedc630d3fd Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sat, 14 Jul 2018 00:07:09 -0400
Subject: [PATCH 050/189] version numbers

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt | 5 +++++
 src/init/storyInit.tw                        | 4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 8935d888c31..2d3ce8a1a0f 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -1,5 +1,10 @@
 Pregmod 
 
+0.10.7.1-0.5.x
+
+	1
+	-porn system overhaul
+
 0.10.7.1-0.4.x
 
 	22
diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index feff4a088f6..61324c27872 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -15,8 +15,8 @@ You should have received a copy of the GNU General Public License along with thi
 <<set $returnTo = "init", $nextButton = "Continue", $nextLink = "Alpha disclaimer">>
 
 <<unset $releaseID>>
-<<set $ver = "0.10.7", $releaseID = 1025>>
-<<if ndef $releaseID>><<set $releaseID = 1025>><</if>>
+<<set $ver = "0.10.7", $releaseID = 1026>>
+<<if ndef $releaseID>><<set $releaseID = 1026>><</if>>
 
 /* This needs to be broken down into individual files that can be added to StoryInit instead. */
 
-- 
GitLab


From 464302d2d785c13e5a193f35ff3cc74eae67e46e Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sat, 14 Jul 2018 01:00:24 -0400
Subject: [PATCH 051/189] resync

---
 devNotes/twine JS.txt         | 474 +++++++++++++++++++++++-----------
 src/js/slaveSummaryWidgets.tw |   4 +-
 2 files changed, 320 insertions(+), 158 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index b5373e2c63e..5aa23c45c4c 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -36,9 +36,7 @@ if (typeof interpolate == "undefined") {
 	};
 	window.interpolate = interpolate;
 }
-config.history.maxStates = 1;
 
-config.saves.autosave = "autosave";
 window.isFullyPotent = function(slave) {
 	if (!slave) {
 		return null;
@@ -3359,6 +3357,76 @@ window.getSlaveTrustClass = function (slave) {
 	}
 };
 
+//takes an integer e.g. $activeSlave.hLength, returns a string in the format 10 inches
+window.cmToInchString = function(s) {
+	return Math.round(s/2.54) + (Math.round(s/2.54) === 1?" inch":" inches");
+};
+
+//takes an integer e.g. $activeSlave.height, returns a string in the format 6'5"
+window.cmToFootInchString = function(s) {
+	if (Math.round(s/2.54) < 12)
+		return cmToInchString(s);
+	return Math.trunc(Math.round(s/2.54)/12) + `'` + Math.round(s/2.54)%12 + `"`;
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns a string in the format 6 inches
+window.dickToInchString = function(s) {
+	return cmToInchString(dickToCM(s));
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns an int of the dick length in cm
+window.dickToCM = function(s) {
+	return (s<9?s*5:(s===9?50:s*6));
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns a string in the format 3 inches
+window.ballsToInchString = function(s) {
+	return cmToInchString(ballsToCM(s));
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns an int of the ball size in cm
+window.ballsToCM = function(s) {
+	if (s < 2)
+		return 0;
+	return (s<10?(s-1)*2:s*2);
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns a string in the format of either `20cm (8 inches)`, `8 inches`, or `20cm`
+window.dickToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return dickToCM(s) + "cm (" + dickToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return dickToInchString(s);
+	return dickToCM(s) + "cm";
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns a string in the format of either `20cm (8 inches)`, `8 inches`, or `20cm`
+window.ballsToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return ballsToCM(s) + "cm (" + ballsToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return ballsToInchString(s);
+	return ballsToCM(s) + "cm";
+};
+
+//takes an int in centimetres e.g. $activeSlave.height, returns a string in the format of either `200cm (6'7")`, `6'7"`, or `200cm`
+window.heightToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return s + "cm (" + cmToFootInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return cmToFootInchString(s);
+	return s + "cm";
+};
+
+//takes an int in centimetres e.g. $activeSlave.hLength, returns a string in the format of either `30cm (12 inches)`, `12 inches`, or `30cm`
+window.lengthToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return s + "cm (" + cmToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return cmToInchString(s);
+	return s + "cm";
+};
+
 /*:: Span Macro JS [script]*/
 
 /*
@@ -7138,6 +7206,61 @@ window.SlaveTitle = function SlaveTitle(slave) {
 	return r;
 };
 
+window.SlaveSort = function SlaveSort(slaves, main=false) {
+	const V = State.variables;
+	if (main) {
+		switch (V.sortSlavesBy) {
+		case "name":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.slaveName < b.slaveName ? -1 : 1);
+			else
+				slaves = slaves.sort((a, b) => a.slaveName > b.slaveName ? -1 : 1);
+			break;
+		case "assignment":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.assignment < b.assignment ? -1 : 1);
+			else
+				slaves = slaves.sort((a, b) => a.assignment > b.assignment ? -1 : 1);
+			break;
+		case "seniority":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => b.weekAcquired - a.weekAcquired);
+			else
+				slaves = slaves.sort((a, b) => a.weekAcquired - b.weekAcquired);
+			break;
+		case "actualAge":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.actualAge - b.actualAge);
+			else
+				slaves = slaves.sort((a, b) => b.actualAge - a.actualAge);
+			break;
+		case "visualAge":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.visualAge - b.visualAge);
+			else
+				slaves = slaves.sort((a, b) => b.visualAge - a.visualAge);
+			break;
+		case "physicalAge":
+			if (V.sortSlavesOrder == "physicalAge")
+				slaves = slaves.sort((a, b) => a.physicalAge - b.physicalAge);
+			else
+				slaves = slaves.sort((a, b) => b.physicalAge - a.physicalAge);
+			break;
+		default:
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.devotion - b.devotion);
+			else
+				slaves = slaves.sort((a, b) => b.devotion - a.devotion);
+			break;
+		}
+		V.slaveIndices = slaves2indices();
+	} else {
+		V.slaveIndices = slaves2indices();
+		filterInPlace(slaves, s => V.slaveIndices[s] !== undefined);
+		slaves.sort((a, b) => V.slaveIndices[a] - V.slaveIndices[b]);
+	}
+};
+
 /*:: Summary Widgets JS [script]*/
 
 window.SlaveStatClamp = function SlaveStatClamp(slave) {
@@ -12067,7 +12190,7 @@ window.DefaultRules = (function() {
 						V.cash -= V.modCost*Math.trunc((rule.hLength-slave.hLength)/10);
 						r += `<br>${slave.slaveName} has been given extensions; her hair `;
 					}
-				r += `is now ${rule.hLength} cm long.`;
+				r += `is now ${lengthToEitherUnit(rule.hLength)} long.`;
 				slave.hLength = rule.hLength;
 				}
 			}
@@ -16958,28 +17081,24 @@ window.SlaveSummaryUncached = (function(){
 		}
 		if (V.abbreviateMental === 1) {
 			r += `<span class="lightgreen">`;
-			let _relationshipHandled = 0;
 			if (V.familyTesting === 1)
 				short_extended_family(slave);
 			else
 				short_legacy_family(slave);
 			r += `</span>`;
-			_relationshipHandled = 0;
 			short_rival(slave);
 		} else if (V.abbreviateMental === 2) {
-			let _relationshipHandled = 0;
 			if (V.familyTesting === 1)
 				long_extended_family(slave);
 			else
 				long_legacy_family(slave);
-			_relationshipHandled = 0;
 			long_rival(slave);
 		}
 		if (slave.fuckdoll === 0) {
 			if (V.abbreviateClothes === 2) {
 				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 				if (slave.choosesOwnClothes === 1)
-					r += `Dressing herself.`;
+					r += `Dressing herself. `;
 				long_clothes(slave);
 				long_collar(slave);
 				long_belly(slave);
@@ -17009,14 +17128,15 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.devotion < -20) {
 			r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		} else if (slave.devotion <= 20) {
-			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		} else if (slave.devotion <= 50) {
-			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		} else if (slave.devotion <= 95) {
-			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		} else {
-			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion$}]` : ''}</span>`;
+			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		}
+		r += " ";
 		if (slave.fetish === "mindbroken") {
 			return;
 		} else if (slave.trust < -95) {
@@ -17046,6 +17166,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_devotion(slave) {
@@ -17111,6 +17232,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>LS:Spa</strong>`;
 				break;
 		}
+		r += " ";
 		if (canTalk(slave)) {
 			switch (slave.speechRules) {
 				case "permissive":
@@ -17126,6 +17248,7 @@ window.SlaveSummaryUncached = (function(){
 					r += `<strong>SpR:R</strong>`;
 					break;
 			}
+			r += " ";
 		}
 		switch (slave.relationshipRules) {
 			case "permissive":
@@ -17138,6 +17261,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>ReR:R</strong>`;
 				break;
 		}
+		r += " ";
 		switch (slave.standardPunishment) {
 			case "confinement":
 				r += `<strong>Pun:Conf</strong>`;
@@ -17152,6 +17276,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>Pun:Situ</strong>`;
 				break;
 		}
+		r += " ";
 		switch (slave.standardReward) {
 			case "relaxation":
 				r += `<strong>Rew:Relx</strong>`;
@@ -17166,6 +17291,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>Rew:Situ</strong>`;
 				break;
 		}
+		r += " ";
 		switch (slave.releaseRules) {
 			case "permissive":
 				r += `<strong>MaR:P</strong>`;
@@ -17180,6 +17306,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>MaR:R</strong>`;
 				break;
 		}
+		r += " ";
 	}
 	
 	function long_rules(slave) {
@@ -17215,7 +17342,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		} else if (slave.weight <= 130) {
-			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.hips > 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 			} else {
 				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
@@ -17239,6 +17366,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		}
+		r += " ";
 	}
 	
 	function long_weight(slave) {
@@ -17263,7 +17391,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		} else if (slave.weight <= 130) {
-			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.hips > 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
 			} else {
 				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
@@ -17325,7 +17453,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>Di:F+</strong>`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		r += `<span class="cyan">`;
 		if (slave.dietCum === 2) {
 			r += `<strong>Cum++</strong>`;
@@ -17338,7 +17466,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if ((slave.dietMilk === 2)) {
 			r += `<strong>Milk++</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_diet(slave) {
@@ -17398,6 +17526,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.health > 20) {
 			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
 		}
+		r += " ";
 	}
 	
 	function long_health(slave) {
@@ -17522,14 +17651,14 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong>Dr:groStim</strong>`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		r += `<span class="lightgreen">`;
 		if (slave.curatives === 2) {
 			r += `<strong>Cura</strong>`;
 		} else if (slave.curatives === 1) {
 			r += `<strong>Prev</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		if (slave.aphrodisiacs !== 0) {
 			r += `<span class="lightblue">`;
 			if (slave.aphrodisiacs === 1) {
@@ -17539,7 +17668,7 @@ window.SlaveSummaryUncached = (function(){
 			} else {
 				r += `<strong>Anaph</strong>`;
 			}
-			r += `</span>`;
+			r += `</span> `;
 		}
 		if (slave.addict !== 0) {
 			r += `<span class="cyan">Add</span>`;
@@ -17554,7 +17683,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.hormones < 0) {
 			r += `<strong>Ho:M</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		r += `<span class="mediumseagreen">`;
 		if ((slave.bellyImplant > -1)) {
 			r += `<strong>Belly Imp</strong>`;
@@ -17577,7 +17706,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.pregKnown === 1) {
 			r += `<strong>${slave.pregWeek} wks preg</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 		if (slave.induce === 1) {
 			r += `<span class="orange"><strong>Early Labor</strong></span>`;
 		}
@@ -17597,7 +17726,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.bellyFluid > 0) {
 			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_drugs(slave) {
@@ -17655,7 +17784,7 @@ window.SlaveSummaryUncached = (function(){
 			if (slave.pregType < 2 || slave.broodmother > 0) {
 				r += `${slave.pregWeek} weeks pregnant.`;
 			} else {
-				r += `${slave.pregWeek} weeks pregnant with`;
+				r += `${slave.pregWeek} weeks pregnant with `;
 				if (slave.pregType >= 40) {
 					r += `a tremendous brood of offspring.`;
 				} else if (slave.pregType >= 20) {
@@ -17791,6 +17920,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
 				break;
 		}
+		r += " ";
 	}
 	
 	function short_nationality(slave) {
@@ -18461,7 +18591,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_nationality(slave) {
@@ -18520,7 +18650,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_genitals(slave) {
@@ -18554,7 +18684,7 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.balls > 3) {
 				r += `Balls`;
 			}
-			r += `</span>`;
+			r += `</span> `;
 		}
 		if (slave.vagina === 0) {
 			r += `<span class="lime">VV</span>`;
@@ -18566,19 +18696,19 @@ window.SlaveSummaryUncached = (function(){
 		}
 		r += `<span class="pink">`;
 		if ((slave.vagina > 3) && (slave.anus > 3)) {
-			r += `V++A++`;
+			r += ` V++A++`;
 		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
-			r += `V+A+`;
+			r += ` V+A+`;
 		} else if (slave.vagina > 3) {
-			r += `V++`;
+			r += ` V++`;
 		} else if (slave.vagina > 2) {
-			r += `V+`;
+			r += ` V+`;
 		} else if (slave.anus > 3) {
-			r += `A++`;
+			r += ` A++`;
 		} else if (slave.anus > 2) {
-			r += `A+`;
+			r += ` A+`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_genitals(slave) {
@@ -18662,6 +18792,7 @@ window.SlaveSummaryUncached = (function(){
 		if (slave.visualAge !== slave.physicalAge) {
 			r += `Lks${slave.visualAge}`;
 		}
+		r += " ";
 	}
 	
 	function short_face(slave) {
@@ -18680,6 +18811,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_eyes(slave) {
@@ -18688,6 +18820,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (((slave.eyes === -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
 			r += `<span class="yellow">Sight-</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_lips(slave) {
@@ -18704,6 +18837,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
 		}
+		r += " ";
 	}
 	
 	function short_teeth(slave) {
@@ -18718,6 +18852,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.teeth === "pointy") {
 			r += `Fangs`;
 		}
+		r += " ";
 	}
 	
 	function short_muscles(slave) {
@@ -18744,6 +18879,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
 		}
+		r += " ";
 	}
 	
 	function short_limbs(slave) {
@@ -18761,6 +18897,7 @@ window.SlaveSummaryUncached = (function(){
 			} else {
 				r += `Amp`;
 			}
+			r += " ";
 		}
 		if (!canWalk(slave)) {
 			r += `Immob`;
@@ -18768,7 +18905,7 @@ window.SlaveSummaryUncached = (function(){
 		if (slave.heels === 1) {
 			r += `Heel`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_voice(slave) {
@@ -18785,6 +18922,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="pink">Acc</span>`;
 			}
 		}
+		r += " ";
 	}
 	
 	function short_tits_ass(slave) {
@@ -18816,7 +18954,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.butt > 4) {
 			r += `Ass`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_hips(slave) {
@@ -18854,7 +18992,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `Disp-`;
 			}
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_waist(slave) {
@@ -18873,6 +19011,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_implants(slave) {
@@ -18882,6 +19021,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `Impl`;
 		}
+		r += " ";
 	}
 	
 	function short_lactation(slave) {
@@ -18890,6 +19030,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.lactation === 2) {
 			r += `Lact++`;
 		}
+		r += " ";
 	}
 	
 	function short_mods(slave) {
@@ -18906,7 +19047,7 @@ window.SlaveSummaryUncached = (function(){
 		if (slave.brand !== 0) {
 			r += `Br`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_age(slave) {
@@ -19265,6 +19406,7 @@ window.SlaveSummaryUncached = (function(){
 					break;
 			}
 		}
+		r += " ";
 	} 
 	
 	function short_sex_skills(slave) {
@@ -19287,8 +19429,9 @@ window.SlaveSummaryUncached = (function(){
 				r += `S-`;
 			}
 			if (V.summaryStats) {
-				r += `[${_SSkills}]`;
+				r += `[${_SSkills}] `;
 			}
+			r += " ";
 			if (slave.whoreSkill >= 100) {
 				r += `W+++`;
 			} else if (slave.whoreSkill > 60) {
@@ -19300,9 +19443,10 @@ window.SlaveSummaryUncached = (function(){
 			}
 			if (slave.whoreSkill > 10) {
 				if (V.summaryStats) {
-					r += `[${slave.whoreSkill}]`;
+					r += `[${slave.whoreSkill}] `;
 				}
 			}
+			r += " ";
 			if (slave.entertainSkill >= 100) {
 				r += `E+++`;
 			} else if (slave.entertainSkill > 60) {
@@ -19314,10 +19458,11 @@ window.SlaveSummaryUncached = (function(){
 			}
 			if (slave.entertainSkill > 10) {
 				if (V.summaryStats) {
-					r += `[${slave.entertainSkill}]`;
+					r += `[${slave.entertainSkill}] `;
 				}
 			}
 		}
+		r += " ";
 	}
 	
 	function short_prestige(slave) {
@@ -19330,7 +19475,7 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.prestige === 1) {
 				r += `Prest`;
 			}
-			r += `</span>`;
+			r += `</span> `;
 		}
 	}
 	
@@ -19534,7 +19679,7 @@ window.SlaveSummaryUncached = (function(){
 		if (V.summaryStats) {
 			r += `[${slave.fetishStrength}]`;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_attraction(slave) {
@@ -19559,6 +19704,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
 		}
+		r += " ";
 		if (slave.attrXX <= 5) {
 			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
 		} else if (slave.attrXX <= 15) {
@@ -19574,6 +19720,7 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.attrXY <= 95) {
 			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
 		}
+		r += " ";
 		if (slave.energy > 95) {
 			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
 				r += `<span class="green">Nympho!</span>`;
@@ -19589,6 +19736,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
 		}
+		r += " ";
 	}
 	
 	function short_smart_fetish(slave) {
@@ -19668,6 +19816,7 @@ window.SlaveSummaryUncached = (function(){
 					break;
 			}
 		}
+		r += " ";
 	}
 	
 	function short_smart_attraction(slave) {
@@ -19708,6 +19857,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `SP:anti-men`;
 			}
 		}
+		r += " ";
 	}
 	
 	function short_behavior_flaw(slave) {
@@ -19744,7 +19894,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.behavioralFlaw = "none";
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function short_sex_flaw(slave) {
@@ -19807,6 +19957,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.sexualFlaw = "none";
 				break;
 		}
+		r += " ";
 	}	
 	
 	function short_behavior_quirk(slave) {
@@ -19843,6 +19994,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.behavioralQuirk = "none";
 				break;
 		}
+		r += " ";
 	}
 	
 	function short_sex_quirk(slave) {
@@ -19878,7 +20030,7 @@ window.SlaveSummaryUncached = (function(){
 				slave.sexualQuirk = "none";
 				break;
 		}
-		r += `</span>`;
+		r += `</span> `;
 	}
 	
 	function long_fetish(slave) {
@@ -19974,40 +20126,40 @@ window.SlaveSummaryUncached = (function(){
 	
 	function long_attraction(slave) {
 		if (slave.attrXY <= 5) {
-			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXY <= 15) {
-			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXY <= 35) {
-			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXY <= 65) {
-			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''},`;
+			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''}, `;
 		} else if (slave.attrXY <= 85) {
-			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		} else if (slave.attrXX > 95) {
 			if (slave.energy <= 95) {
-				r += `<span class="green">Omnisexual!</span>`;
+				r += `<span class="green">Omnisexual!</span> `;
 			} else {
-				r += `<span class="green">Omnisexual nymphomaniac!</span>`;
+				r += `<span class="green">Omnisexual nymphomaniac!</span> `;
 			}
 		} else {
-			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span>`;
+			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		}
 		if (slave.attrXX <= 5) {
-			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXX <= 15) {
-			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXX <= 35) {
-			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXX <= 65) {
 			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
 		} else if (slave.attrXX <= 85) {
-			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXX <= 95) {
-			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span>`;
+			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		}
 		if (slave.energy > 95) {
 			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
@@ -20295,6 +20447,7 @@ window.SlaveSummaryUncached = (function(){
 	}
 	
 	function short_extended_family(slave) {
+		let handled = 0;
 		if (slave.mother > 0) {
 			let _ssj = V.slaves.findIndex(function(s) {
 				return s.ID === slave.mother;
@@ -20313,18 +20466,20 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
+			r += " ";
 		} else if (slave.mother === -1) {
 			r += `Your daughter`;
 			if (slave.relationship === -3) {
-				r += `& wife`;
-				_relationshipHandled = 1;
+				r += ` & wife`;
+				handled = 1;
 			} else if (slave.relationship === -2) {
-				r += `& lover`;
-				_relationshipHandled = 1;
+				r += ` & lover`;
+				handled = 1;
 			}
+			r += " ";
 		}
 		if (slave.father > 0 && slave.father !== slave.mother) {
 			let _ssj = V.slaves.findIndex(function(s) {
@@ -20332,7 +20487,7 @@ window.SlaveSummaryUncached = (function(){
 			});
 			if (_ssj !== -1) {
 				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
 					if (slave.relationship === 1) {
 						r += ` & friend`;
 					} else if (slave.relationship === 2) {
@@ -20344,17 +20499,18 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
+			r += " ";
 		} else if (slave.father === -1 && slave.mother !== -1) {
 			r += `Your daughter`;
 			if (slave.relationship === -3) {
-				r += `& wife`;
-				_relationshipHandled = 1;
+				r += ` & wife`;
+				handled = 1;
 			} else if (slave.relationship === -2) {
-				r += `& lover`;
-				_relationshipHandled = 1;
+				r += ` & lover`;
+				handled = 1;
 			}
 		}
 		if (slave.daughters === 1) {
@@ -20375,15 +20531,16 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
+			r += " ";
 			_ssj = V.slaves.findIndex(function(s) {
 				return s.father === slave.ID;
 			});
 			if (_ssj !== -1) {
 				r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID && _relationshipHandled !== 1) {
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
 					if (slave.relationship === 1) {
 						r += ` & friend`;
 					} else if (slave.relationship === 2) {
@@ -20395,11 +20552,12 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
+			r += " ";
 		} else if (slave.daughters > 1) {
-			r += `multiple daughters`;
+			r += `multiple daughters `;
 		}
 		if (slave.sisters === 1) {
 			let _ssj = V.slaves.findIndex(function(s) {
@@ -20419,13 +20577,14 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` & wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 			}
+			r += " ";
 		} else if (slave.sisters > 1) {
-			r += `multiple sisters`;
+			r += `multiple sisters `;
 		}
-		if (slave.relationship > 0 && _relationshipHandled !== 1) {
+		if (slave.relationship > 0 && handled !== 1) {
 			let _ssj = V.slaves.findIndex(function(s) {
 				return s.ID === slave.relationshipTarget;
 			});
@@ -20433,19 +20592,19 @@ window.SlaveSummaryUncached = (function(){
 				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
 				switch (slave.relationship) {
 					case 1:
-						r += `friend`;
+						r += ` friend`;
 						break;
 					case 2:
-						r += `BFF`;
+						r += ` BFF`;
 						break;
 					case 3:
-						r += `FWB`;
+						r += ` FWB`;
 						break;
 					case 4:
-						r += `lover`;
+						r += ` lover`;
 						break;
 					case 5:
-						r += `wife`;
+						r += ` wife`;
 						break;
 				}
 			}
@@ -20456,72 +20615,73 @@ window.SlaveSummaryUncached = (function(){
 		} else if (slave.relationship === -1) {
 			r += `E Slut`;
 		}
+		r += " ";
 	}
 	
 	function short_legacy_family(slave) {
 		if (slave.relation !== 0) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.relationTarget;
-				});
-				if (_ssj !== -1) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
-				}
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
 			}
-			if (slave.relationship > 0) {
-				let _ssj = V.slaves.findIndex(function(s) {
-					return s.ID === slave.relationshipTarget;
-				});
-				if (_ssj !== -1) {
-					switch (slave.relationship) {
-						case 1:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `friend`;
-							break;
-						case 2:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `BFF`;
-							break;
-						case 3:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `FWB`;
-							break;
-						case 4:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `lover`;
-							break;
-						case 5:
-							if (slave.relationshipTarget !== slave.relationTarget) {
-								r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-							} else {
-								r += `&`;
-							}
-							r += `wife`;
-							break;
-					}
+		}
+		if (slave.relationship > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				switch (slave.relationship) {
+					case 1:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` friend`;
+						break;
+					case 2:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` BFF`;
+						break;
+					case 3:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` FWB`;
+						break;
+					case 4:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` lover`;
+						break;
+					case 5:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` wife`;
+						break;
 				}
-			} else if (slave.relationship === -3) {
-				r += `Your wife`;
-			} else if (slave.relationship === -2) {
-				r += `E Bonded`;
-			} else if (slave.relationship === -1) {
-				r += `E Slut`;
 			}
+		} else if (slave.relationship === -3) {
+			r += `Your wife`;
+		} else if (slave.relationship === -2) {
+			r += `E Bonded`;
+		} else if (slave.relationship === -1) {
+			r += `E Slut`;
+		}
 	}
 	
 	function short_rival(slave) {
@@ -20539,12 +20699,13 @@ window.SlaveSummaryUncached = (function(){
 				} else {
 					r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
 				}
-				r += `</span>`;
+				r += `</span> `;
 			}
 		}
 	}
 	
 	function long_extended_family(slave) {
+		let handled = 0;
 		if (slave.mother > 0) {
 			let _ssj = V.slaves.findIndex(function(s) {
 				return s.ID === slave.mother;
@@ -20563,18 +20724,18 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
 		} else if (slave.mother === -1) {
-			r += `Your`;
+			r += `Your `;
 			if (slave.relationship === -3) {
 				r += `<span class="lightgreen">daughter and wife.</span> `;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else if (slave.relationship === -2) {
 				r += `<span class="lightgreen">daughter and lover.</span> `;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else {
 				r += `<span class="lightgreen">daughter.</span> `;
 			}
@@ -20597,18 +20758,18 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
 		} else if (slave.father === -1 && slave.father !== slave.mother) {
-			r += `Your`;
+			r += `Your `;
 			if (slave.relationship === -3) {
 				r += `<span class="lightgreen">daughter and wife.</span> `;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else if (slave.relationship === -2) {
 				r += `<span class="lightgreen">daughter and lover.</span> `;
-				_relationshipHandled = 1;
+				handled = 1;
 			} else {
 				r += `<span class="lightgreen">daughter.</span> `;
 			}
@@ -20631,7 +20792,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
@@ -20652,7 +20813,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
@@ -20683,7 +20844,7 @@ window.SlaveSummaryUncached = (function(){
 					} else {
 						r += ` and wife`;
 					}
-					_relationshipHandled = 1;
+					handled = 1;
 				}
 				r += `.</span> `;
 			}
@@ -20696,12 +20857,12 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="lightgreen">Has several sisters.</span> `;
 			}
 		}
-		if (slave.relationship > 0 && _relationshipHandled !== 1) {
+		if (slave.relationship > 0 && handled !== 1) {
 			let _ssj = V.slaves.findIndex(function(s) {
 				return s.ID === slave.relationshipTarget;
 			});
 			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
 				switch (slave.relationship) {
 					case 1:
 						r += `<span class="lightgreen">friend.</span> `;
@@ -20735,7 +20896,7 @@ window.SlaveSummaryUncached = (function(){
 				return s.ID === slave.relationTarget;
 			});
 			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
 				if (slave.relationshipTarget !== slave.relationTarget) {
 					r += `<span class="lightgreen">${slave.relation}</span>. `;
 				} else {
@@ -21215,3 +21376,4 @@ window.SlaveSummaryUncached = (function(){
 	
 	return SlaveSummaryUncached;
 })();
+
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index ad41a1d1cfa..17e58512ca4 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -439,7 +439,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		} else if (slave.weight <= 130) {
-			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.hips > 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 			} else {
 				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
@@ -488,7 +488,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		} else if (slave.weight <= 130) {
-			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.hips > 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
 			} else {
 				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-- 
GitLab


From 27e552beb847175046b4c485b9195bf6902945ce Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sat, 14 Jul 2018 01:47:37 -0400
Subject: [PATCH 052/189] fix

---
 src/js/rulesAssistant.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/rulesAssistant.tw b/src/js/rulesAssistant.tw
index 3e0d87f0bdf..e8b82c20452 100644
--- a/src/js/rulesAssistant.tw
+++ b/src/js/rulesAssistant.tw
@@ -299,6 +299,6 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 window.RulesDeconfliction = function RulesDeconfliction(slave) {
 	const before = clone(slave);
 	DefaultRules(slave);
-	V.slaveAfterRA = clone(slave);
+	State.variables.slaveAfterRA = clone(slave);
 	slave = before;
 }
-- 
GitLab


From f002b20fe17d37e483f6ac27fcd77662fa4e227d Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sat, 14 Jul 2018 01:54:31 -0400
Subject: [PATCH 053/189] nobr tagging

---
 devNotes/twine JS.txt                |  2 +-
 src/uncategorized/reHGReplacement.tw | 27 +++++++--------------------
 src/uncategorized/reSlaveMarriage.tw | 14 +++++---------
 3 files changed, 13 insertions(+), 30 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 5aa23c45c4c..10e0bb1b952 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -2642,7 +2642,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 window.RulesDeconfliction = function RulesDeconfliction(slave) {
 	const before = clone(slave);
 	DefaultRules(slave);
-	V.slaveAfterRA = clone(slave);
+	State.variables.slaveAfterRA = clone(slave);
 	slave = before;
 }
 
diff --git a/src/uncategorized/reHGReplacement.tw b/src/uncategorized/reHGReplacement.tw
index 9e7267da6b7..69e05b86cf4 100644
--- a/src/uncategorized/reHGReplacement.tw
+++ b/src/uncategorized/reHGReplacement.tw
@@ -1,6 +1,5 @@
-:: RE HG replacement
+:: RE HG replacement [nobr]
 
-<<nobr>>
 
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "Next Week", $activeSlave = $eventSlave>>
 <<run Enunciate($activeSlave)>>
@@ -17,15 +16,12 @@ When $HeadGirl.slaveName leaves, she clears her throat nervously. She gathers he
 <</if>>
 <<Master>>. Plea<<s>>e, give me a try." She goes on like this for a while, slowly degenerating into repetition of her points as your failure to give her an immediate positive or negative response starts to worry her.
 
-<</nobr>>\
+<br><br>
 
 <span id="result">
 <<link "She's right">>
-	<<replace "#name">>\
-	$activeSlave.slaveName\
-	<</replace>>\
+	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	<<nobr>>
 	After giving the matter some consideration, you agree, instructing $assistantName that $activeSlave.slaveName is now the Head Girl. $activeSlave.slaveName is @@.hotpink;overjoyed,@@ and bounces to her feet, clearly very eager to begin. You caution her that she is not to undermine $HeadGirl.slaveName by letting anyone know why you decided to change Head Girls. She nods obediently. As far as $HeadGirl.slaveName knows, it's just a standard change of Head Girls, and she's too good a slave to let it affect her seriously.
 	<<set $i = $slaveIndices[$HeadGirl.ID]>>
 	<<set $slaves[$i].assignment = "rest">>
@@ -34,26 +30,18 @@ When $HeadGirl.slaveName leaves, she clears her throat nervously. She gathers he
 	<<set $activeSlave.assignment = "be your Head Girl">>
 	<<set $activeSlave.assignmentVisible = 1>>
 	<<set $HeadGirl = $activeSlave>>
-	<</nobr>>
 	<</replace>>
 <</link>>
-<<link "Pretend you didn't hear her">>
-	<<replace "#name">>\
-	$activeSlave.slaveName\
-	<</replace>>\
+<br><<link "Pretend you didn't hear her">>
+	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	<<nobr>>
 	You pretend you didn't hear her, and go about your business. She quickly catches on, and shuts her mouth, sitting stiffly on the couch and waiting for you to say something. After letting her wait for a good long while, you steeple your fingers and look over them at her. She quails at your gaze, but does not look away from you. You tell her that, for her general information, you prefer to make decisions about what slaves do which job yourself, and are not interested in input from the slaves themselves on the matter. You continue to observe that if any slave were to offer input, she might suggest to you that she thought her own judgment superior to yours. Then, you dismiss her. "Ye<<s>> <<Master>>, thank you, <<Master>>," she <<say>>s, and flees.
 	<<set $activeSlave.trust += 4>>
-	<</nobr>>
 	<</replace>>
 <</link>>
-<<link "Let your Head Girl sort this out however she sees fit">>
-	<<replace "#name">>\
-	$activeSlave.slaveName\
-	<</replace>>\
+<br><<link "Let your Head Girl sort this out however she sees fit">>
+	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	<<nobr>>
 	<<run Enunciate($HeadGirl)>>
 	You page $HeadGirl.slaveName, telling her to get back up to your office. $activeSlave.slaveName hears you, of course, and stiffens with fear. She knows she's in trouble, but she doesn't yet know how much. You tell $HeadGirl.slaveName to have a seat next to $activeSlave.slaveName on the couch, and instruct $assistantName to replay the last five minutes of the feeds from your office on a wallscreen. $activeSlave.slaveName's<<if $activeSlave.lips > 40>> pillowlike<</if>> lower lip begins to tremble at this, and she can barely manage to keep her gaze on the fatal replay of her attempt to convince you to replace $HeadGirl.slaveName with her. $HeadGirl.slaveName, who is no fool, is not surprised by this, but the replay still angers her. As it rolls on, her hands begin to roam across $activeSlave.slaveName, who winces at her touch. About halfway through, $HeadGirl.slaveName looks straight at you and cruelly pinches one of $activeSlave.slaveName's nipples. You respond to the nonverbal question with a silent nod, and $HeadGirl.slaveName smiles briefly at you. Then, she sticks her tongue in $activeSlave.slaveName's ear. The poor slave starts at the warm, wet intrusion, but knows better than to try to resist. She closes her eyes tight.
 	<br><br>
@@ -65,7 +53,6 @@ When $HeadGirl.slaveName leaves, she clears her throat nervously. She gathers he
 	<<set $oralTotal += 1>>
 	<<set $activeSlave.trust -= 4, $activeSlave.oralCount += 1>>
 	<<set $oralTotal += 1>>
-	<</nobr>>
 	<</replace>>
 <</link>>
 </span>
diff --git a/src/uncategorized/reSlaveMarriage.tw b/src/uncategorized/reSlaveMarriage.tw
index 00573d70f10..7fb8af4f0c7 100644
--- a/src/uncategorized/reSlaveMarriage.tw
+++ b/src/uncategorized/reSlaveMarriage.tw
@@ -1,9 +1,6 @@
-:: RE slave marriage
+:: RE slave marriage [nobr]
 
-<<nobr>>
-
-<<set $nextButton = "Continue">>
-<<set $nextLink = "Next Week">>
+<<set $nextButton = "Continue", $nextLink = "Next Week">>
 
 <<if $groomSlave == 0>>
 	<<set $groomSlave = $eventSlave>>
@@ -13,11 +10,11 @@
 	<<set $brideSlave = getSlave($groomSlave.relationshipTarget)>>
 <</if>>
 <<run Enunciate($groomSlave)>>
-<</nobr>>\
-\
+
 <<print "[[$groomSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1,$activeSlave = $groomSlave]]">> and <<print "[[$brideSlave.slaveName|Long Slave Description][$nextLink = passage(), $eventDescription = 1,$activeSlave = $brideSlave]]">> come into your office <<if ($groomSlave.amp != 1) && ($brideSlave.amp != 1)>>holding hands<<else>>doing their best to stay close to one another despite their physical limitations<</if>>. $brideSlave.slaveName looks at $groomSlave.slaveName expectantly, but she's terribly nervous and makes several false starts before beginning. Finally $groomSlave.slaveName musters her courage and <<if !canTalk($groomSlave)>>asks you with simple gestures to grant the two of them a slave marriage.<<else>>asks with her voice cracking, "<<Master>>, would you plea<<s>>e grant u<<s>> a <<s>>lave marriage?"<</if>>
 
-<<nobr>>
+<br><br>
+
 <span id="result">
 <<link "Of course">>
 	<<replace "#result">>
@@ -44,4 +41,3 @@
 	<</replace>>
 <</link>>
 </span>
-<</nobr>>
-- 
GitLab


From 32768440eb7d08ed4fff23d6cd2f3e7eacf0fd2d Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Sat, 14 Jul 2018 14:33:36 +0300
Subject: [PATCH 054/189] more slave summary style issues

---
 src/js/slaveSummaryWidgets.tw | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index ad41a1d1cfa..81c649051b0 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -70,7 +70,7 @@ window.SlaveSummaryUncached = (function(){
 				short_race(slave);
 			else if (V.abbreviateRace === 2)
 				long_race(slave);
-			r += `</span>`;
+			r += `</span> `;
 		}
 		if (V.abbreviateNationality === 1)
 			short_nationality(slave);
@@ -79,7 +79,7 @@ window.SlaveSummaryUncached = (function(){
 		if (V.abbreviatePhysicals === 1)
 			short_skin(slave);
 		else
-			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
+			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span> `;
 		if (V.abbreviateGenitalia === 1)
 			short_genitals(slave);
 		else if (V.abbreviateGenitalia === 2)
@@ -128,14 +128,14 @@ window.SlaveSummaryUncached = (function(){
 			short_sex_skills(slave);
 			if (slave.combatSkill > 0)
 				r += `C`;
-			r += `</span>`;
+			r += `</span> `;
 			short_prestige(slave);
 		} else if (V.abbreviateSkills === 2) {
 			long_intelligence(slave);
 			long_sex_skills(slave);
 			if (slave.combatSkill > 0)
 				r += `Trained fighter.`;
-			r += `</span>`;
+			r += `</span> `;
 			long_prestige(slave);
 		}
 		if (V.abbreviateMental === 1) {
@@ -2635,7 +2635,7 @@ window.SlaveSummaryUncached = (function(){
 		let _SSkills = (slave.analSkill + slave.oralSkill);
 		r += `<span class="aquamarine">`;
 		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
-			r += `Masterful Sex Slave.`;
+			r += `Masterful Sex Slave. `;
 		} else {
 			_SSkills += slave.vaginalSkill;
 			if (_SSkills > 180) {
@@ -2649,6 +2649,7 @@ window.SlaveSummaryUncached = (function(){
 			} else {
 				r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
 			}
+			r += " ";
 			if (slave.whoreSkill >= 100) {
 				r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 			} else if (slave.whoreSkill >= 60) {
@@ -2658,6 +2659,7 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.whoreSkill >= 10) {
 				r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 			}
+			r += " ";
 			if (slave.entertainSkill >= 100) {
 				r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 			} else if (slave.entertainSkill >= 60) {
@@ -2667,8 +2669,8 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.entertainSkill >= 10) {
 				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 			}
+			r += " ";
 		}
-		r += " ";
 	}
 	
 	function long_prestige(slave) {
-- 
GitLab


From 4ba9d36ffe9b1ad6a841df97d02259741d2dac1e Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sat, 14 Jul 2018 22:20:31 -0400
Subject: [PATCH 055/189] Adding the Queen and her ladies

---
 src/pregmod/incubator.tw          |   2 +-
 src/uncategorized/REroyalblood.tw | 110 +++++++++++++++++++++++++++++-
 2 files changed, 110 insertions(+), 2 deletions(-)

diff --git a/src/pregmod/incubator.tw b/src/pregmod/incubator.tw
index d88dd61b1ba..1b94a07042e 100644
--- a/src/pregmod/incubator.tw
+++ b/src/pregmod/incubator.tw
@@ -311,7 +311,7 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 				with a powerful musculature.
 			<<elseif $tanks[$i].muscles <= -6 && $tanks[$i].muscles >= -30>>
 				quite weak.
-			<<elseif $tanks[$i].muscles <= -31 && $tanks[$i].muscles >= 95>>
+			<<elseif $tanks[$i].muscles <= -31 && $tanks[$i].muscles >= -95>>
 				very weak.
 			<<elseif $tanks[$i].muscles <= -96>>
 				extremely weak.
diff --git a/src/uncategorized/REroyalblood.tw b/src/uncategorized/REroyalblood.tw
index 71284883363..aa8a46e18b2 100644
--- a/src/uncategorized/REroyalblood.tw
+++ b/src/uncategorized/REroyalblood.tw
@@ -535,6 +535,114 @@ Time is short, but you are well placed to acquire some choice slaves. With an ad
 <</link>> //You will be despised for this action, and trade will be greatly damaged.//
 <</if>>
 
+<br><<link "Offer a generous amount of cash in exchange for both the Queen and her court ladies.">>
+	<<replace "#result">>
+		<<set $cash -= 500000>>
+		You take a tablet and transmit a communication request to the new arcology owner with your intent. Once his shock wears off, he readily accepts with little need for negotiation. Soon, a flight of VTOLs land in the new arcology laden with goods. When they take off again they have the Queen, who is resigned to her fate, and a gaggle of terrified court ladies chained together.
+		<br><br>
+		Eventually they all arrive in your penthouse. The Queen seems almost relieved and basks in the opulence of her new surroundings. Yet, it seems likely that her relief has more to do with saving her from a lifetime of gang rape at the mercy of her former subjects, than it does the familiar luxury. She submits to biometric scanning obediently and without fuss<<if $seePreg != 0>>, during which you discover to her surprise that she is pregnant. Since she hasn't begun to show yet, it's unclear whether the child is the former King's or the new arcology owner's. You don't have the means to discern the father of the child, but you notice she cradles her ever so slightly rounded stomach protectively nonetheless<</if>>. Meanwhile, the ladies seem comforted by the opulence of their new surroundings. Though they still retain much of their aristocratic arrogance, they each submit to biometric scanning with relative obedience. It seems likely that their obedience is borne out of a delusional rationalization that enslavement by one wealthy master is better than enslavement by the unwashed masses they once lorded over.
+		/* ladies */
+		<<for $i = 0; $i < 3; $i++>>
+			<<set $activeSlaveOneTimeMinAge = 21>>
+			<<set $activeSlaveOneTimeMaxAge = ($retirementAge-2)>>
+			<<include "Generate XX Slave">>
+			<<set _origin = "She was a member of the court in an ancient kingdom, till it was overthrown and she was sold for credits.">>
+			<<set $activeSlave.origin = _origin>>
+			<<set $activeSlave.career = "a lady courtier">>
+			<<set $activeSlave.prestige = 1>>
+			<<set $activeSlave.prestigeDesc = "She was once a lady of the court of an ancient kingdom.">>
+			<<set $activeSlave.face = random(25,76)>>
+			<<set $activeSlave.devotion = random(10,20)>>
+			<<set $activeSlave.trust = random(-20,-30)>>
+			<<set $activeSlave.boobs = random(3,10)*100>>
+			<<set $activeSlave.vagina = 1>>
+			<<set $activeSlave.dick = 0>>
+			<<set $activeSlave.foreskin = 0>>
+			<<set $activeSlave.balls = 0>>
+			<<set $activeSlave.ovaries = 1>>
+			<<set $activeSlave.pubicHStyle = "waxed">>
+			<<set $activeSlave.underArmHStyle = "waxed">>
+			<<set $activeSlave.shoulders = random(-1,1)>>
+			<<set $activeSlave.hips = 1>>
+			<<set $activeSlave.butt = 1>>
+			<<set $activeSlave.anus = 0>>
+			<<set $activeSlave.weight = 0>>
+			<<set $activeSlave.intelligence = either(-1, 1, 2)>>
+			<<set $activeSlave.intelligenceImplant = 1>>
+			<<set $activeSlave.entertainSkill = 25>>
+			<<set $activeSlave.whoreSkill = 0>>
+			<<set $activeSlave.health = random(30,60)>>
+			<<set $activeSlave.canRecruit = 0>>
+			<<set $activeSlave.behavioralFlaw = either("bitchy", "arrogant")>>
+			<<AddSlave $activeSlave>> /* skip New Slave Intro */
+			<<set $activeSlave.recruiter = 0>> /* override New Slave Intro */
+		<</for>>
+		/*Queen*/
+		<<set _queen.origin = "She was the Queen of a royal kingdom, till her husband was overthrown and she was sold for credits.">>
+		<<set _queen.recruiter = 0>>
+		<<set _queen.mother = $missingParentID>>
+		<<set $missingParentID-->>
+		<<set _queen.father = $missingParentID>>
+		<<set $missingParentID-->>
+		<<AddSlave _queen>> /* skip New Slave Intro */
+	<</replace>>
+<</link>> // It will cost about <<print cashFormat(500000)>> to enslave the Queen and her court ladies.//
+<<if $securityForceActive == 1>>
+<br><<link "Dispatch $securityForceName on a night time raid to acquire the Queen and her court ladies.">>
+	<<replace "#result">>
+		Seizing a tablet, you quickly send a message to The Colonel. After dark, a flight of VTOLs land in the new arcology laden with troops. When they take off again they have the Queen, who is resigned to her fate, and a gaggle of terrified court ladies chained together.
+		<br><br>
+		Eventually they all arrive in your penthouse. The Queen seems almost relieved and basks in the opulence of her new surroundings. Yet, it seems likely that her relief has more to do with saving her from a lifetime of gang rape at the mercy of her former subjects, than it does the familiar luxury. She submits to biometric scanning obediently and without fuss<<if $seePreg != 0>>, during which you discover to her surprise that she is pregnant. Since she hasn't begun to show yet, it's unclear whether the child is the former King's or the new arcology owner's. You don't have the means to discern the father of the child, but you notice she cradles her ever so slightly rounded stomach protectively nonetheless<</if>>. Meanwhile, the ladies seem comforted by the opulence of their new surroundings. Though they still retain much of their aristocratic arrogance, they each submit to biometric scanning with relative obedience. It seems likely that their obedience is borne out of a delusional rationalization that enslavement by one wealthy master is better than enslavement by the unwashed masses they once lorded over.
+		<<set $arcologies[0].prosperity -= 13>>
+		<<set $rep -= 13000>>
+		/* ladies */
+		<<for $i = 0; $i < 3; $i++>>
+			<<set $activeSlaveOneTimeMinAge = 21>>
+			<<set $activeSlaveOneTimeMaxAge = ($retirementAge-2)>>
+			<<include "Generate XX Slave">>
+			<<set _origin = "She was a member of the court in an ancient kingdom, till it was overthrown and she was acquired by "+$securityForceName+".">>
+			<<set $activeSlave.origin = _origin>>
+			<<set $activeSlave.career = "a lady courtier">>
+			<<set $activeSlave.prestige = 1>>
+			<<set $activeSlave.prestigeDesc = "She was once a lady of the court of an ancient kingdom.">>
+			<<set $activeSlave.face = random(25,76)>>
+			<<set $activeSlave.devotion = random(10,20)>>
+			<<set $activeSlave.trust = random(-20,-30)>>
+			<<set $activeSlave.boobs = random(3,10)*100>>
+			<<set $activeSlave.vagina = 1>>
+			<<set $activeSlave.dick = 0>>
+			<<set $activeSlave.foreskin = 0>>
+			<<set $activeSlave.balls = 0>>
+			<<set $activeSlave.ovaries = 1>>
+			<<set $activeSlave.pubicHStyle = "waxed">>
+			<<set $activeSlave.underArmHStyle = "waxed">>
+			<<set $activeSlave.shoulders = random(-1,1)>>
+			<<set $activeSlave.hips = 1>>
+			<<set $activeSlave.butt = 1>>
+			<<set $activeSlave.anus = 0>>
+			<<set $activeSlave.weight = 0>>
+			<<set $activeSlave.intelligence = either(-1, 1, 2)>>
+			<<set $activeSlave.intelligenceImplant = 1>>
+			<<set $activeSlave.entertainSkill = 25>>
+			<<set $activeSlave.whoreSkill = 0>>
+			<<set $activeSlave.health = random(30,60)>>
+			<<set $activeSlave.canRecruit = 0>>
+			<<set $activeSlave.behavioralFlaw = either("bitchy", "arrogant")>>
+			<<AddSlave $activeSlave>> /* skip New Slave Intro */
+			<<set $activeSlave.recruiter = 0>> /* override New Slave Intro */
+		<</for>>
+		/*Queen*/
+		<<set _queen.origin = "She was the Queen of a royal kingdom, till her husband was overthrown and she was acquired by "+$securityForceName+".">>
+		<<set _queen.recruiter = 0>>
+		<<set _queen.mother = $missingParentID>>
+		<<set $missingParentID-->>
+		<<set _queen.father = $missingParentID>>
+		<<set $missingParentID-->>
+		<<AddSlave _queen>> /* skip New Slave Intro */
+	<</replace>>
+<</link>> //You will be despised for this action, and trade will be greatly damaged.//
+<</if>>
+
 <<if $cash >= 2500000 && $familyTesting == 1>>
 <br><<link "Send a unheard amount of credits and goods to retrieve the entire court.">>
 	<<replace "#result">>
@@ -672,6 +780,6 @@ Time is short, but you are well placed to acquire some choice slaves. With an ad
 		<<set $missingParentID-->>
 		<<AddSlave _queen>> /* skip New Slave Intro */
 	<</replace>>
-<</link>> //You will loathed for this action and trade will be crippled.//
+<</link>> //You will be loathed for this action and trade will be crippled.//
 <</if>>
 </span>
\ No newline at end of file
-- 
GitLab


From 874151e3d67fd7006ed9de13a2bebf257d81821e Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sun, 15 Jul 2018 03:39:47 -0400
Subject: [PATCH 056/189] fix

---
 src/js/slaveSummaryWidgets.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 81c649051b0..d8d0b158f06 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -887,7 +887,7 @@ window.SlaveSummaryUncached = (function(){
 				} else if (slave.pregType >= 20) {
 					r += `a brood of offspring.`;
 				} else if (slave.pregType >= 10) {
-					r += `slave.pregType babies.`;
+					r += `${slave.pregType} babies.`;
 				} else if (slave.pregType === 9) {
 					r += `nonuplets.`;
 				} else if (slave.pregType === 8) {
-- 
GitLab


From 423099e91f0ed0c9adb6040f684023dd4ccaaee8 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sun, 15 Jul 2018 17:24:05 -0400
Subject: [PATCH 057/189] Fixes

---
 src/SecExp/attackReport.tw               | 20 --------------------
 src/pregmod/fSlaveSlaveDickConsummate.tw |  8 ++++----
 src/pregmod/fSlaveSlaveVagConsummate.tw  |  2 +-
 src/uncategorized/REFI.tw                |  1 -
 src/uncategorized/saLongTermEffects.tw   |  4 ++--
 src/utility/miscWidgets.tw               |  2 +-
 6 files changed, 8 insertions(+), 29 deletions(-)

diff --git a/src/SecExp/attackReport.tw b/src/SecExp/attackReport.tw
index 82a8c2056d6..83696e8eb68 100644
--- a/src/SecExp/attackReport.tw
+++ b/src/SecExp/attackReport.tw
@@ -862,16 +862,6 @@
 				Your soldiers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander.
 			<</if>>
 		<<elseif $Bodyguard.prestige >= 2>>
-			<<if $deployingMilitia == 1>>
-				Your volunteers
-				<<if $deployingMercs == 1>>
-					and your mercenaries are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave.
-				<<else>>
-					are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave.
-				<</if>>
-			<<elseif $deployingMercs == 1>>
-				Your mercenaries are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave.
-			<</if>>
 			<<if $deployingMilitia == 1>>
 				Your
 				<<if $deployingMercs == 1 && $SFIntervention == 1>>
@@ -1008,16 +998,6 @@
 				Your soldiers <<if $deployingSlaves == 1>>however<</if>> are not enthusiastic to have a slave as a commander.
 			<</if>>
 		<<elseif $HeadGirl.prestige >= 2>>
-			<<if $deployingMilitia == 1>>
-				Your volunteers
-				<<if $deployingMercs == 1>>
-					and your mercenaries are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave.
-				<<else>>
-					are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave.
-				<</if>>
-			<<elseif $deployingMercs == 1>>
-				Your mercenaries are delighted to have such a prestigious individual as their commander, almost forgetting she is a slave.
-			<</if>>
 			<<if $deployingMilitia == 1>>
 				Your
 				<<if $deployingMercs == 1 && $SFIntervention == 1>>
diff --git a/src/pregmod/fSlaveSlaveDickConsummate.tw b/src/pregmod/fSlaveSlaveDickConsummate.tw
index b2c04bd4c67..aea96c436eb 100644
--- a/src/pregmod/fSlaveSlaveDickConsummate.tw
+++ b/src/pregmod/fSlaveSlaveDickConsummate.tw
@@ -133,7 +133,7 @@ You call $slaverapistx.slaveName into the room.
 	<<if _isIncest == 1>>
 		<<if $activeSlave.father == $slaverapistx.ID && $activeSlave.mother == $slaverapistx.ID>>
 			the slave that is both $his mother and $his father,
-		<<elseif $slaverapistx.mother == $activeSlave.ID>>
+		<<elseif $slaverapistx.mother == $activeSlave.ID || $slaverapistx.father == $activeSlave.ID>>
 			$his own daughter,
 		<<elseif $activeSlave.mother == $slaverapistx.ID>>
 			$his own mother,
@@ -151,7 +151,7 @@ You call $slaverapistx.slaveName into the room.
 		$activeSlave.slaveName's simple mind does not even acknowledge that $slaverapistx.slaveName is
 		<<if $activeSlave.father == $slaverapistx.ID && $activeSlave.mother == $slaverapistx.ID>>
 			the slave that is both $his mother and $his father,
-		<<elseif $slaverapistx.mother == $activeSlave.ID>>
+		<<elseif $slaverapistx.mother == $activeSlave.ID || $slaverapistx.father == $activeSlave.ID>>
 			$his own daughter,
 		<<elseif $activeSlave.mother == $slaverapistx.ID>>
 			$his own mother,
@@ -170,7 +170,7 @@ You call $slaverapistx.slaveName into the room.
 		$activeSlave.slaveName is fully naked and <<if canSee($activeSlave)>>looking up at<<else>>waiting in front of<</if>>
 		<<if $activeSlave.father == $slaverapistx.ID && $activeSlave.mother == $slaverapistx.ID>>
 			the slave that is both $his mother and $his father,
-		<<elseif $slaverapistx.mother == $activeSlave.ID>>
+		<<elseif $slaverapistx.mother == $activeSlave.ID || $slaverapistx.father == $activeSlave.ID>>
 			$his own daughter,
 		<<elseif $activeSlave.mother == $slaverapistx.ID>>
 			$his own mother,
@@ -229,7 +229,7 @@ You call $slaverapistx.slaveName into the room.
 		$slaverapistx.slaveName sees
 		<<if $slaverapistx.father == $activeSlave.ID && $slaverapistx.mother == $activeSlave.ID>>
 			the slave that is both _his2 mother and _his2 father
-		<<elseif $activeSlave.mother == $slaverapistx.ID>>
+		<<elseif $activeSlave.mother == $slaverapistx.ID || $activeSlave.father == $slaverapistx.ID>>
 			_his2 own daughter
 		<<elseif $slaverapistx.mother == $activeSlave.ID>>
 			_his2 own mother
diff --git a/src/pregmod/fSlaveSlaveVagConsummate.tw b/src/pregmod/fSlaveSlaveVagConsummate.tw
index 6c68793ec9e..fee45e8ed23 100644
--- a/src/pregmod/fSlaveSlaveVagConsummate.tw
+++ b/src/pregmod/fSlaveSlaveVagConsummate.tw
@@ -104,7 +104,7 @@ Next, you see to $activeSlave.slaveName.
 	$activeSlave.slaveName is fully naked and <<if canSee($activeSlave)>>looking up at<<else>>waiting in front of<</if>>
 	<<if $activeSlave.father == $slaverapistx.ID && $activeSlave.mother == $slaverapistx.ID>>
 		the slave that is both $his mother and $his father,
-	<<elseif $slaverapistx.mother == $activeSlave.ID>>
+	<<elseif $slaverapistx.mother == $activeSlave.ID || $slaverapistx.father == $activeSlave.ID>>
 		$his own daughter,
 	<<elseif $activeSlave.mother == $slaverapistx.ID>>
 		$his own mother,
diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw
index 5fbe202a885..1b6b60fe1ec 100644
--- a/src/uncategorized/REFI.tw
+++ b/src/uncategorized/REFI.tw
@@ -741,7 +741,6 @@ There was a glint of envy <<if canSee($activeSlave)>>in her eyes when she saw<<e
 	<<else>>
 		urethral torment.
 	<</if>>
-	<<if $activeSlave.dick > 0>>dick abuse<<else>>clit torture<</if>>
 	@@.hotpink;She has become more devoted to you,@@ and @@.lightcoral;she has started to get off on pain.@@
 	<<set $activeSlave.devotion += 4>>
 	<<set $activeSlave.fetish = "masochist", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 65>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 986e158c00a..6a4a356daed 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -6450,9 +6450,9 @@
 	**      Voice.
 	**      Small chance for any non-childlike voice.
 	*/
-	<<if ((_countNCS < 3) && ($slaves[$i].voice < 3) && (random(1,100) > ($slaves[$i].voice * 15)))>>
+	<<if ((_countNCS < 3) && ($slaves[$i].voice < 3) && $slaves[$i].voice != 0 && (random(1,100) > ($slaves[$i].voice * 15)))>>
 		$possessiveCap @@.orange;NCS@@ has @@.lime;raised the pitch of $possessive voice, $pronoun now sounds more <<if $slaves[$i].voice == 1>>feminine<<else>>childlike<</if>>.@@
-		<<set $slaves[$i].voice -= 1, _countNCS++>>
+		<<set $slaves[$i].voice += 1, _countNCS++>>
 	<</if>>
 	/*
 	*       Pussy/Ass-Pussy rejuvination.
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 690460ea8cc..3140f743a2d 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -2028,7 +2028,7 @@ This experience
  Call as <<EventNameLink>>
  $args[0]: Slave.
 */
-<<widget "EventNameLink">><<if $surnameOrder != 1>><<switch $args[0].nationality>><<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">><<if $args[0].slaveSurname>><<set _name = $args[0].slaveSurname>><<set _name += " " + $args[0].slaveName>><<else>><<set _name = $args[0].slaveName>><</if>><<default>><<set _name = $args[0].slaveName>><<if $args[0].slaveSurname>><<set _name += " " + $args[0].slaveSurname>><</if>><</switch>><<else>><<set _name = $args[0].slaveName>><<if $args[0].slaveSurname>><<set _name += " " + $args[0].slaveSurname>><</if>><</if>><span id="name"><<print "[[_name|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span><</widget>>
+<<widget "EventNameLink">><<if $surnameOrder != 1>><<switch $args[0].nationality>><<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">><<if $args[0].slaveSurname>><<set _nameLink = $args[0].slaveSurname>><<set _nameLink += " " + $args[0].slaveName>><<else>><<set _nameLink = $args[0].slaveName>><</if>><<default>><<set _nameLink = $args[0].slaveName>><<if $args[0].slaveSurname>><<set _nameLink += " " + $args[0].slaveSurname>><</if>><</switch>><<else>><<set _nameLink = $args[0].slaveName>><<if $args[0].slaveSurname>><<set _nameLink += " " + $args[0].slaveSurname>><</if>><</if>><span id="name"><<print "[[_nameLink|Long Slave Description][$nextLink = passage(), $eventDescription = 1]]">></span><</widget>>
 
 /*
  Call as <<EventNameDelink>>
-- 
GitLab


From ae9f1368b27ff34d7a01cd1ee33bb722131da7f8 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sun, 15 Jul 2018 17:37:11 -0400
Subject: [PATCH 058/189] Another fix

---
 src/uncategorized/slaveInteract.tw | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 4c5c9a64d68..b3ed5ceb580 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -6,6 +6,7 @@
 
 <<set $nextButton = "Confirm changes", $nextLink = "AS Dump", $returnTo = "Main", _SL = $slaves.length>>
 <<setLocalPronouns $activeSlave>>
+<<run Enunciate($activeSlave)>>
 
 <<if ($activeSlave.assignmentVisible == 0)>>
 <<switch $activeSlave.assignment>>
-- 
GitLab


From 1269d562059d2129a22023489c08c351bb8f8708 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Mon, 16 Jul 2018 15:16:44 +0300
Subject: [PATCH 059/189] add custom label support to RA

---
 src/js/DefaultRules.tw                      |  8 ++++++++
 src/js/rulesAssistant.tw                    |  1 +
 src/js/rulesAssistantOptions.tw             | 19 +++++++++++++++++++
 src/uncategorized/BackwardsCompatibility.tw |  6 +++---
 4 files changed, 31 insertions(+), 3 deletions(-)

diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 2b7898375cc..a456dac92a1 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -53,6 +53,7 @@ window.DefaultRules = (function() {
 		ProcessSmartPiercings(slave, rule);
 		ProcessTattoos(slave, rule);
 		ProcessPorn(slave, rule);
+		ProcessLabel(slave, rule);
 		return r;
 	}
 
@@ -2183,6 +2184,13 @@ window.DefaultRules = (function() {
 			}
 		}
 	}
+	
+	function ProcessLabel(slave, rule) {
+		if (rule.label !== "no default setting" && slave.customLabel !== rule.label) {
+			slave.customLabel = rule.label;
+			r += `<br>${slave.slaveName}'s label has been set to ${rule.label}`;
+		}
+	}
 
 	return DefaultRules;
 })();
diff --git a/src/js/rulesAssistant.tw b/src/js/rulesAssistant.tw
index 8ade85b9a42..2116d3a4d48 100644
--- a/src/js/rulesAssistant.tw
+++ b/src/js/rulesAssistant.tw
@@ -289,6 +289,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			pregSpeed: "no default setting",
 			bellyImplantVol: -1,
 			teeth: "no default setting",
+			label: "no default setting",
 		}
 	};
 	return rule;
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index dd4a98aa105..e42f161bc1d 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -890,6 +890,7 @@ window.rulesAssistantOptions = (function() {
 			this.appendChild(new AutosurgerySection());
 			this.appendChild(new RegimenSection());
 			this.appendChild(new BehaviourSection());
+			this.appendChild(new OtherSection());
 		}
 
 		render() {
@@ -960,6 +961,13 @@ window.rulesAssistantOptions = (function() {
 				this.appendChild(new PornList());
 		}
 	}
+	
+	class OtherSection extends Section {
+		constructor() {
+			super("Other Settings");
+			this.appendChild(new LabelList());
+		}
+	}
 
 	class CosmeticSection extends Section {
 		constructor() {
@@ -3132,5 +3140,16 @@ window.rulesAssistantOptions = (function() {
 		}
 	}
 	
+	class LabelList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+			];
+			super("Custom label", items, true);
+			this.setValue(current_rule.set.label);
+			this.onchange = (value) => current_rule.set.label = value;
+		}
+	}
+	
 	return rulesAssistantOptions;
 })();
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 87c736cf6b9..22778d4a108 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2946,6 +2946,6 @@ Done!
 	else x.set.preg = false;
 })>>
 
-<<run $defaultRules.filter(x => !([1, 0, "no default setting"].includes(x.set.haircuts))).forEach(x => {
-	x.set.haircuts = "no default setting";
-})>>
+<<run $defaultRules.filter(x => x.set.haircuts === undefined).forEach(x => { x.set.haircuts = "no default setting"; })>>
+
+<<run $defaultRules.filter(x => x.set.label === undefined).forEach(x => { x.set.label = "no default setting"; }>>
-- 
GitLab


From 3772dc5c78fc4a52cc629a1d6a30e8d73b995f1a Mon Sep 17 00:00:00 2001
From: prndev <prndev@users.noreply.github.com>
Date: Mon, 16 Jul 2018 22:33:49 +0200
Subject: [PATCH 060/189] Added dynamic scrotum scaling.

---
 artTools/README.md                  |  2 ++
 artTools/vector_source_ndextras.svg | 44 +++++------------------------
 src/art/vector/Balls.tw             | 34 ++++++++--------------
 src/art/vector/layers/Balls.tw      |  3 ++
 src/art/vector/layers/Balls_0.tw    |  3 --
 src/art/vector/layers/Balls_1.tw    |  3 --
 src/art/vector/layers/Balls_2.tw    |  3 --
 src/art/vector/layers/Balls_3.tw    |  3 --
 src/art/vector/layers/Balls_4.tw    |  3 --
 src/art/vector/layers/Balls_5.tw    |  3 --
 src/art/vector/layers/Balls_6.tw    |  3 --
 src/art/vector/layers/Balls_7.tw    |  3 --
 src/art/vector/layers/Balls_8.tw    |  3 --
 13 files changed, 24 insertions(+), 86 deletions(-)
 create mode 100644 src/art/vector/layers/Balls.tw
 delete mode 100644 src/art/vector/layers/Balls_0.tw
 delete mode 100644 src/art/vector/layers/Balls_1.tw
 delete mode 100644 src/art/vector/layers/Balls_2.tw
 delete mode 100644 src/art/vector/layers/Balls_3.tw
 delete mode 100644 src/art/vector/layers/Balls_4.tw
 delete mode 100644 src/art/vector/layers/Balls_5.tw
 delete mode 100644 src/art/vector/layers/Balls_6.tw
 delete mode 100644 src/art/vector/layers/Balls_7.tw
 delete mode 100644 src/art/vector/layers/Balls_8.tw

diff --git a/artTools/README.md b/artTools/README.md
index 07fce7668ed..8324b0948d9 100644
--- a/artTools/README.md
+++ b/artTools/README.md
@@ -10,6 +10,8 @@ Note: This does not actually describe how to be an artist.
     killall inkscape
     artTools/vector_layer_split.py artTools/vector_source.svg tw src/art/vector/layers/
     compile
+    python3 artTools/normalize_svg.py artTools/vector_source.svg
+    git commit -a
 
 ## 1. Be an artist
 
diff --git a/artTools/vector_source_ndextras.svg b/artTools/vector_source_ndextras.svg
index da6bb9b6091..3ff331be51e 100644
--- a/artTools/vector_source_ndextras.svg
+++ b/artTools/vector_source_ndextras.svg
@@ -1015,43 +1015,13 @@
       <rect x="270.67728" y="413.32043" transform="rotate(0.45160762)" width="1.400056" height="9.8003931" id="rect15"/>
     </g>
   </g>
-  <g inkscape:groupmode="layer" id="Belly_" style="display:inline" inkscape:label="Belly_"/>
-  <g inkscape:groupmode="layer" id="Penis_" style="display:none" inkscape:label="Penis_">
-    <g inkscape:groupmode="layer" id="Balls_8" style="display:none;opacity:1" inkscape:label="Balls_8">
-      <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 236.3469,553.43633 c 10.78799,2.94037 22.0101,1.14132 24.42164,0.89468 20.66043,10.32815 40.83655,4.81655 51.07917,-16.08874 5.72866,-12.61253 -0.94678,-30.56012 -8.56506,-49.74716 -5.70643,-14.17929 -13.15939,-30.00415 -17.226,-34.51839 -25.60311,-25.78494 -34.15735,-6.96155 -56.96751,40.74686 -12.64856,21.51943 -23.27882,50.11228 7.25776,58.71275 z" id="path7946" style="fill:#000000"/>
-      <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 237.84992,551.46388 c 10.27384,2.88848 20.96111,1.12115 23.25776,0.87886 19.67583,10.14595 38.89037,4.73159 48.64485,-15.80491 5.45566,-12.38997 -0.20292,-30.9787 -7.45823,-49.8273 -5.43446,-13.92915 -11.21915,-29.47485 -15.09195,-33.90944 -24.38295,-25.33009 -34.54125,-5.881 -56.26432,40.9858 -12.04573,21.13977 -22.16941,49.22822 6.91189,57.67699 z" class="skin scrotum" id="path7948"/>
-    </g>
-    <g inkscape:label="Balls_7" style="display:none;opacity:1" id="Balls_7" inkscape:groupmode="layer">
-      <path id="path7952" d="m 240.32171,545.03209 c 9.68156,2.6388 19.75272,1.02426 21.91693,0.80291 18.54148,9.26889 36.64832,4.32256 45.84045,-14.43865 5.14112,-11.31898 -0.84968,-27.42585 -7.68663,-44.64505 -5.12116,-12.72505 -11.80974,-26.9269 -15.45928,-30.97815 -22.97723,-23.14041 -30.65414,-6.24757 -51.12487,36.56782 -11.35131,19.31238 -20.89132,44.97272 6.5134,52.69112 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc" style="fill:#000000"/>
-      <path id="path7954" class="skin scrotum" d="m 241.60976,542.86172 c 9.18709,2.58172 18.74388,1.00209 20.7976,0.78553 17.59455,9.0684 34.77661,4.22907 43.49927,-14.12636 4.87857,-11.07411 -0.18146,-27.68863 -6.66931,-44.53542 -4.85961,-12.4498 -10.0324,-26.34449 -13.49554,-30.30809 -21.80376,-22.63992 -30.88754,-5.25642 -50.31278,36.63291 -10.77155,18.89463 -19.82436,43.99996 6.18076,51.55143 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc"/>
-    </g>
-    <g inkscape:label="Balls_6" style="display:none;opacity:1" id="Balls_6" inkscape:groupmode="layer">
-      <path id="path7940" d="m 244.11974,536.2743 c 8.57513,2.33723 17.49535,0.9072 19.41222,0.71115 16.42253,8.20962 32.46009,3.82857 40.60172,-12.78858 4.55359,-10.02543 -0.75257,-24.29157 -6.80818,-39.54293 -4.53591,-11.2708 -10.46011,-23.84964 -13.69257,-27.43791 -20.35135,-20.49589 -27.15093,-5.53359 -45.28222,32.38878 -10.05407,17.10533 -18.50383,39.83316 5.76903,46.66949 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc" style="fill:#000000"/>
-      <path id="path7942" class="skin scrotum" d="m 245.22876,533.90601 c 8.11987,2.27495 16.5665,0.88301 18.38165,0.69219 15.55068,7.99086 30.73679,3.72656 38.44618,-12.4478 4.31185,-9.75824 -0.16038,-24.39855 -5.89457,-39.24353 -4.2951,-10.97046 -8.86699,-23.21412 -11.92783,-26.70676 -19.27093,-19.94975 -27.29949,-4.63183 -44.4682,32.28004 -9.52027,16.64948 -17.52147,38.77169 5.46277,45.42586 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc"/>
-    </g>
-    <g inkscape:groupmode="layer" id="Balls_5" style="display:none;opacity:1" inkscape:label="Balls_5">
-      <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 247.74099,527.16294 c 7.46871,2.03567 15.23797,0.79016 16.90752,0.6194 14.30357,7.15036 28.27184,3.33458 35.36299,-11.1385 3.96604,-8.73188 -0.65548,-21.1573 -5.92974,-34.44082 -3.95066,-9.81656 -9.11047,-20.77239 -11.92586,-23.89767 -17.72547,-17.85136 -23.64772,-4.8196 -39.43958,28.20975 -8.75682,14.89827 -16.11633,34.69359 5.02467,40.64784 z" id="path7934" style="fill:#000000"/>
-      <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 248.70691,525.10023 c 7.07219,1.98142 14.42898,0.76908 16.00992,0.60288 13.54422,6.95982 26.7709,3.24573 33.48558,-10.8417 3.7555,-8.49915 -0.13969,-21.25046 -5.13401,-34.18004 -3.74092,-9.55497 -7.72291,-20.21887 -10.38882,-23.26086 -16.78446,-17.37568 -23.77711,-4.03419 -38.73059,28.11503 -8.2919,14.50125 -15.26072,33.76909 4.75792,39.56469 z" class="skin scrotum" id="path7936"/>
-    </g>
-    <g inkscape:label="Balls_4" style="display:none;opacity:1" id="Balls_4" inkscape:groupmode="layer">
-      <path id="path7087" d="m 251.36225,517.52126 c 6.36228,1.7341 12.98059,0.6731 14.40281,0.52764 12.18462,6.09109 24.08361,2.84059 30.12426,-9.48843 3.37851,-7.43832 -0.55837,-18.02302 -5.0513,-29.3387 -3.3654,-8.36232 -7.76083,-17.69513 -10.15914,-20.35743 -15.09959,-15.20683 -20.14451,-4.10562 -33.59694,24.03071 -7.45957,12.69122 -13.72883,29.55403 4.28031,34.62621 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc" style="fill:#000000"/>
-      <path id="path7089" class="skin scrotum" d="m 252.18508,515.76412 c 6.0245,1.68789 12.29144,0.65515 13.63818,0.51357 11.53776,5.92878 22.80502,2.7649 28.52497,-9.23559 3.19916,-7.24008 -0.11899,-18.10239 -4.37345,-29.11656 -3.18673,-8.13948 -6.57882,-17.22361 -8.8498,-19.81496 -14.29798,-14.80162 -20.25473,-3.43656 -32.99298,23.95003 -7.06352,12.35301 -12.99997,28.76648 4.05308,33.70351 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc"/>
-    </g>
-    <g inkscape:groupmode="layer" id="Balls_3" style="display:none;opacity:1" inkscape:label="Balls_3">
-      <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 254.20165,507.75763 c 5.25585,1.43253 10.72321,0.55604 11.8981,0.43588 10.06567,5.03182 19.89538,2.3466 24.88554,-7.83836 2.79097,-6.14476 -0.46127,-14.88874 -4.17286,-24.23658 -2.78015,-6.90808 -6.41119,-14.61788 -8.39243,-16.81719 -12.47371,-12.56231 -16.6413,-3.39164 -27.7543,19.85167 -6.16232,10.48417 -11.34133,24.41447 3.53595,28.60458 z" id="path7081" style="fill:#000000"/>
-      <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 254.88139,506.30606 c 4.97681,1.39436 10.15391,0.54122 11.26644,0.42426 9.5313,4.89774 18.83914,2.28407 23.56437,-7.62949 2.64281,-5.981 -0.0983,-14.95431 -3.61289,-24.05307 -2.63255,-6.72399 -5.43474,-14.22836 -7.31079,-16.36906 -11.8115,-12.22756 -16.73235,-2.83893 -27.25537,19.78502 -5.83514,10.20478 -10.73922,23.76388 3.34824,27.84234 z" class="skin scrotum" id="path7083"/>
-    </g>
-    <g inkscape:label="Balls_2" style="display:none;opacity:1" id="Balls_2" inkscape:groupmode="layer">
-      <path id="path1992-1" d="m 257.66607,496.61899 c 4.14944,1.13097 8.46586,0.43899 9.39342,0.34412 7.94674,3.97257 15.70719,1.85262 19.64687,-6.1883 2.20344,-4.85122 -0.36417,-11.7545 -3.29443,-19.13452 -2.1949,-5.45385 -5.06156,-11.54066 -6.62573,-13.27699 -9.84786,-9.91781 -13.13813,-2.67766 -21.91172,15.67268 -4.86509,8.27714 -8.95386,19.27496 2.79159,22.58301 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc" style="fill:#000000"/>
-      <path id="path1992" class="skin scrotum" d="m 258.20272,495.47299 c 3.92914,1.10083 8.0164,0.42729 8.89473,0.33495 7.52486,3.86671 14.8733,1.80325 18.60382,-6.0234 2.08647,-4.72194 -0.0776,-11.80627 -2.85234,-18.98964 -2.07837,-5.30852 -4.29067,-11.23314 -5.77179,-12.9232 -9.32505,-9.65353 -13.21001,-2.2413 -21.51782,15.62006 -4.60678,8.05657 -8.4785,18.76133 2.6434,21.98123 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc"/>
-    </g>
-    <g inkscape:groupmode="layer" id="Balls_1" style="display:none;opacity:1" inkscape:label="Balls_1">
-      <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 261.10793,485.5631 c 3.043,0.8294 6.20846,0.32194 6.88869,0.25236 5.82776,2.9133 11.5189,1.35863 14.40808,-4.5382 1.6159,-3.55766 -0.26707,-8.62019 -2.41598,-14.03235 -1.60964,-3.99959 -3.71191,-8.46337 -4.859,-9.73671 -7.22195,-7.27326 -9.63488,-1.96367 -16.06901,11.4936 -3.56783,6.07006 -6.56634,14.13534 2.04722,16.5613 z" id="path7075" style="fill:#000000"/>
-      <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 261.50148,484.72268 c 2.88145,0.8073 5.87885,0.31336 6.52297,0.24564 5.51838,2.83566 10.90738,1.32242 13.64316,-4.41728 1.53012,-3.46285 -0.0569,-8.65816 -2.09177,-13.9261 -1.52418,-3.89302 -3.14657,-8.23785 -4.23276,-9.47726 -6.83854,-7.07944 -9.68759,-1.64366 -15.78014,11.45501 -3.3784,5.90831 -6.21773,13.75867 1.93854,16.11999 z" class="skin scrotum" id="path7077"/>
-    </g>
-    <g inkscape:label="Balls_0" style="display:none" id="Balls_0" inkscape:groupmode="layer">
-      <path id="path7093" d="m 264.41983,475.25851 c 1.93657,0.52783 3.95108,0.20488 4.38398,0.1606 3.70881,1.85403 7.33067,0.86464 9.16935,-2.88813 1.02837,-2.2641 -0.16996,-5.48591 -1.53754,-8.93023 -1.02438,-2.54535 -2.36227,-5.38611 -3.09228,-6.19647 -4.59607,-4.62873 -6.13167,-1.24969 -10.22637,7.31456 -2.27058,3.86301 -4.17884,8.99578 1.30286,10.53967 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc" style="fill:#000000"/>
-      <path id="path7095" class="skin scrotum" d="m 264.67028,474.72366 c 1.83377,0.51377 3.74132,0.19942 4.15124,0.15633 3.51192,1.80462 6.9415,0.84159 8.68255,-2.81117 0.97378,-2.20377 -0.0362,-5.51008 -1.3312,-8.86262 -0.97,-2.47753 -2.00249,-5.24259 -2.69375,-6.03136 -4.35207,-4.50538 -6.16521,-1.04603 -10.04253,7.29001 -2.15002,3.76007 -3.95698,8.75606 1.23369,10.25881 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccc"/>
+  <g inkscape:groupmode="layer" id="Belly_" style="display:none" inkscape:label="Belly_"/>
+  <g inkscape:groupmode="layer" id="Penis_" style="display:inline" inkscape:label="Penis_">
+    <g inkscape:label="Balls" style="display:inline;opacity:1" id="Balls" inkscape:groupmode="layer">
+      <g id="g5023">
+        <path style="fill:#000000" sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 257.66607,496.61899 c 4.14944,1.13097 8.46586,0.43899 9.39342,0.34412 7.94674,3.97257 15.70719,1.85262 19.64687,-6.1883 2.20344,-4.85122 -0.36417,-11.7545 -3.29443,-19.13452 -2.1949,-5.45385 -5.06156,-11.54066 -6.62573,-13.27699 -9.84786,-9.91781 -13.13813,-2.67766 -21.91172,15.67268 -4.86509,8.27714 -8.95386,19.27496 2.79159,22.58301 z" id="path1992-1"/>
+        <path sodipodi:nodetypes="ccccccc" inkscape:connector-curvature="0" d="m 258.20272,495.47299 c 3.92914,1.10083 8.0164,0.42729 8.89473,0.33495 7.52486,3.86671 14.8733,1.80325 18.60382,-6.0234 2.08647,-4.72194 -0.0776,-11.80627 -2.85234,-18.98964 -2.07837,-5.30852 -4.29067,-11.23314 -5.77179,-12.9232 -9.32505,-9.65353 -13.21001,-2.2413 -21.51782,15.62006 -4.60678,8.05657 -8.4785,18.76133 2.6434,21.98123 z" class="skin scrotum" id="path1992"/>
+      </g>
     </g>
     <g inkscape:label="Penis_10" inkscape:groupmode="layer" id="Penis_10" style="display:none;opacity:1">
       <path inkscape:connector-curvature="0" d="m 177.54966,423.60207 c 0.58231,-0.24185 1.52523,0.0443 2.06579,-0.20185 25.72401,-11.7127 4.43582,-28.56687 -1.97404,-27.76071 -17.29805,6.06616 -10.64391,23.21603 -5.00792,24.16114 0.0809,0.0587 0.67287,1.50415 4.91615,3.80142 z" id="path8126" sodipodi:nodetypes="cscccc" style="fill:#000000"/>
diff --git a/src/art/vector/Balls.tw b/src/art/vector/Balls.tw
index 708874db7f6..306938f52d9 100644
--- a/src/art/vector/Balls.tw
+++ b/src/art/vector/Balls.tw
@@ -1,25 +1,15 @@
 :: Art_Vector_Balls_ [nobr]
 
-<<if _artSlave.scrotum > 0 && _artSlave.balls > 0 && _artSlave.clothes != "a slave gown" && _artSlave.clothes != "a cheerleader outfit" && _artSlave.clothes != "cutoffs and a t-shirt" && _artSlave.clothes != "a halter top dress" && _artSlave.clothes != "a hijab and abaya" && _artSlave.clothes != "a leotard" && _artSlave.clothes != "a nice maid outfit" && _artSlave.clothes != "a slutty maid outfit" && _artSlave.clothes != "a military uniform" && _artSlave.clothes != "a mini dress" && _artSlave.clothes != "a nice nurse outfit" && _artSlave.clothes != "a slutty nurse outfit" && _artSlave.clothes != "a scalemail bikini" && _artSlave.clothes != "a schoolgirl outfit" && _artSlave.clothes != "a ball gown" && _artSlave.clothes != "battledress" && _artSlave.clothes != "a slutty outfit" && _artSlave.clothes != "spats and a tank top" && _artSlave.clothes != "a succubus outfit" && _artSlave.clothes != "nice business attire" && _artSlave.clothes != "slutty business attire" && _artSlave.clothes != "attractive lingerie for a pregnant woman" && _artSlave.clothes != "a bunny outfit" && _artSlave.clothes != "a chattel habit" && _artSlave.clothes != "conservative clothing" && _artSlave.clothes != "harem gauze" && _artSlave.clothes != "a huipil" && _artSlave.clothes != "a kimono" && _artSlave.clothes != "a maternity dress" && _artSlave.clothes != "a slutty qipao" && _artSlave.clothes != "stretch pants and a crop-top" && _artSlave.clothes != "a toga" && _artSlave.clothes != "a penitent nuns habit" && _artSlave.clothes != "a schutzstaffel uniform" && _artSlave.clothes != "a slutty schutzstaffel uniform" && _artSlave.clothes != "a red army uniform" && _artSlave.clothes != "an apron" && _artSlave.clothes != "battlearmor" && _artSlave.clothes != "a dirndl" && _artSlave.clothes != "a biyelgee costume" && _artSlave.clothes != "lederhosen" && _artSlave.clothes != "a mounty outfit" && _artSlave.clothes != "a long qipao">>
-	<<if _artSlave.scrotum >= 9>>
-		<<set _ballSize = 8>>
-	<<elseif _artSlave.scrotum >= 8>>
-		<<set _ballSize = 7>>
-	<<elseif _artSlave.scrotum >= 7>>
-		<<set _ballSize = 6>>
-	<<elseif _artSlave.scrotum >= 6>>
-		<<set _ballSize = 5>>
-	<<elseif _artSlave.scrotum >= 5>>
-		<<set _ballSize = 4>>
-	<<elseif _artSlave.scrotum >= 4>>
-		<<set _ballSize = 3>>
-	<<elseif _artSlave.scrotum >= 3>>
-		<<set _ballSize = 2>>
-	<<elseif _artSlave.scrotum >= 2>>
-		<<set _ballSize = 1>>
-	<<else>>
-		<<set _ballSize = 0>>
-	<</if>>
-  <<set _art = "Art_Vector_Balls_"+_ballSize>>
+<<if _artSlave.scrotum > 0 && _artSlave.balls > 0 && !(["a slave gown","a cheerleader outfit","cutoffs and a t-shirt","a halter top dress","a hijab and abaya","a leotard","a nice maid outfit","a slutty maid outfit","a military uniform","a mini dress","a nice nurse outfit","a slutty nurse outfit","a scalemail bikini","a schoolgirl outfit","a ball gown","battledress","a slutty outfit","spats and a tank top","a succubus outfit","nice business attire","slutty business attire","attractive lingerie for a pregnant woman","a bunny outfit","a chattel habit","conservative clothing","harem gauze","a huipil","a kimono","a maternity dress","a slutty qipao","stretch pants and a crop-top","a toga","a penitent nuns habit","a schutzstaffel uniform","a slutty schutzstaffel uniform","a red army uniform","an apron","battlearmor","a dirndl","a biyelgee costume","lederhosen","a mounty outfit","a long qipao"].includes(_artSlave.clothes)) >>
+  <<set _art_scale_factor = _artSlave.scrotum/3 >>
+  <<set _art_translation_x = -271*(_art_scale_factor-1) >>
+  <<set _art_translation_y = -453*(_art_scale_factor-1) >>
+/*
+_art_balls_transform is for internal program usage.
+_art_transform will affect the display.
+*/
+<<set _art_balls_transform = "matrix(" + _art_scale_factor +",0,0," + _art_scale_factor + "," + _art_translation_x + "," + _art_translation_y + ")">>
+<<set _art_transform = _art_balls_transform>>
+  <<set _art = "Art_Vector_Balls">>
   <<include _art>>
-<</if>>
\ No newline at end of file
+<</if>>
diff --git a/src/art/vector/layers/Balls.tw b/src/art/vector/layers/Balls.tw
new file mode 100644
index 00000000000..f18ca283b81
--- /dev/null
+++ b/src/art/vector/layers/Balls.tw
@@ -0,0 +1,3 @@
+:: Art_Vector_Balls [nobr]
+
+<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><g transform="'+_art_transform+'"id="g5023"><path style="fill:#000000" sodipodi:nodetypes="ccccccc" d="m 257.66607,496.61899 c 4.14944,1.13097 8.46586,0.43899 9.39342,0.34412 7.94674,3.97257 15.70719,1.85262 19.64687,-6.1883 2.20344,-4.85122 -0.36417,-11.7545 -3.29443,-19.13452 -2.1949,-5.45385 -5.06156,-11.54066 -6.62573,-13.27699 -9.84786,-9.91781 -13.13813,-2.67766 -21.91172,15.67268 -4.86509,8.27714 -8.95386,19.27496 2.79159,22.58301 z" id="path1992-1"/><path sodipodi:nodetypes="ccccccc" d="m 258.20272,495.47299 c 3.92914,1.10083 8.0164,0.42729 8.89473,0.33495 7.52486,3.86671 14.8733,1.80325 18.60382,-6.0234 2.08647,-4.72194 -0.0776,-11.80627 -2.85234,-18.98964 -2.07837,-5.30852 -4.29067,-11.23314 -5.77179,-12.9232 -9.32505,-9.65353 -13.21001,-2.2413 -21.51782,15.62006 -4.60678,8.05657 -8.4785,18.76133 2.6434,21.98123 z" class="skin scrotum" id="path1992"/></g></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_0.tw b/src/art/vector/layers/Balls_0.tw
deleted file mode 100644
index d47036b922c..00000000000
--- a/src/art/vector/layers/Balls_0.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_0 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path id="path7093" d="m 264.41983,475.25851 c 1.93657,0.52783 3.95108,0.20488 4.38398,0.1606 3.70881,1.85403 7.33067,0.86464 9.16935,-2.88813 1.02837,-2.2641 -0.16996,-5.48591 -1.53754,-8.93023 -1.02438,-2.54535 -2.36227,-5.38611 -3.09228,-6.19647 -4.59607,-4.62873 -6.13167,-1.24969 -10.22637,7.31456 -2.27058,3.86301 -4.17884,8.99578 1.30286,10.53967 z" sodipodi:nodetypes="ccccccc" style="fill:#000000"/><path id="path7095" class="skin scrotum" d="m 264.67028,474.72366 c 1.83377,0.51377 3.74132,0.19942 4.15124,0.15633 3.51192,1.80462 6.9415,0.84159 8.68255,-2.81117 0.97378,-2.20377 -0.0362,-5.51008 -1.3312,-8.86262 -0.97,-2.47753 -2.00249,-5.24259 -2.69375,-6.03136 -4.35207,-4.50538 -6.16521,-1.04603 -10.04253,7.29001 -2.15002,3.76007 -3.95698,8.75606 1.23369,10.25881 z" sodipodi:nodetypes="ccccccc"/></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_1.tw b/src/art/vector/layers/Balls_1.tw
deleted file mode 100644
index ef18b97112a..00000000000
--- a/src/art/vector/layers/Balls_1.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_1 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path sodipodi:nodetypes="ccccccc" d="m 261.10793,485.5631 c 3.043,0.8294 6.20846,0.32194 6.88869,0.25236 5.82776,2.9133 11.5189,1.35863 14.40808,-4.5382 1.6159,-3.55766 -0.26707,-8.62019 -2.41598,-14.03235 -1.60964,-3.99959 -3.71191,-8.46337 -4.859,-9.73671 -7.22195,-7.27326 -9.63488,-1.96367 -16.06901,11.4936 -3.56783,6.07006 -6.56634,14.13534 2.04722,16.5613 z" id="path7075" style="fill:#000000"/><path sodipodi:nodetypes="ccccccc" d="m 261.50148,484.72268 c 2.88145,0.8073 5.87885,0.31336 6.52297,0.24564 5.51838,2.83566 10.90738,1.32242 13.64316,-4.41728 1.53012,-3.46285 -0.0569,-8.65816 -2.09177,-13.9261 -1.52418,-3.89302 -3.14657,-8.23785 -4.23276,-9.47726 -6.83854,-7.07944 -9.68759,-1.64366 -15.78014,11.45501 -3.3784,5.90831 -6.21773,13.75867 1.93854,16.11999 z" class="skin scrotum" id="path7077"/></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_2.tw b/src/art/vector/layers/Balls_2.tw
deleted file mode 100644
index cc1e2cc0f53..00000000000
--- a/src/art/vector/layers/Balls_2.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_2 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path id="path1992-1" d="m 257.66607,496.61899 c 4.14944,1.13097 8.46586,0.43899 9.39342,0.34412 7.94674,3.97257 15.70719,1.85262 19.64687,-6.1883 2.20344,-4.85122 -0.36417,-11.7545 -3.29443,-19.13452 -2.1949,-5.45385 -5.06156,-11.54066 -6.62573,-13.27699 -9.84786,-9.91781 -13.13813,-2.67766 -21.91172,15.67268 -4.86509,8.27714 -8.95386,19.27496 2.79159,22.58301 z" sodipodi:nodetypes="ccccccc" style="fill:#000000"/><path id="path1992" class="skin scrotum" d="m 258.20272,495.47299 c 3.92914,1.10083 8.0164,0.42729 8.89473,0.33495 7.52486,3.86671 14.8733,1.80325 18.60382,-6.0234 2.08647,-4.72194 -0.0776,-11.80627 -2.85234,-18.98964 -2.07837,-5.30852 -4.29067,-11.23314 -5.77179,-12.9232 -9.32505,-9.65353 -13.21001,-2.2413 -21.51782,15.62006 -4.60678,8.05657 -8.4785,18.76133 2.6434,21.98123 z" sodipodi:nodetypes="ccccccc"/></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_3.tw b/src/art/vector/layers/Balls_3.tw
deleted file mode 100644
index cad29b29521..00000000000
--- a/src/art/vector/layers/Balls_3.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_3 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path sodipodi:nodetypes="ccccccc" d="m 254.20165,507.75763 c 5.25585,1.43253 10.72321,0.55604 11.8981,0.43588 10.06567,5.03182 19.89538,2.3466 24.88554,-7.83836 2.79097,-6.14476 -0.46127,-14.88874 -4.17286,-24.23658 -2.78015,-6.90808 -6.41119,-14.61788 -8.39243,-16.81719 -12.47371,-12.56231 -16.6413,-3.39164 -27.7543,19.85167 -6.16232,10.48417 -11.34133,24.41447 3.53595,28.60458 z" id="path7081" style="fill:#000000"/><path sodipodi:nodetypes="ccccccc" d="m 254.88139,506.30606 c 4.97681,1.39436 10.15391,0.54122 11.26644,0.42426 9.5313,4.89774 18.83914,2.28407 23.56437,-7.62949 2.64281,-5.981 -0.0983,-14.95431 -3.61289,-24.05307 -2.63255,-6.72399 -5.43474,-14.22836 -7.31079,-16.36906 -11.8115,-12.22756 -16.73235,-2.83893 -27.25537,19.78502 -5.83514,10.20478 -10.73922,23.76388 3.34824,27.84234 z" class="skin scrotum" id="path7083"/></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_4.tw b/src/art/vector/layers/Balls_4.tw
deleted file mode 100644
index 6e734a38e63..00000000000
--- a/src/art/vector/layers/Balls_4.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_4 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path id="path7087" d="m 251.36225,517.52126 c 6.36228,1.7341 12.98059,0.6731 14.40281,0.52764 12.18462,6.09109 24.08361,2.84059 30.12426,-9.48843 3.37851,-7.43832 -0.55837,-18.02302 -5.0513,-29.3387 -3.3654,-8.36232 -7.76083,-17.69513 -10.15914,-20.35743 -15.09959,-15.20683 -20.14451,-4.10562 -33.59694,24.03071 -7.45957,12.69122 -13.72883,29.55403 4.28031,34.62621 z" sodipodi:nodetypes="ccccccc" style="fill:#000000"/><path id="path7089" class="skin scrotum" d="m 252.18508,515.76412 c 6.0245,1.68789 12.29144,0.65515 13.63818,0.51357 11.53776,5.92878 22.80502,2.7649 28.52497,-9.23559 3.19916,-7.24008 -0.11899,-18.10239 -4.37345,-29.11656 -3.18673,-8.13948 -6.57882,-17.22361 -8.8498,-19.81496 -14.29798,-14.80162 -20.25473,-3.43656 -32.99298,23.95003 -7.06352,12.35301 -12.99997,28.76648 4.05308,33.70351 z" sodipodi:nodetypes="ccccccc"/></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_5.tw b/src/art/vector/layers/Balls_5.tw
deleted file mode 100644
index adee714c3a0..00000000000
--- a/src/art/vector/layers/Balls_5.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_5 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path sodipodi:nodetypes="ccccccc" d="m 247.74099,527.16294 c 7.46871,2.03567 15.23797,0.79016 16.90752,0.6194 14.30357,7.15036 28.27184,3.33458 35.36299,-11.1385 3.96604,-8.73188 -0.65548,-21.1573 -5.92974,-34.44082 -3.95066,-9.81656 -9.11047,-20.77239 -11.92586,-23.89767 -17.72547,-17.85136 -23.64772,-4.8196 -39.43958,28.20975 -8.75682,14.89827 -16.11633,34.69359 5.02467,40.64784 z" id="path7934" style="fill:#000000"/><path sodipodi:nodetypes="ccccccc" d="m 248.70691,525.10023 c 7.07219,1.98142 14.42898,0.76908 16.00992,0.60288 13.54422,6.95982 26.7709,3.24573 33.48558,-10.8417 3.7555,-8.49915 -0.13969,-21.25046 -5.13401,-34.18004 -3.74092,-9.55497 -7.72291,-20.21887 -10.38882,-23.26086 -16.78446,-17.37568 -23.77711,-4.03419 -38.73059,28.11503 -8.2919,14.50125 -15.26072,33.76909 4.75792,39.56469 z" class="skin scrotum" id="path7936"/></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_6.tw b/src/art/vector/layers/Balls_6.tw
deleted file mode 100644
index e7128008925..00000000000
--- a/src/art/vector/layers/Balls_6.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_6 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path id="path7940" d="m 244.11974,536.2743 c 8.57513,2.33723 17.49535,0.9072 19.41222,0.71115 16.42253,8.20962 32.46009,3.82857 40.60172,-12.78858 4.55359,-10.02543 -0.75257,-24.29157 -6.80818,-39.54293 -4.53591,-11.2708 -10.46011,-23.84964 -13.69257,-27.43791 -20.35135,-20.49589 -27.15093,-5.53359 -45.28222,32.38878 -10.05407,17.10533 -18.50383,39.83316 5.76903,46.66949 z" sodipodi:nodetypes="ccccccc" style="fill:#000000"/><path id="path7942" class="skin scrotum" d="m 245.22876,533.90601 c 8.11987,2.27495 16.5665,0.88301 18.38165,0.69219 15.55068,7.99086 30.73679,3.72656 38.44618,-12.4478 4.31185,-9.75824 -0.16038,-24.39855 -5.89457,-39.24353 -4.2951,-10.97046 -8.86699,-23.21412 -11.92783,-26.70676 -19.27093,-19.94975 -27.29949,-4.63183 -44.4682,32.28004 -9.52027,16.64948 -17.52147,38.77169 5.46277,45.42586 z" sodipodi:nodetypes="ccccccc"/></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_7.tw b/src/art/vector/layers/Balls_7.tw
deleted file mode 100644
index 7dd1203022f..00000000000
--- a/src/art/vector/layers/Balls_7.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_7 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path id="path7952" d="m 240.32171,545.03209 c 9.68156,2.6388 19.75272,1.02426 21.91693,0.80291 18.54148,9.26889 36.64832,4.32256 45.84045,-14.43865 5.14112,-11.31898 -0.84968,-27.42585 -7.68663,-44.64505 -5.12116,-12.72505 -11.80974,-26.9269 -15.45928,-30.97815 -22.97723,-23.14041 -30.65414,-6.24757 -51.12487,36.56782 -11.35131,19.31238 -20.89132,44.97272 6.5134,52.69112 z" sodipodi:nodetypes="ccccccc" style="fill:#000000"/><path id="path7954" class="skin scrotum" d="m 241.60976,542.86172 c 9.18709,2.58172 18.74388,1.00209 20.7976,0.78553 17.59455,9.0684 34.77661,4.22907 43.49927,-14.12636 4.87857,-11.07411 -0.18146,-27.68863 -6.66931,-44.53542 -4.85961,-12.4498 -10.0324,-26.34449 -13.49554,-30.30809 -21.80376,-22.63992 -30.88754,-5.25642 -50.31278,36.63291 -10.77155,18.89463 -19.82436,43.99996 6.18076,51.55143 z" sodipodi:nodetypes="ccccccc"/></svg></html>' >>
\ No newline at end of file
diff --git a/src/art/vector/layers/Balls_8.tw b/src/art/vector/layers/Balls_8.tw
deleted file mode 100644
index 602139a3bff..00000000000
--- a/src/art/vector/layers/Balls_8.tw
+++ /dev/null
@@ -1,3 +0,0 @@
-:: Art_Vector_Balls_8 [nobr]
-
-<<print '<html><svg viewBox="0 0 560 1000" class="'+_art_display_class+'"><path sodipodi:nodetypes="ccccccc" d="m 236.3469,553.43633 c 10.78799,2.94037 22.0101,1.14132 24.42164,0.89468 20.66043,10.32815 40.83655,4.81655 51.07917,-16.08874 5.72866,-12.61253 -0.94678,-30.56012 -8.56506,-49.74716 -5.70643,-14.17929 -13.15939,-30.00415 -17.226,-34.51839 -25.60311,-25.78494 -34.15735,-6.96155 -56.96751,40.74686 -12.64856,21.51943 -23.27882,50.11228 7.25776,58.71275 z" id="path7946" style="fill:#000000"/><path sodipodi:nodetypes="ccccccc" d="m 237.84992,551.46388 c 10.27384,2.88848 20.96111,1.12115 23.25776,0.87886 19.67583,10.14595 38.89037,4.73159 48.64485,-15.80491 5.45566,-12.38997 -0.20292,-30.9787 -7.45823,-49.8273 -5.43446,-13.92915 -11.21915,-29.47485 -15.09195,-33.90944 -24.38295,-25.33009 -34.54125,-5.881 -56.26432,40.9858 -12.04573,21.13977 -22.16941,49.22822 6.91189,57.67699 z" class="skin scrotum" id="path7948"/></svg></html>' >>
\ No newline at end of file
-- 
GitLab


From e8bd26614964ae642e5e9d0752193a9bdd9e3184 Mon Sep 17 00:00:00 2001
From: prndev <prndev@users.noreply.github.com>
Date: Mon, 16 Jul 2018 15:02:13 -0700
Subject: [PATCH 061/189] Remove obsolete costs.tw.

---
 src/uncategorized/costs.tw | 526 -------------------------------------
 src/uncategorized/main.tw  |   1 -
 2 files changed, 527 deletions(-)
 delete mode 100644 src/uncategorized/costs.tw

diff --git a/src/uncategorized/costs.tw b/src/uncategorized/costs.tw
deleted file mode 100644
index 1f42e6b34c6..00000000000
--- a/src/uncategorized/costs.tw
+++ /dev/null
@@ -1,526 +0,0 @@
-:: Costs [nobr]
-
-<<set $costs = ($brothel*$facilityCost)+($arcade*$facilityCost*0.5)+($club*$facilityCost)+($dairy*$facilityCost)+($incubator*$facilityCost*10)>>
-
-<<set $costs += (0.1*$brothelUpgradeDrugs*$brothel*$facilityCost)+(0.2*$arcadeUpgradeInjectors*$arcade*$facilityCost)+(0.2*$arcadeUpgradeCollectors*$arcade*$facilityCost)+(0.2*$clubUpgradePDAs*$club*$facilityCost)+(0.2*$dairyFeedersUpgrade*$dairy*$facilityCost)+(0.1*$dairyPregUpgrade*$dairy*$facilityCost)+(0.2*$dairyStimulatorsUpgrade*$facilityCost)+(0.2*$servantsQuartersUpgradeMonitoring*$servantsQuarters*$facilityCost)+(0.2*$incubatorUpgradeWeight*$incubator*$facilityCost)+(0.2*$incubatorUpgradeMuscles*$incubator*$facilityCost)+(0.2*$incubatorUpgradeReproduction*$incubator*$facilityCost)+(0.2*$incubatorUpgradeGrowthStims*$incubator*$facilityCost)+(0.5*$incubatorUpgradeSpeed*$incubator*$facilityCost)>>
-
-<<if $dairy > 0>>
-	<<set $costs += ($bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren)*100>>
-<</if>>
-
-<<if $brothel > 0>>
-	<<set $costs += $brothelAdsSpending>>
-<</if>>
-<<if $club > 0>>
-	<<set $costs += $clubAdsSpending>>
-<</if>>
-
-<<if $incubator > 0>>
-	<<set $costs += ($incubatorWeightSetting+$incubatorMusclesSetting+$incubatorReproductionSetting+$incubatorGrowthStimsSetting)*500>>
-<</if>>
-
-<<if ($masterSuitePregnancySlaveLuxuries == 1)>>
-	<<set $costs += 500>>
-<</if>>
-<<if ($masterSuitePregnancyFertilitySupplements == 1)>>
-	<<set $costs += 1000>>
-<</if>>
-
-<<set $costs += ($girls*(250+($economy*500)))>>
-
-<<if $arcologies[0].FSRepopulationFocusLaw == 1 && $PC.pregKnown == 1>>
-	<<set $costs -= 500>>
-<</if>>
-
-/* security expansion */
-<<if $secExp == 1>>
-	<<set $costs += ($edictsUpkeep + $SFSupportUpkeep)>>
-
-	<<if $propHub != 0>>
-		<<set $costs += $propHubUpkeep>>
-	<</if>>
-	<<if $secHQ != 0>>
-		<<set $costs += ($secHQUpkeep)+(20*$secHelots)>>
-	<</if>>
-	<<if $secBarracks != 0>>
-		<<set $costs += $secBarracksUpkeep>>
-	<</if>>
-	<<if $riotCenter != 0>>
-		<<set $costs += $riotUpkeep>>
-	<</if>>
-
-	<<if $soldierWages == 0>>
-		<<set _soldierMod = 1>>
-	<<elseif $soldierWages == 1>>
-		<<set _soldierMod = 1.5>>
-	<<else>>
-		<<set _soldierMod = 2>>
-	<</if>>
-
-	<<set _mL = $militiaUnits.length>>
-	<<for _i = 0; _i < _mL; _i++>>
-		<<set $costs += $militiaUnits[_i].troops*$soldierUpkeep * _soldierMod>>
-	<</for>>
-	<<set _sL = $slaveUnits.length>>
-	<<for _i = 0; _i < _sL; _i++>>
-		<<set $costs += $militiaUnits[_i].troops*$soldierUpkeep * 0.5 * _soldierMod>>
-	<</for>>
-	<<set _meL = $mercUnits.length>>
-	<<for _i = 0; _i < _meL; _i++>>
-		<<set $costs += $militiaUnits[_i].troops*$soldierUpkeep * 1.5 * _soldierMod>>
-	<</for>>
-<</if>>
-
-<<set $costs += $citizenOrphanageTotal*100>>
-<<set $costs += $privateOrphanageTotal*500>>
-<<if $breederOrphanageTotal > 0>>
-	<<set $costs += 50>>
-<</if>>
-
-<<if $peacekeepers != 0>>
-	<<if $peacekeepers.undermining != 0>>
-		<<set $costs += $peacekeepers.undermining>>
-	<</if>>
-<</if>>
-
-<<if $mercenaries > 0>>
-	<<set _mercCosts = $mercenaries*2000>>
-	<<if $barracks>><<set _mercCosts *= 0.5>><</if>>
-	<<if ($PC.warfare >= 100) || ($PC.career == "arcology owner")>><<set _mercCosts *= 0.5>><</if>>
-	<<set $costs += _mercCosts>>
-<</if>>
-
-<<set $costs += $FSSpending>>
-
-<<for $i = 0; $i < $slaves.length; $i++>>
-
-<<switch $slaves[$i].assignment>>
-<<case "be confined in the arcade">>
-	<<set $costs += ($rulesCost*.75)>>
-<<case "work in the dairy">>
-	<<if $dairyRestraintsSetting >= 2>>
-		<<set $costs += ($rulesCost*.75)>>
-	<<elseif $slaves[$i].livingRules == "normal">>
-		<<set $costs += ($rulesCost*1.5)>>
-	<<elseif $dairyDecoration == "Degradationist">>
-		<<set $costs += ($rulesCost*.9)>>
-	<<else>>
-		<<set $costs += $rulesCost>>
-	<</if>>
-<<case "work in the brothel">>
-	<<if $slaves[$i].livingRules == "normal">>
-		<<set $costs += ($rulesCost*1.5)>>
-	<<else>>
-		<<set $costs += $rulesCost>>
-	<</if>>
-<<case "serve in the club" "learn in the schoolroom">>
-	<<set $costs += ($rulesCost*1.5)>>
-<<case "get treatment in the clinic">>
-	<<if $slaves[$i].livingRules == "luxurious">>
-		<<set $costs += ($rulesCost*2)>>
-	<<elseif $slaves[$i].livingRules == "normal">>
-		<<set $costs += ($rulesCost*1.5)>>
-	<<else>>
-		<<set $costs += $rulesCost>>
-	<</if>>
-<<case "rest in the spa">>
-	<<if $slaves[$i].livingRules == "luxurious">>
-		<<set $costs += ($rulesCost*1.75)>>
-	<<elseif $slaves[$i].livingRules == "normal">>
-		<<set $costs += ($rulesCost*1.5)>>
-	<<else>>
-		<<set $costs += $rulesCost>>
-	<</if>>
-<<case "be a servant">>
-	<<if $slaves[$i].livingRules == "normal">>
-		<<set $costs += ($rulesCost*1.5)>>
-	<<else>>
-		<<if $servantsQuartersDecoration == "Degradationist">>
-			<<set $costs += ($rulesCost*.9)>>
-		<<else>>
-			<<set $costs += $rulesCost>>
-		<</if>>
-	<</if>>
-<<case "be confined in the cellblock">>
-	<<if $slaves[$i].livingRules == "normal">>
-		<<set $costs += ($rulesCost*1.25)>>
-	<<else>>
-		<<set $costs += ($rulesCost*.9)>>
-	<</if>>
-<<case "be the Madam" "be the DJ" "be the Nurse" "be the Wardeness" "be the Attendant" "be the Schoolteacher" "be the Stewardess" "be the Milkmaid">>
-	<<set $costs += ($rulesCost*2)>>
-<<default>>
-	<<if $slaves[$i].livingRules == "luxurious">>
-		<<if $slaves[$i].relationship >= 4>>
-			<<set $costs += ($rulesCost*3)>>
-		<<else>>
-			<<set $costs += ($rulesCost*4)>>
-		<</if>>
-	<<elseif $slaves[$i].livingRules == "normal">>
-		<<set $costs += ($rulesCost*2)>>
-	<<else>>
-		<<set $costs += $rulesCost>>
-	<</if>>
-<</switch>>
-
-<<set $costs += $foodCost*4>>
-<<switch $slaves[$i].diet>>
-<<case "fattening" "muscle building">>
-	<<set $costs += $foodCost>>
-<<case "restricted" "slimming">>
-	<<set $costs -= $foodCost>>
-<</switch>>
-<<if $slaves[$i].weight > 130>>
-	<<set $costs += $foodCost*2>>
-<<elseif $slaves[$i].weight > 50>>
-	<<set $costs += $foodCost>>
-<<elseif $slaves[$i].weight < -50>>
-	<<set $costs -= $foodCost>>
-<</if>>
-<<if $slaves[$i].drugs == "appetite suppressors">>
-	<<set $costs -= $foodCost>>
-<</if>>
-<<if $slaves[$i].lactation > 0>>
-	<<set $costs += $foodCost*$slaves[$i].lactation*(1+Math.trunc($slaves[$i].boobs/10000))>>
-<</if>>
-<<if $slaves[$i].preg > 5>>
-	<<if $slaves[$i].assignment == "work in the dairy" && $dairyFeedersSetting > 0>>
-	<<elseif ($slaves[$i].assignment == "serve in the master suite" || $slaves[$i].assignment == "be your concubine") && $masterSuiteUpgradePregnancy == 1>>
-	<<else>>
-		<<if $slaves[$i].pregControl == "speed up">>
-			<<set $costs += $foodCost*$slaves[$i].pregType*3>>
-		<<else>>
-			<<set $costs += $foodCost*$slaves[$i].pregType>>
-		<</if>>
-	<</if>>
-<</if>>
-
-<<switch $slaves[$i].diet>>
-<<case "XX" "XY" "fertility">>
-	<<set $costs += 25>>
-<<case "cleansing">>
-	<<set $costs += 50>>
-<<case "XXY">>
-	<<set $costs += 75>>
-<</switch>>
-
-<<if $boobAccessibility != 1>>
-	<<if ($slaves[$i].boobs > 20000)>>
-	<<if ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2) && ($slaves[$i].assignment != "be confined in the arcade")>>
-	<<set $costs += 50>>
-	<</if>>
-	<</if>>
-<</if>>
-
-<<if $pregAccessibility != 1>>
-	<<if ($slaves[$i].belly >= 60000)>>
-	<<if ($slaves[$i].assignment != "labor in the production line") && ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2) && ($slaves[$i].assignment != "be confined in the arcade")>>
-	<<set $costs += 100>>
-	<</if>>
-	<</if>>
-<</if>>
-
-<<if $dickAccessibility != 1>>
-	<<if ($slaves[$i].dick > 45)>>
-	<<if ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2) && ($slaves[$i].assignment != "be confined in the arcade")>>
-	<<set $costs += 50>>
-	<</if>>
-	<</if>>
-<</if>>
-
-<<if $ballsAccessibility != 1>>
-	<<if ($slaves[$i].balls > 90)>>
-	<<if ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2) && ($slaves[$i].assignment != "be confined in the arcade")>>
-	<<set $costs += 50>>
-	<</if>>
-	<</if>>
-<</if>>
-
-<<if $buttAccessibility != 1>>
-	<<if ($slaves[$i].butt > 15)>>
-	<<if ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2) && ($slaves[$i].assignment != "be confined in the arcade")>>
-	<<set $costs += 50>>
-	<</if>>
-	<</if>>
-<</if>>
-
-<<if $slaves[$i].boobs > 10000>>
-<<if $slaves[$i].boobsImplantType == 1>>
-	<<set $costs += 50>>
-<</if>>
-<</if>>
-<<if $slaves[$i].butt > 10>>
-<<if $slaves[$i].buttImplantType == 1>>
-	<<set $costs += 50>>
-<</if>>
-<</if>>
-
-<<if $slaves[$i].preg > 35>>
-<<if $slaves[$i].universalRulesBirthing == 1>>
-<<if ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2)>>
-	<<set $costs += 50>>
-<</if>>
-<</if>>
-<</if>>
-
-<<if $CitizenRetirement == 1>>
-	<<set $costs += 250>>
-<</if>>
-
-<<if ($slaves[$i].assignment == "be a servant") || ($slaves[$i].assignment == "work as a servant")>>
-	<<if $slaves[$i].trust < -20>>
-		<<set $costs -= ($rulesCost*4)>>
-	<<elseif $slaves[$i].devotion < -20>>
-		<<set $costs -= ($rulesCost*2)>>
-	<<elseif $slaves[$i].devotion <= 20>>
-		<<set $costs -= ($rulesCost*3)>>
-	<<elseif $slaves[$i].devotion <= 50>>
-		<<set $costs -= ($rulesCost*4)>>
-	<<else>>
-		<<set $costs -= ($rulesCost*5)>>
-	<</if>>
-	<<if ($slaves[$i].fetish == "submissive")>>
-		<<set $costs -= ($rulesCost)>>
-	<<elseif ($slaves[$i].fetish == "dom")>>
-		<<set $costs += ($rulesCost)>>
-	<</if>>
-	<<if ($slaves[$i].relationship < -1)>>
-		<<set $costs -= ($rulesCost)>>
-	<</if>>
-	<<if ($slaves[$i].energy < 20)>>
-		<<set $costs -= ($rulesCost)>>
-	<<elseif ($slaves[$i].energy < 40)>>
-		<<set $costs -= ($rulesCost/2)>>
-	<</if>>
-	<<if ($slaves[$i].lactation > 0)>>
-		<<set $costs -= 25>>
-	<</if>>
-	<<if ($slaves[$i].assignment == "be a servant")>>
-		<<set $costs -= ($rulesCost)>>
-	<</if>>
-	<<if setup.servantCareers.includes($slaves[$i].career) || $slaves[$i].skillS >= $masteredXP>>
-		<<set $costs -= ($rulesCost)>>
-	<</if>>
-<</if>>
-
-<<if ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2) && ($slaves[$i].assignment != "be confined in the arcade")>>
-<<if ($slaves[$i].amp != 0)>>
-  <<if ($slaves[$i].amp == 1)>>
-	<<set $costs += $rulesCost>>
-  <<else>>
-	<<set $costs += $rulesCost/2>>
-  <</if>>
-<<elseif !canWalk($slaves[$i])>>
-  <<set $costs += $rulesCost>>
-<</if>>
-<</if>>
-
-<<if !canSee($slaves[$i]) && ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2) && ($slaves[$i].assignment != "be confined in the arcade")>>
-	<<set $costs += 50>>
-<<elseif $slaves[$i].eyes <= -1>>
-	<<if $slaves[$i].eyewear != "corrective glasses">>
-	<<if $slaves[$i].eyewear != "corrective contacts">>
-	<<set $costs += 25>>
-	<</if>>
-	<</if>>
-<<elseif ($slaves[$i].eyewear == "blurring glasses") || ($slaves[$i].eyewear == "blurring contacts")>>
-	<<set $costs += 25>>
-<</if>>
-
-<<if ($servantsQuartersUpgradeMonitoring == 1)>>
-	<<if ($slaves[$i].assignment == "work as a servant")>>
-	<<set $costs -= ($rulesCost)>>
-	<</if>>
-<</if>>
-
-<<if ($slaves[$i].inflation == 3)>>
-	<<switch $slaves[$i].inflationType>>
-	<<case "water">>
-		<<set $costs += 100>>
-	<<case "food">>
-		<<set $costs += ($foodCost*4)>>
-	<<case "curative" "aphrodisiac" "tightener">>
-		<<set $costs += (100+($drugsCost*2))>>
-	<</switch>>
-<<elseif ($slaves[$i].inflation == 2)>>
-	<<switch $slaves[$i].inflationType>>
-	<<case "water">>
-		<<set $costs += 50>>
-	<<case "food">>
-		<<set $costs += ($foodCost*2)>>
-	<<case "curative" "aphrodisiac" "tightener">>
-		<<set $costs += (50+($drugsCost*2))>>
-	<</switch>>
-<<elseif ($slaves[$i].inflation == 1)>>
-	<<switch $slaves[$i].inflationType>>
-	<<case "water">>
-		<<set $costs += 25>>
-	<<case "food">>
-		<<set $costs += $foodCost>>
-	<<case "curative" "aphrodisiac" "tightener">>
-		<<set $costs += (25+($drugsCost*2))>>
-	<</switch>>
-<</if>>
-
-<<if ($slaves[$i].drugs == "female hormone injections") || ($slaves[$i].drugs == "male hormone injections")>>
-	<<set $costs += ($drugsCost*5)>>
-<<elseif ($slaves[$i].drugs == "anti-aging cream")>>
-	<<set $costs += ($drugsCost*10)>>
-<<elseif ($slaves[$i].drugs == "sag-B-gone")>>
-	<<set $costs += ($drugsCost/10)>>
-<<elseif ($slaves[$i].drugs != "no drugs")>>
-	<<if $slaves[$i].drugs == "intensive breast injections" || $slaves[$i].drugs == "intensive butt injections" || $slaves[$i].drugs == "intensive penis enhancement" || $slaves[$i].drugs == "intensive testicle enhancement" || $slaves[$i].drugs == "growth stimulants">>
-		<<set $costs += $drugsCost*5>>
-	<<else>>
-		<<set $costs += $drugsCost*2>>
-	<</if>>
-<</if>>
-<<if $slaves[$i].curatives == 1 && $slaves[$i].assignmentVisible != 1>>
-<<elseif $slaves[$i].curatives > 0>>
-	<<set $costs += $drugsCost+($slaves[$i].curatives*$drugsCost)>>
-<<elseif ndef $slaves[$i].curatives>>
-	<<set $slaves[$i].curatives = 0>>
-<</if>>
-<<if ($slaves[$i].aphrodisiacs > 0)>>
-	<<set $costs += $drugsCost*Math.abs($slaves[$i].aphrodisiacs)>>
-<<elseif ndef $slaves[$i].aphrodisiacs>>
-	<<set $slaves[$i].aphrodisiacs = 0>>
-<</if>>
-
-<<set $costs += $drugsCost*Math.abs($slaves[$i].hormones)*0.5>>
-
-<<if $slaves[$i].bodySwap > 0>>
-	<<set $costs += $drugsCost*10*$slaves[$i].bodySwap>>
-<</if>>
-
-<<if ($slaves[$i].preg == -1) && isFertile($slaves[$i])>>
-	<<set $costs += $drugsCost*0.5>>
-<</if>>
-
-<<if ($studio == 1)>>
-	<<set $costs += $slaves[$i].pornFameSpending>>
-<</if>>
-
-<</for>>
-
-<<if $Recruiter != 0>>
-	<<set $costs += 250>>
-<</if>>
-<<if $TSS.schoolPresent == 1>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $GRI.schoolPresent == 1>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $SCP.schoolPresent == 1>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $LDE.schoolPresent == 1>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $TGA.schoolPresent == 1>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $TCR.schoolPresent == 1>>
-	<<set $costs += 1000>>
-<</if>>
-<<if ($TFS.schoolPresent == 1) && (($PC.dick == 0) || ($PC.vagina == 0) || ($PC.boobs == 0))>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $TSS.subsidize != 0>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $GRI.subsidize != 0>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $SCP.subsidize != 0>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $LDE.subsidize != 0>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $TGA.subsidize != 0>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $HA.subsidize != 0>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $TCR.subsidize != 0>>
-	<<set $costs += 1000>>
-<</if>>
-<<if $TFS.subsidize != 0>>
-	<<set $costs += 1000>>
-<</if>>
-
-<<if $alwaysSubsidizeGrowth == 1>>
-	<<set $costs += $policyCost>>
-<</if>>
-<<if $alwaysSubsidizeRep == 1>>
-	<<set $costs += $policyCost>>
-<</if>>
-<<if $RegularParties == 1>>
-	<<set $costs += $policyCost>>
-<</if>>
-
-<<if $ProImmigrationCash == 1>>
-	<<set $costs += $policyCost>>
-<</if>>
-<<if $AntiEnslavementCash == 1>>
-	<<set $costs += $policyCost>>
-<</if>>
-
-<<if $CoursingAssociation == 1>>
-	<<set $costs += 1000>>
-<</if>>
-
-<<if $PC.actualAge >= $IsInPrimePC && $PC.actualAge < $IsPastPrimePC>>
-<<set _cost = 10000*$AgeEffectOnTrainerPricingPC>>
-<<if ($personalAttention == "trading") || ($personalAttention == "warfare") || ($personalAttention == "slaving") || ($personalAttention == "engineering") || ($personalAttention == "medicine") || ($personalAttention == "hacking")>>
-	<<set $costs += _cost>>
-<</if>>
-<</if>>
-
-<<if $cyberMod != 0 && $researchLab.built == "true">>
-	<<set $costs += ((100*$researchLab.maxSpace)+(300*$researchLab.hired)+(100*$researchLab.hired))>>
-<</if>>
-
-<<if $PC.preg == -1>>
-	<<set $costs += 25>>
-<<elseif $PC.fertDrugs == 1>>
-	<<set $costs += 50>>
-<<elseif $PC.preg >= 16>>
-	<<set $costs += 100>>
-<</if>>
-<<if $PC.staminaPills == 1>>
-	<<set $costs += 50>>
-<</if>>
-
-<<if $PC.career == "servant">>
-	<<if $personalAttention == "upkeep">>
-		<<if $PC.belly >= 5000>>
-			<<set $costs = ($costs*0.80)>>
-		<<else>>
-			<<set $costs = ($costs*0.75)>>
-		<</if>>
-	<<else>>
-	<<set $costs = ($costs*0.90)>>
-	<</if>>
-<</if>>
-
-<<if $secExp == 1>>
-	<<if $terrain == "oceanic" || $terrain == "marine">>
-		<<if $docks > 0>>
-			<<set $costs *= 1 - $docks * 0.05>>
-		<</if>>
-	<<else>>
-		<<if $railway > 0>>
-			<<set $costs *= 1 - $railway * 0.05>>
-		<</if>>
-	<</if>>
-<</if>>
-
-<<if $costs < 0>>
-	<<set $costs = 0>>
-<<else>>
-	<<set $costs = Math.trunc($costs)>>
-<</if>>
diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw
index db215524348..77f90dd8787 100644
--- a/src/uncategorized/main.tw
+++ b/src/uncategorized/main.tw
@@ -56,7 +56,6 @@
 
 
 <<set $nextButton = "END WEEK", $nextLink = "End Week", $showEncyclopedia = 1, $encyclopedia = "How to Play">>
-/*<<include "Costs">>*/
 <<set $costs = getCost($slaves)>>
 
 <<set
-- 
GitLab


From a3e007ec1d28c6c3ed0c0d66c34975ac14c525d1 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Mon, 16 Jul 2018 18:27:32 -0400
Subject: [PATCH 062/189] fixes

---
 src/js/utilJS.tw                            | 6 +++---
 src/uncategorized/BackwardsCompatibility.tw | 2 +-
 src/uncategorized/costsReport.tw            | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/js/utilJS.tw b/src/js/utilJS.tw
index 4c8b2174f91..f3bf1e4d432 100644
--- a/src/js/utilJS.tw
+++ b/src/js/utilJS.tw
@@ -97,7 +97,7 @@ window.Height = (function(){
 		"Finnish": 165.3, "French Guianan": 157, "French Polynesian": undefined, "French": 162.5, "Gabonese": 158.4, "Gambian": 157.8, "Georgian": 160.5, "German": 162.8, "Ghanan": 158.5, 
 		"Greek": 165, "Greenlandic": undefined, "Grenadian": undefined, "Guamanian": undefined, "Guatemalan": 147.3, "Guinean": 158.8, "Guyanese": 157.9, "Haitian": 158.6, "Honduran": 152.0, "Hungarian": 164, 
 		"I-Kiribati": undefined, "Icelandic": 168, "Indian": 151.9, "Indonesian": 147, "Iranian": 157.2, "Iraqi": 155.8, "Irish": 163, "Israeli": 166, "Italian": 162.5, "Ivorian": 158.9, 
-		"Jamaican": 160.8, "Japanese": 158, "Jordanian": 158.2, "Kazakh": 159.8, "Kenyan": 159.4, "Kittitian": 156.9, "Korean": 156.15, "Kosovan": undefined, "Kurdish": undefined, "Kuwaiti": 156.1, 
+		"Jamaican": 160.8, "Japanese": 158, "Jordanian": 158.2, "Kazakh": 159.8, "Kenyan": 159.4, "Kittitian": 156.9, "Korean": 156.15, "Kosovan": 165.7, "Kurdish": undefined, "Kuwaiti": 156.1, 
 		"Kyrgyz": 158.6, "Laotian": undefined, "Latvian": 165.7, "Lebanese": 165, "Liberian": 157.3, "Libyan": 160.5, "a Liechtensteiner": 164.3, "Lithuanian": 167.5, "Luxembourgian": 164.8, 
 		"Macedonian": undefined, "Malagasy": 154.3, "Malawian": 155, "Malaysian": 154.7, "Maldivian": undefined, "Malian": 160.4, "Maltese": 159.9, "Marshallese": undefined, "Mauritanian": undefined, 
 		"Mauritian": undefined, "Mexican": 154, "Micronesian": undefined, "Moldovan": 161.2, "Monégasque": undefined, "Mongolian": 157.7, "Montenegrin": 168.4, "Moroccan": 158.5, "Mosotho": 157.6, 
@@ -123,8 +123,8 @@ window.Height = (function(){
 		"Egyptian": 170.3, "Emirati": 170.3, "Equatoguinean": undefined, "Eritrean": undefined, "Estonian": 179.1, "Ethiopian": undefined, "Fijian": 170.4, "Filipina": 163.5, "Finnish": 178.9, 
 		"French Guianan": 168, "French Polynesian": undefined, "French": 175.6, "Gabonese": undefined, "Gambian": 168, "Georgian": 172.7, "German": 175.4, "Ghanan": 169.5, "Greek": 177, "Greenlandic": undefined, 
 		"Grenadian": undefined, "Guamanian": undefined, "Guatemalan": 157.5, "Guinean": undefined, "Guyanese": 168.6, "Haitian": undefined, "Honduran": undefined, "Hungarian": 176, "I-Kiribati": undefined, "Icelandic": 181, 
-		"Indian": 164.7, "Indonesian": 158, "Iranian": 170.3, "Iraqi": 165.4, "Irish": 177, "Israeli": 177, "Italian": 176.5, "Ivorian": undefined, "Jamaican": 171.8, "Japanese": 172, "Jordanian": undefined, 
-		"Kazakh": 169, "Kenyan": 170.0, "Kittitian": 164.4, "Korean": 168.15, "Kosovan": undefined, "Kurdish": undefined, "Kuwaiti": 169.2, "Kyrgyz": 170.4, "Laotian": 160.5, "Latvian": 174.2, "Lebanese": 176, 
+		"Indian": 164.7, "Indonesian": 158, "Iranian": 170.3, "Iraqi": 165.4, "Irish": 177, "Israeli": 177, "Italian": 176.5, "Ivorian": 170.1, "Jamaican": 171.8, "Japanese": 172, "Jordanian": undefined, 
+		"Kazakh": 169, "Kenyan": 170.0, "Kittitian": 164.4, "Korean": 168.15, "Kosovan": 179.5, "Kurdish": undefined, "Kuwaiti": 169.2, "Kyrgyz": 170.4, "Laotian": 160.5, "Latvian": 174.2, "Lebanese": 176, 
 		"Liberian": undefined, "Libyan": 171.3, "a Liechtensteiner": 175.4, "Lithuanian": 177.2, "Luxembourgian": 179.9, "Macedonian": undefined, "Malagasy": 161.5, "Malawian": 166, "Malaysian": 166.3, 
 		"Maldivian": undefined, "Malian": 171.3, "Maltese": 169.9, "Marshallese": undefined, "Mauritanian": undefined, "Mauritian": undefined, "Mexican": 167, "Micronesian": undefined, "Moldovan": undefined, 
 		"Monégasque": undefined, "Mongolian": 168.4, "Montenegrin": 183.2, "Moroccan": 172.7, "Mosotho": undefined, "Motswana": undefined, "Mozambican": undefined, "Namibian": undefined, "Nauruan": undefined, 
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 22778d4a108..1f80840429b 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2948,4 +2948,4 @@ Done!
 
 <<run $defaultRules.filter(x => x.set.haircuts === undefined).forEach(x => { x.set.haircuts = "no default setting"; })>>
 
-<<run $defaultRules.filter(x => x.set.label === undefined).forEach(x => { x.set.label = "no default setting"; }>>
+<<run $defaultRules.filter(x => x.set.label === undefined).forEach(x => { x.set.label = "no default setting"; })>>
diff --git a/src/uncategorized/costsReport.tw b/src/uncategorized/costsReport.tw
index 2002f5adb0b..15547fb5b68 100644
--- a/src/uncategorized/costsReport.tw
+++ b/src/uncategorized/costsReport.tw
@@ -443,7 +443,7 @@ trainer fees: <<print cashFormat(_cost)>>
 	<</if>>
 	<</if>>
 	<<if $slaves[$i].preg > 35>>
-	<<if $slaves[$i].universalRulesBirthing == 1>>
+	<<if $universalRulesBirthing == 1>>
 	<<if ($slaves[$i].assignment != "work in the dairy" || $dairyRestraintsSetting < 2)>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;Coverage cost for daily pregnancy scanning: <<print cashFormat(50)>>
 		<<set $individualCosts += 50>>
-- 
GitLab


From 8da9123ba362139cbe1a26b96ac1aefebf0ff680 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Mon, 16 Jul 2018 20:47:26 -0400
Subject: [PATCH 063/189] JSify PlayerName, PoliteRudeTitle, and
 EventNameDelink

---
 devNotes/twine JS.txt                         | 46 +++++++++++++++++++
 src/events/intro/introSummary.tw              |  4 +-
 src/gui/Encyclopedia/encyclopedia.tw          |  2 +-
 src/js/assayJS.tw                             | 46 +++++++++++++++++++
 src/npc/acquisition.tw                        |  2 +-
 src/npc/fFeelings.tw                          |  4 +-
 ...ceBarracksAdditionalColonelInteractions.tw |  2 +-
 src/pregmod/fMarry.tw                         |  4 +-
 src/pregmod/managePersonalAffairs.tw          |  2 +-
 src/uncategorized/RESS.tw                     | 28 +++++------
 src/uncategorized/matchmaking.tw              |  4 +-
 src/uncategorized/pPeacekeepersDeficit.tw     |  2 +-
 .../pPeacekeepersIndependence.tw              |  2 +-
 src/uncategorized/pRivalryHostage.tw          |  2 +-
 src/uncategorized/pRivalryPeacekeepers.tw     |  2 +-
 src/uncategorized/peConcubineInterview.tw     |  4 +-
 src/utility/descriptionWidgetsStyle.tw        |  2 +-
 src/utility/descriptionWidgetsTattoos.tw      |  4 +-
 src/utility/miscWidgets.tw                    |  3 --
 19 files changed, 127 insertions(+), 38 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index c84bdc5df14..8d3f6d6dedd 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -6788,6 +6788,52 @@ window.SlaveFullName = function SlaveFullName(slave) {
 	return pair.join(" ");
 };
 
+window.PlayerName = function PlayerName() {
+    const V = State.variables;
+    const surnamesFirstCountries = [
+		"Cambodian",
+		"Chinese",
+		"Hungarian",
+		"Japanese",
+		"Korean",
+		"Mongolian",
+		"Taiwanese",
+		"Vietnamese"];
+    let names = [V.PC.name, V.PC.surname || ""];
+    
+    if ((V.surnameOrder !== 1) && (surnamesFirstCountries.includes(V.PC.nationality)))
+		names.reverse();
+	return names.join(" ").trim();
+};
+
+window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
+	const V = State.variables, PC = V.PC, s = V.sEnunciate, ss = V.ssEnunciate;
+	
+	var r = "";
+	if (slave.nationality == "Japanese") {
+		if (slave.trust > 0) {
+			r += `${PC.name}${PC.title > 0 ? "kun" : "chan"}`;
+		} else {
+			r += (PC.surname ? PC.surname : `${PC.name}${s}an`);
+		}
+	} else {
+		if (slave.intelligence < -2) {
+			r += V.titleEnunciate
+		} else if (slave.intelligence > 1) {
+			r += (PC.title > 0 ? `Ma${s}ter` : `Mi${s}tre${ss}`);
+		} else if (slave.trust > 0) {
+			r += PC.name;
+		} else {
+			r += (PC.surname ? PC.surname : PC.name);
+		}
+	}
+	return r;
+};
+
+window.EventNameDelink = function EventNameDelink(slave) {
+	$("#name").empty().text(SlaveFullName(slave));
+};
+
 window.SlaveTitle = function SlaveTitle(slave) {
 	const V = State.variables;
 	let r = "";
diff --git a/src/events/intro/introSummary.tw b/src/events/intro/introSummary.tw
index bda313366b4..7b18ef63fde 100644
--- a/src/events/intro/introSummary.tw
+++ b/src/events/intro/introSummary.tw
@@ -471,7 +471,7 @@ __''Player Character''__
 			[[feminine Mistress|Intro Summary][$PC.title = 0, $PCCreationSex = "feminine ''Mistress''"]]
 		<</if>>
 
-	<br>Everyone calls you ''<<PlayerName>>.''
+	<br>Everyone calls you ''<<= PlayerName()>>.''
 	<br>
 	With ''<<textbox "$PC.name" $PC.name>>'' as your given name and
 	<<if $PC.surname == 0>>
@@ -734,7 +734,7 @@ __''Player Character''__
 	<<else>>
 		feminine ''Mistress'
 	<</if>>
-	and everyone that matters calls you <<PlayerName>>.
+	and everyone that matters calls you <<= PlayerName()>>.
 
 	<br>
 	You are $PC.actualAge years old which is
diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw
index f2ab6d6654b..0900270de98 100644
--- a/src/gui/Encyclopedia/encyclopedia.tw
+++ b/src/gui/Encyclopedia/encyclopedia.tw
@@ -6,7 +6,7 @@
 PLAYING FREE CITIES
 **********/
 <<case "Playing Free Cities">>
-	Welcome to the Free Cities, <<PlayerName>>!
+	Welcome to the Free Cities, <<= PlayerName()>>!
 
 	<br><br>
 	//Future room for lore text//
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index 9a03663c6dc..c00d6ab477a 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -428,6 +428,52 @@ window.SlaveFullName = function SlaveFullName(slave) {
 	return pair.join(" ");
 };
 
+window.PlayerName = function PlayerName() {
+    const V = State.variables;
+    const surnamesFirstCountries = [
+		"Cambodian",
+		"Chinese",
+		"Hungarian",
+		"Japanese",
+		"Korean",
+		"Mongolian",
+		"Taiwanese",
+		"Vietnamese"];
+    let names = [V.PC.name, V.PC.surname || ""];
+    
+    if ((V.surnameOrder !== 1) && (surnamesFirstCountries.includes(V.PC.nationality)))
+		names.reverse();
+	return names.join(" ").trim();
+};
+
+window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
+	const V = State.variables, PC = V.PC, s = V.sEnunciate, ss = V.ssEnunciate;
+	
+	var r = "";
+	if (slave.nationality == "Japanese") {
+		if (slave.trust > 0) {
+			r += `${PC.name}${PC.title > 0 ? "kun" : "chan"}`;
+		} else {
+			r += (PC.surname ? PC.surname : `${PC.name}${s}an`);
+		}
+	} else {
+		if (slave.intelligence < -2) {
+			r += V.titleEnunciate
+		} else if (slave.intelligence > 1) {
+			r += (PC.title > 0 ? `Ma${s}ter` : `Mi${s}tre${ss}`);
+		} else if (slave.trust > 0) {
+			r += PC.name;
+		} else {
+			r += (PC.surname ? PC.surname : PC.name);
+		}
+	}
+	return r;
+};
+
+window.EventNameDelink = function EventNameDelink(slave) {
+	$("#name").empty().text(SlaveFullName(slave));
+};
+
 window.SlaveTitle = function SlaveTitle(slave) {
 	const V = State.variables;
 	let r = "";
diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw
index 00f939a2271..0c04374057e 100644
--- a/src/npc/acquisition.tw
+++ b/src/npc/acquisition.tw
@@ -142,7 +142,7 @@ You've done it.
 You arrive at your new arcology, $arcologies[0].name, and head straight to the penthouse to enter the access codes that will tell the $arcologies[0].name systems to recognize you as their owner. The penthouse office is ready to receive the codes, and they authenticate. A voice activates in your earpiece.
 <br><br>
 //Congratulations. I am a personal assistant program, and it is my pleasure to assist you,
-<<PlayerName>>
+<<= PlayerName()>>
 the new owner of $arcologies[0].name. I will offer useful information whenever possible in italics. Your new arcology has some unusual equipment. The previous owner kept a small stable of sex slaves. The penthouse therefore has a body modification studio for tattooing, bleaching and piercing, and an auto salon for more prosaic things like hair care. It also has a remote surgery, a small surgical theater that can be operated remotely by a qualified surgeon if you can pay the fee. Finally, it has a slave nutrition system connected to the arcology's hydroponics bays. This system produces a tasty protein-rich drink that provides the physically active female body all its necessary nutrients while leaving the lower digestive tract extremely clean. It even causes a mild increase in sex drive.
 <br><br>
 The previous owner seems to have left in something of a hurry.
diff --git a/src/npc/fFeelings.tw b/src/npc/fFeelings.tw
index 98fb32dabca..51aa204bd24 100644
--- a/src/npc/fFeelings.tw
+++ b/src/npc/fFeelings.tw
@@ -13,7 +13,7 @@
 	<<elseif ($activeSlave.trust >= -50)>>
 		<<if !canTalk($activeSlave)>>gestures<<elseif (_lisping == 1)>>lisps<<else>>mutters<</if>> hesitantly that it's wrong to keep $him a slave, and that you should free $him.
 	<<else>>
-		<<if !canTalk($activeSlave)>>gestures a perfunctory plea not to hurt $him.<<else>>mutters a perfunctory "Plea<<s>>e don't hurt me, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>."<</if>>
+		<<if !canTalk($activeSlave)>>gestures a perfunctory plea not to hurt $him.<<else>>mutters a perfunctory "Plea<<s>>e don't hurt me, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>."<</if>>
 	<</if>>
 
 <<elseif ($activeSlave.devotion < -20)>>
@@ -1039,7 +1039,7 @@ My favorite part of my body i<<s>>
 	<<elseif $activeSlave.devotion < -20 && $activeSlave.trust > 20>>
 		Of cour<<s>>e, I'm your wife, <<Master>>." $He sighs. "Any other que<<s>>tion<<s>>?
 	<<elseif $activeSlave.devotion < -20>>
-		I'm your wife, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle>><<else>><<Master>><</if>>." $He <<say>>s, $his voice wavering. "Plea<<s>>e let me go...
+		I'm your wife, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>." $He <<say>>s, $his voice wavering. "Plea<<s>>e let me go...
 	<<else>>
 		Of cour<<s>>e, I'm your wife, <<Master>>." $He <<say>>s. "It i<<s>>n't <<s>>o bad, I'm <<s>>tarting to like it.
 	<</if>>
diff --git a/src/pregmod/SecForceEX/SpecialForceBarracksAdditionalColonelInteractions.tw b/src/pregmod/SecForceEX/SpecialForceBarracksAdditionalColonelInteractions.tw
index 769f9a64500..c0f6aecc270 100644
--- a/src/pregmod/SecForceEX/SpecialForceBarracksAdditionalColonelInteractions.tw
+++ b/src/pregmod/SecForceEX/SpecialForceBarracksAdditionalColonelInteractions.tw
@@ -29,7 +29,7 @@
 					<<if $PC.slaving < 10>>
 						Your total lack of slavery skill (which is very unusual and very concerning for an arcology owner) means that you are of little to no help or even a hindrance.
 					<<elseif $PC.slaving >= 100>>
-						Your mastery of slaving allows you assist The Colonel greatly. However the shop owner is so impressed by your understanding of slavery that she is more than happy for an endorsement from you. As you are exiting the shop you hear your pre-recorded message which bears the slogan "This is (<<if def $PC.customTitle>>$PC.customTitle <</if>> <<PlayerName>>) and this is my favorite Paternalist shop in $arcologies[0].name."
+						Your mastery of slaving allows you assist The Colonel greatly. However the shop owner is so impressed by your understanding of slavery that she is more than happy for an endorsement from you. As you are exiting the shop you hear your pre-recorded message which bears the slogan "This is (<<if def $PC.customTitle>>$PC.customTitle <</if>> <<= PlayerName()>>) and this is my favorite Paternalist shop in $arcologies[0].name."
 						<<if $arcologies[0].prosperity < 20>>
 							<<set $arcologies[0].prosperity++>>
 						<</if>>
diff --git a/src/pregmod/fMarry.tw b/src/pregmod/fMarry.tw
index 5632317141d..47c784f81f8 100644
--- a/src/pregmod/fMarry.tw
+++ b/src/pregmod/fMarry.tw
@@ -585,9 +585,9 @@ You tell $activeSlave.slaveName that you're going to marry $him. (A proposal, of
 		<<elseif $assistantAppearance == "schoolgirl">>
 			"To get this marriage started," $assistantName concludes, "$activeSlave.slaveName, the rules say you should now <<if $PC.dick == 1>>suck the <<if $PC.title == 1>>groom<<else>>bride<</if>>'s dick<<if $PC.vagina == 1>> and eat <<if $PC.title == 1>>his<<else>>$his<</if>> pussy<</if>><<else>>eat the <<if $PC.title == 1>>groom<<else>>bride<</if>>'s pussy<</if>>." The slave <<if _reactionType == 0>>only starts when you push $his head to your crotch<<elseif _reactionType == 1>>eagerly complies<<elseif _reactionType == 2>>reluctantly obeys<<else>>hurries to obey<</if>>. Pleased by the sight, $assistantName's avatar starts to jill off.
 		<<elseif $assistantAppearance == "angel">>
-			"To consummate the marriage," $assistantName concludes, "$activeSlave.slaveName, you must now join <<PlayerName>> in their bedroom and consummate this marriage." The slave <<if _reactionType == 0>>stares blankly<<else>>looks confused<</if>>. "After the wedding ends, would be the time." $assistantName says, covering _his2 face in embarrassment at the thought.
+			"To consummate the marriage," $assistantName concludes, "$activeSlave.slaveName, you must now join <<= PlayerName()>> in their bedroom and consummate this marriage." The slave <<if _reactionType == 0>>stares blankly<<else>>looks confused<</if>>. "After the wedding ends, would be the time." $assistantName says, covering _his2 face in embarrassment at the thought.
 		<<elseif $assistantAppearance == "cherub">>
-			"To consummate the marriage," $assistantName concludes, "$activeSlave.slaveName, you should <<if $PC.dick == 1>>suck the <<if $PC.title == 1>>groom<<else>>the bride<</if>>'s cock<<if $PC.vagina == 1>>and lick their pussy,<</if>><<else>>lick the <<if $PC.title == 1>>groom<<else>>the bride<</if>>'s pussy<</if>>, in the privacy of <<PlayerName>>'s bedroom, of course." $assistantName hides _his2 face in _his2 hands at the thought.
+			"To consummate the marriage," $assistantName concludes, "$activeSlave.slaveName, you should <<if $PC.dick == 1>>suck the <<if $PC.title == 1>>groom<<else>>the bride<</if>>'s cock<<if $PC.vagina == 1>>and lick their pussy,<</if>><<else>>lick the <<if $PC.title == 1>>groom<<else>>the bride<</if>>'s pussy<</if>>, in the privacy of <<= PlayerName()>>'s bedroom, of course." $assistantName hides _his2 face in _his2 hands at the thought.
 		<<elseif $assistantAppearance == "incubus">>
 			"To get this marriage started," $assistantName concludes, "$activeSlave.slaveName, you will now <<if $PC.dick == 1>>suck the <<if $PC.title == 1>>groom<<else>>bride<</if>>'s dick<<if $PC.vagina == 1>> and eat <<if $PC.title == 1>>his<<else>>$his<</if>> pussy<</if>><<else>>eat the <<if $PC.title == 1>>groom<<else>>bride<</if>>'s pussy<</if>>." The slave <<if _reactionType == 0>>only starts when you push $his head to your crotch<<elseif _reactionType == 1>>eagerly complies<<elseif _reactionType == 2>>reluctantly obeys<<else>>hurries to obey<</if>>. Enjoying the sight, $assistantName's avatar begins to furiously stroke its shaft.
 		<<elseif $assistantAppearance == "succubus">>
diff --git a/src/pregmod/managePersonalAffairs.tw b/src/pregmod/managePersonalAffairs.tw
index c46da7508ce..3bb86444fe9 100644
--- a/src/pregmod/managePersonalAffairs.tw
+++ b/src/pregmod/managePersonalAffairs.tw
@@ -281,7 +281,7 @@ On formal occasions, you are announced as $PCTitle. By slaves, however, you pref
 			<<set $rep -= 500>>
 			<<replace "#nameResult">>
 				<<set $PC.name = _PCNamet>>
-				You will now be known as <<PlayerName>>.
+				You will now be known as <<= PlayerName()>>.
 			<</replace>>
 		<</link>>
 	<</replace>>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 98fc8445765..a3ee5b57462 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -861,7 +861,7 @@ One morning, despite the fact that she is not allowed to speak without being spo
 	<</if>>
 	"I'm tired, can I have the day off?" She didn't even call you <<= WrittenMaster()>>.
 <<else>>
-	boldly, "I'm tired, can I have the day off, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>?"
+	boldly, "I'm tired, can I have the day off, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>?"
 <</if>>
 
 <<case "fearful humiliation">>
@@ -2471,7 +2471,7 @@ She's chosen to do it in a dark corner and looks like she's hurrying; she clearl
 <<if !canTalk($activeSlave)>>
 	She nervously gestures that she wasn't doing anything.
 <<else>>
-	"I wa<<s>>n't doing anything, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>!" she lies.
+	"I wa<<s>>n't doing anything, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>!" she lies.
 <</if>>
 
 <<case "hates oral">>
@@ -3424,7 +3424,7 @@ During her weekly inspection, <<EventNameLink $activeSlave>> has trouble followi
 <<case "chastity">>h-having my p-part<<s>> locked up in ch-cha<<s>>tity
 <<default>>n-never knowing what th-the p-punishment will be
 <</switch>>
-wh-when I'm bad, e-everything, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>. Oh, oh, I'm <<s>>orry, p-plea<<s>>e, I'm <<s>>orry I, I'm like thi<<s>>, I'm crying, p-plea<<s>>e <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>, plea<<s>>e don't..." She trails off, giving you a look of supplication.
+wh-when I'm bad, e-everything, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>. Oh, oh, I'm <<s>>orry, p-plea<<s>>e, I'm <<s>>orry I, I'm like thi<<s>>, I'm crying, p-plea<<s>>e <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>, plea<<s>>e don't..." She trails off, giving you a look of supplication.
 
 <<case "frightening dick">>
 
@@ -6098,21 +6098,21 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 	<<if $activeSlave.preg > 38 && $activeSlave.pregControl != "labor supressors">>
 		and I think it might be time <<s>>oon,
 	<</if>>
-	<<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>."
+	<<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>."
 	<br><br>
 	You then conduct a more thorough inspection, from the top of her $activeSlave.hColor-haired head on down. She complies submissively, obviously expecting to be abused at any moment. She obediently <<if ($activeSlave.boobs > 1000)>>lifts each of her massive breasts one by one to display each of them from all angles.<<elseif $activeSlave.belly >= 5000>> allows you to do as you will to her gravid stomach.<<else>>opens her mouth and sticks out her tongue on command.<</if>> She even obeys an instruction to <<if ($activeSlave.dick > 1)>>take herself by the dickhead and pull her member flat up against her abdomen.<<elseif ($activeSlave.dick > 0)>>take her little dickhead between a thumb and forefinger and hold herself out straight to reveal how tiny she really is.<<elseif ($activeSlave.clit > 1)>>push back her hood to reveal all of her enormous clit.<<elseif ($activeSlave.labia > 1)>>spread her meaty labia to reveal her cunt.<<elseif $activeSlave.vagina == -1>>really show off her smooth groin, displaying every bit of it, down to the tiny hole that's its only feature.<<else>>spread her pussylips to show off her cunt.<</if>>
 	<br><br>
 	Finally the inspection reaches her backdoor, so you tell her to turn around, bend over, and pull her buttocks apart as wide as she can. She tenses in fear, obviously expecting anal rape, but after a moment of hesitation, she obeys. She turns, <<if $activeSlave.belly >= 10000>>carefully bends<<else>>bends<</if>>, and <<if ($activeSlave.butt > 5)>>grabs a handful of buttcheek in both hands, trembling as she spreads her ass to reveal<<elseif ($activeSlave.butt > 2)>>harshly pulls her own buttcheeks apart, clearly hoping that if she treats herself this way, you won't. She reveals<<else>>even though her trim ass has already revealed everything, uses her hands to spread herself even wider to show off<</if>> her <<if ($activeSlave.anus > 2)>>poor, overused asshole, which despite her terror is still gaping a little.<<elseif ($activeSlave.anus > 1)>>her asshole, which is clenched tight in terror.<<else>>invitingly tight asshole, which is clenched hard in terror.<</if>> Maintaining your neutral tone, you ask her how she feels about anal sex.
 	<<if ($activeSlave.anus == 0)>>
-		"It'<<s>> <<s>>-<<s>>cary, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>. I'm afraid it'll h-hurt," she gasps out.
+		"It'<<s>> <<s>>-<<s>>cary, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>. I'm afraid it'll h-hurt," she gasps out.
 	<<elseif ($activeSlave.fetishKnown == 1) && ($activeSlave.fetish == "buttslut")>>
-		"It's o-okay, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>. I d-don't hate it," she gasps out.
+		"It's o-okay, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>. I d-don't hate it," she gasps out.
 	<<elseif ($activeSlave.sexualFlaw == "hates anal")>>
-		"I h-hate it, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>. It'<<s>> d-dirty and it hurt<<s>>," she gasps out.
+		"I h-hate it, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>. It'<<s>> d-dirty and it hurt<<s>>," she gasps out.
 	<<elseif ($activeSlave.anus > 2)>>
-		"It'<<s>> not that bad, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>. I'm u<<s>>ed to getting a<<ss>>fucked, I gue<<ss>>," she <<say>>s haltingly.
+		"It'<<s>> not that bad, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>. I'm u<<s>>ed to getting a<<ss>>fucked, I gue<<ss>>," she <<say>>s haltingly.
 	<<else>>
-		"I h-hate it, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>. I'm n-not u<<s>>ed to it, and it hurt<<s>>," she gasps out.
+		"I h-hate it, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>. I'm n-not u<<s>>ed to it, and it hurt<<s>>," she gasps out.
 	<</if>>
 	Without another word, you tell her she can go. She looks around to gape uncomprehendingly at you for a moment before letting go of her buttocks, straightening up, and <<if $activeSlave.belly >= 10000>>quickly waddling<<else>>fleeing<</if>>, feeling rather mystified that you @@.mediumaquamarine;didn't use her.@@
 	<<set $activeSlave.trust += 4>>
@@ -8604,7 +8604,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<if !canTalk($activeSlave)>>
 		She slowly spells out a question with her hands, asking if she's a good slave.
 	<<else>>
-		She mumbles a hesitant question: "<<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>, am I a good <<s>>lave?"
+		She mumbles a hesitant question: "<<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>, am I a good <<s>>lave?"
 	<</if>>
 	You tell her that she is, running a hand <<if $activeSlave.hStyle == "shaved bald">>across her bald scalp<<else>>through her hair<</if>>. She seems @@.hotpink;reassured,@@ and thankful when you give her a cup of her proper rations from your own hand.
 	<<set $activeSlave.devotion += 4, $activeSlave.oralCount++, $oralTotal++>>
@@ -8617,13 +8617,13 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<if !canTalk($activeSlave)>>
 		She sadly gestures at the spigot and then flicks her own head.
 	<<else>>
-		She <<say>>s sadly, "<<S>>orry <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>. I'm trying to be a good <<s>>lave but it'<<s>> hard."
+		She <<say>>s sadly, "<<S>>orry <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>. I'm trying to be a good <<s>>lave but it'<<s>> hard."
 	<</if>>
 	You kindly tell her that you know she's trying, and that that's what really matters.
 	<<if !canTalk($activeSlave)>>
 		Her hands awkwardly ask, "Really?"
 	<<else>>
-		"Really, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>?" she asks hopefully.
+		"Really, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>?" she asks hopefully.
 	<</if>>
 	You whisper into her ear that yes, she will be all right as long as she does her best. She wiggles her butt against you a little and giggles <<if $PC.dick == 1>>at the responding stiffness she feels between her buttocks<<else>>as you shove her to her knees<</if>>. She shimmies down and <<if $PC.dick == 1>>takes you into her mouth<<if $PC.vagina == 1>> and does her best to reach the top of your pussy with the tip of her tongue<</if>><<else>>eats you out<</if>>, <<if canSee($activeSlave)>>looking you in the eyes the whole time and <</if>>@@.hotpink;smiling@@ as much as she can manage with <<if $PC.dick == 1>>a dick in her mouth<<else>>her tongue working your clit<</if>>.
 	<<set $activeSlave.devotion += 4, $activeSlave.oralCount++, $oralTotal++>>
@@ -9205,7 +9205,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<if !canTalk($activeSlave)>>
 		She frantically uses her hands to promise you perfect obedience if you'll only spare her from emasculation.
 	<<else>>
-		She begs through tears, "Plea<<s>>e no, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>! Plea<<s>>e let me keep them! Plea<<s>>e!"
+		She begs through tears, "Plea<<s>>e no, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>! Plea<<s>>e let me keep them! Plea<<s>>e!"
 	<</if>>
 	You patiently inform her that she can - for now, and so long as she is a good little girl. She flees from the room backwards, bowing, scraping, and profusely thanking you, repeating desperate @@.gold;promises of good behavior.@@
 	<<set $activeSlave.trust -= 5>>
@@ -18055,7 +18055,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		<<else>>
 			into your shoulder,
 		<</if>>
-		stroking it reassuringly and murmuring kindness. She clings to you, mostly for lack of any other comfort in the whole world, and sobs convulsively, @@.mediumaquamarine;her terror flowing out of her@@ in a torrent as you gently rub her back. When she's mostly cried herself out, you tell her that she'll be all right. You're sure she'll be a good slave one day. You understand that her life is hard. She'll make mistakes, and you'll punish her for them, but that's part of slave training, and that's all right. If she does her best, she'll be all right. She sniffles, cuffing tears away. "Th-thank you, <<if $activeSlave.rudeTitle == 1>><<PoliteRudeTitle $activeSlave>><<else>><<Master>><</if>>, I'll d-do my b-be<<s>>t," she manages to <<say>>.
+		stroking it reassuringly and murmuring kindness. She clings to you, mostly for lack of any other comfort in the whole world, and sobs convulsively, @@.mediumaquamarine;her terror flowing out of her@@ in a torrent as you gently rub her back. When she's mostly cried herself out, you tell her that she'll be all right. You're sure she'll be a good slave one day. You understand that her life is hard. She'll make mistakes, and you'll punish her for them, but that's part of slave training, and that's all right. If she does her best, she'll be all right. She sniffles, cuffing tears away. "Th-thank you, <<if $activeSlave.rudeTitle == 1>><<= PoliteRudeTitle($activeSlave)>><<else>><<Master>><</if>>, I'll d-do my b-be<<s>>t," she manages to <<say>>.
 		<<set $activeSlave.trust += 5>>
 	<</replace>>
 <</link>>
diff --git a/src/uncategorized/matchmaking.tw b/src/uncategorized/matchmaking.tw
index 5e90eda66f0..493ec1041fb 100644
--- a/src/uncategorized/matchmaking.tw
+++ b/src/uncategorized/matchmaking.tw
@@ -274,9 +274,9 @@ Despite her devotion and trust, she is still a slave, and probably knows that he
 		<<elseif $assistantAppearance == "schoolgirl">>
 			"To get this marriage started," $assistantName concludes, "$eventSlave.slaveName, the rules say you should now <<if $PC.dick == 1>>suck the <<if $PC.title == 1>>groom<<else>>bride<</if>>'s dick<<if $PC.vagina == 1>> and eat <<if $PC.title == 1>>his<<else>>her<</if>> pussy<</if>><<else>>eat the <<if $PC.title == 1>>groom<<else>>bride<</if>>'s pussy<</if>>." The slave complies eagerly. Pleased by the sight, $assistantName's avatar starts to jill off.
 		<<elseif $assistantAppearance == "angel">>
-			"To consummate the marriage," $assistantName concludes, "$eventSlave.slaveName, you must now join <<PlayerName>> in their bedroom and consummate this marriage." The slave looks confused. "After the wedding ends, would be the time." $assistantName says, covering her face in embarrassment at the thought.
+			"To consummate the marriage," $assistantName concludes, "$eventSlave.slaveName, you must now join <<= PlayerName()>> in their bedroom and consummate this marriage." The slave looks confused. "After the wedding ends, would be the time." $assistantName says, covering her face in embarrassment at the thought.
 		<<elseif $assistantAppearance == "cherub">>
-			"To consummate the marriage," $assistantName concludes, "$eventSlave.slaveName, you should <<if $PC.dick == 1>>suck the <<if $PC.title == 1>>groom<<else>>the bride<</if>>'s cock<<if $PC.vagina == 1>>and lick their pussy,<</if>><<else>>lick the <<if $PC.title == 1>>groom<<else>>the bride<</if>>'s pussy<</if>>, in the privacy of <<PlayerName>>'s bedroom, of course." $assistantName hides her face in her hands at the thought.
+			"To consummate the marriage," $assistantName concludes, "$eventSlave.slaveName, you should <<if $PC.dick == 1>>suck the <<if $PC.title == 1>>groom<<else>>the bride<</if>>'s cock<<if $PC.vagina == 1>>and lick their pussy,<</if>><<else>>lick the <<if $PC.title == 1>>groom<<else>>the bride<</if>>'s pussy<</if>>, in the privacy of <<= PlayerName()>>'s bedroom, of course." $assistantName hides her face in her hands at the thought.
 		<<elseif $assistantAppearance == "incubus">>
 			"To get this marriage started," $assistantName concludes, "$eventSlave.slaveName, you will now <<if $PC.dick == 1>>suck the <<if $PC.title == 1>>groom<<else>>bride<</if>>'s dick<<if $PC.vagina == 1>> and eat <<if $PC.title == 1>>his<<else>>her<</if>> pussy<</if>><<else>>eat the <<if $PC.title == 1>>groom<<else>>bride<</if>>'s pussy<</if>>." The slave complies eagerly. Enjoying the sight, $assistantName's avatar begins to furiously stroke its shaft.
 		<<elseif $assistantAppearance == "succubus">>
diff --git a/src/uncategorized/pPeacekeepersDeficit.tw b/src/uncategorized/pPeacekeepersDeficit.tw
index a95c9610ca7..2151aa50c1a 100644
--- a/src/uncategorized/pPeacekeepersDeficit.tw
+++ b/src/uncategorized/pPeacekeepersDeficit.tw
@@ -6,7 +6,7 @@ General $peacekeepers.generalName's peacekeeping force has stabilized the neighb
 
 <br><br>
 
-It's a video link, and the general is in the field somewhere, wearing scuffed armor with his insignia of rank on the neck protector. He looks tired, and stress worse than simple fatigue is etched on his face, but he looks at you directly and gets on with it. "<<PlayerName>>," he says, "to start, I'd like to assure you this is a secure line from my end. We rely on structural security more than you in the Free Cities, with your cutting-edge computing power, but it's effective." He's in what looks like a field command post, in what's almost certainly an improvised secure communications booth. "The situation is this," he explains. "I have two problems, and I hope you may be able to solve them both at once in a way that will be beneficial to you."
+It's a video link, and the general is in the field somewhere, wearing scuffed armor with his insignia of rank on the neck protector. He looks tired, and stress worse than simple fatigue is etched on his face, but he looks at you directly and gets on with it. "<<= PlayerName()>>," he says, "to start, I'd like to assure you this is a secure line from my end. We rely on structural security more than you in the Free Cities, with your cutting-edge computing power, but it's effective." He's in what looks like a field command post, in what's almost certainly an improvised secure communications booth. "The situation is this," he explains. "I have two problems, and I hope you may be able to solve them both at once in a way that will be beneficial to you."
 
 <br><br>
 
diff --git a/src/uncategorized/pPeacekeepersIndependence.tw b/src/uncategorized/pPeacekeepersIndependence.tw
index 2ecf9872cce..e4047a07693 100644
--- a/src/uncategorized/pPeacekeepersIndependence.tw
+++ b/src/uncategorized/pPeacekeepersIndependence.tw
@@ -4,7 +4,7 @@
 
 <<set $peacekeepers.strength = -10>>
 
-General $peacekeepers.generalName contacts you again, looking more tired and battered than ever. There's a strange light in his eyes, though, as though he's resolved to make a big bet. And once he starts speaking, it turns out that he is. "<<PlayerName>>," he says, "<<if $peacekeepers.attitude > 10>>you've been supportive of my peacekeeping mission here in the past<<else>>I understand your attitude towards my peacekeeping mission here must be mixed<</if>>. But all that's about to change." He straightens up, falling back on a military bearing. "The support - funding, supply, everything - for my men and women here is ending, effective now. Right now, in fact. I'm not sure how I'm going to get everyone home." He looks through the video feed at you.
+General $peacekeepers.generalName contacts you again, looking more tired and battered than ever. There's a strange light in his eyes, though, as though he's resolved to make a big bet. And once he starts speaking, it turns out that he is. "<<= PlayerName()>>," he says, "<<if $peacekeepers.attitude > 10>>you've been supportive of my peacekeeping mission here in the past<<else>>I understand your attitude towards my peacekeeping mission here must be mixed<</if>>. But all that's about to change." He straightens up, falling back on a military bearing. "The support - funding, supply, everything - for my men and women here is ending, effective now. Right now, in fact. I'm not sure how I'm going to get everyone home." He looks through the video feed at you.
 
 <br><br>
 
diff --git a/src/uncategorized/pRivalryHostage.tw b/src/uncategorized/pRivalryHostage.tw
index 32a987532bd..cff5a9bba7b 100644
--- a/src/uncategorized/pRivalryHostage.tw
+++ b/src/uncategorized/pRivalryHostage.tw
@@ -222,7 +222,7 @@ Only a few days into your inter-arcology war, you receive a video message from y
 but you do remember her, and your rival knows it. This is obviously the best they could come up with to provoke an emotional reaction.
 
 <br><br>
-"Hello, <<PlayerName>>," your rival sneers. "Sorry to pull you away from
+"Hello, <<= PlayerName()>>," your rival sneers. "Sorry to pull you away from
 <<switch $rivalryFS>>
 <<case "Racial Subjugationism">>
 	whipping some poor $arcologies[0].FSSubjugationistRace girl's back bloody,
diff --git a/src/uncategorized/pRivalryPeacekeepers.tw b/src/uncategorized/pRivalryPeacekeepers.tw
index 2d2c01caeab..211f982dc27 100644
--- a/src/uncategorized/pRivalryPeacekeepers.tw
+++ b/src/uncategorized/pRivalryPeacekeepers.tw
@@ -2,7 +2,7 @@
 
 <<set $nextButton = "Continue", $nextLink = "P rivalry actions">>
 
-This is a busy time, and $assistantName's call prioritization functions are invaluable. You don't have time for everyone. General $peacekeepers.generalName is fairly high up the list, though. "<<PlayerName>>, thank you for taking the time to speak with me," he greets you. "I understand you've got a lot on your plate right now, so I'll be brief. My intel shop has discovered a slaving ring in the area under my control, run by your rival." He gestures to someone out of view, and a limited overview of his intelligence is delivered to $assistantName. The general has given you just enough to verify the ownership of the operation. It does indeed belong to the enemy.
+This is a busy time, and $assistantName's call prioritization functions are invaluable. You don't have time for everyone. General $peacekeepers.generalName is fairly high up the list, though. "<<= PlayerName()>>, thank you for taking the time to speak with me," he greets you. "I understand you've got a lot on your plate right now, so I'll be brief. My intel shop has discovered a slaving ring in the area under my control, run by your rival." He gestures to someone out of view, and a limited overview of his intelligence is delivered to $assistantName. The general has given you just enough to verify the ownership of the operation. It does indeed belong to the enemy.
 
 <br><br>
 
diff --git a/src/uncategorized/peConcubineInterview.tw b/src/uncategorized/peConcubineInterview.tw
index c809bea0769..73975d0d0c8 100644
--- a/src/uncategorized/peConcubineInterview.tw
+++ b/src/uncategorized/peConcubineInterview.tw
@@ -71,7 +71,7 @@ You receive an official communication from a popular talk show ehosted in one of
 	<</if>>
 	They seat themselves in comfortable leather chairs and the interview begins in earnest.
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	The host asks her some soft, nonjudgmental questions about her life and how she became your slave. Then he hits her: "So, $activeSlave.slaveName. Tell us about <<PlayerName>>."
+	The host asks her some soft, nonjudgmental questions about her life and how she became your slave. Then he hits her: "So, $activeSlave.slaveName. Tell us about <<= PlayerName()>>."
 	<<if $activeSlave.devotion > 95>>
 		@@.green;Without a moment's hesitation,@@ she <<if _lisps>>lisps<<else>>proclaims<</if>>, "I love <<if $PC.title != 0>>him. He'<<s>> so hand<<s>>ome, and," she manages to blush prettily, "he'<<s>> <<s>>o good to me."<<else>>her. <<Sh>>e'<<s>> <<s>>o pretty, and," she manages to blush cutely, "<<sh>>e'<<s>> <<s>>o good to me."<</if>>
 		<<set $rep += 100>>
@@ -107,7 +107,7 @@ You receive an official communication from a popular talk show ehosted in one of
 		<<else>>
 			giving it a good feel.
 		<</if>>
-		"Now I'm sure our viewers are wondering," He says, patting the firm dome. "Is it <<PlayerName>>'s?"
+		"Now I'm sure our viewers are wondering," He says, patting the firm dome. "Is it <<= PlayerName()>>'s?"
 		<<if $activeSlave.pregSource == -1>>
 			<<if $activeSlave.bellyPreg >= 450000>>
 				"Of cour<<s>>e they are!" She proclaims proudly as she runs her hands across her quivering mass. "All $activeSlave.pregType of them!"
diff --git a/src/utility/descriptionWidgetsStyle.tw b/src/utility/descriptionWidgetsStyle.tw
index 7ad2a3c6d5d..f2b15026381 100644
--- a/src/utility/descriptionWidgetsStyle.tw
+++ b/src/utility/descriptionWidgetsStyle.tw
@@ -326,7 +326,7 @@ $activeSlave.slaveName is
 	<<elseif ($activeSlave.pregKnown == 1)>>
 		"I'm Pregnant!" across the front in large letters.
 	<<else>>
-		"Property of <<PlayerName>>" across the front.
+		"Property of <<= PlayerName()>>" across the front.
 	<</if>>
 	<<if ($activeSlave.amp == 1)>>
 		/* no description yet */
diff --git a/src/utility/descriptionWidgetsTattoos.tw b/src/utility/descriptionWidgetsTattoos.tw
index bfff48142ea..45fa1a52c1e 100644
--- a/src/utility/descriptionWidgetsTattoos.tw
+++ b/src/utility/descriptionWidgetsTattoos.tw
@@ -79,7 +79,7 @@
 	<<case "sacrament">>
 		$His face is subtly tattooed to give $him a decidedly angelic appearance.
 	<<case "possessive">>
-		'Property of <<PlayerName>>' is tattooed across $his forehead.
+		'Property of <<= PlayerName()>>' is tattooed across $his forehead.
 	<<case "paternalist">>
 		'Beloved $desc' is tattooed across one of $his cheeks.
 	<<default>>
@@ -120,7 +120,7 @@
 	<<case "sacrament">>
 		Each of $his breasts is tattooed with a depiction of a crucifix, with $his nipples forming the center.
 	<<case "possessive">>
-		Your personal symbol is tattooed above $his left breast, '<<PlayerName>>' above $his right, leaving the rest of $his chest and breasts bare.
+		Your personal symbol is tattooed above $his left breast, '<<= PlayerName()>>' above $his right, leaving the rest of $his chest and breasts bare.
 	<<case "paternalist">>
 		'<<if $PC.title == 1>>Master<<else>>Mistress<</if>>'s' is tattooed across the top of $his right breast; 'Darling' is tattooed across the top of $his left.
 	<<default>>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 3140f743a2d..13e0542dc34 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -2020,9 +2020,6 @@ This experience
 <</widget>>
 
 /* see how they are on a single line? This permits "."s and other things to be appended directly onto the widget result */
-<<widget "PlayerName">><<if $surnameOrder != 1>><<switch $PC.nationality>><<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">><<if $PC.surname>>$PC.surname <</if>>$PC.name<<default>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</switch>><<else>>$PC.name<<if $PC.surname>> $PC.surname<</if>><</if>><</widget>>
-
-<<widget "PoliteRudeTitle">><<switch $args[0].nationality>><<case "Japanese">><<if $args[0].trust > 0>>$PC.name<<if $PC.title > 0>>kun<<else>>chan<</if>><<else>><<if $PC.surname>><<print $PC.surname>><<else>><<print $PC.name>><<s>>an<</if>><</if>><<default>><<if $args[0].intelligence < -2>><<Master>><<elseif $args[0].intelligence > 1>><<if $PC.title > 0>>Ma<<s>>ther<<else>>Mi<<s>>tre<<ss>><</if>><<elseif $args[0].trust > 0>>$PC.name<<else>><<if $PC.surname>>$PC.surname<<else>>$PC.name<</if>><</if>><</switch>><</widget>>
 
 /*
  Call as <<EventNameLink>>
-- 
GitLab


From c3e7dcf77fcd904e9abbecf351a52044747f9210 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Mon, 16 Jul 2018 21:10:20 -0400
Subject: [PATCH 064/189] spaces to tabs

---
 src/js/assayJS.tw | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index c00d6ab477a..bd1b9a9d815 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -429,8 +429,8 @@ window.SlaveFullName = function SlaveFullName(slave) {
 };
 
 window.PlayerName = function PlayerName() {
-    const V = State.variables;
-    const surnamesFirstCountries = [
+	const V = State.variables;
+	const surnamesFirstCountries = [
 		"Cambodian",
 		"Chinese",
 		"Hungarian",
@@ -439,9 +439,9 @@ window.PlayerName = function PlayerName() {
 		"Mongolian",
 		"Taiwanese",
 		"Vietnamese"];
-    let names = [V.PC.name, V.PC.surname || ""];
-    
-    if ((V.surnameOrder !== 1) && (surnamesFirstCountries.includes(V.PC.nationality)))
+	let names = [V.PC.name, V.PC.surname || ""];
+	
+	if ((V.surnameOrder !== 1) && (surnamesFirstCountries.includes(V.PC.nationality)))
 		names.reverse();
 	return names.join(" ").trim();
 };
-- 
GitLab


From 88e3d8b0fd796b895b7a7384868382603a277e03 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Mon, 16 Jul 2018 21:12:13 -0400
Subject: [PATCH 065/189] spaces to tabs in devNotes

---
 devNotes/twine JS.txt | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 8d3f6d6dedd..9c0291cd03f 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -6789,8 +6789,8 @@ window.SlaveFullName = function SlaveFullName(slave) {
 };
 
 window.PlayerName = function PlayerName() {
-    const V = State.variables;
-    const surnamesFirstCountries = [
+	const V = State.variables;
+	const surnamesFirstCountries = [
 		"Cambodian",
 		"Chinese",
 		"Hungarian",
@@ -6799,9 +6799,9 @@ window.PlayerName = function PlayerName() {
 		"Mongolian",
 		"Taiwanese",
 		"Vietnamese"];
-    let names = [V.PC.name, V.PC.surname || ""];
-    
-    if ((V.surnameOrder !== 1) && (surnamesFirstCountries.includes(V.PC.nationality)))
+	let names = [V.PC.name, V.PC.surname || ""];
+	
+	if ((V.surnameOrder !== 1) && (surnamesFirstCountries.includes(V.PC.nationality)))
 		names.reverse();
 	return names.join(" ").trim();
 };
-- 
GitLab


From d5f567118e67fd829137dc4461354de5cdd6cd1b Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Mon, 16 Jul 2018 23:47:41 -0400
Subject: [PATCH 066/189] JSify DegradingName

---
 devNotes/twine JS.txt                     | 444 +++++++++++++++++++++-
 src/js/assayJS.tw                         | 389 ++++++++++++++++++-
 src/pregmod/newChildIntro.tw              |   2 +-
 src/uncategorized/addCustomDescriptors.tw |   2 +-
 src/uncategorized/futureSociety.tw        |   2 +-
 src/utility/miscWidgets.tw                | 383 -------------------
 src/utility/slaveCreationWidgets.tw       |   2 +-
 src/utility/slaveGenerationWidgets.tw     |   2 +-
 8 files changed, 830 insertions(+), 396 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 9c0291cd03f..7410a16019a 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -6830,10 +6830,6 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 	return r;
 };
 
-window.EventNameDelink = function EventNameDelink(slave) {
-	$("#name").empty().text(SlaveFullName(slave));
-};
-
 window.SlaveTitle = function SlaveTitle(slave) {
 	const V = State.variables;
 	let r = "";
@@ -7184,6 +7180,446 @@ window.SlaveTitle = function SlaveTitle(slave) {
 	return r;
 };
 
+window.DegradingName = function DegradingName(slave) {
+	const V = State.variables;
+	const leadershipPosition = [
+		"be the Attendant",
+		"be the Stewardess",
+		"be the Milkmaid",
+		"be the DJ",
+		"be your Concubine",
+		"be the Madam",
+		"be the Schoolteacher",
+		"be the Wardeness",
+		"be the Nurse",
+		"be your Head Girl",
+		"guard you",
+		"recruit girls"];
+	let names = [];
+	let suffixes = [];
+		
+	if (slave.fuckdoll > 0) {
+		slave.slaveName = "Fuckdoll No. " + slave.ID;
+		slave.slaveSurname = 0;
+	} else if (slave.assignment == "work in the dairy" && V.dairyRestraintsSetting >= 2) {
+		slave.slaveName = "Bioreactor No. " + slave.ID;
+		slave.slaveSurname = 0;
+	} else {	
+		if (V.seeRace === 1) {
+			switch (slave.race) {
+				case "white":
+					names.push("Pale", "White");
+					break;
+				case "asian":
+					names.push("Asian", "Yellow");
+					break;
+				case "latina":
+					names.push("Brown", "Latina");
+					break;
+				case "black":
+					names.push("Black", "Dark");
+					break;
+				case "pacific islander":
+					names.push("Islander", "Sea");
+					break;
+				case "malay":
+					names.push("Cinnamon", "Pinoy", "Spice");
+					break;
+				case "southern european":
+					names.push("Mediterranean", "Olive");
+					break;
+				case "amerindian":
+					names.push("Indian", "Reservation");
+					break;
+				case "semitic":
+					names.push("Semitic");
+					break;
+				case "middle eastern":
+					names.push("Arab", "Sand");
+					break;
+				case "indo-aryan":
+					names.push("Brown", "Indian");
+					break;
+				case "mixed race":
+					names.push("Mulatto", "Mutt");
+					break;
+			}
+		}
+		names.push(slave.hColor);
+		if (slave.eyes === -2) {
+			names.push("Blind", "Eyeless", "Sightless");
+		}
+		if (slave.boobs >= 2000) {
+			suffixes.push("Boob", "Boobs", "Titty");
+		}
+		if (slave.boobs < 500 && slave.butt < 3) {
+			names.push("Girly", "Slim", "Thin");
+		}
+		if (slave.boobs < 300) {
+			names.push("Flat");
+		}
+		if (slave.anus > 2 || slave.vagina > 2) {
+			names.push("Gaping", "Hallway", "Slit", "Wideopen");
+		}
+		if (slave.weight > 160) {
+			names.push("Cow", "Fat", "Whale", "Fatass", "Blimp");
+		} else if (slave.weight > 30) {
+			names.push("Chubby", "Fat", "Whale");
+		} else if (slave.weight <= -30) {
+			names.push("Bony", "Rail", "Skinny");
+		}
+		if (slave.muscles > 30) {
+			names.push("Huge", "Muscles", "Ripped", "Strong");
+		}
+		if (slave.fetishKnown === 1) {
+			if (slave.fetish == "buttslut") {
+				names.push("Anal", "Sodomy");
+			} 
+			if (slave.fetish == "cumslut") {
+				names.push("Cum", "Dicksuck", "Sucker");
+			}
+			if (slave.fetish == "humiliation") {
+				names.push("Rape");
+			}
+			if (slave.fetish == "masochist") {
+				names.push("Pain", "Rape", "Struggle");
+			}
+			if (slave.fetish == "pregnancy") {
+				names.push("Fertile");
+			}
+		}
+		if (slave.boobs*slave.lactation > 1000) {
+			names.push("Creamy", "Milky");
+			suffixes.push("Cow");
+		}
+		if (slave.oralSkill <= 30 && slave.analSkill <= 30) {
+			names.push("Cheap", "Fail", "Gutter");
+		}
+		if (slave.nipples == "fuckable") {
+			names.push("Nipplefuck", "Nipplecunt");
+		} else if (slave.nipples != "tiny" && slave.nipples != "cute") {
+			names.push("Pointy", "Titclit");
+			suffixes.push("Nipples");
+		}
+		if (slave.visualAge > 35) {
+			names.push("Mature");
+			suffixes.push("Cougar", "MILF");
+		} else if (slave.visualAge < 25) {
+			names.push("Girly", "Thin", "Young");
+		}
+		if (slave.amp === 1) {
+			names.push("Stumpy");
+			suffixes.push("Stumpy");
+		}
+		if (slave.boobsImplant > 1000 || slave.buttImplant > 3) {
+			names.push("Fake", "Plastic", "Silicone");
+		}
+		if (slave.dick > 5 && slave.balls > 5) {
+			names.push("Potent");
+			suffixes.push("Cannon", "Daddy");
+		}
+		if (slave.preg > 30) {
+			if (slave.broodmother === 2) {
+				names.push("Bursting", "Seeded");
+				suffixes.push("Factory", "Nursery");
+			} else if (slave.broodmother === 1) {
+				names.push("Bloated", "Stuffed");
+				suffixes.push("Breeder", "Factory");
+			}
+		}
+		if (slave.bellyPreg >= 450000) {
+			names.push("Bulging", "Squirming");
+		}
+		if (slave.bellyPreg >= 5000) {
+			names.push("Preg");
+			suffixes.push("Belly", "Mommy");
+		}
+		if (slave.belly > 150000) {
+			suffixes.push("Balloon");
+		}
+		if (slave.belly > 1500) {
+			suffixes.push("Belly");
+		}
+		if (slave.dick > 0) {
+			if (slave.dick > 4) {
+				names.push("Dangle", "Hung");
+				suffixes.push("Cock", "Dick");
+			}
+			if (slave.balls === 0) {
+				names.push("Cut", "Gelded", "Soft");
+			} else {
+				names.push("Erect", "Hard", "Stiff");
+			}
+		}
+		if (slave.dick === 1) {
+			names.push("Micro", "Tiny");
+			suffixes.push("Bitch");
+		}
+		if (slave.height >= 185) {
+			names.push("Tall", "Top");
+			suffixes.push("Tower");
+		} else if (slave.height < 150) {
+			names.push("Stumpy", "Tiny");
+			suffixes.push("Shortstack", "Stumpy");
+		}
+		if (slave.whoreSkill > 95) {
+			names.push("Money", "Street");
+			suffixes.push("Whore");
+		}
+		if (slave.entertainSkill > 95) {
+			names.push("Easy", "Club");
+			suffixes.push("Slut");
+		}
+		if (slave.oralSkill > 95) {
+			names.push("Suck");
+			suffixes.push("Throat");
+		}
+		if (slave.vaginalSkill > 95) {
+			suffixes.push("Channel", "Kegel", "Pussy");
+		}
+		if (slave.analSkill > 95) {
+			suffixes.push("Asspussy", "Sphincter");
+		}
+		if (slave.intelligence > 1) {
+			names.push("Bright", "Clever", "Smart");
+			if (slave.intelligenceImplant === 1) {
+				names.push("College", "Graduate", "Nerdy");
+			}
+		} else if (slave.intelligence < -1) {
+			names.push("Cretin", "Dumb", "Retarded", "Stupid");
+		}
+		if (slave.vagina === 1 && slave.vaginaSkill <= 10) {
+			names.push("Fresh", "New", "Tight");
+		}
+		if (slave.devotion < -75) {
+			names.push("Angry", "Biter", "Caged");
+		} else if (slave.devotion < -50) {
+			names.push("Cell", "Cuffs");
+		} else if (slave.devotion < -20) {
+			names.push("Bag", "Box");
+		} else if (slave.devotion <= 20) {
+			names.push("Sad", "Whiner");
+		} else if (slave.devotion > 50) {
+			names.push("Prize");
+			if (slave.visualAge > 35) {
+				names.push("Queen");
+			} else if (slave.visualAge < 25) {
+				names.push("Princess");
+			}
+		}
+		if (slave.trust < -50) {
+			names.push("Screaming");
+			suffixes.push("Sobber");
+		} else if (slave.trust < -20) {
+			names.push("Crying");
+			suffixes.push("Meat", "Tears", "Thing", "Weeper");
+		} else if (slave.trust < 20) {
+			names.push("Begging");
+		}
+		
+		
+		if (slave.dick === 0) {
+			if (slave.vagina === -1) {
+				suffixes.push("Null");
+			} else {
+				if (slave.visualAge < 25) {
+					suffixes.push("Girl");
+				}
+			}
+		} else {
+			if (slave.vagina != -1) {
+				suffixes.push("Futa");
+			} else {
+				if (slave.balls > 0) {
+					if (slave.boobs > 300 && slave.butt > 2) { /* SHEMALES: cock & balls, T&A above minimum */
+						suffixes.push("Shemale");
+					} else {
+						if (slave.shoulders < 1 && slave.muscles <= 30) {
+							if (slave.faceShape == "masculine" || slave.faceShape == "androgynous") { /* SISSIES: feminine shoulders or muscles, masculine faces */
+								suffixes.push("Sissy");
+							} else { /* TRAPS: feminine shoulders or muscles, feminine faces */
+								suffixes.push("Trap");
+							}
+						} else { /* BITCHES: masculine shoulders or muscles */
+							suffixes.push("Bitch");
+						}
+					}
+				} else {
+					if (slave.visualAge > 35) {
+						suffixes.push("DickMILF");
+					} else if (slave.visualAge >= 25) {
+						suffixes.push("Dickslave");
+					} else {
+						suffixes.push("Dickgirl");
+					}
+				}
+			}
+		}
+		if (slave.anus > 0) {
+			suffixes.push("Anus", "Asshole", "Backdoor", "Butt", "Butthole");
+		}
+		if (slave.anus === 1) {
+			suffixes.push("Tightass", "Tightbutt");
+		}
+		if (slave.vagina > 0) {
+			suffixes.push("Cunt", "Pussy", "Vagina");
+		}
+		if (slave.boobs < 500 && slave.butt < 3 && slave.dick > 0) {
+			suffixes.push("Bitch", "Bottom", "Sissy", "Trap");
+		}
+		if (slave.energy > 95) {
+			suffixes.push("Fuck", "Fuckaddict", "Nympho", "Sexaddict");
+		}
+		if (slave.fetishKnown === 1) {
+			if (slave.fetish == "humiliation") {
+				suffixes.push("Rapebait", "Showgirl");
+			}
+			if (slave.fetish == "submissive") {
+				suffixes.push("Bottom", "Fuckee", "Rapebait");
+			}
+			if (slave.fetish == "dom") {
+				suffixes.push("Dom", "Fucker", "Top");
+			}
+			if (slave.fetish == "pregnancy") {
+				suffixes.push("Breeder", "Mommy");
+			}
+			if (slave.fetish == "boobs") {
+				suffixes.push("Boob", "Boobie", "Tit", "Titty");
+			}
+		}
+		if (slave.births >= 2) {
+			suffixes.push("Breeder");
+			if (slave.births >= 5) {
+				suffixes.push("Broodmother");
+			}
+		}
+		if (slave.areolae > 2) {
+			suffixes.push("Areolas", "Headlights");
+		}
+		if (slave.lips > 40) {
+			suffixes.push("Lips", "Pillows");
+		}
+		if (slave.labia > 1) {
+			suffixes.push("Curtains", "Flower", "Lips");
+		}
+		if (slave.breedingMark === 1) {
+			suffixes.push("Breeder", "Oven", "Womb");
+		}
+		if (slave.butt > 5) {
+			suffixes.push("Ass", "Bottom", "Butt");
+		}
+		if (slave.vagina === 0) {
+			suffixes.push("Virgin");
+		}
+		
+		slave.slaveName = jsEither(names);
+	}
+	if (leadershipPosition.includes(slave.assignment)) {
+		switch (slave.assignment) {
+			case "be the Attendant":
+				slave.slaveName = jsEither(["Bath", "Spa"]);
+				break;
+			case "be the Stewardess":
+				slave.slaveName = jsEither(["Servant", "Maid"]);
+				break;
+			case "be the Milkmaid":
+				if (V.cumSlaves > 3) {
+					slave.slaveName = jsEither(["Fucker", "Milker"]);
+				} else {
+					slave.slaveName = jsEither(["Dairy", "Farm"]);
+				}
+				break;
+			case "be the DJ":
+				slave.slaveName = jsEither(["Bass", "Booth"]);
+				break;
+			case "be your Concubine":
+				slave.slaveName = jsEither(["Bed", "Master"]);
+				break;
+			case "be the Madam":
+				slave.slaveName = jsEither(["Madam", "Pimp"]);
+				break;
+			case "be the Schoolteacher":
+				slave.slaveName = jsEither(["Classroom", "Teacher"]);
+				break;
+			case "be the Wardeness":
+				slave.slaveName = jsEither(["Jail", "Prison"]);
+				break;
+			case "be the Nurse":
+				slave.slaveName = jsEither(["Clinic", "Nurse"]);
+				break;
+			case "be your Head Girl":
+				slave.slaveName = jsEither(["Chief", "Head"]);
+				break;
+			case "guard you":
+				slave.slaveName = jsEither(["Battle", "Guard"]);
+				break;
+			case "recruit girls":
+				slave.slaveName = jsEither(["Cam", "Recruiter"]);
+				break;
+		}
+	}
+	let surname = jsEither(suffixes);
+	if (typeof surname == "string" && surname.toLowerCase() == slave.slaveName.toLowerCase()) {
+		DegradingName(slave);
+	}
+	slave.slaveSurname = surname;
+};
+
+window.SlaveSort = function SlaveSort(slaves, main=false) {
+	const V = State.variables;
+	if (main) {
+		switch (V.sortSlavesBy) {
+		case "name":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.slaveName < b.slaveName ? -1 : 1);
+			else
+				slaves = slaves.sort((a, b) => a.slaveName > b.slaveName ? -1 : 1);
+			break;
+		case "assignment":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.assignment < b.assignment ? -1 : 1);
+			else
+				slaves = slaves.sort((a, b) => a.assignment > b.assignment ? -1 : 1);
+			break;
+		case "seniority":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => b.weekAcquired - a.weekAcquired);
+			else
+				slaves = slaves.sort((a, b) => a.weekAcquired - b.weekAcquired);
+			break;
+		case "actualAge":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.actualAge - b.actualAge);
+			else
+				slaves = slaves.sort((a, b) => b.actualAge - a.actualAge);
+			break;
+		case "visualAge":
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.visualAge - b.visualAge);
+			else
+				slaves = slaves.sort((a, b) => b.visualAge - a.visualAge);
+			break;
+		case "physicalAge":
+			if (V.sortSlavesOrder == "physicalAge")
+				slaves = slaves.sort((a, b) => a.physicalAge - b.physicalAge);
+			else
+				slaves = slaves.sort((a, b) => b.physicalAge - a.physicalAge);
+			break;
+		default:
+			if (V.sortSlavesOrder == "ascending")
+				slaves = slaves.sort((a, b) => a.devotion - b.devotion);
+			else
+				slaves = slaves.sort((a, b) => b.devotion - a.devotion);
+			break;
+		}
+		V.slaveIndices = slaves2indices();
+	} else {
+		V.slaveIndices = slaves2indices();
+		filterInPlace(slaves, s => V.slaveIndices[s] !== undefined);
+		slaves.sort((a, b) => V.slaveIndices[a] - V.slaveIndices[b]);
+	}
+};
+
 /*:: Summary Widgets JS [script]*/
 
 window.SlaveStatClamp = function SlaveStatClamp(slave) {
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index bd1b9a9d815..172de1fc76c 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -470,10 +470,6 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 	return r;
 };
 
-window.EventNameDelink = function EventNameDelink(slave) {
-	$("#name").empty().text(SlaveFullName(slave));
-};
-
 window.SlaveTitle = function SlaveTitle(slave) {
 	const V = State.variables;
 	let r = "";
@@ -824,6 +820,391 @@ window.SlaveTitle = function SlaveTitle(slave) {
 	return r;
 };
 
+window.DegradingName = function DegradingName(slave) {
+	const V = State.variables;
+	const leadershipPosition = [
+		"be the Attendant",
+		"be the Stewardess",
+		"be the Milkmaid",
+		"be the DJ",
+		"be your Concubine",
+		"be the Madam",
+		"be the Schoolteacher",
+		"be the Wardeness",
+		"be the Nurse",
+		"be your Head Girl",
+		"guard you",
+		"recruit girls"];
+	let names = [];
+	let suffixes = [];
+		
+	if (slave.fuckdoll > 0) {
+		slave.slaveName = "Fuckdoll No. " + slave.ID;
+		slave.slaveSurname = 0;
+	} else if (slave.assignment == "work in the dairy" && V.dairyRestraintsSetting >= 2) {
+		slave.slaveName = "Bioreactor No. " + slave.ID;
+		slave.slaveSurname = 0;
+	} else {	
+		if (V.seeRace === 1) {
+			switch (slave.race) {
+				case "white":
+					names.push("Pale", "White");
+					break;
+				case "asian":
+					names.push("Asian", "Yellow");
+					break;
+				case "latina":
+					names.push("Brown", "Latina");
+					break;
+				case "black":
+					names.push("Black", "Dark");
+					break;
+				case "pacific islander":
+					names.push("Islander", "Sea");
+					break;
+				case "malay":
+					names.push("Cinnamon", "Pinoy", "Spice");
+					break;
+				case "southern european":
+					names.push("Mediterranean", "Olive");
+					break;
+				case "amerindian":
+					names.push("Indian", "Reservation");
+					break;
+				case "semitic":
+					names.push("Semitic");
+					break;
+				case "middle eastern":
+					names.push("Arab", "Sand");
+					break;
+				case "indo-aryan":
+					names.push("Brown", "Indian");
+					break;
+				case "mixed race":
+					names.push("Mulatto", "Mutt");
+					break;
+			}
+		}
+		names.push(slave.hColor);
+		if (slave.eyes === -2) {
+			names.push("Blind", "Eyeless", "Sightless");
+		}
+		if (slave.boobs >= 2000) {
+			suffixes.push("Boob", "Boobs", "Titty");
+		}
+		if (slave.boobs < 500 && slave.butt < 3) {
+			names.push("Girly", "Slim", "Thin");
+		}
+		if (slave.boobs < 300) {
+			names.push("Flat");
+		}
+		if (slave.anus > 2 || slave.vagina > 2) {
+			names.push("Gaping", "Hallway", "Slit", "Wideopen");
+		}
+		if (slave.weight > 160) {
+			names.push("Cow", "Fat", "Whale", "Fatass", "Blimp");
+		} else if (slave.weight > 30) {
+			names.push("Chubby", "Fat", "Whale");
+		} else if (slave.weight <= -30) {
+			names.push("Bony", "Rail", "Skinny");
+		}
+		if (slave.muscles > 30) {
+			names.push("Huge", "Muscles", "Ripped", "Strong");
+		}
+		if (slave.fetishKnown === 1) {
+			if (slave.fetish == "buttslut") {
+				names.push("Anal", "Sodomy");
+			} 
+			if (slave.fetish == "cumslut") {
+				names.push("Cum", "Dicksuck", "Sucker");
+			}
+			if (slave.fetish == "humiliation") {
+				names.push("Rape");
+			}
+			if (slave.fetish == "masochist") {
+				names.push("Pain", "Rape", "Struggle");
+			}
+			if (slave.fetish == "pregnancy") {
+				names.push("Fertile");
+			}
+		}
+		if (slave.boobs*slave.lactation > 1000) {
+			names.push("Creamy", "Milky");
+			suffixes.push("Cow");
+		}
+		if (slave.oralSkill <= 30 && slave.analSkill <= 30) {
+			names.push("Cheap", "Fail", "Gutter");
+		}
+		if (slave.nipples == "fuckable") {
+			names.push("Nipplefuck", "Nipplecunt");
+		} else if (slave.nipples != "tiny" && slave.nipples != "cute") {
+			names.push("Pointy", "Titclit");
+			suffixes.push("Nipples");
+		}
+		if (slave.visualAge > 35) {
+			names.push("Mature");
+			suffixes.push("Cougar", "MILF");
+		} else if (slave.visualAge < 25) {
+			names.push("Girly", "Thin", "Young");
+		}
+		if (slave.amp === 1) {
+			names.push("Stumpy");
+			suffixes.push("Stumpy");
+		}
+		if (slave.boobsImplant > 1000 || slave.buttImplant > 3) {
+			names.push("Fake", "Plastic", "Silicone");
+		}
+		if (slave.dick > 5 && slave.balls > 5) {
+			names.push("Potent");
+			suffixes.push("Cannon", "Daddy");
+		}
+		if (slave.preg > 30) {
+			if (slave.broodmother === 2) {
+				names.push("Bursting", "Seeded");
+				suffixes.push("Factory", "Nursery");
+			} else if (slave.broodmother === 1) {
+				names.push("Bloated", "Stuffed");
+				suffixes.push("Breeder", "Factory");
+			}
+		}
+		if (slave.bellyPreg >= 450000) {
+			names.push("Bulging", "Squirming");
+		}
+		if (slave.bellyPreg >= 5000) {
+			names.push("Preg");
+			suffixes.push("Belly", "Mommy");
+		}
+		if (slave.belly > 150000) {
+			suffixes.push("Balloon");
+		}
+		if (slave.belly > 1500) {
+			suffixes.push("Belly");
+		}
+		if (slave.dick > 0) {
+			if (slave.dick > 4) {
+				names.push("Dangle", "Hung");
+				suffixes.push("Cock", "Dick");
+			}
+			if (slave.balls === 0) {
+				names.push("Cut", "Gelded", "Soft");
+			} else {
+				names.push("Erect", "Hard", "Stiff");
+			}
+		}
+		if (slave.dick === 1) {
+			names.push("Micro", "Tiny");
+			suffixes.push("Bitch");
+		}
+		if (slave.height >= 185) {
+			names.push("Tall", "Top");
+			suffixes.push("Tower");
+		} else if (slave.height < 150) {
+			names.push("Stumpy", "Tiny");
+			suffixes.push("Shortstack", "Stumpy");
+		}
+		if (slave.whoreSkill > 95) {
+			names.push("Money", "Street");
+			suffixes.push("Whore");
+		}
+		if (slave.entertainSkill > 95) {
+			names.push("Easy", "Club");
+			suffixes.push("Slut");
+		}
+		if (slave.oralSkill > 95) {
+			names.push("Suck");
+			suffixes.push("Throat");
+		}
+		if (slave.vaginalSkill > 95) {
+			suffixes.push("Channel", "Kegel", "Pussy");
+		}
+		if (slave.analSkill > 95) {
+			suffixes.push("Asspussy", "Sphincter");
+		}
+		if (slave.intelligence > 1) {
+			names.push("Bright", "Clever", "Smart");
+			if (slave.intelligenceImplant === 1) {
+				names.push("College", "Graduate", "Nerdy");
+			}
+		} else if (slave.intelligence < -1) {
+			names.push("Cretin", "Dumb", "Retarded", "Stupid");
+		}
+		if (slave.vagina === 1 && slave.vaginaSkill <= 10) {
+			names.push("Fresh", "New", "Tight");
+		}
+		if (slave.devotion < -75) {
+			names.push("Angry", "Biter", "Caged");
+		} else if (slave.devotion < -50) {
+			names.push("Cell", "Cuffs");
+		} else if (slave.devotion < -20) {
+			names.push("Bag", "Box");
+		} else if (slave.devotion <= 20) {
+			names.push("Sad", "Whiner");
+		} else if (slave.devotion > 50) {
+			names.push("Prize");
+			if (slave.visualAge > 35) {
+				names.push("Queen");
+			} else if (slave.visualAge < 25) {
+				names.push("Princess");
+			}
+		}
+		if (slave.trust < -50) {
+			names.push("Screaming");
+			suffixes.push("Sobber");
+		} else if (slave.trust < -20) {
+			names.push("Crying");
+			suffixes.push("Meat", "Tears", "Thing", "Weeper");
+		} else if (slave.trust < 20) {
+			names.push("Begging");
+		}
+		
+		
+		if (slave.dick === 0) {
+			if (slave.vagina === -1) {
+				suffixes.push("Null");
+			} else {
+				if (slave.visualAge < 25) {
+					suffixes.push("Girl");
+				}
+			}
+		} else {
+			if (slave.vagina != -1) {
+				suffixes.push("Futa");
+			} else {
+				if (slave.balls > 0) {
+					if (slave.boobs > 300 && slave.butt > 2) { /* SHEMALES: cock & balls, T&A above minimum */
+						suffixes.push("Shemale");
+					} else {
+						if (slave.shoulders < 1 && slave.muscles <= 30) {
+							if (slave.faceShape == "masculine" || slave.faceShape == "androgynous") { /* SISSIES: feminine shoulders or muscles, masculine faces */
+								suffixes.push("Sissy");
+							} else { /* TRAPS: feminine shoulders or muscles, feminine faces */
+								suffixes.push("Trap");
+							}
+						} else { /* BITCHES: masculine shoulders or muscles */
+							suffixes.push("Bitch");
+						}
+					}
+				} else {
+					if (slave.visualAge > 35) {
+						suffixes.push("DickMILF");
+					} else if (slave.visualAge >= 25) {
+						suffixes.push("Dickslave");
+					} else {
+						suffixes.push("Dickgirl");
+					}
+				}
+			}
+		}
+		if (slave.anus > 0) {
+			suffixes.push("Anus", "Asshole", "Backdoor", "Butt", "Butthole");
+		}
+		if (slave.anus === 1) {
+			suffixes.push("Tightass", "Tightbutt");
+		}
+		if (slave.vagina > 0) {
+			suffixes.push("Cunt", "Pussy", "Vagina");
+		}
+		if (slave.boobs < 500 && slave.butt < 3 && slave.dick > 0) {
+			suffixes.push("Bitch", "Bottom", "Sissy", "Trap");
+		}
+		if (slave.energy > 95) {
+			suffixes.push("Fuck", "Fuckaddict", "Nympho", "Sexaddict");
+		}
+		if (slave.fetishKnown === 1) {
+			if (slave.fetish == "humiliation") {
+				suffixes.push("Rapebait", "Showgirl");
+			}
+			if (slave.fetish == "submissive") {
+				suffixes.push("Bottom", "Fuckee", "Rapebait");
+			}
+			if (slave.fetish == "dom") {
+				suffixes.push("Dom", "Fucker", "Top");
+			}
+			if (slave.fetish == "pregnancy") {
+				suffixes.push("Breeder", "Mommy");
+			}
+			if (slave.fetish == "boobs") {
+				suffixes.push("Boob", "Boobie", "Tit", "Titty");
+			}
+		}
+		if (slave.births >= 2) {
+			suffixes.push("Breeder");
+			if (slave.births >= 5) {
+				suffixes.push("Broodmother");
+			}
+		}
+		if (slave.areolae > 2) {
+			suffixes.push("Areolas", "Headlights");
+		}
+		if (slave.lips > 40) {
+			suffixes.push("Lips", "Pillows");
+		}
+		if (slave.labia > 1) {
+			suffixes.push("Curtains", "Flower", "Lips");
+		}
+		if (slave.breedingMark === 1) {
+			suffixes.push("Breeder", "Oven", "Womb");
+		}
+		if (slave.butt > 5) {
+			suffixes.push("Ass", "Bottom", "Butt");
+		}
+		if (slave.vagina === 0) {
+			suffixes.push("Virgin");
+		}
+		
+		slave.slaveName = jsEither(names);
+	}
+	if (leadershipPosition.includes(slave.assignment)) {
+		switch (slave.assignment) {
+			case "be the Attendant":
+				slave.slaveName = jsEither(["Bath", "Spa"]);
+				break;
+			case "be the Stewardess":
+				slave.slaveName = jsEither(["Servant", "Maid"]);
+				break;
+			case "be the Milkmaid":
+				if (V.cumSlaves > 3) {
+					slave.slaveName = jsEither(["Fucker", "Milker"]);
+				} else {
+					slave.slaveName = jsEither(["Dairy", "Farm"]);
+				}
+				break;
+			case "be the DJ":
+				slave.slaveName = jsEither(["Bass", "Booth"]);
+				break;
+			case "be your Concubine":
+				slave.slaveName = jsEither(["Bed", "Master"]);
+				break;
+			case "be the Madam":
+				slave.slaveName = jsEither(["Madam", "Pimp"]);
+				break;
+			case "be the Schoolteacher":
+				slave.slaveName = jsEither(["Classroom", "Teacher"]);
+				break;
+			case "be the Wardeness":
+				slave.slaveName = jsEither(["Jail", "Prison"]);
+				break;
+			case "be the Nurse":
+				slave.slaveName = jsEither(["Clinic", "Nurse"]);
+				break;
+			case "be your Head Girl":
+				slave.slaveName = jsEither(["Chief", "Head"]);
+				break;
+			case "guard you":
+				slave.slaveName = jsEither(["Battle", "Guard"]);
+				break;
+			case "recruit girls":
+				slave.slaveName = jsEither(["Cam", "Recruiter"]);
+				break;
+		}
+	}
+	let surname = jsEither(suffixes);
+	if (typeof surname == "string" && surname.toLowerCase() == slave.slaveName.toLowerCase()) {
+		DegradingName(slave);
+	}
+	slave.slaveSurname = surname;
+};
+
 window.SlaveSort = function SlaveSort(slaves, main=false) {
 	const V = State.variables;
 	if (main) {
diff --git a/src/pregmod/newChildIntro.tw b/src/pregmod/newChildIntro.tw
index ad1e0387cb5..d8279f16a9d 100644
--- a/src/pregmod/newChildIntro.tw
+++ b/src/pregmod/newChildIntro.tw
@@ -106,7 +106,7 @@ You completed the legalities before heading to $incubatorName, knowing the tank
 <<if $arcologies[0].FSDegradationist != "unset">>
     <br><<link "Have your PA assign her a degrading name">>
 		<<replace "#naming">>
-		<<DegradingName $activeSlave>>
+		<<run DegradingName($activeSlave)>>
 		<<set $activeSlave.birthName = $activeSlave.slaveName>>
 		$assistantName registers the new girl as "<<print $activeSlave.slaveName>>" in your registry.
 		<</replace>>
diff --git a/src/uncategorized/addCustomDescriptors.tw b/src/uncategorized/addCustomDescriptors.tw
index 248cb6f54b1..2a736e69c17 100644
--- a/src/uncategorized/addCustomDescriptors.tw
+++ b/src/uncategorized/addCustomDescriptors.tw
@@ -97,7 +97,7 @@ You may enter custom descriptors for your slave's hair color, hair style, tattoo
 		| <<link "Give her a random full feudal Japanese name">><<set $activeSlave.slaveName = setup.edoSlaveNames.random(), $activeSlave.slaveSurname = setup.edoSlaveSurnames.random()>><<goto "Rename">><</link>>
 	<</if>>
 	<<if $arcologies[0].FSDegradationist > -1>>
-		| <<link "Give her a degrading full name">><<DegradingName $activeSlave>><<goto "Rename">><</link>>
+		| <<link "Give her a degrading full name">><<run DegradingName($activeSlave)>><<goto "Rename">><</link>>
 	<</if>>
 <<else>>
 	//You must break her will further before you can successfully force a new name on her.//
diff --git a/src/uncategorized/futureSociety.tw b/src/uncategorized/futureSociety.tw
index f0f5de340ba..8e6b352842e 100644
--- a/src/uncategorized/futureSociety.tw
+++ b/src/uncategorized/futureSociety.tw
@@ -547,7 +547,7 @@ You are spending <<print cashFormat($FSSpending)>> each week to support your soc
 	<br>
 	<<link "Rename all your slaves according to Degradationist custom">>
 	<<for $i = 0; $i < $slaves.length; $i++>>
-		<<DegradingName $slaves[$i]>>
+		<<run DegradingName($slaves[$i])>>
 	<</for>>
 	<<replace "#mass">>
 		<br>Slaves renamed.<br>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 13e0542dc34..db16b0d2803 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -2033,389 +2033,6 @@ This experience
 */
 <<widget "EventNameDelink">><<replace "#name">><<= SlaveFullName($args[0])>><</replace>><</widget>>
 
-/*
- Call as <<DegradingName $slave>> where $slave is any slave object
-  $args[0]: Slave
- */
-<<widget "DegradingName">>
-<<if $args[0].fuckdoll > 0>>
-	<<set $args[0].slaveName = "Fuckdoll No. " + random(1000,9999), $args[0].slaveSurname = 0>>
-<<elseif ($args[0].assignment == "work in the dairy") && ($dairyRestraintsSetting >= 2)>>
-	<<set $args[0].slaveName = "Bioreactor No. " + random(1000,9999), $args[0].slaveSurname = 0>>
-<<else>>
-
-<<set _names = []>>
-
-<<if ($seeRace == 1)>>
-<<switch $args[0].race>>
-<<case "white">>
-	<<set _names.push("Pale", "White")>>
-<<case "asian">>
-	<<set _names.push("Asian", "Yellow")>>
-<<case "latina">>
-	<<set _names.push("Brown", "Latina")>>
-<<case "black">>
-	<<set _names.push("Black", "Dark")>>
-<<case "pacific islander">>
-	<<set _names.push("Islander", "Sea")>>
-<<case "malay">>
-	<<set _names.push("Cinnamon", "Pinoy", "Spice")>>
-<<case "southern european">>
-	<<set _names.push("Mediterranean", "Olive")>>
-<<case "amerindian">>
-	<<set _names.push("Indian", "Reservation")>>
-<<case "semitic">>
-	<<set _names.push("Semitic")>>
-<<case "middle eastern">>
-	<<set _names.push("Arab", "Sand")>>
-<<case "indo-aryan">>
-	<<set _names.push("Brown", "Indian")>>
-<<case "mixed race">>
-	<<set _names.push("Mulatto", "Mutt")>>
-<</switch>>
-<</if>>
-
-<<set _names.push($args[0].hColor)>>
-
-<<if ($args[0].eyes == -2)>>
-	<<set _names.push("Blind", "Eyeless", "Sightless")>>
-<</if>>
-
-<<if ($args[0].boobs < 500) && ($args[0].butt < 3)>>
-	<<set _names.push("Girly", "Slim", "Thin")>>
-<</if>>
-<<if ($args[0].boobs < 300)>>
-	<<set _names.push("Flat")>>
-<</if>>
-<<if ($args[0].anus > 2) || ($args[0].vagina > 2)>>
-	<<set _names.push("Gaping", "Hallway", "Slit", "Wideopen")>>
-<</if>>
-<<if ($args[0].weight > 160)>>
-	<<set _names.push("Cow", "Fat", "Whale")>>
-<<elseif ($args[0].weight > 30)>>
-	<<set _names.push("Chubby", "Fat", "Whale")>>
-<<elseif ($args[0].weight <= -30)>>
-	<<set _names.push("Bony", "Rail", "Skinny")>>
-<</if>>
-<<if ($args[0].muscles > 30)>>
-	<<set _names.push("Huge", "Muscles", "Ripped", "Strong")>>
-<</if>>
-<<if ($args[0].fetish == "buttslut") && ($args[0].fetishKnown == 1)>>
-	<<set _names.push("Anal", "Sodomy")>>
-<</if>>
-<<if ($args[0].fetish == "cumslut") && ($args[0].fetishKnown == 1)>>
-	<<set _names.push("Cum", "Dicksuck", "Sucker")>>
-<</if>>
-<<if ($args[0].fetish == "humiliation") && ($args[0].fetishKnown == 1)>>
-	<<set _names.push("Rape")>>
-<</if>>
-<<if ($args[0].fetish == "masochist") && ($args[0].fetishKnown == 1)>>
-	<<set _names.push("Pain", "Rape", "Struggle")>>
-<</if>>
-<<if ($args[0].fetish == "pregnancy") && ($args[0].fetishKnown == 1)>>
-	<<set _names.push("Fertile")>>
-<</if>>
-<<if (($args[0].boobs*$args[0].lactation) > 1000)>>
-	<<set _names.push("Creamy", "Milky")>>
-<</if>>
-<<if ($args[0].oralSkill <= 30) && ($args[0].analSkill <= 30)>>
-	<<set _names.push("Cheap", "Fail", "Gutter")>>
-<</if>>
-<<if $args[0].nipples == "fuckable">>
-	<<set _names.push("Nipplefuck", "Nipplecunt")>>
-<<elseif ($args[0].nipples != "tiny") && ($args[0].nipples != "cute")>>
-	<<set _names.push("Pointy", "Titclit")>>
-<</if>>
-<<if ($args[0].visualAge > 35)>>
-	<<set _names.push("Mature")>>
-<</if>>
-<<if ($args[0].visualAge < 25)>>
-	<<set _names.push("Girly", "Thin", "Young")>>
-<</if>>
-<<if ($args[0].amp == 1)>>
-	<<set _names.push("Stumpy")>>
-<</if>>
-<<if ($args[0].boobsImplant > 1000) || ($args[0].buttImplant > 3)>>
-	<<set _names.push("Fake", "Plastic", "Silicone")>>
-<</if>>
-<<if ($args[0].dick > 5) && ($args[0].balls > 5)>>
-	<<set $prefixes.push("Potent")>>
-<</if>>
-<<if ($args[0].broodmother == 2) && ($args[0].preg > 30)>>
-	<<set $prefixes.push("Bursting", "Seeded")>>
-<</if>>
-<<if ($args[0].broodmother == 1) && ($args[0].preg > 30)>>
-	<<set $prefixes.push("Bloated", "Stuffed")>>
-<</if>>
-<<if $args[0].bellyPreg >= 450000>>
-	<<set $prefixes.push("Bulging", "Squirming")>>
-<</if>>
-<<if ($args[0].bellyPreg >= 5000)>>
-	<<set _names.push("Preg")>>
-<</if>>
-<<if ($args[0].dick > 4)>>
-	<<set _names.push("Dangle", "Hung")>>
-<</if>>
-<<if ($args[0].dick > 0) && ($args[0].balls == 0)>>
-	<<set _names.push("Cut", "Gelded", "Soft")>>
-<</if>>
-<<if ($args[0].dick > 0) && ($args[0].balls > 0)>>
-	<<set _names.push("Erect", "Hard", "Stiff")>>
-<</if>>
-<<if ($args[0].dick == 1)>>
-	<<set _names.push("Micro", "Tiny")>>
-<</if>>
-<<if ($args[0].height >= 185)>>
-	<<set _names.push("Tall", "Top")>>
-<</if>>
-<<if ($args[0].height < 150)>>
-	<<set _names.push("Stumpy", "Tiny")>>
-<</if>>
-<<if ($args[0].whoreSkill > 95)>>
-	<<set _names.push("Money", "Street")>>
-<</if>>
-<<if ($args[0].entertainSkill > 95)>>
-	<<set _names.push("Easy", "Club")>>
-<</if>>
-<<if ($args[0].oralSkill > 95)>>
-	<<set _names.push("Suck")>>
-<</if>>
-<<if ($args[0].intelligence > 1)>>
-	<<set _names.push("Bright", "Clever", "Smart")>>
-	<<if ($args[0].intelligenceImplant == 1)>>
-		<<set _names.push("College", "Graduate", "Nerdy")>>
-	<</if>>
-<<elseif ($args[0].intelligence < -1)>>
-	<<set _names.push("Cretin", "Dumb", "Retarded", "Stupid")>>
-<</if>>
-<<if ($args[0].vagina == 1) && ($args[0].vaginalSkill <= 10)>>
-	<<set _names.push("Fresh", "New", "Tight")>>
-<</if>>
-<<if ($args[0].devotion < -75)>>
-	<<set _names.push("Angry", "Biter", "Caged")>>
-<<elseif ($args[0].devotion < -50)>>
-	<<set _names.push("Cell", "Cuffs")>>
-<<elseif ($args[0].devotion < -20)>>
-	<<set _names.push("Bag", "Box")>>
-<<elseif ($args[0].devotion <= 20)>>
-	<<set _names.push("Sad", "Whiner")>>
-<</if>>
-<<if ($args[0].trust < -50)>>
-	<<set _names.push("Screaming")>>
-<<elseif ($args[0].trust < -20)>>
-	<<set _names.push("Crying")>>
-<<elseif ($args[0].trust < 20)>>
-	<<set _names.push("Begging")>>
-<</if>>
-
-<<set _suffixes = []>>
-
-<<if $args[0].dick == 0>>
-	<<if $args[0].vagina == -1>> /* NULLS */
-		<<set _suffixes.push("Null")>>
-	<<else>> /* FEMALES */
-		<<if $args[0].visualAge < 25>>
-			<<set _suffixes.push("Girl")>>
-		<</if>>
-	<</if>>
-<<else>>
-	<<if $args[0].vagina != -1>>
-		<<set _suffixes.push("Futa")>>
-	<<else>>
-		<<if $args[0].balls > 0>>
-			<<if ($args[0].boobs > 300) && ($args[0].butt > 2)>> /* SHEMALES: cock & balls, T&A above minimum */
-				<<set _suffixes.push("Shemale")>>
-			<<else>>
-				<<if ($args[0].shoulders < 1) && ($args[0].muscles <= 30)>>
-					<<if ($args[0].faceShape == "masculine") || ($args[0].faceShape == "androgynous")>> /* SISSIES: feminine shoulders or muscles, masculine faces */
-						<<set _suffixes.push("Sissy")>>
-					<<else>> /* TRAPS: feminine shoulders or muscles, feminine faces */
-						<<set _suffixes.push("Trap")>>
-					<</if>>
-				<<else>> /* BITCHES: masculine shoulders or muscles */
-					<<set _suffixes.push("Bitch")>>
-				<</if>>
-			<</if>>
-		<<else>>
-			<<if $args[0].visualAge > 35>>
-				<<set _suffixes.push("DickMILF")>>
-			<<elseif $args[0].visualAge >= 25>>
-				<<set _suffixes.push("Dickslave")>>
-			<<else>>
-				<<set _suffixes.push("Dickgirl")>>
-			<</if>>
-		<</if>>
-	<</if>>
-<</if>>
-
-<<if ($args[0].anus > 0)>>
-	<<set _suffixes.push("Anus", "Asshole", "Backdoor", "Butt", "Butthole")>>
-<</if>>
-<<if ($args[0].vagina > 0)>>
-	<<set _suffixes.push("Cunt", "Pussy", "Vagina")>>
-<</if>>
-<<if ($args[0].boobs < 500) && ($args[0].butt < 3) && ($args[0].dick > 0)>>
-	<<set _suffixes.push("Bitch", "Bottom", "Sissy", "Trap")>>
-<</if>>
-<<if ($args[0].energy > 95)>>
-	<<set _suffixes.push("Fuck", "Fuckaddict", "Nympho", "Sexaddict")>>
-<</if>>
-<<if ($args[0].weight > 160)>>
-	<<set _names.push("Blimp", "Fatass")>>
-<</if>>
-<<if ($args[0].fetish == "humiliation") && ($args[0].fetishKnown == 1)>>
-	<<set _suffixes.push("Rapebait", "Showgirl")>>
-<</if>>
-<<if ($args[0].fetish == "submissive") && ($args[0].fetishKnown == 1)>>
-	<<set _suffixes.push("Bottom", "Fuckee", "Rapebait")>>
-<</if>>
-<<if ($args[0].fetish == "dom") && ($args[0].fetishKnown == 1)>>
-	<<set _suffixes.push("Dom", "Fucker", "Top")>>
-<</if>>
-<<if ($args[0].fetish == "pregnancy") && ($args[0].fetishKnown == 1)>>
-	<<set _suffixes.push("Breeder", "Mommy")>>
-<</if>>
-<<if ($args[0].fetish == "boobs") && ($args[0].fetishKnown == 1)>>
-	<<set _suffixes.push("Boob", "Boobie", "Tit", "Titty")>>
-<</if>>
-<<if (($args[0].boobs*$args[0].lactation) > 1000)>>
-	<<set _suffixes.push("Cow")>>
-<</if>>
-<<if $args[0].births >= 5>>
-	<<set _suffixes.push("Broodmother")>>
-<</if>>
-<<if $args[0].births >= 2>>
-	<<set _suffixes.push("Breeder")>>
-<</if>>
-<<if ($args[0].nipples != "tiny") && ($args[0].nipples != "cute")>>
-	<<set _suffixes.push("Nipples")>>
-<</if>>
-<<if ($args[0].areolae > 2)>>
-	<<set _suffixes.push("Areolas", "Headlights")>>
-<</if>>
-<<if ($args[0].lips > 40)>>
-	<<set _suffixes.push("Lips", "Pillows")>>
-<</if>>
-<<if ($args[0].labia > 1)>>
-	<<set _suffixes.push("Curtains", "Flower", "Lips")>>
-<</if>>
-<<if ($args[0].visualAge > 35)>>
-	<<set _suffixes.push("Cougar", "MILF")>>
-<</if>>
-<<if ($args[0].amp == 1)>>
-	<<set _suffixes.push("Stumpy")>>
-<</if>>
-<<if ($args[0].bellyPreg > 5000)>>
-	<<set _suffixes.push("Belly", "Mommy")>>
-<</if>>
-<<if $args[0].belly >= 1500>>
-	<<set _suffixes.push("Belly")>>
-<</if>>
-<<if ($args[0].dick > 5) && ($args[0].balls > 5)>>
-	<<set _suffixes.push("Cannon", "Daddy")>>
-<</if>>
-<<if $args[0].breedingMark == 1>>
-	<<set _suffixes.push("Breeder", "Oven", "Womb")>>
-<</if>>
-<<if ($args[0].broodmother == 2) && ($args[0].preg > 30)>>
-	<<set _suffixes.push("Factory", "Nursery")>>
-<</if>>
-<<if ($args[0].broodmother == 1) && ($args[0].preg > 30)>>
-	<<set _suffixes.push("Breeder", "Factory")>>
-<</if>>
-<<if $args[0].belly > 150000>>
-	<<set _suffixes.push("Balloon")>>
-<</if>>
-<<if ($args[0].dick > 4)>>
-	<<set _suffixes.push("Cock", "Dick")>>
-<</if>>
-<<if ($args[0].dick == 1)>>
-	<<set _suffixes.push("Bitch")>>
-<</if>>
-<<if ($args[0].boobs >= 800)>>
-	<<set _suffixes.push("Boob", "Boobs", "Titty")>>
-<</if>>
-<<if ($args[0].butt > 5)>>
-	<<set _suffixes.push("Ass", "Bottom", "Butt")>>
-<</if>>
-<<if ($args[0].vagina == 0)>>
-	<<set _suffixes.push("Virgin")>>
-<</if>>
-<<if ($args[0].height >= 185)>>
-	<<set _suffixes.push("Tower")>>
-<</if>>
-<<if ($args[0].height < 150)>>
-	<<set _suffixes.push("Shortstack", "Stumpy")>>
-<</if>>
-<<if ($args[0].whoreSkill > 95)>>
-	<<set _suffixes.push("Whore")>>
-<</if>>
-<<if ($args[0].entertainSkill > 95)>>
-	<<set _suffixes.push("Slut")>>
-<</if>>
-<<if ($args[0].oralSkill > 95)>>
-	<<set _suffixes.push("Throat")>>
-<</if>>
-<<if ($args[0].vaginalSkill > 95)>>
-	<<set _suffixes.push("Channel", "Kegel", "Pussy")>>
-<</if>>
-<<if ($args[0].analSkill > 95)>>
-	<<set _suffixes.push("Asspussy", "Sphincter")>>
-<</if>>
-<<if ($args[0].anus == 1)>>
-	<<set _suffixes.push("Tightass", "Tightbutt")>>
-<</if>>
-<<if $args[0].devotion > 50>>
-	<<set _names.push("Prize")>>
-	<<if ($args[0].visualAge > 35)>>
-		<<set _suffixes.push("Queen")>>
-	<<elseif ($args[0].visualAge < 25)>>
-		<<set _names.push("Princess")>>
-	<</if>>
-<</if>>
-<<if ($args[0].trust < -50)>>
-	<<set _suffixes.push("Sobber")>>
-<<elseif ($args[0].trust < -20)>>
-	<<set _suffixes.push("Meat", "Tears", "Thing", "Weeper")>>
-<</if>>
-
-<<set $args[0].slaveName = _names.random()>>
-<<switch $args[0].assignment>>
-<<case "guard you">>
-	<<set $args[0].slaveName = either("Battle", "Guard")>>
-<<case "recruit girls">>
-	<<set $args[0].slaveName = either("Cam", "Recruiter")>>
-<<case "be the Madam">>
-	<<set $args[0].slaveName = either("Madam", "Pimp")>>
-<<case "be the DJ">>
-	<<set $args[0].slaveName = either("Bass", "Booth")>>
-<<case "be the Milkmaid">>
-	<<if $cumSlaves > 3>>
-		<<set $args[0].slaveName = either("Fucker", "Milker")>>
-	<</if>>
-<<case "be the Milkmaid">>
-	<<set $args[0].slaveName = either("Dairy", "Farm")>>
-<<case "be your Head Girl">>
-	<<set $args[0].slaveName = either("Chief", "Head")>>
-<<case "be the Schoolteacher">>
-	<<set $args[0].slaveName = either("Classroom", "Teacher")>>
-<<case "be the Attendant">>
-	<<set $args[0].slaveName = either("Bath", "Spa")>>
-<<case "be the Wardeness">>
-	<<set $args[0].slaveName = either("Jail", "Prison")>>
-<<case "be your concubine">>
-	<<set $args[0].slaveName = either("Bed", "Master")>>
-<</switch>>
-
-<<set _surname = _suffixes.random()>>
-<<if _surname == $args[0].slaveName.toLowerCase()>>
-	<<DegradingName $args[0]>>
-<</if>>
-<<set $args[0].slaveSurname = _surname>>
-
-<</if>>
-<</widget>>
-
 <<widget "CreateSimpleTabs">>
 
 	<head>
diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw
index 5a7051fae03..c7f370a5a09 100644
--- a/src/utility/slaveCreationWidgets.tw
+++ b/src/utility/slaveCreationWidgets.tw
@@ -2483,7 +2483,7 @@
 		<</if>>
 	<<elseif $arcologies[_market].FSDegradationist > 20>>
 		They can be depended upon to be terrified into abject submission.
-		<<DegradingName $activeSlave>>
+		<<run DegradingName($activeSlave)>>
 		<<if $activeSlave.trust > -10>>
 			<<set $activeSlave.trust -= random(0,10)>>
 		<</if>>
diff --git a/src/utility/slaveGenerationWidgets.tw b/src/utility/slaveGenerationWidgets.tw
index b26c54402fc..88cfab72271 100644
--- a/src/utility/slaveGenerationWidgets.tw
+++ b/src/utility/slaveGenerationWidgets.tw
@@ -28,7 +28,7 @@
 <<elseif $arcologies[0].FSEdoRevivalist > 20>>
 	<<set $args[0].slaveName = setup.edoSlaveNames.random(), $args[0].slaveSurname = setup.edoSlaveSurnames.random()>>
 <<elseif $arcologies[0].FSDegradationist != "unset">>
-	<<DegradingName $args[0]>>
+	<<run DegradingName($args[0])>>
 <</if>>
 <</if>>
 
-- 
GitLab


From 8adbb8b61e4787eeb1b9f4dc5465bc273c032821 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Tue, 17 Jul 2018 00:19:42 -0400
Subject: [PATCH 067/189] capitalization fix

---
 src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw b/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
index 988baf9a0a8..3f2b200d772 100644
--- a/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
+++ b/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
@@ -93,7 +93,7 @@
 <<case 0>>
 	 Is well-stocked with high-quality personal weapons and light armour, but contains little in the way of exceptional armament.
 <<case 1>>
-	 Has large stocks of the absolute latest personal weapons and light armour, and Has added first-generation exo-suits to improve soldier lethality.
+	 Has large stocks of the absolute latest personal weapons and light armour, and has added first-generation exo-suits to improve soldier lethality.
 <<case 2>>
 	 Acquired advanced tactical helmets and second-generation exo-suits to further improve soldier lethality.
 <<case 3>>
-- 
GitLab


From 35fd227b75725dd3e1d2080ccda5af2862e72018 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Tue, 17 Jul 2018 11:38:01 -0400
Subject: [PATCH 068/189] Art fix

---
 src/art/artWidgets.tw |   2 +-
 src/art/vector/Arm.tw | 106 +++++++++++++++++++++---------------------
 2 files changed, 53 insertions(+), 55 deletions(-)

diff --git a/src/art/artWidgets.tw b/src/art/artWidgets.tw
index 27a152a7f6a..3947be34e5d 100644
--- a/src/art/artWidgets.tw
+++ b/src/art/artWidgets.tw
@@ -88,7 +88,7 @@ vector art added later is drawn over previously added art
 (what is listed on the bottom in the code appears on the top of the image)
 */
 <<include Art_Vector_Hair_Back_>>
-<<include Art_Vector_Arm_>>
+<<if _artSlave.amp != 1>><<include Art_Vector_Arm_>><</if>>
 <<include Art_Vector_Butt_>>
 <<include Art_Vector_Leg_>>
 <<include Art_Vector_Feet_>> /* includes shoes and leg outfits*/
diff --git a/src/art/vector/Arm.tw b/src/art/vector/Arm.tw
index d6bba4c535e..edfa568c620 100644
--- a/src/art/vector/Arm.tw
+++ b/src/art/vector/Arm.tw
@@ -27,67 +27,65 @@
 
 /* Arms position switch courtesy of Nov-X */
 
-<<if $args[0].amp != 1>>
-	<<if _artSlave.weight <= 20>>
-		<<if $args[0].devotion > 50>>
-			<<set _leftArmType = "High">>
-			<<set _rightArmType = "High">>
-		<<elseif $args[0].trust >= -20>>
-			<<if $args[0].devotion < -20>>
-				<<set _leftArmType = "Rebel">>
-				<<set _rightArmType = "Low">>
-			<<elseif $args[0].devotion <= 20>>
-				<<set _leftArmType = "Low">>
-				<<set _rightArmType = "Low">>
-			<<else>>
-				<<set _leftArmType = "Mid">>
-				<<set _rightArmType = "High">>
-			<</if>>
+<<if _artSlave.weight <= 20>>
+	<<if $args[0].devotion > 50>>
+		<<set _leftArmType = "High">>
+		<<set _rightArmType = "High">>
+	<<elseif $args[0].trust >= -20>>
+		<<if $args[0].devotion < -20>>
+			<<set _leftArmType = "Rebel">>
+			<<set _rightArmType = "Low">>
+		<<elseif $args[0].devotion <= 20>>
+			<<set _leftArmType = "Low">>
+			<<set _rightArmType = "Low">>
 		<<else>>
 			<<set _leftArmType = "Mid">>
-			<<set _rightArmType = "Mid">>
-		<</if>>
-	<<elseif _artSlave.weight > 20>>
-		<<if $args[0].devotion > 50>>
-			<<set _leftArmType = "High">>
 			<<set _rightArmType = "High">>
-		<<elseif $args[0].trust >= -20>>
-			<<if $args[0].devotion < -20>>
-				<<set _leftArmType = "Rebel">>
-				<<set _rightArmType = "Low">>
-			<<elseif $args[0].devotion <= 20>>
-				<<set _leftArmType = "Low">>
-				<<set _rightArmType = "Low">>
-			<<else>>
-				<<set _leftArmType = "Mid">>
-				<<set _rightArmType = "High">>
-			<</if>>
+		<</if>>
+	<<else>>
+		<<set _leftArmType = "Mid">>
+		<<set _rightArmType = "Mid">>
+	<</if>>
+<<elseif _artSlave.weight > 20>>
+	<<if $args[0].devotion > 50>>
+		<<set _leftArmType = "High">>
+		<<set _rightArmType = "High">>
+	<<elseif $args[0].trust >= -20>>
+		<<if $args[0].devotion < -20>>
+			<<set _leftArmType = "Rebel">>
+			<<set _rightArmType = "Low">>
+		<<elseif $args[0].devotion <= 20>>
+			<<set _leftArmType = "Low">>
+			<<set _rightArmType = "Low">>
 		<<else>>
 			<<set _leftArmType = "Mid">>
-			<<set _rightArmType = "Mid">>
+			<<set _rightArmType = "High">>
 		<</if>>
+	<<else>>
+		<<set _leftArmType = "Mid">>
+		<<set _rightArmType = "Mid">>
 	<</if>>
-	
-	<<set _art = "Art_Vector_Arm_Right_"+_rightArmType >>
-	<<include _art>>
-	<<set _art = "Art_Vector_Arm_Left_"+_leftArmType >>
-	<<include _art>>
-	
-	/* shiny clothings */
-	<<if $seeVectorArtHighlights == 1>>
-		<<if _artSlave.fuckdoll != 0 || _artSlave.clothes == "restrictive latex" || _artSlave.clothes == "a latex catsuit" || _artSlave.clothes == "body oil">>
-			/* only some arm positions have art (feel free to add more) */
-			<<switch _leftArmType>>
-			<<case "High">>
-				<<include Art_Vector_Arm_Outfit_Shine_Left_High>>
-			<<case "Mid">>
-			<<include Art_Vector_Arm_Outfit_Shine_Left_Mid>>
-			<<case "Low">>
-				<<include Art_Vector_Arm_Outfit_Shine_Left_Low>>
-			<<default>>
-				/* no art for this arm position */
-			<</switch>>
-		<</if>>
+<</if>>
+
+<<set _art = "Art_Vector_Arm_Right_"+_rightArmType >>
+<<include _art>>
+<<set _art = "Art_Vector_Arm_Left_"+_leftArmType >>
+<<include _art>>
+
+/* shiny clothings */
+<<if $seeVectorArtHighlights == 1>>
+	<<if _artSlave.fuckdoll != 0 || _artSlave.clothes == "restrictive latex" || _artSlave.clothes == "a latex catsuit" || _artSlave.clothes == "body oil">>
+		/* only some arm positions have art (feel free to add more) */
+		<<switch _leftArmType>>
+		<<case "High">>
+			<<include Art_Vector_Arm_Outfit_Shine_Left_High>>
+		<<case "Mid">>
+		<<include Art_Vector_Arm_Outfit_Shine_Left_Mid>>
+		<<case "Low">>
+			<<include Art_Vector_Arm_Outfit_Shine_Left_Low>>
+		<<default>>
+			/* no art for this arm position */
+		<</switch>>
 	<</if>>
 <</if>>
 
-- 
GitLab


From c9fa0d0105af36780ead3e5b1b3fe6e40e687629 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Tue, 17 Jul 2018 13:12:14 -0400
Subject: [PATCH 069/189] alternative fix

---
 src/art/artWidgets.tw | 2 +-
 src/art/vector/Arm.tw | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/art/artWidgets.tw b/src/art/artWidgets.tw
index 3947be34e5d..27a152a7f6a 100644
--- a/src/art/artWidgets.tw
+++ b/src/art/artWidgets.tw
@@ -88,7 +88,7 @@ vector art added later is drawn over previously added art
 (what is listed on the bottom in the code appears on the top of the image)
 */
 <<include Art_Vector_Hair_Back_>>
-<<if _artSlave.amp != 1>><<include Art_Vector_Arm_>><</if>>
+<<include Art_Vector_Arm_>>
 <<include Art_Vector_Butt_>>
 <<include Art_Vector_Leg_>>
 <<include Art_Vector_Feet_>> /* includes shoes and leg outfits*/
diff --git a/src/art/vector/Arm.tw b/src/art/vector/Arm.tw
index edfa568c620..09bcdb7d170 100644
--- a/src/art/vector/Arm.tw
+++ b/src/art/vector/Arm.tw
@@ -27,6 +27,8 @@
 
 /* Arms position switch courtesy of Nov-X */
 
+<<if _artSlave.amp != 1>>
+
 <<if _artSlave.weight <= 20>>
 	<<if $args[0].devotion > 50>>
 		<<set _leftArmType = "High">>
@@ -119,3 +121,5 @@
 		<</switch>>
 
 <</switch>>
+
+<</if>> /* closes amp check */
-- 
GitLab


From 4819d5ab661b81100dc95971984ac0b5ef32639b Mon Sep 17 00:00:00 2001
From: prndev <prndev@users.noreply.github.com>
Date: Tue, 17 Jul 2018 22:12:32 +0200
Subject: [PATCH 070/189] JSified skin colour helper for vector art (deepmurk's
 variant).

---
 src/art/vector/Set_Colour_Skin.tw    | 1623 +------------------------
 src/art/vector/Set_Colour_Skin_JS.tw | 1667 ++++++++++++++++++++++++++
 2 files changed, 1677 insertions(+), 1613 deletions(-)
 create mode 100644 src/art/vector/Set_Colour_Skin_JS.tw

diff --git a/src/art/vector/Set_Colour_Skin.tw b/src/art/vector/Set_Colour_Skin.tw
index a0407cca400..785d79b799f 100644
--- a/src/art/vector/Set_Colour_Skin.tw
+++ b/src/art/vector/Set_Colour_Skin.tw
@@ -2,1616 +2,13 @@
 
 /* BEWARE: _outfitBaseColour is set by Art_Vector_Set_Colour_Outfit_ */
 
-<<set _areolaStyle = "fill:#d76b93;" >> /* this is the default and can be customized later */
-<<set _labiaStyle = _areolaStyle >> /* this is the default and can be customized later */
-/* todo: introduce one "flesh" CSS class */
-
-<<unset _headSkinStyle>>
-<<unset _torsoSkinStyle >>
-<<unset _boobSkinStyle>>
-<<unset _penisSkinStyle>>
-<<unset _scrotumSkinStyle>>
-<<unset _bellySkinStyle>>
-
-<<if _artSlave.race == "white" || _artSlave.race == "surgically altered to look white">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#F4EAF0">>
-	  <<set _areolaStyle = "fill:#FCCCDC;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#F4EAF0">>
-	  <<set _areolaStyle = "fill:#FCCCDC;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#F5E1DF">>
-	  <<set _areolaStyle = "fill:#EFBFCA;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#F5E1DF">>
-	  <<set _areolaStyle = "fill:#EFBFCA;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#F5D5C9">>
-	  <<set _areolaStyle = "fill:#E2B4B9;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#F5D5C9">>
-	  <<set _areolaStyle = "fill:#E2B4B9;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#F4C9AA">>
-	  <<set _areolaStyle = "fill:#F19795;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#F4C9AA">>
-	  <<set _areolaStyle = "fill:#F19795;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#F4C9AA">>
-	  <<set _areolaStyle = "fill:#F19795;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#E1B585">>
-	  <<set _areolaStyle = "fill:#C39696;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#E1B585">>
-	  <<set _areolaStyle = "fill:#C39696;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#D58E5F">>
-	  <<set _areolaStyle = "fill:#B17777;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#D58E5F">>
-	  <<set _areolaStyle = "fill:#B17777;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#D58E5F">>
-	  <<set _areolaStyle = "fill:#B17777;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#A2805C">>
-	  <<set _areolaStyle = "fill:#8E6454;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#825633">>
-	  <<set _areolaStyle = "fill:#734B2F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#784F2F">>
-	  <<set _areolaStyle = "fill:#583E2F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#784F2F">>
-	  <<set _areolaStyle = "fill:#583E2F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#65422C">>
-	  <<set _areolaStyle = "fill:#4A3A33;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#65422C">>
-	  <<set _areolaStyle = "fill:#4A3A33;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#3F3A38;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "black" || _artSlave.race == "surgically altered to look black">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#FEE4CA">>
-	  <<set _areolaStyle = "fill:#E0B3A2;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#FEE4CA">>
-	  <<set _areolaStyle = "fill:#E0B3A2;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#E3C5A7">>
-	  <<set _areolaStyle = "fill:#EFBDC9;" >>
-	  <<set _labiaStyle = "fill:#CC9B88;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#E3C5A7">>
-	  <<set _areolaStyle = "fill:#CC9B88;" >>
-	  <<set _labiaStyle = "fill:#CC9B88;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#DEB892">>
-	  <<set _areolaStyle = "fill:#AB806F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#DEB892">>
-	  <<set _areolaStyle = "fill:#AB806F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#D59D73">>
-	  <<set _areolaStyle = "fill:#8D6859;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#D59D73">>
-	  <<set _areolaStyle = "fill:#8D6859;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#D59D73">>
-	  <<set _areolaStyle = "fill:#8D6859;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#AC7C4A">>
-	  <<set _areolaStyle = "fill:#7C594B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#AC7C4A">>
-	  <<set _areolaStyle = "fill:#7C594B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#985C34">>
-	  <<set _areolaStyle = "fill:#764B3A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#985C34">>
-	  <<set _areolaStyle = "fill:#764B3A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#985C34">>
-	  <<set _areolaStyle = "fill:#764B3A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#745C42">>
-	  <<set _areolaStyle = "fill:#63463B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#65422C">>
-	  <<set _areolaStyle = "fill:#4B3121;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#5A3C24">>
-	  <<set _areolaStyle = "fill:#493326;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#5A3C24">>
-	  <<set _areolaStyle = "fill:#493326;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#46362C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#583D3D">>
-	  <<set _areolaStyle = "fill:#3B3028;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#4A3A33">>
-	  <<set _areolaStyle = "fill:#332B27;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "latina" || _artSlave.race == "surgically altered to look latina">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#FEDECE">>
-	  <<set _areolaStyle = "fill:#E3BBAB;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#FEDECE">>
-	  <<set _areolaStyle = "fill:#E3BBAB;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#E6C2B0">>
-	  <<set _areolaStyle = "fill:#D1A695;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#E6C2B0">>
-	  <<set _areolaStyle = "fill:#D1A695;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#E1B59F">>
-	  <<set _areolaStyle = "fill:#B48D7E;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#E1B59F">>
-	  <<set _areolaStyle = "fill:#B48D7E;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#DAA782">>
-	  <<set _areolaStyle = "fill:#9E7666;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#DAA782">>
-	  <<set _areolaStyle = "fill:#9E7666;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#DAA782">>
-	  <<set _areolaStyle = "fill:#9E7666;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#B27554">>
-	  <<set _areolaStyle = "fill:#92684C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#B27554">>
-	  <<set _areolaStyle = "fill:#92684C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#B6784E">>
-	  <<set _areolaStyle = "fill:#8F5A45;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#B6784E">>
-	  <<set _areolaStyle = "fill:#8F5A45;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#B6784E">>
-	  <<set _areolaStyle = "fill:#8F5A45;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#8B644F">>
-	  <<set _areolaStyle = "fill:#7B5749;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#775031">>
-	  <<set _areolaStyle = "fill:#69452F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#774A31">>
-	  <<set _areolaStyle = "fill:#614330;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#774A31">>
-	  <<set _areolaStyle = "fill:#614330;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#74523E">>
-	  <<set _areolaStyle = "fill:#573F30;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#6B4B4B">>
-	  <<set _areolaStyle = "fill:#473426;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#634F45">>
-	  <<set _areolaStyle = "fill:#4D3A2E;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "asian" || _artSlave.race == "surgically altered to look asian">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#FFF8EE">>
-	  <<set _areolaStyle = "fill:#F7DBD0;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#FFF8EE">>
-	  <<set _areolaStyle = "fill:#F7DBD0;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#F5E7DC">>
-	  <<set _areolaStyle = "fill:#EABFB3;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#F5E7DC">>
-	  <<set _areolaStyle = "fill:#EABFB3;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#F5D4B5">>
-	  <<set _areolaStyle = "fill:#CB988B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#F5D4B5">>
-	  <<set _areolaStyle = "fill:#CB988B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#F4D1A3">>
-	  <<set _areolaStyle = "fill:#BA8E83;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#F4D1A3">>
-	  <<set _areolaStyle = "fill:#BA8E83;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#F4D1A3">>
-	  <<set _areolaStyle = "fill:#BA8E83;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#CFB48D">>
-	  <<set _areolaStyle = "fill:#AC8074;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#CFB48D">>
-	  <<set _areolaStyle = "fill:#AC8074;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#C38C4D">>
-	  <<set _areolaStyle = "fill:#A67A6F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#C38C4D">>
-	  <<set _areolaStyle = "fill:#A67A6F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#C38C4D">>
-	  <<set _areolaStyle = "fill:#A67A6F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#9A774A">>
-	  <<set _areolaStyle = "fill:#855E4E;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#855834">>
-	  <<set _areolaStyle = "fill:#734B2F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#83522B">>
-	  <<set _areolaStyle = "fill:#68442A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#83522B">>
-	  <<set _areolaStyle = "fill:#68442A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#724826">>
-	  <<set _areolaStyle = "fill:#5C3D26;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#724826">>
-	  <<set _areolaStyle = "fill:#5C3D26;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#3F3A38;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "middle eastern" || _artSlave.race == "surgically altered to look middle eastern">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#E8CFCF">>
-	  <<set _areolaStyle = "fill:#DCADBC;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#E8CFCF">>
-	  <<set _areolaStyle = "fill:#DCADBC;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#FBCCC6">>
-	  <<set _areolaStyle = "fill:#E79E8B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#FBCCC6">>
-	  <<set _areolaStyle = "fill:#E79E8B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#EAAB92">>
-	  <<set _areolaStyle = "fill:#D27B64;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#EAAB92">>
-	  <<set _areolaStyle = "fill:#D27B64;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#EDA571">>
-	  <<set _areolaStyle = "fill:#B16854;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#EDA571">>
-	  <<set _areolaStyle = "fill:#B16854;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#EDA571">>
-	  <<set _areolaStyle = "fill:#B16854;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#CC8D53">>
-	  <<set _areolaStyle = "fill:#A7624F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#CC8D53">>
-	  <<set _areolaStyle = "fill:#A7624F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#CA7136">>
-	  <<set _areolaStyle = "fill:#9B5959;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#CA7136">>
-	  <<set _areolaStyle = "fill:#9B5959;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#CA7136">>
-	  <<set _areolaStyle = "fill:#9B5959;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#84684A">>
-	  <<set _areolaStyle = "fill:#735143;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#684528">>
-	  <<set _areolaStyle = "fill:#563826;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#6E4730">>
-	  <<set _areolaStyle = "fill:#604534;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#6E4730">>
-	  <<set _areolaStyle = "fill:#604534;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#604534">>
-	  <<set _areolaStyle = "fill:#514039;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#604534 ">>
-	  <<set _areolaStyle = "fill:#514039;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#3F3A38;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "amerindian" || _artSlave.race == "surgically altered to look amerindian">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#FDE4BF">>
-	  <<set _areolaStyle = "fill:#F0BEAA;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#FDE4BF">>
-	  <<set _areolaStyle = "fill:#F0BEAA;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#F5E7DC">>
-	  <<set _areolaStyle = "fill:#CDA499;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#F5E7DC">>
-	  <<set _areolaStyle = "fill:#CDA499;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#F5D4B5">>
-	  <<set _areolaStyle = "fill:#CB988B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#F5D4B5">>
-	  <<set _areolaStyle = "fill:#CB988B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#F4D1A3">>
-	  <<set _areolaStyle = "fill:#BA8E83;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#F4D1A3">>
-	  <<set _areolaStyle = "fill:#BA8E83;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#F4D1A3">>
-	  <<set _areolaStyle = "fill:#BA8E83;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#CFB48D">>
-	  <<set _areolaStyle = "fill:#AC8074;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#CFB48D">>
-	  <<set _areolaStyle = "fill:#AC8074;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#C38C4D">>
-	  <<set _areolaStyle = "fill:#A67A6F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#C38C4D">>
-	  <<set _areolaStyle = "fill:#A67A6F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#C38C4D">>
-	  <<set _areolaStyle = "fill:#A67A6F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#9A774A">>
-	  <<set _areolaStyle = "fill:#855E4E;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#855834">>
-	  <<set _areolaStyle = "fill:#734B2F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#83522B">>
-	  <<set _areolaStyle = "fill:#68442A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#83522B">>
-	  <<set _areolaStyle = "fill:#68442A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#724826">>
-	  <<set _areolaStyle = "fill:#5C3D26;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#724826">>
-	  <<set _areolaStyle = "fill:#5C3D26;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#3F3A38;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "southern european" || _artSlave.race == "surgically altered to look southern european">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#EBDBE4">>
-	  <<set _areolaStyle = "fill:#FFE4E0;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#EBDBE4">>
-	  <<set _areolaStyle = "fill:#FFE4E0;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#F0D0CC">>
-	  <<set _areolaStyle = "fill:#EAACBA;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#F0D0CC">>
-	  <<set _areolaStyle = "fill:#EAACBA;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#F1C6B5">>
-	  <<set _areolaStyle = "fill:#DCA2A9;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#F1C6B5">>
-	  <<set _areolaStyle = "fill:#DCA2A9;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#F2BC94">>
-	  <<set _areolaStyle = "fill:#EE8280;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#F2BC94">>
-	  <<set _areolaStyle = "fill:#EE8280;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#F2BC94">>
-	  <<set _areolaStyle = "fill:#EE8280;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#DCA972">>
-	  <<set _areolaStyle = "fill:#BF7577;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#DCA972">>
-	  <<set _areolaStyle = "fill:#BF7577;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#D0814C">>
-	  <<set _areolaStyle = "fill:#A96767;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#D0814C">>
-	  <<set _areolaStyle = "fill:#A96767;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#D0814C">>
-	  <<set _areolaStyle = "fill:#A96767;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#937453">>
-	  <<set _areolaStyle = "fill:#7F5A4B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#7F5431">>
-	  <<set _areolaStyle = "fill:#734B2F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#784F2F">>
-	  <<set _areolaStyle = "fill:#583E2F ;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#784F2F">>
-	  <<set _areolaStyle = "fill:#583E2F ;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#65422C">>
-	  <<set _areolaStyle = "fill:#4A3A33;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#65422C">>
-	  <<set _areolaStyle = "fill:#4A3A33;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#3F3A38;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "semitic" || _artSlave.race == "surgically altered to look semitic">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#E8CFCF">>
-	  <<set _areolaStyle = "fill:#DCADBC;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#E8CFCF">>
-	  <<set _areolaStyle = "fill:#DCADBC;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#FBCCC6">>
-	  <<set _areolaStyle = "fill:#E79E8B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#FBCCC6">>
-	  <<set _areolaStyle = "fill:#E79E8B;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#EAAB92">>
-	  <<set _areolaStyle = "fill:#D27B64;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#EAAB92">>
-	  <<set _areolaStyle = "fill:#D27B64;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#EDA571">>
-	  <<set _areolaStyle = "fill:#B16854;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#EDA571">>
-	  <<set _areolaStyle = "fill:#B16854;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#EDA571">>
-	  <<set _areolaStyle = "fill:#B16854;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#CC8D53">>
-	  <<set _areolaStyle = "fill:#A7624F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#CC8D53">>
-	  <<set _areolaStyle = "fill:#A7624F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#CA7136">>
-	  <<set _areolaStyle = "fill:#9B5959;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#CA7136">>
-	  <<set _areolaStyle = "fill:#9B5959;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#CA7136">>
-	  <<set _areolaStyle = "fill:#9B5959;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#84684A">>
-	  <<set _areolaStyle = "fill:#735143;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#684528">>
-	  <<set _areolaStyle = "fill:#563826;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#6E4730">>
-	  <<set _areolaStyle = "fill:#604534;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#6E4730">>
-	  <<set _areolaStyle = "fill:#604534;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#604534">>
-	  <<set _areolaStyle = "fill:#514039;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#604534 ">>
-	  <<set _areolaStyle = "fill:#514039;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#3F3A38;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "malay" || _artSlave.race == "surgically altered to look malay">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#FBD1B2">>
-	  <<set _areolaStyle = "fill:#F39E7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#FBD1B2">>
-	  <<set _areolaStyle = "fill:#F39E7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#E8B892">>
-	  <<set _areolaStyle = "fill:#E2856C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#E8B892">>
-	  <<set _areolaStyle = "fill:#E2856C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#EA9870">>
-	  <<set _areolaStyle = "fill:#BE6C56;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#EA9870">>
-	  <<set _areolaStyle = "fill:#BE6C56;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#EA9760">>
-	  <<set _areolaStyle = "fill:#AB6755;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#EA9760">>
-	  <<set _areolaStyle = "fill:#AB6755;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#EA9760">>
-	  <<set _areolaStyle = "fill:#AB6755;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#BA855E">>
-	  <<set _areolaStyle = "fill:#976051;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#BA855E">>
-	  <<set _areolaStyle = "fill:#976051;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#A46138">>
-	  <<set _areolaStyle = "fill:#8F5E51;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#A46138">>
-	  <<set _areolaStyle = "fill:#8F5E51;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#A46138">>
-	  <<set _areolaStyle = "fill:#8F5E51;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#7C563C">>
-	  <<set _areolaStyle = "fill:#70493A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#804A28">>
-	  <<set _areolaStyle = "fill:#5F3F27 ;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#6F4523">>
-	  <<set _areolaStyle = "fill:#623C20;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#6F4523">>
-	  <<set _areolaStyle = "fill:#623C20;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#6F3E27">>
-	  <<set _areolaStyle = "fill:#553823;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#6F3E27">>
-	  <<set _areolaStyle = "fill:#553823;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#3F3A38;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "indo-aryan" || _artSlave.race == "surgically altered to look indo-aryan">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#F8D4BE">>
-	  <<set _areolaStyle = "fill:#F8B6A4;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#F8D4BE">>
-	  <<set _areolaStyle = "fill:#F8B6A4;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#EFCCAF">>
-	  <<set _areolaStyle = "fill:#EA9B86;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#EFCCAF">>
-	  <<set _areolaStyle = "fill:#EA9B86;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#FCC49A">>
-	  <<set _areolaStyle = "fill:#D29577;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#FCC49A">>
-	  <<set _areolaStyle = "fill:#D29577;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#E8B68E">>
-	  <<set _areolaStyle = "fill:#D08661;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#E8B68E">>
-	  <<set _areolaStyle = "fill:#D08661;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#E8B68E">>
-	  <<set _areolaStyle = "fill:#D08661;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#C17848">>
-	  <<set _areolaStyle = "fill:#C36E45;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#C17848">>
-	  <<set _areolaStyle = "fill:#C36E45;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#C17848">>
-	  <<set _areolaStyle = "fill:#A75A34;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#C17848">>
-	  <<set _areolaStyle = "fill:#A75A34;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#C17848">>
-	  <<set _areolaStyle = "fill:#A75A34;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#83684B">>
-	  <<set _areolaStyle = "fill:#715043;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#8A593C">>
-	  <<set _areolaStyle = "fill:#714931;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#845834">>
-	  <<set _areolaStyle = "fill:#614635;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#845834">>
-	  <<set _areolaStyle = "fill:#614635;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#7C5842">>
-	  <<set _areolaStyle = "fill:#5F4538;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#7C5842">>
-	  <<set _areolaStyle = "fill:#5F4538;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#6B5449">>
-	  <<set _areolaStyle = "fill:#473C37;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "pacific islander" || _artSlave.race == "surgically altered to look pacific islander">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#FBD1B2">>
-	  <<set _areolaStyle = "fill:#F39E7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#FBD1B2">>
-	  <<set _areolaStyle = "fill:#F39E7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#E8B892">>
-	  <<set _areolaStyle = "fill:#E2856C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#E8B892">>
-	  <<set _areolaStyle = "fill:#E2856C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#EA9870">>
-	  <<set _areolaStyle = "fill:#BE6C56;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#EA9870">>
-	  <<set _areolaStyle = "fill:#BE6C56;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#EA9760">>
-	  <<set _areolaStyle = "fill:#AB6755;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#EA9760">>
-	  <<set _areolaStyle = "fill:#AB6755;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#EA9760">>
-	  <<set _areolaStyle = "fill:#AB6755;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#BA855E">>
-	  <<set _areolaStyle = "fill:#976051;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#BA855E">>
-	  <<set _areolaStyle = "fill:#976051;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#A46138">>
-	  <<set _areolaStyle = "fill:#8F5E51;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#A46138">>
-	  <<set _areolaStyle = "fill:#8F5E51;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#A46138">>
-	  <<set _areolaStyle = "fill:#8F5E51;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#7C563C">>
-	  <<set _areolaStyle = "fill:#70493A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#804A28">>
-	  <<set _areolaStyle = "fill:#5F3F27 ;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#6F4523">>
-	  <<set _areolaStyle = "fill:#623C20;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#6F4523">>
-	  <<set _areolaStyle = "fill:#623C20;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#6F3E27">>
-	  <<set _areolaStyle = "fill:#553823;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#6F3E27">>
-	  <<set _areolaStyle = "fill:#553823;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#583E2F">>
-	  <<set _areolaStyle = "fill:#3F3A38;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-
-<<elseif _artSlave.race == "mixed race" || _artSlave.race == "surgically altered to look mixed race">>
-	<<if _artSlave.skin == "pure white">>
-	  <<set _skinColour = "#FEE5CC">>
-	  <<set _areolaStyle = "fill:#E3BBAB;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely pale">>
-	  <<set _skinColour = "#FEE5CC">>
-	  <<set _areolaStyle = "fill:#E3BBAB;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "pale">>
-	  <<set _skinColour = "#E6C2B0">>
-	  <<set _areolaStyle = "fill:#D1A695;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "extremely fair">>
-	  <<set _skinColour = "#E6C2B0">>
-	  <<set _areolaStyle = "fill:#D1A695;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "very fair">>
-	  <<set _skinColour = "#E1B59F">>
-	  <<set _areolaStyle = "fill:#B48D7E;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>	  
-	<<elseif _artSlave.skin == "fair">>
-	  <<set _skinColour = "#E1B59F">>
-	  <<set _areolaStyle = "fill:#B48D7E;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "white">>
-	  <<set _skinColour = "#DAA782">>
-	  <<set _areolaStyle = "fill:#9E7666;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light">>
-	  <<set _skinColour = "#DAA782">>
-	  <<set _areolaStyle = "fill:#9E7666;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "lightened">>
-	  <<set _skinColour = "#DAA782">>
-	  <<set _areolaStyle = "fill:#9E7666;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light olive">>
-	  <<set _skinColour = "#B27554">>
-	  <<set _areolaStyle = "fill:#92684C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "olive">>
-	  <<set _skinColour = "#B27554">>
-	  <<set _areolaStyle = "fill:#92684C;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "natural">>
-	  <<set _skinColour = "#B6784E">>
-	  <<set _areolaStyle = "fill:#8F5A45;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tanned">>
-	  <<set _skinColour = "#B6784E">>
-	  <<set _areolaStyle = "fill:#8F5A45;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "bronzed">>
-	  <<set _skinColour = "#B6784E">>
-	  <<set _areolaStyle = "fill:#8F5A45;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark olive">>
-	  <<set _skinColour = "#8B644F">>
-	  <<set _areolaStyle = "fill:#7B5749;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark">>
-	  <<set _skinColour = "#775031">>
-	  <<set _areolaStyle = "fill:#69452F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "light brown">>
-	  <<set _skinColour = "#774A31">>
-	  <<set _areolaStyle = "fill:#5E4434;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "brown">>
-	  <<set _skinColour = "#774A31">>
-	  <<set _areolaStyle = "fill:#5E4434;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dark brown">>
-	  <<set _skinColour = "#74523E">>
-	  <<set _areolaStyle = "fill:#574135;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "ebony">>
-	  <<set _skinColour = "#6B4B4B">>
-	  <<set _areolaStyle = "fill:#413228;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "black">>
-	  <<set _skinColour = "#634F45">>
-	  <<set _areolaStyle = "fill:#4E3C32;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "camouflage patterned">>	  
-	  <<set _skinColour = "#78875a">>
-	  <<set _areolaStyle = "fill:#939F7A;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "red dyed">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed red">>
-	  <<set _skinColour = "#bc4949">>
-	  <<set _areolaStyle = "fill:#C96D6D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "green dyed">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed green">>
-	  <<set _skinColour = "#A6C373">>
-	  <<set _areolaStyle = "fill:#B7CF8F;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "blue dyed">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "dyed blue">>
-	  <<set _skinColour = "#5b8eb7">>
-	  <<set _areolaStyle = "fill:#7BA4C5;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<<elseif _artSlave.skin == "tiger striped">>
-	  <<set _skinColour = "#e2d75d">>
-	  <<set _areolaStyle = "fill:#E7DF7D;" >>
-	  <<set _labiaStyle = "fill:#F977A3;" >>
-	<</if>>
-<</if>>
-
-/* BEGIN SKIN COLOUR OVERRIDES FOR LATEX CLOTHING EMULATION */
-
-<<if _artSlave.fuckdoll != 0>>
-  /* slave is a fuckdoll - display all skin as if it was black rubber */
-  <<set _skinColour = _outfitBaseColour>>
-  <<set _areolaStyle = "fill:rgba(0,0,0,0.3);">>
-  <<set _labiaStyle = _areolaStyle >>
-<</if>>
-
-/* slave wears restrictive latex - display most skin as if it was rubber */
-<<if _artSlave.clothes == "restrictive latex">>
-  /* nice latex does not cover any privates. */
-  <<set _boobSkinStyle = "fill:"+_skinColour+";">>
-  <<set _penisSkinStyle = "fill:"+_skinColour+";">>
-  <<set _scrotumSkinStyle = "fill:"+_skinColour+";">>
-  <<set _torsoSkinStyle = "fill:"+_skinColour+";">>
-  /* rest of body is covered in latex */
-  <<set _skinColour = _outfitBaseColour>>
-<</if>>
-
-<<if _artSlave.clothes == "a latex catsuit">>
-  /* nice latex does not cover head. */
-  <<set _headSkinStyle = "fill:"+_skinColour+";">>
-  /* rest of body is covered in latex */
-  <<set _skinColour = _outfitBaseColour>>
-  /* catsuit covers areolae and crotch, too */
-  <<set _areolaStyle = "fill:rgba(51,53,51,0.3);">> /* areolae are represented by a darker area */ 
-  /* todo: gain control over piercings to do the same with them ^^ */
-  <<set _labiaStyle = _areolaStyle >>
-<</if>>
-
-<<if _artSlave.clothes == "a cybersuit">>
-  /* rest of body is covered in latex */
-  <<set _skinColour = _outfitBaseColour>>
-  /* catsuit covers areolae and crotch, too */
-  <<set _areolaStyle = "fill:rgba(51,53,51,0.3);">> /* areolae are represented by a darker area */ 
-  /* todo: gain control over piercings to do the same with them ^^ */
-  <<set _labiaStyle = _areolaStyle >>
-<</if>>
-
-<<if _artSlave.clothes == "a comfortable bodysuit">>
-  /* nice bodysuit does not cover head. */
-  <<set _headSkinStyle = "fill:"+_skinColour+";">>
-  /* rest of body is covered in bodysuit */
-  <<set _skinColour = _outfitBaseColour>>
-  /* bodysuit covers areolae and crotch, too */
-<<set _areolaStyle = "fill:rgba(175,67,107,0.3);">>
-  /* todo: gain control over piercings to do the same with them ^^ */
-  <<set _labiaStyle = _areolaStyle >>
-<</if>>
-
-/* outfit dick coloring to match outfit rgba in svg */
-<<switch _artSlave.clothes>>
-<<case "a cheerleader outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(250,186,0,1);">>
-  <<set _bellySkinStyle = "fill:rgba(250,186,0,1);">>
-<<case "cutoffs and a t-shirt">>
-  <<set _scrotumSkinStyle = "fill:rgba(81,124,211,1);">>
-<<case "a halter top dress">>
-  <<set _scrotumSkinStyle = "fill:rgba(94,51,124,1);">>
-  <<set _bellySkinStyle = "fill:rgba(94,51,124,1);">>
-<<case "a hijab and abaya">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-  <<set _bellySkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "a nice maid outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(225,225,225,1);">>
-  <<set _bellySkinStyle = "fill:rgba(225,225,225,1);">>
-<<case "a slutty maid outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(225,225,225,1);">>
-  <<set _bellySkinStyle = "fill:rgba(225,225,225,1);">>
-<<case "a leotard">>
-  <<set _scrotumSkinStyle = "fill:rgba(120,15,55,1);">>
-  <<set _bellySkinStyle = "fill:rgba(120,15,55,1);">>
-<<case "a military uniform">>
-  <<set _scrotumSkinStyle = "fill:rgba(34,42,18,1);">>
-  <<set _bellySkinStyle = "fill:rgba(34,42,18,1);">>
-<<case "a mini dress">>
-  <<set _scrotumSkinStyle = "fill:rgba(39,174,96,1);">>
-  <<set _bellySkinStyle = "fill:rgba(39,174,96,1);">>
-<<case "a nice nurse outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(0,128,128,1);">>
-  <<set _bellySkinStyle = "fill:rgba(0,128,128,1);">>
-<<case "a slutty nurse outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(200,200,200,1);">>
-<<case "a scalemail bikini">>
-  <<set _scrotumSkinStyle = "fill:rgba(133,146,158,1);">>
-<<case "a schoolgirl outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(28,31,36,1);">>
-  <<set _bellySkinStyle = "fill:rgba(28,31,36,1);">>
-<<case "a ball gown">>
-  <<set _scrotumSkinStyle = "fill:rgba(128,0,0,1);">>
-  <<set _bellySkinStyle = "fill:rgba(128,0,0,1);">>
-<<case "battledress">>
-  <<set _scrotumSkinStyle = "fill:rgba(34,42,18,1);">>
-  <<set _bellySkinStyle = "fill:rgba(34,42,18,1);">>
-<<case "a slave gown">>
-  <<set _scrotumSkinStyle = "fill:rgba(200,200,200,1);">>
-  <<set _bellySkinStyle = "fill:rgba(200,200,200,1);">>
-<<case "a slutty outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(63,126,181,1);">>
-<<case "spats and a tank top">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "a succubus outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(128,0,0,1);">>
-  <<set _bellySkinStyle = "fill:rgba(128,0,0,1);">>
-<<case "nice business attire">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-  <<set _bellySkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "slutty business attire">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "attractive lingerie for a pregnant woman">>
-  <<set _scrotumSkinStyle = "fill:rgba(153,153,153,1);">>
-<<case "a bunny outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-  <<set _bellySkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "conservative clothing">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-  <<set _bellySkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "harem gauze">>
-  <<set _scrotumSkinStyle = "fill:rgba(0,168,131,1);">>
-<<case "a huipil">>
-  <<set _scrotumSkinStyle = "fill:rgba(200,200,200,1);">>
-  <<set _bellySkinStyle = "fill:rgba(200,200,200,1);">>
-<<case "a kimono">>
-  <<set _scrotumSkinStyle = "fill:rgba(0,91,150,1);">>
-  <<set _bellySkinStyle = "fill:rgba(0,91,150,1);">>
-<<case "a maternity dress">>
-  <<set _scrotumSkinStyle = "fill:rgba(48,54,72,1);">>
-  <<set _bellySkinStyle = "fill:rgba(48,54,72,1);">>
-<<case "a slutty qipao">>
-  <<set _scrotumSkinStyle = "fill:rgba(204,177,68,1);">>
-  <<set _bellySkinStyle = "fill:rgba(204,177,68,1);">>
-<<case "stretch pants and a crop-top">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "a toga">>
-  <<set _scrotumSkinStyle = "fill:rgba(200,200,200,1);">>
-  <<set _bellySkinStyle = "fill:rgba(200,200,200,1);">>
-<<case "a penitent nuns habit">>
-  <<set _scrotumSkinStyle = "fill:rgba(114,93,73,1);">>
-<<case "a chattel habit">>
-  <<set _scrotumSkinStyle = "fill:rgba(200,200,200,1);">>
-<<case "a monokini">>
-  <<set _scrotumSkinStyle = "fill:rgba(33,47,61,1);">>
-<<case "a schutzstaffel uniform">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-  <<set _bellySkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "a slutty schutzstaffel uniform">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-  <<set _bellySkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "a red army uniform">>
-  <<set _scrotumSkinStyle = "fill:rgba(114,93,73,1);">>
-  <<set _bellySkinStyle = "fill:rgba(114,93,73,1);">>
-<<case "an apron">>
-  <<set _scrotumSkinStyle = "fill:rgba(255,105,180,1);">>
-  <<set _bellySkinStyle = "fill:rgba(255,105,180,1);">>
-<<case "a fallen nuns habit">>
-  <<set _bellySkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "a dirndl">>
-  <<set _scrotumSkinStyle = "fill:rgba(128,0,51,1);">>
-<<case "lederhosen">>
-  <<set _scrotumSkinStyle = "fill:rgba(93,83,108,1);">>
-<<case "a long qipao">>
-  <<set _scrotumSkinStyle = "fill:rgba(0,128,0,1);">>
-<<case "a mounty outfit">>
-  <<set _scrotumSkinStyle = "fill:rgba(51,51,51,1);">>
-<<case "battlearmor">>
-  <<set _scrotumSkinStyle = "fill:rgba(200,200,200,1);">>
-<<case "a biyelgee costume">>
-  <<set _scrotumSkinStyle = "fill:rgba(33,68,120,1);">>
-<</switch>>
-  
-/* END SKIN COLOUR OVERRIDES FOR LATEX CLOTHING EMULATION */
-
+<<set _s = Art_Vector_Set_Colour_Skin(_artSlave, _outfitBaseColour) >>
+<<set _areolaStyle = _s.areolaStyle>>
+<<set _bellySkinStyle = _s.bellySkinStyle>>
+<<set _boobSkinStyle = _s.boobSkinStyle>>
+<<set _headSkinStyle = _s.headSkinStyle>>
+<<set _labiaStyle = _s.labiaStyle>>
+<<set _penisSkinStyle = _s.penisSkinStyle>>
+<<set _scrotumSkinStyle = _s.scrotumSkinStyle>>
+<<set _skinColour = _s.skinColour>>
+<<set _torsoSkinStyle = _s.torsoSkinStyle>>
diff --git a/src/art/vector/Set_Colour_Skin_JS.tw b/src/art/vector/Set_Colour_Skin_JS.tw
new file mode 100644
index 00000000000..c22b55f469c
--- /dev/null
+++ b/src/art/vector/Set_Colour_Skin_JS.tw
@@ -0,0 +1,1667 @@
+:: Art_Vector_Set_Colour_Skin_JS [script]
+
+window.Art_Vector_Set_Colour_Skin = function(artSlave, outfitBaseColour) {
+
+/* create an aggregator object yielding all computed styles */
+var s = {
+  areolaStyle: "fill: #d76b93;", /* this is the default and can be customized later */
+  labiaStyle: "fill: #d76b93;", /* this is the default and can be customized later */
+  /* todo: introduce fleshStyle */
+  /* these need to be declared so they can be set conditionally */
+  headSkinStyle: undefined,
+  torsoSkinStyle: undefined,
+  boobSkinStyle: undefined,
+  penisSkinStyle: undefined,
+  scrotumSkinStyle: undefined,
+  bellySkinStyle: undefined,
+  skinColour: undefined
+  };
+
+if (artSlave.race == "white" || artSlave.race == "surgically altered to look white") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#F4EAF0";
+    s.areolaStyle = "fill:#FCCCDC;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#F4EAF0";
+    s.areolaStyle = "fill:#FCCCDC;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#F5E1DF";
+    s.areolaStyle = "fill:#EFBFCA;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#F5E1DF";
+    s.areolaStyle = "fill:#EFBFCA;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#F5D5C9";
+    s.areolaStyle = "fill:#E2B4B9;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#F5D5C9";
+    s.areolaStyle = "fill:#E2B4B9;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#F4C9AA";
+    s.areolaStyle = "fill:#F19795;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#F4C9AA";
+    s.areolaStyle = "fill:#F19795;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#F4C9AA";
+    s.areolaStyle = "fill:#F19795;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#E1B585";
+    s.areolaStyle = "fill:#C39696;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#E1B585";
+    s.areolaStyle = "fill:#C39696;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#D58E5F";
+    s.areolaStyle = "fill:#B17777;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#D58E5F";
+    s.areolaStyle = "fill:#B17777;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#D58E5F";
+    s.areolaStyle = "fill:#B17777;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#A2805C";
+    s.areolaStyle = "fill:#8E6454;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#825633";
+    s.areolaStyle = "fill:#734B2F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#784F2F";
+    s.areolaStyle = "fill:#583E2F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#784F2F";
+    s.areolaStyle = "fill:#583E2F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#65422C";
+    s.areolaStyle = "fill:#4A3A33;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#65422C";
+    s.areolaStyle = "fill:#4A3A33;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#3F3A38;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "black" || artSlave.race == "surgically altered to look black") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#FEE4CA";
+    s.areolaStyle = "fill:#E0B3A2;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#FEE4CA";
+    s.areolaStyle = "fill:#E0B3A2;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#E3C5A7";
+    s.areolaStyle = "fill:#EFBDC9;";
+    s.labiaStyle = "fill:#CC9B88;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#E3C5A7";
+    s.areolaStyle = "fill:#CC9B88;";
+    s.labiaStyle = "fill:#CC9B88;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#DEB892";
+    s.areolaStyle = "fill:#AB806F;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#DEB892";
+    s.areolaStyle = "fill:#AB806F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#D59D73";
+    s.areolaStyle = "fill:#8D6859;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#D59D73";
+    s.areolaStyle = "fill:#8D6859;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#D59D73";
+    s.areolaStyle = "fill:#8D6859;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#AC7C4A";
+    s.areolaStyle = "fill:#7C594B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#AC7C4A";
+    s.areolaStyle = "fill:#7C594B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#985C34";
+    s.areolaStyle = "fill:#764B3A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#985C34";
+    s.areolaStyle = "fill:#764B3A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#985C34";
+    s.areolaStyle = "fill:#764B3A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#745C42";
+    s.areolaStyle = "fill:#63463B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#65422C";
+    s.areolaStyle = "fill:#4B3121;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#5A3C24";
+    s.areolaStyle = "fill:#493326;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#5A3C24";
+    s.areolaStyle = "fill:#493326;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#46362C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#583D3D";
+    s.areolaStyle = "fill:#3B3028;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#4A3A33";
+    s.areolaStyle = "fill:#332B27;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "latina" || artSlave.race == "surgically altered to look latina") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#FEDECE";
+    s.areolaStyle = "fill:#E3BBAB;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#FEDECE";
+    s.areolaStyle = "fill:#E3BBAB;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#E6C2B0";
+    s.areolaStyle = "fill:#D1A695;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#E6C2B0";
+    s.areolaStyle = "fill:#D1A695;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#E1B59F";
+    s.areolaStyle = "fill:#B48D7E;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#E1B59F";
+    s.areolaStyle = "fill:#B48D7E;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#DAA782";
+    s.areolaStyle = "fill:#9E7666;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#DAA782";
+    s.areolaStyle = "fill:#9E7666;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#DAA782";
+    s.areolaStyle = "fill:#9E7666;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#B27554";
+    s.areolaStyle = "fill:#92684C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#B27554";
+    s.areolaStyle = "fill:#92684C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#B6784E";
+    s.areolaStyle = "fill:#8F5A45;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#B6784E";
+    s.areolaStyle = "fill:#8F5A45;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#B6784E";
+    s.areolaStyle = "fill:#8F5A45;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#8B644F";
+    s.areolaStyle = "fill:#7B5749;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#775031";
+    s.areolaStyle = "fill:#69452F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#774A31";
+    s.areolaStyle = "fill:#614330;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#774A31";
+    s.areolaStyle = "fill:#614330;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#74523E";
+    s.areolaStyle = "fill:#573F30;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#6B4B4B";
+    s.areolaStyle = "fill:#473426;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#634F45";
+    s.areolaStyle = "fill:#4D3A2E;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "asian" || artSlave.race == "surgically altered to look asian") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#FFF8EE";
+    s.areolaStyle = "fill:#F7DBD0;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#FFF8EE";
+    s.areolaStyle = "fill:#F7DBD0;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#F5E7DC";
+    s.areolaStyle = "fill:#EABFB3;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#F5E7DC";
+    s.areolaStyle = "fill:#EABFB3;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#F5D4B5";
+    s.areolaStyle = "fill:#CB988B;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#F5D4B5";
+    s.areolaStyle = "fill:#CB988B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#F4D1A3";
+    s.areolaStyle = "fill:#BA8E83;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#F4D1A3";
+    s.areolaStyle = "fill:#BA8E83;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#F4D1A3";
+    s.areolaStyle = "fill:#BA8E83;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#CFB48D";
+    s.areolaStyle = "fill:#AC8074;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#CFB48D";
+    s.areolaStyle = "fill:#AC8074;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#C38C4D";
+    s.areolaStyle = "fill:#A67A6F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#C38C4D";
+    s.areolaStyle = "fill:#A67A6F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#C38C4D";
+    s.areolaStyle = "fill:#A67A6F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#9A774A";
+    s.areolaStyle = "fill:#855E4E;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#855834";
+    s.areolaStyle = "fill:#734B2F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#83522B";
+    s.areolaStyle = "fill:#68442A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#83522B";
+    s.areolaStyle = "fill:#68442A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#724826";
+    s.areolaStyle = "fill:#5C3D26;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#724826";
+    s.areolaStyle = "fill:#5C3D26;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#3F3A38;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "middle eastern" || artSlave.race == "surgically altered to look middle eastern") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#E8CFCF";
+    s.areolaStyle = "fill:#DCADBC;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#E8CFCF";
+    s.areolaStyle = "fill:#DCADBC;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#FBCCC6";
+    s.areolaStyle = "fill:#E79E8B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#FBCCC6";
+    s.areolaStyle = "fill:#E79E8B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#EAAB92";
+    s.areolaStyle = "fill:#D27B64;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#EAAB92";
+    s.areolaStyle = "fill:#D27B64;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#EDA571";
+    s.areolaStyle = "fill:#B16854;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#EDA571";
+    s.areolaStyle = "fill:#B16854;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#EDA571";
+    s.areolaStyle = "fill:#B16854;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#CC8D53";
+    s.areolaStyle = "fill:#A7624F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#CC8D53";
+    s.areolaStyle = "fill:#A7624F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#CA7136";
+    s.areolaStyle = "fill:#9B5959;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#CA7136";
+    s.areolaStyle = "fill:#9B5959;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#CA7136";
+    s.areolaStyle = "fill:#9B5959;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#84684A";
+    s.areolaStyle = "fill:#735143;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#684528";
+    s.areolaStyle = "fill:#563826;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#6E4730";
+    s.areolaStyle = "fill:#604534;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#6E4730";
+    s.areolaStyle = "fill:#604534;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#604534";
+    s.areolaStyle = "fill:#514039;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#604534 ";
+    s.areolaStyle = "fill:#514039;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#3F3A38;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "amerindian" || artSlave.race == "surgically altered to look amerindian") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#FDE4BF";
+    s.areolaStyle = "fill:#F0BEAA;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#FDE4BF";
+    s.areolaStyle = "fill:#F0BEAA;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#F5E7DC";
+    s.areolaStyle = "fill:#CDA499;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#F5E7DC";
+    s.areolaStyle = "fill:#CDA499;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#F5D4B5";
+    s.areolaStyle = "fill:#CB988B;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#F5D4B5";
+    s.areolaStyle = "fill:#CB988B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#F4D1A3";
+    s.areolaStyle = "fill:#BA8E83;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#F4D1A3";
+    s.areolaStyle = "fill:#BA8E83;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#F4D1A3";
+    s.areolaStyle = "fill:#BA8E83;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#CFB48D";
+    s.areolaStyle = "fill:#AC8074;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#CFB48D";
+    s.areolaStyle = "fill:#AC8074;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#C38C4D";
+    s.areolaStyle = "fill:#A67A6F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#C38C4D";
+    s.areolaStyle = "fill:#A67A6F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#C38C4D";
+    s.areolaStyle = "fill:#A67A6F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#9A774A";
+    s.areolaStyle = "fill:#855E4E;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#855834";
+    s.areolaStyle = "fill:#734B2F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#83522B";
+    s.areolaStyle = "fill:#68442A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#83522B";
+    s.areolaStyle = "fill:#68442A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#724826";
+    s.areolaStyle = "fill:#5C3D26;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#724826";
+    s.areolaStyle = "fill:#5C3D26;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#3F3A38;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "southern european" || artSlave.race == "surgically altered to look southern european") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#EBDBE4";
+    s.areolaStyle = "fill:#FFE4E0;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#EBDBE4";
+    s.areolaStyle = "fill:#FFE4E0;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#F0D0CC";
+    s.areolaStyle = "fill:#EAACBA;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#F0D0CC";
+    s.areolaStyle = "fill:#EAACBA;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#F1C6B5";
+    s.areolaStyle = "fill:#DCA2A9;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#F1C6B5";
+    s.areolaStyle = "fill:#DCA2A9;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#F2BC94";
+    s.areolaStyle = "fill:#EE8280;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#F2BC94";
+    s.areolaStyle = "fill:#EE8280;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#F2BC94";
+    s.areolaStyle = "fill:#EE8280;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#DCA972";
+    s.areolaStyle = "fill:#BF7577;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#DCA972";
+    s.areolaStyle = "fill:#BF7577;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#D0814C";
+    s.areolaStyle = "fill:#A96767;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#D0814C";
+    s.areolaStyle = "fill:#A96767;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#D0814C";
+    s.areolaStyle = "fill:#A96767;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#937453";
+    s.areolaStyle = "fill:#7F5A4B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#7F5431";
+    s.areolaStyle = "fill:#734B2F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#784F2F";
+    s.areolaStyle = "fill:#583E2F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#784F2F";
+    s.areolaStyle = "fill:#583E2F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#65422C";
+    s.areolaStyle = "fill:#4A3A33;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#65422C";
+    s.areolaStyle = "fill:#4A3A33;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#3F3A38;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "semitic" || artSlave.race == "surgically altered to look semitic") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#E8CFCF";
+    s.areolaStyle = "fill:#DCADBC;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#E8CFCF";
+    s.areolaStyle = "fill:#DCADBC;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#FBCCC6";
+    s.areolaStyle = "fill:#E79E8B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#FBCCC6";
+    s.areolaStyle = "fill:#E79E8B;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#EAAB92";
+    s.areolaStyle = "fill:#D27B64;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#EAAB92";
+    s.areolaStyle = "fill:#D27B64;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#EDA571";
+    s.areolaStyle = "fill:#B16854;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#EDA571";
+    s.areolaStyle = "fill:#B16854;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#EDA571";
+    s.areolaStyle = "fill:#B16854;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#CC8D53";
+    s.areolaStyle = "fill:#A7624F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#CC8D53";
+    s.areolaStyle = "fill:#A7624F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#CA7136";
+    s.areolaStyle = "fill:#9B5959;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#CA7136";
+    s.areolaStyle = "fill:#9B5959;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#CA7136";
+    s.areolaStyle = "fill:#9B5959;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#84684A";
+    s.areolaStyle = "fill:#735143;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#684528";
+    s.areolaStyle = "fill:#563826;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#6E4730";
+    s.areolaStyle = "fill:#604534;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#6E4730";
+    s.areolaStyle = "fill:#604534;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#604534";
+    s.areolaStyle = "fill:#514039;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#604534 ";
+    s.areolaStyle = "fill:#514039;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#3F3A38;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "malay" || artSlave.race == "surgically altered to look malay") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#FBD1B2";
+    s.areolaStyle = "fill:#F39E7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#FBD1B2";
+    s.areolaStyle = "fill:#F39E7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#E8B892";
+    s.areolaStyle = "fill:#E2856C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#E8B892";
+    s.areolaStyle = "fill:#E2856C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#EA9870";
+    s.areolaStyle = "fill:#BE6C56;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#EA9870";
+    s.areolaStyle = "fill:#BE6C56;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#EA9760";
+    s.areolaStyle = "fill:#AB6755;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#EA9760";
+    s.areolaStyle = "fill:#AB6755;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#EA9760";
+    s.areolaStyle = "fill:#AB6755;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#BA855E";
+    s.areolaStyle = "fill:#976051;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#BA855E";
+    s.areolaStyle = "fill:#976051;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#A46138";
+    s.areolaStyle = "fill:#8F5E51;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#A46138";
+    s.areolaStyle = "fill:#8F5E51;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#A46138";
+    s.areolaStyle = "fill:#8F5E51;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#7C563C";
+    s.areolaStyle = "fill:#70493A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#804A28";
+    s.areolaStyle = "fill:#5F3F27;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#6F4523";
+    s.areolaStyle = "fill:#623C20;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#6F4523";
+    s.areolaStyle = "fill:#623C20;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#6F3E27";
+    s.areolaStyle = "fill:#553823;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#6F3E27";
+    s.areolaStyle = "fill:#553823;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#3F3A38;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "indo-aryan" || artSlave.race == "surgically altered to look indo-aryan") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#F8D4BE";
+    s.areolaStyle = "fill:#F8B6A4;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#F8D4BE";
+    s.areolaStyle = "fill:#F8B6A4;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#EFCCAF";
+    s.areolaStyle = "fill:#EA9B86;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#EFCCAF";
+    s.areolaStyle = "fill:#EA9B86;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#FCC49A";
+    s.areolaStyle = "fill:#D29577;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#FCC49A";
+    s.areolaStyle = "fill:#D29577;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#E8B68E";
+    s.areolaStyle = "fill:#D08661;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#E8B68E";
+    s.areolaStyle = "fill:#D08661;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#E8B68E";
+    s.areolaStyle = "fill:#D08661;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#C17848";
+    s.areolaStyle = "fill:#C36E45;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#C17848";
+    s.areolaStyle = "fill:#C36E45;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#C17848";
+    s.areolaStyle = "fill:#A75A34;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#C17848";
+    s.areolaStyle = "fill:#A75A34;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#C17848";
+    s.areolaStyle = "fill:#A75A34;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#83684B";
+    s.areolaStyle = "fill:#715043;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#8A593C";
+    s.areolaStyle = "fill:#714931;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#845834";
+    s.areolaStyle = "fill:#614635;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#845834";
+    s.areolaStyle = "fill:#614635;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#7C5842";
+    s.areolaStyle = "fill:#5F4538;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#7C5842";
+    s.areolaStyle = "fill:#5F4538;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#6B5449";
+    s.areolaStyle = "fill:#473C37;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "pacific islander" || artSlave.race == "surgically altered to look pacific islander") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#FBD1B2";
+    s.areolaStyle = "fill:#F39E7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#FBD1B2";
+    s.areolaStyle = "fill:#F39E7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#E8B892";
+    s.areolaStyle = "fill:#E2856C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#E8B892";
+    s.areolaStyle = "fill:#E2856C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#EA9870";
+    s.areolaStyle = "fill:#BE6C56;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#EA9870";
+    s.areolaStyle = "fill:#BE6C56;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#EA9760";
+    s.areolaStyle = "fill:#AB6755;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#EA9760";
+    s.areolaStyle = "fill:#AB6755;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#EA9760";
+    s.areolaStyle = "fill:#AB6755;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#BA855E";
+    s.areolaStyle = "fill:#976051;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#BA855E";
+    s.areolaStyle = "fill:#976051;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#A46138";
+    s.areolaStyle = "fill:#8F5E51;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#A46138";
+    s.areolaStyle = "fill:#8F5E51;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#A46138";
+    s.areolaStyle = "fill:#8F5E51;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#7C563C";
+    s.areolaStyle = "fill:#70493A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#804A28";
+    s.areolaStyle = "fill:#5F3F27;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#6F4523";
+    s.areolaStyle = "fill:#623C20;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#6F4523";
+    s.areolaStyle = "fill:#623C20;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#6F3E27";
+    s.areolaStyle = "fill:#553823;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#6F3E27";
+    s.areolaStyle = "fill:#553823;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#583E2F";
+    s.areolaStyle = "fill:#3F3A38;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+
+} else if (artSlave.race == "mixed race" || artSlave.race == "surgically altered to look mixed race") {
+  if (artSlave.skin == "pure white") {
+    s.skinColour = "#FEE5CC";
+    s.areolaStyle = "fill:#E3BBAB;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely pale") {
+    s.skinColour = "#FEE5CC";
+    s.areolaStyle = "fill:#E3BBAB;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "pale") {
+    s.skinColour = "#E6C2B0";
+    s.areolaStyle = "fill:#D1A695;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "extremely fair") {
+    s.skinColour = "#E6C2B0";
+    s.areolaStyle = "fill:#D1A695;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "very fair") {
+    s.skinColour = "#E1B59F";
+    s.areolaStyle = "fill:#B48D7E;";
+    s.labiaStyle = "fill:#F977A3;";    
+  } else if (artSlave.skin == "fair") {
+    s.skinColour = "#E1B59F";
+    s.areolaStyle = "fill:#B48D7E;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "white") {
+    s.skinColour = "#DAA782";
+    s.areolaStyle = "fill:#9E7666;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light") {
+    s.skinColour = "#DAA782";
+    s.areolaStyle = "fill:#9E7666;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "lightened") {
+    s.skinColour = "#DAA782";
+    s.areolaStyle = "fill:#9E7666;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light olive") {
+    s.skinColour = "#B27554";
+    s.areolaStyle = "fill:#92684C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "olive") {
+    s.skinColour = "#B27554";
+    s.areolaStyle = "fill:#92684C;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "natural") {
+    s.skinColour = "#B6784E";
+    s.areolaStyle = "fill:#8F5A45;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tanned") {
+    s.skinColour = "#B6784E";
+    s.areolaStyle = "fill:#8F5A45;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "bronzed") {
+    s.skinColour = "#B6784E";
+    s.areolaStyle = "fill:#8F5A45;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark olive") {
+    s.skinColour = "#8B644F";
+    s.areolaStyle = "fill:#7B5749;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark") {
+    s.skinColour = "#775031";
+    s.areolaStyle = "fill:#69452F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "light brown") {
+    s.skinColour = "#774A31";
+    s.areolaStyle = "fill:#5E4434;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "brown") {
+    s.skinColour = "#774A31";
+    s.areolaStyle = "fill:#5E4434;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dark brown") {
+    s.skinColour = "#74523E";
+    s.areolaStyle = "fill:#574135;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "ebony") {
+    s.skinColour = "#6B4B4B";
+    s.areolaStyle = "fill:#413228;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "black") {
+    s.skinColour = "#634F45";
+    s.areolaStyle = "fill:#4E3C32;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "camouflage patterned") {    
+    s.skinColour = "#78875a";
+    s.areolaStyle = "fill:#939F7A;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "red dyed") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed red") {
+    s.skinColour = "#bc4949";
+    s.areolaStyle = "fill:#C96D6D;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "green dyed") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed green") {
+    s.skinColour = "#A6C373";
+    s.areolaStyle = "fill:#B7CF8F;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "blue dyed") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "dyed blue") {
+    s.skinColour = "#5b8eb7";
+    s.areolaStyle = "fill:#7BA4C5;";
+    s.labiaStyle = "fill:#F977A3;";
+  } else if (artSlave.skin == "tiger striped") {
+    s.skinColour = "#e2d75d";
+    s.areolaStyle = "fill:#E7DF7D;";
+    s.labiaStyle = "fill:#F977A3;";
+  }
+}
+
+/* BEGIN SKIN COLOUR OVERRIDES FOR LATEX CLOTHING EMULATION */
+
+if (artSlave.fuckdoll != 0) {
+  /* slave is a fuckdoll - display all skin as if it was black rubber */
+  s.skinColour = outfitBaseColour;
+  s.areolaStyle = "fill:rgba(0,0,0,0.3);";
+  s.labiaStyle = s.areolaStyle;
+}
+
+/* slave wears restrictive latex - display most skin as if it was rubber */
+if (artSlave.clothes == "restrictive latex") {
+  /* nice latex does not cover any privates. */
+  s.boobSkinStyle = "fill:"+s.skinColour+";";
+  s.penisSkinStyle = "fill:"+s.skinColour+";";
+  s.scrotumSkinStyle = "fill:"+s.skinColour+";";
+  s.torsoSkinStyle = "fill:"+s.skinColour+";";
+  /* rest of body is covered in latex */
+  s.skinColour = outfitBaseColour;
+}
+
+if (artSlave.clothes == "a latex catsuit") {
+  /* nice latex does not cover head. */
+  s.headSkinStyle = "fill:"+s.skinColour+";";
+  /* rest of body is covered in latex */
+  s.skinColour = outfitBaseColour;
+  /* catsuit covers areolae and crotch, too */
+  s.areolaStyle = "fill:rgba(51,53,51,0.3);"; /* areolae are represented by a darker area */ 
+  /* todo: gain control over piercings to do the same with them ^^ */
+  s.labiaStyle = s.areolaStyle;
+}
+
+if (artSlave.clothes == "a cybersuit") {
+  /* rest of body is covered in latex */
+  s.skinColour = outfitBaseColour;
+  /* catsuit covers areolae and crotch, too */
+  s.areolaStyle = "fill:rgba(51,53,51,0.3);"; /* areolae are represented by a darker area */ 
+  /* todo: gain control over piercings to do the same with them ^^ */
+  s.labiaStyle = s.areolaStyle;
+}
+
+/* END SKIN COLOUR OVERRIDES FOR LATEX CLOTHING EMULATION */
+
+if (artSlave.clothes == "a comfortable bodysuit") {
+  /* nice bodysuit does not cover head. */
+  s.headSkinStyle = "fill:"+s.skinColour+";";
+  /* rest of body is covered in bodysuit */
+  s.skinColour = outfitBaseColour;
+  /* bodysuit covers areolae and crotch, too */
+s.areolaStyle = "fill:rgba(175,67,107,0.3);";
+  /* todo: gain control over piercings to do the same with them ^^ */
+  s.labiaStyle = s.areolaStyle;
+}
+
+/* outfit dick coloring to match outfit rgba in svg */
+switch (artSlave.clothes) {
+case "a cheerleader outfit":
+  s.scrotumSkinStyle = "fill:rgba(250,186,0,1);";
+  s.bellySkinStyle = "fill:rgba(250,186,0,1);";
+  break;
+case "cutoffs and a t-shirt":
+  s.scrotumSkinStyle = "fill:rgba(81,124,211,1);";
+  break;
+case "a halter top dress":
+  s.scrotumSkinStyle = "fill:rgba(94,51,124,1);";
+  s.bellySkinStyle = "fill:rgba(94,51,124,1);";
+  break;
+case "a hijab and abaya":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  s.bellySkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "a nice maid outfit":
+  s.scrotumSkinStyle = "fill:rgba(225,225,225,1);";
+  s.bellySkinStyle = "fill:rgba(225,225,225,1);";
+  break;
+case "a slutty maid outfit":
+  s.scrotumSkinStyle = "fill:rgba(225,225,225,1);";
+  s.bellySkinStyle = "fill:rgba(225,225,225,1);";
+  break;
+case "a leotard":
+  s.scrotumSkinStyle = "fill:rgba(120,15,55,1);";
+  s.bellySkinStyle = "fill:rgba(120,15,55,1);";
+  break;
+case "a military uniform":
+  s.scrotumSkinStyle = "fill:rgba(34,42,18,1);";
+  s.bellySkinStyle = "fill:rgba(34,42,18,1);";
+  break;
+case "a mini dress":
+  s.scrotumSkinStyle = "fill:rgba(39,174,96,1);";
+  s.bellySkinStyle = "fill:rgba(39,174,96,1);";
+  break;
+case "a nice nurse outfit":
+  s.scrotumSkinStyle = "fill:rgba(0,128,128,1);";
+  s.bellySkinStyle = "fill:rgba(0,128,128,1);";
+  break;
+case "a slutty nurse outfit":
+  s.scrotumSkinStyle = "fill:rgba(200,200,200,1);";
+  break;
+case "a scalemail bikini":
+  s.scrotumSkinStyle = "fill:rgba(133,146,158,1);";
+  break;
+case "a schoolgirl outfit":
+  s.scrotumSkinStyle = "fill:rgba(28,31,36,1);";
+  s.bellySkinStyle = "fill:rgba(28,31,36,1);";
+  break;
+case "a ball gown":
+  s.scrotumSkinStyle = "fill:rgba(128,0,0,1);";
+  s.bellySkinStyle = "fill:rgba(128,0,0,1);";
+  break;
+case "battledress":
+  s.scrotumSkinStyle = "fill:rgba(34,42,18,1);";
+  s.bellySkinStyle = "fill:rgba(34,42,18,1);";
+  break;
+case "a slave gown":
+  s.scrotumSkinStyle = "fill:rgba(200,200,200,1);";
+  s.bellySkinStyle = "fill:rgba(200,200,200,1);";
+  break;
+case "a slutty outfit":
+  s.scrotumSkinStyle = "fill:rgba(63,126,181,1);";
+  break;
+case "spats and a tank top":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "a succubus outfit":
+  s.scrotumSkinStyle = "fill:rgba(128,0,0,1);";
+  s.bellySkinStyle = "fill:rgba(128,0,0,1);";
+  break;
+case "nice business attire":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  s.bellySkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "slutty business attire":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "attractive lingerie for a pregnant woman":
+  s.scrotumSkinStyle = "fill:rgba(153,153,153,1);";
+  break;
+case "a bunny outfit":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  s.bellySkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "conservative clothing":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  s.bellySkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "harem gauze":
+  s.scrotumSkinStyle = "fill:rgba(0,168,131,1);";
+  break;
+case "a huipil":
+  s.scrotumSkinStyle = "fill:rgba(200,200,200,1);";
+  s.bellySkinStyle = "fill:rgba(200,200,200,1);";
+  break;
+case "a kimono":
+  s.scrotumSkinStyle = "fill:rgba(0,91,150,1);";
+  s.bellySkinStyle = "fill:rgba(0,91,150,1);";
+  break;
+case "a maternity dress":
+  s.scrotumSkinStyle = "fill:rgba(48,54,72,1);";
+  s.bellySkinStyle = "fill:rgba(48,54,72,1);";
+  break;
+case "a slutty qipao":
+  s.scrotumSkinStyle = "fill:rgba(204,177,68,1);";
+  s.bellySkinStyle = "fill:rgba(204,177,68,1);";
+  break;
+case "stretch pants and a crop-top":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "a toga":
+  s.scrotumSkinStyle = "fill:rgba(200,200,200,1);";
+  s.bellySkinStyle = "fill:rgba(200,200,200,1);";
+  break;
+case "a penitent nuns habit":
+  s.scrotumSkinStyle = "fill:rgba(114,93,73,1);";
+  break;
+case "a chattel habit":
+  s.scrotumSkinStyle = "fill:rgba(200,200,200,1);";
+  break;
+case "a monokini":
+  s.scrotumSkinStyle = "fill:rgba(33,47,61,1);";
+  break;
+case "a schutzstaffel uniform":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  s.bellySkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "a slutty schutzstaffel uniform":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  s.bellySkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "a red army uniform":
+  s.scrotumSkinStyle = "fill:rgba(114,93,73,1);";
+  s.bellySkinStyle = "fill:rgba(114,93,73,1);";
+  break;
+case "an apron":
+  s.scrotumSkinStyle = "fill:rgba(255,105,180,1);";
+  s.bellySkinStyle = "fill:rgba(255,105,180,1);";
+  break;
+case "a fallen nuns habit":
+  s.bellySkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "a dirndl":
+  s.scrotumSkinStyle = "fill:rgba(128,0,51,1);";
+  break;
+case "lederhosen":
+  s.scrotumSkinStyle = "fill:rgba(93,83,108,1);";
+  break;
+case "a long qipao":
+  s.scrotumSkinStyle = "fill:rgba(0,128,0,1);";
+  break;
+case "a mounty outfit":
+  s.scrotumSkinStyle = "fill:rgba(51,51,51,1);";
+  break;
+case "battlearmor":
+  s.scrotumSkinStyle = "fill:rgba(200,200,200,1);";
+  break;
+case "a biyelgee costume":
+  s.scrotumSkinStyle = "fill:rgba(33,68,120,1);";
+}
+
+return s;
+}
-- 
GitLab


From 7e76d6953f76c2f1b5fdc65e6c4c2c0733e3277d Mon Sep 17 00:00:00 2001
From: prndev <prndev@users.noreply.github.com>
Date: Tue, 17 Jul 2018 22:26:13 +0200
Subject: [PATCH 071/189] JSified outfit colour helper for vector art
 (deepmurk's variant).

---
 src/art/vector/Set_Colour_Outfit.tw    | 39 ++------------------
 src/art/vector/Set_Colour_Outfit_JS.tw | 51 ++++++++++++++++++++++++++
 2 files changed, 54 insertions(+), 36 deletions(-)
 create mode 100644 src/art/vector/Set_Colour_Outfit_JS.tw

diff --git a/src/art/vector/Set_Colour_Outfit.tw b/src/art/vector/Set_Colour_Outfit.tw
index a58c9d3dcce..83c2590bf88 100644
--- a/src/art/vector/Set_Colour_Outfit.tw
+++ b/src/art/vector/Set_Colour_Outfit.tw
@@ -4,39 +4,6 @@
 /* BEWARE: _outfitBaseColour is read by Wardrobe Use */
 /* BEWARE: _glassesColour is read by Wardrobe Use */
 
-<<unset _outfitBaseColour>>
-
-<<if _artSlave.fuckdoll != 0 || _artSlave.clothes == "restrictive latex" ||  _artSlave.clothes == "a latex catsuit" ||  _artSlave.clothes == "a cybersuit">>
-  <<set _outfitBaseColour = "#515351" >> /* standard "black rubber" latex colour */
-  <<if def _artSlave.clothingBaseColor>>
-    <<set _outfitBaseColour = _artSlave.clothingBaseColor >> /* latex colour selected by user */
-    /* TODO: rewrite all textual descriptions not to explicitly mention the latex being of black colour. */
-	<</if>>
-<</if>>
-<<if _artSlave.fuckdoll != 0 || _artSlave.clothes == "a comfortable bodysuit">>
-  <<set _outfitBaseColour = "#464646" >> /* bodysuit */
-  <<if def _artSlave.clothingBaseColor>>
-    <<set _outfitBaseColour = _artSlave.clothingBaseColor >> /* bodysuit colour selected by user */
-	<</if>>
-<</if>>
-
-/* head addons */
-<<switch _artSlave.eyewear>>
-  <<case "corrective glasses" "glasses" "blurring glasses">>
-    <<set _glassesColour = "#010101">>
-  <<default>>
-    /* use colour for "glasses" by default */
-    <<set _glassesColour = "#010101">>
-<</switch>>
-
-<<switch _artSlave.collar>>
-  <<case "porcelain mask">>
-    <<set _glassesColour = "#FFFFFF">>
-  <<default>>
-    /* use colour for "mask" by default */
-    <<set _glassesColour = "#010101">>
-<</switch>>
-
-<<if def _artSlave.glassesColor>>
-  <<set _glassesColour = _artSlave.glassesColor>> /* glasses colour selected by user */
-<</if>>
\ No newline at end of file
+<<set _s = Art_Vector_Set_Colour_Outfit(_artSlave) >>
+<<set _outfitBaseColour = _s.outfitBaseColour>>
+<<set _glassesColour = _s.glassesColor>>
diff --git a/src/art/vector/Set_Colour_Outfit_JS.tw b/src/art/vector/Set_Colour_Outfit_JS.tw
new file mode 100644
index 00000000000..02d864d598e
--- /dev/null
+++ b/src/art/vector/Set_Colour_Outfit_JS.tw
@@ -0,0 +1,51 @@
+:: Art_Vector_Set_Colour_Outfit_JS [script]
+
+window.Art_Vector_Set_Colour_Outfit = function(artSlave) {
+
+var s = {
+  outfitBaseColour : undefined,
+  glassesColour : undefined
+  }
+
+if (artSlave.fuckdoll != 0 || artSlave.clothes == "restrictive latex" ||  artSlave.clothes == "a latex catsuit" ||  artSlave.clothes == "a cybersuit") {
+  s.outfitBaseColour = "#515351" ; /* standard "black rubber" latex colour */
+  if (artSlave.clothingBaseColor) {
+    s.outfitBaseColour = artSlave.clothingBaseColor ; /* latex colour selected by user */
+    /* TODO: rewrite all textual descriptions not to explicitly mention the latex being of black colour. */
+  }
+}
+
+if (artSlave.fuckdoll != 0 || artSlave.clothes == "a comfortable bodysuit") {
+  s.outfitBaseColour = "#464646" ; /* bodysuit */
+  if (artSlave.clothingBaseColor) {
+    s.outfitBaseColour = artSlave.clothingBaseColor ; /* bodysuit colour selected by user */
+  }
+}
+
+/* head addons */
+switch (artSlave.eyewear) {
+  case "corrective glasses":
+  case "glasses": 
+  case "blurring glasses":
+    s.glassesColour = "#010101";
+    break;
+  default:
+    /* use colour for "glasses" by default */
+    s.glassesColour = "#010101";
+}
+
+switch (artSlave.collar) {
+  case "porcelain mask":
+    s.glassesColour = "#FFFFFF";
+    break;
+  default:
+    /* use colour for "mask" by default */
+    s.glassesColour = "#010101";
+}
+
+if (artSlave.glassesColor) {
+  s.glassesColour = artSlave.glassesColor; /* glasses colour selected by user */
+}
+
+return s;
+}
-- 
GitLab


From 0777307e51e4210a0b692a9823020cd3795bcdd9 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Tue, 17 Jul 2018 18:18:18 -0400
Subject: [PATCH 072/189] requested fix

---
 src/js/storyJS.tw | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw
index 368ff852656..a7d344b8348 100644
--- a/src/js/storyJS.tw
+++ b/src/js/storyJS.tw
@@ -512,9 +512,9 @@ window.tooBigBalls = function(slave){
 window.tooBigDick = function(slave){
 	if (!slave) {
 		return null;
-	} else if (slave.dick >= 15+(slave.muscles*.1) && slave.physicalAge <= 3 && slave.dick !== 0) {
+	} else if (slave.dick >= 20+(slave.muscles*.1) && slave.physicalAge <= 3 && slave.dick !== 0) {
 		return true;
-	} else if (slave.dick >= 30+(slave.muscles*.3) && slave.physicalAge <= 12) {
+	} else if (slave.dick >= 45+(slave.muscles*.3) && slave.physicalAge <= 12) {
 		return true;
 	} else if (slave.dick >= 68+(slave.muscles*.4)) {
 		return true;
-- 
GitLab


From 31ed72253d2b939321d4817a6bbcb6242578f1e1 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Tue, 17 Jul 2018 21:27:21 -0400
Subject: [PATCH 073/189] JSify MenialPopCap and AddSlave (renamed newSlave)

---
 devNotes/twine JS.txt              | 159 ++++++++++++++++++++++++++++
 src/SecExp/secBarracks.tw          |   2 +-
 src/SecExp/secExpOptions.tw        |   2 +-
 src/SecExp/securityHQ.tw           |   2 +-
 src/SecExp/weaponsManufacturing.tw |   2 +-
 src/js/assayJS.tw                  | 159 ++++++++++++++++++++++++++++
 src/uncategorized/arcmgmt.tw       |   4 +-
 src/uncategorized/buySlaves.tw     |   2 +-
 src/utility/miscWidgets.tw         | 162 +----------------------------
 9 files changed, 328 insertions(+), 166 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 7410a16019a..c71ca5ca4f1 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -6596,6 +6596,112 @@ window.properTitle = function properTitle() {
 	else return "Ma'am";
 };
 
+window.newSlave = function newSlave(slave) {
+	const V = State.variables;
+
+	switch (slave.eyeColor) {
+		case "blind blue":
+			slave.origEye = "deep blue";
+			break;
+		case "milky white":
+		case "implant":
+			slave.origEye = jsEither(["blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue"]);
+			break;
+		default:
+			slave.origEye = slave.eyeColor;
+			break;
+	}
+	slave.origHColor = slave.hColor;
+	slave.underArmHColor = slave.hColor;
+	slave.pubicHColor = slave.hColor;
+	slave.origSkin = slave.skin;
+
+	if (V.surnamesForbidden === 1) {
+		slave.slaveSurname = 0;
+	}
+
+	if (slave.preg > 0) {
+		slave.pregWeek = slave.preg;
+	} else {
+		slave.pregWeek = 0;
+	}
+
+	if (V.familyTesting === 1) {
+		slave.sisters = 0;
+		slave.daughters = 0;
+		if (slave.mother === -1 || slave.father === -1) {
+			V.PC.daughters += 1;
+		}
+		if (areSisters(V.PC, slave) > 0) {
+			V.PC.sisters += 1;
+		}
+		for (let k = 0; k < V.slaves.length; k++) {
+			if (V.slaves[k].mother === slave.ID || V.slaves[k].father === slave.ID) {
+				slave.daughters++;
+			}
+			if (slave.mother === V.slaves[k].ID || slave.father === V.slaves[k].ID) {
+				V.slaves[k].daughters++;
+			}
+			if (areSisters(V.slaves[k], slave) > 0) {
+				slave.sisters++;
+				V.slaves[k].sisters++;
+			}
+		}
+	}
+
+	if (slave.dick > 0 &&
+		slave.balls > 0 &&
+		slave.devotion <= 50 &&
+		(slave.fetish !== "buttslut" || slave.fetishKnown !== 1) &&
+		slave.sexualFlaw !== "hates women") {
+		V.REFeminizationCheckinIDs.push(slave.ID);
+	}
+	if (slave.actualAge > 35 && slave.face < 40 && slave.analSkill <= 30) {
+		V.REMILFCheckinIDs.push(slave.ID);
+	}
+	if (slave.attrXY <= 60 && slave.attrXX > 60 ) {
+		V.REOrientationCheckinIDs.push(slave.ID);
+	}
+	if (slave.face < -10) {
+		V.REUglyCheckinIDs.push(slave.ID);
+	}
+	if (slave.anus < 2) {
+		V.REButtholeCheckinIDs.push(slave.ID);
+	}
+	if (slave.boobs < 800) {
+		V.REReductionCheckinIDs.push(slave.ID);
+	}
+
+	if (slave.fuckdoll > 0) {
+		slave.pronoun = "it", slave.possessivePronoun = "its", slave.possessive = "its", slave.object = "it", slave.objectReflexive = "itself", slave.noun = "toy";
+	} else if (slave.dick > 0 && slave.vagina === -1 && V.diversePronouns === 1) {
+		slave.pronoun = "he", slave.possessivePronoun = "his", slave.possessive = "his", slave.object = "him", slave.objectReflexive = "himself", slave.noun = "boy";
+	} else {
+		slave.pronoun = "she", slave.possessivePronoun = "hers", slave.possessive = "her", slave.object = "her", slave.objectReflexive = "herself", slave.noun = "girl";
+	}
+
+	SetBellySize(slave);
+	addSlave(slave);
+	
+	if (slave.origin !== "She was your slave, but you freed her, which she repaid by participating in a coup attempt against you. It failed, and she is again your chattel." && slave.ID !== V.boomerangSlave.ID) {
+		V.genePool.push(slave);
+	} else {
+		if (V.genePool.findIndex(function(s) { return s.ID === slave.ID; }) === -1) {
+			V.genePool.push(slave);
+		}
+	}
+
+	/* add to facilities array if needed */
+	if (slave.assignment !== "rest") {
+		assignJob(slave, slave.assignment);
+	}
+
+	/** do not run the Rules Assistant before adding the new slave to the slaves list! **/
+	if (V.ui !== "start" && V.universalRulesNewSlavesRA === 1 && V.rulesAssistantAuto !== 0) {
+		DefaultRules(slave);
+	}
+};
+
 window.addSlave = function addSlave(slave) {
 	State.variables.slaves.push(slave);
 	State.variables.slaveIndices[slave.ID] = State.variables.slaves.length - 1;
@@ -7620,6 +7726,59 @@ window.SlaveSort = function SlaveSort(slaves, main=false) {
 	}
 };
 
+window.MenialPopCap = function MenialPopCap () {
+	const V = State.variables;
+	let popCap = 500;
+	let r = "";
+
+	for (let mwi = 20; mwi < V.sectors.length; mwi++) {
+		if (V.sectors[mwi].type === "Pens") {
+			popCap += 500;
+		}
+	}
+	let overMenialCap = V.helots + V.fuckdolls + V.menialBioreactors - popCap;
+	if (overMenialCap > 0) {
+		let price = menialSlaveCost();
+		if (V.helots > 0) {
+			if (V.helots > overMenialCap) {
+				V.cash += overMenialCap * price;
+				V.menialDemandFactor -= overMenialCap;
+				V.helots -= overMenialCap;
+				overMenialCap = 0;
+				r += "You don't have enough room for all your menials and are obliged to sell some.";
+			} else {
+				V.cash += V.helots * price;
+				V.menialDemandFactor -= V.helots;
+				overMenialCap -= V.helots;
+				V.helots = 0;
+				r += "You don't have enough room for your menials and are obliged to sell them.";
+			}
+		}
+		if (overMenialCap > 0 && V.fuckdolls > 0) {
+			if (V.fuckdolls > overMenialCap) {
+				V.cash += overMenialCap * (price * 2);
+				V.menialDemandFactor -= overMenialCap;
+				V.fuckdolls -= overMenialCap;
+				overMenialCap = 0;
+				r += "You don't have enough room for all your fuckdolls and are obliged to sell some.";
+			} else {
+				V.cash += V.fuckdolls * (price * 2);
+				V.menialDemandFactor -= V.fuckdolls;
+				overMenialCap -= V.fuckdolls;
+				V.fuckdolls = 0;
+				r += "You don't have enough room for your fuckdolls and are obliged to sell them.";
+			}
+		}
+		if (overMenialCap > 0 && V.menialBioreactors > 0) {
+			V.cash += overMenialCap * (price - 100);
+			V.menialDemandFactor -= overMenialCap;
+			V.menialBioreactors -= overMenialCap;
+			r += "You don't have enough room for all your menial bioreactors and are obliged to sell some.";
+		}
+	}
+	return r;
+};
+
 /*:: Summary Widgets JS [script]*/
 
 window.SlaveStatClamp = function SlaveStatClamp(slave) {
diff --git a/src/SecExp/secBarracks.tw b/src/SecExp/secBarracks.tw
index ba68110ef72..c621fb3f538 100644
--- a/src/SecExp/secBarracks.tw
+++ b/src/SecExp/secBarracks.tw
@@ -180,7 +180,7 @@ __Security Drones__
 __Slaves__
 <br>/* slaves */
 You are free to organize your menial slaves into fighting units. Currently you have <<print commaNum($helots)>> slaves available, while <<print commaNum($slavesEmployedManpower)>> are already employed as soldiers. During all your battles you lost a total of <<print commaNum($slavesTotalCasualties)>>.
-<<silently>><<MenialPopCap>><</silently>>
+<<silently>><<= MenialPopCap()>><</silently>>
 <<set _menialPrice = menialSlaveCost()>>
 <<if $cash > _menialPrice>>
 <<if $PopCap > $helots+$fuckdolls+$menialBioreactors>>
diff --git a/src/SecExp/secExpOptions.tw b/src/SecExp/secExpOptions.tw
index 4ce4be5c242..1e0eae270ce 100644
--- a/src/SecExp/secExpOptions.tw
+++ b/src/SecExp/secExpOptions.tw
@@ -409,7 +409,7 @@ __Rebellions buildup speed__:
 <br>
 
 __Debug/cheats:__
-<<silently>><<MenialPopCap>><</silently>>
+<<silently>><<= MenialPopCap()>><</silently>>
 <br>
 <<link "Set loyalty high" "secExpOptions">>
 	<<for _i = 0; _i < $militiaUnits.length; _i++>>
diff --git a/src/SecExp/securityHQ.tw b/src/SecExp/securityHQ.tw
index 78cfca08230..40d44e15172 100644
--- a/src/SecExp/securityHQ.tw
+++ b/src/SecExp/securityHQ.tw
@@ -21,7 +21,7 @@ You have <span id="secHel"><<print $secHelots>></span> slaves working in the HQ.
 <<else>>
 	You have enough slaves to man all security systems.
 <</if>>
-<<silently>><<MenialPopCap>><</silently>>
+<<silently>><<= MenialPopCap()>><</silently>>
 <<set _menialPrice = menialSlaveCost()>>
 <<if $cash > _menialPrice>>
 <<if $PopCap > $helots+$fuckdolls+$menialBioreactors || $helots+$fuckdolls+$menialBioreactors == 0>>
diff --git a/src/SecExp/weaponsManufacturing.tw b/src/SecExp/weaponsManufacturing.tw
index 87a8c7b51ec..339b434aa73 100644
--- a/src/SecExp/weaponsManufacturing.tw
+++ b/src/SecExp/weaponsManufacturing.tw
@@ -32,7 +32,7 @@ many small old world nations as the advanced technology that free cities have av
 <<if $weapHelots> 0>>Assigned here are $weapHelots slaves working to produce as much equipment as possible<<else>>There are no assigned menial slaves here. The spaces is manned exclusively by low rank citizens.<</if>>
 You own <<print commaNum($helots)>> free menial slaves. This manufacturing complex can house 500 at most, with <<print 500 - $weapHelots>> free slots.
 <br>
-<<silently>><<MenialPopCap>><</silently>>
+<<silently>><<= MenialPopCap()>><</silently>>
 <<set _menialPrice = menialSlaveCost()>>
 <<if $cash > _menialPrice>>
 <<if $PopCap > $helots+$fuckdolls+$menialBioreactors || $helots+$fuckdolls+$menialBioreactors == 0>>
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index 172de1fc76c..76303be830a 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -236,6 +236,112 @@ window.properTitle = function properTitle() {
 	else return "Ma'am";
 };
 
+window.newSlave = function newSlave(slave) {
+	const V = State.variables;
+
+	switch (slave.eyeColor) {
+		case "blind blue":
+			slave.origEye = "deep blue";
+			break;
+		case "milky white":
+		case "implant":
+			slave.origEye = jsEither(["blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue"]);
+			break;
+		default:
+			slave.origEye = slave.eyeColor;
+			break;
+	}
+	slave.origHColor = slave.hColor;
+	slave.underArmHColor = slave.hColor;
+	slave.pubicHColor = slave.hColor;
+	slave.origSkin = slave.skin;
+
+	if (V.surnamesForbidden === 1) {
+		slave.slaveSurname = 0;
+	}
+
+	if (slave.preg > 0) {
+		slave.pregWeek = slave.preg;
+	} else {
+		slave.pregWeek = 0;
+	}
+
+	if (V.familyTesting === 1) {
+		slave.sisters = 0;
+		slave.daughters = 0;
+		if (slave.mother === -1 || slave.father === -1) {
+			V.PC.daughters += 1;
+		}
+		if (areSisters(V.PC, slave) > 0) {
+			V.PC.sisters += 1;
+		}
+		for (let k = 0; k < V.slaves.length; k++) {
+			if (V.slaves[k].mother === slave.ID || V.slaves[k].father === slave.ID) {
+				slave.daughters++;
+			}
+			if (slave.mother === V.slaves[k].ID || slave.father === V.slaves[k].ID) {
+				V.slaves[k].daughters++;
+			}
+			if (areSisters(V.slaves[k], slave) > 0) {
+				slave.sisters++;
+				V.slaves[k].sisters++;
+			}
+		}
+	}
+
+	if (slave.dick > 0 &&
+		slave.balls > 0 &&
+		slave.devotion <= 50 &&
+		(slave.fetish !== "buttslut" || slave.fetishKnown !== 1) &&
+		slave.sexualFlaw !== "hates women") {
+		V.REFeminizationCheckinIDs.push(slave.ID);
+	}
+	if (slave.actualAge > 35 && slave.face < 40 && slave.analSkill <= 30) {
+		V.REMILFCheckinIDs.push(slave.ID);
+	}
+	if (slave.attrXY <= 60 && slave.attrXX > 60 ) {
+		V.REOrientationCheckinIDs.push(slave.ID);
+	}
+	if (slave.face < -10) {
+		V.REUglyCheckinIDs.push(slave.ID);
+	}
+	if (slave.anus < 2) {
+		V.REButtholeCheckinIDs.push(slave.ID);
+	}
+	if (slave.boobs < 800) {
+		V.REReductionCheckinIDs.push(slave.ID);
+	}
+
+	if (slave.fuckdoll > 0) {
+		slave.pronoun = "it", slave.possessivePronoun = "its", slave.possessive = "its", slave.object = "it", slave.objectReflexive = "itself", slave.noun = "toy";
+	} else if (slave.dick > 0 && slave.vagina === -1 && V.diversePronouns === 1) {
+		slave.pronoun = "he", slave.possessivePronoun = "his", slave.possessive = "his", slave.object = "him", slave.objectReflexive = "himself", slave.noun = "boy";
+	} else {
+		slave.pronoun = "she", slave.possessivePronoun = "hers", slave.possessive = "her", slave.object = "her", slave.objectReflexive = "herself", slave.noun = "girl";
+	}
+
+	SetBellySize(slave);
+	addSlave(slave);
+	
+	if (slave.origin !== "She was your slave, but you freed her, which she repaid by participating in a coup attempt against you. It failed, and she is again your chattel." && slave.ID !== V.boomerangSlave.ID) {
+		V.genePool.push(slave);
+	} else {
+		if (V.genePool.findIndex(function(s) { return s.ID === slave.ID; }) === -1) {
+			V.genePool.push(slave);
+		}
+	}
+
+	/* add to facilities array if needed */
+	if (slave.assignment !== "rest") {
+		assignJob(slave, slave.assignment);
+	}
+
+	/** do not run the Rules Assistant before adding the new slave to the slaves list! **/
+	if (V.ui !== "start" && V.universalRulesNewSlavesRA === 1 && V.rulesAssistantAuto !== 0) {
+		DefaultRules(slave);
+	}
+};
+
 window.addSlave = function addSlave(slave) {
 	State.variables.slaves.push(slave);
 	State.variables.slaveIndices[slave.ID] = State.variables.slaves.length - 1;
@@ -1259,3 +1365,56 @@ window.SlaveSort = function SlaveSort(slaves, main=false) {
 		slaves.sort((a, b) => V.slaveIndices[a] - V.slaveIndices[b]);
 	}
 };
+
+window.MenialPopCap = function MenialPopCap () {
+	const V = State.variables;
+	let popCap = 500;
+	let r = "";
+
+	for (let mwi = 20; mwi < V.sectors.length; mwi++) {
+		if (V.sectors[mwi].type === "Pens") {
+			popCap += 500;
+		}
+	}
+	let overMenialCap = V.helots + V.fuckdolls + V.menialBioreactors - popCap;
+	if (overMenialCap > 0) {
+		let price = menialSlaveCost();
+		if (V.helots > 0) {
+			if (V.helots > overMenialCap) {
+				V.cash += overMenialCap * price;
+				V.menialDemandFactor -= overMenialCap;
+				V.helots -= overMenialCap;
+				overMenialCap = 0;
+				r += "You don't have enough room for all your menials and are obliged to sell some.";
+			} else {
+				V.cash += V.helots * price;
+				V.menialDemandFactor -= V.helots;
+				overMenialCap -= V.helots;
+				V.helots = 0;
+				r += "You don't have enough room for your menials and are obliged to sell them.";
+			}
+		}
+		if (overMenialCap > 0 && V.fuckdolls > 0) {
+			if (V.fuckdolls > overMenialCap) {
+				V.cash += overMenialCap * (price * 2);
+				V.menialDemandFactor -= overMenialCap;
+				V.fuckdolls -= overMenialCap;
+				overMenialCap = 0;
+				r += "You don't have enough room for all your fuckdolls and are obliged to sell some.";
+			} else {
+				V.cash += V.fuckdolls * (price * 2);
+				V.menialDemandFactor -= V.fuckdolls;
+				overMenialCap -= V.fuckdolls;
+				V.fuckdolls = 0;
+				r += "You don't have enough room for your fuckdolls and are obliged to sell them.";
+			}
+		}
+		if (overMenialCap > 0 && V.menialBioreactors > 0) {
+			V.cash += overMenialCap * (price - 100);
+			V.menialDemandFactor -= overMenialCap;
+			V.menialBioreactors -= overMenialCap;
+			r += "You don't have enough room for all your menial bioreactors and are obliged to sell some.";
+		}
+	}
+	return r;
+};
diff --git a/src/uncategorized/arcmgmt.tw b/src/uncategorized/arcmgmt.tw
index aee0913f8da..8b656803849 100644
--- a/src/uncategorized/arcmgmt.tw
+++ b/src/uncategorized/arcmgmt.tw
@@ -779,7 +779,7 @@ The Hippolyta Academy have a <<if $HA.schoolProsperity > 4>>very prosperous<<els
 <</if>>
 
 <<if $marketAssistantLimit != 0>>
-<<silently>><<MenialPopCap>><</silently>>
+<<silently>><<= MenialPopCap()>><</silently>>
 <<set $seed = menialSlaveCost()>>
 <br>
 Your ''business assistant'' manages the menial slave market.
@@ -814,5 +814,5 @@ Your ''business assistant'' manages the menial slave market.
 <<else>>
 	Prices are average, so <<if $assistant == 0>>it<<else>>she<</if>> does not make any significant moves.
 <</if>>
-<<silently>><<MenialPopCap>><</silently>>
+<<silently>><<= MenialPopCap()>><</silently>>
 <</if>>
diff --git a/src/uncategorized/buySlaves.tw b/src/uncategorized/buySlaves.tw
index 11536381a54..7262d941600 100644
--- a/src/uncategorized/buySlaves.tw
+++ b/src/uncategorized/buySlaves.tw
@@ -272,7 +272,7 @@ __Sex Slave Purchase Options__
 __Menial Slaves__
 
 <br>
-<<MenialPopCap>>
+<<= MenialPopCap()>>
 The parts of your arcology you own can house a total of $PopCap menial slaves.
 
 <<set _menialPrice = menialSlaveCost()>>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index db16b0d2803..af245756fe0 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -1060,52 +1060,6 @@
 
 <</widget>>
 
-/%
- Call as <<MenialPopCap>>
- Applies the menial popcap without asking.
-%/
-<<widget "MenialPopCap">>
-
-<<set $PopCap = 500>>
-<<for _mwi = 20; _mwi < $sectors.length; _mwi++>>
-	<<if $sectors[_mwi].type == "Pens">>
-		<<set $PopCap += 500>>
-	<</if>>
-<</for>>
-<<set _OverMenialCap = ($helots+$fuckdolls+$menialBioreactors)-$PopCap>>
-<<if _OverMenialCap > 0>>
-	<<set _Price = menialSlaveCost()>>
-	<<if $helots > 0>>
-		<<if $helots > _OverMenialCap>>
-			<<set $cash += _OverMenialCap*_Price, $menialDemandFactor -= _OverMenialCap,
-			$helots -= _OverMenialCap, _OverMenialCap = 0>>
-			You don't have enough room for all your menials and are obliged to sell some.
-		<<else>>
-			<<set $cash += $helots*_Price, $menialDemandFactor -= $helots,
-			_OverMenialCap -= $helots, $helots = 0>>
-			You don't have enough room for your menials and are obliged to sell them.
-		<</if>>
-	<</if>>
-	<<if (_OverMenialCap > 0) && ($fuckdolls > 0)>>
-		<<if $fuckdolls > _OverMenialCap>>
-			<<set $cash += _OverMenialCap*(_Price*2), $menialDemandFactor -= _OverMenialCap,
-			$fuckdolls -= _OverMenialCap, _OverMenialCap = 0>>
-			You don't have enough room for all your fuckdolls and are obliged to sell some.
-		<<else>>
-			<<set $cash += $fuckdolls*(_Price*2), $menialDemandFactor -= $fuckdolls,
-			_OverMenialCap -= $fuckdolls, $fuckdolls = 0>>
-			You don't have enough room for your fuckdolls and are obliged to sell them.
-		<</if>>
-	<</if>>
-	<<if (_OverMenialCap > 0) && ($menialBioreactors > 0)>>
-		<<set $cash += _OverMenialCap*(_Price-100), $menialDemandFactor -= _OverMenialCap,
-		$menialBioreactors -= _OverMenialCap>>
-		You don't have enough room for all your menial bioreactors and are obliged to sell some.
-	<</if>>
-<</if>>
-
-<</widget>>
-
 /%
  Call as <<OralSkillIncrease>>
  $args[0]: Slave.
@@ -1292,119 +1246,9 @@
  $args[0]: Slave.
 %/
 <<widget "AddSlave">>
-
-<<switch $args[0].eyeColor>>
-<<case "blind blue">><<set $args[0].origEye = "deep blue">>
-<<case "milky white" "implant">><<set $args[0].origEye = either("blue", "green", "brown", "hazel", "light blue", "light green", "dark green", "dark blue")>>
-<<default>><<set $args[0].origEye = $args[0].eyeColor>>
-<</switch>>
-<<set $args[0].origHColor = $args[0].hColor>>
-<<set $args[0].underArmHColor = $args[0].hColor>>
-<<set $args[0].pubicHColor = $args[0].hColor>>
-<<set $args[0].origSkin = $args[0].skin>>
-
-<<if $surnamesForbidden == 1>>
-	<<set $args[0].slaveSurname = 0>>
-<</if>>
-
-<<if $args[0].preg > 0>>
-	<<set $args[0].pregWeek = $args[0].preg>>
-<<else>>
-	<<set $args[0].pregWeek = 0>>
-<</if>>
-
-<<if $familyTesting == 1>>
-	<<set $args[0].sisters = 0>>
-	<<set $args[0].daughters = 0>>
-	<<if $args[0].mother == -1 || $args[0].father == -1>>
-		<<set $PC.daughters += 1>>
-	<</if>>
-	<<if areSisters($PC, $args[0]) > 0>>
-		<<set $PC.sisters += 1>>
-	<</if>>
-	<<for _k = 0; _k < $slaves.length; _k++>>
-		<<if $slaves[_k].mother == $args[0].ID || $slaves[_k].father == $args[0].ID>>
-			<<set $args[0].daughters += 1>>
-		<</if>>
-		<<if $args[0].mother == $slaves[_k].ID || $args[0].father == $slaves[_k].ID>>
-			<<set $slaves[_k].daughters += 1>>
-		<</if>>
-		<<if areSisters($slaves[_k], $args[0]) > 0>>
-			<<set $args[0].sisters += 1>>
-			<<set $slaves[_k].sisters += 1>>
-		<</if>>
-	<</for>>
-<</if>>
-
-<<if $args[0].dick > 0>>
-	<<if $args[0].balls > 0>>
-	<<if $args[0].devotion <= 50>>
-	<<if ($args[0].fetish != "buttslut") || ($args[0].fetishKnown != 1)>>
-	<<if $args[0].sexualFlaw != "hates women">>
-	<<set $REFeminizationCheckinIDs.push($args[0].ID)>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $args[0].actualAge > 35>>
-	<<if $args[0].face < 40>>
-	<<if $args[0].analSkill <= 30>>
-	<<set $REMILFCheckinIDs.push($args[0].ID)>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $args[0].attrXY <= 60>>
-	<<if $args[0].attrXX > 60>>
-		<<set $REOrientationCheckinIDs.push($args[0].ID)>>
-	<</if>>
-<</if>>
-<<if $args[0].face < -10>>
-	<<set $REUglyCheckinIDs.push($args[0].ID)>>
-<</if>>
-<<if $args[0].anus < 2>>
-	<<set $REButtholeCheckinIDs.push($args[0].ID)>>
-<</if>>
-<<if $args[0].boobs < 800>>
-	<<set $REReductionCheckinIDs.push($args[0].ID)>>
-<</if>>
-
-<<if $args[0].fuckdoll > 0>>
-	<<set $args[0].pronoun = "it", $args[0].possessivePronoun = "its", $args[0].possessive = "its", $args[0].object = "it", $args[0].objectReflexive = "itself", $args[0].noun = "toy">>
-<<elseif $args[0].dick > 0 && $args[0].vagina == -1 && $diversePronouns == 1>>
-	<<set $args[0].pronoun = "he", $args[0].possessivePronoun = "his", $args[0].possessive = "his", $args[0].object = "him", $args[0].objectReflexive = "himself", $args[0].noun = "boy">>
-<<else>>
-	<<set $args[0].pronoun = "she", $args[0].possessivePronoun = "hers", $args[0].possessive = "her", $args[0].object = "her", $args[0].objectReflexive = "herself", $args[0].noun = "girl">>
-<</if>>
-
-<<run SetBellySize($args[0])>>
-
-<<run addSlave($args[0])>>
-<<if $args[0].origin != "She was your slave, but you freed her, which she repaid by participating in a coup attempt against you. It failed, and she is again your chattel." && $args[0].ID != $boomerangSlave.ID>>
-	<<set $genePool.push($args[0])>>
-<<else>>
-	<<set _t = $genePool.findIndex(function(s) { return s.ID == $args[0].ID; })>>
-	<<if _t == -1>> /* traitor or boomerang somehow not found */
-		<<set $genePool.push($args[0])>>
-	<</if>>
-<</if>>
-
-/* add to facilities array if needed */
-<<if $args[0].assignment != "rest">>
-	<<= assignJob($args[0], $args[0].assignment)>>
-<</if>>
-
-/** do not run the Rules Assistant before adding the new slave to the slaves list! **/
-<<if $ui != "start">>
-<<if $universalRulesNewSlavesRA == 1>>
-<<if $rulesAssistantAuto != 0>>
-	<<silently>>
-	<<run DefaultRules($args[0])>>
-	<</silently>>
-<</if>>
-<</if>>
-<</if>>
-
+<<silently>> /* making absolutely sure the call to DefaultRules() doesn't print anything */
+	<<run newSlave($args[0])>>
+<</silently>>
 <</widget>>
 
 <<widget "Master">><<if def $args[0]>><<run Enunciate($args[0])>><<elseif ndef $titleEnunciate>><<run Enunciate($activeSlave)>><</if>>$titleEnunciate<</widget>>
-- 
GitLab


From 8b2eb564d746469d7abe768b3342f6d05b6bf3e8 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 18 Jul 2018 01:03:17 -0400
Subject: [PATCH 074/189] fixes and saPorn work

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |   1 +
 devNotes/twine JS.txt                        |   4 +-
 slave variables documentation - Pregmod.txt  |  72 ++-
 src/js/storyJS.tw                            |   4 +-
 src/{uncategorized => pregmod}/saPorn.tw     | 563 +++++++++++++++----
 src/uncategorized/newSlaveIntro.tw           |  30 +-
 src/uncategorized/ptWorkaround.tw            |   7 +-
 src/uncategorized/saPleaseYou.tw             |   2 +-
 8 files changed, 573 insertions(+), 110 deletions(-)
 rename src/{uncategorized => pregmod}/saPorn.tw (70%)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 2d3ce8a1a0f..e2520d338f9 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -13,6 +13,7 @@
 	-startingGirls slaves can now be relatives in NG+, bu only with each other
 	-more widget to JS conversion
 	-imperial measurement is now an option
+	-RA haircuts controls
 
 7/08/2018
 
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 10e0bb1b952..0ca2d2c5ada 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -512,9 +512,9 @@ window.tooBigBalls = function(slave){
 window.tooBigDick = function(slave){
 	if (!slave) {
 		return null;
-	} else if (slave.dick >= 15+(slave.muscles*.1) && slave.physicalAge <= 3 && slave.dick !== 0) {
+	} else if (slave.dick >= 20+(slave.muscles*.1) && slave.physicalAge <= 3 && slave.dick !== 0) {
 		return true;
-	} else if (slave.dick >= 30+(slave.muscles*.3) && slave.physicalAge <= 12) {
+	} else if (slave.dick >= 45+(slave.muscles*.3) && slave.physicalAge <= 12) {
 		return true;
 	} else if (slave.dick >= 68+(slave.muscles*.4)) {
 		return true;
diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt
index 08c3ef209bd..4d3b8542542 100644
--- a/slave variables documentation - Pregmod.txt	
+++ b/slave variables documentation - Pregmod.txt	
@@ -280,14 +280,82 @@ accepts string
 pornFameType:
 
 what porn she is known for
-** Needs to be pulled from saPorn! **
 "none"
+"orgasm denial"
+"cum addiction"
+"anal addiction"
+"exhibition"
+"breast expansion"
+"abuse"
+"sexual torture"
+"self hating"
+"breeder"
+"submissive"
+"cum"
+"buttslut"
+"humiliating"
+"breast"
+"dominant"
+"sadistic"
+"masochistic"
+"pregnancy fetish"
+"fuckdoll"
+"rape"
+"preggo"
+"BBW"
+"underage"
+"weight gain"
+"big dick"
+"generic"
+"deepthroat"
+"unwilling"
+"hardcore anal"
+"softcore"
+"romantic"
+"really perverted"
+"voyeur"
+"unspeakable"
+"huge insertion"
 
 pornFocus:
 
 what aspect of her the upgraded studio is focusing on for porn
-** Needs to be pulled from saPorn! **
 "none"
+"neglectful"
+"cum addict"
+"anal addict"
+"attention whore"
+"breast growth"
+"abusive"
+"malicious"
+"self hating"
+"breeder"
+"submissive"
+"cumslut"
+"buttslut"
+"humiliation"
+"boobs"
+"dom"
+"sadist"
+"masochist"
+"pregnancy"
+"fuckdoll"
+"rape"
+"preggo"
+"BBW"
+"loli"
+"gainer"
+"stud"
+"porn"
+"gagfuck queen"
+"strugglefuck queen"
+"painal queen"
+"tease"
+"romantic"
+"perverted"
+"caring"
+"unflinching"
+"size queen"
 
 pornTypeGeneral:
 
diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw
index 368ff852656..a7d344b8348 100644
--- a/src/js/storyJS.tw
+++ b/src/js/storyJS.tw
@@ -512,9 +512,9 @@ window.tooBigBalls = function(slave){
 window.tooBigDick = function(slave){
 	if (!slave) {
 		return null;
-	} else if (slave.dick >= 15+(slave.muscles*.1) && slave.physicalAge <= 3 && slave.dick !== 0) {
+	} else if (slave.dick >= 20+(slave.muscles*.1) && slave.physicalAge <= 3 && slave.dick !== 0) {
 		return true;
-	} else if (slave.dick >= 30+(slave.muscles*.3) && slave.physicalAge <= 12) {
+	} else if (slave.dick >= 45+(slave.muscles*.3) && slave.physicalAge <= 12) {
 		return true;
 	} else if (slave.dick >= 68+(slave.muscles*.4)) {
 		return true;
diff --git a/src/uncategorized/saPorn.tw b/src/pregmod/saPorn.tw
similarity index 70%
rename from src/uncategorized/saPorn.tw
rename to src/pregmod/saPorn.tw
index 14b6d84a35b..acd3f36a33b 100644
--- a/src/uncategorized/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -3,7 +3,7 @@
 <<if $studio == 1 && $slaves[$i].pornFeed == 1>> /* content is being produced */
 
 	/* rate of decay*/
-	<<if $slaves[$i].pornPrestige > 1>> /* 500k */
+	<<if $slaves[$i].pornPrestige > 1>> /* 100k */
 		<<set _decayRate = 5000>>
 		<<set _viewership = (500/$HackingSkillMultiplier) + ($slaves[$i].pornFameSpending) + ($slaves[$i].face*2) + ($slaves[$i].prestige*10) - _decayRate>>
 	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
@@ -221,7 +221,7 @@
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "malicious">>
-		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "malefic">>
+		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "sexual torture">>
 			<<set _adjustedViewership = _viewership*2>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
@@ -231,7 +231,7 @@
 		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious, 0, 1000000000)>>
 		<<set _viewerSoaking++>>
 
-		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "malefic">>
+		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "sexual torture">>
 			$possessiveCap sexual appetite of other's suffering makes $object a hit with viewers that enjoy sadism and violence.
 			<<if $slaves[$i].pornTypeMalicious > _oldPorn>>
 				Viewship @@.green:increased@@ this week.
@@ -358,7 +358,7 @@
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "buttslut">>
-		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "booty">>
+		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "buttslut">>
 			<<set _adjustedViewership = _viewership*2.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
@@ -368,7 +368,7 @@
 		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal, 0, 1000000000)>>
 		<<set _viewerSoaking++>>
 
-		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "booty">>
+		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "buttslut">>
 			With $possessive fetish for asses, $pronoun finds in the company of viewers that love rear ends.
 			<<if $slaves[$i].pornTypeAnal > _oldPorn>>
 				Viewship @@.green:increased@@ this week.
@@ -712,7 +712,7 @@
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
 	<</if>>
 	<<if canPenetrate($slaves[$i]) && $slaves[$i].dick > 3>>
-		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "well hung">>
+		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "big dick">>
 			<<set _adjustedViewership = _viewership*4>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
@@ -722,7 +722,7 @@
 		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud, 0, 1000000000)>>
 		<<set _viewerSoaking++>>
 
-		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "well hung">>
+		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "big dick">>
 			$possessiveCap powerful erection excites those who see it, especially when it is put to good use.
 			<<if $slaves[$i].pornTypeStud > _oldPorn>>
 				Viewship @@.green:increased@@ this week.
@@ -738,7 +738,7 @@
 		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 1000000000)>>
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
 	<</if>>
-	<<if $slaves[$i].pornFocus == "porn" || $slaves[$i].pornFameType === "">>
+	<<if $slaves[$i].pornFocus == "porn" || $slaves[$i].pornFameType === "generic">>
 		<<set _adjustedViewership = _viewership*5>>
 	<<else>>
 		<<set _adjustedViewership = _viewership>>
@@ -996,6 +996,459 @@
 	<</if>>
 	
 	/* prestige gen */
+	
+	<<if $slaves[$i].pornPrestige == 0 && $slaves[$i].pornFame >= 10000>>
+		<<set _pornFameGrabBag = []>>
+		<<if $slaves[$i].pornTypeGeneral >= 10000>><<set _pornFameGrabBag.push("generic")>><</if>>
+		<<if $slaves[$i].pornTypeFuckdoll >= 10000>><<set _pornFameGrabBag.push("fuckdoll")>><</if>>
+		<<if $slaves[$i].pornTypeRape >= 10000>><<set _pornFameGrabBag.push("rape")>><</if>>
+		<<if $slaves[$i].pornTypePreggo >= 10000>><<set _pornFameGrabBag.push("preggo")>><</if>>
+		<<if $slaves[$i].pornTypeBBW >= 10000>><<set _pornFameGrabBag.push("BBW")>><</if>>
+		<<if $slaves[$i].pornTypeGainer >= 10000>><<set _pornFameGrabBag.push("weight gain")>><</if>>
+		<<if $slaves[$i].pornTypeStud >= 10000>><<set _pornFameGrabBag.push("big dick")>><</if>>
+		<<if $slaves[$i].pornTypeLoli >= 10000>><<set _pornFameGrabBag.push("underage")>><</if>>
+		<<if $slaves[$i].pornTypeDeepThroat >= 10000>><<set _pornFameGrabBag.push("deepthroat")>><</if>>
+		<<if $slaves[$i].pornTypeStruggleFuck >= 10000>><<set _pornFameGrabBag.push("unwilling")>><</if>>
+		<<if $slaves[$i].pornTypePainal >= 10000>><<set _pornFameGrabBag.push("hardcore anal")>><</if>>
+		<<if $slaves[$i].pornTypeTease >= 10000>><<set _pornFameGrabBag.push("softcore")>><</if>>
+		<<if $slaves[$i].pornTypeRomantic >= 10000>><<set _pornFameGrabBag.push("romantic")>><</if>>
+		<<if $slaves[$i].pornTypePervert >= 10000>><<set _pornFameGrabBag.push("really perverted")>><</if>>
+		<<if $slaves[$i].pornTypeCaring >= 10000>><<set _pornFameGrabBag.push("voyeur")>><</if>>
+		<<if $slaves[$i].pornTypeUnflinching >= 10000>><<set _pornFameGrabBag.push("unspeakable")>><</if>>
+		<<if $slaves[$i].pornTypeSizeQueen >= 10000>><<set _pornFameGrabBag.push("huge insertion")>><</if>>
+		<<if $slaves[$i].pornTypeNeglectful >= 10000>><<set _pornFameGrabBag.push("orgasm denial")>><</if>>
+		<<if $slaves[$i].pornTypeCumAddict >= 10000>><<set _pornFameGrabBag.push("cum addiction")>><</if>>
+		<<if $slaves[$i].pornTypeAnalAddict >= 10000>><<set _pornFameGrabBag.push("anal addiction")>><</if>>
+		<<if $slaves[$i].pornTypeAttentionWhore >= 10000>><<set _pornFameGrabBag.push("exhibition")>><</if>>
+		<<if $slaves[$i].pornTypeBreastGrowth >= 10000>><<set _pornFameGrabBag.push("breast expansion")>><</if>>
+		<<if $slaves[$i].pornTypeAbusive >= 10000>><<set _pornFameGrabBag.push("abuse")>><</if>>
+		<<if $slaves[$i].pornTypeMalicious >= 10000>><<set _pornFameGrabBag.push("sexual torture")>><</if>>
+		<<if $slaves[$i].pornTypeSelfHating >= 10000>><<set _pornFameGrabBag.push("self hating")>><</if>>
+		<<if $slaves[$i].pornTypeBreeder >= 10000>><<set _pornFameGrabBag.push("breeder")>><</if>>
+		<<if $slaves[$i].pornTypeSub >= 10000>><<set _pornFameGrabBag.push("submissive")>><</if>>
+		<<if $slaves[$i].pornTypeCumSlut >= 10000>><<set _pornFameGrabBag.push("cum")>><</if>>
+		<<if $slaves[$i].pornTypeAnal >= 10000>><<set _pornFameGrabBag.push("buttslut")>><</if>>
+		<<if $slaves[$i].pornTypeHumiliation >= 10000>><<set _pornFameGrabBag.push("humiliating")>><</if>>
+		<<if $slaves[$i].pornTypeBoobs >= 10000>><<set _pornFameGrabBag.push("breast")>><</if>>
+		<<if $slaves[$i].pornTypeDom >= 10000>><<set _pornFameGrabBag.push("dominant")>><</if>>
+		<<if $slaves[$i].pornTypeSadist >= 10000>><<set _pornFameGrabBag.push("sadistic")>><</if>>
+		<<if $slaves[$i].pornTypeMasochist >= 10000>><<set _pornFameGrabBag.push("masochistic")>><</if>>
+		<<if $slaves[$i].pornTypePregnancy >= 10000>><<set _pornFameGrabBag.push("pregnancy fetish")>><</if>>
+		
+		<<if _pornFameGrabBag.length > 0>>
+			<<set $slaves[$i].pornFameType = _pornFameGrabBag.random()>>
+			<<set $slaves[$i].pornPrestige = 1, $slaves[$i].pornFocus = "none">>
+			
+			@@.green;$pronounCap has gained a following in $slaves[$i].pornFameType pornography!@@ Thousands have enjoyed
+			
+			<<switch $slaves[$i].pornFameType>>
+			<<case "generic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her being used.">>
+				the sight of $object being used,
+			<<case "fuckdoll">>
+				<<set $slaves[$i].pornPrestigeDesc = "It has a following in slave pornography. Its fans relish the sight of it being used.">>
+				the sight of $object being used,
+			<<case "rape">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her being raped.">>
+				the sight of $object being raped,
+			<<case "preggo">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her swell with child.">>
+				watching $object swell with child,
+			<<case "BBW">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her thick and soft body.">>
+				the sight of $possessive thick and soft body,
+			<<case "underage">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her childish body.">>
+				the sight of $possessive childish body,
+			<<case "weight gain">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her eating and gaining weight.">>
+				the sight of $object eating and gaining weight,
+			<<case "big dick">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her throbbing erection.">>
+				the sight of $possessive throbbing erection,
+			<<case "deepthroat">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
+				the sounds $pronoun makes when being throatfucked,
+			<<case "unwilling">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed how she struggles during sex.">>
+				how $pronoun struggles during sex,
+			<<case "hardcore anal">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her asshole pushed to its limit.">>
+				watching $possessive asshole pushed to its limit,
+			<<case "softcore">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her lewd striptease.">>
+				$possessive lewd striptease,
+			<<case "romantic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the deep bond she shares with her partners.">>
+				the deep bond $pronoun shares with $possessive partners,
+			<<case "really perverted">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her most perverted tendencies.">>
+				$possessive most perverted tendencies,
+			<<case "voyeur">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her devote herself to her partners' pleasure.">>
+				watching $object devote <<print $object>>self to $possessive partners' pleasure,
+			<<case "unspeakable">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her willingness to do things not repeated in polite company.">>
+				$possessive willingness to do things not repeated in polite company,
+			<<case "huge insertion">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her holes filled to their limits.">>
+				the sight of $possessive holes filled to their limits,
+			<<case "orgasm denial">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her ignoring her own pleasure.">>
+				the sight of $object ignoring $possessive own pleasure,
+			<<case "cum addiction">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything and everything for cum.">>
+				whatching $object do anything and everything for cum,
+			<<case "anal addiction">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything for a dick in her ass.">>
+				whatching $object do anything for a dick in $possessive ass,
+			<<case "exhibition">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything for attention.">>
+				whatching $object do anything for attention,
+			<<case "breast expansion">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed charting the growth of her breasts.">>
+				charting the growth of $possessive breasts,
+			<<case "abuse">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her abuse others.">>
+				watching $object abuse others,
+			<<case "sexual torture">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her getting off from the suffering she caused.">>
+				$object getting off from the suffering she caused,
+			<<case "self hating">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her happily suffer.">>
+				watching $object happily suffer,
+			<<case "breeder">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her obsess over pumping out babies.">>
+				watching $object obsess over pumping out babies,
+			<<case "submissive">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her submission.">>
+				$possessive submission,
+			<<case "cum">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her taste for cum.">>
+				$possessive taste for cum,
+			<<case "buttslut">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her rear.">>
+				the sight of $possessive rear,
+			<<case "humiliating">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her humiliating herself.">>
+				$object humiliating herself,
+			<<case "breast">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her breasts.">>
+				the sight of $possessive breasts,
+			<<case "dominant">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her dominance.">>
+				$possessive dominance,
+			<<case "sadistic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her sadism.">>
+				$possessive sadism,
+			<<case "masochistic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her masochism.">>
+				$possessive masochism,
+			<<case "pregnancy fetish">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her fondness for pregnancy.">>
+				$possessive fondness for pregnancy,
+			<</switch>>
+			
+			but $pronoun isn't famous enough to be called prestigious yet.
+		<</if>>
+	<<elseif $slaves[$i].pornPrestige == 1>>
+		<<set _failedStar = 0>>
+	
+		<<switch $slaves[$i].pornFameType>>
+		<<case "generic">>
+			<<if $slaves[$i].pornTypeGeneral >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from her career in slave pornography. Her many fans relish the sight of her being used.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeGeneral < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "fuckdoll">>
+			<<if $slaves[$i].pornTypeFuckdoll >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "It is well known from its career in slave pornography. Its many fans relish the sight of it being used.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeFuckdoll < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "rape">>
+			<<if $slaves[$i].pornTypeRape >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "It is well known from its career in slave pornography. Her many fans relish the sight of her being raped.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being raped, so it is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeRape < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "preggo">>
+			<<if $slaves[$i].pornTypePreggo >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her swollen with child.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object swollen with child, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypePreggo < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "BBW">>
+			<<if $slaves[$i].pornTypeBBW >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her thick, soft body.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive thick and soft body, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypePreggo < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "underage">>
+			<<if $slaves[$i].pornTypeLoli >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her immature body.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive immature body, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeLoli < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "weight gain">>
+			<<if $slaves[$i].pornTypeGainer >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how curvy she's gotten.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how curvy <<print $pronoun>>'s gotten, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeGainer < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "big dick">>
+			<<if $slaves[$i].pornTypeStud >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her heavy dick.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive heavy dick, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeStud < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "deepthroat">>
+			<<if $slaves[$i].pornTypeDeepThroat >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sounds $pronoun makes when being throatfucked, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeDeepThroat < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "unwilling">>
+			<<if $slaves[$i].pornTypeStruggleFuck >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how perfectly she struggles during sex.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how perfectly $pronoun struggles during sex, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeStruggleFuck < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "hardcore anal">>
+			<<if $slaves[$i].pornTypePainal >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish watching her asshole pushed to its limit.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish watching $possessive asshole pushed to its limit, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypePainal < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "softcore">>
+			<<if $slaves[$i].pornTypeTease >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her lewd striptease.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive lewd striptease, so $pronoun is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeTease < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "romantic">>
+			<<if $slaves[$i].pornTypeRomantic >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the deep bond she shares with her partners.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners.
+			<<elseif $slaves[$i].pornTypeRomantic < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "really perverted">>
+			<<if $slaves[$i].pornTypePervert >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the depths of her pervesions.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions.
+			<<elseif $slaves[$i].pornTypePervert < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "voyeur">>
+			<<if $slaves[$i].pornTypeCaring >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure.
+			<<elseif $slaves[$i].pornTypeCaring < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "unspeakable">>
+			<<if $slaves[$i].pornTypeUnflinching >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her willingness to do anything and everything.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything.
+			<<elseif $slaves[$i].pornTypeUnflinching < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "huge insertion">>
+			<<if $slaves[$i].pornTypeSizeQueen >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her holes filled to their limits.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits.
+			<<elseif $slaves[$i].pornTypeSizeQueen < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "orgasm denial">>
+			<<if $slaves[$i].pornTypeNeglectful >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her denying herself pleasure.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $object denying <<print $object>>self pleasure.
+			<<elseif $slaves[$i].pornTypeNeglectful < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "cum addiction">>
+			<<if $slaves[$i].pornTypeCumAddict >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for cum.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $object doing anything for cum.
+			<<elseif $slaves[$i].pornTypeCumAddict < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "anal addiction">>
+			<<if $slaves[$i].pornTypeAnalAddict >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for a dick up her ass.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $object doing anything for a dick up $possessive ass.
+			<<elseif $slaves[$i].pornTypeAnalAddict < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "exhibition">>
+			<<if $slaves[$i].pornTypeAttentionWhore >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for attention.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $object doing anything for attention.
+			<<elseif $slaves[$i].pornTypeAttentionWhore < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breast expansion">>
+			<<if $slaves[$i].pornTypeBreastGrowth >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her expanding bust.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive expanding bust.
+			<<elseif $slaves[$i].pornTypeBreastGrowth < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "abuse">>
+			<<if $slaves[$i].pornTypeAbusive >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her abusing others.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive abusing others.
+			<<elseif $slaves[$i].pornTypeAbusive < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "sexual torture">>
+			<<if $slaves[$i].pornTypeMalicious >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her getting off from the suffering she caused.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive getting off from the suffering $pronoun caused.
+			<<elseif $slaves[$i].pornTypeMalicious < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "self hating">>
+			<<if $slaves[$i].pornTypeSelfHating >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her suffering.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive suffering.
+			<<elseif $slaves[$i].pornTypeSelfHating < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breeder">>
+			<<if $slaves[$i].pornTypeBreeder >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her obsession with having children.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive obsession with having children.
+			<<elseif $slaves[$i].pornTypeBreeder < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "submissive">>
+			<<if $slaves[$i].pornTypeSub >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her submissiveness.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive submissiveness.
+			<<elseif $slaves[$i].pornTypeSub < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "cum">>
+			<<if $slaves[$i].pornTypeCumSlut >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her desire for cum.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive desire for cum.
+			<<elseif $slaves[$i].pornTypeCumSlut < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "buttslut">>
+			<<if $slaves[$i].pornTypeAnal >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her rear.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive rear.
+			<<elseif $slaves[$i].pornTypeAnal < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "humiliating">>
+			<<if $slaves[$i].pornTypeHumiliation >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her frequent humiliation.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive frequent humiliation.
+			<<elseif $slaves[$i].pornTypeHumiliation < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breast">>
+			<<if $slaves[$i].pornTypeBoobs >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her breasts.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive breasts.
+			<<elseif $slaves[$i].pornTypeBoobs < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "dominant">>
+			<<if $slaves[$i].pornTypeDom >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her dominance.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive dominance.
+			<<elseif $slaves[$i].pornTypeDom < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "sadistic">>
+			<<if $slaves[$i].pornTypeSadist >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her sadism.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive sadism.
+			<<elseif $slaves[$i].pornTypeSadist < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "masochistic">>
+			<<if $slaves[$i].pornTypeMasochist >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her masochism.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive masochism.
+			<<elseif $slaves[$i].pornTypeMasochist < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "pregnancy fetish">>
+			<<if $slaves[$i].pornTypePregnancy >= 10000>>
+				<<set $slaves[$i].pornPrestige = 2>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her fondness for pregnancy.">>
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive fondness for pregnancy.
+			<<elseif $slaves[$i].pornTypePregnancy < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<default>>
+			@@.red;No porn fame detected, reseting to "none".@@
+			<<set $slaves[$i].pornPrestige = 0, $slaves[$i].pornPrestigeDesc = 0, $slaves[$i].pornFameType = "none">>
+		<</switch>>
+		
+		<<if _failedStar == 1>>
+			<<set $slaves[$i].pornPrestige = 0, $slaves[$i].pornPrestigeDesc = 0>>
+			@@.red;$pronounCap popularity in $slaves[$i].pornFameType pornography has faded.@@ $pronounCap is once again relatively unknown.
+			<<set $slaves[$i].pornFameType = "none">>
+		<</if>>
+		
+	<</if>>
+	
+	
 	<<if ($slaves[$i].prestige < 3) && ($slaves[$i].pornFame >= 100) && (_oldFame < 100)>>
 		<<set $slaves[$i].prestige = 3>>
 		@@.green;$pronounCap has become world famous for $possessive career in slave pornography!@@ Millions are now intimately familiar with
@@ -1054,95 +1507,11 @@
 		<</if>>
 		<<set $trinkets.push($desc)>>
 		so it is now extremely prestigious to own $object.
-	<<elseif ($slaves[$i].prestige < 2) && ($slaves[$i].pornFame >= 35) && (_oldFame < 35)>>
-	<<set $slaves[$i].prestige = 2>>
-	@@.green;$pronounCap has become famous for $possessive recurring role in slave pornography!@@ Her many fans relish
-	<<if $slaves[$i].fuckdoll > 0>>
-		<<set $slaves[$i].prestigeDesc = "It is famous for her recurring role in slave pornography. Its many fans relish the sight of it being used.">>
-		the sight of it being used,
-	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being raped.">>
-		the sight of her being raped,
-	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
-		the sounds she makes when being throatfucked,
-	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her screams of anal pain.">>
-		her screams of anal pain,
-	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being gagfucked.">>
-		how she struggles when taking a fuck,
-	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her lewd striptease.">>
-		her lewd striptease,
-	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her authentic pleasure.">>
-		her authentic pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her most perverted tendencies.">>
-		her most perverted tendencies,
-	<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
-		her devotion to her partners' pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring in slave pornography. Her many fans relish her willingness to do things not repeated in polite company.">>
-		her willingness to do things not repeated in polite company,
-	<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring in slave pornography. Her many fans relish the sight of her holes stretched to their limits.">>
-		the sight of her holes stretched to their limits,
-	<<elseif $slaves[$i].bellyPreg >= 1500>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her rounded belly and pregnant pussy.">>
-		the sight of her rounded belly and pregnant pussy,
-	<<else>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being fucked.">>
-		the sight of her being fucked,
-	<</if>>
-	so it is now very prestigious to own $object.
-	<<elseif ($slaves[$i].prestige < 1) && ($slaves[$i].pornFame >= 10) && (_oldFame < 10)>>
-	<<set $slaves[$i].prestige = 1>>
-	@@.green;$pronounCap has become well known from slave pornography!@@ Thousands have enjoyed
-	<<if $slaves[$i].fuckdoll > 0>>
-		<<set $slaves[$i].prestigeDesc = "It is well known from slave pornography. Its many fans relish the sight of it being used.">>
-		the sight of it being used,
-	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being raped.">>
-		the sight of her being raped,
-	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
-		the sounds she makes when being throatfucked,
-	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her screams of anal pain.">>
-		her screams of anal pain,
-	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being gagfucked.">>
-		how she struggles when taking a fuck,
-	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her lewd striptease.">>
-		her lewd striptease,
-	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her authentic pleasure.">>
-		her authentic pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her most perverted tendencies.">>
-		her most perverted tendencies,
-	<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her devotion to her partners' pleasure.">>
-		her devotion to her partners' pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her willingness to do things not repeated in polite company.">>
-		her willingness to do things not repeated in polite company,
-	<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her holes stretched to their limits.">>
-		the sight of her holes stretched to their limits,
-	<<elseif $slaves[$i].bellyPreg >= 1500>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her rounded belly and pregnant pussy.">>
-		the sight of her rounded belly and pregnant pussy,
-	<<else>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being fucked.">>
-		the sight of her being fucked,
-	<</if>>
-	so it is now prestigious to own $object.
-	<</if>>
+
+
+
+	
+
 	<<if ($slaves[$i].prestige >= 3)>>
 		Further paid publicity cannot increase $possessive fame, so subsidy of porn featuring $object has stopped.
 		<<set $slaves[$i].pornFameSpending = 0>>
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index 1bb54f4cfdf..c20e6a258dc 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -1217,11 +1217,16 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <</if>>
 <</if>>
 
-<<if  ($activeSlave.devotion < -10) && ($activeSlave.vagina == 0)>>
+<<if ($activeSlave.devotion < -10) && ($activeSlave.vagina == 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Tie her up and take her virginity">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles and secure her struggling, screeching body to the couch next to your desk with her legs spread. She wriggles and protests as you take her virginity. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;Her tight little pussy has been broken in.@@
+			<<if $activeSlave.amp == 1>>
+				You secure her struggling, screeching body to the couch next to your desk with her vagina exposed.
+			<<else>>
+				You cuff her wrists and ankles and secure her struggling, screeching body to the couch next to your desk with her legs spread.
+			<</if>>
+			She wriggles and protests as you take her virginity. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;Her tight little pussy has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1232,7 +1237,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Tie her up and take her virginity">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles and secure her unresisting body to the couch next to your desk with her legs spread. She writhes and moans as you enter her virgin pussy. You might not have even had to restrain her for this, but being tied up and deflowered sends her a message. She's certainly entered your service in a way that colors her impression of you @@.hotpink;with pain@@ and @@.gold;fear.@@ @@.lime;Her tight little pussy has been broken in.@@
+			<<if $activeSlave.amp == 1>>
+				You secure her unresisting body to the couch next to your desk with her vagina exposed.
+			<<else>>
+				You cuff her wrists and ankles and secure her unresisting body to the couch next to your desk with her legs spread.
+			<</if>>
+			She writhes and moans as you enter her virgin pussy. You might not have even had to restrain her for this, but being tied up and deflowered sends her a message. She's certainly entered your service in a way that colors her impression of you @@.hotpink;with pain@@ and @@.gold;fear.@@ @@.lime;Her tight little pussy has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion += 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1246,7 +1256,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Tie her up and rape her virgin ass">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles and secure her struggling, screeching body to the couch next to your desk so that she's straddling the back of the couch with her butt sticking out. She wriggles and protests until she feels the lubricated head of <<if $PC.dick == 1>>your dick<<else>>a strap-on<</if>> pushing against her virgin butthole, at which point she desperately tries to break free. She fails, but she never stops writhing and begging you to take <<if $PC.dick == 1>>your cock<<else>>the phallus<</if>> out of her asshole. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;Her tight little ass has been broken in.@@
+			<<if $activeSlave.amp == 1>>
+				You secure her struggling, screeching body to the couch next to your desk with her butt sticking out.
+			<<else>>
+				You cuff her wrists and ankles and secure her struggling, screeching body to the couch next to your desk so that she's straddling the back of the couch with her butt sticking out.
+			<</if>>
+			She wriggles and protests until she feels the lubricated head of <<if $PC.dick == 1>>your dick<<else>>a strap-on<</if>> pushing against her virgin butthole, at which point she desperately tries to break free. She fails, but she never stops writhing and begging you to take <<if $PC.dick == 1>>your cock<<else>>the phallus<</if>> out of her asshole. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;Her tight little ass has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1257,7 +1272,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Tie her up and break her ass in">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles and secure her unresisting body to the couch next to your desk so that she's straddling the back of the couch with her butt sticking out. She lies obediently still until she feels the lubricated head of your cock pushing against her virgin butthole, at which point she starts in surprise. When the pain of the buttfuck gets to be too much she begs you to use her <<if $activeSlave.dick == 0>>pussy<<else>>mouth<</if>> instead. She gasps and cries as you slowly push your cock all the way up her tight little butt, and in no time you fill her rectum with cum. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with pain@@ and @@.gold;fear.@@ @@.lime;Her tight little ass has been broken in.@@
+			<<if $activeSlave.amp == 1>>
+				You secure her unresisting body to the couch next to your desk with her butt sticking out.
+			<<else>>
+				You cuff her wrists and ankles and secure her unresisting body to the couch next to your desk so that she's straddling the back of the couch with her butt sticking out.
+			<</if>>
+			She lies obediently still until she feels the lubricated head of your cock pushing against her virgin butthole, at which point she starts in surprise. When the pain of the buttfuck gets to be too much she begs you to use her <<if $activeSlave.dick == 0>>pussy<<else>>mouth<</if>> instead. She gasps and cries as you slowly push your cock all the way up her tight little butt, and in no time you fill her rectum with cum. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with pain@@ and @@.gold;fear.@@ @@.lime;Her tight little ass has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
diff --git a/src/uncategorized/ptWorkaround.tw b/src/uncategorized/ptWorkaround.tw
index b692718251c..d1243604395 100644
--- a/src/uncategorized/ptWorkaround.tw
+++ b/src/uncategorized/ptWorkaround.tw
@@ -32,7 +32,12 @@
 		<<set $activeSlave.oralCount += 4, $oralTotal += 4>>
 		<<= BothVCheck(4, 2)>>
 	<<elseif ($activeSlave.fetishKnown == 1) && ($activeSlave.fetishStrength > 60) && ($activeSlave.fetish == "humiliation")>>
-		Since $activeSlave.slaveName has an unusual sexuality, you @@.hotpink;build her devotion to you@@ by indulging her perversions. Since she's an absolute slut for humiliation, you let her whore around inside the special camera room whenever possible. When you're going out and feel like putting on a show, you bring her on a leash and have her service you in public. She comes harder than ever when you push her down on her knees in a crowded public arcology elevator and facefuck her while she masturbates fervently.
+		Since $activeSlave.slaveName has an unusual sexuality, you @@.hotpink;build her devotion to you@@ by indulging her perversions. Since she's an absolute slut for humiliation, you let her whore around inside the special camera room whenever possible. When you're going out and feel like putting on a show, you
+		<<if ($activeSlave.amp != 1)>>
+			bring her on a leash and have her service you in public. She comes harder than ever when you push her down on her knees in a crowded public arcology elevator and facefuck her while she masturbates fervently.
+		<<else>>
+			carry her out and have her service you in public. She comes harder than ever when you push her face to your <<if $PC.dick == 1>>dick<<else>>pussy<</if>> in a crowded public arcology elevator and facefuck her while she tries her hardest to masturbate.
+		<</if>>
 		<<set $activeSlave.oralCount += 8, $oralTotal += 8>>
 	<<elseif ($activeSlave.anus == 3) && ($activeSlave.vagina == 3)>>
 		$activeSlave.slaveName is a stretched-out, well-traveled slut. Some like their holes loose, but most prefer cunts and butts that don't make sloppy noises when fucked. So, you spend some quality care time with her, carefully massaging her abused holes with oils and lotions. She comes, of course, but her pussy and asshole do benefit from the treatment. You allow her to service you with her mouth to avoid spoiling your work right away. Afterward, she <<if ($activeSlave.amp != 1)>>@@.hotpink;hugs you and gives you a kiss@@<<else>>@@.hotpink;gives you a kiss and tries to hug you,@@ but without arms, all she manages is a sort of nuzzle<</if>>.
diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw
index e67ed8de720..9b0947901d8 100644
--- a/src/uncategorized/saPleaseYou.tw
+++ b/src/uncategorized/saPleaseYou.tw
@@ -793,7 +793,7 @@ serves you this week.
 				obediently serving you in the classical way, driving into your womanhood.
 			<<elseif ($slaves[$i].devotion <= 50)>>
 				week obediently serving you by driving into your backdoor.
-			<<elseif $PC.vagina == 1 || $slaves[$i].career == "a breeding bull" || ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetish == "pregnancy")>>
+			<<elseif $PC.vagina == 1 && ($slaves[$i].career == "a breeding bull" || ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetish == "pregnancy"))>>
 				eagerly driving $possessive cock into your pussy, thoroughly enjoying fucking pussy bareback and cumming deep inside.
 			<<elseif $PC.vagina == 1>>
 				serving you in the classical way, warming your bed and lovingly driving $possessive shaft into your womanhood.
-- 
GitLab


From 07858db065dab4ad1eca6e77ae1fb16ca0451f96 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 18 Jul 2018 02:16:22 -0400
Subject: [PATCH 075/189] twineJS resync

---
 devNotes/twine JS.txt | 90 +++++++++++++++++++++++++++++++++----------
 1 file changed, 69 insertions(+), 21 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 20545982b49..1ceb069520c 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -2551,6 +2551,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			nails: "no default setting",
 			hColor: "no default setting",
 			hLength: "no default setting",
+			haircuts: "no default setting",
 			hStyle: "no default setting",
 			pubicHColor: "no default setting",
 			pubicHStyle: "no default setting",
@@ -2631,6 +2632,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			pregSpeed: "no default setting",
 			bellyImplantVol: -1,
 			teeth: "no default setting",
+			label: "no default setting",
 		}
 	};
 	return rule;
@@ -2869,7 +2871,7 @@ window.Height = (function(){
 		"Finnish": 165.3, "French Guianan": 157, "French Polynesian": undefined, "French": 162.5, "Gabonese": 158.4, "Gambian": 157.8, "Georgian": 160.5, "German": 162.8, "Ghanan": 158.5, 
 		"Greek": 165, "Greenlandic": undefined, "Grenadian": undefined, "Guamanian": undefined, "Guatemalan": 147.3, "Guinean": 158.8, "Guyanese": 157.9, "Haitian": 158.6, "Honduran": 152.0, "Hungarian": 164, 
 		"I-Kiribati": undefined, "Icelandic": 168, "Indian": 151.9, "Indonesian": 147, "Iranian": 157.2, "Iraqi": 155.8, "Irish": 163, "Israeli": 166, "Italian": 162.5, "Ivorian": 158.9, 
-		"Jamaican": 160.8, "Japanese": 158, "Jordanian": 158.2, "Kazakh": 159.8, "Kenyan": 159.4, "Kittitian": 156.9, "Korean": 156.15, "Kosovan": undefined, "Kurdish": undefined, "Kuwaiti": 156.1, 
+		"Jamaican": 160.8, "Japanese": 158, "Jordanian": 158.2, "Kazakh": 159.8, "Kenyan": 159.4, "Kittitian": 156.9, "Korean": 156.15, "Kosovan": 165.7, "Kurdish": undefined, "Kuwaiti": 156.1, 
 		"Kyrgyz": 158.6, "Laotian": undefined, "Latvian": 165.7, "Lebanese": 165, "Liberian": 157.3, "Libyan": 160.5, "a Liechtensteiner": 164.3, "Lithuanian": 167.5, "Luxembourgian": 164.8, 
 		"Macedonian": undefined, "Malagasy": 154.3, "Malawian": 155, "Malaysian": 154.7, "Maldivian": undefined, "Malian": 160.4, "Maltese": 159.9, "Marshallese": undefined, "Mauritanian": undefined, 
 		"Mauritian": undefined, "Mexican": 154, "Micronesian": undefined, "Moldovan": 161.2, "Monégasque": undefined, "Mongolian": 157.7, "Montenegrin": 168.4, "Moroccan": 158.5, "Mosotho": 157.6, 
@@ -2895,8 +2897,8 @@ window.Height = (function(){
 		"Egyptian": 170.3, "Emirati": 170.3, "Equatoguinean": undefined, "Eritrean": undefined, "Estonian": 179.1, "Ethiopian": undefined, "Fijian": 170.4, "Filipina": 163.5, "Finnish": 178.9, 
 		"French Guianan": 168, "French Polynesian": undefined, "French": 175.6, "Gabonese": undefined, "Gambian": 168, "Georgian": 172.7, "German": 175.4, "Ghanan": 169.5, "Greek": 177, "Greenlandic": undefined, 
 		"Grenadian": undefined, "Guamanian": undefined, "Guatemalan": 157.5, "Guinean": undefined, "Guyanese": 168.6, "Haitian": undefined, "Honduran": undefined, "Hungarian": 176, "I-Kiribati": undefined, "Icelandic": 181, 
-		"Indian": 164.7, "Indonesian": 158, "Iranian": 170.3, "Iraqi": 165.4, "Irish": 177, "Israeli": 177, "Italian": 176.5, "Ivorian": undefined, "Jamaican": 171.8, "Japanese": 172, "Jordanian": undefined, 
-		"Kazakh": 169, "Kenyan": 170.0, "Kittitian": 164.4, "Korean": 168.15, "Kosovan": undefined, "Kurdish": undefined, "Kuwaiti": 169.2, "Kyrgyz": 170.4, "Laotian": 160.5, "Latvian": 174.2, "Lebanese": 176, 
+		"Indian": 164.7, "Indonesian": 158, "Iranian": 170.3, "Iraqi": 165.4, "Irish": 177, "Israeli": 177, "Italian": 176.5, "Ivorian": 170.1, "Jamaican": 171.8, "Japanese": 172, "Jordanian": undefined, 
+		"Kazakh": 169, "Kenyan": 170.0, "Kittitian": 164.4, "Korean": 168.15, "Kosovan": 179.5, "Kurdish": undefined, "Kuwaiti": 169.2, "Kyrgyz": 170.4, "Laotian": 160.5, "Latvian": 174.2, "Lebanese": 176, 
 		"Liberian": undefined, "Libyan": 171.3, "a Liechtensteiner": 175.4, "Lithuanian": 177.2, "Luxembourgian": 179.9, "Macedonian": undefined, "Malagasy": 161.5, "Malawian": 166, "Malaysian": 166.3, 
 		"Maldivian": undefined, "Malian": 171.3, "Maltese": 169.9, "Marshallese": undefined, "Mauritanian": undefined, "Mauritian": undefined, "Mexican": 167, "Micronesian": undefined, "Moldovan": undefined, 
 		"Monégasque": undefined, "Mongolian": 168.4, "Montenegrin": 183.2, "Moroccan": 172.7, "Mosotho": undefined, "Motswana": undefined, "Mozambican": undefined, "Namibian": undefined, "Nauruan": undefined, 
@@ -10837,17 +10839,6 @@ window.HSM = function() {
 	else if (State.variables.PC.hacking >= 100)
 		return .75;
 	}
-
-/*:: Slave Summary Widgets JS [script]*/
-
-window.clearSummaryCache = function clearSummaryCache(slave) {
-	if (!slave)
-		setup.summaryCache = {};
-	else if (slave instanceof Object && slave.ID !== Infinity && slave.ID !== -Infinity)
-		setup.summaryCache[slave.ID] = undefined;
-	else
-		setup.summaryCache[slave] = undefined;
-};
 	
 /*:: colorModeJS [script]*/
 
@@ -11066,6 +11057,7 @@ window.DefaultRules = (function() {
 		ProcessSmartPiercings(slave, rule);
 		ProcessTattoos(slave, rule);
 		ProcessPorn(slave, rule);
+		ProcessLabel(slave, rule);
 		return r;
 	}
 
@@ -12782,6 +12774,18 @@ window.DefaultRules = (function() {
 			}
 		}
 
+		if (rule.haircuts !== undefined && (rule.haircuts !== "no default setting")) {
+			if (slave.bald != 1) {
+				if (rule.haircuts === 1 && slave.haircuts !== 1) {
+					r += `<br>${slave.slaveName}'s hair will now be maintained at ${lengthToEitherUnit(slave.hLength)} long.`;
+					slave.haircuts = 1;
+				} else if (rule.haircuts === 0 && slave.haircuts !== 0) {
+					r += `<br>${slave.slaveName}'s hair length will no longer be maintained.`;
+					slave.haircuts = 0;
+				}
+			}
+		}
+
 		if (rule.pubicHColor !== undefined && (rule.pubicHColor !== "no default setting")) {
 			if (slave.pubicHStyle != "bald" && slave.pubicHStyle != "hairless") {
 				if ((slave.pubicHColor !== rule.pubicHColor)) {
@@ -13184,6 +13188,13 @@ window.DefaultRules = (function() {
 			}
 		}
 	}
+	
+	function ProcessLabel(slave, rule) {
+		if (rule.label !== "no default setting" && slave.customLabel !== rule.label) {
+			slave.customLabel = rule.label;
+			r += `<br>${slave.slaveName}'s label has been set to ${rule.label}`;
+		}
+	}
 
 	return DefaultRules;
 })();
@@ -14080,6 +14091,7 @@ window.rulesAssistantOptions = (function() {
 			this.appendChild(new AutosurgerySection());
 			this.appendChild(new RegimenSection());
 			this.appendChild(new BehaviourSection());
+			this.appendChild(new OtherSection());
 		}
 
 		render() {
@@ -14150,6 +14162,13 @@ window.rulesAssistantOptions = (function() {
 				this.appendChild(new PornList());
 		}
 	}
+	
+	class OtherSection extends Section {
+		constructor() {
+			super("Other Settings");
+			this.appendChild(new LabelList());
+		}
+	}
 
 	class CosmeticSection extends Section {
 		constructor() {
@@ -14159,6 +14178,7 @@ window.rulesAssistantOptions = (function() {
 			this.appendChild(new MakeupList());
 			this.appendChild(new NailsList());
 			this.appendChild(new HairLengthList());
+			this.appendChild(new HaircutsList());
 			this.appendChild(new HairColourList());
 			this.appendChild(new HairStyleList());
 			this.appendChild(new PubicHairColourList());
@@ -15266,6 +15286,20 @@ window.rulesAssistantOptions = (function() {
 			this.onchange = (value) => current_rule.set.hLength = value;
 		}
 	}
+
+	class HaircutsList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["maintain hair length", 1],
+				["do not maintain hair length", 0]
+			];
+			super("Hair length maintenance", pairs);
+			this.setValue(current_rule.set.haircuts);
+			this.onchange = (value) => current_rule.set.haircuts = value;
+		}
+	}
+
 	class HairColourList extends List {
 		constructor() {
 			const pairs = [
@@ -16307,6 +16341,17 @@ window.rulesAssistantOptions = (function() {
 		}
 	}
 	
+	class LabelList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+			];
+			super("Custom label", items, true);
+			this.setValue(current_rule.set.label);
+			this.onchange = (value) => current_rule.set.label = value;
+		}
+	}
+	
 	return rulesAssistantOptions;
 })();
 
@@ -17559,7 +17604,7 @@ window.SlaveSummaryUncached = (function(){
 				short_race(slave);
 			else if (V.abbreviateRace === 2)
 				long_race(slave);
-			r += `</span>`;
+			r += `</span> `;
 		}
 		if (V.abbreviateNationality === 1)
 			short_nationality(slave);
@@ -17568,7 +17613,7 @@ window.SlaveSummaryUncached = (function(){
 		if (V.abbreviatePhysicals === 1)
 			short_skin(slave);
 		else
-			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span>`;
+			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span> `;
 		if (V.abbreviateGenitalia === 1)
 			short_genitals(slave);
 		else if (V.abbreviateGenitalia === 2)
@@ -17617,14 +17662,14 @@ window.SlaveSummaryUncached = (function(){
 			short_sex_skills(slave);
 			if (slave.combatSkill > 0)
 				r += `C`;
-			r += `</span>`;
+			r += `</span> `;
 			short_prestige(slave);
 		} else if (V.abbreviateSkills === 2) {
 			long_intelligence(slave);
 			long_sex_skills(slave);
 			if (slave.combatSkill > 0)
 				r += `Trained fighter.`;
-			r += `</span>`;
+			r += `</span> `;
 			long_prestige(slave);
 		}
 		if (V.abbreviateMental === 1) {
@@ -18376,7 +18421,7 @@ window.SlaveSummaryUncached = (function(){
 				} else if (slave.pregType >= 20) {
 					r += `a brood of offspring.`;
 				} else if (slave.pregType >= 10) {
-					r += `slave.pregType babies.`;
+					r += `${slave.pregType} babies.`;
 				} else if (slave.pregType === 9) {
 					r += `nonuplets.`;
 				} else if (slave.pregType === 8) {
@@ -20124,7 +20169,7 @@ window.SlaveSummaryUncached = (function(){
 		let _SSkills = (slave.analSkill + slave.oralSkill);
 		r += `<span class="aquamarine">`;
 		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
-			r += `Masterful Sex Slave.`;
+			r += `Masterful Sex Slave. `;
 		} else {
 			_SSkills += slave.vaginalSkill;
 			if (_SSkills > 180) {
@@ -20138,6 +20183,7 @@ window.SlaveSummaryUncached = (function(){
 			} else {
 				r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
 			}
+			r += " ";
 			if (slave.whoreSkill >= 100) {
 				r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 			} else if (slave.whoreSkill >= 60) {
@@ -20147,6 +20193,7 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.whoreSkill >= 10) {
 				r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 			}
+			r += " ";
 			if (slave.entertainSkill >= 100) {
 				r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 			} else if (slave.entertainSkill >= 60) {
@@ -20156,8 +20203,8 @@ window.SlaveSummaryUncached = (function(){
 			} else if (slave.entertainSkill >= 10) {
 				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 			}
+			r += " ";
 		}
-		r += " ";
 	}
 	
 	function long_prestige(slave) {
@@ -21963,3 +22010,4 @@ window.SlaveSummaryUncached = (function(){
 	return SlaveSummaryUncached;
 })();
 
+
-- 
GitLab


From 65ce28e6db6fe64a5999eecfaa9b1198eff6c01a Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 18 Jul 2018 02:25:18 -0400
Subject: [PATCH 076/189] Fixes

---
 devNotes/twine JS.txt           | 2 ++
 src/js/assayJS.tw               | 1 +
 src/js/rulesAssistantOptions.tw | 1 +
 src/js/slaveSummaryWidgets.tw   | 3 ++-
 src/utility/miscWidgets.tw      | 2 --
 5 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index c71ca5ca4f1..435ba18c211 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -7776,6 +7776,7 @@ window.MenialPopCap = function MenialPopCap () {
 			r += "You don't have enough room for all your menial bioreactors and are obliged to sell some.";
 		}
 	}
+	V.PopCap = popCap;
 	return r;
 };
 
@@ -14988,6 +14989,7 @@ window.rulesAssistantOptions = (function() {
 	class SmartEnergyList extends List {
 		constructor() {
 			const pairs = [
+				["No default setting", "no default setting"],
 				["Nympho", 100],
 				["Sex Addict", 85],
 				["Powerful", 65],
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index 76303be830a..0a1a30e2d2f 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -1416,5 +1416,6 @@ window.MenialPopCap = function MenialPopCap () {
 			r += "You don't have enough room for all your menial bioreactors and are obliged to sell some.";
 		}
 	}
+	V.PopCap = popCap;
 	return r;
 };
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index e42f161bc1d..06f2f42da16 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -1876,6 +1876,7 @@ window.rulesAssistantOptions = (function() {
 	class SmartEnergyList extends List {
 		constructor() {
 			const pairs = [
+				["No default setting", "no default setting"],
 				["Nympho", 100],
 				["Sex Addict", 85],
 				["Powerful", 65],
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index d8d0b158f06..cca08a6b281 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -101,6 +101,7 @@ window.SlaveSummaryUncached = (function(){
 			short_implants(slave);
 			short_lactation(slave);
 			short_mods(slave);
+			r += `</span>`;
 		} else if (V.abbreviatePhysicals === 2) {
 			long_age(slave);
 			long_face(slave);
@@ -2144,7 +2145,7 @@ window.SlaveSummaryUncached = (function(){
 		if (slave.brand !== 0) {
 			r += `Br`;
 		}
-		r += `</span> `;
+		r += " ";
 	}
 	
 	function long_age(slave) {
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index af245756fe0..59083430724 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -1246,9 +1246,7 @@
  $args[0]: Slave.
 %/
 <<widget "AddSlave">>
-<<silently>> /* making absolutely sure the call to DefaultRules() doesn't print anything */
 	<<run newSlave($args[0])>>
-<</silently>>
 <</widget>>
 
 <<widget "Master">><<if def $args[0]>><<run Enunciate($args[0])>><<elseif ndef $titleEnunciate>><<run Enunciate($activeSlave)>><</if>>$titleEnunciate<</widget>>
-- 
GitLab


From 469b048342bd502b708f63542ded00fad576f6ee Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 18 Jul 2018 02:50:56 -0400
Subject: [PATCH 077/189] Fix

---
 src/js/slaveSummaryWidgets.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index cca08a6b281..23658ae984b 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -170,7 +170,7 @@ window.SlaveSummaryUncached = (function(){
 			long_behavior_quirk(slave);
 			long_sex_quirk(slave);
 		}
-		if (slave.customLabel !== "")
+		if (slave.customLabel != 0)
 			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
 		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
 			r += `<br>`;
-- 
GitLab


From de00efccb7c49d7340821f80e0a1058ff7538234 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 18 Jul 2018 02:56:39 -0400
Subject: [PATCH 078/189] More sensible fix

---
 src/js/slaveSummaryWidgets.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 23658ae984b..470d2f23161 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -170,7 +170,7 @@ window.SlaveSummaryUncached = (function(){
 			long_behavior_quirk(slave);
 			long_sex_quirk(slave);
 		}
-		if (slave.customLabel != 0)
+		if (slave.customLabel != "")
 			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
 		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
 			r += `<br>`;
-- 
GitLab


From a0f5be63ccccd1e22a7f2abe8d5bc10a699d8ff7 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 18 Jul 2018 02:58:37 -0400
Subject: [PATCH 079/189] update devNotes

---
 devNotes/twine JS.txt | 4468 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 4468 insertions(+)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 435ba18c211..79d93f7c99e 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -10781,6 +10781,4474 @@ window.clearSummaryCache = function clearSummaryCache(slave) {
 	else
 		setup.summaryCache[slave] = undefined;
 };
+
+window.SlaveSummary = function SlaveSummary(slave) {
+	const V = State.variables;
+	if(V.useSummaryCache) {
+		if (setup.summaryCache[slave.ID] === undefined)
+			setup.summaryCache[slave.ID] = SlaveSummaryUncached(slave);
+		//this.output.appendChild(setup.summaryCache[State.temporary.Slave.ID].cloneNode(true))
+		return setup.summaryCache[slave.ID];
+	} else return SlaveSummaryUncached(slave);
+};
+
+window.SlaveSummaryUncached = (function(){
+	"use strict";
+	let V, r;
+	
+	function SlaveSummaryUncached(slave) {
+		V = State.variables;
+		r = "";
+		if (V.abbreviateDevotion === 1)
+			short_devotion(slave);
+		else if (V.abbreviateDevotion === 2)
+			long_devotion(slave);
+		if (slave.fuckdoll === 0) {
+			if (V.abbreviateRules === 1)
+				short_rules(slave);
+			else if (V.abbreviateRules === 2)
+				long_rules(slave);
+		}
+		if (slave.tired !== 0)
+			r += `Tired.`;
+		if (V.abbreviateDiet === 1)
+			short_weight(slave);
+		else if (V.abbreviateDiet === 2)
+			long_weight(slave);
+		if (V.abbreviateDiet === 1)
+			short_diet(slave);
+		else if (V.abbreviateDiet === 2)
+			long_diet(slave);
+		if (V.abbreviateHealth === 1)
+			short_health(slave);
+		else if (V.abbreviateHealth === 2)
+			long_health(slave);
+		if (V.abbreviateDrugs === 1)
+			short_drugs(slave);
+		else if (V.abbreviateDrugs === 2)
+			long_drugs(slave);
+		if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
+			r += `<br>`;
+			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		V.desc = SlaveTitle(slave);
+		V.seed = V.desc.substring(0, 1);
+		V.seed = V.seed.toUpperCase();
+		V.desc = V.seed + V.desc.substring(1);
+		r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong> `;
+		if (V.seeRace === 1) {
+			r += `<span class="tan">`;
+			if (V.abbreviateRace === 1)
+				short_race(slave);
+			else if (V.abbreviateRace === 2)
+				long_race(slave);
+			r += `</span> `;
+		}
+		if (V.abbreviateNationality === 1)
+			short_nationality(slave);
+		else if (V.abbreviateNationality === 2)
+			long_nationality(slave);
+		if (V.abbreviatePhysicals === 1)
+			short_skin(slave);
+		else
+			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span> `;
+		if (V.abbreviateGenitalia === 1)
+			short_genitals(slave);
+		else if (V.abbreviateGenitalia === 2)
+			long_genitals(slave);
+		if (V.abbreviatePhysicals === 1) {
+			short_age(slave);
+			short_face(slave);
+			short_eyes(slave);
+			if (slave.markings !== "none")
+				r += `Markings`;
+			short_lips(slave);
+			short_teeth(slave);
+			short_muscles(slave);
+			short_limbs(slave);
+			short_voice(slave);
+			short_tits_ass(slave);
+			short_hips(slave);
+			short_waist(slave);
+			short_implants(slave);
+			short_lactation(slave);
+			short_mods(slave);
+			r += `</span>`;
+		} else if (V.abbreviatePhysicals === 2) {
+			long_age(slave);
+			long_face(slave);
+			long_eyes(slave);
+			long_lips(slave);
+			long_teeth(slave);
+			long_muscles(slave);
+			long_limbs(slave);
+			long_voice(slave);
+			long_tits_ass(slave);
+			long_hips(slave);
+			long_waist(slave);
+			long_implants(slave);
+			long_lactation(slave);
+			long_mods(slave);
+			if (slave.brand !== 0)
+				r += `Branded.`;
+			r += `</span>`;
+		}
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		if (V.abbreviateSkills === 1) {
+			short_intelligence(slave);
+			short_sex_skills(slave);
+			if (slave.combatSkill > 0)
+				r += `C`;
+			r += `</span> `;
+			short_prestige(slave);
+		} else if (V.abbreviateSkills === 2) {
+			long_intelligence(slave);
+			long_sex_skills(slave);
+			if (slave.combatSkill > 0)
+				r += `Trained fighter.`;
+			r += `</span> `;
+			long_prestige(slave);
+		}
+		if (V.abbreviateMental === 1) {
+			if (slave.fetish !== "mindbroken") {
+				if (slave.fetishKnown === 1)
+					short_fetish(slave);
+				if (slave.attrKnown === 1)
+					short_attraction(slave);
+			}
+			if (slave.clitPiercing === 3) {
+				short_smart_fetish(slave);
+				short_smart_attraction(slave);
+			}
+			short_behavior_flaw(slave);
+			short_sex_flaw(slave);
+			short_behavior_quirk(slave);
+			short_sex_quirk(slave);
+		} else if (V.abbreviateMental === 2) {
+			if (slave.fetish !== "mindbroken") {
+				if (slave.fetishKnown === 1)
+					long_fetish(slave);
+				if (slave.attrKnown === 1)
+					long_attraction(slave);
+			}
+			if (slave.clitPiercing === 3) {
+				long_smart_fetish(slave);
+				long_smart_attraction(slave);
+			}
+			long_behavior_flaw(slave);
+			long_sex_flaw(slave);
+			long_behavior_quirk(slave);
+			long_sex_quirk(slave);
+		}
+		if (slave.customLabel != "")
+			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
+		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
+			r += `<br>`;
+			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		if (V.abbreviateMental === 1) {
+			r += `<span class="lightgreen">`;
+			if (V.familyTesting === 1)
+				short_extended_family(slave);
+			else
+				short_legacy_family(slave);
+			r += `</span>`;
+			short_rival(slave);
+		} else if (V.abbreviateMental === 2) {
+			if (V.familyTesting === 1)
+				long_extended_family(slave);
+			else
+				long_legacy_family(slave);
+			long_rival(slave);
+		}
+		if (slave.fuckdoll === 0) {
+			if (V.abbreviateClothes === 2) {
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+				if (slave.choosesOwnClothes === 1)
+					r += `Dressing herself. `;
+				long_clothes(slave);
+				long_collar(slave);
+				long_belly(slave);
+				if (slave.amp !== 1)
+					long_legs(slave);
+				if (canWalk(slave))
+					long_shoes(slave);
+				long_vaginal_acc(slave);
+				long_dick_acc(slave);
+				long_buttplug(slave);
+			}
+		}
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		rules_assistant(slave);
+		if (V.abbreviateOrigins === 2 && slave.origin !== 0)
+			origins(slave);
+		return r;
+	}
+	
+	function short_devotion(slave) {
+		if (slave.fetish === "mindbroken") {
+			r += `<span class="red">MB</span>`;
+		} else if (slave.devotion < -95) {
+			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion < -50) {
+			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion < -20) {
+			r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion <= 20) {
+			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion <= 50) {
+			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion <= 95) {
+			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else {
+			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		}
+		r += " ";
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.trust < -95) {
+			r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust < -50) {
+			r += `<span class="goldenrod">Terr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust < -20) {
+			r += `<span class="gold">Fright${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust <= 20) {
+			r += `<span class="yellow">Fear${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust <= 50) {
+			if (slave.devotion < -20) {
+				r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="mediumaquamarine">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		} else if (slave.trust < 95) {
+			if (slave.devotion < -20) {
+				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="mediumseagreen">Trust${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		} else {
+			if (slave.devotion < -20) {
+				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_devotion(slave) {
+		if (slave.fetish === "mindbroken") {
+			r += `<span class="red">Mindbroken.</span>`;
+		} else if (slave.devotion < -95) {
+			r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion < -50) {
+			r += `<span class="darkviolet">Hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion < -20) {
+			r += `<span class="mediumorchid">Resistant${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 20) {
+			r += `<span class="yellow">Ambivalent${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 50) {
+			r += `<span class="hotpink">Accepting${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 95) {
+			r += `<span class="deeppink">Devoted${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else {
+			r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		}
+		r += " ";
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.trust < -95) {
+			r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust < -50) {
+			r += `<span class="goldenrod">Terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust < -20) {
+			r += `<span class="gold">Frightened${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust <= 20) {
+			r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust <= 50) {
+			if (slave.devotion < -20) {
+				r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		} else if (slave.trust < 95) {
+			if (slave.devotion < -20) {
+				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		} else {
+			if (slave.devotion < -20) {
+				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		}
+		r += " ";
+	}
+	
+	function short_rules(slave) {
+		switch (slave.livingRules) {
+			case "luxurious":
+				r += `<strong>LS:Lux</strong>`;
+				break;
+			case "normal":
+				r += `<strong>LS:Nor</strong>`;
+				break;
+			default:
+				r += `<strong>LS:Spa</strong>`;
+				break;
+		}
+		r += " ";
+		if (canTalk(slave)) {
+			switch (slave.speechRules) {
+				case "permissive":
+					r += `<strong>SpR:P</strong>`;
+					break;
+				case "accent elimination":
+					r += `<strong>SpR:NoAcc</strong>`;
+					break;
+				case "language lessons":
+					r += `<strong>SpR:LL</strong>`;
+					break;
+				default:
+					r += `<strong>SpR:R</strong>`;
+					break;
+			}
+			r += " ";
+		}
+		switch (slave.relationshipRules) {
+			case "permissive":
+				r += `<strong>ReR:P</strong>`;
+				break;
+			case "just friends":
+				r += `<strong>ReR:Fr</strong>`;
+				break;
+			default:
+				r += `<strong>ReR:R</strong>`;
+				break;
+		}
+		r += " ";
+		switch (slave.standardPunishment) {
+			case "confinement":
+				r += `<strong>Pun:Conf</strong>`;
+				break;
+			case "whipping":
+				r += `<strong>Pun:Whip</strong>`;
+				break;
+			case "chastity":
+				r += `<strong>Pun:Chas</strong>`;
+				break;
+			default:
+				r += `<strong>Pun:Situ</strong>`;
+				break;
+		}
+		r += " ";
+		switch (slave.standardReward) {
+			case "relaxation":
+				r += `<strong>Rew:Relx</strong>`;
+				break;
+			case "drugs":
+				r += `<strong>Rew:Drug</strong>`;
+				break;
+			case "orgasm":
+				r += `<strong>Rew:Orga</strong>`;
+				break;
+			default:
+				r += `<strong>Rew:Situ</strong>`;
+				break;
+		}
+		r += " ";
+		switch (slave.releaseRules) {
+			case "permissive":
+				r += `<strong>MaR:P</strong>`;
+				break;
+			case "sapphic":
+				r += `<strong>MaR:S</strong>`;
+				break;
+			case "masturbation":
+				r += `<strong>MaR:M</strong>`;
+				break;
+			default:
+				r += `<strong>MaR:R</strong>`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_rules(slave) {
+		r += `Living standard: ${slave.livingRules}. `;
+		if (canTalk(slave)) {
+			r += `Speech rules: ${slave.speechRules}. `;
+		}
+		r += `Relationship rules: ${slave.relationshipRules}. `;
+		r += `Typical punishment: ${slave.standardPunishment}. `;
+		r += `Typical reward: ${slave.standardReward}. `;
+		r += `Release rules: ${slave.releaseRules}. `;
+	}
+	
+	function short_weight(slave) {
+		if (slave.weight < -95) {
+			r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		} else if (slave.weight < -30) {
+			if (slave.hips < -1) {
+				r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W--${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight < -10) {
+			r += `<strong>W-${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 10) {
+			r += `<strong>W${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 30) {
+			r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 95) {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 130) {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 160) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 190) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_weight(slave) {
+		if (slave.weight < -95) {
+			r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		} else if (slave.weight < -30) {
+			if (slave.hips < -1) {
+				r += `Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight < -10) {
+			r += `Thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 10) {
+			r += `Trim${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 30) {
+			r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 95) {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 130) {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 160) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 190) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		}
+		r += " ";
+
+	}
+	
+	function short_diet(slave) {
+		r += `<span class="teal">`;
+		switch (slave.diet) {
+			case "restricted":
+				r += `<strong>Di:W-</strong>`;
+				break;
+			case "fattening":
+				r += `<strong>Di:W+</strong>`;
+				break;
+			case "XX":
+				r += `<strong>Di:XX+</strong>`;
+				break;
+			case "XY":
+				r += `<strong>Di:XY+</strong>`;
+				break;
+			case "XXY":
+				r += `<strong>Di:XXY+</strong>`;
+				break;
+			case "muscle building":
+				r += `<strong>Di:M+</strong>`;
+				break;
+			case "slimming":
+				r += `<strong>Di:M-</strong>`;
+				break;
+			case "cum production":
+				r += `<strong>Di:C+</strong>`;
+				break;
+			case "cleansing":
+				r += `<strong>Di:H+</strong>`;
+				break;
+			case "fertility":
+				r += `<strong>Di:F+</strong>`;
+				break;
+		}
+		r += `</span> `;
+		r += `<span class="cyan">`;
+		if (slave.dietCum === 2) {
+			r += `<strong>Cum++</strong>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
+			r += `<strong>Cum+</strong>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
+			r += `<strong>Cum+ Milk+</strong>`;
+		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
+			r += `<strong>Milk+</strong>`;
+		} else if ((slave.dietMilk === 2)) {
+			r += `<strong>Milk++</strong>`;
+		}
+		r += `</span> `;
+	}
+	
+	function long_diet(slave) {
+		r += `<span class="teal">`;
+		switch (slave.diet) {
+			case "restricted":
+				r += `Dieting.`;
+				break;
+			case "fattening":
+				r += `Gaining weight.`;
+				break;
+			case "XX":
+				r += `Estrogen rich.`;
+				break;
+			case "XY":
+				r += `Testosterone rich.`;
+				break;
+			case "XXY":
+				r += `Futanari mix.`;
+				break;
+			case "muscle building":
+				r += `Pumping iron.`;
+				break;
+			case "slimming":
+				r += `Slimming down.`;
+				break;
+			case "cum production":
+				r += `Cum production.`;
+				break;
+			case "cleansing":
+				r += `Cleansing.`;
+				break;
+			case "fertility":
+				r += `Fertility.`;
+				break;
+		}
+		r += `</span> `;
+		if (slave.dietCum === 2) {
+			r += `Diet Base: <span class="cyan">Cum Based.</span>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
+			r += `Diet Base: <span class="cyan">Cum Added.</span>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
+			r += `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
+		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
+			r += `Diet Base: <span class="cyan">Milk Added.</span>`;
+		} else if ((slave.dietMilk === 2)) {
+			r += `Diet Base: <span class="cyan">Milk Based.</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_health(slave) {
+		if (slave.health < -20) {
+			r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		} else if (slave.health <= 20) {
+			r += `<strong><span class="yellow">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		} else if (slave.health > 20) {
+			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		}
+		r += " ";
+	}
+	
+	function long_health(slave) {
+		if (slave.health < -90) {
+			r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health < -50) {
+			r += `<span class="red">Extremely unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health < -20) {
+			r += `<span class="red">Unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 20) {
+			r += `<span class="yellow">Healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 50) {
+			r += `<span class="green">Very healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 90) {
+			r += `<span class="green">Extremely healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else {
+			r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_drugs(slave) {
+		r += `<span class="tan">`;
+		switch (slave.drugs) {
+			case "breast injections":
+				r += `<strong>Dr:Boobs+</strong>`;
+				break;
+			case "intensive breast injections":
+				r += `<strong>Dr:Boobs++</strong>`;
+				break;
+			case "hyper breast injections":
+				r += `<strong>Dr:Boobs+++</strong>`;
+				break;
+			case "butt injections":
+				r += `<strong>Dr:Butt+</strong>`;
+				break;
+			case "intensive butt injections":
+				r += `<strong>Dr:Butt++</strong>`;
+				break;
+			case "hyper butt injections":
+				r += `<strong>Dr:Butt+++</strong>`;
+				break;
+			case "lip injections":
+				r += `<strong>Dr:Lip+</strong>`;
+				break;
+			case "fertility drugs":
+				r += `<strong>Dr:Fert+</strong>`;
+				break;
+			case "super fertility drugs":
+				r += `<strong>Dr:Fert++</strong>`;
+				break;
+			case "penis enhancement":
+				r += `<strong>Dr:Dick+</strong>`;
+				break;
+			case "intensive penis enhancement":
+				r += `<strong>Dr:Dick++</strong>`;
+				break;
+			case "hyper penis enhancement":
+				r += `<strong>Dr:Dick+++</strong>`;
+				break;
+			case "testicle enhancement":
+				r += `<strong>Dr:Balls+</strong>`;
+				break;
+			case "intensive testicle enhancement":
+				r += `<strong>Dr:Balls++</strong>`;
+				break;
+			case "hyper testicle enhancement":
+				r += `<strong>Dr:Balls+++</strong>`;
+				break;
+			case "psychosuppressants":
+				r += `<strong>Dr:Psych</strong>`;
+				break;
+			case "steroids":
+				r += `<strong>Dr:Ster</strong>`;
+				break;
+			case "female hormone injections":
+				r += `<strong>Dr:HormXX++</strong>`;
+				break;
+			case "male hormone injections":
+				r += `<strong>Dr:HormXY++</strong>`;
+				break;
+			case "hormone enhancers":
+				r += `<strong>Dr:Horm+</strong>`;
+				break;
+			case "hormone blockers":
+				r += `<strong>Dr:Horm-</strong>`;
+				break;
+			case "anti-aging cream":
+				r += `<strong>Dr:Age-</strong>`;
+				break;
+			case "appetite suppressors":
+				r += `<strong>Dr:ApSup</strong>`;
+				break;
+			case "penis atrophiers":
+				r += `<strong>Dr:Dick-</strong>`;
+				break;
+			case "testicle atrophiers":
+				r += `<strong>Dr:Balls-</strong>`;
+				break;
+			case "clitoris atrophiers":
+				r += `<strong>Dr:Clit-</strong>`;
+				break;
+			case "labia atrophiers":
+				r += `<strong>Dr:Labia-</strong>`;
+				break;
+			case "nipple atrophiers":
+				r += `<strong>Dr:Nipple-</strong>`;
+				break;
+			case "lip atrophiers":
+				r += `<strong>Dr:Lip-</strong>`;
+				break;
+			case "breast redistributors":
+				r += `<strong>Dr:Breast-</strong>`;
+				break;
+			case "butt redistributors":
+				r += `<strong>Dr:Butt-</strong>`;
+				break;
+			case "sag-B-gone":
+				r += `<strong>Dr:AntiSag</strong>`;
+				break;
+			case "growth stimulants":
+				r += `<strong>Dr:groStim</strong>`;
+				break;
+		}
+		r += `</span> `;
+		r += `<span class="lightgreen">`;
+		if (slave.curatives === 2) {
+			r += `<strong>Cura</strong>`;
+		} else if (slave.curatives === 1) {
+			r += `<strong>Prev</strong>`;
+		}
+		r += `</span> `;
+		if (slave.aphrodisiacs !== 0) {
+			r += `<span class="lightblue">`;
+			if (slave.aphrodisiacs === 1) {
+				r += `<strong>Aph</strong>`;
+			} else if (slave.aphrodisiacs === 2) {
+				r += `<strong>Aph++</strong>`;
+			} else {
+				r += `<strong>Anaph</strong>`;
+			}
+			r += `</span> `;
+		}
+		if (slave.addict !== 0) {
+			r += `<span class="cyan">Add</span>`;
+		}
+		r += `<span class="lightsalmon">`;
+		if (slave.hormones > 1) {
+			r += `<strong>Ho:F+</strong>`;
+		} else if (slave.hormones > 0) {
+			r += `<strong>Ho:F</strong>`;
+		} else if (slave.hormones < -1) {
+			r += `<strong>Ho:M+</strong>`;
+		} else if (slave.hormones < 0) {
+			r += `<strong>Ho:M</strong>`;
+		}
+		r += `</span> `;
+		r += `<span class="mediumseagreen">`;
+		if ((slave.bellyImplant > -1)) {
+			r += `<strong>Belly Imp</strong>`;
+		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
+			r += `<strong>Barr</strong>`;
+		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Prepub</strong>`;
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Meno</strong>`;
+		} else if (slave.pregWeek < 0) {
+			r += `<strong>Postpartum</strong>`;
+		} else if (slave.preg === -1) {
+			r += `<strong>CC</strong>`;
+		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Fert+</strong>`;
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
+			r += `<strong>Preg?</strong>`;
+		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
+			r += `<strong>Perm preg</strong>`;
+		} else if (slave.pregKnown === 1) {
+			r += `<strong>${slave.pregWeek} wks preg</strong>`;
+		}
+		r += `</span> `;
+		if (slave.induce === 1) {
+			r += `<span class="orange"><strong>Early Labor</strong></span>`;
+		}
+		if (slave.pubertyXY === 0 && slave.balls > 0) {
+			r += `<strong>Prepub balls</strong>`;
+		}
+		if (slave.balls > 0 && slave.vasectomy === 1) {
+			r += `<strong>Vasect</strong>`;
+		}
+		r += `<span class="springgreen">`;
+		if (slave.inflation === 3) {
+			r += `<strong>8 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.inflation === 2) {
+			r += `<strong>4 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.inflation === 1) {
+			r += `<strong>2 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.bellyFluid > 0) {
+			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
+		}
+		r += `</span> `;
+	}
+	
+	function long_drugs(slave) {
+		if ((slave.drugs !== "no drugs") && (slave.drugs !== "none")) {
+			r += `<span class="tan">On ${slave.drugs}.</span> `;
+		}
+		r += `<span class="lightgreen">`;
+		if (slave.curatives === 2) {
+			r += `On curatives.`;
+		} else if (slave.curatives === 1) {
+			r += `On preventatives.`;
+		}
+		r += `</span> `;
+		r += `<span class="lightblue">`;
+		if (slave.aphrodisiacs > 0) {
+			r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
+		} else if (slave.aphrodisiacs === -1) {
+			r += `On anaphrodisiacs.`;
+		}
+		r += `</span> `;
+		if (slave.addict !== 0) {
+			r += `<span class="cyan">Addict.</span>`;
+		}
+		r += `<span class="lightsalmon">`;
+		if (slave.hormones > 1) {
+			r += `Heavy female hormones.`;
+		} else if (slave.hormones > 0) {
+			r += `Female hormones.`;
+		} else if (slave.hormones < -1) {
+			r += `Heavy male hormones.`;
+		} else if (slave.hormones < 0) {
+			r += `Male hormones.`;
+		}
+		r += `</span> `;
+		r += `<span class="mediumseagreen">`;
+		if ((slave.bellyImplant > -1)) {
+			r += `Belly Implant.`;
+		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
+			r += `Barren.`;
+		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Not ovulating yet.`;
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Menopausal.`;
+		} else if (slave.pregWeek < 0) {
+			r += `Postpartum.`;
+		} else if (slave.preg === -1) {
+			r += `On contraceptives.`;
+		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Fertile.`;
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
+			r += `May be pregnant.`;
+		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
+			r += `Permanently pregnant.`;
+		} else if (slave.pregKnown === 1) {
+			if (slave.pregType < 2 || slave.broodmother > 0) {
+				r += `${slave.pregWeek} weeks pregnant.`;
+			} else {
+				r += `${slave.pregWeek} weeks pregnant with `;
+				if (slave.pregType >= 40) {
+					r += `a tremendous brood of offspring.`;
+				} else if (slave.pregType >= 20) {
+					r += `a brood of offspring.`;
+				} else if (slave.pregType >= 10) {
+					r += `${slave.pregType} babies.`;
+				} else if (slave.pregType === 9) {
+					r += `nonuplets.`;
+				} else if (slave.pregType === 8) {
+					r += `octuplets.`;
+				} else if (slave.pregType === 7) {
+					r += `septuplets.`;
+				} else if (slave.pregType === 6) {
+					r += `sextuplets.`;
+				} else if (slave.pregType === 5) {
+					r += `quintuplets.`;
+				} else if (slave.pregType === 4) {
+					r += `quadruplets.`;
+				} else if (slave.pregType === 3) {
+					r += `triplets.`;
+				} else {
+					r += `twins.`;
+				}
+			}
+		}
+		r += `</span> `;
+		if (slave.induce === 1) {
+			r += `<span class="orange">Showing signs of early labor.</span>`;
+		}
+		if (slave.pubertyXY === 0 && slave.balls > 0) {
+			r += `Has not had first ejaculation.`;
+		}
+		if (slave.balls > 0 && slave.vasectomy === 1) {
+			r += `Vasectomy.`;
+		}
+		r += `<span class="springgreen">`;
+		if (slave.inflation === 3) {
+			r += `Filled with 8 liters of ${slave.inflationType}.`;
+		} else if (slave.inflation === 2) {
+			r += `Filled with 4 liters of ${slave.inflationType}.`;
+		} else if (slave.inflation === 1) {
+			r += `Filled with 2 liters of ${slave.inflationType}.`;
+		} else if (slave.bellyFluid > 0) {
+			r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
+		}
+		r += `</span> `;
+	}
+	
+	function long_race(slave) {
+		switch (slave.race) {
+			case "white":
+				r += `Caucasian.`;
+				break;
+			case "asian":
+				r += `Asian.`;
+				break;
+			case "indo-aryan":
+				r += `Indo-aryan.`;
+				break;
+			case "latina":
+				r += `Latina.`;
+				break;
+			case "middle eastern":
+				r += `Middle Eastern.`;
+				break;
+			case "black":
+				r += `Black.`;
+				break;
+			case "pacific islander":
+				r += `Pacific Islander.`;
+				break;
+			case "malay":
+				r += `Malay.`;
+				break;
+			case "amerindian":
+				r += `Amerindian.`;
+				break;
+			case "semitic":
+				r += `Semitic.`;
+				break;
+			case "southern european":
+				r += `Southern European.`;
+				break;
+			case "mixed race":
+				r += `Mixed race.`;
+				break;
+			default:
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function short_race(slave) {
+		switch (slave.race) {
+			case "white":
+				r += `C`;
+				break;
+			case "asian":
+				r += `A`;
+				break;
+			case "indo-aryan":
+				r += `I`;
+				break;
+			case "latina":
+				r += `L`;
+				break;
+			case "middle eastern":
+				r += `ME`;
+				break;
+			case "black":
+				r += `B`;
+				break;
+			case "pacific islander":
+				r += `PI`;
+				break;
+			case "malay":
+				r += `M`;
+				break;
+			case "amerindian":
+				r += `AI`;
+				break;
+			case "semitic":
+				r += `S`;
+				break;
+			case "southern european":
+				r += `SE`;
+				break;
+			case "mixed race":
+				r += `MR`;
+				break;
+			default:
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function short_nationality(slave) {
+		r += `<span class="tan">`;
+		switch (slave.nationality) {
+			case "Afghan":
+				r += `Afg`;
+				break;
+			case "Albanian":
+				r += `Alb`;
+				break;
+			case "Algerian":
+				r += `Alg`;
+				break;
+			case "American":
+				r += `USA`;
+				break;
+			case "Andorran":
+				r += `And`;
+				break;
+			case "Angolan":
+				r += `Ang`;
+				break;
+			case "Antiguan":
+				r += `AB`;
+				break;
+			case "Argentinian":
+				r += `Arg`;
+				break;
+			case "Armenian":
+				r += `Arm`;
+				break;
+			case "Aruban":
+				r += `Aru`;
+				break;
+			case "Australian":
+				r += `Aus`;
+				break;
+			case "Austrian":
+				r += `Aut`;
+				break;
+			case "Azerbaijani":
+				r += `Aze`;
+				break;
+			case "Bahamian":
+				r += `Bah`;
+				break;
+			case "Bahraini":
+				r += `Bah`;
+				break;
+			case "Bangladeshi":
+				r += `Bgd`;
+				break;
+			case "Barbadian":
+				r += `Bar`;
+				break;
+			case "Belarusian":
+				r += `Ber`;
+				break;
+			case "Belgian":
+				r += `Bel`;
+				break;
+			case "Belizean":
+				r += `Blz`;
+				break;
+			case "Beninese":
+				r += `Ben`;
+				break;
+			case "Bermudian":
+				r += `Bmd`;
+				break;
+			case "Bhutanese":
+				r += `Bhu`;
+				break;
+			case "Bissau-Guinean":
+				r += `GB`;
+				break;
+			case "Bolivian":
+				r += `Bol`;
+				break;
+			case "Bosnian":
+				r += `Bos`;
+				break;
+			case "Brazilian":
+				r += `Bra`;
+				break;
+			case "British":
+				r += `UK`;
+				break;
+			case "Bruneian":
+				r += `Bru`;
+				break;
+			case "Bulgarian":
+				r += `Bul`;
+				break;
+			case "Burkinabé":
+				r += `BF`;
+				break;
+			case "Burmese":
+				r += `Bur`;
+				break;
+			case "Burundian":
+				r += `Bnd`;
+				break;
+			case "Cambodian":
+				r += `Kam`;
+				break;
+			case "Cameroonian":
+				r += `Cam`;
+				break;
+			case "Canadian":
+				r += `Can`;
+				break;
+			case "Cape Verdean":
+				r += `CV`;
+				break;
+			case "Catalan":
+				r += `Cat`;
+				break;
+			case "Central African":
+				r += `CAR`;
+				break;
+			case "Chadian":
+				r += `Cha`;
+				break;
+			case "Chilean":
+				r += `Chl`;
+				break;
+			case "Chinese":
+				r += `Chi`;
+				break;
+			case "Colombian":
+				r += `Col`;
+				break;
+			case "Comorian":
+				r += `Com`;
+				break;
+			case "Congolese":
+				r += `RC`;
+				break;
+			case "a Cook Islander":
+				r += `CI`;
+				break;
+			case "Costa Rican":
+				r += `CR`;
+				break;
+			case "Croatian":
+				r += `Cro`;
+				break;
+			case "Cuban":
+				r += `Cub`;
+				break;
+			case "Cypriot":
+				r += `Cyp`;
+				break;
+			case "Czech":
+				r += `Cze`;
+				break;
+			case "Danish":
+				r += `Den`;
+				break;
+			case "Djiboutian":
+				r += `Dji`;
+				break;
+			case "Dominican":
+				r += `DR`;
+				break;
+			case "Dominiquais":
+				r += `Dom`;
+				break;
+			case "Dutch":
+				r += `Nld`;
+				break;
+			case "East Timorese":
+				r += `ET`;
+				break;
+			case "Ecuadorian":
+				r += `Ecu`;
+				break;
+			case "Egyptian":
+				r += `Egy`;
+				break;
+			case "Emirati":
+				r += `UAE`;
+				break;
+			case "Equatoguinean":
+				r += `EG`;
+				break;
+			case "Eritrean":
+				r += `Eri`;
+				break;
+			case "Estonian":
+				r += `Est`;
+				break;
+			case "Ethiopian":
+				r += `Eth`;
+				break;
+			case "Fijian":
+				r += `Fij`;
+				break;
+			case "Filipina":
+				r += `Phl`;
+				break;
+			case "Finnish":
+				r += `Fin`;
+				break;
+			case "French":
+				r += `Fra`;
+				break;
+			case "French Guianan":
+				r += `FG`;
+				break;
+			case "French Polynesian":
+				r += `FP`;
+				break;
+			case "Gabonese":
+				r += `Gab`;
+				break;
+			case "Gambian":
+				r += `Gam`;
+				break;
+			case "Georgian":
+				r += `Geo`;
+				break;
+			case "German":
+				r += `Ger`;
+				break;
+			case "Ghanan":
+				r += `Gha`;
+				break;
+			case "Greek":
+				r += `Gre`;
+				break;
+			case "Greenlandic":
+				r += `Grn`;
+				break;
+			case "Grenadian":
+				r += `Gda`;
+				break;
+			case "Guamanian":
+				r += `Gua`;
+				break;
+			case "Guatemalan":
+				r += `Gtm`;
+				break;
+			case "Guinean":
+				r += `Gui`;
+				break;
+			case "Guyanese":
+				r += `Guy`;
+				break;
+			case "Haitian":
+				r += `Hai`;
+				break;
+			case "Honduran":
+				r += `Hon`;
+				break;
+			case "Hungarian":
+				r += `Hun`;
+				break;
+			case "I-Kiribati":
+				r += `Kir`;
+				break;
+			case "Icelandic":
+				r += `Ice`;
+				break;
+			case "Indian":
+				r += `Ind`;
+				break;
+			case "Indonesian":
+				r += `Idn`;
+				break;
+			case "Iranian":
+				r += `Irn`;
+				break;
+			case "Iraqi":
+				r += `Irq`;
+				break;
+			case "Irish":
+				r += `Irl`;
+				break;
+			case "Israeli":
+				r += `Isr`;
+				break;
+			case "Italian":
+				r += `Ita`;
+				break;
+			case "Ivorian":
+				r += `IC`;
+				break;
+			case "Jamaican":
+				r += `Jam`;
+				break;
+			case "Japanese":
+				r += `Jpn`;
+				break;
+			case "Jordanian":
+				r += `Jor`;
+				break;
+			case "Kazakh":
+				r += `Kaz`;
+				break;
+			case "Kenyan":
+				r += `Ken`;
+				break;
+			case "Kittitian":
+				r += `SKN`;
+				break;
+			case "Korean":
+				r += `Kor`;
+				break;
+			case "Kosovan":
+				r += `Kos`;
+				break;
+			case "Kurdish":
+				r += `Kur`;
+				break;
+			case "Kuwaiti":
+				r += `Kuw`;
+				break;
+			case "Kyrgyz":
+				r += `Kyr`;
+				break;
+			case "Laotian":
+				r += `Lao`;
+				break;
+			case "Latvian":
+				r += `Lat`;
+				break;
+			case "Lebanese":
+				r += `Lbn`;
+				break;
+			case "Liberian":
+				r += `Lib`;
+				break;
+			case "Libyan":
+				r += `Lby`;
+				break;
+			case "a Liechtensteiner":
+				r += `Lie`;
+				break;
+			case "Lithuanian":
+				r += `Lit`;
+				break;
+			case "Luxembourgian":
+				r += `Lux`;
+				break;
+			case "Macedonian":
+				r += `Mac`;
+				break;
+			case "Malagasy":
+				r += `Mad`;
+				break;
+			case "Malawian":
+				r += `Mwi`;
+				break;
+			case "Malaysian":
+				r += `Mys`;
+				break;
+			case "Maldivian":
+				r += `Mdv`;
+				break;
+			case "Malian":
+				r += `Mal`;
+				break;
+			case "Maltese":
+				r += `Mlt`;
+				break;
+			case "Marshallese":
+				r += `MI`;
+				break;
+			case "Mauritanian":
+				r += `Mta`;
+				break;
+			case "Mauritian":
+				r += `Mts`;
+				break;
+			case "Mexican":
+				r += `Mex`;
+				break;
+			case "Micronesian":
+				r += `FSM`;
+				break;
+			case "Moldovan":
+				r += `Mol`;
+				break;
+			case "Monégasque":
+				r += `Mnc`;
+				break;
+			case "Mongolian":
+				r += `Mon`;
+				break;
+			case "Montenegrin":
+				r += `Mng`;
+				break;
+			case "Moroccan":
+				r += `Mor`;
+				break;
+			case "Mosotho":
+				r += `Les`;
+				break;
+			case "Motswana":
+				r += `Bot`;
+				break;
+			case "Mozambican":
+				r += `Moz`;
+				break;
+			case "Namibian":
+				r += `Nam`;
+				break;
+			case "Nauruan":
+				r += `Nau`;
+				break;
+			case "Nepalese":
+				r += `Npl`;
+				break;
+			case "New Caledonian":
+				r += `NC`;
+				break;
+			case "a New Zealander":
+				r += `NZ`;
+				break;
+			case "Ni-Vanuatu":
+				r += `Van`;
+				break;
+			case "Nicaraguan":
+				r += `Nic`;
+				break;
+			case "Nigerian":
+				r += `Nga`;
+				break;
+			case "Nigerien":
+				r += `Ngr`;
+				break;
+			case "Niuean":
+				r += `Niu`;
+				break;
+			case "Norwegian":
+				r += `Nor`;
+				break;
+			case "Omani":
+				r += `Omn`;
+				break;
+			case "Pakistani":
+				r += `Pak`;
+				break;
+			case "Palauan":
+				r += `Plu`;
+				break;
+			case "Palestinian":
+				r += `Pal`;
+				break;
+			case "Panamanian":
+				r += `Pan`;
+				break;
+			case "Papua New Guinean":
+				r += `PNG`;
+				break;
+			case "Paraguayan":
+				r += `Par`;
+				break;
+			case "Peruvian":
+				r += `Per`;
+				break;
+			case "Polish":
+				r += `Pol`;
+				break;
+			case "Portuguese":
+				r += `Por`;
+				break;
+			case "Puerto Rican":
+				r += `PR`;
+				break;
+			case "Qatari":
+				r += `Qat`;
+				break;
+			case "Romanian":
+				r += `Rom`;
+				break;
+			case "Russian":
+				r += `Rus`;
+				break;
+			case "Rwandan":
+				r += `Rwa`;
+				break;
+			case "Sahrawi":
+				r += `Sah`;
+				break;
+			case "Saint Lucian":
+				r += `SL`;
+				break;
+			case "Salvadoran":
+				r += `ES`;
+				break;
+			case "Sammarinese":
+				r += `SM`;
+				break;
+			case "Samoan":
+				r += `Sam`;
+				break;
+			case "São Toméan":
+				r += `STP`;
+				break;
+			case "Saudi":
+				r += `Sau`;
+				break;
+			case "Scottish":
+				r += `Sco`;
+				break;
+			case "Senegalese":
+				r += `Sen`;
+				break;
+			case "Serbian":
+				r += `Srb`;
+				break;
+			case "Seychellois":
+				r += `Sey`;
+				break;
+			case "Sierra Leonean":
+				r += `Sie`;
+				break;
+			case "Singaporean":
+				r += `Sng`;
+				break;
+			case "Slovak":
+				r += `Svk`;
+				break;
+			case "Slovene":
+				r += `Svn`;
+				break;
+			case "a Solomon Islander":
+				r += `SI`;
+				break;
+			case "Somali":
+				r += `Som`;
+				break;
+			case "South African":
+				r += `RSA`;
+				break;
+			case "South Sudanese":
+				r += `SS`;
+				break;
+			case "Spanish":
+				r += `Spa`;
+				break;
+			case "Sri Lankan":
+				r += `Sri`;
+				break;
+			case "Sudanese":
+				r += `Sud`;
+				break;
+			case "Surinamese":
+				r += `Sur`;
+				break;
+			case "Swazi":
+				r += `Swa`;
+				break;
+			case "Swedish":
+				r += `Swe`;
+				break;
+			case "Swiss":
+				r += `Swi`;
+				break;
+			case "Syrian":
+				r += `Syr`;
+				break;
+			case "Taiwanese":
+				r += `Tai`;
+				break;
+			case "Tajik":
+				r += `Taj`;
+				break;
+			case "Tanzanian":
+				r += `Tza`;
+				break;
+			case "Thai":
+				r += `Tha`;
+				break;
+			case "Tibetan":
+				r += `Tib`;
+				break;
+			case "Togolese":
+				r += `Tog`;
+				break;
+			case "Tongan":
+				r += `Ton`;
+				break;
+			case "Trinidadian":
+				r += `TT`;
+				break;
+			case "Tunisian":
+				r += `Tun`;
+				break;
+			case "Turkish":
+				r += `Tur`;
+				break;
+			case "Turkmen":
+				r += `Tkm`;
+				break;
+			case "Tuvaluan":
+				r += `Tuv`;
+				break;
+			case "Ugandan":
+				r += `Uga`;
+				break;
+			case "Ukrainian":
+				r += `Ukr`;
+				break;
+			case "Uruguayan":
+				r += `Uru`;
+				break;
+			case "Uzbek":
+				r += `Uzb`;
+				break;
+			case "Vatican":
+				r += `VC`;
+				break;
+			case "Venezuelan":
+				r += `Ven`;
+				break;
+			case "Vietnamese":
+				r += `Vnm`;
+				break;
+			case "Vincentian":
+				r += `SVG`;
+				break;
+			case "Yemeni":
+				r += `Yem`;
+				break;
+			case "Zairian":
+				r += `DRC`;
+				break;
+			case "Zambian":
+				r += `Zam`;
+				break;
+			case "Zimbabwean":
+				if (slave.race === "white") {
+					r += `Rho`;
+				} else {
+					r += `Zwe`;
+				}
+				break;
+			case "Ancient Chinese Revivalist":
+				r += `Chi Rev`;
+				break;
+			case "Ancient Egyptian Revivalist":
+				r += `Egy Rev`;
+				break;
+			case "Arabian Revivalist":
+				r += `Ara Rev`;
+				break;
+			case "Aztec Revivalist":
+				r += `Azt Rev`;
+				break;
+			case "Edo Revivalist":
+				r += `Edo Rev`;
+				break;
+			case "Roman Revivalist":
+				r += `Rom Rev`;
+				break;
+			case "":
+			case "none":
+			case "slave":
+			case "Stateless":
+				r += `None`;
+				break;
+			default:
+				r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function long_nationality(slave) {
+		r += `<span class="tan">`;
+		switch (slave.nationality) {
+			case "Zimbabwean":
+				if (slave.race === "white") {
+					r += `Rhodesian.`;
+				} else {
+					r += `${slave.nationality}.`;
+				}
+				break;
+			case "slave":
+			case "none":
+			case "":
+			case "Stateless":
+				r += `Stateless.`;
+				break;
+			default:
+				r += `${slave.nationality}.`;
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function short_skin(slave) {
+		r += `<span class="pink">`;
+		switch (slave.skin) {
+			case "light brown":
+				r += `L. Br`;
+				break;
+			case "dark brown":
+				r += `D. Br`;
+				break;
+			case "light olive":
+				r += `L. Oli`;
+				break;
+			case "dark olive":
+				r += `D. Oli`;
+				break;
+			case "extremely pale":
+				r += `Ex. Pa`;
+				break;
+			case "pure white":
+				r += `P. Whi`;
+				break;
+			case "tanned":
+				r += `Tan`;
+				break;
+			case "dark":
+			case "fair":
+			case "pale":
+				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
+				break;
+			default:
+				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function short_genitals(slave) {
+		if (slave.dick > 0) {
+			r += `<span class="pink">`;
+			if (slave.balls === 0) {
+				r += `Geld`;
+			}
+			if ((slave.dick > 8) && (slave.balls > 8)) {
+				r += `Junk+++`;
+			} else if ((slave.dick > 5) && (slave.balls > 5)) {
+				r += `Junk++`;
+			} else if ((slave.dick > 4) && (slave.balls > 4)) {
+				r += `Junk+`;
+			} else if ((slave.dick > 3) && (slave.balls > 3)) {
+				r += `Junk`;
+			} else if (slave.dick > 8) {
+				r += `Dick+++`;
+			} else if (slave.dick > 5) {
+				r += `Dick++`;
+			} else if (slave.dick > 4) {
+				r += `Dick+`;
+			} else if (slave.dick > 3) {
+				r += `Dick`;
+			} else if (slave.balls > 10) {
+				r += `Balls+++`;
+			} else if (slave.balls > 5) {
+				r += `Balls++`;
+			} else if (slave.balls > 4) {
+				r += `Balls+`;
+			} else if (slave.balls > 3) {
+				r += `Balls`;
+			}
+			r += `</span> `;
+		}
+		if (slave.vagina === 0) {
+			r += `<span class="lime">VV</span>`;
+		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
+			r += `<span class="pink">NBP</span>`;
+		}
+		if (slave.anus === 0) {
+			r += `	<span class="lime">AV</span>`;
+		}
+		r += `<span class="pink">`;
+		if ((slave.vagina > 3) && (slave.anus > 3)) {
+			r += ` V++A++`;
+		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
+			r += ` V+A+`;
+		} else if (slave.vagina > 3) {
+			r += ` V++`;
+		} else if (slave.vagina > 2) {
+			r += ` V+`;
+		} else if (slave.anus > 3) {
+			r += ` A++`;
+		} else if (slave.anus > 2) {
+			r += ` A+`;
+		}
+		r += `</span> `;
+	}
+	
+	function long_genitals(slave) {
+		if (slave.dick > 0) {
+			r += `<span class="pink">`;
+			if (slave.balls === 0) {
+				r += `Gelded.`;
+			}
+			if ((slave.dick > 8) && (slave.balls > 8)) {
+				r += `Hyper dick & balls.`;
+			} else if ((slave.dick > 5) && (slave.balls > 5)) {
+				r += `Monster dick & balls.`;
+			} else if ((slave.dick > 4) && (slave.balls > 4)) {
+				r += `Huge dick & balls.`;
+			} else if ((slave.dick > 3) && (slave.balls > 3)) {
+				r += `Big dick & balls.`;
+			} else if (slave.dick > 8) {
+				r += `Hyper dong.`;
+			} else if (slave.dick > 5) {
+				r += `Monster dong.`;
+			} else if (slave.dick > 4) {
+				r += `Huge dick.`;
+			} else if (slave.dick > 3) {
+				r += `Big dick.`;
+			} else if (slave.balls > 8) {
+				r += `Hyper balls.`;
+			} else if (slave.balls > 5) {
+				r += `Monstrous balls.`;
+			} else if (slave.balls > 4) {
+				r += `Huge balls.`;
+			} else if (slave.balls > 3) {
+				r += `Big balls.`;
+			}
+			r += `</span> `;
+		}
+		if (slave.vagina === 0) {
+			r += `<span class="lime">Virgin.</span> `;
+		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
+			r += `<span class="pink">Naked, barefoot, and pregnant.</span> `;
+		}
+		if (slave.anus === 0) {
+			r += `<span class="lime">Anal virgin.</span> `;
+		}
+		r += `<span class="pink">`;
+		if ((slave.vagina > 3) && (slave.anus > 3)) {
+			r += `Blown out holes.`;
+		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
+			r += `High mileage.`;
+		} else if (slave.vagina > 3) {
+			r += `Cavernous pussy.`;
+		} else if (slave.vagina > 2) {
+			r += `Loose pussy.`;
+		} else if (slave.anus > 3) {
+			r += `Permagaped anus.`;
+		} else if (slave.anus > 2) {
+			r += `Gaping anus.`;
+		}
+		r += `</span> `;
+	}
+	
+	function short_age(slave) {
+		r += `<span class="pink">`;
+		if (V.showAgeDetail === 1) {
+			r += slave.actualAge;
+		} else if (slave.actualAge >= 40) {
+			r += `40s`;
+		} else if (slave.actualAge >= 35) {
+			r += `Lt30s`;
+		} else if (slave.actualAge >= 30) {
+			r += `Ea30s`;
+		} else if (slave.actualAge >= 25) {
+			r += `Lt20s`;
+		} else if (slave.actualAge >= 20) {
+			r += `Ea20s`;
+		} else if (slave.actualAge >= 18) {
+			r += slave.actualAge;
+		}
+		if (slave.actualAge !== slave.physicalAge) {
+			r += `${slave.physicalAge}y-bdy`;
+		}
+		if (slave.visualAge !== slave.physicalAge) {
+			r += `Lks${slave.visualAge}`;
+		}
+		r += " ";
+	}
+	
+	function short_face(slave) {
+		if (slave.face < -95) {
+			r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face < -40) {
+			r += `<span class="red">Face--${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face < -10) {
+			r += `<span class="red">Face-${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face <= 10) {
+			r += `Face${V.summaryStats? `[${slave.face}]` : ''}`;
+		} else if (slave.face <= 40) {
+			r += `<span class="pink">Face+${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face <= 95) {
+			r += `<span class="pink">Face++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else {
+			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_eyes(slave) {
+		if (slave.eyes === -2) {
+			r += `<span class="red">Blind</span>`;
+		} else if (((slave.eyes === -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
+			r += `<span class="yellow">Sight-</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_lips(slave) {
+		if (slave.lips > 95) {
+			r += `Facepussy`;
+		} else if (slave.lips > 70) {
+			r += `Lips+++${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 40) {
+			r += `Lips++${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 20) {
+			r += `Lips+${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 10) {
+			r += `Lips${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else {
+			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
+		}
+		r += " ";
+	}
+	
+	function short_teeth(slave) {
+		if (slave.teeth === "crooked") {
+			r += `<span class="yellow">Cr Teeth</span>`;
+		} else if (slave.teeth === "cosmetic braces") {
+			r += `Cos Braces`;
+		} else if (slave.teeth === "straightening braces") {
+			r += `Braces`;
+		} else if (slave.teeth === "removable") {
+			r += `Rem Teeth`;
+		} else if (slave.teeth === "pointy") {
+			r += `Fangs`;
+		}
+		r += " ";
+	}
+	
+	function short_muscles(slave) {
+		if (slave.muscles > 95) {
+			r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > 50) {
+			r += `Musc+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > 5) {
+			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > -6) {
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > -31) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			} else {
+				r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			}
+		} else if (slave.muscles > -96) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			} else {
+				r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			}
+		} else {
+			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		}
+		r += " ";
+	}
+	
+	function short_limbs(slave) {
+		if (slave.amp !== 0) {
+			if (slave.amp === -1) {
+				r += `P-Limbs`;
+			} else if (slave.amp === -2) {
+				r += `Sex P-Limbs`;
+			} else if (slave.amp === -3) {
+				r += `Beauty P-Limbs`;
+			} else if (slave.amp === -4) {
+				r += `Combat P-Limbs`;
+			} else if (slave.amp === -5) {
+				r += `Cyber P-Limbs`;
+			} else {
+				r += `Amp`;
+			}
+			r += " ";
+		}
+		if (!canWalk(slave)) {
+			r += `Immob`;
+		}
+		if (slave.heels === 1) {
+			r += `Heel`;
+		}
+		r += `</span> `;
+	}
+	
+	function short_voice(slave) {
+		if (slave.voice === 0) {
+			r += `<span class="pink">Mute</span>`;
+		} else {
+			if (slave.accent === 3) {
+				r += `<span class="red">Acc--</span>`;
+			} else if (slave.accent === 2) {
+				r += `Acc-`;
+			} else if (slave.accent === 4) {
+				r += `Acc--`;
+			} else if (slave.accent === 1) {
+				r += `<span class="pink">Acc</span>`;
+			}
+		}
+		r += " ";
+	}
+	
+	function short_tits_ass(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
+			r += `T&A+++`;
+		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
+			r += `T&A++`;
+		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
+			r += `T&A+`;
+		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
+			r += `T&A`;
+		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
+			r += `Girlish`;
+		} else if (slave.boobs >= 12000) {
+			r += `Boobs+++`;
+		} else if (slave.boobs > 4000) {
+			r += `Boobs++`;
+		} else if (slave.boobs > 2000) {
+			r += `Boobs+`;
+		} else if (slave.boobs > 800) {
+			r += `Boobs`;
+		} else if (slave.butt > 9) {
+			r += `Ass+++`;
+		} else if (slave.butt > 8) {
+			r += `Ass++`;
+		} else if (slave.butt > 6) {
+			r += `Ass+`;
+		} else if (slave.butt > 4) {
+			r += `Ass`;
+		}
+		r += `</span> `;
+	}
+	
+	function short_hips(slave) {
+		r += `<span class="red">`;
+		if (slave.hips < -1) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disp+`;
+			}
+		} else if (slave.hips < 0) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disp+`;
+			}
+		} else if (slave.hips > 2) {
+			if (slave.butt <= 8) {
+				r += `Disp-`;
+			}
+		} else if (slave.hips > 1) {
+			if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		} else if (slave.hips > 0) {
+			if (slave.butt > 8) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disp+`;
+				}
+			} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		} else {
+			if (slave.butt > 6) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disp+`;
+				}
+			} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		}
+		r += `</span> `;
+	}
+	
+	function short_waist(slave) {
+		if (slave.waist > 95) {
+			r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist > 40) {
+			r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
+		} else if (slave.waist > 10) {
+			r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist >= -10) {
+			r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
+		} else if (slave.waist >= -40) {
+			r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist >= -95) {
+			r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else {
+			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_implants(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant <= 5) && (slave.bellyImplant === -1)) {
+			r += `Natr`;
+		} else {
+			r += `Impl`;
+		}
+		r += " ";
+	}
+	
+	function short_lactation(slave) {
+		if (slave.lactation === 1) {
+			r += `Lact`;
+		} else if (slave.lactation === 2) {
+			r += `Lact++`;
+		}
+		r += " ";
+	}
+	
+	function short_mods(slave) {
+		modScore(slave);
+		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
+			return;
+		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
+			r += `Mods++`;
+		} else if (V.modScore > 7) {
+			r += `Mods+`;
+		} else {
+			r += `Mods`;
+		}
+		if (slave.brand !== 0) {
+			r += `Br`;
+		}
+		r += " ";
+	}
+	
+	function long_age(slave) {
+		r += `<span class="pink">`;
+		if (V.showAgeDetail === 1) {
+			r += `Age ${slave.actualAge}.`;
+		} else if (slave.actualAge >= 40) {
+			r += `Forties.`;
+		} else if (slave.actualAge >= 35) {
+			r += `Late thirties.`;
+		} else if (slave.actualAge >= 30) {
+			r += `Early thirties.`;
+		} else if (slave.actualAge >= 25) {
+			r += `Late twenties.`;
+		} else if (slave.actualAge >= 20) {
+			r += `Early twenties.`;
+		} else if (slave.actualAge >= 19) {
+			r += `Nineteen.`;
+		} else if (slave.actualAge >= 18) {
+			r += `Eighteen.`;
+		} else {
+			r += `Underage.`;
+		}
+		r += " ";
+		/*
+		 **  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
+		 **  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
+		 */
+		if (((slave.inducedNCS === 0) || (slave.visualAge >= slave.physicalAge))) {
+			if (slave.actualAge !== slave.physicalAge) {
+				r += `${slave.physicalAge} year old body. `;
+			}
+			if (slave.visualAge !== slave.physicalAge) {
+				r += `Looks ${slave.visualAge}. `;
+			}
+		} else {
+			/*
+			 **  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
+			 **  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
+			 **  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
+			 **  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
+			 **  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
+			 **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
+			 **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
+			 */
+			r += `Appears to have a ${slave.visualAge} year old body. `;
+		}
+		if (slave.inducedNCS === 1) {
+			r += `(<span class="orange">NCS</span>) `;
+		}
+	}
+	
+	function long_face(slave) {
+		if (slave.face < -95) {
+			r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face < -40) {
+			r += `<span class="red">Ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face < -10) {
+			r += `<span class="red">Unattractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face <= 10) {
+			r += `Average${V.summaryStats? `[${slave.face}]`: ''}`;
+		} else if (slave.face <= 40) {
+			r += `<span class="pink">Attractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face <= 95) {
+			r += `<span class="pink">Beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else {
+			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		}
+		r += ` ${slave.faceShape} face.`;
+	}
+	
+	function long_eyes(slave) {
+		if (slave.eyes <= -2) {
+			r += `<span class="red">Blind.</span>`;
+		} else if (((slave.eyes <= -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
+			r += `<span class="yellow">Nearsighted.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_lips(slave) {
+		if (slave.lips > 95) {
+			r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 70) {
+			r += `Huge lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 40) {
+			r += `Big lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 20) {
+			r += `Pretty lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 10) {
+			r += `Normal lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else {
+			r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_teeth(slave) {
+		if (slave.teeth === "crooked") {
+			r += `<span class="yellow">Crooked teeth.</span>`;
+		} else if (slave.teeth === "cosmetic braces") {
+			r += `Cosmetic braces.`;
+		} else if (slave.teeth === "straightening braces") {
+			r += `Braces.`;
+		} else if (slave.teeth === "removable") {
+			r += `Removable teeth.`;
+		} else if (slave.teeth === "pointy") {
+			r += `Sharp fangs.`;
+		}
+		r += " ";
+	}
+	
+	function long_muscles(slave) {
+		if (slave.muscles > 95) {
+			r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
+		} else if (slave.muscles > 50) {
+			r += `Muscular${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > 5) {
+			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > -6) {
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > -31) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+			} else {
+				r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			}
+		} else if (slave.muscles > -96) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+			} else {
+				r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			}
+		} else {
+			r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_limbs(slave) {
+		if (slave.amp !== 0) {
+			if (slave.amp === -1) {
+				r += `Prosthetic limbs.`;
+			} else if (slave.amp === -2) {
+				r += `Sexy prosthetic limbs.`;
+			} else if (slave.amp === -3) {
+				r += `Beautiful prosthetic limbs.`;
+			} else if (slave.amp === -4) {
+				r += `Deadly prosthetic limbs.`;
+			} else if (slave.amp === -5) {
+				r += `Cyber prosthetic limbs.`;
+			} else {
+				r += `Amputee.`;
+			}
+		}
+		r += " ";
+		if (!canWalk(slave)) {
+			r += `Immobile. `;
+		}
+		if (slave.heels === 1) {
+			r += `Heeled. `;
+		}
+		r += `</span> `;
+	}
+	
+	function long_voice(slave) {
+		if (slave.voice === 0) {
+			r += `<span class="pink">Mute.</span>`;
+		} else {
+			if (slave.accent === 3) {
+				r += `<span class="red">Bad accent.</span>`;
+			} else if (slave.accent === 4) {
+				r += `<span class="red">No language skills.</span>`;
+			} else if (slave.accent === 2) {
+				r += `Accent.`;
+			} else if (slave.accent === 1) {
+				r += `<span class="pink">Cute accent.</span>`;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_tits_ass(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
+			r += `Hyper T&A.`;
+		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
+			r += `Enormous T&A.`;
+		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
+			r += `Huge T&A.`;
+		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
+			r += `Big T&A.`;
+		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
+			r += `Girlish figure.`;
+		} else if (slave.boobs >= 12000) {
+			r += `Immobilizing tits.`;
+		} else if (slave.boobs > 4000) {
+			r += `Monstrous tits.`;
+		} else if (slave.boobs > 2000) {
+			r += `Huge tits.`;
+		} else if (slave.boobs > 800) {
+			r += `Big tits.`;
+		} else if (slave.butt > 9) {
+			r += `Hyper ass.`;
+		} else if (slave.butt > 8) {
+			r += `Titanic ass.`;
+		} else if (slave.butt > 6) {
+			r += `Huge ass.`;
+		} else if (slave.butt > 4) {
+			r += `Big ass.`;
+		}
+		r += `</span> `;
+	}
+	
+	function long_hips(slave) {
+		r += `<span class="red">`;
+		if (slave.hips < -1) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disproportionately big butt.`;
+			}
+		} else if (slave.hips < 0) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disproportionately big butt.`;
+			}
+		} else if (slave.hips > 2) {
+			if (slave.butt <= 8) {
+				r += `Disproportionately small butt.`;
+			}
+		} else if (slave.hips > 1) {
+			if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		} else if (slave.hips > 0) {
+			if (slave.butt > 8) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disproportionately big butt.`;
+				}
+			} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		} else {
+			if (slave.butt > 6) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disproportionately big butt.`;
+				}
+			} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		}
+		r += `</span> `;
+	}
+	
+	function long_waist(slave) {
+		if (slave.waist > 95) {
+			r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist > 40) {
+			r += `<span class="red">Ugly waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist > 10) {
+			r += `<span class="red">Unattractive waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist >= -10) {
+			r += `Average waist${V.summaryStats? `[${slave.waist}]`: ''}.`;
+		} else if (slave.waist >= -40) {
+			r += `<span class="pink">Feminine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist >= -95) {
+			r += `<span class="pink">Hourglass waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else {
+			r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_implants(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobsImplant !== 0) || (slave.buttImplant !== 0) || (slave.lipsImplant !== 0) || (slave.bellyImplant !== -1)) {
+			r += `Implants.`;
+		} else if ((slave.faceImplant >= 30) || (slave.waist < -95)) {
+			r += `Surgery enhanced.`;
+		} else {
+			r += `All natural.`;
+		}
+		r += " ";
+	}
+	
+	function long_lactation(slave) {
+		if (slave.lactation === 1) {
+			r += `Lactating naturally.`;
+		} else if (slave.lactation === 2) {
+			r += `Heavy lactation.`;
+		}
+		r += " ";
+	}
+	
+	function long_mods(slave) {
+		modScore(slave);
+		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
+			return;
+		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
+			r += `Extensive body mods.`;
+		} else if (V.modScore > 7) {
+			r += `Noticeable body mods.`;
+		} else {
+			r += `Light body mods.`;
+		}
+		r += " ";
+	}
+	
+	function short_intelligence(slave) {
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.intelligenceImplant === 1) {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">I+++(e)</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">I++(e)</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">I+(e)</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">I-(e)</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">I--(e)</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">I---(e)</span>`;
+					break;
+				default:
+					r += `I(e)`;
+					break;
+			}
+		} else {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">I+++</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">I++</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">I+</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">I-</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">I--</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">I---</span>`;
+					break;
+				default:
+					r += `I`;
+					break;
+			}
+		}
+		r += " ";
+	} 
+	
+	function short_sex_skills(slave) {
+		let _SSkills = slave.analSkill + slave.oralSkill;
+		r += `<span class="aquamarine">`;
+		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
+			r += `MSS`;
+		} else {
+			_SSkills += slave.vaginalSkill;
+			_SSkills = Math.trunc(_SSkills);
+			if (_SSkills > 180) {
+				r += `S++`;
+			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
+				r += `Sh++`;
+			} else if (_SSkills > 90) {
+				r += `S+`;
+			} else if (_SSkills > 30) {
+				r += `S`;
+			} else {
+				r += `S-`;
+			}
+			if (V.summaryStats) {
+				r += `[${_SSkills}] `;
+			}
+			r += " ";
+			if (slave.whoreSkill >= 100) {
+				r += `W+++`;
+			} else if (slave.whoreSkill > 60) {
+				r += `W++`;
+			} else if (slave.whoreSkill > 30) {
+				r += `W+`;
+			} else if (slave.whoreSkill > 10) {
+				r += `W`;
+			}
+			if (slave.whoreSkill > 10) {
+				if (V.summaryStats) {
+					r += `[${slave.whoreSkill}] `;
+				}
+			}
+			r += " ";
+			if (slave.entertainSkill >= 100) {
+				r += `E+++`;
+			} else if (slave.entertainSkill > 60) {
+				r += `E++`;
+			} else if (slave.entertainSkill > 30) {
+				r += `E+`;
+			} else if (slave.entertainSkill > 10) {
+				r += `E`;
+			}
+			if (slave.entertainSkill > 10) {
+				if (V.summaryStats) {
+					r += `[${slave.entertainSkill}] `;
+				}
+			}
+		}
+		r += " ";
+	}
+	
+	function short_prestige(slave) {
+		if (slave.prestige > 0) {
+			r += `<span class="green">`;
+			if (slave.prestige > 2) {
+				r += `Prest++`;
+			} else if (slave.prestige === 2) {
+				r += `Prest+`;
+			} else if (slave.prestige === 1) {
+				r += `Prest`;
+			}
+			r += `</span> `;
+		}
+	}
+	
+	function long_intelligence(slave) {
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.intelligenceImplant === 1) {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">Brilliant, educated.</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">Very smart, educated.</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">Smart, educated.</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">Slow, educated.</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">Very slow, educated.</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">Moronic, educated.</span>`;
+					break;
+				default:
+					r += `Average intelligence, educated.`;
+					break;
+			}
+		} else {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">Brilliant.</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">Very smart.</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">Smart.</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">Slow.</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">Very slow.</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">Moronic.</span>`;
+					break;
+				default:
+					r += `Average intelligence.`;
+					break;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_sex_skills(slave) {
+		let _SSkills = (slave.analSkill + slave.oralSkill);
+		r += `<span class="aquamarine">`;
+		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
+			r += `Masterful Sex Slave. `;
+		} else {
+			_SSkills += slave.vaginalSkill;
+			if (_SSkills > 180) {
+				r += `Sex master${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
+				r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if (_SSkills > 90) {
+				r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if (_SSkills > 30) {
+				r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
+			} else {
+				r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
+			}
+			r += " ";
+			if (slave.whoreSkill >= 100) {
+				r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 60) {
+				r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 30) {
+				r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 10) {
+				r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			}
+			r += " ";
+			if (slave.entertainSkill >= 100) {
+				r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 60) {
+				r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 30) {
+				r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 10) {
+				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			}
+			r += " ";
+		}
+	}
+	
+	function long_prestige(slave) {
+		if (slave.prestige > 0) {
+			r += `<span class="green">`;
+			if (slave.prestige > 2) {
+				r += `Extremely prestigious.`;
+			} else if (slave.prestige === 2) {
+				r += `Very prestigious.`;
+			} else if (slave.prestige === 1) {
+				r += `Prestigious.`;
+			}
+			r += `</span> `;
+		}
+	}
+	
+	function short_fetish(slave) {
+		r += `<span class="lightcoral">`;
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
+					r += `Sub++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sub+`;
+				} else {
+					r += `Sub`;
+				}
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
+					r += `Oral++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Oral+`;
+				} else {
+					r += `Oral`;
+				}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
+					r += `Humil++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Humil+`;
+				} else {
+					r += `Humil`;
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
+					r += `Anal++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Anal+`;
+				} else {
+					r += `Anal`;
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
+					r += `Boobs++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Boobs+`;
+				} else {
+					r += `Boobs`;
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
+					r += `Sadist++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sadist+`;
+				} else {
+					r += `Sadist`;
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
+					r += `Pain++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Pain+`;
+				} else {
+					r += `Pain`;
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
+					r += `Dom++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Dom+`;
+				} else {
+					r += `Dom`;
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
+					r += `Preg++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Preg+`;
+				} else {
+					r += `Preg`;
+				}
+				break;
+			default:
+				r += `Vanilla`;
+				break;
+		}
+		if (V.summaryStats) {
+			r += `[${slave.fetishStrength}]`;
+		}
+		r += `</span> `;
+	}
+	
+	function short_attraction(slave) {
+		if (slave.attrXY <= 5) {
+			r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 15) {
+			r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 35) {
+			r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 65) {
+			r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
+		} else if (slave.attrXY <= 85) {
+			r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
+				r += `<span class="green">Omni!</span>`;
+			} else {
+				r += `<span class="green">Omni+Nympho!!</span>`;
+			}
+		} else {
+			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		}
+		r += " ";
+		if (slave.attrXX <= 5) {
+			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 15) {
+			r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 35) {
+			r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 65) {
+			r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
+		} else if (slave.attrXX <= 85) {
+			r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 95) {
+			r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		}
+		r += " ";
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+				r += `<span class="green">Nympho!</span>`;
+			}
+		} else if (slave.energy > 80) {
+			r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 60) {
+			r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 40) {
+			r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 20) {
+			r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else {
+			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_smart_fetish(slave) {
+		if (slave.fetishKnown === 1) {
+			if (slave.clitSetting === "off") {
+				r += `SP-`;
+			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+				r += `SP:sub`;
+			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+				r += `SP:oral`;
+			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+				r += `SP:humil`;
+			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+				r += `SP:anal`;
+			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+				r += `SP:boobs`;
+			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+				r += `SP:sade`;
+			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+				r += `SP:pain`;
+			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+				r += `SP:dom`;
+			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+				r += `SP:preg`;
+			} else if (((slave.fetish !== "none") && (slave.clitSetting === "vanilla"))) {
+				r += `SP:vanilla`;
+			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+				r += `SP:all`;
+			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+				r += `SP:none`;
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+				r += `SP:monitoring`;
+			}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
+					r += `SP-`;
+					break;
+				case "submissive":
+					r += `SP:sub`;
+					break;
+				case "lesbian":
+					r += `SP:les`;
+					break;
+				case "oral":
+					r += `SP:oral`;
+					break;
+				case "humiliation":
+					r += `SP:humil`;
+					break;
+				case "anal":
+					r += `SP:anal`;
+					break;
+				case "boobs":
+					r += `SP:boobs`;
+					break;
+				case "sadist":
+					r += `SP:sade`;
+					break;
+				case "masochist":
+					r += `SP:pain`;
+					break;
+				case "dom":
+					r += `SP:dom`;
+					break;
+				case "pregnancy":
+					r += `SP:pregnancy`;
+					break;
+				case "vanilla":
+					r += `SP:vanilla`;
+					break;
+				case "all":
+					r += `SP:all`;
+					break;
+				case "none":
+					r += `SP:none`;
+					break;
+			}
+		}
+		r += " ";
+	}
+	
+	function short_smart_attraction(slave) {
+		if (slave.attrKnown === 1) {
+			if (slave.clitSetting === "women") {
+				if (slave.attrXX < 95) {
+					r += `SP:women`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "men") {
+				if (slave.attrXY < 95) {
+					r += `SP:men`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "anti-women") {
+				if (slave.attrXX > 0) {
+					r += `SP:anti-women`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "anti-men") {
+				if (slave.attrXY > 0) {
+					r += `SP:anti-men`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			}
+		} else {
+			if (slave.clitSetting === "women") {
+				r += `SP:women`;
+			} else if (slave.clitSetting === "men") {
+				r += `SP:men`;
+			} else if (slave.clitSetting === "anti-women") {
+				r += `SP:anti-women`;
+			} else if (slave.clitSetting === "anti-men") {
+				r += `SP:anti-men`;
+			}
+		}
+		r += " ";
+	}
+	
+	function short_behavior_flaw(slave) {
+		r += `<span class="red">`;
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				r += `Arrog`;
+				break;
+			case "bitchy":
+				r += `Bitchy`;
+				break;
+			case "odd":
+				r += `Odd`;
+				break;
+			case "hates men":
+				r += `Men-`;
+				break;
+			case "hates women":
+				r += `Women-`;
+				break;
+			case "gluttonous":
+				r += `Glut`;
+				break;
+			case "anorexic":
+				r += `Ano`;
+				break;
+			case "devout":
+				r += `Dev`;
+				break;
+			case "liberated":
+				r += `Lib`;
+				break;
+			default:
+				slave.behavioralFlaw = "none";
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function short_sex_flaw(slave) {
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				r += `<span class="red">Oral-</span>`;
+				break;
+			case "hates anal":
+				r += `<span class="red">Anal-</span>`;
+				break;
+			case "hates penetration":
+				r += `<span class="red">Fuck-</span>`;
+				break;
+			case "shamefast":
+				r += `<span class="red">Shame</span>`;
+				break;
+			case "idealistic":
+				r += `<span class="red">Ideal</span>`;
+				break;
+			case "repressed":
+				r += `<span class="red">Repre</span>`;
+				break;
+			case "apathetic":
+				r += `<span class="red">Apath</span>`;
+				break;
+			case "crude":
+				r += `<span class="red">Crude</span>`;
+				break;
+			case "judgemental":
+				r += `<span class="red">Judge</span>`;
+				break;
+			case "cum addict":
+				r += `<span class="yellow">CumAdd</span>`;
+				break;
+			case "anal addict":
+				r += `<span class="yellow">AnalAdd</span>`;
+				break;
+			case "attention whore":
+				r += `<span class="yellow">Attention</span>`;
+				break;
+			case "breast growth":
+				r += `<span class="yellow">BoobObsess</span>`;
+				break;
+			case "abusive":
+				r += `<span class="yellow">Abusive</span>`;
+				break;
+			case "malicious":
+				r += `<span class="yellow">Malice</span>`;
+				break;
+			case "self hating":
+				r += `<span class="yellow">SelfHatr</span>`;
+				break;
+			case "neglectful":
+				r += `<span class="yellow">SelfNeglect</span>`;
+				break;
+			case "breeder":
+				r += `<span class="yellow">BreedObsess</span>`;
+				break;
+			default:
+				slave.sexualFlaw = "none";
+				break;
+		}
+		r += " ";
+	}	
+	
+	function short_behavior_quirk(slave) {
+		r += `<span class="green">`;
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				r += `Confid`;
+				break;
+			case "cutting":
+				r += `Cutting`;
+				break;
+			case "funny":
+				r += `Funny`;
+				break;
+			case "fitness":
+				r += `Fit`;
+				break;
+			case "adores women":
+				r += `Women+`;
+				break;
+			case "adores men":
+				r += `Men+`;
+				break;
+			case "insecure":
+				r += `Insec`;
+				break;
+			case "sinful":
+				r += `Sinf`;
+				break;
+			case "advocate":
+				r += `Advoc`;
+				break;
+			default:
+				slave.behavioralQuirk = "none";
+				break;
+		}
+		r += " ";
+	}
+	
+	function short_sex_quirk(slave) {
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				r += `Gagfuck`;
+				break;
+			case "painal queen":
+				r += `Painal`;
+				break;
+			case "strugglefuck queen":
+				r += `Struggle`;
+				break;
+			case "tease":
+				r += `Tease`;
+				break;
+			case "romantic":
+				r += `Romantic`;
+				break;
+			case "perverted":
+				r += `Perverted`;
+				break;
+			case "caring":
+				r += `Caring`;
+				break;
+			case "unflinching":
+				r += `Unflinch`;
+				break;
+			case "size queen":
+				r += `SizeQ`;
+				break;
+			default:
+				slave.sexualQuirk = "none";
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function long_fetish(slave) {
+		r += `<span class="lightcoral">`;
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
+					r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
+					r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
+					r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
+					r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
+					r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
+					r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
+					r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
+					r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
+					r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			default:
+				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function long_attraction(slave) {
+		if (slave.attrXY <= 5) {
+			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXY <= 15) {
+			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXY <= 35) {
+			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXY <= 65) {
+			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''}, `;
+		} else if (slave.attrXY <= 85) {
+			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
+				r += `<span class="green">Omnisexual!</span> `;
+			} else {
+				r += `<span class="green">Omnisexual nymphomaniac!</span> `;
+			}
+		} else {
+			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		}
+		if (slave.attrXX <= 5) {
+			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXX <= 15) {
+			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXX <= 35) {
+			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXX <= 65) {
+			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
+		} else if (slave.attrXX <= 85) {
+			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXX <= 95) {
+			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		}
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+				r += `<span class="green">Nymphomaniac!</span>`;
+			}
+		} else if (slave.energy > 80) {
+			r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 60) {
+			r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 40) {
+			r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 20) {
+			r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else {
+			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		}
+		r += " ";
+	}
+	
+	function long_smart_fetish(slave) {
+		if (slave.fetishKnown === 1) {
+			if (slave.clitSetting === "off") {
+				r += `SP off.`;
+			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+				r += `SP: submissive.`;
+			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+				r += `SP: oral.`;
+			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+				r += `SP: humiliation.`;
+			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+				r += `SP: anal.`;
+			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+				r += `SP: breasts.`;
+			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+				r += `SP: sadism.`;
+			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+				r += `SP: masochism.`;
+			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+				r += `SP: dominance.`;
+			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+				r += `SP: pregnancy.`;
+			} else if ((slave.fetish !== "none") && (slave.clitSetting === "vanilla")) {
+				r += `SP: vanilla.`;
+			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+				r += `SP: all.`;
+			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+				r += `SP: none.`;
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+				r += `SP: monitoring.`;
+			}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
+					r += `SP off.`;
+					break;
+				case "submissive":
+					r += `SP: submissive.`;
+					break;
+				case "oral":
+					r += `SP: oral.`;
+					break;
+				case "humiliation":
+					r += `SP: humiliation.`;
+					break;
+				case "anal":
+					r += `SP: anal.`;
+					break;
+				case "boobs":
+					r += `SP: breasts.`;
+					break;
+				case "sadist":
+					r += `SP: sadism.`;
+					break;
+				case "masochist":
+					r += `SP: masochism.`;
+					break;
+				case "dom":
+					r += `SP: dominance.`;
+					break;
+				case "pregnancy":
+					r += `SP: pregnancy.`;
+					break;
+				case "vanilla":
+					r += `SP: vanilla.`;
+					break;
+				case "all":
+					r += `SP: all.`;
+					break;
+				case "none":
+					r += `SP: none.`;
+					break;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_smart_attraction(slave) {
+		if (slave.attrKnown === 1) {
+			if ((slave.attrXX < 100) && (slave.clitSetting === "women")) {
+				r += `SP: women.`;
+			} else if ((slave.attrXY < 100) && (slave.clitSetting === "men")) {
+				r += `SP: men.`;
+			}
+		} else {
+			if (slave.clitSetting === "women") {
+				r += `SP: women.`;
+			} else if (slave.clitSetting === "men") {
+				r += `SP: men.`;
+			}
+		}
+		r += " ";
+	}
+	
+	function long_behavior_flaw(slave) {
+		r += `<span class="red">`;
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				r += `Arrogant.`;
+				break;
+			case "bitchy":
+				r += `Bitchy.`;
+				break;
+			case "odd":
+				r += `Odd.`;
+				break;
+			case "hates men":
+				r += `Hates men.`;
+				break;
+			case "hates women":
+				r += `Hates women.`;
+				break;
+			case "gluttonous":
+				r += `Stress eater.`;
+				break;
+			case "anorexic":
+				r += `Anorexic.`;
+				break;
+			case "devout":
+				r += `Devoutly religious.`;
+				break;
+			case "liberated":
+				r += `Mentally liberated.`;
+				break;
+			default:
+				slave.behavioralFlaw = "none";
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function long_sex_flaw(slave) {
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				r += `<span class="red">Hates oral.</span>`;
+				break;
+			case "hates anal":
+				r += `<span class="red">Hates anal.</span>`;
+				break;
+			case "hates penetration":
+				r += `<span class="red">Hates penetration.</span>`;
+				break;
+			case "shamefast":
+				r += `<span class="red">Shamefast.</span>`;
+				break;
+			case "idealistic":
+				r += `<span class="red">Sexually idealistic.</span>`;
+				break;
+			case "repressed":
+				r += `<span class="red">Sexually repressed.</span>`;
+				break;
+			case "apathetic":
+				r += `<span class="red">Sexually apathetic.</span>`;
+				break;
+			case "crude":
+				r += `<span class="red">Sexually crude.</span>`;
+				break;
+			case "judgemental":
+				r += `<span class="red">Sexually judgemental.</span>`;
+				break;
+			case "cum addict":
+				r += `<span class="yellow">Cum addict.</span>`;
+				break;
+			case "anal addict":
+				r += `<span class="yellow">Anal addict.</span>`;
+				break;
+			case "attention whore":
+				r += `<span class="yellow">Attention whore.</span>`;
+				break;
+			case "breast growth":
+				r += `<span class="yellow">Breast obsession.</span>`;
+				break;
+			case "abusive":
+				r += `<span class="yellow">Sexually abusive.</span>`;
+				break;
+			case "malicious":
+				r += `<span class="yellow">Sexually malicious.</span>`;
+				break;
+			case "self hating":
+				r += `<span class="yellow">Self hatred.</span>`;
+				break;
+			case "neglectful":
+				r += `<span class="yellow">Self neglectful.</span>`;
+				break;
+			case "breeder":
+				r += `<span class="yellow">Breeding obsession.</span>`;
+				break;
+			default:
+				slave.sexualFlaw = "none";
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_behavior_quirk(slave) {
+		r += `<span class="green">`;
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				r += `Confident.`;
+				break;
+			case "cutting":
+				r += `Cutting.`;
+				break;
+			case "funny":
+				r += `Funny.`;
+				break;
+			case "fitness":
+				r += `Fitness.`;
+				break;
+			case "adores women":
+				r += `Adores women.`;
+				break;
+			case "adores men":
+				r += `Adores men.`;
+				break;
+			case "insecure":
+				r += `Insecure.`;
+				break;
+			case "sinful":
+				r += `Sinful.`;
+				break;
+			case "advocate":
+				r += `Advocate.`;
+				break;
+			default:
+				slave.behavioralQuirk = "none";
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_sex_quirk(slave) {
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				r += `Gagfuck queen.`;
+				break;
+			case "painal queen":
+				r += `Painal queen.`;
+				break;
+			case "strugglefuck queen":
+				r += `Strugglefuck queen.`;
+				break;
+			case "tease":
+				r += `Tease.`;
+				break;
+			case "romantic":
+				r += `Romantic.`;
+				break;
+			case "perverted":
+				r += `Perverted.`;
+				break;
+			case "caring":
+				r += `Caring.`;
+				break;
+			case "unflinching":
+				r += `Unflinching.`;
+				break;
+			case "size queen":
+				r += `Size queen.`;
+				break;
+			default:
+				slave.sexualQuirk = "none";
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function short_extended_family(slave) {
+		let handled = 0;
+		if (slave.mother > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.mother;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
+				}
+			}
+			r += " ";
+		} else if (slave.mother === -1) {
+			r += `Your daughter`;
+			if (slave.relationship === -3) {
+				r += ` & wife`;
+				handled = 1;
+			} else if (slave.relationship === -2) {
+				r += ` & lover`;
+				handled = 1;
+			}
+			r += " ";
+		}
+		if (slave.father > 0 && slave.father !== slave.mother) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.father;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
+				}
+			}
+			r += " ";
+		} else if (slave.father === -1 && slave.mother !== -1) {
+			r += `Your daughter`;
+			if (slave.relationship === -3) {
+				r += ` & wife`;
+				handled = 1;
+			} else if (slave.relationship === -2) {
+				r += ` & lover`;
+				handled = 1;
+			}
+		}
+		if (slave.daughters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.mother === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
+				}
+			}
+			r += " ";
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.father === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
+				}
+			}
+			r += " ";
+		} else if (slave.daughters > 1) {
+			r += `multiple daughters `;
+		}
+		if (slave.sisters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return areSisters(s, slave) > 0;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
+				}
+			}
+			r += " ";
+		} else if (slave.sisters > 1) {
+			r += `multiple sisters `;
+		}
+		if (slave.relationship > 0 && handled !== 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				switch (slave.relationship) {
+					case 1:
+						r += ` friend`;
+						break;
+					case 2:
+						r += ` BFF`;
+						break;
+					case 3:
+						r += ` FWB`;
+						break;
+					case 4:
+						r += ` lover`;
+						break;
+					case 5:
+						r += ` wife`;
+						break;
+				}
+			}
+		} else if (slave.relationship === -3) {
+			r += `Your wife`;
+		} else if (slave.relationship === -2) {
+			r += `E Bonded`;
+		} else if (slave.relationship === -1) {
+			r += `E Slut`;
+		}
+		r += " ";
+	}
+	
+	function short_legacy_family(slave) {
+		if (slave.relation !== 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
+			}
+		}
+		if (slave.relationship > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				switch (slave.relationship) {
+					case 1:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` friend`;
+						break;
+					case 2:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` BFF`;
+						break;
+					case 3:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` FWB`;
+						break;
+					case 4:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` lover`;
+						break;
+					case 5:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` wife`;
+						break;
+				}
+			}
+		} else if (slave.relationship === -3) {
+			r += `Your wife`;
+		} else if (slave.relationship === -2) {
+			r += `E Bonded`;
+		} else if (slave.relationship === -1) {
+			r += `E Slut`;
+		}
+	}
+	
+	function short_rival(slave) {
+		if (slave.rivalry !== 0) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.rivalryTarget;
+			});
+			if (_ssj !== -1) {
+				r += `<span class="lightsalmon">`;
+				if (slave.rivalry <= 1) {
+					r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
+				} else if (slave.rivalry <= 2) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s rival`;
+				} else {
+					r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
+				}
+				r += `</span> `;
+			}
+		}
+	}
+	
+	function long_extended_family(slave) {
+		let handled = 0;
+		if (slave.mother > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.mother;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.mother === -1) {
+			r += `Your `;
+			if (slave.relationship === -3) {
+				r += `<span class="lightgreen">daughter and wife.</span> `;
+				handled = 1;
+			} else if (slave.relationship === -2) {
+				r += `<span class="lightgreen">daughter and lover.</span> `;
+				handled = 1;
+			} else {
+				r += `<span class="lightgreen">daughter.</span> `;
+			}
+		}
+		if (slave.father > 0 && slave.father !== slave.mother) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.father;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.father === -1 && slave.father !== slave.mother) {
+			r += `Your `;
+			if (slave.relationship === -3) {
+				r += `<span class="lightgreen">daughter and wife.</span> `;
+				handled = 1;
+			} else if (slave.relationship === -2) {
+				r += `<span class="lightgreen">daughter and lover.</span> `;
+				handled = 1;
+			} else {
+				r += `<span class="lightgreen">daughter.</span> `;
+			}
+		}
+		if (slave.daughters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.mother === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
+			}
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.father === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.daughters > 1) {
+			if (slave.daughters > 10) {
+				r += `<span class="lightgreen">Has tons of daughters.</span> `;
+			} else if (slave.daughters > 5) {
+				r += `<span class="lightgreen">Has many daughters.</span> `;
+			} else {
+				r += `<span class="lightgreen">Has several daughters.</span> `;
+			}
+		}
+		if (slave.sisters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return areSisters(s, slave) > 0;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.sisters > 1) {
+			if (slave.sisters > 10) {
+				r += `<span class="lightgreen">One of many sisters.</span> `;
+			} else if (slave.sisters > 5) {
+				r += `<span class="lightgreen">Has many sisters.</span> `;
+			} else {
+				r += `<span class="lightgreen">Has several sisters.</span> `;
+			}
+		}
+		if (slave.relationship > 0 && handled !== 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+				switch (slave.relationship) {
+					case 1:
+						r += `<span class="lightgreen">friend.</span> `;
+						break;
+					case 2:
+						r += `<span class="lightgreen">best friend.</span> `;
+						break;
+					case 3:
+						r += `<span class="lightgreen">FWB.</span> `;
+						break;
+					case 4:
+						r += `<span class="lightgreen">lover.</span> `;
+						break;
+					case 5:
+						r += `<span class="lightgreen">slave wife.</span> `;
+						break;
+				}
+			}
+		} else if (slave.relationship === -3) {
+			r += `<span class="lightgreen">Your wife.</span> `;
+		} else if (slave.relationship === -2) {
+			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
+		} else if (slave.relationship === -1) {
+			r += `<span class="lightgreen">Emotional slut.</span> `;
+		}
+	}
+	
+	function long_legacy_family(slave) {
+		if (slave.relation !== 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+				if (slave.relationshipTarget !== slave.relationTarget) {
+					r += `<span class="lightgreen">${slave.relation}</span>. `;
+				} else {
+					r += `<span class="lightgreen">${slave.relation}</span> `;
+				}
+				if (slave.relationship <= 0) {
+					r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+				}
+			}
+		}
+		if (slave.relationship > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				switch (slave.relationship) {
+					case 1:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">friend.</span> `;
+						break;
+					case 2:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">best friend.</span> `;
+						break;
+					case 3:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">FWB.</span> `;
+						break;
+					case 4:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">lover.</span> `;
+						break;
+					case 5:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">slave wife.</span> `;
+						break;
+				}
+			}
+		} else if (slave.relationship === -3) {
+			r += `<span class="lightgreen">Your wife.</span> `;
+		} else if (slave.relationship === -2) {
+			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
+		} else if (slave.relationship === -1) {
+			r += `<span class="lightgreen">Emotional slut.</span> `;
+		}
+	}
+	
+	function long_rival(slave) {
+		if (slave.rivalry !== 0) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.rivalryTarget;
+			});
+			if (_ssj !== -1) {
+				if (slave.rivalry <= 1) {
+					r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
+				} else if (slave.rivalry <= 2) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightsalmon">rival.</span>`;
+				} else {
+					r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
+				}
+			}
+			r += " ";
+		}
+	}
+	
+	function long_clothes(slave) {
+		switch (slave.clothes) {
+			case "attractive lingerie":
+				r += `Lingerie.`;
+				break;
+			case "a succubus outfit":
+				r += `Succubus outfit.`;
+				break;
+			case "a string bikini":
+				r += `String bikini.`;
+				break;
+			case "a scalemail bikini":
+				r += `Scalemail bikini.`;
+				break;
+			case "a monokini":
+				r += `Monokini.`;
+				break;
+			case "an apron":
+				r += `Apron.`;
+				break;
+			case "a cybersuit":
+				r += `Cybersuit.`;
+				break;
+			case "cutoffs and a t-shirt":
+				r += `Cutoffs, t-shirt.`;
+				break;
+			case "a slutty outfit":
+				r += `Slutty outfit.`;
+				break;
+			case "uncomfortable straps":
+				r += `Leather straps.`;
+				break;
+			case "a fallen nuns habit":
+				r += `Slutty habit.`;
+				break;
+			case "a chattel habit":
+				r += `Chattel habit.`;
+				break;
+			case "a penitent nuns habit":
+				r += `Cilice.`;
+				break;
+			case "slutty jewelry":
+				r += `Bangles.`;
+				break;
+			case "attractive lingerie for a pregnant woman":
+				r += `Preggo lingerie.`;
+				break;
+			case "a maternity dress":
+				r += `Maternity dress.`;
+				break;
+			case "stretch pants and a crop-top":
+				r += `Stretch pants, crop-top.`;
+				break;
+			case "harem gauze":
+				r += `Harem outfit.`;
+				break;
+			case "a slave gown":
+				r += `Slave gown.`;
+				break;
+			case "a halter top dress":
+				r += `Halter top dress.`;
+				break;
+			case "a mini dress":
+				r += `Mini dress.`;
+				break;
+			case "a ball gown":
+				r += `Ball gown.`;
+				break;
+			case "slutty business attire":
+				r += `Slutty suit.`;
+				break;
+			case "nice business attire":
+				r += `Nice suit.`;
+				break;
+			case "a comfortable bodysuit":
+				r += `Bodysuit.`;
+				break;
+			case "a military uniform":
+				r += `Military uniform.`;
+				break;
+			case "a schutzstaffel uniform":
+				r += `Schutzstaffel uniform.`;
+				break;
+			case "a slutty schutzstaffel uniform":
+				r += `Slutty Schutzstaffel uniform.`;
+				break;
+			case "a red army uniform":
+				r += `Red Army uniform.`;
+				break;
+			case "a long qipao":
+				r += `Long Qipao.`;
+				break;
+			case "battlearmor":
+				r += `Battlearmor.`;
+				break;
+			case "a mounty outfit":
+				r += `Mounty outfit.`;
+				break;
+			case "a dirndl":
+				r += `Dirndl.`;
+				break;
+			case "lederhosen":
+				r += `Lederhosen.`;
+				break;
+			case "a biyelgee costume":
+				r += `Biyelgee costume.`;
+				break;
+			case "a leotard":
+				r += `Leotard.`;
+				break;
+			case "a bunny outfit":
+				r += `Bunny outfit.`;
+				break;
+			case "a slutty maid outfit":
+				r += `Slutty maid.`;
+				break;
+			case "a nice maid outfit":
+				r += `Nice maid.`;
+				break;
+			case "a slutty nurse outfit":
+				r += `Slutty nurse.`;
+				break;
+			case "a nice nurse outfit":
+				r += `Nice nurse.`;
+				break;
+			case "a schoolgirl outfit":
+				r += `Schoolgirl outfit.`;
+				break;
+			case "a kimono":
+				r += `Kimono.`;
+				break;
+			case "a hijab and abaya":
+				r += `Hijab and abaya.`;
+				break;
+			case "battledress":
+				r += `Battledress.`;
+				break;
+			case "a latex catsuit":
+				r += `Nice latex.`;
+				break;
+			case "restrictive latex":
+				r += `Bondage latex.`;
+				break;
+			case "conservative clothing":
+				r += `Conservative clothing.`;
+				break;
+			case "chains":
+				r += `Chains.`;
+				break;
+			case "a cheerleader outfit":
+				r += `Cheerleader.`;
+				break;
+			case "clubslut netting":
+				r += `Netting.`;
+				break;
+			case "shibari ropes":
+				r += `Shibari.`;
+				break;
+			case "Western clothing":
+				r += `Chaps.`;
+				break;
+			case "body oil":
+				r += `Body oil.`;
+				break;
+			case "a toga":
+				r += `Toga.`;
+				break;
+			case "a huipil":
+				r += `Huipil.`;
+				break;
+			case "a slutty qipao":
+				r += `Qipao.`;
+				break;
+			case "spats and a tank top":
+				r += `Spats, tank top.`;
+				break;
+			default:
+				r += `Naked.`;
+				break;
+		}
+		r += " ";
+	}
+
+	function long_collar(slave) {
+		switch (slave.collar) {
+			case "uncomfortable leather":
+				r += `Leather collar.`;
+				break;
+			case "tight steel":
+				r += `Steel collar.`;
+				break;
+			case "preg biometrics":
+				r += `Pregnancy biometrics collar.`;
+				break;
+			case "cruel retirement counter":
+				r += `Cruel counter collar.`;
+				break;
+			case "shock punishment":
+				r += `Shock collar.`;
+				break;
+			case "dildo gag":
+				r += `Dildo gag.`;
+				break;
+			case "massive dildo gag":
+				r += `Throat-bulging dildo gag.`;
+				break;
+			case "neck corset":
+				r += `Neck corset.`;
+				break;
+			case "stylish leather":
+				r += `Stylish leather collar.`;
+				break;
+			case "satin choker":
+				r += `Satin choker.`;
+				break;
+			case "silk ribbon":
+				r += `Silken ribbon.`;
+				break;
+			case "heavy gold":
+				r += `Gold collar.`;
+				break;
+			case "bowtie":
+				r += `Bowtie collar.`;
+				break;
+			case "pretty jewelry":
+				r += `Pretty collar.`;
+				break;
+			case "nice retirement counter":
+				r += `Nice counter collar.`;
+				break;
+			case "leather with cowbell":
+				r += `Cowbell collar.`;
+				break;
+			case "ancient Egyptian":
+				r += `Wesekh.`;
+				break;
+			case "ball gag":
+				r += `Ball gag.`;
+				break;
+			case "bit gag":
+				r += `Bit gag.`;
+				break;
+			case "porcelain mask":
+				r += `Porcelain mask.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_belly(slave) {
+		switch (slave.bellyAccessory) {
+			case "shapewear":
+				r += `Shapewear.`;
+				break;
+			case "a small empathy belly":
+				r += `Small fake belly.`;
+				break;
+			case "a medium empathy belly":
+				r += `Medium fake belly.`;
+				break;
+			case "a large empathy belly":
+				r += `Large fake belly.`;
+				break;
+			case "a huge empathy belly":
+				r += `Huge fake belly.`;
+				break;
+			case "a corset":
+				r += `Corset.`;
+				break;
+			case "an extreme corset":
+				r += `Extreme corsetage.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_legs(slave) {
+		if (slave.legAccessory === "short stockings") {
+			r += `Short stockings.`;
+		} else if (slave.legAccessory === "long stockings") {
+			r += `Long stockings.`;
+		}
+		r += " ";
+	}
+	
+	function long_shoes(slave) {
+		if (slave.shoes === "heels") {
+			r += `Heels.`;
+		} else if (slave.shoes === "pumps") {
+			r += `Pumps.`;
+		} else if (slave.shoes === "extreme heels") {
+			r += `Extreme heels.`;
+		} else if (slave.shoes === "boots") {
+			r += `Boots.`;
+		} else if (slave.heels === 1) {
+			r += `<span class="yellow">Crawling.</span>`;
+		} else if (slave.shoes === "flats") {
+			r += `Flats.`;
+		}
+		r += " ";
+	}
+	
+	function long_vaginal_acc(slave) {
+		switch (slave.vaginalAccessory) {
+			case "chastity belt":
+				r += `Vaginal chastity.`;
+				break;
+			case "combined chastity":
+				r += `Combined chastity.`;
+				break;
+			case "anal chastity":
+				r += `Anal chastity.`;
+				break;
+			case "dildo":
+				r += `Vaginal dildo.`;
+				break;
+			case "large dildo":
+				r += `Large vaginal dildo.`;
+				break;
+			case "huge dildo":
+				r += `Huge vaginal dildo.`;
+				break;
+			case "long dildo":
+				r += `Long vaginal dildo.`;
+				break;
+			case "long, large dildo":
+				r += `Long and large vaginal dildo.`;
+				break;
+			case "long, huge dildo":
+				r += `Long and wide vaginal dildo.`;
+				break;
+		}
+		r += " ";
+	}
+	
+	function long_dick_acc(slave) {
+		if (slave.dickAccessory === "chastity") {
+			r += `Chastity cage.`;
+		} else if (slave.dickAccessory === "combined chastity") {
+			r += `Combined chastity.`;
+		} else if (slave.dickAccessory === "anal chastity") {
+			r += `Anal chastity.`;
+		}
+		r += " ";
+	}
+	
+	function long_buttplug(slave) {
+		switch (slave.buttplug) {
+			case "plug":
+				r += `Buttplug.`;
+				break;
+			case "large plug":
+				r += `Large buttplug.`;
+				break;
+			case "huge plug":
+				r += `Huge buttplug.`;
+				break;
+			case "long plug":
+				r += `Long buttplug.`;
+				break;
+			case "long, large plug":
+				r += `Large, long buttplug.`;
+				break;
+			case "long, huge plug":
+				r += `Enormous buttplug.`;
+				break;
+		}
+		r += " ";
+		switch (slave.buttplugAttachment) {
+			case "tail":
+				r += `Attached tail. `;
+				break;
+		}
+	}
+	
+	function rules_assistant(slave) {
+		if (slave.useRulesAssistant === 0) {
+			r += `<span class="lightgreen">RA-Exempt</span> `;
+		} else if (V.abbreviateRulesets === 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
+			r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(", ") }`;
+		}
+	}
+	
+	function origins(slave) {
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		r += `<span class="gray">${slave.origin}</span>`;
+	}
+	
+	return SlaveSummaryUncached;
+})();
 	
 /*:: colorModeJS [script]*/
 
-- 
GitLab


From f2599a5959e38a3c8e35865c6f55775c8f43f3d6 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 18 Jul 2018 12:31:30 -0400
Subject: [PATCH 080/189] Hope this works

---
 devNotes/twine JS.txt | 20689 ++++++++++++++++++++--------------------
 1 file changed, 10408 insertions(+), 10281 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 79d93f7c99e..c7f8bd1a097 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -36,9 +36,7 @@ if (typeof interpolate == "undefined") {
 	};
 	window.interpolate = interpolate;
 }
-config.history.maxStates = 1;
 
-config.saves.autosave = "autosave";
 window.isFullyPotent = function(slave) {
 	if (!slave) {
 		return null;
@@ -514,9 +512,9 @@ window.tooBigBalls = function(slave){
 window.tooBigDick = function(slave){
 	if (!slave) {
 		return null;
-	} else if (slave.dick >= 15+(slave.muscles*.1) && slave.physicalAge <= 3 && slave.dick !== 0) {
+	} else if (slave.dick >= 20+(slave.muscles*.1) && slave.physicalAge <= 3 && slave.dick !== 0) {
 		return true;
-	} else if (slave.dick >= 30+(slave.muscles*.3) && slave.physicalAge <= 12) {
+	} else if (slave.dick >= 45+(slave.muscles*.3) && slave.physicalAge <= 12) {
 		return true;
 	} else if (slave.dick >= 68+(slave.muscles*.4)) {
 		return true;
@@ -2553,6 +2551,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			nails: "no default setting",
 			hColor: "no default setting",
 			hLength: "no default setting",
+			haircuts: "no default setting",
 			hStyle: "no default setting",
 			pubicHColor: "no default setting",
 			pubicHStyle: "no default setting",
@@ -2633,6 +2632,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			pregSpeed: "no default setting",
 			bellyImplantVol: -1,
 			teeth: "no default setting",
+			label: "no default setting",
 		}
 	};
 	return rule;
@@ -2644,7 +2644,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 window.RulesDeconfliction = function RulesDeconfliction(slave) {
 	const before = clone(slave);
 	DefaultRules(slave);
-	V.slaveAfterRA = clone(slave);
+	State.variables.slaveAfterRA = clone(slave);
 	slave = before;
 }
 
@@ -2871,7 +2871,7 @@ window.Height = (function(){
 		"Finnish": 165.3, "French Guianan": 157, "French Polynesian": undefined, "French": 162.5, "Gabonese": 158.4, "Gambian": 157.8, "Georgian": 160.5, "German": 162.8, "Ghanan": 158.5, 
 		"Greek": 165, "Greenlandic": undefined, "Grenadian": undefined, "Guamanian": undefined, "Guatemalan": 147.3, "Guinean": 158.8, "Guyanese": 157.9, "Haitian": 158.6, "Honduran": 152.0, "Hungarian": 164, 
 		"I-Kiribati": undefined, "Icelandic": 168, "Indian": 151.9, "Indonesian": 147, "Iranian": 157.2, "Iraqi": 155.8, "Irish": 163, "Israeli": 166, "Italian": 162.5, "Ivorian": 158.9, 
-		"Jamaican": 160.8, "Japanese": 158, "Jordanian": 158.2, "Kazakh": 159.8, "Kenyan": 159.4, "Kittitian": 156.9, "Korean": 156.15, "Kosovan": undefined, "Kurdish": undefined, "Kuwaiti": 156.1, 
+		"Jamaican": 160.8, "Japanese": 158, "Jordanian": 158.2, "Kazakh": 159.8, "Kenyan": 159.4, "Kittitian": 156.9, "Korean": 156.15, "Kosovan": 165.7, "Kurdish": undefined, "Kuwaiti": 156.1, 
 		"Kyrgyz": 158.6, "Laotian": undefined, "Latvian": 165.7, "Lebanese": 165, "Liberian": 157.3, "Libyan": 160.5, "a Liechtensteiner": 164.3, "Lithuanian": 167.5, "Luxembourgian": 164.8, 
 		"Macedonian": undefined, "Malagasy": 154.3, "Malawian": 155, "Malaysian": 154.7, "Maldivian": undefined, "Malian": 160.4, "Maltese": 159.9, "Marshallese": undefined, "Mauritanian": undefined, 
 		"Mauritian": undefined, "Mexican": 154, "Micronesian": undefined, "Moldovan": 161.2, "Monégasque": undefined, "Mongolian": 157.7, "Montenegrin": 168.4, "Moroccan": 158.5, "Mosotho": 157.6, 
@@ -2897,8 +2897,8 @@ window.Height = (function(){
 		"Egyptian": 170.3, "Emirati": 170.3, "Equatoguinean": undefined, "Eritrean": undefined, "Estonian": 179.1, "Ethiopian": undefined, "Fijian": 170.4, "Filipina": 163.5, "Finnish": 178.9, 
 		"French Guianan": 168, "French Polynesian": undefined, "French": 175.6, "Gabonese": undefined, "Gambian": 168, "Georgian": 172.7, "German": 175.4, "Ghanan": 169.5, "Greek": 177, "Greenlandic": undefined, 
 		"Grenadian": undefined, "Guamanian": undefined, "Guatemalan": 157.5, "Guinean": undefined, "Guyanese": 168.6, "Haitian": undefined, "Honduran": undefined, "Hungarian": 176, "I-Kiribati": undefined, "Icelandic": 181, 
-		"Indian": 164.7, "Indonesian": 158, "Iranian": 170.3, "Iraqi": 165.4, "Irish": 177, "Israeli": 177, "Italian": 176.5, "Ivorian": undefined, "Jamaican": 171.8, "Japanese": 172, "Jordanian": undefined, 
-		"Kazakh": 169, "Kenyan": 170.0, "Kittitian": 164.4, "Korean": 168.15, "Kosovan": undefined, "Kurdish": undefined, "Kuwaiti": 169.2, "Kyrgyz": 170.4, "Laotian": 160.5, "Latvian": 174.2, "Lebanese": 176, 
+		"Indian": 164.7, "Indonesian": 158, "Iranian": 170.3, "Iraqi": 165.4, "Irish": 177, "Israeli": 177, "Italian": 176.5, "Ivorian": 170.1, "Jamaican": 171.8, "Japanese": 172, "Jordanian": undefined, 
+		"Kazakh": 169, "Kenyan": 170.0, "Kittitian": 164.4, "Korean": 168.15, "Kosovan": 179.5, "Kurdish": undefined, "Kuwaiti": 169.2, "Kyrgyz": 170.4, "Laotian": 160.5, "Latvian": 174.2, "Lebanese": 176, 
 		"Liberian": undefined, "Libyan": 171.3, "a Liechtensteiner": 175.4, "Lithuanian": 177.2, "Luxembourgian": 179.9, "Macedonian": undefined, "Malagasy": 161.5, "Malawian": 166, "Malaysian": 166.3, 
 		"Maldivian": undefined, "Malian": 171.3, "Maltese": 169.9, "Marshallese": undefined, "Mauritanian": undefined, "Mauritian": undefined, "Mexican": 167, "Micronesian": undefined, "Moldovan": undefined, 
 		"Monégasque": undefined, "Mongolian": 168.4, "Montenegrin": 183.2, "Moroccan": 172.7, "Mosotho": undefined, "Motswana": undefined, "Mozambican": undefined, "Namibian": undefined, "Nauruan": undefined, 
@@ -3359,6 +3359,76 @@ window.getSlaveTrustClass = function (slave) {
 	}
 };
 
+//takes an integer e.g. $activeSlave.hLength, returns a string in the format 10 inches
+window.cmToInchString = function(s) {
+	return Math.round(s/2.54) + (Math.round(s/2.54) === 1?" inch":" inches");
+};
+
+//takes an integer e.g. $activeSlave.height, returns a string in the format 6'5"
+window.cmToFootInchString = function(s) {
+	if (Math.round(s/2.54) < 12)
+		return cmToInchString(s);
+	return Math.trunc(Math.round(s/2.54)/12) + `'` + Math.round(s/2.54)%12 + `"`;
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns a string in the format 6 inches
+window.dickToInchString = function(s) {
+	return cmToInchString(dickToCM(s));
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns an int of the dick length in cm
+window.dickToCM = function(s) {
+	return (s<9?s*5:(s===9?50:s*6));
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns a string in the format 3 inches
+window.ballsToInchString = function(s) {
+	return cmToInchString(ballsToCM(s));
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns an int of the ball size in cm
+window.ballsToCM = function(s) {
+	if (s < 2)
+		return 0;
+	return (s<10?(s-1)*2:s*2);
+};
+
+//takes a dick value e.g. $activeSlave.dick, returns a string in the format of either `20cm (8 inches)`, `8 inches`, or `20cm`
+window.dickToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return dickToCM(s) + "cm (" + dickToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return dickToInchString(s);
+	return dickToCM(s) + "cm";
+};
+
+//takes a ball value e.g. $activeSlave.balls, returns a string in the format of either `20cm (8 inches)`, `8 inches`, or `20cm`
+window.ballsToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return ballsToCM(s) + "cm (" + ballsToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return ballsToInchString(s);
+	return ballsToCM(s) + "cm";
+};
+
+//takes an int in centimetres e.g. $activeSlave.height, returns a string in the format of either `200cm (6'7")`, `6'7"`, or `200cm`
+window.heightToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return s + "cm (" + cmToFootInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return cmToFootInchString(s);
+	return s + "cm";
+};
+
+//takes an int in centimetres e.g. $activeSlave.hLength, returns a string in the format of either `30cm (12 inches)`, `12 inches`, or `30cm`
+window.lengthToEitherUnit = function(s) {
+	if (State.variables.showInches === 1)
+		return s + "cm (" + cmToInchString(s) + ")";
+	if (State.variables.showInches === 2)
+		return cmToInchString(s);
+	return s + "cm";
+};
+
 /*:: Span Macro JS [script]*/
 
 /*
@@ -10770,11120 +10840,11177 @@ window.HSM = function() {
 	else if (State.variables.PC.hacking >= 100)
 		return .75;
 	}
+	
+/*:: colorModeJS [script]*/
 
-/*:: Slave Summary Widgets JS [script]*/
+window.setColors = function(colorMap){
+    let styleSheetArray = Array.from(document.styleSheets);
+    styleSheetArray.forEach( styleSheet => {
+        let cssRules = Array.from(styleSheet.cssRules);
+        cssRules.forEach( cssRule => {
+            if ( cssRule.type === 1 ){
+                let color = cssRule.style.color;
+                let bgcolor = cssRule.style.backgroundColor;
+                if (
+                    color != "" &&
+                    color != "inherit" ){
+                    cssRule.style.color = colorMap[color] || color;
+                    console.log('color: ',color);
+                }
+                if (
+                    bgcolor != "" &&
+                    bgcolor != "inherit" &&
+                    bgcolor != "transparent" ){
+                    cssRule.style.backgroundColor = colorMap[bgcolor] || bgcolor;
+                    console.log('color: ',color);
+                }
+            }
+        });
+    });
+}
 
-window.clearSummaryCache = function clearSummaryCache(slave) {
-	if (!slave)
-		setup.summaryCache = {};
-	else if (slave instanceof Object && slave.ID !== Infinity && slave.ID !== -Infinity)
-		setup.summaryCache[slave.ID] = undefined;
-	else
-		setup.summaryCache[slave] = undefined;
+/*:: HTAG Macro JS [script]*/
+
+/*
+ * <<htag>> macro
+ * A simple macro which allows to create wrapping html elements with dynamic IDs.
+ *      idea blatantly robbed from the spanMacroJS.tw  but expanded to a more generic 
+ *      case, allowing <div>, <button> or whatever you want. elements, default is for
+ *      the div though.  In addition, you can pass an object in as the first argument 
+ *      instead of an id, and each of the object's attributes will become attributes
+ *      of the generate tag.
+ *
+ * Usage: <<htag id>>...<</htag>>    
+ * Usage: <<htag id tag>>...<</htag>>    
+ * Usage: <<htag atributes>>...<</htag>>    
+ * Usage: <<htag atributes tag>>...<</htag>>    
+ */
+Macro.add('htag', {
+	tags: null,
+	handler() {
+		const payload = this.payload[0].contents.replace(/(^\n+|\n+$)/, '');
+		let htag = 'div';
+		let attributes;
+		function munge (val, key)  {
+			return  key + '="' + val + '"';
+		}
+		
+		if (1  >  this.args.length)
+			return this.error('invalid syntax, format: <<htag [id [ tag ] | attributes [ tag ] >>');
+		if (1  <  this.args.length)
+			htag = String(this.args[1]).trim();
+		if ("object" === typeof this.args[0])
+			attributes = $.map(this.args[0], munge).join(" ");
+		else
+			attributes = 'id="' + String(this.args[0]).trim() + '"';
+		if (Config.debug)
+			this.debugView.modes({block: true});
+		
+		jQuery('<' + htag + ' ' + attributes + ' />')
+			.wiki(payload)
+			.appendTo(this.output);
+	}
+});
+
+/*:: Quick List [script]*/
+
+window.sortDomObjects = function (objects, attrName, reverse = 0) {
+	reverse = (reverse) ? -1 : 1;
+	function sortingByAttr (a, b) {
+		var aVal = a.getAttribute(attrName);
+		var bVal = b.getAttribute(attrName);
+		var aInt = parseInt(aVal);
+		if  (!isNaN(aInt))
+			return ((parseInt(bVal) - aInt) * reverse);
+		else if (bVal > aVal)
+			return -1 * reverse;
+		return ((aVal == bVal) ? 0 : 1) * reverse;
+	}
+	return objects.toArray().sort(sortingByAttr);
 };
 
-window.SlaveSummary = function SlaveSummary(slave) {
-	const V = State.variables;
-	if(V.useSummaryCache) {
-		if (setup.summaryCache[slave.ID] === undefined)
-			setup.summaryCache[slave.ID] = SlaveSummaryUncached(slave);
-		//this.output.appendChild(setup.summaryCache[State.temporary.Slave.ID].cloneNode(true))
-		return setup.summaryCache[slave.ID];
-	} else return SlaveSummaryUncached(slave);
+window.sortButtonsByDevotion = function () {
+	var $sortedButtons = $('#qlWrapper button').remove();
+	$sortedButtons = sortDomObjects($sortedButtons, 'data-devotion');
+	$($sortedButtons).appendTo($('#qlWrapper'));
+	quickListBuildLinks();
 };
 
-window.SlaveSummaryUncached = (function(){
+window.sortButtonsByTrust = function () {
+	var $sortedButtons = $('#qlWrapper button').remove();
+	$sortedButtons = sortDomObjects($sortedButtons, 'data-trust');
+	$($sortedButtons).appendTo($('#qlWrapper'));
+	quickListBuildLinks();
+};
+
+window.quickListBuildLinks = function () {
+	$("[data-scroll-to]").click(function() {
+		var $this = $(this), $toElement = $this.attr('data-scroll-to');
+		// note the * 1 enforces $offset to be an integer, without
+		// it we scroll to True, which goes nowhere fast.
+                var $offset = $this.attr('data-scroll-offset') * 1 || 0;
+                var $speed =   $this.attr('data-scroll-speed') * 1 || 500;
+		// Use javascript scrollTop animation for in page navigation.
+		$('html, body').animate({
+			scrollTop: $($toElement).offset().top + $offset
+		}, $speed);
+	});
+};
+
+window.sortIncubatorPossiblesByName = function () {
+	var $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
+	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-name');
+	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
+};
+
+window.sortIncubatorPossiblesByPregnancyWeek = function () {
+	var $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
+	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-preg-week');
+	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
+};
+
+window.sortIncubatorPossiblesByPregnancyCount = function () {
+	var $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
+	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-preg-count');
+	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
+};
+
+window.sortIncubatorPossiblesByReservedSpots = function () {
+	var $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
+	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-reserved-spots');
+	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
+};
+
+window.sortIncubatorPossiblesByPreviousSort = function () {
+	var sort = State.variables.sortIncubatorList;
+	console.log(State.variables);
+	console.log('sort', sort);
+	if ('unsorted' !==  sort) {
+		console.log("sort isn't unsorted", sort);
+		if  ('Name' ===  sort) {
+			console.log("sort is name", sort);
+			sortIncubatorPossiblesByName();
+		} else if ('Reserved Incubator Spots' === sort) {
+			console.log("sort is spots", sort);
+			sortIncubatorPossiblesByReservedSpots();
+		} else if ('Pregnancy Week' === sort) {
+			console.log("sort is week", sort);
+			sortIncubatorPossiblesByPregnancyWeek();
+		} else if ('Number of Children' === sort) {
+			console.log("sort is count", sort);
+			sortIncubatorPossiblesByPregnancyCount();
+		}
+	}
+};
+
+/*:: DefaultRules [script]*/
+// this code applies RA rules onto slaves
+
+window.DefaultRules = (function() {
 	"use strict";
-	let V, r;
-	
-	function SlaveSummaryUncached(slave) {
+	let V;
+	let r;
+
+	function DefaultRules(slave) {
+		if (slave.useRulesAssistant === 0) return r; //exempted
+		
 		V = State.variables;
 		r = "";
-		if (V.abbreviateDevotion === 1)
-			short_devotion(slave);
-		else if (V.abbreviateDevotion === 2)
-			long_devotion(slave);
-		if (slave.fuckdoll === 0) {
-			if (V.abbreviateRules === 1)
-				short_rules(slave);
-			else if (V.abbreviateRules === 2)
-				long_rules(slave);
-		}
-		if (slave.tired !== 0)
-			r += `Tired.`;
-		if (V.abbreviateDiet === 1)
-			short_weight(slave);
-		else if (V.abbreviateDiet === 2)
-			long_weight(slave);
-		if (V.abbreviateDiet === 1)
-			short_diet(slave);
-		else if (V.abbreviateDiet === 2)
-			long_diet(slave);
-		if (V.abbreviateHealth === 1)
-			short_health(slave);
-		else if (V.abbreviateHealth === 2)
-			long_health(slave);
-		if (V.abbreviateDrugs === 1)
-			short_drugs(slave);
-		else if (V.abbreviateDrugs === 2)
-			long_drugs(slave);
-		if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
-			r += `<br>`;
-			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
-				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		let rule = MergeRules(slave);
+		if (Object.keys(rule).length === 0) return r; // no rules apply
+
+		AssignJobToSlave(slave, rule);
+		if(slave.fuckdoll === 0) {
+			ProcessClothing(slave, rule);
+			ProcessCollar(slave, rule);
+			ProcessEyewear(slave, rule);
+			ProcessDildos(slave, rule);
+			ProcessDickAccessories(slave, rule);
+			ProcessAnalAccessories(slave, rule);
+			ProcessShoes(slave, rule);
+			ProcessBellyAccessories(slave, rule);
+			ProcessLegAccessory(slave, rule);
 		}
-		V.desc = SlaveTitle(slave);
-		V.seed = V.desc.substring(0, 1);
-		V.seed = V.seed.toUpperCase();
-		V.desc = V.seed + V.desc.substring(1);
-		r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong> `;
-		if (V.seeRace === 1) {
-			r += `<span class="tan">`;
-			if (V.abbreviateRace === 1)
-				short_race(slave);
-			else if (V.abbreviateRace === 2)
-				long_race(slave);
-			r += `</span> `;
-		}
-		if (V.abbreviateNationality === 1)
-			short_nationality(slave);
-		else if (V.abbreviateNationality === 2)
-			long_nationality(slave);
-		if (V.abbreviatePhysicals === 1)
-			short_skin(slave);
-		else
-			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span> `;
-		if (V.abbreviateGenitalia === 1)
-			short_genitals(slave);
-		else if (V.abbreviateGenitalia === 2)
-			long_genitals(slave);
-		if (V.abbreviatePhysicals === 1) {
-			short_age(slave);
-			short_face(slave);
-			short_eyes(slave);
-			if (slave.markings !== "none")
-				r += `Markings`;
-			short_lips(slave);
-			short_teeth(slave);
-			short_muscles(slave);
-			short_limbs(slave);
-			short_voice(slave);
-			short_tits_ass(slave);
-			short_hips(slave);
-			short_waist(slave);
-			short_implants(slave);
-			short_lactation(slave);
-			short_mods(slave);
-			r += `</span>`;
-		} else if (V.abbreviatePhysicals === 2) {
-			long_age(slave);
-			long_face(slave);
-			long_eyes(slave);
-			long_lips(slave);
-			long_teeth(slave);
-			long_muscles(slave);
-			long_limbs(slave);
-			long_voice(slave);
-			long_tits_ass(slave);
-			long_hips(slave);
-			long_waist(slave);
-			long_implants(slave);
-			long_lactation(slave);
-			long_mods(slave);
-			if (slave.brand !== 0)
-				r += `Branded.`;
-			r += `</span>`;
-		}
-		r += `<br>`;
-		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-		if (V.abbreviateSkills === 1) {
-			short_intelligence(slave);
-			short_sex_skills(slave);
-			if (slave.combatSkill > 0)
-				r += `C`;
-			r += `</span> `;
-			short_prestige(slave);
-		} else if (V.abbreviateSkills === 2) {
-			long_intelligence(slave);
-			long_sex_skills(slave);
-			if (slave.combatSkill > 0)
-				r += `Trained fighter.`;
-			r += `</span> `;
-			long_prestige(slave);
-		}
-		if (V.abbreviateMental === 1) {
-			if (slave.fetish !== "mindbroken") {
-				if (slave.fetishKnown === 1)
-					short_fetish(slave);
-				if (slave.attrKnown === 1)
-					short_attraction(slave);
-			}
-			if (slave.clitPiercing === 3) {
-				short_smart_fetish(slave);
-				short_smart_attraction(slave);
-			}
-			short_behavior_flaw(slave);
-			short_sex_flaw(slave);
-			short_behavior_quirk(slave);
-			short_sex_quirk(slave);
-		} else if (V.abbreviateMental === 2) {
-			if (slave.fetish !== "mindbroken") {
-				if (slave.fetishKnown === 1)
-					long_fetish(slave);
-				if (slave.attrKnown === 1)
-					long_attraction(slave);
-			}
-			if (slave.clitPiercing === 3) {
-				long_smart_fetish(slave);
-				long_smart_attraction(slave);
-			}
-			long_behavior_flaw(slave);
-			long_sex_flaw(slave);
-			long_behavior_quirk(slave);
-			long_sex_quirk(slave);
-		}
-		if (slave.customLabel != "")
-			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
-		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
-			r += `<br>`;
-			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
-				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-		}
-		if (V.abbreviateMental === 1) {
-			r += `<span class="lightgreen">`;
-			if (V.familyTesting === 1)
-				short_extended_family(slave);
-			else
-				short_legacy_family(slave);
-			r += `</span>`;
-			short_rival(slave);
-		} else if (V.abbreviateMental === 2) {
-			if (V.familyTesting === 1)
-				long_extended_family(slave);
-			else
-				long_legacy_family(slave);
-			long_rival(slave);
-		}
-		if (slave.fuckdoll === 0) {
-			if (V.abbreviateClothes === 2) {
-				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-				if (slave.choosesOwnClothes === 1)
-					r += `Dressing herself. `;
-				long_clothes(slave);
-				long_collar(slave);
-				long_belly(slave);
-				if (slave.amp !== 1)
-					long_legs(slave);
-				if (canWalk(slave))
-					long_shoes(slave);
-				long_vaginal_acc(slave);
-				long_dick_acc(slave);
-				long_buttplug(slave);
-			}
+		ProcessBellyImplant(slave, rule);
+		if (isFertile(slave))
+			ProcessContraceptives(slave, rule);
+		ProcessOtherDrugs(slave, rule);
+		ProcessAssetGrowthDrugs(slave, rule);
+		ProcessDiet(slave, rule);
+		ProcessCuratives(slave, rule);
+		ProcessAphrodisiacs(slave, rule);
+		ProcessPenisHormones(slave, rule);
+		ProcessFemaleHormones(slave, rule);
+		ProcessPregnancyDrugs(slave, rule);
+		if(slave.fuckdoll === 0) {
+			ProcessLivingStandard(slave, rule);
+			ProcessSpeech(slave, rule);
+			ProcessRelationship(slave, rule);
+			ProcessRelease(slave, rule);
+			ProcessPunishment(slave, rule);
+			ProcessReward(slave, rule);
 		}
-		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-		rules_assistant(slave);
-		if (V.abbreviateOrigins === 2 && slave.origin !== 0)
-			origins(slave);
+		ProcessDietCum(slave, rule);
+		ProcessDietMilk(slave, rule);
+		ProcessTeeth(slave, rule);
+		ProcessStyle(slave, rule);
+		ProcessPiercings(slave, rule);
+		ProcessSmartPiercings(slave, rule);
+		ProcessTattoos(slave, rule);
+		ProcessPorn(slave, rule);
+		ProcessLabel(slave, rule);
 		return r;
 	}
-	
-	function short_devotion(slave) {
-		if (slave.fetish === "mindbroken") {
-			r += `<span class="red">MB</span>`;
-		} else if (slave.devotion < -95) {
-			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-		} else if (slave.devotion < -50) {
-			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-		} else if (slave.devotion < -20) {
-			r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-		} else if (slave.devotion <= 20) {
-			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-		} else if (slave.devotion <= 50) {
-			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-		} else if (slave.devotion <= 95) {
-			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-		} else {
-			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
-		}
-		r += " ";
-		if (slave.fetish === "mindbroken") {
-			return;
-		} else if (slave.trust < -95) {
-			r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		} else if (slave.trust < -50) {
-			r += `<span class="goldenrod">Terr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		} else if (slave.trust < -20) {
-			r += `<span class="gold">Fright${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		} else if (slave.trust <= 20) {
-			r += `<span class="yellow">Fear${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-		} else if (slave.trust <= 50) {
-			if (slave.devotion < -20) {
-				r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-			} else {
-				r += `<span class="mediumaquamarine">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-			}
-		} else if (slave.trust < 95) {
-			if (slave.devotion < -20) {
-				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-			} else {
-				r += `<span class="mediumseagreen">Trust${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-			}
-		} else {
-			if (slave.devotion < -20) {
-				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-			} else {
-				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
-			}
-		}
-		r += " ";
+
+	function MergeRules(slave) {
+		// merge all rules applying on a slave into one big rule
+		const rules = V.defaultRules.filter(x => ruleAppliesP(x.condition, slave));
+		slave.currentRules = rules.map(x => x.ID);
+		return mergeRules(rules.map(x => ProcessAssignments(slave, Object.assign({}, x.set))));
 	}
-	
-	function long_devotion(slave) {
-		if (slave.fetish === "mindbroken") {
-			r += `<span class="red">Mindbroken.</span>`;
-		} else if (slave.devotion < -95) {
-			r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-		} else if (slave.devotion < -50) {
-			r += `<span class="darkviolet">Hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-		} else if (slave.devotion < -20) {
-			r += `<span class="mediumorchid">Resistant${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-		} else if (slave.devotion <= 20) {
-			r += `<span class="yellow">Ambivalent${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-		} else if (slave.devotion <= 50) {
-			r += `<span class="hotpink">Accepting${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-		} else if (slave.devotion <= 95) {
-			r += `<span class="deeppink">Devoted${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-		} else {
-			r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
-		}
-		r += " ";
-		if (slave.fetish === "mindbroken") {
-			return;
-		} else if (slave.trust < -95) {
-			r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-		} else if (slave.trust < -50) {
-			r += `<span class="goldenrod">Terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-		} else if (slave.trust < -20) {
-			r += `<span class="gold">Frightened${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-		} else if (slave.trust <= 20) {
-			r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-		} else if (slave.trust <= 50) {
-			if (slave.devotion < -20) {
-				r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-			} else {
-				r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-			}
-		} else if (slave.trust < 95) {
-			if (slave.devotion < -20) {
-				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-			} else {
-				r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-			}
-		} else {
-			if (slave.devotion < -20) {
-				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-			} else {
-				r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
-			}
-		}
-		r += " ";
-	}
-	
-	function short_rules(slave) {
-		switch (slave.livingRules) {
-			case "luxurious":
-				r += `<strong>LS:Lux</strong>`;
-				break;
-			case "normal":
-				r += `<strong>LS:Nor</strong>`;
+
+	function ProcessAssignments(slave, rule) {
+		// Before merging rules, we process assignments for each rule separately so we can remove slaves from facilities when they no longer qualify, even if the final "winning" rule assigns them elsewhere 
+		// We also ignore inapplicable assignments for the current slave, so we only merge assignments that are valid 
+		switch (rule.setAssignment) {
+			case "no default setting":
+				delete rule.setAssignment;
 				break;
-			default:
-				r += `<strong>LS:Spa</strong>`;
+			
+			case "rest":
+			case "please you":
+				// slaves always qualify for this assignment 
 				break;
-		}
-		r += " ";
-		if (canTalk(slave)) {
-			switch (slave.speechRules) {
-				case "permissive":
-					r += `<strong>SpR:P</strong>`;
+
+			case "live with your Head Girl":
+				if ((V.HGSuiteSlaves < 1 && slave.indentureRestrictions <= 0))
 					break;
-				case "accent elimination":
-					r += `<strong>SpR:NoAcc</strong>`;
+				else {
+					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
+				break;
+
+			case "be confined in the arcade":
+				if ((V.arcadeSlaves < V.arcade && slave.indentureRestrictions <= 0 && slave.breedingMark != 1))
 					break;
-				case "language lessons":
-					r += `<strong>SpR:LL</strong>`;
+				else {
+					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
+				break;
+
+			case "serve in the master suite":
+				if ((V.masterSuiteSlaves < V.masterSuite && (slave.devotion > 20 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20))))
 					break;
-				default:
-					r += `<strong>SpR:R</strong>`;
+				else {
+					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
+				break;
+
+			case "get treatment in the clinic":
+				if ((V.clinicSlaves < V.clinic && (slave.health < 20 || (slave.chem > 15 && V.Nurse !== 0 && V.clinicUpgradeFilters == 1)) || ((slave.bellyImplant > -1) && (V.bellyImplants == 1)) || slave.preg > 1))
 					break;
-			}
-			r += " ";
-		}
-		switch (slave.relationshipRules) {
-			case "permissive":
-				r += `<strong>ReR:P</strong>`;
+				else {
+					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
 				break;
-			case "just friends":
-				r += `<strong>ReR:Fr</strong>`;
+
+			case "rest in the spa":
+				if ((V.spaSlaves < V.spa) && (slave.health < 20) || (slave.trust < 60) || (slave.devotion <= 60) || (slave.fetish == "mindbroken") && (slave.devotion >= -20))
+					break;
+				else {
+					RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
 				break;
-			default:
-				r += `<strong>ReR:R</strong>`;
+
+			case "work in the brothel":
+				if ((V.brothelSlaves < V.brothel && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && slave.breedingMark != 1))
+					break;
+				else {
+					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
 				break;
-		}
-		r += " ";
-		switch (slave.standardPunishment) {
-			case "confinement":
-				r += `<strong>Pun:Conf</strong>`;
+
+			case "serve in the club":
+				if ((V.clubSlaves < V.club && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && slave.breedingMark != 1))
+					break;
+				else {
+					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
 				break;
-			case "whipping":
-				r += `<strong>Pun:Whip</strong>`;
+
+			case "work in the dairy":
+				if ((V.dairy > V.dairySlaves+V.bioreactorsXY+V.bioreactorsXX+V.bioreactorsHerm+V.bioreactorsBarren)) {
+					if ((slave.indentureRestrictions > 0) && (V.dairyRestraintsSetting > 1))
+						break;
+					else if (((slave.indentureRestrictions > 1) && (V.dairyRestraintsSetting > 0)) || (slave.breedingMark == 1 && V.dairyRestriantsSettings > 0) || ((V.dairyPregSetting > 0) && ((slave.bellyImplant != -1) || (slave.broodmother !== 0))))
+						break;
+					else {
+						if ((slave.lactation > 0 || ((V.dairySlimMaintainUpgrade === 0 || V.dairySlimMaintain === 0) && (slave.boobs > 300 || slave.dick === 0 || V.dairyImplantsSetting == 1) && V.dairyImplantsSetting != 2)) || (slave.balls > 0)) {
+							if ((slave.devotion > 20) || ((slave.devotion >= -50) && (slave.trust < -20)) || (slave.trust < -50) || (slave.amp == 1) || (V.dairyRestraintsUpgrade == 1)) {
+								if ((V.dairyStimulatorsSetting < 2) || (slave.anus > 2) || (V.dairyPrepUpgrade == 1)) {
+									if ((V.dairyPregSetting < 2) || (slave.vagina > 2) || (slave.ovaries === 0) || (V.dairyPrepUpgrade == 1))
+										break;
+									else {
+										RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+										delete rule.setAssignment;
+									}
+								} else {
+									RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+									delete rule.setAssignment;
+								}
+							} else {
+								RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+								delete rule.setAssignment;
+							}
+						} else {
+							RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+							delete rule.setAssignment;
+						}
+					}
+				}
 				break;
-			case "chastity":
-				r += `<strong>Pun:Chas</strong>`;
+
+			case "work as a servant":
+				if ((V.servantsQuartersSlaves < V.servantsQuarters && canSee(slave) && canWalk(slave) && (slave.devotion >= -20 || slave.trust < -20 || (slave.devotion >= -50 && slave.trust <= 20))))
+					break;
+				else {
+					RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
 				break;
-			default:
-				r += `<strong>Pun:Situ</strong>`;
+
+			case "learn in the schoolroom":
+				if ((V.schoolroomSlaves < V.schoolroom && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20))))
+					if ((slave.intelligenceImplant < 1) || (slave.voice !== 0 && slave.accent+V.schoolroomUpgradeLanguage > 2) || (slave.oralSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.whoreSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.entertainSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.analSkill < 10+V.schoolroomUpgradeSkills*20) || ((slave.vagina >= 0) && (slave.vaginalSkill < 10+V.schoolroomUpgradeSkills*20)))
+						break;
+					else {
+						RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+						delete rule.setAssignment;
+					}
+				else {
+					RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
 				break;
-		}
-		r += " ";
-		switch (slave.standardReward) {
-			case "relaxation":
-				r += `<strong>Rew:Relx</strong>`;
+
+			case "be confined in the cellblock":
+				if ((V.cellblockSlaves < V.cellblock && ((slave.devotion < -20 && slave.trust >= -20) || (slave.devotion < -50 && slave.trust >= -50))))
+					break;
+				else {
+					RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
+					delete rule.setAssignment;
+				}
 				break;
-			case "drugs":
-				r += `<strong>Rew:Drug</strong>`;
+
+			case "take classes":
+				if (slave.intelligenceImplant !== 1 && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.trust < -20 && slave.devotion >= -50)))
+					break;
+				else
+					delete rule.setAssignment;
 				break;
-			case "orgasm":
-				r += `<strong>Rew:Orga</strong>`;
+
+			case "choose her own job":
+				if ((slave.fetish != "mindbroken"))
+					break;
+				else
+					delete rule.setAssignment;
 				break;
-			default:
-				r += `<strong>Rew:Situ</strong>`;
+
+			case "get milked":
+				if ((slave.lactation > 0 || slave.balls > 0))
+					break;
+				else
+					delete rule.setAssignment;
 				break;
-		}
-		r += " ";
-		switch (slave.releaseRules) {
-			case "permissive":
-				r += `<strong>MaR:P</strong>`;
+
+			case "be a servant":
+				if ((canWalk(slave) && canSee(slave) && (slave.devotion >= -20 || slave.trust < -50 || (slave.trust < -20 && slave.devotion >= -50))))
+					break;
+				else
+					delete rule.setAssignment;
 				break;
-			case "sapphic":
-				r += `<strong>MaR:S</strong>`;
+
+			case "work a glory hole":
+				if (slave.indentureRestrictions <= 0 && slave.breedingMark != 1)
+					break;
+				else
+					delete rule.setAssignment;
 				break;
-			case "masturbation":
-				r += `<strong>MaR:M</strong>`;
+
+			case "whore":
+			case "serve the public":
+			case "stay confined":
+				if ((slave.fuckdoll === 0) && slave.breedingMark != 1)
+					break;
+				else
+					delete rule.setAssignment;
 				break;
+
 			default:
-				r += `<strong>MaR:R</strong>`;
+				r += `<span class="red">raWidgets missing case for assignment 'V.{rule.setAssignment}'</span>.`;
 				break;
 		}
-		r += " ";
-	}
-	
-	function long_rules(slave) {
-		r += `Living standard: ${slave.livingRules}. `;
-		if (canTalk(slave)) {
-			r += `Speech rules: ${slave.speechRules}. `;
-		}
-		r += `Relationship rules: ${slave.relationshipRules}. `;
-		r += `Typical punishment: ${slave.standardPunishment}. `;
-		r += `Typical reward: ${slave.standardReward}. `;
-		r += `Release rules: ${slave.releaseRules}. `;
+		return rule;
 	}
-	
-	function short_weight(slave) {
-		if (slave.weight < -95) {
-			r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-		} else if (slave.weight < -30) {
-			if (slave.hips < -1) {
-				r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-			} else {
-				r += `<strong><span class="red">W--${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-			}
-		} else if (slave.weight < -10) {
-			r += `<strong>W-${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		} else if (slave.weight <= 10) {
-			r += `<strong>W${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		} else if (slave.weight <= 30) {
-			r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-		} else if (slave.weight <= 95) {
-			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-			} else {
-				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-			}
-		} else if (slave.weight <= 130) {
-			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-			} else {
-				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-			}
-		} else if (slave.weight <= 160) {
-			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-			} else {
-				r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-			}
-		} else if (slave.weight <= 190) {
-			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-			} else {
-				r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
-			}
-		} else {
-			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
-			} else {
-				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+
+	function AssignJobToSlave(slave, rule) {
+		// place slave on assignment defined by the rule
+		if ((rule.setAssignment !== undefined && rule.setAssignment != "no default setting")) {
+			if (((rule.setAssignment == "choose her own job" && !slave.choosesOwnAssignment) || rule.setAssignment != slave.assignment)) {
+				switch (rule.setAssignment) {
+					case "live with your Head Girl":
+						r += `<br>${slave.slaveName} has been automatically assigned to live in your Head Girl's private suite.`;
+						break;
+					case "be confined in the arcade":
+						r += `<br>${slave.slaveName} has been automatically assigned to be confined in ${V.arcadeName}.`;
+						break;
+					case "serve in the master suite":
+						r += `<br>${slave.slaveName} has been automatically assigned to ${V.masterSuiteName}.`;
+						break;
+					case "get treatment in the clinic":
+						r += `<br>${slave.slaveName} has been automatically assigned to get treatment in ${V.clinicName}.`;
+						break;
+					case "rest in the spa":
+						r += `<br>${slave.slaveName} has been automatically assigned to rest in ${V.spaName}.`;
+						break;
+					case "work in the brothel":
+						r += `<br>${slave.slaveName} has been automatically assigned to work in ${V.brothelName}.`;
+						break;
+					case "serve in the club":
+						r += `<br>${slave.slaveName} has been automatically assigned to serve in ${V.clubName}.`;
+						break;
+					case "work in the dairy":
+						r += `<br>${slave.slaveName} has been automatically assigned to be milked in ${V.dairyName}.`;
+						break;
+					case "work as a servant":
+						r += `<br>${slave.slaveName} has been automatically assigned to work in ${V.servantsQuartersName}.`;
+						break;
+					case "learn in the schoolroom":
+						r += `<br>${slave.slaveName} has been automatically assigned to study in ${V.schoolroomName}.`;
+						break;
+					case "be confined in the cellblock":
+						r += `<br>${slave.slaveName} has been automatically assigned to be confined in ${V.cellblockName}.`;
+						break;
+					case "choose her own job":
+						r += `<br>${slave.slaveName} is now allowed to select her own assignments.`;
+						break;
+					default:
+						r += `<br>${slave.slaveName} has been automatically assigned to ${rule.setAssignment}.`;
+						break;
+				}
+				assignJob(slave, rule.setAssignment);
 			}
 		}
-		r += " ";
 	}
-	
-	function long_weight(slave) {
-		if (slave.weight < -95) {
-			r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-		} else if (slave.weight < -30) {
-			if (slave.hips < -1) {
-				r += `Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
-			} else {
-				r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-			}
-		} else if (slave.weight < -10) {
-			r += `Thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else if (slave.weight <= 10) {
-			r += `Trim${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else if (slave.weight <= 30) {
-			r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
-		} else if (slave.weight <= 95) {
-			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
-			} else {
-				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-			}
-		} else if (slave.weight <= 130) {
-			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
-			} else {
-				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-			}
-		} else if (slave.weight <= 160) {
-			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
-			} else {
-				r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-			}
-		} else if (slave.weight <= 190) {
-			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
-			} else {
-				r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-			}
-		} else {
-			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
-				r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
-			} else {
-				r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+
+	function ProcessClothing(slave, rule) {
+		// apply clothes to slave
+		if ((rule.clothes !== undefined) && (rule.clothes !== "no default setting")) {
+			if ((rule.clothes == "choosing her own clothes")) {
+				if ((slave.choosesOwnClothes === 0)) {
+					slave.clothes = "choosing her own clothes";
+					slave.choosesOwnClothes = 1;
+					r += `<br>${slave.slaveName} is now allowed to choose her own clothes.`;
+				}
+			} else if ((slave.clothes !== rule.clothes)) {
+				slave.clothes = rule.clothes;
+				slave.choosesOwnClothes = 0;
+				r += `<br>${slave.slaveName} is now wearing ${slave.clothes}.`;
 			}
 		}
-		r += " ";
-
 	}
-	
-	function short_diet(slave) {
-		r += `<span class="teal">`;
-		switch (slave.diet) {
-			case "restricted":
-				r += `<strong>Di:W-</strong>`;
-				break;
-			case "fattening":
-				r += `<strong>Di:W+</strong>`;
-				break;
-			case "XX":
-				r += `<strong>Di:XX+</strong>`;
-				break;
-			case "XY":
-				r += `<strong>Di:XY+</strong>`;
-				break;
-			case "XXY":
-				r += `<strong>Di:XXY+</strong>`;
-				break;
-			case "muscle building":
-				r += `<strong>Di:M+</strong>`;
-				break;
-			case "slimming":
-				r += `<strong>Di:M-</strong>`;
-				break;
-			case "cum production":
-				r += `<strong>Di:C+</strong>`;
-				break;
-			case "cleansing":
-				r += `<strong>Di:H+</strong>`;
-				break;
-			case "fertility":
-				r += `<strong>Di:F+</strong>`;
-				break;
-		}
-		r += `</span> `;
-		r += `<span class="cyan">`;
-		if (slave.dietCum === 2) {
-			r += `<strong>Cum++</strong>`;
-		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
-			r += `<strong>Cum+</strong>`;
-		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
-			r += `<strong>Cum+ Milk+</strong>`;
-		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
-			r += `<strong>Milk+</strong>`;
-		} else if ((slave.dietMilk === 2)) {
-			r += `<strong>Milk++</strong>`;
+
+	function ProcessCollar(slave, rule) {
+		// apply collar to slave
+		if ((rule.collar !== undefined) && (rule.collar != "no default setting")) {
+			if ((slave.collar !== rule.collar)) {
+				r += '<br>';
+				if ((rule.collar == "preg biometrics" && slave.preg <= -1)) {
+					slave.collar = "none";
+					r += `${slave.slaveName} cannot utilize preg biometrics.`;
+				} else if ((rule.collar == "massive dildo gag" && slave.oralSkill <= 50)) {
+					slave.collar = "none";
+					r += `${slave.slaveName} lacks the oral skill to successfully keep the massive dildo gag in her throat.`;
+				} else
+					slave.collar = rule.collar;
+				if ((slave.collar == "none"))
+					r += `${slave.slaveName} has been given no collar.`;
+				else
+					r += `${slave.slaveName} has been given a ${slave.collar} collar.`;
+			}
 		}
-		r += `</span> `;
 	}
-	
-	function long_diet(slave) {
-		r += `<span class="teal">`;
-		switch (slave.diet) {
-			case "restricted":
-				r += `Dieting.`;
-				break;
-			case "fattening":
-				r += `Gaining weight.`;
-				break;
-			case "XX":
-				r += `Estrogen rich.`;
-				break;
-			case "XY":
-				r += `Testosterone rich.`;
-				break;
-			case "XXY":
-				r += `Futanari mix.`;
-				break;
-			case "muscle building":
-				r += `Pumping iron.`;
-				break;
-			case "slimming":
-				r += `Slimming down.`;
-				break;
-			case "cum production":
-				r += `Cum production.`;
-				break;
-			case "cleansing":
-				r += `Cleansing.`;
-				break;
-			case "fertility":
-				r += `Fertility.`;
-				break;
-		}
-		r += `</span> `;
-		if (slave.dietCum === 2) {
-			r += `Diet Base: <span class="cyan">Cum Based.</span>`;
-		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
-			r += `Diet Base: <span class="cyan">Cum Added.</span>`;
-		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
-			r += `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
-		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
-			r += `Diet Base: <span class="cyan">Milk Added.</span>`;
-		} else if ((slave.dietMilk === 2)) {
-			r += `Diet Base: <span class="cyan">Milk Based.</span>`;
+
+	function ProcessEyewear(slave, rule) {
+		// apply glasses, contacts to slave
+		if ((rule.eyewear !== undefined) && (rule.eyewear !== "no default setting")) {
+			switch (rule.eyewear) {
+				case "correct with glasses":
+					if (slave.eyes == -1) {
+						if (slave.eyewear != "corrective glasses") {
+							slave.eyewear = "corrective glasses";
+							V.cash -= V.modCost;
+							r += `<br>${slave.slaveName} has been given corrective glasses.`;
+						}
+					} else {
+						if (slave.eyewear != "none") {
+							slave.eyewear = "none";
+							r += `<br>${slave.slaveName}'s eyewear has been removed.`;
+						}
+					}
+					break;
+
+				case "correct with contacts":
+					if (slave.eyes == -1) {
+						if (slave.eyewear != "corrective contacts") {
+							slave.eyewear = "corrective contacts";
+							V.cash -= V.modCost;
+							r += `<br>${slave.slaveName} has been given corrective contacts.`;
+						}
+					} else {
+						if (slave.eyewear != "none") {
+							slave.eyewear = "none";
+							r += `<br>${slave.slaveName}'s eyewear has been removed.`;
+						}
+					}
+					break;
+
+				case "blur with glasses":
+					if (slave.eyes > -1) {
+						if (slave.eyewear != "blurring glasses") {
+							slave.eyewear = "blurring glasses";
+							V.cash -= V.modCost;
+							r += `<br>${slave.slaveName} has been given blurring glasses.`;
+						}
+					} else {
+						if (slave.eyewear != "none") {
+							slave.eyewear = "none";
+							r += `<br>${slave.slaveName}'s eyewear has been removed.`;
+						}
+					}
+					break;
+
+				case "blur with contacts":
+					if (slave.eyes > -1) {
+						if (slave.eyewear != "blurring contacts") {
+							slave.eyewear = "blurring contacts";
+							V.cash -= V.modCost;
+							r += `<br>${slave.slaveName} has been given blurring contacts.`;
+						}
+					} else {
+						if (slave.eyewear != "none") {
+							slave.eyewear = "none";
+							r += `<br>${slave.slaveName}'s eyewear has been removed.`;
+						}
+					}
+					break;
+
+				case "universal glasses":
+					if (slave.eyes == -1) {
+						if (slave.eyewear != "corrective glasses") {
+							slave.eyewear = "corrective glasses";
+							V.cash -= V.modCost;
+							r += `<br>${slave.slaveName} has been given corrective glasses.`;
+						}
+					} else {
+						if (slave.eyewear != "glasses") {
+							slave.eyewear = "glasses";
+							V.cash -= V.modCost;
+							r += `<br>${slave.slaveName} has been given decorative glasses.`;
+						}
+					}
+					break;
+
+				default:
+					if (slave.eyewear != "none") {
+						slave.eyewear = "none";
+						r += `<br>${slave.slaveName}'s eyewear has been removed.`;
+					}
+					break;
+			}
 		}
-		r += " ";
 	}
-	
-	function short_health(slave) {
-		if (slave.health < -20) {
-			r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-		} else if (slave.health <= 20) {
-			r += `<strong><span class="yellow">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-		} else if (slave.health > 20) {
-			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
-		}
-		r += " ";
+
+	function ProcessDildos(slave, rule) {
+		// apply vaginal dildos to slave
+		if (slave.vagina === 0)
+			ProcessVVirginDildos(slave, rule);
+		else if ((slave.vagina > 0) && (slave.anus === 0))
+			ProcessAVirginDildos(slave, rule);
+		else if (slave.vagina > 0)
+			ProcessNonVirginDildos(slave, rule);
 	}
-	
-	function long_health(slave) {
-		if (slave.health < -90) {
-			r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-		} else if (slave.health < -50) {
-			r += `<span class="red">Extremely unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-		} else if (slave.health < -20) {
-			r += `<span class="red">Unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-		} else if (slave.health <= 20) {
-			r += `<span class="yellow">Healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-		} else if (slave.health <= 50) {
-			r += `<span class="green">Very healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-		} else if (slave.health <= 90) {
-			r += `<span class="green">Extremely healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
-		} else {
-			r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+
+	function ProcessVVirginDildos(slave, rule) {
+		// apply vaginal dildos to varginal virgins
+		if ((rule.virginAccessory !== undefined) && (rule.virginAccessory !== "no default setting")) {
+			if (slave.vaginalAccessory !== rule.virginAccessory) {
+				slave.vaginalAccessory = rule.virginAccessory;
+				switch (slave.vaginalAccessory) {
+					case "huge dildo":
+						r += `<br>${slave.slaveName} is a virgin and has been given a`;
+						if (slave.vagina >= 2)
+							r += `massive dildo to permanently gape her cunt.`;
+						else {
+							r += `large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
+							slave.vaginalAccessory = "large dildo";
+						}
+						break;
+
+					case "long dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length dildo for her pussy.`;
+							slave.vaginalAccessory = "dildo";
+						}
+						break;
+
+					case "long, large dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
+							slave.vaginalAccessory = "large dildo";
+						}
+						break;
+
+					case "long, huge dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
+							slave.vaginalAccessory = "huge dildo";
+						} else {
+							r += `<br>slave.slaveName is a virgin and has been given a`;
+							if (slave.vagina >= 2)
+								r += `massive and oversized dildo to permanently gape her cunt.`;
+							else {
+								r += `long, large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
+								slave.vaginalAccessory = "long, large dildo";
+							}
+						}
+						break;
+
+					case "none":
+						r += `<br>${slave.slaveName} is a virgin and has been instructed not to use a vaginal accessory.`;
+						break;
+
+					default:
+						r += `<br>${slave.slaveName} is a virgin and has been given a ${slave.vaginalAccessory} for her pussy.`;
+						break;
+				}
+			}
 		}
-		r += " ";
 	}
-	
-	function short_drugs(slave) {
-		r += `<span class="tan">`;
-		switch (slave.drugs) {
-			case "breast injections":
-				r += `<strong>Dr:Boobs+</strong>`;
-				break;
-			case "intensive breast injections":
-				r += `<strong>Dr:Boobs++</strong>`;
-				break;
-			case "hyper breast injections":
-				r += `<strong>Dr:Boobs+++</strong>`;
-				break;
-			case "butt injections":
-				r += `<strong>Dr:Butt+</strong>`;
-				break;
-			case "intensive butt injections":
-				r += `<strong>Dr:Butt++</strong>`;
-				break;
-			case "hyper butt injections":
-				r += `<strong>Dr:Butt+++</strong>`;
-				break;
-			case "lip injections":
-				r += `<strong>Dr:Lip+</strong>`;
-				break;
-			case "fertility drugs":
-				r += `<strong>Dr:Fert+</strong>`;
-				break;
-			case "super fertility drugs":
-				r += `<strong>Dr:Fert++</strong>`;
-				break;
-			case "penis enhancement":
-				r += `<strong>Dr:Dick+</strong>`;
-				break;
-			case "intensive penis enhancement":
-				r += `<strong>Dr:Dick++</strong>`;
-				break;
-			case "hyper penis enhancement":
-				r += `<strong>Dr:Dick+++</strong>`;
-				break;
-			case "testicle enhancement":
-				r += `<strong>Dr:Balls+</strong>`;
-				break;
-			case "intensive testicle enhancement":
-				r += `<strong>Dr:Balls++</strong>`;
-				break;
-			case "hyper testicle enhancement":
-				r += `<strong>Dr:Balls+++</strong>`;
-				break;
-			case "psychosuppressants":
-				r += `<strong>Dr:Psych</strong>`;
-				break;
-			case "steroids":
-				r += `<strong>Dr:Ster</strong>`;
-				break;
-			case "female hormone injections":
-				r += `<strong>Dr:HormXX++</strong>`;
-				break;
-			case "male hormone injections":
-				r += `<strong>Dr:HormXY++</strong>`;
-				break;
-			case "hormone enhancers":
-				r += `<strong>Dr:Horm+</strong>`;
-				break;
-			case "hormone blockers":
-				r += `<strong>Dr:Horm-</strong>`;
-				break;
-			case "anti-aging cream":
-				r += `<strong>Dr:Age-</strong>`;
-				break;
-			case "appetite suppressors":
-				r += `<strong>Dr:ApSup</strong>`;
-				break;
-			case "penis atrophiers":
-				r += `<strong>Dr:Dick-</strong>`;
-				break;
-			case "testicle atrophiers":
-				r += `<strong>Dr:Balls-</strong>`;
-				break;
-			case "clitoris atrophiers":
-				r += `<strong>Dr:Clit-</strong>`;
-				break;
-			case "labia atrophiers":
-				r += `<strong>Dr:Labia-</strong>`;
-				break;
-			case "nipple atrophiers":
-				r += `<strong>Dr:Nipple-</strong>`;
-				break;
-			case "lip atrophiers":
-				r += `<strong>Dr:Lip-</strong>`;
-				break;
-			case "breast redistributors":
-				r += `<strong>Dr:Breast-</strong>`;
-				break;
-			case "butt redistributors":
-				r += `<strong>Dr:Butt-</strong>`;
-				break;
-			case "sag-B-gone":
-				r += `<strong>Dr:AntiSag</strong>`;
-				break;
-			case "growth stimulants":
-				r += `<strong>Dr:groStim</strong>`;
-				break;
+
+	function ProcessAVirginDildos(slave, rule) {
+		// apply vaginal dildos to anal virgins
+		if ((rule.aVirginAccessory !== undefined) && (rule.aVirginAccessory !== "no default setting")) {
+			if (slave.vaginalAccessory !== rule.aVirginAccessory) {
+				slave.vaginalAccessory = rule.aVirginAccessory;
+				switch (slave.vaginalAccessory) {
+					case "huge dildo":
+						r += `<br>${slave.slaveName} is a virgin and has been given a`;
+						if (slave.vagina >= 2)
+							r += `massive dildo to permanently gape her cunt.`;
+						else {
+							r += `large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
+							slave.vaginalAccessory = "large dildo";
+						}
+						break;
+
+					case "long dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length dildo for her pussy.`;
+							slave.vaginalAccessory = "dildo";
+						}
+						break;
+
+					case "long, large dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
+							slave.vaginalAccessory = "large dildo";
+						}
+						break;
+
+					case "long, huge dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
+							slave.vaginalAccessory = "huge dildo";
+						} else {
+							r += `<br>${slave.slaveName} is a virgin and has been given a`;
+							if (slave.vagina >= 2)
+								r += `massive and oversized dildo to permanently gape her cunt.`;
+							else {
+								r += `long, large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
+								slave.vaginalAccessory = "long, large dildo";
+							}
+						}
+						break;
+
+					case "none":
+						r += `<br>slave.slaveName is a virgin and has been instructed not to use a vaginal accessory.`;
+						break;
+
+					default:
+						r += `<br>slave.slaveName is a virgin and has been given a slave.vaginalAccessory for her pussy.`;
+						break;
+				}
+			}
 		}
-		r += `</span> `;
-		r += `<span class="lightgreen">`;
-		if (slave.curatives === 2) {
-			r += `<strong>Cura</strong>`;
-		} else if (slave.curatives === 1) {
-			r += `<strong>Prev</strong>`;
+	}
+
+	function ProcessNonVirginDildos(slave, rule) {
+		// apply vaginal dildos to non-virgins
+		if ((rule.vaginalAccessory !== undefined) && (rule.vaginalAccessory !== "no default setting")) {
+			if (slave.vaginalAccessory !== rule.vaginalAccessory) {
+				slave.vaginalAccessory = rule.vaginalAccessory;
+				switch (slave.vaginalAccessory) {
+					case "huge dildo":
+						r += `<br>${slave.slaveName} has been given a`;
+						if (slave.vagina >= 2)
+							r += `massive dildo to permanently gape her cunt.`;
+						else {
+							r += `large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
+							slave.vaginalAccessory = "large dildo";
+						}
+						break;
+
+					case "long dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length dildo for her pussy.`;
+							slave.vaginalAccessory = "dildo";
+						}
+						break;
+
+					case "long, large dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
+							slave.vaginalAccessory = "large dildo";
+						}
+						break;
+
+					case "long, huge dildo":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
+							slave.vaginalAccessory = "huge dildo";
+						} else {
+							r += `<br>${slave.slaveName} has been given a`;
+							if (slave.vagina >= 2)
+								r += `massive and oversized dildo to permanently gape her cunt.`;
+							else {
+								r += `long, large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
+								slave.vaginalAccessory = "long, large dildo";
+							}
+						}
+						break;
+					case "none":
+						r += `<br>${slave.slaveName} has been instructed not to use a vaginal accessory.`;
+						break;
+
+					default:
+						r += `<br>${slave.slaveName} has been given a slave.vaginalAccessory for her pussy.`;
+						break;
+				}
+			}
 		}
-		r += `</span> `;
-		if (slave.aphrodisiacs !== 0) {
-			r += `<span class="lightblue">`;
-			if (slave.aphrodisiacs === 1) {
-				r += `<strong>Aph</strong>`;
-			} else if (slave.aphrodisiacs === 2) {
-				r += `<strong>Aph++</strong>`;
+	}
+
+	function ProcessDickAccessories(slave, rule) {
+		// apply dick accessories to slave
+		if ((slave.dick > 0)) {
+			if (slave.anus === 0) {
+				if ((rule.aVirginDickAccessory !== undefined) && (rule.aVirginDickAccessory !== "no default setting")) {
+					if ((slave.dickAccessory !== rule.aVirginDickAccessory)) {
+						slave.dickAccessory = rule.aVirginDickAccessory;
+						if (slave.dickAccessory == "none")
+							r += `<br>${slave.slaveName} is a virgin and has been instructed not to wear a dick accessory.`;
+						else
+							r += `<br>${slave.slaveName} is a virgin and has been given a ${slave.dickAccessory} accessory for her cock.`;
+					}
+				}
 			} else {
-				r += `<strong>Anaph</strong>`;
+				if ((rule.dickAccessory !== undefined) && (rule.dickAccessory !== "no default setting")) {
+					if ((slave.dickAccessory !== rule.dickAccessory)) {
+						slave.dickAccessory = rule.dickAccessory;
+						if (slave.dickAccessory == "none")
+							r += `<br>${slave.slaveName} has been instructed not to wear a dick accessory.`;
+						else
+							r += `<br>${slave.slaveName} has been given a ${slave.dickAccessory} accessory for her cock.`;
+					}
+				}
 			}
-			r += `</span> `;
 		}
-		if (slave.addict !== 0) {
-			r += `<span class="cyan">Add</span>`;
+	}
+
+	function ProcessShoes(slave, rule) {
+		// apply shoes to slave
+		if ((rule.shoes !== undefined) && (rule.shoes !== "no default setting")) {
+			if ((slave.shoes !== rule.shoes)) {
+				if ((slave.amp != 1)) {
+					slave.shoes = rule.shoes;
+					r += `<br>${slave.slaveName}'s shoes have been set to ${slave.shoes}.`;
+				}
+			}
 		}
-		r += `<span class="lightsalmon">`;
-		if (slave.hormones > 1) {
-			r += `<strong>Ho:F+</strong>`;
-		} else if (slave.hormones > 0) {
-			r += `<strong>Ho:F</strong>`;
-		} else if (slave.hormones < -1) {
-			r += `<strong>Ho:M+</strong>`;
-		} else if (slave.hormones < 0) {
-			r += `<strong>Ho:M</strong>`;
+	}
+
+	function ProcessBellyAccessories(slave, rule) {
+		// apply belly accessories to slave
+		if ((rule.bellyAccessory !== undefined) && (rule.bellyAccessory !== "no default setting")) {
+			if ((slave.bellyAccessory !== rule.bellyAccessory)) {
+				if ((slave.belly >= 1500 || slave.weight >= 130) && setup.fakeBellies.includes(rule.bellyAccessory)) {
+					r += `<br>${slave.slaveName}'s natural belly is too big to properly wear an empathy belly.`;
+					slave.bellyAccessory = "none";
+				} else {
+					slave.bellyAccessory = rule.bellyAccessory;
+					if (slave.bellyAccessory == "none")
+						r += `<br>${slave.slaveName} has been instructed not to wear a torso accessory.`;
+					else
+						r += `<br>${slave.slaveName} has been given ${slave.bellyAccessory} to wear.`;
+				}
+			}
 		}
-		r += `</span> `;
-		r += `<span class="mediumseagreen">`;
-		if ((slave.bellyImplant > -1)) {
-			r += `<strong>Belly Imp</strong>`;
-		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
-			r += `<strong>Barr</strong>`;
-		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
-			r += `<strong>Prepub</strong>`;
-		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
-			r += `<strong>Meno</strong>`;
-		} else if (slave.pregWeek < 0) {
-			r += `<strong>Postpartum</strong>`;
-		} else if (slave.preg === -1) {
-			r += `<strong>CC</strong>`;
-		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
-			r += `<strong>Fert+</strong>`;
-		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
-			r += `<strong>Preg?</strong>`;
-		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
-			r += `<strong>Perm preg</strong>`;
-		} else if (slave.pregKnown === 1) {
-			r += `<strong>${slave.pregWeek} wks preg</strong>`;
+	}
+
+	function ProcessLegAccessory(slave, rule) {
+		if (rule.legAccessory !== undefined && rule.legAccessory !== "no default setting" && slave.amp !== 1 && slave.legAccessory !== rule.legAccessory) {
+			slave.legAccessory = rule.legAccessory;
+			r += `<br>${slave.slaveName}'s leg accessory was set to ${rule.legAccessory}.`;
 		}
-		r += `</span> `;
-		if (slave.induce === 1) {
-			r += `<span class="orange"><strong>Early Labor</strong></span>`;
+	}
+
+	function ProcessAnalAccessories(slave, rule) {
+		// apply buttplugs to slave
+		if ((slave.vaginalAccessory !== "anal chastity") && (slave.vaginalAccessory !== "combined chastity") && (slave.dickAccessory !== "anal chastity") && (slave.dickAccessory !== "combined chastity")) {
+			if (slave.anus === 0)
+				ProcessAnalVirginButtplugs(slave, rule);
+			else
+				ProcessNonVirginButtplugs(slave, rule);
 		}
-		if (slave.pubertyXY === 0 && slave.balls > 0) {
-			r += `<strong>Prepub balls</strong>`;
+	}
+
+	function ProcessAnalVirginButtplugs(slave, rule) {
+		// apply buttplugs to virgins
+		if ((rule.aVirginButtplug !== undefined) && (rule.aVirginButtplug !== "no default setting")) {
+			if ((slave.buttplug !== rule.aVirginButtplug)) {
+				slave.buttplug = rule.aVirginButtplug;
+				switch (slave.buttplug) {
+					case "huge plug":
+						r += `<br>${slave.slaveName} is an anal virgin and has been given a`;
+						if ((slave.anus >= 2))
+							r += `massive plug to permanently gape her asshole.`;
+						else {
+							slave.buttplug = "large plug";
+							r += `large buttplug for her asshole, since it must be stretched before it can accommodate a huge one.`;
+						}
+						break;
+
+					case "long plug":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length plug for her anus.`;
+							slave.buttplug = "plug";
+						}
+						break;
+
+					case "long, large plug":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length large plug for her anus.`;
+							slave.buttplug = "large plug";
+						}
+						break;
+
+					case "long, huge plug":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length huge plug for her anus.`;
+							slave.buttplug = "huge plug";
+						} else {
+							r += `<br>slave.slaveName is an anal virgin and has been given a`;
+							if (slave.anus >= 2)
+								r += `massive and oversized plug to permanently gape her asshole.`;
+							else {
+								r += `long, large buttplug for her asshole, since it must be stretched before it can accommodate a huge one.`;
+								slave.buttplug = "long, large plug";
+							}
+						}
+						break;
+
+					case "none":
+						r += `<br>${slave.slaveName} is an anal virgin and has been instructed not to use an anal accessory.`;
+						break;
+
+					default:
+						r += `<br>${slave.slaveName} is an anal virgin and has been given a slave.buttplug for her asshole.`;
+						break;
+				}
+			}
 		}
-		if (slave.balls > 0 && slave.vasectomy === 1) {
-			r += `<strong>Vasect</strong>`;
+	}
+
+	function ProcessNonVirginButtplugs(slave, rule) {
+		// apply buttplugs to non-virgins
+		if ((rule.buttplug !== undefined) && (rule.buttplug !== "no default setting")) {
+			if ((slave.buttplug !== rule.buttplug)) {
+				slave.buttplug = rule.buttplug;
+				switch (slave.buttplug) {
+					case "huge plug":
+						r += `<br>${slave.slaveName} has been given a`;
+						if ((slave.anus >= 2))
+							r += `massive plug to permanently gape her asshole.`;
+						else {
+							slave.buttplug = "large plug";
+							r += `large buttplug for her asshole, since it must be stretched before it can accommodate a huge one.`;
+						}
+						break;
+
+					case "long plug":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length plug for her anus.`;
+							slave.buttplug = "plug";
+						}
+						break;
+						
+					case "long, large plug":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length large plug for her anus.`;
+							slave.buttplug = "large plug";
+						}
+						break;
+
+					case "long, huge plug":
+						if (slave.breedingMark == 1) {
+							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length huge plug for her anus.`;
+							slave.buttplug = "huge plug";
+						} else {
+							r += `<br>${slave.slaveName} has been given a`;
+							if (slave.anus >= 2)
+								r += `massive and oversized plug to permanently gape her asshole.`;
+							else {
+								r += `long, large buttplug for her asshole, since it must be stretched before it can accommodate a huge one.`;
+								slave.buttplug = "long, large plug";
+							}
+						}
+						break;
+
+					case "none":
+						r += `<br>${slave.slaveName} has been instructed not to use an anal accessory.`;
+						break;
+
+					default:
+						r += `<br>${slave.slaveName} has been given a slave.buttplug for her asshole.`;
+						break;
+				}
+			}
 		}
-		r += `<span class="springgreen">`;
-		if (slave.inflation === 3) {
-			r += `<strong>8 ltr ${slave.inflationType}</strong>`;
-		} else if (slave.inflation === 2) {
-			r += `<strong>4 ltr ${slave.inflationType}</strong>`;
-		} else if (slave.inflation === 1) {
-			r += `<strong>2 ltr ${slave.inflationType}</strong>`;
-		} else if (slave.bellyFluid > 0) {
-			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
+	}
+
+	function ProcessBellyImplant(slave, rule) {
+		// Here is belly implant size control, it's used in Surgery Degradation passage to setup devotion and trust changes.
+		// silent calls to surgery degradation have been replaced with a js function, which is less hacky
+		if ((rule.bellyImplantVol !== undefined) && slave.bellyImplant >= 0 && rule.bellyImplantVol >= 0) {
+			r += "<br>";
+			if (slave.health > -10 ) {
+				let diff = rule.bellyImplantVol - slave.bellyImplant;
+				if (diff >= 5000 && slave.bellyPain === 0 && slave.health > 50) {
+					r += `${slave.slaveName}'s belly is way too small, so she has been directed to have intensive belly implant filling procedures throughout this week.`;
+					slave.bellyImplant += 1000;
+					slave.bellyPain += 2;
+					BellySurgery(slave, diff);
+				} else if (diff >= 500 && slave.bellyPain < 2 ) {
+					r += `${slave.slaveName}'s belly has not reached the desired size, so she has been directed to have belly implant filling procedures throughout this week.`;
+					slave.bellyImplant += 500;
+					slave.bellyPain += 1;
+					BellySurgery(slave, diff);
+				} else if (diff <= -5000 ) {
+					r += `${slave.slaveName}'s belly is way too big, so she has been directed to have intensive belly implant draining procedures throughout this week.`;
+					slave.bellyImplant -= 1000;
+					BellySurgery(slave, diff);
+				} else if (diff <= -500 ) {
+					r += `${slave.slaveName}'s belly is too big, so she has been directed to have belly implant draining procedures throughout this week.`;
+					slave.bellyImplant -= 500;
+					BellySurgery(slave, diff);
+				}
+			} else {
+				r += `${slave.slaveName} is not healthy enough to safely adjust her belly implant.`;
+			}
 		}
-		r += `</span> `;
 	}
-	
-	function long_drugs(slave) {
-		if ((slave.drugs !== "no drugs") && (slave.drugs !== "none")) {
-			r += `<span class="tan">On ${slave.drugs}.</span> `;
+
+	function BellySurgery(slave, volume) {
+		// this is a port of the belly implant portion of surgeryDegradation.tw
+		// that way, we don't have to use ugly hacks
+		// the original still exists, and may be worth replacing
+		if (volume > 0) { // bellyUp
+			SetBellySize(slave);
+			if (slave.bellyPain === 1) {
+				if (slave.devotion > 50) {
+					slave.devotion += 4;
+				} else if (slave.devotion >= -20) {
+					slave.trust -= 5;
+				} else {
+					slave.trust -= 10;
+					slave.devotion -= 5;
+				}
+			} else if (slave.bellyPain === 2) {
+				if (slave.devotion > 50) {
+					slave.devotion += 2;
+				} else if (slave.devotion >= -20) {
+					slave.trust -= 7;
+				} else {
+					slave.trust -= 12;
+					slave.devotion -= 7;
+				}
+			}
+		} else { // bellyDown
+			if (slave.bellyImplant < 0)
+				slave.bellyImplant = 0;
+			SetBellySize(slave);
+			if (slave.devotion > 50) {
+				slave.devotion += 3;
+				slave.trust += 3;
+			} else if (slave.devotion >= -20) {
+				slave.trust += 2;
+			} else {
+				slave.devotion += 1;
+				slave.trust -= 10;
+			}
 		}
-		r += `<span class="lightgreen">`;
-		if (slave.curatives === 2) {
-			r += `On curatives.`;
-		} else if (slave.curatives === 1) {
-			r += `On preventatives.`;
+	}
+
+	function ProcessContraceptives(slave, rule) {
+		if ((rule.preg !== undefined) && (rule.preg !== "no default setting")) {
+			if (rule.preg === true && slave.preg === 0) {
+				r += `<br>${slave.slaveName} is being given contraceptives.`;
+				slave.preg = -1;
+			} else if (slave.preg === -1 && rule.preg === false) {
+				r += `<br>${slave.slaveName} is no longer being put on contraceptives.`;
+				slave.preg = 0;
+			}
 		}
-		r += `</span> `;
-		r += `<span class="lightblue">`;
-		if (slave.aphrodisiacs > 0) {
-			r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
-		} else if (slave.aphrodisiacs === -1) {
-			r += `On anaphrodisiacs.`;
+	}
+
+	function ProcessAssetGrowthDrugs(slave, rule) {
+		// Asset Growth 
+		const growth_drugs = new Set(["breast injections", "intensive breast injections", "breast redistributors", "butt injections", "intensive butt injections", "butt redistributors", "lip injections", "lip atrophiers", "penis enhancement", "intensive penis enhancement", "penis atrophiers", "testicle enhancement", "intensive testicle enhancement", "testicle atrophiers", "hyper breast injections", "hyper butt injections", "hyper penis enhancement", "hyper testicle enhancement"]);
+		if ((slave.drugs == "super fertility drugs" || slave.drugs == "fertility drugs") && isFertile(slave)) {
+			r += `<br>${slave.slaveName} is on ${slave.drugs} and will not be considered for drug enhancement until that regime is complete.`;
+			return;
+		} else if ((rule.growth_boobs == "no default setting" && rule.growth_butt == "no default setting" && rule.growth_lips == "no default setting" && rule.growth_dick == "no default setting" && rule.growth_dick == "no default setting" && rule.growth_balls == "no default setting")) {
+			return;
 		}
-		r += `</span> `;
-		if (slave.addict !== 0) {
-			r += `<span class="cyan">Addict.</span>`;
-		}
-		r += `<span class="lightsalmon">`;
-		if (slave.hormones > 1) {
-			r += `Heavy female hormones.`;
-		} else if (slave.hormones > 0) {
-			r += `Female hormones.`;
-		} else if (slave.hormones < -1) {
-			r += `Heavy male hormones.`;
-		} else if (slave.hormones < 0) {
-			r += `Male hormones.`;
-		}
-		r += `</span> `;
-		r += `<span class="mediumseagreen">`;
-		if ((slave.bellyImplant > -1)) {
-			r += `Belly Implant.`;
-		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
-			r += `Barren.`;
-		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
-			r += `Not ovulating yet.`;
-		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
-			r += `Menopausal.`;
-		} else if (slave.pregWeek < 0) {
-			r += `Postpartum.`;
-		} else if (slave.preg === -1) {
-			r += `On contraceptives.`;
-		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
-			r += `Fertile.`;
-		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
-			r += `May be pregnant.`;
-		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
-			r += `Permanently pregnant.`;
-		} else if (slave.pregKnown === 1) {
-			if (slave.pregType < 2 || slave.broodmother > 0) {
-				r += `${slave.pregWeek} weeks pregnant.`;
-			} else {
-				r += `${slave.pregWeek} weeks pregnant with `;
-				if (slave.pregType >= 40) {
-					r += `a tremendous brood of offspring.`;
-				} else if (slave.pregType >= 20) {
-					r += `a brood of offspring.`;
-				} else if (slave.pregType >= 10) {
-					r += `${slave.pregType} babies.`;
-				} else if (slave.pregType === 9) {
-					r += `nonuplets.`;
-				} else if (slave.pregType === 8) {
-					r += `octuplets.`;
-				} else if (slave.pregType === 7) {
-					r += `septuplets.`;
-				} else if (slave.pregType === 6) {
-					r += `sextuplets.`;
-				} else if (slave.pregType === 5) {
-					r += `quintuplets.`;
-				} else if (slave.pregType === 4) {
-					r += `quadruplets.`;
-				} else if (slave.pregType === 3) {
-					r += `triplets.`;
-				} else {
-					r += `twins.`;
+		if (slave.assignmentVisible) { // More resource intensive version with prioritizing. Possible to give this a toggle rather than basing it on visibility. 
+			let _priorities = [];
+			if (rule.growth_boobs != "no default setting") {
+				let _priority;
+				if (slave.boobs < rule.growth_boobs) {
+					_priority = {drug: "breast injections", weight: (rule.growth_boobs-slave.boobs)/rule.growth_boobs};
+					_priorities.push(_priority);
+				} else if ((slave.boobs > rule.growth_boobs+200) && slave.weight < 100 && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
+					_priority = {
+						drug: "breast redistributors",
+						weight: (1+((slave.boobs-slave.boobsImplant-rule.growth_boobs)/rule.growth_boobs)) };
+					_priorities.push(_priority);
 				}
 			}
-		}
-		r += `</span> `;
-		if (slave.induce === 1) {
-			r += `<span class="orange">Showing signs of early labor.</span>`;
-		}
-		if (slave.pubertyXY === 0 && slave.balls > 0) {
-			r += `Has not had first ejaculation.`;
-		}
-		if (slave.balls > 0 && slave.vasectomy === 1) {
-			r += `Vasectomy.`;
-		}
-		r += `<span class="springgreen">`;
-		if (slave.inflation === 3) {
-			r += `Filled with 8 liters of ${slave.inflationType}.`;
-		} else if (slave.inflation === 2) {
-			r += `Filled with 4 liters of ${slave.inflationType}.`;
-		} else if (slave.inflation === 1) {
-			r += `Filled with 2 liters of ${slave.inflationType}.`;
-		} else if (slave.bellyFluid > 0) {
-			r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
-		}
-		r += `</span> `;
-	}
-	
-	function long_race(slave) {
-		switch (slave.race) {
-			case "white":
-				r += `Caucasian.`;
-				break;
-			case "asian":
-				r += `Asian.`;
-				break;
-			case "indo-aryan":
-				r += `Indo-aryan.`;
-				break;
-			case "latina":
-				r += `Latina.`;
-				break;
-			case "middle eastern":
-				r += `Middle Eastern.`;
-				break;
-			case "black":
-				r += `Black.`;
-				break;
-			case "pacific islander":
-				r += `Pacific Islander.`;
-				break;
-			case "malay":
-				r += `Malay.`;
-				break;
-			case "amerindian":
-				r += `Amerindian.`;
-				break;
-			case "semitic":
-				r += `Semitic.`;
-				break;
-			case "southern european":
-				r += `Southern European.`;
-				break;
-			case "mixed race":
-				r += `Mixed race.`;
-				break;
-			default:
-				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
-				break;
-		}
-		r += " ";
-	}
-	
-	function short_race(slave) {
-		switch (slave.race) {
-			case "white":
-				r += `C`;
-				break;
-			case "asian":
-				r += `A`;
-				break;
-			case "indo-aryan":
-				r += `I`;
-				break;
-			case "latina":
-				r += `L`;
-				break;
-			case "middle eastern":
-				r += `ME`;
-				break;
-			case "black":
-				r += `B`;
-				break;
-			case "pacific islander":
-				r += `PI`;
-				break;
-			case "malay":
-				r += `M`;
-				break;
-			case "amerindian":
-				r += `AI`;
-				break;
-			case "semitic":
-				r += `S`;
-				break;
-			case "southern european":
-				r += `SE`;
-				break;
-			case "mixed race":
-				r += `MR`;
-				break;
-			default:
-				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
-				break;
-		}
-		r += " ";
-	}
-	
-	function short_nationality(slave) {
-		r += `<span class="tan">`;
-		switch (slave.nationality) {
-			case "Afghan":
-				r += `Afg`;
-				break;
-			case "Albanian":
-				r += `Alb`;
-				break;
-			case "Algerian":
-				r += `Alg`;
-				break;
-			case "American":
-				r += `USA`;
-				break;
-			case "Andorran":
-				r += `And`;
-				break;
-			case "Angolan":
-				r += `Ang`;
-				break;
-			case "Antiguan":
-				r += `AB`;
-				break;
-			case "Argentinian":
-				r += `Arg`;
-				break;
-			case "Armenian":
-				r += `Arm`;
-				break;
-			case "Aruban":
-				r += `Aru`;
-				break;
-			case "Australian":
-				r += `Aus`;
-				break;
-			case "Austrian":
-				r += `Aut`;
-				break;
-			case "Azerbaijani":
-				r += `Aze`;
-				break;
-			case "Bahamian":
-				r += `Bah`;
-				break;
-			case "Bahraini":
-				r += `Bah`;
-				break;
-			case "Bangladeshi":
-				r += `Bgd`;
-				break;
-			case "Barbadian":
-				r += `Bar`;
-				break;
-			case "Belarusian":
-				r += `Ber`;
-				break;
-			case "Belgian":
-				r += `Bel`;
-				break;
-			case "Belizean":
-				r += `Blz`;
-				break;
-			case "Beninese":
-				r += `Ben`;
-				break;
-			case "Bermudian":
-				r += `Bmd`;
-				break;
-			case "Bhutanese":
-				r += `Bhu`;
-				break;
-			case "Bissau-Guinean":
-				r += `GB`;
+			if (rule.growth_butt != "no default setting") {
+				let _priority;
+				if (slave.butt < rule.growth_butt) {
+					_priority = {drug: "butt injections", weight: (rule.growth_butt-slave.butt)/rule.growth_butt};
+					_priorities.push(_priority);
+				} else if ((Math.trunc(slave.butt) > rule.growth_butt) && slave.weight < 100 && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
+					_priority = {
+						drug: "butt redistributors",
+						weight: (1+((slave.butt-slave.buttImplant-rule.growth_butt)/rule.growth_butt)) };
+					_priorities.push(_priority);
+				}
+			}
+			if (rule.growth_lips != "no default setting") {
+				let _priority;
+				if (slave.lips < rule.growth_lips) {
+					_priority = {drug: "lip injections", weight: (rule.growth_lips-slave.lips)/rule.growth_lips};
+					_priorities.push(_priority);
+				} else if ((slave.lips > rule.growth_lips) && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
+					_priority = {
+						drug: "lip atrophiers",
+						weight: (1+((slave.lips-slave.lipsImplant-rule.growth_lips)/rule.growth_lips))};
+					_priorities.push(_priority);
+				}
+			}
+			if (rule.growth_dick != "no default setting" && slave.dick) {
+				let _priority;
+				if (slave.dick < rule.growth_dick) {
+					_priority = {drug: "penis enhancement", weight: (rule.growth_dick-slave.dick)/rule.growth_dick};
+					_priorities.push(_priority);
+				} else if ((slave.dick > rule.growth_dick) && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
+					_priority = {
+						drug: "penis atrophiers",
+						weight: (1+((slave.dick-rule.growth_dick)/rule.growth_dick))};
+					_priorities.push(_priority);
+				}
+			}
+			if (rule.growth_balls != "no default setting" && slave.balls) {
+				let _priority;
+				if (slave.balls < rule.growth_balls) {
+					_priority = {drug: "testicle enhancement", weight: (rule.growth_balls-slave.balls)/rule.growth_balls};
+					_priorities.push(_priority);
+				} else if ((slave.balls > rule.growth_balls) && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
+					_priority = {
+						drug: "testicle atrophiers",
+						weight: (1+((slave.balls-rule.growth_balls)/rule.growth_balls))};
+					_priorities.push(_priority);
+				}
+			}
+			if (_priorities.length > 1) {
+				_priorities = _priorities.sort(function(a, b){if(a.weight > b.weight) return -1; if(a.weight < b.weight) return 1; return 0;});
+				if (slave.drugs != _priorities[0].drug) {
+					slave.drugs = _priorities[0].drug;
+					r += `<br>${slave.slaveName} has been put on `;
+					if (rule.growth_intensity && slave.drugs != "lip injections" && slave.health > 0) {
+						slave.drugs = "intensive " + slave.drugs;
+						r += `${slave.drugs}, since she's healthy enough to take them, and `;
+					} else {
+						r += `${slave.drugs}, since `;
+					}
+					r += `that part of her body is ${Math.trunc(_priorities[0].weight*100)}% `;
+					if (_priorities[0].weight < 1) r+= "below ";
+					else r+= "above ";
+					r += "the targeted size.";
+				}
+				return;
+			} else if (_priorities.length > 0) {
+				if (slave.drugs != _priorities[0].drug) {
+					slave.drugs = _priorities[0].drug;
+					r += `<br>${slave.slaveName} has been put on `;
+					if (rule.growth_intensity && slave.drugs != "lip injections" && slave.health > 0) {
+						slave.drugs = "intensive " + slave.drugs;
+						r += `${slave.drugs}, since she's healthy enough to take them, and `;
+					} else
+						r += `${slave.drugs}, since `;
+					r += `that is the only part of her body that does not meet the targeted size.`;
+				}
+				return;
+			} else if (growth_drugs.has(slave.drugs)) {
+				slave.drugs = "no drugs";
+				r += `<br>${slave.slaveName}'s body has met all relevant growth targets, so her pharmaceutical regime has been ended.`;
+				return;
+			}
+		} else {
+			let _hyper;
+			if (V.arcologies[0].FSAssetExpansionistResearch == 1)
+				_hyper = "hyper ";
+			else
+				_hyper = "";
+			if (rule.growth_boobs != "no default setting") {
+				if (slave.boobs < rule.growth_boobs) {
+					if (slave.drugs != _hyper + "breast injections") {
+						slave.drugs = _hyper + "breast injections";
+						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+					}
+					return;
+				}
+			}
+			if (rule.growth_butt != "no default setting") {
+				if (slave.butt < rule.growth_butt) {
+					if (slave.drugs != _hyper + "butt injections") {
+						slave.drugs = _hyper + "butt injections";
+						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+					}
+					return;
+				}
+			}
+			if (rule.growth_lips != "no default setting") {
+				if (slave.lips < rule.growth_lips) {
+					if (slave.drugs != "lip injections") {
+						slave.drugs = "lip injections";
+						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+					}
+					return;
+				}
+			}
+			if (rule.growth_dick != "no default setting" && slave.dick) {
+				if (slave.dick < rule.growth_dick) {
+					if (slave.drugs != _hyper + "penis enhancement") {
+						slave.drugs = _hyper + "penis enhancement";
+						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+					}
+					return;
+				}
+			}
+			if (rule.growth_balls != "no default setting" && slave.balls) {
+				if (slave.balls < rule.growth_balls) {
+					if (slave.drugs != _hyper + "testicle enhancement") {
+						slave.drugs = _hyper + "testicle enhancement";
+						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+					}
+					return;
+				}
+			}
+			if (V.arcologies[0].FSSlimnessEnthusiastResearch == 1) {
+				if (rule.growth_boobs != "no default setting") {
+					if (slave.boobs-slave.boobsImplant > rule.growth_boobs+200 && slave.weight < 100) {
+						if (slave.drugs != "breast redistributors") {
+							slave.drugs = "breast redistributors";
+							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+						}
+						return;
+					}
+				}
+				if (rule.growth_butt != "no default setting") {
+					if (Math.trunc(slave.butt-slave.buttImplant) > rule.growth_butt && slave.weight < 100) {
+						if (slave.drugs != "butt redistributors") {
+							slave.drugs = "butt redistributors";
+							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+						}
+						return;
+					}
+				}
+				if (rule.growth_lips != "no default setting") {
+					if (slave.lips-slave.lipsImplant > rule.growth_lips) {
+						if (slave.drugs != "lip atrophiers") {
+							slave.drugs = "lip atrophiers";
+							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+						}
+						return;
+					}
+				}
+				if (rule.growth_dick != "no default setting" && slave.dick) {
+					if (slave.dick > rule.growth_dick) {
+						if (slave.drugs != "penis atrophiers") {
+							slave.drugs = "penis atrophiers";
+							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+						}
+						return;
+					}
+				}
+				if (rule.growth_balls != "no default setting" && slave.balls) {
+					if (slave.balls > rule.growth_balls) {
+						if (slave.drugs != "testicle atrophiers") {
+							slave.drugs = "testicle atrophiers";
+							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+						}
+						return;
+					}
+				}
+			}
+			if (growth_drugs.has(slave.drugs)) {
+				slave.drugs = "no drugs";
+				r += `<br>${slave.slaveName} has met all relevant growth targets, so her pharmaceutical regime has been ended.`;
+				return;
+			}
+		}
+	}
+
+	function ProcessOtherDrugs(slave, rule) {
+		// Other Drugs 
+		if (slave.indentureRestrictions < 2 && rule.drug !== "no default setting" && slave.drugs !== rule.drug) {
+			let flag = true;
+			switch (rule.drug) {
+			case "anti-aging cream":
+				if (slave.visualAge < 18)
+					flag = false;
 				break;
-			case "Bolivian":
-				r += `Bol`;
+
+			case "growth stimulants":
+				if (!(slave.height < 274 && slave.height < Math.clamp((Height.mean(slave) * 1.25),0,274)))
+					flag = false;
 				break;
-			case "Bosnian":
-				r += `Bos`;
+
+			case "sag-B-gone":
+				if (!(slave.boobs > 250 && slave.boobShape != "saggy"))
+					flag = false;
 				break;
-			case "Brazilian":
-				r += `Bra`;
+
+			case "female hormone injections":
+				if (!(slave.breedingMark != 1 && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0))
+					flag = false;
 				break;
-			case "British":
-				r += `UK`;
+
+			case "male hormone injections":
+				if (!(slave.breedingMark != 1 && slave.balls > 0 && slave.pubertyXY === 0))
+					flag = false;
 				break;
-			case "Bruneian":
-				r += `Bru`;
+				
+			case "psychosuppressants":
+				if (!(slave.intelligence > -2 && slave.indentureRestrictions < 1))
+					flag = false;
 				break;
-			case "Bulgarian":
-				r += `Bul`;
+			
+			case "breast injections":
+				if (!(slave.boobs < 48000))
+					flag = false;
 				break;
-			case "Burkinabé":
-				r += `BF`;
+			
+			case "hyper breast injections":
+				if (!(slave.boobs < 25000))
+					flag = false;
 				break;
-			case "Burmese":
-				r += `Bur`;
+			
+			case "breast redistributors":
+				if (!(slave.boobs - slave.boobsImplant > 100))
+					flag = false;
 				break;
-			case "Burundian":
-				r += `Bnd`;
+			
+			case "butt injections":
+				if (!(slave.butt < 9))
+					flag = false;
 				break;
-			case "Cambodian":
-				r += `Kam`;
-				break;
-			case "Cameroonian":
-				r += `Cam`;
-				break;
-			case "Canadian":
-				r += `Can`;
-				break;
-			case "Cape Verdean":
-				r += `CV`;
-				break;
-			case "Catalan":
-				r += `Cat`;
-				break;
-			case "Central African":
-				r += `CAR`;
-				break;
-			case "Chadian":
-				r += `Cha`;
-				break;
-			case "Chilean":
-				r += `Chl`;
-				break;
-			case "Chinese":
-				r += `Chi`;
-				break;
-			case "Colombian":
-				r += `Col`;
-				break;
-			case "Comorian":
-				r += `Com`;
-				break;
-			case "Congolese":
-				r += `RC`;
-				break;
-			case "a Cook Islander":
-				r += `CI`;
-				break;
-			case "Costa Rican":
-				r += `CR`;
-				break;
-			case "Croatian":
-				r += `Cro`;
-				break;
-			case "Cuban":
-				r += `Cub`;
-				break;
-			case "Cypriot":
-				r += `Cyp`;
-				break;
-			case "Czech":
-				r += `Cze`;
-				break;
-			case "Danish":
-				r += `Den`;
-				break;
-			case "Djiboutian":
-				r += `Dji`;
-				break;
-			case "Dominican":
-				r += `DR`;
-				break;
-			case "Dominiquais":
-				r += `Dom`;
-				break;
-			case "Dutch":
-				r += `Nld`;
-				break;
-			case "East Timorese":
-				r += `ET`;
-				break;
-			case "Ecuadorian":
-				r += `Ecu`;
-				break;
-			case "Egyptian":
-				r += `Egy`;
-				break;
-			case "Emirati":
-				r += `UAE`;
-				break;
-			case "Equatoguinean":
-				r += `EG`;
-				break;
-			case "Eritrean":
-				r += `Eri`;
-				break;
-			case "Estonian":
-				r += `Est`;
-				break;
-			case "Ethiopian":
-				r += `Eth`;
-				break;
-			case "Fijian":
-				r += `Fij`;
-				break;
-			case "Filipina":
-				r += `Phl`;
-				break;
-			case "Finnish":
-				r += `Fin`;
-				break;
-			case "French":
-				r += `Fra`;
-				break;
-			case "French Guianan":
-				r += `FG`;
-				break;
-			case "French Polynesian":
-				r += `FP`;
-				break;
-			case "Gabonese":
-				r += `Gab`;
-				break;
-			case "Gambian":
-				r += `Gam`;
-				break;
-			case "Georgian":
-				r += `Geo`;
-				break;
-			case "German":
-				r += `Ger`;
-				break;
-			case "Ghanan":
-				r += `Gha`;
-				break;
-			case "Greek":
-				r += `Gre`;
-				break;
-			case "Greenlandic":
-				r += `Grn`;
-				break;
-			case "Grenadian":
-				r += `Gda`;
-				break;
-			case "Guamanian":
-				r += `Gua`;
-				break;
-			case "Guatemalan":
-				r += `Gtm`;
-				break;
-			case "Guinean":
-				r += `Gui`;
-				break;
-			case "Guyanese":
-				r += `Guy`;
+			
+			case "hyper butt injections":
+				if (!(slave.butt < 20))
+					flag = false;
 				break;
-			case "Haitian":
-				r += `Hai`;
+			
+			case "hyper butt injections":
+				if (!(slave.butt < 20))
+					flag = false;
 				break;
-			case "Honduran":
-				r += `Hon`;
+			
+			case "nipple atrophiers":
+				if (!(["huge", "puffy", "cute"].includes(slave.nipples)))
+					flag = false;
 				break;
-			case "Hungarian":
-				r += `Hun`;
+				
+			case "butt redistributors":
+				if (!(slave.buttImplant > 0))
+					flag = false;
 				break;
-			case "I-Kiribati":
-				r += `Kir`;
+			
+			case "lip injections":
+				if (!(slave.lips <= 95 || (slave.lips <= 85 && V.seeExtreme !== 1)))
+					flag = false;
 				break;
-			case "Icelandic":
-				r += `Ice`;
+			
+			case "lip atrophiers":
+				if (!(slave.lips - slave.lipsImplant > 0))
+					flag = false;
 				break;
-			case "Indian":
-				r += `Ind`;
+			
+			case "super fertility drugs":
+				if (!(slave.indentureRestrictions < 1 && slave.breedingMark !== 1))
+					flag = false;
 				break;
-			case "Indonesian":
-				r += `Idn`;
+			
+			case "penis enhancement":
+				if (!((slave.dick > 0 && slave.dick < 10) || slave.clit < 5))
+					flag = false;
 				break;
-			case "Iranian":
-				r += `Irn`;
+			
+			case "hyper penis enhancement":
+				if (!((slave.dick > 0 && slave.dick < 31) || slave.clit < 5))
+					flag = false;
 				break;
-			case "Iraqi":
-				r += `Irq`;
+				
+			case "penis atrophiers":
+				if (!(slave.dick > 1))
+					flag = false;
 				break;
-			case "Irish":
-				r += `Irl`;
+			
+			case "testicle enhancement":
+				if (!(slave.balls > 0))
+					flag = false;
 				break;
-			case "Israeli":
-				r += `Isr`;
+			
+			case "hyper testicle enhancement":
+				if (!(slave.balls > 0))
+					flag = false;
 				break;
-			case "Italian":
-				r += `Ita`;
+			
+			case "testicle atrophiers":
+				if (!(slave.balls > 1))
+					flag = false;
 				break;
-			case "Ivorian":
-				r += `IC`;
+			
+			case "clitoris atrophiers":
+				if (!(slave.clit > 0))
+					flag = false;
 				break;
-			case "Jamaican":
-				r += `Jam`;
+			
+			case "labia atrophiers":
+				if (!(slave.labia > 0))
+					flag = false;
 				break;
-			case "Japanese":
-				r += `Jpn`;
+			
+			case "appetite suppressors":
+				if (!(slave.weight > -95))
+					flag = false;
 				break;
-			case "Jordanian":
-				r += `Jor`;
+				
+			case "female hormone injections":
+				if (!(slave.breedingMark !== 1 && (slave.ovaries === 1 || slave.mpreg === 1) && slave.pubertyXX === 0))
+					flag = false;
 				break;
-			case "Kazakh":
-				r += `Kaz`;
+			
+			case "male hormone injections":
+				if (!(slave.balls > 0 && slave.pubertyXY === 0))
+					flag = false;
 				break;
-			case "Kenyan":
-				r += `Ken`;
-				break;
-			case "Kittitian":
-				r += `SKN`;
-				break;
-			case "Korean":
-				r += `Kor`;
-				break;
-			case "Kosovan":
-				r += `Kos`;
-				break;
-			case "Kurdish":
-				r += `Kur`;
-				break;
-			case "Kuwaiti":
-				r += `Kuw`;
-				break;
-			case "Kyrgyz":
-				r += `Kyr`;
-				break;
-			case "Laotian":
-				r += `Lao`;
-				break;
-			case "Latvian":
-				r += `Lat`;
-				break;
-			case "Lebanese":
-				r += `Lbn`;
-				break;
-			case "Liberian":
-				r += `Lib`;
-				break;
-			case "Libyan":
-				r += `Lby`;
-				break;
-			case "a Liechtensteiner":
-				r += `Lie`;
-				break;
-			case "Lithuanian":
-				r += `Lit`;
-				break;
-			case "Luxembourgian":
-				r += `Lux`;
-				break;
-			case "Macedonian":
-				r += `Mac`;
-				break;
-			case "Malagasy":
-				r += `Mad`;
-				break;
-			case "Malawian":
-				r += `Mwi`;
-				break;
-			case "Malaysian":
-				r += `Mys`;
-				break;
-			case "Maldivian":
-				r += `Mdv`;
-				break;
-			case "Malian":
-				r += `Mal`;
-				break;
-			case "Maltese":
-				r += `Mlt`;
-				break;
-			case "Marshallese":
-				r += `MI`;
-				break;
-			case "Mauritanian":
-				r += `Mta`;
-				break;
-			case "Mauritian":
-				r += `Mts`;
-				break;
-			case "Mexican":
-				r += `Mex`;
-				break;
-			case "Micronesian":
-				r += `FSM`;
-				break;
-			case "Moldovan":
-				r += `Mol`;
-				break;
-			case "Monégasque":
-				r += `Mnc`;
-				break;
-			case "Mongolian":
-				r += `Mon`;
-				break;
-			case "Montenegrin":
-				r += `Mng`;
-				break;
-			case "Moroccan":
-				r += `Mor`;
-				break;
-			case "Mosotho":
-				r += `Les`;
-				break;
-			case "Motswana":
-				r += `Bot`;
-				break;
-			case "Mozambican":
-				r += `Moz`;
-				break;
-			case "Namibian":
-				r += `Nam`;
-				break;
-			case "Nauruan":
-				r += `Nau`;
-				break;
-			case "Nepalese":
-				r += `Npl`;
-				break;
-			case "New Caledonian":
-				r += `NC`;
-				break;
-			case "a New Zealander":
-				r += `NZ`;
-				break;
-			case "Ni-Vanuatu":
-				r += `Van`;
-				break;
-			case "Nicaraguan":
-				r += `Nic`;
-				break;
-			case "Nigerian":
-				r += `Nga`;
-				break;
-			case "Nigerien":
-				r += `Ngr`;
-				break;
-			case "Niuean":
-				r += `Niu`;
-				break;
-			case "Norwegian":
-				r += `Nor`;
-				break;
-			case "Omani":
-				r += `Omn`;
-				break;
-			case "Pakistani":
-				r += `Pak`;
-				break;
-			case "Palauan":
-				r += `Plu`;
-				break;
-			case "Palestinian":
-				r += `Pal`;
-				break;
-			case "Panamanian":
-				r += `Pan`;
-				break;
-			case "Papua New Guinean":
-				r += `PNG`;
-				break;
-			case "Paraguayan":
-				r += `Par`;
-				break;
-			case "Peruvian":
-				r += `Per`;
-				break;
-			case "Polish":
-				r += `Pol`;
-				break;
-			case "Portuguese":
-				r += `Por`;
-				break;
-			case "Puerto Rican":
-				r += `PR`;
-				break;
-			case "Qatari":
-				r += `Qat`;
-				break;
-			case "Romanian":
-				r += `Rom`;
-				break;
-			case "Russian":
-				r += `Rus`;
-				break;
-			case "Rwandan":
-				r += `Rwa`;
-				break;
-			case "Sahrawi":
-				r += `Sah`;
-				break;
-			case "Saint Lucian":
-				r += `SL`;
-				break;
-			case "Salvadoran":
-				r += `ES`;
-				break;
-			case "Sammarinese":
-				r += `SM`;
-				break;
-			case "Samoan":
-				r += `Sam`;
-				break;
-			case "São Toméan":
-				r += `STP`;
-				break;
-			case "Saudi":
-				r += `Sau`;
-				break;
-			case "Scottish":
-				r += `Sco`;
-				break;
-			case "Senegalese":
-				r += `Sen`;
-				break;
-			case "Serbian":
-				r += `Srb`;
-				break;
-			case "Seychellois":
-				r += `Sey`;
-				break;
-			case "Sierra Leonean":
-				r += `Sie`;
-				break;
-			case "Singaporean":
-				r += `Sng`;
-				break;
-			case "Slovak":
-				r += `Svk`;
-				break;
-			case "Slovene":
-				r += `Svn`;
-				break;
-			case "a Solomon Islander":
-				r += `SI`;
-				break;
-			case "Somali":
-				r += `Som`;
-				break;
-			case "South African":
-				r += `RSA`;
-				break;
-			case "South Sudanese":
-				r += `SS`;
-				break;
-			case "Spanish":
-				r += `Spa`;
-				break;
-			case "Sri Lankan":
-				r += `Sri`;
-				break;
-			case "Sudanese":
-				r += `Sud`;
-				break;
-			case "Surinamese":
-				r += `Sur`;
-				break;
-			case "Swazi":
-				r += `Swa`;
-				break;
-			case "Swedish":
-				r += `Swe`;
-				break;
-			case "Swiss":
-				r += `Swi`;
-				break;
-			case "Syrian":
-				r += `Syr`;
-				break;
-			case "Taiwanese":
-				r += `Tai`;
-				break;
-			case "Tajik":
-				r += `Taj`;
-				break;
-			case "Tanzanian":
-				r += `Tza`;
-				break;
-			case "Thai":
-				r += `Tha`;
-				break;
-			case "Tibetan":
-				r += `Tib`;
-				break;
-			case "Togolese":
-				r += `Tog`;
-				break;
-			case "Tongan":
-				r += `Ton`;
-				break;
-			case "Trinidadian":
-				r += `TT`;
-				break;
-			case "Tunisian":
-				r += `Tun`;
-				break;
-			case "Turkish":
-				r += `Tur`;
-				break;
-			case "Turkmen":
-				r += `Tkm`;
-				break;
-			case "Tuvaluan":
-				r += `Tuv`;
-				break;
-			case "Ugandan":
-				r += `Uga`;
-				break;
-			case "Ukrainian":
-				r += `Ukr`;
-				break;
-			case "Uruguayan":
-				r += `Uru`;
-				break;
-			case "Uzbek":
-				r += `Uzb`;
-				break;
-			case "Vatican":
-				r += `VC`;
-				break;
-			case "Venezuelan":
-				r += `Ven`;
-				break;
-			case "Vietnamese":
-				r += `Vnm`;
-				break;
-			case "Vincentian":
-				r += `SVG`;
-				break;
-			case "Yemeni":
-				r += `Yem`;
-				break;
-			case "Zairian":
-				r += `DRC`;
-				break;
-			case "Zambian":
-				r += `Zam`;
-				break;
-			case "Zimbabwean":
-				if (slave.race === "white") {
-					r += `Rho`;
-				} else {
-					r += `Zwe`;
-				}
-				break;
-			case "Ancient Chinese Revivalist":
-				r += `Chi Rev`;
-				break;
-			case "Ancient Egyptian Revivalist":
-				r += `Egy Rev`;
-				break;
-			case "Arabian Revivalist":
-				r += `Ara Rev`;
-				break;
-			case "Aztec Revivalist":
-				r += `Azt Rev`;
-				break;
-			case "Edo Revivalist":
-				r += `Edo Rev`;
-				break;
-			case "Roman Revivalist":
-				r += `Rom Rev`;
-				break;
-			case "":
-			case "none":
-			case "slave":
-			case "Stateless":
-				r += `None`;
-				break;
-			default:
-				r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
-				break;
-		}
-		r += `</span> `;
-	}
-	
-	function long_nationality(slave) {
-		r += `<span class="tan">`;
-		switch (slave.nationality) {
-			case "Zimbabwean":
-				if (slave.race === "white") {
-					r += `Rhodesian.`;
-				} else {
-					r += `${slave.nationality}.`;
-				}
-				break;
-			case "slave":
-			case "none":
-			case "":
-			case "Stateless":
-				r += `Stateless.`;
-				break;
-			default:
-				r += `${slave.nationality}.`;
-				break;
-		}
-		r += `</span> `;
-	}
-	
-	function short_skin(slave) {
-		r += `<span class="pink">`;
-		switch (slave.skin) {
-			case "light brown":
-				r += `L. Br`;
-				break;
-			case "dark brown":
-				r += `D. Br`;
-				break;
-			case "light olive":
-				r += `L. Oli`;
-				break;
-			case "dark olive":
-				r += `D. Oli`;
-				break;
-			case "extremely pale":
-				r += `Ex. Pa`;
-				break;
-			case "pure white":
-				r += `P. Whi`;
-				break;
-			case "tanned":
-				r += `Tan`;
-				break;
-			case "dark":
-			case "fair":
-			case "pale":
-				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
-				break;
-			default:
-				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
-				break;
-		}
-		r += `</span> `;
-	}
-	
-	function short_genitals(slave) {
-		if (slave.dick > 0) {
-			r += `<span class="pink">`;
-			if (slave.balls === 0) {
-				r += `Geld`;
-			}
-			if ((slave.dick > 8) && (slave.balls > 8)) {
-				r += `Junk+++`;
-			} else if ((slave.dick > 5) && (slave.balls > 5)) {
-				r += `Junk++`;
-			} else if ((slave.dick > 4) && (slave.balls > 4)) {
-				r += `Junk+`;
-			} else if ((slave.dick > 3) && (slave.balls > 3)) {
-				r += `Junk`;
-			} else if (slave.dick > 8) {
-				r += `Dick+++`;
-			} else if (slave.dick > 5) {
-				r += `Dick++`;
-			} else if (slave.dick > 4) {
-				r += `Dick+`;
-			} else if (slave.dick > 3) {
-				r += `Dick`;
-			} else if (slave.balls > 10) {
-				r += `Balls+++`;
-			} else if (slave.balls > 5) {
-				r += `Balls++`;
-			} else if (slave.balls > 4) {
-				r += `Balls+`;
-			} else if (slave.balls > 3) {
-				r += `Balls`;
-			}
-			r += `</span> `;
-		}
-		if (slave.vagina === 0) {
-			r += `<span class="lime">VV</span>`;
-		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
-			r += `<span class="pink">NBP</span>`;
-		}
-		if (slave.anus === 0) {
-			r += `	<span class="lime">AV</span>`;
-		}
-		r += `<span class="pink">`;
-		if ((slave.vagina > 3) && (slave.anus > 3)) {
-			r += ` V++A++`;
-		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
-			r += ` V+A+`;
-		} else if (slave.vagina > 3) {
-			r += ` V++`;
-		} else if (slave.vagina > 2) {
-			r += ` V+`;
-		} else if (slave.anus > 3) {
-			r += ` A++`;
-		} else if (slave.anus > 2) {
-			r += ` A+`;
-		}
-		r += `</span> `;
-	}
-	
-	function long_genitals(slave) {
-		if (slave.dick > 0) {
-			r += `<span class="pink">`;
-			if (slave.balls === 0) {
-				r += `Gelded.`;
-			}
-			if ((slave.dick > 8) && (slave.balls > 8)) {
-				r += `Hyper dick & balls.`;
-			} else if ((slave.dick > 5) && (slave.balls > 5)) {
-				r += `Monster dick & balls.`;
-			} else if ((slave.dick > 4) && (slave.balls > 4)) {
-				r += `Huge dick & balls.`;
-			} else if ((slave.dick > 3) && (slave.balls > 3)) {
-				r += `Big dick & balls.`;
-			} else if (slave.dick > 8) {
-				r += `Hyper dong.`;
-			} else if (slave.dick > 5) {
-				r += `Monster dong.`;
-			} else if (slave.dick > 4) {
-				r += `Huge dick.`;
-			} else if (slave.dick > 3) {
-				r += `Big dick.`;
-			} else if (slave.balls > 8) {
-				r += `Hyper balls.`;
-			} else if (slave.balls > 5) {
-				r += `Monstrous balls.`;
-			} else if (slave.balls > 4) {
-				r += `Huge balls.`;
-			} else if (slave.balls > 3) {
-				r += `Big balls.`;
-			}
-			r += `</span> `;
-		}
-		if (slave.vagina === 0) {
-			r += `<span class="lime">Virgin.</span> `;
-		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
-			r += `<span class="pink">Naked, barefoot, and pregnant.</span> `;
-		}
-		if (slave.anus === 0) {
-			r += `<span class="lime">Anal virgin.</span> `;
-		}
-		r += `<span class="pink">`;
-		if ((slave.vagina > 3) && (slave.anus > 3)) {
-			r += `Blown out holes.`;
-		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
-			r += `High mileage.`;
-		} else if (slave.vagina > 3) {
-			r += `Cavernous pussy.`;
-		} else if (slave.vagina > 2) {
-			r += `Loose pussy.`;
-		} else if (slave.anus > 3) {
-			r += `Permagaped anus.`;
-		} else if (slave.anus > 2) {
-			r += `Gaping anus.`;
-		}
-		r += `</span> `;
-	}
-	
-	function short_age(slave) {
-		r += `<span class="pink">`;
-		if (V.showAgeDetail === 1) {
-			r += slave.actualAge;
-		} else if (slave.actualAge >= 40) {
-			r += `40s`;
-		} else if (slave.actualAge >= 35) {
-			r += `Lt30s`;
-		} else if (slave.actualAge >= 30) {
-			r += `Ea30s`;
-		} else if (slave.actualAge >= 25) {
-			r += `Lt20s`;
-		} else if (slave.actualAge >= 20) {
-			r += `Ea20s`;
-		} else if (slave.actualAge >= 18) {
-			r += slave.actualAge;
-		}
-		if (slave.actualAge !== slave.physicalAge) {
-			r += `${slave.physicalAge}y-bdy`;
-		}
-		if (slave.visualAge !== slave.physicalAge) {
-			r += `Lks${slave.visualAge}`;
-		}
-		r += " ";
-	}
-	
-	function short_face(slave) {
-		if (slave.face < -95) {
-			r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-		} else if (slave.face < -40) {
-			r += `<span class="red">Face--${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-		} else if (slave.face < -10) {
-			r += `<span class="red">Face-${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-		} else if (slave.face <= 10) {
-			r += `Face${V.summaryStats? `[${slave.face}]` : ''}`;
-		} else if (slave.face <= 40) {
-			r += `<span class="pink">Face+${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-		} else if (slave.face <= 95) {
-			r += `<span class="pink">Face++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-		} else {
-			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
-		}
-		r += " ";
-	}
-	
-	function short_eyes(slave) {
-		if (slave.eyes === -2) {
-			r += `<span class="red">Blind</span>`;
-		} else if (((slave.eyes === -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
-			r += `<span class="yellow">Sight-</span>`;
-		}
-		r += " ";
-	}
-	
-	function short_lips(slave) {
-		if (slave.lips > 95) {
-			r += `Facepussy`;
-		} else if (slave.lips > 70) {
-			r += `Lips+++${V.summaryStats? `[${slave.lips}]` : ''}`;
-		} else if (slave.lips > 40) {
-			r += `Lips++${V.summaryStats? `[${slave.lips}]` : ''}`;
-		} else if (slave.lips > 20) {
-			r += `Lips+${V.summaryStats? `[${slave.lips}]` : ''}`;
-		} else if (slave.lips > 10) {
-			r += `Lips${V.summaryStats? `[${slave.lips}]` : ''}`;
-		} else {
-			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
-		}
-		r += " ";
-	}
-	
-	function short_teeth(slave) {
-		if (slave.teeth === "crooked") {
-			r += `<span class="yellow">Cr Teeth</span>`;
-		} else if (slave.teeth === "cosmetic braces") {
-			r += `Cos Braces`;
-		} else if (slave.teeth === "straightening braces") {
-			r += `Braces`;
-		} else if (slave.teeth === "removable") {
-			r += `Rem Teeth`;
-		} else if (slave.teeth === "pointy") {
-			r += `Fangs`;
-		}
-		r += " ";
-	}
-	
-	function short_muscles(slave) {
-		if (slave.muscles > 95) {
-			r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		} else if (slave.muscles > 50) {
-			r += `Musc+${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		} else if (slave.muscles > 5) {
-			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		} else if (slave.muscles > -6) {
-			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		} else if (slave.muscles > -31) {
-			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
-				r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
-			} else {
-				r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
-			}
-		} else if (slave.muscles > -96) {
-			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
-				r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
-			} else {
-				r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
-			}
-		} else {
-			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
-		}
-		r += " ";
-	}
-	
-	function short_limbs(slave) {
-		if (slave.amp !== 0) {
-			if (slave.amp === -1) {
-				r += `P-Limbs`;
-			} else if (slave.amp === -2) {
-				r += `Sex P-Limbs`;
-			} else if (slave.amp === -3) {
-				r += `Beauty P-Limbs`;
-			} else if (slave.amp === -4) {
-				r += `Combat P-Limbs`;
-			} else if (slave.amp === -5) {
-				r += `Cyber P-Limbs`;
-			} else {
-				r += `Amp`;
-			}
-			r += " ";
-		}
-		if (!canWalk(slave)) {
-			r += `Immob`;
-		}
-		if (slave.heels === 1) {
-			r += `Heel`;
-		}
-		r += `</span> `;
-	}
-	
-	function short_voice(slave) {
-		if (slave.voice === 0) {
-			r += `<span class="pink">Mute</span>`;
-		} else {
-			if (slave.accent === 3) {
-				r += `<span class="red">Acc--</span>`;
-			} else if (slave.accent === 2) {
-				r += `Acc-`;
-			} else if (slave.accent === 4) {
-				r += `Acc--`;
-			} else if (slave.accent === 1) {
-				r += `<span class="pink">Acc</span>`;
-			}
-		}
-		r += " ";
-	}
-	
-	function short_tits_ass(slave) {
-		r += `<span class="pink">`;
-		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
-			r += `T&A+++`;
-		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
-			r += `T&A++`;
-		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
-			r += `T&A+`;
-		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
-			r += `T&A`;
-		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
-			r += `Girlish`;
-		} else if (slave.boobs >= 12000) {
-			r += `Boobs+++`;
-		} else if (slave.boobs > 4000) {
-			r += `Boobs++`;
-		} else if (slave.boobs > 2000) {
-			r += `Boobs+`;
-		} else if (slave.boobs > 800) {
-			r += `Boobs`;
-		} else if (slave.butt > 9) {
-			r += `Ass+++`;
-		} else if (slave.butt > 8) {
-			r += `Ass++`;
-		} else if (slave.butt > 6) {
-			r += `Ass+`;
-		} else if (slave.butt > 4) {
-			r += `Ass`;
-		}
-		r += `</span> `;
-	}
-	
-	function short_hips(slave) {
-		r += `<span class="red">`;
-		if (slave.hips < -1) {
-			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
-				r += `Disp+`;
-			}
-		} else if (slave.hips < 0) {
-			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
-				r += `Disp+`;
-			}
-		} else if (slave.hips > 2) {
-			if (slave.butt <= 8) {
-				r += `Disp-`;
-			}
-		} else if (slave.hips > 1) {
-			if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
-				r += `Disp-`;
-			}
-		} else if (slave.hips > 0) {
-			if (slave.butt > 8) {
-				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
-					r += `Disp+`;
-				}
-			} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
-				r += `Disp-`;
-			}
-		} else {
-			if (slave.butt > 6) {
-				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
-					r += `Disp+`;
-				}
-			} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
-				r += `Disp-`;
-			}
-		}
-		r += `</span> `;
-	}
-	
-	function short_waist(slave) {
-		if (slave.waist > 95) {
-			r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
-		} else if (slave.waist > 40) {
-			r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
-		} else if (slave.waist > 10) {
-			r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
-		} else if (slave.waist >= -10) {
-			r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
-		} else if (slave.waist >= -40) {
-			r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
-		} else if (slave.waist >= -95) {
-			r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
-		} else {
-			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
-		}
-		r += " ";
-	}
-	
-	function short_implants(slave) {
-		r += `<span class="pink">`;
-		if ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant <= 5) && (slave.bellyImplant === -1)) {
-			r += `Natr`;
-		} else {
-			r += `Impl`;
-		}
-		r += " ";
-	}
-	
-	function short_lactation(slave) {
-		if (slave.lactation === 1) {
-			r += `Lact`;
-		} else if (slave.lactation === 2) {
-			r += `Lact++`;
-		}
-		r += " ";
-	}
-	
-	function short_mods(slave) {
-		modScore(slave);
-		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
-			return;
-		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
-			r += `Mods++`;
-		} else if (V.modScore > 7) {
-			r += `Mods+`;
-		} else {
-			r += `Mods`;
-		}
-		if (slave.brand !== 0) {
-			r += `Br`;
-		}
-		r += " ";
-	}
-	
-	function long_age(slave) {
-		r += `<span class="pink">`;
-		if (V.showAgeDetail === 1) {
-			r += `Age ${slave.actualAge}.`;
-		} else if (slave.actualAge >= 40) {
-			r += `Forties.`;
-		} else if (slave.actualAge >= 35) {
-			r += `Late thirties.`;
-		} else if (slave.actualAge >= 30) {
-			r += `Early thirties.`;
-		} else if (slave.actualAge >= 25) {
-			r += `Late twenties.`;
-		} else if (slave.actualAge >= 20) {
-			r += `Early twenties.`;
-		} else if (slave.actualAge >= 19) {
-			r += `Nineteen.`;
-		} else if (slave.actualAge >= 18) {
-			r += `Eighteen.`;
-		} else {
-			r += `Underage.`;
-		}
-		r += " ";
-		/*
-		 **  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
-		 **  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
-		 */
-		if (((slave.inducedNCS === 0) || (slave.visualAge >= slave.physicalAge))) {
-			if (slave.actualAge !== slave.physicalAge) {
-				r += `${slave.physicalAge} year old body. `;
-			}
-			if (slave.visualAge !== slave.physicalAge) {
-				r += `Looks ${slave.visualAge}. `;
-			}
-		} else {
-			/*
-			 **  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
-			 **  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
-			 **  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
-			 **  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
-			 **  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
-			 **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
-			 **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
-			 */
-			r += `Appears to have a ${slave.visualAge} year old body. `;
-		}
-		if (slave.inducedNCS === 1) {
-			r += `(<span class="orange">NCS</span>) `;
-		}
-	}
-	
-	function long_face(slave) {
-		if (slave.face < -95) {
-			r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-		} else if (slave.face < -40) {
-			r += `<span class="red">Ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-		} else if (slave.face < -10) {
-			r += `<span class="red">Unattractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-		} else if (slave.face <= 10) {
-			r += `Average${V.summaryStats? `[${slave.face}]`: ''}`;
-		} else if (slave.face <= 40) {
-			r += `<span class="pink">Attractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-		} else if (slave.face <= 95) {
-			r += `<span class="pink">Beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-		} else {
-			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
-		}
-		r += ` ${slave.faceShape} face.`;
-	}
-	
-	function long_eyes(slave) {
-		if (slave.eyes <= -2) {
-			r += `<span class="red">Blind.</span>`;
-		} else if (((slave.eyes <= -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
-			r += `<span class="yellow">Nearsighted.</span>`;
-		}
-		r += " ";
-	}
-	
-	function long_lips(slave) {
-		if (slave.lips > 95) {
-			r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
-		} else if (slave.lips > 70) {
-			r += `Huge lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-		} else if (slave.lips > 40) {
-			r += `Big lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-		} else if (slave.lips > 20) {
-			r += `Pretty lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-		} else if (slave.lips > 10) {
-			r += `Normal lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
-		} else {
-			r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
-		}
-		r += " ";
-	}
-	
-	function long_teeth(slave) {
-		if (slave.teeth === "crooked") {
-			r += `<span class="yellow">Crooked teeth.</span>`;
-		} else if (slave.teeth === "cosmetic braces") {
-			r += `Cosmetic braces.`;
-		} else if (slave.teeth === "straightening braces") {
-			r += `Braces.`;
-		} else if (slave.teeth === "removable") {
-			r += `Removable teeth.`;
-		} else if (slave.teeth === "pointy") {
-			r += `Sharp fangs.`;
-		}
-		r += " ";
-	}
-	
-	function long_muscles(slave) {
-		if (slave.muscles > 95) {
-			r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
-		} else if (slave.muscles > 50) {
-			r += `Muscular${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-		} else if (slave.muscles > 5) {
-			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-		} else if (slave.muscles > -6) {
-			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-		} else if (slave.muscles > -31) {
-			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
-				r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
-			} else {
-				r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-			}
-		} else if (slave.muscles > -96) {
-			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
-				r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
-			} else {
-				r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
-			}
-		} else {
-			r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
-		}
-		r += " ";
-	}
-	
-	function long_limbs(slave) {
-		if (slave.amp !== 0) {
-			if (slave.amp === -1) {
-				r += `Prosthetic limbs.`;
-			} else if (slave.amp === -2) {
-				r += `Sexy prosthetic limbs.`;
-			} else if (slave.amp === -3) {
-				r += `Beautiful prosthetic limbs.`;
-			} else if (slave.amp === -4) {
-				r += `Deadly prosthetic limbs.`;
-			} else if (slave.amp === -5) {
-				r += `Cyber prosthetic limbs.`;
-			} else {
-				r += `Amputee.`;
-			}
-		}
-		r += " ";
-		if (!canWalk(slave)) {
-			r += `Immobile. `;
-		}
-		if (slave.heels === 1) {
-			r += `Heeled. `;
-		}
-		r += `</span> `;
-	}
-	
-	function long_voice(slave) {
-		if (slave.voice === 0) {
-			r += `<span class="pink">Mute.</span>`;
-		} else {
-			if (slave.accent === 3) {
-				r += `<span class="red">Bad accent.</span>`;
-			} else if (slave.accent === 4) {
-				r += `<span class="red">No language skills.</span>`;
-			} else if (slave.accent === 2) {
-				r += `Accent.`;
-			} else if (slave.accent === 1) {
-				r += `<span class="pink">Cute accent.</span>`;
-			}
-		}
-		r += " ";
-	}
-	
-	function long_tits_ass(slave) {
-		r += `<span class="pink">`;
-		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
-			r += `Hyper T&A.`;
-		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
-			r += `Enormous T&A.`;
-		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
-			r += `Huge T&A.`;
-		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
-			r += `Big T&A.`;
-		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
-			r += `Girlish figure.`;
-		} else if (slave.boobs >= 12000) {
-			r += `Immobilizing tits.`;
-		} else if (slave.boobs > 4000) {
-			r += `Monstrous tits.`;
-		} else if (slave.boobs > 2000) {
-			r += `Huge tits.`;
-		} else if (slave.boobs > 800) {
-			r += `Big tits.`;
-		} else if (slave.butt > 9) {
-			r += `Hyper ass.`;
-		} else if (slave.butt > 8) {
-			r += `Titanic ass.`;
-		} else if (slave.butt > 6) {
-			r += `Huge ass.`;
-		} else if (slave.butt > 4) {
-			r += `Big ass.`;
-		}
-		r += `</span> `;
-	}
-	
-	function long_hips(slave) {
-		r += `<span class="red">`;
-		if (slave.hips < -1) {
-			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
-				r += `Disproportionately big butt.`;
-			}
-		} else if (slave.hips < 0) {
-			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
-				r += `Disproportionately big butt.`;
-			}
-		} else if (slave.hips > 2) {
-			if (slave.butt <= 8) {
-				r += `Disproportionately small butt.`;
-			}
-		} else if (slave.hips > 1) {
-			if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
-				r += `Disproportionately small butt.`;
-			}
-		} else if (slave.hips > 0) {
-			if (slave.butt > 8) {
-				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
-					r += `Disproportionately big butt.`;
-				}
-			} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
-				r += `Disproportionately small butt.`;
-			}
-		} else {
-			if (slave.butt > 6) {
-				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
-					r += `Disproportionately big butt.`;
-				}
-			} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
-				r += `Disproportionately small butt.`;
-			}
-		}
-		r += `</span> `;
-	}
-	
-	function long_waist(slave) {
-		if (slave.waist > 95) {
-			r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-		} else if (slave.waist > 40) {
-			r += `<span class="red">Ugly waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-		} else if (slave.waist > 10) {
-			r += `<span class="red">Unattractive waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-		} else if (slave.waist >= -10) {
-			r += `Average waist${V.summaryStats? `[${slave.waist}]`: ''}.`;
-		} else if (slave.waist >= -40) {
-			r += `<span class="pink">Feminine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-		} else if (slave.waist >= -95) {
-			r += `<span class="pink">Hourglass waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-		} else {
-			r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
-		}
-		r += " ";
-	}
-	
-	function long_implants(slave) {
-		r += `<span class="pink">`;
-		if ((slave.boobsImplant !== 0) || (slave.buttImplant !== 0) || (slave.lipsImplant !== 0) || (slave.bellyImplant !== -1)) {
-			r += `Implants.`;
-		} else if ((slave.faceImplant >= 30) || (slave.waist < -95)) {
-			r += `Surgery enhanced.`;
-		} else {
-			r += `All natural.`;
-		}
-		r += " ";
-	}
-	
-	function long_lactation(slave) {
-		if (slave.lactation === 1) {
-			r += `Lactating naturally.`;
-		} else if (slave.lactation === 2) {
-			r += `Heavy lactation.`;
-		}
-		r += " ";
-	}
-	
-	function long_mods(slave) {
-		modScore(slave);
-		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
-			return;
-		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
-			r += `Extensive body mods.`;
-		} else if (V.modScore > 7) {
-			r += `Noticeable body mods.`;
-		} else {
-			r += `Light body mods.`;
-		}
-		r += " ";
-	}
-	
-	function short_intelligence(slave) {
-		if (slave.fetish === "mindbroken") {
-			return;
-		} else if (slave.intelligenceImplant === 1) {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">I+++(e)</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">I++(e)</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">I+(e)</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">I-(e)</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">I--(e)</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">I---(e)</span>`;
-					break;
-				default:
-					r += `I(e)`;
-					break;
-			}
-		} else {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">I+++</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">I++</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">I+</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">I-</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">I--</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">I---</span>`;
-					break;
-				default:
-					r += `I`;
-					break;
-			}
-		}
-		r += " ";
-	} 
-	
-	function short_sex_skills(slave) {
-		let _SSkills = slave.analSkill + slave.oralSkill;
-		r += `<span class="aquamarine">`;
-		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
-			r += `MSS`;
-		} else {
-			_SSkills += slave.vaginalSkill;
-			_SSkills = Math.trunc(_SSkills);
-			if (_SSkills > 180) {
-				r += `S++`;
-			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
-				r += `Sh++`;
-			} else if (_SSkills > 90) {
-				r += `S+`;
-			} else if (_SSkills > 30) {
-				r += `S`;
-			} else {
-				r += `S-`;
-			}
-			if (V.summaryStats) {
-				r += `[${_SSkills}] `;
-			}
-			r += " ";
-			if (slave.whoreSkill >= 100) {
-				r += `W+++`;
-			} else if (slave.whoreSkill > 60) {
-				r += `W++`;
-			} else if (slave.whoreSkill > 30) {
-				r += `W+`;
-			} else if (slave.whoreSkill > 10) {
-				r += `W`;
-			}
-			if (slave.whoreSkill > 10) {
-				if (V.summaryStats) {
-					r += `[${slave.whoreSkill}] `;
-				}
-			}
-			r += " ";
-			if (slave.entertainSkill >= 100) {
-				r += `E+++`;
-			} else if (slave.entertainSkill > 60) {
-				r += `E++`;
-			} else if (slave.entertainSkill > 30) {
-				r += `E+`;
-			} else if (slave.entertainSkill > 10) {
-				r += `E`;
-			}
-			if (slave.entertainSkill > 10) {
-				if (V.summaryStats) {
-					r += `[${slave.entertainSkill}] `;
-				}
-			}
-		}
-		r += " ";
-	}
-	
-	function short_prestige(slave) {
-		if (slave.prestige > 0) {
-			r += `<span class="green">`;
-			if (slave.prestige > 2) {
-				r += `Prest++`;
-			} else if (slave.prestige === 2) {
-				r += `Prest+`;
-			} else if (slave.prestige === 1) {
-				r += `Prest`;
-			}
-			r += `</span> `;
-		}
-	}
-	
-	function long_intelligence(slave) {
-		if (slave.fetish === "mindbroken") {
-			return;
-		} else if (slave.intelligenceImplant === 1) {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">Brilliant, educated.</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">Very smart, educated.</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">Smart, educated.</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">Slow, educated.</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">Very slow, educated.</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">Moronic, educated.</span>`;
-					break;
-				default:
-					r += `Average intelligence, educated.`;
-					break;
-			}
-		} else {
-			switch (slave.intelligence) {
-				case 3:
-					r += `<span class="deepskyblue">Brilliant.</span>`;
-					break;
-				case 2:
-					r += `<span class="deepskyblue">Very smart.</span>`;
-					break;
-				case 1:
-					r += `<span class="deepskyblue">Smart.</span>`;
-					break;
-				case -1:
-					r += `<span class="orangered">Slow.</span>`;
-					break;
-				case -2:
-					r += `<span class="orangered">Very slow.</span>`;
-					break;
-				case -3:
-					r += `<span class="orangered">Moronic.</span>`;
-					break;
-				default:
-					r += `Average intelligence.`;
-					break;
-			}
-		}
-		r += " ";
-	}
-	
-	function long_sex_skills(slave) {
-		let _SSkills = (slave.analSkill + slave.oralSkill);
-		r += `<span class="aquamarine">`;
-		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
-			r += `Masterful Sex Slave. `;
-		} else {
-			_SSkills += slave.vaginalSkill;
-			if (_SSkills > 180) {
-				r += `Sex master${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
-			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
-				r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
-			} else if (_SSkills > 90) {
-				r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
-			} else if (_SSkills > 30) {
-				r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
-			} else {
-				r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
-			}
-			r += " ";
-			if (slave.whoreSkill >= 100) {
-				r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
-			} else if (slave.whoreSkill >= 60) {
-				r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
-			} else if (slave.whoreSkill >= 30) {
-				r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
-			} else if (slave.whoreSkill >= 10) {
-				r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
-			}
-			r += " ";
-			if (slave.entertainSkill >= 100) {
-				r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
-			} else if (slave.entertainSkill >= 60) {
-				r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
-			} else if (slave.entertainSkill >= 30) {
-				r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
-			} else if (slave.entertainSkill >= 10) {
-				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
-			}
-			r += " ";
-		}
-	}
-	
-	function long_prestige(slave) {
-		if (slave.prestige > 0) {
-			r += `<span class="green">`;
-			if (slave.prestige > 2) {
-				r += `Extremely prestigious.`;
-			} else if (slave.prestige === 2) {
-				r += `Very prestigious.`;
-			} else if (slave.prestige === 1) {
-				r += `Prestigious.`;
-			}
-			r += `</span> `;
-		}
-	}
-	
-	function short_fetish(slave) {
-		r += `<span class="lightcoral">`;
-		switch (slave.fetish) {
-			case "submissive":
-				if (slave.fetishStrength > 95) {
-					r += `Sub++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Sub+`;
-				} else {
-					r += `Sub`;
-				}
-				break;
-			case "cumslut":
-				if (slave.fetishStrength > 95) {
-					r += `Oral++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Oral+`;
-				} else {
-					r += `Oral`;
-				}
-				break;
-			case "humiliation":
-				if (slave.fetishStrength > 95) {
-					r += `Humil++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Humil+`;
-				} else {
-					r += `Humil`;
-				}
-				break;
-			case "buttslut":
-				if (slave.fetishStrength > 95) {
-					r += `Anal++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Anal+`;
-				} else {
-					r += `Anal`;
-				}
-				break;
-			case "boobs":
-				if (slave.fetishStrength > 95) {
-					r += `Boobs++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Boobs+`;
-				} else {
-					r += `Boobs`;
-				}
-				break;
-			case "sadist":
-				if (slave.fetishStrength > 95) {
-					r += `Sadist++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Sadist+`;
-				} else {
-					r += `Sadist`;
-				}
-				break;
-			case "masochist":
-				if (slave.fetishStrength > 95) {
-					r += `Pain++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Pain+`;
-				} else {
-					r += `Pain`;
-				}
-				break;
-			case "dom":
-				if (slave.fetishStrength > 95) {
-					r += `Dom++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Dom+`;
-				} else {
-					r += `Dom`;
-				}
-				break;
-			case "pregnancy":
-				if (slave.fetishStrength > 95) {
-					r += `Preg++`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Preg+`;
-				} else {
-					r += `Preg`;
-				}
-				break;
-			default:
-				r += `Vanilla`;
-				break;
-		}
-		if (V.summaryStats) {
-			r += `[${slave.fetishStrength}]`;
-		}
-		r += `</span> `;
-	}
-	
-	function short_attraction(slave) {
-		if (slave.attrXY <= 5) {
-			r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXY <= 15) {
-			r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXY <= 35) {
-			r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXY <= 65) {
-			r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
-		} else if (slave.attrXY <= 85) {
-			r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		} else if (slave.attrXX > 95) {
-			if (slave.energy <= 95) {
-				r += `<span class="green">Omni!</span>`;
-			} else {
-				r += `<span class="green">Omni+Nympho!!</span>`;
-			}
-		} else {
-			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
-		}
-		r += " ";
-		if (slave.attrXX <= 5) {
-			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXX <= 15) {
-			r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXX <= 35) {
-			r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXX <= 65) {
-			r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
-		} else if (slave.attrXX <= 85) {
-			r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXX <= 95) {
-			r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
-		}
-		r += " ";
-		if (slave.energy > 95) {
-			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
-				r += `<span class="green">Nympho!</span>`;
-			}
-		} else if (slave.energy > 80) {
-			r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		} else if (slave.energy > 60) {
-			r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		} else if (slave.energy > 40) {
-			r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		} else if (slave.energy > 20) {
-			r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		} else {
-			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
-		}
-		r += " ";
-	}
-	
-	function short_smart_fetish(slave) {
-		if (slave.fetishKnown === 1) {
-			if (slave.clitSetting === "off") {
-				r += `SP-`;
-			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
-				r += `SP:sub`;
-			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
-				r += `SP:oral`;
-			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
-				r += `SP:humil`;
-			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
-				r += `SP:anal`;
-			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
-				r += `SP:boobs`;
-			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
-				r += `SP:sade`;
-			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
-				r += `SP:pain`;
-			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
-				r += `SP:dom`;
-			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
-				r += `SP:preg`;
-			} else if (((slave.fetish !== "none") && (slave.clitSetting === "vanilla"))) {
-				r += `SP:vanilla`;
-			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
-				r += `SP:all`;
-			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
-				r += `SP:none`;
-			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
-				r += `SP:monitoring`;
-			}
-		} else {
-			switch (slave.clitSetting) {
-				case "off":
-					r += `SP-`;
-					break;
-				case "submissive":
-					r += `SP:sub`;
-					break;
-				case "lesbian":
-					r += `SP:les`;
-					break;
-				case "oral":
-					r += `SP:oral`;
-					break;
-				case "humiliation":
-					r += `SP:humil`;
-					break;
-				case "anal":
-					r += `SP:anal`;
-					break;
-				case "boobs":
-					r += `SP:boobs`;
-					break;
-				case "sadist":
-					r += `SP:sade`;
-					break;
-				case "masochist":
-					r += `SP:pain`;
-					break;
-				case "dom":
-					r += `SP:dom`;
-					break;
-				case "pregnancy":
-					r += `SP:pregnancy`;
-					break;
-				case "vanilla":
-					r += `SP:vanilla`;
-					break;
-				case "all":
-					r += `SP:all`;
-					break;
-				case "none":
-					r += `SP:none`;
-					break;
-			}
-		}
-		r += " ";
-	}
-	
-	function short_smart_attraction(slave) {
-		if (slave.attrKnown === 1) {
-			if (slave.clitSetting === "women") {
-				if (slave.attrXX < 95) {
-					r += `SP:women`;
-				} else {
-					r += `SP:monitoring`;
-				}
-			} else if (slave.clitSetting === "men") {
-				if (slave.attrXY < 95) {
-					r += `SP:men`;
-				} else {
-					r += `SP:monitoring`;
-				}
-			} else if (slave.clitSetting === "anti-women") {
-				if (slave.attrXX > 0) {
-					r += `SP:anti-women`;
-				} else {
-					r += `SP:monitoring`;
-				}
-			} else if (slave.clitSetting === "anti-men") {
-				if (slave.attrXY > 0) {
-					r += `SP:anti-men`;
-				} else {
-					r += `SP:monitoring`;
-				}
-			}
-		} else {
-			if (slave.clitSetting === "women") {
-				r += `SP:women`;
-			} else if (slave.clitSetting === "men") {
-				r += `SP:men`;
-			} else if (slave.clitSetting === "anti-women") {
-				r += `SP:anti-women`;
-			} else if (slave.clitSetting === "anti-men") {
-				r += `SP:anti-men`;
-			}
-		}
-		r += " ";
-	}
-	
-	function short_behavior_flaw(slave) {
-		r += `<span class="red">`;
-		switch (slave.behavioralFlaw) {
-			case "arrogant":
-				r += `Arrog`;
-				break;
-			case "bitchy":
-				r += `Bitchy`;
-				break;
-			case "odd":
-				r += `Odd`;
-				break;
-			case "hates men":
-				r += `Men-`;
-				break;
-			case "hates women":
-				r += `Women-`;
-				break;
-			case "gluttonous":
-				r += `Glut`;
-				break;
-			case "anorexic":
-				r += `Ano`;
-				break;
-			case "devout":
-				r += `Dev`;
-				break;
-			case "liberated":
-				r += `Lib`;
-				break;
-			default:
-				slave.behavioralFlaw = "none";
+				
+			default:
 				break;
+			}
+			if (flag) {
+				slave.drugs = rule.drug;
+				r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+			} else {
+				slave.drugs = "no drugs";
+				r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}`;
+			}
 		}
-		r += `</span> `;
 	}
-	
-	function short_sex_flaw(slave) {
-		switch (slave.sexualFlaw) {
-			case "hates oral":
-				r += `<span class="red">Oral-</span>`;
-				break;
-			case "hates anal":
-				r += `<span class="red">Anal-</span>`;
-				break;
-			case "hates penetration":
-				r += `<span class="red">Fuck-</span>`;
-				break;
-			case "shamefast":
-				r += `<span class="red">Shame</span>`;
-				break;
-			case "idealistic":
-				r += `<span class="red">Ideal</span>`;
-				break;
-			case "repressed":
-				r += `<span class="red">Repre</span>`;
-				break;
-			case "apathetic":
-				r += `<span class="red">Apath</span>`;
-				break;
-			case "crude":
-				r += `<span class="red">Crude</span>`;
-				break;
-			case "judgemental":
-				r += `<span class="red">Judge</span>`;
-				break;
-			case "cum addict":
-				r += `<span class="yellow">CumAdd</span>`;
-				break;
-			case "anal addict":
-				r += `<span class="yellow">AnalAdd</span>`;
-				break;
-			case "attention whore":
-				r += `<span class="yellow">Attention</span>`;
-				break;
-			case "breast growth":
-				r += `<span class="yellow">BoobObsess</span>`;
-				break;
-			case "abusive":
-				r += `<span class="yellow">Abusive</span>`;
-				break;
-			case "malicious":
-				r += `<span class="yellow">Malice</span>`;
-				break;
-			case "self hating":
-				r += `<span class="yellow">SelfHatr</span>`;
-				break;
-			case "neglectful":
-				r += `<span class="yellow">SelfNeglect</span>`;
-				break;
-			case "breeder":
-				r += `<span class="yellow">BreedObsess</span>`;
-				break;
-			default:
-				slave.sexualFlaw = "none";
-				break;
-		}
-		r += " ";
-	}	
-	
-	function short_behavior_quirk(slave) {
-		r += `<span class="green">`;
-		switch (slave.behavioralQuirk) {
-			case "confident":
-				r += `Confid`;
-				break;
-			case "cutting":
-				r += `Cutting`;
-				break;
-			case "funny":
-				r += `Funny`;
-				break;
-			case "fitness":
-				r += `Fit`;
-				break;
-			case "adores women":
-				r += `Women+`;
-				break;
-			case "adores men":
-				r += `Men+`;
-				break;
-			case "insecure":
-				r += `Insec`;
-				break;
-			case "sinful":
-				r += `Sinf`;
-				break;
-			case "advocate":
-				r += `Advoc`;
-				break;
-			default:
-				slave.behavioralQuirk = "none";
-				break;
+
+	function ProcessDiet(slave, rule) {
+		// Diet Setting 
+		if (rule.diet !== undefined && rule.diet !== "no default setting") {
+			/*
+			if ((slave.boobs >= 1600) && (slave.muscles <= 5) && (slave.amp != 1) && ((rule.muscles == "no default setting") || (rule.muscles === 0))) {
+				if ((slave.diet !== "muscle building")) {
+					slave.diet = "muscle building"
+					r += `<br>${slave.slaveName} has big tits and no back muscles, so she's been assigned to gain some.`
+				}
+			} else if ((slave.boobs >= 1600) && (slave.muscles > 5) && (slave.diet == "muscle building") && ((rule.muscles == "no default setting") || (rule.muscles === 0))) {
+			*/
+			if (rule.diet === "healthy" && slave.diet !== "healthy") {
+				slave.diet = "healthy";
+				r += `<br>${slave.slaveName} has been assigned to a healthy diet.`;
+			} else if ((slave.boobs >= 1600) && (slave.muscles > 5) && (slave.diet == "muscle building") && ((rule.muscles == "no default setting") || (rule.muscles === 0))) {
+				slave.diet = "healthy";
+				r += `<br>${slave.slaveName} has huge boobs, but she already has the back muscles to bear them, so she's been assigned to stop working out so hard.`;
+			} else if ((rule.dietGrowthSupport == 1) && ((slave.drugs == "breast injections") || (slave.drugs == "butt injections")) && (slave.weight <= 95)) {
+				if (slave.diet !== "fattening") {
+					slave.diet = "fattening";
+					r += `<br>${slave.slaveName} is on drugs designed to expand major body parts, so she's been put on a fattening diet to provide her body as much fuel for growth as possible.`;
+				}
+			} else {
+				if (!(isNaN(rule.diet))) {
+					if ((slave.weight - rule.diet) > 5) {
+						if ((slave.diet !== "restricted")) {
+							slave.diet = "restricted";
+							r += `<br>${slave.slaveName} is too fat so her diet has been set to restricted.`;
+						}
+						
+					} else if ((slave.weight - rule.diet) < -5) {
+						if ((slave.diet !== "fattening")) {
+							slave.diet = "fattening";
+							r += `<br>${slave.slaveName} is too skinny so her diet has been set to fattening.`;
+						}
+					} else if ((rule.muscles !== undefined) && (rule.muscles !== "no default setting") && (slave.amp != 1)) {
+						if ((slave.muscles >= rule.muscles+8)) {
+							if ((slave.diet !== "slimming")) {
+								slave.diet = "slimming";
+								r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
+							}
+						} else if ((slave.muscles <= rule.muscles-2)) {
+							if ((slave.diet !== "muscle building")) {
+								slave.diet = "muscle building";
+								r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
+							}
+						} else {
+							if ((slave.diet !== "healthy")) {
+								slave.diet = "healthy";
+								r += `<br>${slave.slaveName} is at the target weight, so her diet has been normalized.`;
+							}
+						}
+					} else {
+						if ((slave.diet !== "healthy")) {
+							slave.diet = "healthy";
+							r += `<br>${slave.slaveName} is at the target weight, so her diet has been normalized.`;
+						}
+					}
+				} else if ((rule.diet == "attractive")) {
+					if (((slave.weight > 95) || ((slave.weight > 30) && (slave.hips < 2)))) {
+						if ((slave.diet !== "restricted")) {
+							slave.diet = "restricted";
+							r += `<br>${slave.slaveName} is too fat so her diet has been set to restricted.`;
+						}
+					} else if (((slave.weight < -95) || ((slave.weight < -30) && (slave.hips > -2)))) {
+						if ((slave.diet !== "fattening")) {
+							slave.diet = "fattening";
+							r += `<br>${slave.slaveName} is too skinny so her diet has been set to fattening.`;
+						}
+					} else if ((rule.muscles !== undefined) && (rule.muscles !== "no default setting") && (slave.amp != 1)) {
+						if ((slave.muscles >= rule.muscles+8)) {
+							if ((slave.diet !== "slimming")) {
+								slave.diet = "slimming";
+								r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
+							}
+						} else if ((slave.muscles <= rule.muscles-2)) {
+							if ((slave.diet !== "muscle building")) {
+								slave.diet = "muscle building";
+								r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
+							}
+						} else {
+							if ((slave.diet !== "healthy")) {
+								slave.diet = "healthy";
+								r += `<br>${slave.slaveName} is at the target weight, so her diet has been normalized.`;
+							}
+						}
+					} else {
+						if ((slave.diet !== "healthy")) {
+							slave.diet = "healthy";
+							r += `<br>${slave.slaveName} is at the target weight, so her diet has been normalized.`;
+						}
+					}
+				} else if ((rule.diet == "XX")) {
+					if ((slave.diet !== "XX")) {
+						slave.diet = "XX";
+						r += `<br>${slave.slaveName} has been put on a diet that favors feminine development.`;
+					}
+				} else if ((rule.diet == "XY")) {
+					if ((slave.diet !== "XY")) {
+						slave.diet = "XY";
+						r += `<br>${slave.slaveName} has been put on a diet that favors masculine development.`;
+					}
+				} else if ((rule.diet == "XXY")) {
+					if (slave.balls > 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
+						if ((slave.diet !== "XXY")) {
+							slave.diet = "XXY";
+							r += `<br>${slave.slaveName} has been put on a diet that enhances a herm's unique sexuality.`;
+						}
+					} else {
+						if ((slave.diet !== "healthy")) {
+							slave.diet = "healthy";
+							r += `<br>${slave.slaveName} has been put on a standard diet since she is not a hermaphrodite.`;
+						}
+					}
+				} else if ((rule.diet == "cleansing")) {
+					if (((slave.diet !== "cleansing") && (slave.health < 100))) {
+						slave.diet = "cleansing";
+						r += `<br>${slave.slaveName} has been put on a diet of cleansers.`;
+					}
+				} else if ((rule.diet == "fertility")) {
+					if (canGetPregnant(slave)) {
+						if ((slave.diet !== "fertility")) {
+							slave.diet = "fertility";
+							r += `<br>${slave.slaveName} has been put on a diet to enhance fertility.`;
+						}
+					} else {
+						if ((slave.diet !== "healthy")) {
+							slave.diet = "healthy";
+							if (slave.pregKnown === 0 && slave.preg > 0) {
+								r += `<br>${slave.slaveName} has been put on a standard diet since tests reveal she has become pregnant.`;
+								slave.pregKnown = 1;
+							} else {
+								r += `<br>${slave.slaveName} has been put on a standard diet since she is currently unable to become pregnant.`;
+							}
+						}
+					}
+				} else if ((rule.diet == "cum production")) {
+					if ((slave.balls > 0)) {
+						if ((slave.diet !== "cum production")) {
+							slave.diet = "cum production";
+							r += `<br>${slave.slaveName} has been put on a diet to promote cum production.`;
+						}
+					} else {
+						if ((slave.diet !== "healthy")) {
+							slave.diet = "healthy";
+							r += `<br>${slave.slaveName} has been put on a standard diet since she is no longer able to produce cum.`;
+						}
+					}
+				}
+			}
+		} else if ((rule.muscles !== undefined) && (rule.muscles !== "no default setting") && (slave.amp != 1)) { // no diet rule, muscles only 
+			if ((slave.muscles >= rule.muscles+8)) {
+				if ((slave.diet !== "slimming")) {
+					slave.diet = "slimming";
+					r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
+				}
+			} else if ((slave.muscles <= rule.muscles-2)) {
+				if ((slave.diet !== "muscle building")) {
+					slave.diet = "muscle building";
+					r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
+				}
+			} else {
+				if ((slave.diet !== "healthy")) {
+					slave.diet = "healthy";
+					r += `<br>${slave.slaveName} has achieved the target musculature, so her exercise regime has been normalized.`;
+				}
+			}
 		}
-		r += " ";
-	}
-	
-	function short_sex_quirk(slave) {
-		switch (slave.sexualQuirk) {
-			case "gagfuck queen":
-				r += `Gagfuck`;
-				break;
-			case "painal queen":
-				r += `Painal`;
-				break;
-			case "strugglefuck queen":
-				r += `Struggle`;
-				break;
-			case "tease":
-				r += `Tease`;
-				break;
-			case "romantic":
-				r += `Romantic`;
-				break;
-			case "perverted":
-				r += `Perverted`;
-				break;
-			case "caring":
-				r += `Caring`;
-				break;
-			case "unflinching":
-				r += `Unflinch`;
-				break;
-			case "size queen":
-				r += `SizeQ`;
-				break;
-			default:
-				slave.sexualQuirk = "none";
-				break;
+
+		if (slave.drugs === "appetite suppressors" && slave.diet !== "restricted") {
+			slave.drugs = "no drugs";
+			r += `<br>${slave.slaveName} is no longer losing weight, so she's no longer being given appetite suppressors.`;
+		} else if (slave.diet === "restricted" && V.arcologies[0].FSSlimnessEnthusiastResearch == 1 && (slave.drugs == "no drugs" || slave.drugs == "none")) {
+			slave.drugs = "appetite suppressors";
+			r += `<br>${slave.slaveName} is losing weight so she will be given weight loss pills.`;
 		}
-		r += `</span> `;
 	}
-	
-	function long_fetish(slave) {
-		r += `<span class="lightcoral">`;
-		switch (slave.fetish) {
-			case "submissive":
-				if (slave.fetishStrength > 95) {
-					r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
-				break;
-			case "cumslut":
-				if (slave.fetishStrength > 95) {
-					r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				}
-				break;
-			case "humiliation":
-				if (slave.fetishStrength > 95) {
-					r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+
+	function ProcessCuratives(slave, rule) {
+		if ((rule.curatives !== undefined) && (rule.curatives !== "no default setting")) {
+			if (slave.curatives !== rule.curatives) {
+				if (rule.curatives === 2) {
+					if (slave.health > 100) {
+						if ((slave.curatives != 1)) {
+							r += `<br>${slave.slaveName} has been put on preventatives, since curatives cannot improve her health further.`;
+							slave.curatives = 1;
+						}
+					} else {
+						r += `<br>${slave.slaveName} has been put on curatives.`;
+						slave.curatives = rule.curatives;
+					}
 				} else {
-					r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+					r += `<br>${slave.slaveName} has been ${rule.curatives > 0 ? `put on preventatives` : `taken off health drugs`}`;
+					slave.curatives = rule.curatives;
 				}
-				break;
-			case "buttslut":
-				if (slave.fetishStrength > 95) {
-					r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+			}
+		}
+	}
+
+	function ProcessAphrodisiacs(slave, rule) {
+		if ((rule.aphrodisiacs !== undefined) && (rule.aphrodisiacs != "no default setting")) {
+			if (slave.aphrodisiacs != rule.aphrodisiacs) {
+				r += `<br>${slave.slaveName} has been ${rule.aphrodisiacs > 0 ? `put on the proper` : `taken off`} aphrodisiacs.`;
+				slave.aphrodisiacs = rule.aphrodisiacs;
+			}
+		}
+	}
+
+	function ProcessPenisHormones(slave, rule) {
+		if ((slave.dick > 0)) {
+			if ((slave.balls === 0)) {
+				if ((rule.gelding !== undefined) && (rule.gelding !== "no default setting")) {
+					if ((slave.hormones !== rule.gelding)) {
+						const _oldHormones = slave.hormones;
+						slave.hormones = rule.gelding;
+						if (slave.indentureRestrictions >= 2) {
+							slave.hormones = Math.clamp(slave.hormones, -1, 1);
+						}
+						if (slave.hormones != _oldHormones) {
+							r += `<br>${slave.slaveName} is a gelding, so she has been put on the appropriate hormonal regime.`;
+						}
+					}
 				}
-				break;
-			case "boobs":
-				if (slave.fetishStrength > 95) {
-					r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+			} else if ((slave.balls > 0)) {
+				if ((rule.XY !== undefined) && (rule.XY !== "no default setting")) {
+					if ((slave.hormones !== rule.XY)) {
+						if ((slave.assignment != "recruit girls")) {
+							if ((slave.assignment != "be the Wardeness")) {
+								if ((slave.assignment != "be the Madam")) {
+									const _oldHormones = slave.hormones;
+									slave.hormones = rule.XY;
+									if (slave.indentureRestrictions >= 2) {
+										slave.hormones = Math.clamp(slave.hormones, -1, 1);
+									}
+									if (slave.hormones != _oldHormones) {
+										r += `<br>${slave.slaveName} is a shemale, so she has been put on the appropriate hormonal regime.`;
+									}
+								}
+							}
+						}
+					}
 				}
-				break;
-			case "sadist":
-				if (slave.fetishStrength > 95) {
-					r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+			}
+		}
+	}
+
+	function ProcessFemaleHormones(slave, rule) {
+		if ((slave.vagina > -1) && (slave.dick === 0) && (rule.XX !== undefined) && (rule.XX !== "no default setting")) {
+			if ((slave.hormones !== rule.XX)) {
+				const _oldHormones = slave.hormones;
+				slave.hormones = rule.XX;
+				if (slave.indentureRestrictions >= 2) {
+					slave.hormones = Math.clamp(slave.hormones, -1, 1);
 				}
-				break;
-			case "masochist":
-				if (slave.fetishStrength > 95) {
-					r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				if (slave.hormones != _oldHormones) {
+					r += `<br>${slave.slaveName} is a female, so she has been put on the appropriate hormonal regime.`;
 				}
-				break;
-			case "dom":
-				if (slave.fetishStrength > 95) {
-					r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else {
-					r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+			}
+		}
+	}
+
+	function ProcessPregnancyDrugs(slave, rule) {
+		if (slave.pregKnown == 1 && rule.pregSpeed != "no default setting" && slave.breedingMark != 1 && slave.indentureRestrictions < 1 && slave.broodmother === 0) {
+			if (rule.pregSpeed == "slow" && slave.preg < 35) {
+				slave.pregControl = "slow gestation";
+				r += `<br>${slave.slaveName} is pregnant, so she has been put on the gestation slowing agents.`;
+			} else if (rule.pregSpeed == "fast" && slave.preg < 35 && slave.health > -50) {
+				slave.pregControl = "speed up";
+				r += `<br>${slave.slaveName} is pregnant, so she has been put on rapid gestation  agents. CAUTION! Can be dangerous. Clinic supervision is recommended.`;
+			} else if (rule.pregSpeed == "suppress" && slave.preg > 34 && slave.health > -50) {
+				slave.pregControl = "labor supressors";
+				r += `<br>${slave.slaveName} is ready to birth, so she has been put on labor suppressing agents.`;
+			} else if (rule.pregSpeed == "stimulate" && slave.preg >= 37 && slave.health > -50) {
+				slave.labor = 1;
+				slave.induce = 1;
+				V.birthee = 1;
+				r += `<br>slave.slaveName is ready to birth, so her labor has been stimulated.`;
+			} else if (rule.pregSpeed == "fast" && slave.pregControl == "speed up" && slave.health <= -50) {
+				slave.pregControl = "none";
+				r += `<br>${slave.slaveName} is on rapid gestation agents and dangerously unhealthy, so her agent regimen has been stopped.`;
+			} else if (rule.pregSpeed == "suppress" && slave.pregControl == "labor supressors" && slave.health <= -50) {
+				slave.pregControl = "none";
+				r += `<br>${slave.slaveName} is on labor suppression agents and unhealthy, so her agent regimen has been stopped.`;
+			}
+		}
+	}
+
+	function ProcessLivingStandard(slave, rule) {
+		if ((rule.livingRules !== undefined) && (rule.livingRules !== "no default setting")) {
+			if (setup.facilityCareers.includes(slave.assignment)) {
+				r += ``; // `<br>${slave.slaveName}'s living standards are controlled by her assignment.`;
+			} else if (((slave.assignment == "be your Head Girl") && (V.HGSuite == 1)) || ((slave.assignment == "guard you") && (V.dojo > 1))) {
+				r += `<br>${slave.slaveName} has a private room.`;
+			} else if ((slave.fetish == "mindbroken")) {
+				if ((slave.livingRules !== "spare")) {
+					slave.livingRules = "spare";
+					r += `<br>Since ${slave.slaveName} is mindbroken her living standard has been set to spare.`;
 				}
-				break;
-			case "pregnancy":
-				if (slave.fetishStrength > 95) {
-					r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				} else if (slave.fetishStrength > 60) {
-					r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+			} else if (slave.livingRules !== rule.livingRules) {
+				if (rule.livingRules !== "luxurious") {
+					if (V.roomsPopulation <= V.rooms-0.5) {
+						slave.livingRules = rule.livingRules;
+						r += `<br>${slave.slaveName}'s living standard has been set to ${rule.livingRules}.`;
+						if (slave.relationship >= 4)
+							V.roomsPopulation += 0.5;
+						else
+							V.roomsPopulation += 1;
+					} else {
+						slave.livingRules = "normal";
+						r += `<br>${slave.slaveName}'s living standard has been set to normal, since there is no room for her to occupy.`;
+					}
 				} else {
-					r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+					slave.livingRules = rule.livingRules;
+					r += `<br>${slave.slaveName}'s living standard has been set to ${rule.livingRules}.`;
 				}
-				break;
-			default:
-				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
-				break;
+			}
 		}
-		r += `</span> `;
 	}
-	
-	function long_attraction(slave) {
-		if (slave.attrXY <= 5) {
-			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
-		} else if (slave.attrXY <= 15) {
-			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
-		} else if (slave.attrXY <= 35) {
-			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
-		} else if (slave.attrXY <= 65) {
-			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''}, `;
-		} else if (slave.attrXY <= 85) {
-			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
-		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
-		} else if (slave.attrXX > 95) {
-			if (slave.energy <= 95) {
-				r += `<span class="green">Omnisexual!</span> `;
-			} else {
-				r += `<span class="green">Omnisexual nymphomaniac!</span> `;
+
+	function ProcessSpeech(slave, rule) {
+		if ((rule.speechRules !== undefined) && (rule.speechRules !== "no default setting")) {
+			if ((slave.fetish == "mindbroken")) {
+				if ((slave.speechRules !== "restrictive")) {
+					slave.speechRules = "restrictive";
+					r += `<br>Since ${slave.slaveName} is mindbroken her speech rules have been set to restrictive.`;
+				}
+			} else if ((slave.speechRules !== rule.speechRules)) {
+				slave.speechRules = rule.speechRules;
+				r += `<br>${slave.slaveName}'s speech rules have been set to ${rule.speechRules}.`;
 			}
-		} else {
-			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
-		}
-		if (slave.attrXX <= 5) {
-			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
-		} else if (slave.attrXX <= 15) {
-			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
-		} else if (slave.attrXX <= 35) {
-			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
-		} else if (slave.attrXX <= 65) {
-			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
-		} else if (slave.attrXX <= 85) {
-			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
-		} else if (slave.attrXX <= 95) {
-			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
-		} else if (slave.attrXY <= 95) {
-			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		}
-		if (slave.energy > 95) {
-			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
-				r += `<span class="green">Nymphomaniac!</span>`;
+	}
+
+	function ProcessRelationship(slave, rule) {
+		if ((slave.fetish !== "mindbroken")) {
+			if ((rule.relationshipRules !== undefined) && (rule.relationshipRules !== "no default setting")) {
+				if ((slave.relationshipRules !== rule.relationshipRules )) {
+					slave.relationshipRules = rule.relationshipRules ;
+					r += `<br>${slave.slaveName}'s relationship rules have been set to ${rule.relationshipRules}.`;
+				}
 			}
-		} else if (slave.energy > 80) {
-			r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		} else if (slave.energy > 60) {
-			r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		} else if (slave.energy > 40) {
-			r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		} else if (slave.energy > 20) {
-			r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
-		} else {
-			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		}
-		r += " ";
 	}
-	
-	function long_smart_fetish(slave) {
-		if (slave.fetishKnown === 1) {
-			if (slave.clitSetting === "off") {
-				r += `SP off.`;
-			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
-				r += `SP: submissive.`;
-			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
-				r += `SP: oral.`;
-			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
-				r += `SP: humiliation.`;
-			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
-				r += `SP: anal.`;
-			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
-				r += `SP: breasts.`;
-			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
-				r += `SP: sadism.`;
-			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
-				r += `SP: masochism.`;
-			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
-				r += `SP: dominance.`;
-			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
-				r += `SP: pregnancy.`;
-			} else if ((slave.fetish !== "none") && (slave.clitSetting === "vanilla")) {
-				r += `SP: vanilla.`;
-			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
-				r += `SP: all.`;
-			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
-				r += `SP: none.`;
-			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
-				r += `SP: monitoring.`;
-			}
-		} else {
-			switch (slave.clitSetting) {
-				case "off":
-					r += `SP off.`;
-					break;
-				case "submissive":
-					r += `SP: submissive.`;
-					break;
-				case "oral":
-					r += `SP: oral.`;
-					break;
-				case "humiliation":
-					r += `SP: humiliation.`;
-					break;
-				case "anal":
-					r += `SP: anal.`;
-					break;
-				case "boobs":
-					r += `SP: breasts.`;
-					break;
-				case "sadist":
-					r += `SP: sadism.`;
-					break;
-				case "masochist":
-					r += `SP: masochism.`;
-					break;
-				case "dom":
-					r += `SP: dominance.`;
-					break;
-				case "pregnancy":
-					r += `SP: pregnancy.`;
-					break;
-				case "vanilla":
-					r += `SP: vanilla.`;
-					break;
-				case "all":
-					r += `SP: all.`;
-					break;
-				case "none":
-					r += `SP: none.`;
-					break;
+
+	function ProcessRelease(slave, rule) {
+		if ((rule.releaseRules !== undefined) && (rule.releaseRules !== "no default setting")) {
+			let _release = 0;
+			if (rule.releaseRules === "restrictive" &&
+				!(["serve the public", "serve in the club", "whore", "work in the brothel", "please you", "serve in the master suite", "be a subordinate slave", "work a glory hole", "be confined in the arcade", "get milked", "work in the dairy", "be your Head Girl"].contains(slave.assignment)))
+				_release = 1;
+			else
+				_release = 1;
+			if ((slave.fetish == "mindbroken") && (slave.releaseRules !== "permissive")) {
+				slave.releaseRules = "permissive";
+				r += `<br>Since ${slave.slaveName} is mindbroken her masturbation rules have been set to permissive.`;
+			} else if ((slave.amp === 1 || slave.fuckdoll > 0) && (slave.releaseRules === "masturbation")) {
+				slave.releaseRules = "restrictive";
+				r += `<br>Since ${slave.slaveName} is unable to masturbate, her masturbation rules have been set to restrictive.`;
+			} else if ((_release !== 0) && (slave.releaseRules !== rule.releaseRules)) {
+				slave.releaseRules = rule.releaseRules;
+				r += `<br>${slave.slaveName}'s masturbation rules have been set to ${rule.releaseRules}.`;
 			}
 		}
-		r += " ";
 	}
-	
-	function long_smart_attraction(slave) {
-		if (slave.attrKnown === 1) {
-			if ((slave.attrXX < 100) && (slave.clitSetting === "women")) {
-				r += `SP: women.`;
-			} else if ((slave.attrXY < 100) && (slave.clitSetting === "men")) {
-				r += `SP: men.`;
-			}
-		} else {
-			if (slave.clitSetting === "women") {
-				r += `SP: women.`;
-			} else if (slave.clitSetting === "men") {
-				r += `SP: men.`;
+
+	function ProcessPunishment(slave, rule) {
+		if ((rule.standardPunishment !== undefined) && (rule.standardPunishment !== "no default setting")) {
+			if ((slave.standardPunishment !== rule.standardPunishment)) {
+				slave.standardPunishment = rule.standardPunishment ;
+				r += `<br>${slave.slaveName}'s typical punishment has been updated to ${rule.standardPunishment}.`;
 			}
 		}
-		r += " ";
 	}
-	
-	function long_behavior_flaw(slave) {
-		r += `<span class="red">`;
-		switch (slave.behavioralFlaw) {
-			case "arrogant":
-				r += `Arrogant.`;
-				break;
-			case "bitchy":
-				r += `Bitchy.`;
-				break;
-			case "odd":
-				r += `Odd.`;
-				break;
-			case "hates men":
-				r += `Hates men.`;
-				break;
-			case "hates women":
-				r += `Hates women.`;
-				break;
-			case "gluttonous":
-				r += `Stress eater.`;
-				break;
-			case "anorexic":
-				r += `Anorexic.`;
-				break;
-			case "devout":
-				r += `Devoutly religious.`;
-				break;
-			case "liberated":
-				r += `Mentally liberated.`;
-				break;
-			default:
-				slave.behavioralFlaw = "none";
-				break;
+
+	function ProcessReward(slave, rule) {
+		if ((rule.standardReward !== undefined) && (rule.standardReward !== "no default setting")) {
+			if ((slave.standardReward !== rule.standardReward)) {
+				slave.standardReward = rule.standardReward ;
+				r += `<br>${slave.slaveName}'s typical reward has been updated to ${rule.standardReward}.`;
+			}
 		}
-		r += `</span> `;
 	}
-	
-	function long_sex_flaw(slave) {
-		switch (slave.sexualFlaw) {
-			case "hates oral":
-				r += `<span class="red">Hates oral.</span>`;
-				break;
-			case "hates anal":
-				r += `<span class="red">Hates anal.</span>`;
-				break;
-			case "hates penetration":
-				r += `<span class="red">Hates penetration.</span>`;
-				break;
-			case "shamefast":
-				r += `<span class="red">Shamefast.</span>`;
-				break;
-			case "idealistic":
-				r += `<span class="red">Sexually idealistic.</span>`;
-				break;
-			case "repressed":
-				r += `<span class="red">Sexually repressed.</span>`;
-				break;
-			case "apathetic":
-				r += `<span class="red">Sexually apathetic.</span>`;
-				break;
-			case "crude":
-				r += `<span class="red">Sexually crude.</span>`;
-				break;
-			case "judgemental":
-				r += `<span class="red">Sexually judgemental.</span>`;
-				break;
-			case "cum addict":
-				r += `<span class="yellow">Cum addict.</span>`;
-				break;
-			case "anal addict":
-				r += `<span class="yellow">Anal addict.</span>`;
-				break;
-			case "attention whore":
-				r += `<span class="yellow">Attention whore.</span>`;
-				break;
-			case "breast growth":
-				r += `<span class="yellow">Breast obsession.</span>`;
-				break;
-			case "abusive":
-				r += `<span class="yellow">Sexually abusive.</span>`;
-				break;
-			case "malicious":
-				r += `<span class="yellow">Sexually malicious.</span>`;
-				break;
-			case "self hating":
-				r += `<span class="yellow">Self hatred.</span>`;
-				break;
-			case "neglectful":
-				r += `<span class="yellow">Self neglectful.</span>`;
-				break;
-			case "breeder":
-				r += `<span class="yellow">Breeding obsession.</span>`;
-				break;
-			default:
-				slave.sexualFlaw = "none";
-				break;
+
+	function ProcessDietCum(slave, rule) {
+		if ((rule.dietCum !== undefined) && (rule.dietCum !== "no default setting")) {
+			if (slave.dietCum != rule.dietCum) {
+				slave.dietCum = rule.dietCum;
+				if (slave.dietCum == 2) {
+					r += `<br>${slave.slaveName} has been put on a diet based on cum.`;
+					slave.dietMilk = 0;
+				}
+				if (slave.dietCum == 1)
+					r += `<br>${slave.slaveName} has had cum added to her diet.`;
+				else
+					r += `<br>${slave.slaveName} has had cum removed from her diet.`;
+			}
 		}
-		r += " ";
 	}
-	
-	function long_behavior_quirk(slave) {
-		r += `<span class="green">`;
-		switch (slave.behavioralQuirk) {
-			case "confident":
-				r += `Confident.`;
-				break;
-			case "cutting":
-				r += `Cutting.`;
-				break;
-			case "funny":
-				r += `Funny.`;
-				break;
-			case "fitness":
-				r += `Fitness.`;
-				break;
-			case "adores women":
-				r += `Adores women.`;
-				break;
-			case "adores men":
-				r += `Adores men.`;
-				break;
-			case "insecure":
-				r += `Insecure.`;
-				break;
-			case "sinful":
-				r += `Sinful.`;
-				break;
-			case "advocate":
-				r += `Advocate.`;
-				break;
-			default:
-				slave.behavioralQuirk = "none";
-				break;
+
+	function ProcessDietMilk(slave, rule) {
+		if ((rule.dietMilk !== undefined) && (rule.dietMilk !== "no default setting")) {
+			if (slave.dietMilk != rule.dietMilk) {
+				slave.dietMilk = rule.dietMilk;
+				if (slave.dietMilk == 2) {
+					r += `<br>${slave.slaveName} has been put on a diet based on human milk.`;
+					slave.dietCum = 0;
+				}
+				if (slave.dietMilk == 1)
+					r += `<br>${slave.slaveName} has had human milk added to her diet.`;
+				else
+					r += `<br>${slave.slaveName} has had human milk removed from her diet.`;
+			}
 		}
-		r += " ";
 	}
-	
-	function long_sex_quirk(slave) {
-		switch (slave.sexualQuirk) {
-			case "gagfuck queen":
-				r += `Gagfuck queen.`;
-				break;
-			case "painal queen":
-				r += `Painal queen.`;
-				break;
-			case "strugglefuck queen":
-				r += `Strugglefuck queen.`;
-				break;
-			case "tease":
-				r += `Tease.`;
-				break;
-			case "romantic":
-				r += `Romantic.`;
-				break;
-			case "perverted":
-				r += `Perverted.`;
-				break;
-			case "caring":
-				r += `Caring.`;
-				break;
-			case "unflinching":
-				r += `Unflinching.`;
-				break;
-			case "size queen":
-				r += `Size queen.`;
-				break;
-			default:
-				slave.sexualQuirk = "none";
-				break;
+
+	function ProcessTeeth(slave, rule) {
+		if ((rule.teeth !== undefined) && (rule.teeth !== "no default setting")) {
+			if ((rule.teeth == "universal")) {
+				if ((slave.teeth == "crooked")) {
+					slave.teeth = "straightening braces";
+					V.cash -= V.surgeryCost;
+					r += `<br>${slave.slaveName} has been given braces for her crooked teeth.`;
+				} else if ((slave.teeth == "normal")) {
+					slave.teeth = "cosmetic braces";
+					V.cash -= V.surgeryCost;
+					r += `<br>${slave.slaveName} has been given cosmetic braces.`;
+				}
+			} else if ((rule.teeth == "straighten")) {
+				if ((slave.teeth == "crooked")) {
+					slave.teeth = "straightening braces";
+					V.cash -= V.surgeryCost;
+					r += `<br>${slave.slaveName} has been given braces for her crooked teeth.`;
+				} else if ((slave.teeth == "cosmetic braces")) {
+					slave.teeth = "normal";
+					r += `<br>${slave.slaveName} has gotten her braces off, since her teeth are straight.`;
+				}
+			} else if ((rule.teeth == "none")) {
+				if ((slave.teeth == "straightening braces")) {
+					slave.teeth = "crooked";
+					r += `<br>${slave.slaveName} has gotten her braces off.`;
+				} else if ((slave.teeth == "cosmetic braces")) {
+					slave.teeth = "normal";
+					r += `<br>${slave.slaveName} has gotten her braces off.`;
+				}
+			}
 		}
-		r += `</span> `;
 	}
-	
-	function short_extended_family(slave) {
-		let handled = 0;
-		if (slave.mother > 0) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.mother;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-					if (slave.relationship === 1) {
-						r += ` & friend`;
-					} else if (slave.relationship === 2) {
-						r += ` & BFF`;
-					} else if (slave.relationship === 3) {
-						r += ` & FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` & lover`;
+
+	function ProcessStyle(slave, rule) {
+		if (rule.eyeColor !== undefined && (rule.eyeColor !== "no default setting")) {
+			if ((slave.eyeColor !== rule.eyeColor)) {
+				slave.eyeColor = rule.eyeColor;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName} has been given ${slave.eyeColor} contact lenses.`;
+			}
+		}
+
+		if (rule.makeup !== undefined && (rule.makeup !== "no default setting")) {
+			if ((slave.makeup !== rule.makeup)) {
+				slave.makeup = rule.makeup;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName} has been assigned the standard makeup.`;
+			}
+		}
+
+		if ((slave.amp != 1)) {
+			if (rule.nails !== undefined && (rule.nails !== "no default setting")) {
+				if ((slave.nails !== rule.nails)) {
+					slave.nails = rule.nails;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName} has been assigned the standard nails.`;
+				}
+			}
+		}
+
+		if (rule.hColor !== undefined && (rule.hColor !== "no default setting")) {
+			if (slave.bald != 1) {
+				if ((slave.hColor !== rule.hColor)) {
+					slave.hColor = rule.hColor;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s hair has been dyed ${rule.hColor}.`;
+				}
+			}
+		}
+
+		if (rule.hStyle !== undefined && (rule.hStyle !== "no default setting")) {
+			if (slave.bald != 1) {
+				if ((slave.hStyle !== rule.hStyle)) {
+					slave.hStyle = rule.hStyle;
+					V.cash -= V.modCost;
+					if ((rule.hStyle == "shaved")) {
+						slave.hLength = 0;
+						r += `<br>${slave.slaveName}'s hair has been shaved.`;
+					} else
+						r += `<br>${slave.slaveName}'s hair has been restyled.`;
+				}
+			}
+		}
+
+		if (rule.hLength !== undefined && (rule.hLength !== "no default setting")) {
+			if (slave.bald != 1) {
+				if ((slave.hLength !== rule.hLength)) {
+					if ((slave.hLength > rule.hLength)) {
+						V.cash -= V.modCost;
+						r += `<br>${slave.slaveName}'s hair has been cut; it `;
 					} else {
-						r += ` & wife`;
+						V.cash -= V.modCost*Math.trunc((rule.hLength-slave.hLength)/10);
+						r += `<br>${slave.slaveName} has been given extensions; her hair `;
 					}
-					handled = 1;
+				r += `is now ${lengthToEitherUnit(rule.hLength)} long.`;
+				slave.hLength = rule.hLength;
 				}
 			}
-			r += " ";
-		} else if (slave.mother === -1) {
-			r += `Your daughter`;
-			if (slave.relationship === -3) {
-				r += ` & wife`;
-				handled = 1;
-			} else if (slave.relationship === -2) {
-				r += ` & lover`;
-				handled = 1;
+		}
+
+		if (rule.haircuts !== undefined && (rule.haircuts !== "no default setting")) {
+			if (slave.bald != 1) {
+				if (rule.haircuts === 1 && slave.haircuts !== 1) {
+					r += `<br>${slave.slaveName}'s hair will now be maintained at ${lengthToEitherUnit(slave.hLength)} long.`;
+					slave.haircuts = 1;
+				} else if (rule.haircuts === 0 && slave.haircuts !== 0) {
+					r += `<br>${slave.slaveName}'s hair length will no longer be maintained.`;
+					slave.haircuts = 0;
+				}
 			}
-			r += " ";
 		}
-		if (slave.father > 0 && slave.father !== slave.mother) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.father;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
-					if (slave.relationship === 1) {
-						r += ` & friend`;
-					} else if (slave.relationship === 2) {
-						r += ` & BFF`;
-					} else if (slave.relationship === 3) {
-						r += ` & FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` & lover`;
-					} else {
-						r += ` & wife`;
-					}
-					handled = 1;
+
+		if (rule.pubicHColor !== undefined && (rule.pubicHColor !== "no default setting")) {
+			if (slave.pubicHStyle != "bald" && slave.pubicHStyle != "hairless") {
+				if ((slave.pubicHColor !== rule.pubicHColor)) {
+					slave.pubicHColor = rule.pubicHColor;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s pubic hair, if present, has been dyed ${rule.pubicHColor}.`;
 				}
 			}
-			r += " ";
-		} else if (slave.father === -1 && slave.mother !== -1) {
-			r += `Your daughter`;
-			if (slave.relationship === -3) {
-				r += ` & wife`;
-				handled = 1;
-			} else if (slave.relationship === -2) {
-				r += ` & lover`;
-				handled = 1;
+		}
+
+		if (rule.pubicHStyle !== undefined && (rule.pubicHStyle !== "no default setting")) {
+			if (slave.pubicHStyle != "bald" && slave.pubicHStyle != "hairless") {
+				if ((slave.pubicHStyle !== rule.pubicHStyle)) {
+					slave.pubicHStyle = rule.pubicHStyle;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s pubic hair has been restyled; it is now ${rule.pubicHStyle}.`;
+				}
 			}
 		}
-		if (slave.daughters === 1) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.mother === slave.ID;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-					if (slave.relationship === 1) {
-						r += ` & friend`;
-					} else if (slave.relationship === 2) {
-						r += ` & BFF`;
-					} else if (slave.relationship === 3) {
-						r += ` & FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` & lover`;
+
+		if (rule.underArmHColor !== undefined && (rule.underArmHColor !== "no default setting")) {
+			if (slave.underArmHStyle != "bald" && slave.underArmHStyle != "hairless") {
+				if ((slave.underArmHColor !== rule.underArmHColor)) {
+					slave.underArmHColor = rule.underArmHColor;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s underarm hair, if present, has been dyed ${rule.underArmHColor}.`;
+				}
+			}
+		}
+
+		if (rule.underArmHStyle !== undefined && (rule.underArmHStyle !== "no default setting")) {
+			if (slave.underArmHStyle != "bald" && slave.underArmHStyle != "hairless") {
+				if ((slave.underArmHStyle !== rule.underArmHStyle)) {
+					slave.underArmHStyle = rule.underArmHStyle;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s underarm hair has been restyled; it is now ${rule.underArmHStyle}.`;
+				}
+			}
+		}
+	}
+
+	function ProcessPiercings(slave, rule) {
+		if (rule.nipplesPiercing !== undefined && (rule.nipplesPiercing !== "no default setting")) {
+			if ((slave.nipplesPiercing !== rule.nipplesPiercing)) {
+				if ((rule.nipplesPiercing === 0)) {
+					slave.nipplesPiercing = 0;
+					r += `<br>${slave.slaveName}'s nipple piercings have been removed.`;
+				} else if (slave.nipples !== "fuckable") {
+					slave.nipplesPiercing = rule.nipplesPiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s nipples have been pierced.`;
+				} else {
+					r += `<br>${slave.slaveName}'s nipples are inverted and cannot be pierced.`;
+				}
+			}
+		}
+
+		if (rule.areolaePiercing !== undefined && (rule.areolaePiercing !== "no default setting")) {
+			if ((slave.areolaePiercing !== rule.areolaePiercing)) {
+				if ((rule.areolaePiercing === 0)) {
+					slave.areolaePiercing = 0;
+					r += `<br>${slave.slaveName}'s areolae piercings have been removed.`;
+				} else {
+					slave.areolaePiercing = rule.areolaePiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s areolae have been given stud piercings.`;
+				}
+			}
+		}
+
+		if (rule.clitPiercing !== undefined && (rule.clitPiercing !== "no default setting")) {
+			if ((slave.clitPiercing !== rule.clitPiercing)) {
+				if ((rule.clitPiercing === 0)) {
+					slave.clitPiercing = 0;
+					if (slave.dick > 0)
+						r += `<br>${slave.slaveName}'s frenulum piercing has been removed.`;
+					else
+						r += `<br>${slave.slaveName}'s clit piercing has been removed.`;
+
+				} else if ((slave.vagina != -1) || (slave.dick !== 0)) {
+					slave.clitPiercing = rule.clitPiercing;
+					if (slave.dick > 0)
+						r += `<br>${slave.slaveName}'s frenulum has been pierced.`;
+					else
+						r += `<br>${slave.slaveName}'s clit has been pierced.`;
+
+					if (rule.clitPiercing == 3)
+						V.cash -= 1000;
+					else
+						V.cash -= V.modCost;
+				}
+			}
+		}
+
+		if ((slave.vagina != -1)) {
+			if (rule.vaginaPiercing !== undefined && (rule.vaginaPiercing !== "no default setting")) {
+				if ((slave.vaginaPiercing !== rule.vaginaPiercing)) {
+					if ((rule.vaginaPiercing === 0)) {
+						slave.vaginaPiercing = 0;
+						r += `<br>${slave.slaveName}'s labia piercings have been removed.`;
 					} else {
-						r += ` & wife`;
+						slave.vaginaPiercing = rule.vaginaPiercing;
+						V.cash -= V.modCost;
+						r += `<br>${slave.slaveName}'s pussylips have been pierced.`;
 					}
-					handled = 1;
 				}
 			}
-			r += " ";
-			_ssj = V.slaves.findIndex(function(s) {
-				return s.father === slave.ID;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
-					if (slave.relationship === 1) {
-						r += ` & friend`;
-					} else if (slave.relationship === 2) {
-						r += ` & BFF`;
-					} else if (slave.relationship === 3) {
-						r += ` & FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` & lover`;
+		}
+
+		if ((slave.dick > 0)) {
+			if (rule.dickPiercing !== undefined && (rule.dickPiercing !== "no default setting")) {
+				if ((slave.dickPiercing !== rule.dickPiercing)) {
+					if ((rule.dickPiercing === 0)) {
+						slave.dickPiercing = 0;
+						r += `<br>${slave.slaveName}'s shaft piercings have been removed.`;
 					} else {
-						r += ` & wife`;
+						slave.dickPiercing = rule.dickPiercing;
+						V.cash -= V.modCost;
+						r += `<br>${slave.slaveName}'s shaft has been pierced.`;
 					}
-					handled = 1;
 				}
 			}
-			r += " ";
-		} else if (slave.daughters > 1) {
-			r += `multiple daughters `;
 		}
-		if (slave.sisters === 1) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return areSisters(s, slave) > 0;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-					if (slave.relationship === 1) {
-						r += ` & friend`;
-					} else if (slave.relationship === 2) {
-						r += ` & BFF`;
-					} else if (slave.relationship === 3) {
-						r += ` & FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` & lover`;
-					} else {
-						r += ` & wife`;
-					}
-					handled = 1;
+
+		if (rule.anusPiercing !== undefined && (rule.anusPiercing !== "no default setting")) {
+			if ((slave.anusPiercing !== rule.anusPiercing)) {
+				if ((rule.anusPiercing === 0)) {
+					slave.anusPiercing = 0;
+					r += `<br>${slave.slaveName}'s asshole piercings have been removed.`;
+				} else {
+					slave.anusPiercing = rule.anusPiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s asshole has been pierced.`;
+				}
+			}
+		}
+
+		if (rule.lipsPiercing !== undefined && (rule.lipsPiercing !== "no default setting")) {
+			if ((slave.lipsPiercing !== rule.lipsPiercing)) {
+				if ((rule.lipsPiercing === 0)) {
+					slave.lipsPiercing = 0;
+					r += `<br>${slave.slaveName}'s lip piercings have been removed.`;
+				} else {
+					slave.lipsPiercing = rule.lipsPiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s lips have been pierced.`;
+				}
+			}
+		}
+
+		if (rule.tonguePiercing !== undefined && (rule.tonguePiercing !== "no default setting")) {
+			if ((slave.tonguePiercing !== rule.tonguePiercing)) {
+				if ((rule.tonguePiercing === 0)) {
+					slave.tonguePiercing = 0;
+					r += `<br>${slave.slaveName}'s tongue piercings have been removed.`;
+				} else {
+					slave.tonguePiercing = rule.tonguePiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s tongue has been pierced.`;
+				}
+			}
+		}
+
+		if (rule.earPiercing !== undefined && (rule.earPiercing !== "no default setting")) {
+			if ((slave.earPiercing !== rule.earPiercing)) {
+				if ((rule.earPiercing === 0)) {
+					slave.earPiercing = 0;
+					r += `<br>${slave.slaveName}'s ear piercings have been removed.`;
+				} else {
+					slave.earPiercing = rule.earPiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s ears have been pierced.`;
+				}
+			}
+		}
+
+		if (rule.nosePiercing !== undefined && (rule.nosePiercing !== "no default setting")) {
+			if ((slave.nosePiercing !== rule.nosePiercing)) {
+				if ((rule.nosePiercing === 0)) {
+					slave.nosePiercing = 0;
+					r += `<br>${slave.slaveName}'s nose piercing has been removed.`;
+				} else {
+					slave.nosePiercing = rule.nosePiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s nose has been pierced.`;
 				}
 			}
-			r += " ";
-		} else if (slave.sisters > 1) {
-			r += `multiple sisters `;
 		}
-		if (slave.relationship > 0 && handled !== 1) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.relationshipTarget;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-				switch (slave.relationship) {
-					case 1:
-						r += ` friend`;
-						break;
-					case 2:
-						r += ` BFF`;
-						break;
-					case 3:
-						r += ` FWB`;
-						break;
-					case 4:
-						r += ` lover`;
-						break;
-					case 5:
-						r += ` wife`;
-						break;
+
+		if (rule.eyebrowPiercing !== undefined && (rule.eyebrowPiercing !== "no default setting")) {
+			if ((slave.eyebrowPiercing !== rule.eyebrowPiercing)) {
+				if ((rule.eyebrowPiercing === 0)) {
+					slave.eyebrowPiercing = 0;
+					r += `<br>${slave.slaveName}'s eyebrow piercings have been removed.`;
+				} else {
+					slave.eyebrowPiercing = rule.eyebrowPiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s eyebrows have been pierced.`;
 				}
 			}
-		} else if (slave.relationship === -3) {
-			r += `Your wife`;
-		} else if (slave.relationship === -2) {
-			r += `E Bonded`;
-		} else if (slave.relationship === -1) {
-			r += `E Slut`;
 		}
-		r += " ";
-	}
-	
-	function short_legacy_family(slave) {
-		if (slave.relation !== 0) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.relationTarget;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
+
+		if (rule.navelPiercing !== undefined && (rule.navelPiercing !== "no default setting")) {
+			if ((slave.navelPiercing !== rule.navelPiercing)) {
+				if ((rule.navelPiercing === 0)) {
+					slave.navelPiercing = 0;
+					r += `<br>${slave.slaveName}'s navel piercing have been removed.`;
+				} else {
+					slave.navelPiercing = rule.navelPiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s navel has been pierced.`;
+				}
 			}
 		}
-		if (slave.relationship > 0) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.relationshipTarget;
-			});
-			if (_ssj !== -1) {
-				switch (slave.relationship) {
-					case 1:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-						} else {
-							r += ` &`;
+
+		if (rule.corsetPiercing !== undefined && (rule.corsetPiercing !== "no default setting")) {
+			if ((slave.corsetPiercing !== rule.corsetPiercing)) {
+				if ((rule.corsetPiercing === 0)) {
+					slave.corsetPiercing = 0;
+					r += `<br>${slave.slaveName}'s corset piercings have been removed.`;
+				} else {
+					slave.corsetPiercing = rule.corsetPiercing;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName} has been given a set of corset piercings.`;
+				}
+			}
+		}
+	}
+
+	function ProcessSmartPiercings(slave, rule) {
+		if ((slave.clitPiercing == 3)) {
+			let _used = 0;
+			if (rule.clitSetting !== undefined && (rule.clitSetting !== "no default setting")) {
+				if (slave.clitSetting !== rule.clitSetting) {
+					slave.clitSetting = rule.clitSetting;
+					_used = 1;
+					r += `<br>${slave.slaveName}'s smart piercing has been set to ${slave.clitSetting}.`;
+				} else if (slave.fetishStrength < 100) {
+					_used = 1;
+				}
+			}
+			if (_used === 0) {
+				if (rule.clitSettingEnergy !== undefined && (rule.clitSettingEnergy !== "no default setting")) {
+					if (slave.energy < rule.clitSettingEnergy) {
+						if (slave.clitSetting !== "all") {
+							r += `<br>${slave.slaveName}'s smart piercing has been set to enhance libido.`;
 						}
-						r += ` friend`;
-						break;
-					case 2:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-						} else {
-							r += ` &`;
+						slave.clitSetting = "all";
+						_used = 1;
+					} else if (slave.energy >= rule.clitSettingEnergy + 10) {
+						if (slave.clitSetting !== "none") {
+							r += `<br>${slave.slaveName}'s smart piercing has been set to suppress libido.`;
 						}
-						r += ` BFF`;
-						break;
-					case 3:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-						} else {
-							r += ` &`;
+						slave.clitSetting = "none";
+						_used = 1;
+					}
+				}
+			}
+			if (_used === 0) {
+				if (rule.clitSettingXY !== undefined && (rule.clitSettingXY !== "no default setting")) {
+					if (slave.attrXY < rule.clitSettingXY) {
+						if (slave.clitSetting !== "men") {
+							r += `<br>${slave.slaveName}'s smart piercing has been set to encourage attraction to men.`;
 						}
-						r += ` FWB`;
-						break;
-					case 4:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-						} else {
-							r += ` &`;
+						slave.clitSetting = "men";
+						_used = 1;
+					} else if (slave.attrXY >= rule.clitSettingXY + 10) {
+						if (slave.clitSetting !== "anti-men") {
+							r += `<br>${slave.slaveName}'s smart piercing has been set to discourage attraction to men.`;
 						}
-						r += ` lover`;
-						break;
-					case 5:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-						} else {
-							r += ` &`;
+						slave.clitSetting = "anti-men";
+						_used = 1;
+					}
+				}
+			}
+			if (_used === 0) {
+				if (rule.clitSettingXX !== undefined && (rule.clitSettingXX !== "no default setting")) {
+					if (slave.attrXX < rule.clitSettingXX) {
+						if (slave.clitSetting !== "women") {
+							r += `<br>${slave.slaveName}'s smart piercing has been set to encourage attraction to women.`;
 						}
-						r += ` wife`;
-						break;
+						slave.clitSetting = "women";
+						_used = 1;
+					} else if (slave.attrXX >= rule.clitSettingXX + 10) {
+						if (slave.clitSetting !== "anti-women") {
+							r += `<br>${slave.slaveName}'s smart piercing has been set to discourage attraction to women.`;
+						}
+						slave.clitSetting = "anti-women";
+						_used = 1;
+					}
 				}
 			}
-		} else if (slave.relationship === -3) {
-			r += `Your wife`;
-		} else if (slave.relationship === -2) {
-			r += `E Bonded`;
-		} else if (slave.relationship === -1) {
-			r += `E Slut`;
 		}
 	}
-	
-	function short_rival(slave) {
-		if (slave.rivalry !== 0) {
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.rivalryTarget;
-			});
-			if (_ssj !== -1) {
-				r += `<span class="lightsalmon">`;
-				if (slave.rivalry <= 1) {
-					r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
-				} else if (slave.rivalry <= 2) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s rival`;
-				} else {
-					r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
+
+	function ProcessTattoos(slave, rule) {
+		if (rule.boobsTat !== undefined && (rule.boobsTat !== "no default setting")) {
+			if ((slave.boobsTat !== rule.boobsTat)) {
+				slave.boobsTat = rule.boobsTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s chest has been tattooed.`;
+			}
+		}
+
+		if (rule.buttTat !== undefined && (rule.buttTat !== "no default setting")) {
+			if ((slave.buttTat !== rule.buttTat)) {
+				slave.buttTat = rule.buttTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s butt has been tattooed.`;
+			}
+		}
+
+		if (rule.vaginaTat !== undefined && (rule.vaginaTat !== "no default setting")) {
+			if ((slave.vaginaTat !== rule.vaginaTat)) {
+				slave.vaginaTat = rule.vaginaTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s abdomen has been tattooed.`;
+			}
+		}
+
+		if ((slave.dick > 0)) {
+			if (rule.dickTat !== undefined && (rule.dickTat !== "no default setting")) {
+				if ((slave.dickTat !== rule.dickTat)) {
+					slave.dickTat = rule.dickTat;
+					V.cash -= V.modCost;
+					r += `<br>${slave.slaveName}'s dick has been tattooed.`;
 				}
-				r += `</span> `;
 			}
 		}
-	}
-	
-	function long_extended_family(slave) {
-		let handled = 0;
-		if (slave.mother > 0) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.mother;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-					if (slave.relationship === 1) {
-						r += ` and friend`;
-					} else if (slave.relationship === 2) {
-						r += ` and best friend`;
-					} else if (slave.relationship === 3) {
-						r += ` and FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` and lover`;
-					} else {
-						r += ` and wife`;
-					}
-					handled = 1;
-				}
-				r += `.</span> `;
+
+		if (rule.lipsTat !== undefined && (rule.lipsTat !== "no default setting")) {
+			if ((slave.lipsTat !== rule.lipsTat)) {
+				slave.lipsTat = rule.lipsTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s face has been tattooed.`;
 			}
-		} else if (slave.mother === -1) {
-			r += `Your `;
-			if (slave.relationship === -3) {
-				r += `<span class="lightgreen">daughter and wife.</span> `;
-				handled = 1;
-			} else if (slave.relationship === -2) {
-				r += `<span class="lightgreen">daughter and lover.</span> `;
-				handled = 1;
-			} else {
-				r += `<span class="lightgreen">daughter.</span> `;
+		}
+
+		if (rule.anusTat !== undefined && (rule.anusTat !== "no default setting")) {
+			if ((slave.anusTat !== rule.anusTat)) {
+				slave.anusTat = rule.anusTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s asshole has been modded.`;
 			}
 		}
-		if (slave.father > 0 && slave.father !== slave.mother) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.father;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-					if (slave.relationship === 1) {
-						r += ` and friend`;
-					} else if (slave.relationship === 2) {
-						r += ` and best friend`;
-					} else if (slave.relationship === 3) {
-						r += ` and FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` and lover`;
-					} else {
-						r += ` and wife`;
-					}
-					handled = 1;
-				}
-				r += `.</span> `;
+
+		if (rule.shouldersTat !== undefined && (rule.shouldersTat !== "no default setting")) {
+			if ((slave.shouldersTat !== rule.shouldersTat)) {
+				slave.shouldersTat = rule.shouldersTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s shoulders have been tattooed.`;
 			}
-		} else if (slave.father === -1 && slave.father !== slave.mother) {
-			r += `Your `;
-			if (slave.relationship === -3) {
-				r += `<span class="lightgreen">daughter and wife.</span> `;
-				handled = 1;
-			} else if (slave.relationship === -2) {
-				r += `<span class="lightgreen">daughter and lover.</span> `;
-				handled = 1;
-			} else {
-				r += `<span class="lightgreen">daughter.</span> `;
+		}
+
+		if (rule.armsTat !== undefined && (rule.armsTat !== "no default setting")) {
+			if ((slave.armsTat !== rule.armsTat)) {
+				slave.armsTat = rule.armsTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s arms have been tattooed.`;
 			}
 		}
-		if (slave.daughters === 1) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.mother === slave.ID;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-					if (slave.relationship === 1) {
-						r += ` and friend`;
-					} else if (slave.relationship === 2) {
-						r += ` and best friend`;
-					} else if (slave.relationship === 3) {
-						r += ` and FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` and lover`;
-					} else {
-						r += ` and wife`;
-					}
-					handled = 1;
-				}
-				r += `.</span> `;
+
+		if (rule.legsTat !== undefined && (rule.legsTat !== "no default setting")) {
+			if ((slave.legsTat !== rule.legsTat)) {
+				slave.legsTat = rule.legsTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s legs have been tattooed.`;
 			}
-			_ssj = V.slaves.findIndex(function(s) {
-				return s.father === slave.ID;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-					if (slave.relationship === 1) {
-						r += ` and friend`;
-					} else if (slave.relationship === 2) {
-						r += ` and best friend`;
-					} else if (slave.relationship === 3) {
-						r += ` and FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` and lover`;
-					} else {
-						r += ` and wife`;
-					}
-					handled = 1;
+		}
+
+		if (rule.stampTat !== undefined && (rule.stampTat !== "no default setting")) {
+			if ((slave.stampTat !== rule.stampTat)) {
+				slave.stampTat = rule.stampTat;
+				V.cash -= V.modCost;
+				r += `<br>${slave.slaveName}'s lower back has been tattooed.`;
+			}
+		}
+		if ((rule.autoBrand == 1)) {
+			if ((slave.brand === 0)) {
+				if ((slave.health > -20)) {
+					slave.brand = V.brandDesign;
+					slave.brandLocation = V.brandTarget;
+					if ((slave.devotion < 18))
+						slave.devotion -= 5;
+					slave.trust -= 5;
+					slave.health -= 10;
+					r += `<br>${slave.slaveName} has been branded, with <span class="gold">fear</span>${slave.devotion < 18? `, <span class="mediumorchid">regard,</span>`:``} and <span class="red">health</span> consequences.`;
 				}
-				r += `.</span> `;
 			}
-		} else if (slave.daughters > 1) {
-			if (slave.daughters > 10) {
-				r += `<span class="lightgreen">Has tons of daughters.</span> `;
-			} else if (slave.daughters > 5) {
-				r += `<span class="lightgreen">Has many daughters.</span> `;
-			} else {
-				r += `<span class="lightgreen">Has several daughters.</span> `;
+		}
+	}
+
+	function ProcessPorn(slave, rule) {
+		if ((rule.pornFameSpending !== undefined) && (rule.pornFameSpending !== "no default setting")) {
+			if ((slave.prestige < 3)) {
+				if ((slave.pornFameSpending !== rule.pornFameSpending)) {
+					slave.pornFameSpending = rule.pornFameSpending;
+					r += `<br>${slave.slaveName}'s porn publicity has been corrected.`;
+				}
 			}
 		}
-		if (slave.sisters === 1) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return areSisters(s, slave) > 0;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
-				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
-					if (slave.relationship === 1) {
-						r += ` and friend`;
-					} else if (slave.relationship === 2) {
-						r += ` and best friend`;
-					} else if (slave.relationship === 3) {
-						r += ` and FWB`;
-					} else if (slave.relationship === 4) {
-						r += ` and lover`;
-					} else {
-						r += ` and wife`;
-					}
-					handled = 1;
-				}
-				r += `.</span> `;
-			}
-		} else if (slave.sisters > 1) {
-			if (slave.sisters > 10) {
-				r += `<span class="lightgreen">One of many sisters.</span> `;
-			} else if (slave.sisters > 5) {
-				r += `<span class="lightgreen">Has many sisters.</span> `;
-			} else {
-				r += `<span class="lightgreen">Has several sisters.</span> `;
-			}
+	}
+	
+	function ProcessLabel(slave, rule) {
+		if (rule.label !== "no default setting" && slave.customLabel !== rule.label) {
+			slave.customLabel = rule.label;
+			r += `<br>${slave.slaveName}'s label has been set to ${rule.label}`;
+		}
+	}
+
+	return DefaultRules;
+})();
+
+/*:: Rules Assistant Options [script]*/
+// rewrite of the rules assistant options page in javascript
+// uses an object-oriented widget pattern
+// wrapped in a closure so as not to polute the global namespace
+// the widgets are generic enough to be reusable; if similar user interfaces are ported to JS, we could move the classes to the global scope
+
+window.rulesAssistantOptions = (function() {
+	"use strict";
+	let V, current_rule;
+
+	function rulesAssistantOptions(element) {
+		V = State.variables;
+		V.nextButton = "Back to Main";
+		V.nextLink = "Main";
+		V.returnTo = "Main";
+		V.showEncyclopedia = 1;
+		V.encyclopedia = "Personal Assistant";
+		if (V.currentRule !== null) {
+			const idx = V.defaultRules.findIndex(rule => rule.ID === V.currentRule);
+			if (idx === -1)
+				current_rule = V.defaultRules[0];
+			else
+				current_rule = V.defaultRules[idx];
+		}
+		const root = new Root(element);
+	}
+
+	function returnP(e) { return e.keyCode === 13; }
+
+	function newRule(root) {
+		const rule = emptyDefaultRule();
+		V.defaultRules.push(rule);
+		V.currentRule = rule.ID;
+		reload(root);
+	}
+
+	function removeRule(root) {
+		const idx = V.defaultRules.findIndex(rule => rule.ID === current_rule.ID);
+		V.defaultRules.splice(idx, 1);
+		if (V.defaultRules.length > 0) {
+			const new_idx = idx < V.defaultRules.length ? idx : V.defaultRules.length - 1;
+			V.currentRule = V.defaultRules[new_idx].ID;
+		} else V.currentRule = null;
+		reload(root);
+	}
+
+	function lowerPriority(root) {
+		if (V.defaultRules.length === 1) return; // nothing to swap with
+		const idx = V.defaultRules.findIndex(rule => rule.ID === current_rule.ID);
+		if (idx === 0) return; // no lower rule
+		arraySwap(V.defaultRules, idx, idx-1);
+		reload(root);
+	}
+
+	function higherPriority(root) {
+		if (V.defaultRules.length === 1) return; // nothing to swap with
+		const idx = V.defaultRules.findIndex(rule => rule.ID === current_rule.ID);
+		if (idx === V.defaultRules.length - 1) return; // no higher rule
+		arraySwap(V.defaultRules, idx, idx+1);
+		reload(root);
+	}
+
+	function changeName(name, root) {
+		if (name === current_rule.name) return;
+		current_rule.name = name;
+		reload(root);
+	}
+
+	// reload the passage
+	function reload(root) {
+		const elem = root.element;
+		elem.innerHTML = "";
+		rulesAssistantOptions(elem);
+	}
+
+	const parse = {
+		integer(string) {
+			let n = parseInt(string, 10);
+			return isNaN(n)? 0: n;
+		},
+		boobs(string) {
+			return Math.clamp(parse.integer(string), 0, 48000);
+		},
+		butt(string) {
+			return Math.clamp(parse.integer(string), 0, 20);
+		},
+		lips(string) {
+			return Math.clamp(parse.integer(string), 0, 100);
+		},
+		dick(string) {
+			return Math.clamp(parse.integer(string), 0, 30);
+		},
+		balls(string) {
+			return Math.clamp(parse.integer(string), 0, 125);
+		},
+	};
+
+	// the Element class wraps around a DOM element and adds extra functionality
+	// this is safer than extending DOM objects directly
+	// it also turns DOM manipulation into an implementation detail
+	class Element {
+		constructor(...args) {
+			this.parent = null;
+			this.element = this.render(...args);
+			this.children = [];
+		}
+
+		appendChild(child) {
+			child.parent = this;
+			this.children.push(child);
+			this.element.appendChild(child.element);
 		}
-		if (slave.relationship > 0 && handled !== 1) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.relationshipTarget;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
-				switch (slave.relationship) {
-					case 1:
-						r += `<span class="lightgreen">friend.</span> `;
-						break;
-					case 2:
-						r += `<span class="lightgreen">best friend.</span> `;
-						break;
-					case 3:
-						r += `<span class="lightgreen">FWB.</span> `;
-						break;
-					case 4:
-						r += `<span class="lightgreen">lover.</span> `;
-						break;
-					case 5:
-						r += `<span class="lightgreen">slave wife.</span> `;
-						break;
-				}
-			}
-		} else if (slave.relationship === -3) {
-			r += `<span class="lightgreen">Your wife.</span> `;
-		} else if (slave.relationship === -2) {
-			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
-		} else if (slave.relationship === -1) {
-			r += `<span class="lightgreen">Emotional slut.</span> `;
+
+		// return the first argument to simplify creation of basic container items
+		render(...args) {
+			return args[0];
+		}
+
+		remove() {
+			const idx = this.parent.children.findIndex(child => child === this);
+			this.parent.children.slice(idx, 1);
+			this.element.remove();
 		}
 	}
 	
-	function long_legacy_family(slave) {
-		if (slave.relation !== 0) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.relationTarget;
-			});
-			if (_ssj !== -1) {
-				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
-				if (slave.relationshipTarget !== slave.relationTarget) {
-					r += `<span class="lightgreen">${slave.relation}</span>. `;
-				} else {
-					r += `<span class="lightgreen">${slave.relation}</span> `;
-				}
-				if (slave.relationship <= 0) {
-					r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-				}
+	class Section extends Element {
+		constructor(header, hidden=false) {
+			super(header);
+			this.hidey = this.element.querySelector("div");
+			if (hidden) this.toggle_hidey();
+		}
+		
+		render(header) {
+			const section = document.createElement("section");
+			section.classList.add("rajs-section");
+			const h1 = document.createElement("h1");
+			h1.onclick = () => { this.toggle_hidey(); };
+			h1.innerHTML = header;
+			const hidey = document.createElement("div");
+			section.appendChild(h1);
+			section.appendChild(hidey);
+			return section;
+		}
+
+		appendChild(child) {
+			child.parent = this;
+			this.children.push(child);
+			this.hidey.appendChild(child.element);
+		}
+
+		toggle_hidey() {
+			switch(this.hidey.style.display) {
+				case "none":
+					this.hidey.style.display = "initial";
+					break;
+				default:
+					this.hidey.style.display = "none";
+					break;
 			}
 		}
-		if (slave.relationship > 0) {
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.relationshipTarget;
-			});
-			if (_ssj !== -1) {
-				switch (slave.relationship) {
-					case 1:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
-						} else {
-							r += ` and `;
-						}
-						r += `<span class="lightgreen">friend.</span> `;
-						break;
-					case 2:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
-						} else {
-							r += ` and `;
-						}
-						r += `<span class="lightgreen">best friend.</span> `;
-						break;
-					case 3:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
-						} else {
-							r += ` and `;
-						}
-						r += `<span class="lightgreen">FWB.</span> `;
-						break;
-					case 4:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
-						} else {
-							r += ` and `;
-						}
-						r += `<span class="lightgreen">lover.</span> `;
-						break;
-					case 5:
-						if (slave.relationshipTarget !== slave.relationTarget) {
-							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
-						} else {
-							r += ` and `;
-						}
-						r += `<span class="lightgreen">slave wife.</span> `;
-						break;
-				}
+	}
+
+	// list of clickable elements
+	// has a short explanation (the prefix) and a value display
+	// value display can optionally be an editable text input field
+	// it can be "bound" to a variable by setting its "onchange" method
+	class List extends Element {
+		constructor(prefix, data=[], textinput=false) {
+			super(prefix + ": ", textinput);
+			this.selectedItem = null;
+			data.forEach(item => this.appendChild(new ListItem(...item)));
+		}
+
+		render(prefix, textinput) {
+			const elem = document.createElement("div");
+			const label = document.createElement("span");
+			label.innerHTML = prefix;
+			let value;
+			if (textinput) {
+				value = document.createElement("input");
+				value.setAttribute("type", "text");
+				value.classList.add("rajs-value"); // 
+				// call the variable binding when the input field is no longer being edited, and when the enter key is pressed
+				value.onblur = () => {this.inputEdited(); };
+				value.onkeypress = (e) => { if (returnP(e)) this.inputEdited(); };
+			} else {
+				value = document.createElement("strong");
 			}
-		} else if (slave.relationship === -3) {
-			r += `<span class="lightgreen">Your wife.</span> `;
-		} else if (slave.relationship === -2) {
-			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
-		} else if (slave.relationship === -1) {
-			r += `<span class="lightgreen">Emotional slut.</span> `;
+			this.value = value;
+			elem.appendChild(label);
+			elem.appendChild(value);
+			elem.classList.add("rajs-list");
+			return elem;
+		}
+
+		inputEdited() {
+			if (this.selectedItem) this.selectedItem.deselect();
+			this.propagateChange();
+		}
+
+		selectItem(item) {
+			if (this.selectedItem) this.selectedItem.deselect();
+			this.selectedItem = item;
+			this.setValue(item.data);
+			this.propagateChange();
+		}
+
+		setValue(what) {
+			if (this.value.tagName === "INPUT")
+				this.value.value = ""+what;
+			else
+				this.value.innerHTML = ""+what;
+		}
+
+		getData(what) {
+			return (this.value.tagName === "INPUT" ? this.parse(this.value.value): this.selectedItem.data);
+		}
+
+		// customisable input field parser / sanity checker
+		parse(what) { return what; }
+
+		propagateChange() {
+			if (this.onchange instanceof Function)
+				this.onchange(this.getData());
 		}
 	}
-	
-	function long_rival(slave) {
-		if (slave.rivalry !== 0) {
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
-			let _ssj = V.slaves.findIndex(function(s) {
-				return s.ID === slave.rivalryTarget;
-			});
-			if (_ssj !== -1) {
-				if (slave.rivalry <= 1) {
-					r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
-				} else if (slave.rivalry <= 2) {
-					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightsalmon">rival.</span>`;
-				} else {
-					r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
-				}
-			}
-			r += " ";
+
+	// a clickable item of a list
+	class ListItem extends Element {
+		constructor(displayvalue, data) {
+			super(displayvalue);
+			this.data = data !== undefined ? data: displayvalue;
+			this.selected = false;
+		}
+
+		render(displayvalue) {
+			const elem = document.createElement("span");
+			elem.classList.add("rajs-listitem");
+			elem.innerHTML = displayvalue;
+			elem.onclick = () => { return this.select(); };
+			return elem;
+		}
+
+		select() {
+			if (this.selected) return false;
+			this.parent.selectItem(this);
+			this.element.classList.add("selected");
+			this.selected = true;
+			return true;
+		}
+
+		deselect() {
+			this.element.classList.remove("selected");
+			this.selected = false;
 		}
 	}
-	
-	function long_clothes(slave) {
-		switch (slave.clothes) {
-			case "attractive lingerie":
-				r += `Lingerie.`;
-				break;
-			case "a succubus outfit":
-				r += `Succubus outfit.`;
-				break;
-			case "a string bikini":
-				r += `String bikini.`;
-				break;
-			case "a scalemail bikini":
-				r += `Scalemail bikini.`;
-				break;
-			case "a monokini":
-				r += `Monokini.`;
-				break;
-			case "an apron":
-				r += `Apron.`;
-				break;
-			case "a cybersuit":
-				r += `Cybersuit.`;
-				break;
-			case "cutoffs and a t-shirt":
-				r += `Cutoffs, t-shirt.`;
-				break;
-			case "a slutty outfit":
-				r += `Slutty outfit.`;
-				break;
-			case "uncomfortable straps":
-				r += `Leather straps.`;
-				break;
-			case "a fallen nuns habit":
-				r += `Slutty habit.`;
-				break;
-			case "a chattel habit":
-				r += `Chattel habit.`;
-				break;
-			case "a penitent nuns habit":
-				r += `Cilice.`;
-				break;
-			case "slutty jewelry":
-				r += `Bangles.`;
-				break;
-			case "attractive lingerie for a pregnant woman":
-				r += `Preggo lingerie.`;
-				break;
-			case "a maternity dress":
-				r += `Maternity dress.`;
-				break;
-			case "stretch pants and a crop-top":
-				r += `Stretch pants, crop-top.`;
-				break;
-			case "harem gauze":
-				r += `Harem outfit.`;
-				break;
-			case "a slave gown":
-				r += `Slave gown.`;
-				break;
-			case "a halter top dress":
-				r += `Halter top dress.`;
-				break;
-			case "a mini dress":
-				r += `Mini dress.`;
-				break;
-			case "a ball gown":
-				r += `Ball gown.`;
-				break;
-			case "slutty business attire":
-				r += `Slutty suit.`;
-				break;
-			case "nice business attire":
-				r += `Nice suit.`;
-				break;
-			case "a comfortable bodysuit":
-				r += `Bodysuit.`;
-				break;
-			case "a military uniform":
-				r += `Military uniform.`;
-				break;
-			case "a schutzstaffel uniform":
-				r += `Schutzstaffel uniform.`;
-				break;
-			case "a slutty schutzstaffel uniform":
-				r += `Slutty Schutzstaffel uniform.`;
-				break;
-			case "a red army uniform":
-				r += `Red Army uniform.`;
-				break;
-			case "a long qipao":
-				r += `Long Qipao.`;
-				break;
-			case "battlearmor":
-				r += `Battlearmor.`;
-				break;
-			case "a mounty outfit":
-				r += `Mounty outfit.`;
-				break;
-			case "a dirndl":
-				r += `Dirndl.`;
-				break;
-			case "lederhosen":
-				r += `Lederhosen.`;
-				break;
-			case "a biyelgee costume":
-				r += `Biyelgee costume.`;
-				break;
-			case "a leotard":
-				r += `Leotard.`;
-				break;
-			case "a bunny outfit":
-				r += `Bunny outfit.`;
-				break;
-			case "a slutty maid outfit":
-				r += `Slutty maid.`;
-				break;
-			case "a nice maid outfit":
-				r += `Nice maid.`;
-				break;
-			case "a slutty nurse outfit":
-				r += `Slutty nurse.`;
-				break;
-			case "a nice nurse outfit":
-				r += `Nice nurse.`;
-				break;
-			case "a schoolgirl outfit":
-				r += `Schoolgirl outfit.`;
-				break;
-			case "a kimono":
-				r += `Kimono.`;
-				break;
-			case "a hijab and abaya":
-				r += `Hijab and abaya.`;
-				break;
-			case "battledress":
-				r += `Battledress.`;
-				break;
-			case "a latex catsuit":
-				r += `Nice latex.`;
-				break;
-			case "restrictive latex":
-				r += `Bondage latex.`;
-				break;
-			case "conservative clothing":
-				r += `Conservative clothing.`;
-				break;
-			case "chains":
-				r += `Chains.`;
-				break;
-			case "a cheerleader outfit":
-				r += `Cheerleader.`;
-				break;
-			case "clubslut netting":
-				r += `Netting.`;
-				break;
-			case "shibari ropes":
-				r += `Shibari.`;
-				break;
-			case "Western clothing":
-				r += `Chaps.`;
-				break;
-			case "body oil":
-				r += `Body oil.`;
-				break;
-			case "a toga":
-				r += `Toga.`;
-				break;
-			case "a huipil":
-				r += `Huipil.`;
-				break;
-			case "a slutty qipao":
-				r += `Qipao.`;
-				break;
-			case "spats and a tank top":
-				r += `Spats, tank top.`;
-				break;
-			default:
-				r += `Naked.`;
-				break;
+
+	// a way to organise lists with too many elements in subsections
+	// children are bound to the master list
+	class ListSubSection extends Element {
+		constructor(parent, label, pairs) {
+			super(label);
+			this.parent = parent;
+			pairs.forEach(item => this.appendChild(new ListItem(...item)));
+		}
+		
+		render(label) {
+			const elem = document.createElement("div");
+			const lelem = document.createElement("em");
+			lelem.innerText = label + ": ";
+			elem.appendChild(lelem);
+			return elem;
+		}
+
+		appendChild(child) {
+			super.appendChild(child);
+			child.parent = this.parent;
+			this.parent.children.push(child);
 		}
-		r += " ";
 	}
 
-	function long_collar(slave) {
-		switch (slave.collar) {
-			case "uncomfortable leather":
-				r += `Leather collar.`;
-				break;
-			case "tight steel":
-				r += `Steel collar.`;
-				break;
-			case "preg biometrics":
-				r += `Pregnancy biometrics collar.`;
-				break;
-			case "cruel retirement counter":
-				r += `Cruel counter collar.`;
-				break;
-			case "shock punishment":
-				r += `Shock collar.`;
-				break;
-			case "dildo gag":
-				r += `Dildo gag.`;
-				break;
-			case "massive dildo gag":
-				r += `Throat-bulging dildo gag.`;
-				break;
-			case "neck corset":
-				r += `Neck corset.`;
-				break;
-			case "stylish leather":
-				r += `Stylish leather collar.`;
-				break;
-			case "satin choker":
-				r += `Satin choker.`;
-				break;
-			case "silk ribbon":
-				r += `Silken ribbon.`;
-				break;
-			case "heavy gold":
-				r += `Gold collar.`;
-				break;
-			case "bowtie":
-				r += `Bowtie collar.`;
-				break;
-			case "pretty jewelry":
-				r += `Pretty collar.`;
-				break;
-			case "nice retirement counter":
-				r += `Nice counter collar.`;
-				break;
-			case "leather with cowbell":
-				r += `Cowbell collar.`;
-				break;
-			case "ancient Egyptian":
-				r += `Wesekh.`;
-				break;
-			case "ball gag":
-				r += `Ball gag.`;
-				break;
-			case "bit gag":
-				r += `Bit gag.`;
-				break;
-			case "porcelain mask":
-				r += `Porcelain mask.`;
-				break;
+	// similar to list, but is just a collection of buttons
+	class Options extends Element {
+		constructor(elements=[]) {
+			super();
+			elements.forEach(element => { this.appendChild(element); });
+		}
+
+		render() {
+			const elem = document.createElement("div");
+			elem.classList.add("rajs-list");
+			return elem;
 		}
-		r += " ";
 	}
-	
-	function long_belly(slave) {
-		switch (slave.bellyAccessory) {
-			case "shapewear":
-				r += `Shapewear.`;
-				break;
-			case "a small empathy belly":
-				r += `Small fake belly.`;
-				break;
-			case "a medium empathy belly":
-				r += `Medium fake belly.`;
-				break;
-			case "a large empathy belly":
-				r += `Large fake belly.`;
-				break;
-			case "a huge empathy belly":
-				r += `Huge fake belly.`;
-				break;
-			case "a corset":
-				r += `Corset.`;
-				break;
-			case "an extreme corset":
-				r += `Extreme corsetage.`;
-				break;
+
+	// options equivalent of ListItem
+	class OptionsItem extends Element {
+		constructor(label, onclick) {
+			super(label);
+			this.label = label;
+			this.onclick = onclick;
+		}
+		render(label, onclick) {
+			const elem = document.createElement("span");
+			elem.classList.add("rajs-listitem");
+			elem.innerHTML = label;
+			elem.onclick = () => { return this.onclick(this); };
+			return elem;
 		}
-		r += " ";
 	}
-	
-	function long_legs(slave) {
-		if (slave.legAccessory === "short stockings") {
-			r += `Short stockings.`;
-		} else if (slave.legAccessory === "long stockings") {
-			r += `Long stockings.`;
+
+	class ButtonList extends Element {
+		render(label) {
+			const elem = document.createElement("div");
+			const labelel = document.createElement("span");
+			labelel.innerHTML = label += ": ";
+			elem.appendChild(labelel);
+			return elem;
+		}
+
+		getSelection() {
+			return (this.children
+				.filter(child => child.selected)
+				.map(child => child.setvalue)
+			);
+		}
+
+		onchange() { return; }
+	}
+
+	class ButtonItem extends Element {
+		constructor(label, setvalue, selected=false) {
+			super(label, selected);
+			this.selected = selected;
+			this.setvalue = setvalue ? setvalue : label;
+		}
+
+		render(label, selected) {
+			const container = document.createElement("div");
+			container.classList.add("rajs-listitem");
+
+			const labelel = document.createElement("span");
+			labelel.innerHTML = label;
+
+			const button = document.createElement("input");
+			button.setAttribute("type", "checkbox");
+			button.checked = selected;
+			button.onchange = () => this.onchange(button.checked);
+			labelel.onclick = () => button.click();
+
+			container.appendChild(labelel);
+			container.appendChild(button);
+
+			return container;
+		}
+
+		onchange(value) {
+			this.selected = value;
+			this.parent.onchange(this);
+		}
+	}
+
+	// rule import field
+	class NewRuleField extends Element {
+		constructor(root) {
+			super();
+			this.root = root;
+		}
+
+		render() {
+			let element = document.getElementById("importfield");
+			if (element !== null) { return element; }
+			const container = document.createElement("div");
+			container.id = "importfield";
+			const textarea = document.createElement("textarea");
+			textarea.placeholder = "Paste your rule here";
+			container.appendChild(textarea);
+			this.textarea = textarea;
+			const button = document.createElement("button");
+			button.name = "Load";
+			button.innerHTML = "Load";
+			button.onclick = () => { this.loadNewRule(); };
+			container.appendChild(button);
+			return container;
+		}
+
+		loadNewRule() {
+			const text = this.textarea.value;
+			try {
+				const rule = JSON.parse(text);
+				if (rule instanceof Array)
+					rule.forEach(r => V.defaultRules.push(r));
+				else
+					V.defaultRules.push(rule);
+				reload(this.root);
+			} catch (e) {
+				alert("Couldn't import that rule:\n" + e.message);
+			}
+		}
+	}
+
+	// the base element, parent of all elements
+	class Root extends Element {
+		constructor(element) {
+			super(element);
+			if(V.defaultRules.length === 0) {
+				const paragraph = document.createElement("p");
+				paragraph.innerHTML = "<strong>No rules</strong>";
+				this.appendChild(new Element(paragraph));
+				this.appendChild(new NoRules(this));
+				return;
+			}
+			this.appendChild(new RuleSelector(this));
+			this.appendChild(new RuleOptions(this));
+			this.appendChild(new ConditionEditor(this));
+			this.appendChild(new EffectEditor(this));
+		}
+
+		render(element) {
+			const greeting = document.createElement("p");
+			greeting.innerHTML = `<em>${properTitle()}, I will review your slaves and make changes that will have a beneficial effect. Apologies, ${properTitle()}, but this function is... not fully complete. It may have some serious limitations. Please use the 'no default setting' option to identify areas I should not address.</em>`;
+			element.appendChild(greeting);
+			return element;
+		}
+	}
+
+	// optoins displayed when there are no rules
+	class NoRules extends Options {
+		constructor(root) {
+			super();
+			this.root = root;
+			const newrule = new OptionsItem("Add a new rule", () => { newRule(this.root); });
+			this.appendChild(newrule);
+			const importrule = new OptionsItem("Import a rule", () => { this.root.appendChild(new NewRuleField(this.root)); });
+			this.appendChild(importrule);
 		}
-		r += " ";
 	}
-	
-	function long_shoes(slave) {
-		if (slave.shoes === "heels") {
-			r += `Heels.`;
-		} else if (slave.shoes === "pumps") {
-			r += `Pumps.`;
-		} else if (slave.shoes === "extreme heels") {
-			r += `Extreme heels.`;
-		} else if (slave.shoes === "boots") {
-			r += `Boots.`;
-		} else if (slave.heels === 1) {
-			r += `<span class="yellow">Crawling.</span>`;
-		} else if (slave.shoes === "flats") {
-			r += `Flats.`;
+
+	// buttons for selecting the current rule
+	class RuleSelector extends List {
+		constructor(root) {
+			super("Current rule", V.defaultRules.map(i => [i.name, i]));
+			this.setValue(current_rule.name);
+			this.onchange = function (rule) {
+				V.currentRule = rule.ID;
+				reload(root);
+			};
 		}
-		r += " ";
 	}
-	
-	function long_vaginal_acc(slave) {
-		switch (slave.vaginalAccessory) {
-			case "chastity belt":
-				r += `Vaginal chastity.`;
-				break;
-			case "combined chastity":
-				r += `Combined chastity.`;
-				break;
-			case "anal chastity":
-				r += `Anal chastity.`;
-				break;
-			case "dildo":
-				r += `Vaginal dildo.`;
-				break;
-			case "large dildo":
-				r += `Large vaginal dildo.`;
-				break;
-			case "huge dildo":
-				r += `Huge vaginal dildo.`;
-				break;
-			case "long dildo":
-				r += `Long vaginal dildo.`;
-				break;
-			case "long, large dildo":
-				r += `Long and large vaginal dildo.`;
-				break;
-			case "long, huge dildo":
-				r += `Long and wide vaginal dildo.`;
-				break;
+
+	// buttons for doing transformations on rules
+	class RuleOptions extends Options {
+		constructor(root) {
+			super();
+			this.appendChild(new OptionsItem("New Rule", () => newRule(root)));
+			this.appendChild(new OptionsItem("Remove Rule", () => removeRule(root)));
+			this.appendChild(new OptionsItem("Apply rules", () => this.appendChild(new ApplicationLog())));
+			this.appendChild(new OptionsItem("Lower Priority", () => lowerPriority(root)));
+			this.appendChild(new OptionsItem("Higher Priority", () => higherPriority(root)));
+			this.appendChild(new OptionsItem("Rename", () => this.appendChild(new RenameField(root))));
+			this.appendChild(new OptionsItem("Export this rule", () => this.appendChild(new ExportField(current_rule))));
+			this.appendChild(new OptionsItem("Export all rules", () => this.appendChild(new ExportField(...V.defaultRules))));
+			this.appendChild(new OptionsItem("Import rule(s)", () => this.appendChild(new NewRuleField(root))));
 		}
-		r += " ";
 	}
-	
-	function long_dick_acc(slave) {
-		if (slave.dickAccessory === "chastity") {
-			r += `Chastity cage.`;
-		} else if (slave.dickAccessory === "combined chastity") {
-			r += `Combined chastity.`;
-		} else if (slave.dickAccessory === "anal chastity") {
-			r += `Anal chastity.`;
+
+	class ApplicationLog extends Element {
+		render() {
+			const elem = document.querySelector("#application-log") || document.createElement("div");
+			elem.id = "application-log";
+			clearSummaryCache();
+			elem.innerHTML = V.slaves.map(slave => DefaultRules(slave)).join("");
+			return elem;
 		}
-		r += " ";
 	}
-	
-	function long_buttplug(slave) {
-		switch (slave.buttplug) {
-			case "plug":
-				r += `Buttplug.`;
-				break;
-			case "large plug":
-				r += `Large buttplug.`;
-				break;
-			case "huge plug":
-				r += `Huge buttplug.`;
-				break;
-			case "long plug":
-				r += `Long buttplug.`;
-				break;
-			case "long, large plug":
-				r += `Large, long buttplug.`;
-				break;
-			case "long, huge plug":
-				r += `Enormous buttplug.`;
-				break;
+
+	class RenameField extends Element {
+		constructor(root) {
+			super();
+			this.element.onblur = () => changeName(this.element.value, root);
+			this.element.onkeypress = (e) => { if (returnP(e)) changeName(this.element.value, root); };
 		}
-		r += " ";
-		switch (slave.buttplugAttachment) {
-			case "tail":
-				r += `Attached tail. `;
-				break;
+
+		render() {
+			const elem = document.createElement("input");
+			elem.setAttribute("type", "text");
+			elem.setAttribute("value", current_rule.name);
+			return elem;
 		}
 	}
-	
-	function rules_assistant(slave) {
-		if (slave.useRulesAssistant === 0) {
-			r += `<span class="lightgreen">RA-Exempt</span> `;
-		} else if (V.abbreviateRulesets === 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
-			r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(", ") }`;
+
+	class ExportField extends Element {
+		render(...args) {
+			let element = document.getElementById("exportfield");
+			if (element === null) {
+				element = document.createElement("textarea");
+				element.id = "exportfield";
+			}
+			element.value = JSON.stringify(args, null, 2);
+			return element;
 		}
 	}
-	
-	function origins(slave) {
-		r += `<br>`;
-		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
-			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+
+	// parent section for condition editing
+	class ConditionEditor extends Section {
+		constructor() {
+			super("Activation Condition");
+			this.appendChild(new ConditionFunction());
+			this.appendChild(new AssignmentInclusion());
+			this.appendChild(new SpecialExclusion());
+			this.appendChild(new SpecificInclusionExclusion());
 		}
-		r += `<span class="gray">${slave.origin}</span>`;
 	}
-	
-	return SlaveSummaryUncached;
-})();
-	
-/*:: colorModeJS [script]*/
 
-window.setColors = function(colorMap){
-    let styleSheetArray = Array.from(document.styleSheets);
-    styleSheetArray.forEach( styleSheet => {
-        let cssRules = Array.from(styleSheet.cssRules);
-        cssRules.forEach( cssRule => {
-            if ( cssRule.type === 1 ){
-                let color = cssRule.style.color;
-                let bgcolor = cssRule.style.backgroundColor;
-                if (
-                    color != "" &&
-                    color != "inherit" ){
-                    cssRule.style.color = colorMap[color] || color;
-                    console.log('color: ',color);
-                }
-                if (
-                    bgcolor != "" &&
-                    bgcolor != "inherit" &&
-                    bgcolor != "transparent" ){
-                    cssRule.style.backgroundColor = colorMap[bgcolor] || bgcolor;
-                    console.log('color: ',color);
-                }
-            }
-        });
-    });
-}
+	class ConditionFunction extends Element {
+		constructor() {
+			super();
+			const items = [
+				["Never", false],
+				["Always", true],
+				["Custom", "custom"],
+				["Devotion", "devotion"],
+				["Trust", "trust"],
+				["Health", "health"],
+				["Sex drive", "energy"],
+				["Weight", "weight"],
+				["Age", "actualAge"],
+				["Body Age", "physicalAge"],
+				["Visible Age", "visualAge"],
+				["Muscles", "muscles"],
+				["Lactation", "lactation"],
+				["Pregnancy", "preg"],
+				["Pregnancy Multiples", "pregType"],
+				["Belly Implant", "bellyImplant"],
+				["Belly Size", "belly"],
+				["Education", "intelligenceImplant"],
+				["Intelligence", "intelligence"],
+				["Fetish", "fetish"],
+				["Accent", "accent"],
+				["Waist", "waist"],
+				["Amputation", "amp"],
+			];
+			this.fnlist = new List("Activation function", items);
+			this.fnlist.setValue(current_rule.condition.function === "between" ? current_rule.condition.data.attribute : current_rule.condition.function);
+			this.fnlist.onchange = (value) => this.fnchanged(value);
+			this.appendChild(this.fnlist);
+			this.fneditor = null;
 
-/*:: HTAG Macro JS [script]*/
+			switch(current_rule.condition.function) {
+				case false:
+				case true:
+					break;
+				case "custom":
+					this.show_custom_editor(CustomEditor, current_rule.condition.data);
+					break;
+				case "between":
+					this.show_custom_editor(RangeEditor, current_rule.condition.function, current_rule.condition.data);
+					break;
+				case "belongs":
+					this.show_custom_editor(ItemEditor, current_rule.condition.function, current_rule.condition.data);
+					break;
+			}
+		}
+
+		betweenP(attribute) {
+			return [
+				"devotion",
+				"trust",
+				"health",
+				"energy",
+				"weight",
+				"actualAge",
+				"physicalAge",
+				"visualAge",
+				"muscles",
+				"lactation",
+				"preg",
+				"pregType",
+				"bellyImplant",
+				"belly",
+				"intelligenceImplant",
+				"intelligence",
+				"accent",
+				"waist",
+			].includes(attribute);
+		}
 
-/*
- * <<htag>> macro
- * A simple macro which allows to create wrapping html elements with dynamic IDs.
- *      idea blatantly robbed from the spanMacroJS.tw  but expanded to a more generic 
- *      case, allowing <div>, <button> or whatever you want. elements, default is for
- *      the div though.  In addition, you can pass an object in as the first argument 
- *      instead of an id, and each of the object's attributes will become attributes
- *      of the generate tag.
- *
- * Usage: <<htag id>>...<</htag>>    
- * Usage: <<htag id tag>>...<</htag>>    
- * Usage: <<htag atributes>>...<</htag>>    
- * Usage: <<htag atributes tag>>...<</htag>>    
- */
-Macro.add('htag', {
-	tags: null,
-	handler() {
-		const payload = this.payload[0].contents.replace(/(^\n+|\n+$)/, '');
-		let htag = 'div';
-		let attributes;
-		function munge (val, key)  {
-			return  key + '="' + val + '"';
+		belongsP(attribute) {
+			return [
+				"fetish",
+				"amp",
+			].includes(attribute);
 		}
-		
-		if (1  >  this.args.length)
-			return this.error('invalid syntax, format: <<htag [id [ tag ] | attributes [ tag ] >>');
-		if (1  <  this.args.length)
-			htag = String(this.args[1]).trim();
-		if ("object" === typeof this.args[0])
-			attributes = $.map(this.args[0], munge).join(" ");
-		else
-			attributes = 'id="' + String(this.args[0]).trim() + '"';
-		if (Config.debug)
-			this.debugView.modes({block: true});
-		
-		jQuery('<' + htag + ' ' + attributes + ' />')
-			.wiki(payload)
-			.appendTo(this.output);
-	}
-});
 
-/*:: Quick List [script]*/
+		show_custom_editor(what, ...args) {
+			if (this.custom_editor !== null) this.hide_custom_editor();
+			this.custom_editor = new what(...args);
+			this.appendChild(this.custom_editor);
+		}
 
-window.sortDomObjects = function (objects, attrName, reverse = 0) {
-	reverse = (reverse) ? -1 : 1;
-	function sortingByAttr (a, b) {
-		var aVal = a.getAttribute(attrName);
-		var bVal = b.getAttribute(attrName);
-		var aInt = parseInt(aVal);
-		if  (!isNaN(aInt))
-			return ((parseInt(bVal) - aInt) * reverse);
-		else if (bVal > aVal)
-			return -1 * reverse;
-		return ((aVal == bVal) ? 0 : 1) * reverse;
-	}
-	return objects.toArray().sort(sortingByAttr);
-};
+		hide_custom_editor() {
+			if (this.custom_editor) {
+				this.custom_editor.remove();
+				this.custom_editor = null;
+			}
+		}
 
-window.sortButtonsByDevotion = function () {
-	var $sortedButtons = $('#qlWrapper button').remove();
-	$sortedButtons = sortDomObjects($sortedButtons, 'data-devotion');
-	$($sortedButtons).appendTo($('#qlWrapper'));
-	quickListBuildLinks();
-};
+		render() {
+			const elem = document.createElement("div");
+			return elem;
+		}
 
-window.sortButtonsByTrust = function () {
-	var $sortedButtons = $('#qlWrapper button').remove();
-	$sortedButtons = sortDomObjects($sortedButtons, 'data-trust');
-	$($sortedButtons).appendTo($('#qlWrapper'));
-	quickListBuildLinks();
-};
+		fnchanged(value) {
+			if (this.fneditor !== null) {
+				this.fneditor.element.remove();
+				this.fneditor = null;
+			}
+			if (value === true || value === false) {
+				current_rule.condition.function = value;
+				current_rule.condition.data = {};
+				this.hide_custom_editor();
+			} else if (value === "custom") {
+				current_rule.condition.function = "custom";
+				current_rule.condition.data = "";
+				this.show_custom_editor(CustomEditor, current_rule.condition.data);
+			} else if (this.betweenP(value)) {
+				current_rule.condition.function = "between";
+				current_rule.condition.data = { attribute: value, value: [null, null] };
+				this.show_custom_editor(RangeEditor, current_rule.condition.function, current_rule.condition.data);
+			} else if (this.belongsP(value)) {
+				current_rule.condition.function = "belongs";
+				current_rule.condition.data = { attribute: value, value: [] };
+				this.show_custom_editor(ItemEditor, current_rule.condition.function, current_rule.condition.data);
+			}
+		}
+	}
 
-window.quickListBuildLinks = function () {
-	$("[data-scroll-to]").click(function() {
-		var $this = $(this), $toElement = $this.attr('data-scroll-to');
-		// note the * 1 enforces $offset to be an integer, without
-		// it we scroll to True, which goes nowhere fast.
-                var $offset = $this.attr('data-scroll-offset') * 1 || 0;
-                var $speed =   $this.attr('data-scroll-speed') * 1 || 500;
-		// Use javascript scrollTop animation for in page navigation.
-		$('html, body').animate({
-			scrollTop: $($toElement).offset().top + $offset
-		}, $speed);
-	});
-};
+	class CustomEditor extends Element {
+		constructor(data) {
+			if (data.length === 0) data = "(slave) => slave.slaveName === 'Fancy Name'";
+			super(data);
+		}
 
-window.sortIncubatorPossiblesByName = function () {
-	var $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
-	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-name');
-	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
-};
+		render(data) {
+			const elem = document.createElement("div");
+			const textarea = document.createElement("textarea");
+			textarea.innerHTML = data;
+			textarea.onblur = () => current_rule.condition.data = textarea.value;
+			elem.appendChild(textarea);
+			const explanation = document.createElement("div");
+			explanation.innerHTML = "Insert a valid <a target='_blank' class='link-external' href='https://www.w3schools.com/js/js_comparisons.asp'>JavaScript comparison and/or logical operation</a>.";
+			elem.appendChild(explanation);
+			return elem;
+		}
+	}
 
-window.sortIncubatorPossiblesByPregnancyWeek = function () {
-	var $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
-	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-preg-week');
-	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
-};
+	class RangeEditor extends Element {
+		render(fn, data) {
+			const elem = document.createElement("div");
 
-window.sortIncubatorPossiblesByPregnancyCount = function () {
-	var $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
-	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-preg-count');
-	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
-};
+			const minlabel = document.createElement("label");
+			minlabel.innerHTML = "Lower bound: ";
+			elem.appendChild(minlabel);
 
-window.sortIncubatorPossiblesByReservedSpots = function () {
-	var $sortedIncubatorPossibles = $('#qlIncubator div.possible').detach();
-	$sortedIncubatorPossibles = sortDomObjects($sortedIncubatorPossibles, 'data-reserved-spots');
-	$($sortedIncubatorPossibles).appendTo($('#qlIncubator'));
-};
+			const min = document.createElement("input");
+			min.setAttribute("type", "text");
+			min.value = "" + data.value[0];
+			min.onkeypress = e => { if (returnP(e)) this.setmin(min.value); };
+			min.onblur = e => this.setmin(min.value);
+			this.min = min;
+			elem.appendChild(min);
 
-window.sortIncubatorPossiblesByPreviousSort = function () {
-	var sort = State.variables.sortIncubatorList;
-	console.log(State.variables);
-	console.log('sort', sort);
-	if ('unsorted' !==  sort) {
-		console.log("sort isn't unsorted", sort);
-		if  ('Name' ===  sort) {
-			console.log("sort is name", sort);
-			sortIncubatorPossiblesByName();
-		} else if ('Reserved Incubator Spots' === sort) {
-			console.log("sort is spots", sort);
-			sortIncubatorPossiblesByReservedSpots();
-		} else if ('Pregnancy Week' === sort) {
-			console.log("sort is week", sort);
-			sortIncubatorPossiblesByPregnancyWeek();
-		} else if ('Number of Children' === sort) {
-			console.log("sort is count", sort);
-			sortIncubatorPossiblesByPregnancyCount();
-		}
-	}
-};
+			elem.appendChild(document.createElement("br"));
 
-/*:: DefaultRules [script]*/
-// this code applies RA rules onto slaves
+			const maxlabel = document.createElement("label");
+			maxlabel.innerHTML = "Upper bound: ";
+			elem.appendChild(maxlabel);
 
-window.DefaultRules = (function() {
-	"use strict";
-	let V;
-	let r;
+			const max = document.createElement("input");
+			max.setAttribute("type", "text");
+			max.value = "" + data.value[1];
+			max.onkeypress = e => { if (returnP(e)) this.setmax(max.value); };
+			max.onblur = e => this.setmax(max.value);
+			this.max = max;
+			elem.appendChild(max);
 
-	function DefaultRules(slave) {
-		if (slave.useRulesAssistant === 0) return r; //exempted
-		
-		V = State.variables;
-		r = "";
-		let rule = MergeRules(slave);
-		if (Object.keys(rule).length === 0) return r; // no rules apply
+			const infobar = document.createElement("div");
+			infobar.innerHTML = this.info(data.attribute);
+			elem.appendChild(infobar);
 
-		AssignJobToSlave(slave, rule);
-		if(slave.fuckdoll === 0) {
-			ProcessClothing(slave, rule);
-			ProcessCollar(slave, rule);
-			ProcessEyewear(slave, rule);
-			ProcessDildos(slave, rule);
-			ProcessDickAccessories(slave, rule);
-			ProcessAnalAccessories(slave, rule);
-			ProcessShoes(slave, rule);
-			ProcessBellyAccessories(slave, rule);
-			ProcessLegAccessory(slave, rule);
+			return elem;
 		}
-		ProcessBellyImplant(slave, rule);
-		if (isFertile(slave))
-			ProcessContraceptives(slave, rule);
-		ProcessOtherDrugs(slave, rule);
-		ProcessAssetGrowthDrugs(slave, rule);
-		ProcessDiet(slave, rule);
-		ProcessCuratives(slave, rule);
-		ProcessAphrodisiacs(slave, rule);
-		ProcessPenisHormones(slave, rule);
-		ProcessFemaleHormones(slave, rule);
-		ProcessPregnancyDrugs(slave, rule);
-		if(slave.fuckdoll === 0) {
-			ProcessLivingStandard(slave, rule);
-			ProcessSpeech(slave, rule);
-			ProcessRelationship(slave, rule);
-			ProcessRelease(slave, rule);
-			ProcessPunishment(slave, rule);
-			ProcessReward(slave, rule);
+
+		parse(value) {
+			value = value.trim();
+			if (value === "null") value = null;
+			else {
+				value = parseInt(value);
+				if (isNaN(value)) value = null;
+			}
+			return value;
 		}
-		ProcessDietCum(slave, rule);
-		ProcessDietMilk(slave, rule);
-		ProcessTeeth(slave, rule);
-		ProcessStyle(slave, rule);
-		ProcessPiercings(slave, rule);
-		ProcessSmartPiercings(slave, rule);
-		ProcessTattoos(slave, rule);
-		ProcessPorn(slave, rule);
-		return r;
-	}
 
-	function MergeRules(slave) {
-		// merge all rules applying on a slave into one big rule
-		const rules = V.defaultRules.filter(x => ruleAppliesP(x.condition, slave));
-		slave.currentRules = rules.map(x => x.ID);
-		return mergeRules(rules.map(x => ProcessAssignments(slave, Object.assign({}, x.set))));
-	}
+		setmin(value) {
+			current_rule.condition.data.value[0] = this.parse(value);
+			this.min.value = ""+current_rule.condition.data.value[0];
+		}
 
-	function ProcessAssignments(slave, rule) {
-		// Before merging rules, we process assignments for each rule separately so we can remove slaves from facilities when they no longer qualify, even if the final "winning" rule assigns them elsewhere 
-		// We also ignore inapplicable assignments for the current slave, so we only merge assignments that are valid 
-		switch (rule.setAssignment) {
-			case "no default setting":
-				delete rule.setAssignment;
-				break;
-			
-			case "rest":
-			case "please you":
-				// slaves always qualify for this assignment 
-				break;
+		setmax(value) {
+			current_rule.condition.data.value[1] = this.parse(value);
+			this.max.value = ""+current_rule.condition.data.value[1];
+		}
 
-			case "live with your Head Girl":
-				if ((V.HGSuiteSlaves < 1 && slave.indentureRestrictions <= 0))
-					break;
-				else {
-					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+		info(attribute) {
+			return ({
+				"devotion": "Very Hateful: (-∞, -95), Hateful: [-95, -50), Resistant: [-50, -20), Ambivalent: [-20, 20], Accepting: (20, 50], Devoted: (50, 95], Worshipful: (95, ∞)",
+				"trust": "Extremely terrified: (-∞, -95), Terrified: [-95, -50), Frightened: [-50, -20), Fearful: [-20, 20], Careful: (20, 50], Trusting: (50, 95], Total trust: (95, ∞)",
+				"health": "Death: (-∞, -100), Near Death: [-100, -90), Extremely Unhealthy: [-90, -50), Unhealthy: [-50, -20), Healthy: [-20, 20], Very Healthy: (20, 50], Extremely Healthy: (50, 90], Unnaturally Healthy: (90, ∞)",
+				"energy": "Frigid: (-∞, 20], Poor: (20, 40], Average: (40, 60], Powerful: (60, 80], Sex Addict: (80, 100), Nympho: 100",
+				"weight": "Emaciated: (-∞, -95), Skinny: [-95, -30), Thin: [-30, -10), Average: [-10, 10], Plush: (10, 30], Fat: (30, 95], Overweight: (95, ∞)",
+				"lactation": "None: 0, 1: Natural, 2: Lactation implant",
+				"preg": "Barren: -2, On contraceptives: -1, Not pregnant: 0, Pregnancy weeks: [1, ∞)",
+				"pregType": "Fetus count, known only after the 10th week of pregnancy",
+				"bellyImplant": "Volume in CCs. None: -1",
+				"belly": "Volume in CCs, any source",
+				"intelligenceImplant": "Education level. 0: uneducated, 1: educated, (0, 1): incomplete education.",
+				"intelligence": "From moronic to brilliant: [-3, 3]",
+				"accent": "No accent: 0, Nice accent: 1, Bad accent: 2, Can't speak language: 3 and above",
+				"waist": "Masculine waist: (95, ∞), Ugly waist: (40, 95], Unattractive waist: (10, 40], Average waist: [-10, 10], Feminine waist: [-40, -10), Wasp waist: [-95, 40), Absurdly narrow: (-∞, -95)",
+			}[attribute] || " ");
+		}
+	}
 
-			case "be confined in the arcade":
-				if ((V.arcadeSlaves < V.arcade && slave.indentureRestrictions <= 0 && slave.breedingMark != 1))
-					break;
-				else {
-					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+	class ItemEditor extends Element {
+		render(fn, data) {
+			const elem = document.createElement("div");
 
-			case "serve in the master suite":
-				if ((V.masterSuiteSlaves < V.masterSuite && (slave.devotion > 20 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20))))
-					break;
-				else {
-					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+			const input = document.createElement("input");
+			input.setAttribute("type", "text");
+			input.value = JSON.stringify(data.value);
+			input.onkeypress = e => { if (returnP(e)) this.setValue(input); };
+			input.onblur = e => this.setValue(input);
+			this.input = input;
+			elem.appendChild(input);
 
-			case "get treatment in the clinic":
-				if ((V.clinicSlaves < V.clinic && (slave.health < 20 || (slave.chem > 15 && V.Nurse !== 0 && V.clinicUpgradeFilters == 1)) || ((slave.bellyImplant > -1) && (V.bellyImplants == 1)) || slave.preg > 1))
-					break;
-				else {
-					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+			const infobar = document.createElement("div");
+			infobar.innerHTML = this.info(data.attribute);
+			elem.appendChild(infobar);
 
-			case "rest in the spa":
-				if ((V.spaSlaves < V.spa) && (slave.health < 20) || (slave.trust < 60) || (slave.devotion <= 60) || (slave.fetish == "mindbroken") && (slave.devotion >= -20))
-					break;
-				else {
-					RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+			return elem;
+		}
 
-			case "work in the brothel":
-				if ((V.brothelSlaves < V.brothel && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && slave.breedingMark != 1))
-					break;
-				else {
-					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+		info(attribute) {
+			return "Insert a valid JSON array. Known values: " + {
+				"fetish": "buttslut, cumslut, masochist, sadist, dom, submissive, boobs, pregnancy, none (AKA vanilla)",
+				"amp": "Amputated: 1, Not amputated: 0",
+			}[attribute];
+		}
+		
+		setValue(input) {
+			try {
+				const arr = JSON.parse(input.value);
+				current_rule.condition.data.value = arr;
+				input.value = JSON.stringify(arr);
+			} catch (e) {
+				alert(e);
+			}
+		}
+	}
 
-			case "serve in the club":
-				if ((V.clubSlaves < V.club && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && slave.breedingMark != 1))
-					break;
-				else {
-					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
 
-			case "work in the dairy":
-				if ((V.dairy > V.dairySlaves+V.bioreactorsXY+V.bioreactorsXX+V.bioreactorsHerm+V.bioreactorsBarren)) {
-					if ((slave.indentureRestrictions > 0) && (V.dairyRestraintsSetting > 1))
-						break;
-					else if (((slave.indentureRestrictions > 1) && (V.dairyRestraintsSetting > 0)) || (slave.breedingMark == 1 && V.dairyRestriantsSettings > 0) || ((V.dairyPregSetting > 0) && ((slave.bellyImplant != -1) || (slave.broodmother !== 0))))
-						break;
-					else {
-						if ((slave.lactation > 0 || ((V.dairySlimMaintainUpgrade === 0 || V.dairySlimMaintain === 0) && (slave.boobs > 300 || slave.dick === 0 || V.dairyImplantsSetting == 1) && V.dairyImplantsSetting != 2)) || (slave.balls > 0)) {
-							if ((slave.devotion > 20) || ((slave.devotion >= -50) && (slave.trust < -20)) || (slave.trust < -50) || (slave.amp == 1) || (V.dairyRestraintsUpgrade == 1)) {
-								if ((V.dairyStimulatorsSetting < 2) || (slave.anus > 2) || (V.dairyPrepUpgrade == 1)) {
-									if ((V.dairyPregSetting < 2) || (slave.vagina > 2) || (slave.ovaries === 0) || (V.dairyPrepUpgrade == 1))
-										break;
-									else {
-										RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-										delete rule.setAssignment;
-									}
-								} else {
-									RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-									delete rule.setAssignment;
-								}
-							} else {
-								RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-								delete rule.setAssignment;
-							}
-						} else {
-							RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-							delete rule.setAssignment;
-						}
-					}
-				}
-				break;
+	class AssignmentInclusion extends ButtonList {
+		constructor() {
+			super("Apply to assignments and facilities");
+			const items = ["Rest", "Fucktoy", "Subordinate Slave", "House Servant", "Confined", "Whore", "Public Servant", "Classes", "Milked", "Gloryhole"];
+			if (V.HGSuite > 0) items.push("Head Girl Suite");
+			if (V.brothel > 0) items.push("Brothel");
+			if (V.club > 0) items.push("Club");
+			if (V.arcade > 0) items.push("Arcade");
+			if (V.dairy > 0) items.push("Dairy");
+			if (V.servantsQuarters > 0) items.push("Servant Quarters");
+			if (V.masterSuite > 0) items.push("Master Suite");
+			if (V.schoolroom > 0) items.push("Schoolroom");
+			if (V.spa > 0) items.push("Spa");
+			if (V.clinic > 0) items.push("Clinic");
+			if (V.cellblock > 0) items.push("Cellblock");
+			items.forEach(
+				i => this.appendChild(new ButtonItem(i, this.getAttribute(i), current_rule.condition.assignment.includes(this.getAttribute(i)))));
+		}
 
-			case "work as a servant":
-				if ((V.servantsQuartersSlaves < V.servantsQuarters && canSee(slave) && canWalk(slave) && (slave.devotion >= -20 || slave.trust < -20 || (slave.devotion >= -50 && slave.trust <= 20))))
-					break;
-				else {
-					RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+		onchange() {
+			current_rule.condition.assignment = this.getSelection();
+		}
 
-			case "learn in the schoolroom":
-				if ((V.schoolroomSlaves < V.schoolroom && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20))))
-					if ((slave.intelligenceImplant < 1) || (slave.voice !== 0 && slave.accent+V.schoolroomUpgradeLanguage > 2) || (slave.oralSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.whoreSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.entertainSkill <= 10+V.schoolroomUpgradeSkills*20) || (slave.analSkill < 10+V.schoolroomUpgradeSkills*20) || ((slave.vagina >= 0) && (slave.vaginalSkill < 10+V.schoolroomUpgradeSkills*20)))
-						break;
-					else {
-						RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-						delete rule.setAssignment;
-					}
-				else {
-					RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+		getAttribute(what) {
+			return {
+				"Rest": "rest",
+				"Fucktoy": "please you",
+				"Subordinate Slave": "be a subordinate slave",
+				"House Servant": "be a servant",
+				"Confined": "stay confined",
+				"Whore": "whore",
+				"Public Servant": "serve the public",
+				"Classes": "take classes",
+				"Milked": "get milked",
+				"Gloryhole": "work a glory hole",
+				"Head Girl Suite": "live with your Head Girl",
+				"Brothel": "work in the brothel",
+				"Club": "serve in the club",
+				"Arcade": "be confined in the arcade",
+				"Dairy": "work in the dairy",
+				"Servant Quarters": "work as a servant",
+				"Master Suite": "serve in the master suite",
+				"Schoolroom": "learn in the schoolroom",
+				"Spa": "rest in the spa",
+				"Clinic": "get treatment in the clinic",
+				"Cellblock": "be confined in the cellblock",
+			}[what];
+		}
+	}
+
+	class SpecialExclusion extends List {
+		constructor() {
+			const items = [
+				["Yes", true],
+				["No", false]
+			];
+			super("Exclude special slaves", items);
+			this.setValue(current_rule.condition.excludeSpecialSlaves);
+			this.onchange = (value) => current_rule.condition.excludeSpecialSlaves = value;
+		}
+	}
 
-			case "be confined in the cellblock":
-				if ((V.cellblockSlaves < V.cellblock && ((slave.devotion < -20 && slave.trust >= -20) || (slave.devotion < -50 && slave.trust >= -50))))
-					break;
-				else {
-					RAFacilityRemove(slave,rule); // before deleting rule.setAssignment 
-					delete rule.setAssignment;
-				}
-				break;
+	class SpecificInclusionExclusion extends Options {
+		constructor() {
+			super();
+			this.appendChild(new OptionsItem("Limit to specific slaves", () => this.show_slave_selection()));
+			this.appendChild(new OptionsItem("Exclude specific slaves", () => this.show_slave_exclusion()));
+			this.subwidget = null;
+		}
 
-			case "take classes":
-				if (slave.intelligenceImplant !== 1 && slave.fetish != "mindbroken" && (slave.devotion >= -20 || slave.trust < -50 || (slave.trust < -20 && slave.devotion >= -50)))
-					break;
-				else
-					delete rule.setAssignment;
-				break;
+		show_slave_selection() {
+			if (this.subwidget) this.subwidget.remove();
+			this.subwidget = new SlaveSelection();
+			this.appendChild(this.subwidget);
+		}
 
-			case "choose her own job":
-				if ((slave.fetish != "mindbroken"))
-					break;
-				else
-					delete rule.setAssignment;
-				break;
+		show_slave_exclusion() {
+			if (this.subwidget) this.subwidget.remove();
+			this.subwidget = new SlaveExclusion();
+			this.appendChild(this.subwidget);
+		}
+	}
 
-			case "get milked":
-				if ((slave.lactation > 0 || slave.balls > 0))
-					break;
-				else
-					delete rule.setAssignment;
-				break;
+	class SlaveSelection extends ButtonList {
+		constructor() {
+			super("Include specific slaves");
+			V.slaves.forEach(slave => this.appendChild(new ButtonItem(
+				[slave.slaveName, slave.slaveSurname].join(" "),
+				slave.ID,
+				current_rule.condition.selectedSlaves.includes(slave.ID))));
+		}
 
-			case "be a servant":
-				if ((canWalk(slave) && canSee(slave) && (slave.devotion >= -20 || slave.trust < -50 || (slave.trust < -20 && slave.devotion >= -50))))
-					break;
-				else
-					delete rule.setAssignment;
-				break;
+		onchange() {
+			current_rule.condition.selectedSlaves = this.getSelection();
+		}
+	}
 
-			case "work a glory hole":
-				if (slave.indentureRestrictions <= 0 && slave.breedingMark != 1)
-					break;
-				else
-					delete rule.setAssignment;
-				break;
+	class SlaveExclusion extends ButtonList {
+		constructor() {
+			super("Exclude specific slaves");
+			V.slaves.forEach(slave => this.appendChild(new ButtonItem(
+				[slave.slaveName, slave.slaveSurname].join(" "),
+				slave.ID,
+				current_rule.condition.excludedSlaves.includes(slave.ID))));
+		}
 
-			case "whore":
-			case "serve the public":
-			case "stay confined":
-				if ((slave.fuckdoll === 0) && slave.breedingMark != 1)
-					break;
-				else
-					delete rule.setAssignment;
-				break;
+		onchange() {
+			current_rule.condition.excludedSlaves = this.getSelection();
+		}
+	}
 
-			default:
-				r += `<span class="red">raWidgets missing case for assignment 'V.{rule.setAssignment}'</span>.`;
-				break;
+	// parent section for effect editing
+	class EffectEditor extends Element {
+		constructor() {
+			super();
+			this.appendChild(new AppearanceSection());
+			this.appendChild(new CosmeticSection());
+			this.appendChild(new BodyModSection());
+			this.appendChild(new AutosurgerySection());
+			this.appendChild(new RegimenSection());
+			this.appendChild(new BehaviourSection());
+			this.appendChild(new OtherSection());
+		}
+
+		render() {
+			const element = document.createElement("div");
+			return element;
 		}
-		return rule;
 	}
 
-	function AssignJobToSlave(slave, rule) {
-		// place slave on assignment defined by the rule
-		if ((rule.setAssignment !== undefined && rule.setAssignment != "no default setting")) {
-			if (((rule.setAssignment == "choose her own job" && !slave.choosesOwnAssignment) || rule.setAssignment != slave.assignment)) {
-				switch (rule.setAssignment) {
-					case "live with your Head Girl":
-						r += `<br>${slave.slaveName} has been automatically assigned to live in your Head Girl's private suite.`;
-						break;
-					case "be confined in the arcade":
-						r += `<br>${slave.slaveName} has been automatically assigned to be confined in ${V.arcadeName}.`;
-						break;
-					case "serve in the master suite":
-						r += `<br>${slave.slaveName} has been automatically assigned to ${V.masterSuiteName}.`;
-						break;
-					case "get treatment in the clinic":
-						r += `<br>${slave.slaveName} has been automatically assigned to get treatment in ${V.clinicName}.`;
-						break;
-					case "rest in the spa":
-						r += `<br>${slave.slaveName} has been automatically assigned to rest in ${V.spaName}.`;
-						break;
-					case "work in the brothel":
-						r += `<br>${slave.slaveName} has been automatically assigned to work in ${V.brothelName}.`;
-						break;
-					case "serve in the club":
-						r += `<br>${slave.slaveName} has been automatically assigned to serve in ${V.clubName}.`;
-						break;
-					case "work in the dairy":
-						r += `<br>${slave.slaveName} has been automatically assigned to be milked in ${V.dairyName}.`;
-						break;
-					case "work as a servant":
-						r += `<br>${slave.slaveName} has been automatically assigned to work in ${V.servantsQuartersName}.`;
-						break;
-					case "learn in the schoolroom":
-						r += `<br>${slave.slaveName} has been automatically assigned to study in ${V.schoolroomName}.`;
-						break;
-					case "be confined in the cellblock":
-						r += `<br>${slave.slaveName} has been automatically assigned to be confined in ${V.cellblockName}.`;
-						break;
-					case "choose her own job":
-						r += `<br>${slave.slaveName} is now allowed to select her own assignments.`;
-						break;
-					default:
-						r += `<br>${slave.slaveName} has been automatically assigned to ${rule.setAssignment}.`;
-						break;
-				}
-				assignJob(slave, rule.setAssignment);
+	class AppearanceSection extends Section {
+		constructor() {
+			super("Appearance Settings");
+			this.appendChild(new ClothesList());
+			this.appendChild(new CollarList());
+			this.appendChild(new ShoeList());
+			this.appendChild(new CorsetList());
+			this.appendChild(new LeggingsList());
+			this.appendChild(new VagAccVirginsList());
+			this.appendChild(new VagAccAVirginsList());
+			this.appendChild(new VagAccOtherList());
+			if (V.seeDicks !== 0 || V.makeDicks !== 0) {
+				this.appendChild(new DickAccVirginsList());
+				this.appendChild(new DickAccOtherList());
 			}
+			this.appendChild(new ButtplugsVirginsList());
+			this.appendChild(new ButtplugsOtherList());
+			this.appendChild(new ImplantVolumeList());
+			this.appendChild(new AutosurgerySwitch());
+
 		}
 	}
 
-	function ProcessClothing(slave, rule) {
-		// apply clothes to slave
-		if ((rule.clothes !== undefined) && (rule.clothes !== "no default setting")) {
-			if ((rule.clothes == "choosing her own clothes")) {
-				if ((slave.choosesOwnClothes === 0)) {
-					slave.clothes = "choosing her own clothes";
-					slave.choosesOwnClothes = 1;
-					r += `<br>${slave.slaveName} is now allowed to choose her own clothes.`;
-				}
-			} else if ((slave.clothes !== rule.clothes)) {
-				slave.clothes = rule.clothes;
-				slave.choosesOwnClothes = 0;
-				r += `<br>${slave.slaveName} is now wearing ${slave.clothes}.`;
-			}
+	class RegimenSection extends Section {
+		constructor() {
+			super("Physical Regimen Settings");
+			this.appendChild(new GrowthList());
+			this.appendChild(new CurrativesList());
+			this.appendChild(new AphrodisiacList());
+			this.appendChild(new ContraceptiveList());
+			if (V.pregSpeedControl)
+				this.appendChild(new PregDrugsList());
+			this.appendChild(new FemaleHormonesList());
+			this.appendChild(new ShemaleHormonesList());
+			this.appendChild(new GeldingHormonesList());
+			this.appendChild(new OtherDrugsList());
+			this.appendChild(new DietList());
+			this.appendChild(new DietGrowthList());
+			this.appendChild(new DietBaseList());
+			this.appendChild(new MuscleList());
+			this.appendChild(new BraceList());
 		}
 	}
 
-	function ProcessCollar(slave, rule) {
-		// apply collar to slave
-		if ((rule.collar !== undefined) && (rule.collar != "no default setting")) {
-			if ((slave.collar !== rule.collar)) {
-				r += '<br>';
-				if ((rule.collar == "preg biometrics" && slave.preg <= -1)) {
-					slave.collar = "none";
-					r += `${slave.slaveName} cannot utilize preg biometrics.`;
-				} else if ((rule.collar == "massive dildo gag" && slave.oralSkill <= 50)) {
-					slave.collar = "none";
-					r += `${slave.slaveName} lacks the oral skill to successfully keep the massive dildo gag in her throat.`;
-				} else
-					slave.collar = rule.collar;
-				if ((slave.collar == "none"))
-					r += `${slave.slaveName} has been given no collar.`;
-				else
-					r += `${slave.slaveName} has been given a ${slave.collar} collar.`;
-			}
+	class BehaviourSection extends Section {
+		constructor() {
+			super("Behavior Settings");
+			this.appendChild(new AutomaticAssignmentList());
+			this.appendChild(new LivingStandardList());
+			this.appendChild(new PunishmentList());
+			this.appendChild(new RewardList());
+			this.appendChild(new ReleaseList());
+			this.appendChild(new SmartFetishList());
+			this.appendChild(new SmartXYAttractionList());
+			this.appendChild(new SmartXXAttractionList());
+			this.appendChild(new SmartEnergyList());
+			this.appendChild(new SpeechList());
+			this.appendChild(new RelationshipList());
+			if (V.studio === 1)
+				this.appendChild(new PornList());
+		}
+	}
+	
+	class OtherSection extends Section {
+		constructor() {
+			super("Other Settings");
+			this.appendChild(new LabelList());
+		}
+	}
+
+	class CosmeticSection extends Section {
+		constructor() {
+			super("Cosmetic Settings", true);
+			this.appendChild(new EyewearList());
+			this.appendChild(new LensesList());
+			this.appendChild(new MakeupList());
+			this.appendChild(new NailsList());
+			this.appendChild(new HairLengthList());
+			this.appendChild(new HaircutsList());
+			this.appendChild(new HairColourList());
+			this.appendChild(new HairStyleList());
+			this.appendChild(new PubicHairColourList());
+			this.appendChild(new PubicHairStyleList());
+			this.appendChild(new ArmpitHairColourList());
+			this.appendChild(new ArmpitHairStyleList());
 		}
 	}
 
-	function ProcessEyewear(slave, rule) {
-		// apply glasses, contacts to slave
-		if ((rule.eyewear !== undefined) && (rule.eyewear !== "no default setting")) {
-			switch (rule.eyewear) {
-				case "correct with glasses":
-					if (slave.eyes == -1) {
-						if (slave.eyewear != "corrective glasses") {
-							slave.eyewear = "corrective glasses";
-							V.cash -= V.modCost;
-							r += `<br>${slave.slaveName} has been given corrective glasses.`;
-						}
-					} else {
-						if (slave.eyewear != "none") {
-							slave.eyewear = "none";
-							r += `<br>${slave.slaveName}'s eyewear has been removed.`;
-						}
-					}
-					break;
-
-				case "correct with contacts":
-					if (slave.eyes == -1) {
-						if (slave.eyewear != "corrective contacts") {
-							slave.eyewear = "corrective contacts";
-							V.cash -= V.modCost;
-							r += `<br>${slave.slaveName} has been given corrective contacts.`;
-						}
-					} else {
-						if (slave.eyewear != "none") {
-							slave.eyewear = "none";
-							r += `<br>${slave.slaveName}'s eyewear has been removed.`;
-						}
-					}
-					break;
-
-				case "blur with glasses":
-					if (slave.eyes > -1) {
-						if (slave.eyewear != "blurring glasses") {
-							slave.eyewear = "blurring glasses";
-							V.cash -= V.modCost;
-							r += `<br>${slave.slaveName} has been given blurring glasses.`;
-						}
-					} else {
-						if (slave.eyewear != "none") {
-							slave.eyewear = "none";
-							r += `<br>${slave.slaveName}'s eyewear has been removed.`;
-						}
-					}
-					break;
-
-				case "blur with contacts":
-					if (slave.eyes > -1) {
-						if (slave.eyewear != "blurring contacts") {
-							slave.eyewear = "blurring contacts";
-							V.cash -= V.modCost;
-							r += `<br>${slave.slaveName} has been given blurring contacts.`;
-						}
-					} else {
-						if (slave.eyewear != "none") {
-							slave.eyewear = "none";
-							r += `<br>${slave.slaveName}'s eyewear has been removed.`;
-						}
-					}
-					break;
+	class BodyModSection extends Section {
+		constructor() {
+			super("Body Mod Settings", true);
+			this.appendChild(new EarPiercingList());
+			this.appendChild(new NosePiercingList());
+			this.appendChild(new EyebrowPiercingList());
+			this.appendChild(new NavelPiercingList());
+			this.appendChild(new NipplePiercingList());
+			this.appendChild(new AreolaPiercingList());
+			this.appendChild(new LipPiercingList());
+			this.appendChild(new TonguePiercingList());
+			this.appendChild(new ClitPiercingList());
+			this.appendChild(new LabiaPiercingList());
+			this.appendChild(new ShaftPiercingList());
+			this.appendChild(new PerineumPiercingList());
+			this.appendChild(new CorsetPiercingList());
 
-				case "universal glasses":
-					if (slave.eyes == -1) {
-						if (slave.eyewear != "corrective glasses") {
-							slave.eyewear = "corrective glasses";
-							V.cash -= V.modCost;
-							r += `<br>${slave.slaveName} has been given corrective glasses.`;
-						}
-					} else {
-						if (slave.eyewear != "glasses") {
-							slave.eyewear = "glasses";
-							V.cash -= V.modCost;
-							r += `<br>${slave.slaveName} has been given decorative glasses.`;
-						}
-					}
-					break;
+			this.appendChild(new AutoBrandingList());
+			this.appendChild(new BrandingLocationList());
+			this.appendChild(new BrandDesignList());
 
-				default:
-					if (slave.eyewear != "none") {
-						slave.eyewear = "none";
-						r += `<br>${slave.slaveName}'s eyewear has been removed.`;
-					}
-					break;
-			}
+			this.appendChild(new FaceTattooList());
+			this.appendChild(new ShoulderTattooList());
+			this.appendChild(new ChestTattooList());
+			this.appendChild(new ArmTattooList());
+			this.appendChild(new UpperBackTattooList());
+			this.appendChild(new LowerBackTattooList());
+			this.appendChild(new AbdomenTattooList());
+			if (V.seeDicks || V.makeDicks)
+				this.appendChild(new DickTattooList());
+			this.appendChild(new ButtockTattooList());
+			this.appendChild(new AnalTattooList());
+			this.appendChild(new LegTattooList());
 		}
 	}
 
-	function ProcessDildos(slave, rule) {
-		// apply vaginal dildos to slave
-		if (slave.vagina === 0)
-			ProcessVVirginDildos(slave, rule);
-		else if ((slave.vagina > 0) && (slave.anus === 0))
-			ProcessAVirginDildos(slave, rule);
-		else if (slave.vagina > 0)
-			ProcessNonVirginDildos(slave, rule);
+	class AutosurgerySection extends Section {
+		constructor() {
+			super("Autosurgery Settings", true);
+			this.appendChild(new VisionSurgeryList());
+			this.appendChild(new LactationSurgeryList());
+			if (V.seeDicks || V.makeDicks) {
+				this.appendChild(new SemenSurgeryList());
+				this.appendChild(new VasectomyList());
+			}
+			this.appendChild(new CosmeticSurgeryList());
+			this.appendChild(new LipSurgeryList());
+			this.appendChild(new ButtSurgeryList());
+			this.appendChild(new BreastSurgeryList());
+			this.appendChild(new TighteningSurgeryList());
+			this.appendChild(new BodyHairSurgeryList());
+			this.appendChild(new HairSurgeryList());
+			if (V.bellyImplants > 0)
+				this.appendChild(new BellyImplantList());
+		}
 	}
 
-	function ProcessVVirginDildos(slave, rule) {
-		// apply vaginal dildos to varginal virgins
-		if ((rule.virginAccessory !== undefined) && (rule.virginAccessory !== "no default setting")) {
-			if (slave.vaginalAccessory !== rule.virginAccessory) {
-				slave.vaginalAccessory = rule.virginAccessory;
-				switch (slave.vaginalAccessory) {
-					case "huge dildo":
-						r += `<br>${slave.slaveName} is a virgin and has been given a`;
-						if (slave.vagina >= 2)
-							r += `massive dildo to permanently gape her cunt.`;
-						else {
-							r += `large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
-							slave.vaginalAccessory = "large dildo";
-						}
-						break;
-
-					case "long dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length dildo for her pussy.`;
-							slave.vaginalAccessory = "dildo";
-						}
-						break;
-
-					case "long, large dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
-							slave.vaginalAccessory = "large dildo";
-						}
-						break;
+	class ClothesList extends List {
+		constructor() {
+			const items = [
+				["Select her own outfit", "choosing her own clothes"]
+			];
+			super("Clothes", items);
 
-					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
-							slave.vaginalAccessory = "huge dildo";
-						} else {
-							r += `<br>slave.slaveName is a virgin and has been given a`;
-							if (slave.vagina >= 2)
-								r += `massive and oversized dildo to permanently gape her cunt.`;
-							else {
-								r += `long, large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
-								slave.vaginalAccessory = "long, large dildo";
-							}
-						}
-						break;
+			const nclothes = [
+				["No default clothes setting", "no default setting"],
+				["Apron", "an apron"],
+				["Bangles", "slutty jewelry"],
+				["Bodysuit", "a comfortable bodysuit"],
+				["Cheerleader outfit", "a cheerleader outfit"],
+				["Clubslut netting", "clubslut netting"],
+				["Cybersuit", "a cybersuit"],
+				["Cutoffs and a t-shirt", "cutoffs and a t-shirt"],
+				["Fallen nun", "a fallen nuns habit"],
+				["Halter top", "a halter top dress"],
+				["Hijab and abaya", "a hijab and abaya"],
+				["Latex catsuit", "a latex catsuit"],
+				["Leotard", "a leotard"],
+				["Long Qipao", "a long qipao"],
+				["Lederhosen", "lederhosen"],
+				["Battlearmor", "battlearmor"],
+				["Mounty outfit", "a mounty outfit"],
+				["Dirndl", "a dirndl"],
+				["Biyelgee costume", "a biyelgee costume"],
+				["Maid (nice)", "a nice maid outfit"],
+				["Maid (slutty)", "a slutty maid outfit"],
+				["Military uniform", "a military uniform"],
+				["Schutzstaffel uniform", "a schutzstaffel uniform"],
+				["Schutzstaffel uniform (slutty)", "a slutty schutzstaffel uniform"],
+				["Red Army uniform", "a red army uniform"],
+				["Mini dress", "a mini dress"],
+				["Monokini", "a monokini"],
+				["Nice lingerie", "attractive lingerie"],
+				["Nurse (nice)", "a nice nurse outfit"],
+				["Schoolgirl", "a schoolgirl outfit"],
+				["Silken ballgown", "a ball gown"],
+				["Skimpy battledress", "battledress"],
+				["Slave gown", "a slave gown"],
+				["Slutty outfit", "a slutty outfit"],
+				["String bikini", "a string bikini"],
+				["Scalemail bikini", "a scalemail bikini"],
+				["Succubus costume", "a succubus outfit"],
+				["Suit (nice)", "nice business sattire"],
+				["Suit (slutty", "slutty business attire"],
+				["Spats and tank top", "spats and a tank top"]
+			];
+			const fsnclothes = [
+				["Body oil (FS)", "body oil"],
+				["Bunny outfit (FS)", "a bunny outfit"],
+				["Chattel habit (FS)", "a chattel habit"],
+				["Conservative clothing (FS)", "conservative clothing"],
+				["Harem gauze (FS)", "harem gauze"],
+				["Huipil (FS)", "a huipil"],
+				["Kimono (FS)", "a kimono"],
+				["Maternity dress (FS)", "a maternity dress"],
+				["Maternity lingerie (FS)", "attractive lingerie for a pregnant woman"],
+				["Slutty qipao (FS)", "a slutty qipao"],
+				["Stretch pants and a crop-top (FS)", "stretch pants and a crop-top"],
+				["Toga (FS)", "a toga"],
+				["Western clothing (FS)", "Western clothing"],
+			];
+			fsnclothes.forEach(pair => { if (isItemAccessible(pair[1])) nclothes.push(pair); });
+			const nice = new ListSubSection(this, "Nice", nclothes);
+			this.appendChild(nice);
 
-					case "none":
-						r += `<br>${slave.slaveName} is a virgin and has been instructed not to use a vaginal accessory.`;
-						break;
+			const hclothes = [
+				["Nude", "no clothing"],
+				["Penitent nun", "a penitent nuns habit"],
+				["Restrictive latex", "restrictive latex"],
+				["Shibari ropes", "shibari ropes"],
+				["Uncomfortable straps", "uncomfortable straps"]
+			];
+			const fshclothes = [
+				["Chains (FS)", "chains"],
+			];
+			fshclothes.forEach(pair => { if (isItemAccessible(pair[1])) hclothes.push(pair); });
 
-					default:
-						r += `<br>${slave.slaveName} is a virgin and has been given a ${slave.vaginalAccessory} for her pussy.`;
-						break;
-				}
-			}
+			const harsh = new ListSubSection(this, "Harsh", hclothes);
+			this.appendChild(harsh);
+
+			this.setValue(current_rule.set.clothes);
+			this.onchange = (value) => current_rule.set.clothes = value;
 		}
 	}
 
-	function ProcessAVirginDildos(slave, rule) {
-		// apply vaginal dildos to anal virgins
-		if ((rule.aVirginAccessory !== undefined) && (rule.aVirginAccessory !== "no default setting")) {
-			if (slave.vaginalAccessory !== rule.aVirginAccessory) {
-				slave.vaginalAccessory = rule.aVirginAccessory;
-				switch (slave.vaginalAccessory) {
-					case "huge dildo":
-						r += `<br>${slave.slaveName} is a virgin and has been given a`;
-						if (slave.vagina >= 2)
-							r += `massive dildo to permanently gape her cunt.`;
-						else {
-							r += `large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
-							slave.vaginalAccessory = "large dildo";
-						}
-						break;
-
-					case "long dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length dildo for her pussy.`;
-							slave.vaginalAccessory = "dildo";
-						}
-						break;
-
-					case "long, large dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
-							slave.vaginalAccessory = "large dildo";
-						}
-						break;
+	class CollarList extends List {
+		constructor() {
+			const items = [
+				["No default collar setting", "no default setting"],
+				["No collar", "none"],
+			];
+			super("Collar", items);
 
-					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
-							slave.vaginalAccessory = "huge dildo";
-						} else {
-							r += `<br>${slave.slaveName} is a virgin and has been given a`;
-							if (slave.vagina >= 2)
-								r += `massive and oversized dildo to permanently gape her cunt.`;
-							else {
-								r += `long, large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
-								slave.vaginalAccessory = "long, large dildo";
-							}
-						}
-						break;
+			const ncollars = [
+				["Stylish leather", "stylish leather"],
+				["Satin choker", "satin choker"],
+				["Silken Ribbon", "silk ribbon"],
+				["Heavy Gold", "heavy gold"],
+				["Pretty jewelry", "pretty jewelry"],
+				["Cowbell", "leather with cowbell"]
+			];
+			if (V.seeAge !== 0)
+				ncollars.push(["Nice retirement counter", "nice retirement counter"]);
+			const fsncollars = [
+				["Bowtie collar", "bowtie"],
+				["ancient Egyptian", "ancient Egyptian"],
+			];
+			fsncollars.forEach(pair => { if (isItemAccessible(pair[1])) ncollars.push(pair); });
+			const nice = new ListSubSection(this, "Nice", ncollars);
+			this.appendChild(nice);
 
-					case "none":
-						r += `<br>slave.slaveName is a virgin and has been instructed not to use a vaginal accessory.`;
-						break;
+			const hcollars = [];
+			setup.harshCollars.forEach(item => {
+				if (item.fs === "seeage" && V.seeAge === 0) return;
+				else if (item.rs === "buyGag" && V.toysBoughtGags !== 1) return;
+				else hcollars.push([item.name, item.value]);
+			});
+			const harsh = new ListSubSection(this, "Harsh", hcollars);
+			this.appendChild(harsh);
 
-					default:
-						r += `<br>slave.slaveName is a virgin and has been given a slave.vaginalAccessory for her pussy.`;
-						break;
-				}
-			}
+			this.setValue(current_rule.set.collar);
+			this.onchange = (value) => current_rule.set.collar = value;
 		}
 	}
 
-	function ProcessNonVirginDildos(slave, rule) {
-		// apply vaginal dildos to non-virgins
-		if ((rule.vaginalAccessory !== undefined) && (rule.vaginalAccessory !== "no default setting")) {
-			if (slave.vaginalAccessory !== rule.vaginalAccessory) {
-				slave.vaginalAccessory = rule.vaginalAccessory;
-				switch (slave.vaginalAccessory) {
-					case "huge dildo":
-						r += `<br>${slave.slaveName} has been given a`;
-						if (slave.vagina >= 2)
-							r += `massive dildo to permanently gape her cunt.`;
-						else {
-							r += `large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
-							slave.vaginalAccessory = "large dildo";
-						}
-						break;
-
-					case "long dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length dildo for her pussy.`;
-							slave.vaginalAccessory = "dildo";
-						}
-						break;
-
-					case "long, large dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
-							slave.vaginalAccessory = "large dildo";
-						}
-						break;
-
-					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
-							slave.vaginalAccessory = "huge dildo";
-						} else {
-							r += `<br>${slave.slaveName} has been given a`;
-							if (slave.vagina >= 2)
-								r += `massive and oversized dildo to permanently gape her cunt.`;
-							else {
-								r += `long, large dildo for her pussy, since it must be stretched before it can accommodate a huge one.`;
-								slave.vaginalAccessory = "long, large dildo";
-							}
-						}
-						break;
-					case "none":
-						r += `<br>${slave.slaveName} has been instructed not to use a vaginal accessory.`;
-						break;
+	class ShoeList extends List {
+		constructor() {
+			super("Shoes", setup.shoes.map(i => [i.name, i.value]));
+			this.setValue(current_rule.set.shoes);
+			this.onchange = (value) => current_rule.set.shoes = value;
+		}
+	}
 
-					default:
-						r += `<br>${slave.slaveName} has been given a slave.vaginalAccessory for her pussy.`;
-						break;
-				}
-			}
+	class CorsetList extends List {
+		constructor() {
+			const bellies = [];
+			setup.bellyAccessories.forEach(acc => {
+				if (acc.fs === undefined && acc.rs === undefined)
+					bellies.push([acc.name, acc.value]);
+				else if (acc.fs === "repopulation" && V.arcologies[0].FSRepopulationFocus !== "unset")
+					bellies.push([acc.name + " (FS)", acc.value]);
+				else if (acc.rs === "boughtBelly" && V.clothesBoughtBelly === 1)
+					bellies.push([acc.name + " (Purchased)", acc.value]);
+			});
+			super("Corsetage", bellies);
+			this.setValue(current_rule.set.bellyAccessory);
+			this.onchange = (value) => current_rule.set.bellyAccessory = value;
 		}
 	}
 
-	function ProcessDickAccessories(slave, rule) {
-		// apply dick accessories to slave
-		if ((slave.dick > 0)) {
-			if (slave.anus === 0) {
-				if ((rule.aVirginDickAccessory !== undefined) && (rule.aVirginDickAccessory !== "no default setting")) {
-					if ((slave.dickAccessory !== rule.aVirginDickAccessory)) {
-						slave.dickAccessory = rule.aVirginDickAccessory;
-						if (slave.dickAccessory == "none")
-							r += `<br>${slave.slaveName} is a virgin and has been instructed not to wear a dick accessory.`;
-						else
-							r += `<br>${slave.slaveName} is a virgin and has been given a ${slave.dickAccessory} accessory for her cock.`;
-					}
-				}
-			} else {
-				if ((rule.dickAccessory !== undefined) && (rule.dickAccessory !== "no default setting")) {
-					if ((slave.dickAccessory !== rule.dickAccessory)) {
-						slave.dickAccessory = rule.dickAccessory;
-						if (slave.dickAccessory == "none")
-							r += `<br>${slave.slaveName} has been instructed not to wear a dick accessory.`;
-						else
-							r += `<br>${slave.slaveName} has been given a ${slave.dickAccessory} accessory for her cock.`;
-					}
-				}
-			}
+	class LeggingsList extends List {
+		constructor() {
+			const items = [
+				["no default settings"],
+				["none"],
+				["short stockings"],
+				["long stockings"],
+			];
+			super("Leg accessory", items);
+			this.setValue(current_rule.set.legAccessory);
+			this.onchange = (value) => current_rule.set.legAccessory = value;
 		}
 	}
 
-	function ProcessShoes(slave, rule) {
-		// apply shoes to slave
-		if ((rule.shoes !== undefined) && (rule.shoes !== "no default setting")) {
-			if ((slave.shoes !== rule.shoes)) {
-				if ((slave.amp != 1)) {
-					slave.shoes = rule.shoes;
-					r += `<br>${slave.slaveName}'s shoes have been set to ${slave.shoes}.`;
-				}
-			}
+	class VagAccVirginsList extends List {
+		constructor() {
+			const accs = [];
+			setup.vaginalAccessories.forEach(acc => {
+				if (acc.fs === undefined && acc.rs === undefined)
+					accs.push([acc.name, acc.value]);
+				else if (acc.rs === "buyBigDildos" && V.toysBoughtDildos === 1)
+					accs.push([acc.name + " (Purchased)", acc.value]);
+			});
+			super("Vaginal accessories for virgins", accs);
+			this.setValue(current_rule.set.virginAccessory);
+			this.onchange = (value) => current_rule.set.virginAccessory = value;
 		}
 	}
 
-	function ProcessBellyAccessories(slave, rule) {
-		// apply belly accessories to slave
-		if ((rule.bellyAccessory !== undefined) && (rule.bellyAccessory !== "no default setting")) {
-			if ((slave.bellyAccessory !== rule.bellyAccessory)) {
-				if ((slave.belly >= 1500 || slave.weight >= 130) && setup.fakeBellies.includes(rule.bellyAccessory)) {
-					r += `<br>${slave.slaveName}'s natural belly is too big to properly wear an empathy belly.`;
-					slave.bellyAccessory = "none";
-				} else {
-					slave.bellyAccessory = rule.bellyAccessory;
-					if (slave.bellyAccessory == "none")
-						r += `<br>${slave.slaveName} has been instructed not to wear a torso accessory.`;
-					else
-						r += `<br>${slave.slaveName} has been given ${slave.bellyAccessory} to wear.`;
-				}
-			}
+	class VagAccAVirginsList extends List {
+		constructor() {
+			const accs = [];
+			setup.vaginalAccessories.forEach(acc => {
+				if (acc.fs === undefined && acc.rs === undefined)
+					accs.push([acc.name, acc.value]);
+				else if (acc.rs === "buyBigDildos" && V.toysBoughtDildos === 1)
+					accs.push([acc.name + " (Purchased)", acc.value]);
+			});
+			super("Vaginal accessories for anal virgins", accs);
+			this.setValue(current_rule.set.aVirginAccessory);
+			this.onchange = (value) => current_rule.set.aVirginAccessory = value;
 		}
 	}
 
-	function ProcessLegAccessory(slave, rule) {
-		if (rule.legAccessory !== undefined && rule.legAccessory !== "no default setting" && slave.amp !== 1 && slave.legAccessory !== rule.legAccessory) {
-			slave.legAccessory = rule.legAccessory;
-			r += `<br>${slave.slaveName}'s leg accessory was set to ${rule.legAccessory}.`;
+	class VagAccOtherList extends List {
+		constructor() {
+			const accs = [];
+			setup.vaginalAccessories.forEach(acc => {
+				if (acc.fs === undefined && acc.rs === undefined)
+					accs.push([acc.name, acc.value]);
+				else if (acc.rs === "buyBigDildos" && V.toysBoughtDildos === 1)
+					accs.push([acc.name + " (Purchased)", acc.value]);
+			});
+			super("Vaginal accessories for other slaves", accs);
+			this.setValue(current_rule.set.vaginalAccessory);
+			this.onchange = (value) => current_rule.set.vaginalAccessory = value;
 		}
 	}
 
-	function ProcessAnalAccessories(slave, rule) {
-		// apply buttplugs to slave
-		if ((slave.vaginalAccessory !== "anal chastity") && (slave.vaginalAccessory !== "combined chastity") && (slave.dickAccessory !== "anal chastity") && (slave.dickAccessory !== "combined chastity")) {
-			if (slave.anus === 0)
-				ProcessAnalVirginButtplugs(slave, rule);
-			else
-				ProcessNonVirginButtplugs(slave, rule);
+	class DickAccVirginsList extends List {
+		constructor() {
+			super("Dick accessories for anal virgins", setup.dickAccessories.map(i => [i.name, i.value]));
+			this.setValue(current_rule.set.aVirginDickAccessory);
+			this.onchange = (value) => current_rule.set.aVirginDickAccessory = value;
 		}
 	}
 
-	function ProcessAnalVirginButtplugs(slave, rule) {
-		// apply buttplugs to virgins
-		if ((rule.aVirginButtplug !== undefined) && (rule.aVirginButtplug !== "no default setting")) {
-			if ((slave.buttplug !== rule.aVirginButtplug)) {
-				slave.buttplug = rule.aVirginButtplug;
-				switch (slave.buttplug) {
-					case "huge plug":
-						r += `<br>${slave.slaveName} is an anal virgin and has been given a`;
-						if ((slave.anus >= 2))
-							r += `massive plug to permanently gape her asshole.`;
-						else {
-							slave.buttplug = "large plug";
-							r += `large buttplug for her asshole, since it must be stretched before it can accommodate a huge one.`;
-						}
-						break;
-
-					case "long plug":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length plug for her anus.`;
-							slave.buttplug = "plug";
-						}
-						break;
-
-					case "long, large plug":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length large plug for her anus.`;
-							slave.buttplug = "large plug";
-						}
-						break;
-
-					case "long, huge plug":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length huge plug for her anus.`;
-							slave.buttplug = "huge plug";
-						} else {
-							r += `<br>slave.slaveName is an anal virgin and has been given a`;
-							if (slave.anus >= 2)
-								r += `massive and oversized plug to permanently gape her asshole.`;
-							else {
-								r += `long, large buttplug for her asshole, since it must be stretched before it can accommodate a huge one.`;
-								slave.buttplug = "long, large plug";
-							}
-						}
-						break;
-
-					case "none":
-						r += `<br>${slave.slaveName} is an anal virgin and has been instructed not to use an anal accessory.`;
-						break;
-
-					default:
-						r += `<br>${slave.slaveName} is an anal virgin and has been given a slave.buttplug for her asshole.`;
-						break;
-				}
-			}
+	class DickAccOtherList extends List {
+		constructor() {
+			super("Dick accessories for other slaves", setup.dickAccessories.map(i => [i.name, i.value]));
+			this.setValue(current_rule.set.dickAccessory);
+			this.onchange = (value) => current_rule.set.dickAccessory = value;
 		}
 	}
 
-	function ProcessNonVirginButtplugs(slave, rule) {
-		// apply buttplugs to non-virgins
-		if ((rule.buttplug !== undefined) && (rule.buttplug !== "no default setting")) {
-			if ((slave.buttplug !== rule.buttplug)) {
-				slave.buttplug = rule.buttplug;
-				switch (slave.buttplug) {
-					case "huge plug":
-						r += `<br>${slave.slaveName} has been given a`;
-						if ((slave.anus >= 2))
-							r += `massive plug to permanently gape her asshole.`;
-						else {
-							slave.buttplug = "large plug";
-							r += `large buttplug for her asshole, since it must be stretched before it can accommodate a huge one.`;
-						}
-						break;
-
-					case "long plug":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length plug for her anus.`;
-							slave.buttplug = "plug";
-						}
-						break;
-						
-					case "long, large plug":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length large plug for her anus.`;
-							slave.buttplug = "large plug";
-						}
-						break;
-
-					case "long, huge plug":
-						if (slave.breedingMark == 1) {
-							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length huge plug for her anus.`;
-							slave.buttplug = "huge plug";
-						} else {
-							r += `<br>${slave.slaveName} has been given a`;
-							if (slave.anus >= 2)
-								r += `massive and oversized plug to permanently gape her asshole.`;
-							else {
-								r += `long, large buttplug for her asshole, since it must be stretched before it can accommodate a huge one.`;
-								slave.buttplug = "long, large plug";
-							}
-						}
-						break;
-
-					case "none":
-						r += `<br>${slave.slaveName} has been instructed not to use an anal accessory.`;
-						break;
-
-					default:
-						r += `<br>${slave.slaveName} has been given a slave.buttplug for her asshole.`;
-						break;
-				}
-			}
+	class ButtplugsVirginsList extends List {
+		constructor() {
+			const accs = [];
+			setup.buttplugs.forEach(acc => {
+				if (acc.fs === undefined && acc.rs === undefined)
+					accs.push([acc.name, acc.value]);
+				else if (acc.rs === "buyBigPlugs" && V.toysBoughtButtPlugs === 1)
+					accs.push([acc.name + " (Purchased)", acc.value]);
+			});
+			super("Buttplugs for anal virgins", accs);
+			this.setValue(current_rule.set.aVirginButtplug);
+			this.onchange = (value) => current_rule.set.aVirginButtplug = value;
 		}
 	}
 
-	function ProcessBellyImplant(slave, rule) {
-		// Here is belly implant size control, it's used in Surgery Degradation passage to setup devotion and trust changes.
-		// silent calls to surgery degradation have been replaced with a js function, which is less hacky
-		if ((rule.bellyImplantVol !== undefined) && slave.bellyImplant >= 0 && rule.bellyImplantVol >= 0) {
-			r += "<br>";
-			if (slave.health > -10 ) {
-				let diff = rule.bellyImplantVol - slave.bellyImplant;
-				if (diff >= 5000 && slave.bellyPain === 0 && slave.health > 50) {
-					r += `${slave.slaveName}'s belly is way too small, so she has been directed to have intensive belly implant filling procedures throughout this week.`;
-					slave.bellyImplant += 1000;
-					slave.bellyPain += 2;
-					BellySurgery(slave, diff);
-				} else if (diff >= 500 && slave.bellyPain < 2 ) {
-					r += `${slave.slaveName}'s belly has not reached the desired size, so she has been directed to have belly implant filling procedures throughout this week.`;
-					slave.bellyImplant += 500;
-					slave.bellyPain += 1;
-					BellySurgery(slave, diff);
-				} else if (diff <= -5000 ) {
-					r += `${slave.slaveName}'s belly is way too big, so she has been directed to have intensive belly implant draining procedures throughout this week.`;
-					slave.bellyImplant -= 1000;
-					BellySurgery(slave, diff);
-				} else if (diff <= -500 ) {
-					r += `${slave.slaveName}'s belly is too big, so she has been directed to have belly implant draining procedures throughout this week.`;
-					slave.bellyImplant -= 500;
-					BellySurgery(slave, diff);
-				}
-			} else {
-				r += `${slave.slaveName} is not healthy enough to safely adjust her belly implant.`;
-			}
+	class ButtplugsOtherList extends List {
+		constructor() {
+			const accs = [];
+			setup.buttplugs.forEach(acc => {
+				if (acc.fs === undefined && acc.rs === undefined)
+					accs.push([acc.name, acc.value]);
+				else if (acc.rs === "buyBigPlugs" && V.toysBoughtButtPlugs === 1)
+					accs.push([acc.name + " (Purchased)", acc.value]);
+			});
+			super("Buttplugs for other slaves", accs);
+			this.setValue(current_rule.set.buttplug);
+			this.onchange = (value) => current_rule.set.buttplug = value;
 		}
 	}
 
-	function BellySurgery(slave, volume) {
-		// this is a port of the belly implant portion of surgeryDegradation.tw
-		// that way, we don't have to use ugly hacks
-		// the original still exists, and may be worth replacing
-		if (volume > 0) { // bellyUp
-			SetBellySize(slave);
-			if (slave.bellyPain === 1) {
-				if (slave.devotion > 50) {
-					slave.devotion += 4;
-				} else if (slave.devotion >= -20) {
-					slave.trust -= 5;
-				} else {
-					slave.trust -= 10;
-					slave.devotion -= 5;
-				}
-			} else if (slave.bellyPain === 2) {
-				if (slave.devotion > 50) {
-					slave.devotion += 2;
-				} else if (slave.devotion >= -20) {
-					slave.trust -= 7;
-				} else {
-					slave.trust -= 12;
-					slave.devotion -= 7;
-				}
-			}
-		} else { // bellyDown
-			if (slave.bellyImplant < 0)
-				slave.bellyImplant = 0;
-			SetBellySize(slave);
-			if (slave.devotion > 50) {
-				slave.devotion += 3;
-				slave.trust += 3;
-			} else if (slave.devotion >= -20) {
-				slave.trust += 2;
-			} else {
-				slave.devotion += 1;
-				slave.trust -= 10;
-			}
+	class ImplantVolumeList extends List {
+		constructor() {
+			const pairs = [
+				["No changes", -1],
+				["Empty implant", 0],
+				["Early pregnancy", 1500],
+				["Second trimester pregnancy", 5000],
+				["Full-term pregnancy", 15000],
+				["Full-term with twins", 30000],
+				["Full-term with triplets", 45000],
+				["Full-term with quadruplets", 60000],
+				["Full-term with quintuplets", 75000],
+				["Full-term with sextuplets", 90000],
+				["Full-term with septuplets", 105000],
+				["Full-term with octuplets", 120000]
+			];
+			super("Belly implant target volume (if present)", pairs);
+			this.setValue(current_rule.set.bellyImplantVol);
+			this.onchange = (value) => current_rule.set.bellyImplantVol = value;
 		}
 	}
 
-	function ProcessContraceptives(slave, rule) {
-		if ((rule.preg !== undefined) && (rule.preg !== "no default setting")) {
-			if (rule.preg === true && slave.preg === 0) {
-				r += `<br>${slave.slaveName} is being given contraceptives.`;
-				slave.preg = -1;
-			} else if (slave.preg === -1 && rule.preg === false) {
-				r += `<br>${slave.slaveName} is no longer being put on contraceptives.`;
-				slave.preg = 0;
-			}
+	class AutosurgerySwitch extends List {
+		constructor() {
+			const pairs = [
+				["Activate", 1],
+				["Off", 0],
+			];
+			super("Assistant-applied implants (Autosurgery global switch)", pairs);
+			this.setValue(current_rule.set.autoSurgery);
+			this.onchange = (value) => current_rule.set.autoSurgery = value;
 		}
 	}
 
-	function ProcessAssetGrowthDrugs(slave, rule) {
-		// Asset Growth 
-		const growth_drugs = new Set(["breast injections", "intensive breast injections", "breast redistributors", "butt injections", "intensive butt injections", "butt redistributors", "lip injections", "lip atrophiers", "penis enhancement", "intensive penis enhancement", "penis atrophiers", "testicle enhancement", "intensive testicle enhancement", "testicle atrophiers", "hyper breast injections", "hyper butt injections", "hyper penis enhancement", "hyper testicle enhancement"]);
-		if ((slave.drugs == "super fertility drugs" || slave.drugs == "fertility drugs") && isFertile(slave)) {
-			r += `<br>${slave.slaveName} is on ${slave.drugs} and will not be considered for drug enhancement until that regime is complete.`;
-			return;
-		} else if ((rule.growth_boobs == "no default setting" && rule.growth_butt == "no default setting" && rule.growth_lips == "no default setting" && rule.growth_dick == "no default setting" && rule.growth_dick == "no default setting" && rule.growth_balls == "no default setting")) {
-			return;
-		}
-		if (slave.assignmentVisible) { // More resource intensive version with prioritizing. Possible to give this a toggle rather than basing it on visibility. 
-			let _priorities = [];
-			if (rule.growth_boobs != "no default setting") {
-				let _priority;
-				if (slave.boobs < rule.growth_boobs) {
-					_priority = {drug: "breast injections", weight: (rule.growth_boobs-slave.boobs)/rule.growth_boobs};
-					_priorities.push(_priority);
-				} else if ((slave.boobs > rule.growth_boobs+200) && slave.weight < 100 && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
-					_priority = {
-						drug: "breast redistributors",
-						weight: (1+((slave.boobs-slave.boobsImplant-rule.growth_boobs)/rule.growth_boobs)) };
-					_priorities.push(_priority);
-				}
-			}
-			if (rule.growth_butt != "no default setting") {
-				let _priority;
-				if (slave.butt < rule.growth_butt) {
-					_priority = {drug: "butt injections", weight: (rule.growth_butt-slave.butt)/rule.growth_butt};
-					_priorities.push(_priority);
-				} else if ((Math.trunc(slave.butt) > rule.growth_butt) && slave.weight < 100 && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
-					_priority = {
-						drug: "butt redistributors",
-						weight: (1+((slave.butt-slave.buttImplant-rule.growth_butt)/rule.growth_butt)) };
-					_priorities.push(_priority);
-				}
-			}
-			if (rule.growth_lips != "no default setting") {
-				let _priority;
-				if (slave.lips < rule.growth_lips) {
-					_priority = {drug: "lip injections", weight: (rule.growth_lips-slave.lips)/rule.growth_lips};
-					_priorities.push(_priority);
-				} else if ((slave.lips > rule.growth_lips) && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
-					_priority = {
-						drug: "lip atrophiers",
-						weight: (1+((slave.lips-slave.lipsImplant-rule.growth_lips)/rule.growth_lips))};
-					_priorities.push(_priority);
-				}
-			}
-			if (rule.growth_dick != "no default setting" && slave.dick) {
-				let _priority;
-				if (slave.dick < rule.growth_dick) {
-					_priority = {drug: "penis enhancement", weight: (rule.growth_dick-slave.dick)/rule.growth_dick};
-					_priorities.push(_priority);
-				} else if ((slave.dick > rule.growth_dick) && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
-					_priority = {
-						drug: "penis atrophiers",
-						weight: (1+((slave.dick-rule.growth_dick)/rule.growth_dick))};
-					_priorities.push(_priority);
-				}
-			}
-			if (rule.growth_balls != "no default setting" && slave.balls) {
-				let _priority;
-				if (slave.balls < rule.growth_balls) {
-					_priority = {drug: "testicle enhancement", weight: (rule.growth_balls-slave.balls)/rule.growth_balls};
-					_priorities.push(_priority);
-				} else if ((slave.balls > rule.growth_balls) && (V.arcologies[0].FSSlimnessEnthusiastResearch == 1)) {
-					_priority = {
-						drug: "testicle atrophiers",
-						weight: (1+((slave.balls-rule.growth_balls)/rule.growth_balls))};
-					_priorities.push(_priority);
-				}
-			}
-			if (_priorities.length > 1) {
-				_priorities = _priorities.sort(function(a, b){if(a.weight > b.weight) return -1; if(a.weight < b.weight) return 1; return 0;});
-				if (slave.drugs != _priorities[0].drug) {
-					slave.drugs = _priorities[0].drug;
-					r += `<br>${slave.slaveName} has been put on `;
-					if (rule.growth_intensity && slave.drugs != "lip injections" && slave.health > 0) {
-						slave.drugs = "intensive " + slave.drugs;
-						r += `${slave.drugs}, since she's healthy enough to take them, and `;
-					} else {
-						r += `${slave.drugs}, since `;
-					}
-					r += `that part of her body is ${Math.trunc(_priorities[0].weight*100)}% `;
-					if (_priorities[0].weight < 1) r+= "below ";
-					else r+= "above ";
-					r += "the targeted size.";
-				}
-				return;
-			} else if (_priorities.length > 0) {
-				if (slave.drugs != _priorities[0].drug) {
-					slave.drugs = _priorities[0].drug;
-					r += `<br>${slave.slaveName} has been put on `;
-					if (rule.growth_intensity && slave.drugs != "lip injections" && slave.health > 0) {
-						slave.drugs = "intensive " + slave.drugs;
-						r += `${slave.drugs}, since she's healthy enough to take them, and `;
-					} else
-						r += `${slave.drugs}, since `;
-					r += `that is the only part of her body that does not meet the targeted size.`;
-				}
-				return;
-			} else if (growth_drugs.has(slave.drugs)) {
-				slave.drugs = "no drugs";
-				r += `<br>${slave.slaveName}'s body has met all relevant growth targets, so her pharmaceutical regime has been ended.`;
-				return;
-			}
-		} else {
-			let _hyper;
-			if (V.arcologies[0].FSAssetExpansionistResearch == 1)
-				_hyper = "hyper ";
-			else
-				_hyper = "";
-			if (rule.growth_boobs != "no default setting") {
-				if (slave.boobs < rule.growth_boobs) {
-					if (slave.drugs != _hyper + "breast injections") {
-						slave.drugs = _hyper + "breast injections";
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					}
-					return;
-				}
-			}
-			if (rule.growth_butt != "no default setting") {
-				if (slave.butt < rule.growth_butt) {
-					if (slave.drugs != _hyper + "butt injections") {
-						slave.drugs = _hyper + "butt injections";
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					}
-					return;
-				}
-			}
-			if (rule.growth_lips != "no default setting") {
-				if (slave.lips < rule.growth_lips) {
-					if (slave.drugs != "lip injections") {
-						slave.drugs = "lip injections";
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					}
-					return;
-				}
-			}
-			if (rule.growth_dick != "no default setting" && slave.dick) {
-				if (slave.dick < rule.growth_dick) {
-					if (slave.drugs != _hyper + "penis enhancement") {
-						slave.drugs = _hyper + "penis enhancement";
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					}
-					return;
-				}
-			}
-			if (rule.growth_balls != "no default setting" && slave.balls) {
-				if (slave.balls < rule.growth_balls) {
-					if (slave.drugs != _hyper + "testicle enhancement") {
-						slave.drugs = _hyper + "testicle enhancement";
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					}
-					return;
-				}
-			}
-			if (V.arcologies[0].FSSlimnessEnthusiastResearch == 1) {
-				if (rule.growth_boobs != "no default setting") {
-					if (slave.boobs-slave.boobsImplant > rule.growth_boobs+200 && slave.weight < 100) {
-						if (slave.drugs != "breast redistributors") {
-							slave.drugs = "breast redistributors";
-							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-						}
-						return;
-					}
-				}
-				if (rule.growth_butt != "no default setting") {
-					if (Math.trunc(slave.butt-slave.buttImplant) > rule.growth_butt && slave.weight < 100) {
-						if (slave.drugs != "butt redistributors") {
-							slave.drugs = "butt redistributors";
-							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-						}
-						return;
-					}
-				}
-				if (rule.growth_lips != "no default setting") {
-					if (slave.lips-slave.lipsImplant > rule.growth_lips) {
-						if (slave.drugs != "lip atrophiers") {
-							slave.drugs = "lip atrophiers";
-							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-						}
-						return;
-					}
-				}
-				if (rule.growth_dick != "no default setting" && slave.dick) {
-					if (slave.dick > rule.growth_dick) {
-						if (slave.drugs != "penis atrophiers") {
-							slave.drugs = "penis atrophiers";
-							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-						}
-						return;
-					}
-				}
-				if (rule.growth_balls != "no default setting" && slave.balls) {
-					if (slave.balls > rule.growth_balls) {
-						if (slave.drugs != "testicle atrophiers") {
-							slave.drugs = "testicle atrophiers";
-							r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-						}
-						return;
-					}
-				}
-			}
-			if (growth_drugs.has(slave.drugs)) {
-				slave.drugs = "no drugs";
-				r += `<br>${slave.slaveName} has met all relevant growth targets, so her pharmaceutical regime has been ended.`;
-				return;
+	class GrowthList extends Options {
+		constructor() {
+			super();
+			this.sublists = [];
+			const pairs = [
+				["No default setting", () => this.nds()],
+				["Girlish figure", () => this.girlish()],
+				["Stacked figure", () => this.stacked()],
+				["Huge but functional", () => this.huge()],
+				["Unlimited", () => this.unlimited()],
+				["None", () => this.none()]
+			];
+			pairs.forEach(pair => this.appendChild(new OptionsItem(...pair)));
+
+			this.breasts = new BreastGrowthList();
+			this.butts = new ButtGrowthList();
+			this.lips = new LipGrowthList();
+			this.sublists.push(this.breasts, this.butts, this.lips);
+
+			if (V.seeDicks > 0 || V.makeDicks > 0) {
+				this.dicks = new DickGrowthList();
+				this.balls = new BallGrowthList();
+				this.sublists.push(this.dicks, this.balls);
 			}
+
+			this.sublists.forEach(i => this.appendChild(i));
 		}
-	}
 
-	function ProcessOtherDrugs(slave, rule) {
-		// Other Drugs 
-		if (slave.indentureRestrictions < 2 && rule.drug !== "no default setting" && slave.drugs !== rule.drug) {
-			let flag = true;
-			switch (rule.drug) {
-			case "anti-aging cream":
-				if (slave.visualAge < 18)
-					flag = false;
-				break;
+		render() {
+			const elem = document.createElement("div");
+			const span = document.createElement("span");
+			span.innerHTML = "Growth hormone regimes for healthy slaves: ";
+			elem.appendChild(span);
+			return elem;
+		}
 
-			case "growth stimulants":
-				if (!(slave.height < 274 && slave.height < Math.clamp((Height.mean(slave) * 1.25),0,274)))
-					flag = false;
-				break;
+		nds() {
+			[this.breasts, this.butts, this.lips, this.dicks, this.balls].forEach(i => {
+				i.setValue("no default change");
+				i.propagateChange();
+			});
+		}
 
-			case "sag-B-gone":
-				if (!(slave.boobs > 250 && slave.boobShape != "saggy"))
-					flag = false;
-				break;
+		girlish() {
+			this.breasts.setValue(350);
+			this.butts.setValue(2);
+			this.lips.setValue(25);
+			if (this.dicks) this.dicks.setValue(0);
+			if (this.balls) this.balls.setValue(0);
+			this.sublists.forEach(i => i.propagateChange());
+		}
 
-			case "female hormone injections":
-				if (!(slave.breedingMark != 1 && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0))
-					flag = false;
-				break;
+		stacked() {
+			this.breasts.setValue(1000);
+			this.butts.setValue(4);
+			this.lips.setValue(25);
+			if (this.dicks) this.dicks.setValue(4);
+			if (this.balls) this.balls.setValue(4);
+			this.sublists.forEach(i => i.propagateChange());
+		}
 
-			case "male hormone injections":
-				if (!(slave.breedingMark != 1 && slave.balls > 0 && slave.pubertyXY === 0))
-					flag = false;
-				break;
-				
-			case "psychosuppressants":
-				if (!(slave.intelligence > -2 && slave.indentureRestrictions < 1))
-					flag = false;
-				break;
-			
-			case "breast injections":
-				if (!(slave.boobs < 48000))
-					flag = false;
-				break;
-			
-			case "hyper breast injections":
-				if (!(slave.boobs < 25000))
-					flag = false;
-				break;
-			
-			case "breast redistributors":
-				if (!(slave.boobs - slave.boobsImplant > 100))
-					flag = false;
-				break;
-			
-			case "butt injections":
-				if (!(slave.butt < 9))
-					flag = false;
-				break;
-			
-			case "hyper butt injections":
-				if (!(slave.butt < 20))
-					flag = false;
-				break;
-			
-			case "hyper butt injections":
-				if (!(slave.butt < 20))
-					flag = false;
-				break;
-			
-			case "nipple atrophiers":
-				if (!(["huge", "puffy", "cute"].includes(slave.nipples)))
-					flag = false;
-				break;
-				
-			case "butt redistributors":
-				if (!(slave.buttImplant > 0))
-					flag = false;
-				break;
-			
-			case "lip injections":
-				if (!(slave.lips <= 95 || (slave.lips <= 85 && V.seeExtreme !== 1)))
-					flag = false;
-				break;
-			
-			case "lip atrophiers":
-				if (!(slave.lips - slave.lipsImplant > 0))
-					flag = false;
-				break;
-			
-			case "super fertility drugs":
-				if (!(slave.indentureRestrictions < 1 && slave.breedingMark !== 1))
-					flag = false;
-				break;
-			
-			case "penis enhancement":
-				if (!((slave.dick > 0 && slave.dick < 10) || slave.clit < 5))
-					flag = false;
-				break;
-			
-			case "hyper penis enhancement":
-				if (!((slave.dick > 0 && slave.dick < 31) || slave.clit < 5))
-					flag = false;
-				break;
-				
-			case "penis atrophiers":
-				if (!(slave.dick > 1))
-					flag = false;
-				break;
-			
-			case "testicle enhancement":
-				if (!(slave.balls > 0))
-					flag = false;
-				break;
-			
-			case "hyper testicle enhancement":
-				if (!(slave.balls > 0))
-					flag = false;
-				break;
-			
-			case "testicle atrophiers":
-				if (!(slave.balls > 1))
-					flag = false;
-				break;
-			
-			case "clitoris atrophiers":
-				if (!(slave.clit > 0))
-					flag = false;
-				break;
-			
-			case "labia atrophiers":
-				if (!(slave.labia > 0))
-					flag = false;
-				break;
-			
-			case "appetite suppressors":
-				if (!(slave.weight > -95))
-					flag = false;
-				break;
-				
-			case "female hormone injections":
-				if (!(slave.breedingMark !== 1 && (slave.ovaries === 1 || slave.mpreg === 1) && slave.pubertyXX === 0))
-					flag = false;
-				break;
-			
-			case "male hormone injections":
-				if (!(slave.balls > 0 && slave.pubertyXY === 0))
-					flag = false;
-				break;
-				
-			default:
-				break;
-			}
-			if (flag) {
-				slave.drugs = rule.drug;
-				r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-			} else {
-				slave.drugs = "no drugs";
-				r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}`;
-			}
+		huge() {
+			this.breasts.setValue(9000);
+			this.butts.setValue(10);
+			this.lips.setValue(45);
+			if (this.dicks) this.dicks.setValue(6);
+			if (this.balls) this.balls.setValue(6);
+			this.sublists.forEach(i => i.propagateChange());
+		}
+
+		unlimited() {
+			this.breasts.setValue(48000);
+			this.butts.setValue(20);
+			this.lips.setValue(100);
+			if (this.dicks) this.dicks.setValue(30);
+			if (this.balls) this.balls.setValue(125);
+			this.sublists.forEach(i => i.propagateChange());
+		}
+
+		none() {
+			this.sublists.forEach(i => {
+				i.setValue(0);
+				i.propagateChange();
+			});
+		}
+	}
+
+	class BreastGrowthList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["B Cup", 350],
+				["D Cup", 1000],
+				["Monstrous", 9000],
+				["Unlimited", 48000],
+				["None", 0]
+			];
+			super("Breasts", pairs, true);
+			this.setValue(current_rule.set.growth_boobs);
+			this.onchange = (value) => current_rule.set.growth_boobs = value;
+		}
+	}
+
+	class ButtGrowthList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Cute", 2],
+				["Big", 4],
+				["Huge", 6],
+				["Unlimited", 20],
+				["None", 0]
+			];
+			super("Butts", pairs, true);
+			this.setValue(current_rule.set.growth_butt);
+			this.onchange = (value) => current_rule.set.growth_butt = value;
+		}
+	}
+
+	class LipGrowthList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Plump", 25],
+				["Beestung", 45],
+				["Facepussy", 100],
+				["None", 0]
+			];
+			super("Lips", pairs, true);
+			this.setValue(current_rule.set.growth_lips);
+			this.onchange = (value) => current_rule.set.growth_lips = value;
+		}
+	}
+
+	class DickGrowthList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Above average", 4],
+				["Pornstar", 6],
+				["Unlimited", 30],
+				["None", 0]
+			];
+			super("Dicks, if present", pairs, true);
+			this.setValue(current_rule.set.growth_dick);
+			this.onchange = (value) => current_rule.set.growth_dick = value;
 		}
 	}
 
-	function ProcessDiet(slave, rule) {
-		// Diet Setting 
-		if (rule.diet !== undefined && rule.diet !== "no default setting") {
-			/*
-			if ((slave.boobs >= 1600) && (slave.muscles <= 5) && (slave.amp != 1) && ((rule.muscles == "no default setting") || (rule.muscles === 0))) {
-				if ((slave.diet !== "muscle building")) {
-					slave.diet = "muscle building"
-					r += `<br>${slave.slaveName} has big tits and no back muscles, so she's been assigned to gain some.`
-				}
-			} else if ((slave.boobs >= 1600) && (slave.muscles > 5) && (slave.diet == "muscle building") && ((rule.muscles == "no default setting") || (rule.muscles === 0))) {
-			*/
-			if (rule.diet === "healthy" && slave.diet !== "healthy") {
-				slave.diet = "healthy";
-				r += `<br>${slave.slaveName} has been assigned to a healthy diet.`;
-			} else if ((slave.boobs >= 1600) && (slave.muscles > 5) && (slave.diet == "muscle building") && ((rule.muscles == "no default setting") || (rule.muscles === 0))) {
-				slave.diet = "healthy";
-				r += `<br>${slave.slaveName} has huge boobs, but she already has the back muscles to bear them, so she's been assigned to stop working out so hard.`;
-			} else if ((rule.dietGrowthSupport == 1) && ((slave.drugs == "breast injections") || (slave.drugs == "butt injections")) && (slave.weight <= 95)) {
-				if (slave.diet !== "fattening") {
-					slave.diet = "fattening";
-					r += `<br>${slave.slaveName} is on drugs designed to expand major body parts, so she's been put on a fattening diet to provide her body as much fuel for growth as possible.`;
-				}
-			} else {
-				if (!(isNaN(rule.diet))) {
-					if ((slave.weight - rule.diet) > 5) {
-						if ((slave.diet !== "restricted")) {
-							slave.diet = "restricted";
-							r += `<br>${slave.slaveName} is too fat so her diet has been set to restricted.`;
-						}
-						
-					} else if ((slave.weight - rule.diet) < -5) {
-						if ((slave.diet !== "fattening")) {
-							slave.diet = "fattening";
-							r += `<br>${slave.slaveName} is too skinny so her diet has been set to fattening.`;
-						}
-					} else if ((rule.muscles !== undefined) && (rule.muscles !== "no default setting") && (slave.amp != 1)) {
-						if ((slave.muscles >= rule.muscles+8)) {
-							if ((slave.diet !== "slimming")) {
-								slave.diet = "slimming";
-								r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
-							}
-						} else if ((slave.muscles <= rule.muscles-2)) {
-							if ((slave.diet !== "muscle building")) {
-								slave.diet = "muscle building";
-								r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
-							}
-						} else {
-							if ((slave.diet !== "healthy")) {
-								slave.diet = "healthy";
-								r += `<br>${slave.slaveName} is at the target weight, so her diet has been normalized.`;
-							}
-						}
-					} else {
-						if ((slave.diet !== "healthy")) {
-							slave.diet = "healthy";
-							r += `<br>${slave.slaveName} is at the target weight, so her diet has been normalized.`;
-						}
-					}
-				} else if ((rule.diet == "attractive")) {
-					if (((slave.weight > 95) || ((slave.weight > 30) && (slave.hips < 2)))) {
-						if ((slave.diet !== "restricted")) {
-							slave.diet = "restricted";
-							r += `<br>${slave.slaveName} is too fat so her diet has been set to restricted.`;
-						}
-					} else if (((slave.weight < -95) || ((slave.weight < -30) && (slave.hips > -2)))) {
-						if ((slave.diet !== "fattening")) {
-							slave.diet = "fattening";
-							r += `<br>${slave.slaveName} is too skinny so her diet has been set to fattening.`;
-						}
-					} else if ((rule.muscles !== undefined) && (rule.muscles !== "no default setting") && (slave.amp != 1)) {
-						if ((slave.muscles >= rule.muscles+8)) {
-							if ((slave.diet !== "slimming")) {
-								slave.diet = "slimming";
-								r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
-							}
-						} else if ((slave.muscles <= rule.muscles-2)) {
-							if ((slave.diet !== "muscle building")) {
-								slave.diet = "muscle building";
-								r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
-							}
-						} else {
-							if ((slave.diet !== "healthy")) {
-								slave.diet = "healthy";
-								r += `<br>${slave.slaveName} is at the target weight, so her diet has been normalized.`;
-							}
-						}
-					} else {
-						if ((slave.diet !== "healthy")) {
-							slave.diet = "healthy";
-							r += `<br>${slave.slaveName} is at the target weight, so her diet has been normalized.`;
-						}
-					}
-				} else if ((rule.diet == "XX")) {
-					if ((slave.diet !== "XX")) {
-						slave.diet = "XX";
-						r += `<br>${slave.slaveName} has been put on a diet that favors feminine development.`;
-					}
-				} else if ((rule.diet == "XY")) {
-					if ((slave.diet !== "XY")) {
-						slave.diet = "XY";
-						r += `<br>${slave.slaveName} has been put on a diet that favors masculine development.`;
-					}
-				} else if ((rule.diet == "XXY")) {
-					if (slave.balls > 0 && (slave.ovaries == 1 || slave.mpreg == 1)) {
-						if ((slave.diet !== "XXY")) {
-							slave.diet = "XXY";
-							r += `<br>${slave.slaveName} has been put on a diet that enhances a herm's unique sexuality.`;
-						}
-					} else {
-						if ((slave.diet !== "healthy")) {
-							slave.diet = "healthy";
-							r += `<br>${slave.slaveName} has been put on a standard diet since she is not a hermaphrodite.`;
-						}
-					}
-				} else if ((rule.diet == "cleansing")) {
-					if (((slave.diet !== "cleansing") && (slave.health < 100))) {
-						slave.diet = "cleansing";
-						r += `<br>${slave.slaveName} has been put on a diet of cleansers.`;
-					}
-				} else if ((rule.diet == "fertility")) {
-					if (canGetPregnant(slave)) {
-						if ((slave.diet !== "fertility")) {
-							slave.diet = "fertility";
-							r += `<br>${slave.slaveName} has been put on a diet to enhance fertility.`;
-						}
-					} else {
-						if ((slave.diet !== "healthy")) {
-							slave.diet = "healthy";
-							if (slave.pregKnown === 0 && slave.preg > 0) {
-								r += `<br>${slave.slaveName} has been put on a standard diet since tests reveal she has become pregnant.`;
-								slave.pregKnown = 1;
-							} else {
-								r += `<br>${slave.slaveName} has been put on a standard diet since she is currently unable to become pregnant.`;
-							}
-						}
-					}
-				} else if ((rule.diet == "cum production")) {
-					if ((slave.balls > 0)) {
-						if ((slave.diet !== "cum production")) {
-							slave.diet = "cum production";
-							r += `<br>${slave.slaveName} has been put on a diet to promote cum production.`;
-						}
-					} else {
-						if ((slave.diet !== "healthy")) {
-							slave.diet = "healthy";
-							r += `<br>${slave.slaveName} has been put on a standard diet since she is no longer able to produce cum.`;
-						}
-					}
-				}
-			}
-		} else if ((rule.muscles !== undefined) && (rule.muscles !== "no default setting") && (slave.amp != 1)) { // no diet rule, muscles only 
-			if ((slave.muscles >= rule.muscles+8)) {
-				if ((slave.diet !== "slimming")) {
-					slave.diet = "slimming";
-					r += `<br>${slave.slaveName} has been put on a slimming exercise regime.`;
-				}
-			} else if ((slave.muscles <= rule.muscles-2)) {
-				if ((slave.diet !== "muscle building")) {
-					slave.diet = "muscle building";
-					r += `<br>${slave.slaveName} has been put on a muscle building exercise regime.`;
-				}
-			} else {
-				if ((slave.diet !== "healthy")) {
-					slave.diet = "healthy";
-					r += `<br>${slave.slaveName} has achieved the target musculature, so her exercise regime has been normalized.`;
-				}
-			}
+	class BallGrowthList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Sizeable", 4],
+				["Cumslave", 6],
+				["Unlimited", 125],
+				["None", 0]
+			];
+			super("Balls, if present", pairs, true);
+			this.setValue(current_rule.set.growth_balls);
+			this.onchange = (value) => current_rule.set.growth_balls = value;
 		}
+	}
 
-		if (slave.drugs === "appetite suppressors" && slave.diet !== "restricted") {
-			slave.drugs = "no drugs";
-			r += `<br>${slave.slaveName} is no longer losing weight, so she's no longer being given appetite suppressors.`;
-		} else if (slave.diet === "restricted" && V.arcologies[0].FSSlimnessEnthusiastResearch == 1 && (slave.drugs == "no drugs" || slave.drugs == "none")) {
-			slave.drugs = "appetite suppressors";
-			r += `<br>${slave.slaveName} is losing weight so she will be given weight loss pills.`;
+	class CurrativesList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Preventatives", 1],
+				["Curatives", 2],
+			];
+			super("Health drugs", pairs);
+			this.setValue(current_rule.set.curatives);
+			this.onchange = (value) => current_rule.set.curatives = value;
+		}
+	}
+
+	class AphrodisiacList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Standard", 1],
+				["Extreme", 2],
+				["Anaphrodisiacs", -1]
+			];
+			super("Aphrodisiacs", pairs);
+			this.setValue(current_rule.set.aphrodisiacs);
+			this.onchange = (value) => current_rule.set.aphrodisiacs = value;
+		}
+	}
+
+	class ContraceptiveList extends List {
+		constructor() {
+			const drugs =  [
+				["No default setting", "no default setting"],
+				["Contraceptives", true],
+				["Fertile", false],
+			];
+			super("Contraceptives for fertile slaves", drugs);
+			this.setValue(current_rule.set.preg);
+			this.onchange = (value) => current_rule.set.preg = value;
+		}
+	}
+
+	class PregDrugsList extends List {
+		constructor() {
+			const pairs = [
+				["No changes", "no default setting"],
+				["None", "none"],
+				["Fast gestation", "fast"],
+				["Slow gestation", "slow"],
+				["Birth supressors", "suppress"],
+				["Birth stimulators", "stimulate"]
+			];
+			super("Pregnancy control agents for pregnant slaves", pairs);
+			this.setValue(current_rule.set.pregSpeed);
+			this.onchange = (value) => current_rule.set.pregSpeed = value;
+		}
+	}
+
+	class FemaleHormonesList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Intensive Female", 2],
+				["Female", 1],
+				["None", 0],
+				["Male", -1],
+				["Intensive Male", -2]
+			];
+			super("Hormones for female slaves", pairs);
+			this.setValue(current_rule.set.XX);
+			this.onchange = (value) => current_rule.set.XX = value;
 		}
 	}
 
-	function ProcessCuratives(slave, rule) {
-		if ((rule.curatives !== undefined) && (rule.curatives !== "no default setting")) {
-			if (slave.curatives !== rule.curatives) {
-				if (rule.curatives === 2) {
-					if (slave.health > 100) {
-						if ((slave.curatives != 1)) {
-							r += `<br>${slave.slaveName} has been put on preventatives, since curatives cannot improve her health further.`;
-							slave.curatives = 1;
-						}
-					} else {
-						r += `<br>${slave.slaveName} has been put on curatives.`;
-						slave.curatives = rule.curatives;
-					}
-				} else {
-					r += `<br>${slave.slaveName} has been ${rule.curatives > 0 ? `put on preventatives` : `taken off health drugs`}`;
-					slave.curatives = rule.curatives;
-				}
-			}
+	class GeldingHormonesList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Intensive Female", 2],
+				["Female", 1],
+				["None", 0],
+				["Male", -1],
+				["Intensive Male", -2]
+			];
+			super("Hormones for geldings", pairs);
+			this.setValue(current_rule.set.gelding);
+			this.onchange = (value) => current_rule.set.gelding = value;
 		}
 	}
 
-	function ProcessAphrodisiacs(slave, rule) {
-		if ((rule.aphrodisiacs !== undefined) && (rule.aphrodisiacs != "no default setting")) {
-			if (slave.aphrodisiacs != rule.aphrodisiacs) {
-				r += `<br>${slave.slaveName} has been ${rule.aphrodisiacs > 0 ? `put on the proper` : `taken off`} aphrodisiacs.`;
-				slave.aphrodisiacs = rule.aphrodisiacs;
-			}
+	class ShemaleHormonesList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Intensive Female", 2],
+				["Female", 1],
+				["None", 0],
+				["Male", -1],
+				["Intensive Male", -2]
+			];
+			super("Hormones for shemales", pairs);
+			this.setValue(current_rule.set.XY);
+			this.onchange = (value) => current_rule.set.XY = value;
 		}
 	}
 
-	function ProcessPenisHormones(slave, rule) {
-		if ((slave.dick > 0)) {
-			if ((slave.balls === 0)) {
-				if ((rule.gelding !== undefined) && (rule.gelding !== "no default setting")) {
-					if ((slave.hormones !== rule.gelding)) {
-						const _oldHormones = slave.hormones;
-						slave.hormones = rule.gelding;
-						if (slave.indentureRestrictions >= 2) {
-							slave.hormones = Math.clamp(slave.hormones, -1, 1);
-						}
-						if (slave.hormones != _oldHormones) {
-							r += `<br>${slave.slaveName} is a gelding, so she has been put on the appropriate hormonal regime.`;
-						}
-					}
-				}
-			} else if ((slave.balls > 0)) {
-				if ((rule.XY !== undefined) && (rule.XY !== "no default setting")) {
-					if ((slave.hormones !== rule.XY)) {
-						if ((slave.assignment != "recruit girls")) {
-							if ((slave.assignment != "be the Wardeness")) {
-								if ((slave.assignment != "be the Madam")) {
-									const _oldHormones = slave.hormones;
-									slave.hormones = rule.XY;
-									if (slave.indentureRestrictions >= 2) {
-										slave.hormones = Math.clamp(slave.hormones, -1, 1);
-									}
-									if (slave.hormones != _oldHormones) {
-										r += `<br>${slave.slaveName} is a shemale, so she has been put on the appropriate hormonal regime.`;
-									}
-								}
-							}
-						}
-					}
-				}
+	class OtherDrugsList extends List {
+		constructor() {
+			const drugs = [
+				["No default setting", "no default setting"],
+				["None", "none"],
+				["Fertility drugs", "fertility drugs"],
+				["Psychosuppressants", "psychosuppressants"],
+				["Steroids", "steroids"],
+				["Natural hormone enhancers", "hormone enhancers"],
+				["Hormone blockers", "hormone blockers"],
+				["breast injections"],
+				["intensive breast injections"],
+				["butt injections"],
+				["intensive butt injections"],
+				["lip injections"],
+				["penis enhancement"],
+				["intensive penis enhancement"],
+				["testicle enhancement"],
+				["intensive testicle enhancement"],
+			];
+
+			if (V.growthStim === 1)
+				drugs.push(["Growth Stimulants (Research)", "growth stimulants"]);
+			if (V.precociousPuberty === 1 && V.pubertyHormones) {
+				drugs.push(["Female hormone injections (Research)", "female hormone injections"]);
+				drugs.push(["Male hormone injections (Research)", "male hormone injections"]);
+			}
+			if (V.purchasedSagBGone === 1)
+				drugs.push(["Sag-B-gone (Product)", "sag-B-gone"]);
+			if (V.arcologies[0].FSSlimnessEnthusiastResearch === 1) {
+				drugs.push(["Weight loss pills (FS)", "appetite suppressors"]);
+				drugs.push(["breast redistributors"]);
+				drugs.push(["butt redistributors"]);
+				drugs.push(["lip atrophiers"]);
+				drugs.push(["penis atrophiers"]);
+				drugs.push(["testicle atrophiers"]);
+			}
+			if (V.arcologies[0].FSAssetExpansionistResearch === 1) {
+				drugs.push(["hyper breast injections"]);
+				drugs.push(["hyper butt injections"]);
+				drugs.push(["hyper penis enhancement"]);
+				drugs.push(["hyper testicle enhancement"]);
 			}
+			if (V.arcologies[0].FSYouthPreferentialistResearch === 1)
+				drugs.push(["Anti-aging cream (FS)", "anti-aging cream"]);
+			if (V.seeHyperPreg === 1 && V.superFertilityDrugs === 1)
+				drugs.push(["Super fertility drugs", "super fertility drugs"]);
+			super("Other drugs", drugs);
+			this.setValue(current_rule.set.drug);
+			this.onchange = (value) => current_rule.set.drug = value;
 		}
 	}
 
-	function ProcessFemaleHormones(slave, rule) {
-		if ((slave.vagina > -1) && (slave.dick === 0) && (rule.XX !== undefined) && (rule.XX !== "no default setting")) {
-			if ((slave.hormones !== rule.XX)) {
-				const _oldHormones = slave.hormones;
-				slave.hormones = rule.XX;
-				if (slave.indentureRestrictions >= 2) {
-					slave.hormones = Math.clamp(slave.hormones, -1, 1);
-				}
-				if (slave.hormones != _oldHormones) {
-					r += `<br>${slave.slaveName} is a female, so she has been put on the appropriate hormonal regime.`;
-				}
+	class DietList extends List {
+		constructor() {
+			const diets = [
+				["no default setting", "no default setting"],
+				["Healthy diet", "healthy"],
+				["Fix fat and skinny slaves", "attractive"],
+				["Curvy", 30],
+				["Average",  0],
+				["Thin", -30]
+			];
+			if (V.feeder === 1) {
+				diets.push(
+					["Feminine", "XX"],
+					["Masculine", "XY"]
+				);
+				if (V.dietXXY === 1)
+					diets.push(["Futanari", "XXY"]);
 			}
+			if (V.dietCleanse === 1)
+				diets.push(["Cleansing", "cleansing"]);
+			if (V.dietFertility === 1)
+				diets.push(["Fertility", "fertility"]);
+			if (V.cumProDiet === 1)
+				diets.push(["Cum production", "cum production"]);
+
+			super("Slave diets", diets, true);
+			this.setValue(current_rule.set.diet);
+			this.onchange = (value) => current_rule.set.diet = value;
 		}
 	}
 
-	function ProcessPregnancyDrugs(slave, rule) {
-		if (slave.pregKnown == 1 && rule.pregSpeed != "no default setting" && slave.breedingMark != 1 && slave.indentureRestrictions < 1 && slave.broodmother === 0) {
-			if (rule.pregSpeed == "slow" && slave.preg < 35) {
-				slave.pregControl = "slow gestation";
-				r += `<br>${slave.slaveName} is pregnant, so she has been put on the gestation slowing agents.`;
-			} else if (rule.pregSpeed == "fast" && slave.preg < 35 && slave.health > -50) {
-				slave.pregControl = "speed up";
-				r += `<br>${slave.slaveName} is pregnant, so she has been put on rapid gestation  agents. CAUTION! Can be dangerous. Clinic supervision is recommended.`;
-			} else if (rule.pregSpeed == "suppress" && slave.preg > 34 && slave.health > -50) {
-				slave.pregControl = "labor supressors";
-				r += `<br>${slave.slaveName} is ready to birth, so she has been put on labor suppressing agents.`;
-			} else if (rule.pregSpeed == "stimulate" && slave.preg >= 37 && slave.health > -50) {
-				slave.labor = 1;
-				slave.induce = 1;
-				V.birthee = 1;
-				r += `<br>slave.slaveName is ready to birth, so her labor has been stimulated.`;
-			} else if (rule.pregSpeed == "fast" && slave.pregControl == "speed up" && slave.health <= -50) {
-				slave.pregControl = "none";
-				r += `<br>${slave.slaveName} is on rapid gestation agents and dangerously unhealthy, so her agent regimen has been stopped.`;
-			} else if (rule.pregSpeed == "suppress" && slave.pregControl == "labor supressors" && slave.health <= -50) {
-				slave.pregControl = "none";
-				r += `<br>${slave.slaveName} is on labor suppression agents and unhealthy, so her agent regimen has been stopped.`;
-			}
+	class DietGrowthList extends List {
+		constructor() {
+			const pairs = [
+				["On", 1],
+				["Off", 0]
+			];
+			super("Diet support for growth drugs", pairs);
+			this.setValue(current_rule.set.dietGrowthSupport);
+			this.onchange = (value) => current_rule.set.dietGrowthSupport = value;
 		}
 	}
 
-	function ProcessLivingStandard(slave, rule) {
-		if ((rule.livingRules !== undefined) && (rule.livingRules !== "no default setting")) {
-			if (setup.facilityCareers.includes(slave.assignment)) {
-				r += ``; // `<br>${slave.slaveName}'s living standards are controlled by her assignment.`;
-			} else if (((slave.assignment == "be your Head Girl") && (V.HGSuite == 1)) || ((slave.assignment == "guard you") && (V.dojo > 1))) {
-				r += `<br>${slave.slaveName} has a private room.`;
-			} else if ((slave.fetish == "mindbroken")) {
-				if ((slave.livingRules !== "spare")) {
-					slave.livingRules = "spare";
-					r += `<br>Since ${slave.slaveName} is mindbroken her living standard has been set to spare.`;
-				}
-			} else if (slave.livingRules !== rule.livingRules) {
-				if (rule.livingRules !== "luxurious") {
-					if (V.roomsPopulation <= V.rooms-0.5) {
-						slave.livingRules = rule.livingRules;
-						r += `<br>${slave.slaveName}'s living standard has been set to ${rule.livingRules}.`;
-						if (slave.relationship >= 4)
-							V.roomsPopulation += 0.5;
-						else
-							V.roomsPopulation += 1;
-					} else {
-						slave.livingRules = "normal";
-						r += `<br>${slave.slaveName}'s living standard has been set to normal, since there is no room for her to occupy.`;
-					}
-				} else {
-					slave.livingRules = rule.livingRules;
-					r += `<br>${slave.slaveName}'s living standard has been set to ${rule.livingRules}.`;
-				}
-			}
+	class DietBaseList extends List {
+		constructor() {
+			// TODO: better data structure?
+			const pairs = [
+				["No default setting", {cum: "no default setting", milk: "no default setting"}],
+				["Normal Diet", {cum: 0, milk: 0}],
+				["Cum Added", {cum: 1, milk: 0}],
+				["Milk Added", {cum: 0, milk: 1}],
+				["Cum &amp; Milk Added", {cum: 1, milk: 1}],
+				["Cum-Based", {cum: 2, milk: 0}],
+				["Milk-Based", {cum: 0, milk: 2}],
+			];
+			super("Diet base", pairs);
+			this.setValue(this.value2string(current_rule.set.dietCum, current_rule.set.dietMilk));
+			this.onchange = (value) => {
+				current_rule.set.dietCum = value.cum;
+				current_rule.set.dietMilk = value.milk;
+			};
+		}
+
+		value2string(cum, milk) {
+			return `cum: ${cum}, milk: ${milk}`;
+		}
+
+		setValue(what) {
+			what = this.value2string(what.cum, what.milk);
+			super.setValue(what);
 		}
+
 	}
 
-	function ProcessSpeech(slave, rule) {
-		if ((rule.speechRules !== undefined) && (rule.speechRules !== "no default setting")) {
-			if ((slave.fetish == "mindbroken")) {
-				if ((slave.speechRules !== "restrictive")) {
-					slave.speechRules = "restrictive";
-					r += `<br>Since ${slave.slaveName} is mindbroken her speech rules have been set to restrictive.`;
-				}
-			} else if ((slave.speechRules !== rule.speechRules)) {
-				slave.speechRules = rule.speechRules;
-				r += `<br>${slave.slaveName}'s speech rules have been set to ${rule.speechRules}.`;
-			}
+	class MuscleList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Toned", 20],
+				["Ripped", 50],
+				["Massive", 100],
+				["Weak", -20]
+			];
+			super("Muscles", pairs, true);
+			this.setValue(current_rule.set.muscles);
+			this.onchange = (value) => current_rule.set.muscles = value;
 		}
 	}
 
-	function ProcessRelationship(slave, rule) {
-		if ((slave.fetish !== "mindbroken")) {
-			if ((rule.relationshipRules !== undefined) && (rule.relationshipRules !== "no default setting")) {
-				if ((slave.relationshipRules !== rule.relationshipRules )) {
-					slave.relationshipRules = rule.relationshipRules ;
-					r += `<br>${slave.slaveName}'s relationship rules have been set to ${rule.relationshipRules}.`;
-				}
-			}
+	class BraceList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", "none"],
+				["Straighten", "straighten"],
+				["Universal", "universal"]
+			];
+			super("Braces", pairs);
+			this.setValue(current_rule.set.teeth);
+			this.onchange = (value) => current_rule.set.teeth = value;
 		}
 	}
 
-	function ProcessRelease(slave, rule) {
-		if ((rule.releaseRules !== undefined) && (rule.releaseRules !== "no default setting")) {
-			let _release = 0;
-			if (rule.releaseRules === "restrictive" &&
-				!(["serve the public", "serve in the club", "whore", "work in the brothel", "please you", "serve in the master suite", "be a subordinate slave", "work a glory hole", "be confined in the arcade", "get milked", "work in the dairy", "be your Head Girl"].contains(slave.assignment)))
-				_release = 1;
-			else
-				_release = 1;
-			if ((slave.fetish == "mindbroken") && (slave.releaseRules !== "permissive")) {
-				slave.releaseRules = "permissive";
-				r += `<br>Since ${slave.slaveName} is mindbroken her masturbation rules have been set to permissive.`;
-			} else if ((slave.amp === 1 || slave.fuckdoll > 0) && (slave.releaseRules === "masturbation")) {
-				slave.releaseRules = "restrictive";
-				r += `<br>Since ${slave.slaveName} is unable to masturbate, her masturbation rules have been set to restrictive.`;
-			} else if ((_release !== 0) && (slave.releaseRules !== rule.releaseRules)) {
-				slave.releaseRules = rule.releaseRules;
-				r += `<br>${slave.slaveName}'s masturbation rules have been set to ${rule.releaseRules}.`;
-			}
+	class LivingStandardList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Luxurious", "luxurious"],
+				["Normal", "normal"],
+				["Spare", "spare"]
+			];
+			super("Living standard", pairs);
+			this.setValue(current_rule.set.livingRules);
+			this.onchange = (value) => current_rule.set.livingRules = value;
 		}
 	}
 
-	function ProcessPunishment(slave, rule) {
-		if ((rule.standardPunishment !== undefined) && (rule.standardPunishment !== "no default setting")) {
-			if ((slave.standardPunishment !== rule.standardPunishment)) {
-				slave.standardPunishment = rule.standardPunishment ;
-				r += `<br>${slave.slaveName}'s typical punishment has been updated to ${rule.standardPunishment}.`;
-			}
+	class PunishmentList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Confinement", "confinement"],
+				["Whipping", "whipping"],
+				["Chastity", "chastity"],
+				["Situational", "situational"]
+			];
+			super("Typical punishment", pairs);
+			this.setValue(current_rule.set.standardPunishment);
+			this.onchange = (value) => current_rule.set.standardPunishment = value;
 		}
 	}
 
-	function ProcessReward(slave, rule) {
-		if ((rule.standardReward !== undefined) && (rule.standardReward !== "no default setting")) {
-			if ((slave.standardReward !== rule.standardReward)) {
-				slave.standardReward = rule.standardReward ;
-				r += `<br>${slave.slaveName}'s typical reward has been updated to ${rule.standardReward}.`;
-			}
+	class RewardList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Relaxation", "relaxation"],
+				["Drugs", "drugs"],
+				["Orgasm", "orgasm"],
+				["Situational", "situational"]
+			];
+			super("Typical reward", pairs);
+			this.setValue(current_rule.set.standardReward);
+			this.onchange = (value) => current_rule.set.standardReward = value;
 		}
 	}
 
-	function ProcessDietCum(slave, rule) {
-		if ((rule.dietCum !== undefined) && (rule.dietCum !== "no default setting")) {
-			if (slave.dietCum != rule.dietCum) {
-				slave.dietCum = rule.dietCum;
-				if (slave.dietCum == 2) {
-					r += `<br>${slave.slaveName} has been put on a diet based on cum.`;
-					slave.dietMilk = 0;
-				}
-				if (slave.dietCum == 1)
-					r += `<br>${slave.slaveName} has had cum added to her diet.`;
-				else
-					r += `<br>${slave.slaveName} has had cum removed from her diet.`;
-			}
+	class ReleaseList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Permissive", "permissive"],
+				["Sapphic", "sapphic"],
+				["Masturbation", "masturbation"],
+				["Restrictive", "restrictive"]
+			];
+			super("Release rules", pairs);
+			this.setValue(current_rule.set.releaseRules);
+			this.onchange = (value) => current_rule.set.releaseRules = value;
 		}
 	}
 
-	function ProcessDietMilk(slave, rule) {
-		if ((rule.dietMilk !== undefined) && (rule.dietMilk !== "no default setting")) {
-			if (slave.dietMilk != rule.dietMilk) {
-				slave.dietMilk = rule.dietMilk;
-				if (slave.dietMilk == 2) {
-					r += `<br>${slave.slaveName} has been put on a diet based on human milk.`;
-					slave.dietCum = 0;
-				}
-				if (slave.dietMilk == 1)
-					r += `<br>${slave.slaveName} has had human milk added to her diet.`;
-				else
-					r += `<br>${slave.slaveName} has had human milk removed from her diet.`;
-			}
+	class SmartFetishList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Vanilla", "vanilla"],
+				["Oral", "oral"],
+				["Anal", "anal"],
+				["Boobs", "boobs"],
+				["Sub", "submissive"],
+				["Dom", "dom"],
+				["Humiliation", "humiliation"],
+				["Preg", "pregnancy"],
+				["Pain", "masochist"],
+				["Sadism", "sadist"]
+			];
+			super("Smart piercing fetish target", pairs);
+			this.setValue(current_rule.set.clitSetting);
+			this.onchange = (value) => current_rule.set.clitSetting = value;
 		}
 	}
 
-	function ProcessTeeth(slave, rule) {
-		if ((rule.teeth !== undefined) && (rule.teeth !== "no default setting")) {
-			if ((rule.teeth == "universal")) {
-				if ((slave.teeth == "crooked")) {
-					slave.teeth = "straightening braces";
-					V.cash -= V.surgeryCost;
-					r += `<br>${slave.slaveName} has been given braces for her crooked teeth.`;
-				} else if ((slave.teeth == "normal")) {
-					slave.teeth = "cosmetic braces";
-					V.cash -= V.surgeryCost;
-					r += `<br>${slave.slaveName} has been given cosmetic braces.`;
-				}
-			} else if ((rule.teeth == "straighten")) {
-				if ((slave.teeth == "crooked")) {
-					slave.teeth = "straightening braces";
-					V.cash -= V.surgeryCost;
-					r += `<br>${slave.slaveName} has been given braces for her crooked teeth.`;
-				} else if ((slave.teeth == "cosmetic braces")) {
-					slave.teeth = "normal";
-					r += `<br>${slave.slaveName} has gotten her braces off, since her teeth are straight.`;
-				}
-			} else if ((rule.teeth == "none")) {
-				if ((slave.teeth == "straightening braces")) {
-					slave.teeth = "crooked";
-					r += `<br>${slave.slaveName} has gotten her braces off.`;
-				} else if ((slave.teeth == "cosmetic braces")) {
-					slave.teeth = "normal";
-					r += `<br>${slave.slaveName} has gotten her braces off.`;
-				}
-			}
+	class SmartXYAttractionList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Passionate", 100],
+				["Attracted", 75],
+				["Indifferent", 45],
+				["None", 0]
+			];
+			super("Smart piercing XY attraction target", pairs);
+			this.setValue(current_rule.set.clitSettingXY);
+			this.onchange = (value) => current_rule.set.clitSettingXY = value;
 		}
 	}
 
-	function ProcessStyle(slave, rule) {
-		if (rule.eyeColor !== undefined && (rule.eyeColor !== "no default setting")) {
-			if ((slave.eyeColor !== rule.eyeColor)) {
-				slave.eyeColor = rule.eyeColor;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName} has been given ${slave.eyeColor} contact lenses.`;
-			}
+	class SmartXXAttractionList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Passionate", 100],
+				["Attracted", 75],
+				["Indifferent", 45],
+				["None", 0]
+			];
+			super("Smart piercing XX attraction target", pairs);
+			this.setValue(current_rule.set.clitSettingXX);
+			this.onchange = (value) => current_rule.set.clitSettingXX = value;
 		}
+	}
 
-		if (rule.makeup !== undefined && (rule.makeup !== "no default setting")) {
-			if ((slave.makeup !== rule.makeup)) {
-				slave.makeup = rule.makeup;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName} has been assigned the standard makeup.`;
-			}
+	class SmartEnergyList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Nympho", 100],
+				["Sex Addict", 85],
+				["Powerful", 65],
+				["Healthy", 45],
+				["Weak", 25],
+				["Frigid", 0]
+			];
+			super("Smart piercing sex drive target", pairs);
+			this.setValue(current_rule.set.clitSettingEnergy);
+			this.onchange = (value) => current_rule.set.clitSettingEnergy = value;
 		}
+	}
 
-		if ((slave.amp != 1)) {
-			if (rule.nails !== undefined && (rule.nails !== "no default setting")) {
-				if ((slave.nails !== rule.nails)) {
-					slave.nails = rule.nails;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName} has been assigned the standard nails.`;
-				}
-			}
+	class SpeechList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["Permissive", "permissive"],
+				["Suppress accents", "accent elimination"],
+				["Restrictive", "restrictive"]
+			];
+			super("Speech rules", pairs);
+			this.setValue(current_rule.set.speechRules);
+			this.onchange = (value) => current_rule.set.speechRules = value;
 		}
+	}
 
-		if (rule.hColor !== undefined && (rule.hColor !== "no default setting")) {
-			if (slave.bald != 1) {
-				if ((slave.hColor !== rule.hColor)) {
-					slave.hColor = rule.hColor;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s hair has been dyed ${rule.hColor}.`;
-				}
-			}
+	class RelationshipList extends List {
+		constructor() {
+			const pairs =[
+				["No default setting", "no default setting"],
+				["Permissive", "permissive"],
+				["Just friends", "just friends"],
+				["Restrictive", "restrictive"]
+			];
+			super("Relationship rules", pairs);
+			this.setValue(current_rule.set.relationshipRules);
+			this.onchange = (value) => current_rule.set.relationshipRules = value;
 		}
+	}
 
-		if (rule.hStyle !== undefined && (rule.hStyle !== "no default setting")) {
-			if (slave.bald != 1) {
-				if ((slave.hStyle !== rule.hStyle)) {
-					slave.hStyle = rule.hStyle;
-					V.cash -= V.modCost;
-					if ((rule.hStyle == "shaved")) {
-						slave.hLength = 0;
-						r += `<br>${slave.slaveName}'s hair has been shaved.`;
-					} else
-						r += `<br>${slave.slaveName}'s hair has been restyled.`;
-				}
-			}
+	class PornList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["No broadcasting", -1],
+				["No subsidy", 0],
+				["1000", 1000],
+				["2000", 2000],
+				["3000", 3000],
+				["4000", 4000],
+				["5000", 5000]
+			];
+			super("Weekly porn publicity subsidy", pairs);
+			this.setValue(current_rule.set.pornFameSpending);
+			this.onchange = (value) => current_rule.set.pornFameSpending = value;
 		}
+	}
 
-		if (rule.hLength !== undefined && (rule.hLength !== "no default setting")) {
-			if (slave.bald != 1) {
-				if ((slave.hLength !== rule.hLength)) {
-					if ((slave.hLength > rule.hLength)) {
-						V.cash -= V.modCost;
-						r += `<br>${slave.slaveName}'s hair has been cut; it `;
-					} else {
-						V.cash -= V.modCost*Math.trunc((rule.hLength-slave.hLength)/10);
-						r += `<br>${slave.slaveName} has been given extensions; her hair `;
-					}
-				r += `is now ${rule.hLength} cm long.`;
-				slave.hLength = rule.hLength;
-				}
-			}
+	class EyewearList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["correct with glasses"],
+				["correct with contacts"],
+				["universal glasses"],
+				["blur with glasses"],
+				["blur with contacts"]
+			];
+			super("Eyewear", pairs);
+			this.setValue(current_rule.set.eyewear);
+			this.onchange = (value) => current_rule.set.eyewear = value;
 		}
+	}
 
-		if (rule.pubicHColor !== undefined && (rule.pubicHColor !== "no default setting")) {
-			if (slave.pubicHStyle != "bald" && slave.pubicHStyle != "hairless") {
-				if ((slave.pubicHColor !== rule.pubicHColor)) {
-					slave.pubicHColor = rule.pubicHColor;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s pubic hair, if present, has been dyed ${rule.pubicHColor}.`;
-				}
-			}
+	class LensesList extends Element {
+		constructor() {
+			super(current_rule.set.eyeColor);
+			this.appendChild(new OptionsItem("No default Setting", () => this.setValue("no default setting")));
+			this.colourlist = new LensesColourList();
+			this.shapelist = new LensesShapeList();
+			this.appendChild(this.colourlist);
+			this.appendChild(this.shapelist);
 		}
 
-		if (rule.pubicHStyle !== undefined && (rule.pubicHStyle !== "no default setting")) {
-			if (slave.pubicHStyle != "bald" && slave.pubicHStyle != "hairless") {
-				if ((slave.pubicHStyle !== rule.pubicHStyle)) {
-					slave.pubicHStyle = rule.pubicHStyle;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s pubic hair has been restyled; it is now ${rule.pubicHStyle}.`;
-				}
-			}
+		render(color) {
+			const elem = document.createElement("div");
+			elem.innerHTML = "Eye coloring: ";
+			this.label = document.createElement("strong");
+			this.label.innerText = color;
+			elem.appendChild(this.label);
+			return elem;
 		}
 
-		if (rule.underArmHColor !== undefined && (rule.underArmHColor !== "no default setting")) {
-			if (slave.underArmHStyle != "bald" && slave.underArmHStyle != "hairless") {
-				if ((slave.underArmHColor !== rule.underArmHColor)) {
-					slave.underArmHColor = rule.underArmHColor;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s underarm hair, if present, has been dyed ${rule.underArmHColor}.`;
-				}
-			}
+		combine() {
+			const lst = [];
+			if (this.colourlist.value !== "no default setting")
+				lst.push(this.colourlist.value);
+			if (this.shapelist.value !== "no default setting")
+				lst.push(this.shapelist.value);
+			if (lst.length === 0) return "no default value";
+			else return lst.join(" ");
 		}
 
-		if (rule.underArmHStyle !== undefined && (rule.underArmHStyle !== "no default setting")) {
-			if (slave.underArmHStyle != "bald" && slave.underArmHStyle != "hairless") {
-				if ((slave.underArmHStyle !== rule.underArmHStyle)) {
-					slave.underArmHStyle = rule.underArmHStyle;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s underarm hair has been restyled; it is now ${rule.underArmHStyle}.`;
-				}
-			}
+		setValue(val) {
+			if (val === undefined) val = this.combine();
+			this.label.innerText = val;
+			current_rule.set.eyeColor = val;
 		}
 	}
 
-	function ProcessPiercings(slave, rule) {
-		if (rule.nipplesPiercing !== undefined && (rule.nipplesPiercing !== "no default setting")) {
-			if ((slave.nipplesPiercing !== rule.nipplesPiercing)) {
-				if ((rule.nipplesPiercing === 0)) {
-					slave.nipplesPiercing = 0;
-					r += `<br>${slave.slaveName}'s nipple piercings have been removed.`;
-				} else if (slave.nipples !== "fuckable") {
-					slave.nipplesPiercing = rule.nipplesPiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s nipples have been pierced.`;
-				} else {
-					r += `<br>${slave.slaveName}'s nipples are inverted and cannot be pierced.`;
-				}
-			}
+	class LensesColourList extends Options {
+		constructor() {
+			const items = [];
+			[
+				"no default setting",
+				"blue",
+				"black",
+				"brown",
+				"green",
+				"turquoise",
+				"sky-blue",
+				"hazel",
+				"pale-grey",
+				"white",
+				"pink",
+				"amber",
+				"red"
+			].forEach(i => items.push(new OptionsItem(i, item => {
+				this.value = item.label;
+				this.parent.setValue();
+			})));
+			super(items);
 		}
+	}
 
-		if (rule.areolaePiercing !== undefined && (rule.areolaePiercing !== "no default setting")) {
-			if ((slave.areolaePiercing !== rule.areolaePiercing)) {
-				if ((rule.areolaePiercing === 0)) {
-					slave.areolaePiercing = 0;
-					r += `<br>${slave.slaveName}'s areolae piercings have been removed.`;
-				} else {
-					slave.areolaePiercing = rule.areolaePiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s areolae have been given stud piercings.`;
-				}
-			}
+	class LensesShapeList extends Options {
+		constructor() {
+			const items = [];
+			[
+				"no default setting",
+				"catlike",
+				"serpent-like",
+				"devilish",
+				"demonic",
+				"hypnotic",
+				"heart-shaped",
+				"wide-eyed",
+				"almond-shaped",
+				"bright",
+				"teary",
+				"vacant"
+			].forEach(i => items.push(new OptionsItem(i, item => {
+				this.value = item.label;
+				this.parent.setValue();
+			})));
+			super(items);
 		}
+	}
 
-		if (rule.clitPiercing !== undefined && (rule.clitPiercing !== "no default setting")) {
-			if ((slave.clitPiercing !== rule.clitPiercing)) {
-				if ((rule.clitPiercing === 0)) {
-					slave.clitPiercing = 0;
-					if (slave.dick > 0)
-						r += `<br>${slave.slaveName}'s frenulum piercing has been removed.`;
-					else
-						r += `<br>${slave.slaveName}'s clit piercing has been removed.`;
-
-				} else if ((slave.vagina != -1) || (slave.dick !== 0)) {
-					slave.clitPiercing = rule.clitPiercing;
-					if (slave.dick > 0)
-						r += `<br>${slave.slaveName}'s frenulum has been pierced.`;
-					else
-						r += `<br>${slave.slaveName}'s clit has been pierced.`;
+	class MakeupList extends List {
+		constructor() {
+			super("Makeup");
+			[
+				["no default setting"],
+				["makeup-free", 0],
+				["nice", 1],
+				["gorgeous", 2],
+				["color-coordinate with hair", 3],
+				["slutty", 4]
+			].forEach(pair => this.appendChild(new ListItem(...pair)));
+			this.setValue(current_rule.set.makeup);
+			this.onchange = (value) => current_rule.set.makeup = value;
+		}
+	}
 
-					if (rule.clitPiercing == 3)
-						V.cash -= 1000;
-					else
-						V.cash -= V.modCost;
-				}
-			}
+	class NailsList extends List {
+		constructor() {
+			super("Nails");
+			[
+				["no default setting"],
+				["clipped", 0],
+				["extended", 1],
+				["color-coordinate with hair", 2],
+				["sharp and claw-like", 3],
+				["bright and glittery", 4],
+				["hooker nails", 5]
+			].forEach(pair => this.appendChild(new ListItem(...pair)));
+			this.setValue(current_rule.set.nails);
+			this.onchange = (value) => current_rule.set.nails = value;
 		}
+	}
 
-		if ((slave.vagina != -1)) {
-			if (rule.vaginaPiercing !== undefined && (rule.vaginaPiercing !== "no default setting")) {
-				if ((slave.vaginaPiercing !== rule.vaginaPiercing)) {
-					if ((rule.vaginaPiercing === 0)) {
-						slave.vaginaPiercing = 0;
-						r += `<br>${slave.slaveName}'s labia piercings have been removed.`;
-					} else {
-						slave.vaginaPiercing = rule.vaginaPiercing;
-						V.cash -= V.modCost;
-						r += `<br>${slave.slaveName}'s pussylips have been pierced.`;
-					}
-				}
-			}
+	class HairLengthList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["very short", 5],
+				["short", 10],
+				["shoulder length", 30],
+				["long", 60],
+				["very long", 100],
+				["floor length", 150]
+			];
+			super("Hair length", pairs);
+			this.setValue(current_rule.set.hLength);
+			this.onchange = (value) => current_rule.set.hLength = value;
 		}
+	}
 
-		if ((slave.dick > 0)) {
-			if (rule.dickPiercing !== undefined && (rule.dickPiercing !== "no default setting")) {
-				if ((slave.dickPiercing !== rule.dickPiercing)) {
-					if ((rule.dickPiercing === 0)) {
-						slave.dickPiercing = 0;
-						r += `<br>${slave.slaveName}'s shaft piercings have been removed.`;
-					} else {
-						slave.dickPiercing = rule.dickPiercing;
-						V.cash -= V.modCost;
-						r += `<br>${slave.slaveName}'s shaft has been pierced.`;
-					}
-				}
-			}
+	class HaircutsList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["maintain hair length", 1],
+				["do not maintain hair length", 0]
+			];
+			super("Hair length maintenance", pairs);
+			this.setValue(current_rule.set.haircuts);
+			this.onchange = (value) => current_rule.set.haircuts = value;
 		}
+	}
 
-		if (rule.anusPiercing !== undefined && (rule.anusPiercing !== "no default setting")) {
-			if ((slave.anusPiercing !== rule.anusPiercing)) {
-				if ((rule.anusPiercing === 0)) {
-					slave.anusPiercing = 0;
-					r += `<br>${slave.slaveName}'s asshole piercings have been removed.`;
-				} else {
-					slave.anusPiercing = rule.anusPiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s asshole has been pierced.`;
-				}
-			}
+	class HairColourList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["blonde"],
+				["golden"],
+				["platinum blonde"],
+				["strawbery-blonde"],
+				["copper"],
+				["ginger"],
+				["red"],
+				["green"],
+				["blue"],
+				["pink"],
+				["dark brown"],
+				["brown"],
+				["auburn"],
+				["burgundy"],
+				["chocolate"],
+				["chestnut"],
+				["hazel"],
+				["black"],
+				["grey"],
+				["silver"],
+				["white"],
+				["blue-violet"],
+				["blazing red"],
+				["neon green"],
+				["neon blue"],
+				["neon pink"]
+			];
+			super("Hair color", pairs);
+			this.setValue(current_rule.set.hColor);
+			this.onchange = (value) => current_rule.set.hColor = value;
 		}
+	}
 
-		if (rule.lipsPiercing !== undefined && (rule.lipsPiercing !== "no default setting")) {
-			if ((slave.lipsPiercing !== rule.lipsPiercing)) {
-				if ((rule.lipsPiercing === 0)) {
-					slave.lipsPiercing = 0;
-					r += `<br>${slave.slaveName}'s lip piercings have been removed.`;
-				} else {
-					slave.lipsPiercing = rule.lipsPiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s lips have been pierced.`;
-				}
-			}
+	class HairStyleList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["neat"],
+				["shaved"],
+				["trimmed"],
+				["buzzcut"],
+				["up"],
+				["ponytail"],
+				["bun"],
+				["messy bun"],
+				["curled"],
+				["permed"],
+				["luxurious"],
+				["dreadlocks"],
+				["cornrows"],
+				["braided"],
+				["tails"],
+				["afro"],
+				["strip"]
+			];
+			super("Hair style", pairs);
+			this.setValue(current_rule.set.hStyle);
+			this.onchange = (value) => current_rule.set.hStyle = value;
 		}
+	}
 
-		if (rule.tonguePiercing !== undefined && (rule.tonguePiercing !== "no default setting")) {
-			if ((slave.tonguePiercing !== rule.tonguePiercing)) {
-				if ((rule.tonguePiercing === 0)) {
-					slave.tonguePiercing = 0;
-					r += `<br>${slave.slaveName}'s tongue piercings have been removed.`;
-				} else {
-					slave.tonguePiercing = rule.tonguePiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s tongue has been pierced.`;
-				}
-			}
+	class PubicHairColourList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["blonde"],
+				["golden"],
+				["platinum blonde"],
+				["strawerry-blonde"],
+				["copper"],
+				["ginger"],
+				["red"],
+				["green"],
+				["blue"],
+				["pink"],
+				["dark brown"],
+				["brown"],
+				["auburn"],
+				["burgundy"],
+				["chocolate"],
+				["chestnut"],
+				["hazel"],
+				["black"],
+				["grey"],
+				["silver"],
+				["white"],
+				["blue-violet"],
+				["blazing red"],
+				["neon green"],
+				["neon blue"],
+				["neon pink"]
+			];
+			super("Pubic hair color, when present", pairs);
+			this.setValue(current_rule.set.pubicHColor);
+			this.onchange = (value) => current_rule.set.pubicHColor = value;
 		}
+	}
 
-		if (rule.earPiercing !== undefined && (rule.earPiercing !== "no default setting")) {
-			if ((slave.earPiercing !== rule.earPiercing)) {
-				if ((rule.earPiercing === 0)) {
-					slave.earPiercing = 0;
-					r += `<br>${slave.slaveName}'s ear piercings have been removed.`;
-				} else {
-					slave.earPiercing = rule.earPiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s ears have been pierced.`;
-				}
-			}
+	class PubicHairStyleList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["waxed"],
+				["in a strip"],
+				["neat"],
+				["bushy"],
+				["bushy in the front and neat in the rear"],
+				["very bushy"]
+			];
+			super("Pubic hairstyle", pairs);
+			this.setValue(current_rule.set.pubicHStyle);
+			this.onchange = (value) => current_rule.set.pubicHStyle = value;
 		}
+	}
 
-		if (rule.nosePiercing !== undefined && (rule.nosePiercing !== "no default setting")) {
-			if ((slave.nosePiercing !== rule.nosePiercing)) {
-				if ((rule.nosePiercing === 0)) {
-					slave.nosePiercing = 0;
-					r += `<br>${slave.slaveName}'s nose piercing has been removed.`;
-				} else {
-					slave.nosePiercing = rule.nosePiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s nose has been pierced.`;
-				}
-			}
+	class ArmpitHairColourList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["blonde"],
+				["golden"],
+				["platinum blonde"],
+				["strawberry-blonde"],
+				["copper"],
+				["ginger"],
+				["red"],
+				["green"],
+				["blue"],
+				["pink"],
+				["dark brown"],
+				["brown"],
+				["auburn"],
+				["burgundry"],
+				["chocolate"],
+				["chestnut"],
+				["hazel"],
+				["black"],
+				["grey"],
+				["silver"],
+				["white"],
+				["blue-violet"],
+			];
+			super("Underarm hair color, when present", pairs);
+			this.setValue(current_rule.set.underArmHColor);
+			this.onchange = (value) => current_rule.set.underArmHColor = value;
 		}
+	}
 
-		if (rule.eyebrowPiercing !== undefined && (rule.eyebrowPiercing !== "no default setting")) {
-			if ((slave.eyebrowPiercing !== rule.eyebrowPiercing)) {
-				if ((rule.eyebrowPiercing === 0)) {
-					slave.eyebrowPiercing = 0;
-					r += `<br>${slave.slaveName}'s eyebrow piercings have been removed.`;
-				} else {
-					slave.eyebrowPiercing = rule.eyebrowPiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s eyebrows have been pierced.`;
-				}
-			}
+	class ArmpitHairStyleList extends List {
+		constructor() {
+			const pairs = [
+				["no default setting"],
+				["waxed"],
+				["shaved"],
+				["neat"],
+				["bushy"]
+			];
+			super("Underarm hair style", pairs);
+			this.setValue(current_rule.set.underArmHStyle);
+			this.onchange = (value) => current_rule.set.underArmHStyle = value;
 		}
+	}
 
-		if (rule.navelPiercing !== undefined && (rule.navelPiercing !== "no default setting")) {
-			if ((slave.navelPiercing !== rule.navelPiercing)) {
-				if ((rule.navelPiercing === 0)) {
-					slave.navelPiercing = 0;
-					r += `<br>${slave.slaveName}'s navel piercing have been removed.`;
-				} else {
-					slave.navelPiercing = rule.navelPiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s navel has been pierced.`;
-				}
-			}
+	class EarPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Ear piercings", pairs);
+			this.setValue(current_rule.set.earPiercing);
+			this.onchange = (value) => current_rule.set.earPiercing = value;
 		}
+	}
 
-		if (rule.corsetPiercing !== undefined && (rule.corsetPiercing !== "no default setting")) {
-			if ((slave.corsetPiercing !== rule.corsetPiercing)) {
-				if ((rule.corsetPiercing === 0)) {
-					slave.corsetPiercing = 0;
-					r += `<br>${slave.slaveName}'s corset piercings have been removed.`;
-				} else {
-					slave.corsetPiercing = rule.corsetPiercing;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName} has been given a set of corset piercings.`;
-				}
-			}
+	class NosePiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Nasal piercings", pairs);
+			this.setValue(current_rule.set.nosePiercing);
+			this.onchange = (value) => current_rule.set.earPiercing = value;
 		}
 	}
 
-	function ProcessSmartPiercings(slave, rule) {
-		if ((slave.clitPiercing == 3)) {
-			let _used = 0;
-			if (rule.clitSetting !== undefined && (rule.clitSetting !== "no default setting")) {
-				if (slave.clitSetting !== rule.clitSetting) {
-					slave.clitSetting = rule.clitSetting;
-					_used = 1;
-					r += `<br>${slave.slaveName}'s smart piercing has been set to ${slave.clitSetting}.`;
-				} else if (slave.fetishStrength < 100) {
-					_used = 1;
-				}
-			}
-			if (_used === 0) {
-				if (rule.clitSettingEnergy !== undefined && (rule.clitSettingEnergy !== "no default setting")) {
-					if (slave.energy < rule.clitSettingEnergy) {
-						if (slave.clitSetting !== "all") {
-							r += `<br>${slave.slaveName}'s smart piercing has been set to enhance libido.`;
-						}
-						slave.clitSetting = "all";
-						_used = 1;
-					} else if (slave.energy >= rule.clitSettingEnergy + 10) {
-						if (slave.clitSetting !== "none") {
-							r += `<br>${slave.slaveName}'s smart piercing has been set to suppress libido.`;
-						}
-						slave.clitSetting = "none";
-						_used = 1;
-					}
-				}
-			}
-			if (_used === 0) {
-				if (rule.clitSettingXY !== undefined && (rule.clitSettingXY !== "no default setting")) {
-					if (slave.attrXY < rule.clitSettingXY) {
-						if (slave.clitSetting !== "men") {
-							r += `<br>${slave.slaveName}'s smart piercing has been set to encourage attraction to men.`;
-						}
-						slave.clitSetting = "men";
-						_used = 1;
-					} else if (slave.attrXY >= rule.clitSettingXY + 10) {
-						if (slave.clitSetting !== "anti-men") {
-							r += `<br>${slave.slaveName}'s smart piercing has been set to discourage attraction to men.`;
-						}
-						slave.clitSetting = "anti-men";
-						_used = 1;
-					}
-				}
-			}
-			if (_used === 0) {
-				if (rule.clitSettingXX !== undefined && (rule.clitSettingXX !== "no default setting")) {
-					if (slave.attrXX < rule.clitSettingXX) {
-						if (slave.clitSetting !== "women") {
-							r += `<br>${slave.slaveName}'s smart piercing has been set to encourage attraction to women.`;
-						}
-						slave.clitSetting = "women";
-						_used = 1;
-					} else if (slave.attrXX >= rule.clitSettingXX + 10) {
-						if (slave.clitSetting !== "anti-women") {
-							r += `<br>${slave.slaveName}'s smart piercing has been set to discourage attraction to women.`;
-						}
-						slave.clitSetting = "anti-women";
-						_used = 1;
-					}
-				}
-			}
+	class EyebrowPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Eyebrow piercings", pairs);
+			this.setValue(current_rule.set.eyebrowPiercing);
+			this.onchange = (value) => current_rule.set.eyebrowPiercing = value;
 		}
 	}
 
-	function ProcessTattoos(slave, rule) {
-		if (rule.boobsTat !== undefined && (rule.boobsTat !== "no default setting")) {
-			if ((slave.boobsTat !== rule.boobsTat)) {
-				slave.boobsTat = rule.boobsTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s chest has been tattooed.`;
-			}
+	class NavelPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Navel piercings", pairs);
+			this.setValue(current_rule.set.navelPiercing);
+			this.onchange = (value) => current_rule.set.navelPiercing = value;
 		}
+	}
 
-		if (rule.buttTat !== undefined && (rule.buttTat !== "no default setting")) {
-			if ((slave.buttTat !== rule.buttTat)) {
-				slave.buttTat = rule.buttTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s butt has been tattooed.`;
-			}
+	class NipplePiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Nipple piercings", pairs);
+			this.setValue(current_rule.set.nipplesPiercing);
+			this.onchange = (value) => current_rule.set.nipplesPiercing = value;
 		}
+	}
 
-		if (rule.vaginaTat !== undefined && (rule.vaginaTat !== "no default setting")) {
-			if ((slave.vaginaTat !== rule.vaginaTat)) {
-				slave.vaginaTat = rule.vaginaTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s abdomen has been tattooed.`;
-			}
+	class AreolaPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Studded", 1]
+			];
+			super("Areola studs", pairs);
+			this.setValue(current_rule.set.areolaePiercing);
+			this.onchange = (value) => current_rule.set.areolaePiercing = value;
 		}
+	}
 
-		if ((slave.dick > 0)) {
-			if (rule.dickTat !== undefined && (rule.dickTat !== "no default setting")) {
-				if ((slave.dickTat !== rule.dickTat)) {
-					slave.dickTat = rule.dickTat;
-					V.cash -= V.modCost;
-					r += `<br>${slave.slaveName}'s dick has been tattooed.`;
-				}
-			}
+	class LipPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Lip piercings", pairs);
+			this.setValue(current_rule.set.lipsPiercing);
+			this.onchange = (value) => current_rule.set.lipsPiercing = value;
 		}
+	}
 
-		if (rule.lipsTat !== undefined && (rule.lipsTat !== "no default setting")) {
-			if ((slave.lipsTat !== rule.lipsTat)) {
-				slave.lipsTat = rule.lipsTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s face has been tattooed.`;
-			}
+	class TonguePiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Tongue piercing", pairs);
+			this.setValue(current_rule.set.tonguePiercing);
+			this.onchange = (value) => current_rule.set.tonguePiercing = value;
 		}
+	}
 
-		if (rule.anusTat !== undefined && (rule.anusTat !== "no default setting")) {
-			if ((slave.anusTat !== rule.anusTat)) {
-				slave.anusTat = rule.anusTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s asshole has been modded.`;
-			}
+	class ClitPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2],
+				["Smart (expensive)", 3]
+			];
+			super("Clit piercing", pairs);
+			this.setValue(current_rule.set.clitPiercing);
+			this.onchange = (value) => current_rule.set.clitPiercing = value;
 		}
+	}
 
-		if (rule.shouldersTat !== undefined && (rule.shouldersTat !== "no default setting")) {
-			if ((slave.shouldersTat !== rule.shouldersTat)) {
-				slave.shouldersTat = rule.shouldersTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s shoulders have been tattooed.`;
-			}
+	class LabiaPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Pussylips piercings", pairs);
+			this.setValue(current_rule.set.vaginaPiercing);
+			this.onchange = (value) => current_rule.set.vaginaPiercing = value;
 		}
+	}
 
-		if (rule.armsTat !== undefined && (rule.armsTat !== "no default setting")) {
-			if ((slave.armsTat !== rule.armsTat)) {
-				slave.armsTat = rule.armsTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s arms have been tattooed.`;
-			}
+	class ShaftPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Shaft piercings", pairs);
+			this.setValue(current_rule.set.dickPiercing);
+			this.onchange = (value) => current_rule.set.dickPiercing = value;
 		}
+	}
 
-		if (rule.legsTat !== undefined && (rule.legsTat !== "no default setting")) {
-			if ((slave.legsTat !== rule.legsTat)) {
-				slave.legsTat = rule.legsTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s legs have been tattooed.`;
-			}
+	class PerineumPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Light", 1],
+				["Heavy", 2]
+			];
+			super("Perianal piercings", pairs);
+			this.setValue(current_rule.set.anusPiercing);
+			this.onchange = (value) => current_rule.set.anusPiercing = value;
 		}
+	}
 
-		if (rule.stampTat !== undefined && (rule.stampTat !== "no default setting")) {
-			if ((slave.stampTat !== rule.stampTat)) {
-				slave.stampTat = rule.stampTat;
-				V.cash -= V.modCost;
-				r += `<br>${slave.slaveName}'s lower back has been tattooed.`;
-			}
-		}
-		if ((rule.autoBrand == 1)) {
-			if ((slave.brand === 0)) {
-				if ((slave.health > -20)) {
-					slave.brand = V.brandDesign;
-					slave.brandLocation = V.brandTarget;
-					if ((slave.devotion < 18))
-						slave.devotion -= 5;
-					slave.trust -= 5;
-					slave.health -= 10;
-					r += `<br>${slave.slaveName} has been branded, with <span class="gold">fear</span>${slave.devotion < 18? `, <span class="mediumorchid">regard,</span>`:``} and <span class="red">health</span> consequences.`;
-				}
-			}
+	class CorsetPiercingList extends List {
+		constructor() {
+			const pairs = [
+				["No default setting", "no default setting"],
+				["None", 0],
+				["Apply", 1]
+			];
+			super("Corset piercings", pairs);
+			this.setValue(current_rule.set.corsetPiercing);
+			this.onchange = (value) => current_rule.set.corsetPiercing = value;
 		}
 	}
 
-	function ProcessPorn(slave, rule) {
-		if ((rule.pornFameSpending !== undefined) && (rule.pornFameSpending !== "no default setting")) {
-			if ((slave.prestige < 3)) {
-				if ((slave.pornFameSpending !== rule.pornFameSpending)) {
-					slave.pornFameSpending = rule.pornFameSpending;
-					r += `<br>${slave.slaveName}'s porn publicity has been corrected.`;
-				}
-			}
+	class AutoBrandingList extends List {
+		constructor() {
+			const pairs = [
+				["Activate", 1],
+				["Off", 0],
+			];
+			super("Automatic branding", pairs);
+			this.setValue(current_rule.set.autoBrand);
+			this.onchange = (value) => current_rule.set.autoBrand = value;
 		}
 	}
 
-	return DefaultRules;
-})();
+	class BrandingLocationList extends List {
+		constructor() {
+			super("Your preferred location for brands is", []);
 
-/*:: Rules Assistant Options [script]*/
-// rewrite of the rules assistant options page in javascript
-// uses an object-oriented widget pattern
-// wrapped in a closure so as not to polute the global namespace
-// the widgets are generic enough to be reusable; if similar user interfaces are ported to JS, we could move the classes to the global scope
+			const ears = new ListSubSection(this, "Ears", [
+				["Left", "left ear"],
+				["Right", "right ear"],
+				["Both", "ears"]
+			]);
+			this.appendChild(ears);
 
-window.rulesAssistantOptions = (function() {
-	"use strict";
-	let V, current_rule;
+			const cheeks = new ListSubSection(this, "Cheeks", [
+				["Left", "left cheek"],
+				["Right", "right cheek"],
+				["Both", "cheeks"]
+			]);
+			this.appendChild(cheeks);
 
-	function rulesAssistantOptions(element) {
-		V = State.variables;
-		V.nextButton = "Back to Main";
-		V.nextLink = "Main";
-		V.returnTo = "Main";
-		V.showEncyclopedia = 1;
-		V.encyclopedia = "Personal Assistant";
-		if (V.currentRule !== null) {
-			const idx = V.defaultRules.findIndex(rule => rule.ID === V.currentRule);
-			if (idx === -1)
-				current_rule = V.defaultRules[0];
-			else
-				current_rule = V.defaultRules[idx];
-		}
-		const root = new Root(element);
-	}
+			const shoulders = new ListSubSection(this, "Shoulders", [
+				["Left", "left shoulder"],
+				["Right", "right shoulder"],
+				["Both", "shoulders"]
+			]);
+			this.appendChild(shoulders);
 
-	function returnP(e) { return e.keyCode === 13; }
+			const breasts = new ListSubSection(this, "Breasts", [
+				["Left", "right breast"],
+				["Right", "left breast"],
+				["Both", "breasts"]
+			]);
+			this.appendChild(breasts);
 
-	function newRule(root) {
-		const rule = emptyDefaultRule();
-		V.defaultRules.push(rule);
-		V.currentRule = rule.ID;
-		reload(root);
-	}
+			const upper_arms = new ListSubSection(this, "Arms, upper", [
+				["Left", "left upper arm"],
+				["Right", "right upper arm"],
+				["Both", "upper arms"]
+			]);
+			this.appendChild(upper_arms);
 
-	function removeRule(root) {
-		const idx = V.defaultRules.findIndex(rule => rule.ID === current_rule.ID);
-		V.defaultRules.splice(idx, 1);
-		if (V.defaultRules.length > 0) {
-			const new_idx = idx < V.defaultRules.length ? idx : V.defaultRules.length - 1;
-			V.currentRule = V.defaultRules[new_idx].ID;
-		} else V.currentRule = null;
-		reload(root);
-	}
+			const lower_arms = new ListSubSection(this, "Arms, lower", [
+				["Left", "left lower arm"],
+				["Right", "right lower arm"],
+				["Both", "lower arms"]
+			]);
+			this.appendChild(lower_arms);
 
-	function lowerPriority(root) {
-		if (V.defaultRules.length === 1) return; // nothing to swap with
-		const idx = V.defaultRules.findIndex(rule => rule.ID === current_rule.ID);
-		if (idx === 0) return; // no lower rule
-		arraySwap(V.defaultRules, idx, idx-1);
-		reload(root);
-	}
+			const wrist = new ListSubSection(this, "Wrist", [
+				["Left", "left wrist"],
+				["Right", "right wrist"],
+				["Both", "wrists"]
+			]);
+			this.appendChild(wrist);
+
+			const hand = new ListSubSection(this, "Hand", [
+				["Left", "left hand"],
+				["Right", "right hand"],
+				["Both", "hands"]
+			]);
+			this.appendChild(hand);
+
+			const buttocks = new ListSubSection(this, "Buttocks", [
+				["Left", "left buttock"],
+				["Right", "right buttock"],
+				["Both", "buttocks"]
+			]);
+			this.appendChild(buttocks);
+
+			const thigh = new ListSubSection(this, "Thigh", [
+				["Left", "left thigh"],
+				["Right", "right thigh"],
+				["Both", "thighs"]
+			]);
+			this.appendChild(thigh);
+
+			const calf = new ListSubSection(this, "Calf", [
+				["Left", "left calf"],
+				["Right", "right calf"],
+				["Both", "calves"]
+			]);
+			this.appendChild(calf);
+
+			const ankle = new ListSubSection(this, "Ankle", [
+				["Left", "left ankle"],
+				["Right", "right ankle"],
+				["Both", "ankles"]
+			]);
+			this.appendChild(ankle);
+
+			const feet = new ListSubSection(this, "Feet", [
+				["Left", "left foot"],
+				["Right", "right foot"],
+				["Both", "feet"]
+			]);
+			this.appendChild(feet);
+
+			const other = new ListSubSection(this, "Other", [
+				["Neck", "neck"],
+				["Chest", "chest"],
+				["Belly", "belly"],
+				["Pubic mound", "pubic mound"],
+				["Back", "back"],
+				["Lower Back", "lower back"]
+			]);
+			this.appendChild(other);
 
-	function higherPriority(root) {
-		if (V.defaultRules.length === 1) return; // nothing to swap with
-		const idx = V.defaultRules.findIndex(rule => rule.ID === current_rule.ID);
-		if (idx === V.defaultRules.length - 1) return; // no higher rule
-		arraySwap(V.defaultRules, idx, idx+1);
-		reload(root);
+			this.setValue(V.brandTarget);
+			this.onchange = (value) => V.brandTarget = value;
+		}
 	}
 
-	function changeName(name, root) {
-		if (name === current_rule.name) return;
-		current_rule.name = name;
-		reload(root);
-	}
+	class BrandDesignList extends List {
+		constructor() {
+			const items = [
+				["Your  slaving emblem", "your personal symbol"],
+				["Your initials", "your initials"],
+				["SLUT"],
+				["WHORE"],
+				["SLAVE"],
+				["COW"],
+				["MEAT"],
+				["CUMDUMP"],
+				["LOVER"],
+				["Pussy symbol", "a pussy symbol"],
+				["Anus symbol", "an anus symbol"],
+				["Penis symbol", "a penis symbol"],
+				["Lady", "a lady silhouette"],
+				["Princess", "a princess silhouette"],
+				["Queen", "a queen silhouette"],
+				["Angel", "an angel silhouette"],
+				["Devil", "a devil silhouette"]
+			];
+			
+			if (V.arcologies[0].FSSupremacist !== "unset" || V.arcologies[0].FSSubjugationist !== "unset")
+				items.push(["(FS) Racial Slur", "a racial slur"]);
+			
+			if (V.arcologies[0].FSSupremacist !== "unset" && V.arcologies[0].FSSupremacistRace === "white")
+				items.push(["(FS) Swastika", "a swastika"]);
+			
+			if (V.arcologies[0].FSSubjugationist !== "unset" && V.arcologies[0].FSSubjugationistRace === "semitic")
+				items.push(["(FS) Star of David", "a Star of David"]);
 
-	// reload the passage
-	function reload(root) {
-		const elem = root.element;
-		elem.innerHTML = "";
-		rulesAssistantOptions(elem);
-	}
+			if (V.arcologies[0].FSGenderRadicalist !== "unset" || V.arcologies.FSGenderFundamentalist !== "unset")
+				items.push(["(FS) Gender Symbol", "a gender symbol"]);
 
-	const parse = {
-		integer(string) {
-			let n = parseInt(string, 10);
-			return isNaN(n)? 0: n;
-		},
-		boobs(string) {
-			return Math.clamp(parse.integer(string), 0, 48000);
-		},
-		butt(string) {
-			return Math.clamp(parse.integer(string), 0, 20);
-		},
-		lips(string) {
-			return Math.clamp(parse.integer(string), 0, 100);
-		},
-		dick(string) {
-			return Math.clamp(parse.integer(string), 0, 30);
-		},
-		balls(string) {
-			return Math.clamp(parse.integer(string), 0, 125);
-		},
-	};
+			if (V.arcologies[0].FSPaternalist !== "unset")
+				items.push(["(FS) Personal Symbol", "her own personal symbol"]);
 
-	// the Element class wraps around a DOM element and adds extra functionality
-	// this is safer than extending DOM objects directly
-	// it also turns DOM manipulation into an implementation detail
-	class Element {
-		constructor(...args) {
-			this.parent = null;
-			this.element = this.render(...args);
-			this.children = [];
-		}
+			if (V.arcologies[0].FSDegradationist !== "unset")
+				items.push(["(FS) Chain Symbol", "a chain symbol"]);
 
-		appendChild(child) {
-			child.parent = this;
-			this.children.push(child);
-			this.element.appendChild(child.element);
-		}
+			if (V.arcologies[0].FSBodyPurist !== "unset")
+				items.push(["(FS) Vitruvian Man", "a Vitruvian man"]);
 
-		// return the first argument to simplify creation of basic container items
-		render(...args) {
-			return args[0];
-		}
+			if (V.arcologies[0].FSTransformationFetishist !== "unset")
+				items.push(["(FS) Most Desired Implants", "a shortlist of desired implants"]);
 
-		remove() {
-			const idx = this.parent.children.findIndex(child => child === this);
-			this.parent.children.slice(idx, 1);
-			this.element.remove();
-		}
-	}
-	
-	class Section extends Element {
-		constructor(header, hidden=false) {
-			super(header);
-			this.hidey = this.element.querySelector("div");
-			if (hidden) this.toggle_hidey();
-		}
-		
-		render(header) {
-			const section = document.createElement("section");
-			section.classList.add("rajs-section");
-			const h1 = document.createElement("h1");
-			h1.onclick = () => { this.toggle_hidey(); };
-			h1.innerHTML = header;
-			const hidey = document.createElement("div");
-			section.appendChild(h1);
-			section.appendChild(hidey);
-			return section;
-		}
+			if (V.arcologies[0].FSYouthPreferentialist !== "unset")
+				items.push(["(FS) Virginity Status", "her virginity status"]);
 
-		appendChild(child) {
-			child.parent = this;
-			this.children.push(child);
-			this.hidey.appendChild(child.element);
-		}
+			if (V.arcologies[0].FSMaturityPreferentialist !== "unset")
+				items.push(["(FS) Sexual Skill Info", "her sexual skills"]);
 
-		toggle_hidey() {
-			switch(this.hidey.style.display) {
-				case "none":
-					this.hidey.style.display = "initial";
-					break;
-				default:
-					this.hidey.style.display = "none";
-					break;
-			}
-		}
-	}
+			if (V.arcologies[0].FSSlimnessEnthusiast !== "unset")
+				items.push(["(FS) Breast Ceiling", "her absolute maximum breast size"]);
 
-	// list of clickable elements
-	// has a short explanation (the prefix) and a value display
-	// value display can optionally be an editable text input field
-	// it can be "bound" to a variable by setting its "onchange" method
-	class List extends Element {
-		constructor(prefix, data=[], textinput=false) {
-			super(prefix + ": ", textinput);
-			this.selectedItem = null;
-			data.forEach(item => this.appendChild(new ListItem(...item)));
-		}
+			if (V.arcologies[0].FSAssetExpansionist !== "unset")
+				items.push(["(FS) Breast Floor", "her absolute minimum breast size"]);
 
-		render(prefix, textinput) {
-			const elem = document.createElement("div");
-			const label = document.createElement("span");
-			label.innerHTML = prefix;
-			let value;
-			if (textinput) {
-				value = document.createElement("input");
-				value.setAttribute("type", "text");
-				value.classList.add("rajs-value"); // 
-				// call the variable binding when the input field is no longer being edited, and when the enter key is pressed
-				value.onblur = () => {this.inputEdited(); };
-				value.onkeypress = (e) => { if (returnP(e)) this.inputEdited(); };
-			} else {
-				value = document.createElement("strong");
-			}
-			this.value = value;
-			elem.appendChild(label);
-			elem.appendChild(value);
-			elem.classList.add("rajs-list");
-			return elem;
-		}
+			if (V.arcologies[0].FSPastoralist !== "unset")
+				items.push(["(FS) Product Quality", "her body product quality"]);
 
-		inputEdited() {
-			if (this.selectedItem) this.selectedItem.deselect();
-			this.propagateChange();
-		}
+			if (V.arcologies[0].FSPhysicalIdelist !== "unset")
+				items.push(["(FS) Deadlift Info", "her deadlift record"]);
 
-		selectItem(item) {
-			if (this.selectedItem) this.selectedItem.deselect();
-			this.selectedItem = item;
-			this.setValue(item.data);
-			this.propagateChange();
-		}
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset")
+				items.push(["(FS) Weight Record", "her highest weigh-in"]);
 
-		setValue(what) {
-			if (this.value.tagName === "INPUT")
-				this.value.value = ""+what;
-			else
-				this.value.innerHTML = ""+what;
-		}
+			if (V.arcologies[0].FSHedonisticDecadence && V.PC.refreshmentType == 2)
+				items.push(["(FS) Favorite Food", `a big helping of ${V.PC.refreshment}`]);
 
-		getData(what) {
-			return (this.value.tagName === "INPUT" ? this.parse(this.value.value): this.selectedItem.data);
-		}
+			if (V.arcologies[0].FSRepopulationFocus !== "unset")
+				items.push(["(FS) Birth Count", "the number of children she has birthed"]);
 
-		// customisable input field parser / sanity checker
-		parse(what) { return what; }
+			if (V.arcologies[0].FSChattelReligionist !== "unset")
+				items.push(["(FS) Religious Symbol", "a religious symbol"]);
 
-		propagateChange() {
-			if (this.onchange instanceof Function)
-				this.onchange(this.getData());
-		}
-	}
+			if (V.arcologies[0].FSRomanRevivalist !== "unset")
+				items.push(["(FS) Republican Crest", "a small crest of your Republic"]);
 
-	// a clickable item of a list
-	class ListItem extends Element {
-		constructor(displayvalue, data) {
-			super(displayvalue);
-			this.data = data !== undefined ? data: displayvalue;
-			this.selected = false;
-		}
+			if (V.arcologies[0].FSAztecRevivalist !== "unset")
+				items.push(["(FS) Seven Serpents", "a small symbol of the Aztec gods"]);
 
-		render(displayvalue) {
-			const elem = document.createElement("span");
-			elem.classList.add("rajs-listitem");
-			elem.innerHTML = displayvalue;
-			elem.onclick = () => { return this.select(); };
-			return elem;
-		}
+			if (V.arcologies[0].FSEgyptianRevivalist !== "unset")
+				items.push(["(FS) Dynastic Sigil", "a small sigil of your Dynasty"]);
 
-		select() {
-			if (this.selected) return false;
-			this.parent.selectItem(this);
-			this.element.classList.add("selected");
-			this.selected = true;
-			return true;
-		}
+			if (V.arcologies[0].FSEdoRevivalist !== "unset")
+				items.push(["(FS) Mon", "a small image of the Shogunate's mon"]);
 
-		deselect() {
-			this.element.classList.remove("selected");
-			this.selected = false;
+			if (V.arcologies[0].FSArabianRevivalist !== "unset")
+				items.push(["(FS) Caliphate Symbol", "a small symbol of the Caliphate"]);
+
+			if (V.arcologies[0].FSChineseRevivalist !== "unset")
+				items.push(["(FS) Imperial Seal", "a small image of your Imperial Seal"]);
+			
+			super("Your brand design is", items, true);
 		}
 	}
 
-	// a way to organise lists with too many elements in subsections
-	// children are bound to the master list
-	class ListSubSection extends Element {
-		constructor(parent, label, pairs) {
-			super(label);
-			this.parent = parent;
-			pairs.forEach(item => this.appendChild(new ListItem(...item)));
+	class FaceTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["permanent makeup"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"]
+			];
+			super("Facial tattoos", items);
+			this.setValue(current_rule.set.lipsTat);
+			this.onchange = (value) => current_rule.set.lipsTat = value;
 		}
-		
-		render(label) {
-			const elem = document.createElement("div");
-			const lelem = document.createElement("em");
-			lelem.innerText = label + ": ";
-			elem.appendChild(lelem);
-			return elem;
+	}
+	
+	class ShoulderTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["scenes"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"]
+			];
+			super("Shoulder tattoos", items);
+			this.setValue(current_rule.set.shouldersTat);
+			this.onchange = (value) => current_rule.set.shouldersTat = value;
 		}
+	}
 
-		appendChild(child) {
-			super.appendChild(child);
-			child.parent = this.parent;
-			this.parent.children.push(child);
+	class ChestTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["scenes"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"]
+			];
+			super("Chest tattoos", items);
+			this.setValue(current_rule.set.boobsTat);
+			this.onchange = (value) => current_rule.set.boobsTat = value;
 		}
 	}
 
-	// similar to list, but is just a collection of buttons
-	class Options extends Element {
-		constructor(elements=[]) {
-			super();
-			elements.forEach(element => { this.appendChild(element); });
+	class ArmTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["scenes"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"]
+			];
+			super("Arm tattoos", items);
+			this.setValue(current_rule.set.armsTat);
+			this.onchange = (value) => current_rule.set.armsTat = value;
 		}
+	}
 
-		render() {
-			const elem = document.createElement("div");
-			elem.classList.add("rajs-list");
-			return elem;
+	class UpperBackTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["scenes"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"],
+			];
+			super("Upper back tattoos", items);
+			this.setValue(current_rule.set.backTat);
+			this.onchange = (value) => current_rule.set.backTat = value;
 		}
 	}
 
-	// options equivalent of ListItem
-	class OptionsItem extends Element {
-		constructor(label, onclick) {
-			super(label);
-			this.label = label;
-			this.onclick = onclick;
+	class LowerBackTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["scenes"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"]
+			];
+			super("Lower back tattoos", items);
+			this.setValue(current_rule.set.stampTat);
+			this.onchange = (value) => current_rule.set.stampTat = value;
 		}
-		render(label, onclick) {
-			const elem = document.createElement("span");
-			elem.classList.add("rajs-listitem");
-			elem.innerHTML = label;
-			elem.onclick = () => { return this.onclick(this); };
-			return elem;
+	}
+
+	class AbdomenTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["scenes"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"],
+			];
+			super("Abdomen tattoos", items);
+			this.setValue(current_rule.set.vaginaTat);
+			this.onchange = (value) => current_rule.set.vaginaTat = value;
 		}
 	}
 
-	class ButtonList extends Element {
-		render(label) {
-			const elem = document.createElement("div");
-			const labelel = document.createElement("span");
-			labelel.innerHTML = label += ": ";
-			elem.appendChild(labelel);
-			return elem;
+	class DickTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"],
+			];
+			super("Dick tattoos", items);
+			this.setValue(current_rule.set.dickTat);
+			this.onchange = (value) => current_rule.set.dickTat = value;
 		}
+	}
 
-		getSelection() {
-			return (this.children
-				.filter(child => child.selected)
-				.map(child => child.setvalue)
-			);
+	class ButtockTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["scenes"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"],
+			];
+			super("Buttock tattoos:", items);
+			this.setValue(current_rule.set.buttTat);
+			this.onchange = (value) => current_rule.set.buttTat = value;
 		}
-
-		onchange() { return; }
 	}
 
-	class ButtonItem extends Element {
-		constructor(label, setvalue, selected=false) {
-			super(label, selected);
-			this.selected = selected;
-			this.setvalue = setvalue ? setvalue : label;
+	class AnalTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["bleached"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"],
+			];
+			super("Anal tattoo or bleaching", items);
+			this.setValue(current_rule.set.anusTat);
+			this.onchange = (value) => current_rule.set.anusTat = value;
 		}
+	}
 
-		render(label, selected) {
-			const container = document.createElement("div");
-			container.classList.add("rajs-listitem");
-
-			const labelel = document.createElement("span");
-			labelel.innerHTML = label;
-
-			const button = document.createElement("input");
-			button.setAttribute("type", "checkbox");
-			button.checked = selected;
-			button.onchange = () => this.onchange(button.checked);
-			labelel.onclick = () => button.click();
-
-			container.appendChild(labelel);
-			container.appendChild(button);
-
-			return container;
+	class LegTattooList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["none", 0],
+				["tribal patterns"],
+				["flowers"],
+				["counting"],
+				["advertisements"],
+				["rude words"],
+				["degradation"],
+				["bovine patterns"],
+				["Asian art"],
+				["scenes"],
+				["sacrament"],
+				["sacrilege"],
+				["possessive"],
+				["paternalist"],
+			];
+			super("Leg tattoos", items);
+			this.setValue(current_rule.set.legsTat);
+			this.onchange = (value) => current_rule.set.legsTat = value;
 		}
+	}
 
-		onchange(value) {
-			this.selected = value;
-			this.parent.onchange(this);
+	class VisionSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["fixed", 1],
+				["blurred", -1],
+			];
+			super("Vision correction", items);
+			this.setValue(current_rule.set.surgery_eyes);
+			this.onchange = (value) => current_rule.set.surgery_eyes = value;
 		}
 	}
 
-	// rule import field
-	class NewRuleField extends Element {
-		constructor(root) {
-			super();
-			this.root = root;
+	class LactationSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["implanted", 1],
+				["removed", 0],
+			];
+			super("Lactation drug implants", items);
+			this.setValue(current_rule.set.surgery_lactation);
+			this.onchange = (value) => current_rule.set.surgery_lactation = value;
 		}
+	}
 
-		render() {
-			let element = document.getElementById("importfield");
-			if (element !== null) { return element; }
-			const container = document.createElement("div");
-			container.id = "importfield";
-			const textarea = document.createElement("textarea");
-			textarea.placeholder = "Paste your rule here";
-			container.appendChild(textarea);
-			this.textarea = textarea;
-			const button = document.createElement("button");
-			button.name = "Load";
-			button.innerHTML = "Load";
-			button.onclick = () => { this.loadNewRule(); };
-			container.appendChild(button);
-			return container;
+	class SemenSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["implanted", 1],
+				["removed", 0],
+			];
+			super("Prostate production enhancing drug implants", items);
+			this.setValue(current_rule.set.surgery_prostate);
+			this.onchange = (value) => current_rule.set.surgery_prostate = value;
 		}
+	}
 
-		loadNewRule() {
-			const text = this.textarea.value;
-			try {
-				const rule = JSON.parse(text);
-				if (rule instanceof Array)
-					rule.forEach(r => V.defaultRules.push(r));
-				else
-					V.defaultRules.push(rule);
-				reload(this.root);
-			} catch (e) {
-				alert("Couldn't import that rule:\n" + e.message);
-			}
+	class VasectomyList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["apply vasectomy", true],
+				["undo vasectomy", false],
+			];
+			super("Apply or undo vasectomy for slaves with testicles", items);
+			this.setValue(current_rule.set.surgery_vasectomy);
+			this.onchange = (value) => current_rule.set.surgery_vasectomy = value;
 		}
 	}
 
-	// the base element, parent of all elements
-	class Root extends Element {
-		constructor(element) {
-			super(element);
-			if(V.defaultRules.length === 0) {
-				const paragraph = document.createElement("p");
-				paragraph.innerHTML = "<strong>No rules</strong>";
-				this.appendChild(new Element(paragraph));
-				this.appendChild(new NoRules(this));
-				return;
-			}
-			this.appendChild(new RuleSelector(this));
-			this.appendChild(new RuleOptions(this));
-			this.appendChild(new ConditionEditor(this));
-			this.appendChild(new EffectEditor(this));
+	class CosmeticSurgeryList extends List {
+		constructor() {
+			const items = [
+				["none", 0],
+				["subtle", 1],
+				["invasive", 2],
+			];
+			super("Cosmetic Surgery", items);
+			this.setValue(current_rule.set.surgery_cosmetic);
+			this.onchange = (value) => current_rule.set.surgery_cosmetic = value;
 		}
+	}
 
-		render(element) {
-			const greeting = document.createElement("p");
-			greeting.innerHTML = `<em>${properTitle()}, I will review your slaves and make changes that will have a beneficial effect. Apologies, ${properTitle()}, but this function is... not fully complete. It may have some serious limitations. Please use the 'no default setting' option to identify areas I should not address.</em>`;
-			element.appendChild(greeting);
-			return element;
+	class LipSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["removed", 0],
+				["plush", 20],
+				["big", 40],
+				["huge", 70],
+				["facepussy", 95],
+			];
+			super("Lip implants", items);
+			this.setValue(current_rule.set.surgery_lips);
+			this.onchange = (value) => current_rule.set.surgery_lips = value;
 		}
 	}
 
-	// optoins displayed when there are no rules
-	class NoRules extends Options {
-		constructor(root) {
-			super();
-			this.root = root;
-			const newrule = new OptionsItem("Add a new rule", () => { newRule(this.root); });
-			this.appendChild(newrule);
-			const importrule = new OptionsItem("Import a rule", () => { this.root.appendChild(new NewRuleField(this.root)); });
-			this.appendChild(importrule);
+	class ButtSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["removed", 0],
+				["slim", 2],
+				["stacked", 4],
+				["huge", 6],
+				["maximised", 9],
+			];
+			super("Buttock implants", items);
+			this.setValue(current_rule.set.surgery_butt);
+			this.onchange = (value) => current_rule.set.surgery_butt = value;
 		}
 	}
 
-	// buttons for selecting the current rule
-	class RuleSelector extends List {
-		constructor(root) {
-			super("Current rule", V.defaultRules.map(i => [i.name, i]));
-			this.setValue(current_rule.name);
-			this.onchange = function (rule) {
-				V.currentRule = rule.ID;
-				reload(root);
-			};
+	class BreastSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["removed", 0],
+				["slim", 400],
+				["stacked", 1000],
+				["huge", 2000],
+				["barely functional", 9000],
+				["maximised", 48000]
+			];
+			super("Breast implants", items);
+			this.setValue(current_rule.set.surgery_boobs);
+			this.onchange = (value) => current_rule.set.surgery_boobs = value;
 		}
 	}
 
-	// buttons for doing transformations on rules
-	class RuleOptions extends Options {
-		constructor(root) {
-			super();
-			this.appendChild(new OptionsItem("New Rule", () => newRule(root)));
-			this.appendChild(new OptionsItem("Remove Rule", () => removeRule(root)));
-			this.appendChild(new OptionsItem("Apply rules", () => this.appendChild(new ApplicationLog())));
-			this.appendChild(new OptionsItem("Lower Priority", () => lowerPriority(root)));
-			this.appendChild(new OptionsItem("Higher Priority", () => higherPriority(root)));
-			this.appendChild(new OptionsItem("Rename", () => this.appendChild(new RenameField(root))));
-			this.appendChild(new OptionsItem("Export this rule", () => this.appendChild(new ExportField(current_rule))));
-			this.appendChild(new OptionsItem("Export all rules", () => this.appendChild(new ExportField(...V.defaultRules))));
-			this.appendChild(new OptionsItem("Import rule(s)", () => this.appendChild(new NewRuleField(root))));
+	class TighteningSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["tightening", 1],
+				["virginity restoration", 2],
+			];
+			super("Orifice Tightening", items);
+			this.setValue(current_rule.set.surgery_holes);
+			this.onchange = (value) => current_rule.set.surgery_holes = value;
 		}
 	}
 
-	class ApplicationLog extends Element {
-		render() {
-			const elem = document.createElement("div");
-			clearSummaryCache();
-			elem.innerHTML = V.slaves.map(slave => DefaultRules(slave)).join("");
-			return elem;
+	class BodyHairSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["keep", 1],
+				["removal", 2],
+			];
+			super("Body Hair", items);
+			this.setValue(current_rule.set.surgery_bodyhair);
+			this.onchange = (value) => current_rule.set.surgery_bodyhair = value;
 		}
 	}
 
-	class RenameField extends Element {
-		constructor(root) {
-			super();
-			this.element.onblur = () => changeName(this.element.value, root);
-			this.element.onkeypress = (e) => { if (returnP(e)) changeName(this.element.value, root); };
-		}
-
-		render() {
-			const elem = document.createElement("input");
-			elem.setAttribute("type", "text");
-			elem.setAttribute("value", current_rule.name);
-			return elem;
+	class HairSurgeryList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["keep", 1],
+				["removal", 2],
+			];
+			super("Hair", items);
+			this.setValue(current_rule.set.surgery_hair);
+			this.onchange = (value) => current_rule.set.surgery_hair = value;
 		}
 	}
 
-	class ExportField extends Element {
-		render(...args) {
-			let element = document.getElementById("exportfield");
-			if (element === null) {
-				element = document.createElement("textarea");
-				element.id = "exportfield";
-			}
-			element.value = JSON.stringify(args, null, 2);
-			return element;
+	class AutomaticAssignmentList extends List {
+		constructor() {
+			const items = [
+				["No default setting", "no default setting"],
+				["Rest", "rest"],
+				["Fucktoy", "please you"],
+				["Subordinate Slave", "be a subordinate slave"],
+				["House Servant", "be a servant"],
+				["Confined", "stay confined"],
+				["Whore", "whore"],
+				["Public Servant", "serve the public"],
+				["Classes", "take classes"],
+				["Milked", "get milked"],
+				["Gloryhole", "work a glory hole"]
+			];
+			
+			if (V.HGSuite > 0) items.push(["Head Girl Suite", "live with your Head Girl"]);
+			if (V.brothel > 0) items.push(["Brothel", "work in the brothel"]);
+			if (V.club > 0) items.push(["Club", "serve in the club"]);
+			if (V.arcade > 0) items.push(["Arcade", "be confined in the arcade"]);
+			if (V.dairy > 0) items.push(["Dairy", "work in the dairy"]);
+			if (V.servantsQuarters > 0) items.push(["Servant Quarters", "work as a servant"]);
+			if (V.masterSuite > 0) items.push(["Master Suite", "serve in the master suite"]);
+			if (V.schoolroom > 0) items.push(["Schoolroom", "learn in the schoolroom"]);
+			if (V.spa > 0) items.push(["Spa", "rest in the spa"]);
+			if (V.clinic > 0) items.push(["Clinic", "get treatment in the clinic"]);
+			if (V.cellblock > 0) items.push(["Cellblock", "be confined in the cellblock"]);
+			
+			super("Automatically set assignment", items);
+			this.setValue(current_rule.set.setAssignment);
+			this.onchange = (value) => current_rule.set.setAssignment = value;
 		}
 	}
 
-	// parent section for condition editing
-	class ConditionEditor extends Section {
+	class BellyImplantList extends List {
 		constructor() {
-			super("Activation Condition");
-			this.appendChild(new ConditionFunction());
-			this.appendChild(new AssignmentInclusion());
-			this.appendChild(new SpecialExclusion());
-			this.appendChild(new SpecificInclusionExclusion());
+			const items = [
+				["no default setting"],
+				["install", "install"],
+				["remove", "remove"],
+			];
+			super("Belly implant", items);
+			this.setValue(current_rule.set.surgery_bellyImplant);
+			this.onchange = (value) => current_rule.set.surgery_bellyImplant = value;
 		}
 	}
-
-	class ConditionFunction extends Element {
+	
+	class LabelList extends List {
 		constructor() {
-			super();
 			const items = [
-				["Never", false],
-				["Always", true],
-				["Custom", "custom"],
-				["Devotion", "devotion"],
-				["Trust", "trust"],
-				["Health", "health"],
-				["Sex drive", "energy"],
-				["Weight", "weight"],
-				["Age", "actualAge"],
-				["Body Age", "physicalAge"],
-				["Visible Age", "visualAge"],
-				["Muscles", "muscles"],
-				["Lactation", "lactation"],
-				["Pregnancy", "preg"],
-				["Pregnancy Multiples", "pregType"],
-				["Belly Implant", "bellyImplant"],
-				["Belly Size", "belly"],
-				["Education", "intelligenceImplant"],
-				["Intelligence", "intelligence"],
-				["Fetish", "fetish"],
-				["Accent", "accent"],
-				["Waist", "waist"],
-				["Amputation", "amp"],
+				["no default setting"],
 			];
-			this.fnlist = new List("Activation function", items);
-			this.fnlist.setValue(current_rule.condition.function === "between" ? current_rule.condition.data.attribute : current_rule.condition.function);
-			this.fnlist.onchange = (value) => this.fnchanged(value);
-			this.appendChild(this.fnlist);
-			this.fneditor = null;
+			super("Custom label", items, true);
+			this.setValue(current_rule.set.label);
+			this.onchange = (value) => current_rule.set.label = value;
+		}
+	}
+	
+	return rulesAssistantOptions;
+})();
 
-			switch(current_rule.condition.function) {
-				case false:
-				case true:
-					break;
-				case "custom":
-					this.show_custom_editor(CustomEditor, current_rule.condition.data);
-					break;
-				case "between":
-					this.show_custom_editor(RangeEditor, current_rule.condition.function, current_rule.condition.data);
-					break;
-				case "belongs":
-					this.show_custom_editor(ItemEditor, current_rule.condition.function, current_rule.condition.data);
-					break;
+/*:: rules autosurgery js [script]*/
+
+window.rulesAutosurgery = (function() {
+	"use strict";
+	let V;
+	let r;
+	return rulesAutoSurgery;
+
+	function rulesAutoSurgery(slave) {
+		V = State.variables;
+		r = "";
+		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) {
+		const surgery = {};
+		ruleset.forEach(rule => {
+			Object.keys(rule)
+				.filter(key => key.startsWith("surgery_") && rule[key] !== "no default setting")
+				.forEach(key => {
+					surgery[key] = rule[key];
+				});
+		});
+		return surgery;
+	}
+
+	function ProcessHGTastes(slave) {
+		let thisSurgery;
+		switch (V.HGTastes) {
+		case 1:
+			thisSurgery = {
+				surgery_lactation: 0,
+				surgery_cosmetic: 1,
+				surgery_faceShape: "cute",
+				surgery_lips: 10,
+				surgery_hips: 0,
+				surgery_hipsImplant: 0,
+				surgery_butt: 0,
+				surgery_accent: 0,
+				surgery_shoulders: 0,
+				surgery_shouldersImplant: 0,
+				surgery_boobs: 0,
+				surgery_holes: 0
+			};
+			break ;
+		case 2:
+			thisSurgery = {
+				surgery_lactation: 0,
+				surgery_cosmetic: 1,
+				surgery_faceShape: "cute",
+				surgery_lips: 60,
+				surgery_hips: 0,
+				surgery_hipsImplant: 0,
+				surgery_butt: 4,
+				surgery_accent: 0,
+				surgery_shoulders: 0,
+				surgery_shouldersImplant: 0,
+				surgery_boobs: 1200,
+				surgery_holes: 0
+			};
+			break;
+		case 3:
+			thisSurgery = {
+				surgery_lactation: 0,
+				surgery_cosmetic: 1,
+				surgery_faceShape: "cute",
+				surgery_lips: 95,
+				surgery_hips: 0,
+				surgery_hipsImplant: 0,
+				surgery_butt: 8,
+				surgery_accent: 0,
+				surgery_shoulders: 0,
+				surgery_shouldersImplant: 0,
+				surgery_boobs: 10000,
+				surgery_holes: 2
+			};
+			break;
+		case 4:
+			thisSurgery = {
+				surgery_lactation: 1,
+				surgery_cosmetic: 1,
+				surgery_faceShape: "cute",
+				surgery_lips: 10,
+				surgery_hips: 3,
+				surgery_hipsImplant: 0,
+				surgery_butt: 0,
+				surgery_accent: 0,
+				surgery_shoulders: 0,
+				surgery_shouldersImplant: 0,
+				surgery_boobs: 0,
+				surgery_holes: 0
+			};
+			break;
+		default:
+			thisSurgery = autoSurgerySelector(
+				slave,
+				V.defaultRules
+					.filter(x => ruleApplied(slave, x) && x.set.autoSurgery === 1)
+					.map(x => x.set));
+			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 (thisSurgery.surgery_butt > 6)
+						thisSurgery.surgery_butt = 6;
+				}
 			}
+			break;
 		}
+		return thisSurgery;
+	}
 
-		betweenP(attribute) {
-			return [
-				"devotion",
-				"trust",
-				"health",
-				"energy",
-				"weight",
-				"actualAge",
-				"physicalAge",
-				"visualAge",
-				"muscles",
-				"lactation",
-				"preg",
-				"pregType",
-				"bellyImplant",
-				"belly",
-				"intelligenceImplant",
-				"intelligence",
-				"accent",
-				"waist",
-			].includes(attribute);
-		}
-
-		belongsP(attribute) {
-			return [
-				"fetish",
-				"amp",
-			].includes(attribute);
-		}
-
-		show_custom_editor(what, ...args) {
-			if (this.custom_editor !== null) this.hide_custom_editor();
-			this.custom_editor = new what(...args);
-			this.appendChild(this.custom_editor);
-		}
-
-		hide_custom_editor() {
-			if (this.custom_editor) {
-				this.custom_editor.remove();
-				this.custom_editor = null;
+	function CommitSurgery(slave, thisSurgery, surgeries) {
+		if ((slave.eyes == -1) && (thisSurgery.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_cosmetic > 0)) {
+			surgeries.push("a nicer face");
+			if (slave.faceShape == "masculine") slave.faceShape = "androgynous";
+			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-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.surgery_cosmetic > 0)) {
+			surgeries.push("an age lift");
+			slave.ageImplant = 1;
+			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-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.surgery_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.surgery_hair == 2)) {
+			surgeries.push("hair removal");
+			slave.hStyle = "bald";
+			slave.bald = 1;
+			V.cash -= V.surgeryCost;
+			
+		} else if ((slave.weight >= 10) && (thisSurgery.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_lips)) {
+			if (thisSurgery.surgery_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.surgery_cosmetic == 2)) {
+			surgeries.push("a nicer face");
+			if (slave.faceShape == "masculine") slave.faceShape = "androgynous";
+			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-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.surgery_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.surgery_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/50)-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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_butt)) {
+			if (thisSurgery.surgery_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;
 			}
-		}
-
-		render() {
-			const elem = document.createElement("div");
-			return elem;
-		}
-
-		fnchanged(value) {
-			if (this.fneditor !== null) {
-				this.fneditor.element.remove();
-				this.fneditor = null;
+		} else if ((slave.boobs <= 600) && (slave.lactation < 2) && (slave.boobs+400 <= thisSurgery.surgery_boobs)) {
+			if (thisSurgery.surgery_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;
 			}
-			if (value === true || value === false) {
-				current_rule.condition.function = value;
-				current_rule.condition.data = {};
-				this.hide_custom_editor();
-			} else if (value === "custom") {
-				current_rule.condition.function = "custom";
-				current_rule.condition.data = "";
-				this.show_custom_editor(CustomEditor, current_rule.condition.data);
-			} else if (this.betweenP(value)) {
-				current_rule.condition.function = "between";
-				current_rule.condition.data = { attribute: value, value: [null, null] };
-				this.show_custom_editor(RangeEditor, current_rule.condition.function, current_rule.condition.data);
-			} else if (this.belongsP(value)) {
-				current_rule.condition.function = "belongs";
-				current_rule.condition.data = { attribute: value, value: [] };
-				this.show_custom_editor(ItemEditor, current_rule.condition.function, current_rule.condition.data);
+		} else if ((slave.boobs <= 600) && (slave.lactation < 2) && (slave.boobs+200 <= thisSurgery.surgery_boobs)) {
+			if (thisSurgery.surgery_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;
 			}
-		}
-	}
-
-	class CustomEditor extends Element {
-		constructor(data) {
-			if (data.length === 0) data = "(slave) => slave.slaveName === 'Fancy Name'";
-			super(data);
-		}
-
-		render(data) {
-			const elem = document.createElement("div");
-			const textarea = document.createElement("textarea");
-			textarea.innerHTML = data;
-			textarea.onblur = () => current_rule.condition.data = textarea.value;
-			elem.appendChild(textarea);
-			const explanation = document.createElement("div");
-			explanation.innerHTML = "Insert a valid <a target='_blank' class='link-external' href='https://www.w3schools.com/js/js_comparisons.asp'>JavaScript comparison and/or logical operation</a>.";
-			elem.appendChild(explanation);
-			return elem;
-		}
-	}
-
-	class RangeEditor extends Element {
-		render(fn, data) {
-			const elem = document.createElement("div");
-
-			const minlabel = document.createElement("label");
-			minlabel.innerHTML = "Lower bound: ";
-			elem.appendChild(minlabel);
-
-			const min = document.createElement("input");
-			min.setAttribute("type", "text");
-			min.value = "" + data.value[0];
-			min.onkeypress = e => { if (returnP(e)) this.setmin(min.value); };
-			min.onblur = e => this.setmin(min.value);
-			this.min = min;
-			elem.appendChild(min);
-
-			elem.appendChild(document.createElement("br"));
-
-			const maxlabel = document.createElement("label");
-			maxlabel.innerHTML = "Upper bound: ";
-			elem.appendChild(maxlabel);
-
-			const max = document.createElement("input");
-			max.setAttribute("type", "text");
-			max.value = "" + data.value[1];
-			max.onkeypress = e => { if (returnP(e)) this.setmax(max.value); };
-			max.onblur = e => this.setmax(max.value);
-			this.max = max;
-			elem.appendChild(max);
-
-			const infobar = document.createElement("div");
-			infobar.innerHTML = this.info(data.attribute);
-			elem.appendChild(infobar);
-
-			return elem;
-		}
-
-		parse(value) {
-			value = value.trim();
-			if (value === "null") value = null;
-			else {
-				value = parseInt(value);
-				if (isNaN(value)) value = null;
+			
+		} else if ((slave.butt <= 5) && (slave.butt < thisSurgery.surgery_butt)) {
+			if (thisSurgery.surgery_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;
 			}
-			return value;
-		}
-
-		setmin(value) {
-			current_rule.condition.data.value[0] = this.parse(value);
-			this.min.value = ""+current_rule.condition.data.value[0];
-		}
-
-		setmax(value) {
-			current_rule.condition.data.value[1] = this.parse(value);
-			this.max.value = ""+current_rule.condition.data.value[1];
-		}
-
-		info(attribute) {
-			return ({
-				"devotion": "Very Hateful: (-∞, -95), Hateful: [-95, -50), Resistant: [-50, -20), Ambivalent: [-20, 20], Accepting: (20, 50], Devoted: (50, 95], Worshipful: (95, ∞)",
-				"trust": "Extremely terrified: (-∞, -95), Terrified: [-95, -50), Frightened: [-50, -20), Fearful: [-20, 20], Careful: (20, 50], Trusting: (50, 95], Total trust: (95, ∞)",
-				"health": "Death: (-∞, -100), Near Death: [-100, -90), Extremely Unhealthy: [-90, -50), Unhealthy: [-50, -20), Healthy: [-20, 20], Very Healthy: (20, 50], Extremely Healthy: (50, 90], Unnaturally Healthy: (90, ∞)",
-				"energy": "Frigid: (-∞, 20], Poor: (20, 40], Average: (40, 60], Powerful: (60, 80], Sex Addict: (80, 100), Nympho: 100",
-				"weight": "Emaciated: (-∞, -95), Skinny: [-95, -30), Thin: [-30, -10), Average: [-10, 10], Plush: (10, 30], Fat: (30, 95], Overweight: (95, ∞)",
-				"lactation": "None: 0, 1: Natural, 2: Lactation implant",
-				"preg": "Barren: -2, On contraceptives: -1, Not pregnant: 0, Pregnancy weeks: [1, ∞)",
-				"pregType": "Fetus count, known only after the 10th week of pregnancy",
-				"bellyImplant": "Volume in CCs. None: -1",
-				"belly": "Volume in CCs, any source",
-				"intelligenceImplant": "Education level. 0: uneducated, 1: educated, (0, 1): incomplete education.",
-				"intelligence": "From moronic to brilliant: [-3, 3]",
-				"accent": "No accent: 0, Nice accent: 1, Bad accent: 2, Can't speak language: 3 and above",
-				"waist": "Masculine waist: (95, ∞), Ugly waist: (40, 95], Unattractive waist: (10, 40], Average waist: [-10, 10], Feminine waist: [-40, -10), Wasp waist: [-95, 40), Absurdly narrow: (-∞, -95)",
-			}[attribute] || " ");
-		}
-	}
-
-	class ItemEditor extends Element {
-		render(fn, data) {
-			const elem = document.createElement("div");
-
-			const input = document.createElement("input");
-			input.setAttribute("type", "text");
-			input.value = JSON.stringify(data.value);
-			input.onkeypress = e => { if (returnP(e)) this.setValue(input); };
-			input.onblur = e => this.setValue(input);
-			this.input = input;
-			elem.appendChild(input);
-
-			const infobar = document.createElement("div");
-			infobar.innerHTML = this.info(data.attribute);
-			elem.appendChild(infobar);
-
-			return elem;
-		}
-
-		info(attribute) {
-			return "Insert a valid JSON array. Known values: " + {
-				"fetish": "buttslut, cumslut, masochist, sadist, dom, submissive, boobs, pregnancy, none (AKA vanilla)",
-				"amp": "Amputated: 1, Not amputated: 0",
-			}[attribute];
-		}
-		
-		setValue(input) {
-			try {
-				const arr = JSON.parse(input.value);
-				current_rule.condition.data.value = arr;
-				input.value = JSON.stringify(arr);
-			} catch (e) {
-				alert(e);
+			
+		} else if ((slave.boobs <= 2000) && (slave.lactation < 2) && (slave.boobs+400 < thisSurgery.surgery_boobs)) {
+			if (thisSurgery.surgery_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.surgery_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.surgery_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.surgery_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.surgery_holes == 1)) {
+			surgeries.push("a tighter anus");
+			slave.anus = 1;
+			if (slave.analSkill > 10) {
+				slave.analSkill -= 10;
 			}
-		}
-	}
-
-
-	class AssignmentInclusion extends ButtonList {
-		constructor() {
-			super("Apply to assignments and facilities");
-			const items = ["Rest", "Fucktoy", "Subordinate Slave", "House Servant", "Confined", "Whore", "Public Servant", "Classes", "Milked", "Gloryhole"];
-			if (V.HGSuite > 0) items.push("Head Girl Suite");
-			if (V.brothel > 0) items.push("Brothel");
-			if (V.club > 0) items.push("Club");
-			if (V.arcade > 0) items.push("Arcade");
-			if (V.dairy > 0) items.push("Dairy");
-			if (V.servantsQuarters > 0) items.push("Servant Quarters");
-			if (V.masterSuite > 0) items.push("Master Suite");
-			if (V.schoolroom > 0) items.push("Schoolroom");
-			if (V.spa > 0) items.push("Spa");
-			if (V.clinic > 0) items.push("Clinic");
-			if (V.cellblock > 0) items.push("Cellblock");
-			items.forEach(
-				i => this.appendChild(new ButtonItem(i, this.getAttribute(i), current_rule.condition.assignment.includes(this.getAttribute(i)))));
-		}
-
-		onchange() {
-			current_rule.condition.assignment = this.getSelection();
-		}
-
-		getAttribute(what) {
-			return {
-				"Rest": "rest",
-				"Fucktoy": "please you",
-				"Subordinate Slave": "be a subordinate slave",
-				"House Servant": "be a servant",
-				"Confined": "stay confined",
-				"Whore": "whore",
-				"Public Servant": "serve the public",
-				"Classes": "take classes",
-				"Milked": "get milked",
-				"Gloryhole": "work a glory hole",
-				"Head Girl Suite": "live with your Head Girl",
-				"Brothel": "work in the brothel",
-				"Club": "serve in the club",
-				"Arcade": "be confined in the arcade",
-				"Dairy": "work in the dairy",
-				"Servant Quarters": "work as a servant",
-				"Master Suite": "serve in the master suite",
-				"Schoolroom": "learn in the schoolroom",
-				"Spa": "rest in the spa",
-				"Clinic": "get treatment in the clinic",
-				"Cellblock": "be confined in the cellblock",
-			}[what];
-		}
-	}
-
-	class SpecialExclusion extends List {
-		constructor() {
-			const items = [
-				["Yes", true],
-				["No", false]
-			];
-			super("Exclude special slaves", items);
-			this.setValue(current_rule.condition.excludeSpecialSlaves);
-			this.onchange = (value) => current_rule.condition.excludeSpecialSlaves = value;
-		}
-	}
-
-	class SpecificInclusionExclusion extends Options {
-		constructor() {
-			super();
-			this.appendChild(new OptionsItem("Limit to specific slaves", () => this.show_slave_selection()));
-			this.appendChild(new OptionsItem("Exclude specific slaves", () => this.show_slave_exclusion()));
-			this.subwidget = null;
-		}
-
-		show_slave_selection() {
-			if (this.subwidget) this.subwidget.remove();
-			this.subwidget = new SlaveSelection();
-			this.appendChild(this.subwidget);
-		}
-
-		show_slave_exclusion() {
-			if (this.subwidget) this.subwidget.remove();
-			this.subwidget = new SlaveExclusion();
-			this.appendChild(this.subwidget);
-		}
-	}
-
-	class SlaveSelection extends ButtonList {
-		constructor() {
-			super("Include specific slaves");
-			V.slaves.forEach(slave => this.appendChild(new ButtonItem(
-				[slave.slaveName, slave.slaveSurname].join(" "),
-				slave.ID,
-				current_rule.condition.selectedSlaves.includes(slave.ID))));
-		}
-
-		onchange() {
-			current_rule.condition.selectedSlaves = this.getSelection();
-		}
-	}
-
-	class SlaveExclusion extends ButtonList {
-		constructor() {
-			super("Exclude specific slaves");
-			V.slaves.forEach(slave => this.appendChild(new ButtonItem(
-				[slave.slaveName, slave.slaveSurname].join(" "),
-				slave.ID,
-				current_rule.condition.excludedSlaves.includes(slave.ID))));
-		}
-
-		onchange() {
-			current_rule.condition.excludedSlaves = this.getSelection();
-		}
-	}
-
-	// parent section for effect editing
-	class EffectEditor extends Element {
-		constructor() {
-			super();
-			this.appendChild(new AppearanceSection());
-			this.appendChild(new CosmeticSection());
-			this.appendChild(new BodyModSection());
-			this.appendChild(new AutosurgerySection());
-			this.appendChild(new RegimenSection());
-			this.appendChild(new BehaviourSection());
-		}
-
-		render() {
-			const element = document.createElement("div");
-			return element;
-		}
-	}
-
-	class AppearanceSection extends Section {
-		constructor() {
-			super("Appearance Settings");
-			this.appendChild(new ClothesList());
-			this.appendChild(new CollarList());
-			this.appendChild(new ShoeList());
-			this.appendChild(new CorsetList());
-			this.appendChild(new LeggingsList());
-			this.appendChild(new VagAccVirginsList());
-			this.appendChild(new VagAccAVirginsList());
-			this.appendChild(new VagAccOtherList());
-			if (V.seeDicks !== 0 || V.makeDicks !== 0) {
-				this.appendChild(new DickAccVirginsList());
-				this.appendChild(new DickAccOtherList());
+			V.cash -= V.surgeryCost;
+			if (V.PC.medicine >= 100) slave.health -= 5;
+			else slave.health -= 10;
+			
+		} else if ((slave.vagina > 1) && (thisSurgery.surgery_holes == 1)) {
+			surgeries.push("a tighter pussy");
+			slave.vagina = 1;
+			if (slave.vaginalSkill > 10) {
+				slave.vaginalSkill -= 10;
 			}
-			this.appendChild(new ButtplugsVirginsList());
-			this.appendChild(new ButtplugsOtherList());
-			this.appendChild(new ImplantVolumeList());
-			this.appendChild(new AutosurgerySwitch());
-
-		}
-	}
-
-	class RegimenSection extends Section {
-		constructor() {
-			super("Physical Regimen Settings");
-			this.appendChild(new GrowthList());
-			this.appendChild(new CurrativesList());
-			this.appendChild(new AphrodisiacList());
-			this.appendChild(new ContraceptiveList());
-			if (V.pregSpeedControl)
-				this.appendChild(new PregDrugsList());
-			this.appendChild(new FemaleHormonesList());
-			this.appendChild(new ShemaleHormonesList());
-			this.appendChild(new GeldingHormonesList());
-			this.appendChild(new OtherDrugsList());
-			this.appendChild(new DietList());
-			this.appendChild(new DietGrowthList());
-			this.appendChild(new DietBaseList());
-			this.appendChild(new MuscleList());
-			this.appendChild(new BraceList());
+			V.cash -= V.surgeryCost;
+			if (V.PC.medicine >= 100) slave.health -= 5;
+			else slave.health -= 10;
+			
+		} else if ((slave.butt <= 8) && (slave.butt < thisSurgery.surgery_butt)) {
+			if (thisSurgery.surgery_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.surgery_boobs)) {
+			if (thisSurgery.surgery_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.surgery_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.surgery_bellyImplant == "install" && slave.womb.length == 0 && slave.broodmother == 0) {
+			slave.bellyImplant = 100;
+			slave.preg = -2;
+			V.cash -= V.surgeryCost;
+			if (slave.ovaries == 1 || slave.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;
+			}
+			bellyIn(slave);
+			
+		} else if (slave.bellyImplant >= 0 && thisSurgery.surgery_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;
+		} else if (slave.balls > 0 && slave.vasectomy === 0 && thisSurgery.surgery_vasectomy === true) {
+			surgeries.push("vasectomy");
+			V.surgeryType = "vasectomy";
+			if (V.PC.medicine >= 100)
+				slave.health -= 5;
+			else
+				slave.health -= 10;
+			slave.vasectomy = 1;
+			V.cash -= V.surgeryCost;
+		} else if (slave.balls > 0 && slave.vasectomy === 1 && thisSurgery.surgery_vasectomy === false) {
+			surgery.push("undo vasectomy");
+			V.surgeryType = "vasectomy undo";
+			if (V.PC.medicine >= 100)
+				slave.health -=5;
+			else
+				slave.health -= 10;
+			slave.vasectomy = 0;
+			V.cash -= V.surgeryCost;
 		}
 	}
 
-	class BehaviourSection extends Section {
-		constructor() {
-			super("Behavior Settings");
-			this.appendChild(new AutomaticAssignmentList());
-			this.appendChild(new LivingStandardList());
-			this.appendChild(new PunishmentList());
-			this.appendChild(new RewardList());
-			this.appendChild(new ReleaseList());
-			this.appendChild(new SmartFetishList());
-			this.appendChild(new SmartXYAttractionList());
-			this.appendChild(new SmartXXAttractionList());
-			this.appendChild(new SmartEnergyList());
-			this.appendChild(new SpeechList());
-			this.appendChild(new RelationshipList());
-			if (V.studio === 1)
-				this.appendChild(new PornList());
+	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>`;
 	}
 
-	class CosmeticSection extends Section {
-		constructor() {
-			super("Cosmetic Settings", true);
-			this.appendChild(new EyewearList());
-			this.appendChild(new LensesList());
-			this.appendChild(new MakeupList());
-			this.appendChild(new NailsList());
-			this.appendChild(new HairLengthList());
-			this.appendChild(new HairColourList());
-			this.appendChild(new HairStyleList());
-			this.appendChild(new PubicHairColourList());
-			this.appendChild(new PubicHairStyleList());
-			this.appendChild(new ArmpitHairColourList());
-			this.appendChild(new ArmpitHairStyleList());
+	function bellyIn(slave) {
+		// less hacky version of calling surgery degradation silently
+		if (slave.devotion > 50)
+			slave.devotion += 4;
+		else if (slave.devotion >= -20)
+			slave.trust -= 5;
+		else {
+			slave.trust -= 5;
+			slave.devotion -= 5;
 		}
 	}
+})();
 
-	class BodyModSection extends Section {
-		constructor() {
-			super("Body Mod Settings", true);
-			this.appendChild(new EarPiercingList());
-			this.appendChild(new NosePiercingList());
-			this.appendChild(new EyebrowPiercingList());
-			this.appendChild(new NavelPiercingList());
-			this.appendChild(new NipplePiercingList());
-			this.appendChild(new AreolaPiercingList());
-			this.appendChild(new LipPiercingList());
-			this.appendChild(new TonguePiercingList());
-			this.appendChild(new ClitPiercingList());
-			this.appendChild(new LabiaPiercingList());
-			this.appendChild(new ShaftPiercingList());
-			this.appendChild(new PerineumPiercingList());
-			this.appendChild(new CorsetPiercingList());
-
-			this.appendChild(new AutoBrandingList());
-			this.appendChild(new BrandingLocationList());
-			this.appendChild(new BrandDesignList());
 
-			this.appendChild(new FaceTattooList());
-			this.appendChild(new ShoulderTattooList());
-			this.appendChild(new ChestTattooList());
-			this.appendChild(new ArmTattooList());
-			this.appendChild(new UpperBackTattooList());
-			this.appendChild(new LowerBackTattooList());
-			this.appendChild(new AbdomenTattooList());
-			if (V.seeDicks || V.makeDicks)
-				this.appendChild(new DickTattooList());
-			this.appendChild(new ButtockTattooList());
-			this.appendChild(new AnalTattooList());
-			this.appendChild(new LegTattooList());
-		}
-	}
+/*:: sexActJS [script]*/
 
-	class AutosurgerySection extends Section {
-		constructor() {
-			super("Autosurgery Settings", true);
-			this.appendChild(new VisionSurgeryList());
-			this.appendChild(new LactationSurgeryList());
-			if (V.seeDicks || V.makeDicks) {
-				this.appendChild(new SemenSurgeryList());
-				this.appendChild(new VasectomyList());
+/*
+ times is how many times to increment the anal counts.
+ if left undefined it will assume it to be 1.
+*/
+window.AnalVCheck = function AnalVCheck(times) {
+	const V = State.variables;
+	const slave = V.activeSlave;
+	let r = ``;
+	if (canDoAnal(slave) && slave.anus === 0) {
+		r += `@@.lime;This breaks in ${slave.slaveName}'s virgin ass.@@ `;
+		if (slave.devotion > 50 || slave.career == "a slave since birth") {
+			r += `Since it's her first time, you gently ease yourself into her butthole and gradually increase the intensity of your thrusts. Before long she's moaning loudly as you continue working away at her butthole. `;
+			if (slave.tankBaby == 2) {
+				r += `She thinks of losing her anal virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity.@@ She expects her asshole to be seeing a lot more attention now.`;
 			}
-			this.appendChild(new CosmeticSurgeryList());
-			this.appendChild(new LipSurgeryList());
-			this.appendChild(new ButtSurgeryList());
-			this.appendChild(new BreastSurgeryList());
-			this.appendChild(new TighteningSurgeryList());
-			this.appendChild(new BodyHairSurgeryList());
-			this.appendChild(new HairSurgeryList());
-			if (V.bellyImplants > 0)
-				this.appendChild(new BellyImplantList());
-		}
-	}
-
-	class ClothesList extends List {
-		constructor() {
-			const items = [
-				["Select her own outfit", "choosing her own clothes"]
-			];
-			super("Clothes", items);
-
-			const nclothes = [
-				["No default clothes setting", "no default setting"],
-				["Apron", "an apron"],
-				["Bangles", "slutty jewelry"],
-				["Bodysuit", "a comfortable bodysuit"],
-				["Cheerleader outfit", "a cheerleader outfit"],
-				["Clubslut netting", "clubslut netting"],
-				["Cybersuit", "a cybersuit"],
-				["Cutoffs and a t-shirt", "cutoffs and a t-shirt"],
-				["Fallen nun", "a fallen nuns habit"],
-				["Halter top", "a halter top dress"],
-				["Hijab and abaya", "a hijab and abaya"],
-				["Latex catsuit", "a latex catsuit"],
-				["Leotard", "a leotard"],
-				["Long Qipao", "a long qipao"],
-				["Lederhosen", "lederhosen"],
-				["Battlearmor", "battlearmor"],
-				["Mounty outfit", "a mounty outfit"],
-				["Dirndl", "a dirndl"],
-				["Biyelgee costume", "a biyelgee costume"],
-				["Maid (nice)", "a nice maid outfit"],
-				["Maid (slutty)", "a slutty maid outfit"],
-				["Military uniform", "a military uniform"],
-				["Schutzstaffel uniform", "a schutzstaffel uniform"],
-				["Schutzstaffel uniform (slutty)", "a slutty schutzstaffel uniform"],
-				["Red Army uniform", "a red army uniform"],
-				["Mini dress", "a mini dress"],
-				["Monokini", "a monokini"],
-				["Nice lingerie", "attractive lingerie"],
-				["Nurse (nice)", "a nice nurse outfit"],
-				["Schoolgirl", "a schoolgirl outfit"],
-				["Silken ballgown", "a ball gown"],
-				["Skimpy battledress", "battledress"],
-				["Slave gown", "a slave gown"],
-				["Slutty outfit", "a slutty outfit"],
-				["String bikini", "a string bikini"],
-				["Scalemail bikini", "a scalemail bikini"],
-				["Succubus costume", "a succubus outfit"],
-				["Suit (nice)", "nice business sattire"],
-				["Suit (slutty", "slutty business attire"],
-				["Spats and tank top", "spats and a tank top"]
-			];
-			const fsnclothes = [
-				["Body oil (FS)", "body oil"],
-				["Bunny outfit (FS)", "a bunny outfit"],
-				["Chattel habit (FS)", "a chattel habit"],
-				["Conservative clothing (FS)", "conservative clothing"],
-				["Harem gauze (FS)", "harem gauze"],
-				["Huipil (FS)", "a huipil"],
-				["Kimono (FS)", "a kimono"],
-				["Maternity dress (FS)", "a maternity dress"],
-				["Maternity lingerie (FS)", "attractive lingerie for a pregnant woman"],
-				["Slutty qipao (FS)", "a slutty qipao"],
-				["Stretch pants and a crop-top (FS)", "stretch pants and a crop-top"],
-				["Toga (FS)", "a toga"],
-				["Western clothing (FS)", "Western clothing"],
-			];
-			fsnclothes.forEach(pair => { if (isItemAccessible(pair[1])) nclothes.push(pair); });
-			const nice = new ListSubSection(this, "Nice", nclothes);
-			this.appendChild(nice);
-
-			const hclothes = [
-				["Nude", "no clothing"],
-				["Penitent nun", "a penitent nuns habit"],
-				["Restrictive latex", "restrictive latex"],
-				["Shibari ropes", "shibari ropes"],
-				["Uncomfortable straps", "uncomfortable straps"]
-			];
-			const fshclothes = [
-				["Chains (FS)", "chains"],
-			];
-			fshclothes.forEach(pair => { if (isItemAccessible(pair[1])) hclothes.push(pair); });
-
-			const harsh = new ListSubSection(this, "Harsh", hclothes);
-			this.appendChild(harsh);
-
-			this.setValue(current_rule.set.clothes);
-			this.onchange = (value) => current_rule.set.clothes = value;
+			else {
+				r += `She thinks of losing her anal virginity to you as a @@.hotpink;connection@@ with her beloved ${WrittenMaster(slave)}. `;
+				if ((slave.fetishKnown && slave.fetish == "buttslut") || (slave.energy > 95) || (slave.attrXX >= 85 && V.PC.dick === 0)) {
+					r += `She can't wait to be fucked in the ass by you again.`;
+				}
+				else {
+					r += `She looks forward to having her asshole fucked by you again.`;
+				}
+			}
+			slave.devotion += 4;
 		}
-	}
-
-	class CollarList extends List {
-		constructor() {
-			const items = [
-				["No default collar setting", "no default setting"],
-				["No collar", "none"],
-			];
-			super("Collar", items);
-
-			const ncollars = [
-				["Stylish leather", "stylish leather"],
-				["Satin choker", "satin choker"],
-				["Silken Ribbon", "silk ribbon"],
-				["Heavy Gold", "heavy gold"],
-				["Pretty jewelry", "pretty jewelry"],
-				["Cowbell", "leather with cowbell"]
-			];
-			if (V.seeAge !== 0)
-				ncollars.push(["Nice retirement counter", "nice retirement counter"]);
-			const fsncollars = [
-				["Bowtie collar", "bowtie"],
-				["ancient Egyptian", "ancient Egyptian"],
-			];
-			fsncollars.forEach(pair => { if (isItemAccessible(pair[1])) ncollars.push(pair); });
-			const nice = new ListSubSection(this, "Nice", ncollars);
-			this.appendChild(nice);
-
-			const hcollars = [];
-			setup.harshCollars.forEach(item => {
-				if (item.fs === "seeage" && V.seeAge === 0) return;
-				else if (item.rs === "buyGag" && V.toysBoughtGags !== 1) return;
-				else hcollars.push([item.name, item.value]);
-			});
-			const harsh = new ListSubSection(this, "Harsh", hcollars);
-			this.appendChild(harsh);
-
-			this.setValue(current_rule.set.collar);
-			this.onchange = (value) => current_rule.set.collar = value;
+		else if (slave.devotion > 20) {
+			r += `Since it's her first time, you gently ease yourself into her butthole and gradually increase the intensity of your thrusts. Her moans become louder and louder as you continue working away at her butthole. She accepts the pain and humiliation of anal sex as part of her sexual servitude, though she hopes that her next time will be less painful.`;
 		}
-	}
-
-	class ShoeList extends List {
-		constructor() {
-			super("Shoes", setup.shoes.map(i => [i.name, i.value]));
-			this.setValue(current_rule.set.shoes);
-			this.onchange = (value) => current_rule.set.shoes = value;
+		else if (slave.devotion >= -20) {
+			r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.gold;fears@@ her next anal sex, remembering the pain of losing her anal virginity. She dreads having her ass violated by you again.`;
+			slave.trust -= 5;
 		}
-	}
-
-	class CorsetList extends List {
-		constructor() {
-			const bellies = [];
-			setup.bellyAccessories.forEach(acc => {
-				if (acc.fs === undefined && acc.rs === undefined)
-					bellies.push([acc.name, acc.value]);
-				else if (acc.fs === "repopulation" && V.arcologies[0].FSRepopulationFocus !== "unset")
-					bellies.push([acc.name + " (FS)", acc.value]);
-				else if (acc.rs === "boughtBelly" && V.clothesBoughtBelly === 1)
-					bellies.push([acc.name + " (Purchased)", acc.value]);
-			});
-			super("Corsetage", bellies);
-			this.setValue(current_rule.set.bellyAccessory);
-			this.onchange = (value) => current_rule.set.bellyAccessory = value;
+		else {
+			r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for violating her virgin butt. She dreads having her ass fucked by you again.`;
+			slave.trust -= 5;
+			slave.devotion -= 5;
 		}
+		slave.anus = 1;
 	}
-
-	class LeggingsList extends List {
-		constructor() {
-			const items = [
-				["no default settings"],
-				["none"],
-				["short stockings"],
-				["long stockings"],
-			];
-			super("Leg accessory", items);
-			this.setValue(current_rule.set.legAccessory);
-			this.onchange = (value) => current_rule.set.legAccessory = value;
+	if (canDoAnal(slave)) {
+		if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
+			r += knockMeUp(slave, 10, 1, -1, 1);
+		}
+		if (!times) {
+			V.analTotal += 1;
+			slave.analCount += 1;
+		}
+		else {
+			V.analTotal += times;
+			slave.analCount += times;
 		}
 	}
+	return r;
+}
 
-	class VagAccVirginsList extends List {
-		constructor() {
-			const accs = [];
-			setup.vaginalAccessories.forEach(acc => {
-				if (acc.fs === undefined && acc.rs === undefined)
-					accs.push([acc.name, acc.value]);
-				else if (acc.rs === "buyBigDildos" && V.toysBoughtDildos === 1)
-					accs.push([acc.name + " (Purchased)", acc.value]);
-			});
-			super("Vaginal accessories for virgins", accs);
-			this.setValue(current_rule.set.virginAccessory);
-			this.onchange = (value) => current_rule.set.virginAccessory = value;
+/*
+ times is how many times to increment the vaginal counts.
+ if left undefined it will assume it to be 1.
+*/
+window.VaginalVCheck = function VaginalVCheck(times) {
+	const V = State.variables;
+	const slave = V.activeSlave;
+	let r = ``;
+	if (canDoVaginal(slave) && slave.vagina === 0) {
+		r += `@@.lime;This breaks in ${slave.slaveName}'s virgin pussy.@@ `;
+		if (slave.devotion > 50 || slave.career == "a slave since birth") {
+			r += `You ease yourself into her pussy, since it's her first time, then gradually speed up your thrusts while she slowly learns to move her hips along with you. She moans loudly. `;
+			if (slave.tankBaby == 2) {
+				r += `She thinks of losing her virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity to be happy.@@ She expects her pussy to be seeing a lot more attention in the future.`;
+			}
+			else {
+				r += `@@.hotpink;She enjoys losing her cherry to you.@@ `;
+				if ((slave.fetishKnown && slave.fetish == "pregnancy") || (slave.energy > 95) || (slave.attrXY >= 85 && V.PC.dick === 1)) {
+					r += `She can't wait to have her pussy fucked by you again.`;
+				}
+				else {
+					r += `She looks forward to having her pussy fucked by you again.`;
+				}
+			}
+			slave.devotion += 4;
 		}
-	}
+		else if (slave.devotion > 20) {
+			r += `You ease yourself into her pussy, since it's her first time, then gradually speed up your thrusts while she slowly learns to move her hips along with you. She accepts losing her virginity to her owner and she looks forward to having her pussy fucked by you again.`;
+		}
+		else if (slave.devotion >= -20) {
+			r += `You force yourself into her pussy. She sobs and cries with disgust while you continue thrusting into her fuck hole. She @@.mediumorchid;hates@@ losing her virginity this way and @@.gold;fears@@ the next time you'll conquer her. She dreads getting violated by you again.`;
+			slave.trust -= 5;
+			slave.devotion -= 5;
+		}
+		else {
+			r += `You force yourself into her pussy. She sobs and cries with disgust while you continue working her fuck hole. She tries to struggle, but you only pound harder. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for robbing her of her virginity. She dreads getting fucked by you again.`;
+			slave.trust -= 10;
+			slave.devotion -= 15;
+		}
+		slave.vagina = 1;
 
-	class VagAccAVirginsList extends List {
-		constructor() {
-			const accs = [];
-			setup.vaginalAccessories.forEach(acc => {
-				if (acc.fs === undefined && acc.rs === undefined)
-					accs.push([acc.name, acc.value]);
-				else if (acc.rs === "buyBigDildos" && V.toysBoughtDildos === 1)
-					accs.push([acc.name + " (Purchased)", acc.value]);
-			});
-			super("Vaginal accessories for anal virgins", accs);
-			this.setValue(current_rule.set.aVirginAccessory);
-			this.onchange = (value) => current_rule.set.aVirginAccessory = value;
+		if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
+			r += knockMeUp(slave, 10, 0, -1, 1);
+		}
+		if (!times) {
+			V.vaginalTotal += 1;
+			slave.vaginalCount += 1;
+		}
+		else {
+			V.vaginalTotal += times;
+			slave.vaginalCount += times;
 		}
 	}
+	return r;
+}
 
-	class VagAccOtherList extends List {
-		constructor() {
-			const accs = [];
-			setup.vaginalAccessories.forEach(acc => {
-				if (acc.fs === undefined && acc.rs === undefined)
-					accs.push([acc.name, acc.value]);
-				else if (acc.rs === "buyBigDildos" && V.toysBoughtDildos === 1)
-					accs.push([acc.name + " (Purchased)", acc.value]);
-			});
-			super("Vaginal accessories for other slaves", accs);
-			this.setValue(current_rule.set.vaginalAccessory);
-			this.onchange = (value) => current_rule.set.vaginalAccessory = value;
+/*
+ analTimes is how many times to increment the anal counts, if there is no vagina available.
+ bothTimes is how many times to increment both holes counts (usually it is half of analTimes).
+ In both cases if left undefined it will assume it to be 1.
+*/
+window.BothVCheck = function BothVCheck(analTimes, bothTimes) {
+	const V = State.variables;
+	const slave = V.activeSlave;
+	let r = ``;
+	if (canDoVaginal(slave)) {
+		if (slave.vagina === 0) {
+			if (canDoAnal(slave) && slave.anus == 0) {
+				r += `@@.lime;This breaks in ${slave.slaveName}'s virgin holes.@@ `;
+				if (slave.devotion > 50 || slave.career == "a slave since birth") {
+					r += `As it's her first time, you ease yourself into her pussy before gradually working your way into her ass and alternate between the two holes while she moans. `;
+					if (slave.tankBaby == 2) {
+						r += `She believes you taking her virgin holes @@.hotpink;will keep her from suffering.@@ She expects you to require her holes as tribute again soon.`;
+					}
+					else {
+						r += `@@.hotpink;She's so devoted she enjoys being fucked in both holes for the first time.@@ She looks forward to having her holes fucked by you again.`;
+					}
+					slave.devotion += 4;
+				}
+				else if (slave.devotion <= 20) {
+					r += `You force yourself into her pussy before working your way into her ass. She sobs and cries with disgust while you alternate between the two holes. She @@.mediumorchid;hates@@ losing her virginity and anal virginity in one @@.gold;brutal@@ incident. She dreads having her holes violated by you again.`;
+					slave.trust -= 5;
+					slave.devotion -= 5;
+				}
+				else {
+					r += `As it's her first time, you ease yourself into her pussy before gradually working your way into her ass and alternate between the two holes while she moans. She accepts being fucked in both holes for the first time. She looks forward to having her holes fucked by you again.`;
+				}
+				slave.anus = 1;
+			}
+			else {
+				r += `@@.lime;This breaks in ${slave.slaveName}'s virgin pussy.@@ `;
+				if (slave.devotion > 50 || slave.career == "a slave since birth") {
+					r += `As it's her first time, you ease yourself into her pussy and gradually speed up your thrusts while she slowly learns to move her hips along with you. She moans loudly. `;
+					if (slave.tankBaby == 2) {
+						r += `She thinks of losing her virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity to be happy.@@ She expects her pussy to be seeing a lot more attention in the future.`;
+					}
+					else {
+						r += `@@.hotpink;She enjoys losing her cherry to you.@@ She looks forward to having her pussy fucked by you again.`;
+					}
+					slave.devotion += 4;
+				}
+				else if (slave.devotion <= 20) {
+					r += `You force yourself into her pussy. She sobs and cries with disgust while you continue working her fuck hole. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for taking her virginity. She dreads having her pussy violated by you again.`;
+					slave.trust -= 5;
+					slave.devotion -= 5;
+				}
+				else {
+					r += `As it's her first time, you ease yourself into her pussy before gradually increasing the intensity of your thrusts while she softly moans. She accepts losing her virginity to her owner and she looks forward to having her pussy fucked by you again.`;
+				}
+			}
+			slave.vagina = 1;
+		}
+		else if (canDoAnal(slave) && slave.anus == 0) {
+			r += `@@.lime;This breaks in ${slave.slaveName}'s virgin ass.@@ `;
+			if (slave.devotion > 50 || slave.career == "a slave since birth") {
+				r += `As it's her first time, you ease yourself into her butthole and gradually speed up your thrusts while she slowly learns to move her hips along with you. She moans loudly. `;
+				if (slave.tankBaby == 2) {
+					r += `She thinks of losing her anal virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity.@@ She expects her asshole to be seeing a lot more attention now.`;
+				}
+				else {
+					r += `She thinks of losing her anal virginity to you as a @@.hotpink;connection@@ with her beloved ${WrittenMaster(slave)}. She looks forward to having her asshole fucked by you again.`
+				}
+				slave.devotion += 4;
+			}
+			else if (slave.devotion > 20){
+				r += `As it's her first time, you ease yourself into her butthole and gradually increase the intensity of your thrusts. She accepts the pain and humiliation of anal sex as part of her sexual servitude, though she hopes that her next time will be less painful.`;
+			}
+			else if (slave.devotion >= -20) {
+				r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.gold;fears@@ her next anal sex, remembering the pain of losing her anal virginity. She dreads having her ass violated by you again.`;
+				slave.trust -= 5;
+			}
+			else {
+				r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for violating her virgin butt. She dreads having her ass fucked by you again.`;
+				slave.trust -= 5;
+				slave.devotion -= 5;
+			}
+			slave.anus = 1;
+		}
+		if (canDoAnal(slave)) {
+			if (!bothTimes) {
+				V.vaginalTotal += 1;
+				V.analTotal += 1;
+				slave.vaginalCount += 1;
+				slave.analCount += 1;
+			}
+			else {
+				V.vaginalTotal += bothTimes;
+				V.analTotal += bothTimes;
+				slave.vaginalCount += bothTimes;
+				slave.analCount += bothTimes;
+			}
+			if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
+				r += knockMeUp(slave, 10, 2, -1, 1);
+			}
+		}
+		else {
+			if (!bothTimes) {
+				V.vaginalTotal += 1;
+				slave.vaginalCount += 1;
+			}
+			else {
+				V.vaginalTotal += bothTimes;
+				slave.vaginalCount += bothTimes;
+			}
+			if (V.PC.dick == 1 && canGetPregnant(slave) && slave.eggType == "human") {
+				r += knockMeUp(slave, 10, 0, -1, 1);
+			}
 		}
 	}
-
-	class DickAccVirginsList extends List {
-		constructor() {
-			super("Dick accessories for anal virgins", setup.dickAccessories.map(i => [i.name, i.value]));
-			this.setValue(current_rule.set.aVirginDickAccessory);
-			this.onchange = (value) => current_rule.set.aVirginDickAccessory = value;
+	else if (canDoAnal(slave)) {
+		if (slave.anus == 0) {
+			r += `@@.lime;This breaks in ${slave.slaveName}'s virgin ass.@@ `;
+			if (slave.devotion > 50 || slave.career == "a slave since birth") {
+				r += `As it's her first time, you ease yourself into her butthole and gradually speed up your thrusts while she slowly learns to move her hips along with you. She moans loudly. `;
+				if (slave.tankBaby == 2) {
+					r += `She thinks of losing her anal virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity.@@ She expects her asshole to be seeing a lot more attention now.`;
+				}
+				else {
+					r += `She thinks of losing her anal virginity to you as a @@.hotpink;connection@@ with her beloved ${WrittenMaster(slave)}. She looks forward to having her asshole fucked by you again.`;
+				}
+				slave.devotion += 4;
+			}
+			else if (slave.devotion > 20) {
+				r += `As it's her first time, you ease yourself into her butthole and gradually increase the intensity of your thrusts. She accepts the pain and humiliation of anal sex as part of her sexual servitude, though she hopes that her next time will be less painful.`;
+			}
+			else if (slave.devotion >= -20) {
+				r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.gold;fears@@ her next anal sex, remembering the pain of losing her anal virginity. She dreads having her ass violated by you again.`;
+				slave.trust -= 5;
+			}
+			else {
+				r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for violating her virgin butt. She dreads having her ass fucked by you again.`
+				slave.trust -= 5;
+				slave.devotion -= 5;
+			}
+			slave.anus = 1;
 		}
-	}
-
-	class DickAccOtherList extends List {
-		constructor() {
-			super("Dick accessories for other slaves", setup.dickAccessories.map(i => [i.name, i.value]));
-			this.setValue(current_rule.set.dickAccessory);
-			this.onchange = (value) => current_rule.set.dickAccessory = value;
+		if (!analTimes) {
+			V.analTotal += 1;
+			slave.analCount += 1;
 		}
-	}
-
-	class ButtplugsVirginsList extends List {
-		constructor() {
-			const accs = [];
-			setup.buttplugs.forEach(acc => {
-				if (acc.fs === undefined && acc.rs === undefined)
-					accs.push([acc.name, acc.value]);
-				else if (acc.rs === "buyBigPlugs" && V.toysBoughtButtPlugs === 1)
-					accs.push([acc.name + " (Purchased)", acc.value]);
-			});
-			super("Buttplugs for anal virgins", accs);
-			this.setValue(current_rule.set.aVirginButtplug);
-			this.onchange = (value) => current_rule.set.aVirginButtplug = value;
+		else {
+			V.analTotal += analTimes;
+			slave.analCount += analTimes;
 		}
-	}
-
-	class ButtplugsOtherList extends List {
-		constructor() {
-			const accs = [];
-			setup.buttplugs.forEach(acc => {
-				if (acc.fs === undefined && acc.rs === undefined)
-					accs.push([acc.name, acc.value]);
-				else if (acc.rs === "buyBigPlugs" && V.toysBoughtButtPlugs === 1)
-					accs.push([acc.name + " (Purchased)", acc.value]);
-			});
-			super("Buttplugs for other slaves", accs);
-			this.setValue(current_rule.set.buttplug);
-			this.onchange = (value) => current_rule.set.buttplug = value;
+		if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
+			r += knockMeUp(slave, 10, 1, -1, 1);
 		}
 	}
+	return r;
+}
 
-	class ImplantVolumeList extends List {
-		constructor() {
-			const pairs = [
-				["No changes", -1],
-				["Empty implant", 0],
-				["Early pregnancy", 1500],
-				["Second trimester pregnancy", 5000],
-				["Full-term pregnancy", 15000],
-				["Full-term with twins", 30000],
-				["Full-term with triplets", 45000],
-				["Full-term with quadruplets", 60000],
-				["Full-term with quintuplets", 75000],
-				["Full-term with sextuplets", 90000],
-				["Full-term with septuplets", 105000],
-				["Full-term with octuplets", 120000]
-			];
-			super("Belly implant target volume (if present)", pairs);
-			this.setValue(current_rule.set.bellyImplantVol);
-			this.onchange = (value) => current_rule.set.bellyImplantVol = value;
-		}
+/*
+ times is how many times to increment either the Vaginal or the Anal counts, if there is no Vagina available.
+ If left undefined it will assume it to be 1.
+*/
+window.SimpleVCheck = function SimpleVCheck(times) {
+	let r = ``;
+	if (canDoVaginal(State.variables.activeSlave)) {
+		r += VaginalVCheck(times);
 	}
-
-	class AutosurgerySwitch extends List {
-		constructor() {
-			const pairs = [
-				["Activate", 1],
-				["Off", 0],
-			];
-			super("Assistant-applied implants (Autosurgery global switch)", pairs);
-			this.setValue(current_rule.set.autoSurgery);
-			this.onchange = (value) => current_rule.set.autoSurgery = value;
-		}
+	else if (canDoAnal(State.variables.activeSlave)) {
+		r += AnalVCheck(times);
 	}
+	return r;
+}
 
-	class GrowthList extends Options {
-		constructor() {
-			super();
-			this.sublists = [];
-			const pairs = [
-				["No default setting", () => this.nds()],
-				["Girlish figure", () => this.girlish()],
-				["Stacked figure", () => this.stacked()],
-				["Huge but functional", () => this.huge()],
-				["Unlimited", () => this.unlimited()],
-				["None", () => this.none()]
-			];
-			pairs.forEach(pair => this.appendChild(new OptionsItem(...pair)));
-
-			this.breasts = new BreastGrowthList();
-			this.butts = new ButtGrowthList();
-			this.lips = new LipGrowthList();
-			this.sublists.push(this.breasts, this.butts, this.lips);
-
-			if (V.seeDicks > 0 || V.makeDicks > 0) {
-				this.dicks = new DickGrowthList();
-				this.balls = new BallGrowthList();
-				this.sublists.push(this.dicks, this.balls);
+/*
+ Before using this function, set $partner to the index of the partner in the $slaves array
+ analTimes is how many times to increment the Anal counts, if there is no Vagina available.
+ bothTimes is how many times to increment both holes counts (usually it is half of Anal).
+ In both cases if left undefined it will assume it to be 1.
+ This also checks for a valid Vagina/Accessory, though most code I've seen does this already, you
+ never know when someone might use the routine and forget to do such.
+*/
+window.PartnerVCheck = function PartnerVCheck(analTimes, bothTimes) {
+	const V = State.variables;
+	const partner = V.slaves[V.partner];
+	let r = ``;
+	
+	if (V.partner < 0 || V.partner >= V.slaves.length) {
+		r += `@@.red;PartnerVCheck called with invalid partner '$partner' from passage ${passage()}.@@`;
+	}	
+	else if (canDoVaginal(partner)) {
+		if (partner.vagina === 0) {
+			if (canDoAnal(partner) && partner.anus === 0) {
+				r += `Since it's ${partner.slaveName}'s first time, you take your time and gently ease yourself into her pussy before gradually working your way into her butthole, alternating between her holes. @@.lime;This breaks in ${partner.slaveName}'s virgin holes.@@ `;
+				partner.vagina = 1;
+				partner.anus = 1;
+			}
+			else {
+				r += `Since it's ${partner.slaveName}'s first time, you take your time and gently ease yourself into her pussy before gradually increasing the intensity of your thrusts. @@.lime;This breaks in partner.slaveName's virgin pussy.@@ `;
+				partner.vagina = 1;
 			}
-
-			this.sublists.forEach(i => this.appendChild(i));
 		}
-
-		render() {
-			const elem = document.createElement("div");
-			const span = document.createElement("span");
-			span.innerHTML = "Growth hormone regimes for healthy slaves: ";
-			elem.appendChild(span);
-			return elem;
+		else if (canDoAnal(partner) && partner.anus == 0) {
+			r += `Since it's ${partner.slaveName}'s first time, you take your time and gently ease yourself into her butthole before gradually increasing the intensity of your thrusts into her ass. @@.lime;This breaks in ${partner.slaveName}'s virgin ass.@@ `;
+			partner.anus = 1;
 		}
-
-		nds() {
-			[this.breasts, this.butts, this.lips, this.dicks, this.balls].forEach(i => {
-				i.setValue("no default change");
-				i.propagateChange();
-			});
+		
+		if (canDoAnal(partner)) {
+			if (!bothTimes) {
+				V.vaginalTotal += 1;
+				V.analTotal += 1;
+				partner.vaginalCount += 1;
+				partner.analCount += 1;
+			}
+			else {
+				V.vaginalTotal += bothTimes;
+				V.analTotal += bothTimes;
+				partner.vaginalCount += bothTimes;
+				partner.analCount += bothTimes;
+			}
+			if (V.PC.dick === 1 && canGetPregnant(partner) && partner.eggType == "human") {
+				r += knockMeUp(partner, 10, 2, -1);
+			}
 		}
-
-		girlish() {
-			this.breasts.setValue(350);
-			this.butts.setValue(2);
-			this.lips.setValue(25);
-			if (this.dicks) this.dicks.setValue(0);
-			if (this.balls) this.balls.setValue(0);
-			this.sublists.forEach(i => i.propagateChange());
+		else {
+			if (!bothTimes) {
+				V.vaginalTotal += 1;
+				partner.vaginalCount += 1;
+			}
+			else {
+				V.vaginalTotal += bothTimes;
+				partner.vaginalCount += bothTimes;
+			}
+			if (V.PC.dick === 1 && canGetPregnant(partner) && partner.eggType == "human") {
+				r += knockMeUp(partner, 10, 0, -1);
+			}
 		}
-
-		stacked() {
-			this.breasts.setValue(1000);
-			this.butts.setValue(4);
-			this.lips.setValue(25);
-			if (this.dicks) this.dicks.setValue(4);
-			if (this.balls) this.balls.setValue(4);
-			this.sublists.forEach(i => i.propagateChange());
+	}
+	else if (canDoAnal(partner)) {
+		if (partner.anus === 0) {
+			r += `Since it's ${partner.slaveName}'s first time, you take your time and gently ease yourself into her butthole before gradually increasing the intensity of your thrusts into her ass. @@.lime;This breaks in ${partner.slaveName}'s virgin ass.@@ `;
+			partner.anus = 1;
 		}
-
-		huge() {
-			this.breasts.setValue(9000);
-			this.butts.setValue(10);
-			this.lips.setValue(45);
-			if (this.dicks) this.dicks.setValue(6);
-			if (this.balls) this.balls.setValue(6);
-			this.sublists.forEach(i => i.propagateChange());
+		if (!analTimes) {
+			V.analTotal += analTimes;
+			partner.analCount += analTimes;
 		}
-
-		unlimited() {
-			this.breasts.setValue(48000);
-			this.butts.setValue(20);
-			this.lips.setValue(100);
-			if (this.dicks) this.dicks.setValue(30);
-			if (this.balls) this.balls.setValue(125);
-			this.sublists.forEach(i => i.propagateChange());
+		else {
+			V.analTotal += 1;
+			partner.analCount += 1;
 		}
-
-		none() {
-			this.sublists.forEach(i => {
-				i.setValue(0);
-				i.propagateChange();
-			});
+		if (V.PC.dick === 1 && canGetPregnant(partner) && partner.eggType == "human") {
+			r += knockMeUp(partner, 10, 1, -1);
 		}
 	}
+	return r;
+}
 
-	class BreastGrowthList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["B Cup", 350],
-				["D Cup", 1000],
-				["Monstrous", 9000],
-				["Unlimited", 48000],
-				["None", 0]
-			];
-			super("Breasts", pairs, true);
-			this.setValue(current_rule.set.growth_boobs);
-			this.onchange = (value) => current_rule.set.growth_boobs = value;
-		}
+/*
+ count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
+ If count is left undefined it will assume it to be 1.
+ Intended to be a simple "I want to fuck x and not have to code a bunch of logic for it".
+*/
+window.SimpleSexAct = function SimpleSexAct(slave, count) {
+	const V = State.variables;
+	let fuckTarget = 0;
+	let fuckCount = 1;
+	let r = ``;
+	if (count) {
+		fuckCount = count;
 	}
-
-	class ButtGrowthList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Cute", 2],
-				["Big", 4],
-				["Huge", 6],
-				["Unlimited", 20],
-				["None", 0]
-			];
-			super("Butts", pairs, true);
-			this.setValue(current_rule.set.growth_butt);
-			this.onchange = (value) => current_rule.set.growth_butt = value;
+	for (var i = 0; i < fuckCount; i++) {
+		fuckTarget = jsRandom(1,100);
+		if (slave.nipples == "fuckable" && V.PC.dick === 1 && fuckTarget > 80) {
+			V.mammaryTotal += 1;
+			slave.mammaryCount += 1;
 		}
-	}
-
-	class LipGrowthList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Plump", 25],
-				["Beestung", 45],
-				["Facepussy", 100],
-				["None", 0]
-			];
-			super("Lips", pairs, true);
-			this.setValue(current_rule.set.growth_lips);
-			this.onchange = (value) => current_rule.set.growth_lips = value;
+		else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) {
+			V.vaginalTotal += 1;
+			slave.vaginalCount += 1;
+			if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
+				r += knockMeUp(slave, 10, 0, -1, 1);
+			}
 		}
-	}
-
-	class DickGrowthList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Above average", 4],
-				["Pornstar", 6],
-				["Unlimited", 30],
-				["None", 0]
-			];
-			super("Dicks, if present", pairs, true);
-			this.setValue(current_rule.set.growth_dick);
-			this.onchange = (value) => current_rule.set.growth_dick = value;
+		else if (canDoAnal(slave) && slave.anus > 0 && fuckTarget > 10) {
+			V.analTotal += 1;
+			slave.analCount += 1;
+			if (V.PC.dick == 1 && canGetPregnant(slave) && slave.eggType == "human") {
+				r += knockMeUp(slave, 10, 1, -1, 1);
+			}
 		}
-	}
-
-	class BallGrowthList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Sizeable", 4],
-				["Cumslave", 6],
-				["Unlimited", 125],
-				["None", 0]
-			];
-			super("Balls, if present", pairs, true);
-			this.setValue(current_rule.set.growth_balls);
-			this.onchange = (value) => current_rule.set.growth_balls = value;
+		else {
+			V.oralTotal += 1;
+			slave.oralCount += 1;
 		}
 	}
+	return r;
+}
 
-	class CurrativesList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Preventatives", 1],
-				["Curatives", 2],
-			];
-			super("Health drugs", pairs);
-			this.setValue(current_rule.set.curatives);
-			this.onchange = (value) => current_rule.set.curatives = value;
+/*
+ count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
+ If count is left undefined it will assume it to be 1.
+ Intended to be a simple "x got fucked y times and I don't want to keep coding it".
+ Pregnancy chance is handled in saLongTermEffects.tw.
+*/
+window.SimpleSlaveFucking = function SimpleSlaveFucking(slave, count) {
+	const V = State.variables;
+	let fuckTarget = 0;
+	let fuckCount = 1;
+	if (count) {
+		fuckCount = count;
+	}
+	for (var i = 0; i < fuckCount; i++) {
+		fuckTarget = jsRandom(1,100);
+		if (slave.nipples == "fuckable" && fuckTarget > 80) {
+			V.mammaryTotal += 1;
+			slave.mammaryCount += 1;
+		}
+		else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) {
+			V.vaginalTotal += 1;
+			slave.vaginalCount += 1;
+		}
+		else if (canDoAnal(slave) && slave.anus > 0 && fuckTarget > 10) {
+			V.analTotal += 1;
+			slave.analCount += 1;
+		}
+		else {
+			V.oralTotal += 1;
+			slave.oralCount += 1;
 		}
 	}
+	return;
+}
 
-	class AphrodisiacList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Standard", 1],
-				["Extreme", 2],
-				["Anaphrodisiacs", -1]
-			];
-			super("Aphrodisiacs", pairs);
-			this.setValue(current_rule.set.aphrodisiacs);
-			this.onchange = (value) => current_rule.set.aphrodisiacs = value;
+/*
+ count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
+ If count is left undefined it will assume it to be 1.
+ Intended to be a simple "x got fucked y times by z and I don't want to keep coding it".
+*/
+window.SimpleSlaveSlaveFucking = function SimpleSlaveSlaveFucking(subslave, domslave, count) {
+	const V = State.variables;
+	let fuckTarget = 0;
+	let fuckCount = 1;
+	let r = ``;
+	if (count) {
+		fuckCount = count;
+	}
+	for (var j = 0; j < fuckCount; j++) {
+		//there is a reason randomization happens inside cycle - to spread fuck around, otherwise cycle isn't even needed
+		fuckTarget = jsRandom(1,100);
+		if (subslave.nipples === "fuckable" && canPenetrate(domslave) && fuckTarget > 80) {
+			if (passage() === "SA serve your other slaves") {
+				if (subslave.ID == V.slaves[V.i].ID) {
+					V.slaves[V.i].mammaryCount++;
+					V.mammaryTotal++;
+					domslave.penetrativeCount++;
+					V.penetrativeTotal++;
+				}
+				else {
+					subslave.mammaryCount++;
+					V.mammaryTotal++;
+					V.slaves[V.i].penetrativeCount++;
+					V.penetrativeTotal++;
+				}
+			}
+			else {
+				V.mammaryTotal++;
+				V.penetrativeTotal++;
+				subslave.mammaryCount++;
+				domslave.penetrativeCount++;
+			}
+		}
+		else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) {
+			if (passage() === "SA serve your other slaves") {
+				if (subslave.ID == V.slaves[V.i].ID) {
+					V.slaves[V.i].vaginalCount++;
+					V.vaginalTotal++;
+					V.penetrativeTotal++;
+					domslave.penetrativeCount++;
+				}
+				else {
+					V.slaves[V.i].penetrativeCount++;
+					V.penetrativeTotal++;
+					subslave.vaginalCount++;
+					V.vaginalTotal++;
+				}
+			}
+			else {
+				V.vaginalTotal++;
+				subslave.vaginalCount++;
+				V.penetrativeTotal++;
+				domslave.penetrativeCount++;
+			}
+			if (canImpreg(subslave, domslave)) {
+				r += knockMeUp(subslave, 3, 0, domslave.ID, 1);
+			}
+		}
+		else if (canDoAnal(subslave) && subslave.anus > 0 && canPenetrate(domslave) && fuckTarget > 10) {
+			//i think would impregnate from anal here even without .mpreg? same in original widget too
+			if (canImpreg(subslave, domslave) && subslave.mpreg == 1) {
+				r += knockMeUp(subslave, 3, 1, domslave.ID, 1);
+			}
+			if (passage() === "SA serve your other slaves") {
+				if (subslave.ID == V.slaves[V.i].ID) {
+					V.slaves[V.i].analCount++;
+					V.analTotal++;
+					V.penetrativeTotal++;
+					domslave.penetrativeCount++;
+				}
+				else {
+					V.slaves[V.i].penetrativeCount++;
+					V.penetrativeTotal++;
+					V.analTotal++;
+					subslave.analCount++;
+				}
+			}
+			else {
+				V.analTotal++;
+				subslave.analCount++;
+				V.penetrativeTotal++;
+				domslave.penetrativeCount++;
+			}
 		}
-	}
-
-	class ContraceptiveList extends List {
-		constructor() {
-			const drugs =  [
-				["No default setting", "no default setting"],
-				["Contraceptives", true],
-				["Fertile", false],
-			];
-			super("Contraceptives for fertile slaves", drugs);
-			this.setValue(current_rule.set.preg);
-			this.onchange = (value) => current_rule.set.preg = value;
+		else {
+			V.oralTotal++;
+			subslave.oralCount++;
 		}
 	}
+	return r;
+}
 
-	class PregDrugsList extends List {
-		constructor() {
-			const pairs = [
-				["No changes", "no default setting"],
-				["None", "none"],
-				["Fast gestation", "fast"],
-				["Slow gestation", "slow"],
-				["Birth supressors", "suppress"],
-				["Birth stimulators", "stimulate"]
-			];
-			super("Pregnancy control agents for pregnant slaves", pairs);
-			this.setValue(current_rule.set.pregSpeed);
-			this.onchange = (value) => current_rule.set.pregSpeed = value;
-		}
+window.SimpleVaginaFuck = function SimpleVaginaFuck(slave, count) {
+	if (count) {
+		State.variables.vaginalTotal += count;
+		slave.vaginalCount += count;
+	}
+	else {
+		State.variables.vaginalTotal++;
+		slave.vaginalCount++;
 	}
+}
 
-	class FemaleHormonesList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Intensive Female", 2],
-				["Female", 1],
-				["None", 0],
-				["Male", -1],
-				["Intensive Male", -2]
-			];
-			super("Hormones for female slaves", pairs);
-			this.setValue(current_rule.set.XX);
-			this.onchange = (value) => current_rule.set.XX = value;
-		}
+window.SimpleAssFuck = function SimpleAssFuck(slave, count) {
+	if (count) {
+		State.variables.analTotal += count;
+		slave.analCount += count;
+	}
+	else {
+		State.variables.analTotal++;
+		slave.analCount++;
 	}
+}
 
-	class GeldingHormonesList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Intensive Female", 2],
-				["Female", 1],
-				["None", 0],
-				["Male", -1],
-				["Intensive Male", -2]
-			];
-			super("Hormones for geldings", pairs);
-			this.setValue(current_rule.set.gelding);
-			this.onchange = (value) => current_rule.set.gelding = value;
+/*:: PenthouseNaming [script]*/
+
+window.MS = function() {
+ const V = State.variables;
+ var name = "";
+ if (V.masterSuiteNameCaps === "The Master Suite")
+		name = "Master Suite"
+	else
+		name = V.masterSuiteNameCaps;
+	return `<<link "${name}""Master Suite">><</link>> `}
+window.HS = function() {
+ const V = State.variables;
+ var name = "";
+ if (V.HGSuiteNameCaps === "The Head Girl Suite")
+		name = "Head Girl Suite"
+	else
+		name = V.HGSuiteNameCaps;
+	return `<<link "${name}""Head Girl Suite">><</link>> `}
+window.SQ = function() {
+ const V = State.variables;
+ var name = "";
+ if (V.servantsQuartersNameCaps === "The Servants' Quarters")
+		name = "Servants' Quarters"
+	else
+		name = V.servantsQuartersNameCaps;
+	return `<<link "${name}""Servants' Quarters">><</link>> `}
+window.S = function() {
+ const V = State.variables;
+ var name = "";
+ if (V.spaNameCaps === "The Spa")
+		name = "Spa"
+	else
+		name = V.spaNameCaps;
+	return `<<link "${name}""Spa">><</link>> `}
+window.CI = function() {
+ const V = State.variables;
+ var name = "";
+ if (V.clinicNameCaps === "The Clinic")
+		name = "Clinic"
+	else
+		name = V.clinicNameCaps;
+	return `<<link "${name}""Clinic">><</link>> `}
+window.SC = function() {
+	const V = State.variables;
+	var name = "";
+	if (V.schoolroomNameCaps === "The Schoolroom")
+		name = "Schoolroom"
+	else
+		name = V.schoolroomNameCaps;
+	return `<<link "${name}""Schoolroom">><</link>> `}
+window.CB = function() {
+	const V = State.variables;
+	var name = "";
+	if (V.cellblockNameCaps === "The Cellblock")
+		name = "Cellblock"
+	else
+		name = V.cellblockNameCaps;
+	return `<<link "${name}""Cellblock">><</link>> `}
+window.I = function() {
+	const V = State.variables;
+	var name = "";
+	if (V.incubatorNameCaps === "The Incubator")
+		name = "Incubator"
+	else
+		name = V.incubatorNameCaps;
+	return `<<link "${name}""Incubator">><</link>> `}
+
+/*:: Slave Summary Widgets JS [script]*/
+
+window.clearSummaryCache = function clearSummaryCache(slave) {
+	if (!slave)
+		setup.summaryCache = {};
+	else if (slave instanceof Object && slave.ID !== Infinity && slave.ID !== -Infinity)
+		setup.summaryCache[slave.ID] = undefined;
+	else
+		setup.summaryCache[slave] = undefined;
+};
+
+window.SlaveSummary = function SlaveSummary(slave) {
+	const V = State.variables;
+	if(V.useSummaryCache) {
+		if (setup.summaryCache[slave.ID] === undefined)
+			setup.summaryCache[slave.ID] = SlaveSummaryUncached(slave);
+		//this.output.appendChild(setup.summaryCache[State.temporary.Slave.ID].cloneNode(true))
+		return setup.summaryCache[slave.ID];
+	} else return SlaveSummaryUncached(slave);
+};
+
+window.SlaveSummaryUncached = (function(){
+	"use strict";
+	let V, r;
+	
+	function SlaveSummaryUncached(slave) {
+		V = State.variables;
+		r = "";
+		if (V.abbreviateDevotion === 1)
+			short_devotion(slave);
+		else if (V.abbreviateDevotion === 2)
+			long_devotion(slave);
+		if (slave.fuckdoll === 0) {
+			if (V.abbreviateRules === 1)
+				short_rules(slave);
+			else if (V.abbreviateRules === 2)
+				long_rules(slave);
+		}
+		if (slave.tired !== 0)
+			r += `Tired.`;
+		if (V.abbreviateDiet === 1)
+			short_weight(slave);
+		else if (V.abbreviateDiet === 2)
+			long_weight(slave);
+		if (V.abbreviateDiet === 1)
+			short_diet(slave);
+		else if (V.abbreviateDiet === 2)
+			long_diet(slave);
+		if (V.abbreviateHealth === 1)
+			short_health(slave);
+		else if (V.abbreviateHealth === 2)
+			long_health(slave);
+		if (V.abbreviateDrugs === 1)
+			short_drugs(slave);
+		else if (V.abbreviateDrugs === 2)
+			long_drugs(slave);
+		if (V.abbreviateNationality + V.abbreviateGenitalia + V.abbreviatePhysicals + V.abbreviateSkills + V.abbreviateMental !== 0) {
+			r += `<br>`;
+			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		V.desc = SlaveTitle(slave);
+		V.seed = V.desc.substring(0, 1);
+		V.seed = V.seed.toUpperCase();
+		V.desc = V.seed + V.desc.substring(1);
+		r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong> `;
+		if (V.seeRace === 1) {
+			r += `<span class="tan">`;
+			if (V.abbreviateRace === 1)
+				short_race(slave);
+			else if (V.abbreviateRace === 2)
+				long_race(slave);
+			r += `</span> `;
+		}
+		if (V.abbreviateNationality === 1)
+			short_nationality(slave);
+		else if (V.abbreviateNationality === 2)
+			long_nationality(slave);
+		if (V.abbreviatePhysicals === 1)
+			short_skin(slave);
+		else
+			r += `<span class="pink">${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)} skin.</span> `;
+		if (V.abbreviateGenitalia === 1)
+			short_genitals(slave);
+		else if (V.abbreviateGenitalia === 2)
+			long_genitals(slave);
+		if (V.abbreviatePhysicals === 1) {
+			short_age(slave);
+			short_face(slave);
+			short_eyes(slave);
+			if (slave.markings !== "none")
+				r += `Markings`;
+			short_lips(slave);
+			short_teeth(slave);
+			short_muscles(slave);
+			short_limbs(slave);
+			short_voice(slave);
+			short_tits_ass(slave);
+			short_hips(slave);
+			short_waist(slave);
+			short_implants(slave);
+			short_lactation(slave);
+			short_mods(slave);
+			r += `</span>`;
+		} else if (V.abbreviatePhysicals === 2) {
+			long_age(slave);
+			long_face(slave);
+			long_eyes(slave);
+			long_lips(slave);
+			long_teeth(slave);
+			long_muscles(slave);
+			long_limbs(slave);
+			long_voice(slave);
+			long_tits_ass(slave);
+			long_hips(slave);
+			long_waist(slave);
+			long_implants(slave);
+			long_lactation(slave);
+			long_mods(slave);
+			if (slave.brand !== 0)
+				r += `Branded.`;
+			r += `</span>`;
 		}
-	}
-
-	class ShemaleHormonesList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Intensive Female", 2],
-				["Female", 1],
-				["None", 0],
-				["Male", -1],
-				["Intensive Male", -2]
-			];
-			super("Hormones for shemales", pairs);
-			this.setValue(current_rule.set.XY);
-			this.onchange = (value) => current_rule.set.XY = value;
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		if (V.abbreviateSkills === 1) {
+			short_intelligence(slave);
+			short_sex_skills(slave);
+			if (slave.combatSkill > 0)
+				r += `C`;
+			r += `</span> `;
+			short_prestige(slave);
+		} else if (V.abbreviateSkills === 2) {
+			long_intelligence(slave);
+			long_sex_skills(slave);
+			if (slave.combatSkill > 0)
+				r += `Trained fighter.`;
+			r += `</span> `;
+			long_prestige(slave);
 		}
-	}
-
-	class OtherDrugsList extends List {
-		constructor() {
-			const drugs = [
-				["No default setting", "no default setting"],
-				["None", "none"],
-				["Fertility drugs", "fertility drugs"],
-				["Psychosuppressants", "psychosuppressants"],
-				["Steroids", "steroids"],
-				["Natural hormone enhancers", "hormone enhancers"],
-				["Hormone blockers", "hormone blockers"],
-				["breast injections"],
-				["intensive breast injections"],
-				["butt injections"],
-				["intensive butt injections"],
-				["lip injections"],
-				["penis enhancement"],
-				["intensive penis enhancement"],
-				["testicle enhancement"],
-				["intensive testicle enhancement"],
-			];
-
-			if (V.growthStim === 1)
-				drugs.push(["Growth Stimulants (Research)", "growth stimulants"]);
-			if (V.precociousPuberty === 1 && V.pubertyHormones) {
-				drugs.push(["Female hormone injections (Research)", "female hormone injections"]);
-				drugs.push(["Male hormone injections (Research)", "male hormone injections"]);
+		if (V.abbreviateMental === 1) {
+			if (slave.fetish !== "mindbroken") {
+				if (slave.fetishKnown === 1)
+					short_fetish(slave);
+				if (slave.attrKnown === 1)
+					short_attraction(slave);
 			}
-			if (V.purchasedSagBGone === 1)
-				drugs.push(["Sag-B-gone (Product)", "sag-B-gone"]);
-			if (V.arcologies[0].FSSlimnessEnthusiastResearch === 1) {
-				drugs.push(["Weight loss pills (FS)", "appetite suppressors"]);
-				drugs.push(["breast redistributors"]);
-				drugs.push(["butt redistributors"]);
-				drugs.push(["lip atrophiers"]);
-				drugs.push(["penis atrophiers"]);
-				drugs.push(["testicle atrophiers"]);
+			if (slave.clitPiercing === 3) {
+				short_smart_fetish(slave);
+				short_smart_attraction(slave);
 			}
-			if (V.arcologies[0].FSAssetExpansionistResearch === 1) {
-				drugs.push(["hyper breast injections"]);
-				drugs.push(["hyper butt injections"]);
-				drugs.push(["hyper penis enhancement"]);
-				drugs.push(["hyper testicle enhancement"]);
+			short_behavior_flaw(slave);
+			short_sex_flaw(slave);
+			short_behavior_quirk(slave);
+			short_sex_quirk(slave);
+		} else if (V.abbreviateMental === 2) {
+			if (slave.fetish !== "mindbroken") {
+				if (slave.fetishKnown === 1)
+					long_fetish(slave);
+				if (slave.attrKnown === 1)
+					long_attraction(slave);
 			}
-			if (V.arcologies[0].FSYouthPreferentialistResearch === 1)
-				drugs.push(["Anti-aging cream (FS)", "anti-aging cream"]);
-			if (V.seeHyperPreg === 1 && V.superFertilityDrugs === 1)
-				drugs.push(["Super fertility drugs", "super fertility drugs"]);
-			super("Other drugs", drugs);
-			this.setValue(current_rule.set.drug);
-			this.onchange = (value) => current_rule.set.drug = value;
-		}
-	}
-
-	class DietList extends List {
-		constructor() {
-			const diets = [
-				["no default setting", "no default setting"],
-				["Healthy diet", "healthy"],
-				["Fix fat and skinny slaves", "attractive"],
-				["Curvy", 30],
-				["Average",  0],
-				["Thin", -30]
-			];
-			if (V.feeder === 1) {
-				diets.push(
-					["Feminine", "XX"],
-					["Masculine", "XY"]
-				);
-				if (V.dietXXY === 1)
-					diets.push(["Futanari", "XXY"]);
+			if (slave.clitPiercing === 3) {
+				long_smart_fetish(slave);
+				long_smart_attraction(slave);
 			}
-			if (V.dietCleanse === 1)
-				diets.push(["Cleansing", "cleansing"]);
-			if (V.dietFertility === 1)
-				diets.push(["Fertility", "fertility"]);
-			if (V.cumProDiet === 1)
-				diets.push(["Cum production", "cum production"]);
-
-			super("Slave diets", diets, true);
-			this.setValue(current_rule.set.diet);
-			this.onchange = (value) => current_rule.set.diet = value;
-		}
-	}
-
-	class DietGrowthList extends List {
-		constructor() {
-			const pairs = [
-				["On", 1],
-				["Off", 0]
-			];
-			super("Diet support for growth drugs", pairs);
-			this.setValue(current_rule.set.dietGrowthSupport);
-			this.onchange = (value) => current_rule.set.dietGrowthSupport = value;
+			long_behavior_flaw(slave);
+			long_sex_flaw(slave);
+			long_behavior_quirk(slave);
+			long_sex_quirk(slave);
 		}
-	}
-
-	class DietBaseList extends List {
-		constructor() {
-			// TODO: better data structure?
-			const pairs = [
-				["No default setting", {cum: "no default setting", milk: "no default setting"}],
-				["Normal Diet", {cum: 0, milk: 0}],
-				["Cum Added", {cum: 1, milk: 0}],
-				["Milk Added", {cum: 0, milk: 1}],
-				["Cum &amp; Milk Added", {cum: 1, milk: 1}],
-				["Cum-Based", {cum: 2, milk: 0}],
-				["Milk-Based", {cum: 0, milk: 2}],
-			];
-			super("Diet base", pairs);
-			this.setValue(this.value2string(current_rule.set.dietCum, current_rule.set.dietMilk));
-			this.onchange = (value) => {
-				current_rule.set.dietCum = value.cum;
-				current_rule.set.dietMilk = value.milk;
-			};
+		if (slave.customLabel != "")
+			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
+		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
+			r += `<br>`;
+			if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1)
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
-
-		value2string(cum, milk) {
-			return `cum: ${cum}, milk: ${milk}`;
+		if (V.abbreviateMental === 1) {
+			r += `<span class="lightgreen">`;
+			if (V.familyTesting === 1)
+				short_extended_family(slave);
+			else
+				short_legacy_family(slave);
+			r += `</span>`;
+			short_rival(slave);
+		} else if (V.abbreviateMental === 2) {
+			if (V.familyTesting === 1)
+				long_extended_family(slave);
+			else
+				long_legacy_family(slave);
+			long_rival(slave);
 		}
-
-		setValue(what) {
-			what = this.value2string(what.cum, what.milk);
-			super.setValue(what);
+		if (slave.fuckdoll === 0) {
+			if (V.abbreviateClothes === 2) {
+				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+				if (slave.choosesOwnClothes === 1)
+					r += `Dressing herself. `;
+				long_clothes(slave);
+				long_collar(slave);
+				long_belly(slave);
+				if (slave.amp !== 1)
+					long_legs(slave);
+				if (canWalk(slave))
+					long_shoes(slave);
+				long_vaginal_acc(slave);
+				long_dick_acc(slave);
+				long_buttplug(slave);
+			}
 		}
-
+		r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		rules_assistant(slave);
+		if (V.abbreviateOrigins === 2 && slave.origin !== 0)
+			origins(slave);
+		return r;
 	}
-
-	class MuscleList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Toned", 20],
-				["Ripped", 50],
-				["Massive", 100],
-				["Weak", -20]
-			];
-			super("Muscles", pairs, true);
-			this.setValue(current_rule.set.muscles);
-			this.onchange = (value) => current_rule.set.muscles = value;
+	
+	function short_devotion(slave) {
+		if (slave.fetish === "mindbroken") {
+			r += `<span class="red">MB</span>`;
+		} else if (slave.devotion < -95) {
+			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion < -50) {
+			r += `<span class="darkviolet">Hate${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion < -20) {
+			r += `<span class="mediumorchid">Res${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion <= 20) {
+			r += `<span class="yellow">Ambiv${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion <= 50) {
+			r += `<span class="hotpink">Accept${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else if (slave.devotion <= 95) {
+			r += `<span class="deeppink">Devo${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
+		} else {
+			r += `<span class="magenta">Wor${V.summaryStats ? `[${slave.devotion}]` : ''}</span>`;
 		}
-	}
-
-	class BraceList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", "none"],
-				["Straighten", "straighten"],
-				["Universal", "universal"]
-			];
-			super("Braces", pairs);
-			this.setValue(current_rule.set.teeth);
-			this.onchange = (value) => current_rule.set.teeth = value;
+		r += " ";
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.trust < -95) {
+			r += `<span class="darkgoldenrod">ETerr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust < -50) {
+			r += `<span class="goldenrod">Terr${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust < -20) {
+			r += `<span class="gold">Fright${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust <= 20) {
+			r += `<span class="yellow">Fear${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+		} else if (slave.trust <= 50) {
+			if (slave.devotion < -20) {
+				r += `<span class="orange">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="mediumaquamarine">Caref${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		} else if (slave.trust < 95) {
+			if (slave.devotion < -20) {
+				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="mediumseagreen">Trust${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
+		} else {
+			if (slave.devotion < -20) {
+				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			} else {
+				r += `<span class="seagreen">VTrust ${V.summaryStats ? `[${slave.trust}]` : ''}</span>`;
+			}
 		}
+		r += " ";
 	}
-
-	class LivingStandardList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Luxurious", "luxurious"],
-				["Normal", "normal"],
-				["Spare", "spare"]
-			];
-			super("Living standard", pairs);
-			this.setValue(current_rule.set.livingRules);
-			this.onchange = (value) => current_rule.set.livingRules = value;
+	
+	function long_devotion(slave) {
+		if (slave.fetish === "mindbroken") {
+			r += `<span class="red">Mindbroken.</span>`;
+		} else if (slave.devotion < -95) {
+			r += `<span class="darkviolet">Very hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion < -50) {
+			r += `<span class="darkviolet">Hateful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion < -20) {
+			r += `<span class="mediumorchid">Resistant${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 20) {
+			r += `<span class="yellow">Ambivalent${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 50) {
+			r += `<span class="hotpink">Accepting${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else if (slave.devotion <= 95) {
+			r += `<span class="deeppink">Devoted${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
+		} else {
+			r += `<span class="magenta">Worshipful${V.summaryStats ? `[${slave.devotion}]` : ''}.</span>`;
 		}
-	}
-
-	class PunishmentList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Confinement", "confinement"],
-				["Whipping", "whipping"],
-				["Chastity", "chastity"],
-				["Situational", "situational"]
-			];
-			super("Typical punishment", pairs);
-			this.setValue(current_rule.set.standardPunishment);
-			this.onchange = (value) => current_rule.set.standardPunishment = value;
+		r += " ";
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.trust < -95) {
+			r += `<span class="darkgoldenrod">Extremely terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust < -50) {
+			r += `<span class="goldenrod">Terrified${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust < -20) {
+			r += `<span class="gold">Frightened${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust <= 20) {
+			r += `<span class="yellow">Fearful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+		} else if (slave.trust <= 50) {
+			if (slave.devotion < -20) {
+				r += `<span class="orange">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="mediumaquamarine">Careful${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		} else if (slave.trust < 95) {
+			if (slave.devotion < -20) {
+				r += `<span class="orangered">Bold${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="mediumseagreen">Trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
+		} else {
+			if (slave.devotion < -20) {
+				r += `<span class="darkred">Defiant${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			} else {
+				r += `<span class="seagreen">Profoundly trusting${V.summaryStats ? `[${slave.trust}]` : ''}.</span>`;
+			}
 		}
+		r += " ";
 	}
-
-	class RewardList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Relaxation", "relaxation"],
-				["Drugs", "drugs"],
-				["Orgasm", "orgasm"],
-				["Situational", "situational"]
-			];
-			super("Typical reward", pairs);
-			this.setValue(current_rule.set.standardReward);
-			this.onchange = (value) => current_rule.set.standardReward = value;
+	
+	function short_rules(slave) {
+		switch (slave.livingRules) {
+			case "luxurious":
+				r += `<strong>LS:Lux</strong>`;
+				break;
+			case "normal":
+				r += `<strong>LS:Nor</strong>`;
+				break;
+			default:
+				r += `<strong>LS:Spa</strong>`;
+				break;
 		}
-	}
-
-	class ReleaseList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Permissive", "permissive"],
-				["Sapphic", "sapphic"],
-				["Masturbation", "masturbation"],
-				["Restrictive", "restrictive"]
-			];
-			super("Release rules", pairs);
-			this.setValue(current_rule.set.releaseRules);
-			this.onchange = (value) => current_rule.set.releaseRules = value;
+		r += " ";
+		if (canTalk(slave)) {
+			switch (slave.speechRules) {
+				case "permissive":
+					r += `<strong>SpR:P</strong>`;
+					break;
+				case "accent elimination":
+					r += `<strong>SpR:NoAcc</strong>`;
+					break;
+				case "language lessons":
+					r += `<strong>SpR:LL</strong>`;
+					break;
+				default:
+					r += `<strong>SpR:R</strong>`;
+					break;
+			}
+			r += " ";
 		}
-	}
-
-	class SmartFetishList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Vanilla", "vanilla"],
-				["Oral", "oral"],
-				["Anal", "anal"],
-				["Boobs", "boobs"],
-				["Sub", "submissive"],
-				["Dom", "dom"],
-				["Humiliation", "humiliation"],
-				["Preg", "pregnancy"],
-				["Pain", "masochist"],
-				["Sadism", "sadist"]
-			];
-			super("Smart piercing fetish target", pairs);
-			this.setValue(current_rule.set.clitSetting);
-			this.onchange = (value) => current_rule.set.clitSetting = value;
+		switch (slave.relationshipRules) {
+			case "permissive":
+				r += `<strong>ReR:P</strong>`;
+				break;
+			case "just friends":
+				r += `<strong>ReR:Fr</strong>`;
+				break;
+			default:
+				r += `<strong>ReR:R</strong>`;
+				break;
 		}
-	}
-
-	class SmartXYAttractionList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Passionate", 100],
-				["Attracted", 75],
-				["Indifferent", 45],
-				["None", 0]
-			];
-			super("Smart piercing XY attraction target", pairs);
-			this.setValue(current_rule.set.clitSettingXY);
-			this.onchange = (value) => current_rule.set.clitSettingXY = value;
+		r += " ";
+		switch (slave.standardPunishment) {
+			case "confinement":
+				r += `<strong>Pun:Conf</strong>`;
+				break;
+			case "whipping":
+				r += `<strong>Pun:Whip</strong>`;
+				break;
+			case "chastity":
+				r += `<strong>Pun:Chas</strong>`;
+				break;
+			default:
+				r += `<strong>Pun:Situ</strong>`;
+				break;
 		}
-	}
-
-	class SmartXXAttractionList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Passionate", 100],
-				["Attracted", 75],
-				["Indifferent", 45],
-				["None", 0]
-			];
-			super("Smart piercing XX attraction target", pairs);
-			this.setValue(current_rule.set.clitSettingXX);
-			this.onchange = (value) => current_rule.set.clitSettingXX = value;
+		r += " ";
+		switch (slave.standardReward) {
+			case "relaxation":
+				r += `<strong>Rew:Relx</strong>`;
+				break;
+			case "drugs":
+				r += `<strong>Rew:Drug</strong>`;
+				break;
+			case "orgasm":
+				r += `<strong>Rew:Orga</strong>`;
+				break;
+			default:
+				r += `<strong>Rew:Situ</strong>`;
+				break;
 		}
-	}
-
-	class SmartEnergyList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Nympho", 100],
-				["Sex Addict", 85],
-				["Powerful", 65],
-				["Healthy", 45],
-				["Weak", 25],
-				["Frigid", 0]
-			];
-			super("Smart piercing sex drive target", pairs);
-			this.setValue(current_rule.set.clitSettingEnergy);
-			this.onchange = (value) => current_rule.set.clitSettingEnergy = value;
+		r += " ";
+		switch (slave.releaseRules) {
+			case "permissive":
+				r += `<strong>MaR:P</strong>`;
+				break;
+			case "sapphic":
+				r += `<strong>MaR:S</strong>`;
+				break;
+			case "masturbation":
+				r += `<strong>MaR:M</strong>`;
+				break;
+			default:
+				r += `<strong>MaR:R</strong>`;
+				break;
 		}
+		r += " ";
 	}
-
-	class SpeechList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["Permissive", "permissive"],
-				["Suppress accents", "accent elimination"],
-				["Restrictive", "restrictive"]
-			];
-			super("Speech rules", pairs);
-			this.setValue(current_rule.set.speechRules);
-			this.onchange = (value) => current_rule.set.speechRules = value;
+	
+	function long_rules(slave) {
+		r += `Living standard: ${slave.livingRules}. `;
+		if (canTalk(slave)) {
+			r += `Speech rules: ${slave.speechRules}. `;
 		}
+		r += `Relationship rules: ${slave.relationshipRules}. `;
+		r += `Typical punishment: ${slave.standardPunishment}. `;
+		r += `Typical reward: ${slave.standardReward}. `;
+		r += `Release rules: ${slave.releaseRules}. `;
 	}
-
-	class RelationshipList extends List {
-		constructor() {
-			const pairs =[
-				["No default setting", "no default setting"],
-				["Permissive", "permissive"],
-				["Just friends", "just friends"],
-				["Restrictive", "restrictive"]
-			];
-			super("Relationship rules", pairs);
-			this.setValue(current_rule.set.relationshipRules);
-			this.onchange = (value) => current_rule.set.relationshipRules = value;
+	
+	function short_weight(slave) {
+		if (slave.weight < -95) {
+			r += `<strong><span class="red">W---${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+		} else if (slave.weight < -30) {
+			if (slave.hips < -1) {
+				r += `<strong>W--${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W--${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight < -10) {
+			r += `<strong>W-${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 10) {
+			r += `<strong>W${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 30) {
+			r += `<strong>W+${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+		} else if (slave.weight <= 95) {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 130) {
+			if (slave.hips > 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 160) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else if (slave.weight <= 190) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W+++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W+++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
+		} else {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `<strong>W++++++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
+			} else {
+				r += `<strong><span class="red">W++++++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
+			}
 		}
+		r += " ";
 	}
-
-	class PornList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["No broadcasting", -1],
-				["No subsidy", 0],
-				["1000", 1000],
-				["2000", 2000],
-				["3000", 3000],
-				["4000", 4000],
-				["5000", 5000]
-			];
-			super("Weekly porn publicity subsidy", pairs);
-			this.setValue(current_rule.set.pornFameSpending);
-			this.onchange = (value) => current_rule.set.pornFameSpending = value;
+	
+	function long_weight(slave) {
+		if (slave.weight < -95) {
+			r += `<span class="red">Emaciated${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+		} else if (slave.weight < -30) {
+			if (slave.hips < -1) {
+				r += `Model-thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Very thin${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight < -10) {
+			r += `Thin${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 10) {
+			r += `Trim${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 30) {
+			r += `Plush${V.summaryStats? `[${slave.weight}]`: ''}.`;
+		} else if (slave.weight <= 95) {
+			if (slave.hips > 1 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Nicely chubby${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 130) {
+			if (slave.hips > 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 160) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Amazingly voluptuous${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else if (slave.weight <= 190) {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `SSBBW${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Super Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
+		} else {
+			if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+				r += `Perfectly massive${V.summaryStats? `[${slave.weight}]`: ''}.`;
+			} else {
+				r += `<span class="red">Dangerously Obese${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
+			}
 		}
-	}
+		r += " ";
 
-	class EyewearList extends List {
-		constructor() {
-			const pairs = [
-				["no default setting"],
-				["correct with glasses"],
-				["correct with contacts"],
-				["universal glasses"],
-				["blur with glasses"],
-				["blur with contacts"]
-			];
-			super("Eyewear", pairs);
-			this.setValue(current_rule.set.eyewear);
-			this.onchange = (value) => current_rule.set.eyewear = value;
-		}
 	}
-
-	class LensesList extends Element {
-		constructor() {
-			super(current_rule.set.eyeColor);
-			this.appendChild(new OptionsItem("No default Setting", () => this.setValue("no default setting")));
-			this.colourlist = new LensesColourList();
-			this.shapelist = new LensesShapeList();
-			this.appendChild(this.colourlist);
-			this.appendChild(this.shapelist);
+	
+	function short_diet(slave) {
+		r += `<span class="teal">`;
+		switch (slave.diet) {
+			case "restricted":
+				r += `<strong>Di:W-</strong>`;
+				break;
+			case "fattening":
+				r += `<strong>Di:W+</strong>`;
+				break;
+			case "XX":
+				r += `<strong>Di:XX+</strong>`;
+				break;
+			case "XY":
+				r += `<strong>Di:XY+</strong>`;
+				break;
+			case "XXY":
+				r += `<strong>Di:XXY+</strong>`;
+				break;
+			case "muscle building":
+				r += `<strong>Di:M+</strong>`;
+				break;
+			case "slimming":
+				r += `<strong>Di:M-</strong>`;
+				break;
+			case "cum production":
+				r += `<strong>Di:C+</strong>`;
+				break;
+			case "cleansing":
+				r += `<strong>Di:H+</strong>`;
+				break;
+			case "fertility":
+				r += `<strong>Di:F+</strong>`;
+				break;
 		}
-
-		render(color) {
-			const elem = document.createElement("div");
-			elem.innerHTML = "Eye coloring: ";
-			this.label = document.createElement("strong");
-			this.label.innerText = color;
-			elem.appendChild(this.label);
-			return elem;
+		r += `</span> `;
+		r += `<span class="cyan">`;
+		if (slave.dietCum === 2) {
+			r += `<strong>Cum++</strong>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
+			r += `<strong>Cum+</strong>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
+			r += `<strong>Cum+ Milk+</strong>`;
+		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
+			r += `<strong>Milk+</strong>`;
+		} else if ((slave.dietMilk === 2)) {
+			r += `<strong>Milk++</strong>`;
 		}
-
-		combine() {
-			const lst = [];
-			if (this.colourlist.value !== "no default setting")
-				lst.push(this.colourlist.value);
-			if (this.shapelist.value !== "no default setting")
-				lst.push(this.shapelist.value);
-			if (lst.length === 0) return "no default value";
-			else return lst.join(" ");
+		r += `</span> `;
+	}
+	
+	function long_diet(slave) {
+		r += `<span class="teal">`;
+		switch (slave.diet) {
+			case "restricted":
+				r += `Dieting.`;
+				break;
+			case "fattening":
+				r += `Gaining weight.`;
+				break;
+			case "XX":
+				r += `Estrogen rich.`;
+				break;
+			case "XY":
+				r += `Testosterone rich.`;
+				break;
+			case "XXY":
+				r += `Futanari mix.`;
+				break;
+			case "muscle building":
+				r += `Pumping iron.`;
+				break;
+			case "slimming":
+				r += `Slimming down.`;
+				break;
+			case "cum production":
+				r += `Cum production.`;
+				break;
+			case "cleansing":
+				r += `Cleansing.`;
+				break;
+			case "fertility":
+				r += `Fertility.`;
+				break;
 		}
-
-		setValue(val) {
-			if (val === undefined) val = this.combine();
-			this.label.innerText = val;
-			current_rule.set.eyeColor = val;
+		r += `</span> `;
+		if (slave.dietCum === 2) {
+			r += `Diet Base: <span class="cyan">Cum Based.</span>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 0))) {
+			r += `Diet Base: <span class="cyan">Cum Added.</span>`;
+		} else if (((slave.dietCum === 1) && (slave.dietMilk === 1))) {
+			r += `Diet Base: <span class="cyan">Milk & Cum Added.</span>`;
+		} else if (((slave.dietCum === 0) && (slave.dietMilk === 1))) {
+			r += `Diet Base: <span class="cyan">Milk Added.</span>`;
+		} else if ((slave.dietMilk === 2)) {
+			r += `Diet Base: <span class="cyan">Milk Based.</span>`;
 		}
+		r += " ";
 	}
-
-	class LensesColourList extends Options {
-		constructor() {
-			const items = [];
-			[
-				"no default setting",
-				"blue",
-				"black",
-				"brown",
-				"green",
-				"turquoise",
-				"sky-blue",
-				"hazel",
-				"pale-grey",
-				"white",
-				"pink",
-				"amber",
-				"red"
-			].forEach(i => items.push(new OptionsItem(i, item => {
-				this.value = item.label;
-				this.parent.setValue();
-			})));
-			super(items);
+	
+	function short_health(slave) {
+		if (slave.health < -20) {
+			r += `<strong><span class="red">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		} else if (slave.health <= 20) {
+			r += `<strong><span class="yellow">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
+		} else if (slave.health > 20) {
+			r += `<strong><span class="green">H${V.summaryStats? `[${slave.health}]` : ''}</span></strong>`;
 		}
+		r += " ";
 	}
-
-	class LensesShapeList extends Options {
-		constructor() {
-			const items = [];
-			[
-				"no default setting",
-				"catlike",
-				"serpent-like",
-				"devilish",
-				"demonic",
-				"hypnotic",
-				"heart-shaped",
-				"wide-eyed",
-				"almond-shaped",
-				"bright",
-				"teary",
-				"vacant"
-			].forEach(i => items.push(new OptionsItem(i, item => {
-				this.value = item.label;
-				this.parent.setValue();
-			})));
-			super(items);
+	
+	function long_health(slave) {
+		if (slave.health < -90) {
+			r += `<span class="red">On the edge of death${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health < -50) {
+			r += `<span class="red">Extremely unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health < -20) {
+			r += `<span class="red">Unhealthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 20) {
+			r += `<span class="yellow">Healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 50) {
+			r += `<span class="green">Very healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else if (slave.health <= 90) {
+			r += `<span class="green">Extremely healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
+		} else {
+			r += `<span class="green">Unnaturally healthy${V.summaryStats? `[${slave.health}]` : ''}.</span>`;
 		}
+		r += " ";
 	}
-
-	class MakeupList extends List {
-		constructor() {
-			super("Makeup");
-			[
-				["no default setting"],
-				["makeup-free", 0],
-				["nice", 1],
-				["gorgeous", 2],
-				["color-coordinate with hair", 3],
-				["slutty", 4]
-			].forEach(pair => this.appendChild(new ListItem(...pair)));
-			this.setValue(current_rule.set.makeup);
-			this.onchange = (value) => current_rule.set.makeup = value;
+	
+	function short_drugs(slave) {
+		r += `<span class="tan">`;
+		switch (slave.drugs) {
+			case "breast injections":
+				r += `<strong>Dr:Boobs+</strong>`;
+				break;
+			case "intensive breast injections":
+				r += `<strong>Dr:Boobs++</strong>`;
+				break;
+			case "hyper breast injections":
+				r += `<strong>Dr:Boobs+++</strong>`;
+				break;
+			case "butt injections":
+				r += `<strong>Dr:Butt+</strong>`;
+				break;
+			case "intensive butt injections":
+				r += `<strong>Dr:Butt++</strong>`;
+				break;
+			case "hyper butt injections":
+				r += `<strong>Dr:Butt+++</strong>`;
+				break;
+			case "lip injections":
+				r += `<strong>Dr:Lip+</strong>`;
+				break;
+			case "fertility drugs":
+				r += `<strong>Dr:Fert+</strong>`;
+				break;
+			case "super fertility drugs":
+				r += `<strong>Dr:Fert++</strong>`;
+				break;
+			case "penis enhancement":
+				r += `<strong>Dr:Dick+</strong>`;
+				break;
+			case "intensive penis enhancement":
+				r += `<strong>Dr:Dick++</strong>`;
+				break;
+			case "hyper penis enhancement":
+				r += `<strong>Dr:Dick+++</strong>`;
+				break;
+			case "testicle enhancement":
+				r += `<strong>Dr:Balls+</strong>`;
+				break;
+			case "intensive testicle enhancement":
+				r += `<strong>Dr:Balls++</strong>`;
+				break;
+			case "hyper testicle enhancement":
+				r += `<strong>Dr:Balls+++</strong>`;
+				break;
+			case "psychosuppressants":
+				r += `<strong>Dr:Psych</strong>`;
+				break;
+			case "steroids":
+				r += `<strong>Dr:Ster</strong>`;
+				break;
+			case "female hormone injections":
+				r += `<strong>Dr:HormXX++</strong>`;
+				break;
+			case "male hormone injections":
+				r += `<strong>Dr:HormXY++</strong>`;
+				break;
+			case "hormone enhancers":
+				r += `<strong>Dr:Horm+</strong>`;
+				break;
+			case "hormone blockers":
+				r += `<strong>Dr:Horm-</strong>`;
+				break;
+			case "anti-aging cream":
+				r += `<strong>Dr:Age-</strong>`;
+				break;
+			case "appetite suppressors":
+				r += `<strong>Dr:ApSup</strong>`;
+				break;
+			case "penis atrophiers":
+				r += `<strong>Dr:Dick-</strong>`;
+				break;
+			case "testicle atrophiers":
+				r += `<strong>Dr:Balls-</strong>`;
+				break;
+			case "clitoris atrophiers":
+				r += `<strong>Dr:Clit-</strong>`;
+				break;
+			case "labia atrophiers":
+				r += `<strong>Dr:Labia-</strong>`;
+				break;
+			case "nipple atrophiers":
+				r += `<strong>Dr:Nipple-</strong>`;
+				break;
+			case "lip atrophiers":
+				r += `<strong>Dr:Lip-</strong>`;
+				break;
+			case "breast redistributors":
+				r += `<strong>Dr:Breast-</strong>`;
+				break;
+			case "butt redistributors":
+				r += `<strong>Dr:Butt-</strong>`;
+				break;
+			case "sag-B-gone":
+				r += `<strong>Dr:AntiSag</strong>`;
+				break;
+			case "growth stimulants":
+				r += `<strong>Dr:groStim</strong>`;
+				break;
+		}
+		r += `</span> `;
+		r += `<span class="lightgreen">`;
+		if (slave.curatives === 2) {
+			r += `<strong>Cura</strong>`;
+		} else if (slave.curatives === 1) {
+			r += `<strong>Prev</strong>`;
 		}
-	}
-
-	class NailsList extends List {
-		constructor() {
-			super("Nails");
-			[
-				["no default setting"],
-				["clipped", 0],
-				["extended", 1],
-				["color-coordinate with hair", 2],
-				["sharp and claw-like", 3],
-				["bright and glittery", 4],
-				["hooker nails", 5]
-			].forEach(pair => this.appendChild(new ListItem(...pair)));
-			this.setValue(current_rule.set.nails);
-			this.onchange = (value) => current_rule.set.nails = value;
+		r += `</span> `;
+		if (slave.aphrodisiacs !== 0) {
+			r += `<span class="lightblue">`;
+			if (slave.aphrodisiacs === 1) {
+				r += `<strong>Aph</strong>`;
+			} else if (slave.aphrodisiacs === 2) {
+				r += `<strong>Aph++</strong>`;
+			} else {
+				r += `<strong>Anaph</strong>`;
+			}
+			r += `</span> `;
 		}
-	}
-
-	class HairLengthList extends List {
-		constructor() {
-			const pairs = [
-				["no default setting"],
-				["very short", 5],
-				["short", 10],
-				["shoulder length", 30],
-				["long", 60],
-				["very long", 100],
-				["floor length", 150]
-			];
-			super("Hair length", pairs);
-			this.setValue(current_rule.set.hLength);
-			this.onchange = (value) => current_rule.set.hLength = value;
+		if (slave.addict !== 0) {
+			r += `<span class="cyan">Add</span>`;
 		}
-	}
-	class HairColourList extends List {
-		constructor() {
-			const pairs = [
-				["no default setting"],
-				["blonde"],
-				["golden"],
-				["platinum blonde"],
-				["strawbery-blonde"],
-				["copper"],
-				["ginger"],
-				["red"],
-				["green"],
-				["blue"],
-				["pink"],
-				["dark brown"],
-				["brown"],
-				["auburn"],
-				["burgundy"],
-				["chocolate"],
-				["chestnut"],
-				["hazel"],
-				["black"],
-				["grey"],
-				["silver"],
-				["white"],
-				["blue-violet"],
-				["blazing red"],
-				["neon green"],
-				["neon blue"],
-				["neon pink"]
-			];
-			super("Hair color", pairs);
-			this.setValue(current_rule.set.hColor);
-			this.onchange = (value) => current_rule.set.hColor = value;
+		r += `<span class="lightsalmon">`;
+		if (slave.hormones > 1) {
+			r += `<strong>Ho:F+</strong>`;
+		} else if (slave.hormones > 0) {
+			r += `<strong>Ho:F</strong>`;
+		} else if (slave.hormones < -1) {
+			r += `<strong>Ho:M+</strong>`;
+		} else if (slave.hormones < 0) {
+			r += `<strong>Ho:M</strong>`;
 		}
-	}
-
-	class HairStyleList extends List {
-		constructor() {
-			const pairs = [
-				["no default setting"],
-				["neat"],
-				["shaved"],
-				["trimmed"],
-				["buzzcut"],
-				["up"],
-				["ponytail"],
-				["bun"],
-				["messy bun"],
-				["curled"],
-				["permed"],
-				["luxurious"],
-				["dreadlocks"],
-				["cornrows"],
-				["braided"],
-				["tails"],
-				["afro"],
-				["strip"]
-			];
-			super("Hair style", pairs);
-			this.setValue(current_rule.set.hStyle);
-			this.onchange = (value) => current_rule.set.hStyle = value;
+		r += `</span> `;
+		r += `<span class="mediumseagreen">`;
+		if ((slave.bellyImplant > -1)) {
+			r += `<strong>Belly Imp</strong>`;
+		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
+			r += `<strong>Barr</strong>`;
+		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Prepub</strong>`;
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Meno</strong>`;
+		} else if (slave.pregWeek < 0) {
+			r += `<strong>Postpartum</strong>`;
+		} else if (slave.preg === -1) {
+			r += `<strong>CC</strong>`;
+		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `<strong>Fert+</strong>`;
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
+			r += `<strong>Preg?</strong>`;
+		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
+			r += `<strong>Perm preg</strong>`;
+		} else if (slave.pregKnown === 1) {
+			r += `<strong>${slave.pregWeek} wks preg</strong>`;
 		}
-	}
-
-	class PubicHairColourList extends List {
-		constructor() {
-			const pairs = [
-				["no default setting"],
-				["blonde"],
-				["golden"],
-				["platinum blonde"],
-				["strawerry-blonde"],
-				["copper"],
-				["ginger"],
-				["red"],
-				["green"],
-				["blue"],
-				["pink"],
-				["dark brown"],
-				["brown"],
-				["auburn"],
-				["burgundy"],
-				["chocolate"],
-				["chestnut"],
-				["hazel"],
-				["black"],
-				["grey"],
-				["silver"],
-				["white"],
-				["blue-violet"],
-				["blazing red"],
-				["neon green"],
-				["neon blue"],
-				["neon pink"]
-			];
-			super("Pubic hair color, when present", pairs);
-			this.setValue(current_rule.set.pubicHColor);
-			this.onchange = (value) => current_rule.set.pubicHColor = value;
+		r += `</span> `;
+		if (slave.induce === 1) {
+			r += `<span class="orange"><strong>Early Labor</strong></span>`;
 		}
-	}
-
-	class PubicHairStyleList extends List {
-		constructor() {
-			const pairs = [
-				["no default setting"],
-				["waxed"],
-				["in a strip"],
-				["neat"],
-				["bushy"],
-				["bushy in the front and neat in the rear"],
-				["very bushy"]
-			];
-			super("Pubic hairstyle", pairs);
-			this.setValue(current_rule.set.pubicHStyle);
-			this.onchange = (value) => current_rule.set.pubicHStyle = value;
+		if (slave.pubertyXY === 0 && slave.balls > 0) {
+			r += `<strong>Prepub balls</strong>`;
 		}
-	}
-
-	class ArmpitHairColourList extends List {
-		constructor() {
-			const pairs = [
-				["no default setting"],
-				["blonde"],
-				["golden"],
-				["platinum blonde"],
-				["strawberry-blonde"],
-				["copper"],
-				["ginger"],
-				["red"],
-				["green"],
-				["blue"],
-				["pink"],
-				["dark brown"],
-				["brown"],
-				["auburn"],
-				["burgundry"],
-				["chocolate"],
-				["chestnut"],
-				["hazel"],
-				["black"],
-				["grey"],
-				["silver"],
-				["white"],
-				["blue-violet"],
-			];
-			super("Underarm hair color, when present", pairs);
-			this.setValue(current_rule.set.underArmHColor);
-			this.onchange = (value) => current_rule.set.underArmHColor = value;
+		if (slave.balls > 0 && slave.vasectomy === 1) {
+			r += `<strong>Vasect</strong>`;
 		}
-	}
-
-	class ArmpitHairStyleList extends List {
-		constructor() {
-			const pairs = [
-				["no default setting"],
-				["waxed"],
-				["shaved"],
-				["neat"],
-				["bushy"]
-			];
-			super("Underarm hair style", pairs);
-			this.setValue(current_rule.set.underArmHStyle);
-			this.onchange = (value) => current_rule.set.underArmHStyle = value;
+		r += `<span class="springgreen">`;
+		if (slave.inflation === 3) {
+			r += `<strong>8 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.inflation === 2) {
+			r += `<strong>4 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.inflation === 1) {
+			r += `<strong>2 ltr ${slave.inflationType}</strong>`;
+		} else if (slave.bellyFluid > 0) {
+			r += `<strong>${slave.bellyFluid}ccs ${slave.inflationType}</strong>`;
 		}
+		r += `</span> `;
 	}
-
-	class EarPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Ear piercings", pairs);
-			this.setValue(current_rule.set.earPiercing);
-			this.onchange = (value) => current_rule.set.earPiercing = value;
+	
+	function long_drugs(slave) {
+		if ((slave.drugs !== "no drugs") && (slave.drugs !== "none")) {
+			r += `<span class="tan">On ${slave.drugs}.</span> `;
 		}
-	}
-
-	class NosePiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Nasal piercings", pairs);
-			this.setValue(current_rule.set.nosePiercing);
-			this.onchange = (value) => current_rule.set.earPiercing = value;
+		r += `<span class="lightgreen">`;
+		if (slave.curatives === 2) {
+			r += `On curatives.`;
+		} else if (slave.curatives === 1) {
+			r += `On preventatives.`;
 		}
-	}
-
-	class EyebrowPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Eyebrow piercings", pairs);
-			this.setValue(current_rule.set.eyebrowPiercing);
-			this.onchange = (value) => current_rule.set.eyebrowPiercing = value;
+		r += `</span> `;
+		r += `<span class="lightblue">`;
+		if (slave.aphrodisiacs > 0) {
+			r += `On ${slave.aphrodisiacs > 1 ? 'extreme': ''} aphrodisiacs.`;
+		} else if (slave.aphrodisiacs === -1) {
+			r += `On anaphrodisiacs.`;
 		}
-	}
-
-	class NavelPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Navel piercings", pairs);
-			this.setValue(current_rule.set.navelPiercing);
-			this.onchange = (value) => current_rule.set.navelPiercing = value;
+		r += `</span> `;
+		if (slave.addict !== 0) {
+			r += `<span class="cyan">Addict.</span>`;
 		}
-	}
-
-	class NipplePiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Nipple piercings", pairs);
-			this.setValue(current_rule.set.nipplesPiercing);
-			this.onchange = (value) => current_rule.set.nipplesPiercing = value;
+		r += `<span class="lightsalmon">`;
+		if (slave.hormones > 1) {
+			r += `Heavy female hormones.`;
+		} else if (slave.hormones > 0) {
+			r += `Female hormones.`;
+		} else if (slave.hormones < -1) {
+			r += `Heavy male hormones.`;
+		} else if (slave.hormones < 0) {
+			r += `Male hormones.`;
+		}
+		r += `</span> `;
+		r += `<span class="mediumseagreen">`;
+		if ((slave.bellyImplant > -1)) {
+			r += `Belly Implant.`;
+		} else if (((slave.preg <= -2) || (slave.ovaries === 0)) && (slave.vagina !== -1)) {
+			r += `Barren.`;
+		} else if (slave.pubertyXX === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Not ovulating yet.`;
+		} else if (slave.ovaryAge >= 47 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Menopausal.`;
+		} else if (slave.pregWeek < 0) {
+			r += `Postpartum.`;
+		} else if (slave.preg === -1) {
+			r += `On contraceptives.`;
+		} else if (slave.preg === 0 && (slave.ovaries === 1 || slave.mpreg === 1)) {
+			r += `Fertile.`;
+		} else if (((slave.preg < 4) && (slave.preg > 0) && slave.pregKnown === 0) || slave.pregWeek === 1) {
+			r += `May be pregnant.`;
+		} else if ((slave.preg >= 36) && (slave.broodmother > 0)) {
+			r += `Permanently pregnant.`;
+		} else if (slave.pregKnown === 1) {
+			if (slave.pregType < 2 || slave.broodmother > 0) {
+				r += `${slave.pregWeek} weeks pregnant.`;
+			} else {
+				r += `${slave.pregWeek} weeks pregnant with `;
+				if (slave.pregType >= 40) {
+					r += `a tremendous brood of offspring.`;
+				} else if (slave.pregType >= 20) {
+					r += `a brood of offspring.`;
+				} else if (slave.pregType >= 10) {
+					r += `${slave.pregType} babies.`;
+				} else if (slave.pregType === 9) {
+					r += `nonuplets.`;
+				} else if (slave.pregType === 8) {
+					r += `octuplets.`;
+				} else if (slave.pregType === 7) {
+					r += `septuplets.`;
+				} else if (slave.pregType === 6) {
+					r += `sextuplets.`;
+				} else if (slave.pregType === 5) {
+					r += `quintuplets.`;
+				} else if (slave.pregType === 4) {
+					r += `quadruplets.`;
+				} else if (slave.pregType === 3) {
+					r += `triplets.`;
+				} else {
+					r += `twins.`;
+				}
+			}
+		}
+		r += `</span> `;
+		if (slave.induce === 1) {
+			r += `<span class="orange">Showing signs of early labor.</span>`;
+		}
+		if (slave.pubertyXY === 0 && slave.balls > 0) {
+			r += `Has not had first ejaculation.`;
+		}
+		if (slave.balls > 0 && slave.vasectomy === 1) {
+			r += `Vasectomy.`;
+		}
+		r += `<span class="springgreen">`;
+		if (slave.inflation === 3) {
+			r += `Filled with 8 liters of ${slave.inflationType}.`;
+		} else if (slave.inflation === 2) {
+			r += `Filled with 4 liters of ${slave.inflationType}.`;
+		} else if (slave.inflation === 1) {
+			r += `Filled with 2 liters of ${slave.inflationType}.`;
+		} else if (slave.bellyFluid > 0) {
+			r += `Stuffed with ${slave.bellyFluid}ccs of ${slave.inflationType}.`;
 		}
+		r += `</span> `;
 	}
-
-	class AreolaPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Studded", 1]
-			];
-			super("Areola studs", pairs);
-			this.setValue(current_rule.set.areolaePiercing);
-			this.onchange = (value) => current_rule.set.areolaePiercing = value;
+	
+	function long_race(slave) {
+		switch (slave.race) {
+			case "white":
+				r += `Caucasian.`;
+				break;
+			case "asian":
+				r += `Asian.`;
+				break;
+			case "indo-aryan":
+				r += `Indo-aryan.`;
+				break;
+			case "latina":
+				r += `Latina.`;
+				break;
+			case "middle eastern":
+				r += `Middle Eastern.`;
+				break;
+			case "black":
+				r += `Black.`;
+				break;
+			case "pacific islander":
+				r += `Pacific Islander.`;
+				break;
+			case "malay":
+				r += `Malay.`;
+				break;
+			case "amerindian":
+				r += `Amerindian.`;
+				break;
+			case "semitic":
+				r += `Semitic.`;
+				break;
+			case "southern european":
+				r += `Southern European.`;
+				break;
+			case "mixed race":
+				r += `Mixed race.`;
+				break;
+			default:
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.slice(1)}.`;
+				break;
 		}
+		r += " ";
 	}
-
-	class LipPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Lip piercings", pairs);
-			this.setValue(current_rule.set.lipsPiercing);
-			this.onchange = (value) => current_rule.set.lipsPiercing = value;
+	
+	function short_race(slave) {
+		switch (slave.race) {
+			case "white":
+				r += `C`;
+				break;
+			case "asian":
+				r += `A`;
+				break;
+			case "indo-aryan":
+				r += `I`;
+				break;
+			case "latina":
+				r += `L`;
+				break;
+			case "middle eastern":
+				r += `ME`;
+				break;
+			case "black":
+				r += `B`;
+				break;
+			case "pacific islander":
+				r += `PI`;
+				break;
+			case "malay":
+				r += `M`;
+				break;
+			case "amerindian":
+				r += `AI`;
+				break;
+			case "semitic":
+				r += `S`;
+				break;
+			case "southern european":
+				r += `SE`;
+				break;
+			case "mixed race":
+				r += `MR`;
+				break;
+			default:
+				r += `${slave.race.charAt(0).toUpperCase() + slave.race.charAt(1) + slave.race.charAt(2)}`;
+				break;
 		}
+		r += " ";
 	}
-
-	class TonguePiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Tongue piercing", pairs);
-			this.setValue(current_rule.set.tonguePiercing);
-			this.onchange = (value) => current_rule.set.tonguePiercing = value;
+	
+	function short_nationality(slave) {
+		r += `<span class="tan">`;
+		switch (slave.nationality) {
+			case "Afghan":
+				r += `Afg`;
+				break;
+			case "Albanian":
+				r += `Alb`;
+				break;
+			case "Algerian":
+				r += `Alg`;
+				break;
+			case "American":
+				r += `USA`;
+				break;
+			case "Andorran":
+				r += `And`;
+				break;
+			case "Angolan":
+				r += `Ang`;
+				break;
+			case "Antiguan":
+				r += `AB`;
+				break;
+			case "Argentinian":
+				r += `Arg`;
+				break;
+			case "Armenian":
+				r += `Arm`;
+				break;
+			case "Aruban":
+				r += `Aru`;
+				break;
+			case "Australian":
+				r += `Aus`;
+				break;
+			case "Austrian":
+				r += `Aut`;
+				break;
+			case "Azerbaijani":
+				r += `Aze`;
+				break;
+			case "Bahamian":
+				r += `Bah`;
+				break;
+			case "Bahraini":
+				r += `Bah`;
+				break;
+			case "Bangladeshi":
+				r += `Bgd`;
+				break;
+			case "Barbadian":
+				r += `Bar`;
+				break;
+			case "Belarusian":
+				r += `Ber`;
+				break;
+			case "Belgian":
+				r += `Bel`;
+				break;
+			case "Belizean":
+				r += `Blz`;
+				break;
+			case "Beninese":
+				r += `Ben`;
+				break;
+			case "Bermudian":
+				r += `Bmd`;
+				break;
+			case "Bhutanese":
+				r += `Bhu`;
+				break;
+			case "Bissau-Guinean":
+				r += `GB`;
+				break;
+			case "Bolivian":
+				r += `Bol`;
+				break;
+			case "Bosnian":
+				r += `Bos`;
+				break;
+			case "Brazilian":
+				r += `Bra`;
+				break;
+			case "British":
+				r += `UK`;
+				break;
+			case "Bruneian":
+				r += `Bru`;
+				break;
+			case "Bulgarian":
+				r += `Bul`;
+				break;
+			case "Burkinabé":
+				r += `BF`;
+				break;
+			case "Burmese":
+				r += `Bur`;
+				break;
+			case "Burundian":
+				r += `Bnd`;
+				break;
+			case "Cambodian":
+				r += `Kam`;
+				break;
+			case "Cameroonian":
+				r += `Cam`;
+				break;
+			case "Canadian":
+				r += `Can`;
+				break;
+			case "Cape Verdean":
+				r += `CV`;
+				break;
+			case "Catalan":
+				r += `Cat`;
+				break;
+			case "Central African":
+				r += `CAR`;
+				break;
+			case "Chadian":
+				r += `Cha`;
+				break;
+			case "Chilean":
+				r += `Chl`;
+				break;
+			case "Chinese":
+				r += `Chi`;
+				break;
+			case "Colombian":
+				r += `Col`;
+				break;
+			case "Comorian":
+				r += `Com`;
+				break;
+			case "Congolese":
+				r += `RC`;
+				break;
+			case "a Cook Islander":
+				r += `CI`;
+				break;
+			case "Costa Rican":
+				r += `CR`;
+				break;
+			case "Croatian":
+				r += `Cro`;
+				break;
+			case "Cuban":
+				r += `Cub`;
+				break;
+			case "Cypriot":
+				r += `Cyp`;
+				break;
+			case "Czech":
+				r += `Cze`;
+				break;
+			case "Danish":
+				r += `Den`;
+				break;
+			case "Djiboutian":
+				r += `Dji`;
+				break;
+			case "Dominican":
+				r += `DR`;
+				break;
+			case "Dominiquais":
+				r += `Dom`;
+				break;
+			case "Dutch":
+				r += `Nld`;
+				break;
+			case "East Timorese":
+				r += `ET`;
+				break;
+			case "Ecuadorian":
+				r += `Ecu`;
+				break;
+			case "Egyptian":
+				r += `Egy`;
+				break;
+			case "Emirati":
+				r += `UAE`;
+				break;
+			case "Equatoguinean":
+				r += `EG`;
+				break;
+			case "Eritrean":
+				r += `Eri`;
+				break;
+			case "Estonian":
+				r += `Est`;
+				break;
+			case "Ethiopian":
+				r += `Eth`;
+				break;
+			case "Fijian":
+				r += `Fij`;
+				break;
+			case "Filipina":
+				r += `Phl`;
+				break;
+			case "Finnish":
+				r += `Fin`;
+				break;
+			case "French":
+				r += `Fra`;
+				break;
+			case "French Guianan":
+				r += `FG`;
+				break;
+			case "French Polynesian":
+				r += `FP`;
+				break;
+			case "Gabonese":
+				r += `Gab`;
+				break;
+			case "Gambian":
+				r += `Gam`;
+				break;
+			case "Georgian":
+				r += `Geo`;
+				break;
+			case "German":
+				r += `Ger`;
+				break;
+			case "Ghanan":
+				r += `Gha`;
+				break;
+			case "Greek":
+				r += `Gre`;
+				break;
+			case "Greenlandic":
+				r += `Grn`;
+				break;
+			case "Grenadian":
+				r += `Gda`;
+				break;
+			case "Guamanian":
+				r += `Gua`;
+				break;
+			case "Guatemalan":
+				r += `Gtm`;
+				break;
+			case "Guinean":
+				r += `Gui`;
+				break;
+			case "Guyanese":
+				r += `Guy`;
+				break;
+			case "Haitian":
+				r += `Hai`;
+				break;
+			case "Honduran":
+				r += `Hon`;
+				break;
+			case "Hungarian":
+				r += `Hun`;
+				break;
+			case "I-Kiribati":
+				r += `Kir`;
+				break;
+			case "Icelandic":
+				r += `Ice`;
+				break;
+			case "Indian":
+				r += `Ind`;
+				break;
+			case "Indonesian":
+				r += `Idn`;
+				break;
+			case "Iranian":
+				r += `Irn`;
+				break;
+			case "Iraqi":
+				r += `Irq`;
+				break;
+			case "Irish":
+				r += `Irl`;
+				break;
+			case "Israeli":
+				r += `Isr`;
+				break;
+			case "Italian":
+				r += `Ita`;
+				break;
+			case "Ivorian":
+				r += `IC`;
+				break;
+			case "Jamaican":
+				r += `Jam`;
+				break;
+			case "Japanese":
+				r += `Jpn`;
+				break;
+			case "Jordanian":
+				r += `Jor`;
+				break;
+			case "Kazakh":
+				r += `Kaz`;
+				break;
+			case "Kenyan":
+				r += `Ken`;
+				break;
+			case "Kittitian":
+				r += `SKN`;
+				break;
+			case "Korean":
+				r += `Kor`;
+				break;
+			case "Kosovan":
+				r += `Kos`;
+				break;
+			case "Kurdish":
+				r += `Kur`;
+				break;
+			case "Kuwaiti":
+				r += `Kuw`;
+				break;
+			case "Kyrgyz":
+				r += `Kyr`;
+				break;
+			case "Laotian":
+				r += `Lao`;
+				break;
+			case "Latvian":
+				r += `Lat`;
+				break;
+			case "Lebanese":
+				r += `Lbn`;
+				break;
+			case "Liberian":
+				r += `Lib`;
+				break;
+			case "Libyan":
+				r += `Lby`;
+				break;
+			case "a Liechtensteiner":
+				r += `Lie`;
+				break;
+			case "Lithuanian":
+				r += `Lit`;
+				break;
+			case "Luxembourgian":
+				r += `Lux`;
+				break;
+			case "Macedonian":
+				r += `Mac`;
+				break;
+			case "Malagasy":
+				r += `Mad`;
+				break;
+			case "Malawian":
+				r += `Mwi`;
+				break;
+			case "Malaysian":
+				r += `Mys`;
+				break;
+			case "Maldivian":
+				r += `Mdv`;
+				break;
+			case "Malian":
+				r += `Mal`;
+				break;
+			case "Maltese":
+				r += `Mlt`;
+				break;
+			case "Marshallese":
+				r += `MI`;
+				break;
+			case "Mauritanian":
+				r += `Mta`;
+				break;
+			case "Mauritian":
+				r += `Mts`;
+				break;
+			case "Mexican":
+				r += `Mex`;
+				break;
+			case "Micronesian":
+				r += `FSM`;
+				break;
+			case "Moldovan":
+				r += `Mol`;
+				break;
+			case "Monégasque":
+				r += `Mnc`;
+				break;
+			case "Mongolian":
+				r += `Mon`;
+				break;
+			case "Montenegrin":
+				r += `Mng`;
+				break;
+			case "Moroccan":
+				r += `Mor`;
+				break;
+			case "Mosotho":
+				r += `Les`;
+				break;
+			case "Motswana":
+				r += `Bot`;
+				break;
+			case "Mozambican":
+				r += `Moz`;
+				break;
+			case "Namibian":
+				r += `Nam`;
+				break;
+			case "Nauruan":
+				r += `Nau`;
+				break;
+			case "Nepalese":
+				r += `Npl`;
+				break;
+			case "New Caledonian":
+				r += `NC`;
+				break;
+			case "a New Zealander":
+				r += `NZ`;
+				break;
+			case "Ni-Vanuatu":
+				r += `Van`;
+				break;
+			case "Nicaraguan":
+				r += `Nic`;
+				break;
+			case "Nigerian":
+				r += `Nga`;
+				break;
+			case "Nigerien":
+				r += `Ngr`;
+				break;
+			case "Niuean":
+				r += `Niu`;
+				break;
+			case "Norwegian":
+				r += `Nor`;
+				break;
+			case "Omani":
+				r += `Omn`;
+				break;
+			case "Pakistani":
+				r += `Pak`;
+				break;
+			case "Palauan":
+				r += `Plu`;
+				break;
+			case "Palestinian":
+				r += `Pal`;
+				break;
+			case "Panamanian":
+				r += `Pan`;
+				break;
+			case "Papua New Guinean":
+				r += `PNG`;
+				break;
+			case "Paraguayan":
+				r += `Par`;
+				break;
+			case "Peruvian":
+				r += `Per`;
+				break;
+			case "Polish":
+				r += `Pol`;
+				break;
+			case "Portuguese":
+				r += `Por`;
+				break;
+			case "Puerto Rican":
+				r += `PR`;
+				break;
+			case "Qatari":
+				r += `Qat`;
+				break;
+			case "Romanian":
+				r += `Rom`;
+				break;
+			case "Russian":
+				r += `Rus`;
+				break;
+			case "Rwandan":
+				r += `Rwa`;
+				break;
+			case "Sahrawi":
+				r += `Sah`;
+				break;
+			case "Saint Lucian":
+				r += `SL`;
+				break;
+			case "Salvadoran":
+				r += `ES`;
+				break;
+			case "Sammarinese":
+				r += `SM`;
+				break;
+			case "Samoan":
+				r += `Sam`;
+				break;
+			case "São Toméan":
+				r += `STP`;
+				break;
+			case "Saudi":
+				r += `Sau`;
+				break;
+			case "Scottish":
+				r += `Sco`;
+				break;
+			case "Senegalese":
+				r += `Sen`;
+				break;
+			case "Serbian":
+				r += `Srb`;
+				break;
+			case "Seychellois":
+				r += `Sey`;
+				break;
+			case "Sierra Leonean":
+				r += `Sie`;
+				break;
+			case "Singaporean":
+				r += `Sng`;
+				break;
+			case "Slovak":
+				r += `Svk`;
+				break;
+			case "Slovene":
+				r += `Svn`;
+				break;
+			case "a Solomon Islander":
+				r += `SI`;
+				break;
+			case "Somali":
+				r += `Som`;
+				break;
+			case "South African":
+				r += `RSA`;
+				break;
+			case "South Sudanese":
+				r += `SS`;
+				break;
+			case "Spanish":
+				r += `Spa`;
+				break;
+			case "Sri Lankan":
+				r += `Sri`;
+				break;
+			case "Sudanese":
+				r += `Sud`;
+				break;
+			case "Surinamese":
+				r += `Sur`;
+				break;
+			case "Swazi":
+				r += `Swa`;
+				break;
+			case "Swedish":
+				r += `Swe`;
+				break;
+			case "Swiss":
+				r += `Swi`;
+				break;
+			case "Syrian":
+				r += `Syr`;
+				break;
+			case "Taiwanese":
+				r += `Tai`;
+				break;
+			case "Tajik":
+				r += `Taj`;
+				break;
+			case "Tanzanian":
+				r += `Tza`;
+				break;
+			case "Thai":
+				r += `Tha`;
+				break;
+			case "Tibetan":
+				r += `Tib`;
+				break;
+			case "Togolese":
+				r += `Tog`;
+				break;
+			case "Tongan":
+				r += `Ton`;
+				break;
+			case "Trinidadian":
+				r += `TT`;
+				break;
+			case "Tunisian":
+				r += `Tun`;
+				break;
+			case "Turkish":
+				r += `Tur`;
+				break;
+			case "Turkmen":
+				r += `Tkm`;
+				break;
+			case "Tuvaluan":
+				r += `Tuv`;
+				break;
+			case "Ugandan":
+				r += `Uga`;
+				break;
+			case "Ukrainian":
+				r += `Ukr`;
+				break;
+			case "Uruguayan":
+				r += `Uru`;
+				break;
+			case "Uzbek":
+				r += `Uzb`;
+				break;
+			case "Vatican":
+				r += `VC`;
+				break;
+			case "Venezuelan":
+				r += `Ven`;
+				break;
+			case "Vietnamese":
+				r += `Vnm`;
+				break;
+			case "Vincentian":
+				r += `SVG`;
+				break;
+			case "Yemeni":
+				r += `Yem`;
+				break;
+			case "Zairian":
+				r += `DRC`;
+				break;
+			case "Zambian":
+				r += `Zam`;
+				break;
+			case "Zimbabwean":
+				if (slave.race === "white") {
+					r += `Rho`;
+				} else {
+					r += `Zwe`;
+				}
+				break;
+			case "Ancient Chinese Revivalist":
+				r += `Chi Rev`;
+				break;
+			case "Ancient Egyptian Revivalist":
+				r += `Egy Rev`;
+				break;
+			case "Arabian Revivalist":
+				r += `Ara Rev`;
+				break;
+			case "Aztec Revivalist":
+				r += `Azt Rev`;
+				break;
+			case "Edo Revivalist":
+				r += `Edo Rev`;
+				break;
+			case "Roman Revivalist":
+				r += `Rom Rev`;
+				break;
+			case "":
+			case "none":
+			case "slave":
+			case "Stateless":
+				r += `None`;
+				break;
+			default:
+				r += `${slave.nationality.charAt(0) + slave.nationality.charAt(1) + slave.nationality.charAt(2)}`;
+				break;
 		}
+		r += `</span> `;
 	}
-
-	class ClitPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2],
-				["Smart (expensive)", 3]
-			];
-			super("Clit piercing", pairs);
-			this.setValue(current_rule.set.clitPiercing);
-			this.onchange = (value) => current_rule.set.clitPiercing = value;
+	
+	function long_nationality(slave) {
+		r += `<span class="tan">`;
+		switch (slave.nationality) {
+			case "Zimbabwean":
+				if (slave.race === "white") {
+					r += `Rhodesian.`;
+				} else {
+					r += `${slave.nationality}.`;
+				}
+				break;
+			case "slave":
+			case "none":
+			case "":
+			case "Stateless":
+				r += `Stateless.`;
+				break;
+			default:
+				r += `${slave.nationality}.`;
+				break;
 		}
+		r += `</span> `;
 	}
-
-	class LabiaPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Pussylips piercings", pairs);
-			this.setValue(current_rule.set.vaginaPiercing);
-			this.onchange = (value) => current_rule.set.vaginaPiercing = value;
+	
+	function short_skin(slave) {
+		r += `<span class="pink">`;
+		switch (slave.skin) {
+			case "light brown":
+				r += `L. Br`;
+				break;
+			case "dark brown":
+				r += `D. Br`;
+				break;
+			case "light olive":
+				r += `L. Oli`;
+				break;
+			case "dark olive":
+				r += `D. Oli`;
+				break;
+			case "extremely pale":
+				r += `Ex. Pa`;
+				break;
+			case "pure white":
+				r += `P. Whi`;
+				break;
+			case "tanned":
+				r += `Tan`;
+				break;
+			case "dark":
+			case "fair":
+			case "pale":
+				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.slice(1)}`;
+				break;
+			default:
+				r += `${slave.skin.charAt(0).toUpperCase() + slave.skin.charAt(1) + slave.skin.charAt(2)}`;
+				break;
 		}
+		r += `</span> `;
 	}
-
-	class ShaftPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Shaft piercings", pairs);
-			this.setValue(current_rule.set.dickPiercing);
-			this.onchange = (value) => current_rule.set.dickPiercing = value;
+	
+	function short_genitals(slave) {
+		if (slave.dick > 0) {
+			r += `<span class="pink">`;
+			if (slave.balls === 0) {
+				r += `Geld`;
+			}
+			if ((slave.dick > 8) && (slave.balls > 8)) {
+				r += `Junk+++`;
+			} else if ((slave.dick > 5) && (slave.balls > 5)) {
+				r += `Junk++`;
+			} else if ((slave.dick > 4) && (slave.balls > 4)) {
+				r += `Junk+`;
+			} else if ((slave.dick > 3) && (slave.balls > 3)) {
+				r += `Junk`;
+			} else if (slave.dick > 8) {
+				r += `Dick+++`;
+			} else if (slave.dick > 5) {
+				r += `Dick++`;
+			} else if (slave.dick > 4) {
+				r += `Dick+`;
+			} else if (slave.dick > 3) {
+				r += `Dick`;
+			} else if (slave.balls > 10) {
+				r += `Balls+++`;
+			} else if (slave.balls > 5) {
+				r += `Balls++`;
+			} else if (slave.balls > 4) {
+				r += `Balls+`;
+			} else if (slave.balls > 3) {
+				r += `Balls`;
+			}
+			r += `</span> `;
 		}
-	}
-
-	class PerineumPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Light", 1],
-				["Heavy", 2]
-			];
-			super("Perianal piercings", pairs);
-			this.setValue(current_rule.set.anusPiercing);
-			this.onchange = (value) => current_rule.set.anusPiercing = value;
+		if (slave.vagina === 0) {
+			r += `<span class="lime">VV</span>`;
+		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
+			r += `<span class="pink">NBP</span>`;
 		}
-	}
-
-	class CorsetPiercingList extends List {
-		constructor() {
-			const pairs = [
-				["No default setting", "no default setting"],
-				["None", 0],
-				["Apply", 1]
-			];
-			super("Corset piercings", pairs);
-			this.setValue(current_rule.set.corsetPiercing);
-			this.onchange = (value) => current_rule.set.corsetPiercing = value;
+		if (slave.anus === 0) {
+			r += `	<span class="lime">AV</span>`;
 		}
-	}
-
-	class AutoBrandingList extends List {
-		constructor() {
-			const pairs = [
-				["Activate", 1],
-				["Off", 0],
-			];
-			super("Automatic branding", pairs);
-			this.setValue(current_rule.set.autoBrand);
-			this.onchange = (value) => current_rule.set.autoBrand = value;
+		r += `<span class="pink">`;
+		if ((slave.vagina > 3) && (slave.anus > 3)) {
+			r += ` V++A++`;
+		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
+			r += ` V+A+`;
+		} else if (slave.vagina > 3) {
+			r += ` V++`;
+		} else if (slave.vagina > 2) {
+			r += ` V+`;
+		} else if (slave.anus > 3) {
+			r += ` A++`;
+		} else if (slave.anus > 2) {
+			r += ` A+`;
 		}
+		r += `</span> `;
 	}
-
-	class BrandingLocationList extends List {
-		constructor() {
-			super("Your preferred location for brands is", []);
-
-			const ears = new ListSubSection(this, "Ears", [
-				["Left", "left ear"],
-				["Right", "right ear"],
-				["Both", "ears"]
-			]);
-			this.appendChild(ears);
-
-			const cheeks = new ListSubSection(this, "Cheeks", [
-				["Left", "left cheek"],
-				["Right", "right cheek"],
-				["Both", "cheeks"]
-			]);
-			this.appendChild(cheeks);
-
-			const shoulders = new ListSubSection(this, "Shoulders", [
-				["Left", "left shoulder"],
-				["Right", "right shoulder"],
-				["Both", "shoulders"]
-			]);
-			this.appendChild(shoulders);
-
-			const breasts = new ListSubSection(this, "Breasts", [
-				["Left", "right breast"],
-				["Right", "left breast"],
-				["Both", "breasts"]
-			]);
-			this.appendChild(breasts);
-
-			const upper_arms = new ListSubSection(this, "Arms, upper", [
-				["Left", "left upper arm"],
-				["Right", "right upper arm"],
-				["Both", "upper arms"]
-			]);
-			this.appendChild(upper_arms);
-
-			const lower_arms = new ListSubSection(this, "Arms, lower", [
-				["Left", "left lower arm"],
-				["Right", "right lower arm"],
-				["Both", "lower arms"]
-			]);
-			this.appendChild(lower_arms);
-
-			const wrist = new ListSubSection(this, "Wrist", [
-				["Left", "left wrist"],
-				["Right", "right wrist"],
-				["Both", "wrists"]
-			]);
-			this.appendChild(wrist);
-
-			const hand = new ListSubSection(this, "Hand", [
-				["Left", "left hand"],
-				["Right", "right hand"],
-				["Both", "hands"]
-			]);
-			this.appendChild(hand);
-
-			const buttocks = new ListSubSection(this, "Buttocks", [
-				["Left", "left buttock"],
-				["Right", "right buttock"],
-				["Both", "buttocks"]
-			]);
-			this.appendChild(buttocks);
-
-			const thigh = new ListSubSection(this, "Thigh", [
-				["Left", "left thigh"],
-				["Right", "right thigh"],
-				["Both", "thighs"]
-			]);
-			this.appendChild(thigh);
-
-			const calf = new ListSubSection(this, "Calf", [
-				["Left", "left calf"],
-				["Right", "right calf"],
-				["Both", "calves"]
-			]);
-			this.appendChild(calf);
-
-			const ankle = new ListSubSection(this, "Ankle", [
-				["Left", "left ankle"],
-				["Right", "right ankle"],
-				["Both", "ankles"]
-			]);
-			this.appendChild(ankle);
-
-			const feet = new ListSubSection(this, "Feet", [
-				["Left", "left foot"],
-				["Right", "right foot"],
-				["Both", "feet"]
-			]);
-			this.appendChild(feet);
-
-			const other = new ListSubSection(this, "Other", [
-				["Neck", "neck"],
-				["Chest", "chest"],
-				["Belly", "belly"],
-				["Pubic mound", "pubic mound"],
-				["Back", "back"],
-				["Lower Back", "lower back"]
-			]);
-			this.appendChild(other);
-
-			this.setValue(V.brandTarget);
-			this.onchange = (value) => V.brandTarget = value;
+	
+	function long_genitals(slave) {
+		if (slave.dick > 0) {
+			r += `<span class="pink">`;
+			if (slave.balls === 0) {
+				r += `Gelded.`;
+			}
+			if ((slave.dick > 8) && (slave.balls > 8)) {
+				r += `Hyper dick & balls.`;
+			} else if ((slave.dick > 5) && (slave.balls > 5)) {
+				r += `Monster dick & balls.`;
+			} else if ((slave.dick > 4) && (slave.balls > 4)) {
+				r += `Huge dick & balls.`;
+			} else if ((slave.dick > 3) && (slave.balls > 3)) {
+				r += `Big dick & balls.`;
+			} else if (slave.dick > 8) {
+				r += `Hyper dong.`;
+			} else if (slave.dick > 5) {
+				r += `Monster dong.`;
+			} else if (slave.dick > 4) {
+				r += `Huge dick.`;
+			} else if (slave.dick > 3) {
+				r += `Big dick.`;
+			} else if (slave.balls > 8) {
+				r += `Hyper balls.`;
+			} else if (slave.balls > 5) {
+				r += `Monstrous balls.`;
+			} else if (slave.balls > 4) {
+				r += `Huge balls.`;
+			} else if (slave.balls > 3) {
+				r += `Big balls.`;
+			}
+			r += `</span> `;
+		}
+		if (slave.vagina === 0) {
+			r += `<span class="lime">Virgin.</span> `;
+		} else if ((slave.pregKnown === 1) && canWalk(slave) && (slave.clothes === "no clothing" || slave.clothes === "body oil") && (slave.shoes === "none")) {
+			r += `<span class="pink">Naked, barefoot, and pregnant.</span> `;
+		}
+		if (slave.anus === 0) {
+			r += `<span class="lime">Anal virgin.</span> `;
+		}
+		r += `<span class="pink">`;
+		if ((slave.vagina > 3) && (slave.anus > 3)) {
+			r += `Blown out holes.`;
+		} else if ((slave.vagina > 2) && (slave.anus > 2)) {
+			r += `High mileage.`;
+		} else if (slave.vagina > 3) {
+			r += `Cavernous pussy.`;
+		} else if (slave.vagina > 2) {
+			r += `Loose pussy.`;
+		} else if (slave.anus > 3) {
+			r += `Permagaped anus.`;
+		} else if (slave.anus > 2) {
+			r += `Gaping anus.`;
 		}
+		r += `</span> `;
 	}
-
-	class BrandDesignList extends List {
-		constructor() {
-			const items = [
-				["Your  slaving emblem", "your personal symbol"],
-				["Your initials", "your initials"],
-				["SLUT"],
-				["WHORE"],
-				["SLAVE"],
-				["COW"],
-				["MEAT"],
-				["CUMDUMP"],
-				["LOVER"],
-				["Pussy symbol", "a pussy symbol"],
-				["Anus symbol", "an anus symbol"],
-				["Penis symbol", "a penis symbol"],
-				["Lady", "a lady silhouette"],
-				["Princess", "a princess silhouette"],
-				["Queen", "a queen silhouette"],
-				["Angel", "an angel silhouette"],
-				["Devil", "a devil silhouette"]
-			];
-			
-			if (V.arcologies[0].FSSupremacist !== "unset" || V.arcologies[0].FSSubjugationist !== "unset")
-				items.push(["(FS) Racial Slur", "a racial slur"]);
-			
-			if (V.arcologies[0].FSSupremacist !== "unset" && V.arcologies[0].FSSupremacistRace === "white")
-				items.push(["(FS) Swastika", "a swastika"]);
-			
-			if (V.arcologies[0].FSSubjugationist !== "unset" && V.arcologies[0].FSSubjugationistRace === "semitic")
-				items.push(["(FS) Star of David", "a Star of David"]);
-
-			if (V.arcologies[0].FSGenderRadicalist !== "unset" || V.arcologies.FSGenderFundamentalist !== "unset")
-				items.push(["(FS) Gender Symbol", "a gender symbol"]);
-
-			if (V.arcologies[0].FSPaternalist !== "unset")
-				items.push(["(FS) Personal Symbol", "her own personal symbol"]);
-
-			if (V.arcologies[0].FSDegradationist !== "unset")
-				items.push(["(FS) Chain Symbol", "a chain symbol"]);
-
-			if (V.arcologies[0].FSBodyPurist !== "unset")
-				items.push(["(FS) Vitruvian Man", "a Vitruvian man"]);
-
-			if (V.arcologies[0].FSTransformationFetishist !== "unset")
-				items.push(["(FS) Most Desired Implants", "a shortlist of desired implants"]);
-
-			if (V.arcologies[0].FSYouthPreferentialist !== "unset")
-				items.push(["(FS) Virginity Status", "her virginity status"]);
-
-			if (V.arcologies[0].FSMaturityPreferentialist !== "unset")
-				items.push(["(FS) Sexual Skill Info", "her sexual skills"]);
-
-			if (V.arcologies[0].FSSlimnessEnthusiast !== "unset")
-				items.push(["(FS) Breast Ceiling", "her absolute maximum breast size"]);
-
-			if (V.arcologies[0].FSAssetExpansionist !== "unset")
-				items.push(["(FS) Breast Floor", "her absolute minimum breast size"]);
-
-			if (V.arcologies[0].FSPastoralist !== "unset")
-				items.push(["(FS) Product Quality", "her body product quality"]);
-
-			if (V.arcologies[0].FSPhysicalIdelist !== "unset")
-				items.push(["(FS) Deadlift Info", "her deadlift record"]);
-
-			if (V.arcologies[0].FSHedonisticDecadence !== "unset")
-				items.push(["(FS) Weight Record", "her highest weigh-in"]);
-
-			if (V.arcologies[0].FSHedonisticDecadence && V.PC.refreshmentType == 2)
-				items.push(["(FS) Favorite Food", `a big helping of ${V.PC.refreshment}`]);
-
-			if (V.arcologies[0].FSRepopulationFocus !== "unset")
-				items.push(["(FS) Birth Count", "the number of children she has birthed"]);
-
-			if (V.arcologies[0].FSChattelReligionist !== "unset")
-				items.push(["(FS) Religious Symbol", "a religious symbol"]);
-
-			if (V.arcologies[0].FSRomanRevivalist !== "unset")
-				items.push(["(FS) Republican Crest", "a small crest of your Republic"]);
-
-			if (V.arcologies[0].FSAztecRevivalist !== "unset")
-				items.push(["(FS) Seven Serpents", "a small symbol of the Aztec gods"]);
-
-			if (V.arcologies[0].FSEgyptianRevivalist !== "unset")
-				items.push(["(FS) Dynastic Sigil", "a small sigil of your Dynasty"]);
-
-			if (V.arcologies[0].FSEdoRevivalist !== "unset")
-				items.push(["(FS) Mon", "a small image of the Shogunate's mon"]);
-
-			if (V.arcologies[0].FSArabianRevivalist !== "unset")
-				items.push(["(FS) Caliphate Symbol", "a small symbol of the Caliphate"]);
-
-			if (V.arcologies[0].FSChineseRevivalist !== "unset")
-				items.push(["(FS) Imperial Seal", "a small image of your Imperial Seal"]);
-			
-			super("Your brand design is", items, true);
+	
+	function short_age(slave) {
+		r += `<span class="pink">`;
+		if (V.showAgeDetail === 1) {
+			r += slave.actualAge;
+		} else if (slave.actualAge >= 40) {
+			r += `40s`;
+		} else if (slave.actualAge >= 35) {
+			r += `Lt30s`;
+		} else if (slave.actualAge >= 30) {
+			r += `Ea30s`;
+		} else if (slave.actualAge >= 25) {
+			r += `Lt20s`;
+		} else if (slave.actualAge >= 20) {
+			r += `Ea20s`;
+		} else if (slave.actualAge >= 18) {
+			r += slave.actualAge;
+		}
+		if (slave.actualAge !== slave.physicalAge) {
+			r += `${slave.physicalAge}y-bdy`;
+		}
+		if (slave.visualAge !== slave.physicalAge) {
+			r += `Lks${slave.visualAge}`;
 		}
+		r += " ";
 	}
-
-	class FaceTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["permanent makeup"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"]
-			];
-			super("Facial tattoos", items);
-			this.setValue(current_rule.set.lipsTat);
-			this.onchange = (value) => current_rule.set.lipsTat = value;
+	
+	function short_face(slave) {
+		if (slave.face < -95) {
+			r += `<span class="red">Face---${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face < -40) {
+			r += `<span class="red">Face--${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face < -10) {
+			r += `<span class="red">Face-${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face <= 10) {
+			r += `Face${V.summaryStats? `[${slave.face}]` : ''}`;
+		} else if (slave.face <= 40) {
+			r += `<span class="pink">Face+${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else if (slave.face <= 95) {
+			r += `<span class="pink">Face++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
+		} else {
+			r += `<span class="pink">Face+++${V.summaryStats? `[${slave.face}]` : ''}</span>`;
 		}
+		r += " ";
 	}
 	
-	class ShoulderTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["scenes"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"]
-			];
-			super("Shoulder tattoos", items);
-			this.setValue(current_rule.set.shouldersTat);
-			this.onchange = (value) => current_rule.set.shouldersTat = value;
+	function short_eyes(slave) {
+		if (slave.eyes === -2) {
+			r += `<span class="red">Blind</span>`;
+		} else if (((slave.eyes === -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
+			r += `<span class="yellow">Sight-</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_lips(slave) {
+		if (slave.lips > 95) {
+			r += `Facepussy`;
+		} else if (slave.lips > 70) {
+			r += `Lips+++${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 40) {
+			r += `Lips++${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 20) {
+			r += `Lips+${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else if (slave.lips > 10) {
+			r += `Lips${V.summaryStats? `[${slave.lips}]` : ''}`;
+		} else {
+			r += `<span class="red">Lips-</span>${V.summaryStats? `[${slave.lips}]` : ''}`;
+		}
+		r += " ";
+	}
+	
+	function short_teeth(slave) {
+		if (slave.teeth === "crooked") {
+			r += `<span class="yellow">Cr Teeth</span>`;
+		} else if (slave.teeth === "cosmetic braces") {
+			r += `Cos Braces`;
+		} else if (slave.teeth === "straightening braces") {
+			r += `Braces`;
+		} else if (slave.teeth === "removable") {
+			r += `Rem Teeth`;
+		} else if (slave.teeth === "pointy") {
+			r += `Fangs`;
+		}
+		r += " ";
+	}
+	
+	function short_muscles(slave) {
+		if (slave.muscles > 95) {
+			r += `Musc++${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > 50) {
+			r += `Musc+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > 5) {
+			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > -6) {
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+		} else if (slave.muscles > -31) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			} else {
+				r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			}
+		} else if (slave.muscles > -96) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak+</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			} else {
+				r += `Soft+${V.summaryStats? `[${slave.muscles}]`: ''}`;
+			}
+		} else {
+			r += `<span class="red">Weak++</span>${V.summaryStats? `[${slave.muscles}]`: ''}`;
 		}
+		r += " ";
 	}
-
-	class ChestTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["scenes"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"]
-			];
-			super("Chest tattoos", items);
-			this.setValue(current_rule.set.boobsTat);
-			this.onchange = (value) => current_rule.set.boobsTat = value;
+	
+	function short_limbs(slave) {
+		if (slave.amp !== 0) {
+			if (slave.amp === -1) {
+				r += `P-Limbs`;
+			} else if (slave.amp === -2) {
+				r += `Sex P-Limbs`;
+			} else if (slave.amp === -3) {
+				r += `Beauty P-Limbs`;
+			} else if (slave.amp === -4) {
+				r += `Combat P-Limbs`;
+			} else if (slave.amp === -5) {
+				r += `Cyber P-Limbs`;
+			} else {
+				r += `Amp`;
+			}
+			r += " ";
 		}
-	}
-
-	class ArmTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["scenes"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"]
-			];
-			super("Arm tattoos", items);
-			this.setValue(current_rule.set.armsTat);
-			this.onchange = (value) => current_rule.set.armsTat = value;
+		if (!canWalk(slave)) {
+			r += `Immob`;
 		}
+		if (slave.heels === 1) {
+			r += `Heel`;
+		}
+		r += `</span> `;
 	}
-
-	class UpperBackTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["scenes"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"],
-			];
-			super("Upper back tattoos", items);
-			this.setValue(current_rule.set.backTat);
-			this.onchange = (value) => current_rule.set.backTat = value;
+	
+	function short_voice(slave) {
+		if (slave.voice === 0) {
+			r += `<span class="pink">Mute</span>`;
+		} else {
+			if (slave.accent === 3) {
+				r += `<span class="red">Acc--</span>`;
+			} else if (slave.accent === 2) {
+				r += `Acc-`;
+			} else if (slave.accent === 4) {
+				r += `Acc--`;
+			} else if (slave.accent === 1) {
+				r += `<span class="pink">Acc</span>`;
+			}
 		}
+		r += " ";
 	}
-
-	class LowerBackTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["scenes"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"]
-			];
-			super("Lower back tattoos", items);
-			this.setValue(current_rule.set.stampTat);
-			this.onchange = (value) => current_rule.set.stampTat = value;
+	
+	function short_tits_ass(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
+			r += `T&A+++`;
+		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
+			r += `T&A++`;
+		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
+			r += `T&A+`;
+		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
+			r += `T&A`;
+		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
+			r += `Girlish`;
+		} else if (slave.boobs >= 12000) {
+			r += `Boobs+++`;
+		} else if (slave.boobs > 4000) {
+			r += `Boobs++`;
+		} else if (slave.boobs > 2000) {
+			r += `Boobs+`;
+		} else if (slave.boobs > 800) {
+			r += `Boobs`;
+		} else if (slave.butt > 9) {
+			r += `Ass+++`;
+		} else if (slave.butt > 8) {
+			r += `Ass++`;
+		} else if (slave.butt > 6) {
+			r += `Ass+`;
+		} else if (slave.butt > 4) {
+			r += `Ass`;
 		}
+		r += `</span> `;
 	}
-
-	class AbdomenTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["scenes"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"],
-			];
-			super("Abdomen tattoos", items);
-			this.setValue(current_rule.set.vaginaTat);
-			this.onchange = (value) => current_rule.set.vaginaTat = value;
+	
+	function short_hips(slave) {
+		r += `<span class="red">`;
+		if (slave.hips < -1) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disp+`;
+			}
+		} else if (slave.hips < 0) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disp+`;
+			}
+		} else if (slave.hips > 2) {
+			if (slave.butt <= 8) {
+				r += `Disp-`;
+			}
+		} else if (slave.hips > 1) {
+			if (slave.butt <= 3 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		} else if (slave.hips > 0) {
+			if (slave.butt > 8) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disp+`;
+				}
+			} else if (slave.butt <= 2 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
+		} else {
+			if (slave.butt > 6) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disp+`;
+				}
+			} else if (slave.butt <= 1 && (V.arcologies[0].FSSlimnessEnthusiast === "unset" || (slave.boobs >= 500))) {
+				r += `Disp-`;
+			}
 		}
+		r += `</span> `;
 	}
-
-	class DickTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"],
-			];
-			super("Dick tattoos", items);
-			this.setValue(current_rule.set.dickTat);
-			this.onchange = (value) => current_rule.set.dickTat = value;
+	
+	function short_waist(slave) {
+		if (slave.waist > 95) {
+			r += `<span class="red">Wst---${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist > 40) {
+			r += `<span class="red">Wst--${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
+		} else if (slave.waist > 10) {
+			r += `<span class="red">Wst-${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist >= -10) {
+			r += `Wst${V.summaryStats? `[${slave.waist}]`: ''}`;
+		} else if (slave.waist >= -40) {
+			r += `<span class="pink">Wst+${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else if (slave.waist >= -95) {
+			r += `<span class="pink">Wst++${V.summaryStats? `[${slave.waist}]` : ''}</span>`;
+		} else {
+			r += `<span class="pink">Wst+++${V.summaryStats? `[${slave.waist}]`: ''}</span>`;
 		}
+		r += " ";
 	}
-
-	class ButtockTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["scenes"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"],
-			];
-			super("Buttock tattoos:", items);
-			this.setValue(current_rule.set.buttTat);
-			this.onchange = (value) => current_rule.set.buttTat = value;
+	
+	function short_implants(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant <= 5) && (slave.bellyImplant === -1)) {
+			r += `Natr`;
+		} else {
+			r += `Impl`;
 		}
+		r += " ";
 	}
-
-	class AnalTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["bleached"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"],
-			];
-			super("Anal tattoo or bleaching", items);
-			this.setValue(current_rule.set.anusTat);
-			this.onchange = (value) => current_rule.set.anusTat = value;
+	
+	function short_lactation(slave) {
+		if (slave.lactation === 1) {
+			r += `Lact`;
+		} else if (slave.lactation === 2) {
+			r += `Lact++`;
 		}
+		r += " ";
 	}
-
-	class LegTattooList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["none", 0],
-				["tribal patterns"],
-				["flowers"],
-				["counting"],
-				["advertisements"],
-				["rude words"],
-				["degradation"],
-				["bovine patterns"],
-				["Asian art"],
-				["scenes"],
-				["sacrament"],
-				["sacrilege"],
-				["possessive"],
-				["paternalist"],
-			];
-			super("Leg tattoos", items);
-			this.setValue(current_rule.set.legsTat);
-			this.onchange = (value) => current_rule.set.legsTat = value;
+	
+	function short_mods(slave) {
+		modScore(slave);
+		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
+			return;
+		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
+			r += `Mods++`;
+		} else if (V.modScore > 7) {
+			r += `Mods+`;
+		} else {
+			r += `Mods`;
+		}
+		if (slave.brand !== 0) {
+			r += `Br`;
 		}
+		r += " ";
 	}
-
-	class VisionSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["fixed", 1],
-				["blurred", -1],
-			];
-			super("Vision correction", items);
-			this.setValue(current_rule.set.surgery_eyes);
-			this.onchange = (value) => current_rule.set.surgery_eyes = value;
+	
+	function long_age(slave) {
+		r += `<span class="pink">`;
+		if (V.showAgeDetail === 1) {
+			r += `Age ${slave.actualAge}.`;
+		} else if (slave.actualAge >= 40) {
+			r += `Forties.`;
+		} else if (slave.actualAge >= 35) {
+			r += `Late thirties.`;
+		} else if (slave.actualAge >= 30) {
+			r += `Early thirties.`;
+		} else if (slave.actualAge >= 25) {
+			r += `Late twenties.`;
+		} else if (slave.actualAge >= 20) {
+			r += `Early twenties.`;
+		} else if (slave.actualAge >= 19) {
+			r += `Nineteen.`;
+		} else if (slave.actualAge >= 18) {
+			r += `Eighteen.`;
+		} else {
+			r += `Underage.`;
+		}
+		r += " ";
+		/*
+		 **  No NCS, then do the standard, However because of the wrinkes of Incubators, as long as visual age is greater 
+		 **  than or equal to physical age, we do the old physical body/Looks for fresh out of the can NCS slaves.
+		 */
+		if (((slave.inducedNCS === 0) || (slave.visualAge >= slave.physicalAge))) {
+			if (slave.actualAge !== slave.physicalAge) {
+				r += `${slave.physicalAge} year old body. `;
+			}
+			if (slave.visualAge !== slave.physicalAge) {
+				r += `Looks ${slave.visualAge}. `;
+			}
+		} else {
+			/*
+			 **  Now the rub. The use of physical Age for the year old body above, basically conflicts with the changes
+			 **  that NCS introduces, so here to *distinguish* the changes, we use visual age with the 'year old body'
+			 **  and appears, for example: Slave release from incubator at age 10, Her summary would show, 'Age 0. 10 
+			 **  year old body.' But if she's given NCS a few weeks after release, while she's still before her first 
+			 **  birthday, it'll appear the same. But once her birthday fires, if we ran with the above code it would 
+			 **  say: 'Age 1. 11 year old body.' -- this conflicts with the way NCS works though, because she hasn't
+			 **  visually aged, so our change here makes it say 'Age 1. Appears to have a 10 year old body.'
+			 */
+			r += `Appears to have a ${slave.visualAge} year old body. `;
+		}
+		if (slave.inducedNCS === 1) {
+			r += `(<span class="orange">NCS</span>) `;
 		}
 	}
-
-	class LactationSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["implanted", 1],
-				["removed", 0],
-			];
-			super("Lactation drug implants", items);
-			this.setValue(current_rule.set.surgery_lactation);
-			this.onchange = (value) => current_rule.set.surgery_lactation = value;
+	
+	function long_face(slave) {
+		if (slave.face < -95) {
+			r += `<span class="red">Very ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face < -40) {
+			r += `<span class="red">Ugly${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face < -10) {
+			r += `<span class="red">Unattractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face <= 10) {
+			r += `Average${V.summaryStats? `[${slave.face}]`: ''}`;
+		} else if (slave.face <= 40) {
+			r += `<span class="pink">Attractive${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else if (slave.face <= 95) {
+			r += `<span class="pink">Beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
+		} else {
+			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 		}
+		r += ` ${slave.faceShape} face.`;
 	}
-
-	class SemenSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["implanted", 1],
-				["removed", 0],
-			];
-			super("Prostate production enhancing drug implants", items);
-			this.setValue(current_rule.set.surgery_prostate);
-			this.onchange = (value) => current_rule.set.surgery_prostate = value;
+	
+	function long_eyes(slave) {
+		if (slave.eyes <= -2) {
+			r += `<span class="red">Blind.</span>`;
+		} else if (((slave.eyes <= -1) && (slave.eyewear !== "corrective glasses") && (slave.eyewear !== "corrective contacts"))) {
+			r += `<span class="yellow">Nearsighted.</span>`;
 		}
+		r += " ";
 	}
-
-	class VasectomyList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["apply vasectomy", true],
-				["undo vasectomy", false],
-			];
-			super("Apply or undo vasectomy for slaves with testicles", items);
-			this.setValue(current_rule.set.surgery_vasectomy);
-			this.onchange = (value) => current_rule.set.surgery_vasectomy = value;
+	
+	function long_lips(slave) {
+		if (slave.lips > 95) {
+			r += `Facepussy${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 70) {
+			r += `Huge lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 40) {
+			r += `Big lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 20) {
+			r += `Pretty lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else if (slave.lips > 10) {
+			r += `Normal lips${V.summaryStats? `[${slave.lips}]`: ''}.`;
+		} else {
+			r += `<span class="red">Thin lips${V.summaryStats? `[${slave.lips}]`: ''}.</span>`;
 		}
+		r += " ";
 	}
-
-	class CosmeticSurgeryList extends List {
-		constructor() {
-			const items = [
-				["none", 0],
-				["subtle", 1],
-				["invasive", 2],
-			];
-			super("Cosmetic Surgery", items);
-			this.setValue(current_rule.set.surgery_cosmetic);
-			this.onchange = (value) => current_rule.set.surgery_cosmetic = value;
+	
+	function long_teeth(slave) {
+		if (slave.teeth === "crooked") {
+			r += `<span class="yellow">Crooked teeth.</span>`;
+		} else if (slave.teeth === "cosmetic braces") {
+			r += `Cosmetic braces.`;
+		} else if (slave.teeth === "straightening braces") {
+			r += `Braces.`;
+		} else if (slave.teeth === "removable") {
+			r += `Removable teeth.`;
+		} else if (slave.teeth === "pointy") {
+			r += `Sharp fangs.`;
 		}
+		r += " ";
 	}
-
-	class LipSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["removed", 0],
-				["plush", 20],
-				["big", 40],
-				["huge", 70],
-				["facepussy", 95],
-			];
-			super("Lip implants", items);
-			this.setValue(current_rule.set.surgery_lips);
-			this.onchange = (value) => current_rule.set.surgery_lips = value;
+	
+	function long_muscles(slave) {
+		if (slave.muscles > 95) {
+			r += `Hugely muscular${V.summaryStats? `[${slave.muscles}]` : ''}.`;
+		} else if (slave.muscles > 50) {
+			r += `Muscular${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > 5) {
+			r += `Fit${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > -6) {
+			r += `Soft${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+		} else if (slave.muscles > -31) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+			} else {
+				r += `Weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			}
+		} else if (slave.muscles > -96) {
+			if (V.arcologies[0].FSPhysicalIdealist === "unset") {
+				r += `<span class="red">Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
+			} else {
+				r += `Very weak${V.summaryStats? `[${slave.muscles}]`: ''}.`;
+			}
+		} else {
+			r += `<span class="red">Frail${V.summaryStats? `[${slave.muscles}]`: ''}.</span>`;
 		}
+		r += " ";
 	}
-
-	class ButtSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["removed", 0],
-				["slim", 2],
-				["stacked", 4],
-				["huge", 6],
-				["maximised", 9],
-			];
-			super("Buttock implants", items);
-			this.setValue(current_rule.set.surgery_butt);
-			this.onchange = (value) => current_rule.set.surgery_butt = value;
+	
+	function long_limbs(slave) {
+		if (slave.amp !== 0) {
+			if (slave.amp === -1) {
+				r += `Prosthetic limbs.`;
+			} else if (slave.amp === -2) {
+				r += `Sexy prosthetic limbs.`;
+			} else if (slave.amp === -3) {
+				r += `Beautiful prosthetic limbs.`;
+			} else if (slave.amp === -4) {
+				r += `Deadly prosthetic limbs.`;
+			} else if (slave.amp === -5) {
+				r += `Cyber prosthetic limbs.`;
+			} else {
+				r += `Amputee.`;
+			}
 		}
-	}
-
-	class BreastSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["removed", 0],
-				["slim", 400],
-				["stacked", 1000],
-				["huge", 2000],
-				["barely functional", 9000],
-				["maximised", 48000]
-			];
-			super("Breast implants", items);
-			this.setValue(current_rule.set.surgery_boobs);
-			this.onchange = (value) => current_rule.set.surgery_boobs = value;
+		r += " ";
+		if (!canWalk(slave)) {
+			r += `Immobile. `;
+		}
+		if (slave.heels === 1) {
+			r += `Heeled. `;
 		}
+		r += `</span> `;
 	}
-
-	class TighteningSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["tightening", 1],
-				["virginity restoration", 2],
-			];
-			super("Orifice Tightening", items);
-			this.setValue(current_rule.set.surgery_holes);
-			this.onchange = (value) => current_rule.set.surgery_holes = value;
+	
+	function long_voice(slave) {
+		if (slave.voice === 0) {
+			r += `<span class="pink">Mute.</span>`;
+		} else {
+			if (slave.accent === 3) {
+				r += `<span class="red">Bad accent.</span>`;
+			} else if (slave.accent === 4) {
+				r += `<span class="red">No language skills.</span>`;
+			} else if (slave.accent === 2) {
+				r += `Accent.`;
+			} else if (slave.accent === 1) {
+				r += `<span class="pink">Cute accent.</span>`;
+			}
 		}
+		r += " ";
 	}
-
-	class BodyHairSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["keep", 1],
-				["removal", 2],
-			];
-			super("Body Hair", items);
-			this.setValue(current_rule.set.surgery_bodyhair);
-			this.onchange = (value) => current_rule.set.surgery_bodyhair = value;
+	
+	function long_tits_ass(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobs >= 12000) && (slave.butt > 9)) {
+			r += `Hyper T&A.`;
+		} else if ((slave.boobs > 4000) && (slave.butt > 8)) {
+			r += `Enormous T&A.`;
+		} else if ((slave.boobs > 2000) && (slave.butt > 6)) {
+			r += `Huge T&A.`;
+		} else if ((slave.boobs > 800) && (slave.butt > 4)) {
+			r += `Big T&A.`;
+		} else if ((slave.boobs < 500) && (slave.butt < 3) && (slave.weight <= 10) && (slave.muscles <= 30)) {
+			r += `Girlish figure.`;
+		} else if (slave.boobs >= 12000) {
+			r += `Immobilizing tits.`;
+		} else if (slave.boobs > 4000) {
+			r += `Monstrous tits.`;
+		} else if (slave.boobs > 2000) {
+			r += `Huge tits.`;
+		} else if (slave.boobs > 800) {
+			r += `Big tits.`;
+		} else if (slave.butt > 9) {
+			r += `Hyper ass.`;
+		} else if (slave.butt > 8) {
+			r += `Titanic ass.`;
+		} else if (slave.butt > 6) {
+			r += `Huge ass.`;
+		} else if (slave.butt > 4) {
+			r += `Big ass.`;
 		}
+		r += `</span> `;
 	}
-
-	class HairSurgeryList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["keep", 1],
-				["removal", 2],
-			];
-			super("Hair", items);
-			this.setValue(current_rule.set.surgery_hair);
-			this.onchange = (value) => current_rule.set.surgery_hair = value;
+	
+	function long_hips(slave) {
+		r += `<span class="red">`;
+		if (slave.hips < -1) {
+			if (slave.butt > 2 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disproportionately big butt.`;
+			}
+		} else if (slave.hips < 0) {
+			if (slave.butt > 4 && (V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+				r += `Disproportionately big butt.`;
+			}
+		} else if (slave.hips > 2) {
+			if (slave.butt <= 8) {
+				r += `Disproportionately small butt.`;
+			}
+		} else if (slave.hips > 1) {
+			if (slave.butt <= 3 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		} else if (slave.hips > 0) {
+			if (slave.butt > 8) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disproportionately big butt.`;
+				}
+			} else if (slave.butt <= 2 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
+		} else {
+			if (slave.butt > 6) {
+				if ((V.arcologies[0].FSTransformationFetishist < 20 || V.arcologies[0].FSTransformationFetishist === "unset") && (V.arcologies[0].FSHedonisticDecadence < 20 || V.arcologies[0].FSHedonisticDecadence === "unset")) {
+					r += `Disproportionately big butt.`;
+				}
+			} else if (slave.butt <= 1 && ((V.arcologies[0].FSSlimnessEnthusiast === "unset") || (slave.boobs >= 500))) {
+				r += `Disproportionately small butt.`;
+			}
 		}
+		r += `</span> `;
 	}
-
-	class AutomaticAssignmentList extends List {
-		constructor() {
-			const items = [
-				["No default setting", "no default setting"],
-				["Rest", "rest"],
-				["Fucktoy", "please you"],
-				["Subordinate Slave", "be a subordinate slave"],
-				["House Servant", "be a servant"],
-				["Confined", "stay confined"],
-				["Whore", "whore"],
-				["Public Servant", "serve the public"],
-				["Classes", "take classes"],
-				["Milked", "get milked"],
-				["Gloryhole", "work a glory hole"]
-			];
-			
-			if (V.HGSuite > 0) items.push(["Head Girl Suite", "live with your Head Girl"]);
-			if (V.brothel > 0) items.push(["Brothel", "work in the brothel"]);
-			if (V.club > 0) items.push(["Club", "serve in the club"]);
-			if (V.arcade > 0) items.push(["Arcade", "be confined in the arcade"]);
-			if (V.dairy > 0) items.push(["Dairy", "work in the dairy"]);
-			if (V.servantsQuarters > 0) items.push(["Servant Quarters", "work as a servant"]);
-			if (V.masterSuite > 0) items.push(["Master Suite", "serve in the master suite"]);
-			if (V.schoolroom > 0) items.push(["Schoolroom", "learn in the schoolroom"]);
-			if (V.spa > 0) items.push(["Spa", "rest in the spa"]);
-			if (V.clinic > 0) items.push(["Clinic", "get treatment in the clinic"]);
-			if (V.cellblock > 0) items.push(["Cellblock", "be confined in the cellblock"]);
-			
-			super("Automatically set assignment", items);
-			this.setValue(current_rule.set.setAssignment);
-			this.onchange = (value) => current_rule.set.setAssignment = value;
+	
+	function long_waist(slave) {
+		if (slave.waist > 95) {
+			r += `<span class="red">Masculine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist > 40) {
+			r += `<span class="red">Ugly waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist > 10) {
+			r += `<span class="red">Unattractive waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist >= -10) {
+			r += `Average waist${V.summaryStats? `[${slave.waist}]`: ''}.`;
+		} else if (slave.waist >= -40) {
+			r += `<span class="pink">Feminine waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else if (slave.waist >= -95) {
+			r += `<span class="pink">Hourglass waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
+		} else {
+			r += `<span class="pink">Absurdly narrow waist${V.summaryStats? `[${slave.waist}]`: ''}.</span>`;
 		}
+		r += " ";
 	}
-
-	class BellyImplantList extends List {
-		constructor() {
-			const items = [
-				["no default setting"],
-				["install", "install"],
-				["remove", "remove"],
-			];
-			super("Belly implant", items);
-			this.setValue(current_rule.set.surgery_bellyImplant);
-			this.onchange = (value) => current_rule.set.surgery_bellyImplant = value;
+	
+	function long_implants(slave) {
+		r += `<span class="pink">`;
+		if ((slave.boobsImplant !== 0) || (slave.buttImplant !== 0) || (slave.lipsImplant !== 0) || (slave.bellyImplant !== -1)) {
+			r += `Implants.`;
+		} else if ((slave.faceImplant >= 30) || (slave.waist < -95)) {
+			r += `Surgery enhanced.`;
+		} else {
+			r += `All natural.`;
 		}
+		r += " ";
 	}
 	
-	return rulesAssistantOptions;
-})();
-
-/*:: rules autosurgery js [script]*/
-
-window.rulesAutosurgery = (function() {
-	"use strict";
-	let V;
-	let r;
-	return rulesAutoSurgery;
-
-	function rulesAutoSurgery(slave) {
-		V = State.variables;
-		r = "";
-		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 long_lactation(slave) {
+		if (slave.lactation === 1) {
+			r += `Lactating naturally.`;
+		} else if (slave.lactation === 2) {
+			r += `Heavy lactation.`;
+		}
+		r += " ";
 	}
 	
-	function autoSurgerySelector(slave, ruleset) {
-		const surgery = {};
-		ruleset.forEach(rule => {
-			Object.keys(rule)
-				.filter(key => key.startsWith("surgery_") && rule[key] !== "no default setting")
-				.forEach(key => {
-					surgery[key] = rule[key];
-				});
-		});
-		return surgery;
+	function long_mods(slave) {
+		modScore(slave);
+		if (slave.corsetPiercing === 0 && V.piercingScore < 3 && V.tatScore < 2) {
+			return;
+		} else if (V.modScore > 15 || (V.piercingScore > 8 && V.tatScore > 5)) {
+			r += `Extensive body mods.`;
+		} else if (V.modScore > 7) {
+			r += `Noticeable body mods.`;
+		} else {
+			r += `Light body mods.`;
+		}
+		r += " ";
 	}
-
-	function ProcessHGTastes(slave) {
-		let thisSurgery;
-		switch (V.HGTastes) {
-		case 1:
-			thisSurgery = {
-				surgery_lactation: 0,
-				surgery_cosmetic: 1,
-				surgery_faceShape: "cute",
-				surgery_lips: 10,
-				surgery_hips: 0,
-				surgery_hipsImplant: 0,
-				surgery_butt: 0,
-				surgery_accent: 0,
-				surgery_shoulders: 0,
-				surgery_shouldersImplant: 0,
-				surgery_boobs: 0,
-				surgery_holes: 0
-			};
-			break ;
-		case 2:
-			thisSurgery = {
-				surgery_lactation: 0,
-				surgery_cosmetic: 1,
-				surgery_faceShape: "cute",
-				surgery_lips: 60,
-				surgery_hips: 0,
-				surgery_hipsImplant: 0,
-				surgery_butt: 4,
-				surgery_accent: 0,
-				surgery_shoulders: 0,
-				surgery_shouldersImplant: 0,
-				surgery_boobs: 1200,
-				surgery_holes: 0
-			};
-			break;
-		case 3:
-			thisSurgery = {
-				surgery_lactation: 0,
-				surgery_cosmetic: 1,
-				surgery_faceShape: "cute",
-				surgery_lips: 95,
-				surgery_hips: 0,
-				surgery_hipsImplant: 0,
-				surgery_butt: 8,
-				surgery_accent: 0,
-				surgery_shoulders: 0,
-				surgery_shouldersImplant: 0,
-				surgery_boobs: 10000,
-				surgery_holes: 2
-			};
-			break;
-		case 4:
-			thisSurgery = {
-				surgery_lactation: 1,
-				surgery_cosmetic: 1,
-				surgery_faceShape: "cute",
-				surgery_lips: 10,
-				surgery_hips: 3,
-				surgery_hipsImplant: 0,
-				surgery_butt: 0,
-				surgery_accent: 0,
-				surgery_shoulders: 0,
-				surgery_shouldersImplant: 0,
-				surgery_boobs: 0,
-				surgery_holes: 0
-			};
-			break;
-		default:
-			thisSurgery = autoSurgerySelector(
-				slave,
-				V.defaultRules
-					.filter(x => ruleApplied(slave, x) && x.set.autoSurgery === 1)
-					.map(x => x.set));
-			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 (thisSurgery.surgery_butt > 6)
-						thisSurgery.surgery_butt = 6;
+	
+	function short_intelligence(slave) {
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.intelligenceImplant === 1) {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">I+++(e)</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">I++(e)</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">I+(e)</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">I-(e)</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">I--(e)</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">I---(e)</span>`;
+					break;
+				default:
+					r += `I(e)`;
+					break;
+			}
+		} else {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">I+++</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">I++</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">I+</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">I-</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">I--</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">I---</span>`;
+					break;
+				default:
+					r += `I`;
+					break;
+			}
+		}
+		r += " ";
+	} 
+	
+	function short_sex_skills(slave) {
+		let _SSkills = slave.analSkill + slave.oralSkill;
+		r += `<span class="aquamarine">`;
+		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
+			r += `MSS`;
+		} else {
+			_SSkills += slave.vaginalSkill;
+			_SSkills = Math.trunc(_SSkills);
+			if (_SSkills > 180) {
+				r += `S++`;
+			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
+				r += `Sh++`;
+			} else if (_SSkills > 90) {
+				r += `S+`;
+			} else if (_SSkills > 30) {
+				r += `S`;
+			} else {
+				r += `S-`;
+			}
+			if (V.summaryStats) {
+				r += `[${_SSkills}] `;
+			}
+			r += " ";
+			if (slave.whoreSkill >= 100) {
+				r += `W+++`;
+			} else if (slave.whoreSkill > 60) {
+				r += `W++`;
+			} else if (slave.whoreSkill > 30) {
+				r += `W+`;
+			} else if (slave.whoreSkill > 10) {
+				r += `W`;
+			}
+			if (slave.whoreSkill > 10) {
+				if (V.summaryStats) {
+					r += `[${slave.whoreSkill}] `;
+				}
+			}
+			r += " ";
+			if (slave.entertainSkill >= 100) {
+				r += `E+++`;
+			} else if (slave.entertainSkill > 60) {
+				r += `E++`;
+			} else if (slave.entertainSkill > 30) {
+				r += `E+`;
+			} else if (slave.entertainSkill > 10) {
+				r += `E`;
+			}
+			if (slave.entertainSkill > 10) {
+				if (V.summaryStats) {
+					r += `[${slave.entertainSkill}] `;
 				}
 			}
-			break;
 		}
-		return thisSurgery;
+		r += " ";
 	}
-
-	function CommitSurgery(slave, thisSurgery, surgeries) {
-		if ((slave.eyes == -1) && (thisSurgery.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_cosmetic > 0)) {
-			surgeries.push("a nicer face");
-			if (slave.faceShape == "masculine") slave.faceShape = "androgynous";
-			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-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.surgery_cosmetic > 0)) {
-			surgeries.push("an age lift");
-			slave.ageImplant = 1;
-			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-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.surgery_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.surgery_hair == 2)) {
-			surgeries.push("hair removal");
-			slave.hStyle = "bald";
-			slave.bald = 1;
-			V.cash -= V.surgeryCost;
-			
-		} else if ((slave.weight >= 10) && (thisSurgery.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_lips)) {
-			if (thisSurgery.surgery_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;
+	
+	function short_prestige(slave) {
+		if (slave.prestige > 0) {
+			r += `<span class="green">`;
+			if (slave.prestige > 2) {
+				r += `Prest++`;
+			} else if (slave.prestige === 2) {
+				r += `Prest+`;
+			} else if (slave.prestige === 1) {
+				r += `Prest`;
 			}
-			
-		} else if ((slave.faceImplant <= 45) && (slave.face <= 95) && (thisSurgery.surgery_cosmetic == 2)) {
-			surgeries.push("a nicer face");
-			if (slave.faceShape == "masculine") slave.faceShape = "androgynous";
-			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-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.surgery_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.surgery_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;
+			r += `</span> `;
+		}
+	}
+	
+	function long_intelligence(slave) {
+		if (slave.fetish === "mindbroken") {
+			return;
+		} else if (slave.intelligenceImplant === 1) {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">Brilliant, educated.</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">Very smart, educated.</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">Smart, educated.</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">Slow, educated.</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">Very slow, educated.</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">Moronic, educated.</span>`;
+					break;
+				default:
+					r += `Average intelligence, educated.`;
+					break;
+			}
+		} else {
+			switch (slave.intelligence) {
+				case 3:
+					r += `<span class="deepskyblue">Brilliant.</span>`;
+					break;
+				case 2:
+					r += `<span class="deepskyblue">Very smart.</span>`;
+					break;
+				case 1:
+					r += `<span class="deepskyblue">Smart.</span>`;
+					break;
+				case -1:
+					r += `<span class="orangered">Slow.</span>`;
+					break;
+				case -2:
+					r += `<span class="orangered">Very slow.</span>`;
+					break;
+				case -3:
+					r += `<span class="orangered">Moronic.</span>`;
+					break;
+				default:
+					r += `Average intelligence.`;
+					break;
 			}
-			slave.faceImplant += 25-5*Math.trunc(V.PC.medicine/50)-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.surgery_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.surgery_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.surgery_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.surgery_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.surgery_butt)) {
-			if (thisSurgery.surgery_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;
+		}
+		r += " ";
+	}
+	
+	function long_sex_skills(slave) {
+		let _SSkills = (slave.analSkill + slave.oralSkill);
+		r += `<span class="aquamarine">`;
+		if (((_SSkills + slave.whoreSkill + slave.entertainSkill) >= 400) && ((slave.vagina < 0) || (slave.vaginalSkill >= 100))) {
+			r += `Masterful Sex Slave. `;
+		} else {
+			_SSkills += slave.vaginalSkill;
+			if (_SSkills > 180) {
+				r += `Sex master${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if ((_SSkills > 120) && (slave.vagina < 0)) {
+				r += `Masterful shemale${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if (_SSkills > 90) {
+				r += `Sexual expert${V.summaryStats? `[${Math.trunc(_SSkills)}]`: ''}.`;
+			} else if (_SSkills > 30) {
+				r += `Sexually skilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
+			} else {
+				r += `Sexually unskilled${V.summaryStats? `[${Math.trunc(_SSkills)}]` : ''}.`;
 			}
-		} else if ((slave.boobs <= 600) && (slave.lactation < 2) && (slave.boobs+400 <= thisSurgery.surgery_boobs)) {
-			if (thisSurgery.surgery_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;
+			r += " ";
+			if (slave.whoreSkill >= 100) {
+				r += `Masterful whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 60) {
+				r += `Expert whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 30) {
+				r += `Skilled whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
+			} else if (slave.whoreSkill >= 10) {
+				r += `Basic whore${V.summaryStats? `[${slave.whoreSkill}]`: ''}.`;
 			}
-		} else if ((slave.boobs <= 600) && (slave.lactation < 2) && (slave.boobs+200 <= thisSurgery.surgery_boobs)) {
-			if (thisSurgery.surgery_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;
+			r += " ";
+			if (slave.entertainSkill >= 100) {
+				r += `Masterful entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 60) {
+				r += `Expert entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 30) {
+				r += `Skilled entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
+			} else if (slave.entertainSkill >= 10) {
+				r += `Basic entertainer${V.summaryStats? `[${slave.entertainSkill}]`: ''}.`;
 			}
-			
-		} else if ((slave.butt <= 5) && (slave.butt < thisSurgery.surgery_butt)) {
-			if (thisSurgery.surgery_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;
+			r += " ";
+		}
+	}
+	
+	function long_prestige(slave) {
+		if (slave.prestige > 0) {
+			r += `<span class="green">`;
+			if (slave.prestige > 2) {
+				r += `Extremely prestigious.`;
+			} else if (slave.prestige === 2) {
+				r += `Very prestigious.`;
+			} else if (slave.prestige === 1) {
+				r += `Prestigious.`;
 			}
-			
-		} else if ((slave.boobs <= 2000) && (slave.lactation < 2) && (slave.boobs+400 < thisSurgery.surgery_boobs)) {
-			if (thisSurgery.surgery_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;
+			r += `</span> `;
+		}
+	}
+	
+	function short_fetish(slave) {
+		r += `<span class="lightcoral">`;
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
+					r += `Sub++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sub+`;
+				} else {
+					r += `Sub`;
+				}
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
+					r += `Oral++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Oral+`;
+				} else {
+					r += `Oral`;
+				}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
+					r += `Humil++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Humil+`;
+				} else {
+					r += `Humil`;
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
+					r += `Anal++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Anal+`;
+				} else {
+					r += `Anal`;
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
+					r += `Boobs++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Boobs+`;
+				} else {
+					r += `Boobs`;
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
+					r += `Sadist++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sadist+`;
+				} else {
+					r += `Sadist`;
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
+					r += `Pain++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Pain+`;
+				} else {
+					r += `Pain`;
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
+					r += `Dom++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Dom+`;
+				} else {
+					r += `Dom`;
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
+					r += `Preg++`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Preg+`;
+				} else {
+					r += `Preg`;
+				}
+				break;
+			default:
+				r += `Vanilla`;
+				break;
+		}
+		if (V.summaryStats) {
+			r += `[${slave.fetishStrength}]`;
+		}
+		r += `</span> `;
+	}
+	
+	function short_attraction(slave) {
+		if (slave.attrXY <= 5) {
+			r += `<span class="red">XY---${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 15) {
+			r += `<span class="red">XY--${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 35) {
+			r += `<span class="red">XY-${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 65) {
+			r += `XY${V.summaryStats? `[${slave.attrXY}]`: ''}`;
+		} else if (slave.attrXY <= 85) {
+			r += `<span class="green">XY+${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">XY++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
+				r += `<span class="green">Omni!</span>`;
+			} else {
+				r += `<span class="green">Omni+Nympho!!</span>`;
 			}
-			
-		} else if ((slave.anus > 0) && (V.surgeryUpgrade == 1) && (thisSurgery.surgery_holes == 2)) {
-			surgeries.push("a virgin anus");
-			slave.anus = 0;
-			if (slave.analSkill > 10) {
-				slave.analSkill -= 10;
+		} else {
+			r += `<span class="green">XY+++${V.summaryStats? `[${slave.attrXY}]`: ''}</span>`;
+		}
+		r += " ";
+		if (slave.attrXX <= 5) {
+			r += `<span class="red">XX---${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 15) {
+			r += `<span class="red">XX--${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 35) {
+			r += `<span class="red">XX-${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 65) {
+			r += `XX${V.summaryStats? `[${slave.attrXX}]`: ''}`;
+		} else if (slave.attrXX <= 85) {
+			r += `<span class="green">XX+${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXX <= 95) {
+			r += `<span class="green">XX++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">XX+++${V.summaryStats? `[${slave.attrXX}]`: ''}</span>`;
+		}
+		r += " ";
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+				r += `<span class="green">Nympho!</span>`;
 			}
-			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.surgery_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.surgery_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.surgery_holes == 1)) {
-			surgeries.push("a tighter anus");
-			slave.anus = 1;
-			if (slave.analSkill > 10) {
-				slave.analSkill -= 10;
+		} else if (slave.energy > 80) {
+			r += `<span class="green">SD++${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 60) {
+			r += `<span class="green">SD+${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 40) {
+			r += `<span class="yellow">SD${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else if (slave.energy > 20) {
+			r += `<span class="red">SD-${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		} else {
+			r += `<span class="red">SD--${V.summaryStats? `[${slave.energy}]`: ''}</span>`;
+		}
+		r += " ";
+	}
+	
+	function short_smart_fetish(slave) {
+		if (slave.fetishKnown === 1) {
+			if (slave.clitSetting === "off") {
+				r += `SP-`;
+			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+				r += `SP:sub`;
+			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+				r += `SP:oral`;
+			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+				r += `SP:humil`;
+			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+				r += `SP:anal`;
+			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+				r += `SP:boobs`;
+			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+				r += `SP:sade`;
+			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+				r += `SP:pain`;
+			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+				r += `SP:dom`;
+			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+				r += `SP:preg`;
+			} else if (((slave.fetish !== "none") && (slave.clitSetting === "vanilla"))) {
+				r += `SP:vanilla`;
+			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+				r += `SP:all`;
+			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+				r += `SP:none`;
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+				r += `SP:monitoring`;
 			}
-			V.cash -= V.surgeryCost;
-			if (V.PC.medicine >= 100) slave.health -= 5;
-			else slave.health -= 10;
-			
-		} else if ((slave.vagina > 1) && (thisSurgery.surgery_holes == 1)) {
-			surgeries.push("a tighter pussy");
-			slave.vagina = 1;
-			if (slave.vaginalSkill > 10) {
-				slave.vaginalSkill -= 10;
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
+					r += `SP-`;
+					break;
+				case "submissive":
+					r += `SP:sub`;
+					break;
+				case "lesbian":
+					r += `SP:les`;
+					break;
+				case "oral":
+					r += `SP:oral`;
+					break;
+				case "humiliation":
+					r += `SP:humil`;
+					break;
+				case "anal":
+					r += `SP:anal`;
+					break;
+				case "boobs":
+					r += `SP:boobs`;
+					break;
+				case "sadist":
+					r += `SP:sade`;
+					break;
+				case "masochist":
+					r += `SP:pain`;
+					break;
+				case "dom":
+					r += `SP:dom`;
+					break;
+				case "pregnancy":
+					r += `SP:pregnancy`;
+					break;
+				case "vanilla":
+					r += `SP:vanilla`;
+					break;
+				case "all":
+					r += `SP:all`;
+					break;
+				case "none":
+					r += `SP:none`;
+					break;
 			}
-			V.cash -= V.surgeryCost;
-			if (V.PC.medicine >= 100) slave.health -= 5;
-			else slave.health -= 10;
-			
-		} else if ((slave.butt <= 8) && (slave.butt < thisSurgery.surgery_butt)) {
-			if (thisSurgery.surgery_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;
+		}
+		r += " ";
+	}
+	
+	function short_smart_attraction(slave) {
+		if (slave.attrKnown === 1) {
+			if (slave.clitSetting === "women") {
+				if (slave.attrXX < 95) {
+					r += `SP:women`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "men") {
+				if (slave.attrXY < 95) {
+					r += `SP:men`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "anti-women") {
+				if (slave.attrXX > 0) {
+					r += `SP:anti-women`;
+				} else {
+					r += `SP:monitoring`;
+				}
+			} else if (slave.clitSetting === "anti-men") {
+				if (slave.attrXY > 0) {
+					r += `SP:anti-men`;
+				} else {
+					r += `SP:monitoring`;
+				}
 			}
-			
-		} else if ((slave.boobs <= 9000) && (slave.lactation < 2) && (slave.boobs < thisSurgery.surgery_boobs)) {
-			if (thisSurgery.surgery_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.clitSetting === "women") {
+				r += `SP:women`;
+			} else if (slave.clitSetting === "men") {
+				r += `SP:men`;
+			} else if (slave.clitSetting === "anti-women") {
+				r += `SP:anti-women`;
+			} else if (slave.clitSetting === "anti-men") {
+				r += `SP:anti-men`;
 			}
-			
-		} else if ((slave.hips < 3) && (slave.hips < thisSurgery.surgery_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.surgery_bellyImplant == "install" && slave.womb.length == 0 && slave.broodmother == 0) {
-			slave.bellyImplant = 100;
-			slave.preg = -2;
-			V.cash -= V.surgeryCost;
-			if (slave.ovaries == 1 || slave.mpreg == 1) {
-				surgeries.push("belly implant");
-				V.surgeryType = "bellyIn";
-				if (V.PC.medicine >= 100) slave.health -= 5;
-				else slave.health -= 10;
+		}
+		r += " ";
+	}
+	
+	function short_behavior_flaw(slave) {
+		r += `<span class="red">`;
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				r += `Arrog`;
+				break;
+			case "bitchy":
+				r += `Bitchy`;
+				break;
+			case "odd":
+				r += `Odd`;
+				break;
+			case "hates men":
+				r += `Men-`;
+				break;
+			case "hates women":
+				r += `Women-`;
+				break;
+			case "gluttonous":
+				r += `Glut`;
+				break;
+			case "anorexic":
+				r += `Ano`;
+				break;
+			case "devout":
+				r += `Dev`;
+				break;
+			case "liberated":
+				r += `Lib`;
+				break;
+			default:
+				slave.behavioralFlaw = "none";
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function short_sex_flaw(slave) {
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				r += `<span class="red">Oral-</span>`;
+				break;
+			case "hates anal":
+				r += `<span class="red">Anal-</span>`;
+				break;
+			case "hates penetration":
+				r += `<span class="red">Fuck-</span>`;
+				break;
+			case "shamefast":
+				r += `<span class="red">Shame</span>`;
+				break;
+			case "idealistic":
+				r += `<span class="red">Ideal</span>`;
+				break;
+			case "repressed":
+				r += `<span class="red">Repre</span>`;
+				break;
+			case "apathetic":
+				r += `<span class="red">Apath</span>`;
+				break;
+			case "crude":
+				r += `<span class="red">Crude</span>`;
+				break;
+			case "judgemental":
+				r += `<span class="red">Judge</span>`;
+				break;
+			case "cum addict":
+				r += `<span class="yellow">CumAdd</span>`;
+				break;
+			case "anal addict":
+				r += `<span class="yellow">AnalAdd</span>`;
+				break;
+			case "attention whore":
+				r += `<span class="yellow">Attention</span>`;
+				break;
+			case "breast growth":
+				r += `<span class="yellow">BoobObsess</span>`;
+				break;
+			case "abusive":
+				r += `<span class="yellow">Abusive</span>`;
+				break;
+			case "malicious":
+				r += `<span class="yellow">Malice</span>`;
+				break;
+			case "self hating":
+				r += `<span class="yellow">SelfHatr</span>`;
+				break;
+			case "neglectful":
+				r += `<span class="yellow">SelfNeglect</span>`;
+				break;
+			case "breeder":
+				r += `<span class="yellow">BreedObsess</span>`;
+				break;
+			default:
+				slave.sexualFlaw = "none";
+				break;
+		}
+		r += " ";
+	}	
+	
+	function short_behavior_quirk(slave) {
+		r += `<span class="green">`;
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				r += `Confid`;
+				break;
+			case "cutting":
+				r += `Cutting`;
+				break;
+			case "funny":
+				r += `Funny`;
+				break;
+			case "fitness":
+				r += `Fit`;
+				break;
+			case "adores women":
+				r += `Women+`;
+				break;
+			case "adores men":
+				r += `Men+`;
+				break;
+			case "insecure":
+				r += `Insec`;
+				break;
+			case "sinful":
+				r += `Sinf`;
+				break;
+			case "advocate":
+				r += `Advoc`;
+				break;
+			default:
+				slave.behavioralQuirk = "none";
+				break;
+		}
+		r += " ";
+	}
+	
+	function short_sex_quirk(slave) {
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				r += `Gagfuck`;
+				break;
+			case "painal queen":
+				r += `Painal`;
+				break;
+			case "strugglefuck queen":
+				r += `Struggle`;
+				break;
+			case "tease":
+				r += `Tease`;
+				break;
+			case "romantic":
+				r += `Romantic`;
+				break;
+			case "perverted":
+				r += `Perverted`;
+				break;
+			case "caring":
+				r += `Caring`;
+				break;
+			case "unflinching":
+				r += `Unflinch`;
+				break;
+			case "size queen":
+				r += `SizeQ`;
+				break;
+			default:
+				slave.sexualQuirk = "none";
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function long_fetish(slave) {
+		r += `<span class="lightcoral">`;
+		switch (slave.fetish) {
+			case "submissive":
+				if (slave.fetishStrength > 95) {
+					r += `Complete submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Submissive${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Submissive tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "cumslut":
+				if (slave.fetishStrength > 95) {
+					r += `Cumslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Oral fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Prefers oral${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "humiliation":
+				if (slave.fetishStrength > 95) {
+					r += `Humiliation slut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Exhibitionist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Interest in humiliation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "buttslut":
+				if (slave.fetishStrength > 95) {
+					r += `Buttslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Anal fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Prefers anal${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "boobs":
+				if (slave.fetishStrength > 95) {
+					r += `Boobslut${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Breast fixation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Loves boobs${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "sadist":
+				if (slave.fetishStrength > 95) {
+					r += `Complete sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Sadist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Sadistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "masochist":
+				if (slave.fetishStrength > 95) {
+					r += `Complete masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Masochist${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Masochistic tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "dom":
+				if (slave.fetishStrength > 95) {
+					r += `Complete dom${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Dominant${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Dominant tendencies${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			case "pregnancy":
+				if (slave.fetishStrength > 95) {
+					r += `Pregnancy fetish${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else if (slave.fetishStrength > 60) {
+					r += `Pregnancy kink${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				} else {
+					r += `Interest in impregnation${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				}
+				break;
+			default:
+				r += `Sexually vanilla${V.summaryStats? `[${slave.fetishStrength}]` : ''}.`;
+				break;
+		}
+		r += `</span> `;
+	}
+	
+	function long_attraction(slave) {
+		if (slave.attrXY <= 5) {
+			r += `<span class="red">Disgusted by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXY <= 15) {
+			r += `<span class="red">Turned off by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXY <= 35) {
+			r += `<span class="red">Not attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXY <= 65) {
+			r += `Indifferent to men${V.summaryStats? `[${slave.attrXY}]` : ''}, `;
+		} else if (slave.attrXY <= 85) {
+			r += `<span class="green">Attracted to men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">Aroused by men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
+		} else if (slave.attrXX > 95) {
+			if (slave.energy <= 95) {
+				r += `<span class="green">Omnisexual!</span> `;
 			} else {
-				surgeries.push("male belly implant");
-				V.surgeryType = "bellyInMale";
-				if (V.PC.medicine >= 100) slave.health -= 25;
-				else slave.health -= 50;
+				r += `<span class="green">Omnisexual nymphomaniac!</span> `;
 			}
-			bellyIn(slave);
-			
-		} else if (slave.bellyImplant >= 0 && thisSurgery.surgery_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;
-		} else if (slave.balls > 0 && slave.vasectomy === 0 && thisSurgery.surgery_vasectomy === true) {
-			surgeries.push("vasectomy");
-			V.surgeryType = "vasectomy";
-			if (V.PC.medicine >= 100)
-				slave.health -= 5;
-			else
-				slave.health -= 10;
-			slave.vasectomy = 1;
-			V.cash -= V.surgeryCost;
-		} else if (slave.balls > 0 && slave.vasectomy === 1 && thisSurgery.surgery_vasectomy === false) {
-			surgery.push("undo vasectomy");
-			V.surgeryType = "vasectomy undo";
-			if (V.PC.medicine >= 100)
-				slave.health -=5;
-			else
-				slave.health -= 10;
-			slave.vasectomy = 0;
-			V.cash -= V.surgeryCost;
+		} else {
+			r += `<span class="green">Passionate about men${V.summaryStats? `[${slave.attrXY}]` : ''},</span> `;
 		}
-	}
-
-	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];
+		if (slave.attrXX <= 5) {
+			r += `<span class="red">disgusted by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXX <= 15) {
+			r += `<span class="red">turned off by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXX <= 35) {
+			r += `<span class="red">not attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXX <= 65) {
+			r += `indifferent to women${V.summaryStats? `[${slave.attrXX}]` : ''}. `;
+		} else if (slave.attrXX <= 85) {
+			r += `<span class="green">attracted to women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXX <= 95) {
+			r += `<span class="green">aroused by women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
+		} else if (slave.attrXY <= 95) {
+			r += `<span class="green">passionate about women${V.summaryStats? `[${slave.attrXX}]` : ''}.</span> `;
 		}
-		r += `${V.assistantName === "your personal assistant" ? "Your personal assistant" : V.assistantName}, ordered to apply surgery, gives ${slave.slaveName} <span class="lime">${surgeriesDisplay}.</span>`;
-	}
-
-	function bellyIn(slave) {
-		// less hacky version of calling surgery degradation silently
-		if (slave.devotion > 50)
-			slave.devotion += 4;
-		else if (slave.devotion >= -20)
-			slave.trust -= 5;
-		else {
-			slave.trust -= 5;
-			slave.devotion -= 5;
+		if (slave.energy > 95) {
+			if ((slave.attrXY <= 95) || (slave.attrXX <= 95)) {
+				r += `<span class="green">Nymphomaniac!</span>`;
+			}
+		} else if (slave.energy > 80) {
+			r += `<span class="green">Powerful sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 60) {
+			r += `<span class="green">Good sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 40) {
+			r += `<span class="yellow">Average sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else if (slave.energy > 20) {
+			r += `<span class="red">Poor sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
+		} else {
+			r += `<span class="red">No sex drive${V.summaryStats? `[${slave.energy}]` : ''}.</span>`;
 		}
+		r += " ";
 	}
-})();
-
-
-/*:: sexActJS [script]*/
-
-/*
- times is how many times to increment the anal counts.
- if left undefined it will assume it to be 1.
-*/
-window.AnalVCheck = function AnalVCheck(times) {
-	const V = State.variables;
-	const slave = V.activeSlave;
-	let r = ``;
-	if (canDoAnal(slave) && slave.anus === 0) {
-		r += `@@.lime;This breaks in ${slave.slaveName}'s virgin ass.@@ `;
-		if (slave.devotion > 50 || slave.career == "a slave since birth") {
-			r += `Since it's her first time, you gently ease yourself into her butthole and gradually increase the intensity of your thrusts. Before long she's moaning loudly as you continue working away at her butthole. `;
-			if (slave.tankBaby == 2) {
-				r += `She thinks of losing her anal virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity.@@ She expects her asshole to be seeing a lot more attention now.`;
+	
+	function long_smart_fetish(slave) {
+		if (slave.fetishKnown === 1) {
+			if (slave.clitSetting === "off") {
+				r += `SP off.`;
+			} else if (((slave.fetish !== "submissive") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "submissive")) {
+				r += `SP: submissive.`;
+			} else if (((slave.fetish !== "cumslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "oral")) {
+				r += `SP: oral.`;
+			} else if (((slave.fetish !== "humiliation") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "humiliation")) {
+				r += `SP: humiliation.`;
+			} else if (((slave.fetish !== "buttslut") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "anal")) {
+				r += `SP: anal.`;
+			} else if (((slave.fetish !== "boobs") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "boobs")) {
+				r += `SP: breasts.`;
+			} else if (((slave.fetish !== "sadist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "sadist")) {
+				r += `SP: sadism.`;
+			} else if (((slave.fetish !== "masochist") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "masochist")) {
+				r += `SP: masochism.`;
+			} else if (((slave.fetish !== "dom") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "dom")) {
+				r += `SP: dominance.`;
+			} else if (((slave.fetish !== "pregnancy") || (slave.fetishStrength <= 95)) && (slave.clitSetting === "pregnancy")) {
+				r += `SP: pregnancy.`;
+			} else if ((slave.fetish !== "none") && (slave.clitSetting === "vanilla")) {
+				r += `SP: vanilla.`;
+			} else if ((slave.energy <= 95) && (slave.clitSetting === "all")) {
+				r += `SP: all.`;
+			} else if ((slave.energy > 5) && (slave.clitSetting === "none")) {
+				r += `SP: none.`;
+			} else if (!["women", "men", "anti-women", "anti-men"].includes(slave.clitSetting)) {
+				r += `SP: monitoring.`;
 			}
-			else {
-				r += `She thinks of losing her anal virginity to you as a @@.hotpink;connection@@ with her beloved ${WrittenMaster(slave)}. `;
-				if ((slave.fetishKnown && slave.fetish == "buttslut") || (slave.energy > 95) || (slave.attrXX >= 85 && V.PC.dick === 0)) {
-					r += `She can't wait to be fucked in the ass by you again.`;
-				}
-				else {
-					r += `She looks forward to having her asshole fucked by you again.`;
-				}
+		} else {
+			switch (slave.clitSetting) {
+				case "off":
+					r += `SP off.`;
+					break;
+				case "submissive":
+					r += `SP: submissive.`;
+					break;
+				case "oral":
+					r += `SP: oral.`;
+					break;
+				case "humiliation":
+					r += `SP: humiliation.`;
+					break;
+				case "anal":
+					r += `SP: anal.`;
+					break;
+				case "boobs":
+					r += `SP: breasts.`;
+					break;
+				case "sadist":
+					r += `SP: sadism.`;
+					break;
+				case "masochist":
+					r += `SP: masochism.`;
+					break;
+				case "dom":
+					r += `SP: dominance.`;
+					break;
+				case "pregnancy":
+					r += `SP: pregnancy.`;
+					break;
+				case "vanilla":
+					r += `SP: vanilla.`;
+					break;
+				case "all":
+					r += `SP: all.`;
+					break;
+				case "none":
+					r += `SP: none.`;
+					break;
 			}
-			slave.devotion += 4;
-		}
-		else if (slave.devotion > 20) {
-			r += `Since it's her first time, you gently ease yourself into her butthole and gradually increase the intensity of your thrusts. Her moans become louder and louder as you continue working away at her butthole. She accepts the pain and humiliation of anal sex as part of her sexual servitude, though she hopes that her next time will be less painful.`;
-		}
-		else if (slave.devotion >= -20) {
-			r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.gold;fears@@ her next anal sex, remembering the pain of losing her anal virginity. She dreads having her ass violated by you again.`;
-			slave.trust -= 5;
-		}
-		else {
-			r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for violating her virgin butt. She dreads having her ass fucked by you again.`;
-			slave.trust -= 5;
-			slave.devotion -= 5;
-		}
-		slave.anus = 1;
-	}
-	if (canDoAnal(slave)) {
-		if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
-			r += knockMeUp(slave, 10, 1, -1, 1);
-		}
-		if (!times) {
-			V.analTotal += 1;
-			slave.analCount += 1;
-		}
-		else {
-			V.analTotal += times;
-			slave.analCount += times;
 		}
+		r += " ";
 	}
-	return r;
-}
-
-/*
- times is how many times to increment the vaginal counts.
- if left undefined it will assume it to be 1.
-*/
-window.VaginalVCheck = function VaginalVCheck(times) {
-	const V = State.variables;
-	const slave = V.activeSlave;
-	let r = ``;
-	if (canDoVaginal(slave) && slave.vagina === 0) {
-		r += `@@.lime;This breaks in ${slave.slaveName}'s virgin pussy.@@ `;
-		if (slave.devotion > 50 || slave.career == "a slave since birth") {
-			r += `You ease yourself into her pussy, since it's her first time, then gradually speed up your thrusts while she slowly learns to move her hips along with you. She moans loudly. `;
-			if (slave.tankBaby == 2) {
-				r += `She thinks of losing her virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity to be happy.@@ She expects her pussy to be seeing a lot more attention in the future.`;
+	
+	function long_smart_attraction(slave) {
+		if (slave.attrKnown === 1) {
+			if ((slave.attrXX < 100) && (slave.clitSetting === "women")) {
+				r += `SP: women.`;
+			} else if ((slave.attrXY < 100) && (slave.clitSetting === "men")) {
+				r += `SP: men.`;
 			}
-			else {
-				r += `@@.hotpink;She enjoys losing her cherry to you.@@ `;
-				if ((slave.fetishKnown && slave.fetish == "pregnancy") || (slave.energy > 95) || (slave.attrXY >= 85 && V.PC.dick === 1)) {
-					r += `She can't wait to have her pussy fucked by you again.`;
-				}
-				else {
-					r += `She looks forward to having her pussy fucked by you again.`;
-				}
+		} else {
+			if (slave.clitSetting === "women") {
+				r += `SP: women.`;
+			} else if (slave.clitSetting === "men") {
+				r += `SP: men.`;
 			}
-			slave.devotion += 4;
-		}
-		else if (slave.devotion > 20) {
-			r += `You ease yourself into her pussy, since it's her first time, then gradually speed up your thrusts while she slowly learns to move her hips along with you. She accepts losing her virginity to her owner and she looks forward to having her pussy fucked by you again.`;
 		}
-		else if (slave.devotion >= -20) {
-			r += `You force yourself into her pussy. She sobs and cries with disgust while you continue thrusting into her fuck hole. She @@.mediumorchid;hates@@ losing her virginity this way and @@.gold;fears@@ the next time you'll conquer her. She dreads getting violated by you again.`;
-			slave.trust -= 5;
-			slave.devotion -= 5;
-		}
-		else {
-			r += `You force yourself into her pussy. She sobs and cries with disgust while you continue working her fuck hole. She tries to struggle, but you only pound harder. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for robbing her of her virginity. She dreads getting fucked by you again.`;
-			slave.trust -= 10;
-			slave.devotion -= 15;
+		r += " ";
+	}
+	
+	function long_behavior_flaw(slave) {
+		r += `<span class="red">`;
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				r += `Arrogant.`;
+				break;
+			case "bitchy":
+				r += `Bitchy.`;
+				break;
+			case "odd":
+				r += `Odd.`;
+				break;
+			case "hates men":
+				r += `Hates men.`;
+				break;
+			case "hates women":
+				r += `Hates women.`;
+				break;
+			case "gluttonous":
+				r += `Stress eater.`;
+				break;
+			case "anorexic":
+				r += `Anorexic.`;
+				break;
+			case "devout":
+				r += `Devoutly religious.`;
+				break;
+			case "liberated":
+				r += `Mentally liberated.`;
+				break;
+			default:
+				slave.behavioralFlaw = "none";
+				break;
 		}
-		slave.vagina = 1;
-
-		if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
-			r += knockMeUp(slave, 10, 0, -1, 1);
+		r += `</span> `;
+	}
+	
+	function long_sex_flaw(slave) {
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				r += `<span class="red">Hates oral.</span>`;
+				break;
+			case "hates anal":
+				r += `<span class="red">Hates anal.</span>`;
+				break;
+			case "hates penetration":
+				r += `<span class="red">Hates penetration.</span>`;
+				break;
+			case "shamefast":
+				r += `<span class="red">Shamefast.</span>`;
+				break;
+			case "idealistic":
+				r += `<span class="red">Sexually idealistic.</span>`;
+				break;
+			case "repressed":
+				r += `<span class="red">Sexually repressed.</span>`;
+				break;
+			case "apathetic":
+				r += `<span class="red">Sexually apathetic.</span>`;
+				break;
+			case "crude":
+				r += `<span class="red">Sexually crude.</span>`;
+				break;
+			case "judgemental":
+				r += `<span class="red">Sexually judgemental.</span>`;
+				break;
+			case "cum addict":
+				r += `<span class="yellow">Cum addict.</span>`;
+				break;
+			case "anal addict":
+				r += `<span class="yellow">Anal addict.</span>`;
+				break;
+			case "attention whore":
+				r += `<span class="yellow">Attention whore.</span>`;
+				break;
+			case "breast growth":
+				r += `<span class="yellow">Breast obsession.</span>`;
+				break;
+			case "abusive":
+				r += `<span class="yellow">Sexually abusive.</span>`;
+				break;
+			case "malicious":
+				r += `<span class="yellow">Sexually malicious.</span>`;
+				break;
+			case "self hating":
+				r += `<span class="yellow">Self hatred.</span>`;
+				break;
+			case "neglectful":
+				r += `<span class="yellow">Self neglectful.</span>`;
+				break;
+			case "breeder":
+				r += `<span class="yellow">Breeding obsession.</span>`;
+				break;
+			default:
+				slave.sexualFlaw = "none";
+				break;
 		}
-		if (!times) {
-			V.vaginalTotal += 1;
-			slave.vaginalCount += 1;
+		r += " ";
+	}
+	
+	function long_behavior_quirk(slave) {
+		r += `<span class="green">`;
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				r += `Confident.`;
+				break;
+			case "cutting":
+				r += `Cutting.`;
+				break;
+			case "funny":
+				r += `Funny.`;
+				break;
+			case "fitness":
+				r += `Fitness.`;
+				break;
+			case "adores women":
+				r += `Adores women.`;
+				break;
+			case "adores men":
+				r += `Adores men.`;
+				break;
+			case "insecure":
+				r += `Insecure.`;
+				break;
+			case "sinful":
+				r += `Sinful.`;
+				break;
+			case "advocate":
+				r += `Advocate.`;
+				break;
+			default:
+				slave.behavioralQuirk = "none";
+				break;
 		}
-		else {
-			V.vaginalTotal += times;
-			slave.vaginalCount += times;
+		r += " ";
+	}
+	
+	function long_sex_quirk(slave) {
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				r += `Gagfuck queen.`;
+				break;
+			case "painal queen":
+				r += `Painal queen.`;
+				break;
+			case "strugglefuck queen":
+				r += `Strugglefuck queen.`;
+				break;
+			case "tease":
+				r += `Tease.`;
+				break;
+			case "romantic":
+				r += `Romantic.`;
+				break;
+			case "perverted":
+				r += `Perverted.`;
+				break;
+			case "caring":
+				r += `Caring.`;
+				break;
+			case "unflinching":
+				r += `Unflinching.`;
+				break;
+			case "size queen":
+				r += `Size queen.`;
+				break;
+			default:
+				slave.sexualQuirk = "none";
+				break;
 		}
+		r += `</span> `;
 	}
-	return r;
-}
-
-/*
- analTimes is how many times to increment the anal counts, if there is no vagina available.
- bothTimes is how many times to increment both holes counts (usually it is half of analTimes).
- In both cases if left undefined it will assume it to be 1.
-*/
-window.BothVCheck = function BothVCheck(analTimes, bothTimes) {
-	const V = State.variables;
-	const slave = V.activeSlave;
-	let r = ``;
-	if (canDoVaginal(slave)) {
-		if (slave.vagina === 0) {
-			if (canDoAnal(slave) && slave.anus == 0) {
-				r += `@@.lime;This breaks in ${slave.slaveName}'s virgin holes.@@ `;
-				if (slave.devotion > 50 || slave.career == "a slave since birth") {
-					r += `As it's her first time, you ease yourself into her pussy before gradually working your way into her ass and alternate between the two holes while she moans. `;
-					if (slave.tankBaby == 2) {
-						r += `She believes you taking her virgin holes @@.hotpink;will keep her from suffering.@@ She expects you to require her holes as tribute again soon.`;
-					}
-					else {
-						r += `@@.hotpink;She's so devoted she enjoys being fucked in both holes for the first time.@@ She looks forward to having her holes fucked by you again.`;
-					}
-					slave.devotion += 4;
-				}
-				else if (slave.devotion <= 20) {
-					r += `You force yourself into her pussy before working your way into her ass. She sobs and cries with disgust while you alternate between the two holes. She @@.mediumorchid;hates@@ losing her virginity and anal virginity in one @@.gold;brutal@@ incident. She dreads having her holes violated by you again.`;
-					slave.trust -= 5;
-					slave.devotion -= 5;
-				}
-				else {
-					r += `As it's her first time, you ease yourself into her pussy before gradually working your way into her ass and alternate between the two holes while she moans. She accepts being fucked in both holes for the first time. She looks forward to having her holes fucked by you again.`;
-				}
-				slave.anus = 1;
-			}
-			else {
-				r += `@@.lime;This breaks in ${slave.slaveName}'s virgin pussy.@@ `;
-				if (slave.devotion > 50 || slave.career == "a slave since birth") {
-					r += `As it's her first time, you ease yourself into her pussy and gradually speed up your thrusts while she slowly learns to move her hips along with you. She moans loudly. `;
-					if (slave.tankBaby == 2) {
-						r += `She thinks of losing her virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity to be happy.@@ She expects her pussy to be seeing a lot more attention in the future.`;
-					}
-					else {
-						r += `@@.hotpink;She enjoys losing her cherry to you.@@ She looks forward to having her pussy fucked by you again.`;
+	
+	function short_extended_family(slave) {
+		let handled = 0;
+		if (slave.mother > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.mother;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
 					}
-					slave.devotion += 4;
-				}
-				else if (slave.devotion <= 20) {
-					r += `You force yourself into her pussy. She sobs and cries with disgust while you continue working her fuck hole. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for taking her virginity. She dreads having her pussy violated by you again.`;
-					slave.trust -= 5;
-					slave.devotion -= 5;
-				}
-				else {
-					r += `As it's her first time, you ease yourself into her pussy before gradually increasing the intensity of your thrusts while she softly moans. She accepts losing her virginity to her owner and she looks forward to having her pussy fucked by you again.`;
+					handled = 1;
 				}
 			}
-			slave.vagina = 1;
+			r += " ";
+		} else if (slave.mother === -1) {
+			r += `Your daughter`;
+			if (slave.relationship === -3) {
+				r += ` & wife`;
+				handled = 1;
+			} else if (slave.relationship === -2) {
+				r += ` & lover`;
+				handled = 1;
+			}
+			r += " ";
 		}
-		else if (canDoAnal(slave) && slave.anus == 0) {
-			r += `@@.lime;This breaks in ${slave.slaveName}'s virgin ass.@@ `;
-			if (slave.devotion > 50 || slave.career == "a slave since birth") {
-				r += `As it's her first time, you ease yourself into her butthole and gradually speed up your thrusts while she slowly learns to move her hips along with you. She moans loudly. `;
-				if (slave.tankBaby == 2) {
-					r += `She thinks of losing her anal virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity.@@ She expects her asshole to be seeing a lot more attention now.`;
-				}
-				else {
-					r += `She thinks of losing her anal virginity to you as a @@.hotpink;connection@@ with her beloved ${WrittenMaster(slave)}. She looks forward to having her asshole fucked by you again.`
+		if (slave.father > 0 && slave.father !== slave.mother) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.father;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
 				}
-				slave.devotion += 4;
-			}
-			else if (slave.devotion > 20){
-				r += `As it's her first time, you ease yourself into her butthole and gradually increase the intensity of your thrusts. She accepts the pain and humiliation of anal sex as part of her sexual servitude, though she hopes that her next time will be less painful.`;
-			}
-			else if (slave.devotion >= -20) {
-				r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.gold;fears@@ her next anal sex, remembering the pain of losing her anal virginity. She dreads having her ass violated by you again.`;
-				slave.trust -= 5;
 			}
-			else {
-				r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for violating her virgin butt. She dreads having her ass fucked by you again.`;
-				slave.trust -= 5;
-				slave.devotion -= 5;
+			r += " ";
+		} else if (slave.father === -1 && slave.mother !== -1) {
+			r += `Your daughter`;
+			if (slave.relationship === -3) {
+				r += ` & wife`;
+				handled = 1;
+			} else if (slave.relationship === -2) {
+				r += ` & lover`;
+				handled = 1;
 			}
-			slave.anus = 1;
 		}
-		if (canDoAnal(slave)) {
-			if (!bothTimes) {
-				V.vaginalTotal += 1;
-				V.analTotal += 1;
-				slave.vaginalCount += 1;
-				slave.analCount += 1;
+		if (slave.daughters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.mother === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s mother`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
+				}
 			}
-			else {
-				V.vaginalTotal += bothTimes;
-				V.analTotal += bothTimes;
-				slave.vaginalCount += bothTimes;
-				slave.analCount += bothTimes;
+			r += " ";
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.father === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s father`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID && handled !== 1) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
+				}
 			}
-			if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
-				r += knockMeUp(slave, 10, 2, -1, 1);
+			r += " ";
+		} else if (slave.daughters > 1) {
+			r += `multiple daughters `;
+		}
+		if (slave.sisters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return areSisters(s, slave) > 0;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s sister`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` & friend`;
+					} else if (slave.relationship === 2) {
+						r += ` & BFF`;
+					} else if (slave.relationship === 3) {
+						r += ` & FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` & lover`;
+					} else {
+						r += ` & wife`;
+					}
+					handled = 1;
+				}
 			}
+			r += " ";
+		} else if (slave.sisters > 1) {
+			r += `multiple sisters `;
 		}
-		else {
-			if (!bothTimes) {
-				V.vaginalTotal += 1;
-				slave.vaginalCount += 1;
+		if (slave.relationship > 0 && handled !== 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+				switch (slave.relationship) {
+					case 1:
+						r += ` friend`;
+						break;
+					case 2:
+						r += ` BFF`;
+						break;
+					case 3:
+						r += ` FWB`;
+						break;
+					case 4:
+						r += ` lover`;
+						break;
+					case 5:
+						r += ` wife`;
+						break;
+				}
 			}
-			else {
-				V.vaginalTotal += bothTimes;
-				slave.vaginalCount += bothTimes;
+		} else if (slave.relationship === -3) {
+			r += `Your wife`;
+		} else if (slave.relationship === -2) {
+			r += `E Bonded`;
+		} else if (slave.relationship === -1) {
+			r += `E Slut`;
+		}
+		r += " ";
+	}
+	
+	function short_legacy_family(slave) {
+		if (slave.relation !== 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s ${slave.relation}`;
 			}
-			if (V.PC.dick == 1 && canGetPregnant(slave) && slave.eggType == "human") {
-				r += knockMeUp(slave, 10, 0, -1, 1);
+		}
+		if (slave.relationship > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				switch (slave.relationship) {
+					case 1:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` friend`;
+						break;
+					case 2:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` BFF`;
+						break;
+					case 3:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` FWB`;
+						break;
+					case 4:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` lover`;
+						break;
+					case 5:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` &`;
+						}
+						r += ` wife`;
+						break;
+				}
 			}
+		} else if (slave.relationship === -3) {
+			r += `Your wife`;
+		} else if (slave.relationship === -2) {
+			r += `E Bonded`;
+		} else if (slave.relationship === -1) {
+			r += `E Slut`;
 		}
 	}
-	else if (canDoAnal(slave)) {
-		if (slave.anus == 0) {
-			r += `@@.lime;This breaks in ${slave.slaveName}'s virgin ass.@@ `;
-			if (slave.devotion > 50 || slave.career == "a slave since birth") {
-				r += `As it's her first time, you ease yourself into her butthole and gradually speed up your thrusts while she slowly learns to move her hips along with you. She moans loudly. `;
-				if (slave.tankBaby == 2) {
-					r += `She thinks of losing her anal virginity to her ${WrittenMaster(slave)} a @@.hotpink;necessity.@@ She expects her asshole to be seeing a lot more attention now.`;
-				}
-				else {
-					r += `She thinks of losing her anal virginity to you as a @@.hotpink;connection@@ with her beloved ${WrittenMaster(slave)}. She looks forward to having her asshole fucked by you again.`;
+	
+	function short_rival(slave) {
+		if (slave.rivalry !== 0) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.rivalryTarget;
+			});
+			if (_ssj !== -1) {
+				r += `<span class="lightsalmon">`;
+				if (slave.rivalry <= 1) {
+					r += `Disl ${SlaveFullName(V.slaves[_ssj])}`;
+				} else if (slave.rivalry <= 2) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s rival`;
+				} else {
+					r += `Hates ${SlaveFullName(V.slaves[_ssj])}`;
 				}
-				slave.devotion += 4;
-			}
-			else if (slave.devotion > 20) {
-				r += `As it's her first time, you ease yourself into her butthole and gradually increase the intensity of your thrusts. She accepts the pain and humiliation of anal sex as part of her sexual servitude, though she hopes that her next time will be less painful.`;
-			}
-			else if (slave.devotion >= -20) {
-				r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.gold;fears@@ her next anal sex, remembering the pain of losing her anal virginity. She dreads having her ass violated by you again.`;
-				slave.trust -= 5;
-			}
-			else {
-				r += `You force yourself into her butthole. She sobs and cries with disgust while you continue thrusting into her ass. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for violating her virgin butt. She dreads having her ass fucked by you again.`
-				slave.trust -= 5;
-				slave.devotion -= 5;
+				r += `</span> `;
 			}
-			slave.anus = 1;
-		}
-		if (!analTimes) {
-			V.analTotal += 1;
-			slave.analCount += 1;
-		}
-		else {
-			V.analTotal += analTimes;
-			slave.analCount += analTimes;
-		}
-		if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
-			r += knockMeUp(slave, 10, 1, -1, 1);
 		}
 	}
-	return r;
-}
-
-/*
- times is how many times to increment either the Vaginal or the Anal counts, if there is no Vagina available.
- If left undefined it will assume it to be 1.
-*/
-window.SimpleVCheck = function SimpleVCheck(times) {
-	let r = ``;
-	if (canDoVaginal(State.variables.activeSlave)) {
-		r += VaginalVCheck(times);
-	}
-	else if (canDoAnal(State.variables.activeSlave)) {
-		r += AnalVCheck(times);
-	}
-	return r;
-}
-
-/*
- Before using this function, set $partner to the index of the partner in the $slaves array
- analTimes is how many times to increment the Anal counts, if there is no Vagina available.
- bothTimes is how many times to increment both holes counts (usually it is half of Anal).
- In both cases if left undefined it will assume it to be 1.
- This also checks for a valid Vagina/Accessory, though most code I've seen does this already, you
- never know when someone might use the routine and forget to do such.
-*/
-window.PartnerVCheck = function PartnerVCheck(analTimes, bothTimes) {
-	const V = State.variables;
-	const partner = V.slaves[V.partner];
-	let r = ``;
 	
-	if (V.partner < 0 || V.partner >= V.slaves.length) {
-		r += `@@.red;PartnerVCheck called with invalid partner '$partner' from passage ${passage()}.@@`;
-	}	
-	else if (canDoVaginal(partner)) {
-		if (partner.vagina === 0) {
-			if (canDoAnal(partner) && partner.anus === 0) {
-				r += `Since it's ${partner.slaveName}'s first time, you take your time and gently ease yourself into her pussy before gradually working your way into her butthole, alternating between her holes. @@.lime;This breaks in ${partner.slaveName}'s virgin holes.@@ `;
-				partner.vagina = 1;
-				partner.anus = 1;
+	function long_extended_family(slave) {
+		let handled = 0;
+		if (slave.mother > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.mother;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
 			}
-			else {
-				r += `Since it's ${partner.slaveName}'s first time, you take your time and gently ease yourself into her pussy before gradually increasing the intensity of your thrusts. @@.lime;This breaks in partner.slaveName's virgin pussy.@@ `;
-				partner.vagina = 1;
+		} else if (slave.mother === -1) {
+			r += `Your `;
+			if (slave.relationship === -3) {
+				r += `<span class="lightgreen">daughter and wife.</span> `;
+				handled = 1;
+			} else if (slave.relationship === -2) {
+				r += `<span class="lightgreen">daughter and lover.</span> `;
+				handled = 1;
+			} else {
+				r += `<span class="lightgreen">daughter.</span> `;
 			}
 		}
-		else if (canDoAnal(partner) && partner.anus == 0) {
-			r += `Since it's ${partner.slaveName}'s first time, you take your time and gently ease yourself into her butthole before gradually increasing the intensity of your thrusts into her ass. @@.lime;This breaks in ${partner.slaveName}'s virgin ass.@@ `;
-			partner.anus = 1;
+		if (slave.father > 0 && slave.father !== slave.mother) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.father;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">daughter`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
+			}
+		} else if (slave.father === -1 && slave.father !== slave.mother) {
+			r += `Your `;
+			if (slave.relationship === -3) {
+				r += `<span class="lightgreen">daughter and wife.</span> `;
+				handled = 1;
+			} else if (slave.relationship === -2) {
+				r += `<span class="lightgreen">daughter and lover.</span> `;
+				handled = 1;
+			} else {
+				r += `<span class="lightgreen">daughter.</span> `;
+			}
 		}
-		
-		if (canDoAnal(partner)) {
-			if (!bothTimes) {
-				V.vaginalTotal += 1;
-				V.analTotal += 1;
-				partner.vaginalCount += 1;
-				partner.analCount += 1;
+		if (slave.daughters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.mother === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">mother`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
 			}
-			else {
-				V.vaginalTotal += bothTimes;
-				V.analTotal += bothTimes;
-				partner.vaginalCount += bothTimes;
-				partner.analCount += bothTimes;
+			_ssj = V.slaves.findIndex(function(s) {
+				return s.father === slave.ID;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">father`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
 			}
-			if (V.PC.dick === 1 && canGetPregnant(partner) && partner.eggType == "human") {
-				r += knockMeUp(partner, 10, 2, -1);
+		} else if (slave.daughters > 1) {
+			if (slave.daughters > 10) {
+				r += `<span class="lightgreen">Has tons of daughters.</span> `;
+			} else if (slave.daughters > 5) {
+				r += `<span class="lightgreen">Has many daughters.</span> `;
+			} else {
+				r += `<span class="lightgreen">Has several daughters.</span> `;
 			}
 		}
-		else {
-			if (!bothTimes) {
-				V.vaginalTotal += 1;
-				partner.vaginalCount += 1;
-			}
-			else {
-				V.vaginalTotal += bothTimes;
-				partner.vaginalCount += bothTimes;
+		if (slave.sisters === 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return areSisters(s, slave) > 0;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightgreen">sister`;
+				if (slave.relationshipTarget === V.slaves[_ssj].ID) {
+					if (slave.relationship === 1) {
+						r += ` and friend`;
+					} else if (slave.relationship === 2) {
+						r += ` and best friend`;
+					} else if (slave.relationship === 3) {
+						r += ` and FWB`;
+					} else if (slave.relationship === 4) {
+						r += ` and lover`;
+					} else {
+						r += ` and wife`;
+					}
+					handled = 1;
+				}
+				r += `.</span> `;
 			}
-			if (V.PC.dick === 1 && canGetPregnant(partner) && partner.eggType == "human") {
-				r += knockMeUp(partner, 10, 0, -1);
+		} else if (slave.sisters > 1) {
+			if (slave.sisters > 10) {
+				r += `<span class="lightgreen">One of many sisters.</span> `;
+			} else if (slave.sisters > 5) {
+				r += `<span class="lightgreen">Has many sisters.</span> `;
+			} else {
+				r += `<span class="lightgreen">Has several sisters.</span> `;
 			}
 		}
-	}
-	else if (canDoAnal(partner)) {
-		if (partner.anus === 0) {
-			r += `Since it's ${partner.slaveName}'s first time, you take your time and gently ease yourself into her butthole before gradually increasing the intensity of your thrusts into her ass. @@.lime;This breaks in ${partner.slaveName}'s virgin ass.@@ `;
-			partner.anus = 1;
-		}
-		if (!analTimes) {
-			V.analTotal += analTimes;
-			partner.analCount += analTimes;
-		}
-		else {
-			V.analTotal += 1;
-			partner.analCount += 1;
-		}
-		if (V.PC.dick === 1 && canGetPregnant(partner) && partner.eggType == "human") {
-			r += knockMeUp(partner, 10, 1, -1);
+		if (slave.relationship > 0 && handled !== 1) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+				switch (slave.relationship) {
+					case 1:
+						r += `<span class="lightgreen">friend.</span> `;
+						break;
+					case 2:
+						r += `<span class="lightgreen">best friend.</span> `;
+						break;
+					case 3:
+						r += `<span class="lightgreen">FWB.</span> `;
+						break;
+					case 4:
+						r += `<span class="lightgreen">lover.</span> `;
+						break;
+					case 5:
+						r += `<span class="lightgreen">slave wife.</span> `;
+						break;
+				}
+			}
+		} else if (slave.relationship === -3) {
+			r += `<span class="lightgreen">Your wife.</span> `;
+		} else if (slave.relationship === -2) {
+			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
+		} else if (slave.relationship === -1) {
+			r += `<span class="lightgreen">Emotional slut.</span> `;
 		}
 	}
-	return r;
-}
-
-/*
- count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
- If count is left undefined it will assume it to be 1.
- Intended to be a simple "I want to fuck x and not have to code a bunch of logic for it".
-*/
-window.SimpleSexAct = function SimpleSexAct(slave, count) {
-	const V = State.variables;
-	let fuckTarget = 0;
-	let fuckCount = 1;
-	let r = ``;
-	if (count) {
-		fuckCount = count;
-	}
-	for (var i = 0; i < fuckCount; i++) {
-		fuckTarget = jsRandom(1,100);
-		if (slave.nipples == "fuckable" && V.PC.dick === 1 && fuckTarget > 80) {
-			V.mammaryTotal += 1;
-			slave.mammaryCount += 1;
+	
+	function long_legacy_family(slave) {
+		if (slave.relation !== 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationTarget;
+			});
+			if (_ssj !== -1) {
+				r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+				if (slave.relationshipTarget !== slave.relationTarget) {
+					r += `<span class="lightgreen">${slave.relation}</span>. `;
+				} else {
+					r += `<span class="lightgreen">${slave.relation}</span> `;
+				}
+				if (slave.relationship <= 0) {
+					r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+				}
+			}
 		}
-		else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) {
-			V.vaginalTotal += 1;
-			slave.vaginalCount += 1;
-			if (V.PC.dick === 1 && canGetPregnant(slave) && slave.eggType == "human") {
-				r += knockMeUp(slave, 10, 0, -1, 1);
+		if (slave.relationship > 0) {
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.relationshipTarget;
+			});
+			if (_ssj !== -1) {
+				switch (slave.relationship) {
+					case 1:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">friend.</span> `;
+						break;
+					case 2:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">best friend.</span> `;
+						break;
+					case 3:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">FWB.</span> `;
+						break;
+					case 4:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s `;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">lover.</span> `;
+						break;
+					case 5:
+						if (slave.relationshipTarget !== slave.relationTarget) {
+							r += `${SlaveFullName(V.slaves[_ssj])}'s`;
+						} else {
+							r += ` and `;
+						}
+						r += `<span class="lightgreen">slave wife.</span> `;
+						break;
+				}
 			}
+		} else if (slave.relationship === -3) {
+			r += `<span class="lightgreen">Your wife.</span> `;
+		} else if (slave.relationship === -2) {
+			r += `<span class="lightgreen">Emotionally bonded to you.</span> `;
+		} else if (slave.relationship === -1) {
+			r += `<span class="lightgreen">Emotional slut.</span> `;
 		}
-		else if (canDoAnal(slave) && slave.anus > 0 && fuckTarget > 10) {
-			V.analTotal += 1;
-			slave.analCount += 1;
-			if (V.PC.dick == 1 && canGetPregnant(slave) && slave.eggType == "human") {
-				r += knockMeUp(slave, 10, 1, -1, 1);
+	}
+	
+	function long_rival(slave) {
+		if (slave.rivalry !== 0) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+			let _ssj = V.slaves.findIndex(function(s) {
+				return s.ID === slave.rivalryTarget;
+			});
+			if (_ssj !== -1) {
+				if (slave.rivalry <= 1) {
+					r += `<span class="lightsalmon">Dislikes</span> ${SlaveFullName(V.slaves[_ssj])}.`;
+				} else if (slave.rivalry <= 2) {
+					r += `${SlaveFullName(V.slaves[_ssj])}'s <span class="lightsalmon">rival.</span>`;
+				} else {
+					r += `<span class="lightsalmon">Hates</span> ${SlaveFullName(V.slaves[_ssj])}.`;
+				}
 			}
+			r += " ";
 		}
-		else {
-			V.oralTotal += 1;
-			slave.oralCount += 1;
+	}
+	
+	function long_clothes(slave) {
+		switch (slave.clothes) {
+			case "attractive lingerie":
+				r += `Lingerie.`;
+				break;
+			case "a succubus outfit":
+				r += `Succubus outfit.`;
+				break;
+			case "a string bikini":
+				r += `String bikini.`;
+				break;
+			case "a scalemail bikini":
+				r += `Scalemail bikini.`;
+				break;
+			case "a monokini":
+				r += `Monokini.`;
+				break;
+			case "an apron":
+				r += `Apron.`;
+				break;
+			case "a cybersuit":
+				r += `Cybersuit.`;
+				break;
+			case "cutoffs and a t-shirt":
+				r += `Cutoffs, t-shirt.`;
+				break;
+			case "a slutty outfit":
+				r += `Slutty outfit.`;
+				break;
+			case "uncomfortable straps":
+				r += `Leather straps.`;
+				break;
+			case "a fallen nuns habit":
+				r += `Slutty habit.`;
+				break;
+			case "a chattel habit":
+				r += `Chattel habit.`;
+				break;
+			case "a penitent nuns habit":
+				r += `Cilice.`;
+				break;
+			case "slutty jewelry":
+				r += `Bangles.`;
+				break;
+			case "attractive lingerie for a pregnant woman":
+				r += `Preggo lingerie.`;
+				break;
+			case "a maternity dress":
+				r += `Maternity dress.`;
+				break;
+			case "stretch pants and a crop-top":
+				r += `Stretch pants, crop-top.`;
+				break;
+			case "harem gauze":
+				r += `Harem outfit.`;
+				break;
+			case "a slave gown":
+				r += `Slave gown.`;
+				break;
+			case "a halter top dress":
+				r += `Halter top dress.`;
+				break;
+			case "a mini dress":
+				r += `Mini dress.`;
+				break;
+			case "a ball gown":
+				r += `Ball gown.`;
+				break;
+			case "slutty business attire":
+				r += `Slutty suit.`;
+				break;
+			case "nice business attire":
+				r += `Nice suit.`;
+				break;
+			case "a comfortable bodysuit":
+				r += `Bodysuit.`;
+				break;
+			case "a military uniform":
+				r += `Military uniform.`;
+				break;
+			case "a schutzstaffel uniform":
+				r += `Schutzstaffel uniform.`;
+				break;
+			case "a slutty schutzstaffel uniform":
+				r += `Slutty Schutzstaffel uniform.`;
+				break;
+			case "a red army uniform":
+				r += `Red Army uniform.`;
+				break;
+			case "a long qipao":
+				r += `Long Qipao.`;
+				break;
+			case "battlearmor":
+				r += `Battlearmor.`;
+				break;
+			case "a mounty outfit":
+				r += `Mounty outfit.`;
+				break;
+			case "a dirndl":
+				r += `Dirndl.`;
+				break;
+			case "lederhosen":
+				r += `Lederhosen.`;
+				break;
+			case "a biyelgee costume":
+				r += `Biyelgee costume.`;
+				break;
+			case "a leotard":
+				r += `Leotard.`;
+				break;
+			case "a bunny outfit":
+				r += `Bunny outfit.`;
+				break;
+			case "a slutty maid outfit":
+				r += `Slutty maid.`;
+				break;
+			case "a nice maid outfit":
+				r += `Nice maid.`;
+				break;
+			case "a slutty nurse outfit":
+				r += `Slutty nurse.`;
+				break;
+			case "a nice nurse outfit":
+				r += `Nice nurse.`;
+				break;
+			case "a schoolgirl outfit":
+				r += `Schoolgirl outfit.`;
+				break;
+			case "a kimono":
+				r += `Kimono.`;
+				break;
+			case "a hijab and abaya":
+				r += `Hijab and abaya.`;
+				break;
+			case "battledress":
+				r += `Battledress.`;
+				break;
+			case "a latex catsuit":
+				r += `Nice latex.`;
+				break;
+			case "restrictive latex":
+				r += `Bondage latex.`;
+				break;
+			case "conservative clothing":
+				r += `Conservative clothing.`;
+				break;
+			case "chains":
+				r += `Chains.`;
+				break;
+			case "a cheerleader outfit":
+				r += `Cheerleader.`;
+				break;
+			case "clubslut netting":
+				r += `Netting.`;
+				break;
+			case "shibari ropes":
+				r += `Shibari.`;
+				break;
+			case "Western clothing":
+				r += `Chaps.`;
+				break;
+			case "body oil":
+				r += `Body oil.`;
+				break;
+			case "a toga":
+				r += `Toga.`;
+				break;
+			case "a huipil":
+				r += `Huipil.`;
+				break;
+			case "a slutty qipao":
+				r += `Qipao.`;
+				break;
+			case "spats and a tank top":
+				r += `Spats, tank top.`;
+				break;
+			default:
+				r += `Naked.`;
+				break;
 		}
+		r += " ";
 	}
-	return r;
-}
 
-/*
- count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
- If count is left undefined it will assume it to be 1.
- Intended to be a simple "x got fucked y times and I don't want to keep coding it".
- Pregnancy chance is handled in saLongTermEffects.tw.
-*/
-window.SimpleSlaveFucking = function SimpleSlaveFucking(slave, count) {
-	const V = State.variables;
-	let fuckTarget = 0;
-	let fuckCount = 1;
-	if (count) {
-		fuckCount = count;
-	}
-	for (var i = 0; i < fuckCount; i++) {
-		fuckTarget = jsRandom(1,100);
-		if (slave.nipples == "fuckable" && fuckTarget > 80) {
-			V.mammaryTotal += 1;
-			slave.mammaryCount += 1;
-		}
-		else if (canDoVaginal(slave) && slave.vagina > 0 && fuckTarget > 33) {
-			V.vaginalTotal += 1;
-			slave.vaginalCount += 1;
-		}
-		else if (canDoAnal(slave) && slave.anus > 0 && fuckTarget > 10) {
-			V.analTotal += 1;
-			slave.analCount += 1;
-		}
-		else {
-			V.oralTotal += 1;
-			slave.oralCount += 1;
+	function long_collar(slave) {
+		switch (slave.collar) {
+			case "uncomfortable leather":
+				r += `Leather collar.`;
+				break;
+			case "tight steel":
+				r += `Steel collar.`;
+				break;
+			case "preg biometrics":
+				r += `Pregnancy biometrics collar.`;
+				break;
+			case "cruel retirement counter":
+				r += `Cruel counter collar.`;
+				break;
+			case "shock punishment":
+				r += `Shock collar.`;
+				break;
+			case "dildo gag":
+				r += `Dildo gag.`;
+				break;
+			case "massive dildo gag":
+				r += `Throat-bulging dildo gag.`;
+				break;
+			case "neck corset":
+				r += `Neck corset.`;
+				break;
+			case "stylish leather":
+				r += `Stylish leather collar.`;
+				break;
+			case "satin choker":
+				r += `Satin choker.`;
+				break;
+			case "silk ribbon":
+				r += `Silken ribbon.`;
+				break;
+			case "heavy gold":
+				r += `Gold collar.`;
+				break;
+			case "bowtie":
+				r += `Bowtie collar.`;
+				break;
+			case "pretty jewelry":
+				r += `Pretty collar.`;
+				break;
+			case "nice retirement counter":
+				r += `Nice counter collar.`;
+				break;
+			case "leather with cowbell":
+				r += `Cowbell collar.`;
+				break;
+			case "ancient Egyptian":
+				r += `Wesekh.`;
+				break;
+			case "ball gag":
+				r += `Ball gag.`;
+				break;
+			case "bit gag":
+				r += `Bit gag.`;
+				break;
+			case "porcelain mask":
+				r += `Porcelain mask.`;
+				break;
 		}
+		r += " ";
 	}
-	return;
-}
-
-/*
- count is how many times to increment either the Vaginal, Anal, or Oral counts, depending on availability of slave.
- If count is left undefined it will assume it to be 1.
- Intended to be a simple "x got fucked y times by z and I don't want to keep coding it".
-*/
-window.SimpleSlaveSlaveFucking = function SimpleSlaveSlaveFucking(subslave, domslave, count) {
-	const V = State.variables;
-	let fuckTarget = 0;
-	let fuckCount = 1;
-	let r = ``;
-	if (count) {
-		fuckCount = count;
-	}
-	for (var j = 0; j < fuckCount; j++) {
-		//there is a reason randomization happens inside cycle - to spread fuck around, otherwise cycle isn't even needed
-		fuckTarget = jsRandom(1,100);
-		if (subslave.nipples === "fuckable" && canPenetrate(domslave) && fuckTarget > 80) {
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[V.i].ID) {
-					V.slaves[V.i].mammaryCount++;
-					V.mammaryTotal++;
-					domslave.penetrativeCount++;
-					V.penetrativeTotal++;
-				}
-				else {
-					subslave.mammaryCount++;
-					V.mammaryTotal++;
-					V.slaves[V.i].penetrativeCount++;
-					V.penetrativeTotal++;
-				}
-			}
-			else {
-				V.mammaryTotal++;
-				V.penetrativeTotal++;
-				subslave.mammaryCount++;
-				domslave.penetrativeCount++;
-			}
+	
+	function long_belly(slave) {
+		switch (slave.bellyAccessory) {
+			case "shapewear":
+				r += `Shapewear.`;
+				break;
+			case "a small empathy belly":
+				r += `Small fake belly.`;
+				break;
+			case "a medium empathy belly":
+				r += `Medium fake belly.`;
+				break;
+			case "a large empathy belly":
+				r += `Large fake belly.`;
+				break;
+			case "a huge empathy belly":
+				r += `Huge fake belly.`;
+				break;
+			case "a corset":
+				r += `Corset.`;
+				break;
+			case "an extreme corset":
+				r += `Extreme corsetage.`;
+				break;
 		}
-		else if (canDoVaginal(subslave) && subslave.vagina > 0 && canPenetrate(domslave) && fuckTarget > 33) {
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[V.i].ID) {
-					V.slaves[V.i].vaginalCount++;
-					V.vaginalTotal++;
-					V.penetrativeTotal++;
-					domslave.penetrativeCount++;
-				}
-				else {
-					V.slaves[V.i].penetrativeCount++;
-					V.penetrativeTotal++;
-					subslave.vaginalCount++;
-					V.vaginalTotal++;
-				}
-			}
-			else {
-				V.vaginalTotal++;
-				subslave.vaginalCount++;
-				V.penetrativeTotal++;
-				domslave.penetrativeCount++;
-			}
-			if (canImpreg(subslave, domslave)) {
-				r += knockMeUp(subslave, 3, 0, domslave.ID, 1);
-			}
+		r += " ";
+	}
+	
+	function long_legs(slave) {
+		if (slave.legAccessory === "short stockings") {
+			r += `Short stockings.`;
+		} else if (slave.legAccessory === "long stockings") {
+			r += `Long stockings.`;
 		}
-		else if (canDoAnal(subslave) && subslave.anus > 0 && canPenetrate(domslave) && fuckTarget > 10) {
-			//i think would impregnate from anal here even without .mpreg? same in original widget too
-			if (canImpreg(subslave, domslave) && subslave.mpreg == 1) {
-				r += knockMeUp(subslave, 3, 1, domslave.ID, 1);
-			}
-			if (passage() === "SA serve your other slaves") {
-				if (subslave.ID == V.slaves[V.i].ID) {
-					V.slaves[V.i].analCount++;
-					V.analTotal++;
-					V.penetrativeTotal++;
-					domslave.penetrativeCount++;
-				}
-				else {
-					V.slaves[V.i].penetrativeCount++;
-					V.penetrativeTotal++;
-					V.analTotal++;
-					subslave.analCount++;
-				}
-			}
-			else {
-				V.analTotal++;
-				subslave.analCount++;
-				V.penetrativeTotal++;
-				domslave.penetrativeCount++;
-			}
+		r += " ";
+	}
+	
+	function long_shoes(slave) {
+		if (slave.shoes === "heels") {
+			r += `Heels.`;
+		} else if (slave.shoes === "pumps") {
+			r += `Pumps.`;
+		} else if (slave.shoes === "extreme heels") {
+			r += `Extreme heels.`;
+		} else if (slave.shoes === "boots") {
+			r += `Boots.`;
+		} else if (slave.heels === 1) {
+			r += `<span class="yellow">Crawling.</span>`;
+		} else if (slave.shoes === "flats") {
+			r += `Flats.`;
 		}
-		else {
-			V.oralTotal++;
-			subslave.oralCount++;
+		r += " ";
+	}
+	
+	function long_vaginal_acc(slave) {
+		switch (slave.vaginalAccessory) {
+			case "chastity belt":
+				r += `Vaginal chastity.`;
+				break;
+			case "combined chastity":
+				r += `Combined chastity.`;
+				break;
+			case "anal chastity":
+				r += `Anal chastity.`;
+				break;
+			case "dildo":
+				r += `Vaginal dildo.`;
+				break;
+			case "large dildo":
+				r += `Large vaginal dildo.`;
+				break;
+			case "huge dildo":
+				r += `Huge vaginal dildo.`;
+				break;
+			case "long dildo":
+				r += `Long vaginal dildo.`;
+				break;
+			case "long, large dildo":
+				r += `Long and large vaginal dildo.`;
+				break;
+			case "long, huge dildo":
+				r += `Long and wide vaginal dildo.`;
+				break;
 		}
+		r += " ";
 	}
-	return r;
-}
-
-window.SimpleVaginaFuck = function SimpleVaginaFuck(slave, count) {
-	if (count) {
-		State.variables.vaginalTotal += count;
-		slave.vaginalCount += count;
+	
+	function long_dick_acc(slave) {
+		if (slave.dickAccessory === "chastity") {
+			r += `Chastity cage.`;
+		} else if (slave.dickAccessory === "combined chastity") {
+			r += `Combined chastity.`;
+		} else if (slave.dickAccessory === "anal chastity") {
+			r += `Anal chastity.`;
+		}
+		r += " ";
 	}
-	else {
-		State.variables.vaginalTotal++;
-		slave.vaginalCount++;
+	
+	function long_buttplug(slave) {
+		switch (slave.buttplug) {
+			case "plug":
+				r += `Buttplug.`;
+				break;
+			case "large plug":
+				r += `Large buttplug.`;
+				break;
+			case "huge plug":
+				r += `Huge buttplug.`;
+				break;
+			case "long plug":
+				r += `Long buttplug.`;
+				break;
+			case "long, large plug":
+				r += `Large, long buttplug.`;
+				break;
+			case "long, huge plug":
+				r += `Enormous buttplug.`;
+				break;
+		}
+		r += " ";
+		switch (slave.buttplugAttachment) {
+			case "tail":
+				r += `Attached tail. `;
+				break;
+		}
 	}
-}
-
-window.SimpleAssFuck = function SimpleAssFuck(slave, count) {
-	if (count) {
-		State.variables.analTotal += count;
-		slave.analCount += count;
+	
+	function rules_assistant(slave) {
+		if (slave.useRulesAssistant === 0) {
+			r += `<span class="lightgreen">RA-Exempt</span> `;
+		} else if (V.abbreviateRulesets === 2 && (slave.currentRules !== undefined) && (slave.currentRules.length > 0)) {
+			r += `Rules: ${V.defaultRules.filter(x => ruleApplied(slave, x)).map(x => x.name).join(", ") }`;
+		}
 	}
-	else {
-		State.variables.analTotal++;
-		slave.analCount++;
+	
+	function origins(slave) {
+		r += `<br>`;
+		if (V.seeImages !== 1 || V.seeSummaryImages !== 1 || V.imageChoice === 1) {
+			r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
+		}
+		r += `<span class="gray">${slave.origin}</span>`;
 	}
-}
+	
+	return SlaveSummaryUncached;
+})();
 
-/*:: PenthouseNaming [script]*/
 
-window.MS = function() {
- const V = State.variables;
- var name = "";
- if (V.masterSuiteNameCaps === "The Master Suite")
-		name = "Master Suite"
-	else
-		name = V.masterSuiteNameCaps;
-	return `<<link "${name}""Master Suite">><</link>> `}
-window.HS = function() {
- const V = State.variables;
- var name = "";
- if (V.HGSuiteNameCaps === "The Head Girl Suite")
-		name = "Head Girl Suite"
-	else
-		name = V.HGSuiteNameCaps;
-	return `<<link "${name}""Head Girl Suite">><</link>> `}
-window.SQ = function() {
- const V = State.variables;
- var name = "";
- if (V.servantsQuartersNameCaps === "The Servants' Quarters")
-		name = "Servants' Quarters"
-	else
-		name = V.servantsQuartersNameCaps;
-	return `<<link "${name}""Servants' Quarters">><</link>> `}
-window.S = function() {
- const V = State.variables;
- var name = "";
- if (V.spaNameCaps === "The Spa")
-		name = "Spa"
-	else
-		name = V.spaNameCaps;
-	return `<<link "${name}""Spa">><</link>> `}
-window.CI = function() {
- const V = State.variables;
- var name = "";
- if (V.clinicNameCaps === "The Clinic")
-		name = "Clinic"
-	else
-		name = V.clinicNameCaps;
-	return `<<link "${name}""Clinic">><</link>> `}
-window.SC = function() {
-	const V = State.variables;
-	var name = "";
-	if (V.schoolroomNameCaps === "The Schoolroom")
-		name = "Schoolroom"
-	else
-		name = V.schoolroomNameCaps;
-	return `<<link "${name}""Schoolroom">><</link>> `}
-window.CB = function() {
-	const V = State.variables;
-	var name = "";
-	if (V.cellblockNameCaps === "The Cellblock")
-		name = "Cellblock"
-	else
-		name = V.cellblockNameCaps;
-	return `<<link "${name}""Cellblock">><</link>> `}
-window.I = function() {
-	const V = State.variables;
-	var name = "";
-	if (V.incubatorNameCaps === "The Incubator")
-		name = "Incubator"
-	else
-		name = V.incubatorNameCaps;
-	return `<<link "${name}""Incubator">><</link>> `}
-- 
GitLab


From 763fe43aac697c20c050dce08fa1490a3cb87894 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 18 Jul 2018 21:20:25 -0400
Subject: [PATCH 081/189] JSify SoftenBehavioral/SexualFlaw and
 ValidateFacilityDescription

---
 devNotes/twine JS.txt                  | 191 +++++++++++++++++++++++++
 src/js/storyJS.tw                      |  66 +++++++++
 src/js/utilJS.tw                       | 125 ++++++++++++++++
 src/npc/acquisition.tw                 |  12 +-
 src/uncategorized/cellblockReport.tw   |   4 +-
 src/uncategorized/futureSociety.tw     |  20 +--
 src/uncategorized/hgApplication.tw     |   4 +-
 src/uncategorized/ptWorkaround.tw      |   4 +-
 src/uncategorized/saLongTermEffects.tw |  60 ++++----
 src/uncategorized/spaReport.tw         |   4 +-
 src/utility/miscWidgets.tw             | 176 ++---------------------
 11 files changed, 446 insertions(+), 220 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index c7f8bd1a097..d25e048b014 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -1018,6 +1018,72 @@ window.jsConsoleInfo = function(obj)
 	console.info(obj);
 }
 
+window.SoftenBehavioralFlaw = function SoftenBehavioralFlaw(slave) {
+	switch (slave.behavioralFlaw) {
+		case "arrogant":
+			slave.behavioralQuirk = "confident";
+			break;
+		case "bitchy":
+			slave.behavioralQuirk = "cutting";
+			break;
+		case "odd":
+			slave.behavioralQuirk = "funny";
+			break;
+		case "hates men":
+			slave.behavioralQuirk = "adores women";
+			break;
+		case "hates women":
+			slave.behavioralQuirk = "adores men";
+			break;
+		case "gluttonous":
+			slave.behavioralQuirk = "fitness";
+			break;
+		case "anorexic":
+			slave.behavioralQuirk = "insecure";
+			break;
+		case "devout":
+			slave.behavioralQuirk = "sinful";
+			break;
+		case "liberated":
+			slave.behavioralQuirk = "advocate";
+			break;
+	}
+	slave.behavioralFlaw = "none";
+};
+
+window.SoftenSexualFlaw = function SoftenSexualFlaw(slave) {
+	switch (slave.sexualFlaw) {
+		case "hates oral":
+			slave.sexualQuirk  = "gagfuck queen";
+			break;
+		case "hates anal":
+			slave.sexualQuirk  = "painal queen";
+			break;
+		case "hates penetration":
+			slave.sexualQuirk  = "strugglefuck queen";
+			break;
+		case "shamefast":
+			slave.sexualQuirk  = "tease";
+			break;
+		case "idealistic":
+			slave.sexualQuirk  = "romantic";
+			break;
+		case "repressed":
+			slave.sexualQuirk  = "perverted";
+			break;
+		case "apathetic":
+			slave.sexualQuirk  = "caring";
+			break;
+		case "crude":
+			slave.sexualQuirk  = "unflinching";
+			break;
+		case "judgemental":
+			slave.sexualQuirk  = "size queen";
+			break;
+	}
+	slave.sexualFlaw = "none";
+};
+
 /*:: Extended Family Mode JS [script]*/
 
 /* see documentation for details /devNotes/Extended Family Mode Explained.txt */
@@ -3429,6 +3495,131 @@ window.lengthToEitherUnit = function(s) {
 	return s + "cm";
 };
 
+/* decoration should be passed as "facilityDecoration" in quotes. For example, ValidateFacilityDecoration("brothelDecoration"). The quotes are important, do not pass it as a story variable. */
+window.ValidateFacilityDecoration = function ValidateFacilityDecoration(decoration) {
+	const V = State.variables;
+	switch (V[decoration]) {
+		case "standard":
+			/*nothing to do */
+			break;
+		case "Supremacist":
+			if (!Number.isFinite(V.arcologies[0].FSSupremacist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Subjugationist":
+			if (!Number.isFinite(V.arcologies[0].FSSubjugationist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Gender Radicalist":
+			if (!Number.isFinite(V.arcologies[0].FSGenderRadicalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Gender Fundamentalist":
+			if (!Number.isFinite(V.arcologies[0].FSGenderFundamentalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Paternalist":
+			if (!Number.isFinite(V.arcologies[0].FSPaternalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Body Purist":
+			if (!Number.isFinite(V.arcologies[0].FSBodyPurist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Transformation Fetishist":
+			if (!Number.isFinite(V.arcologies[0].FSTransformationFetishist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Youth Preferentialist":
+			if (!Number.isFinite(V.arcologies[0].FSYouthPreferentialist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Maturity Preferentialist":
+			if (!Number.isFinite(V.arcologies[0].FSMaturityPreferentialist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Slimness Enthusiast":
+			if (!Number.isFinite(V.arcologies[0].FSSlimnessEnthusiast)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Asset Expansionist":
+			if (!Number.isFinite(V.arcologies[0].FSAssetExpansionist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Pastoralist":
+			if (!Number.isFinite(V.arcologies[0].FSPastoralist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Physical Idealist":
+			if (!Number.isFinite(V.arcologies[0].FSPhysicalIdealist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Chattel Religionist":
+			if (!Number.isFinite(V.arcologies[0].FSChattelReligionist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Degradationist":
+			if (!Number.isFinite(V.arcologies[0].FSDegradationist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Roman Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSRomanRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Egyptian Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSEgyptianRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Edo Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSEdoRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Arabian Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSArabianRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Chinese Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSChineseRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Repopulation Focus":
+			if (!Number.isFinite(V.arcologies[0].FSRepopulationFocus)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Eugenics":
+			if (!Number.isFinite(V.arcologies[0].FSRestart)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Hedonistic":
+			if (!Number.isFinite(V.arcologies[0].FSHedonisticDecadence)) {
+				V[decoration] = "standard";
+			}
+			break;
+	}
+};
+
 /*:: Span Macro JS [script]*/
 
 /*
diff --git a/src/js/storyJS.tw b/src/js/storyJS.tw
index a7d344b8348..220c9c9d2b4 100644
--- a/src/js/storyJS.tw
+++ b/src/js/storyJS.tw
@@ -1017,3 +1017,69 @@ window.jsConsoleInfo = function(obj)
 {
 	console.info(obj);
 }
+
+window.SoftenBehavioralFlaw = function SoftenBehavioralFlaw(slave) {
+	switch (slave.behavioralFlaw) {
+		case "arrogant":
+			slave.behavioralQuirk = "confident";
+			break;
+		case "bitchy":
+			slave.behavioralQuirk = "cutting";
+			break;
+		case "odd":
+			slave.behavioralQuirk = "funny";
+			break;
+		case "hates men":
+			slave.behavioralQuirk = "adores women";
+			break;
+		case "hates women":
+			slave.behavioralQuirk = "adores men";
+			break;
+		case "gluttonous":
+			slave.behavioralQuirk = "fitness";
+			break;
+		case "anorexic":
+			slave.behavioralQuirk = "insecure";
+			break;
+		case "devout":
+			slave.behavioralQuirk = "sinful";
+			break;
+		case "liberated":
+			slave.behavioralQuirk = "advocate";
+			break;
+	}
+	slave.behavioralFlaw = "none";
+};
+
+window.SoftenSexualFlaw = function SoftenSexualFlaw(slave) {
+	switch (slave.sexualFlaw) {
+		case "hates oral":
+			slave.sexualQuirk  = "gagfuck queen";
+			break;
+		case "hates anal":
+			slave.sexualQuirk  = "painal queen";
+			break;
+		case "hates penetration":
+			slave.sexualQuirk  = "strugglefuck queen";
+			break;
+		case "shamefast":
+			slave.sexualQuirk  = "tease";
+			break;
+		case "idealistic":
+			slave.sexualQuirk  = "romantic";
+			break;
+		case "repressed":
+			slave.sexualQuirk  = "perverted";
+			break;
+		case "apathetic":
+			slave.sexualQuirk  = "caring";
+			break;
+		case "crude":
+			slave.sexualQuirk  = "unflinching";
+			break;
+		case "judgemental":
+			slave.sexualQuirk  = "size queen";
+			break;
+	}
+	slave.sexualFlaw = "none";
+};
diff --git a/src/js/utilJS.tw b/src/js/utilJS.tw
index f3bf1e4d432..9d20cdf8bb3 100644
--- a/src/js/utilJS.tw
+++ b/src/js/utilJS.tw
@@ -654,3 +654,128 @@ window.lengthToEitherUnit = function(s) {
 		return cmToInchString(s);
 	return s + "cm";
 };
+
+/* decoration should be passed as "facilityDecoration" in quotes. For example, ValidateFacilityDecoration("brothelDecoration"). The quotes are important, do not pass it as a story variable. */
+window.ValidateFacilityDecoration = function ValidateFacilityDecoration(decoration) {
+	const V = State.variables;
+	switch (V[decoration]) {
+		case "standard":
+			/*nothing to do */
+			break;
+		case "Supremacist":
+			if (!Number.isFinite(V.arcologies[0].FSSupremacist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Subjugationist":
+			if (!Number.isFinite(V.arcologies[0].FSSubjugationist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Gender Radicalist":
+			if (!Number.isFinite(V.arcologies[0].FSGenderRadicalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Gender Fundamentalist":
+			if (!Number.isFinite(V.arcologies[0].FSGenderFundamentalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Paternalist":
+			if (!Number.isFinite(V.arcologies[0].FSPaternalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Body Purist":
+			if (!Number.isFinite(V.arcologies[0].FSBodyPurist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Transformation Fetishist":
+			if (!Number.isFinite(V.arcologies[0].FSTransformationFetishist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Youth Preferentialist":
+			if (!Number.isFinite(V.arcologies[0].FSYouthPreferentialist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Maturity Preferentialist":
+			if (!Number.isFinite(V.arcologies[0].FSMaturityPreferentialist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Slimness Enthusiast":
+			if (!Number.isFinite(V.arcologies[0].FSSlimnessEnthusiast)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Asset Expansionist":
+			if (!Number.isFinite(V.arcologies[0].FSAssetExpansionist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Pastoralist":
+			if (!Number.isFinite(V.arcologies[0].FSPastoralist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Physical Idealist":
+			if (!Number.isFinite(V.arcologies[0].FSPhysicalIdealist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Chattel Religionist":
+			if (!Number.isFinite(V.arcologies[0].FSChattelReligionist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Degradationist":
+			if (!Number.isFinite(V.arcologies[0].FSDegradationist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Roman Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSRomanRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Egyptian Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSEgyptianRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Edo Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSEdoRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Arabian Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSArabianRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Chinese Revivalist":
+			if (!Number.isFinite(V.arcologies[0].FSChineseRevivalist)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Repopulation Focus":
+			if (!Number.isFinite(V.arcologies[0].FSRepopulationFocus)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Eugenics":
+			if (!Number.isFinite(V.arcologies[0].FSRestart)) {
+				V[decoration] = "standard";
+			}
+			break;
+		case "Hedonistic":
+			if (!Number.isFinite(V.arcologies[0].FSHedonisticDecadence)) {
+				V[decoration] = "standard";
+			}
+			break;
+	}
+};
diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw
index 0c04374057e..9682abffdf1 100644
--- a/src/npc/acquisition.tw
+++ b/src/npc/acquisition.tw
@@ -249,7 +249,7 @@ The previous owner seems to have left in something of a hurry.
 		<<set $activeSlave.butt += random(1,2)>>
 		<<set $activeSlave.attrXY = random(70,90), $activeSlave.attrXX = 0>>
 		<<set $activeSlave.oralSkill = random(35,65), $activeSlave.analSkill = random(35,65), $activeSlave.whoreSkill = random(35,65)>>
-		<<SoftenSexualFlaw $activeSlave>>
+		<<run SoftenSexualFlaw($activeSlave)>>
 		<<set $activeSlave.clothes = "uncomfortable straps", $activeSlave.collar = "stylish leather", $activeSlave.shoes = "heels">>
 		<<set $activeSlave.assignment = "whore">>
 	<<case "GenderFundamentalist">>
@@ -369,7 +369,7 @@ The previous owner seems to have left in something of a hurry.
 			<<if $activeSlave.vagina == 0>><<set $activeSlave.vagina++>><</if>>
 			<<set $activeSlave.vaginalSkill = random(15,35)>>
 		<</if>>
-		<<SoftenBehavioralFlaw $activeSlave>>
+		<<run SoftenBehavioralFlaw($activeSlave)>>
 		<<set $activeSlave.clothes = "a slutty maid outfit", $activeSlave.collar = "pretty jewelry", $activeSlave.shoes = "heels">>
 		<<set $activeSlave.assignment = "be a servant">>
 	<<case "YouthPreferentialist">>
@@ -445,7 +445,7 @@ The previous owner seems to have left in something of a hurry.
 			<<set $activeSlave.vaginalSkill = random(15,35)>>
 		<</if>>
 		<<set $activeSlave.entertainSkill = random(15,35)>>
-		<<SoftenSexualFlaw $activeSlave>>
+		<<run SoftenSexualFlaw($activeSlave)>>
 		<<set $activeSlave.clothes = "slutty jewelry", $activeSlave.collar = "ancient Egyptian", $activeSlave.shoes = "flats">>
 		<<set $activeSlave.assignment = "please you">>
 	<<case "EdoRevivalist">>
@@ -484,8 +484,8 @@ The previous owner seems to have left in something of a hurry.
 			<<set $activeSlave.vaginalSkill = 100>>
 		<</if>>
 		<<set $activeSlave.entertainSkill = 100, $activeSlave.whoreSkill = 100>>
-		<<SoftenBehavioralFlaw $activeSlave>>
-		<<SoftenSexualFlaw $activeSlave>>
+		<<run SoftenBehavioralFlaw($activeSlave)>>
+		<<run SoftenSexualFlaw($activeSlave)>>
 		<<set $activeSlave.clothes = "a slutty qipao", $activeSlave.collar = "pretty jewelry", $activeSlave.shoes = "heels">>
 		<<set $activeSlave.assignment = "be your Head Girl", $HeadGirl = $activeSlave>>
 	<<case "Eugenics">>
@@ -502,7 +502,7 @@ The previous owner seems to have left in something of a hurry.
 		<</if>>
 		<<set $activeSlave.entertainSkill = random(15,35)>>
 		<<set $activeSlave.whoreSkill = 0>>
-		<<SoftenSexualFlaw $activeSlave>>
+		<<run SoftenSexualFlaw($activeSlave)>>
 		<<set $activeSlave.clothes = "a ball gown", $activeSlave.shoes = "flats">>
 		<<set $activeSlave.assignment = "rest">>
 	<<case "Repopulationist">>
diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw
index 603ace957a2..ba8f6917192 100644
--- a/src/uncategorized/cellblockReport.tw
+++ b/src/uncategorized/cellblockReport.tw
@@ -227,10 +227,10 @@
 	<</switch>>
 	<<if $cellblockUpgrade == 1>>
 		<<if ($slaves[$i].behavioralFlaw != "none") && ($slaves[$i].behavioralQuirk == "none")>>
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 			<<set $slaves[$i].devotion -= 10, _softenedQuirks++>>
 		<<elseif ($slaves[$i].sexualFlaw != "none") && ($slaves[$i].sexualQuirk == "none")>>
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 			<<set $slaves[$i].devotion -= 10, _softenedQuirks++>>
 		<</if>>
 	<</if>>
diff --git a/src/uncategorized/futureSociety.tw b/src/uncategorized/futureSociety.tw
index 8e6b352842e..0746dc9f0d2 100644
--- a/src/uncategorized/futureSociety.tw
+++ b/src/uncategorized/futureSociety.tw
@@ -1160,61 +1160,61 @@ You are spending <<print cashFormat($FSSpending)>> each week to support your soc
 
 /* FACILITY REDECORATION */
 <<if $brothel > 0>>
-<<ValidateFacilityDecoration "brothelDecoration">>
+<<run ValidateFacilityDecoration("brothelDecoration")>>
 <br>$brothelNameCaps is decorated in $brothelDecoration style.
 <<SetFacilityDecoration "brothelDecoration">>
 <</if>>
 
 <<if $club > 0>>
-<<ValidateFacilityDecoration "clubDecoration">>
+<<run ValidateFacilityDecoration("clubDecoration")>>
 <br>$clubNameCaps is decorated in $clubDecoration style.
 <<SetFacilityDecoration "clubDecoration">>
 <</if>>
 
 <<if $dairy > 0>>
-<<ValidateFacilityDecoration "dairyDecoration">>
+<<run ValidateFacilityDecoration("dairyDecoration")>>
 <br>$dairyNameCaps is decorated in $dairyDecoration style.
 <<SetFacilityDecoration "dairyDecoration">>
 <</if>>
 
 <<if $spa > 0>>
-<<ValidateFacilityDecoration "spaDecoration">>
+<<run ValidateFacilityDecoration("spaDecoration")>>
 <br>$spaNameCaps is decorated in $spaDecoration style.
 <<SetFacilityDecoration "spaDecoration">>
 <</if>>
 
 <<if $clinic > 0>>
-<<ValidateFacilityDecoration "clinicDecoration">>
+<<run ValidateFacilityDecoration("clinicDecoration")>>
 <br>$clinicNameCaps is decorated in $clinicDecoration style.
 <<SetFacilityDecoration "clinicDecoration">>
 <</if>>
 
 <<if $schoolroom > 0>>
-<<ValidateFacilityDecoration "schoolroomDecoration">>
+<<run ValidateFacilityDecoration("schoolroomDecoration")>>
 <br>$schoolroomNameCaps is decorated in $schoolroomDecoration style.
 <<SetFacilityDecoration "schoolroomDecoration">>
 <</if>>
 
 <<if $cellblock > 0>>
-<<ValidateFacilityDecoration "cellblockDecoration">>
+<<run ValidateFacilityDecoration("cellblockDecoration")>>
 <br>$cellblockNameCaps is decorated in $cellblockDecoration style.
 <<SetFacilityDecoration "cellblockDecoration">>
 <</if>>
 
 <<if $servantsQuarters > 0>>
-<<ValidateFacilityDecoration "servantsQuartersDecoration">>
+<<run ValidateFacilityDecoration("servantsQuartersDecoration")>>
 <br>$servantsQuartersNameCaps is decorated in $servantsQuartersDecoration style.
 <<SetFacilityDecoration "servantsQuartersDecoration">>
 <</if>>
 
 <<if $arcade > 0>>
-<<ValidateFacilityDecoration "arcadeDecoration">>
+<<run ValidateFacilityDecoration("arcadeDecoration")>>
 <br>$arcadeNameCaps is decorated in $arcadeDecoration style.
 <<SetFacilityDecoration "arcadeDecoration">>
 <</if>>
 
 <<if $masterSuite > 0>>
-<<ValidateFacilityDecoration "masterSuiteDecoration">>
+<<run ValidateFacilityDecoration("masterSuiteDecoration")>>
 <br>$masterSuiteNameCaps is decorated in $masterSuiteDecoration style.
 <<SetFacilityDecoration "masterSuiteDecoration">>
 <</if>>
diff --git a/src/uncategorized/hgApplication.tw b/src/uncategorized/hgApplication.tw
index b0a26d1ff6f..e022eeead2f 100644
--- a/src/uncategorized/hgApplication.tw
+++ b/src/uncategorized/hgApplication.tw
@@ -212,9 +212,9 @@ She punishes $activeSlave.slaveName whenever she sees her breaking the rules yet
 	<<set $activeSlave.training = 0>>
 	and successfully @@.green;softens $activeSlave.slaveName's flaw.@@
 	<<if $activeSlave.behavioralFlaw != "none">>
-		<<SoftenBehavioralFlaw $activeSlave>>
+		<<run SoftenBehavioralFlaw($activeSlave)>>
 	<<elseif $activeSlave.sexualFlaw != "none">>
-		<<SoftenSexualFlaw $activeSlave>>
+		<<run SoftenSexualFlaw($activeSlave)>>
 	<</if>>
 <<else>>
 	and makes partial progress.
diff --git a/src/uncategorized/ptWorkaround.tw b/src/uncategorized/ptWorkaround.tw
index b692718251c..8909f854784 100644
--- a/src/uncategorized/ptWorkaround.tw
+++ b/src/uncategorized/ptWorkaround.tw
@@ -151,7 +151,7 @@
 		<<else>>
 			<<set $activeSlave.training = 0>>
 			By the end of the week, @@.green;you resolve her flaw into something special.@@ @@.hotpink;Her obedience has increased.@@
-			<<SoftenBehavioralFlaw $activeSlave>>
+			<<run SoftenBehavioralFlaw($activeSlave)>>
 			<<set $activeSlave.devotion += 4>>
 		<</if>>
 		<<if $activeSlave.fetishKnown != 1>>
@@ -275,7 +275,7 @@
 		<<else>>
 			<<set $activeSlave.training = 0>>
 			By the end of the week, @@.green;you resolve her flaw into something special.@@ @@.hotpink;Her obedience has increased.@@
-			<<SoftenSexualFlaw $activeSlave>>
+			<<run SoftenSexualFlaw($activeSlave)>>
 			<<set $activeSlave.devotion += 4>>
 		<</if>>
 		<<if $activeSlave.fetishKnown != 1>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 6a4a356daed..26109ed9ed2 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -1698,12 +1698,12 @@
 		<<if ($slaves[$i].behavioralFlaw == "arrogant")>>
 		<<if ($slaves[$i].fetish == "submissive")>>
 			Her need to submit has @@.green;softened her arrogance into confidence.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
 		<<if ($slaves[$i].fetish == "humiliation")>>
 			Her need to be humiliated has @@.green;softened her bitchiness into a penchant for repartee.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates men")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
@@ -1711,13 +1711,13 @@
 			<<set $slaves[$i].behavioralQuirk = "adores men", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "boobs")>>
 			She dislikes men and adores boobs, which @@.green;softens her hatred of men into a love of women.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].attrXY > 85)>>
 			She dislikes the company of men but likes their cocks; she learns to @@.green;enjoy the male presence that comes with taking the dick.@@
 			<<set $slaves[$i].behavioralQuirk = "adores men", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
 			She dislikes men and has constant needs; women are the obvious answer, which @@.green;softens her hatred of men into a love of feminine company.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates women")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
@@ -1725,23 +1725,23 @@
 			<<set $slaves[$i].behavioralQuirk = "adores women", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
 			She dislikes women and has a real oral fixation; eating dick is the obvious answer, which @@.green;softens her hatred of women into a love of men.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].attrXX > 85)>>
 			She dislikes the company of women but likes fucking them; she learns to @@.green;enjoy the feminine presence that comes with getting some pussy.@@
 			<<set $slaves[$i].behavioralQuirk = "adores women", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
 			She dislikes women and has constant needs; men are the obvious answer, which @@.green;softens her hatred of women into a love of maleness.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "devout")>>
 		<<if ($slaves[$i].energy > 95)>>
 			Her need for constant sex has @@.green;softened her devoutness into an appetite for sacrilege.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "liberated")>>
 		<<if ($slaves[$i].fetish == "masochist")>>
 			Her subconscious need to be abused has@@.green;converted her liberated philosophy into an ability to advocate for slavery.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
+			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<</if>>
 	<</if>>
@@ -1808,86 +1808,86 @@
 	<<if ($slaves[$i].sexualFlaw == "hates anal")>>
 		<<if $slaves[$i].anusPiercing>>
 			The constant stimulation her guiche piercings give her most intimate areas helps her with her anal hangups, @@.green;softening her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
 			Her sexual fascination with things entering her asshole @@.green;softens her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].energy > 95)>>
 			As a nymphomaniac she appreciates kinky sex, so she @@.green;softens her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates oral")>>
 		<<if $slaves[$i].tonguePiercing>>
 			She can't stop sucking on her tongue piercings, and she gets over her oral hangups, @@.green;softening her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
 			She can't get her beloved cum without choking down dick, so she @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].energy > 95)>>
 			She needs sex so much she often has to encourage her partners orally, so she @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates penetration")>>
 		<<if $slaves[$i].vaginaPiercing>>
 			Her pussy piercings get her used to the idea that it's a fuckhole, not her precious womanhood, @@.green;softening her hatred of penetration into an appetite for abusive sex.@@ She still cries, but she climaxes as she cries.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
 			Her sexual fascination with anal penetration @@.green;softens her hatred of penetration into an appetite for abusive sex.@@ She still cries, but she climaxes as she cries.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].energy > 95)>>
 			As a nymphomaniac she appreciates kinky sex, so she @@.green;softens her hatred of penetration into an appetite for abusive intercourse.@@ She still cries, but she climaxes as she cries.
-			<<SoftenSexualFlaw $slaves[$i]>>
+			<<run SoftenSexualFlaw($slaves[$i])>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "apathetic")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
 		Her subconscious drive to submit @@.green;softens her sexual apathy into constant care for her partners' wants.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
 		She needs sex so badly that she can no longer be apathetic in bed, and @@.green;softens her sexual apathy into care for what keeps her partners aroused.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "crude")>>
 	<<if ($slaves[$i].fetish == "buttslut")>>
 		She needs to avoid making unsexy noises during buttsex to be an appealing enough anal partner to satisfy her backdoor needs, @@.green;softening her crudeness into a willingness to do anything.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
 		She needs sex so badly that she can no longer afford to disgust partners, and @@.green;softens her sexual crudeness into a willingness to do anything.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "judgemental")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
 		Her subconscious belief that she's worthless @@.green;softens her judgemental behavior into eagerness to be fucked by the biggest cocks.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
 		She needs sex so badly that she can no longer be selective, and @@.green;softens her judgemental behavior into a love of big dicks, though she now loves them all.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "shamefast")>>
 	<<if ($slaves[$i].fetish == "humiliation")>>
 		She decides that hiding won't get her the humiliation she craves, and @@.green;softens her shamefastness into a willingness to tease.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
 		She decides that hiding isn't getting her enough sex, and @@.green;softens her shamefastness into a willingness to tease.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "idealistic")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
 		Her appetite for submission has @@.green;softened her innocent ideas about sex into an ability to find romance@@ in the life of a sex slave.
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
 		Her appetite for sex has @@.green;softened her innocent ideas about sex into an ability to find something romantic@@ in a constant whirl of intercourse.
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "repressed")>>
 	<<if ($slaves[$i].fetish == "buttslut")>>
 		She grew up being taught that good girls do not take cock up their good girl anuses, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@  of dicks up her behind.
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].fetish == "cumslut")>>
 		She grew up being taught that good girls do not put their good girl mouths on boys' private parts, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perverted@@ idea of dicks down her throat.
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
 		She grew up being taught that good girls do not happily fuck anything that moves, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@ of revelling in sexual addiction.
-		<<SoftenSexualFlaw $slaves[$i]>>
+		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<</if>>
 <<else>>
diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw
index df76fb78f94..c4d91e2d3f4 100644
--- a/src/uncategorized/spaReport.tw
+++ b/src/uncategorized/spaReport.tw
@@ -194,11 +194,11 @@
 		<</switch>>
 		<<if ($Attendant.intelligence > 0) && (_attendantUsedCure == 0) && random(1,100) > (100-($Attendant.intelligence*10)-_seed) && ($spaFix == 0)>>
 			<<if $slaves[$i].behavioralFlaw != "none">>
-				<<SoftenBehavioralFlaw $slaves[$i]>>
+				<<run SoftenBehavioralFlaw($slaves[$i])>>
 				<<set _attendantUsedCure += 1>>
 				<br>&nbsp;&nbsp;&nbsp;&nbsp;$Attendant.slaveName works carefully with $slaves[$i].slaveName, and successfully @@.green;softens her behavioral flaw@@ into an appealing quirk.
 			<<elseif $slaves[$i].sexualFlaw != "none">>
-				<<SoftenSexualFlaw $slaves[$i]>>
+				<<run SoftenSexualFlaw($slaves[$i])>>
 				<<set _attendantUsedCure += 1>>
 				<br>&nbsp;&nbsp;&nbsp;&nbsp;$Attendant.slaveName works carefully with $slaves[$i].slaveName, and successfully @@.green;softens her sexual flaw@@ into an appealing quirk.
 			<</if>>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 59083430724..40793215da3 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -1261,62 +1261,6 @@
 <<widget "Sh">>$ShEnunciate<</widget>>
 <<widget "x">>$xEnunciate<</widget>>
 
-/%
- Call as <<SoftenBehavioralFlaw>>
- $args[0]: Slave.
-%/
-<<widget "SoftenBehavioralFlaw">>
-	<<switch $args[0].behavioralFlaw>>
-	<<case "arrogant">>
-		<<set $args[0].behavioralQuirk = "confident">>
-	<<case "bitchy">>
-		<<set $args[0].behavioralQuirk = "cutting">>
-	<<case "odd">>
-		<<set $args[0].behavioralQuirk = "funny">>
-	<<case "hates men">>
-		<<set $args[0].behavioralQuirk = "adores women">>
-	<<case "hates women">>
-		<<set $args[0].behavioralQuirk = "adores men">>
-	<<case "gluttonous">>
-		<<set $args[0].behavioralQuirk = "fitness">>
-	<<case "anorexic">>
-		<<set $args[0].behavioralQuirk = "insecure">>
-	<<case "devout">>
-		<<set $args[0].behavioralQuirk = "sinful">>
-	<<case "liberated">>
-		<<set $args[0].behavioralQuirk = "advocate">>
-	<</switch>>
-	<<set $args[0].behavioralFlaw = "none">>
-<</widget>>
-
-/%
- Call as <<SoftenSexualFlaw>>
- $args[0]: Slave.
-%/
-<<widget "SoftenSexualFlaw">>
-	<<switch $args[0].sexualFlaw>>
-	<<case "hates oral">>
-		<<set $args[0].sexualQuirk = "gagfuck queen">>
-	<<case "hates anal">>
-		<<set $args[0].sexualQuirk = "painal queen">>
-	<<case "hates penetration">>
-		<<set $args[0].sexualQuirk = "strugglefuck queen">>
-	<<case "shamefast">>
-		<<set $args[0].sexualQuirk = "tease">>
-	<<case "idealistic">>
-		<<set $args[0].sexualQuirk = "romantic">>
-	<<case "repressed">>
-		<<set $args[0].sexualQuirk = "perverted">>
-	<<case "apathetic">>
-		<<set $args[0].sexualQuirk = "caring">>
-	<<case "crude">>
-		<<set $args[0].sexualQuirk = "unflinching">>
-	<<case "judgemental">>
-		<<set $args[0].sexualQuirk = "size queen">>
-	<</switch>>
-	<<set $args[0].sexualFlaw = "none">>
-<</widget>>
-
 /%
  Call as <<EventFetish>>
  $args[0]: Slave.
@@ -1575,119 +1519,19 @@ This experience
 <</capture>>
 <</widget>>
 
-<<widget "ValidateFacilityDecoration">>
-/* Used by following widget, called with <<ValidateFacilityDecoration "var">> where var is for example "spaDecoration" -- quotes are needed to pass var as reference - DO NOT INCLUDE $ PREFIX! */
-<<switch State.variables[$args[0]]>> /* get value of var name that was provided */
-<<case "standard">>
-	/* nothing to do */
-<<case "Supremacist">>
-	<<if !Number.isFinite($arcologies[0].FSSupremacist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Subjugationist">>
-	<<if !Number.isFinite($arcologies[0].FSSubjugationist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Gender Radicalist">>
-	<<if !Number.isFinite($arcologies[0].FSGenderRadicalist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Gender Fundamentalist">>
-	<<if !Number.isFinite($arcologies[0].FSGenderFundamentalist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Paternalist">>
-	<<if !Number.isFinite($arcologies[0].FSPaternalist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Body Purist">>
-	<<if !Number.isFinite($arcologies[0].FSBodyPurist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Transformation Fetishist">>
-	<<if !Number.isFinite($arcologies[0].FSTransformationFetishist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Youth Preferentialist">>
-	<<if !Number.isFinite($arcologies[0].FSYouthPreferentialist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Maturity Preferentialist">>
-	<<if !Number.isFinite($arcologies[0].FSMaturityPreferentialist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Slimness Enthusiast">>
-	<<if !Number.isFinite($arcologies[0].FSSlimnessEnthusiast)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Asset Expansionist">>
-	<<if !Number.isFinite($arcologies[0].FSAssetExpansionist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Pastoralist">>
-	<<if !Number.isFinite($arcologies[0].FSPastoralist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Physical Idealist">>
-	<<if !Number.isFinite($arcologies[0].FSPhysicalIdealist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Chattel Religionist">>
-	<<if !Number.isFinite($arcologies[0].FSChattelReligionist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Degradationist">>
-	<<if !Number.isFinite($arcologies[0].FSDegradationist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Roman Revivalist">>
-	<<if !Number.isFinite($arcologies[0].FSRomanRevivalist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Egyptian Revivalist">>
-	<<if !Number.isFinite($arcologies[0].FSEgyptianRevivalist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Edo Revivalist">>
-	<<if !Number.isFinite($arcologies[0].FSEdoRevivalist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Arabian Revivalist">>
-	<<if !Number.isFinite($arcologies[0].FSArabianRevivalist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Chinese Revivalist">>
-	<<if !Number.isFinite($arcologies[0].FSChineseRevivalist)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Repopulation Focus">>
-	<<if !Number.isFinite($arcologies[0].FSRepopulationFocus)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Eugenics">>
-	<<if !Number.isFinite($arcologies[0].FSRestart)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<<case "Hedonistic">>
-	<<if !Number.isFinite($arcologies[0].FSHedonisticDecadence)>>
-		<<set State.variables[$args[0]] = "standard">>
-	<</if>>
-<</switch>>
-<</widget>>
-
 <<widget "ClearFacilityDecorations">>
 /* Called when a FS is abandoned or failed out of. */
 
-<<if $brothel > 0>><<ValidateFacilityDecoration "brothelDecoration">><</if>>
-<<if $club > 0>><<ValidateFacilityDecoration "clubDecoration">><</if>>
-<<if $dairy > 0>><<ValidateFacilityDecoration "dairyDecoration">><</if>>
-<<if $spa > 0>><<ValidateFacilityDecoration "spaDecoration">><</if>>
-<<if $clinic > 0>><<ValidateFacilityDecoration "clinicDecoration">><</if>>
-<<if $schoolroom > 0>><<ValidateFacilityDecoration "schoolroomDecoration">><</if>>
-<<if $cellblock > 0>><<ValidateFacilityDecoration "cellblockDecoration">><</if>>
-<<if $servantsQuarters > 0>><<ValidateFacilityDecoration "servantsQuartersDecoration">><</if>>
-<<if $arcade > 0>><<ValidateFacilityDecoration "arcadeDecoration">><</if>>
-<<if $masterSuite > 0>><<ValidateFacilityDecoration "masterSuiteDecoration">><</if>>
+<<if $brothel > 0>><<run ValidateFacilityDecoration("brothelDecoration")>><</if>>
+<<if $club > 0>><<run ValidateFacilityDecoration("clubDecoration")>><</if>>
+<<if $dairy > 0>><<run ValidateFacilityDecoration("dairyDecoration")>><</if>>
+<<if $spa > 0>><<run ValidateFacilityDecoration("spaDecoration")>><</if>>
+<<if $clinic > 0>><<run ValidateFacilityDecoration("clinicDecoration")>><</if>>
+<<if $schoolroom > 0>><<run ValidateFacilityDecoration("schoolroomDecoration")>><</if>>
+<<if $cellblock > 0>><<run ValidateFacilityDecoration("cellblockDecoration")>><</if>>
+<<if $servantsQuarters > 0>><<run ValidateFacilityDecoration("servantsQuartersDecoration")>><</if>>
+<<if $arcade > 0>><<run ValidateFacilityDecoration("arcadeDecoration")>><</if>>
+<<if $masterSuite > 0>><<run ValidateFacilityDecoration("masterSuiteDecoration")>><</if>>
 
 <</widget>>
 
-- 
GitLab


From 843187ee2f3b2a092152d1ad2d6ca39a84b2c0d5 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 19 Jul 2018 01:09:39 -0400
Subject: [PATCH 082/189] Fixes

---
 devNotes/twine JS.txt                       | 2 +-
 src/js/slaveSummaryWidgets.tw               | 2 +-
 src/uncategorized/BackwardsCompatibility.tw | 2 +-
 src/uncategorized/longSlaveDescription.tw   | 2 +-
 src/uncategorized/recETSWorkaround.tw       | 1 +
 5 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index d25e048b014..01dad0ad407 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -17897,7 +17897,7 @@ window.SlaveSummaryUncached = (function(){
 			long_behavior_quirk(slave);
 			long_sex_quirk(slave);
 		}
-		if (slave.customLabel != "")
+		if (slave.customLabel)
 			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
 		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
 			r += `<br>`;
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 470d2f23161..613d7875a32 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -170,7 +170,7 @@ window.SlaveSummaryUncached = (function(){
 			long_behavior_quirk(slave);
 			long_sex_quirk(slave);
 		}
-		if (slave.customLabel != "")
+		if (slave.customLabel)
 			r += `<strong><span class="yellow">${slave.customLabel}</span></strong>`;
 		if ((slave.relationship !== 0) || (slave.relation !== 0) || (V.abbreviateClothes === 2) || (V.abbreviateRulesets === 2)) {
 			r += `<br>`;
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 1f80840429b..affbf48b0a2 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2769,7 +2769,7 @@ Setting missing slave variables:
 	<<set _Slave.customTat = "">>
 <</if>>
 
-<<if _Slave.customLabel == " ">>
+<<if _Slave.customLabel == " " || ndef _Slave.customLabel>>
 	<<set _Slave.customLabel = "">>
 <</if>>
 <<if _Slave.lipsPiercing == "no default setting">>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index 9dd12b4ba85..1d1c47eacf4 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -21,7 +21,7 @@
 
 ''@@.pink;<<= SlaveFullName($activeSlave)>>@@''
 
-<<if ($activeSlave.customLabel != "")>> (@@.yellow;''<<print $activeSlave.customLabel>>''@@)<</if>>
+<<if $activeSlave.customLabel>> (@@.yellow;''<<print $activeSlave.customLabel>>''@@)<</if>>
 
 <<if $ui == "start">>
 <<elseif $saleDescription == 1>>
diff --git a/src/uncategorized/recETSWorkaround.tw b/src/uncategorized/recETSWorkaround.tw
index f054066680d..330466345b9 100644
--- a/src/uncategorized/recETSWorkaround.tw
+++ b/src/uncategorized/recETSWorkaround.tw
@@ -495,6 +495,7 @@ They giggle and kiss each other rather passionately, their miniskirts becoming p
 "You know we each are carrying the other's twins right?"
 
 <<set $activeSlave.ID = $activeSlave.ID + 1000>>
+<<set $activeSlave.womb = []>>
 <<set $activeSlave.pregSource = $activeSlave.ID - 1000>>
 <<if $familyTesting == 1>>
 <<else>>
-- 
GitLab


From 2847786e61326454a653ce99d9f117841d0785be Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Thu, 19 Jul 2018 13:18:59 +0300
Subject: [PATCH 083/189] add support for setting skin color

---
 src/js/DefaultRules.tw                      |  5 +++++
 src/js/rulesAssistant.tw                    |  1 +
 src/js/rulesAssistantOptions.tw             | 21 +++++++++++++++++++++
 src/uncategorized/BackwardsCompatibility.tw |  2 ++
 4 files changed, 29 insertions(+)

diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index a456dac92a1..466b15382ee 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -1821,6 +1821,11 @@ window.DefaultRules = (function() {
 				}
 			}
 		}
+		
+		if (rule.skinColor !== undefined && rule.skinColor !== "no default setting" && rule.skinColor !== slave.skin) {
+			slave.skin = rule.skinColor;
+			r += `<br>${slave.slaveName}'s skin color has been set to ${rule.skinColor}.`;
+		}
 	}
 
 	function ProcessPiercings(slave, rule) {
diff --git a/src/js/rulesAssistant.tw b/src/js/rulesAssistant.tw
index 2116d3a4d48..8783498ad7f 100644
--- a/src/js/rulesAssistant.tw
+++ b/src/js/rulesAssistant.tw
@@ -290,6 +290,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			bellyImplantVol: -1,
 			teeth: "no default setting",
 			label: "no default setting",
+			skinColor: "no default setting",
 		}
 	};
 	return rule;
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index 06f2f42da16..1c9de4d5244 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -984,6 +984,7 @@ window.rulesAssistantOptions = (function() {
 			this.appendChild(new PubicHairStyleList());
 			this.appendChild(new ArmpitHairColourList());
 			this.appendChild(new ArmpitHairStyleList());
+			this.appendChild(new SkinColourList());
 		}
 	}
 
@@ -3152,5 +3153,25 @@ window.rulesAssistantOptions = (function() {
 		}
 	}
 	
+	class SkinColourList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["pale"],
+				["lightened"],
+				["tanned"],
+				["dark"],
+				["dyed red"],
+				["dyed green"],
+				["dyed blue"],
+				["tiger triped"],
+				["camouflage patterned"],
+			]
+			super("Dye or tan skin", items);
+			this.setValue(current_rule.set.skinColor);
+			this.onchange = (x) => current_rule.set.skinColor = x;
+		}
+	}
+	
 	return rulesAssistantOptions;
 })();
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 1f80840429b..9e805658c22 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2949,3 +2949,5 @@ Done!
 <<run $defaultRules.filter(x => x.set.haircuts === undefined).forEach(x => { x.set.haircuts = "no default setting"; })>>
 
 <<run $defaultRules.filter(x => x.set.label === undefined).forEach(x => { x.set.label = "no default setting"; })>>
+
+<<run $defaultRules.filter(x => x.set.skinColour === undefined).forEach(x => { x.set.skinColor = "no default setting"; })>>
-- 
GitLab


From 5308b84a204a10391f92f6201150aaa92144d012 Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Thu, 19 Jul 2018 14:21:59 +0300
Subject: [PATCH 084/189] port faceincrease

---
 src/js/assayJS.tw          | 19 +++++++++++++++++++
 src/utility/miscWidgets.tw | 29 +----------------------------
 2 files changed, 20 insertions(+), 28 deletions(-)

diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index 0a1a30e2d2f..050d5c78ed9 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -1419,3 +1419,22 @@ window.MenialPopCap = function MenialPopCap () {
 	V.PopCap = popCap;
 	return r;
 };
+
+window.faceIncrease = function faceIncrease(slave, amount) {
+	const pronouns = getPronouns(slave);
+	const His = capFirstChar(his);
+	if (slave.face <= -95)
+		r += `<span class="green">${His} face is no longer horrifying,</span> and is now merely ugly.`;
+	else if (slave.face <= -40 && slave.face + amount > -40)
+		r += `<span class="green">${His} face is no longer ugly,</span> and is now merely unattractive.`;
+	else if (slave.face <= -10 && slave.face + amount > -10)
+		r += `<span class="green">${His} face is no longer unattractive,</span> and is now somewhat tolerable.`;
+	else if (slave.face <= 10 && slave.face + amount > 10)
+		r += `<span class="green">${His} face is now decently attractive,</span> rather than merely tolerable.`;
+	else if (slave.face <= 40 && slave.face + amount > 40)
+		r += `<span class="green">${His} face is now quite beautiful,</span> rather than merely pretty.`;
+	else if (slave.face <= 95 && slave.face + amount > 95)
+		r += `<span class="green">${His} face is now perfect.</span> It's difficult to imagine how it could be any more beautiful.`;
+	slave.face = Math.clamp(slave.face + amount,-100,100);
+	if (slave.face > 95) slave.face = 100;
+}
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 40793215da3..49345e163f5 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -1211,34 +1211,7 @@
  $args[1]: Amount of increase.
 %/
 <<widget "FaceIncrease">>
-
-<<run SlavePronouns($args[0])>>
-<<if $args[0].face <= -95>>
-	@@.green;$possessiveCap face is no longer horrifying,@@ and is now merely ugly.
-<<elseif $args[0].face <= -40>>
-	<<if $args[0].face+$args[1] > -40>>
-		@@.green;$possessiveCap face is no longer ugly,@@ and is now merely unattractive.
-	<</if>>
-<<elseif $args[0].face <= -10>>
-	<<if $args[0].face+$args[1] > -10>>
-		@@.green;$possessiveCap face is no longer unattractive,@@ and is now somewhat tolerable.
-	<</if>>
-<<elseif $args[0].face <= 10>>
-	<<if $args[0].face+$args[1] > 10>>
-		@@.green;$possessiveCap face is now decently attractive,@@ rather than merely tolerable.
-	<</if>>
-<<elseif $args[0].face <= 40>>
-	<<if $args[0].face+$args[1] > 40>>
-		@@.green;$possessiveCap face is now quite beautiful,@@ rather than merely pretty.
-	<</if>>
-<<elseif $args[0].face <= 95>>
-	<<if $args[0].face+$args[1] > 95>>
-		@@.green;$possessiveCap face is now perfect.@@ It's difficult to imagine how it could be any more beautiful.
-	<</if>>
-<</if>>
-<<set $args[0].face = Math.clamp($args[0].face+$args[1],-100,100)>>
-<<if $args[0].face > 95>><<set $args[0].face = 100>><</if>>
-
+	<<= faceIncrease($args[0], $args[1]) >>
 <</widget>>
 
 /%
-- 
GitLab


From 710265a4190fa23972504ec7324dc49122f23065 Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Thu, 19 Jul 2018 21:18:47 +0300
Subject: [PATCH 085/189] twine js sync

---
 devNotes/twine JS.txt | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index d25e048b014..1fe1d7a2c53 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -2699,6 +2699,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			bellyImplantVol: -1,
 			teeth: "no default setting",
 			label: "no default setting",
+			skinColor: "no default setting",
 		}
 	};
 	return rule;
@@ -13017,6 +13018,11 @@ window.DefaultRules = (function() {
 				}
 			}
 		}
+		
+		if (rule.skinColor !== undefined && rule.skinColor !== "no default setting" && rule.skinColor !== slave.skin) {
+			slave.skin = rule.skinColor;
+			r += `<br>${slave.slaveName}'s skin color has been set to ${rule.skinColor}.`;
+		}
 	}
 
 	function ProcessPiercings(slave, rule) {
@@ -14377,6 +14383,7 @@ window.rulesAssistantOptions = (function() {
 			this.appendChild(new PubicHairStyleList());
 			this.appendChild(new ArmpitHairColourList());
 			this.appendChild(new ArmpitHairStyleList());
+			this.appendChild(new SkinColourList());
 		}
 	}
 
@@ -16545,6 +16552,26 @@ window.rulesAssistantOptions = (function() {
 		}
 	}
 	
+	class SkinColourList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+				["pale"],
+				["lightened"],
+				["tanned"],
+				["dark"],
+				["dyed red"],
+				["dyed green"],
+				["dyed blue"],
+				["tiger triped"],
+				["camouflage patterned"],
+			]
+			super("Dye or tan skin", items);
+			this.setValue(current_rule.set.skinColor);
+			this.onchange = (x) => current_rule.set.skinColor = x;
+		}
+	}
+	
 	return rulesAssistantOptions;
 })();
 
-- 
GitLab


From b5157f45fd5b3cd3ee88a8f5e78a418f8ecad634 Mon Sep 17 00:00:00 2001
From: pregmodfan <pregmodfan@cock.li>
Date: Fri, 20 Jul 2018 00:08:45 +0300
Subject: [PATCH 086/189] custom label multiset and removal through RA, now
 it's more like tagging

---
 src/js/DefaultRules.tw                      | 11 ++++++++---
 src/js/rulesAssistant.tw                    |  1 +
 src/js/rulesAssistantOptions.tw             | 12 ++++++++++++
 src/uncategorized/BackwardsCompatibility.tw |  2 ++
 4 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 466b15382ee..27a1b54220d 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -2191,9 +2191,14 @@ window.DefaultRules = (function() {
 	}
 	
 	function ProcessLabel(slave, rule) {
-		if (rule.label !== "no default setting" && slave.customLabel !== rule.label) {
-			slave.customLabel = rule.label;
-			r += `<br>${slave.slaveName}'s label has been set to ${rule.label}`;
+		if (rule.label !== "no default setting" && !slave.customLabel.includes("["+rule.label+"]")) {
+			slave.customLabel = slave.customLabel + "[" + rule.label + "]";
+			r += `<br>${slave.slaveName} has been tagged as ${rule.label}`;
+		} 
+
+		if (rule.removeLabel !== "no default setting" && slave.customLabel.includes("["+rule.removeLabel+"]")) {
+			slave.customLabel = slave.customLabel.replace("["+rule.removeLabel+"]", "");
+			r += `<br>${slave.slaveName}'s tag [${rule.removeLabel}] is removed.`;
 		}
 	}
 
diff --git a/src/js/rulesAssistant.tw b/src/js/rulesAssistant.tw
index 8783498ad7f..d7c11628650 100644
--- a/src/js/rulesAssistant.tw
+++ b/src/js/rulesAssistant.tw
@@ -290,6 +290,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			bellyImplantVol: -1,
 			teeth: "no default setting",
 			label: "no default setting",
+			removeLabel: "no default setting",
 			skinColor: "no default setting",
 		}
 	};
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index 1c9de4d5244..e947f7b77f3 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -966,6 +966,7 @@ window.rulesAssistantOptions = (function() {
 		constructor() {
 			super("Other Settings");
 			this.appendChild(new LabelList());
+			this.appendChild(new LabelRemoveList());
 		}
 	}
 
@@ -3152,6 +3153,17 @@ window.rulesAssistantOptions = (function() {
 			this.onchange = (value) => current_rule.set.label = value;
 		}
 	}
+
+	class LabelRemoveList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+			];
+			super("Remove custom label", items, true);
+			this.setValue(current_rule.set.removeLabel);
+			this.onchange = (value) => current_rule.set.removeLabel = value;
+		}
+	}
 	
 	class SkinColourList extends List {
 		constructor() {
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index fe5beda585e..7ffae04654c 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -2950,4 +2950,6 @@ Done!
 
 <<run $defaultRules.filter(x => x.set.label === undefined).forEach(x => { x.set.label = "no default setting"; })>>
 
+<<run $defaultRules.filter(x => x.set.removeLabel === undefined).forEach(x => { x.set.removeLabel = "no default setting"; })>>
+
 <<run $defaultRules.filter(x => x.set.skinColour === undefined).forEach(x => { x.set.skinColor = "no default setting"; })>>
-- 
GitLab


From 49075ead47eadc8b920c63482c45c455951005ab Mon Sep 17 00:00:00 2001
From: pregmodfan <pregmodfan@cock.li>
Date: Fri, 20 Jul 2018 01:20:20 +0300
Subject: [PATCH 087/189] russian names fixes. again.

---
 src/init/setupVars.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index e46a591063f..6c71b2a807e 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -355,7 +355,7 @@
 <<set setup.latinaSlaveSurnames = ["Abad", "Abalos", "Abarca", "Abbott", "Abel", "Abella", "Abeyta", "Abila", "Aboytes", "Abraham", "Abrams", "Abrego", "Abreu", "Abril", "Abundis", "Abundiz", "Aburto", "Acebedo", "Acedo", "Aceituno", "Acero", "Acevedo", "Aceves", "Acosta", "Acuna", "Adam", "Adame", "Adames", "Adams", "Adan", "Adkins", "Adorno", "Adrian", "Afanador", "Agostini", "Agosto", "Agramonte", "Agredano", "Aguado", "Aguas", "Aguayo", "Agudelo", "Agudo", "Aguero", "Aguiar", "Aguila", "Aguilar", "Aguilera", "Aguillar", "Aguillon", "Aguinaga", "Aguiniga", "Aguirre", "Agundez", "Agustin", "Ahumada", "Aispuro", "Alameda", "Alamilla", "Alamillo", "Alamo", "Alanis", "Alaniz", "Alarcon", "Alarid", "Alas", "Alatorre", "Alba", "Alban", "Albarado", "Albarez", "Albarran", "Albert", "Alberto", "Albino", "Albor", "Alcala", "Alcantar", "Alcantara", "Alcaraz", "Alcazar", "Alcocer", "Alcon", "Alcorta", "Alcoser", "Aldaba", "Aldaco", "Aldama", "Aldana", "Aldape", "Alday", "Aldaz", "Alderete", "Aldrete", "Alegre", "Alegria", "Alejandre", "Alejandro", "Alejo", "Alejos", "Aleman", "Alers", "Alexander", "Alfaro", "Alferez", "Alfonso", "Alford", "Algarin", "Ali", "Aliaga", "Alicea", "Alire", "Allen", "Allende", "Allison", "Almada", "Almaguer", "Almanza", "Almanzar", "Almaraz", "Almazan", "Almeda", "Almeida", "Almendarez", "Almodovar", "Almonte", "Alonso", "Alonzo", "Alpizar", "Altamirano", "Alva", "Alvarado", "Alvardo", "Alvarenga", "Alvares", "Alvarez", "Alvear", "Alvelo", "Alverio", "Alves", "Alviar", "Alvidrez", "Alvillar", "Alvira", "Alviso", "Alvizo", "Alzate", "Amado", "Amador", "Amaral", "Amarillas", "Amaro", "Amato", "Amaya", "Ambriz", "Ambrocio", "Ambrosio", "Ames", "Amescua", "Amesquita", "Amezcua", "Amezola", "Amezquita", "Amigon", "Amos", "Amparan", "Amparo", "Anaya", "Anchondo", "Ancira", "Andalon", "Andazola", "Andersen", "Anderson", "Andino", "Andrade", "Andrades", "Andres", "Andrew", "Andrews", "Andujar", "Andujo", "Angel", "Angeles", "Angelo", "Anguiano", "Angulo", "Anthony", "Antigua", "Antillon", "Anton", "Antonio", "Antuna", "Antunez", "Anzaldo", "Anzaldua", "Anzures", "Aparicio", "Apodaca", "Apolinar", "Aponte", "Aquilar", "Aquino", "Aracena", "Aragon", "Araiza", "Arambula", "Aramburo", "Arana", "Aranda", "Arango", "Araujo", "Arauz", "Araya", "Arballo", "Arbelaez", "Arboleda", "Arce", "Arceo", "Archer", "Archibeque", "Archila", "Archuleta", "Archuletta", "Arcia", "Arciga", "Arcila", "Arciniega", "Arcos", "Ardila", "Ardon", "Arebalo", "Arechiga", "Arellanes", "Arellano", "Arenas", "Arencibia", "Arenivas", "Ares", "Arevalo", "Arevalos", "Arguelles", "Arguello", "Argueta", "Arguijo", "Argumedo", "Arias", "Arismendez", "Arispe", "Arista", "Aristizabal", "Arita", "Ariza", "Arizaga", "Arizmendi", "Arizola", "Arizpe", "Arjona", "Armas", "Armendarez", "Armendariz", "Armenta", "Armijo", "Armstrong", "Arnold", "Arocha", "Arocho", "Aros", "Arrambide", "Arrazola", "Arreaga", "Arredondo", "Arreguin", "Arrellano", "Arreola", "Arriaga", "Arriaza", "Arrieta", "Arriola", "Arroyave", "Arroyo", "Arroyos", "Arteaga", "Artiaga", "Artiga", "Artiles", "Arvelo", "Arviso", "Arvizo", "Arvizu", "Arzaga", "Arzate", "Arzola", "Arzu", "Arzuaga", "Ascencio", "Asencio", "Ashley", "Astacio", "Astorga", "Astudillo", "Asuncion", "Atencio", "Atilano", "Atkins", "Atkinson", "Austin", "Avalos", "Avelar", "Avelino", "Avellaneda", "Avena", "Avendano", "Avery", "Avila", "Aviles", "Avilez", "Avilla", "Avina", "Avitia", "Ayala", "Aybar", "Ayers", "Ayon", "Azcona", "Azevedo", "Azpeitia", "Azua", "Baca", "Bachicha", "Badilla", "Badillo", "Baena", "Baerga", "Baez", "Baeza", "Bahena", "Bailey", "Bailon", "Baird", "Baires", "Baiza", "Baker", "Balandran", "Balboa", "Balbuena", "Balcazar", "Baldenegro", "Balderas", "Balderrama", "Baldonado", "Baldwin", "Ball", "Balladares", "Ballard", "Ballester", "Ballesteros", "Balleza", "Balli", "Balmaceda", "Baltazar", "Baltierra", "Baltodano", "Banales", "Banda", "Banderas", "Banegas", "Banks", "Banos", "Banuelos", "Baquero", "Bara", "Barahona", "Barajas", "Barba", "Barber", "Barberena", "Barbosa", "Barboza", "Barcelo", "Barcena", "Barcenas", "Barcia", "Barco", "Bardales", "Barela", "Bargas", "Barillas", "Barker", "Barnes", "Barnett", "Barocio", "Baron", "Barona", "Baros", "Barquero", "Barr", "Barra", "Barragan", "Barrales", "Barranco", "Barrantes", "Barraza", "Barreda", "Barreiro", "Barrera", "Barreras", "Barrero", "Barreto", "Barrett", "Barrientes", "Barrientez", "Barrientos", "Barriga", "Barrio", "Barrios", "Barron", "Barros", "Barroso", "Barry", "Bartlett", "Bartolo", "Barton", "Basaldua", "Basilio", "Basquez", "Bass", "Bastida", "Bastidas", "Basulto", "Basurto", "Batalla", "Bates", "Batista", "Batres", "Batrez", "Battle", "Bauer", "Bautista", "Bauza", "Baxter", "Bayardo", "Bayona", "Baza", "Bazaldua", "Bazan", "Beach", "Bean", "Beard", "Beas", "Beasley", "Beato", "Beauchamp", "Becerra", "Becerril", "Beck", "Becker", "Bedolla", "Bedoy", "Bedoya", "Bega", "Bejar", "Bejarano", "Belen", "Bell", "Bello", "Belloso", "Belman", "Belmares", "Belmonte", "Belmontes", "Beltran", "Beltre", "Benavente", "Benavides", "Benavidez", "Bencomo", "Bencosme", "Bender", "Benites", "Benitez", "Benito", "Benjamin", "Bennett", "Benson", "Bentley", "Benton", "Berber", "Berg", "Berger", "Berlanga", "Bermea", "Bermejo", "Bermeo", "Bermudes", "Bermudez", "Bernabe", "Bernal", "Bernard", "Bernardino", "Bernardo", "Berrio", "Berrios", "Berroa", "Berrones", "Berry", "Berumen", "Best", "Betances", "Betancourt", "Betancur", "Bianchi", "Bianco", "Bibian", "Bird", "Bishop", "Black", "Blackburn", "Blackwell", "Blair", "Blake", "Blancarte", "Blancas", "Blanchard", "Blanco", "Blandon", "Blankenship", "Blas", "Blea", "Bobadilla", "Bocanegra", "Bodden", "Bohorquez", "Bojorquez", "Bolanos", "Bolivar", "Bolton", "Bond", "Bonet", "Bonifacio", "Bonilla", "Bonillas", "Bonner", "Booker", "Boone", "Booth", "Borboa", "Borbon", "Borda", "Borges", "Borja", "Borjas", "Borjon", "Borquez", "Borrayo", "Borrego", "Borrero", "Borunda", "Bosch", "Bosque", "Bosquez", "Botello", "Botero", "Bowen", "Bowers", "Bowman", "Boyd", "Boyer", "Boyle", "Boza", "Bracamonte", "Bracamontes", "Bracero", "Bradford", "Bradley", "Bradshaw", "Brady", "Brambila", "Bran", "Branch", "Brand", "Brandon", "Brandt", "Braud", "Braun", "Bravo", "Bray", "Brea", "Breceda", "Brenes", "Brennan", "Bretado", "Breton", "Brewer", "Brewster", "Bribiesca", "Briceno", "Bridges", "Briggs", "Bright", "Bringas", "Briones", "Briseno", "Brito", "Britton", "Brizuela", "Brock", "Brooks", "Brown", "Browne", "Browning", "Bruce", "Bruno", "Bryan", "Bryant", "Buchanan", "Bucio", "Buck", "Buckley", "Buelna", "Buendia", "Bueno", "Buenrostro", "Buentello", "Bugarin", "Buitrago", "Buitron", "Bullock", "Burbano", "Burch", "Burciaga", "Burgess", "Burgos", "Burgueno", "Burke", "Burnett", "Burns", "Burrell", "Burrola", "Burruel", "Burton", "Bush", "Bustamante", "Bustillo", "Bustillos", "Bustos", "Butler", "Byrd", "Byrne", "Caamano", "Caba", "Cabada", "Caballero", "Caban", "Cabanas", "Cabanillas", "Cabello", "Cabeza", "Cabezas", "Cabral", "Cabrales", "Cabreja", "Cabrera", "Cabriales", "Caceres", "Cacho", "Cadavid", "Cadena", "Cadenas", "Cadiz", "Cahue", "Caicedo", "Cain", "Cajigas", "Cajina", "Caldera", "Calderon", "Caldwell", "Calero", "Calhoun", "Calix", "Calixto", "Callahan", "Calle", "Calleja", "Callejas", "Calleros", "Calles", "Calo", "Calva", "Calvario", "Calvillo", "Calvo", "Calzada", "Calzadilla", "Camacho", "Camara", "Camarena", "Camargo", "Camarillo", "Camberos", "Cambron", "Camejo", "Camero", "Cameron", "Camilo", "Camp", "Campa", "Campana", "Campas", "Campbell", "Campillo", "Campo", "Campos", "Campoverde", "Campusano", "Campuzano", "Canada", "Canal", "Canales", "Canas", "Cancel", "Canchola", "Cancino", "Candela", "Candelaria", "Candelario", "Candelas", "Candia", "Candido", "Canedo", "Canela", "Canez", "Canizales", "Canizalez", "Cannon", "Cano", "Canseco", "Cansino", "Cantero", "Cantillo", "Canto", "Canton", "Cantor", "Cantrell", "Cantu", "Canty", "Capellan", "Capetillo", "Capistran", "Capo", "Capote", "Carabajal", "Caraballo", "Carachure", "Carapia", "Caraveo", "Carbajal", "Carballo", "Carbonell", "Carcamo", "Card", "Cardenas", "Cardiel", "Cardona", "Cardosa", "Cardoso", "Cardoza", "Cardozo", "Careaga", "Carey", "Carias", "Carillo", "Carino", "Carlin", "Carlo", "Carlos", "Carlson", "Carmen", "Carmona", "Carnero", "Carney", "Caro", "Carpenter", "Carpio", "Carr", "Carranco", "Carranza", "Carrasco", "Carrasquillo", "Carrazco", "Carreno", "Carreon", "Carrera", "Carreras", "Carrero", "Carretero", "Carreto", "Carrillo", "Carrion", "Carrizal", "Carrizales", "Carrizosa", "Carroll", "Carson", "Cartagena", "Carter", "Caruso", "Carvajal", "Carvalho", "Carver", "Casado", "Casados", "Casanas", "Casanova", "Casares", "Casarez", "Casarrubias", "Casas", "Casasola", "Casaus", "Casco", "Case", "Caseres", "Casey", "Cash", "Casiano", "Casias", "Casillas", "Casimiro", "Casique", "Cassidy", "Casso", "Castaneda", "Castano", "Castanon", "Castelan", "Castellano", "Castellanos", "Castello", "Castellon", "Castelo", "Casteneda", "Castilla", "Castilleja", "Castillo", "Castillon", "Castor", "Castorena", "Castrejon", "Castrellon", "Castrillo", "Castrillon", "Castro", "Castruita", "Catala", "Catalan", "Catano", "Caudillo", "Cavazos", "Cayetano", "Cazares", "Cazarez", "Cdebaca", "Cea", "Ceballos", "Cebreros", "Cecena", "Cedano", "Cedeno", "Cedillo", "Cedillos", "Ceja", "Celaya", "Celedon", "Celestino", "Celis", "Cendejas", "Ceniceros", "Centeno", "Cepeda", "Cepero", "Cera", "Cerda", "Cereceres", "Cerezo", "Cerna", "Ceron", "Cerrato", "Cerrillo", "Cerritos", "Cerros", "Cervantes", "Cervantez", "Cervera", "Cesar", "Cesena", "Cespedes", "Cevallos", "Chacon", "Chagolla", "Chagoya", "Chaidez", "Chaires", "Chairez", "Chamberlain", "Chambers", "Chamorro", "Champion", "Chan", "Chandler", "Chang", "Chao", "Chapa", "Chaparro", "Chapman", "Charles", "Chase", "Chavana", "Chavarin", "Chavarria", "Chavera", "Chavero", "Chaves", "Chavez", "Chavira", "Chavis", "Chavoya", "Checo", "Chen", "Cherry", "Chevalier", "Chevere", "Chevez", "Chica", "Chicas", "Chico", "Childers", "Chin", "Chinchilla", "Chino", "Chiriboga", "Chirino", "Chirinos", "Chong", "Chow", "Christensen", "Christian", "Christopher", "Church", "Cibrian", "Cid", "Cienfuegos", "Cifuentes", "Cintron", "Ciprian", "Cipriano", "Cirilo", "Cirino", "Cisnero", "Cisneros", "Clara", "Clark", "Clarke", "Claro", "Claros", "Class", "Claudio", "Clavel", "Clavijo", "Clay", "Clayton", "Clement", "Clemente", "Clements", "Cline", "Cobarrubias", "Cobb", "Cobian", "Cobo", "Cobos", "Coca", "Cochran", "Coello", "Coffey", "Cohen", "Cole", "Coleman", "Colin", "Colina", "Colindres", "Coll", "Collado", "Collazo", "Collazos", "Collier", "Collins", "Colmenares", "Colmenero", "Colocho", "Colon", "Colorado", "Colunga", "Comacho", "Comas", "Combs", "Compean", "Compton", "Concepcion", "Concha", "Conchas", "Conde", "Conejo", "Conley", "Conner", "Connor", "Conrad", "Constancio", "Constante", "Constantino", "Constanza", "Consuegra", "Contrera", "Contreras", "Conway", "Cook", "Cooke", "Cooper", "Copado", "Copeland", "Cora", "Corado", "Coral", "Corchado", "Cordero", "Cordoba", "Cordon", "Cordova", "Corea", "Coreas", "Corella", "Coria", "Cornejo", "Cornelio", "Corniel", "Cornier", "Corona", "Coronado", "Coronel", "Corpus", "Corral", "Corrales", "Correa", "Corredor", "Corro", "Cortes", "Cortez", "Cortina", "Cortinas", "Corvera", "Corzo", "Cosio", "Cosme", "Coss", "Cossio", "Costa", "Costales", "Costello", "Costilla", "Cota", "Coto", "Cotto", "Cotton", "Courtney", "Covarrubias", "Cowan", "Cox", "Coy", "Craig", "Crane", "Crawford", "Crespin", "Crespo", "Criado", "Criollo", "Crisanto", "Crisostomo", "Crispin", "Cristobal", "Crosby", "Cross", "Cruz", "Cruzado", "Cuadra", "Cuadrado", "Cuadros", "Cuartas", "Cuba", "Cubas", "Cubero", "Cubias", "Cubillos", "Cuebas", "Cuellar", "Cuello", "Cuen", "Cuenca", "Cuervo", "Cuesta", "Cuestas", "Cueto", "Cueva", "Cuevas", "Cummings", "Cunningham", "Curbelo", "Curet", "Curiel", "Curry", "Curtis", "Custodio", "Dacosta", "Dailey", "Dale", "Dalton", "Daly", "Damian", "Daniel", "Daniels", "Dasilva", "Daugherty", "Davalos", "Davenport", "David", "Davidson", "Davies", "Davila", "Davilla", "Davis", "Dawson", "Day", "Daza", "Dealba", "Dean", "Deanda", "Dearmas", "Deavila", "Decasas", "Decastro", "Decker", "Dedios", "Degante", "Degollado", "Deharo", "Deherrera", "Dehoyos", "Dejesus", "Delacerda", "Delacruz", "Delafuente", "Delagarza", "Delaguila", "Delahoya", "Delahoz", "Delaluz", "Delamora", "Delaney", "Delangel", "Delao", "Delapaz", "Delapena", "Delara", "Delariva", "Delarocha", "Delarosa", "Delatorre", "Delavega", "Delbosque", "Delcampo", "Delcarmen", "Delcastillo", "Delcid", "Deleon", "Delfin", "Delgadillo", "Delgado", "Delira", "Delmoral", "Deloera", "Delosangeles", "Delosreyes", "Delosrios", "Delossantos", "Delpino", "Delpozo", "Delreal", "Delrio", "Delrosario", "Deltoro", "Deluna", "Delvalle", "Delvillar", "Dena", "Denis", "Deniz", "Dennis", "Denton", "Depaz", "Depena", "Deras", "Desantiago", "Desantos", "Desoto", "Desouza", "Devora", "Dial", "Dias", "Diaz", "Diazdeleon", "Dickerson", "Dickinson", "Dickson", "Diego", "Dieguez", "Diez", "Dillard", "Dillon", "Dilone", "Dimas", "Diosdado", "Disla", "Dixon", "Dodd", "Dodson", "Doe", "Dolores", "Domenech", "Domingo", "Domingues", "Dominguez", "Dominquez", "Donado", "Donahue", "Donaldson", "Donato", "Dones", "Donis", "Donjuan", "Donnelly", "Donoso", "Donovan", "Dorado", "Dorame", "Doran", "Dorantes", "Doria", "Dorsey", "Dorta", "Dossantos", "Dougherty", "Douglas", "Downey", "Downing", "Downs", "Doyle", "Dozal", "Drake", "Duarte", "Dubois", "Dubon", "Dudley", "Duenas", "Duenes", "Duenez", "Duffy", "Duke", "Dumas", "Duncan", "Dunlap", "Dunn", "Duprey", "Duque", "Duran", "Durand", "Durant", "Durazo", "Durham", "Duron", "Dutan", "Dye", "Dyer", "Eaton", "Echavarria", "Echevarria", "Echeverri", "Echeverria", "Echeverry", "Edwards", "Eguia", "Elenes", "Elias", "Elizalde", "Elizarraras", "Elizarraraz", "Elizondo", "Elliott", "Ellis", "Ellison", "Elvira", "Emerson", "Enamorado", "Encalada", "Encarnacion", "Encinas", "Encinias", "Enciso", "England", "English", "Enrique", "Enriques", "Enriquez", "Equihua", "Erazo", "Erickson", "Erives", "Ernandez", "Escajeda", "Escalante", "Escalera", "Escalona", "Escamilla", "Escandon", "Escarcega", "Escareno", "Escatel", "Escobar", "Escobedo", "Escorcia", "Escoto", "Escudero", "Escutia", "Espada", "Espaillat", "Espana", "Esparza", "Espejo", "Esperanza", "Espericueta", "Espin", "Espinal", "Espindola", "Espino", "Espinola", "Espinosa", "Espinoza", "Espiritu", "Espitia", "Esposito", "Esqueda", "Esquer", "Esquibel", "Esquilin", "Esquivel", "Esquivias", "Esteban", "Estela", "Estes", "Esteves", "Estevez", "Estrada", "Estrella", "Estremera", "Estupinan", "Euceda", "Eusebio", "Evangelista", "Evans", "Everett", "Ewing", "Fabela", "Fabian", "Facio", "Facundo", "Fajardo", "Falcon", "Fallon", "Familia", "Farfan", "Faria", "Farias", "Farinas", "Farley", "Farmer", "Farrell", "Farris", "Faulkner", "Fausto", "Favela", "Favila", "Faz", "Febles", "Febres", "Febus", "Federico", "Felan", "Feliciano", "Felipe", "Felix", "Feliz", "Ferguson", "Feria", "Ferman", "Fermin", "Fernandes", "Fernandez", "Fernando", "Ferrari", "Ferreira", "Ferreiro", "Ferrel", "Ferrell", "Ferrer", "Ferrera", "Ferreras", "Ferreyra", "Ferro", "Ferrufino", "Fiallo", "Fiallos", "Field", "Fields", "Fierro", "Fierros", "Figeroa", "Figueras", "Figueredo", "Figuereo", "Figueroa", "Fimbres", "Finch", "Finley", "Fischer", "Fisher", "Fitzgerald", "Fitzpatrick", "Flamenco", "Flecha", "Fleitas", "Fleites", "Fleming", "Fletcher", "Fletes", "Florencio", "Florentino", "Flores", "Florez", "Florian", "Flowers", "Floyd", "Flynn", "Foley", "Fong", "Fonseca", "Font", "Fontanez", "Fontes", "Forbes", "Ford", "Forero", "Forte", "Fortuna", "Foster", "Fournier", "Fowler", "Fox", "Fraga", "Fragoso", "Fraijo", "Fraire", "Franceschi", "Francis", "Francisco", "Franco", "Frank", "Franklin", "Franqui", "Fraser", "Fraticelli", "Frausto", "Frayre", "Frazier", "Fred", "Frederick", "Freeman", "Fregoso", "Freire", "Freitas", "French", "Fresquez", "Freyre", "Frias", "Friedman", "Fritz", "Frost", "Frutos", "Fry", "Frye", "Fuente", "Fuentes", "Fuentez", "Fuerte", "Fuertes", "Fulgencio", "Fuller", "Fulton", "Fundora", "Funes", "Funez", "Gabaldon", "Gabriel", "Gaeta", "Gaines", "Gaitan", "Galan", "Galarza", "Galaviz", "Galaz", "Galban", "Galdamez", "Galeana", "Galeano", "Galeas", "Galeno", "Galicia", "Galindez", "Galindo", "Gallagher", "Gallardo", "Gallego", "Gallegos", "Gallo", "Galloway", "Galo", "Galvan", "Galvez", "Galvin", "Galvis", "Gama", "Gamarra", "Gamble", "Gamboa", "Gamero", "Games", "Gamez", "Gamino", "Gandara", "Gandarilla", "Gaona", "Garate", "Garay", "Garces", "Garcia", "Garciagarcia", "Garcialopez", "Garciaperez", "Garcilazo", "Gardea", "Gardner", "Garduno", "Garfias", "Garibaldi", "Garibay", "Garica", "Garner", "Garnica", "Garrett", "Garrido", "Garriga", "Garrison", "Garsia", "Garza", "Garzon", "Gasca", "Gascon", "Gaspar", "Gastelum", "Gaston", "Gates", "Gatica", "Gaucin", "Gauna", "Gautier", "Gavidia", "Gavilanes", "Gavina", "Gaviria", "Gaxiola", "Gay", "Gaytan", "Gayton", "Genao", "Gentry", "George", "Gerardo", "Gerena", "German", "Germosen", "Geronimo", "Gervacio", "Gibbons", "Gibbs", "Gibson", "Gil", "Gilbert", "Giles", "Gill", "Gillespie", "Gilmore", "Gimenez", "Gines", "Giordano", "Giraldo", "Giron", "Glass", "Glenn", "Gloria", "Glover", "Godina", "Godines", "Godinez", "Godoy", "Goff", "Golden", "Goldstein", "Gomes", "Gomez", "Gongora", "Gonsales", "Gonsalez", "Gonsalves", "Gonzaga", "Gonzales", "Gonzalez", "Good", "Goodman", "Goodwin", "Gordillo", "Gordon", "Goris", "Gorman", "Gotay", "Goto", "Gould", "Govea", "Goytia", "Grace", "Gracia", "Graciano", "Gradilla", "Grado", "Graham", "Grajales", "Grajeda", "Gramajo", "Granada", "Granado", "Granados", "Granda", "Grande", "Granillo", "Grant", "Grau", "Graves", "Gray", "Graziano", "Greco", "Green", "Greene", "Greer", "Gregorio", "Gregory", "Griego", "Griffin", "Griffith", "Grijalva", "Grillo", "Grimaldo", "Grimes", "Grisales", "Gross", "Grullon", "Guadalupe", "Guadamuz", "Guadarrama", "Guadiana", "Guajardo", "Guaman", "Guandique", "Guardado", "Guardiola", "Gudiel", "Gudino", "Guebara", "Guel", "Guereca", "Guerra", "Guerrero", "Guevara", "Guido", "Guijarro", "Guijosa", "Guillen", "Guillermo", "Guitron", "Guity", "Guizar", "Gurrola", "Gurule", "Gusman", "Guthrie", "Gutierres", "Gutierrez", "Guy", "Guzman", "Haas", "Hahn", "Hale", "Haley", "Hall", "Hamilton", "Hammond", "Hampton", "Hancock", "Hanna", "Hansen", "Hanson", "Hard", "Hardin", "Harding", "Hardy", "Harmon", "Haro", "Haros", "Harper", "Harrell", "Harrington", "Harris", "Harrison", "Hart", "Hartman", "Harvey", "Hastings", "Hawkins", "Hayden", "Hayes", "Haynes", "Hays", "Heath", "Hebert", "Henandez", "Henao", "Henderson", "Hendricks", "Hendrickson", "Hendrix", "Henriquez", "Henry", "Hensley", "Henson", "Herandez", "Heras", "Herbert", "Hercules", "Heredia", "Herman", "Hermida", "Hermosillo", "Hernandes", "Hernandez", "Herrada", "Herrejon", "Herrera", "Herrero", "Herring", "Herron", "Hess", "Hewitt", "Hickey", "Hickman", "Hicks", "Hidalgo", "Hidrogo", "Higareda", "Higgins", "Higuera", "Hilario", "Hill", "Hilton", "Hincapie", "Hines", "Hinojos", "Hinojosa", "Hipolito", "Hobbs", "Hodge", "Hodges", "Hodgson", "Hoffman", "Hogan", "Holden", "Holder", "Holguin", "Holland", "Holloway", "Holman", "Holmes", "Holt", "Hood", "Hooper", "Hoover", "Hopkins", "Hopper", "Horn", "Horne", "Horta", "Horton", "House", "Houston", "Howard", "Howe", "Howell", "Hoyos", "Huaman", "Huante", "Hubbard", "Huber", "Hudson", "Huerta", "Huertas", "Huesca", "Huezo", "Huff", "Huffman", "Hughes", "Hugo", "Huitron", "Huizar", "Hull", "Humphrey", "Hunt", "Hunter", "Hurley", "Huron", "Hurst", "Hurtado", "Hutchinson", "Hyde", "Ibanez", "Ibarra", "Iglesias", "Ignacio", "Illescas", "Inda", "Infante", "Ingram", "Iniguez", "Inoa", "Inocencio", "Interiano", "Inzunza", "Ipina", "Iracheta", "Iraheta", "Iriarte", "Irias", "Iribe", "Irigoyen", "Irizarry", "Irwin", "Isaac", "Isais", "Isaza", "Isidoro", "Isidro", "Islas", "Iturralde", "Izaguirre", "Izquierdo", "Jacinto", "Jackson", "Jacob", "Jacobo", "Jacobs", "Jacobson", "Jacome", "Jacques", "Jacquez", "Jaime", "Jaimes", "Jaimez", "Jalomo", "James", "Jaques", "Jaquez", "Jara", "Jaramillo", "Jarquin", "Jarvis", "Jaso", "Jasso", "Jauregui", "Javier", "Jefferson", "Jenkins", "Jennings", "Jensen", "Jerez", "Jeronimo", "Jesus", "Jimenes", "Jimenez", "Jiminez", "Jiron", "Joaquin", "John", "Johns", "Johnson", "Johnston", "Jojola", "Jones", "Jordan", "Jorge", "Jose", "Joseph", "Jovel", "Joya", "Juan", "Juarbe", "Juarez", "Julian", "Junco", "Jurado", "Jusino", "Justiniano", "Justo", "Kaiser", "Kane", "Kaplan", "Katz", "Kaufman", "Keith", "Keller", "Kelley", "Kelly", "Kemp", "Kennedy", "Kent", "Kerr", "Key", "Keyes", "Khan", "Kim", "King", "Kinney", "Kirby", "Kirk", "Klein", "Kline", "Knapp", "Knight", "Knowles", "Knox", "Koch", "Kramer", "Krause", "Laboy", "Labra", "Labrada", "Labrador", "Lacayo", "Lafuente", "Lago", "Lagos", "Laguna", "Lagunas", "Lagunes", "Lainez", "Lajara", "Lake", "Lam", "Lamadrid", "Lamar", "Lamas", "Lamb", "Lambert", "Lamboy", "Lancaster", "Landa", "Landaverde", "Landeros", "Landin", "Landry", "Lane", "Lang", "Langarica", "Lange", "Lantigua", "Lanuza", "Lanza", "Lao", "Laporte", "Lara", "Laracuente", "Laredo", "Lares", "Larez", "Larin", "Larios", "Larosa", "Larranaga", "Larrea", "Larsen", "Larson", "Lasalle", "Lascano", "Lasso", "Lastra", "Latorre", "Lau", "Laureano", "Laurel", "Lavin", "Lawrence", "Lawson", "Lay", "Lazalde", "Lazaro", "Lazcano", "Lazo", "Lazos", "Leach", "Leal", "Leandro", "Leanos", "Leblanc", "Lebron", "Lechuga", "Ledesma", "Ledezma", "Lee", "Legaspi", "Leger", "Leguizamo", "Leija", "Leiva", "Lema", "Lemon", "Lemos", "Lemus", "Leo", "Leon", "Leonard", "Leonardo", "Leos", "Lepe", "Lerma", "Leslie", "Lester", "Levario", "Levine", "Levy", "Lewis", "Ley", "Leyba", "Leyva", "Lezama", "Lezcano", "Licea", "Licon", "Licona", "Liendo", "Liera", "Lima", "Limas", "Limon", "Limones", "Linan", "Linares", "Linarez", "Lind", "Lindo", "Lindsay", "Lindsey", "Lino", "Lira", "Liranzo", "Liriano", "Liscano", "Little", "Livingston", "Liz", "Lizama", "Lizaola", "Lizardi", "Lizardo", "Lizarraga", "Lizcano", "Llamas", "Llanas", "Llanes", "Llano", "Llanos", "Llerena", "Llorens", "Lloyd", "Loa", "Loaiza", "Loayza", "Lobato", "Lobo", "Lobos", "Lockhart", "Loera", "Loeza", "Logan", "Loja", "Lomas", "Lombardo", "Lombera", "Lomeli", "Lona", "Londono", "Long", "Longoria", "Loor", "Lopera", "Lopes", "Lopez", "Lopezgarcia", "Lopezhernandez", "Lopezlopez", "Lopezmartinez", "Lora", "Lord", "Loredo", "Lorenzana", "Lorenzo", "Loreto", "Losada", "Losano", "Losoya", "Louis", "Lovato", "Love", "Lowe", "Lowery", "Loya", "Loyola", "Loza", "Lozada", "Lozano", "Lozoya", "Lua", "Lucas", "Lucatero", "Lucena", "Lucero", "Luciano", "Lucio", "Luera", "Lueras", "Luevano", "Luevanos", "Lugo", "Luis", "Lujan", "Lujano", "Lule", "Lumbreras", "Luna", "Lund", "Lung", "Lupercio", "Lupian", "Luque", "Luquin", "Lutz", "Luviano", "Luz", "Lynch", "Lynn", "Lyons", "Macareno", "Macario", "MacDonald", "Macedo", "Machado", "Machin", "Machuca", "Macias", "Maciel", "Mack", "Mackey", "Madden", "Madera", "Madero", "Madrid", "Madrigal", "Madril", "Madriz", "Madueno", "Maes", "Maese", "Maestas", "Maestre", "Maez", "Magallan", "Magallanes", "Magallanez", "Magallon", "Magana", "Magdaleno", "Mahoney", "Mairena", "Maisonet", "Majano", "Malacara", "Malagon", "Malave", "Maldonado", "Malone", "Malpica", "Maltez", "Maltos", "Mancera", "Mancha", "Mancia", "Mancias", "Mancilla", "Mancillas", "Mancinas", "Mandujano", "Mangual", "Manjarrez", "Mann", "Manning", "Manon", "Manrique", "Manriquez", "Mansilla", "Manso", "Mantilla", "Manuel", "Manzanares", "Manzanarez", "Manzano", "Manzo", "Mar", "Maradiaga", "Maravilla", "Marban", "Marcano", "Marcelino", "Marcelo", "Marchan", "Marchena", "Marcia", "Marcial", "Marcos", "Marcus", "Marenco", "Marentes", "Mares", "Marez", "Maria", "Mariano", "Marin", "Marine", "Marines", "Marinez", "Marino", "Mariscal", "Marks", "Marmol", "Marmolejo", "Marmolejos", "Marques", "Marquez", "Marquina", "Marrero", "Marron", "Marroquin", "Marrufo", "Marrujo", "Marsh", "Marshall", "Marta", "Marte", "Martel", "Martell", "Martes", "Marti", "Martin", "Martindelcampo", "Martines", "Martinez", "Martino", "Martins", "Martir", "Marty", "Marzan", "Mas", "Mascarenas", "Mascorro", "Masias", "Mason", "Massa", "Massey", "Mata", "Matamoros", "Mateo", "Mateos", "Mathews", "Mathis", "Matias", "Matos", "Matta", "Matthews", "Mattos", "Maturino", "Matus", "Matute", "Mauricio", "Maxwell", "May", "Maya", "Mayen", "Mayer", "Mayes", "Maynard", "Maynes", "Maynez", "Mayo", "Mayor", "Mayoral", "Mayorga", "Mayorquin", "Mays", "Maysonet", "Maza", "Mazariego", "Mazariegos", "Mazon", "McAllister", "McBride", "McCabe", "McCall", "McCann", "McCarthy", "McCarty", "McClain", "McClure", "McConnell", "McCormick", "McCoy", "McCullough", "McDaniel", "McDermott", "McDonald", "McDowell", "McFarland", "McGee", "McGrath", "McGuire", "McIntosh", "McIntyre", "McKay", "McKee", "McKenna", "McKenzie", "McKinney", "McLaughlin", "McLean", "McLeod", "McMahon", "McMillan", "McNeil", "McPherson", "Meadows", "Medeiros", "Medel", "Medellin", "Medero", "Mederos", "Medina", "Medrano", "Mejia", "Mejias", "Mejorado", "Melara", "Melchor", "Melecio", "Melena", "Melendes", "Melendez", "Melendrez", "Melero", "Melgar", "Melgarejo", "Melgoza", "Mellado", "Mello", "Melo", "Melton", "Membreno", "Mena", "Menchaca", "Mendes", "Mendez", "Mendieta", "Mendiola", "Mendivil", "Mendizabal", "Mendosa", "Mendoza", "Menendez", "Meneses", "Menjivar", "Mera", "Meraz", "Mercado", "Merced", "Mercedes", "Mercer", "Merchan", "Merida", "Merino", "Merlo", "Merlos", "Mero", "Merrill", "Merritt", "Mesa", "Mesta", "Mestas", "Mestre", "Meyer", "Meyers", "Meza", "Michael", "Michel", "Middleton", "Mier", "Miera", "Miguel", "Mijangos", "Mijares", "Milan", "Milanes", "Miles", "Milian", "Milla", "Millan", "Miller", "Milligan", "Mills", "Mina", "Minaya", "Minero", "Minjares", "Minjarez", "Minor", "Mira", "Mirabal", "Miramontes", "Miranda", "Mireles", "Mirelez", "Miron", "Mitchell", "Moctezuma", "Modesto", "Mojarro", "Mojica", "Molano", "Molina", "Molinar", "Monarrez", "Moncada", "Moncayo", "Moncivais", "Mondragon", "Monegro", "Monge", "Monjaras", "Monjaraz", "Monje", "Monreal", "Monroe", "Monroy", "Monrreal", "Monrroy", "Monsalve", "Monserrate", "Monsivais", "Montalbo", "Montalvan", "Montalvo", "Montana", "Montanez", "Montano", "Montas", "Monte", "Monteagudo", "Montealegre", "Montejano", "Montejo", "Montellano", "Montelongo", "Montemayor", "Montenegro", "Monteon", "Montero", "Monterrosa", "Monterroso", "Monterroza", "Montes", "Montesdeoca", "Montesino", "Montesinos", "Montez", "Montgomery", "Montiel", "Montijo", "Montilla", "Montoya", "Montufar", "Monzon", "Moody", "Moon", "Moore", "Mora", "Morado", "Moraga", "Morales", "Moralez", "Moran", "Morano", "Morataya", "Moreira", "Morejon", "Morel", "Morell", "Morelos", "Morena", "Moreno", "Morera", "Moreta", "Morfin", "Morga", "Morgado", "Morgan", "Mori", "Morillo", "Morin", "Moro", "Morocho", "Moron", "Morones", "Moronta", "Morquecho", "Morris", "Morrison", "Morrow", "Morse", "Morton", "Morua", "Moscoso", "Moses", "Mosley", "Mosqueda", "Mosquera", "Moss", "Mota", "Motta", "Moya", "Muela", "Mueller", "Mujica", "Mulero", "Mullen", "Muller", "Mullins", "Mundo", "Muneton", "Mungia", "Munguia", "Muniz", "Munos", "Munoz", "Muralles", "Muratalla", "Murcia", "Murga", "Murguia", "Muriel", "Murillo", "Muro", "Murphy", "Murray", "Murrieta", "Murrietta", "Muzquiz", "Myers", "Nadal", "Najar", "Najarro", "Najera", "Nambo", "Nanez", "Napoles", "Naranjo", "Narez", "Narvaez", "Narvaiz", "Nash", "Natal", "Natera", "Natividad", "Nava", "Navar", "Navarette", "Navarrete", "Navarrette", "Navarro", "Navas", "Navedo", "Navejar", "Navejas", "Navia", "Nazario", "Neal", "Negrete", "Negrin", "Negron", "Neira", "Nelson", "Neri", "Neria", "Nerio", "Nevares", "Nevarez", "Newell", "Newman", "Newton", "Neyra", "Nguyen", "Nicasio", "Nicholas", "Nichols", "Nicholson", "Nicolas", "Niebla", "Nieblas", "Nielsen", "Nieto", "Nieves", "Nila", "Nino", "Nixon", "Noa", "Noble", "Noboa", "Nodal", "Nodarse", "Noel", "Nogales", "Noguera", "Nogueras", "Noguez", "Nolan", "Nolasco", "Noriega", "Norman", "Norris", "Norton", "Nova", "Novak", "Novello", "Novelo", "Novo", "Novoa", "Noyola", "Nuncio", "Nunes", "Nunez", "Nungaray", "Nuno", "O'Brien", "O'Connell", "O'Connor", "O'Dell", "O'Donnell", "O'Hara", "O'Neal", "O'Neil", "O'Neill", "Obando", "Obeso", "Obregon", "Ocampo", "Ocana", "Ocanas", "Ocasio", "Ocegueda", "Oceguera", "Ochoa", "Ocon", "Odell", "Ogando", "Ogas", "Ojeda", "Olague", "Olalde", "Olan", "Olarte", "Olavarria", "Olaya", "Olea", "Olgin", "Olguin", "Oliva", "Olivar", "Olivares", "Olivarez", "Olivarria", "Olivas", "Oliveira", "Olivencia", "Oliver", "Olivera", "Oliveras", "Olivero", "Oliveros", "Olivieri", "Olivo", "Olivos", "Olmeda", "Olmedo", "Olmo", "Olmos", "Olsen", "Olson", "Olveda", "Olvera", "Onate", "Onofre", "Ontiveros", "Oquendo", "Orantes", "Ordaz", "Ordones", "Ordonez", "Orduna", "Orduno", "Orea", "Oregel", "Oregon", "Orejel", "Orellana", "Orellano", "Orengo", "Orihuela", "Orlando", "Ornelas", "Orona", "Oropeza", "Oros", "Orosco", "Orozco", "Orr", "Orrego", "Orta", "Ortega", "Ortegon", "Ortez", "Ortis", "Ortiz", "Ortuno", "Osborn", "Osborne", "Osegueda", "Oseguera", "Osoria", "Osorio", "Osornio", "Osorno", "Ospina", "Osuna", "Otano", "Otero", "Ovalle", "Ovalles", "Ovando", "Oviedo", "Owen", "Owens", "Oyervides", "Oyola", "Ozuna", "Pablo", "Pabon", "Pace", "Pacheco", "Padilla", "Padin", "Padro", "Padron", "Padua", "Paez", "Pagan", "Page", "Paiz", "Palacio", "Palacios", "Palafox", "Palencia", "Palermo", "Pallares", "Palma", "Palmer", "Palmerin", "Palomar", "Palomares", "Palomarez", "Palomera", "Palomino", "Palomo", "Palos", "Panameno", "Pando", "Panduro", "Paniagua", "Pantaleon", "Pantoja", "Panuco", "Parada", "Paramo", "Pardo", "Paredes", "Paredez", "Pareja", "Parga", "Pargas", "Paris", "Park", "Parker", "Parks", "Parra", "Parrales", "Parras", "Parrilla", "Parrish", "Parsons", "Partida", "Pascual", "Pasillas", "Pastor", "Pastrana", "Patel", "Patino", "Patlan", "Patricio", "Patrick", "Patron", "Patterson", "Patton", "Paucar", "Paul", "Paula", "Paulin", "Paulino", "Pavia", "Pavon", "Payan", "Payano", "Payne", "Paz", "Pazmino", "Pazos", "Pearce", "Pearson", "Pech", "Pecina", "Peck", "Pedraza", "Pedregon", "Pedro", "Pedrosa", "Pedroso", "Pedroza", "Peguero", "Peinado", "Pelaez", "Pelayo", "Pellot", "Pena", "Penafiel", "Penaloza", "Penaranda", "Penate", "Peng", "Penn", "Pennington", "Penuelas", "Pequeno", "Pera", "Perales", "Peralez", "Peralta", "Peraza", "Perdomo", "Perea", "Pereda", "Peregrino", "Pereida", "Pereira", "Perera", "Peres", "Pereyra", "Perez", "Perezgarcia", "Perkins", "Perla", "Perry", "Person", "Peru", "Pescador", "Pesina", "Pesqueira", "Peters", "Petersen", "Peterson", "Petty", "Phelps", "Phillips", "Picado", "Picasso", "Picazo", "Piceno", "Pichardo", "Pico", "Picon", "Piedra", "Piedrahita", "Pierce", "Pierre", "Pierson", "Pimentel", "Pimienta", "Pina", "Pinal", "Pinales", "Pineda", "Pinedo", "Pineiro", "Pinela", "Pinero", "Pinilla", "Pino", "Pinon", "Pintado", "Pinto", "Pintor", "Pinzon", "Pita", "Pitre", "Pittman", "Pitts", "Pizana", "Pizano", "Pizarro", "Pla", "Placencia", "Placido", "Planas", "Plancarte", "Plascencia", "Plasencia", "Plata", "Platero", "Plaza", "Plazola", "Pleitez", "Pliego", "Poblano", "Polanco", "Pollard", "Pollock", "Polo", "Pomales", "Pompa", "Ponce", "Poncedeleon", "Ponciano", "Pons", "Pool", "Poole", "Pope", "Popoca", "Porras", "Portal", "Portalatin", "Portales", "Portela", "Porter", "Portilla", "Portillo", "Porto", "Portugal", "Posada", "Posadas", "Potter", "Potts", "Poveda", "Powell", "Powers", "Pozo", "Pozos", "Prada", "Prado", "Prats", "Pratt", "Pratts", "Preciado", "Presas", "Preston", "Price", "Priego", "Prieto", "Prince", "Proano", "Proctor", "Provencio", "Prudencio", "Pruitt", "Pruneda", "Puebla", "Puello", "Puente", "Puentes", "Puerta", "Puerto", "Puga", "Pugh", "Puig", "Pujol", "Pujols", "Pulgarin", "Pulido", "Puma", "Pupo", "Quesada", "Quevedo", "Quezada", "Quijada", "Quijano", "Quijas", "Quiles", "Quinn", "Quinones", "Quinonez", "Quintana", "Quintanar", "Quintanilla", "Quintela", "Quintero", "Quinteros", "Quinto", "Quirarte", "Quirino", "Quiroa", "Quiroga", "Quiros", "Quiroz", "Quispe", "Quito", "Quizhpi", "Rabadan", "Rabago", "Rada", "Radillo", "Rael", "Rafael", "Raigoza", "Ramales", "Ramires", "Ramirez", "Ramon", "Ramos", "Ramsey", "Randall", "Randolph", "Rangel", "Rankin", "Rascon", "Rasmussen", "Rauda", "Ravelo", "Ray", "Raya", "Rayas", "Raygoza", "Raymond", "Raymundo", "Rayo", "Rayos", "Razo", "Rea", "Read", "Real", "Rebollar", "Rebolledo", "Rebollo", "Recendez", "Recendiz", "Recinos", "Recio", "Redondo", "Reed", "Reese", "Reeves", "Regalado", "Regino", "Rego", "Reid", "Reilly", "Reina", "Reinoso", "Remigio", "Renderos", "Rendon", "Rengifo", "Renovato", "Rentas", "Renteria", "Requena", "Resendez", "Resendiz", "Resto", "Restrepo", "Reta", "Retana", "Reveles", "Revilla", "Revuelta", "Rey", "Reyes", "Reyez", "Reyna", "Reynaga", "Reynolds", "Reynosa", "Reynoso", "Reza", "Rhodes", "Ribas", "Ribera", "Ricardo", "Rice", "Rich", "Richard", "Richards", "Richardson", "Richmond", "Richter", "Rico", "Riddle", "Riera", "Riggs", "Rijo", "Riley", "Rincon", "Rincones", "Riojas", "Rios", "Riquelme", "Ritchie", "Rivadeneira", "Rivas", "Rivera", "Rivero", "Riveron", "Riveros", "Rivers", "Riviera", "Rizo", "Rizzo", "Roa", "Roach", "Robaina", "Robbins", "Roberson", "Robert", "Roberto", "Roberts", "Robertson", "Robinson", "Robledo", "Roblero", "Robles", "Roca", "Rocha", "Roche", "Rochin", "Rodarte", "Rodas", "Rodela", "Rodgers", "Rodriges", "Rodrigue", "Rodrigues", "Rodriguez", "Rodriques", "Rodriquez", "Rogel", "Rogers", "Rogue", "Roig", "Rojas", "Rojo", "Roldan", "Rollins", "Rolon", "Roman", "Romano", "Romeo", "Romero", "Romo", "Ron", "Rondon", "Ronquillo", "Roque", "Rosa", "Rosado", "Rosales", "Rosalez", "Rosario", "Rosas", "Rose", "Rosell", "Rosendo", "Rosero", "Rosete", "Rosiles", "Rosillo", "Ross", "Rossi", "Rostro", "Roth", "Rovira", "Rowe", "Rowland", "Roy", "Roybal", "Rua", "Ruacho", "Ruan", "Ruano", "Rubalcaba", "Rubalcava", "Rubi", "Rubin", "Rubio", "Ruby", "Rueda", "Ruedas", "Ruelas", "Rufino", "Ruis", "Ruiz", "Rush", "Russell", "Russo", "Rutz", "Ruvalcaba", "Ruybal", "Ryan", "Saavedra", "Sabala", "Sabater", "Sabedra", "Sabillon", "Sabino", "Sada", "Saenz", "Saez", "Sagastume", "Sahagun", "Sainz", "Sais", "Saiz", "Sala", "Salado", "Salais", "Salaiz", "Salamanca", "Salas", "Salasar", "Salaz", "Salazar", "Salce", "Salceda", "Salcedo", "Salcido", "Saldana", "Saldarriaga", "Saldierna", "Saldivar", "Sales", "Salgado", "Salguero", "Salinas", "Salmeron", "Salmon", "Salomon", "Salto", "Salvador", "Salvatierra", "Samaniego", "Samano", "Samayoa", "Sambrano", "Samora", "Sampson", "Samudio", "Samuel", "Sanabria", "Sanches", "Sanchez", "Sancho", "Sandate", "Sanders", "Sandobal", "Sandoval", "Sanford", "Sanjuan", "Sanmartin", "Sanmiguel", "Sanroman", "Santa", "Santacruz", "Santamaria", "Santana", "Santander", "Santayana", "Santiago", "Santibanez", "Santiesteban", "Santillan", "Santillana", "Santillanes", "Santillano", "Santini", "Santistevan", "Santizo", "Santo", "Santos", "Santoya", "Santoyo", "Sanz", "Sapien", "Sarabia", "Saragosa", "Sarate", "Saravia", "Sardina", "Sardinas", "Sargent", "Sarinana", "Sarmiento", "Sarria", "Sauceda", "Saucedo", "Saunders", "Sauseda", "Sausedo", "Savage", "Savala", "Savedra", "Sawyer", "Schaefer", "Schmidt", "Schmitt", "Schneider", "Schroeder", "Schultz", "Schwartz", "Scott", "Sears", "Sebastian", "Seda", "Sedano", "Sedillo", "Segarra", "Segovia", "Segoviano", "Segui", "Segundo", "Segura", "Sellers", "Selva", "Semidey", "Sena", "Sencion", "Sendejas", "Sendejo", "Sepeda", "Sepulveda", "Sequeira", "Serafin", "Serano", "Serda", "Sermeno", "Serna", "Serpa", "Serpas", "Serra", "Serrano", "Serrata", "Serrato", "Serratos", "Servantes", "Servellon", "Servin", "Sesma", "Severino", "Sevilla", "Sexton", "Shaffer", "Shannon", "Sharp", "Shaw", "Shea", "Shelton", "Shepard", "Shepherd", "Sheppard", "Sherman", "Sherwood", "Shields", "Short", "Sias", "Sibrian", "Sicairos", "Sida", "Sierra", "Sifuentes", "Sigala", "Siguenza", "Silguero", "Sillas", "Siller", "Silva", "Silvas", "Silveira", "Silver", "Silvera", "Silverio", "Silvestre", "Simental", "Simmons", "Simon", "Simons", "Simpson", "Sims", "Sinclair", "Singh", "Singleton", "Siordia", "Siqueiros", "Sisneros", "Sixtos", "Skinner", "Slater", "Sloan", "Small", "Smith", "Snow", "Snyder", "Soares", "Soberanes", "Soberanis", "Socarras", "Sola", "Solache", "Solano", "Solares", "Soler", "Solis", "Solivan", "Soliz", "Solomon", "Solorio", "Solorzano", "Soltero", "Somarriba", "Somoza", "Sorensen", "Soria", "Soriano", "Sorto", "Sosa", "Sostre", "Sotello", "Sotelo", "Soto", "Sotolongo", "Sotomayor", "Sousa", "Souza", "Soza", "Sparks", "Spears", "Spence", "Spencer", "Springer", "Stafford", "Stanley", "Stanton", "Stark", "Starr", "Steele", "Stein", "Stephens", "Stephenson", "Sterling", "Stevens", "Stevenson", "Stewart", "Stokes", "Stone", "Stout", "Strickland", "Strong", "Stuart", "Suares", "Suarez", "Suazo", "Subia", "Suero", "Sullivan", "Summers", "Suniga", "Suriel", "Surita", "Sustaita", "Sutherland", "Sutton", "Swanson", "Sweeney", "Sweet", "Sylva", "Tabares", "Tabarez", "Taboada", "Tabora", "Taborda", "Tadeo", "Tafolla", "Tafoya", "Tagle", "Talamante", "Talamantes", "Talamantez", "Talavera", "Tamayo", "Tamez", "Tanguma", "Tanner", "Tapanes", "Tapia", "Tarango", "Tarin", "Tate", "Tatum", "Tavares", "Tavarez", "Tavera", "Taveras", "Taylor", "Tejada", "Tejeda", "Tejera", "Telles", "Tellez", "Tello", "Tena", "Teniente", "Tenorio", "Teran", "Tercero", "Terrazas", "Terrell", "Terrero", "Terriquez", "Terrones", "Terry", "Texidor", "Then", "Thomas", "Thompson", "Thornton", "Thurman", "Tiburcio", "Ticas", "Tienda", "Tijerina", "Tinajero", "Tineo", "Tinoco", "Tirado", "Tiscareno", "Tlatelpa", "Tobar", "Tobias", "Tobin", "Tobon", "Todd", "Toledo", "Tolentino", "Tomas", "Tomlinson", "Tonche", "Topete", "Toral", "Toribio", "Toro", "Torralba", "Torre", "Torres", "Torrez", "Torrico", "Toscano", "Tostado", "Tovar", "Townsend", "Tracy", "Tran", "Travieso", "Travis", "Trejo", "Trejos", "Treto", "Trevino", "Trevizo", "Triana", "Trigo", "Trigueros", "Trillo", "Trinidad", "Tristan", "Trivino", "Troche", "Trochez", "Troncoso", "Trujillo", "Tucker", "Turcios", "Turner", "Turrubiartes", "Turrubiates", "Tyler", "Ugalde", "Ugarte", "Ulibarri", "Ulloa", "Umana", "Umanzor", "Underwood", "Unzueta", "Uranga", "Urban", "Urbano", "Urbina", "Urdiales", "Urena", "Urenda", "Ureno", "Ureste", "Uresti", "Urgiles", "Uriarte", "Urias", "Uribe", "Uriegas", "Urieta", "Urioste", "Uriostegui", "Urizar", "Urquidez", "Urquidi", "Urquilla", "Urquiza", "Urquizo", "Urrea", "Urrutia", "Urzua", "Uvalle", "Vaca", "Valadez", "Valcarcel", "Valderas", "Valderrama", "Valdes", "Valdespino", "Valdez", "Valdivia", "Valdivieso", "Valdiviezo", "Valdovinos", "Vale", "Valencia", "Valenciano", "Valente", "Valentin", "Valentine", "Valenzuela", "Valera", "Valeriano", "Valerio", "Valero", "Valiente", "Valladares", "Valladolid", "Valle", "Vallecillo", "Vallejo", "Vallejos", "Valles", "Vallez", "Vallin", "Valtierra", "Valverde", "Vance", "Vanegas", "Vaquera", "Vaquero", "Vara", "Varela", "Vargas", "Varona", "Vasallo", "Vasques", "Vasquez", "Vaughan", "Vaughn", "Vazguez", "Vazques", "Vazquez", "Vega", "Vegas", "Vejar", "Vela", "Velaquez", "Velarde", "Velasco", "Velasques", "Velasquez", "Velazco", "Velazquez", "Velez", "Veliz", "Veloz", "Vences", "Venegas", "Vento", "Ventura", "Venzor", "Vera", "Veras", "Verastegui", "Verde", "Verdejo", "Verdin", "Verdugo", "Verdusco", "Verduzco", "Vergara", "Vialpando", "Viana", "Vicario", "Vicencio", "Vicente", "Victor", "Victoria", "Victoriano", "Victorino", "Victorio", "Vicuna", "Vidal", "Vidales", "Vidana", "Vidaurri", "Vides", "Vidrio", "Vieira", "Vielma", "Viera", "Vierra", "Vieyra", "Vigil", "Vigo", "Vila", "Vilches", "Vilchez", "Vilchis", "Villa", "Villacis", "Villacorta", "Villada", "Villafan", "Villafana", "Villafane", "Villafranca", "Villafranco", "Villafuerte", "Villagomez", "Villagran", "Villagrana", "Villalba", "Villalobos", "Villalon", "Villalona", "Villalovos", "Villalpando", "Villalta", "Villalva", "Villalvazo", "Villamar", "Villamil", "Villaneda", "Villanueva", "Villar", "Villareal", "Villarreal", "Villarroel", "Villarruel", "Villasana", "Villasenor", "Villatoro", "Villaverde", "Villavicencio", "Villeda", "Villegas", "Villela", "Villescas", "Villicana", "Viloria", "Vinas", "Vincent", "Viramontes", "Virella", "Virgen", "Viruet", "Viscarra", "Vital", "Vitela", "Viteri", "Vivanco", "Vivar", "Vivas", "Vivero", "Viveros", "Vives", "Vizcaino", "Vizcarra", "Vizcarrondo", "Vogel", "Wade", "Wagner", "Walker", "Wall", "Wallace", "Walls", "Walsh", "Walter", "Walters", "Walton", "Ward", "Ware", "Warner", "Warren", "Washington", "Waters", "Watkins", "Watson", "Watts", "Weaver", "Webb", "Webber", "Weber", "Webster", "Weeks", "Weiss", "Welch", "Wells", "Welsh", "Wences", "Werner", "West", "Wheeler", "Whitaker", "White", "Whitehead", "Whitney", "Wiggins", "Wilcox", "Wilder", "Wiley", "Wilkerson", "Wilkins", "Wilkinson", "Williams", "Williamson", "Willis", "Wills", "Wilson", "Winter", "Winters", "Wise", "Witt", "Wolf", "Wolfe", "Wong", "Wood", "Woodard", "Woods", "Woodward", "Workman", "Wright", "Wyatt", "Yanes", "Yanez", "Yates", "Ybanez", "Ybarra", "Yebra", "Yee", "Yepes", "Yepez", "Yepiz", "Yerena", "Yescas", "Yniguez", "York", "Young", "Yslas", "Yzaguirre", "Zabala", "Zacarias", "Zagal", "Zalazar", "Zaldana", "Zaldivar", "Zamarripa", "Zamarron", "Zambrana", "Zambrano", "Zamora", "Zamorano", "Zamudio", "Zapata", "Zapien", "Zaragosa", "Zaragoza", "Zarate", "Zarazua", "Zarco", "Zatarain", "Zavala", "Zavaleta", "Zavalza", "Zayas", "Zazueta", "Zea", "Zegarra", "Zelada", "Zelaya", "Zeledon", "Zendejas", "Zenteno", "Zepeda", "Zermeno", "Zertuche", "Zetina", "Zetino", "Zevallos", "Zimmerman", "Zorrilla", "Zubia", "Zubiate", "Zuleta", "Zuluaga", "Zuniga", "Zuno", "Zurita"]>>
 
 /* Removed all short-cute forms of russian names, they are not real names, can't be used in passports for example. They are names (nicknames) for family and close friends usage - with only positive and close relationships. On slaves it's looked weird and idiotic. Do not re-add them! Removed the same names but with wrong transliteration, and archaic forms not used today, but some alternate trasliteration leaved - if name have historic variations. Also - who added Nymphadora as russian name? LoL.*/
-<<set setup.russianSlaveNames = ["Ada", "Adelaida", "Aelita", "Afanasiya", "Afimia", "Agafa", "Agafia", "Agafya", "Agasha", "Agata", "Aglaya", "Agnessa", "Agrafena", "Agrippina", "Aidan", "Akillina", "Aksiniya", "Ala", "Alana", "Albina", "Aleksandra", "Alena", "Alevtina", "Alewtina", "Alexandra", "Alina", "Alisa", "Alisya", "Alja", "Aljona", "Alla", "Alma", "Alya", "Alyona", "Amalija", "Anastasia", "Anastasiya", "Anel", "Anfisa", "Anfiya", "Angela", "Angelica", "Angelika", "Angelina", "Anisa", "Anisiya", "Anna", "Anne", "Anschela", "Antonina", "Anzhela", "Aravina", "Arina", "Asenka", "Avdeeva", "Avdotia", "Avdotya", "Avgusta", "Avgustina", "Avrora", "Avtonoma", "Barat", "Bela", "Bella", "Berte", "Bronislava", "Bruna", "Chiona", "Chulpan", "Clara", "Clavdia", "Communa", "Dara", "Daria", "Dariya", "Darja", "Darya", "Daryna", "Dasha", "Devora", "Diana", "Dina", "Dobryna", "Dominika", "Domna", "Dora", "Doroteya", "Duscha", "Eda", "Edita", "Efrosinja", "Ekaterina", "Ekatherina", "Elen", "Elena", "Eleonora", "Elina", "Elisaveta", "Elizaveta", "Ella", "Ellina", "Elwira", "Emilia", "Emiliya", "Emma", "Emther", "Eugenia", "Euprakseia", "Eva", "Evdokeia", "Evdokiya", "Evelina", "Evfrosinya", "Evgenia", "Evgenija", "Evgeniya", "Ewdokija", "Faina", "Fanuza", "Fayina", "Fedora", "Fekla", "Feodora", "Feodosya", "Fevronia", "Filipa", "Fyokla", "Galina", "Galya", "Gana", "Gelena", "Genia", "Gennadiya", "Gilkeriya", "Glafira", "Glikeriya", "Helena", "Ida", "Ilia", "Illa", "Ilona", "Ilya", "Industria", "Inessa", "Inga", "Ingrid", "Inna", "Ioanna", "Iraida", "Irena", "Irina", "Irisa", "Irma", "Ivana", "Iya", "Izabella", "Jadwiga", "Janna", "Jeanna", "Jenya", "Jewfrosinja", "Jewgenija", "Julia", "Juliya", "Julja", "Kaleria", "Kamenka", "Kapitolina", "Karina", "Karolina", "Kate", "Katerina", "Kati", "Katja", "Katusha", "Katya", "Khairi", "Kharitaniya", "Kilina", "Kim", "Kira", "Kisa", "Klara", "Klavdia", "Klavdiya", "Kostya", "Kristina", "Krystal", "Ksenia", "Kseniya", "Lada", "Lana", "Lara", "Larina", "Larisa", "Laura", "Lena", "Lenina", "Lenora", "Leonilla", "Lera", "Leva", "Leysira", "Liana", "Lidia", "Lidija", "Lidiya", "Lila", "Lilia", "Lilija", "Lilya", "Lina", "Liudmila", "Liza", "Ljubow", "Ljudmila", "Lola", "Lora", "Lotta", "Ludmila", "Ludmilla", "Luiza", "Lyanka", "Lybow", "Lyeta", "Lyuba", "Lyubov", "Lyudmila", "Magdalena", "Magdalina", "Maiya", "Maja", "Makrina", "Mara", "Marfa", "Margarete", "Margarita", "Maria", "Marianna", "Marina", "Marinika", "Mariya", "Marta", "Marusia", "Marya", "masha", "Masha", "Matryona", "Mavra", "Maya", "Melaniya", "Melita", "Mikhaila", "Mila", "Milana", "Militsa", "Miljena", "Minodora", "Mira", "Miropiya", "Mirra", "Mounya", "Nadeschda", "Nadezhda", "Nadia", "Narkissa", "Nastasia", "Nastasya", "Nastja", "Nastya", "Natalia", "Natalja", "Natalya", "Natasha", "Nathalia", "Nelly", "Neonila", "Nika", "Nina", "Nonna", "Nora", "Nympha", "Nyura", "Ogrofena", "Oksana", "Ol'ga", "Olena", "Olesja", "Olesya", "Olga", "Oljona", "Olympiada", "Orina", "Orlenda", "Orlitza", "Osyenya", "Oxana", "Parasha", "Pasha", "Pavla", "Pelageja", "Pelageya", "Petrovna", "Polina", "Praskovya", "Praskowja", "Rada", "Radmila", "Rahil", "Raisa", "Raissa", "Raiza", "Rakhil", "Rakhila", "Renata", "Rimma", "Roksana", "Rosa", "Roxana", "Roza", "Rozalia", "Ruslana", "Sabina", "Sapozhnika", "Sasha", "Sataney", "Seda", "Serafima", "Serafina", "Shelovlevaya", "Silvia", "Silviya", "Sinovia", "Sivetlana", "Snejana", "Snigurka", "Sofia", "Sofiya", "Sofja", "Sofya", "Sonia", "Stanislava", "Stefania", "Stella", "Stephania", "Stephanida", "Suzanna", "Svetlana", "Taisija", "Taissia", "Tamara", "Tanya", "Tasiya", "Tatiana", "Tatjana", "Tatyana", "Teresa", "Thamara", "Tsetsiliya", "Uliana", "Uljana", "Ulyana", "Ursola", "Valentina", "Valeria", "Valeriya", "Varinka", "Varvara", "Varwara", "Vasilisa", "Velika", "Vera", "Veronika", "Vesna", "Victoria", "Viera", "Vika", "Viktoria", "Viktoriya", "Vilena", "Vilma", "Viola", "Violetta", "Vita", "Vitalya", "Vlada", "Vladimira", "Vyesna", "Xenia", "Xenja", "Yadviga", "Yana", "Yanina", "Yaroslava", "Yefrosinia", "Yekaterina", "Yelena", "Yelizaveta", "Yeva", "Yevdokiya", "Yevfrosinya", "Yevgenia", "Yirina", "Yulia", "Yulianiya", "Yuliya", "Zarifa", "Zenaida", "Zenevieva", "Zhanna", "Zhozefina", "Zima", "Zinaida", "Zinerva", "Zinovia", "Zinoviya", "Zosya", "Zoya", "Zytka"]>>
+<<set setup.russianSlaveNames = ["Ada", "Adelaida", "Afanasiya", "Agata", "Agnessa", "Ala", "Albina", "Aleksandra", "Alena", "Alexandra", "Alina", "Alisa", "Alisya", "Alla", "Alyona", "Anastasia", "Anastasiya", "Anfisa", "Angela", "Angelica", "Angelika", "Angelina", "Anna", "Antonina", "Arina", "Avgustina", "Avrora", "Bronislava", "Clara", "Clavdia", "Daria", "Dariya", "Darya", "Daryna", "Dasha", "Diana", "Dina", "Edita", "Ekaterina", "Ekatherina", "Elen", "Elena", "Eleonora", "Elisaveta", "Ella", "Elvira", "Emma", "Eugenia", "Eva", "Evdokiya", "Evelina", "Evgenia", "Evgeniya", "Evdokia", "Faina",  "Fayina", "Feodosya", "Galina", "Galya", "Helena", "Ida", "Ilona", "Inessa", "Inga", "Inna", "Irina", "Irma", "Janna", "Jenya", "Julia", "Juliya",  "Kapitolina", "Karina", "Karolina", "Katerina", "Katya", "Kima", "Kira", "Klara", "Klavdiya", "Kristina", "Ksenia", "Kseniya", "Lada", "Lana", "Lara",  "Larisa", "Laura", "Lena", "Lenora", "Lera", "Lidia", "Lidiya", "Lila", "Lilia", "Liza", "Lola", "Lora", "Ludmila", "Ludmilla", "Luiza", "Lyubov", "Lyudmila", "Magdalena", "Maiya", "Marfa", "Margarita", "Maria", "Marianna", "Marina", "Mariya", "Marta", "Marusia", "Masha", "Maya", "Mila", "Milana",  "Mira", "Nadeschda", "Nastasia", "Nastasya", "Natalia", "Natalya", "Nelly", "Nika", "Nina", "Nonna", "Oksana", "Olena", "Olesya", "Olga", "Oxana",  "Polina", "Rada", "Radmila", "Raisa", "Renata", "Rimma", "Roksana", "Rosa", "Ruslana", "Serafima", "Snejana", "Sofia", "Sofya", "Sonia", "Stanislava",  "Stella", "Suzanna", "Svetlana", "Taisija", "Taissia", "Tamara", "Tanya", "Tasiya", "Tatiana", "Teresa", "Uliana", "Ulyana", "Ursula", "Valentina", "Valeria", "Valeriya", "Varvara", "Vasilisa", "Vera", "Veronika", "Victoria", "Vika", "Viktoria", "Vilena", "Viola", "Violetta", "Vlada", "Xenia",  "Yana", "Yaroslava", "Yulia", "Zinaida", "Zinovia", "Zinoviya", "Zoya"]>>
 <<set setup.russianSlaveSurnames = ["Abarinova", "Abashova", "Abramova", "Agaltsova", "Agapova", "Agureeva", "Akhaimova", "Akimova", "Akinshina", "Aleksandrova", "Aleksandrovich", "Aleksandrovna", "Alekseeva", "Alieva", "Alliluyeva", "Altayskaya", "Ananina", "Andreeva", "Andrejchenko", "Antonenko", "Antonova", "Arbatova", "Aroseva", "Arshinova", "Asmus", "Astafieva", "Avdeyeva", "Baclanova", "Bajenova", "Baranova", "Batalova", "Belova", "Belyaeva", "Belyakova", "Berg", "Berseneva", "Blokhina", "Bogdanova", "Bogomolova", "Bogucharskaia", "Bondarenko", "Borisova", "Borissova", "Borodina", "Bosch", "Boyarskaya", "Boyko", "Brik", "Budina", "Budnitskaya", "Burina", "Burnasheva", "Buzova", "Cgernyavskaya", "Charskaya", "Chekhova", "Chemezova", "Chepeleva", "Cherepanova", "Chernova", "Chipovskaya", "Churilova", "Danilova", "Davydova", "Demekhina", "Dementieva", "Denisova", "Deulina", "Dmitrieva", "Doronina", "Dronina", "Dyupina", "Efimova", "Efremova", "Egorova", "Ekamasova", "Eremina", "Ermakova", "Ezhova", "Falileeva", "Farkhullina", "Fedorova", "Fedotova", "Fetisova", "Filatova", "Filippova", "Fomina", "Frank", "Freindlich", "Friske", "Frolova", "Fyodorova", "Gagarina", "Galkina", "Gavrilova", "Gerasimova", "Germanova", "Geva", "Girfanova", "Glazova", "Glebova", "Glinka", "Goldman", "Golovko", "Golub", "Golubeva", "Goncharova", "Gorbacheva", "Gorshkova", "Gracheva", "Grigoreva", "Grigorieva", "Grinenko", "Gromova", "Grosheva", "Gubanova", "Guseva", "Gzovskaya", "Ilchenko", "Ilina", "Inshina", "Isaeva", "Isinbayeva", "Isoeva", "Istomina", "Ivanova", "Jovovich", "Kabo", "Kachalina", "Kadirova", "Kahnovich", "Kalashnikova", "Kalinina", "Kamenkova", "Kaptsova", "Kapustina", "Karpova", "Kasatkina", "Katina", "Kazakova", "Kazanova", "Kedrova", "Khamatova", "Khityaeva", "Khlynina", "Khodchenkova", "Khomich", "Khovanskaya", "Khrushcheva", "Kibalo", "Kim", "Kirilenko", "Kirsanova", "Kiseleva", "Klimova", "Klishina", "Klopakova", "Kochina", "Kochneva", "Kolesnikova", "Kolosova", "Komarova", "Kondratyeva", "Konovalova", "Kopylova", "Korikova", "Koroleva", "Kotova", "Kouklina", "Kournikova", "Kovalenko", "Kovaleva", "Kovylina", "Kozlova", "Krajt", "Kravchenko", "Krivosheeva", "Krivozub", "Krupskaya", "Krylova", "Kulikova", "Kunskaya", "Kuptsova", "Kusakina", "Kuskova", "Kutepova", "Kuzmina", "Kuznetsova", "Landik", "Lavrova", "Lazareva", "Lebedeva", "Lekshina", "Leonova", "Levanova", "Levieva", "Levina", "Lezhnina", "Likhina", "Linskaya", "Lipovskaya", "Lisovskaia", "Lopyreva", "Lubkova", "Lukanina", "Luss", "Magomedova", "Makarenko", "Makarova", "Makeyeva", "Makhalina", "Maksimova", "Malinskaja", "Malova", "Maltseva", "Malysheva", "Manaseina", "Maretskaya", "Markova", "Martinovska", "Maslova", "Matveeva", "Matviyenko", "Maximova", "Mazura", "Medvedeva", "Melnikova", "Metkina", "Mikhaylova", "Mironova", "Mityushina", "Mizulina", "Morozova", "Moskalkova", "Mukhina", "Myasnikova", "Nabokina", "Nadezhda", "Narusova", "Naumova", "Nazarova", "Nekrasova", "Nescher", "Neyolova", "Nijinska", "Nikiforova", "Nikitina", "Nikolaeva", "Nosova", "Novikova", "Novoselova", "Olerinskaya", "Onolbayeva", "Orlova", "Osintseva", "Osipenko", "Osipova", "Ouliankina", "Oznobkina", "Pamfilova", "Panaeva", "Panina", "Panova", "Panteleeva", "Pantyukhina", "Pavlenko", "Pavlova", "Penkina", "Perepyolkina", "Pereverzeva", "Perova", "Petrenko", "Petrova", "Philippova", "Piletskaya", "Pilnitskaya", "Pivovarova", "Pletneva", "Pletnyova", "Podkaminskaya", "Polevshchikova", "Polina", "Polishchuk", "Polozkova", "Polunina", "Polyakova", "Ponaroshku", "Ponarovskaya", "Ponizova", "Popova", "Poverennova", "Pozdeeva", "Pozharskaya", "Poznyak", "Prohorova", "Proklova", "Prugova", "Putina", "Radchenko", "Razumovskaya", "Redina", "Romanova", "Roslyakova", "Rozhkova", "Rudenko", "Rudova", "Rumyanova", "Ryzhkina", "Samburskaya", "Samoilova", "Samsova", "Sarasova", "Savchenko", "Schachova", "Scherbakova", "Schirman", "Scripchenko", "Selezneva", "Seleznyova", "Semenova", "Semenovich", "Semyonova", "Senchenko", "Senchina", "Sergeeva", "Sergeevich", "Sergeevna", "Sergeyeva", "Sergina", "Serova", "Serpova", "Shabanova", "Shagalova", "Shakinskaya", "Shalagina", "Shalayeva", "Sharapova", "Sharipova", "Shayk", "Shchekina", "Shekhovtsova", "Shestova", "Shevchenko", "Shirshina", "Shiskova", "Shmeleva", "Shoygu", "Shukina", "Shulgina", "Sidorkina", "Sidorova", "Silina", "Simonovich", "Siriskina", "Sizova", "Skobtseva", "Skobtsova", "Slabunova", "Smirnova", "Snigir", "Sokolova", "Sokova", "Sorokina", "Sosina", "Sosnova", "Sotnikova", "Stalina", "Stefanenko", "Stepanova", "Strokous", "Struchkova", "Studilina", "Sudakevich", "Sukhinova", "Suslova", "Sutulova", "Svetikova", "Takshina", "Talyzina", "Tarakanova", "Tarasova", "Tarkovskaya", "Temnikova", "Tereshkina", "Tikhonova", "Timofeeva", "Timofeyeva", "Titova", "Tkachenko", "Tkacheva", "Trefilova", "Trofimova", "Trykina", "Tsesarskaya", "Tsyganenko", "Tsygankova", "Tutayeva", "Tyrkova", "Ufimtseva", "Ulanova", "Urajevskaya", "Usova", "Vafina", "Vaganova", "Valeeva", "Varlamova", "Vasileva", "Vasilyeva", "Velikanova", "Vernadskaya", "Vinogradova", "Vishneva", "Vishnevskaya", "Vladimirovich", "Vlasova", "Vodianova", "Vodonaeva", "Volkova", "Volochkova", "Volodina", "Volskaya", "Vorobyeva", "Voronina", "Vyalitsyna", "Vyroubova", "Yakovleva", "Yaroshevskaya", "Yudina", "Yurchenko", "Yurlova", "Zabolotnikova", "Zagorskaya", "Zagoruychenko", "Zakharova", "Zaryanova", "Zaytseva", "Zelyaeva", "Zherebtsova", "Zhiznyeva", "Zhukova", "Ziganshina", "Zubova", "Zudina", "Zuyeva", "Zvarych"]>>
 /*Actually russian and ukrainian names and surnames can be safely merged in one array, and used for both nations. Through very high cultural interchange, they are very common on both territories, many of them can't be specifed as russian or ukrainian now.*/
 
-- 
GitLab


From 73ab7d6a8a750ae8f4ba7745f67d4d1a0ed166e1 Mon Sep 17 00:00:00 2001
From: pregmodfan <pregmodfan@cock.li>
Date: Fri, 20 Jul 2018 02:17:32 +0300
Subject: [PATCH 088/189] russian and ukrainian names in one list. as it IRL
 now.

---
 src/init/setupVars.tw | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index 6c71b2a807e..a93fd25fa0e 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -444,6 +444,9 @@
 /* NOTE: Names ending in "-iia" aren't data errors, but simply how the official romanization of "-ія" looks like. */
 <<set setup.ukrainianSlaveNames = ["Ada", "Al'bina", "Alex", "Alexandra", "Alina", "Alisa", "Alla", "Alyona", "Amaliia", "Anastasia", "Anastasiia", "Anastasiya", "Angela", "Angelina", "Anita", "Ann", "Anna", "Anzhela", "Arina", "Ayya", "Biliana", "Bohdanna", "Bohuslava", "Bozhena", "Danna", "Daria", "Darina", "Darya", "Daryna", "Dasha", "Diana", "Draha", "Edyta", "Elena", "Elisabeta", "Emiliia", "Erika", "Eva", "Halina", "Hanna", "Hordana", "Ilona", "Ira", "Irena", "Irene", "Irina", "Iryna", "Julia", "Juliva", "Kamilla", "Karina", "Karolina", "Kasia", "Kate", "Kateryna", "Katia", "Katya", "Khrystyna", "Klavdiia", "Kristina", "Larisa", "Laura", "Lena", "Lida", "Liia", "Liliia", "Liliya", "Liubomyra", "Liubov", "Liudmyla", "Liza", "Luba", "Mahda", "Mahdalyna", "Mar'iana", "Margaryta", "Maria", "Mariia", "Marina", "Mariya", "Marta", "Marusia", "Mary", "Maryna", "Masha", "Miiana", "Milena", "Mykhailyna", "Myroslava", "Nadiia", "Nastia", "Nastya", "Natalia", "Nataliia", "Nataliya", "Natalya", "Natasha", "Nina", "Odarka", "Oksana", "Okseniia", "Ol'ha", "Oleksandra", "Olena", "Olga", "Olha", "Olya", "Oryna", "Orysia", "Pavlyna", "Polina", "Priska", "Pylypyna", "Rakhil", "Reveka", "Roksolana", "Romana", "Rozaliia", "Ruslana", "Santa", "Sara", "Sasha", "Sesiliia", "Snejana", "Snizhana", "Sofiya", "Solomiia", "Sonya", "Sophie", "Sophiia", "Stepaniia", "Sveta", "Sviatoslava", "Svitlana", "Tania", "Tanya", "Tatiana", "Taya", "Tereza", "Tetiana", "Tetyana", "Tina", "Valentyna", "Valeria", "Valeriya", "Varvara", "Vasylyna", "Velana", "Vesna", "Victoria", "Vika", "Viktoriia", "Viktoriya", "Violetta", "Vira", "Volodymyra", "Yana", "Yara", "Yaroslava", "Yaryna", "Yasna", "Yelyzaveta", "Yulia", "Yuliia", "Yuliya", "Yustyna", "Zlata", "Zlatoslava", "Zoriana"]>>
 /* NOTE: Ukrainian surnames have different forms depending on the gender of the person AND the area (they are more common in Eastern Ukraine). This list uses the female form where it's common overall. */
+<<set setup.russianSlaveNames = setup.russianSlaveNames + setup.ukrainianSlaveNames>>
+<<set setup.ukrainianSlaveNames = <<set setup.russianSlaveNames >>
+/* Now we have bigger pool for russian and ukrainian names in game. Russian and ukrainian first names become so common on both territories thorugh USSR time and later, that it's IRL just one list. */
 <<set setup.ukrainianSlaveSurnames = ["Aleksandrova", "Andreeva", "Antonyuk", "Astafieva", "Avramenko", "Azanova", "Babenko", "Babich", "Baikova", "Belous", "Belova", "Bets", "Beznosyuk", "Bilous", "Bodnar", "Boiko", "Bondar", "Bondarchuk", "Bondarenko", "Borisenko", "Boychuk", "Boyko", "Chernenko", "Chorna", "Chumak", "Danilyuk", "Demchenko", "Denisenko", "Dereviankina", "Derkach", "Diachenko", "Didenko", "Dimopoulos", "Dmitrenko", "Doroshenko", "Dyachenko", "Fedorenko", "Fedorova", "Fomenko", "Frolova", "Gavrilyuk", "Gerasimenko", "Golovko", "Golub", "Gonchar", "Goncharenko", "Goncharova", "Goncharuk", "Gordienko", "Gorelova", "Gotsiy", "Grischenko", "Gritsenko", "Grytsay", "Gumenyuk", "Havryiuk", "Honcharenko", "Honcharova", "Hotlib", "Iaryn", "Ischenko", "Ishchenko", "Ivanchenko", "Ivanenko", "Ivanova", "Ivanyuk", "Ivaschenko", "Karlenko", "Karol", "Karpenko", "Kharchenko", "Khmidan", "Khomenko", "Kirichenko", "Klimenko", "Klymenko", "Koblenko", "Kolesnik", "Kolesnyk", "Kolomiets", "Kolomiiets", "Kondratyuk", "Kononenko", "Kornienko", "Korol", "Kostenko", "Kostiuk", "Kostyuk", "Kot", "Kotova", "Kots-Hotlib", "Kots", "Koval'chuk", "Koval'ova", "Koval", "Kovalchuk", "Kovalenko", "Kovtun", "Kozak", "Kozlova", "Kravchenko", "Kravchuk", "Kravets", "Kristal", "Kucher", "Kucherenko", "Kuiek", "Kulik", "Kulizhka", "Kulyk", "Kunis", "Kurovska", "Kurylenko", "Kushnir", "Kuz'menko", "Kuzmenko", "Kuznetsova", "Kyrychenko", "Lauta", "Lebedeva", "Levchenko", "Litvina", "Litvinenko", "Litvinova", "Luczenko", "Lutsenko", "Lyashenko", "Lysenko", "Lytvynenko", "Makarenko", "Makarova", "Maliouk", "Marchenko", "Marchuk", "Martynenko", "Martyniuk", "Matvienko", "Mazur", "Mel'nychuk", "Mel'nyk", "Melnichenko", "Melnichuk", "Melnik", "Mikhaylenko", "Mikhaylova", "Mironenko", "Mironova", "Miroshnichenko", "Mischenko", "Moroz", "Morozova", "Moskalenko", "Mykhailova", "Myshchenko", "Naumenko", "Nazarenko", "Nesterenko", "Nikitina", "Nikolaenko", "Nikolaeva", "Novikova", "Oleynik", "Oliinyk", "Oliynik", "Olyenik", "Omelchenko", "Onischenko", "Onopka", "Orlova", "Osmanova", "Ostapenko", "Ovcharenko", "Palamarchuk", "Panchenko", "Parkhomenko", "Pavlenko", "Pavliuk", "Pavlova", "Pavlyuk", "Petrenko", "Petrova", "Pilipenko", "Piro", "Piskun", "Poliakova", "Polischuk", "Polishchuk", "Polyakova", "Ponomarenko", "Popova", "Popovich", "Popovych", "Poslavska", "Prikhodko", "Prokopenko", "Prykhod'ko", "Pylypenko", "Radchenko", "Remez", "Romanenko", "Romaniuk", "Romanova", "Romanyuk", "Romonova", "Rudenko", "Safroncik", "Samoylenko", "Savchenko", "Savchuk", "Scherbina", "Sedokova", "Semeniuk", "Semenyuk", "Senchylo", "Serdyuk", "Sergeeva", "Sergienko", "Shapoval", "Shevchenko", "Shevchuk", "Shorokhova", "Shulga", "Shumeyko", "Shvets", "Sidorchuk", "Sidorenko", "Smerechevskaya", "Smirnova", "Sokolova", "Soroka", "Stepanenko", "Stepanova", "Stotskaya", "Svets", "Sydorenko", "Taran", "Tarasenko", "Tereschenko", "Tereshchenko", "Timchenko", "Timoshenko", "Tischenko", "Tkach", "Tkachenko", "Tkachuk", "Toksik", "Turenko", "Tymoshenko", "Tyshchenko", "Vasilenko", "Vasileva", "Vasyl'ieva", "Vasylenko", "Velchinskaya", "Velichko", "Veryovkina", "Vlasenko", "Volkova", "Voloshina", "Voloshyn", "Vovk", "Yakovenko", "Yatsenko", "Yurchenko", "Zaitseva", "Zaytseva", "Zhiuk", "Zhuk", "Zhuravska", "Zinchenko"]>>
 
 <<set setup.canadianSlaveNames = ["Abigail", "Addison", "Adrienne", "Agnes", "Aileen", "Alexandra", "Alexis", "Alice", "Alyssa", "Amanda", "Amelia", "Amy", "Andrea", "Ann", "Ànna", "Anne-Marie", "Anne", "Annie", "Ashley", "Audrey", "Autumn", "Ava", "Avery", "Barbara", "Beatrice", "Béatrice", "Bette", "Bianca", "Brenda", "Brooklyn", "Caitlin", "Camille", "Caroline", "Catherine", "Charlotte", "Chelsea", "Chloe", "Chloé", "Dianne", "Donna", "Elinor", "Élise", "Elizabeth", "Ellen", "Emilia", "Émilie", "Emily", "Emma", "Eva", "Evelyn", "Florence", "France", "Frances", "Frédérique", "Gabrielle", "Geneviève", "Gillian", "Grace", "Hannah", "Harper", "Helen", "Hélène", "Indira", "Isabella", "Jade", "Jeanne", "Jenna", "Jennifer", "Jessica", "Joan", "Joyce", "Julia", "Julie", "Juliette", "Justine", "Karen", "Kate", "Kathleen", "Kathryn", "Kayla", "Kim", "Laura", "Lauren", "Laurence", "Laurie", "Lea", "Léa", "Leona", "Lily", "Linda", "Lisa", "Madelyn", "Madison", "Margaret", "Maria", "Marie-France", "Marie", "Marilyn", "Maryse", "Maud", "Maude", "Megan", "Mélissa", "Mia", "Michaëlle", "Michèle", "Morgan", "Nathalie", "Nora", "Norah", "Olivia", "Rachel", "Rebecca", "Rosalie", "Roxanne", "Sabrina", "Samantha", "Sarah", "Scarlett", "Sharon", "Sheila", "Shelley", "Shirley", "Sonia", "Sophia", "Sophie", "Stephanie", "Sydney", "Sylvia", "Taylor", "Vanessa", "Victoria", "Yvonne", "Zoe", "Zoé"]>>
-- 
GitLab


From 4040d3b4d88464a6ecbc5584c48cc6f40cbb74ab Mon Sep 17 00:00:00 2001
From: pregmodfan <pregmodfan@cock.li>
Date: Fri, 20 Jul 2018 02:20:19 +0300
Subject: [PATCH 089/189] syntax fix

---
 src/init/setupVars.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index a93fd25fa0e..bd5f26d6075 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -445,7 +445,7 @@
 <<set setup.ukrainianSlaveNames = ["Ada", "Al'bina", "Alex", "Alexandra", "Alina", "Alisa", "Alla", "Alyona", "Amaliia", "Anastasia", "Anastasiia", "Anastasiya", "Angela", "Angelina", "Anita", "Ann", "Anna", "Anzhela", "Arina", "Ayya", "Biliana", "Bohdanna", "Bohuslava", "Bozhena", "Danna", "Daria", "Darina", "Darya", "Daryna", "Dasha", "Diana", "Draha", "Edyta", "Elena", "Elisabeta", "Emiliia", "Erika", "Eva", "Halina", "Hanna", "Hordana", "Ilona", "Ira", "Irena", "Irene", "Irina", "Iryna", "Julia", "Juliva", "Kamilla", "Karina", "Karolina", "Kasia", "Kate", "Kateryna", "Katia", "Katya", "Khrystyna", "Klavdiia", "Kristina", "Larisa", "Laura", "Lena", "Lida", "Liia", "Liliia", "Liliya", "Liubomyra", "Liubov", "Liudmyla", "Liza", "Luba", "Mahda", "Mahdalyna", "Mar'iana", "Margaryta", "Maria", "Mariia", "Marina", "Mariya", "Marta", "Marusia", "Mary", "Maryna", "Masha", "Miiana", "Milena", "Mykhailyna", "Myroslava", "Nadiia", "Nastia", "Nastya", "Natalia", "Nataliia", "Nataliya", "Natalya", "Natasha", "Nina", "Odarka", "Oksana", "Okseniia", "Ol'ha", "Oleksandra", "Olena", "Olga", "Olha", "Olya", "Oryna", "Orysia", "Pavlyna", "Polina", "Priska", "Pylypyna", "Rakhil", "Reveka", "Roksolana", "Romana", "Rozaliia", "Ruslana", "Santa", "Sara", "Sasha", "Sesiliia", "Snejana", "Snizhana", "Sofiya", "Solomiia", "Sonya", "Sophie", "Sophiia", "Stepaniia", "Sveta", "Sviatoslava", "Svitlana", "Tania", "Tanya", "Tatiana", "Taya", "Tereza", "Tetiana", "Tetyana", "Tina", "Valentyna", "Valeria", "Valeriya", "Varvara", "Vasylyna", "Velana", "Vesna", "Victoria", "Vika", "Viktoriia", "Viktoriya", "Violetta", "Vira", "Volodymyra", "Yana", "Yara", "Yaroslava", "Yaryna", "Yasna", "Yelyzaveta", "Yulia", "Yuliia", "Yuliya", "Yustyna", "Zlata", "Zlatoslava", "Zoriana"]>>
 /* NOTE: Ukrainian surnames have different forms depending on the gender of the person AND the area (they are more common in Eastern Ukraine). This list uses the female form where it's common overall. */
 <<set setup.russianSlaveNames = setup.russianSlaveNames + setup.ukrainianSlaveNames>>
-<<set setup.ukrainianSlaveNames = <<set setup.russianSlaveNames >>
+<<set setup.ukrainianSlaveNames = set setup.russianSlaveNames >>
 /* Now we have bigger pool for russian and ukrainian names in game. Russian and ukrainian first names become so common on both territories thorugh USSR time and later, that it's IRL just one list. */
 <<set setup.ukrainianSlaveSurnames = ["Aleksandrova", "Andreeva", "Antonyuk", "Astafieva", "Avramenko", "Azanova", "Babenko", "Babich", "Baikova", "Belous", "Belova", "Bets", "Beznosyuk", "Bilous", "Bodnar", "Boiko", "Bondar", "Bondarchuk", "Bondarenko", "Borisenko", "Boychuk", "Boyko", "Chernenko", "Chorna", "Chumak", "Danilyuk", "Demchenko", "Denisenko", "Dereviankina", "Derkach", "Diachenko", "Didenko", "Dimopoulos", "Dmitrenko", "Doroshenko", "Dyachenko", "Fedorenko", "Fedorova", "Fomenko", "Frolova", "Gavrilyuk", "Gerasimenko", "Golovko", "Golub", "Gonchar", "Goncharenko", "Goncharova", "Goncharuk", "Gordienko", "Gorelova", "Gotsiy", "Grischenko", "Gritsenko", "Grytsay", "Gumenyuk", "Havryiuk", "Honcharenko", "Honcharova", "Hotlib", "Iaryn", "Ischenko", "Ishchenko", "Ivanchenko", "Ivanenko", "Ivanova", "Ivanyuk", "Ivaschenko", "Karlenko", "Karol", "Karpenko", "Kharchenko", "Khmidan", "Khomenko", "Kirichenko", "Klimenko", "Klymenko", "Koblenko", "Kolesnik", "Kolesnyk", "Kolomiets", "Kolomiiets", "Kondratyuk", "Kononenko", "Kornienko", "Korol", "Kostenko", "Kostiuk", "Kostyuk", "Kot", "Kotova", "Kots-Hotlib", "Kots", "Koval'chuk", "Koval'ova", "Koval", "Kovalchuk", "Kovalenko", "Kovtun", "Kozak", "Kozlova", "Kravchenko", "Kravchuk", "Kravets", "Kristal", "Kucher", "Kucherenko", "Kuiek", "Kulik", "Kulizhka", "Kulyk", "Kunis", "Kurovska", "Kurylenko", "Kushnir", "Kuz'menko", "Kuzmenko", "Kuznetsova", "Kyrychenko", "Lauta", "Lebedeva", "Levchenko", "Litvina", "Litvinenko", "Litvinova", "Luczenko", "Lutsenko", "Lyashenko", "Lysenko", "Lytvynenko", "Makarenko", "Makarova", "Maliouk", "Marchenko", "Marchuk", "Martynenko", "Martyniuk", "Matvienko", "Mazur", "Mel'nychuk", "Mel'nyk", "Melnichenko", "Melnichuk", "Melnik", "Mikhaylenko", "Mikhaylova", "Mironenko", "Mironova", "Miroshnichenko", "Mischenko", "Moroz", "Morozova", "Moskalenko", "Mykhailova", "Myshchenko", "Naumenko", "Nazarenko", "Nesterenko", "Nikitina", "Nikolaenko", "Nikolaeva", "Novikova", "Oleynik", "Oliinyk", "Oliynik", "Olyenik", "Omelchenko", "Onischenko", "Onopka", "Orlova", "Osmanova", "Ostapenko", "Ovcharenko", "Palamarchuk", "Panchenko", "Parkhomenko", "Pavlenko", "Pavliuk", "Pavlova", "Pavlyuk", "Petrenko", "Petrova", "Pilipenko", "Piro", "Piskun", "Poliakova", "Polischuk", "Polishchuk", "Polyakova", "Ponomarenko", "Popova", "Popovich", "Popovych", "Poslavska", "Prikhodko", "Prokopenko", "Prykhod'ko", "Pylypenko", "Radchenko", "Remez", "Romanenko", "Romaniuk", "Romanova", "Romanyuk", "Romonova", "Rudenko", "Safroncik", "Samoylenko", "Savchenko", "Savchuk", "Scherbina", "Sedokova", "Semeniuk", "Semenyuk", "Senchylo", "Serdyuk", "Sergeeva", "Sergienko", "Shapoval", "Shevchenko", "Shevchuk", "Shorokhova", "Shulga", "Shumeyko", "Shvets", "Sidorchuk", "Sidorenko", "Smerechevskaya", "Smirnova", "Sokolova", "Soroka", "Stepanenko", "Stepanova", "Stotskaya", "Svets", "Sydorenko", "Taran", "Tarasenko", "Tereschenko", "Tereshchenko", "Timchenko", "Timoshenko", "Tischenko", "Tkach", "Tkachenko", "Tkachuk", "Toksik", "Turenko", "Tymoshenko", "Tyshchenko", "Vasilenko", "Vasileva", "Vasyl'ieva", "Vasylenko", "Velchinskaya", "Velichko", "Veryovkina", "Vlasenko", "Volkova", "Voloshina", "Voloshyn", "Vovk", "Yakovenko", "Yatsenko", "Yurchenko", "Zaitseva", "Zaytseva", "Zhiuk", "Zhuk", "Zhuravska", "Zinchenko"]>>
 
-- 
GitLab


From c4a3c7b47a8a9aebdcb2de514af270839ca31f01 Mon Sep 17 00:00:00 2001
From: pregmodfan <pregmodfan@cock.li>
Date: Fri, 20 Jul 2018 02:22:13 +0300
Subject: [PATCH 090/189] syntax fix2

---
 src/init/setupVars.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index bd5f26d6075..ddebe02854d 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -445,7 +445,7 @@
 <<set setup.ukrainianSlaveNames = ["Ada", "Al'bina", "Alex", "Alexandra", "Alina", "Alisa", "Alla", "Alyona", "Amaliia", "Anastasia", "Anastasiia", "Anastasiya", "Angela", "Angelina", "Anita", "Ann", "Anna", "Anzhela", "Arina", "Ayya", "Biliana", "Bohdanna", "Bohuslava", "Bozhena", "Danna", "Daria", "Darina", "Darya", "Daryna", "Dasha", "Diana", "Draha", "Edyta", "Elena", "Elisabeta", "Emiliia", "Erika", "Eva", "Halina", "Hanna", "Hordana", "Ilona", "Ira", "Irena", "Irene", "Irina", "Iryna", "Julia", "Juliva", "Kamilla", "Karina", "Karolina", "Kasia", "Kate", "Kateryna", "Katia", "Katya", "Khrystyna", "Klavdiia", "Kristina", "Larisa", "Laura", "Lena", "Lida", "Liia", "Liliia", "Liliya", "Liubomyra", "Liubov", "Liudmyla", "Liza", "Luba", "Mahda", "Mahdalyna", "Mar'iana", "Margaryta", "Maria", "Mariia", "Marina", "Mariya", "Marta", "Marusia", "Mary", "Maryna", "Masha", "Miiana", "Milena", "Mykhailyna", "Myroslava", "Nadiia", "Nastia", "Nastya", "Natalia", "Nataliia", "Nataliya", "Natalya", "Natasha", "Nina", "Odarka", "Oksana", "Okseniia", "Ol'ha", "Oleksandra", "Olena", "Olga", "Olha", "Olya", "Oryna", "Orysia", "Pavlyna", "Polina", "Priska", "Pylypyna", "Rakhil", "Reveka", "Roksolana", "Romana", "Rozaliia", "Ruslana", "Santa", "Sara", "Sasha", "Sesiliia", "Snejana", "Snizhana", "Sofiya", "Solomiia", "Sonya", "Sophie", "Sophiia", "Stepaniia", "Sveta", "Sviatoslava", "Svitlana", "Tania", "Tanya", "Tatiana", "Taya", "Tereza", "Tetiana", "Tetyana", "Tina", "Valentyna", "Valeria", "Valeriya", "Varvara", "Vasylyna", "Velana", "Vesna", "Victoria", "Vika", "Viktoriia", "Viktoriya", "Violetta", "Vira", "Volodymyra", "Yana", "Yara", "Yaroslava", "Yaryna", "Yasna", "Yelyzaveta", "Yulia", "Yuliia", "Yuliya", "Yustyna", "Zlata", "Zlatoslava", "Zoriana"]>>
 /* NOTE: Ukrainian surnames have different forms depending on the gender of the person AND the area (they are more common in Eastern Ukraine). This list uses the female form where it's common overall. */
 <<set setup.russianSlaveNames = setup.russianSlaveNames + setup.ukrainianSlaveNames>>
-<<set setup.ukrainianSlaveNames = set setup.russianSlaveNames >>
+<<set setup.ukrainianSlaveNames = setup.russianSlaveNames >>
 /* Now we have bigger pool for russian and ukrainian names in game. Russian and ukrainian first names become so common on both territories thorugh USSR time and later, that it's IRL just one list. */
 <<set setup.ukrainianSlaveSurnames = ["Aleksandrova", "Andreeva", "Antonyuk", "Astafieva", "Avramenko", "Azanova", "Babenko", "Babich", "Baikova", "Belous", "Belova", "Bets", "Beznosyuk", "Bilous", "Bodnar", "Boiko", "Bondar", "Bondarchuk", "Bondarenko", "Borisenko", "Boychuk", "Boyko", "Chernenko", "Chorna", "Chumak", "Danilyuk", "Demchenko", "Denisenko", "Dereviankina", "Derkach", "Diachenko", "Didenko", "Dimopoulos", "Dmitrenko", "Doroshenko", "Dyachenko", "Fedorenko", "Fedorova", "Fomenko", "Frolova", "Gavrilyuk", "Gerasimenko", "Golovko", "Golub", "Gonchar", "Goncharenko", "Goncharova", "Goncharuk", "Gordienko", "Gorelova", "Gotsiy", "Grischenko", "Gritsenko", "Grytsay", "Gumenyuk", "Havryiuk", "Honcharenko", "Honcharova", "Hotlib", "Iaryn", "Ischenko", "Ishchenko", "Ivanchenko", "Ivanenko", "Ivanova", "Ivanyuk", "Ivaschenko", "Karlenko", "Karol", "Karpenko", "Kharchenko", "Khmidan", "Khomenko", "Kirichenko", "Klimenko", "Klymenko", "Koblenko", "Kolesnik", "Kolesnyk", "Kolomiets", "Kolomiiets", "Kondratyuk", "Kononenko", "Kornienko", "Korol", "Kostenko", "Kostiuk", "Kostyuk", "Kot", "Kotova", "Kots-Hotlib", "Kots", "Koval'chuk", "Koval'ova", "Koval", "Kovalchuk", "Kovalenko", "Kovtun", "Kozak", "Kozlova", "Kravchenko", "Kravchuk", "Kravets", "Kristal", "Kucher", "Kucherenko", "Kuiek", "Kulik", "Kulizhka", "Kulyk", "Kunis", "Kurovska", "Kurylenko", "Kushnir", "Kuz'menko", "Kuzmenko", "Kuznetsova", "Kyrychenko", "Lauta", "Lebedeva", "Levchenko", "Litvina", "Litvinenko", "Litvinova", "Luczenko", "Lutsenko", "Lyashenko", "Lysenko", "Lytvynenko", "Makarenko", "Makarova", "Maliouk", "Marchenko", "Marchuk", "Martynenko", "Martyniuk", "Matvienko", "Mazur", "Mel'nychuk", "Mel'nyk", "Melnichenko", "Melnichuk", "Melnik", "Mikhaylenko", "Mikhaylova", "Mironenko", "Mironova", "Miroshnichenko", "Mischenko", "Moroz", "Morozova", "Moskalenko", "Mykhailova", "Myshchenko", "Naumenko", "Nazarenko", "Nesterenko", "Nikitina", "Nikolaenko", "Nikolaeva", "Novikova", "Oleynik", "Oliinyk", "Oliynik", "Olyenik", "Omelchenko", "Onischenko", "Onopka", "Orlova", "Osmanova", "Ostapenko", "Ovcharenko", "Palamarchuk", "Panchenko", "Parkhomenko", "Pavlenko", "Pavliuk", "Pavlova", "Pavlyuk", "Petrenko", "Petrova", "Pilipenko", "Piro", "Piskun", "Poliakova", "Polischuk", "Polishchuk", "Polyakova", "Ponomarenko", "Popova", "Popovich", "Popovych", "Poslavska", "Prikhodko", "Prokopenko", "Prykhod'ko", "Pylypenko", "Radchenko", "Remez", "Romanenko", "Romaniuk", "Romanova", "Romanyuk", "Romonova", "Rudenko", "Safroncik", "Samoylenko", "Savchenko", "Savchuk", "Scherbina", "Sedokova", "Semeniuk", "Semenyuk", "Senchylo", "Serdyuk", "Sergeeva", "Sergienko", "Shapoval", "Shevchenko", "Shevchuk", "Shorokhova", "Shulga", "Shumeyko", "Shvets", "Sidorchuk", "Sidorenko", "Smerechevskaya", "Smirnova", "Sokolova", "Soroka", "Stepanenko", "Stepanova", "Stotskaya", "Svets", "Sydorenko", "Taran", "Tarasenko", "Tereschenko", "Tereshchenko", "Timchenko", "Timoshenko", "Tischenko", "Tkach", "Tkachenko", "Tkachuk", "Toksik", "Turenko", "Tymoshenko", "Tyshchenko", "Vasilenko", "Vasileva", "Vasyl'ieva", "Vasylenko", "Velchinskaya", "Velichko", "Veryovkina", "Vlasenko", "Volkova", "Voloshina", "Voloshyn", "Vovk", "Yakovenko", "Yatsenko", "Yurchenko", "Zaitseva", "Zaytseva", "Zhiuk", "Zhuk", "Zhuravska", "Zinchenko"]>>
 
-- 
GitLab


From 9abd3f90c8caa6f6c66dc0a9ff6d53fdf3e256f1 Mon Sep 17 00:00:00 2001
From: pregmodfan <pregmodfan@cock.li>
Date: Fri, 20 Jul 2018 02:52:02 +0300
Subject: [PATCH 091/189] twineJS.txt

---
 devNotes/twine JS.txt | 24 +++++++++++++++++++++---
 1 file changed, 21 insertions(+), 3 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 968eb4a0553..01af1fb1078 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -2699,6 +2699,7 @@ window.emptyDefaultRule = function emptyDefaultRule() {
 			bellyImplantVol: -1,
 			teeth: "no default setting",
 			label: "no default setting",
+			removeLabel: "no default setting",
 			skinColor: "no default setting",
 		}
 	};
@@ -13388,9 +13389,14 @@ window.DefaultRules = (function() {
 	}
 	
 	function ProcessLabel(slave, rule) {
-		if (rule.label !== "no default setting" && slave.customLabel !== rule.label) {
-			slave.customLabel = rule.label;
-			r += `<br>${slave.slaveName}'s label has been set to ${rule.label}`;
+		if (rule.label !== "no default setting" && !slave.customLabel.includes("["+rule.label+"]")) {
+			slave.customLabel = slave.customLabel + "[" + rule.label + "]";
+			r += `<br>${slave.slaveName} has been tagged as ${rule.label}`;
+		} 
+
+		if (rule.removeLabel !== "no default setting" && slave.customLabel.includes("["+rule.removeLabel+"]")) {
+			slave.customLabel = slave.customLabel.replace("["+rule.removeLabel+"]", "");
+			r += `<br>${slave.slaveName}'s tag [${rule.removeLabel}] is removed.`;
 		}
 	}
 
@@ -14365,6 +14371,7 @@ window.rulesAssistantOptions = (function() {
 		constructor() {
 			super("Other Settings");
 			this.appendChild(new LabelList());
+			this.appendChild(new LabelRemoveList());
 		}
 	}
 
@@ -16552,6 +16559,17 @@ window.rulesAssistantOptions = (function() {
 		}
 	}
 	
+	class LabelRemoveList extends List {
+		constructor() {
+			const items = [
+				["no default setting"],
+			];
+			super("Remove custom label", items, true);
+			this.setValue(current_rule.set.removeLabel);
+			this.onchange = (value) => current_rule.set.removeLabel = value;
+		}
+	}
+
 	class SkinColourList extends List {
 		constructor() {
 			const items = [
-- 
GitLab


From 5e09b4d65d8865e25d2bb75c56fe16f0e81fbfcc Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 19 Jul 2018 23:41:30 -0400
Subject: [PATCH 092/189] JSify PCTitle

---
 devNotes/twine JS.txt                       | 528 +++++++++++++++++++
 src/js/assayJS.tw                           | 528 +++++++++++++++++++
 src/pregmod/managePersonalAffairs.tw        |   2 +-
 src/pregmod/reMaleCitizenHookup.tw          |   2 +-
 src/uncategorized/BackwardsCompatibility.tw |   3 +
 src/uncategorized/reCitizenHookup.tw        |   2 +-
 src/uncategorized/reDevotees.tw             |   2 +-
 src/uncategorized/reputation.tw             |   2 +-
 src/uncategorized/sellSlave.tw              |  14 +-
 src/utility/miscWidgets.tw                  | 550 --------------------
 10 files changed, 1071 insertions(+), 562 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 968eb4a0553..0974c23f63b 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -7174,6 +7174,534 @@ window.PlayerName = function PlayerName() {
 	return names.join(" ").trim();
 };
 
+window.PCTitle = function PCTitle() {
+	const V = State.variables;
+	let titles = [];
+
+	V.PCTitle = PlayerName();
+
+	if (V.cheater === 1) {
+		V.PCTitle = (V.PCTitle + " the Cheater");
+	} else if (V.arcologies[0].FSRestart > 10) {
+		V.PCTitle = (V.PCTitle + " of the Societal Elite");
+	} else if (V.rep > 18000) {
+		V.PCTitle = (V.PCTitle + " the Great")
+	} else if (V.rep > 17000) {
+		V.PCTitle = ("the exalted " + V.PCTitle)
+	} else if (V.rep > 16000) {
+		V.PCTitle = ("the illustrious " + V.PCTitle)
+	} else if (V.rep > 15000) {
+		V.PCTitle = ("the prestigious " + V.PCTitle)
+	} else if (V.rep > 14000) {
+		V.PCTitle = ("the renowned " + V.PCTitle)
+	} else if (V.rep > 13000) {
+		V.PCTitle = ("the famed " + V.PCTitle)
+	} else if (V.rep > 12000) {
+		V.PCTitle = ("the celebrated " + V.PCTitle)
+	} else if (V.rep > 11000) {
+		V.PCTitle = ("the honored " + V.PCTitle)
+	} else if (V.rep > 10000) {
+		V.PCTitle = ("the acclaimed " + V.PCTitle)
+	} else if (V.rep > 9000) {
+		V.PCTitle = ("the eminent " + V.PCTitle)
+	} else if (V.rep > 8250) {
+		V.PCTitle = ("the prominent " + V.PCTitle)
+	} else if (V.rep > 7500) {
+		V.PCTitle = ("the distinguished " + V.PCTitle)
+	} else if (V.rep > 6750) {
+		V.PCTitle = ("the admired " + V.PCTitle)
+	} else if (V.rep > 6000) {
+		V.PCTitle = ("the esteemed " + V.PCTitle)
+	} else if (V.rep > 5250) {
+		V.PCTitle = ("the respected " + V.PCTitle)
+	} else if (V.rep > 4500) {
+		V.PCTitle = ("the known " + V.PCTitle)
+	} else if (V.rep > 3750) {
+		V.PCTitle = ("the recognized " + V.PCTitle)
+	} else if (V.rep > 3000) {
+		V.PCTitle = ("the rumored " + V.PCTitle)
+	}
+
+	V.PCTitle = (V.PCTitle + ", ");
+
+	if (V.PC.name == "FC Dev") {
+		titles.push("the Creator");
+	}
+
+
+	if (V.plot === 1) {
+		if (V.invasionVictory === 3) {
+			if (V.PC.title === 1) {
+				titles.push("Hero of the City");
+			} else {
+				titles.push("Heroine of the City");
+			}
+		} else if (V.invasionVictory === 2) {
+			titles.push("Defender of the City");
+		}
+		if (V.daughtersVictory === 3) {
+			titles.push("Destroyer of the Daughters");
+		} else if (V.daughtersVictory === 2) {
+			if (V.PC.title === 1) {
+				titles.push("Victor over the Daughters");
+			} else {
+				titles.push("Victrix over the Daughters");
+			}
+		}
+	}
+
+	if (V.mercenaries >= 5) {
+		if (V.mercenariesTitle === "Evocati") {
+			titles.push("Princeps of the " + V.mercenariesTitle);
+		} else if (V.mercenariesTitle === "Knights") {
+			if (V.PC.title === 1) {
+				titles.push("Lord Commander of the " + V.mercenariesTitle);
+			} else {
+				titles.push("Lady Commander of the " + V.mercenariesTitle);
+			}
+		} else if (V.mercenariesTitle === "Immortals") {
+			titles.push("Tyrant of the " + V.mercenariesTitle);
+		} else {
+			titles.push("Commander of the " + V.mercenariesTitle);
+		}
+	} else if (V.mercenaries >= 1) {
+		titles.push("Commander of the Mercenaries");
+	}
+
+
+	if (V.dispensary === 1) {
+		if (V.PC.title === 1) {
+			titles.push("Pharmacologos");
+		} else {
+			titles.push("Pharmacologes");
+		}
+	}
+
+	if (V.arcologies[0].FSSupremacist >= V.FSLockinLevel * 0.9) {
+		titles.push("Grand Champion of the Blood");
+	} else if (V.arcologies[0].FSSupremacist >= V.FSLockinLevel * 0.6) {
+		titles.push("Champion of the Blood");
+	} else if (V.arcologies[0].FSSupremacist >= V.FSLockinLevel * 0.3) {
+		titles.push("Defender of the Blood");
+	}
+
+	if (V.arcologies[0].FSSubjugationist >= V.FSLockinLevel * 0.9) {
+		titles.push("Grand Overseer of the Inferior Race");
+	} else if (V.arcologies[0].FSSubjugationist >= V.FSLockinLevel * 0.6) {
+		titles.push("Overseer of the Inferior Race");
+	} else if (V.arcologies[0].FSSubjugationist >= V.FSLockinLevel * 0.3) {
+		titles.push("Subduer of the Inferior Race");
+	}
+
+
+	if (V.arcologies[0].FSGenderRadicalist >= V.FSLockinLevel * 0.9) {
+		titles.push("Buttfucker of All Slaves");
+	} else if (V.arcologies[0].FSGenderRadicalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Sodomizer of the Traps");
+	} else if (V.arcologies[0].FSGenderRadicalist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("Penetrator of the Sissies");
+		} else {
+			titles.push("Penetratrix of the Sissies");
+		}
+	}
+
+	if (V.arcologies[0].FSGenderFundamentalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Father to the City");
+		} else {
+			titles.push("Mother to the City");
+		}
+	} else if (V.arcologies[0].FSGenderFundamentalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Defender of Women");
+	} else if (V.arcologies[0].FSGenderFundamentalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Restorer of Morals");
+	}
+
+	if (V.arcologies[0].FSPaternalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Protector to All Slaves");
+		} else {
+			titles.push("Protectrix to All Slaves");
+		}
+	} else if (V.arcologies[0].FSPaternalist >= V.FSLockinLevel * 0.6) {
+		if (V.PC.title === 1) {
+			titles.push("Benefactor of Slaves");
+		} else {
+			titles.push("Benefactrix of Slaves");
+		}
+	} else if (V.arcologies[0].FSPaternalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Pursuer of Justice");
+	}
+
+	if (V.arcologies[0].FSRepopulationFocus >= V.FSLockinLevel * 0.9) {
+		titles.push("the Savior of the Future");
+	} else if (V.arcologies[0].FSRepopulationFocus >= V.FSLockinLevel * 0.6) {
+		titles.push("the Holder of the Future");
+	} else if (V.arcologies[0].FSRepopulationFocus >= V.FSLockinLevel * 0.3) {
+		titles.push("the Repopulist");
+	}
+
+	if (V.arcologies[0].FSDegradationist >= V.FSLockinLevel * 0.9) {
+		titles.push("Holder of the Rod and the Lash");
+	} else if (V.arcologies[0].FSDegradationist >= V.FSLockinLevel * 0.6) {
+		titles.push("Subduer of Slaves");
+	} else if (V.arcologies[0].FSDegradationist >= V.FSLockinLevel * 0.3) {
+		titles.push("Pursuer of Justice");
+	}
+
+	if (V.arcologies[0].FSBodyPurist >= V.FSLockinLevel * 0.9) {
+		titles.push("the Purifier of the Breasts");
+	} else if (V.arcologies[0].FSBodyPurist >= V.FSLockinLevel * 0.6) {
+		titles.push("the Discerning");
+	} else if (V.arcologies[0].FSBodyPurist >= V.FSLockinLevel * 0.3) {
+		titles.push("the Tasteful");
+	}
+
+	if (V.arcologies[0].FSAssetExpansionist >= V.FSLockinLevel * 0.9) {
+		titles.push("the Expander of the Breasts");
+	} else if (V.arcologies[0].FSAssetExpansionist >= V.FSLockinLevel * 0.6) {
+		titles.push("the Expander");
+	} else if (V.arcologies[0].FSAssetExpansionist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("the Implantor");
+		} else {
+			titles.push("the Implantrix");
+		}
+	}
+
+	if (V.arcologies[0].FSPastoralist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("the Master of Stock");
+		} else {
+			titles.push("the Mistress of Stock");
+		}
+	} else if (V.arcologies[0].FSPastoralist >= V.FSLockinLevel * 0.6) {
+		titles.push("the Rancher");
+	} else if (V.arcologies[0].FSPastoralist >= V.FSLockinLevel * 0.3) {
+		titles.push("the Farmer");
+	}
+
+
+	if (V.arcologies[0].FSPhysicalIdealist >= V.FSLockinLevel * 0.9) {
+		titles.push("beloved of Brodin");
+	} else if (V.arcologies[0].FSPhysicalIdealist >= V.FSLockinLevel * 0.6) {
+		if (V.PC.title === 1) {
+			titles.push("he of the godlike Body");
+		} else {
+			titles.push("she of the godlike Body");
+		}
+	} else if (V.arcologies[0].FSPhysicalIdealist >= V.FSLockinLevel * 0.3) {
+		titles.push("advancer of Gains");
+	}
+
+
+	if (V.arcologies[0].FSHedonisticDecadence >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Master of Softness");
+		} else {
+			titles.push("Lady of Softness");
+		}
+	} else if (V.arcologies[0].FSHedonisticDecadence >= V.FSLockinLevel * 0.6) {
+		titles.push("Thickness Enthusiast");
+	} else if (V.arcologies[0].FSHedonisticDecadence >= V.FSLockinLevel * 0.3) {
+		titles.push("the Feeder");
+	}
+
+
+	if (V.arcologies[0].FSMaturityPreferentialist >= V.FSLockinLevel * 0.9) {
+		titles.push("Grand Preserver of MILFS");
+	} else if (V.arcologies[0].FSMaturityPreferentialist >= V.FSLockinLevel * 0.6) {
+		titles.push("Fucker of MILFS");
+	} else if (V.arcologies[0].FSMaturityPreferentialist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("he of the notorious MILF preference");
+		} else {
+			titles.push("she of the notorious MILF preference");
+		}
+	}
+
+	if (V.arcologies[0].FSYouthPreferentialist >= V.FSLockinLevel * 0.9) {
+		titles.push("Keeper of the Magnificent Young Harem");
+	} else if (V.arcologies[0].FSYouthPreferentialist >= V.FSLockinLevel * 0.6) {
+		titles.push("Keeper of Virgins");
+	} else if (V.arcologies[0].FSYouthPreferentialist >= V.FSLockinLevel * 0.3) {
+		titles.push("the Virginbreaker");
+	}
+
+
+	if (V.arcologies[0].FSChattelReligionistLaw === 1) {
+		titles.push("the Prophet");
+	} else if (V.arcologies[0].FSChattelReligionist >= V.FSLockinLevel * 0.9) {
+		titles.push("Keeper of the Blade and Chalice");
+	} else if (V.arcologies[0].FSChattelReligionist >= V.FSLockinLevel * 0.6) {
+		titles.push("Champion of the Faith");
+	} else if (V.arcologies[0].FSChattelReligionist >= V.FSLockinLevel * 0.3) {
+		titles.push("the Holy");
+	}
+
+
+	if (V.arcologies[0].FSRomanRevivalist >= V.FSLockinLevel * 0.9) {
+		titles.push("First Consul");
+	} else if (V.arcologies[0].FSRomanRevivalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Aedile");
+	} else if (V.arcologies[0].FSRomanRevivalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Quaestor");
+	}
+
+
+	if (V.arcologies[0].FSAztecRevivalist >= V.FSLockinLevel * 0.9) {
+		titles.push("Tlatcani");
+	} else if (V.arcologies[0].FSAztecRevivalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Cihuacoatl");
+	} else if (V.arcologies[0].FSAztecRevivalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Tlatoani");
+	}
+
+	if (V.arcologies[0].FSEgyptianRevivalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("the Living God");
+		} else {
+			titles.push("the Living Goddess");
+		}
+	} else if (V.arcologies[0].FSEgyptianRevivalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Pharaoh");
+	} else if (V.arcologies[0].FSEgyptianRevivalist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("Prince of the Nile");
+		} else {
+			titles.push("Princess of the Nile");
+		}
+	}
+
+	if (V.arcologies[0].FSEdoRevivalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Emperor and Descendant of Amaterasu");
+		} else {
+			titles.push("Amaterasu Reborn");
+		}
+	} else if (V.arcologies[0].FSEdoRevivalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Shogun");
+	} else if (V.arcologies[0].FSEdoRevivalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Daimyo");
+	}
+
+
+	if (V.arcologies[0].FSArabianRevivalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Caliph");
+		} else {
+			titles.push("Handmaiden of Allah");
+		}
+	} else if (V.arcologies[0].FSArabianRevivalist >= V.FSLockinLevel * 0.6) {
+		if (V.PC.title === 1) {
+			titles.push("Sultan");
+		} else {
+			titles.push("Sultana");
+		}
+	} else if (V.arcologies[0].FSArabianRevivalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Beloved of Allah");
+	}
+
+	if (V.arcologies[0].FSChineseRevivalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Emperor and Holder of the Mandate of Heaven");
+		} else {
+			titles.push("Empress and Holder of the Mandate of Heaven");
+		}
+	} else if (V.arcologies[0].FSChineseRevivalist >= V.FSLockinLevel * 0.6) {
+		if (V.PC.title === 1) {
+			titles.push("Emperor");
+		} else {
+			titles.push("Empress");
+		}
+	} else if (V.arcologies[0].FSChineseRevivalist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("Governor of the Province");
+		} else {
+			titles.push("Governess of the Province");
+		}
+	}
+
+
+	if (V.brothelSlaves >= 15) {
+		if (V.PC.title === 1) {
+			titles.push("Procurator of the Brothel");
+		} else {
+			titles.push("Procuratrix of the Brothel");
+		}
+	}
+
+	if (V.clubSlaves >= 15) {
+		titles.push("First on the Club");
+	}
+	if (V.dairySlaves >= 15) {
+		titles.push("Keeper of the Cattle");
+	}
+	if (V.cumSlaves >= 15) {
+		if (V.PC.title === 1) {
+			titles.push("Extractor of the Ejaculate");
+		} else {
+			titles.push("Extractrix of the Ejaculate");
+		}
+	}
+	if (V.servantsQuartersSlaves >= 15) {
+		if (V.PC.title === 1) {
+			titles.push("Director of the Servants");
+		} else {
+			titles.push("Directrix of the Servants");
+		}
+	}
+	if (V.schoolroomSlaves >= 10) {
+		if (V.PC.title === 1) {
+			titles.push("Educator of the Slaves");
+		} else {
+			titles.push("Educatrix of the Slaves");
+		}
+	}
+	if (V.spaSlaves >= 10) {
+		titles.push("Order of the Bath");
+	}
+	if (V.arcadeSlaves >= 15) {
+		titles.push("Comptroller of the Arcade");
+	}
+
+	let schoolsPresent = [], schoolsPerfected = [], schoolTitle = "";
+	if (V.TSS.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Slave School");
+	} else if (V.TSS.schoolPresent === 1) {
+		schoolsPresent.push("The Slave School");
+	}
+	if (V.GRI.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Growth Research Institute");
+	} else if (V.GRI.schoolPresent === 1) {
+		schoolsPresent.push("The Growth Research Institute");
+	}
+	if (V.SCP.schoolProsperity >= 10) {
+		schoolsPerfected.push("St. Claver Preparatory");
+	} else if (V.SCP.schoolPresent === 1) {
+		schoolsPresent.push("St. Claver Preparatory");
+	}
+	if (V.LDE.schoolProsperity >= 10) {
+		schoolsPerfected.push("L'École des Enculées");
+	} else if (V.LDE.schoolPresent === 1) {
+		schoolsPresent.push("L'École des Enculées");
+	}
+	if (V.TGA.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Gymnasium-Academy");
+	} else if (V.TGA.schoolPresent === 1) {
+		schoolsPresent.push("The Gymnasium-Academy");
+	}
+	if (V.HA.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Hippolyta Academy");
+	} else if (V.HA.schoolPresent === 1) {
+		schoolsPresent.push("The Hippolyta Academy");
+	}
+	if (V.TCR.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Cattle Ranch");
+	} else if (V.TCR.schoolPresent === 1) {
+		schoolsPresent.push("The Cattle Ranch");
+	}
+	if (schoolsPerfected.length > 0) {
+		if (V.PC.title === 1) {
+			schoolTitle = "Benefactor of ";
+		} else {
+			schoolTitle = "Benefactrix of ";
+		}
+		if (schoolsPerfected.length === 1) {
+			schoolTitle += schoolsPerfected[0];
+		} else if (schoolsPerfected.length === 2) {
+			schoolTitle += schoolsPerfected[0] + " and " + schoolsPerfected[1];
+		} else {
+			schoolsPerfected[schoolsPerfected.length - 1] = "and " + schoolsPerfected[schoolsPerfected.length - 1];
+			schoolTitle += schoolsPerfected.join(", ");
+		}
+		titles.push(schoolTitle);
+	}
+
+	if (schoolsPresent.length > 0) {
+		schoolTitle = "Supporter of ";
+		if (schoolsPresent.length === 1) {
+			schoolTitle += schoolsPresent[0];
+		} else if (schoolsPresent.length === 2) {
+			schoolTitle += schoolsPresent[0] + " and " + schoolsPresent[1];
+		} else {
+			schoolsPresent[schoolsPresent.length - 1] = "and " + schoolsPresent[schoolsPresent.length - 1];
+			schoolTitle += schoolsPresent.join(", ");
+		}
+		titles.push(schoolTitle);
+	}
+
+	if (V.TFS.schoolProsperity >= 10) {
+		titles.push("Honorary Sibling of the Futanari Sisters");
+	} else if (V.TFS.schoolPresent === 1) {
+		if (V.PC.title === 1) {
+			titles.push("Protector of the Futanari Sisters");
+		} else {
+			titles.push("Protectrix of the Futanari Sisters");
+		}
+	}
+
+	if (V.slaves.length > 50) {
+		if (V.PC.title === 1) {
+			titles.push("Master of Slaves");
+		} else {
+			titles.push("Mistress of Slaves");
+		}
+	} else if (V.slaves.length > 40) {
+		titles.push("Holder of Slaves");
+	} else if (V.slaves.length > 30) {
+		titles.push("Keeper of Slaves");
+	} else if (V.slaves.length > 20) {
+		titles.push("Manager of Slaves");
+	} else if (V.slaves.length > 10) {
+		titles.push("owner of slaves");
+	}
+
+	if (V.corpValue > 500000) {
+		titles.push("Corporate Titan");
+	} else if (V.corpValue > 250000) {
+		titles.push("corporate innovator");
+	} else if (V.corpValue > 100000) {
+		titles.push("corporate founder");
+	} else if (V.corpValue > 0) {
+		if (V.PC.title === 1) {
+			titles.push("noted corporate businessman");
+		} else {
+			titles.push("noted corporate businesswoman");
+		}
+	}
+
+	if (V.rep > 18000) {
+		if (V.PC.title === 1) {
+			titles.push("unquestioned Master of the Arcology");
+		} else {
+			titles.push("unquestioned Mistress of the Arcology");
+		}
+	} else if (V.rep > 15000) {
+		if (V.PC.title === 1) {
+			titles.push("Lord of the Arcology");
+		} else {
+			titles.push("Lady of the Arcology");
+		}
+	} else if (V.rep > 12000) {
+		titles.push("Ruler of the Arcology");
+	} else if (V.rep > 9000) {
+		titles.push("chief officer of the arcology");
+	} else {
+		titles.push("owner of the arcology");
+	}
+
+	if (titles.length === 1) {
+		V.PCTitle += titles[0];
+	} else if (titles.length === 2) {
+		V.PCTitle += titles[0] + " and " + titles[1];
+	} else {
+		titles[titles.length - 1] = "and " + titles[titles.length - 1];
+		V.PCTitle += titles.join(", ");
+	}
+};
+
 window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 	const V = State.variables, PC = V.PC, s = V.sEnunciate, ss = V.ssEnunciate;
 	
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index 0a1a30e2d2f..f7bb0bca0b7 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -552,6 +552,534 @@ window.PlayerName = function PlayerName() {
 	return names.join(" ").trim();
 };
 
+window.PCTitle = function PCTitle() {
+	const V = State.variables;
+	let titles = [];
+
+	V.PCTitle = PlayerName();
+
+	if (V.cheater === 1) {
+		V.PCTitle = (V.PCTitle + " the Cheater");
+	} else if (V.arcologies[0].FSRestart > 10) {
+		V.PCTitle = (V.PCTitle + " of the Societal Elite");
+	} else if (V.rep > 18000) {
+		V.PCTitle = (V.PCTitle + " the Great")
+	} else if (V.rep > 17000) {
+		V.PCTitle = ("the exalted " + V.PCTitle)
+	} else if (V.rep > 16000) {
+		V.PCTitle = ("the illustrious " + V.PCTitle)
+	} else if (V.rep > 15000) {
+		V.PCTitle = ("the prestigious " + V.PCTitle)
+	} else if (V.rep > 14000) {
+		V.PCTitle = ("the renowned " + V.PCTitle)
+	} else if (V.rep > 13000) {
+		V.PCTitle = ("the famed " + V.PCTitle)
+	} else if (V.rep > 12000) {
+		V.PCTitle = ("the celebrated " + V.PCTitle)
+	} else if (V.rep > 11000) {
+		V.PCTitle = ("the honored " + V.PCTitle)
+	} else if (V.rep > 10000) {
+		V.PCTitle = ("the acclaimed " + V.PCTitle)
+	} else if (V.rep > 9000) {
+		V.PCTitle = ("the eminent " + V.PCTitle)
+	} else if (V.rep > 8250) {
+		V.PCTitle = ("the prominent " + V.PCTitle)
+	} else if (V.rep > 7500) {
+		V.PCTitle = ("the distinguished " + V.PCTitle)
+	} else if (V.rep > 6750) {
+		V.PCTitle = ("the admired " + V.PCTitle)
+	} else if (V.rep > 6000) {
+		V.PCTitle = ("the esteemed " + V.PCTitle)
+	} else if (V.rep > 5250) {
+		V.PCTitle = ("the respected " + V.PCTitle)
+	} else if (V.rep > 4500) {
+		V.PCTitle = ("the known " + V.PCTitle)
+	} else if (V.rep > 3750) {
+		V.PCTitle = ("the recognized " + V.PCTitle)
+	} else if (V.rep > 3000) {
+		V.PCTitle = ("the rumored " + V.PCTitle)
+	}
+
+	V.PCTitle = (V.PCTitle + ", ");
+
+	if (V.PC.name == "FC Dev") {
+		titles.push("the Creator");
+	}
+
+
+	if (V.plot === 1) {
+		if (V.invasionVictory === 3) {
+			if (V.PC.title === 1) {
+				titles.push("Hero of the City");
+			} else {
+				titles.push("Heroine of the City");
+			}
+		} else if (V.invasionVictory === 2) {
+			titles.push("Defender of the City");
+		}
+		if (V.daughtersVictory === 3) {
+			titles.push("Destroyer of the Daughters");
+		} else if (V.daughtersVictory === 2) {
+			if (V.PC.title === 1) {
+				titles.push("Victor over the Daughters");
+			} else {
+				titles.push("Victrix over the Daughters");
+			}
+		}
+	}
+
+	if (V.mercenaries >= 5) {
+		if (V.mercenariesTitle === "Evocati") {
+			titles.push("Princeps of the " + V.mercenariesTitle);
+		} else if (V.mercenariesTitle === "Knights") {
+			if (V.PC.title === 1) {
+				titles.push("Lord Commander of the " + V.mercenariesTitle);
+			} else {
+				titles.push("Lady Commander of the " + V.mercenariesTitle);
+			}
+		} else if (V.mercenariesTitle === "Immortals") {
+			titles.push("Tyrant of the " + V.mercenariesTitle);
+		} else {
+			titles.push("Commander of the " + V.mercenariesTitle);
+		}
+	} else if (V.mercenaries >= 1) {
+		titles.push("Commander of the Mercenaries");
+	}
+
+
+	if (V.dispensary === 1) {
+		if (V.PC.title === 1) {
+			titles.push("Pharmacologos");
+		} else {
+			titles.push("Pharmacologes");
+		}
+	}
+
+	if (V.arcologies[0].FSSupremacist >= V.FSLockinLevel * 0.9) {
+		titles.push("Grand Champion of the Blood");
+	} else if (V.arcologies[0].FSSupremacist >= V.FSLockinLevel * 0.6) {
+		titles.push("Champion of the Blood");
+	} else if (V.arcologies[0].FSSupremacist >= V.FSLockinLevel * 0.3) {
+		titles.push("Defender of the Blood");
+	}
+
+	if (V.arcologies[0].FSSubjugationist >= V.FSLockinLevel * 0.9) {
+		titles.push("Grand Overseer of the Inferior Race");
+	} else if (V.arcologies[0].FSSubjugationist >= V.FSLockinLevel * 0.6) {
+		titles.push("Overseer of the Inferior Race");
+	} else if (V.arcologies[0].FSSubjugationist >= V.FSLockinLevel * 0.3) {
+		titles.push("Subduer of the Inferior Race");
+	}
+
+
+	if (V.arcologies[0].FSGenderRadicalist >= V.FSLockinLevel * 0.9) {
+		titles.push("Buttfucker of All Slaves");
+	} else if (V.arcologies[0].FSGenderRadicalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Sodomizer of the Traps");
+	} else if (V.arcologies[0].FSGenderRadicalist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("Penetrator of the Sissies");
+		} else {
+			titles.push("Penetratrix of the Sissies");
+		}
+	}
+
+	if (V.arcologies[0].FSGenderFundamentalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Father to the City");
+		} else {
+			titles.push("Mother to the City");
+		}
+	} else if (V.arcologies[0].FSGenderFundamentalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Defender of Women");
+	} else if (V.arcologies[0].FSGenderFundamentalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Restorer of Morals");
+	}
+
+	if (V.arcologies[0].FSPaternalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Protector to All Slaves");
+		} else {
+			titles.push("Protectrix to All Slaves");
+		}
+	} else if (V.arcologies[0].FSPaternalist >= V.FSLockinLevel * 0.6) {
+		if (V.PC.title === 1) {
+			titles.push("Benefactor of Slaves");
+		} else {
+			titles.push("Benefactrix of Slaves");
+		}
+	} else if (V.arcologies[0].FSPaternalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Pursuer of Justice");
+	}
+
+	if (V.arcologies[0].FSRepopulationFocus >= V.FSLockinLevel * 0.9) {
+		titles.push("the Savior of the Future");
+	} else if (V.arcologies[0].FSRepopulationFocus >= V.FSLockinLevel * 0.6) {
+		titles.push("the Holder of the Future");
+	} else if (V.arcologies[0].FSRepopulationFocus >= V.FSLockinLevel * 0.3) {
+		titles.push("the Repopulist");
+	}
+
+	if (V.arcologies[0].FSDegradationist >= V.FSLockinLevel * 0.9) {
+		titles.push("Holder of the Rod and the Lash");
+	} else if (V.arcologies[0].FSDegradationist >= V.FSLockinLevel * 0.6) {
+		titles.push("Subduer of Slaves");
+	} else if (V.arcologies[0].FSDegradationist >= V.FSLockinLevel * 0.3) {
+		titles.push("Pursuer of Justice");
+	}
+
+	if (V.arcologies[0].FSBodyPurist >= V.FSLockinLevel * 0.9) {
+		titles.push("the Purifier of the Breasts");
+	} else if (V.arcologies[0].FSBodyPurist >= V.FSLockinLevel * 0.6) {
+		titles.push("the Discerning");
+	} else if (V.arcologies[0].FSBodyPurist >= V.FSLockinLevel * 0.3) {
+		titles.push("the Tasteful");
+	}
+
+	if (V.arcologies[0].FSAssetExpansionist >= V.FSLockinLevel * 0.9) {
+		titles.push("the Expander of the Breasts");
+	} else if (V.arcologies[0].FSAssetExpansionist >= V.FSLockinLevel * 0.6) {
+		titles.push("the Expander");
+	} else if (V.arcologies[0].FSAssetExpansionist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("the Implantor");
+		} else {
+			titles.push("the Implantrix");
+		}
+	}
+
+	if (V.arcologies[0].FSPastoralist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("the Master of Stock");
+		} else {
+			titles.push("the Mistress of Stock");
+		}
+	} else if (V.arcologies[0].FSPastoralist >= V.FSLockinLevel * 0.6) {
+		titles.push("the Rancher");
+	} else if (V.arcologies[0].FSPastoralist >= V.FSLockinLevel * 0.3) {
+		titles.push("the Farmer");
+	}
+
+
+	if (V.arcologies[0].FSPhysicalIdealist >= V.FSLockinLevel * 0.9) {
+		titles.push("beloved of Brodin");
+	} else if (V.arcologies[0].FSPhysicalIdealist >= V.FSLockinLevel * 0.6) {
+		if (V.PC.title === 1) {
+			titles.push("he of the godlike Body");
+		} else {
+			titles.push("she of the godlike Body");
+		}
+	} else if (V.arcologies[0].FSPhysicalIdealist >= V.FSLockinLevel * 0.3) {
+		titles.push("advancer of Gains");
+	}
+
+
+	if (V.arcologies[0].FSHedonisticDecadence >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Master of Softness");
+		} else {
+			titles.push("Lady of Softness");
+		}
+	} else if (V.arcologies[0].FSHedonisticDecadence >= V.FSLockinLevel * 0.6) {
+		titles.push("Thickness Enthusiast");
+	} else if (V.arcologies[0].FSHedonisticDecadence >= V.FSLockinLevel * 0.3) {
+		titles.push("the Feeder");
+	}
+
+
+	if (V.arcologies[0].FSMaturityPreferentialist >= V.FSLockinLevel * 0.9) {
+		titles.push("Grand Preserver of MILFS");
+	} else if (V.arcologies[0].FSMaturityPreferentialist >= V.FSLockinLevel * 0.6) {
+		titles.push("Fucker of MILFS");
+	} else if (V.arcologies[0].FSMaturityPreferentialist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("he of the notorious MILF preference");
+		} else {
+			titles.push("she of the notorious MILF preference");
+		}
+	}
+
+	if (V.arcologies[0].FSYouthPreferentialist >= V.FSLockinLevel * 0.9) {
+		titles.push("Keeper of the Magnificent Young Harem");
+	} else if (V.arcologies[0].FSYouthPreferentialist >= V.FSLockinLevel * 0.6) {
+		titles.push("Keeper of Virgins");
+	} else if (V.arcologies[0].FSYouthPreferentialist >= V.FSLockinLevel * 0.3) {
+		titles.push("the Virginbreaker");
+	}
+
+
+	if (V.arcologies[0].FSChattelReligionistLaw === 1) {
+		titles.push("the Prophet");
+	} else if (V.arcologies[0].FSChattelReligionist >= V.FSLockinLevel * 0.9) {
+		titles.push("Keeper of the Blade and Chalice");
+	} else if (V.arcologies[0].FSChattelReligionist >= V.FSLockinLevel * 0.6) {
+		titles.push("Champion of the Faith");
+	} else if (V.arcologies[0].FSChattelReligionist >= V.FSLockinLevel * 0.3) {
+		titles.push("the Holy");
+	}
+
+
+	if (V.arcologies[0].FSRomanRevivalist >= V.FSLockinLevel * 0.9) {
+		titles.push("First Consul");
+	} else if (V.arcologies[0].FSRomanRevivalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Aedile");
+	} else if (V.arcologies[0].FSRomanRevivalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Quaestor");
+	}
+
+
+	if (V.arcologies[0].FSAztecRevivalist >= V.FSLockinLevel * 0.9) {
+		titles.push("Tlatcani");
+	} else if (V.arcologies[0].FSAztecRevivalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Cihuacoatl");
+	} else if (V.arcologies[0].FSAztecRevivalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Tlatoani");
+	}
+
+	if (V.arcologies[0].FSEgyptianRevivalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("the Living God");
+		} else {
+			titles.push("the Living Goddess");
+		}
+	} else if (V.arcologies[0].FSEgyptianRevivalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Pharaoh");
+	} else if (V.arcologies[0].FSEgyptianRevivalist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("Prince of the Nile");
+		} else {
+			titles.push("Princess of the Nile");
+		}
+	}
+
+	if (V.arcologies[0].FSEdoRevivalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Emperor and Descendant of Amaterasu");
+		} else {
+			titles.push("Amaterasu Reborn");
+		}
+	} else if (V.arcologies[0].FSEdoRevivalist >= V.FSLockinLevel * 0.6) {
+		titles.push("Shogun");
+	} else if (V.arcologies[0].FSEdoRevivalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Daimyo");
+	}
+
+
+	if (V.arcologies[0].FSArabianRevivalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Caliph");
+		} else {
+			titles.push("Handmaiden of Allah");
+		}
+	} else if (V.arcologies[0].FSArabianRevivalist >= V.FSLockinLevel * 0.6) {
+		if (V.PC.title === 1) {
+			titles.push("Sultan");
+		} else {
+			titles.push("Sultana");
+		}
+	} else if (V.arcologies[0].FSArabianRevivalist >= V.FSLockinLevel * 0.3) {
+		titles.push("Beloved of Allah");
+	}
+
+	if (V.arcologies[0].FSChineseRevivalist >= V.FSLockinLevel * 0.9) {
+		if (V.PC.title === 1) {
+			titles.push("Emperor and Holder of the Mandate of Heaven");
+		} else {
+			titles.push("Empress and Holder of the Mandate of Heaven");
+		}
+	} else if (V.arcologies[0].FSChineseRevivalist >= V.FSLockinLevel * 0.6) {
+		if (V.PC.title === 1) {
+			titles.push("Emperor");
+		} else {
+			titles.push("Empress");
+		}
+	} else if (V.arcologies[0].FSChineseRevivalist >= V.FSLockinLevel * 0.3) {
+		if (V.PC.title === 1) {
+			titles.push("Governor of the Province");
+		} else {
+			titles.push("Governess of the Province");
+		}
+	}
+
+
+	if (V.brothelSlaves >= 15) {
+		if (V.PC.title === 1) {
+			titles.push("Procurator of the Brothel");
+		} else {
+			titles.push("Procuratrix of the Brothel");
+		}
+	}
+
+	if (V.clubSlaves >= 15) {
+		titles.push("First on the Club");
+	}
+	if (V.dairySlaves >= 15) {
+		titles.push("Keeper of the Cattle");
+	}
+	if (V.cumSlaves >= 15) {
+		if (V.PC.title === 1) {
+			titles.push("Extractor of the Ejaculate");
+		} else {
+			titles.push("Extractrix of the Ejaculate");
+		}
+	}
+	if (V.servantsQuartersSlaves >= 15) {
+		if (V.PC.title === 1) {
+			titles.push("Director of the Servants");
+		} else {
+			titles.push("Directrix of the Servants");
+		}
+	}
+	if (V.schoolroomSlaves >= 10) {
+		if (V.PC.title === 1) {
+			titles.push("Educator of the Slaves");
+		} else {
+			titles.push("Educatrix of the Slaves");
+		}
+	}
+	if (V.spaSlaves >= 10) {
+		titles.push("Order of the Bath");
+	}
+	if (V.arcadeSlaves >= 15) {
+		titles.push("Comptroller of the Arcade");
+	}
+
+	let schoolsPresent = [], schoolsPerfected = [], schoolTitle = "";
+	if (V.TSS.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Slave School");
+	} else if (V.TSS.schoolPresent === 1) {
+		schoolsPresent.push("The Slave School");
+	}
+	if (V.GRI.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Growth Research Institute");
+	} else if (V.GRI.schoolPresent === 1) {
+		schoolsPresent.push("The Growth Research Institute");
+	}
+	if (V.SCP.schoolProsperity >= 10) {
+		schoolsPerfected.push("St. Claver Preparatory");
+	} else if (V.SCP.schoolPresent === 1) {
+		schoolsPresent.push("St. Claver Preparatory");
+	}
+	if (V.LDE.schoolProsperity >= 10) {
+		schoolsPerfected.push("L'École des Enculées");
+	} else if (V.LDE.schoolPresent === 1) {
+		schoolsPresent.push("L'École des Enculées");
+	}
+	if (V.TGA.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Gymnasium-Academy");
+	} else if (V.TGA.schoolPresent === 1) {
+		schoolsPresent.push("The Gymnasium-Academy");
+	}
+	if (V.HA.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Hippolyta Academy");
+	} else if (V.HA.schoolPresent === 1) {
+		schoolsPresent.push("The Hippolyta Academy");
+	}
+	if (V.TCR.schoolProsperity >= 10) {
+		schoolsPerfected.push("The Cattle Ranch");
+	} else if (V.TCR.schoolPresent === 1) {
+		schoolsPresent.push("The Cattle Ranch");
+	}
+	if (schoolsPerfected.length > 0) {
+		if (V.PC.title === 1) {
+			schoolTitle = "Benefactor of ";
+		} else {
+			schoolTitle = "Benefactrix of ";
+		}
+		if (schoolsPerfected.length === 1) {
+			schoolTitle += schoolsPerfected[0];
+		} else if (schoolsPerfected.length === 2) {
+			schoolTitle += schoolsPerfected[0] + " and " + schoolsPerfected[1];
+		} else {
+			schoolsPerfected[schoolsPerfected.length - 1] = "and " + schoolsPerfected[schoolsPerfected.length - 1];
+			schoolTitle += schoolsPerfected.join(", ");
+		}
+		titles.push(schoolTitle);
+	}
+
+	if (schoolsPresent.length > 0) {
+		schoolTitle = "Supporter of ";
+		if (schoolsPresent.length === 1) {
+			schoolTitle += schoolsPresent[0];
+		} else if (schoolsPresent.length === 2) {
+			schoolTitle += schoolsPresent[0] + " and " + schoolsPresent[1];
+		} else {
+			schoolsPresent[schoolsPresent.length - 1] = "and " + schoolsPresent[schoolsPresent.length - 1];
+			schoolTitle += schoolsPresent.join(", ");
+		}
+		titles.push(schoolTitle);
+	}
+
+	if (V.TFS.schoolProsperity >= 10) {
+		titles.push("Honorary Sibling of the Futanari Sisters");
+	} else if (V.TFS.schoolPresent === 1) {
+		if (V.PC.title === 1) {
+			titles.push("Protector of the Futanari Sisters");
+		} else {
+			titles.push("Protectrix of the Futanari Sisters");
+		}
+	}
+
+	if (V.slaves.length > 50) {
+		if (V.PC.title === 1) {
+			titles.push("Master of Slaves");
+		} else {
+			titles.push("Mistress of Slaves");
+		}
+	} else if (V.slaves.length > 40) {
+		titles.push("Holder of Slaves");
+	} else if (V.slaves.length > 30) {
+		titles.push("Keeper of Slaves");
+	} else if (V.slaves.length > 20) {
+		titles.push("Manager of Slaves");
+	} else if (V.slaves.length > 10) {
+		titles.push("owner of slaves");
+	}
+
+	if (V.corpValue > 500000) {
+		titles.push("Corporate Titan");
+	} else if (V.corpValue > 250000) {
+		titles.push("corporate innovator");
+	} else if (V.corpValue > 100000) {
+		titles.push("corporate founder");
+	} else if (V.corpValue > 0) {
+		if (V.PC.title === 1) {
+			titles.push("noted corporate businessman");
+		} else {
+			titles.push("noted corporate businesswoman");
+		}
+	}
+
+	if (V.rep > 18000) {
+		if (V.PC.title === 1) {
+			titles.push("unquestioned Master of the Arcology");
+		} else {
+			titles.push("unquestioned Mistress of the Arcology");
+		}
+	} else if (V.rep > 15000) {
+		if (V.PC.title === 1) {
+			titles.push("Lord of the Arcology");
+		} else {
+			titles.push("Lady of the Arcology");
+		}
+	} else if (V.rep > 12000) {
+		titles.push("Ruler of the Arcology");
+	} else if (V.rep > 9000) {
+		titles.push("chief officer of the arcology");
+	} else {
+		titles.push("owner of the arcology");
+	}
+
+	if (titles.length === 1) {
+		V.PCTitle += titles[0];
+	} else if (titles.length === 2) {
+		V.PCTitle += titles[0] + " and " + titles[1];
+	} else {
+		titles[titles.length - 1] = "and " + titles[titles.length - 1];
+		V.PCTitle += titles.join(", ");
+	}
+};
+
 window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 	const V = State.variables, PC = V.PC, s = V.sEnunciate, ss = V.ssEnunciate;
 	
diff --git a/src/pregmod/managePersonalAffairs.tw b/src/pregmod/managePersonalAffairs.tw
index 3bb86444fe9..f5699a25937 100644
--- a/src/pregmod/managePersonalAffairs.tw
+++ b/src/pregmod/managePersonalAffairs.tw
@@ -1,7 +1,7 @@
 :: Manage Personal Affairs [nobr] 
  
 <<set $nextButton = "Back", $nextLink = "Main", $showEncyclopedia = 0>>
-<<PCTitle>>
+<<run PCTitle()>>
 
 <<if $cheatMode == 1>>
 	<center>//[[Cheat Edit Player|PCCheatMenu][$cheater = 1]]<br><br>//</center>
diff --git a/src/pregmod/reMaleCitizenHookup.tw b/src/pregmod/reMaleCitizenHookup.tw
index 91a93c75362..680916c450f 100644
--- a/src/pregmod/reMaleCitizenHookup.tw
+++ b/src/pregmod/reMaleCitizenHookup.tw
@@ -175,7 +175,7 @@ He's yours for the taking, if you want him, and if his praise and proximity were
 <<default>>
 	flirt with you quite hard without crossing any lines between a citizen and an arcology owner.
 <</switch>>
-He's clearly attracted to you; even the most consummate actor would have difficulty fooling you, and his breath is a little quick, his pupils are a bit dilated, and he's blushing cutely. But he's no fool, either. A casual liaison with <<PCTitle>>$PCTitle would be a tremendous social boost for him.
+He's clearly attracted to you; even the most consummate actor would have difficulty fooling you, and his breath is a little quick, his pupils are a bit dilated, and he's blushing cutely. But he's no fool, either. A casual liaison with <<run PCTitle()>>$PCTitle would be a tremendous social boost for him.
 <br><br>
 
 <span id="result">
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index fe5beda585e..0f711524ea1 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -184,6 +184,9 @@
 <<if def $fetishChangeChance>>
 	<<unset $fetishChangeChance>>
 <</if>>
+<<if def $titles || def $schoolsPresent || def $schoolsPerfected || def $schoolTitle>>
+	<<unset $titles, $schoolsPresent, $schoolsPerfected, $schoolTitle>>
+<</if>>
 
 /* pregmod stuff */
 
diff --git a/src/uncategorized/reCitizenHookup.tw b/src/uncategorized/reCitizenHookup.tw
index e3f58c10323..e4f0595bd82 100644
--- a/src/uncategorized/reCitizenHookup.tw
+++ b/src/uncategorized/reCitizenHookup.tw
@@ -189,7 +189,7 @@ She's yours for the taking, if you want her, and if her praise and proximity wer
 <<default>>
 	flirt with you quite hard without crossing any lines between a citizen and an arcology owner.
 <</switch>>
-She's clearly attracted to you; even the most consummate actress would have difficulty fooling you, and her breath is a little quick, her pupils are a bit dilated, and she's blushing cutely. But she's no fool, either. A casual liaison with <<PCTitle>>$PCTitle would be a tremendous social boost for her.
+She's clearly attracted to you; even the most consummate actress would have difficulty fooling you, and her breath is a little quick, her pupils are a bit dilated, and she's blushing cutely. But she's no fool, either. A casual liaison with <<run PCTitle()>>$PCTitle would be a tremendous social boost for her.
 <br><br>
 
 <span id="result">
diff --git a/src/uncategorized/reDevotees.tw b/src/uncategorized/reDevotees.tw
index 7a06f3dc4b0..3aed7533860 100644
--- a/src/uncategorized/reDevotees.tw
+++ b/src/uncategorized/reDevotees.tw
@@ -29,7 +29,7 @@ You have a mature, well-trained household of slaves. $slaves[_red1].slaveName, $
 <span id="result">
 <<link "See an operetta with four attendants">>
 	<<replace "#result">>
-	<<PCTitle>>
+	<<run PCTitle()>>
 	You reserve a box at an upcoming operetta; classical Italian music is enjoying a renaissance these days. The doormen at the fashionable opera house promptly widen the velvet ropes so that you and your party may proceed unimpeded. Their quick thinking is necessary, since there are five of you walking sedately up the steps: you in the middle, impeccable in <<if $PC.title == 1>>gentleman's evening wear, complete with gloves and cane<<else>>a fine and noble lady's tuxedo<</if>>; and $slaves[_red1].slaveName, $slaves[_red2].slaveName, $slaves[_red3].slaveName, and $slaves[_red4].slaveName, all dressed in the gorgeous fashion of the seventeenth century, all plunging necklines, piled hair, and ruffled petticoats. The splendid master of ceremonies clears his throat and announces in a sonorous voice, "$PCTitle." The ostentation @@.green;turns every head and catches every eye.@@
 	<<set $rep += 500>>
 	<</replace>>
diff --git a/src/uncategorized/reputation.tw b/src/uncategorized/reputation.tw
index d8754e565aa..c1add7dc181 100644
--- a/src/uncategorized/reputation.tw
+++ b/src/uncategorized/reputation.tw
@@ -3,7 +3,7 @@
 <<if $useTabs == 0>>__Reputation__<</if>>
 <br>
 
-<<PCTitle>>
+<<run PCTitle()>>
 
 On formal occasions, you are announced as $PCTitle.
 
diff --git a/src/uncategorized/sellSlave.tw b/src/uncategorized/sellSlave.tw
index cd6a317ee72..eebeafc7f6d 100644
--- a/src/uncategorized/sellSlave.tw
+++ b/src/uncategorized/sellSlave.tw
@@ -151,25 +151,25 @@ A reputable slave appraiser arrives promptly to inspect her and certify her qual
 <<elseif $appraiser == "chinese">>
 	an older and rather stout woman<<if $arcologies[0].FSRepopulationFocusLaw == 1>>, with a noticeably heavy pregnancy,<</if>> in traditional Chinese dress, gives you a precise and proper greeting. She extracts a tablet from one of her wide sleeves and reviews video of the slave in action before performing a physical inspection. Then she seats herself, stows her tablet again, and recites in a didactic tone, "Honored
 	<<if def $PC.customTitle>>
-		"$PC.customTitle,
+		$PC.customTitle,
 	<<else>>
 		<<if $arcologies[0].FSChineseRevivalist >= $FSLockinLevel*0.9>>
 			<<if $PC.title == 1>>
-			<<set $titles.push("Emperor and Holder of the Mandate of Heaven")>>
+				Emperor and Holder of the Mandate of Heaven,
 			<<else>>
-			<<set $titles.push("Empress and Holder of the Mandate of Heaven")>>
+				Empress and Holder of the Mandate of Heaven,
 			<</if>>
 		<<elseif $arcologies[0].FSChineseRevivalist >= $FSLockinLevel*0.6>>
 			<<if $PC.title == 1>>
-			<<set $titles.push("Emperor")>>
+				Emperor,
 			<<else>>
-			<<set $titles.push("Empress")>>
+				Empress,
 			<</if>>
 		<<else>>
 			<<if $PC.title == 1>>
-			<<set $titles.push("Governor of the Province")>>
+				Governor of the Province,
 			<<else>>
-			<<set $titles.push("Governess of the Province")>>
+				Governess of the Province,
 			<</if>>
 		<</if>>
 	<</if>>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index 40793215da3..a762bfaf34a 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -510,556 +510,6 @@
 <</if>>
 <</widget>>
 
-/%
- Call as <<PCTitle>>
-%/
-<<widget "PCTitle">>
-
-<<if $surnameOrder != 1>>
-	<<switch $PC.nationality>>
-	<<case "Cambodian" "Chinese" "Hungarian" "Japanese" "Korean" "Mongolian" "Taiwanese" "Vietnamese">>
-		<<if $PC.surname>><<set $PCTitle = $PC.surname>><<set $PCTitle += " " + $PC.name>><<else>><<set $PCTitle = $PC.name>><</if>>
-	<<default>>
-		<<set $PCTitle = $PC.name>>
-		<<if $PC.surname>><<set $PCTitle += " " + $PC.surname>><</if>>
-	<</switch>>
-<<else>>
-	<<set $PCTitle = $PC.name>>
-	<<if $PC.surname>><<set $PCTitle += " " + $PC.surname>><</if>>
-<</if>>
-<<set $titles = []>>
-
-<<if $cheater == 1>>
-	<<set $PCTitle = ($PCTitle + " the Cheater")>>
-<<elseif $arcologies[0].FSRestart > 10>>
-	<<set $PCTitle = ($PCTitle + " of the Societal Elite")>>
-<<elseif $rep > 18000>>
-	<<set $PCTitle = ($PCTitle + " the Great")>>
-<<elseif $rep > 17000>>
-	<<set $PCTitle = ("the exalted " + $PCTitle)>>
-<<elseif $rep > 16000>>
-	<<set $PCTitle = ("the illustrious " + $PCTitle)>>
-<<elseif $rep > 15000>>
-	<<set $PCTitle = ("the prestigious " + $PCTitle)>>
-<<elseif $rep > 14000>>
-	<<set $PCTitle = ("the renowned " + $PCTitle)>>
-<<elseif $rep > 13000>>
-	<<set $PCTitle = ("the famed " + $PCTitle)>>
-<<elseif $rep > 12000>>
-	<<set $PCTitle = ("the celebrated " + $PCTitle)>>
-<<elseif $rep > 11000>>
-	<<set $PCTitle = ("the honored " + $PCTitle)>>
-<<elseif $rep > 10000>>
-	<<set $PCTitle = ("the acclaimed " + $PCTitle)>>
-<<elseif $rep > 9000>>
-	<<set $PCTitle = ("the eminent " + $PCTitle)>>
-<<elseif $rep > 8250>>
-	<<set $PCTitle = ("the prominent " + $PCTitle)>>
-<<elseif $rep > 7500>>
-	<<set $PCTitle = ("the distinguished " + $PCTitle)>>
-<<elseif $rep > 6750>>
-	<<set $PCTitle = ("the admired " + $PCTitle)>>
-<<elseif $rep > 6000>>
-	<<set $PCTitle = ("the esteemed " + $PCTitle)>>
-<<elseif $rep > 5250>>
-	<<set $PCTitle = ("the respected " + $PCTitle)>>
-<<elseif $rep > 4500>>
-	<<set $PCTitle = ("the known " + $PCTitle)>>
-<<elseif $rep > 3750>>
-	<<set $PCTitle = ("the recognized " + $PCTitle)>>
-<<elseif $rep > 3000>>
-	<<set $PCTitle = ("the rumored " + $PCTitle)>>
-<</if>>
-
-<<set $PCTitle = ($PCTitle + ", ")>>
-
-<<if $PC.name == "FC Dev">>
-	<<set $titles.push("the Creator")>>
-<</if>>
-
-<<if $plot == 1>>
-	<<if $invasionVictory == 3>>
-	<<if $PC.title == 1>>
-		<<set $titles.push("Hero of the City")>>
-	<<else>>
-		<<set $titles.push("Heroine of the City")>>
-	<</if>>
-	<<elseif $invasionVictory == 2>>
-	<<set $titles.push("Defender of the City")>>
-	<</if>>
-	<<if $daughtersVictory == 3>>
-	<<set $titles.push("Destroyer of the Daughters")>>
-	<<elseif $daughtersVictory == 2>>
-	<<if $PC.title == 1>>
-		<<set $titles.push("Victor over the Daughters")>>
-	<<else>>
-		<<set $titles.push("Victrix over the Daughters")>>
-	<</if>>
-	<</if>>
-<</if>>
-
-<<if $mercenaries >= 5>>
-	<<if $mercenariesTitle == "Evocati">>
-	<<set $seed = $mercenariesTitle>>
-	<<set $seed = ("Princeps of the " + $seed)>>
-	<<set $titles.push($seed)>>
-	<<elseif $mercenariesTitle == "Knights">>
-	<<set $seed = $mercenariesTitle>>
-	<<if $PC.title == 1>>
-		<<set $seed = ("Lord Commander of the " + $seed)>>
-	<<else>>
-		<<set $seed = ("Lady Commander of the " + $seed)>>
-	<</if>>
-	<<set $titles.push($seed)>>
-	<<elseif $mercenariesTitle == "Immortals">>
-	<<set $seed = $mercenariesTitle>>
-	<<set $seed = ("Tyrant of the " + $seed)>>
-	<<set $titles.push($seed)>>
-	<<else>>
-	<<set $seed = $mercenariesTitle>>
-	<<set $seed = ("Commander of the " + $seed)>>
-	<<set $titles.push($seed)>>
-	<</if>>
-<<elseif $mercenaries >= 1>>
-	<<set $titles.push("Commander of the Mercenaries")>>
-<</if>>
-
-<<if $dispensary == 1>>
-	<<if $PC.title == 1>>
-		<<set $titles.push("Pharmacologos")>>
-	<<else>>
-		<<set $titles.push("Pharmacologes")>>
-	<</if>>
-<</if>>
-
-<<if $arcologies[0].FSSupremacist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("Grand Champion of the Blood")>>
-<<elseif $arcologies[0].FSSupremacist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Champion of the Blood")>>
-<<elseif $arcologies[0].FSSupremacist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Defender of the Blood")>>
-<</if>>
-
-<<if $arcologies[0].FSSubjugationist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("Grand Overseer of the Inferior Race")>>
-<<elseif $arcologies[0].FSSubjugationist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Overseer of the Inferior Race")>>
-<<elseif $arcologies[0].FSSubjugationist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Subduer of the Inferior Race")>>
-<</if>>
-
-<<if $arcologies[0].FSGenderRadicalist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("Buttfucker of All Slaves")>>
-<<elseif $arcologies[0].FSGenderRadicalist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Sodomizer of the Traps")>>
-<<elseif $arcologies[0].FSGenderRadicalist >= $FSLockinLevel*0.3>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Penetrator of the Sissies")>>
-	<<else>>
-	<<set $titles.push("Penetratrix of the Sissies")>>
-	<</if>>
-<</if>>
-
-<<if $arcologies[0].FSGenderFundamentalist >= $FSLockinLevel*0.9>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Father to the City")>>
-	<<else>>
-	<<set $titles.push("Mother to the City")>>
-	<</if>>
-<<elseif $arcologies[0].FSGenderFundamentalist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Defender of Women")>>
-<<elseif $arcologies[0].FSGenderFundamentalist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Restorer of Morals")>>
-<</if>>
-
-<<if $arcologies[0].FSPaternalist >= $FSLockinLevel*0.9>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Protector to All Slaves")>>
-	<<else>>
-	<<set $titles.push("Protectrix to All Slaves")>>
-	<</if>>
-<<elseif $arcologies[0].FSPaternalist >= $FSLockinLevel*0.6>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Benefactor of Slaves")>>
-	<<else>>
-	<<set $titles.push("Benefactrix of Slaves")>>
-	<</if>>
-<<elseif $arcologies[0].FSPaternalist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Pursuer of Justice")>>
-<</if>>
-
-<<if $arcologies[0].FSRepopulationFocus >= $FSLockinLevel*0.9>>
-		<<set $titles.push("the Savior of the Future")>>
-<<elseif $arcologies[0].FSRepopulationFocus >= $FSLockinLevel*0.6>>
-	<<set $titles.push("the Holder of the Future")>>
-<<elseif $arcologies[0].FSRepopulationFocus >= $FSLockinLevel*0.3>>
-	<<set $titles.push("the Repopulist")>>
-<</if>>
-
-<<if $arcologies[0].FSDegradationist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("Holder of the Rod and the Lash")>>
-<<elseif $arcologies[0].FSDegradationist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Subduer of Slaves")>>
-<<elseif $arcologies[0].FSDegradationist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Pursuer of Justice")>>
-<</if>>
-
-<<if $arcologies[0].FSBodyPurist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("the Purifier of the Breasts")>>
-<<elseif $arcologies[0].FSBodyPurist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("the Discerning")>>
-<<elseif $arcologies[0].FSBodyPurist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("the Tasteful")>>
-<</if>>
-
-<<if $arcologies[0].FSAssetExpansionist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("the Expander of the Breasts")>>
-<<elseif $arcologies[0].FSAssetExpansionist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("the Expander")>>
-<<elseif $arcologies[0].FSAssetExpansionist >= $FSLockinLevel*0.3>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("the Implantor")>>
-	<<else>>
-	<<set $titles.push("the Implantrix")>>
-	<</if>>
-<</if>>
-
-<<if $arcologies[0].FSPastoralist >= $FSLockinLevel*0.9>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("the Master of Stock")>>
-	<<else>>
-	<<set $titles.push("the Mistress of Stock")>>
-	<</if>>
-<<elseif $arcologies[0].FSPastoralist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("the Rancher")>>
-<<elseif $arcologies[0].FSPastoralist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("the Farmer")>>
-<</if>>
-
-<<if $arcologies[0].FSPhysicalIdealist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("beloved of Brodin")>>
-<<elseif $arcologies[0].FSPhysicalIdealist >= $FSLockinLevel*0.6>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("he of the godlike Body")>>
-	<<else>>
-	<<set $titles.push("she of the godlike Body")>>
-	<</if>>
-<<elseif $arcologies[0].FSPhysicalIdealist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("advancer of Gains")>>
-<</if>>
-
-<<if $arcologies[0].FSHedonisticDecadence >= $FSLockinLevel*0.9>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Master of Softness")>>
-	<<else>>
-	<<set $titles.push("Lady of Softness")>>
-	<</if>>
-<<elseif $arcologies[0].FSHedonisticDecadence >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Thickness Eunthusiast")>>
-<<elseif $arcologies[0].FSHedonisticDecadence >= $FSLockinLevel*0.3>>
-	<<set $titles.push("the Feeder")>>
-<</if>>
-
-<<if $arcologies[0].FSMaturityPreferentialist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("Grand Preserver of MILFS")>>
-<<elseif $arcologies[0].FSMaturityPreferentialist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Fucker of MILFS")>>
-<<elseif $arcologies[0].FSMaturityPreferentialist >= $FSLockinLevel*0.3>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("he of the notorious MILF preference")>>
-	<<else>>
-	<<set $titles.push("she of the notorious MILF preference")>>
-	<</if>>
-<</if>>
-
-<<if $arcologies[0].FSYouthPreferentialist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("Keeper of the Magnificent Young Harem")>>
-<<elseif $arcologies[0].FSYouthPreferentialist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Keeper of Virgins")>>
-<<elseif $arcologies[0].FSYouthPreferentialist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("the Virginbreaker")>>
-<</if>>
-
-<<if $arcologies[0].FSChattelReligionistLaw == 1>>
-	<<set $titles.push("the Prophet")>>
-<<elseif $arcologies[0].FSChattelReligionist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("Keeper of the Blade and Chalice")>>
-<<elseif $arcologies[0].FSChattelReligionist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Champion of the Faith")>>
-<<elseif $arcologies[0].FSChattelReligionist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("the Holy")>>
-<</if>>
-
-<<if $arcologies[0].FSRomanRevivalist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("First Consul")>>
-<<elseif $arcologies[0].FSRomanRevivalist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Aedile")>>
-<<elseif $arcologies[0].FSRomanRevivalist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Quaestor")>>
-<</if>>
-
-<<if $arcologies[0].FSAztecRevivalist >= $FSLockinLevel*0.9>>
-	<<set $titles.push("Tlatcani")>>
-<<elseif $arcologies[0].FSAztecRevivalist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Cihuacoatl")>>
-<<elseif $arcologies[0].FSAztecRevivalist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Tlatoani")>>
-<</if>>
-
-<<if $arcologies[0].FSEgyptianRevivalist >= $FSLockinLevel*0.9>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("the Living God")>>
-	<<else>>
-	<<set $titles.push("the Living Goddess")>>
-	<</if>>
-<<elseif $arcologies[0].FSEgyptianRevivalist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Pharaoh")>>
-<<elseif $arcologies[0].FSEgyptianRevivalist >= $FSLockinLevel*0.3>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Prince of the Nile")>>
-	<<else>>
-	<<set $titles.push("Princess of the Nile")>>
-	<</if>>
-<</if>>
-
-<<if $arcologies[0].FSEdoRevivalist >= $FSLockinLevel*0.9>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Emperor and Descendant of Amaterasu")>>
-	<<else>>
-	<<set $titles.push("Amaterasu Reborn")>>
-	<</if>>
-<<elseif $arcologies[0].FSEdoRevivalist >= $FSLockinLevel*0.6>>
-	<<set $titles.push("Shogun")>>
-<<elseif $arcologies[0].FSEdoRevivalist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Daimyo")>>
-<</if>>
-
-<<if $arcologies[0].FSArabianRevivalist >= $FSLockinLevel*0.9>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Caliph")>>
-	<<else>>
-	<<set $titles.push("Handmaiden of Allah")>>
-	<</if>>
-<<elseif $arcologies[0].FSArabianRevivalist >= $FSLockinLevel*0.6>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Sultan")>>
-	<<else>>
-	<<set $titles.push("Sultana")>>
-	<</if>>
-<<elseif $arcologies[0].FSArabianRevivalist >= $FSLockinLevel*0.3>>
-	<<set $titles.push("Beloved of Allah")>>
-<</if>>
-
-<<if $arcologies[0].FSChineseRevivalist >= $FSLockinLevel*0.9>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Emperor and Holder of the Mandate of Heaven")>>
-	<<else>>
-	<<set $titles.push("Empress and Holder of the Mandate of Heaven")>>
-	<</if>>
-<<elseif $arcologies[0].FSChineseRevivalist >= $FSLockinLevel*0.6>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Emperor")>>
-	<<else>>
-	<<set $titles.push("Empress")>>
-	<</if>>
-<<elseif $arcologies[0].FSChineseRevivalist >= $FSLockinLevel*0.3>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Governor of the Province")>>
-	<<else>>
-	<<set $titles.push("Governess of the Province")>>
-	<</if>>
-<</if>>
-
-<<if $brothelSlaves >= 15>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Procurator of the Brothel")>>
-	<<else>>
-	<<set $titles.push("Procuratrix of the Brothel")>>
-	<</if>>
-<</if>>
-<<if $clubSlaves >= 15>>
-	<<set $titles.push("First on the Club")>>
-<</if>>
-<<if $dairySlaves >= 15>>
-	<<set $titles.push("Keeper of the Cattle")>>
-<</if>>
-<<if $cumSlaves >= 15>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Extractor of the Ejaculate")>>
-	<<else>>
-	<<set $titles.push("Extractrix of the Ejaculate")>>
-	<</if>>
-<</if>>
-<<if $servantsQuartersSlaves >= 15>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Director of the Servants")>>
-	<<else>>
-	<<set $titles.push("Directrix of the Servants")>>
-	<</if>>
-<</if>>
-<<if $schoolroomSlaves >= 10>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Educator of the Slaves")>>
-	<<else>>
-	<<set $titles.push("Educatrix of the Slaves")>>
-	<</if>>
-<</if>>
-<<if $spaSlaves >= 10>>
-	<<set $titles.push("Order of the Bath")>>
-<</if>>
-<<if $arcadeSlaves >= 15>>
-	<<set $titles.push("Comptroller of the Arcade")>>
-<</if>>
-
-<<set $schoolsPresent = []>>
-<<set $schoolsPerfected = []>>
-<<if $TSS.schoolProsperity >= 10>>
-	<<set $schoolsPerfected.push("The Slave School")>>
-<<elseif $TSS.schoolPresent == 1>>
-	<<set $schoolsPresent.push("The Slave School")>>
-<</if>>
-<<if $GRI.schoolProsperity >= 10>>
-	<<set $schoolsPerfected.push("The Growth Research Institute")>>
-<<elseif $GRI.schoolPresent == 1>>
-	<<set $schoolsPresent.push("The Growth Research Institute")>>
-<</if>>
-<<if $SCP.schoolProsperity >= 10>>
-	<<set $schoolsPerfected.push("St. Claver Preparatory")>>
-<<elseif $SCP.schoolPresent == 1>>
-	<<set $schoolsPresent.push("St. Claver Preparatory")>>
-<</if>>
-<<if $LDE.schoolProsperity >= 10>>
-	<<set $schoolsPerfected.push("L'École des Enculées")>>
-<<elseif $LDE.schoolPresent == 1>>
-	<<set $schoolsPresent.push("L'École des Enculées")>>
-<</if>>
-<<if $TGA.schoolProsperity >= 10>>
-	<<set $schoolsPerfected.push("The Gymnasium-Academy")>>
-<<elseif $TGA.schoolPresent == 1>>
-	<<set $schoolsPresent.push("The Gymnasium-Academy")>>
-<</if>>
-<<if $HA.schoolProsperity >= 10>>
-	<<set $schoolsPerfected.push("The Hippolyta Academy")>>
-<<elseif $HA.schoolPresent == 1>>
-	<<set $schoolsPresent.push("The Hippolyta Academy")>>
-<</if>>
-<<if $TCR.schoolProsperity >= 10>>
-	<<set $schoolsPerfected.push("The Cattle Ranch")>>
-<<elseif $TCR.schoolPresent == 1>>
-	<<set $schoolsPresent.push("The Cattle Ranch")>>
-<</if>>
-<<if $schoolsPerfected.length > 0>>
-	<<if $PC.title == 1>>
-	<<set $schoolTitle = "Benefactor of ">>
-	<<else>>
-	<<set $schoolTitle = "Benefactrix of ">>
-	<</if>>
-	<<for _mwi = 0; _mwi < $schoolsPerfected.length; _mwi++>>
-		<<set $seed = $schoolsPerfected[_mwi]>>
-		<<set $schoolTitle = ($schoolTitle + $seed)>>
-		<<if _mwi < $schoolsPerfected.length-2>>
-			<<set $schoolTitle = ($schoolTitle + ", ")>>
-		<<elseif _mwi == $schoolsPerfected.length-2>>
-			<<if $schoolsPerfected.length > 2>>
-			<<set $schoolTitle = ($schoolTitle + ", and ")>>
-			<<else>>
-			<<set $schoolTitle = ($schoolTitle + " and ")>>
-			<</if>>
-		<</if>>
-	<</for>>
-	<<set $titles.push($schoolTitle)>>
-<</if>>
-<<if $schoolsPresent.length > 0>>
-	<<set $schoolTitle = "Supporter of ">>
-	<<for _mwi = 0; _mwi < $schoolsPresent.length; _mwi++>>
-	<<set $seed = $schoolsPresent[_mwi]>>
-	<<set $schoolTitle = ($schoolTitle + $seed)>>
-	<<if _mwi < $schoolsPresent.length-2>>
-		<<set $schoolTitle = ($schoolTitle + ", ")>>
-	<<elseif _mwi == $schoolsPresent.length-2>>
-		<<if $schoolsPresent.length > 2>>
-		<<set $schoolTitle = ($schoolTitle + ", and ")>>
-		<<else>>
-		<<set $schoolTitle = ($schoolTitle + " and ")>>
-		<</if>>
-	<</if>>
-	<</for>>
-	<<set $titles.push($schoolTitle)>>
-<</if>>
-<<if $TFS.schoolProsperity >= 10>>
-	<<set $titles.push("Honorary Sibling of the Futanari Sisters")>>
-<<elseif $TFS.schoolPresent == 1>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Protector of the Futanari Sisters")>>
-	<<else>>
-	<<set $titles.push("Protectrix of the Futanari Sisters")>>
-	<</if>>
-<</if>>
-
-<<if $slaves.length > 50>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Master of Slaves")>>
-	<<else>>
-	<<set $titles.push("Mistress of Slaves")>>
-	<</if>>
-<<elseif $slaves.length > 40>>
-	<<set $titles.push("Holder of Slaves")>>
-<<elseif $slaves.length > 30>>
-	<<set $titles.push("Keeper of Slaves")>>
-<<elseif $slaves.length > 20>>
-	<<set $titles.push("Manager of Slaves")>>
-<<elseif $slaves.length > 10>>
-	<<set $titles.push("owner of slaves")>>
-<</if>>
-
-<<if $corpValue > 500000>>
-	<<set $titles.push("Corporate Titan")>>
-<<elseif $corpValue > 250000>>
-	<<set $titles.push("corporate innovator")>>
-<<elseif $corpValue > 100000>>
-	<<set $titles.push("corporate founder")>>
-<<elseif $corpValue > 0>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("noted corporate businessman")>>
-	<<else>>
-	<<set $titles.push("noted corporate businesswoman")>>
-	<</if>>
-<</if>>
-
-<<if $titles.length > 0>>
-	<<set $titles.push("and ")>>
-<</if>>
-
-<<if $rep > 18000>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("unquestioned Master of the Arcology")>>
-	<<else>>
-	<<set $titles.push("unquestioned Mistress of the Arcology")>>
-	<</if>>
-<<elseif $rep > 15000>>
-	<<if $PC.title == 1>>
-	<<set $titles.push("Lord of the Arcology")>>
-	<<else>>
-	<<set $titles.push("Lady of the Arcology")>>
-	<</if>>
-<<elseif $rep > 12000>>
-	<<set $titles.push("Ruler of the Arcology")>>
-<<elseif $rep > 9000>>
-	<<set $titles.push("chief officer of the arcology")>>
-<<else>>
-	<<set $titles.push("owner of the arcology")>>
-<</if>>
-
-<<for _mwi = 0; _mwi < $titles.length; _mwi++>>
-	<<set $seed = $titles[_mwi]>>
-	<<set $PCTitle = ($PCTitle + $seed)>>
-	<<if _mwi < $titles.length-2>>
-	<<set $PCTitle = ($PCTitle + ", ")>>
-	<</if>>
-<</for>>
-
-<</widget>>
-
 /%
  Call as <<OralSkillIncrease>>
  $args[0]: Slave.
-- 
GitLab


From d35baa3fea0c9a1caf03d9a3921ea1bf9616d15a Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Thu, 19 Jul 2018 23:58:04 -0500
Subject: [PATCH 093/189] Pronouns

---
 src/interaction/cyberConfig.tw                |   40 +-
 src/pregmod/fillUpButt.tw                     |   12 +-
 src/pregmod/incubatorReport.tw                |  226 +-
 src/pregmod/organFarmOptions.tw               |   12 +-
 src/pregmod/saInflation.tw                    |  226 +-
 src/pregmod/seFCTVshows.tw                    |    4 +-
 src/pregmod/widgets/bodySwapReaction.tw       | 1908 ++++++-------
 src/pregmod/widgets/pregmodBirthWidgets.tw    | 1078 ++++----
 src/pregmod/widgets/seBirthWidgets.tw         |  240 +-
 src/uncategorized/bodyModification.tw         |  252 +-
 src/uncategorized/bodyModificationReaction.tw |   22 +-
 src/uncategorized/newSlaveIntro.tw            |  716 ++---
 src/uncategorized/saDevotion.tw               |  260 +-
 src/uncategorized/saLongTermEffects.tw        | 2390 ++++++++---------
 src/uncategorized/saWorkAGloryHole.tw         |   68 +-
 src/uncategorized/useGuard.tw                 |  118 +-
 src/utility/birthWidgets.tw                   |   12 +-
 17 files changed, 3792 insertions(+), 3792 deletions(-)

diff --git a/src/interaction/cyberConfig.tw b/src/interaction/cyberConfig.tw
index 3c12ee061d0..35210abd766 100644
--- a/src/interaction/cyberConfig.tw
+++ b/src/interaction/cyberConfig.tw
@@ -12,11 +12,11 @@
 		<</if>>
 	
 	<<if $activeSlave.origEye == "implant">><br><br>&nbsp;
-		$pronounCap has an ocular implant installed. 
+		$He has an ocular implant installed. 
 		<<if $activeSlave.eyes == 1>>
 			They are operating normally.
 		<<elseif $activeSlave.eyes == -1>>
-			They are set to blur her vision.
+			They are set to blur $his vision.
 		<<else>>
 			They are turned off.
 		<</if>>
@@ -25,11 +25,11 @@
 		<<if $activeSlave.eyes != -1>>[[Blur|cyberConfig][$activeSlave.eyes = -1,$temp = 3]] | <</if>>
 		<<if $activeSlave.eyes != -2>>[[Disable|cyberConfig][$activeSlave.eyes = -2,$temp = 3]]<</if>>
 
-		$pronounCap currently has $activeSlave.eyeColor lenses equipped.
+		$He currently has $activeSlave.eyeColor lenses equipped.
 
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 
-		Swap out $possessive lenses:
+		Swap out $his lenses:
 		[[Blue|cyberConfig][$activeSlave.eyeColor = "blue",$temp = 2,$cash -= $modCost]]
 		| [[Black|cyberConfig][$activeSlave.eyeColor = "black",$temp = 2,$cash -= $modCost]]
 		| [[Brown|cyberConfig][$activeSlave.eyeColor = "brown",$temp = 2,$cash -= $modCost]]
@@ -51,9 +51,9 @@
 	<</if>>
 	
 	<<if $activeSlave.PLimb > 0>><br><br>
-		$pronounCap has PLimb interface installed. You can assign and adjust $possessive prosthetics here.
+		$He has PLimb interface installed. You can assign and adjust $his prosthetics here.
 		<<if $activeSlave.amp <= -1>><br>&nbsp;
-			$possessiveCap prosthetics are currently attached, if you wish to change them you will first need to detach them.<br>
+			$His prosthetics are currently attached, if you wish to change them you will first need to detach them.<br>
 			[[Detach|cyberConfig][$temp = 1,$nextButton = "Continue", $nextLink = "cyberConfig"]]
 		<<else>><br>&nbsp;
 			<<if $stockpile.basicPLimb > 0>>[[Attach basic limbs|cyberConfig][$temp = 4, $activeSlave.amp = -1, $stockpile.basicPLimb -= 1]]<</if>>
@@ -69,9 +69,9 @@
 	
 	<<else>>
 		<<if $activeSlave.amp == 0>><br>
-			$pronounCap has healthy limbs so there is no need for prosthetics.
+			$He has healthy limbs so there is no need for prosthetics.
 		<<else>><br>
-			$pronounCap does not have a PLimb interface installed so you can't give $possessive any prosthetics.
+			$He does not have a PLimb interface installed so you can't give $him any prosthetics.
 		<</if>>
 	<</if>>
 
@@ -86,30 +86,30 @@
 	<<set $activeSlave.amp = 1>>
 	Due to built-in safeties it is necessary to remove each limb separately, first releasing the lock and then waiting for automated seal release.<br>
 	<<if ($activeSlave.devotion > 20)>>
-		You instruct $possessive to lie down on the table and proceed to remove $possessive limbs. $pronounCap <<if canSee($activeSlave)>>watches<<else>>listens<</if>> with interest as you work.<<if ($activeSlave.devotion > 50)>> As you remove the last limb $pronoun playfully wiggles $possessive stumps at you.<</if>>
+		You instruct $him to lie down on the table and proceed to remove $his limbs. $He <<if canSee($activeSlave)>>watches<<else>>listens<</if>> with interest as you work.<<if ($activeSlave.devotion > 50)>> As you remove the last limb $pronoun playfully wiggles $his stumps at you.<</if>>
 	<<else>>
-		You order $possessive to lie down on the table and proceed to remove $possessive limbs. $pronounCap <<if canSee($activeSlave)>>watches<<else>>listens<</if>> with a bitter expression as you work. 
+		You order $his to lie down on the table and proceed to remove $his limbs. $He <<if canSee($activeSlave)>>watches<<else>>listens<</if>> with a bitter expression as you work. 
 	<</if>>
 	
 <<case 2>>
 	<<set $temp = 0, $nextButton = "Continue", $nextLink = "cyberConfig">>
-	<<if $activeSlave.amp != 1>>You have $possessive lie down and<<else>>You<</if>> use a speculum to keep $possessive eyes open while you disengage $possessive lenses remotely and swap them out with $possessive new $activeSlave.eyeColor lenses.
+	<<if $activeSlave.amp != 1>>You have $his lie down and<<else>>You<</if>> use a speculum to keep $his eyes open while you disengage $his lenses remotely and swap them out with $his new $activeSlave.eyeColor lenses.
 <<case 3>>
 	<<set $temp = 0, $nextButton = "Continue", $nextLink = "cyberConfig">>
 	<<if $activeSlave.eyes == 1>>
-		$pronounCap blinks as $possessive vision returns.
+		$He blinks as $his vision returns.
 	<<elseif $activeSlave.eyes == -1>>
-		$pronounCap squints at you as $possessive vision becomes a blur.
+		$He squints at you as $his vision becomes a blur.
 	<<else>>
-		$pronounCap has a panicked expression when $possessive vision suddenly goes out.
+		$He has a panicked expression when $his vision suddenly goes out.
 	<</if>>
 <<case 4>>
 	<<set $temp = 0, $nextButton = "Continue", $nextLink = "cyberConfig">>
-	Attaching $possessive limbs is a simple procedure, you simply push a connector on each limb into the socket in $possessive implants until the lock engages.<<if $activeSlave.PLimb == 2>> $pronounCap jumps a bit as limbs connect to $possessive nerves.<</if>> When you are done, $pronoun sits up and 
-	<<if $activeSlave.amp == -2>>experimentally engages the vibe function in $possessive fingers.
-	<<elseif $activeSlave.amp == -3>>runs a hand over the smooth skin of $possessive new legs.
-	<<elseif $activeSlave.amp == -4>>engages and disengages the blade in $possessive forearm.
-	<<elseif $activeSlave.amp == -5>>experimentally flexes the muscles in $possessive artificial arm.
-	<<else>>catches $possessive balance.
+	Attaching $his limbs is a simple procedure, you simply push a connector on each limb into the socket in $his implants until the lock engages.<<if $activeSlave.PLimb == 2>> $He jumps a bit as limbs connect to $his nerves.<</if>> When you are done, $pronoun sits up and 
+	<<if $activeSlave.amp == -2>>experimentally engages the vibe function in $his fingers.
+	<<elseif $activeSlave.amp == -3>>runs a hand over the smooth skin of $his new legs.
+	<<elseif $activeSlave.amp == -4>>engages and disengages the blade in $his forearm.
+	<<elseif $activeSlave.amp == -5>>experimentally flexes the muscles in $his artificial arm.
+	<<else>>catches $his balance.
 	<</if>>
 <</switch>>
\ No newline at end of file
diff --git a/src/pregmod/fillUpButt.tw b/src/pregmod/fillUpButt.tw
index b0f8008f59b..80dd71dbe87 100644
--- a/src/pregmod/fillUpButt.tw
+++ b/src/pregmod/fillUpButt.tw
@@ -55,14 +55,14 @@ before calling $him over so you can play with $his
 	<<set _pregDiscovery = 1>>
 <<else>>
 	<<if ($activeSlave.fetish == "buttslut") && ($activeSlave.devotion >= -20)>>
-		$he's pleased at the prospect of you touching $his favorite bodypart.
+		$He's pleased at the prospect of you touching $his favorite bodypart.
 	<<elseif ($activeSlave.fetish == "cumslut") && ($activeSlave.devotion >= -20) && ($activeSlave.inflationType == "cum")>>
-		$he's pleased at the idea of turning into a cum balloon.
+		$He's pleased at the idea of turning into a cum balloon.
 	<</if>>
 	<<if ($activeSlave.behavioralFlaw == "gluttonous") && ($activeSlave.devotion >= -20) && (($activeSlave.inflationType == "cum") || ($activeSlave.inflationType == "milk"))>>
-		$he's thrilled that you are going to give $him such a filling meal.
+		$He's thrilled that you are going to give $him such a filling meal.
 	<<elseif ($activeSlave.behavioralFlaw == "anorexic") && ($activeSlave.devotion >= -20) && (($activeSlave.inflationType == "cum") || ($activeSlave.inflationType == "milk"))>>
-		$he's hesitant about whether or not you are trying to make $him gain weight.
+		$He's hesitant about whether or not you are trying to make $him gain weight.
 	<</if>>
 <</if>>
 
@@ -174,7 +174,7 @@ before calling $him over so you can play with $his
 			tight
 		<<elseif ($activeSlave.anus == 0)>>
 			virgin
-		<</if>> butthole, and setting it on low. <<if $activeSlave.inflation == 2>>$his sloshing belly slowly grows even larger with $activeSlave.inflationType. You rest a hand on $his back as $his swelling belly forces $him to rise off your lap. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his taut, $activeSlave.skin stomach. $He <<if canSee($activeSlave)>>looks in your eyes<<else>>faces you<</if>>, as though almost demanding answers. $He looks apprehensive about what you will do next. You order $him to keep $himself filled with two gallons of $activeSlave.inflationType until you say otherwise<<elseif $activeSlave.inflation == 1>>$his bloated belly slowly swells even larger with $activeSlave.inflationType. You slip a hand under $his stomach to feel it grow in your palm. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his jiggly, soft, $activeSlave.skin stomach. $He <<if canSee($activeSlave)>>looks in your eyes<<else>>faces you<</if>>, as though almost demanding answers. $He looks apprehensive about what you will do next. You order $his to keep $himself filled with four liters of $activeSlave.inflationType until you say otherwise<<else>>$his belly slowly swells with $activeSlave.inflationType. You slip a hand under $his stomach to feel it grow in your palm. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his distended, $activeSlave.skin stomach. $He <<if canSee($activeSlave)>>looks in your eyes<<else>>faces you<</if>>, as though almost demanding answers. $He looks apprehensive about what you will do next. You order $him to keep $himself filled with two liters of $activeSlave.inflationType until you say otherwise<</if>>.
+		<</if>> butthole, and setting it on low. <<if $activeSlave.inflation == 2>>$his sloshing belly slowly grows even larger with $activeSlave.inflationType. You rest a hand on $his back as $his swelling belly forces $him to rise off your lap. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his taut, $activeSlave.skin stomach. $He <<if canSee($activeSlave)>>looks in your eyes<<else>>faces you<</if>>, as though almost demanding answers. $He looks apprehensive about what you will do next. You order $him to keep $himself filled with two gallons of $activeSlave.inflationType until you say otherwise<<elseif $activeSlave.inflation == 1>>$his bloated belly slowly swells even larger with $activeSlave.inflationType. You slip a hand under $his stomach to feel it grow in your palm. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his jiggly, soft, $activeSlave.skin stomach. $He <<if canSee($activeSlave)>>looks in your eyes<<else>>faces you<</if>>, as though almost demanding answers. $He looks apprehensive about what you will do next. You order $him to keep $himself filled with four liters of $activeSlave.inflationType until you say otherwise<<else>>$his belly slowly swells with $activeSlave.inflationType. You slip a hand under $his stomach to feel it grow in your palm. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his distended, $activeSlave.skin stomach. $He <<if canSee($activeSlave)>>looks in your eyes<<else>>faces you<</if>>, as though almost demanding answers. $He looks apprehensive about what you will do next. You order $him to keep $himself filled with two liters of $activeSlave.inflationType until you say otherwise<</if>>.
 
 <<elseif ($activeSlave.devotion <= 20)>>
 	<<if canWalk($activeSlave)>>
@@ -231,7 +231,7 @@ before calling $him over so you can play with $his
 			tight
 		<<elseif ($activeSlave.anus == 0)>>
 			virgin
-		<</if>> butthole, and setting it on low. <<if $activeSlave.inflation == 2>>$his sloshing belly slowly grows even larger with $activeSlave.inflationType. You rest a hand on $his back as $his swelling belly forces $him to rise off your lap. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his taut, $activeSlave.skin stomach. $He looks up at you quizzically, unsure about what you will do next. You order $him to keep $himself filled with two gallons of $activeSlave.inflationType until you say otherwise<<elseif $activeSlave.inflation == 1>>$his bloated belly slowly swells even larger with $activeSlave.inflationType. You slip a hand under $his stomach to feel it grow in your palm. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his jiggly, soft, $activeSlave.skin stomach. $He looks up at you quizzically, unsure about what you will do next. You order $his to keep $himself filled with four liters of $activeSlave.inflationType until you say otherwise<<else>>$his belly slowly swells with $activeSlave.inflationType. You slip a hand under $his stomach to feel it grow in your palm. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his distended, $activeSlave.skin stomach. $He looks up at you quizzically, unsure about what you will do next. You order $him to keep $himself filled with two liters of $activeSlave.inflationType until you say otherwise<</if>>.
+		<</if>> butthole, and setting it on low. <<if $activeSlave.inflation == 2>>$his sloshing belly slowly grows even larger with $activeSlave.inflationType. You rest a hand on $his back as $his swelling belly forces $him to rise off your lap. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his taut, $activeSlave.skin stomach. $He looks up at you quizzically, unsure about what you will do next. You order $him to keep $himself filled with two gallons of $activeSlave.inflationType until you say otherwise<<elseif $activeSlave.inflation == 1>>$his bloated belly slowly swells even larger with $activeSlave.inflationType. You slip a hand under $his stomach to feel it grow in your palm. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his jiggly, soft, $activeSlave.skin stomach. $He looks up at you quizzically, unsure about what you will do next. You order $him to keep $himself filled with four liters of $activeSlave.inflationType until you say otherwise<<else>>$his belly slowly swells with $activeSlave.inflationType. You slip a hand under $his stomach to feel it grow in your palm. Once the enema is complete and $he is plugged, you <<if canWalk($activeSlave)>>push $him to $his feet<<else>>help $him onto your desk<</if>> and admire $his distended, $activeSlave.skin stomach. $He looks up at you quizzically, unsure about what you will do next. You order $him to keep $himself filled with two liters of $activeSlave.inflationType until you say otherwise<</if>>.
 
 <<elseif $activeSlave.devotion < 50>>
 	<<if canWalk($activeSlave)>>
diff --git a/src/pregmod/incubatorReport.tw b/src/pregmod/incubatorReport.tw
index 50ebec2eb16..aedf2e1d11d 100644
--- a/src/pregmod/incubatorReport.tw
+++ b/src/pregmod/incubatorReport.tw
@@ -13,9 +13,9 @@
 	<<set $incubatorSlaves += 1>>
 	<<if $tanks[_inc].growTime > 0>>
 		<<set $tanks[_inc].growTime -= $incubatorUpgradeSpeed>>
-		<br>@@.pink;<<print $tanks[_inc].slaveName>>'s@@ growth is currently being accelerated. $pronounCap <<if Math.round($tanks[_inc].growTime/$incubatorUpgradeSpeed) <= 0>>is @@.lime;ready for release.@@ $pronounCap will be ejected from $possessive tank upon your approach<<else>>will be ready for release in about <<print Math.round($tanks[_inc].growTime/$incubatorUpgradeSpeed)>> weeks<</if>>.
+		<br>@@.pink;<<print $tanks[_inc].slaveName>>'s@@ growth is currently being accelerated. $He <<if Math.round($tanks[_inc].growTime/$incubatorUpgradeSpeed) <= 0>>is @@.lime;ready for release.@@ $He will be ejected from $his tank upon your approach<<else>>will be ready for release in about <<print Math.round($tanks[_inc].growTime/$incubatorUpgradeSpeed)>> weeks<</if>>.
 	<<else>>
-		@@.pink;$tanks[_inc].slaveName@@ is @@.lime;ready for release.@@ $pronounCap will be ejected from $possessive tank upon your approach.
+		@@.pink;$tanks[_inc].slaveName@@ is @@.lime;ready for release.@@ $He will be ejected from $his tank upon your approach.
 	<</if>>
 
 	<<if $incubatorUpgradeWeight == 1>>
@@ -34,7 +34,7 @@
 					<<set $tanks[_inc].weight += 5>>
 				<</if>>			
 			<</if>>
-			The weight monitoring systems are overloading $possessive intake causing @@.red;rapid weight gain.@@
+			The weight monitoring systems are overloading $his intake causing @@.red;rapid weight gain.@@
 		<<elseif $incubatorWeightSetting == 2>>
 			<<if $tanks[_inc].weight > 10>>
 				<<if $incubatorUpgradeSpeed == 52>>
@@ -48,7 +48,7 @@
 				<<elseif $incubatorUpgradeSpeed == 5>>
 					<<set $tanks[_inc].weight -= 1>>
 				<</if>>			
-				The weight monitoring systems detect $pronoun is overweight and @@.green;decrease $possessive caloric intake.@@
+				The weight monitoring systems detect $he is overweight and @@.green;decrease $his caloric intake.@@
 			<<elseif $tanks[_inc].weight < -10>>
 				<<if $incubatorUpgradeSpeed == 52>>
 					<<set $tanks[_inc].weight += 30>>
@@ -61,19 +61,19 @@
 				<<elseif $incubatorUpgradeSpeed == 5>>
 					<<set $tanks[_inc].weight += 1>>
 				<</if>>			
-				The weight monitoring systems detect $pronoun is underweight and @@.green;increase $possessive caloric intake.@@
+				The weight monitoring systems detect $he is underweight and @@.green;increase $his caloric intake.@@
 			<<else>>
-				$pronounCap is @@.lime;currently a healthy weight;@@ efforts will be made to maintain it.
+				$He is @@.lime;currently a healthy weight;@@ efforts will be made to maintain it.
 			<</if>>
 		<<elseif $incubatorWeightSetting == 0>>
 			<<if $tanks[_inc].weight > -100>>
-				$possessiveCap developing body @@.red;quickly sheds its gained weight.@@
+				$His developing body @@.red;quickly sheds its gained weight.@@
 				<<set $tanks[_inc].weight -= 40>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $tanks[_inc].weight > -100>>
-			$possessiveCap developing body @@.red;quickly sheds its gained weight.@@
+			$His developing body @@.red;quickly sheds its gained weight.@@
 			<<set $tanks[_inc].weight -= 40>>
 		<</if>>
 	<</if>>
@@ -94,7 +94,7 @@
 					<<set $tanks[_inc].muscles += 5>>
 				<</if>>			
 			<</if>>
-			The strength monitoring systems are overloading $object with steroids causing @@.green;rapid muscle development.@@
+			The strength monitoring systems are overloading $him with steroids causing @@.green;rapid muscle development.@@
 		<<elseif $incubatorMusclesSetting == 1>>
 			<<if $tanks[_inc].muscles > 10>>
 				<<if $incubatorUpgradeSpeed == 52>>
@@ -108,7 +108,7 @@
 				<<elseif $incubatorUpgradeSpeed == 5>>
 					<<set $tanks[_inc].muscles-->>
 				<</if>>			
-				The strength monitoring systems detect $pronoun is overly muscular and @@.green;decrease $possessive steroid dosage.@@
+				The strength monitoring systems detect $he is overly muscular and @@.green;decrease $his steroid dosage.@@
 			<<elseif $tanks[_inc].muscles < -10>>
 				<<if $incubatorUpgradeSpeed == 52>>
 					<<set $tanks[_inc].muscles += 30>>
@@ -121,19 +121,19 @@
 				<<elseif $incubatorUpgradeSpeed == 5>>
 					<<set $tanks[_inc].muscles++>>
 				<</if>>			
-				The strength monitoring systems detect $pronoun is weak and @@.green;increase $possessive steroid dosage.@@
+				The strength monitoring systems detect $he is weak and @@.green;increase $his steroid dosage.@@
 			<<else>>
-				$pronounCap has @@.lime;a healthy musculature;@@ efforts will be made to maintain it.
+				$He has @@.lime;a healthy musculature;@@ efforts will be made to maintain it.
 			<</if>>
 		<<elseif $incubatorMusclesSetting == 0>>
 			<<if $tanks[_inc].muscles > -100>>
-				$possessiveCap developing body @@.red;quickly loses its gained muscle.@@
+				$His developing body @@.red;quickly loses its gained muscle.@@
 				<<set $tanks[_inc].muscles -= 40>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $tanks[_inc].muscles > -100>>
-			$possessiveCap developing body @@.red;quickly loses its gained muscle.@@
+			$His developing body @@.red;quickly loses its gained muscle.@@
 			<<set $tanks[_inc].muscles -= 40>>
 		<</if>>
 	<</if>>
@@ -152,14 +152,14 @@
                         <<set _heightLimit =  _heightLimitAge>>
                 <</if>>
 		<<if $tanks[_inc].height >= _heightLimit>>
-			The monitoring system detects $possessive body is not able to support further increases in height, so it carefully regulates stimulant injections to @@.yellow;maintain $possessive current stature.@@
+			The monitoring system detects $his body is not able to support further increases in height, so it carefully regulates stimulant injections to @@.yellow;maintain $his current stature.@@
 			<<set $tanks[_inc].height = _heightLimit>>
 		<<elseif $incubatorGrowthStimsSetting == 2>>
                         <<if $tanks[_inc].inducedNCS == 1>>
-                                The monitoring system floods $possessive body with growth stimulants, but $possessive @@.orange;NCS prevents an increase in $possessive growth rate.@@
+                                The monitoring system floods $his body with growth stimulants, but $his @@.orange;NCS prevents an increase in $his growth rate.@@
                                 <<set $tanks[_inc].height = _heightLimitAge>>
                         <<else>>
-                                The monitoring system floods $possessive body with growth stimulants, causing @@.green;a sharp increase in growth rate.@@
+                                The monitoring system floods $his body with growth stimulants, causing @@.green;a sharp increase in growth rate.@@
                                 <<if $incubatorWeightSetting >= 1 && $incubatorMusclesSetting <= 1 && $incubatorReproductionSetting <= 1>>
                                         <<if $incubatorUpgradeSpeed == 52>>
                                                 <<set $tanks[_inc].height += random(3,6)>>
@@ -188,10 +188,10 @@
                         <</if>>
 		<<elseif $incubatorGrowthStimsSetting == 1>>
                         <<if $tanks[_inc].inducedNCS == 1>>
-				The monitoring system detects $pronoun is near the expected height for $possessive @@.orange;NCS@@ condition, so it carefully regulates stimulants injections to @@.yellow;maintain $possessive current stature.@@
+				The monitoring system detects $he is near the expected height for $his @@.orange;NCS@@ condition, so it carefully regulates stimulants injections to @@.yellow;maintain $his current stature.@@
                                 <<set $tanks[_inc].height = _heightLimitAge>>
 			<<elseif $tanks[_inc].height > _heightLimitAge>>
-				The monitoring system detects $pronoun is near the expected height, so it carefully regulates stimulants injections to @@.yellow;maintain $possessive current stature.@@
+				The monitoring system detects $he is near the expected height, so it carefully regulates stimulants injections to @@.yellow;maintain $his current stature.@@
 				<<if random(1,10) == 10>>
 					<<if $incubatorUpgradeSpeed == 52>>
 						<<set $tanks[_inc].height += random(1,4)>>
@@ -206,7 +206,7 @@
 					<</if>>
 				<</if>>
 			<<else>>
-				The monitoring system detects $possessive body is capable of developing more rapidly and @@.green;increases $possessive growth stimulant dosage.@@
+				The monitoring system detects $his body is capable of developing more rapidly and @@.green;increases $his growth stimulant dosage.@@
 				<<if $incubatorUpgradeSpeed == 52>>
 					<<set $tanks[_inc].height += random(1,4)>>
 				<<elseif $incubatorUpgradeSpeed == 18>>
@@ -223,15 +223,15 @@
 		<<set $tanks[_inc].height = Math.clamp($tanks[_inc].height, 0, _heightLimit)>>
 	<<else>>
 		<br>
-		With the growth stimulant injections offline, $possessive body is left to develop naturally.
+		With the growth stimulant injections offline, $his body is left to develop naturally.
 	<</if>>
 	
 	<<if $incubatorUpgradeReproduction == 1>>
 		<br>
 		<<if $incubatorReproductionSetting == 2>>
-			$possessiveCap developing body is being flooded with hormones.
+			$His developing body is being flooded with hormones.
 			<<if $incubatorWeightSetting == 1>>
-				Combined with the abundant food provided to $object, $possessive body grows rapidly.
+				Combined with the abundant food provided to $him, $his body grows rapidly.
 				<<if $tanks[_inc].ovaries == 1>>
 					<<set $tanks[_inc].pubertyXX = 1>>
 					<<if $tanks[_inc].hormoneBalance < 500>>
@@ -244,70 +244,70 @@
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
                                                 /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $possessiveCap @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $possessive body.
+                                                $His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].boobs < 8000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 2000>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 50>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips += 2>>
 						<</if>>
 						<<if $tanks[_inc].butt < 12 && random(1,100) > 30>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt += 4>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 18>>
 						<<if $tanks[_inc].boobs < 8000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 500>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 50>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 12 && random(1,100) > 50>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt += 3>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 9>>
 						<<if $tanks[_inc].boobs < 8000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 200>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 60>>
-							The excess estrogen-laced growth hormones @@.green;causes $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;causes $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 12 && random(1,100) > 50>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear grow fatter.@@
 							<<set $tanks[_inc].butt += 2>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 6>>
 						<<if $tanks[_inc].boobs < 8000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 100>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 70>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 12 && random(1,100) > 60>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 5>>
 						<<if $tanks[_inc].boobs < 8000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 100>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 80>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 12 && random(1,100) > 70>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<</if>>
@@ -318,56 +318,56 @@
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
                                                 /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $possessiveCap @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $possessive body.
+                                                $His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].balls < 40>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls += 16>>
 						<</if>>
 						<<if $tanks[_inc].dick < 10 && random(1,100) > 20>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick += 4>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 18>>
 						<<if $tanks[_inc].balls < 40 && random(1,100) > 10>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls += 9>>
 						<</if>>
 						<<if $tanks[_inc].dick < 10 && random(1,100) > 30>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick += 3>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 9>>
 						<<if $tanks[_inc].balls < 40 && random(1,100) > 20>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls += 4>>
 						<</if>>
 						<<if $tanks[_inc].dick < 10 && random(1,100) > 50>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick += 2>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 6>>
 						<<if $tanks[_inc].balls < 40 && random(1,100) > 30>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls += 2>>
 						<</if>>
 						<<if $tanks[_inc].dick < 10 && random(1,100) > 70>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 5>>
 						<<if $tanks[_inc].balls < 40 && random(1,100) > 30>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls++>>
 						<</if>>
 						<<if $tanks[_inc].dick < 10 && random(1,100) > 80>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<</if>>
 				<</if>>
 			<<elseif $incubatorWeightSetting == 1>>
-				Combined with the healthy food provided to $object, $possessive body grows readily.
+				Combined with the healthy food provided to $him, $his body grows readily.
 				<<if $tanks[_inc].ovaries == 1>>
 					<<set $tanks[_inc].pubertyXX = 1>>
 					<<if $tanks[_inc].hormoneBalance < 500>>
@@ -380,70 +380,70 @@
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
                                                 /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $possessiveCap @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $possessive body.
+                                                $His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].boobs < 4000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 1000>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 70>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 8 && random(1,100) > 50>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt += 3>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 18>>
 						<<if $tanks[_inc].boobs < 4000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 500>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 80>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 8 && random(1,100) > 50>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 9>>
 						<<if $tanks[_inc].boobs < 4000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 200>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 90>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 8 && random(1,100) > 60>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 6>>
 						<<if $tanks[_inc].boobs < 4000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 100>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 95>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 8 && random(1,100) > 70>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 5>>
 						<<if $tanks[_inc].boobs < 4000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 100>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 95>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 8 && random(1,100) > 80>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<</if>>
@@ -454,56 +454,56 @@
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
                                                 /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $possessiveCap @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $possessive body.
+                                                $His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].balls < 10>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls += 3>>
 						<</if>>
 						<<if $tanks[_inc].dick < 7 && random(1,100) > 20>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick += 2>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 18>>
 						<<if $tanks[_inc].balls < 10 && random(1,100) > 10>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls += 2>>
 						<</if>>
 						<<if $tanks[_inc].dick < 7 && random(1,100) > 30>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 9>>
 						<<if $tanks[_inc].balls < 10 && random(1,100) > 20>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls++>>
 						<</if>>
 						<<if $tanks[_inc].dick < 7 && random(1,100) > 50>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 6>>
 						<<if $tanks[_inc].balls < 10 && random(1,100) > 30>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls++>>
 						<</if>>
 						<<if $tanks[_inc].dick < 7 && random(1,100) > 70>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 5>>
 						<<if $tanks[_inc].balls < 10 && random(1,100) > 30>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls++>>
 						<</if>>
 						<<if $tanks[_inc].dick < 7 && random(1,100) > 80>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<</if>>
 				<</if>>
 			<<else>>
-				Since $possessive body has little to work with, $possessive growth is fairly minor.
+				Since $his body has little to work with, $his growth is fairly minor.
 				<<if $tanks[_inc].ovaries == 1>>
 					<<set $tanks[_inc].pubertyXX = 1>>
 					<<if $tanks[_inc].hormoneBalance < 500>>
@@ -516,70 +516,70 @@
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
                                                 /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $possessiveCap @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $possessive body.
+                                                $His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].boobs < 2000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 700>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 90>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips += 2>>
 						<</if>>
 						<<if $tanks[_inc].butt < 6 && random(1,100) > 70>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt += 2>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 18>>
 						<<if $tanks[_inc].boobs < 2000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 200>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 80>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 6 && random(1,100) > 70>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 9>>
 						<<if $tanks[_inc].boobs < 2000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly balloon $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
 							<<set $tanks[_inc].boobs += 50>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 80>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 6 && random(1,100) > 90>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 6>>
 						<<if $tanks[_inc].boobs < 2000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly grow $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly grow $his breasts.@@
 							<<set $tanks[_inc].boobs += 20>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 90>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 6 && random(1,100) > 90>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 5>>
 						<<if $tanks[_inc].boobs < 2000>>
-							The excess estrogen-laced growth hormones @@.green;rapidly grow $possessive breasts.@@
+							The excess estrogen-laced growth hormones @@.green;rapidly grow $his breasts.@@
 							<<set $tanks[_inc].boobs += 10>>
 						<</if>>
 						<<if $tanks[_inc].hips < 2 && random(1,100) > 95>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive hips to widen for childbirth.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his hips to widen for childbirth.@@
 							<<set $tanks[_inc].hips++>>
 						<</if>>
 						<<if $tanks[_inc].butt < 6 && random(1,100) > 90>>
-							The excess estrogen-laced growth hormones @@.green;cause $possessive rear to grow fatter.@@
+							The excess estrogen-laced growth hormones @@.green;cause $his rear to grow fatter.@@
 							<<set $tanks[_inc].butt++>>
 						<</if>>
 					<</if>>
@@ -590,50 +590,50 @@
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
                                                 /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $possessiveCap @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $possessive body.
+                                                $His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].balls < 6>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to grow for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to grow for extra cum production.@@
 							<<set $tanks[_inc].balls += 2>>
 						<</if>>
 						<<if $tanks[_inc].dick < 4 && random(1,100) > 60>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 18>>
 						<<if $tanks[_inc].balls < 6 && random(1,100) > 50>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to grow for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to grow for extra cum production.@@
 							<<set $tanks[_inc].balls++>>
 						<</if>>
 						<<if $tanks[_inc].dick < 4 && random(1,100) > 60>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 9>>
 						<<if $tanks[_inc].balls < 6 && random(1,100) > 60>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to balloon for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
 							<<set $tanks[_inc].balls++>>
 						<</if>>
 						<<if $tanks[_inc].dick < 4 && random(1,100) > 70>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick += 2>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 6>>
 						<<if $tanks[_inc].balls < 6 && random(1,100) > 70>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to grow for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to grow for extra cum production.@@
 							<<set $tanks[_inc].balls++>>
 						<</if>>
 						<<if $tanks[_inc].dick < 4 && random(1,100) > 80>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<<elseif $incubatorUpgradeSpeed == 5>>
 						<<if $tanks[_inc].balls < 6 && random(1,100) > 80>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive balls to grow for extra cum production.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his balls to grow for extra cum production.@@
 							<<set $tanks[_inc].balls++>>
 						<</if>>
 						<<if $tanks[_inc].dick < 4 && random(1,100) > 90>>
-							The excess testosterone-laced growth hormones @@.green;cause $possessive penis to swell.@@
+							The excess testosterone-laced growth hormones @@.green;cause $his penis to swell.@@
 							<<set $tanks[_inc].dick++>>
 						<</if>>
 					<</if>>
@@ -646,18 +646,18 @@
 				<<set $tanks[_inc].hormoneBalance = 250>>
                                 <<if $tanks[_inc].inducedNCS == 1>>
                                         /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                        $possessiveCap @@.orange;NCS blocks growth@@ despite the added estrogen.
+                                        $His @@.orange;NCS blocks growth@@ despite the added estrogen.
                                 <<else>>
                                         <<if $tanks[_inc].boobs < 400 && random(1,100) > 60>>
-                                                The added estrogen @@.green;causes $possessive breasts to swell.@@
+                                                The added estrogen @@.green;causes $his breasts to swell.@@
                                                 <<set $tanks[_inc].boobs += 50>>
                                         <</if>>
                                         <<if $tanks[_inc].hips < 2 && random(1,100) > 90>>
-                                                The added estrogen @@.green;causes $possessive hips to widen.@@
+                                                The added estrogen @@.green;causes $his hips to widen.@@
                                                 <<set $tanks[_inc].hips++>>
                                         <</if>>
                                         <<if $tanks[_inc].butt < 5 && random(1,100) > 80>>
-                                                The added estrogen @@.green;causes $possessive butt to grow.@@
+                                                The added estrogen @@.green;causes $his butt to grow.@@
                                                 <<set $tanks[_inc].butt++>>
                                         <</if>>
 				<</if>>
@@ -666,14 +666,14 @@
 				<<set $tanks[_inc].hormoneBalance = -250>>
                                 <<if $tanks[_inc].inducedNCS == 1>>
                                         /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                        $possessiveCap @@.orange;NCS blocks all growth@@ despite the added testosterone.
+                                        $His @@.orange;NCS blocks all growth@@ despite the added testosterone.
 				<<else>>
                                         <<if $tanks[_inc].balls < 3 && random(1,100) > 80>>
-                                                The added testosterone @@.green;causes $possessive balls to swell.@@
+                                                The added testosterone @@.green;causes $his balls to swell.@@
                                                 <<set $tanks[_inc].balls++>>
                                         <</if>>
                                         <<if $tanks[_inc].dick < 3 && random(1,100) > 60>>
-                                                The added testosterone @@.green;causes $possessive penis to grow.@@
+                                                The added testosterone @@.green;causes $his penis to grow.@@
                                                 <<set $tanks[_inc].dick++>>
                                         <</if>>
 				<</if>>
diff --git a/src/pregmod/organFarmOptions.tw b/src/pregmod/organFarmOptions.tw
index 509aa6644a3..cece3de1121 100644
--- a/src/pregmod/organFarmOptions.tw
+++ b/src/pregmod/organFarmOptions.tw
@@ -56,7 +56,7 @@
 	<</if>>
 <</for>>
 
-The fabricator is ready to grow an organ for $object. Extract tissue to begin growing:
+The fabricator is ready to grow an organ for $him. Extract tissue to begin growing:
 <<if $seeDicks != 0 || $makeDicks == 1>>
 	<<if $slaveOrgans.penis != 1>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
@@ -242,7 +242,7 @@ The fabricator is ready to grow an organ for $object. Extract tissue to begin gr
 	<<for _i = 0; _i < $organs.length; _i++>>
 		<<if $organs[_i].ID == $activeSlave.ID>>
 			<br>&nbsp;&nbsp;&nbsp;&nbsp;
-			$possessiveCap 
+			$His 
 			<<switch $organs[_i].type>>
 			<<case "penis" "scrotum" "foreskin" "prostate" "voicebox">>
 				$organs[_i].type is
@@ -273,7 +273,7 @@ The fabricator is ready to grow an organ for $object. Extract tissue to begin gr
 <<if $completedOrgans.length > 0>>
 	<<for _i = 0; _i < $completedOrgans.length; _i++>>
 		<<if $completedOrgans[_i].ID == $activeSlave.ID>>
-			<br>The fabricator has completed $possessive $completedOrgans[_i].type.
+			<br>The fabricator has completed $his $completedOrgans[_i].type.
 			<<if $completedOrgans[_i].type == "penis">>
 				<<if $activeSlave.dick > 0>>
 					<br>&nbsp;&nbsp;&nbsp;&nbsp;
@@ -341,7 +341,7 @@ The fabricator is ready to grow an organ for $object. Extract tissue to begin gr
 							@@.red;Organ not found for deletion!@@
 						<</if>>
 					<</link>>
-					<br>You can forgo standard procedure and implant testicles directly into $possessive abdomen.
+					<br>You can forgo standard procedure and implant testicles directly into $his abdomen.
 					<<link "Implant" "Surgery Degradation">>
 						<<set $cash -= $surgeryCost>>
 						<<set _ofo = $completedOrgans.findIndex(function(s) { return $activeSlave.ID == s.ID && s.type == "testicles"; })>>
@@ -436,7 +436,7 @@ The fabricator is ready to grow an organ for $object. Extract tissue to begin gr
 							@@.red;Organ not found for deletion!@@
 						<</if>>
 					<</link>>
-					<br>You can forgo standard procedure and implant testicles directly into $possessive abdomen.
+					<br>You can forgo standard procedure and implant testicles directly into $his abdomen.
 					<<link "Implant" "Surgery Degradation">>
 						<<set $cash -= $surgeryCost>>
 						<<set _ofo = $completedOrgans.findIndex(function(s) { return $activeSlave.ID == s.ID && s.type == "pigTesticles"; })>>
@@ -528,7 +528,7 @@ The fabricator is ready to grow an organ for $object. Extract tissue to begin gr
 							@@.red;Organ not found for deletion!@@
 						<</if>>
 					<</link>>
-					<br>You can forgo standard procedure and implant testicles directly into $possessive abdomen.
+					<br>You can forgo standard procedure and implant testicles directly into $his abdomen.
 					<<link "Implant" "Surgery Degradation">>
 						<<set $cash -= $surgeryCost>>
 						<<set _ofo = $completedOrgans.findIndex(function(s) { return $activeSlave.ID == s.ID && s.type == "dogTesticles"; })>>
diff --git a/src/pregmod/saInflation.tw b/src/pregmod/saInflation.tw
index bd836d5e624..997cdca04c3 100644
--- a/src/pregmod/saInflation.tw
+++ b/src/pregmod/saInflation.tw
@@ -4,7 +4,7 @@
 	<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, $slaves[$i].milkSource = 0, SetBellySize($slaves[$i])>>
 <<elseif $slaves[$i].bellyImplant >= 1500>>
 	<<if $slaves[$i].inflation > 1>>
-		Due to the mounting pressure from $possessive filled abdominal implant, $pronoun can no longer fill herself as large as $pronoun used to.
+		Due to the mounting pressure from $his filled abdominal implant, $he can no longer fill herself as large as $he used to.
 		<<set $slaves[$i].inflation = 1>>
 		<<run SetBellySize($slaves[$i])>>
 	<<else>>
@@ -16,31 +16,31 @@
 <<switch $slaves[$i].inflationType>>
 <<case "water">>
 	<<if $slaves[$i].inflation == 3>>
-		$pronounCap makes sure to fill $possessive rear with nearly two gallons of water, leaving $object looking ready to burst, whenever $pronoun leaks or needs to release $possessive load. $pronounCap keeps herself @@.red;painfully full@@ for you.
+		$He makes sure to fill $his rear with nearly two gallons of water, leaving $him looking ready to burst, whenever $he leaks or needs to release $his load. $He keeps herself @@.red;painfully full@@ for you.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif $slaves[$i].inflation == 2>>
-		$pronounCap makes sure to fill $possessive rear with nearly four liters of water, leaving $object looking pregnant, whenever $pronoun leaks or needs to release $possessive load. $pronounCap is full enough to be distended but not enough to grow taut.
+		$He makes sure to fill $his rear with nearly four liters of water, leaving $him looking pregnant, whenever $he leaks or needs to release $his load. $He is full enough to be distended but not enough to grow taut.
 	<<elseif $slaves[$i].inflation == 1>>
-		$pronounCap makes sure to fill $possessive rear with nearly two liters of water, leaving $possessive belly noticeably distended, whenever $pronoun leaks or needs to release $possessive load. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+		$He makes sure to fill $his rear with nearly two liters of water, leaving $his belly noticeably distended, whenever $he leaks or needs to release $his load. $He is full enough to be swollen but not enough to visibly jiggle.
 	<</if>>
 
 <<case "aphrodisiac">>
 	<<if $slaves[$i].inflation == 3>>
-		$pronounCap makes sure to fill $possessive rear with nearly two gallons of a curative solution, leaving $object looking ready to burst, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap keeps herself @@.red;painfully full@@ for you, though $pronoun barely notices it over $possessive horniness. While having $possessive body packed full of aphrodisiacs doesn't make $object additionally submissive, it does amplify the effects of them. $possessiveCap aphrodisiac bursting belly
+		$He makes sure to fill $his rear with nearly two gallons of a curative solution, leaving $him looking ready to burst, whenever $he leaks or $his body absorbs too much. $He keeps herself @@.red;painfully full@@ for you, though $he barely notices it over $his horniness. While having $his body packed full of aphrodisiacs doesn't make $him additionally submissive, it does amplify the effects of them. $His aphrodisiac bursting belly
 		<<set $slaves[$i].health -= 10>>
 	<<elseif $slaves[$i].inflation == 2>>
-		$pronounCap makes sure to fill $possessive rear with nearly four liters of an aphrodisiac solution, leaving $object looking pregnant, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap is full enough to be distended but not enough to grow taut. While having $possessive body bloated with aphrodisiacs doesn't make $object additionally submissive, it does amplify the effects of them. $possessiveCap overfilled aphrodisiac belly
+		$He makes sure to fill $his rear with nearly four liters of an aphrodisiac solution, leaving $him looking pregnant, whenever $he leaks or $his body absorbs too much. $He is full enough to be distended but not enough to grow taut. While having $his body bloated with aphrodisiacs doesn't make $him additionally submissive, it does amplify the effects of them. $His overfilled aphrodisiac belly
 	<<elseif $slaves[$i].inflation == 1>>
-		$pronounCap makes sure to fill $possessive rear with nearly two liters of an aphrodisiac solution, leaving $possessive belly noticeably distended, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap is full enough to be swollen but not enough to visibly jiggle. $possessiveCap aphrodisiac filled belly
+		$He makes sure to fill $his rear with nearly two liters of an aphrodisiac solution, leaving $his belly noticeably distended, whenever $he leaks or $his body absorbs too much. $He is full enough to be swollen but not enough to visibly jiggle. $His aphrodisiac filled belly
 	<</if>>
 	<<if $slaves[$i].energy <= 95>>
-		@@.green;rapidly boosts $possessive sex drive.@@
+		@@.green;rapidly boosts $his sex drive.@@
 		<<set $slaves[$i].energy += 5*$slaves[$i].inflation>>
 	<<else>>
-		can't improve $possessive absurd sex drive.
+		can't improve $his absurd sex drive.
 	<</if>>
 	<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
-		Besides being humiliating, it chemically @@.hotpink;increases $possessive acceptance@@ of sexual slavery.
+		Besides being humiliating, it chemically @@.hotpink;increases $his acceptance@@ of sexual slavery.
 		<<set $slaves[$i].devotion += 5>>
 	<</if>>
 	<<if ($arcologies[0].FSBodyPuristLaw == 0) && ($healthyDrugsUpgrade == 0)>>
@@ -52,43 +52,43 @@
 		<<if $slaves[$i].inflation > 0>>
 			<<set $slaves[$i].addict += $slaves[$i].inflation*3>>
 		<<elseif ($aphrodisiacUpgrade == 1)>>
-			Substitutes produced by your advanced pharmaceutical fabricator protect $object from the negative effects of aphrodisiac withdrawal but do little to halt the spread of aphrodisiacs through $possessive system from $possessive bowels.
+			Substitutes produced by your advanced pharmaceutical fabricator protect $him from the negative effects of aphrodisiac withdrawal but do little to halt the spread of aphrodisiacs through $his system from $his bowels.
 			<<set $slaves[$i].addict -= 2>>
 		<</if>>
 	<<elseif random(1,100) < 40+(20*$slaves[$i].inflation)>>
-		All the aphrodisiacs held within $possessive bowels cause @@.cyan;$pronoun to become an aphrodisiac addict.@@
+		All the aphrodisiacs held within $his bowels cause @@.cyan;$pronoun to become an aphrodisiac addict.@@
 		<<set $slaves[$i].addict = 1>>
 	<</if>>
 
 <<case "curative">>
 	<<if $slaves[$i].inflation == 3>>
-		$pronounCap makes sure to fill $possessive rear with nearly two gallons of a curative solution, leaving $object looking ready to burst, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap keeps herself full for you; the curatives in $possessive gut keeping $object healthy despite the pain.
+		$He makes sure to fill $his rear with nearly two gallons of a curative solution, leaving $him looking ready to burst, whenever $he leaks or $his body absorbs too much. $He keeps herself full for you; the curatives in $his gut keeping $him healthy despite the pain.
 		<<if (($slaves[$i].assignment == "rest") || ($slaves[$i].assignment == "rest in the spa")) && ($slaves[$i].fetish != "mindbroken")>>
-			The curative enema $pronoun's on synergize with rest, keeping $object asleep most of the time. This is an @@.green;extremely effective health treatment,@@ though being filled to $possessive limit doesn't hasten $possessive recovery at all; it's just perverted.
+			The curative enema $he's on synergize with rest, keeping $him asleep most of the time. This is an @@.green;extremely effective health treatment,@@ though being filled to $his limit doesn't hasten $his recovery at all; it's just perverted.
 			<<set $slaves[$i].health += 4>>
 		<<elseif ($slaves[$i].health < -20)>>
-			@@.green;$possessiveCap poor health rapidly improves@@ under the curative enema, though being filled to $possessive limit doesn't hasten $possessive recovery at all; it's just perverted.
+			@@.green;$possessiveCap poor health rapidly improves@@ under the curative enema, though being filled to $his limit doesn't hasten $his recovery at all; it's just perverted.
 			<<set $slaves[$i].health += 2>>
 		<<else>>
-			@@.green;$possessiveCap health improves@@ under the curative enema, though being filled to $possessive limit doesn't hasten $possessive recovery at all; it's just perverted.
+			@@.green;$possessiveCap health improves@@ under the curative enema, though being filled to $his limit doesn't hasten $his recovery at all; it's just perverted.
 		<</if>>
 		<<set $slaves[$i].health += 1>>
 	<<elseif $slaves[$i].inflation == 2>>
-		$pronounCap makes sure to fill $possessive rear with nearly four liters of a curative solution, leaving $object looking pregnant, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap is full enough to be distended but not enough to grow taut.
+		$He makes sure to fill $his rear with nearly four liters of a curative solution, leaving $him looking pregnant, whenever $he leaks or $his body absorbs too much. $He is full enough to be distended but not enough to grow taut.
 		<<if (($slaves[$i].assignment == "rest") || ($slaves[$i].assignment == "rest in the spa")) && ($slaves[$i].fetish != "mindbroken")>>
-			The curative enema $pronoun's on synergize with rest, keeping $object asleep most of the time. This is an @@.green;extremely effective health treatment,@@ though being overfilled doesn't hasten $possessive recovery at all; it's just perverted.
+			The curative enema $he's on synergize with rest, keeping $him asleep most of the time. This is an @@.green;extremely effective health treatment,@@ though being overfilled doesn't hasten $his recovery at all; it's just perverted.
 			<<set $slaves[$i].health += 4>>
 		<<elseif ($slaves[$i].health < -20)>>
-			@@.green;$possessiveCap poor health rapidly improves@@ under the curative enema, though being overfilled doesn't hasten $possessive recovery at all; it's just perverted.
+			@@.green;$possessiveCap poor health rapidly improves@@ under the curative enema, though being overfilled doesn't hasten $his recovery at all; it's just perverted.
 			<<set $slaves[$i].health += 2>>
 		<<else>>
-			@@.green;$possessiveCap health improves@@ under curative enema, though being overfilled doesn't hasten $possessive recovery at all; it's just perverted.
+			@@.green;$possessiveCap health improves@@ under curative enema, though being overfilled doesn't hasten $his recovery at all; it's just perverted.
 		<</if>>
 		<<set $slaves[$i].health += 6>>
 	<<elseif $slaves[$i].inflation == 1>>
-		$pronounCap makes sure to fill $possessive rear with nearly two liters of a curative solution, leaving $possessive belly noticeably distended, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+		$He makes sure to fill $his rear with nearly two liters of a curative solution, leaving $his belly noticeably distended, whenever $he leaks or $his body absorbs too much. $He is full enough to be swollen but not enough to visibly jiggle.
 		<<if (($slaves[$i].assignment == "rest") || ($slaves[$i].assignment == "rest in the spa")) && ($slaves[$i].fetish != "mindbroken")>>
-			The curative enema $pronoun's on synergize with rest, keeping $object asleep most of the time. This is an @@.green;extremely effective health treatment.@@
+			The curative enema $he's on synergize with rest, keeping $him asleep most of the time. This is an @@.green;extremely effective health treatment.@@
 			<<set $slaves[$i].health += 4>>
 		<<elseif ($slaves[$i].health < -20)>>
 			@@.green;$possessiveCap poor health rapidly improves@@ under the curative enema.
@@ -99,83 +99,83 @@
 		<<set $slaves[$i].health += 6>>
 	<</if>>
 	<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
-		$pronounCap @@.mediumaquamarine;trusts you more@@ for giving $possessive access to expensive modern medicine, even if it is really embarrassing to be seen with that belly.
+		$He @@.mediumaquamarine;trusts you more@@ for giving $his access to expensive modern medicine, even if it is really embarrassing to be seen with that belly.
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 	<<if $slaves[$i].health >= 90>>
-		$pronounCap is as healthy as $object can be. @@.yellow;$possessiveCap enema regimen has been ended.@@
+		$He is as healthy as $him can be. @@.yellow;$possessiveCap enema regimen has been ended.@@
 		<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 	<</if>>
 	<<set $slaves[$i].chem += 2, $slaves[$i].health += $curativeUpgrade*6>>
 
 <<case "tightener">>
 	<<if $slaves[$i].inflation == 3>>
-		$pronounCap makes sure to fill $possessive rear with nearly two gallons of tightening solution, leaving $object looking ready to burst, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap keeps herself @@.red;painfully full@@ for you.
+		$He makes sure to fill $his rear with nearly two gallons of tightening solution, leaving $him looking ready to burst, whenever $he leaks or $his body absorbs too much. $He keeps herself @@.red;painfully full@@ for you.
 		<<set $slaves[$i].health -= 10>>
 		<<if $slaves[$i].anus > 1>>
-			The solution slowly tightens $possessive anus while inside $possessive bowels. Being filled to $possessive limit with the solution does not make it tighten any better or faster; it's just perverted.
+			The solution slowly tightens $his anus while inside $his bowels. Being filled to $his limit with the solution does not make it tighten any better or faster; it's just perverted.
 			<<if random(1,100) > 60>>
 				By week's end, @@.lime;$possessive butthole has tightened nicely.@@
 				<<set $slaves[$i].anus-->>
 			<</if>>
 		<<else>>
-			$possessiveCap anus is as tight as the solution can possibly make it.
+			$His anus is as tight as the solution can possibly make it.
 		<</if>>
 		<<if $slaves[$i].vagina > 1>>
-			As $possessive body slowly absorbs the solution, its benefits begin to affect $possessive pussy. Being filled to $possessive limit with the solution does not make it tighten any better or faster; it's just perverted.
+			As $his body slowly absorbs the solution, its benefits begin to affect $his pussy. Being filled to $his limit with the solution does not make it tighten any better or faster; it's just perverted.
 			<<if random(1,100) > 80>>
 				By week's end, @@.lime;$possessive vagina has regained some tightness.@@
 				<<set $slaves[$i].vagina-->>
 			<</if>>
 		<<elseif $slaves[$i].vagina == 1>>
-			$possessiveCap pussy is as tight as the solution can possibly make it.
+			$His pussy is as tight as the solution can possibly make it.
 		<</if>>
 	<<elseif $slaves[$i].inflation == 2>>
-		$pronounCap makes sure to fill $possessive rear with nearly four liters of tightening solution, leaving $object looking pregnant, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap is full enough to be distended but not enough to grow taut.
+		$He makes sure to fill $his rear with nearly four liters of tightening solution, leaving $him looking pregnant, whenever $he leaks or $his body absorbs too much. $He is full enough to be distended but not enough to grow taut.
 		<<if $slaves[$i].anus > 1>>
-			The solution slowly tightens $possessive anus while inside $possessive bowels. Being overfilled with the solution does not make it tighten any better or faster; it's just perverted.
+			The solution slowly tightens $his anus while inside $his bowels. Being overfilled with the solution does not make it tighten any better or faster; it's just perverted.
 			<<if random(1,100) > 60>>
 				By week's end, @@.lime;$possessive butthole has tightened nicely.@@
 				<<set $slaves[$i].anus-->>
 			<</if>>
 		<<else>>
-			$possessiveCap anus is as tight as the solution can possibly make it.
+			$His anus is as tight as the solution can possibly make it.
 		<</if>>
 		<<if $slaves[$i].vagina > 1>>
-			As $possessive body slowly absorbs the solution, its benefits begin to affect $possessive pussy. Being overfilled with the solution does not make it tighten any better or faster; it's just perverted.
+			As $his body slowly absorbs the solution, its benefits begin to affect $his pussy. Being overfilled with the solution does not make it tighten any better or faster; it's just perverted.
 			<<if random(1,100) > 80>>
 				By week's end, @@.lime;$possessive vagina has regained some tightness.@@
 				<<set $slaves[$i].vagina-->>
 			<</if>>
 		<<elseif $slaves[$i].vagina == 1>>
-			$possessiveCap pussy is as tight as the solution can possibly make it.
+			$His pussy is as tight as the solution can possibly make it.
 		<</if>>
 	<<elseif $slaves[$i].inflation == 1>>
-		$pronounCap makes sure to fill $possessive rear with nearly two liters of tightening solution, leaving $possessive belly noticeably distended, whenever $pronoun leaks or $possessive body absorbs too much. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+		$He makes sure to fill $his rear with nearly two liters of tightening solution, leaving $his belly noticeably distended, whenever $he leaks or $his body absorbs too much. $He is full enough to be swollen but not enough to visibly jiggle.
 		<<if $slaves[$i].anus > 1>>
-			The solution slowly tightens $possessive anus while inside $possessive bowels.
+			The solution slowly tightens $his anus while inside $his bowels.
 			<<if random(1,100) > 60>>
 				By week's end, @@.lime;$possessive butthole has tightened nicely.@@
 				<<set $slaves[$i].anus-->>
 			<</if>>
 		<<else>>
-			$possessiveCap anus is as tight as the solution can possibly make it.
+			$His anus is as tight as the solution can possibly make it.
 		<</if>>
 		<<if $slaves[$i].vagina > 1>>
-			As $possessive body slowly absorbs the solution, its benefits begin to affect $possessive pussy.
+			As $his body slowly absorbs the solution, its benefits begin to affect $his pussy.
 			<<if random(1,100) > 80>>
 				By week's end, @@.lime;$possessive vagina has regained some tightness.@@
 				<<set $slaves[$i].vagina-->>
 			<</if>>
 		<<elseif $slaves[$i].vagina == 1>>
-			$possessiveCap pussy is as tight as the solution can possibly make it.
+			$His pussy is as tight as the solution can possibly make it.
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].anus <= 1 && $slaves[$i].vagina <= 1>>
 		<<if ["serve in the club", "work in the brothel"].includes($slaves[$i].assignment)>>
-			$possessiveCap hole<<if $slaves[$i].vagina >= 0>>s are<<else>> is<</if>> as tight as the drugs can get <<if $slaves[$i].vagina >= 0>>them<<else>>it<</if>>, but given $possessive assignment, $pronoun is likely to be stretched out again so $possessive enema regimen continues.
+			$His hole<<if $slaves[$i].vagina >= 0>>s are<<else>> is<</if>> as tight as the drugs can get <<if $slaves[$i].vagina >= 0>>them<<else>>it<</if>>, but given $his assignment, $he is likely to be stretched out again so $his enema regimen continues.
 		<<else>>
-			$possessiveCap hole<<if $slaves[$i].vagina >= 0>>s are<<else>> is<</if>> as tight as the drugs can get <<if $slaves[$i].vagina >= 0>>them<<else>>it<</if>>. @@.yellow;$possessiveCap enema regimen has been ended.@@
+			$His hole<<if $slaves[$i].vagina >= 0>>s are<<else>> is<</if>> as tight as the drugs can get <<if $slaves[$i].vagina >= 0>>them<<else>>it<</if>>. @@.yellow;$possessiveCap enema regimen has been ended.@@
 			<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 		<</if>>
 	<</if>>
@@ -188,13 +188,13 @@
 				You no longer have a functional dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $object looking ready to burst. $pronounCap struggles to keep $possessive fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $him looking ready to burst. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 8, $slaves[$i].trust -= 8>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $possessive stomach is bloated with nearly four liters of milk, leaving $object looking pregnant. $pronounCap struggles to keep $possessive fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $his stomach is bloated with nearly four liters of milk, leaving $him looking pregnant. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $possessive stomach is bloated with nearly two liters of milk, leaving $possessive belly noticeably distended. $pronounCap struggles to keep $possessive fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $his stomach is bloated with nearly two liters of milk, leaving $his belly noticeably distended. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 3>>
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 2>>
@@ -202,13 +202,13 @@
 				You no longer have a functional dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ fills $possessive rectum from the dairy tap until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $object looking ready to burst. $pronounCap struggles to keep the fattening load inside $object, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ fills $his rectum from the dairy tap until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $him looking ready to burst. $He struggles to keep the fattening load inside $him, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 8, $slaves[$i].trust -= 8>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ fills $possessive rectum from the dairy tap until $possessive stomach is bloated with nearly four liters of milk, leaving $object looking pregnant. $pronounCap struggles to keep the fattening load inside $object, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ fills $his rectum from the dairy tap until $his stomach is bloated with nearly four liters of milk, leaving $him looking pregnant. $He struggles to keep the fattening load inside $him, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 5,$slaves[$i].trust -= 5>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ fills $possessive rectum from the dairy tap until $possessive stomach is bloated with nearly two liters of milk, leaving $possessive belly noticeably distended. $pronounCap struggles to keep the fattening load inside $object, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ fills $his rectum from the dairy tap until $his stomach is bloated with nearly two liters of milk, leaving $his belly noticeably distended. $He struggles to keep the fattening load inside $him, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 3>>
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 3>>
@@ -217,13 +217,13 @@
 				$slaves[_saf].slaveName is no longer lactating and thus can no longer keep $slaves[$i].slaveName filled with milk. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, $slaves[$i].milkSource = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $object looking ready to burst. $pronounCap struggles to keep $possessive fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $him looking ready to burst. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 8, $slaves[$i].trust -= 8>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $possessive stomach is bloated with nearly four liters of milk, leaving $object looking pregnant. $pronounCap struggles to keep $possessive fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $his stomach is bloated with nearly four liters of milk, leaving $him looking pregnant. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $possessive stomach is bloated with nearly two liters of milk, leaving $possessive belly noticeably distended. $pronounCap struggles to keep $possessive fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ suckles from $slaves[_saf].slaveName until $his stomach is bloated with nearly two liters of milk, leaving $his belly noticeably distended. $He struggles to keep $his fatty, liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 3>>
 			<</if>>
 		<</if>>
@@ -233,13 +233,13 @@
 				You no longer have a functional dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from the dairy tap until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $object looking ready to burst. $pronounCap rubs $possessive full belly @@.mediumaquamarine;contently@@, anticipating $possessive next gorging.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from the dairy tap until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $him looking ready to burst. $He rubs $his full belly @@.mediumaquamarine;contently@@, anticipating $his next gorging.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from the dairy tap until $possessive stomach is bloated with nearly four liters of milk, leaving $object looking pregnant. $pronounCap rubs $possessive taut belly @@.mediumaquamarine;contently@@, anticipating $possessive next feeding.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from the dairy tap until $his stomach is bloated with nearly four liters of milk, leaving $him looking pregnant. $He rubs $his taut belly @@.mediumaquamarine;contently@@, anticipating $his next feeding.
 				<<set $slaves[$i].devotion += 4, $slaves[$i].trust += 4>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from the dairy tap until $possessive stomach is bloated with nearly two liters of milk, leaving $possessive belly noticeably distended. $pronounCap rubs $possessive sloshing belly @@.mediumaquamarine;contently@@, anticipating $possessive next meal.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from the dairy tap until $his stomach is bloated with nearly two liters of milk, leaving $his belly noticeably distended. $He rubs $his sloshing belly @@.mediumaquamarine;contently@@, anticipating $his next meal.
 				<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>>
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 2>>
@@ -247,13 +247,13 @@
 				You no longer have a functional dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.hotpink;happily@@ fills $possessive rectum from the dairy tap until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $object looking ready to burst. $pronounCap rubs $possessive taut belly @@.mediumaquamarine;contently@@, though $pronoun wishes $pronoun could have swallowed it instead.
+				Throughout the week, $he @@.hotpink;happily@@ fills $his rectum from the dairy tap until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $him looking ready to burst. $He rubs $his taut belly @@.mediumaquamarine;contently@@, though $he wishes $he could have swallowed it instead.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 4, $slaves[$i].trust += 4>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.hotpink;happily@@ fills $possessive rectum from the dairy tap until $possessive stomach is bloated with nearly four liters of milk, leaving $object looking pregnant. $pronounCap rubs $possessive full belly @@.mediumaquamarine;contently@@, though $pronoun wishes $pronoun could have swallowed it instead.
+				Throughout the week, $he @@.hotpink;happily@@ fills $his rectum from the dairy tap until $his stomach is bloated with nearly four liters of milk, leaving $him looking pregnant. $He rubs $his full belly @@.mediumaquamarine;contently@@, though $he wishes $he could have swallowed it instead.
 				<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.hotpink;happily@@ fills $possessive rectum from the dairy tap until $possessive stomach is bloated with nearly two liters of milk, leaving $possessive belly noticeably distended. $pronounCap rubs $possessive sloshing belly @@.mediumaquamarine;contently@@, though $pronoun wishes $pronoun could have swallowed it instead.
+				Throughout the week, $he @@.hotpink;happily@@ fills $his rectum from the dairy tap until $his stomach is bloated with nearly two liters of milk, leaving $his belly noticeably distended. $He rubs $his sloshing belly @@.mediumaquamarine;contently@@, though $he wishes $he could have swallowed it instead.
 				<<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>>
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 3>>
@@ -262,13 +262,13 @@
 				$slaves[_saf].slaveName is no longer lactating and thus can no longer keep $slaves[$i].slaveName filled with milk. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, $slaves[$i].milkSource = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $object looking ready to burst. $pronounCap rubs $possessive full belly @@.mediumaquamarine;contently@@, anticipating $possessive next gorging.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of milk, leaving $him looking ready to burst. $He rubs $his full belly @@.mediumaquamarine;contently@@, anticipating $his next gorging.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $possessive stomach is bloated with nearly four liters of milk, leaving $object looking pregnant. $pronounCap rubs $possessive taut belly @@.mediumaquamarine;contently@@, anticipating $possessive next feeding.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $his stomach is bloated with nearly four liters of milk, leaving $him looking pregnant. $He rubs $his taut belly @@.mediumaquamarine;contently@@, anticipating $his next feeding.
 				<<set $slaves[$i].devotion += 4, $slaves[$i].trust += 4>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $possessive stomach is bloated with nearly two liters of milk, leaving $possessive belly noticeably distended. $pronounCap rubs $possessive sloshing belly @@.mediumaquamarine;contently@@, anticipating $possessive next meal.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from $slaves[_saf].slaveName until $his stomach is bloated with nearly two liters of milk, leaving $his belly noticeably distended. $He rubs $his sloshing belly @@.mediumaquamarine;contently@@, anticipating $his next meal.
 				<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>>
 			<</if>>
 		<</if>>
@@ -278,24 +278,24 @@
 				You no longer have a functional dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun makes sure to keep herself filled with nearly two gallons of milk, leaving $object looking ready to burst. $pronounCap keeps herself @@.red;painfully full@@ for you.
+				Throughout the week, $he makes sure to keep herself filled with nearly two gallons of milk, leaving $him looking ready to burst. $He keeps herself @@.red;painfully full@@ for you.
 				<<set $slaves[$i].health -= 10>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun makes sure to keep herself filled with nearly four liters of milk, leaving $object looking pregnant. $pronounCap is full enough to be distended but not enough to grow taut.
+				Throughout the week, $he makes sure to keep herself filled with nearly four liters of milk, leaving $him looking pregnant. $He is full enough to be distended but not enough to grow taut.
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun makes sure to keep herself filled with nearly two liters of milk, leaving $possessive belly noticeably distended. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+				Throughout the week, $he makes sure to keep herself filled with nearly two liters of milk, leaving $his belly noticeably distended. $He is full enough to be swollen but not enough to visibly jiggle.
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 2>>
 			<<if ($dairySlaves == 0 || $dairy == 0) && $arcologies[0].FSPastoralistLaw != 1>>
 				You no longer have a functional dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun makes sure to fill $possessive rear with nearly two gallons of milk, leaving $object looking ready to burst, whenever $pronoun leaks or needs to release $possessive load. $pronounCap keeps herself @@.red;painfully full@@ for you.
+				Throughout the week, $he makes sure to fill $his rear with nearly two gallons of milk, leaving $him looking ready to burst, whenever $he leaks or needs to release $his load. $He keeps herself @@.red;painfully full@@ for you.
 				<<set $slaves[$i].health -= 10>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun makes sure to fill $possessive rear with nearly four liters of milk, leaving $object looking pregnant, whenever $pronoun leaks or needs to release $possessive load. $pronounCap is full enough to be distended but not enough to grow taut.
+				Throughout the week, $he makes sure to fill $his rear with nearly four liters of milk, leaving $him looking pregnant, whenever $he leaks or needs to release $his load. $He is full enough to be distended but not enough to grow taut.
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun makes sure to fill $possessive rear with nearly two liters of milk, leaving $possessive belly noticeably distended, whenever $pronoun leaks or needs to release $possessive load. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+				Throughout the week, $he makes sure to fill $his rear with nearly two liters of milk, leaving $his belly noticeably distended, whenever $he leaks or needs to release $his load. $He is full enough to be swollen but not enough to visibly jiggle.
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 3>>
 			<<set _saf = $slaveIndices[$slaves[$i].milkSource]>>
@@ -303,12 +303,12 @@
 				$slaves[_saf].slaveName is no longer lactating and thus can no longer keep $slaves[$i].slaveName filled with milk. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, $slaves[$i].milkSource = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun makes sure keep suckling from $slaves[_saf].slaveName until $pronoun is filled with nearly two gallons of milk, leaving $object looking ready to give birth. $pronounCap keeps herself @@.red;painfully full@@ for you.
+				Throughout the week, $he makes sure keep suckling from $slaves[_saf].slaveName until $he is filled with nearly two gallons of milk, leaving $him looking ready to give birth. $He keeps herself @@.red;painfully full@@ for you.
 				<<set $slaves[$i].health -= 10>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun makes sure keep suckling from $slaves[_saf].slaveName until $pronoun is filled with nearly four liters of milk, leaving $object looking pregnant. $pronounCap is full enough to be distended but not enough to grow taut.
+				Throughout the week, $he makes sure keep suckling from $slaves[_saf].slaveName until $he is filled with nearly four liters of milk, leaving $him looking pregnant. $He is full enough to be distended but not enough to grow taut.
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun makes sure keep suckling from $slaves[_saf].slaveName until $pronoun is filled with nearly two liters of milk, leaving $possessive belly noticeably distended. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+				Throughout the week, $he makes sure keep suckling from $slaves[_saf].slaveName until $he is filled with nearly two liters of milk, leaving $his belly noticeably distended. $He is full enough to be swollen but not enough to visibly jiggle.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -320,13 +320,13 @@
 				You no longer have a functional cum dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $object looking ready to burst. $pronounCap struggles to keep $possessive liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $him looking ready to burst. $He struggles to keep $his liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 8, $slaves[$i].trust -= 8>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $possessive stomach is bloated with nearly four liters of cum, leaving $object looking pregnant. $pronounCap struggles to keep $possessive liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $his stomach is bloated with nearly four liters of cum, leaving $him looking pregnant. $He struggles to keep $his liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $possessive stomach is bloated with nearly two liters of cum, leaving $possessive belly noticeably distended. $pronounCap struggles to keep $possessive liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks from the dairy tap until $his stomach is bloated with nearly two liters of cum, leaving $his belly noticeably distended. $He struggles to keep $his liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 3>>
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 2>>
@@ -334,13 +334,13 @@
 				You no longer have a functional cum dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ fills $possessive rectum from the dairy tap until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $object looking ready to burst. $pronounCap struggles to keep the massive cumshot inside $object, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ fills $his rectum from the dairy tap until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $him looking ready to burst. $He struggles to keep the massive cumshot inside $him, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 8, $slaves[$i].trust -= 8>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ fills $possessive rectum from the dairy tap until $possessive stomach is bloated with nearly four liters of cum, leaving $object looking pregnant. $pronounCap struggles to keep the huge cumshot inside $object, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ fills $his rectum from the dairy tap until $his stomach is bloated with nearly four liters of cum, leaving $him looking pregnant. $He struggles to keep the huge cumshot inside $him, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ fills $possessive rectum from the dairy tap until $possessive stomach is bloated with nearly two liters of cum, leaving $possessive belly noticeably distended. $pronounCap struggles to keep the cumshot inside $object, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ fills $his rectum from the dairy tap until $his stomach is bloated with nearly two liters of cum, leaving $his belly noticeably distended. $He struggles to keep the cumshot inside $him, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 3>>
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 3>>
@@ -349,13 +349,13 @@
 				$slaves[_saf].slaveName has no longer has testicles and thus can no longer keep $slaves[$i].slaveName filled with cum. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, $slaves[$i].cumSource = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $object looking ready to burst. $pronounCap struggles to keep $possessive liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $him looking ready to burst. $He struggles to keep $his liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 8, $slaves[$i].trust -= 8>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $possessive stomach is bloated with nearly four liters of cum, leaving $object looking pregnant. $pronounCap struggles to keep $possessive liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $his stomach is bloated with nearly four liters of cum, leaving $him looking pregnant. $He struggles to keep $his liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.mediumorchid;reluctantly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $possessive stomach is bloated with nearly two liters of cum, leaving $possessive belly noticeably distended. $pronounCap struggles to keep $possessive liquid meal down, @@.gold;fearing@@ punishment otherwise.
+				Throughout the week, $he @@.mediumorchid;reluctantly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $his stomach is bloated with nearly two liters of cum, leaving $his belly noticeably distended. $He struggles to keep $his liquid meal down, @@.gold;fearing@@ punishment otherwise.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 3>>
 			<</if>>
 		<</if>>
@@ -365,13 +365,13 @@
 				You no longer have a functional cum dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from the dairy tap until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $object looking ready to burst. $pronounCap rubs $possessive full belly @@.mediumaquamarine;contently@@, anticipating $possessive next gorging.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from the dairy tap until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $him looking ready to burst. $He rubs $his full belly @@.mediumaquamarine;contently@@, anticipating $his next gorging.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from the dairy tap until $possessive stomach is bloated with nearly four liters of cum, leaving $object looking pregnant. $pronounCap rubs $possessive taut belly @@.mediumaquamarine;contently@@, anticipating $possessive next feeding.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from the dairy tap until $his stomach is bloated with nearly four liters of cum, leaving $him looking pregnant. $He rubs $his taut belly @@.mediumaquamarine;contently@@, anticipating $his next feeding.
 				<<set $slaves[$i].devotion += 4, $slaves[$i].trust += 4>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks from the dairy tap until $possessive stomach is bloated with nearly two liters of cum, leaving $possessive belly noticeably distended. $pronounCap rubs $possessive sloshing belly @@.mediumaquamarine;contently@@, anticipating $possessive next meal.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks from the dairy tap until $his stomach is bloated with nearly two liters of cum, leaving $his belly noticeably distended. $He rubs $his sloshing belly @@.mediumaquamarine;contently@@, anticipating $his next meal.
 				<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>>
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 2>>
@@ -379,13 +379,13 @@
 				You no longer have a functional cum dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.hotpink;happily@@ fills $possessive rectum from the dairy tap until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $object looking ready to burst. $pronounCap rubs $possessive taut belly @@.mediumaquamarine;contently@@, though $pronoun wishes $pronoun could have swallowed it instead.
+				Throughout the week, $he @@.hotpink;happily@@ fills $his rectum from the dairy tap until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $him looking ready to burst. $He rubs $his taut belly @@.mediumaquamarine;contently@@, though $he wishes $he could have swallowed it instead.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 4, $slaves[$i].trust += 4>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.hotpink;happily@@ fills $possessive rectum from the dairy tap until $possessive stomach is bloated with nearly four liters of cum, leaving $object looking pregnant. $pronounCap rubs $possessive full belly @@.mediumaquamarine;contently@@, though $pronoun wishes $pronoun could have swallowed it instead.
+				Throughout the week, $he @@.hotpink;happily@@ fills $his rectum from the dairy tap until $his stomach is bloated with nearly four liters of cum, leaving $him looking pregnant. $He rubs $his full belly @@.mediumaquamarine;contently@@, though $he wishes $he could have swallowed it instead.
 				<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.hotpink;happily@@ fills $possessive rectum from the dairy tap until $possessive stomach is bloated with nearly two liters of cum, leaving $possessive belly noticeably distended. $pronounCap rubs $possessive sloshing belly @@.mediumaquamarine;contently@@, though $pronoun wishes $pronoun could have swallowed it instead.
+				Throughout the week, $he @@.hotpink;happily@@ fills $his rectum from the dairy tap until $his stomach is bloated with nearly two liters of cum, leaving $his belly noticeably distended. $He rubs $his sloshing belly @@.mediumaquamarine;contently@@, though $he wishes $he could have swallowed it instead.
 				<<set $slaves[$i].devotion++, $slaves[$i].trust++>>
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 3>>
@@ -394,13 +394,13 @@
 					$slaves[_saf].slaveName has no longer has testicles and thus can no longer keep $slaves[$i].slaveName filled with cum. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, $slaves[$i].cumSource = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $object looking ready to burst. $pronounCap rubs $possessive full belly @@.mediumaquamarine;contently@@, anticipating $possessive next gorging.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of cum, leaving $him looking ready to burst. $He rubs $his full belly @@.mediumaquamarine;contently@@, anticipating $his next gorging.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $possessive stomach is bloated with nearly four liters of cum, leaving $object looking pregnant. $pronounCap rubs $possessive taut belly @@.mediumaquamarine;contently@@, anticipating $possessive next feeding.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $his stomach is bloated with nearly four liters of cum, leaving $him looking pregnant. $He rubs $his taut belly @@.mediumaquamarine;contently@@, anticipating $his next feeding.
 				<<set $slaves[$i].devotion += 4, $slaves[$i].trust += 4>>
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun @@.hotpink;eagerly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $possessive stomach is bloated with nearly two liters of cum, leaving $possessive belly noticeably distended. $pronounCap rubs $possessive sloshing belly @@.mediumaquamarine;contently@@, anticipating $possessive next meal.
+				Throughout the week, $he @@.hotpink;eagerly@@ sucks $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $his stomach is bloated with nearly two liters of cum, leaving $his belly noticeably distended. $He rubs $his sloshing belly @@.mediumaquamarine;contently@@, anticipating $his next meal.
 				<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>>
 			<</if>>
 		<</if>>
@@ -410,24 +410,24 @@
 				You no longer have a functional cum dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun makes sure to keep herself filled with nearly two gallons of cum, leaving $object looking ready to burst. $pronounCap keeps herself @@.red;painfully full@@ for you.
+				Throughout the week, $he makes sure to keep herself filled with nearly two gallons of cum, leaving $him looking ready to burst. $He keeps herself @@.red;painfully full@@ for you.
 				<<set $slaves[$i].health -= 10>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun makes sure to keep herself filled with nearly four liters of cum, leaving $object looking pregnant. $pronounCap is full enough to be distended but not enough to grow taut.
+				Throughout the week, $he makes sure to keep herself filled with nearly four liters of cum, leaving $him looking pregnant. $He is full enough to be distended but not enough to grow taut.
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun makes sure to keep herself filled with nearly two liters of cum, leaving $possessive belly noticeably distended. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+				Throughout the week, $he makes sure to keep herself filled with nearly two liters of cum, leaving $his belly noticeably distended. $He is full enough to be swollen but not enough to visibly jiggle.
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 2>>
 			<<if ($dairySlaves == 0 || $cumSlaves == 0 || $dairy == 0) && $arcologies[0].FSPastoralistLaw != 1>>
 				You no longer have a functional cum dairy. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun makes sure to fill $possessive rear with nearly two gallons of cum, leaving $object looking ready to burst, whenever $pronoun leaks or needs to release $possessive load. $pronounCap keeps herself @@.red;painfully full@@ for you.
+				Throughout the week, $he makes sure to fill $his rear with nearly two gallons of cum, leaving $him looking ready to burst, whenever $he leaks or needs to release $his load. $He keeps herself @@.red;painfully full@@ for you.
 				<<set $slaves[$i].health -= 10>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun makes sure to fill $possessive rear with nearly four liters of cum, leaving $object looking pregnant, whenever $pronoun leaks or needs to release $possessive load. $pronounCap is full enough to be distended but not enough to grow taut.
+				Throughout the week, $he makes sure to fill $his rear with nearly four liters of cum, leaving $him looking pregnant, whenever $he leaks or needs to release $his load. $He is full enough to be distended but not enough to grow taut.
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun makes sure to fill $possessive rear with nearly two liters of cum, leaving $possessive belly noticeably distended, whenever $pronoun leaks or needs to release $possessive load. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+				Throughout the week, $he makes sure to fill $his rear with nearly two liters of cum, leaving $his belly noticeably distended, whenever $he leaks or needs to release $his load. $He is full enough to be swollen but not enough to visibly jiggle.
 			<</if>>
 		<<elseif $slaves[$i].inflationMethod == 3>>
 			<<set _saf = $slaveIndices[$slaves[$i].cumSource]>>
@@ -435,12 +435,12 @@
 					$slaves[$j].slaveName has no longer has testicles and thus can no longer keep $slaves[$i].slaveName filled with cum. @@.yellow;$possessiveCap inflation regimen has been ended.@@
 				<<set $slaves[$i].inflation = 0, $slaves[$i].inflationType = "none", $slaves[$i].inflationMethod = 0, $slaves[$i].cumSource = 0, SetBellySize($slaves[$i])>>
 			<<elseif $slaves[$i].inflation == 3>>
-				Throughout the week, $pronoun makes sure keep sucking $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $pronoun is filled with nearly two gallons of cum, leaving $object looking ready to burst. $pronounCap keeps herself @@.red;painfully full@@ for you.
+				Throughout the week, $he makes sure keep sucking $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $he is filled with nearly two gallons of cum, leaving $him looking ready to burst. $He keeps herself @@.red;painfully full@@ for you.
 				<<set $slaves[$i].health -= 10>>
 			<<elseif $slaves[$i].inflation == 2>>
-				Throughout the week, $pronoun makes sure keep sucking $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $pronoun is filled with nearly four liters of cum, leaving $object looking pregnant. $pronounCap is full enough to be distended but not enough to grow taut.
+				Throughout the week, $he makes sure keep sucking $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $he is filled with nearly four liters of cum, leaving $him looking pregnant. $He is full enough to be distended but not enough to grow taut.
 			<<elseif $slaves[$i].inflation == 1>>
-				Throughout the week, $pronoun makes sure keep sucking $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $pronoun is filled with nearly two liters of cum, leaving $possessive belly noticeably distended. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+				Throughout the week, $he makes sure keep sucking $slaves[_saf].slaveName's <<if $slaves[_saf].dick > 0>>cock<<else>>cum hole<</if>> until $he is filled with nearly two liters of cum, leaving $his belly noticeably distended. $He is full enough to be swollen but not enough to visibly jiggle.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -448,78 +448,78 @@
 <<case "food">>
 	<<if $slaves[$i].behavioralFlaw == "anorexic">>
 		<<if $slaves[$i].inflation == 3>>
-			Throughout the week, $pronoun focuses $possessive @@.mediumorchid;loathing@@ on you as $pronoun forces down servings of slave food until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of the paste, leaving $object looking ready to burst. $pronounCap struggles to keep $possessive meal down, @@.gold;fearing@@ punishment otherwise.
+			Throughout the week, $he focuses $his @@.mediumorchid;loathing@@ on you as $he forces down servings of slave food until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of the paste, leaving $him looking ready to burst. $He struggles to keep $his meal down, @@.gold;fearing@@ punishment otherwise.
 			<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 16, $slaves[$i].trust -= 16>>
 		<<elseif $slaves[$i].inflation == 2>>
-			Throughout the week, $pronoun focuses $possessive @@.mediumorchid;loathing@@ on you as $pronoun forces down servings of slave food until $possessive stomach is bloated with nearly four liters of the paste, giving $object quite the food baby. $pronounCap struggles to keep $possessive meal down, @@.gold;fearing@@ punishment otherwise.
+			Throughout the week, $he focuses $his @@.mediumorchid;loathing@@ on you as $he forces down servings of slave food until $his stomach is bloated with nearly four liters of the paste, giving $him quite the food baby. $He struggles to keep $his meal down, @@.gold;fearing@@ punishment otherwise.
 			<<set $slaves[$i].devotion -= 10, $slaves[$i].trust -= 10>>
 		<<elseif $slaves[$i].inflation == 1>>
-			Throughout the week, $pronoun focuses $possessive @@.mediumorchid;loathing@@ on you as $pronoun forces down servings of slave food until $possessive stomach is bloated with nearly two liters of the paste, leaving $possessive stomach obviously distended. $pronounCap struggles to keep $possessive meal down, @@.gold;fearing@@ punishment otherwise.
+			Throughout the week, $he focuses $his @@.mediumorchid;loathing@@ on you as $he forces down servings of slave food until $his stomach is bloated with nearly two liters of the paste, leaving $his stomach obviously distended. $He struggles to keep $his meal down, @@.gold;fearing@@ punishment otherwise.
 			<<set $slaves[$i].devotion -= 6, $slaves[$i].trust -= 6>>
 		<</if>>
 	<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
 		<<if $slaves[$i].inflation == 3>>
-			Throughout the week, $pronoun @@.hotpink;eagerly@@ stuffs $possessive face with servings of slave food until $possessive stomach is @@.red;painfully bloated@@ with nearly two gallons of the paste, leaving $object looking ready to burst. $pronounCap rubs $possessive stuffed belly @@.mediumaquamarine;contently@@, anticipating $possessive next gorging.
+			Throughout the week, $he @@.hotpink;eagerly@@ stuffs $his face with servings of slave food until $his stomach is @@.red;painfully bloated@@ with nearly two gallons of the paste, leaving $him looking ready to burst. $He rubs $his stuffed belly @@.mediumaquamarine;contently@@, anticipating $his next gorging.
 			<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 10, $slaves[$i].trust += 10>>
 		<<elseif $slaves[$i].inflation == 2>>
-			Throughout the week, $pronoun @@.hotpink;eagerly@@ stuffs $possessive face with servings of slave food until $possessive stomach is bloated with nearly four liters of the paste, giving $object quite the food baby. $pronounCap rubs $possessive taut belly @@.mediumaquamarine;contently@@, anticipating $possessive next meal.
+			Throughout the week, $he @@.hotpink;eagerly@@ stuffs $his face with servings of slave food until $his stomach is bloated with nearly four liters of the paste, giving $him quite the food baby. $He rubs $his taut belly @@.mediumaquamarine;contently@@, anticipating $his next meal.
 			<<set $slaves[$i].devotion += 7, $slaves[$i].trust += 7>>
 		<<elseif $slaves[$i].inflation == 1>>
-			Throughout the week, $pronoun @@.hotpink;eagerly@@ stuffs $possessive face with servings of slave food until $possessive stomach is bloated with nearly two liters of the paste, leaving $possessive belly noticeably distended. $pronounCap rubs $possessive stuffed belly @@.mediumaquamarine;contently@@, anticipating $possessive next helping.
+			Throughout the week, $he @@.hotpink;eagerly@@ stuffs $his face with servings of slave food until $his stomach is bloated with nearly two liters of the paste, leaving $his belly noticeably distended. $He rubs $his stuffed belly @@.mediumaquamarine;contently@@, anticipating $his next helping.
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].inflation == 3>>
-			Throughout the week, $pronoun makes sure to binge eat until $possessive gut is stuffed with nearly two gallons of slave food, leaving $object looking ready to burst. $pronounCap keeps herself @@.red;painfully full@@ for you.
+			Throughout the week, $he makes sure to binge eat until $his gut is stuffed with nearly two gallons of slave food, leaving $him looking ready to burst. $He keeps herself @@.red;painfully full@@ for you.
 			<<set $slaves[$i].health -= 10>>
 		<<elseif $slaves[$i].inflation == 2>>
-			Throughout the week, $pronoun makes sure to binge eat until $possessive gut is filled with nearly four liters of slave food, giving $object quite the food baby. $pronounCap is full enough to be distended but not enough to grow taut.
+			Throughout the week, $he makes sure to binge eat until $his gut is filled with nearly four liters of slave food, giving $him quite the food baby. $He is full enough to be distended but not enough to grow taut.
 		<<elseif $slaves[$i].inflation == 1>>
-			Throughout the week, $pronoun makes sure to binge eat until $pronoun's consumed nearly two liters of slave food, leaving $possessive belly noticeably distended. $pronounCap is full enough to be swollen but not enough to visibly jiggle.
+			Throughout the week, $he makes sure to binge eat until $he's consumed nearly two liters of slave food, leaving $his belly noticeably distended. $He is full enough to be swollen but not enough to visibly jiggle.
 		<</if>>
 	<</if>>
 <</switch>>
 
 <<if $slaves[$i].fetish == "cumslut" && $slaves[$i].inflationType == "cum" && $slaves[$i].bellyFluid >= 1500>>
-	Being so full of cum fills $object with @@.hotpink;absolute bliss.@@
+	Being so full of cum fills $him with @@.hotpink;absolute bliss.@@
 	<<set $slaves[$i].devotion += 5>>
 <<elseif $slaves[$i].fetish == "masochist" && $slaves[$i].bellyFluid >= 10000>>
-	That pain comes with @@.hotpink;absolute bliss@@ as $pronoun relishes the unique sensation.
+	That pain comes with @@.hotpink;absolute bliss@@ as $he relishes the unique sensation.
 	<<set $slaves[$i].devotion += 5>>
 <</if>>
 <<if $slaves[$i].behavioralQuirk == "fitness">>
 <<if $slaves[$i].inflationType == "milk" || $slaves[$i].inflationType == "cum" || $slaves[$i].inflationType == "food" && $slaves[$i].inflation > 0>>
-	$pronounCap vows to exercise more to deal with @@.mediumorchid;the bloated belly you forced on $object.@@ Though gaining weight just means more opportunities to work out.
+	$He vows to exercise more to deal with @@.mediumorchid;the bloated belly you forced on $him.@@ Though gaining weight just means more opportunities to work out.
 	<<set $slaves[$i].devotion -= 3>>
 <</if>>
 <</if>>
 
 <<if $slaves[$i].inflationType == "milk" && $slaves[$i].bellyFluid >= 1500>>
 	<<if $slaves[$i].weight < 200>>
-		$possessiveCap body @@.lime;grows a little more padded@@ as it absorbs the milk contained in $possessive digestive track.
+		$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>>
 	<<if $slaves[$i].boobs < 3000>>
-		$possessiveCap breasts @@.lime;swell@@ with added fat as $pronoun digests the milk contained in $possessive digestive track.
+		$His breasts @@.lime;swell@@ with added fat as $he digests the milk contained in $his digestive track.
 		<<set $slaves[$i].boobs += 200>>
 	<</if>>
 	<<if $slaves[$i].butt < 7>>
-		$possessiveCap butt @@.lime;swells@@ with added fat as $pronoun digests the milk contained in $possessive digestive track.
+		$His butt @@.lime;swells@@ with added fat as $he digests the milk contained in $his digestive track.
 		<<set $slaves[$i].butt += 1>>
 	<</if>>
 	<</if>>
 <<elseif $slaves[$i].inflationType == "food" && $slaves[$i].bellyFluid >= 1500>>
 	<<if $slaves[$i].weight < 200>>
-		$possessiveCap body @@.lime;rapidly gains weight@@ as it digests the food contained in $possessive digestive track.
+		$His body @@.lime;rapidly gains weight@@ as it digests the food contained in $his digestive track.
 		<<set $slaves[$i].weight += 4>>
 	<</if>>
 	<<if random(1,100) > 50 && $slaves[$i].boobs < 3000>>
-		$possessiveCap breasts @@.lime;swell@@ with added fat as $pronoun digests the food contained in $possessive digestive track.
+		$His breasts @@.lime;swell@@ with added fat as $he digests the food contained in $his digestive track.
 		<<set $slaves[$i].boobs += 200>>
 	<</if>>
 	<<if random(1,100) > 50 && $slaves[$i].butt < 7>>
-		$possessiveCap butt @@.lime;swells@@ with added fat as $pronoun digests the food contained in $possessive digestive track.
+		$His butt @@.lime;swells@@ with added fat as $he digests the food contained in $his digestive track.
 		<<set $slaves[$i].butt += 1>>
 	<</if>>
 <</if>>
diff --git a/src/pregmod/seFCTVshows.tw b/src/pregmod/seFCTVshows.tw
index 7d824cfe7f1..1ccdd81c396 100644
--- a/src/pregmod/seFCTVshows.tw
+++ b/src/pregmod/seFCTVshows.tw
@@ -871,7 +871,7 @@ The offered price is <<print cashFormat($slaveCost)>>.
 		<br><br>
 		"While it may be difficult to effectively prevent rivalries from forming, some slave owners do mandate against certain positive relationships for any number of reasons. From a desire to seed fear among slaves and prevent them from having a source of solace to a belief that their slaves should be devoted only to their owner."
 		<br><br>
-		Again, the scene changes to a view just inside the entrance of what looks to be the servants’ quarters. Slaves in conservative maid's uniforms bustle about, but there are a few knots of slaves talking amongst themselves dotted around. 
+		Again, the scene changes to a view just inside the entrance of what looks to be the servants' quarters. Slaves in conservative maid's uniforms bustle about, but there are a few knots of slaves talking amongst themselves dotted around. 
 		<br><br>
 		"However, here in the arcology Open Skies, the owner, Charles Greenwich, has no such desires and has stated that he greatly enjoys watching the various relationships between slaves rise and fall and encourages such things within his chattel."
 		<br><br>
@@ -879,7 +879,7 @@ The offered price is <<print cashFormat($slaveCost)>>.
 		<br><br>
 		"Now, that seems like a flaw, don't it? Why let your slaves have the chance of basically losing two when one goes? But believe me when I say you don't want over a hundred and fifty slaves resenting you for not letting them make friendly-like. Not that I'd want to or nothing. They're all dear to me and I want them happy. That's when the best work gets done."
 		<br><br>
-		"Now, I'm sure you're vying to ask why I don't do nothin’ about the rivalries that crop up. That's 'cuz it's a right pain in the ass to fix. You have to sit both parties down and make them talk their problems out. I will admit that I do like seeing it happen some too. It's like high school drama but I get to see it all unfold."
+		"Now, I'm sure you're vying to ask why I don't do nothin' about the rivalries that crop up. That's 'cuz it's a right pain in the ass to fix. You have to sit both parties down and make them talk their problems out. I will admit that I do like seeing it happen some too. It's like high school drama but I get to see it all unfold."
 		<br><br>
 		The shot switches to the inside of a comparatively sparsely populated spa. The gentle splash of water is interspersed with some shots of laughter and bits of louder conversion from the lounging slaves. 
 		<br><br>
diff --git a/src/pregmod/widgets/bodySwapReaction.tw b/src/pregmod/widgets/bodySwapReaction.tw
index df3c16a7c77..3685cc40c81 100644
--- a/src/pregmod/widgets/bodySwapReaction.tw
+++ b/src/pregmod/widgets/bodySwapReaction.tw
@@ -17,103 +17,103 @@
 
 
 <<if $args[0].health >= $args[1].health+10>>
-	The monitors indicate that her @@.green;health has improved@@ from her previous body. Whatever else happens, she will likely appreciate this.
+	The monitors indicate that $his @@.green;health has improved@@ from $his previous body. Whatever else happens, $he will likely appreciate this.
 <<elseif $args[0].health <= $args[1].health-10>>
-	The monitors indicate that her @@.red;health has degraded@@ from her previous body. Whatever else happens, this will likely upset her.
+	The monitors indicate that $his @@.red;health has degraded@@ from $his previous body. Whatever else happens, this will likely upset $him.
 <</if>>
-Now you only have to wait for her to wake up.
+Now you only have to wait for $him to wake up.
 
 <br><br>
 
 <<if $args[0].amp != 1>> /* (has limbs) */
 	<<if $args[0].fetish == "mindbroken">>
-		After a while, she begins to stir, her eyes fluttering. She lets out a low groan and reaches up to rub at her eyes. She stops and stares uncomprehendingly
+		After a while, $he begins to stir, $his eyes fluttering. $He lets out a low groan and reaches up to rub at $his eyes. $He stops and stares uncomprehendingly
 		<<if _sight == -2>>
-			into @@.red;the darkness that is her new world.@@ She goes into a panic and begins thrashing violently until she is restrained and sedated. Hopefully when she comes to again, she'll have forgotten she could ever see in the first place.
+			into @@.red;the darkness that is $his new world.@@ $He goes into a panic and begins thrashing violently until $he is restrained and sedated. Hopefully when $he comes to again, $he'll have forgotten $he could ever see in the first place.
 			<<set _end = 1>>
 		<<elseif _sight == 2>>
-			at the hand @@.green;she can now see.@@ The gift of sight is lost upon her, as is that she is no longer in her own body.
+			at the hand @@.green;$he can now see.@@ The gift of sight is lost upon $him, as is that $he is no longer in $his own body.
 		<<else>>
-			at the hand for moment before looking for her own. Eventually, she bumps into herself and realizes it belongs to her. From then, her old body is nothing more than a blur, soon to be forgotten forever.
+			at the hand for moment before looking for $his own. Eventually, $he bumps into $himself and realizes it belongs to $him. From then, $his old body is nothing more than a blur, soon to be forgotten forever.
 		<</if>>
 	<<elseif $args[0].devotion >= 50>>
-		After a while, she begins to stir, her eyes fluttering. She lets out a low groan and reaches up to rub at her eyes. She stops and stares uncomprehendingly
+		After a while, $he begins to stir, $his eyes fluttering. $He lets out a low groan and reaches up to rub at $his eyes. $He stops and stares uncomprehendingly
 		<<if _sight == -2>>
-			into @@.red;the darkness that is her new world.@@ She barely manages to keep calm before accepting this is the fate you have chosen for her.
+			into @@.red;the darkness that is $his new world.@@ $He barely manages to keep calm before accepting this is the fate you have chosen for $him.
 		<<elseif _sight == -1>>
-			at the hand @@.red;she can now hardly see.@@ As she squints at it, she realizes that it’s not her own and a smile begins to form on her face.
+			at the hand @@.red;$he can now hardly see.@@ As $he squints at it, $he realizes that it's not $his own and a smile begins to form on $his face.
 		<<elseif _sight == 2>>
-			at the @@.green;hand she can now see.@@ She is by no means ungrateful for such a gift, but is too shocked by it to truly respond. As her eyes move to you, however, she quickly blushes and looks away.
+			at the @@.green;hand $he can now see.@@ $He is by no means ungrateful for such a gift, but is too shocked by it to truly respond. As $his eyes move to you, however, $he quickly blushes and looks away.
 		<<elseif _sight == 1>>
-			at the hand for moment before she realizes that it’s not her own. A smile begins to form on her face, followed by a gasp once she realizes she can @@.green;see the world clearly now.@@
+			at the hand for moment before $he realizes that it's not $his own. A smile begins to form on $his face, followed by a gasp once $he realizes $he can @@.green;see the world clearly now.@@
 		<<else>>
-			at the hand for moment before she realizes that it’s not her own. A smile begins to form on her face.
+			at the hand for moment before $he realizes that it's not $his own. A smile begins to form on $his face.
 		<</if>>
 	<<elseif $args[0].devotion > 20>>
-		After a while, she begins to stir, her eyes fluttering. She lets out a low groan and reaches up to rub at her eyes. She stops and stares uncomprehendingly
+		After a while, $he begins to stir, $his eyes fluttering. $He lets out a low groan and reaches up to rub at $his eyes. $He stops and stares uncomprehendingly
 		<<if _sight == -2>>
-			into the @@.red;darkness that is her new world.@@ After a short expurgation of @@.gold;grief and terror,@@ she takes a deep breath and visibly suppresses her emotions before returning to her inspection.
+			into the @@.red;darkness that is $his new world.@@ After a short expurgation of @@.gold;grief and terror,@@ $he takes a deep breath and visibly suppresses $his emotions before returning to $his inspection.
 			<<set $args[0].trust -= 15>>
 		<<elseif _sight == -1>>
-			at the hand @@.gold;she can now hardly see.@@ As she @@.red;squints at it,@@ she realizes that her vision is not the only thing that has changed.
+			at the hand @@.gold;$he can now hardly see.@@ As $he @@.red;squints at it,@@ $he realizes that $his vision is not the only thing that has changed.
 			<<set $args[0].trust -= 5>>
 		<<elseif _sight == 2>>
-			at the hand @@.green;she can now see.@@ She's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give her such a gift.@@ She quickly returns to her senses and looks back to her hand finally realizing just why she can see now.
+			at the hand @@.green;$he can now see.@@ $He's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give $him such a gift.@@ $He quickly returns to $his senses and looks back to $his hand finally realizing just why $he can see now.
 			<<set $args[0].devotion += 15, $args[0].trust += 10>>
 		<<elseif _sight == 1>>
-			at the hand for moment before she realizes that it’s not her own. She lets out a gasp once she realizes she can @@.green;see the world clearly now;@@ she accepted her fate already, but she's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give her perfect vision.@@
+			at the hand for moment before $he realizes that it's not $his own. $He lets out a gasp once $he realizes $he can @@.green;see the world clearly now;@@ $he accepted $his fate already, but $he's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give $his perfect vision.@@
 			<<set $args[0].devotion += 5, $args[0].trust += 3>>
 		<<else>>
-			at the hand for moment before she realizes that it’s not her own.
+			at the hand for moment before $he realizes that it's not $his own.
 		<</if>>
 	<<else>>
-		She reaches up to rub at her eyes and pauses to stare in shock
+		$He reaches up to rub at $his eyes and pauses to stare in shock
 		<<if _sight == -2>>
-			into the @@.red;darkness that is her new world.@@ After a short expurgation of @@.gold;grief and terror,@@ she takes a deep breath and visibly suppresses her emotions. She
+			into the @@.red;darkness that is $his new world.@@ After a short expurgation of @@.gold;grief and terror,@@ $he takes a deep breath and visibly suppresses $his emotions. $He
 			<<set $args[0].trust -= 15>>
 		<<elseif _sight == -1>>
-			at her hand; an unfamiliar hand that she can @@.red;just barely see.@@ She
+			at $his hand; an unfamiliar hand that $he can @@.red;just barely see.@@ $He
 			<<set $args[0].trust -= 5>>
 		<<elseif _sight == 2>>
-			at the hand @@.green;she can now see.@@ She's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give her such a gift.@@ The gift of sight is short lived, however, as she
+			at the hand @@.green;$he can now see.@@ $He's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give $him such a gift.@@ The gift of sight is short lived, however, as $he
 			<<set $args[0].devotion += 15, $args[0].trust += 10>>
 		<<elseif _sight == 1>>
-			at her hand; a hand that she @@.green;can clearly see@@ is not her own. She
+			at $his hand; a hand that $he @@.green;can clearly see@@ is not $his own. $He
 			<<set $args[0].devotion += 5, $args[0].trust += 3>>
 		<<else>>
-			at her hand. She
+			at $his hand. $He
 		<</if>>
-		finally realizes that the new body she found herself in @@.gold;was not a nightmare as she had hoped, but reality.@@ She is @@.mediumorchid;utterly disturbed@@ by your removal of the last constant she had in life.
+		finally realizes that the new body $he found $himself in @@.gold;was not a nightmare as $he had hoped, but reality.@@ $He is @@.mediumorchid;utterly disturbed@@ by your removal of the last constant $he had in life.
 		<<set $args[0].devotion -= 15, $args[0].trust -= 30>>
 	<</if>>
 	
 	<<if _end != 1>>
 		<<if $args[0].skin != $args[1].skin && canSee($args[0]) && $args[0].fetish != "mindbroken">>
-			Her @@.coral;newly $args[0].skin skin@@ is the first thing that leaps out at her.
+			$His @@.coral;newly $args[0].skin skin@@ is the first thing that leaps out at $him.
 			<<if $args[0].devotion > 50>>
-				She is fascinated by the change and what this means for her.
+				$He is fascinated by the change and what this means for $him.
 			<<elseif $args[0].devotion > 20>>
-				The fact that you would alter something so defining about her no longer surprises her.
+				The fact that you would alter something so defining about $him no longer surprises $him.
 			<<elseif $args[0].devotion >= -20>>
-				The fact that you would alter something so defining about her is @@.hotpink;humbling.@@
+				The fact that you would alter something so defining about $him is @@.hotpink;humbling.@@
 				<<set $args[0].devotion += 2>>
 			<<else>>
-				The fact that you would alter something so defining about her is @@.gold;terrifying.@@
+				The fact that you would alter something so defining about $him is @@.gold;terrifying.@@
 				<<set $args[0].trust -= 2>>
 			<</if>>
 		<</if>>
 
-		She holds the limb in front of her, flexing each
+		$He holds the limb in front of $him, flexing each
 
 		/*(arms)*/
 		<<if $args[0].amp < 0 && $args[1].amp == 0>>
 			finger; the servo motors whining softly with each movement.
 			<<if $args[0].fetish == "mindbroken">>
-				She vaguely reacts to the sounds coming from her arm, though not to any meaningful extent.
+				$He vaguely reacts to the sounds coming from $his arm, though not to any meaningful extent.
 			<<elseif $args[0].devotion >= -20>>
-				A look of morbid curiosity crosses her features.
+				A look of morbid curiosity crosses $his features.
 			<<else>>
-				A look of @@.mediumorchid;frustration@@ and @@.gold;anguish@@ distorts her face as she moans pitiably.
+				A look of @@.mediumorchid;frustration@@ and @@.gold;anguish@@ distorts $his face as $he moans pitiably.
 				<<set $args[0].devotion -= 5, $args[0].trust -= 1>>
 			<</if>>
 		<<elseif $args[0].amp < 0 && $args[1].amp < 0>>
@@ -122,46 +122,46 @@ Now you only have to wait for her to wake up.
 			finger as if nothing changed.
 		<<elseif $args[0].muscles < $args[1].muscles-5>> /*(less muscle)*/
 			<<if $args[0].devotion > 20>>
-				finger; the arm @@.orange;notably less muscular@@ than her old one.
+				finger; the arm @@.orange;notably less muscular@@ than $his old one.
 			<<else>>
-				finger and noticing her arm feels @@.orange;less muscular@@ than she remembers. She becomes irritated with her newfound weakness and @@.mediumorchid;frowns angrily.@@
+				finger and noticing $his arm feels @@.orange;less muscular@@ than $he remembers. $He becomes irritated with $his newfound weakness and @@.mediumorchid;frowns angrily.@@
 				<<set $args[0].devotion -= 1>>
 			<</if>>
 		<<elseif $args[0].muscles > $args[1].muscles+5>> /*(more muscle)*/
 			<<if $args[0].devotion >= -20 || $args[0].fetish != "mindbroken">>
-				finger; the arm @@.lime;<<if canSee($args[0])>>visibly more toned<<else>>noticeably stronger<</if>>@@ than her old one. With a clench of her fist, the muscles of the limb bulge slightly. She is @@.hotpink;happy@@ that you would take into consideration such a small detail, and knows that life will be just that much easier now.
+				finger; the arm @@.lime;<<if canSee($args[0])>>visibly more toned<<else>>noticeably stronger<</if>>@@ than $his old one. With a clench of $his fist, the muscles of the limb bulge slightly. $He is @@.hotpink;happy@@ that you would take into consideration such a small detail, and knows that life will be just that much easier now.
 				<<set $args[0].devotion += 2>>
 			<<else>>
-				finger. Flexing, she realizes she is @@.lime;noticeably stronger@@ than she was before. @@.mediumaquamarine;She takes a moment to relish her newfound strength.@@
+				finger. Flexing, $he realizes $he is @@.lime;noticeably stronger@@ than $he was before. @@.mediumaquamarine;$He takes a moment to relish $his newfound strength.@@
 				<<set $args[0].trust += 10>>
 			<</if>>
 		<<else>> /* (same muscle (within five units)) */
 			<<if $args[0].physicalAge < $args[1].physicalAge-5>>
 				<<if !canSee($args[0])>>
-					finger. She traces her 
+					finger. $He traces $his 
 					<<if $args[1].physicalAge >= 40>>
-						arm and feels how @@.green;less wrinkled@@ her skin is and how firmer her muscles are.
+						arm and feels how @@.green;less wrinkled@@ $his skin is and how firmer $his muscles are.
 					<<else>>
-						arm, feeling just @@.green;how much younger@@ she is.
+						arm, feeling just @@.green;how much younger@@ $he is.
 					<</if>>
 				<<else>>
-					finger and noticing @@.green;how much younger@@ she is.
+					finger and noticing @@.green;how much younger@@ $he is.
 					<<if $args[1].physicalAge >= 40>>
-						She is pleased to see her hand is now @@.green;less wrinkled@@ and the muscles that coat her arm are now firmer than they were before.
+						$He is pleased to see $his hand is now @@.green;less wrinkled@@ and the muscles that coat $his arm are now firmer than they were before.
 					<</if>>
 				<</if>>
 			<<elseif $args[0].physicalAge > $args[1].physicalAge+5>>
 				<<if !canSee($args[0])>>
-					finger. She traces her 
+					finger. $He traces $his 
 					<<if $args[1].physicalAge < 40>>
-						arm and feels the @@.red;wrinkles in her skin.@@ With a despondent note, she lowers her hands back to her sides.
+						arm and feels the @@.red;wrinkles in $his skin.@@ With a despondent note, $he lowers $his hands back to $his sides.
 					<<else>>
-						arm, feeling just @@.red;how much older@@ she is.
+						arm, feeling just @@.red;how much older@@ $he is.
 					<</if>>
 				<<else>>
-					finger and noticing @@.red;how much older@@ she is.
+					finger and noticing @@.red;how much older@@ $he is.
 					<<if $args[1].physicalAge < 40>>
-						With a despondent note, she lowers her hand back to her side, having seen the wrinkles that now coat her new arm.
+						With a despondent note, $he lowers $his hand back to $his side, having seen the wrinkles that now coat $his new arm.
 					<</if>>
 				<</if>>
 			<<else>>
@@ -169,150 +169,150 @@ Now you only have to wait for her to wake up.
 			<</if>>
 		<</if>>
 
-		Her hand roams over her face searching for changes.
+		$His hand roams over $his face searching for changes.
 
 		<<if ($args[0].earPiercing != 0 && $args[1].earPiercing == 0) || ($args[0].eyebrowPiercing != 0 && $args[1].eyebrowPiercing == 0) || ($args[0].nosePiercing != 0 && $args[1].nosePiercing == 0)>>
-			She finds several new piercings adorning her face.
+			$He finds several new piercings adorning $his face.
 		<</if>>
 
 		<<if $args[0].sexualFlaw == "oral fixation" && $args[0].lips > $args[1].lips+10>> /* (bigger lip+oral fixation) */
-			She slowly runs her fingertips over the @@.lime;plush pillows.@@ A blush blossoms over her face and the beeping of her heart monitor speeds up slightly. You know that she’ll put them to good use.
+			$He slowly runs $his fingertips over the @@.lime;plush pillows.@@ A blush blossoms over $his face and the beeping of $his heart monitor speeds up slightly. You know that $he'll put them to good use.
 			<<if $args[0].devotion <= 20>>
-				She pauses, and begins to @@.hotpink;hesitantly smile@@ as she feels the softness of her lovely new lips.
+				$He pauses, and begins to @@.hotpink;hesitantly smile@@ as $he feels the softness of $his lovely new lips.
 				<<set $args[0].devotion += 2>>
 			<</if>>
 		<<elseif $args[0].lips > $args[1].lips+10>>
-			Her fingers brush her lips and she pauses for a moment,<<if $args[0].fetish == "mindbroken">> as if<</if>> noticing that @@.lime;they are larger now@@ than they once were.
+			$His fingers brush $his lips and $he pauses for a moment,<<if $args[0].fetish == "mindbroken">> as if<</if>> noticing that @@.lime;they are larger now@@ than they once were.
 		<<elseif $args[0].sexualFlaw == "oral fixation" && $args[0].lips < $args[1].lips-10>> /* (smaller lip+oral fixation) */
 			<<if $args[0].devotion > 20>>
-				Her fingers pause and almost flinch away once they reach her lips. A second later, they return to confirm her fear. Her pride and joy are @@.orange;gone.@@ She lets out a sniff and @@.mediumorchid;tears begin to roll down her cheeks.@@
+				$His fingers pause and almost flinch away once they reach $his lips. A second later, they return to confirm $his fear. $His pride and joy are @@.orange;gone.@@ $He lets out a sniff and @@.mediumorchid;tears begin to roll down $his cheeks.@@
 				<<set $args[0].devotion -= 10>>
 			<<else>>
-				Her hand flinches, and she pulls it away as <<if $args[0].voice == 0>>attempted <</if>>sobs well up from her. For someone who values her lips like her, for them @@.orange;to be gone@@ is a truly @@.mediumorchid;terrible fate.@@
+				$His hand flinches, and $he pulls it away as <<if $args[0].voice == 0>>attempted <</if>>sobs well up from $him. For someone who values $his lips like $him, for them @@.orange;to be gone@@ is a truly @@.mediumorchid;terrible fate.@@
 				<<set $args[0].devotion -= 20>>
 			<</if>>
 		<<elseif $args[0].lips < $args[1].lips-10>>
-			Her fingers brush her lips and she pauses for a moment,<<if $args[0].fetish == "mindbroken">> as if<</if>> noticing that @@.orange;they are smaller@@ now than they once were.
+			$His fingers brush $his lips and $he pauses for a moment,<<if $args[0].fetish == "mindbroken">> as if<</if>> noticing that @@.orange;they are smaller@@ now than they once were.
 		<<else>>
-			Her fingers brush her lips and she pauses for a moment,<<if $args[0].fetish == "mindbroken">> having found nothing different about them<<else>> finding them familiar enough<</if>>.
+			$His fingers brush $his lips and $he pauses for a moment,<<if $args[0].fetish == "mindbroken">> having found nothing different about them<<else>> finding them familiar enough<</if>>.
 		<</if>>
 		<<if $args[0].lipsPiercing != 0 && $args[1].lipsPiercing == 0>>
-			She flexes her lips and notices the telltale clicking of a piercing against her teeth.
+			$He flexes $his lips and notices the telltale clicking of a piercing against $his teeth.
 		<</if>>
 		<<if $args[0].teeth == "removable" && $args[1].teeth != "removable">> /* no teeth */
-			A look of confusion crosses her face, her brow furrowing slightly. You see her work her jaw for moment before she turns her head and spits out a set of dentures.
+			A look of confusion crosses $his face, $his brow furrowing slightly. You see $him work $his jaw for moment before $he turns $his head and spits out a set of dentures.
 			<<if $args[0].devotion <= -20 && $args[0].fetish != "mindbroken">>
-				She @@.mediumorchid;glowers@@ at them, knowing full well they'll be back in her mouth shortly.
+				$He @@.mediumorchid;glowers@@ at them, knowing full well they'll be back in $his mouth shortly.
 				<<set $args[0].devotion -= 2>>
 			<</if>>
 		<<elseif $args[0].teeth != "removable" && $args[0].tonguePiercing > 0 && $args[1].tonguePiercing == 0>> /* (if tongue pierced+has teeth) */
-			You can vaguely hear her rattling her tongue piercing against her teeth.
+			You can vaguely hear $him rattling $his tongue piercing against $his teeth.
 		<</if>>
 		<<if $args[0].physicalAge < 40 && $args[1].physicalAge > 50 && $args[0].fetish != "mindbroken">>
 			<<if $args[0].devotion > 20>>
-				She can feel the @@.green;lack of wrinkles@@ on her face and @@.hotpink;smiles broadly.@@
+				$He can feel the @@.green;lack of wrinkles@@ on $his face and @@.hotpink;smiles broadly.@@
 				<<set $args[0].devotion += 2>>
 			<<else>>
-				She can feel the @@.green;lack of wrinkles@@ on her face and cringes at what this means for her future.
+				$He can feel the @@.green;lack of wrinkles@@ on $his face and cringes at what this means for $his future.
 			<</if>>
 		<</if>>
 
 		<br><br>
-		Once she finishes with her face, she sits up to try and take stock of her new
+		Once $he finishes with $his face, $he sits up to try and take stock of $his new
 
 		<<if ($args[0].weight >= $args[1].weight+30) || ($args[0].muscles <= $args[1].muscles-30 && $args[0].muscles < 50) || ($args[0].belly >= $args[1].belly+10000) || ($args[0].boobs >= $args[1].boobs+1000)>> /*(If fat/more big breasted/heavily pregnant/physically weaker and/or same or more weight)*/
-			body, letting out a grunt of effort as she lifts her heavier form.
+			body, letting out a grunt of effort as $he lifts $his heavier form.
 		<<elseif ($args[0].weight <= $args[1].weight-30) || ($args[0].muscles >= $args[1].muscles+30 && $args[1].muscles < 50) || ($args[0].belly <= $args[1].belly-10000) || ($args[0].boobs <= $args[1].boobs-500)>> /*(if fat/less big breasted/physically stronger and/or same or less weight/no longer heavily pregnant)*/
 			body, the effort much easier than before.
 		<<else>>
 			body.
 		<</if>>
 
-		As she settles herself, she <<if canSee($args[0])>>takes a look down, <</if>>brings her hands to her chest
+		As $he settles $himself, $he <<if canSee($args[0])>>takes a look down, <</if>>brings $his hands to $his chest
 
 		/*(breast changes)*/
 		<<if $args[0].boobsImplant > 0 && $args[1].boobsImplant > 0>> /*(breast implants)*/
 			and finds
 			<<if $args[0].boobsImplant >= $args[1].boobsImplant+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive implants+breast fetish)*/
-				she @@.lime;still has breast implants; implants easily bigger than any old world woman's.@@
+				$he @@.lime;still has breast implants; implants easily bigger than any old world woman's.@@
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her silicone titans greatly excites her to the point that she can't hold back. She gropes her new chest boulders until an intense orgasm @@.hotpink;courses through her body.@@
+					The sheer size of $his silicone titans greatly excites $him to the point that $he can't hold back. $He gropes $his new chest boulders until an intense orgasm @@.hotpink;courses through $his body.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help but become aroused at the weight of her massive fake mounds filling her arms. She finally stops fondling when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly caressing her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help but become aroused at the weight of $his massive fake mounds filling $his arms. $He finally stops fondling when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly caressing $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive+breast fetish)*/
-				she @@.lime;still has breast implants resting on her chest. Even if they aren't clearly implants, she can barely move under the weight of her new breasts.@@
+				$he @@.lime;still has breast implants resting on $his chest. Even if they aren't clearly implants, $he can barely move under the weight of $his new breasts.@@
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her titanic tits greatly excites her to the point that she can't hold back. She gropes her new chest pillows until an intense orgasm @@.hotpink;rewards her for enjoying your gift.@@
+					The sheer size of $his titanic tits greatly excites $him to the point that $he can't hold back. $He gropes $his new chest pillows until an intense orgasm @@.hotpink;rewards $him for enjoying your gift.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused at the weight of her massive fake mounds. She finally stops fondling when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly caressing her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused at the weight of $his massive fake mounds. $He finally stops fondling when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly caressing $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobsImplant >= $args[1].boobsImplant+20000>> /*(Extreme bigger implants)*/
-				@@.lime;a pair of absolutely enormous fake tits ballooning out from her.@@
+				@@.lime;a pair of absolutely enormous fake tits ballooning out from $him.@@
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now, though what lies within eludes her mind.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now, though what lies within eludes $his mind.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000>> /*(Extreme bigger breasts)*/
-				@@.lime;a pair of massive tits hanging from her chest.@@<<if $args[0].fetish != "mindbroken">> As she feels them, she recognizes the familiar firmness of the implants at their cores.<</if>>
+				@@.lime;a pair of massive tits hanging from $his chest.@@<<if $args[0].fetish != "mindbroken">> As $he feels them, $he recognizes the familiar firmness of the implants at their cores.<</if>>
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Bigger+breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.lime;her bust has grown.@@ She gropes her mammaries eagerly, desperate to familiarize herself with them. She bites her lower lip as she teases her nipples. From the look on her face, you know she’ll want to put them to the test.
+					@@.lime;$his bust has grown.@@ $He gropes $his mammaries eagerly, desperate to familiarize $himself with them. $He bites $his lower lip as $he teases $his nipples. From the look on $his face, you know $he'll want to put them to the test.
 				<<else>>
-					@@.lime;her breasts have expanded in size.@@ She wrestles with the fact that you have clearly not done this for her benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
+					@@.lime;$his breasts have expanded in size.@@ $He wrestles with the fact that you have clearly not done this for $his benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100>> /*(Bigger breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them closer, she seems to understand that @@.lime;they are bigger now.@@
+					breasts. As $he examines them closer, $he seems to understand that @@.lime;they are bigger now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.lime;her bust has grown.@@ She is caught off guard at the size of her new chest. She bounces them in her palms, marveling at their mass.
+					@@.lime;$his bust has grown.@@ $He is caught off guard at the size of $his new chest. $He bounces them in $his palms, marveling at their mass.
 				<<else>>
-					@@.lime;her chest is heavier than ever.@@ However, she is well aware however that these breasts are not for her benefit or pleasure. She views this as a @@.mediumorchid;cruel manipulation of her body@@ on top of what has already been done to her.
+					@@.lime;$his chest is heavier than ever.@@ However, $he is well aware however that these breasts are not for $his benefit or pleasure. $He views this as a @@.mediumorchid;cruel manipulation of $his body@@ on top of what has already been done to $him.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Smaller breasts + breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.orange;her bust has shrunk.@@ She is saddened by the loss of the beautiful weight she once bore and struggles to keep herself under control for your sake, and succeeds. @@.mediumorchid;But only barely.@@
+					@@.orange;$his bust has shrunk.@@ $He is saddened by the loss of the beautiful weight $he once bore and struggles to keep $himself under control for your sake, and succeeds. @@.mediumorchid;But only barely.@@
 				<<else>>
-					@@.orange;that her chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into her eyes@@ as her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and lets the tears finish running from her eyes before continuing her bodily inspection.
+					@@.orange;that $his chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and lets the tears finish running from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300>> /*(Smaller breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them closer, she seems to understand that @@.orange;they are smaller now.@@
+					breasts. As $he examines them closer, $he seems to understand that @@.orange;they are smaller now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.orange;that her chest is smaller.@@ She shrugs this off, as her devotion to you overrides any anguish this might cause.
+					@@.orange;that $his chest is smaller.@@ $He shrugs this off, as $his devotion to you overrides any anguish this might cause.
 				<<else>>
-					@@.orange;that her chest is not as large as it once was.@@ She looks at you with @@.mediumorchid;anger@@<<if $arcologies[0].FSSlimnessEnthusiast == "unset">> as this is not only a cruel manipulation of her body, but she is now less of a woman in the eyes of a vast majority of society<</if>>.
+					@@.orange;that $his chest is not as large as it once was.@@ $He looks at you with @@.mediumorchid;anger@@<<if $arcologies[0].FSSlimnessEnthusiast == "unset">> as this is not only a cruel manipulation of $his body, but $he is now less of a woman in the eyes of a vast majority of society<</if>>.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
-			<<else>> /*(No change (less than a 100 cc’s of change)*/
+			<<else>> /*(No change (less than a 100 cc's of change)*/
 				<<if $args[0].devotion > 20 && $args[0].fetish != "mindbroken">>
-					a familiar chest waiting for her.
+					a familiar chest waiting for $him.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						She is pleased to see her breasts are now more pert and smooth than they were before.
+						$He is pleased to see $his breasts are now more pert and smooth than they were before.
 					<</if>>
 				<<else>>
-					that her breasts are roughly the same.
+					that $his breasts are roughly the same.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5) && $args[0].fetish != "mindbroken">> /*(younger)*/
-						Except, of course, that they are younger and more pert, something that she @@.hotpink;can't help but appreciate.@@
+						Except, of course, that they are younger and more pert, something that $he @@.hotpink;can't help but appreciate.@@
 						<<set $args[0].devotion += 2>>
 					<</if>>
 				<</if>>
@@ -320,87 +320,87 @@ Now you only have to wait for her to wake up.
 		<<elseif $args[0].boobsImplant > 0 && $args[1].boobsImplant == 0>>
 			and finds
 			<<if $args[0].boobsImplant >= $args[1].boobsImplant+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive implants+breast fetish)*/
-				@@.lime;a pair of massive implants bulging out from her.@@
+				@@.lime;a pair of massive implants bulging out from $him.@@
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her silicone titans greatly excites her to the point that she can't hold back. She roughly gropes her new chest boulders until an intense orgasm @@.hotpink;courses through her body.@@
+					The sheer size of $his silicone titans greatly excites $him to the point that $he can't hold back. $He roughly gropes $his new chest boulders until an intense orgasm @@.hotpink;courses through $his body.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help but become aroused at the weight of her massive fake mounds filling her arms. She finally stops groping when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly caressing her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help but become aroused at the weight of $his massive fake mounds filling $his arms. $He finally stops groping when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly caressing $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive+breast fetish)*/
-				@@.lime;she has breast implants hanging from her chest, somewhere. Even if they aren't clearly implants, she can barely move with the weight of her new breasts.@@
+				@@.lime;$he has breast implants hanging from $his chest, somewhere. Even if they aren't clearly implants, $he can barely move with the weight of $his new breasts.@@
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her titanic tits greatly excites her to the point that she can't hold back. She shudders against her new chest pillows as she fondles herself until an intense orgasm @@.hotpink;rewards her for enjoying your gift.@@
+					The sheer size of $his titanic tits greatly excites $him to the point that $he can't hold back. $He shudders against $his new chest pillows as $he fondles $himself until an intense orgasm @@.hotpink;rewards $him for enjoying your gift.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused at the weight of her massive fake mounds filling her arms. She finally stops groping when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly caressing her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused at the weight of $his massive fake mounds filling $his arms. $He finally stops groping when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly caressing $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobsImplant >= $args[1].boobsImplant+20000>> /*(Extreme bigger implants)*/
-				@@.lime;a pair of absolutely enormous fake tits protruding far from her body.@@
+				@@.lime;a pair of absolutely enormous fake tits protruding far from $his body.@@
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now, yet far more firm than they were before.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now, yet far more firm than they were before.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000>> /*(Extreme bigger breasts)*/
-				@@.lime;a pair of massive tits hanging from her chest.@@<<if $args[0].fetish != "mindbroken">> As she moves, she recognizes a familiar firmness at their cores.<</if>>
+				@@.lime;a pair of massive tits hanging from $his chest.@@<<if $args[0].fetish != "mindbroken">> As $he moves, $he recognizes a familiar firmness at their cores.<</if>>
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now, yet far more soft than they were before.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now, yet far more soft than they were before.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Bigger+breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.lime;her bust has grown.@@ She gropes her mammaries eagerly, desperate to familiarize herself with them. She bites her lower lip as she teases her nipples. From the look on her face, you know she’ll want to put them to the test.
+					@@.lime;$his bust has grown.@@ $He gropes $his mammaries eagerly, desperate to familiarize $himself with them. $He bites $his lower lip as $he teases $his nipples. From the look on $his face, you know $he'll want to put them to the test.
 				<<else>>
-					@@.lime;her breasts have expanded in size.@@ She wrestles with the fact that you have clearly not done this for her benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
+					@@.lime;$his breasts have expanded in size.@@ $He wrestles with the fact that you have clearly not done this for $his benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100>> /*(Bigger breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them closer, she seems to understand that @@.lime;they are bigger now.@@
+					breasts. As $he examines them closer, $he seems to understand that @@.lime;they are bigger now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.lime;her bust has grown.@@ She is caught off guard at the size of her new chest. She bounces them in her palms, marveling at their firmness.
+					@@.lime;$his bust has grown.@@ $He is caught off guard at the size of $his new chest. $He bounces them in $his palms, marveling at their firmness.
 				<<else>>
-					@@.lime;her chest is heavy with implants.@@ However, she is well aware however that these breasts are not for her benefit or pleasure. She views this as a @@.mediumorchid;cruel manipulation of her body@@ on top of what has already been done to her.
+					@@.lime;$his chest is heavy with implants.@@ However, $he is well aware however that these breasts are not for $his benefit or pleasure. $He views this as a @@.mediumorchid;cruel manipulation of $his body@@ on top of what has already been done to $him.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Smaller breasts + breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.orange;her bust has shrunk.@@ She is saddened by the loss of the beautiful weight she once bore and struggles to keep herself under control for your sake, @@.mediumorchid;barely.@@
+					@@.orange;$his bust has shrunk.@@ $He is saddened by the loss of the beautiful weight $he once bore and struggles to keep $himself under control for your sake, @@.mediumorchid;barely.@@
 				<<else>>
-					@@.orange;her chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into her eyes@@ as her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and let the tears run from her eyes before continuing her bodily inspection.
+					@@.orange;$his chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and let the tears run from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300>> /*(Smaller breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them closer, she seems to understand that @@.orange;they are smaller now.@@
+					breasts. As $he examines them closer, $he seems to understand that @@.orange;they are smaller now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.orange;her chest is smaller.@@ She shrugs this off, as her devotion to you overrides any anguish this might cause.
+					@@.orange;$his chest is smaller.@@ $He shrugs this off, as $his devotion to you overrides any anguish this might cause.
 				<<else>>
-					@@.orange;her chest is not as large as it once was.@@ She <<if canSee($args[0])>>looks at<<else>>faces<</if>> you with @@.mediumorchid;anger@@<<if $arcologies[0].FSSlimnessEnthusiast == "unset">> as this is not only a cruel manipulation of her body, but she is now less of a woman in the eyes of a vast majority of society<</if>>.
+					@@.orange;$his chest is not as large as it once was.@@ $He <<if canSee($args[0])>>looks at<<else>>faces<</if>> you with @@.mediumorchid;anger@@<<if $arcologies[0].FSSlimnessEnthusiast == "unset">> as this is not only a cruel manipulation of $his body, but $he is now less of a woman in the eyes of a vast majority of society<</if>>.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
-			<<else>> /*(No change (less than a 100 cc’s of change)*/
+			<<else>> /*(No change (less than a 100 cc's of change)*/
 				<<if $args[0].fetish == "mindbroken">>
-					the same chest she had before, except maybe firmer than her addled brain remembers.
+					the same chest $he had before, except maybe firmer than $his addled brain remembers.
 				<<elseif $args[0].devotion > 20>>
-					a familiar chest waiting for her. She quickly realizes her mistake once she squeezes them.
+					a familiar chest waiting for $him. $He quickly realizes $his mistake once $he squeezes them.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						She is pleased to see her breasts are now more pert and smooth than they were before.
+						$He is pleased to see $his breasts are now more pert and smooth than they were before.
 					<</if>>
 				<<else>>
-					that her breasts are roughly the same. She quickly realizes her mistake once she squeezes them.
+					that $his breasts are roughly the same. $He quickly realizes $his mistake once $he squeezes them.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						Except, of course, that they are younger and more pert, something that she @@.hotpink;can't help but appreciate.@@
+						Except, of course, that they are younger and more pert, something that $he @@.hotpink;can't help but appreciate.@@
 						<<set $args[0].devotion += 2>>
 					<</if>>
 				<</if>>
@@ -408,81 +408,81 @@ Now you only have to wait for her to wake up.
 		<<elseif $args[0].boobsImplant == 0 && $args[1].boobsImplant > 0>>
 			<<if $args[0].boobs <= 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>>/*flat+fetish*/
 				<<if $args[0].devotion > 20>>
-					and finds @@.orange;not only her implants gone, but her breasts entirely.@@ She is saddened by her flat chest and struggles to keep herself under control for your sake, @@.mediumorchid;barely.@@
+					and finds @@.orange;not only $his implants gone, but $his breasts entirely.@@ $He is saddened by $his flat chest and struggles to keep $himself under control for your sake, @@.mediumorchid;barely.@@
 				<<else>>
-					and finds that @@.orange;her implants are gone, along with the rest of her breasts.@@ @@.mediumorchid;Tears leap into her eyes@@ as her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and wipe the tears that are running from her eyes before continuing her bodily inspection.
+					and finds that @@.orange;$his implants are gone, along with the rest of $his breasts.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and wipe the tears that are running from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= 300>> /*flat*/
 				<<if $args[0].fetish == "mindbroken">>
-					and finds that @@.orange;her implants and breasts are completely gone.@@ This draws no reaction from her.
+					and finds that @@.orange;$his implants and breasts are completely gone.@@ This draws no reaction from $him.
 				<<elseif $args[0].devotion > 20>>
-					and finds nothing. @@.orange;Not only have her implants been removed, but she's been left completely flat.@@ It is what it is.
+					and finds nothing. @@.orange;Not only have $his implants been removed, but $he's been left completely flat.@@ It is what it is.
 				<<else>>
-					and finds nothing. @@.orange;Not only have her implants been removed, but she's been left completely flat.@@ <<if $arcologies[0].FSSlimnessEnthusiast == "unset">>She knows much of society will view her as a lesser person and a part of her feels the same.<</if>> This feels like a cruel manipulation of her body and she @@.mediumorchid;hates you@@ a little more for it.
+					and finds nothing. @@.orange;Not only have $his implants been removed, but $he's been left completely flat.@@ <<if $arcologies[0].FSSlimnessEnthusiast == "unset">>$He knows much of society will view $him as a lesser person and a part of $him feels the same.<</if>> This feels like a cruel manipulation of $his body and $he @@.mediumorchid;hates you@@ a little more for it.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive+breast fetish)*/
-				@@.lime;and finds nothing but breast.@@ As she thoroughly gropes them, she can just make out that she no longer has implants.
+				@@.lime;and finds nothing but breast.@@ As $he thoroughly gropes them, $he can just make out that $he no longer has implants.
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her titanic tits greatly excites her to the point that she can't hold back. She shudders against her new chest pillows as an intense orgasm @@.hotpink;rewards her for enjoying your gift.@@
+					The sheer size of $his titanic tits greatly excites $him to the point that $he can't hold back. $He shudders against $his new chest pillows as an intense orgasm @@.hotpink;rewards $him for enjoying your gift.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused at the weight of her massive mounds filling her arms. She finally stops squirming when she <<if canSee($args[0])>>sees your wolfish grin<<else>>feels your gaze<</if>>. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly caressing her boobs proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused at the weight of $his massive mounds filling $his arms. $He finally stops squirming when $he <<if canSee($args[0])>>sees your wolfish grin<<else>>feels your gaze<</if>>. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly caressing $his boobs proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000>> /*(Extreme bigger breasts)*/
-				@@.lime;and finds a pair of massive tits hanging from her chest.@@<<if $args[0].fetish != "mindbroken">> As she fondles them, she can just make out that she no longer has implants.<</if>>
+				@@.lime;and finds a pair of massive tits hanging from $his chest.@@<<if $args[0].fetish != "mindbroken">> As $he fondles them, $he can just make out that $he no longer has implants.<</if>>
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Bigger+breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.lime;and finds her tits are bigger than ever, yet implant free.@@ She gropes her mammaries eagerly, desperate to familiarize herself with them. She bites her lower lip as she teases her nipples. From the look on her face, you know she’ll want to put them to the test.
+					@@.lime;and finds $his tits are bigger than ever, yet implant free.@@ $He gropes $his mammaries eagerly, desperate to familiarize $himself with them. $He bites $his lower lip as $he teases $his nipples. From the look on $his face, you know $he'll want to put them to the test.
 				<<else>>
-					@@.lime;and finds that her breasts have expanded in size, yet lack implants.@@ She wrestles with the fact that you have clearly not done this for her benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
+					@@.lime;and finds that $his breasts have expanded in size, yet lack implants.@@ $He wrestles with the fact that you have clearly not done this for $his benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100>> /*(Bigger breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them, she seems to understand that @@.lime;they are bigger now.@@
+					breasts. As $he examines them, $he seems to understand that @@.lime;they are bigger now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.lime;and finds her bust has grown.@@ She is caught off guard at the size of her new chest. She bounces them in her palms, marveling at the motion of silicone free flesh.
+					@@.lime;and finds $his bust has grown.@@ $He is caught off guard at the size of $his new chest. $He bounces them in $his palms, marveling at the motion of silicone free flesh.
 				<<else>>
-					@@.lime;and finds her chest is heavier than ever, and not because of silicone.@@ However, she is well aware however that these breasts are not for her benefit or pleasure. She views this as a @@.mediumorchid;cruel manipulation of her body@@ on top of what has already been done to her.
+					@@.lime;and finds $his chest is heavier than ever, and not because of silicone.@@ However, $he is well aware however that these breasts are not for $his benefit or pleasure. $He views this as a @@.mediumorchid;cruel manipulation of $his body@@ on top of what has already been done to $him.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Smaller breasts + breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.orange;and finds her bust has shrunk.@@ She is saddened by the loss of her implants and struggles to keep herself under control for your sake, @@.mediumorchid;barely.@@
+					@@.orange;and finds $his bust has shrunk.@@ $He is saddened by the loss of $his implants and struggles to keep $himself under control for your sake, @@.mediumorchid;barely.@@
 				<<else>>
-					@@.orange;and finds that her chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into her eyes@@ as her natural breasts begin to quiver<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and wipes the tears from her eyes before continuing her bodily inspection.
+					@@.orange;and finds that $his chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his natural breasts begin to quiver<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and wipes the tears from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300>> /*(Smaller breasts)*/
 				<<if $args[0].devotion > 20>>
-					@@.orange;and finds that her implants have been removed.@@ She shrugs this off, as her devotion to you overrides any anguish this might cause.
+					@@.orange;and finds that $his implants have been removed.@@ $He shrugs this off, as $his devotion to you overrides any anguish this might cause.
 				<<else>>
-					@@.orange;and finds that her chest is not as large as it once was.@@ She <<if canSee($args[0])>>looks<<else>>gazes<</if>> at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of her body, but she is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
+					@@.orange;and finds that $his chest is not as large as it once was.@@ $He <<if canSee($args[0])>>looks<<else>>gazes<</if>> at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of $his body, but $he is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
 					<<set $args[0].devotion -= 2>>
 				<</if>>
-			<<else>> /*(No change (less than a 100 cc’s of change)*/
+			<<else>> /*(No change (less than a 100 cc's of change)*/
 				<<if $args[0].fetish == "mindbroken">>
-					and finds nothing off about her chest.
+					and finds nothing off about $his chest.
 				<<elseif $args[0].devotion > 20>>
-					and finds a familiar chest waiting for her, albeit @@.coral;implant free.@@
+					and finds a familiar chest waiting for $him, albeit @@.coral;implant free.@@
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						She is pleased to see her breasts are now more pert and smooth than they were before.
+						$He is pleased to see $his breasts are now more pert and smooth than they were before.
 					<</if>>
 				<<else>>
-					and finds that her breasts are roughly the same, save for their @@.coral;missing implants.@@
+					and finds that $his breasts are roughly the same, save for their @@.coral;missing implants.@@
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						Except, of course, that they are younger and more pert, something that she @@.hotpink;can't help but appreciate.@@
+						Except, of course, that they are younger and more pert, something that $he @@.hotpink;can't help but appreciate.@@
 						<<set $args[0].devotion += 2>>
 					<</if>>
 				<</if>>
@@ -490,173 +490,173 @@ Now you only have to wait for her to wake up.
 		<<else>>
 			<<if $args[0].boobs <= 300 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>>/*flat+fetish*/
 				<<if $args[0].devotion > 20>>
-					and finds @@.orange;no tits at all.@@ She is saddened by her flat chest and struggles to keep herself under control for your sake, and succeeds. @@.mediumorchid;Barely.@@
+					and finds @@.orange;no tits at all.@@ $He is saddened by $his flat chest and struggles to keep $himself under control for your sake, and succeeds. @@.mediumorchid;Barely.@@
 				<<else>>
-					and finds @@.orange;no tits at all.@@ @@.mediumorchid;Tears leap into her eyes@@ as her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and let the tears run from her eyes before continuing her bodily inspection.
+					and finds @@.orange;no tits at all.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and let the tears run from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= 300 && $args[1].boobs > 300>> /*flat*/
 				<<if $args[0].fetish == "mindbroken">>
-					and @@.orange;finds nothing.@@ She doesn't seem to care, though.
+					and @@.orange;finds nothing.@@ $He doesn't seem to care, though.
 				<<elseif $args[0].devotion > 20>>
-					and finds nothing; @@.orange;her breasts are completely gone.@@ At least it's a literal weight off her chest.
+					and finds nothing; @@.orange;$his breasts are completely gone.@@ At least it's a literal weight off $his chest.
 				<<else>>
-					and finds nothing; @@.orange;her breasts are completely gone.@@ <<if $arcologies[0].FSSlimnessEnthusiast == "unset">>She knows much of society will view her as a lesser person and a part of her feels the same.<</if>> This feels like a cruel manipulation of her body and she @@.mediumorchid;hates you@@ a little more for it.
+					and finds nothing; @@.orange;$his breasts are completely gone.@@ <<if $arcologies[0].FSSlimnessEnthusiast == "unset">>$He knows much of society will view $him as a lesser person and a part of $him feels the same.<</if>> This feels like a cruel manipulation of $his body and $he @@.mediumorchid;hates you@@ a little more for it.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive+breast fetish)*/
-				and finds @@.lime;nothing but breast.@@ As she jiggles them back and forth between her arms, she can make out that they are all natural.
+				and finds @@.lime;nothing but breast.@@ As $he jiggles them back and forth between $his arms, $he can make out that they are all natural.
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her titanic tits greatly excites her to the point that she can't hold back. She shudders against her new chest pillows as an intense orgasm @@.hotpink;rewards her for enjoying your gift.@@
+					The sheer size of $his titanic tits greatly excites $him to the point that $he can't hold back. $He shudders against $his new chest pillows as an intense orgasm @@.hotpink;rewards $him for enjoying your gift.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused at the weight of her massive mammaries between her arms. She finally stops fondling when she <<if canSee($args[0])>>sees your wolfish grin<<else>>feels your gaze<</if>>. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly carressing her chest pillows proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused at the weight of $his massive mammaries between $his arms. $He finally stops fondling when $he <<if canSee($args[0])>>sees your wolfish grin<<else>>feels your gaze<</if>>. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly carressing $his chest pillows proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000>> /*(Extreme bigger breasts)*/
-				and finds a @@.lime;pair of massive tits hanging from her chest.@@<<if $args[0].fetish != "mindbroken">> As she feels them, she can clearly tell they are completely natural.<</if>>
+				and finds a @@.lime;pair of massive tits hanging from $his chest.@@<<if $args[0].fetish != "mindbroken">> As $he feels them, $he can clearly tell they are completely natural.<</if>>
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Bigger+breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					and finds @@.lime;her tits are bigger than ever.@@ She gropes her mammaries eagerly, desperate to familiarize herself with them. She bites her lower lip as she teases her nipples. From the look on her face, you know she’ll want to put them to the test.
+					and finds @@.lime;$his tits are bigger than ever.@@ $He gropes $his mammaries eagerly, desperate to familiarize $himself with them. $He bites $his lower lip as $he teases $his nipples. From the look on $his face, you know $he'll want to put them to the test.
 				<<else>>
-					and finds @@.lime;her breasts have expanded in size.@@ She wrestles with the fact that you have clearly not done this for her benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
+					and finds @@.lime;$his breasts have expanded in size.@@ $He wrestles with the fact that you have clearly not done this for $his benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100>> /*(Bigger breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					and finds breasts. As she examines them, she seems to understand that @@.lime;they are bigger now.@@
+					and finds breasts. As $he examines them, $he seems to understand that @@.lime;they are bigger now.@@
 				<<elseif $args[0].devotion > 20>>
-					and finds @@.lime;her bust has grown.@@ She is caught off guard at the size of her new chest. She bounces them in her palms, marveling at the motion of her soft flesh.
+					and finds @@.lime;$his bust has grown.@@ $He is caught off guard at the size of $his new chest. $He bounces them in $his palms, marveling at the motion of $his soft flesh.
 				<<else>>
-					and finds that @@.lime;her chest is heavier than ever.@@ However, she is well aware however that these breasts are not for her benefit or pleasure. She views this as a @@.mediumorchid;cruel manipulation of her body@@ on top of what has already been done to her.
+					and finds that @@.lime;$his chest is heavier than ever.@@ However, $he is well aware however that these breasts are not for $his benefit or pleasure. $He views this as a @@.mediumorchid;cruel manipulation of $his body@@ on top of what has already been done to $him.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Smaller breasts + breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					and finds that @@.orange;her bust has shrunk.@@ She is saddened by her smaller chest and struggles to keep herself under control for your sake, @@.mediumorchid;barely.@@
+					and finds that @@.orange;$his bust has shrunk.@@ $He is saddened by $his smaller chest and struggles to keep $himself under control for your sake, @@.mediumorchid;barely.@@
 				<<else>>
-					and finds that @@.orange;her chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into her eyes@@ as her her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and wipe the tears from her eyes before continuing her bodily inspection.
+					and finds that @@.orange;$his chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and wipe the tears from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300>> /*(Smaller breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them, she seems to understand @@.orange;that they smaller now.@@
+					breasts. As $he examines them, $he seems to understand @@.orange;that they smaller now.@@
 				<<elseif $args[0].devotion > 20>>
-					that @@.orange;her breasts are smaller.@@ She shrugs this off, as her devotion to you overrides any anguish this might cause.
+					that @@.orange;$his breasts are smaller.@@ $He shrugs this off, as $his devotion to you overrides any anguish this might cause.
 				<<else>>
-					that @@.orange;her chest is not as large as it once was.@@ She looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of her body, but she is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
+					that @@.orange;$his chest is not as large as it once was.@@ $He looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of $his body, but $he is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
 					<<set $args[0].devotion -= 2>>
 				<</if>>
-			<<else>> /*(No change (less than a 100 cc’s of change)*/
+			<<else>> /*(No change (less than a 100 cc's of change)*/
 				<<if $args[0].fetish == "mindbroken">>
 					nothing out of the ordinary.
 				<<elseif $args[0].devotion > 20>>
-					a familiar chest waiting for her.
+					a familiar chest waiting for $him.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						She is pleased to see her breasts are now more pert and smooth than they were before.
+						$He is pleased to see $his breasts are now more pert and smooth than they were before.
 					<</if>>
 				<<else>>
-					that her breasts are roughly the same.
+					that $his breasts are roughly the same.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						Except, of course, that they are younger and more pert, something that she @@.hotpink;can't help but appreciate.@@
+						Except, of course, that they are younger and more pert, something that $he @@.hotpink;can't help but appreciate.@@
 						<<set $args[0].devotion += 2>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<</if>>
 		<<if $args[0].areolaePiercing != 0 && $args[1].areolaePiercing == 0>>
-			She bumps into the piercings in her areolae, brushing her fingers against them and toying with them for a moment.
+			$He bumps into the piercings in $his areolae, brushing $his fingers against them and toying with them for a moment.
 		<</if>>
 	
 		/*(if lactation status has changed)*/
-		<<if $args[0].lactation > 0 && $args[1].lactation == 0>> /*(lactating now, wasn’t before)*/
-			As she fondles her breasts,
+		<<if $args[0].lactation > 0 && $args[1].lactation == 0>> /*(lactating now, wasn't before)*/
+			As $he fondles $his breasts,
 			<<if $args[0].lactation == 1>>
-				@@.coral;solitary drops of milk begin to drop from her nipples.@@
+				@@.coral;solitary drops of milk begin to drop from $his nipples.@@
 			<<else>>
-				@@.coral;steady streams of milk start to flow from her nipples.@@
+				@@.coral;steady streams of milk start to flow from $his nipples.@@
 			<</if>>
 			<<if $args[0].fetish == "mindbroken">>
-				She reels back at the wet feeling.
+				$He reels back at the wet feeling.
 			<<elseif $args[0].devotion > 20>>
-				She is delighted by the fact that her breasts now produce milk. This is a gift she will happily use for your benefit.
+				$He is delighted by the fact that $his breasts now produce milk. This is a gift $he will happily use for your benefit.
 			<<else>>
-				She is irritated that you have altered her body to produce milk.
+				$He is irritated that you have altered $his body to produce milk.
 			<</if>>
 		<<elseif $args[0].fetish == "mindbroken">>
 		<<elseif $args[0].lactation > 1 && $args[1].lactation == 1>>
-			She realizes her breasts are @@.lime;rapidly producing milk.@@ She groans at the unfamiliar pressure.
+			$He realizes $his breasts are @@.lime;rapidly producing milk.@@ $He groans at the unfamiliar pressure.
 		<<elseif $args[0].lactation == 1 && $args[1].lactation == 2>>
-			She realizes that her breasts are @@.orange;producing less milk.@@ She seems a little relieved.
+			$He realizes that $his breasts are @@.orange;producing less milk.@@ $He seems a little relieved.
 		<<elseif $args[0].lactation == 0 && $args[1].lactation > 0>>
-			She realizes that her breasts @@.orange;no longer produce milk.@@ She doesn’t show much reaction to this change.
+			$He realizes that $his breasts @@.orange;no longer produce milk.@@ $He doesn't show much reaction to this change.
 		<<elseif $args[0].lactation > 0 && $args[1].lactation > 0>>
-			The familiar feeling of fullness in her breasts tells her she's producing as much milk as ever.
+			The familiar feeling of fullness in $his breasts tells $him $he's producing as much milk as ever.
 		<</if>>
 
 		<<if $args[0].nipples != $args[1].nipples && $args[0].fetish != "mindbroken">> /*(if nipples have changed shape)*/
-			Once she is satisfied with her tits, she shifts her chest to get a better <<if canSee($args[0])>>view of<<else>>feel of<</if>> her nipples, having noticed that they don’t <<if canSee($args[0])>>look<<else>>seem<</if>> quite the same as before.
+			Once $he is satisfied with $his tits, $he shifts $his chest to get a better <<if canSee($args[0])>>view of<<else>>feel of<</if>> $his nipples, having noticed that they don't <<if canSee($args[0])>>look<<else>>seem<</if>> quite the same as before.
 			<<switch $args[0].nipples>>
 			<<case "fuckable">>
-				She doesn't seem interested in them until she slips a @@.lime;finger deep inside one of the folds.@@ She reddens at the thought of what the intent of this is.
+				$He doesn't seem interested in them until $he slips a @@.lime;finger deep inside one of the folds.@@ $He reddens at the thought of what the intent of this is.
 			<<case "tiny">>
-				She's a little depressed by @@.orange;how tiny they've become.@@
+				$He's a little depressed by @@.orange;how tiny they've become.@@
 			<<case "puffy">>
-				She quivers a little as she traces the edges of her @@.lime;puffy nipples.@@
+				$He quivers a little as $he traces the edges of $his @@.lime;puffy nipples.@@
 			<<case "huge">>
-				She quivers a little as she grabs hold of the @@.lime;two towering protrusions@@ jutting out from her breasts.
+				$He quivers a little as $he grabs hold of the @@.lime;two towering protrusions@@ jutting out from $his breasts.
 			<<case "partially inverted">>
-				She quivers a little as she
+				$He quivers a little as $he
 				<<if $activeSlave.nipplesPiercing != 0>>
 					tugs on the piercings, pulling @@.lime;partially inverted nipples@@ out.
 				<<else>>
-					teases the @@.lime;little exposed nipples@@ sticking out of her breasts.
+					teases the @@.lime;little exposed nipples@@ sticking out of $his breasts.
 				<</if>>
 			<<case "inverted">>
-				She quivers a little as she
+				$He quivers a little as $he
 				<<if $activeSlave.nipplesPiercing != 0>>
-					tugs on the piercings, forcing her @@.lime;inverted nipples@@ completely out.
+					tugs on the piercings, forcing $his @@.lime;inverted nipples@@ completely out.
 				<<else>>
-					accidentally pops one of her @@.lime;inverted nipples@@ out.
+					accidentally pops one of $his @@.lime;inverted nipples@@ out.
 				<</if>>
 			<<default>>
-				They can only be called normal, though she can still call them cute.
+				They can only be called normal, though $he can still call them cute.
 			<</switch>>
 			<<if $args[0].nipplesPiercing != 0 && $args[1].nipplesPiercing == 0 && $args[0].nipples != "inverted" && $args[0].nipples != "partially inverted">>
-				She also finds they are pierced, and takes a moment to pull at one, shivering at the tingles the action sends through her chest.
+				$He also finds they are pierced, and takes a moment to pull at one, shivering at the tingles the action sends through $his chest.
 			<</if>>
 		<</if>>
 
 		/*(if breasts have changed shape)*/
 		<<if $args[0].boobShape != $args[1].boobShape && $args[0].boobs > 300 && $args[0].fetish != "mindbroken">>
-			As she releases her boobs, she discovers they no longer rest the same either;
+			As $he releases $his boobs, $he discovers they no longer rest the same either;
 			<<if $args[0].boobShape == "saggy">> /*(drooping or older)*/
-				@@.red;they now sag,@@ disappointing her.
+				@@.red;they now sag,@@ disappointing $him.
 			<<elseif $args[0].boobShape == "downward-facing">>
-				@@.red;they now face downwards,@@ disappointing her.
+				@@.red;they now face downwards,@@ disappointing $him.
 			<<elseif $args[0].boobShape == "wide-set">>
-				@@.green;they settle heavily to either side of her body.@@
+				@@.green;they settle heavily to either side of $his body.@@
 			<<elseif $args[0].boobShape == "perky">>
 				@@.green;they are much perkier.@@
 				<<if $args[0].devotion > 20>>
-					She jostles them playfully.
+					$He jostles them playfully.
 				<<else>>
-					She is intrigued by this development.
+					$He is intrigued by this development.
 				<</if>>
 			<<elseif $args[0].boobShape == "torpedo-shaped">>
-				@@.green;they stick out far from her body.@@
+				@@.green;they stick out far from $his body.@@
 				<<if $args[0].devotion > 20>>
-					She bounces to make them sway about.
+					$He bounces to make them sway about.
 				<<else>>
-					She is intrigued by this development.
+					$He is intrigued by this development.
 				<</if>>
 			<<else>>
 				@@.green;they can only be called normal.@@
@@ -666,18 +666,18 @@ Now you only have to wait for her to wake up.
 		<<if canSee($args[0]) && $args[0].fetish != "mindbroken">>
 			<br><br>
 			<<if $args[1].voice == 0>>
-				When she finishes, she turns to you and gestures for a mirror.
+				When $he finishes, $he turns to you and gestures for a mirror.
 				<<if $args[0].voice != 0>>
-					You gesture as if you couldn't hear her, to which she @@.green;squeaks in response.@@ It immediately @@.hotpink;dawns on her@@ what this means. She @@.mediumaquamarine;thanks you profusely@@ before asking for a mirror.
+					You gesture as if you couldn't hear $him, to which $he @@.green;squeaks in response.@@ It immediately @@.hotpink;dawns on $him@@ what this means. $He @@.mediumaquamarine;thanks you profusely@@ before asking for a mirror.
 					<<set $args[0].devotion += 5, $args[0].trust += 10>>
 				<</if>>
 			<<else>>
-				When she finishes, she turns to you and opens her mouth to
+				When $he finishes, $he turns to you and opens $his mouth to
 				<<if $args[0].voice == 0>>
-					speak, but finds @@.coral;no words come.@@ She tries again, frowning. She rubs her throat and tears well in her eyes, but no sobs can be heard as her shoulders begin to @@.gold;shake.@@ After a bit, she extends her hand, and gestures @@.mediumorchid;somberly@@ for a mirror.
+					speak, but finds @@.coral;no words come.@@ $He tries again, frowning. $He rubs $his throat and tears well in $his eyes, but no sobs can be heard as $his shoulders begin to @@.gold;shake.@@ After a bit, $he extends $his hand, and gestures @@.mediumorchid;somberly@@ for a mirror.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<<else>>
-					speak. At first she's slightly startled by her new 
+					speak. At first $he's slightly startled by $his new 
 					<<if $args[0].voice < $args[1].voice>>
 						@@.orange;<<if $args[0].voice < $args[1].voicelower-1>>much <</if>>lower voice,@@
 					<<elseif $args[0].voice > $args[1].voice>>
@@ -692,7 +692,7 @@ Now you only have to wait for her to wake up.
 			You depress a button and a long, body length mirror slides up from the floor near the wall.
 			<br><br>
 		<<elseif canSee($args[0])>>
-			When she finishes with her tits, she begins to strain to look at the rest of her body.
+			When $he finishes with $his tits, $he begins to strain to look at the rest of $his body.
 			
 			<br><br>
 			You depress a button and a long, body length mirror slides up from the floor near the wall.
@@ -701,15 +701,15 @@ Now you only have to wait for her to wake up.
 			<br><br>
 		<</if>>
 
-		Your slave gingerly hops to her feet
+		Your slave gingerly hops to $his feet
 		<<if $args[0].heels == 1 || !canWalk($args[0])>>
 			<<if $args[0].heels == 1>>
-				and immediately stumbles, catching herself before her cut heels let her fall to the floor.
+				and immediately stumbles, catching $himself before $his cut heels let $him fall to the floor.
 			<<elseif !canWalk($args[0])>>
-				and immediately collapses under her own weight.
+				and immediately collapses under $his own weight.
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
-				She looks at you
+				$He looks at you
 				<<if $args[0].devotion >= -20>>
 					@@.hotpink;submissively@@
 					<<set $args[0].devotion += 5>>
@@ -717,213 +717,213 @@ Now you only have to wait for her to wake up.
 					@@.mediumorchid;angrily@@
 					<<set $args[0].devotion -= 5>>
 				<</if>>
-				as she
+				as $he
 			<<else>>
-				She
+				$He
 			<</if>>
-			pulls her weight back onto the bed and tries again, this time using the gurney to support herself. She
+			pulls $his weight back onto the bed and tries again, this time using the gurney to support $himself. $He
 		<<else>>
 			and
 		<</if>>
 		/*(height changes)*/
 		<<if $args[0].height >= $args[1].height+10>>
-			wobbles for a moment as she adjusts to her new height.
+			wobbles for a moment as $he adjusts to $his new height.
 			<<if $args[0].fetish == "mindbroken">>
 				The benefits of @@.lime;being taller@@ don't register to the broken girl.
 			<<elseif $args[0].devotion > 20>>
-				She is @@.hotpink;truly pleased@@ that you have taken the effort to make her @@.lime;taller,@@ knowing that a lot of everyday things in life will be easier, and that she will be viewed as having more stature now, both metaphorically and literally.
+				$He is @@.hotpink;truly pleased@@ that you have taken the effort to make $him @@.lime;taller,@@ knowing that a lot of everyday things in life will be easier, and that $he will be viewed as having more stature now, both metaphorically and literally.
 				<<set $args[0].devotion += 2>>
 			<<else>>
-				She frowns for a moment, before shrugging and accepting this small gift, even knowing that it is likely not for her sake that you have done this. Her mouth curls into a @@.mediumaquamarine;small grin@@ for just a moment as she considers how @@.lime;being taller@@ will benefit her.
+				$He frowns for a moment, before shrugging and accepting this small gift, even knowing that it is likely not for $his sake that you have done this. $His mouth curls into a @@.mediumaquamarine;small grin@@ for just a moment as $he considers how @@.lime;being taller@@ will benefit $him.
 				<<set $args[0].trust += 1>>
 			<</if>>
 		<<elseif $args[0].height <= $args[1].height-10>>
 			<<if $args[0].fetish == "mindbroken">>
-				Doesn't quite realize that she is @@.lime;shorter than before.@@
+				Doesn't quite realize that $he is @@.lime;shorter than before.@@
 			<<else>>
-				starts at the falling sensation before realizing she is just @@.lime;shorter than she was before.@@
+				starts at the falling sensation before realizing $he is just @@.lime;shorter than $he was before.@@
 				<<if $args[0].devotion > 20>>
-					As frustrating as it will be, she tries to look at the bright side of this and thinks of all the fun things she will be able to do easier now, like being picked up and set on a counter or pinned against a wall. She drools a little, before shaking her head and continuing on.
+					As frustrating as it will be, $he tries to look at the bright side of this and thinks of all the fun things $he will be able to do easier now, like being picked up and set on a counter or pinned against a wall. $He drools a little, before shaking $his head and continuing on.
 				<<else>>
-					This is aggravating more than anything to her. Everything will just be just that much more difficult now. She @@.mediumorchid;glowers at you.@@
+					This is aggravating more than anything to $him. Everything will just be just that much more difficult now. $He @@.mediumorchid;glowers at you.@@
 					<<set $args[0].devotion -= 2>>
 				<</if>>
 			<</if>>
 		<<else>>
-			quickly gets used to her new body's similar stature.
+			quickly gets used to $his new body's similar stature.
 		<</if>>
 
 		<br><br>
-		She <<if canSee($args[0])>>takes in<<else>>runs her hands across<</if>> her new figure.
+		$He <<if canSee($args[0])>>takes in<<else>>runs $his hands across<</if>> $his new figure.
 		
 		<<if $args[0].fetish != "mindbroken" && canSee($args[0])>>
 			<<if $args[0].race != $args[1].race>> /*(race changes)*/
-				It immediately strikes her that she is @@.coral;no longer <<print $args[1].race>>.@@ Her new $args[0].race body
+				It immediately strikes $him that $he is @@.coral;no longer <<print $args[1].race>>.@@ $His new $args[0].race body
 				<<if $args[0].devotion > 50>>
-					intrigues and delights her. She is happy that you invested in her appearance in such an interesting way.
+					intrigues and delights $him. $He is happy that you invested in $his appearance in such an interesting way.
 				<<elseif $args[0].devotion > 20>>
-					@@.mediumorchid;disturbs her.@@ She is @@.gold;shaken@@ by such a drastic change.
+					@@.mediumorchid;disturbs $him.@@ $He is @@.gold;shaken@@ by such a drastic change.
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<<else>>
-					@@.mediumorchid;disgusts and angers her.@@ One of the only parts of her identity she had left has now been stripped from her.
+					@@.mediumorchid;disgusts and angers $him.@@ One of the only parts of $his identity $he had left has now been stripped from $him.
 					<<set $args[0].devotion -= 20>>
 				<</if>>
 			<<elseif $args[0].devotion <= 50>>
-				It immediately strikes her that she is still <<print $args[0].race>>. She's @@.hotpink;relieved@@ that you didn't take such a deep part of her identity from her.
+				It immediately strikes $him that $he is still <<print $args[0].race>>. $He's @@.hotpink;relieved@@ that you didn't take such a deep part of $his identity from $him.
 				<<set $args[0].devotion += 1>>
 			<</if>>
 		<</if>>
 		
 		<<if $args[0].bald == 1 && $args[1].bald == 0>> /*(+baldness)*/
 			<<if canSee($args[0])>>
-				Something about her head catches her eye; @@.red;she is now bald.@@
+				Something about $his head catches $his eye; @@.red;$he is now bald.@@
 			<<else>>
-				She begins to run her fingers through her hair, only to @@.red;find it gone.@@
+				$He begins to run $his fingers through $his hair, only to @@.red;find it gone.@@
 			<</if>>
 			This
 			<<if $args[0].fetish == "mindbroken">>
-				catches her attention, and she spends some time rubbing her new smooth scalp.
+				catches $his attention, and $he spends some time rubbing $his new smooth scalp.
 			<<elseif $args[0].devotion > 20>>
-				feels fun and interesting, and she gently rubs her new smooth scalp.
+				feels fun and interesting, and $he gently rubs $his new smooth scalp.
 			<<else>>
-				feels like a gross imposition and she @@.mediumorchid;scowls at you accusingly,@@ for this is one less thing that marks her as a person that you have taken from her.
+				feels like a gross imposition and $he @@.mediumorchid;scowls at you accusingly,@@ for this is one less thing that marks $him as a person that you have taken from $him.
 				<<set $args[0].devotion -= 3>>
 			<</if>>
 		<<elseif $args[0].bald == 0 && $args[1].bald == 1>> /*(-baldness)*/
 			<<if canSee($args[0])>>
-				Something about her head catches her eye; @@.green;she now has hair.@@
+				Something about $his head catches $his eye; @@.green;$he now has hair.@@
 			<<else>>
-				She moves to rub her bald head, only to find she @@.green;has a full head of hair.@@
+				$He moves to rub $his bald head, only to find $he @@.green;has a full head of hair.@@
 			<</if>>
 			This
 			<<if $args[0].fetish == "mindbroken">>
-				catches her attention, and she spends some time pulling at her new hair.
+				catches $his attention, and $he spends some time pulling at $his new hair.
 			<<elseif $args[0].devotion >= -20>>
-				makes her @@.hotpink;squeal with delight.@@ She plays with her new hair, enjoying how it feels between her fingers.
+				makes $him @@.hotpink;squeal with delight.@@ $He plays with $his new hair, enjoying how it feels between $his fingers.
 				<<set $args[0].devotion += 3>>
 			<<else>>
-				surprises her. She is not happy with your doing something like this while she had no control of it, but under the circumstances there are far worse things to have than hair.
+				surprises $him. $He is not happy with your doing something like this while $he had no control of it, but under the circumstances there are far worse things to have than hair.
 			<</if>>
 		<<elseif $args[0].bald == 1 && $args[1].bald == 1>>
 			<<if canSee($args[0])>>
-				Something about her head catches her eye, but it turned out to be nothing. She is as bald as ever.
+				Something about $his head catches $his eye, but it turned out to be nothing. $He is as bald as ever.
 			<<else>>
-				She moves to rub her bald head and is not disappointed.
+				$He moves to rub $his bald head and is not disappointed.
 			<</if>>
 		<<else>>
 			<<if canSee($args[0])>>
-				Something about her head catches her 
+				Something about $his head catches $his 
 				<<if $args[0].hColor != $args[1].hColor>>
-					eye; she @@.coral;now has $args[0].hColor hair.@@
+					eye; $he @@.coral;now has $args[0].hColor hair.@@
 				<<else>>
-					eye, but it was a trick of the light; her hair is more or less the same.
+					eye, but it was a trick of the light; $his hair is more or less the same.
 				<</if>>
 			<<else>>
-				She runs her fingers through her hair and finds that things aren't very different.
+				$He runs $his fingers through $his hair and finds that things aren't very different.
 			<</if>>
 		<</if>>
 
 		/*(age)*/
 		<<if $args[0].physicalAge >= $args[1].physicalAge+5 || ($args[0].physicalAge > 18 && $args[1].physicalAge < 16)>> /*(older)*/
 			<<if $args[0].physicalAge > 18 && $args[1].physicalAge < 16>>
-				She starts at just how much @@.red;older her <<if canSee($args[0])>>face and body are<<else>>body is<</if>>.@@
+				$He starts at just how much @@.red;older $his <<if canSee($args[0])>>face and body are<<else>>body is<</if>>.@@
 				<<if $args[0].physicalAge > 100>>
-					She's thoroughly shocked to find she's knocking on death's door.
+					$He's thoroughly shocked to find $he's knocking on death's door.
 				<<elseif $args[0].physicalAge > 80>>
-					She's thoroughly shocked to find she's ancient.
+					$He's thoroughly shocked to find $he's ancient.
 				<<elseif $args[0].physicalAge > 30>>
-					She's shocked to find that she's practically a MILF.
+					$He's shocked to find that $he's practically a MILF.
 				<<elseif $args[0].physicalAge >= 18>>
-					She's shocked to find she's now a fresh adult.
+					$He's shocked to find $he's now a fresh adult.
 				<</if>>
 				<<if $args[0].fetish != "mindbroken">>
-					This is disturbing to her on a fundamental level,
+					This is disturbing to $him on a fundamental level,
 					<<if $args[0].devotion > 50>>
-						as that means she will now will have less time with you before the end of her
+						as that means $he will now will have less time with you before the end of $his
 						<<if $PhysicalRetirementAgePolicy == 1>>
 							service and
 						<</if>>
-						life. She does her best to shrug this off and tries to think of all the fun things a lewd older body can do.
+						life. $He does $his best to shrug this off and tries to think of all the fun things a lewd older body can do.
 					<<else>>
-						as that means she will be @@.mediumorchid;unable to spend as much time on this earth.@@
+						as that means $he will be @@.mediumorchid;unable to spend as much time on this earth.@@
 						<<set $args[0].devotion -= ($args[0].physicalAge-$args[1].physicalAge)*2>>
 						<<if $PhysicalRetirementAgePolicy == 1>>
-							On the other hand, it means she won’t have as much time to spend with you before she is retired.
+							On the other hand, it means $he won't have as much time to spend with you before $he is retired.
 						<<else>>
-							This is compounded with the fact that she @@.gold;may well die before she becomes a freed slave.@@
+							This is compounded with the fact that $he @@.gold;may well die before $he becomes a freed slave.@@
 							<<set $args[0].trust -= ($args[0].physicalAge-$args[1].physicalAge*2)>>
 						<</if>>
 					<</if>>
 					<<if ($args[0].ovaries == 1 || $args[0].mpreg == 1) && $args[0].pubertyXX == 1 && $args[1].pubertyXX == 0 && isFertile($args[0])>>
-						Her hand slips to her middle for a second as the urge to breed crosses her mind.
+						$His hand slips to $his middle for a second as the urge to breed crosses $his mind.
 					<</if>>
 					<<if ($args[0].balls > 0) && $args[0].pubertyXY == 1 && $args[1].pubertyXY == 0>>
-						She shudders with pleasure at the thought of cumming in a fertile pussy. She realizes this body has gone through puberty.
+						$He shudders with pleasure at the thought of cumming in a fertile pussy. $He realizes this body has gone through puberty.
 					<</if>>
 				<</if>>
 			<<elseif $args[0].fetish != "mindbroken">>
-				She starts as she <<if canSee($args[0])>>sees<<else>>discovers<</if>> that she is @@.red;now older than she once was.@@ This is disturbing to her on a fundamental level,
+				$He starts as $he <<if canSee($args[0])>>sees<<else>>discovers<</if>> that $he is @@.red;now older than $he once was.@@ This is disturbing to $him on a fundamental level,
 				<<if $args[0].devotion > 50>>
-					as that means she will now will have less time with you before the end of her
+					as that means $he will now will have less time with you before the end of $his
 					<<if $PhysicalRetirementAgePolicy == 1>>
 						service and
 					<</if>>
-					life. She does her best to shrug this off and tries to think of all the fun things a lewd older body can do.
+					life. $He does $his best to shrug this off and tries to think of all the fun things a lewd older body can do.
 				<<else>>
-					as that means she will be @@.mediumorchid;unable to spend as much time on this earth.@@
+					as that means $he will be @@.mediumorchid;unable to spend as much time on this earth.@@
 					<<set $args[0].devotion -= ($args[0].physicalAge-$args[1].physicalAge)*2>>
 					<<if $PhysicalRetirementAgePolicy == 1>>
-						On the other hand, it means she won’t have as much time to spend with you before she is retired.
+						On the other hand, it means $he won't have as much time to spend with you before $he is retired.
 					<<else>>
-						This is compounded with the fact that she @@.gold;may well die before she becomes a freed slave.@@
+						This is compounded with the fact that $he @@.gold;may well die before $he becomes a freed slave.@@
 						<<set $args[0].trust -= ($args[0].physicalAge-$args[1].physicalAge*2)>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].physicalAge <= $args[1].physicalAge-5 || ($args[0].physicalAge < 18 && $args[0].physicalAge < $args[1].physicalAge)>> /*(younger)*/
-			She starts at her @@.green;youthful new <<if canSee($args[0])>>face and <</if>>body.@@
+			$He starts at $his @@.green;youthful new <<if canSee($args[0])>>face and <</if>>body.@@
 			<<if $args[1].physicalAge >= 18>>
 				<<if $args[0].physicalAge < 4>>
-					She's thoroughly shocked to find she's a toddler again.
+					$He's thoroughly shocked to find $he's a toddler again.
 				<<elseif $args[0].physicalAge < 9>>
-					She's surprised to find she's a little girl.
+					$He's surprised to find $he's a little girl.
 				<<elseif $args[0].physicalAge < 13>>
-					She's surprised to find that she's once more a preteen.
+					$He's surprised to find that $he's once more a preteen.
 				<<elseif $args[0].physicalAge < 16>>
-					She never expected to be a teenager again.
+					$He never expected to be a teenager again.
 				<<elseif $args[0].physicalAge < 18>>
-					She never expected to be a young adult again.
+					$He never expected to be a young adult again.
 				<</if>>
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
 				<<set _puberty = 0>>
 				<<if (($args[0].physicalAge < $fertilityAge && ($args[0].ovaries == 1 || $args[0].mpreg == 1)) || ($args[0].physicalAge < $potencyAge && $args[0].balls > 0)) && ($args[1].pubertyXX == 1 || $args[1].pubertyXY == 1)>>
-					She realizes that she will have to @@.coral;go through puberty again,@@ now that she is $args[0].physicalAge once more. This is unnerving to her.
+					$He realizes that $he will have to @@.coral;go through puberty again,@@ now that $he is $args[0].physicalAge once more. This is unnerving to $him.
 					<<set _puberty = 1>>
 				<</if>>
 				<<if $args[0].devotion > 20>>
 					<<if _puberty == 1>>
-						However, she will do her best to enjoy the highs that come with it, and
+						However, $he will do $his best to enjoy the highs that come with it, and
 					<<else>>
-						This is a @@.hotpink;wonderful gift to her,@@ as she will now be able to
+						This is a @@.hotpink;wonderful gift to $him,@@ as $he will now be able to
 						<<set $args[0].devotion += Math.max($args[1].physicalAge-$args[0].physicalAge, 10)>>
 					<</if>>
 					<<if $PhysicalRetirementAgePolicy == 1>>
-						spend more time with you before the end of her service.
+						spend more time with you before the end of $his service.
 					<<else>>
 						service you better, as well as have all the other benefits of youthful age.
 					<</if>>
 				<<else>>
 					<<if _puberty == 1>>
-						It will be frustrating to go through the rigors of sexual development all over again, especially when combined with the fact that she must also
+						It will be frustrating to go through the rigors of sexual development all over again, especially when combined with the fact that $he must also
 					<<else>>
-						This is both a @@.hotpink;blessing@@ and a @@.gold;curse,@@ as while she now has a younger and healthier body, she must also
+						This is both a @@.hotpink;blessing@@ and a @@.gold;curse,@@ as while $he now has a younger and healthier body, $he must also
 						<<set $args[0].devotion += Math.max($args[1].physicalAge-$args[0].physicalAge, 10), $args[0].trust -= 5>>
 					<</if>>
 					<<if $PhysicalRetirementAgePolicy == 1>>
-						spend more time with you before the end of her service.
+						spend more time with you before the end of $his service.
 					<<else>>
-						use all of her the youth for the benefit of her master instead of herself.
+						use all of $his youth for the benefit of $his master instead of $himself.
 					<</if>>
 				<</if>>
 			<</if>>
@@ -931,24 +931,24 @@ Now you only have to wait for her to wake up.
 
 		/*weight*/
 		<<if $args[0].weight >= $args[1].weight + 5 || $args[0].weight <= $args[1].weight - 5>>
-			The very next thing she finds is how much
+			The very next thing $he finds is how much
 			<<if $args[0].weight >= $args[1].weight + 5>>
-				@@.red;heavier she is.@@
+				@@.red;heavier $he is.@@
 				<<if $args[0].fetish == "mindbroken">>
-					With her broken mind, she shows no real reaction to this new weight.
+					With $his broken mind, $he shows no real reaction to this new weight.
 				<<elseif $args[0].devotion >= 50>>
 					<<if $args[0].behavioralFlaw == "gluttonous">>
-						She is @@.hotpink;perfectly fine@@ with this; a bigger body means more food for her belly and more for you to love.
+						$He is @@.hotpink;perfectly fine@@ with this; a bigger body means more food for $his belly and more for you to love.
 						<<set $args[0].devotion += 1>>
 					<<elseif $args[0].behavioralFlaw == "anorexic">>
-						She pinches herself and groans a little. She knows if you wanted her heavier, you could have just force fed her to this size, so she keeps further opinions to herself.
+						$He pinches $himself and groans a little. $He knows if you wanted $his heavier, you could have just force fed $him to this size, so $he keeps further opinions to $himself.
 					<<elseif $args[0].behavioralQuirk == "insecure">>
-						She is @@.hotpink;perfectly fine@@ with this; if you want her to be softer, then @@.mediumaquamarine;that is what she wants too.@@
+						$He is @@.hotpink;perfectly fine@@ with this; if you want $him to be softer, then @@.mediumaquamarine;that is what $he wants too.@@
 						<<set $args[0].devotion += 1, $args[0].trust += 1>>
 					<<elseif $args[0].behavioralQuirk == "fitness" && $args[0].weight > 30>>
-						She would prefer to be fitter, but this just means she can work it off for your amusement.
+						$He would prefer to be fitter, but this just means $he can work it off for your amusement.
 					<<else>>
-						She is happy that you have given her more weight for you to play 
+						$He is happy that you have given $him more weight for you to play 
 						<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
 							with, but is somewhat confused that you would do so against the society you created.
 						<<else>>
@@ -957,27 +957,27 @@ Now you only have to wait for her to wake up.
 					<</if>>
 				<<else>>
 					<<if $args[0].behavioralFlaw == "gluttonous">>
-						She is @@.hotpink;surprisingly fine@@ with this; a bigger body means more food for her belly, after all.
+						$He is @@.hotpink;surprisingly fine@@ with this; a bigger body means more food for $his belly, after all.
 						<<if $args[0].weight > 30>>
-							Though she would have preferred to not be this fat.
+							Though $he would have preferred to not be this fat.
 						<</if>>
 						<<set $args[0].devotion += 1>>
 					<<elseif $args[0].behavioralFlaw == "anorexic">>
-						She pinches herself and @@.mediumorchid;groans with disgust.@@ She shudders at the thought of @@.gold;what you'll do next.@@
+						$He pinches $himself and @@.mediumorchid;groans with disgust.@@ $He shudders at the thought of @@.gold;what you'll do next.@@
 						<<set $args[0].devotion -= 3, $args[0].trust -= 3>>
 					<<elseif $args[0].behavioralQuirk == "insecure">>
-						She is surprisingly fine with this; you know best, after all.
+						$He is surprisingly fine with this; you know best, after all.
 					<<elseif $args[0].behavioralQuirk == "fitness" && $args[0].weight > 30>>
-						She is @@.mediumorchid;irritated and frustrated@@ at this new weight. She should be fit not fat!
+						$He is @@.mediumorchid;irritated and frustrated@@ at this new weight. $He should be fit not fat!
 						<<set $args[0].devotion -= 10>>
 					<<else>>
-						She is @@.mediumorchid;irritated and frustrated@@ at this new
+						$He is @@.mediumorchid;irritated and frustrated@@ at this new
 						<<set $args[0].devotion -= 5>>
 						<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-							weight, @@.mediumorchid;doubly so@@ because your society will view her as less of a person now.
+							weight, @@.mediumorchid;doubly so@@ because your society will view $him as less of a person now.
 							<<set $args[0].devotion -= 5>>
 						<<elseif $arcologies[0].FSHedonisticDecadence != "unset">>
-							weight, however she is at least @@.hotpink;somewhat mollified@@ with the knowledge that society will treat her a with a bit more reverence now.
+							weight, however $he is at least @@.hotpink;somewhat mollified@@ with the knowledge that society will treat $him with a bit more reverence now.
 							<<set $args[0].devotion += 3>>
 						<<else>>
 							weight.
@@ -985,20 +985,20 @@ Now you only have to wait for her to wake up.
 					<</if>>
 				<</if>>
 			<<else>>
-				@@.green;lighter she is.@@
+				@@.green;lighter $he is.@@
 				<<if $args[0].fetish == "mindbroken">>/*mindbroken*/
-					She doesn’t show much reaction to her lost weight.
+					$He doesn't show much reaction to $his lost weight.
 				<<elseif $args[0].devotion >= 50>>/*devoted*/
-					She is pleased that you have given her a more slender and svelte body
+					$He is pleased that you have given $him a more slender and svelte body
 					<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-						body and is even happier that her body is more in line with your society.
+						body and is even happier that $his body is more in line with your society.
 					<<else>>
 						body.
 					<</if>>
 				<<else>>/*not devoted*/
-					She is a bit miffed that you would modify her body in such a way, knowing it has nothing to do with making her happy
+					$He is a bit miffed that you would modify $his body in such a way, knowing it has nothing to do with making $him happy
 					<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-						happy, but feels a bit better knowing that society will now view her in a better light.
+						happy, but feels a bit better knowing that society will now view $him in a better light.
 					<<else>>
 						happy.
 					<</if>>
@@ -1008,29 +1008,29 @@ Now you only have to wait for her to wake up.
 
 		/*muscle*/
 		<<if $args[0].muscles >= $args[1].muscles +5 || $args[0].muscles <= $args[1].muscles - 5>>
-			The last major change to her body structure worth her attention is
+			The last major change to $his body structure worth $his attention is
 			<<if $args[0].muscles >= $args[1].muscles + 5>>
-				that she is @@.lime;significantly more muscular@@ than she once was.
+				that $he is @@.lime;significantly more muscular@@ than $he once was.
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion >= 50>>
-						She is happy with her newfound strength and looks forward to putting this power to work for you.
+						$He is happy with $his newfound strength and looks forward to putting this power to work for you.
 					<<else>>
-						She is irritated that you would change something like this about her
+						$He is irritated that you would change something like this about $him
 						<<if $args[0].genes == "XX" && $arcologies.FSPhysicalIdealist == "unset">>
-							and is @@.mediumorchid;annoyed@@ that she now looks less feminine.
+							and is @@.mediumorchid;annoyed@@ that $he now looks less feminine.
 							<<set $args[0].devotion -= 3>>
 						<<else>>
-							but @@.mediumaquamarine;appreciates@@ the extra strength nonetheless, as it will most likely help her in all sorts of ways.
+							but @@.mediumaquamarine;appreciates@@ the extra strength nonetheless, as it will most likely help $him in all sorts of ways.
 							<<set $args[0].trust += 5>>
 						<</if>>
 					<</if>>
 				<</if>>
 			<<else>>
-				that she is @@.orange;significantly less muscular@@ than before.
+				that $he is @@.orange;significantly less muscular@@ than before.
 				<<if $args[0].devotion >= 50>>
-					She appreciates that you would take the time to make her more feminine.
+					$He appreciates that you would take the time to make $him more feminine.
 				<<else>>
-					She is @@.mediumorchid;annoyed@@ that you would alter something about her like this, and more so because she will have to @@.gold;work harder@@ now to do the things she could before.
+					$He is @@.mediumorchid;annoyed@@ that you would alter something about $him like this, and more so because $he will have to @@.gold;work harder@@ now to do the things $he could before.
 					<<set $args[0].devotion -= 3, $args[0].trust -= 3>>
 				<</if>>
 			<</if>>
@@ -1040,50 +1040,50 @@ Now you only have to wait for her to wake up.
 		<<set _weightChange = 0>> /*used to segway to weight after pregnancy/belly implants*/
 		<<if $args[0].pregKnown == 1 && $args[1].preg > 0>>
 			<br><br>
-			Her hands drift over her stomach,
+			$His hands drift over $his stomach,
 			<<if $args[0].bellyPreg < 100>>
 				<<if $args[0].birthsTotal == 0>>
-					but she's too inexperienced to recognize her @@.pink;early pregnancy.@@
+					but $he's too inexperienced to recognize $his @@.pink;early pregnancy.@@
 				<<elseif $args[0].birthsTotal > 0>>
-					and since this is not her first pregnancy, she is able to recognize the @@.pink;life within her.@@
+					and since this is not $his first pregnancy, $he is able to recognize the @@.pink;life within $him.@@
 				<</if>>
 			<<elseif $args[0].bellyPreg >= 450000>>
-				and she can immediately see that she is @@.pink;insanely pregnant;@@ her body stretched full of babies.
+				and $he can immediately see that $he is @@.pink;insanely pregnant;@@ $his body stretched full of babies.
 			<<elseif $args[0].bellyPreg >= 150000>>
-				and she can quite clearly see that she is @@.pink;enormously pregnant,@@ so much so that her body could quite believably be carrying nine full sized babies.
+				and $he can quite clearly see that $he is @@.pink;enormously pregnant,@@ so much so that $his body could quite believably be carrying nine full sized babies.
 			<<elseif $args[0].bellyPreg >= 60000>>
-				and she can see that she is almost @@.pink;unnaturally pregnant,@@ with a belly swollen to a size that could easily carry four full grown babies.
+				and $he can see that $he is almost @@.pink;unnaturally pregnant,@@ with a belly swollen to a size that could easily carry four full grown babies.
 			<<elseif $args[0].bellyPreg >= 15000>>
-				and she can clearly see that she is @@.pink;quite pregnant,@@ as she cradles a belly that could easily carry a full sized baby.
+				and $he can clearly see that $he is @@.pink;quite pregnant,@@ as $he cradles a belly that could easily carry a full sized baby.
 			<<elseif $args[0].bellyPreg >= 5000>>
-				and she feels a @@.pink;bump in her stomach,@@ as well as a gentle kick.
+				and $he feels a @@.pink;bump in $his stomach,@@ as well as a gentle kick.
 			<<elseif $args[0].bellyPreg >= 100>>
-				and she feels a @@.pink;slight swell to her stomach.@@
+				and $he feels a @@.pink;slight swell to $his stomach.@@
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].bellyPreg >= 100 || $args[0].birthsTotal > 0>>
 					<<if $args[0].devotion >= 50>>
-						Even though she didn’t get to experience being made into one, she is delighted to be a mother<<if $args[0].birthsTotal > 0>> again<</if>>.
+						Even though $he didn't get to experience being made into one, $he is delighted to be a mother<<if $args[0].birthsTotal > 0>> again<</if>>.
 					<<else>>
-						She is filled with conflicting emotions, @@.mediumorchid;hatred@@ for you for forcing <<if $args[0].pregType > 1>>these lives<<else>>this life<</if>> onto her, as well as the instinct of a mother’s love for her unborn child.
+						$He is filled with conflicting emotions, @@.mediumorchid;hatred@@ for you for forcing <<if $args[0].pregType > 1>>these lives<<else>>this life<</if>> onto $him, as well as the instinct of a mother's love for $his unborn child.
 						<<set $args[0].devotion -= 3>>
 					<</if>>
 				<</if>>
 			<<elseif $args[0].fetish == "pregnancy">>
 				<<if $args[0].bellyPreg >= 100 || $args[0].birthsTotal > 0>>
 					<<if $args[0].devotion >= 50>>
-						Even though she didn’t get to experience being made into one, she is overjoyed to have <<if $args[0].birthsTotal > 0>>another<<else>>a<</if>> life growing inside her.
+						Even though $he didn't get to experience being made into one, $he is overjoyed to have <<if $args[0].birthsTotal > 0>>another<<else>>a<</if>> life growing inside $him.
 					<<else>>
-						She is filled with conflicting emotions, hate for being forced into this, but also joy from getting to be pregnant. While you didn't do this for her amusement, she'll definitely take advantage of it.
+						$He is filled with conflicting emotions, hate for being forced into this, but also joy from getting to be pregnant. While you didn't do this for $his amusement, $he'll definitely take advantage of it.
 					<</if>>
 				<</if>>
 			<</if>>
 			<<set _weightChange = 1>>
 		<<elseif $args[0].bellyImplant > $args[1].bellyImplant && $args[0].bellyImplant >= 100>> /*belly implant filled*/
 			<br><br>
-			Her hands drift over her stomach, where she
+			$His hands drift over $his stomach, where $he
 			<<if $args[0].bellyImplant >= 450000>>
-				finds there is no chance of her reaching her navel across her @@.pink;massive middle.@@
+				finds there is no chance of $him reaching $his navel across $his @@.pink;massive middle.@@
 			<<elseif $args[0].bellyImplant >= 150000>>
 				hugs what could be a @@.pink;belly carrying a multitude of children.@@
 			<<elseif $args[0].bellyImplant >= 60000>>
@@ -1091,35 +1091,35 @@ Now you only have to wait for her to wake up.
 			<<elseif $args[0].bellyImplant >= 15000>>
 				cradles a @@.pink;belly swollen enough to be carrying at least one baby ready to drop.@@
 			<<elseif $args[0].bellyImplant >= 5000>>
-				feels a @@.pink;clear bump in her stomach from the belly implant.@@
+				feels a @@.pink;clear bump in $his stomach from the belly implant.@@
 			<<elseif $args[0].bellyImplant >= 100>>
-				feels a @@.pink;slight swell to her stomach.@@
+				feels a @@.pink;slight swell to $his stomach.@@
 			<</if>>
 			<<if $args[0].devotion >= 50>>
-				She likes how the bulge looks on her and can't wait to get fucked with it in the way.
+				$He likes how the bulge looks on $him and can't wait to get fucked with it in the way.
 			<<else>>
-				It @@.mediumorchid;bothers her@@ that you would add such a <<if $args[0].bellyImplant >= 10000>>major<<else>>minor<</if>> inconvenience to her body.
+				It @@.mediumorchid;bothers $him@@ that you would add such a <<if $args[0].bellyImplant >= 10000>>major<<else>>minor<</if>> inconvenience to $his body.
 				<<set $args[0].devotion -= 1>>
 			<</if>>
 			<<if $args[1].pregKnown == 1>>
 				<<if $args[0].fetish == "pregnancy">>
 					<<if $args[0].devotion >= 50>>
-						She @@.mediumorchid;scowls with momentary wrath@@ before regaining her composure. She resents being separated from her pregnancy<<if canGetPregnant($args[0])>>, though that is easily remedied<</if>>.
+						$He @@.mediumorchid;scowls with momentary wrath@@ before regaining $his composure. $He resents being separated from $his pregnancy<<if canGetPregnant($args[0])>>, though that is easily remedied<</if>>.
 						<<set $args[0].devotion -= 5>>
 					<<elseif $args[0].devotion >= 20>>
-						She @@.mediumorchid;scowls angrily@@ at this turn of events<<if canGetPregnant($args[0])>>, though that will be easily remedied by putting another child in her<</if>>.
+						$He @@.mediumorchid;scowls angrily@@ at this turn of events<<if canGetPregnant($args[0])>>, though that will be easily remedied by putting another child in $him<</if>>.
 						<<set $args[0].devotion -= 10>>
 					<<else>>
-						She is filled with @@.mediumorchid;hatred for you@@ for snatching her pregnancy away from her.
+						$He is filled with @@.mediumorchid;hatred for you@@ for snatching $his pregnancy away from $him.
 						<<set $args[0].devotion -= 15>>
 					<</if>>
 				<<elseif $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion >= 50>>
-						While she will miss the chance of meeting her future child, she will no longer be weighed down by it as she gets used to her new body.
+						While $he will miss the chance of meeting $his future child, $he will no longer be weighed down by it as $he gets used to $his new body.
 					<<elseif $args[0].devotion >= 20>>
-						She accepts this as how things are.
+						$He accepts this as how things are.
 					<<else>>
-						She is filled with @@.mediumorchid;hatred for you@@ for snatching her child away from her. It didn't matter if she wanted it or not; @@.gold;it was hers and you took it.@@
+						$He is filled with @@.mediumorchid;hatred for you@@ for snatching $his child away from $him. It didn't matter if $he wanted it or not; @@.gold;it was $hers and you took it.@@
 						<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 					<</if>>
 				<</if>>
@@ -1127,34 +1127,34 @@ Now you only have to wait for her to wake up.
 			<<set _weightChange = 1>>
 		<<elseif $args[0].pregKnown == 0 && $args[1].pregKnown == 1>>
 			<br><br>
-			Her hands drift over her stomach, where she discovers she is @@.pink;no longer pregnant.@@
+			$His hands drift over $his stomach, where $he discovers $he is @@.pink;no longer pregnant.@@
 			<<if $args[0].fetish == "pregnancy">>
 				<<if $args[0].devotion >= 50>>
-					She @@.mediumorchid;scowls with momentary wrath@@ before regaining her composure. She resents being separated from her pregnancy<<if canGetPregnant($args[0])>>, though that is easily remedied<</if>>.
+					$He @@.mediumorchid;scowls with momentary wrath@@ before regaining $his composure. $He resents being separated from $his pregnancy<<if canGetPregnant($args[0])>>, though that is easily remedied<</if>>.
 					<<set $args[0].devotion -= 5>>
 				<<elseif $args[0].devotion >= 20>>
-					She @@.mediumorchid;scowls angrily@@ at this turn of events<<if canGetPregnant($args[0])>>, though that will be easily remedied by putting another child in her<</if>>.
+					$He @@.mediumorchid;scowls angrily@@ at this turn of events<<if canGetPregnant($args[0])>>, though that will be easily remedied by putting another child in $him<</if>>.
 					<<set $args[0].devotion -= 10>>
 				<<else>>
-					She is filled with @@.mediumorchid;hatred for you@@ for snatching her pregnancy away from her.
+					$He is filled with @@.mediumorchid;hatred for you@@ for snatching $his pregnancy away from $him.
 					<<set $args[0].devotion -= 15>>
 				<</if>>
 			<<elseif $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion >= 50>>
-					While she will miss the chance of meeting her future child, she will no longer be weighed down by it as she gets used to her new body.
+					While $he will miss the chance of meeting $his future child, $he will no longer be weighed down by it as $he gets used to $his new body.
 				<<elseif $args[0].devotion >= 20>>
-					She accepts this as how things are.
+					$He accepts this as how things are.
 				<<else>>
-					She is filled with @@.mediumorchid;hatred for you@@ for snatching her child away from her. It didn't matter if she wanted it or not; @@.gold;it was hers and you took it.@@
+					$He is filled with @@.mediumorchid;hatred for you@@ for snatching $his child away from $him. It didn't matter if $he wanted it or not; @@.gold;it was $hers and you took it.@@
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<</if>>
 			<</if>>
 			<<set _weightChange = 1>>
 		<<elseif $args[0].bellyImplant < $args[1].bellyImplant>> /*belly implant reduced*/
 			<br><br>
-			Her hands drift over her stomach, where she
+			$His hands drift over $his stomach, where $he
 			<<if $args[0].bellyImplant >= 450000>>
-				finds there is @@.pink;still no chance of her reaching her navel across her massive middle.@@
+				finds there is @@.pink;still no chance of $him reaching $his navel across $his massive middle.@@
 			<<elseif $args[0].bellyImplant >= 150000>>
 				hugs what could be a @@.pink;belly carrying a multitude of children.@@
 			<<elseif $args[0].bellyImplant >= 60000>>
@@ -1162,16 +1162,16 @@ Now you only have to wait for her to wake up.
 			<<elseif $args[0].bellyImplant >= 15000>>
 				cradles a @@.pink;belly swollen enough to be carrying at least one baby ready to drop.@@
 			<<elseif $args[0].bellyImplant >= 5000>>
-				feels a @@.pink;clear bump in her stomach from the belly implant.@@
+				feels a @@.pink;clear bump in $his stomach from the belly implant.@@
 			<<elseif $args[0].bellyImplant >= 100>>
-				feels a @@.pink;slight swell to her stomach.@@
+				feels a @@.pink;slight swell to $his stomach.@@
 			<<else>>
 				finds @@.pink;no signs of an implant swollen belly.@@
 			<</if>>
 			<<if $args[0].devotion >= 20>>
-				She appreciates how much easier it will be with a smaller middle.
+				$He appreciates how much easier it will be with a smaller middle.
 			<<else>>
-				She can't help but appreciate losing the bulk, but she still @@.gold;worries@@ over your control of her body.
+				$He can't help but appreciate losing the bulk, but $he still @@.gold;worries@@ over your control of $his body.
 				<<set $args[0].trust -= 1>>
 			<</if>>
 			<<set _weightChange = 1>>
@@ -1180,148 +1180,148 @@ Now you only have to wait for her to wake up.
 		/*stomach*/
 		<<if _weightChange != 1>>
 			<br><br>
-			Her hands drift over
+			$His hands drift over
 		<<else>>
-			She continues to fondle
+			$He continues to fondle
 		<</if>>
 		<<if $args[0].weight >= $args[1].weight+30>> /*(fatter)*/
-			her stomach until she feels just how @@.red;much more weight@@ she is carrying.
+			$his stomach until $he feels just how @@.red;much more weight@@ $he is carrying.
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She finds her new curves intriguing.
+					$He finds $his new curves intriguing.
 				<<else>>
-					Her face contorts with @@.mediumorchid;disgust@@ at her newfound bulk.
+					$His face contorts with @@.mediumorchid;disgust@@ at $his newfound bulk.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<</if>>
 			<<if $args[0].bellySag > $args[1].bellySag && $args[0].belly < 100>>
-				She also notices @@.red;how much it sags.@@
+				$He also notices @@.red;how much it sags.@@
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion > 20>>
-						This isn’t pleasant, but she bears it for you.
+						This isn't pleasant, but $he bears it for you.
 					<<else>>
-						This does nothing for her self-image, only @@.mediumorchid;disgusts and annoys@@ her.
+						This does nothing for $his self-image, only @@.mediumorchid;disgusts and annoys@@ $him.
 						<<set $args[0].devotion -= 2>>
 					<</if>>
 				<</if>>
 			<<elseif $args[0].bellySag < $args[1].bellySag && $args[0].belly < 100>>
-				She also notices it is @@.green;tighter despite being softer.@@
+				$He also notices it is @@.green;tighter despite being softer.@@
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion > 20>>
-						This is great for her self-image and she happily strokes her new firm belly.
+						This is great for $his self-image and $he happily strokes $his new firm belly.
 					<<else>>
-						Whatever else this transition brings, this is a gift she will appreciate and she @@.hotpink;smiles, just a bit.@@
+						Whatever else this transition brings, this is a gift $he will appreciate and $he @@.hotpink;smiles, just a bit.@@
 						<<set $args[0].devotion += 1>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].weight <= $args[1].weight-30>> /*(thinner)*/
-			her stomach and she finds her body @@.green;thinner.@@
+			$his stomach and $he finds $his body @@.green;thinner.@@
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She finds her new curves intriguing.
+					$He finds $his new curves intriguing.
 				<<else>>
-					While free weight loss is @@.hotpink;appreciated,@@ she wishes she had some say in the matter.
+					While free weight loss is @@.hotpink;appreciated,@@ $he wishes $he had some say in the matter.
 					<<set $args[0].devotion += 1>>
 				<</if>>
 			<</if>>
 			<<if $args[0].bellySag > $args[1].bellySag && $args[0].belly < 100>>
-				She also notices how it @@.red;has a sag to it.@@
+				$He also notices how it @@.red;has a sag to it.@@
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion > 20>>
-						This isn’t pleasant, but she bears it for you.
+						This isn't pleasant, but $he bears it for you.
 					<<else>>
-						This does nothing for her self-image, only @@.mediumorchid;disgusts and annoys@@ her.
+						This does nothing for $his self-image, only @@.mediumorchid;disgusts and annoys@@ $him.
 						<<set $args[0].devotion -= 2>>
 					<</if>>
 				<</if>>
 			<<elseif $args[0].bellySag < $args[1].bellySag && $args[0].belly < 100>>
-				She also notices it is @@.green;tighter despite being softer.@@
+				$He also notices it is @@.green;tighter despite being softer.@@
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion > 20>>
-						This is great for her self-image and she happily strokes her new perkier belly.
+						This is great for $his self-image and $he happily strokes $his new perkier belly.
 					<<else>>
-						Whatever else this transition brings, this is a gift she will appreciate and she @@.hotpink;smiles, just a bit.@@
+						Whatever else this transition brings, this is a gift $he will appreciate and $he @@.hotpink;smiles, just a bit.@@
 						<<set $args[0].devotion += 1>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].bellySag > $args[1].bellySag && $args[0].belly < 100>> /*(belly sag)*/
-			her stomach and she notices a @@.red;sag in her belly.@@
+			$his stomach and $he notices a @@.red;sag in $his belly.@@
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					This isn’t pleasant, but she bears it for you.
+					This isn't pleasant, but $he bears it for you.
 				<<else>>
-					This does nothing for her self-image, only @@.mediumorchid;disgusts and annoys@@ her.
+					This does nothing for $his self-image, only @@.mediumorchid;disgusts and annoys@@ $him.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].bellySag < $args[1].bellySag && $args[0].belly < 100>> /*(subtracted)*/
-			her stomach and notices the @@.green;sag in her belly has lessened.@@
+			$his stomach and notices the @@.green;sag in $his belly has lessened.@@
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					This is great for her self-image and she happily strokes her new tight belly.
+					This is great for $his self-image and $he happily strokes $his new tight belly.
 				<<else>>
-					Whatever else this transition brings, this is a gift she will appreciate and she @@.hotpink;smiles, just a bit.@@
+					Whatever else this transition brings, this is a gift $he will appreciate and $he @@.hotpink;smiles, just a bit.@@
 					<<set $args[0].devotion += 1>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].weight < 10 && $args[0].muscles > 5 && $args[0].belly < 100>>
-			her @@.lime;muscled stomach.@@ She stops to trace her abs.
+			$his @@.lime;muscled stomach.@@ $He stops to trace $his abs.
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She finds her new strength intriguing.
+					$He finds $his new strength intriguing.
 				<<else>>
-					She finds her new strength @@.mediumaquamarine;empowering.@@
+					$He finds $his new strength @@.mediumaquamarine;empowering.@@
 					<<set $args[0].trust += 2>>
 				<</if>>
 			<</if>>
 		<<else>>
-			stomach, though she finds little out of the ordinary<<if _weightChange == 1>>; other than the obvious, of course<</if>>.
+			stomach, though $he finds little out of the ordinary<<if _weightChange == 1>>; other than the obvious, of course<</if>>.
 		<</if>>
 		<<if $args[0].navelPiercing != 0 && $args[1].navelPiercing == 0>>
-			She now has a piercing in her navel; she rolls her tummy<<if $args[0].belly >= 15000>>, a feat in and of itself<</if>>, fascinated by her new hardware grazing her stomach to the motion.
+			$He now has a piercing in $his navel; $he rolls $his tummy<<if $args[0].belly >= 15000>>, a feat in and of itself<</if>>, fascinated by $his new hardware grazing $his stomach to the motion.
 		<</if>>
 
 		/* waist */
 		<<if $args[0].waist > $args[1].waist+40>>
-			As she explores her middle, she also takes note of her @@.orange;wider waist.@@
+			As $he explores $his middle, $he also takes note of $his @@.orange;wider waist.@@
 			<<if $args[0].fetish == "mindbroken">>
-				The effects of such a change on her appearance go right over her head.
+				The effects of such a change on $his appearance go right over $his head.
 			<<elseif $args[0].devotion > 20>>
-				This change disappoints her. She wishes she could have been more feminine for you.
+				This change disappoints $him. $He wishes $he could have been more feminine for you.
 			<<else>>
-				This change @@.mediumorchid;disgusts her;@@ it will only leave her treated worse compared to the more feminine slaves.
+				This change @@.mediumorchid;disgusts $him;@@ it will only leave $him treated worse compared to the more feminine slaves.
 				<<set $args[0].devotion -= 1>>
 			<</if>>
 		<<elseif $args[0].waist < $args[1].waist-40>>
-			As she explores her middle, she also takes note of her @@.lime;narrower waist.@@
+			As $he explores $his middle, $he also takes note of $his @@.lime;narrower waist.@@
 			<<if $args[0].fetish == "mindbroken">>
-				The effects of such a change on her appearance go right over her head.
+				The effects of such a change on $his appearance go right over $his head.
 			<<elseif $args[0].devotion > 20>>
-				This change pleases her; she can't wait to feel your hands around her.
+				This change pleases $him; $he can't wait to feel your hands around $him.
 			<<else>>
-				That you would make such a change to her @@.mediumorchid;disgusts her,@@ though she @@.mediumaquamarine;takes solace@@ in the fact that she will likely be treated better for being more attractive.
+				That you would make such a change to $him @@.mediumorchid;disgusts $him,@@ though $he @@.mediumaquamarine;takes solace@@ in the fact that $he will likely be treated better for being more attractive.
 				<<set $args[0].devotion -= 1, $args[0].trust += 1>>
 			<</if>>
 		<</if>>
 
 		/* corest piercing */
 		<<if $args[0].corsetPiercing != 0 && $args[1].corsetPiercing == 0>>
-			An odd feeling on her back draws her attention. She discovers a series of rings running down her spine and, flexing her back muscles, shudders at the sensation.
+			An odd feeling on $his back draws $his attention. $He discovers a series of rings running down $his spine and, flexing $his back muscles, shudders at the sensation.
 		<</if>>
 		
 		<br><br>
-		As her hands wander lower,
+		As $his hands wander lower,
 
 		/*(changed genitals)*/
 		<<if $args[1].vagina > -1>> /*(had a vagina)*/
 			<<if $args[0].dick > 0 && $args[1].dick > 0>> /*(had a penis)*/
-				she is relieved to find @@.coral;
+				$he is relieved to find @@.coral;
 				<<if $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
 					a cock, balls and pussy.
 				<<elseif $args[0].balls == 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
-					both a cock and pussy, though she is a little miffed that she now lacks testicles.
+					both a cock and pussy, though $he is a little miffed that $he now lacks testicles.
 				<<elseif $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls == 0>>
 					both a cock, pussy and, more surprisingly, balls.
 				<<else>>
@@ -1329,33 +1329,33 @@ Now you only have to wait for her to wake up.
 				<</if>>
 				@@
 			<<elseif $args[0].dick > 0 && $args[1].dick == 0>> /*(+penis)*/
-				she is startled to find she @@.coral;has a penis@@ now.
+				$he is startled to find $he @@.coral;has a penis@@ now.
 				<<if $args[0].vagina > -1>> /*(kept vagina)*/
-					She is confused for a moment until she lifts her new penis to @@.coral;<<if canSee($args[0])>>see<<else>>discover<</if>> a pussy under it.@@
+					$He is confused for a moment until $he lifts $his new penis to @@.coral;<<if canSee($args[0])>>see<<else>>discover<</if>> a pussy under it.@@
 				<<else>> /*(did not keep vagina, +penis or not)*/
-					She understands that she @@.coral;no longer has a vagina.@@
+					$He understands that $he @@.coral;no longer has a vagina.@@
 				<</if>>
 			<<elseif $args[0].dick == 0 && $args[1].dick > 0>> /*(had a penis)*/
-				she is shocked to <<if canSee($args[0])>>see<<else>>discover<</if>> that she @@.coral;no longer has a
+				$he is shocked to <<if canSee($args[0])>>see<<else>>discover<</if>> that $he @@.coral;no longer has a
 				<<if $args[0].balls > 0 && $args[0].scrotum > 0>>
-					penis, mostly because she still has balls.@@
+					penis, mostly because $he still has balls.@@
 				<<elseif $args[0].vagina > -1>>
-					penis, though she is glad to still have a pussy.@@
+					penis, though $he is glad to still have a pussy.@@
 				<<else>>
-					penis, or anything, for that matter, on her crotch.@@
+					penis, or anything, for that matter, on $his crotch.@@
 				<</if>>
 			<<elseif $args[0].vagina > -1>>
-				she is happy to find a familiar hole.
+				$he is happy to find a familiar hole.
 			<<else>>
-				she is startled to find she @@.coral;no longer has genitals.@@
+				$he is startled to find $he @@.coral;no longer has genitals.@@
 			<</if>>
 		<<elseif $args[1].dick > 0>> /*(had a penis)*/
 			<<if $args[0].dick > 0>>
-				she is relieved to find she @@.coral;still has her
+				$he is relieved to find $he @@.coral;still has $his
 				<<if $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
 					penis and testicles.
 				<<elseif $args[0].balls == 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
-					penis, but is a little alarmed to find she now lacks testicles.
+					penis, but is a little alarmed to find $he now lacks testicles.
 				<<elseif $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls == 0>>
 					penis, but is more interested in the dangling pair of objects beneath it.
 				<<else>>
@@ -1363,10 +1363,10 @@ Now you only have to wait for her to wake up.
 				<</if>>
 				@@
 				<<if $args[0].vagina > -1>>
-					A new sensation causes her to roam lower. Much to her surprise, she @@.coral;now also has a pussy.@@
+					A new sensation causes $him to roam lower. Much to $his surprise, $he @@.coral;now also has a pussy.@@
 				<</if>>
 			<<else>>
-				she is shocked to find that she @@.coral;no longer has a
+				$he is shocked to find that $he @@.coral;no longer has a
 				<<if $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
 					penis, but still has balls.
 				<<elseif $args[0].vagina > -1>>
@@ -1377,75 +1377,75 @@ Now you only have to wait for her to wake up.
 				@@
 			<</if>>
 		<<else>>
-			she is surprised to find
+			$he is surprised to find
 			<<if $args[0].dick > 0 && $args[0].vagina > -1 && $args[0].balls > 0 && $args[0].scrotum > 0>>
-				her crotch is fully loaded.
+				$his crotch is fully loaded.
 			<<elseif $args[0].dick > 0 && $args[0].vagina > -1>>
-				she has both a dick and pussy.
+				$he has both a dick and pussy.
 			<<elseif $args[0].dick > 0>>
-				she now has a cock<<if $args[0].balls > 0 && $args[0].scrotum > 0>> and balls<</if>> to play with.
+				$he now has a cock<<if $args[0].balls > 0 && $args[0].scrotum > 0>> and balls<</if>> to play with.
 			<<elseif $args[0].vagina > -1>>
-				she now has a pussy to play with.
+				$he now has a pussy to play with.
 			<<else>>
-				she is still a null. She expected something more.
+				$he is still a null. $He expected something more.
 			<</if>>
 		<</if>>
 
 		<<set _cockChanged = 0>>
 		/*(penis changes)*/
 		<<if $args[0].dick != $args[1].dick && $args[0].dick != 0 && $args[1].dick != 0>>
-			Her penis is <<if $args[0].dick > $args[1].dick + 4>>@@.lime;way bigger@@<<elseif $args[0].dick > $args[1].dick>>@@.lime;a good deal larger@@<<else>>@@.orange;smaller@@<</if>> than it was, and she is
+			$His penis is <<if $args[0].dick > $args[1].dick + 4>>@@.lime;way bigger@@<<elseif $args[0].dick > $args[1].dick>>@@.lime;a good deal larger@@<<else>>@@.orange;smaller@@<</if>> than it was, and $he is
 			<<if $args[0].fetish == "mindbroken">>
-				not bothered one way or the other by this development; it isn't even clear if she notices anything different about her cock.
+				not bothered one way or the other by this development; it isn't even clear if $he notices anything different about $his cock.
 			<<elseif $args[0].devotion > 20>>
 				<<if $args[0].dick > $args[1].dick + 4>>
-					@@.hotpink;incredibly excited@@ about this change. She laughs and groans at the weight of her shaft, and as she fiddles with it, it becomes increasingly obvious that she is having difficulty not straight up jerking herself off. She regains control over herself, though just barely.
+					@@.hotpink;incredibly excited@@ about this change. $He laughs and groans at the weight of $his shaft, and as $he fiddles with it, it becomes increasingly obvious that $he is having difficulty not straight up jerking $himself off. $He regains control over $himself, though just barely.
 					<<set $args[0].devotion += 3>>
 				<<elseif $args[0].dick > $args[1].dick>>
-					pleased with this development. She takes the time to grope and tease her newfound length.
+					pleased with this development. $He takes the time to grope and tease $his newfound length.
 				<<else>>
-					accepting of it. She takes a moment to toy with her now shorter dick.
+					accepting of it. $He takes a moment to toy with $his now shorter dick.
 				<</if>>
 			<<else>>
 				<<if $args[0].dick > $args[1].dick + 4>>
-					@@.mediumaquamarine;incredibly aggravated@@ about this change. This is just one more thing she has to deal with now. How dare you give her such a massive, throbbing, sensitive piece of meat between her legs! Her glower loses its bite as you note her pawing subconsciously at her ridiculously enlarged organ. She stops after she glances down at her hands, nervously removing them from her now massive prick.
+					@@.mediumaquamarine;incredibly aggravated@@ about this change. This is just one more thing $he has to deal with now. How dare you give $him such a massive, throbbing, sensitive piece of meat between $his legs! $His glower loses its bite as you note $him pawing subconsciously at $his ridiculously enlarged organ. $He stops after $he glances down at $his hands, nervously removing them from $his now massive prick.
 					<<set $args[0].trust += 3>>
 				<<elseif $args[0].dick > $args[1].dick>>
-					annoyed at this development. She frowns as she tests her newfound growth, only groping it for a moment before <<if canSee($args[0])>>noticing your amused grin<<else>>sensing your gaze<</if>> and stopping.
+					annoyed at this development. $He frowns as $he tests $his newfound growth, only groping it for a moment before <<if canSee($args[0])>>noticing your amused grin<<else>>sensing your gaze<</if>> and stopping.
 				<<else>>
-					@@.mediumorchid;infuriated by it.@@ She <<if $args[0].amp !=1>>pokes and prods at <<else>>jostles <</if>>her smaller dick, only stopping when she starts to become flushed and <<if canSee($args[0])>>notices your questioning<<else>>senses your<</if>> gaze.
+					@@.mediumorchid;infuriated by it.@@ $He <<if $args[0].amp !=1>>pokes and prods at <<else>>jostles <</if>>$his smaller dick, only stopping when $he starts to become flushed and <<if canSee($args[0])>>notices your questioning<<else>>senses your<</if>> gaze.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<</if>>
 			<<set _cockChanged = 1>>
 		<</if>>
 		<<if $args[0].dickPiercing != 0 && $args[1].dickPiercing == 0>>
-			There was no missing the piercing in her dick as well.
+			There was no missing the piercing in $his dick as well.
 			<<set _cockChanged = 1>>
 		<</if>>
 
 		/*(ball changes)*/
 		<<if $args[0].balls != $args[1].balls && $args[0].scrotum != 0 && $args[1].scrotum != 0>>
-			Then she takes a moment to cup her balls, it seems they are
+			Then $he takes a moment to cup $his balls, it seems they are
 			<<if $args[0].balls > $args[1].balls + 4>>
 				@@.lime;much larger@@ now. This
 				<<if $args[0].fetish == "mindbroken">>
-					does not seem to register in her mind.
+					does not seem to register in $his mind.
 				<<elseif $args[0].devotion > 20>>
-					amazing addition to her body is @@.hotpink;surely welcome@@. She moans as she fondles her new balls, groaning as she rolls their weight around. Her face is flushed by the time she’s done "examining" them.
+					amazing addition to $his body is @@.hotpink;surely welcome@@. $He moans as $he fondles $his new balls, groaning as $he rolls their weight around. $His face is flushed by the time $he's done "examining" them.
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					addition to her body is @@mediumaquamarine;annoying@@, clearly. The frustrated irritation on her face contrasts sharply with the actions of her hands, which are busy causing <<if $args[0].dick>>her dick to become engorged with blood<<else>>precum to start flowing freely<</if>>. Catching herself, she takes a few soothing breaths to calm her body down.
+					addition to $his body is @@mediumaquamarine;annoying@@, clearly. The frustrated irritation on $his face contrasts sharply with the actions of $his hands, which are busy causing <<if $args[0].dick>>$his dick to become engorged with blood<<else>>precum to start flowing freely<</if>>. Catching $himself, $he takes a few soothing breaths to calm $his body down.
 					<<set $args[0].trust += 5>>
 				<</if>>
 			<<elseif $args[0].balls > $args[1].balls>>
 				@@.lime;larger@@ now. This
 				<<if $args[0].fetish == "mindbroken">>
-					change doesn't mean much of anything to her.
+					change doesn't mean much of anything to $him.
 				<<elseif $args[0].devotion > 20>>
-					change delights her and she spends ample time jostling and toying with her bigger nuts.
+					change delights $him and $he spends ample time jostling and toying with $his bigger nuts.
 				<<else>>
-					change is just one more @@.hotpink;bother@@ for her. Her brow furrows as she takes a moment to feel them up and stops as <<if $args[0].dick>>her cock starts to stiffen<<else>>as a bead of precum starts to form from her urethra<</if>>.
+					change is just one more @@.hotpink;bother@@ for $him. $His brow furrows as $he takes a moment to feel them up and stops as <<if $args[0].dick>>$his cock starts to stiffen<<else>>as a bead of precum starts to form from $his urethra<</if>>.
 					<<set $args[0].devotion += 3>>
 				<</if>>
 			<<else>>
@@ -1455,7 +1455,7 @@ Now you only have to wait for her to wake up.
 				<<elseif $args[0].devotion > 20>>
 					change, while not necessarily fun, is appreciated by your devoted slave nonetheless.
 				<<else>>
-					change causes her consternation and humiliation.
+					change causes $him consternation and humiliation.
 				<</if>>
 			<</if>>
 			<<set _cockChanged = 1>>
@@ -1463,9 +1463,9 @@ Now you only have to wait for her to wake up.
 
 		<<if _cockChanged == 1 && $args[0].fetish != "mindbroken">>
 			<<if $args[0].devotion > 20>>
-				She is thrilled at your modifications to her genitals and is excited to explore those changes with you.
+				$He is thrilled at your modifications to $his genitals and is excited to explore those changes with you.
 			<<else>>
-				She is @@.mediumorchid;enraged@@ and @@.gold;frightened@@ to see such changes to her genitals, as they were fundamental parts of her identity.
+				$He is @@.mediumorchid;enraged@@ and @@.gold;frightened@@ to see such changes to $his genitals, as they were fundamental parts of $his identity.
 				<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 			<</if>>
 		<</if>>
@@ -1473,79 +1473,79 @@ Now you only have to wait for her to wake up.
 		/*(vagina)*/
 		<<if $args[0].vagina != -1>>
 			<<if $args[0].dick > 0>>
-				Then she moves her dick<<if $args[0].scrotum > 0>> and balls<</if>> aside to inspect her vagina more closely.
+				Then $he moves $his dick<<if $args[0].scrotum > 0>> and balls<</if>> aside to inspect $his vagina more closely.
 			<<else>>
-				Next she gives her vagina a closer inspection.
+				Next $he gives $his vagina a closer inspection.
 			<</if>>
 			<<if $args[0].vagina == 0>> /*(+virginity)*/
-				As she prods at her pussy, she feels a slight tightness and a bit of difficulty as she tries to press her finger inside of herself. She realizes this body is a @@.lime;virgin@@!
+				As $he prods at $his pussy, $he feels a slight tightness and a bit of difficulty as $he tries to press $his finger inside of $himself. $He realizes this body is a @@.lime;virgin@@!
 				<<if $args[0].vagina > 0>>
 					<<if $args[0].fetish == "mindbroken">>
-						And this would likely mean something to her, if her mind was not lost.
+						And this would likely mean something to $him, if $his mind was not lost.
 					<<elseif $args[0].devotion > 20>>
-						She is happy to be a virgin again so that she can lose it to you.
+						$He is happy to be a virgin again so that $he can lose it to you.
 					<<else>>
-						She is @@.hotpink;happy@@ to be a virgin again, but @@.gold;worries@@ about how long it will last.
+						$He is @@.hotpink;happy@@ to be a virgin again, but @@.gold;worries@@ about how long it will last.
 						<<set $args[0].devotion += 3, $args[0].trust -= 3>>
 					<</if>>
 				<</if>>
 			<<elseif $args[1].vagina != -1 && $args[0].vagina < $args[1].vagina>> /*(+tightness)*/
-				She notices she is @@.lime;tighter@@ now than she was before.
+				$He notices $he is @@.lime;tighter@@ now than $he was before.
 				<<if $args[0].fetish == "mindbroken">>
-					And this might have been significant to her, if her brain worked correctly.
+					And this might have been significant to $him, if $his brain worked correctly.
 				<<elseif $args[0].devotion > 20>>
-					Sex will be more pleasurable than it was before and she looks forward to breaking in her new pussy with you.
+					Sex will be more pleasurable than it was before and $he looks forward to breaking in $his new pussy with you.
 				<<else>>
-					She groans in @@.mediumorchid;frustration.@@ She is well aware of the displeasure of having a pussy forcibly broken in and does not look forward to it again.
+					$He groans in @@.mediumorchid;frustration.@@ $He is well aware of the displeasure of having a pussy forcibly broken in and does not look forward to it again.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
 			<<elseif $args[1].vagina != -1 && $args[0].vagina > $args[1].vagina>> /*(-tightness)*/
-				She notices how she is now @@.orange;looser@@ than she was before.
+				$He notices how $he is now @@.orange;looser@@ than $he was before.
 				<<if $args[0].fetish == "mindbroken">>
-					And this might be important to her, if her head was in working order.
+					And this might be important to $him, if $his head was in working order.
 				<<elseif $args[0].devotion > 20>>
-					She giggles a bit as she tests out how many fingers she can fit inside her new loose hole, though she wishes she were still tight for you.
+					$He giggles a bit as $he tests out how many fingers $he can fit inside $his new loose hole, though $he wishes $he were still tight for you.
 				<<else>>
-					She @@.mediumorchid;frowns@@ as she feels out how much looser she is now. She supposes it saves her from getting fucked loose, but it is humiliating how many more fingers she can fit inside herself without even having to part her lips. /*This is not how vaginas work goddamit. - is that better? */
+					$He @@.mediumorchid;frowns@@ as $he feels out how much looser $he is now. $He supposes it saves $him from getting fucked loose, but it is humiliating how many more fingers $he can fit inside $himself without even having to part $his lips. /*This is not how vaginas work goddamit. - is that better? */
 					<<set $args[0].devotion -= 1>>
 				<</if>>
 			<<elseif $args[0].vagina == $args[1].vagina>>
-				It's much like her old vagina.
+				It's much like $his old vagina.
 			<<else>>
-				After a bit of toying, she's satisfied with her new organ.
+				After a bit of toying, $he's satisfied with $his new organ.
 			<</if>>
 		<</if>>
 		<<if $args[0].clitPiercing > 0 && $args[1].clitPiercing == 0 && $args[0].dick == 0>>
-			She also briefly felt something metallic near her clit. She frowns for a moment, before reaching down to her nether region to peel back her folds to feel a new, hard spot that wasn’t there before. As she pulls at it, her face and body contort in pleasure at the sensation.
+			$He also briefly felt something metallic near $his clit. $He frowns for a moment, before reaching down to $his nether region to peel back $his folds to feel a new, hard spot that wasn't there before. As $he pulls at it, $his face and body contort in pleasure at the sensation.
 		<</if>>
 		<<if $args[0].vaginaPiercing != 0 && $args[1].vaginaPiercing == 0>>
-			She also now has piercings in her vagina, a ring around her labia, creating
+			$He also now has piercings in $his vagina, a ring around $his labia, creating
 			<<if canSee($args[0])>>
-				a halo of sparkles that she couldn't help but marvel at.
+				a halo of sparkles that $he couldn't help but marvel at.
 			<<else>>
-				such a sensory overload during her inspection that she nearly lost control.
+				such a sensory overload during $his inspection that $he nearly lost control.
 			<</if>>
 		<</if>>
 
 		/*(butt) + hips*/
 		<br><br>
 		<<if $args[0].hips > $args[1].hips>>
-			As she moves to feel her ass, she smacks into an unfamiliar width; her hips are @@.lime;<<if $args[0].hips > $args[1].hips+3>>considerably <<elseif $args[0].hips < $args[1].hips-1>>much <</if>> wider.@@
+			As $he moves to feel $his ass, $he smacks into an unfamiliar width; $his hips are @@.lime;<<if $args[0].hips > $args[1].hips+3>>considerably <<elseif $args[0].hips < $args[1].hips-1>>much <</if>> wider.@@
 			<<if $args[0].fetish == "mindbroken">>
-				She pays them little mind and reaches around to learn how
+				$He pays them little mind and reaches around to learn how
 			<<elseif $args[0].fetish == "pregnancy" && $args[0].birthsTotal > 0>>
-				She seems @@.hotpink;overjoyed@@ at their new size; It means she'll be even better at popping out babies than ever. She continues around back to learn how
+				$He seems @@.hotpink;overjoyed@@ at their new size; It means $he'll be even better at popping out babies than ever. $He continues around back to learn how
 			<<elseif $args[0].devotion > 20>>
-				She gives them a little wiggle for your amusement before continuing around back to learn how
+				$He gives them a little wiggle for your amusement before continuing around back to learn how
 			<<else>>
-				She takes the new addition well enough since it is likely to raise her worth in society and thus not the worst thing ever. How you intend to make use of her hips @@.gold;worries her,@@ however. She continues around back to learn how
+				$He takes the new addition well enough since it is likely to raise $his worth in society and thus not the worst thing ever. How you intend to make use of $his hips @@.gold;worries $him,@@ however. $He continues around back to learn how
 				<<set $args[0].trust -= 1>>
 			<</if>>
 		<<else>>
-			The last thing she learns is how
+			The last thing $he learns is how
 		<</if>>
 		<<if $args[0].butt > $args[1].butt>> /*(bigger)*/
-			much @@.lime;bigger her butt is now.@@ As she <<if canSee($args[0])>>turns around, she sees<<else>>cups a cheek with each hand, she finds<</if>> it has grown
+			much @@.lime;bigger $his butt is now.@@ As $he <<if canSee($args[0])>>turns around, $he sees<<else>>cups a cheek with each hand, $he finds<</if>> it has grown
 			<<if $args[0].butt >= $args[1].butt+5>> /*(+to max size description or above)*/
 				an incredible amount.
 			<<elseif $args[0].butt > $args[1].butt+1>> /*(+more sizes)*/
@@ -1554,17 +1554,17 @@ Now you only have to wait for her to wake up.
 				a fair bit.
 			<</if>>
 			<<if $args[0].fetish == "mindbroken">>
-				As soon as her hands leave its mass does she forget it wasn't always this big.
+				As soon as $his hands leave its mass does $he forget it wasn't always this big.
 			<<elseif $args[0].devotion > 20>>
-				This is a pleasing development as she looks forward to putting this new rear to the test with you.
+				This is a pleasing development as $he looks forward to putting this new rear to the test with you.
 			<<else>>
-				While she’s not terribly upset, this still feels like a violation of her, somehow. Still, there are worse things that could happen than waking up with a bigger rear.
+				While $he's not terribly upset, this still feels like a violation of $him, somehow. Still, there are worse things that could happen than waking up with a bigger rear.
 			<</if>>
 			<<if $args[0].butt >= $args[1].butt+5 && $args[0].butt > 12>>
-				She is overwhelmed by how large her new bottom is. She can barely stand under its weight.
+				$He is overwhelmed by how large $his new bottom is. $He can barely stand under its weight.
 			<</if>>
 		<<elseif $args[0].butt < $args[1].butt>> /*(smaller)*/
-			much @@.orange;smaller her butt is now.@@ As she <<if canSee($args[0])>>turns around she sees<<else>>cups a cheek with each hand she finds<</if>> it has shrunk
+			much @@.orange;smaller $his butt is now.@@ As $he <<if canSee($args[0])>>turns around $he sees<<else>>cups a cheek with each hand $he finds<</if>> it has shrunk
 			<<if $args[0].butt <= $args[1].butt-5>> /*(+to max size description or above)*/
 				an incredible amount.
 			<<elseif $args[0].butt > $args[1].butt-1>> /*(+more sizes)*/
@@ -1574,229 +1574,229 @@ Now you only have to wait for her to wake up.
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She is saddened that there is now less of her for you to play with, but remembers that you chose this body for her and hopes that you will still make use of her rear.
+					$He is saddened that there is now less of $him for you to play with, but remembers that you chose this body for $him and hopes that you will still make use of $his rear.
 				<<else>>
-					This is just @@.mediumorchid;depressing@@ to her. A nice rear is one of the two parts of her body that almost every women (or “women”) is defined by, and now she feels like just that much less of a person.
+					This is just @@.mediumorchid;depressing@@ to $him. A nice rear is one of the two parts of $his body that almost every woman (or "woman") is defined by, and now $he feels like just that much less of a person.
 					<<set $args[0].devotion -= 1>>
 				<</if>>
 			<</if>>
 		<<else>>
-			little her butt has changed in size.
+			little $his butt has changed in size.
 		<</if>>
 		<<if $args[0].buttImplant > 0 && $args[1].buttImplant == 0>> /*(+butt implants)*/
-			She also notes that @@.coral;there are implants in her,@@ as her prodding reveals a certain stiffness in her ass’s shape.
+			$He also notes that @@.coral;there are implants in $him,@@ as $his prodding reveals a certain stiffness in $his ass's shape.
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					It pleases her that you would invest in such a minor way in her body.
+					It pleases $him that you would invest in such a minor way in $his body.
 				<<else>>
-					It feels like you have modified her in a such a minor way for your own benefit, and she doesn’t kid herself in thinking otherwise.
+					It feels like you have modified $him in a such a minor way for your own benefit, and $he doesn't kid $himself in thinking otherwise.
 				<</if>>
 			<</if>>
 		<<elseif $args[0].buttImplant == 0 && $args[1].buttImplant > 0>> /*(-butt implants)*/
-			She also notes that she @@.coral;no longer has ass implants,@@ as her experimentation reveals a more natural bounce to her buttocks.
+			$He also notes that $he @@.coral;no longer has ass implants,@@ as $his experimentation reveals a more natural bounce to $his buttocks.
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She is happy that you think her body doesn’t need any artificial modification to be pleasing.
+					$He is happy that you think $his body doesn't need any artificial modification to be pleasing.
 				<<else>>
-					She views this as one more thing she @@.mediumorchid;didn’t have a choice in.@@
+					$He views this as one more thing $he @@.mediumorchid;didn't have a choice in.@@
 					<<set $args[0].devotion -= 1>>
 				<</if>>
 			<</if>>
 		<</if>>
 		<<if $args[0].hips < $args[1].hips>>
-			As she finishes, it occurs to her that her hips are @@.orange;<<if $args[0].hips < $args[1].hips-3>>considerably <<elseif $args[0].hips < $args[1].hips-1>>much <</if>> narrower.@@
+			As $he finishes, it occurs to $him that $his hips are @@.orange;<<if $args[0].hips < $args[1].hips-3>>considerably <<elseif $args[0].hips < $args[1].hips-1>>much <</if>> narrower.@@
 			<<if $args[0].fetish == "mindbroken">>
-				She pays it little mind.
+				$He pays it little mind.
 			<<elseif $args[0].fetish == "pregnancy" && $args[0].birthsTotal > 0>>
-				She seems a little caught up on their new size, likely by concern over future pregnancies and childbirth.
+				$He seems a little caught up on their new size, likely by concern over future pregnancies and childbirth.
 			<<elseif $args[0].devotion > 50>>
-				She gives them a little wiggle for your amusement.
+				$He gives them a little wiggle for your amusement.
 			<<elseif $args[0].devotion >= -20>>
-				She accepts your judgment that her new hips suit her better.
+				$He accepts your judgment that $his new hips suit $him better.
 				<<if $args[0].pregKnown && $args[0].birthsTotal > 0>>
-					She @@.gold;worries@@ about what this means for her coming birth.
+					$He @@.gold;worries@@ about what this means for $his coming birth.
 					<<set $args[0].trust -= 3>>
 				<</if>>
 			<<else>>
-				She seems upset, @@.mediumorchid;both from her loss of femininity and the overreach of your power,@@ that you would alter her body is such a way.
+				$He seems upset, @@.mediumorchid;both from $his loss of femininity and the overreach of your power,@@ that you would alter $his body is such a way.
 				<<if $args[0].pregKnown && $args[0].birthsTotal > 0>>
-					A @@.gold;terrifying realization@@ dawns on her; her upcoming birth is going to be much harder than her last.
+					A @@.gold;terrifying realization@@ dawns on $him; $his upcoming birth is going to be much harder than $his last.
 					<<set $args[0].trust -= 5>>
 				<</if>>
 				<<set $args[0].devotion -= 3>>
 			<</if>>
 		<</if>>
 		<<if $args[0].anusPiercing != 0 && $args[1].anusPiercing == 0>>
-			As she moves, she feels something odd in her butt. With a hesitant finger, she traces her anus and finds something that will take some getting used to; a new anal piercing.
+			As $he moves, $he feels something odd in $his butt. With a hesitant finger, $he traces $his anus and finds something that will take some getting used to; a new anal piercing.
 		<</if>>
 
 		/* tattoos */
 		<<if ($args[0].boobsTat != $args[1].boobsTat || $args[0].buttTat != $args[1].buttTat || $args[0].lipsTat != $args[1].lipsTat || $args[0].vaginaTat != $args[1].vaginaTat || $args[0].anusTat != $args[1].anusTat || $args[0].dickTat != $args[1].dickTat || $args[0].customTat != $args[1].customTat || $args[0].shouldersTat != $args[1].shouldersTat || $args[0].armsTat != $args[1].armsTat || $args[0].legsTat != $args[1].legsTat || $args[0].backTat != $args[1].backTat || $args[0].stampTat != $args[1].stampTat || $args[0].bellyTat != $args[1].bellyTat) && $args[0].fetish != "mindbroken">>
 			<br><br>
-			The changes to her tattoos were not lost on her, but compared to everything else, they were truly insignificant.
+			The changes to $his tattoos were not lost on $him, but compared to everything else, they were truly insignificant.
 		<</if>>
 		
 		<<if $args[0].fetish != "mindbroken" && $args[0].origBodyOwnerID == $args[0].ID>>
-			This is her body alright. Some things might have changed,
+			This is $his body alright. Some things might have changed,
 			<<if $args[0].devotion > 50>>
-				but she enjoyed the time they spent apart.
+				but $he enjoyed the time they spent apart.
 			<<elseif $args[0].devotion >= -20>>
 				but @@.mediumaquamarine;it's good to be home.@@
 				<<set $args[0].trust += 15>>
 			<<else>>
-				but @@.mediumaquamarine;she's where she belongs.@@ Now to get it back the way @@.mediumorchid;she likes it.@@
+				but @@.mediumaquamarine;$he's where $he belongs.@@ Now to get it back the way @@.mediumorchid;$he likes it.@@
 				<<set $args[0].trust += 30, $args[0].devotion -= 15>>
 			<</if>>
 		<</if>>
 		
 	<</if>>
 <<elseif canSee($args[0])>> /* (amputee) + sight */
-	After a while, she begins to stir, her eyes fluttering.
+	After a while, $he begins to stir, $his eyes fluttering.
 	<<if $args[0].fetish != "mindbroken">>
 		<<if _sight == 2>>
-			She just stares at the ceiling for some time, completely overwhelmed @@.green;that she can now see.@@ She's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give her such a gift.@@
+			$He just stares at the ceiling for some time, completely overwhelmed @@.green;that $he can now see.@@ $He's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give $him such a gift.@@
 			<<set $args[0].devotion += 15, $args[0].trust += 10>>
 		<<elseif _sight == -1>>
-			She just stares at the ceiling for some time, glaring at how @@.red;she can just barely see it.@@ She might be @@.gold;annoyed@@ now, but it will soon hit her that this was not what she went under for.
+			$He just stares at the ceiling for some time, glaring at how @@.red;$he can just barely see it.@@ $He might be @@.gold;annoyed@@ now, but it will soon hit $him that this was not what $he went under for.
 			<<set $args[0].trust -= 5>>
 		<<elseif _sight == 1>>
-			She just stares at the ceiling for some time, @@.green;just enjoying how clear it is.@@ She's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give her perfect vision.@@
+			$He just stares at the ceiling for some time, @@.green;just enjoying how clear it is.@@ $He's @@.hotpink;quite grateful@@ that @@.mediumaquamarine;you would give $his perfect vision.@@
 			<<set $args[0].devotion += 5, $args[0].trust += 3>>
 		<</if>>
 	<<elseif _sight == 2>>
-		She just stares at the ceiling for some time, having difficulty processing that @@.green;she can now see.@@ The gift of sight is lost upon her, as is that she is no longer in her own body.
+		$He just stares at the ceiling for some time, having difficulty processing that @@.green;$he can now see.@@ The gift of sight is lost upon $him, as is that $he is no longer in $his own body.
 	<</if>>
-	She lets out a low groan and reaches up to rub at her eyes. Or rather, she attempts to. A visible look of confusion crosses her face and she strains to sit up, but all she manages to do is wiggle, her movements reminding you of a suffocating goldfish. As the cloud of anesthetics fades, she realizes what's happened to her
+	$He lets out a low groan and reaches up to rub at $his eyes. Or rather, $he attempts to. A visible look of confusion crosses $his face and $he strains to sit up, but all $he manages to do is wiggle, $his movements reminding you of a suffocating goldfish. As the cloud of anesthetics fades, $he realizes what's happened to $him
 	<<if $args[0].fetish == "mindbroken">>
-		and is supremely unaffected by it, as her mind has already left her.
+		and is supremely unaffected by it, as $his mind has already left $him.
 		<<if _sight == 2>>
-			@@.green;Since she can now see,@@ she spends a significant amount of time just taking in the world before turning upon herself. Since she has no reference of her previous body left, she might as well have always possessed this body.
+			@@.green;Since $he can now see,@@ $he spends a significant amount of time just taking in the world before turning upon $himself. Since $he has no reference of $his previous body left, $he might as well have always possessed this body.
 			<<set _end = 1>>
 		<</if>>
 	<<elseif $args[0].devotion > 20>>
-		and begins to panic, her breaths quickening. With a visible look of concentration, her breathing slows and she tries to take stock of her new body. She quickly realizes
+		and begins to panic, $his breaths quickening. With a visible look of concentration, $his breathing slows and $he tries to take stock of $his new body. $He quickly realizes
 		<<if $args[1].amp == 1>> /*(was already an amputee)*/
-			that at least nothing about her limbs, or lack thereof, has changed.
+			that at least nothing about $his limbs, or lack thereof, has changed.
 		<<else>>
-			@@.gold;you have taken her arms and legs.@@
+			@@.gold;you have taken $his arms and legs.@@
 			<<set $args[0].trust -= 15>>
 		<</if>>
 	<<else>>
 		<<if $args[1].amp == 1>> /*(was already an amputee)*/
-			but she realizes that at least nothing about her limbs, or lack thereof, has changed.
+			but $he realizes that at least nothing about $his limbs, or lack thereof, has changed.
 		<<else>>
-			Her eyes seem to bulge; her heart monitor begins to beep faster and more insistently. Eventually, your assistant is forced to inject her with a sedative. Her eyes flutter closed and the heart monitors beeping slows to a steady pulse. Hopefully she’ll be calmer when she wakes up again, though the memory of waking without limbs will @@.gold;stick with her.@@
+			$His eyes seem to bulge; $his heart monitor begins to beep faster and more insistently. Eventually, your assistant is forced to inject $him with a sedative. $His eyes flutter closed and the heart monitors beeping slows to a steady pulse. Hopefully $he'll be calmer when $he wakes up again, though the memory of waking without limbs will @@.gold;stick with $him.@@
 			<br>
 			...
 			<br>
-			When she wakes up again, she seems stable; the cold @@.hotpink;acceptance@@ of her fate clouds her eyes.
+			When $he wakes up again, $he seems stable; the cold @@.hotpink;acceptance@@ of $his fate clouds $his eyes.
 			<<set $args[0].devotion += 5, $args[0].trust -= 15>>
 		<</if>>
 	<</if>>
 
 	<<if _end != 1>>
 		<br><br>
-		She cranes her neck to look down on herself
+		$He cranes $his neck to look down on $himself
 
 		<<if $args[0].skin != $args[1].skin && $args[0].fetish != "mindbroken">>
-			only to quickly recoil in shock when she sees her @@.coral;newly $args[0].skin skin@@.
+			only to quickly recoil in shock when $he sees $his @@.coral;newly $args[0].skin skin@@.
 			<<if $args[0].devotion > 50>>
-				She is fascinated by the change and what this means for her.
+				$He is fascinated by the change and what this means for $him.
 			<<elseif $args[0].devotion > 20>>
-				The fact that you would alter something so defining about her no longer surprises her.
+				The fact that you would alter something so defining about $him no longer surprises $him.
 			<<elseif $args[0].devotion >= -20>>
-				The fact that you would alter something so defining about her is @@.hotpink;humbling.@@
+				The fact that you would alter something so defining about $him is @@.hotpink;humbling.@@
 				<<set $args[0].devotion += 2>>
 			<<else>>
-				The fact that you would alter something so defining about her is @@.gold;terrifying.@@
+				The fact that you would alter something so defining about $him is @@.gold;terrifying.@@
 				<<set $args[0].trust -= 2>>
 			<</if>>
-			Once she regains control, she once again turns to her $args[0].skin bust
+			Once $he regains control, $he once again turns to $his $args[0].skin bust
 		<</if>>
 		
 		/*(breast changes)*/
 		<<if $args[0].boobsImplant > 0 && $args[1].boobsImplant > 0>> /*(breast implants)*/
 			and finds
 			<<if $args[0].boobsImplant >= $args[1].boobsImplant+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive implants+breast fetish)*/
-				she @@.lime;still has breast implants; implants easily bigger than her entire body.@@
+				$he @@.lime;still has breast implants; implants easily bigger than $his entire body.@@
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her silicone titans greatly excites her to the point that she can't hold back. She wriggles under her new chest boulders as an intense orgasm @@.hotpink;courses through her body.@@
+					The sheer size of $his silicone titans greatly excites $him to the point that $he can't hold back. $He wriggles under $his new chest boulders as an intense orgasm @@.hotpink;courses through $his body.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help but become aroused under the weight of her massive fake mounds. She finally stops squirming when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly eyeing her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help but become aroused under the weight of $his massive fake mounds. $He finally stops squirming when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly eyeing $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive+breast fetish)*/
-				she @@.lime;still has breast implants resting on her chest. Even if they aren't clearly implants, she can barely move under the weight of her new breasts.@@
+				$he @@.lime;still has breast implants resting on $his chest. Even if they aren't clearly implants, $he can barely move under the weight of $his new breasts.@@
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her titanic tits greatly excites her to the point that she can't hold back. She shudders against her new chest pillows as an intense orgasm @@.hotpink;rewards her for enjoying your gift.@@
+					The sheer size of $his titanic tits greatly excites $him to the point that $he can't hold back. $He shudders against $his new chest pillows as an intense orgasm @@.hotpink;rewards $him for enjoying your gift.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused under the weight of her massive fake mounds. She finally stops squirming when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly eying her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused under the weight of $his massive fake mounds. $He finally stops squirming when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly eying $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobsImplant >= $args[1].boobsImplant+20000>> /*(Extreme bigger implants)*/
-				@@.lime;a pair of absolutely enormous fake tits looming over her.@@
+				@@.lime;a pair of absolutely enormous fake tits looming over $him.@@
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now, though what lies within eludes her mind.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now, though what lies within eludes $his mind.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000>> /*(Extreme bigger breasts)*/
-				@@.lime;a pair of massive tits resting on her chest.@@<<if $args[0].fetish != "mindbroken">> As she moves, she recognizes the familiar weight of the implants at their cores.<</if>>
+				@@.lime;a pair of massive tits resting on $his chest.@@<<if $args[0].fetish != "mindbroken">> As $he moves, $he recognizes the familiar weight of the implants at their cores.<</if>>
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Bigger+breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.lime;her bust has grown.@@ She eyes her mammaries eagerly, desperate to grope them. She bites her lip and gives you a pleading look that begs you to teases her nipples. From the look on her face, you know she’ll want to put them to the test.
+					@@.lime;$his bust has grown.@@ $He eyes $his mammaries eagerly, desperate to grope them. $He bites $his lip and gives you a pleading look that begs you to teases $his nipples. From the look on $his face, you know $he'll want to put them to the test.
 				<<else>>
-					@@.lime;her breasts have expanded in size.@@ She wrestles with the fact that you have clearly not done this for her benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
+					@@.lime;$his breasts have expanded in size.@@ $He wrestles with the fact that you have clearly not done this for $his benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100>> /*(Bigger breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them closer, she seems to understand that @@.lime;they are bigger now.@@
+					breasts. As $he examines them closer, $he seems to understand that @@.lime;they are bigger now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.lime;her bust has grown.@@ She is caught off guard at the size of her new chest. She shakes her shoulders, marveling at their mass.
+					@@.lime;$his bust has grown.@@ $He is caught off guard at the size of $his new chest. $He shakes $his shoulders, marveling at their mass.
 				<<else>>
-					@@.lime;her chest is heavier than ever.@@ However, she is well aware however that these breasts are not for her benefit or pleasure. She views this as a @@.mediumorchid;cruel manipulation of her body@@ on top of what has already been done to her.
+					@@.lime;$his chest is heavier than ever.@@ However, $he is well aware however that these breasts are not for $his benefit or pleasure. $He views this as a @@.mediumorchid;cruel manipulation of $his body@@ on top of what has already been done to $him.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Smaller breasts + breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.orange;her bust has shrunk.@@ She is saddened by the loss of the beautiful weight she once bore and struggles to keep herself under control for your sake, and succeeds. @@.mediumorchid;But only barely.@@
+					@@.orange;$his bust has shrunk.@@ $He is saddened by the loss of the beautiful weight $he once bore and struggles to keep $himself under control for your sake, and succeeds. @@.mediumorchid;But only barely.@@
 				<<else>>
-					@@.orange;that her chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into her eyes@@ as her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and lets the tears finish running from her eyes before continuing her bodily inspection.
+					@@.orange;that $his chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and lets the tears finish running from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300>> /*(Smaller breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-						breasts. As she examines them closer, she seems to understand that @@.orange;they are smaller now.@@
+						breasts. As $he examines them closer, $he seems to understand that @@.orange;they are smaller now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.orange;that her chest is smaller.@@ She shrugs this off, as her devotion to you overrides any anguish this might cause.
+					@@.orange;that $his chest is smaller.@@ $He shrugs this off, as $his devotion to you overrides any anguish this might cause.
 				<<else>>
-					@@.orange;that her chest is not as large as it once was.@@ She looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of her body, but she is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
+					@@.orange;that $his chest is not as large as it once was.@@ $He looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of $his body, but $he is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
 					<<set $args[0].devotion -= 2>>
 				<</if>>
-			<<else>> /*(No change (less than a 100 cc’s of change)*/
+			<<else>> /*(No change (less than a 100 cc's of change)*/
 				<<if $args[0].devotion > 20 && $args[0].fetish != "mindbroken">>
-					a familiar chest waiting for her.
+					a familiar chest waiting for $him.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						She is pleased to see her breasts are now more pert and smooth than they were before.
+						$He is pleased to see $his breasts are now more pert and smooth than they were before.
 					<</if>>
 				<<else>>
-					that her breasts are roughly the same.
+					that $his breasts are roughly the same.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5) && $args[0].fetish != "mindbroken">> /*(younger)*/
-						Except, of course, that they are younger and more pert, something that she @@.hotpink;can't help but appreciate.@@
+						Except, of course, that they are younger and more pert, something that $he @@.hotpink;can't help but appreciate.@@
 						<<set $args[0].devotion += 2>>
 					<</if>>
 				<</if>>
@@ -1804,87 +1804,87 @@ Now you only have to wait for her to wake up.
 		<<elseif $args[0].boobsImplant > 0 && $args[1].boobsImplant == 0>>
 			and finds
 			<<if $args[0].boobsImplant >= $args[1].boobsImplant+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive implants+breast fetish)*/
-				@@.lime;a pair of massive implants towering over her.@@
+				@@.lime;a pair of massive implants towering over $him.@@
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her silicone titans greatly excites her to the point that she can't hold back. She wriggles under her new chest boulders as an intense orgasm @@.hotpink;courses through her body.@@
+					The sheer size of $his silicone titans greatly excites $him to the point that $he can't hold back. $He wriggles under $his new chest boulders as an intense orgasm @@.hotpink;courses through $his body.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused under the weight of her massive fake mounds. She finally stops squirming when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly eying her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused under the weight of $his massive fake mounds. $He finally stops squirming when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly eying $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive+breast fetish)*/
-				@@.lime;she has breast implants resting on her chest, buried under the rest of her bust.@@ Even if they aren't clearly implants, she can barely move under the weight of her new breasts.
+				@@.lime;$he has breast implants resting on $his chest, buried under the rest of $his bust.@@ Even if they aren't clearly implants, $he can barely move under the weight of $his new breasts.
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her titanic tits greatly excites her to the point that she can't hold back. She shudders against her new chest pillows as an intense orgasm @@.hotpink;rewards her for enjoying your gift.@@
+					The sheer size of $his titanic tits greatly excites $him to the point that $he can't hold back. $He shudders against $his new chest pillows as an intense orgasm @@.hotpink;rewards $him for enjoying your gift.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused under the weight of her massive fake mounds. She finally stops squirming when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly eying her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused under the weight of $his massive fake mounds. $He finally stops squirming when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly eying $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobsImplant >= $args[1].boobsImplant+20000>> /*(Extreme bigger implants)*/
-				@@.lime;a pair of absolutely enormous fake tits looming over her.@@
+				@@.lime;a pair of absolutely enormous fake tits looming over $him.@@
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now, yet not able to move as much.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now, yet not able to move as much.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000>> /*(Extreme bigger breasts)*/
-				@@.lime;a pair of massive tits resting on her chest.@@<<if $args[0].fetish != "mindbroken">> As she moves, she recognizes a familiar firmness at their cores.<</if>>
+				@@.lime;a pair of massive tits resting on $his chest.@@<<if $args[0].fetish != "mindbroken">> As $he moves, $he recognizes a familiar firmness at their cores.<</if>>
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now, yet not able to move as much.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now, yet not able to move as much.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Bigger+breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.lime;her bust has grown.@@ She eyes her mammaries eagerly, desperate to grope them. She bites her lip and gives you a pleading look that begs you to teases her nipples. From the look on her face, you know she’ll want to put them to the test.
+					@@.lime;$his bust has grown.@@ $He eyes $his mammaries eagerly, desperate to grope them. $He bites $his lip and gives you a pleading look that begs you to teases $his nipples. From the look on $his face, you know $he'll want to put them to the test.
 				<<else>>
-					@@.lime;her breasts have expanded in size.@@ She wrestles with the fact that you have clearly not done this for her benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
+					@@.lime;$his breasts have expanded in size.@@ $He wrestles with the fact that you have clearly not done this for $his benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100>> /*(Bigger breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them closer, she seems to understand that @@.lime;they are bigger now.@@
+					breasts. As $he examines them closer, $he seems to understand that @@.lime;they are bigger now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.lime;her bust has grown.@@ She is caught off guard at the size of her new chest. She shakes her shoulders, marveling at their firmness.
+					@@.lime;$his bust has grown.@@ $He is caught off guard at the size of $his new chest. $He shakes $his shoulders, marveling at their firmness.
 				<<else>>
-					@@.lime;her chest is heavy with implants.@@ However, she is well aware however that these breasts are not for her benefit or pleasure. She views this as a @@.mediumorchid;cruel manipulation of her body@@ on top of what has already been done to her.
+					@@.lime;$his chest is heavy with implants.@@ However, $he is well aware however that these breasts are not for $his benefit or pleasure. $He views this as a @@.mediumorchid;cruel manipulation of $his body@@ on top of what has already been done to $him.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Smaller breasts + breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.orange;her bust has shrunk.@@ She is saddened by the loss of the beautiful weight she once bore and struggles to keep herself under control for your sake, @@.mediumorchid;barely.@@
+					@@.orange;$his bust has shrunk.@@ $He is saddened by the loss of the beautiful weight $he once bore and struggles to keep $himself under control for your sake, @@.mediumorchid;barely.@@
 				<<else>>
-					@@.orange;her chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into her eyes@@ as her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and let the tears run from her eyes before continuing her bodily inspection.
+					@@.orange;$his chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and let the tears run from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300>> /*(Smaller breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them closer, she seems to understand that @@.orange;they are smaller now.@@
+					breasts. As $he examines them closer, $he seems to understand that @@.orange;they are smaller now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.orange;her chest is smaller.@@ She shrugs this off, as her devotion to you overrides any anguish this might cause.
+					@@.orange;$his chest is smaller.@@ $He shrugs this off, as $his devotion to you overrides any anguish this might cause.
 				<<else>>
-					@@.orange;her chest is not as large as it once was.@@ She looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of her body, but she is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
+					@@.orange;$his chest is not as large as it once was.@@ $He looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of $his body, but $he is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
 					<<set $args[0].devotion -= 2>>
 				<</if>>
-			<<else>> /*(No change (less than a 100 cc’s of change)*/
+			<<else>> /*(No change (less than a 100 cc's of change)*/
 				<<if $args[0].fetish == "mindbroken">>
-					the same chest she had before, except maybe firmer than her addled brain remembers.
+					the same chest $he had before, except maybe firmer than $his addled brain remembers.
 				<<elseif $args[0].devotion > 20>>
-					a familiar chest waiting for her. She quickly realizes her mistake once she jiggles them.
+					a familiar chest waiting for $him. $He quickly realizes $his mistake once $he jiggles them.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						She is pleased to see her breasts are now more pert and smooth than they were before.
+						$He is pleased to see $his breasts are now more pert and smooth than they were before.
 					<</if>>
 				<<else>>
-					that her breasts are roughly the same. She quickly realizes her mistake once she jiggles them.
+					that $his breasts are roughly the same. $He quickly realizes $his mistake once $he jiggles them.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						Except, of course, that they are younger and more pert, something that she @@.hotpink;can't help but appreciate.@@
+						Except, of course, that they are younger and more pert, something that $he @@.hotpink;can't help but appreciate.@@
 						<<set $args[0].devotion += 2>>
 					<</if>>
 				<</if>>
@@ -1892,81 +1892,81 @@ Now you only have to wait for her to wake up.
 		<<elseif $args[0].boobsImplant == 0 && $args[1].boobsImplant > 0>>
 			<<if $args[0].boobs <= 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>>/*flat+fetish*/
 				<<if $args[0].devotion > 20>>
-					and finds @@.orange;not only her implants gone, but her breasts entirely.@@ She is saddened by her flat chest and struggles to keep herself under control for your sake, @@.mediumorchid;barely.@@
+					and finds @@.orange;not only $his implants gone, but $his breasts entirely.@@ $He is saddened by $his flat chest and struggles to keep $himself under control for your sake, @@.mediumorchid;barely.@@
 				<<else>>
-					and finds that @@.orange;her implants are gone, along with the rest of her breasts.@@ @@.mediumorchid;Tears leap into her eyes@@ as her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and stop the tears that are running from her eyes before continuing her bodily inspection.
+					and finds that @@.orange;$his implants are gone, along with the rest of $his breasts.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and stop the tears that are running from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= 300>> /*flat*/
 				<<if $args[0].fetish == "mindbroken">>
-					and finds that @@.orange;her implants and breasts are completely gone.@@ This draws no reaction from her.
+					and finds that @@.orange;$his implants and breasts are completely gone.@@ This draws no reaction from $him.
 				<<elseif $args[0].devotion > 20>>
-					and finds nothing. @@.orange;Not only have her implants been removed, but she's been left completely flat.@@ It is what it is.
+					and finds nothing. @@.orange;Not only have $his implants been removed, but $he's been left completely flat.@@ It is what it is.
 				<<else>>
-					and finds nothing. @@.orange;Not only have her implants been removed, but she's been left completely flat.@@ <<if $arcologies[0].FSSlimnessEnthusiast == "unset">>She knows much of society will view her as a lesser person and a part of her feels the same.<</if>> This feels like a cruel manipulation of her body and she @@.mediumorchid;hates you@@ a little more for it.
+					and finds nothing. @@.orange;Not only have $his implants been removed, but $he's been left completely flat.@@ <<if $arcologies[0].FSSlimnessEnthusiast == "unset">>$He knows much of society will view $him as a lesser person and a part of $him feels the same.<</if>> This feels like a cruel manipulation of $his body and $he @@.mediumorchid;hates you@@ a little more for it.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive+breast fetish)*/
-				@@.lime;and finds nothing but breast.@@ As she wiggles back and forth, she can just make out that she no longer has implants.
+				@@.lime;and finds nothing but breast.@@ As $he wiggles back and forth, $he can just make out that $he no longer has implants.
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her titanic tits greatly excites her to the point that she can't hold back. She shudders against her new chest pillows as an intense orgasm @@.hotpink;rewards her for enjoying your gift.@@
+					The sheer size of $his titanic tits greatly excites $him to the point that $he can't hold back. $He shudders against $his new chest pillows as an intense orgasm @@.hotpink;rewards $him for enjoying your gift.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused under the weight of her massive fake mounds. She finally stops squirming when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly eying her balloons proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused under the weight of $his massive fake mounds. $He finally stops squirming when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly eying $his balloons proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000>> /*(Extreme bigger breasts)*/
-				@@.lime;and finds a pair of massive tits resting on her chest.@@<<if $args[0].fetish != "mindbroken">> As she moves, she can just make out that she no longer has implants.<</if>>
+				@@.lime;and finds a pair of massive tits resting on $his chest.@@<<if $args[0].fetish != "mindbroken">> As $he moves, $he can just make out that $he no longer has implants.<</if>>
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Bigger+breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.lime;and finds her tits are bigger than ever, yet implant free.@@ She eyes her mammaries eagerly, desperate to grope them. She bites her lip and gives you a pleading look that begs you to teases her nipples. From the look on her face, you know she’ll want to put them to the test.
+					@@.lime;and finds $his tits are bigger than ever, yet implant free.@@ $He eyes $his mammaries eagerly, desperate to grope them. $He bites $his lip and gives you a pleading look that begs you to teases $his nipples. From the look on $his face, you know $he'll want to put them to the test.
 				<<else>>
-					@@.lime;and finds that her breasts have expanded in size, yet lack implants. She wrestles with the fact that you have clearly not done this for her benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
+					@@.lime;and finds that $his breasts have expanded in size, yet lack implants. $He wrestles with the fact that you have clearly not done this for $his benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100>> /*(Bigger breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them, she seems to understand that @@.lime;they are bigger now.@@
+					breasts. As $he examines them, $he seems to understand that @@.lime;they are bigger now.@@
 				<<elseif $args[0].devotion > 20>>
-					@@.lime;and finds her bust has grown.@@ She is caught off guard at the size of her new chest. She shakes her shoulders, marveling at the motion of silicone free flesh.
+					@@.lime;and finds $his bust has grown.@@ $He is caught off guard at the size of $his new chest. $He shakes $his shoulders, marveling at the motion of silicone free flesh.
 				<<else>>
-					@@.lime;and finds her chest is heavier than ever, and not because of silicone.@@ However, she is well aware however that these breasts are not for her benefit or pleasure. She views this as a @@.mediumorchid;cruel manipulation of her body@@ on top of what has already been done to her.
+					@@.lime;and finds $his chest is heavier than ever, and not because of silicone.@@ However, $he is well aware however that these breasts are not for $his benefit or pleasure. $He views this as a @@.mediumorchid;cruel manipulation of $his body@@ on top of what has already been done to $him.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Smaller breasts + breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					@@.orange;and finds her bust has shrunk.@@ She is saddened by the loss of her implants and struggles to keep herself under control for your sake, @@.mediumorchid;barely.@@
+					@@.orange;and finds $his bust has shrunk.@@ $He is saddened by the loss of $his implants and struggles to keep $himself under control for your sake, @@.mediumorchid;barely.@@
 				<<else>>
-					@@.orange;and finds that her chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into her eyes@@ as her natural breasts begin to quiver<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and let the tears run from her eyes before continuing her bodily inspection.
+					@@.orange;and finds that $his chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his natural breasts begin to quiver<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and let the tears run from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300>> /*(Smaller breasts)*/
 				<<if $args[0].devotion > 20>>
-					@@.orange;and finds that her implants have been removed.@@ She shrugs this off, as her devotion to you overrides any anguish this might cause.
+					@@.orange;and finds that $his implants have been removed.@@ $He shrugs this off, as $his devotion to you overrides any anguish this might cause.
 				<<else>>
-					@@.orange;and finds that her chest is not as large as it once was.@@ She looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of her body, but she is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
+					@@.orange;and finds that $his chest is not as large as it once was.@@ $He looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of $his body, but $he is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
 					<<set $args[0].devotion -= 2>>
 				<</if>>
-			<<else>> /*(No change (less than a 100 cc’s of change)*/
+			<<else>> /*(No change (less than a 100 cc's of change)*/
 				<<if $args[0].fetish == "mindbroken">>
-					and finds nothing off about her chest.
+					and finds nothing off about $his chest.
 				<<elseif $args[0].devotion > 20>>
-					and finds a familiar chest waiting for her, albeit @@.coral;implant free.@@
+					and finds a familiar chest waiting for $him, albeit @@.coral;implant free.@@
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						She is pleased to see her breasts are now more pert and smooth than they were before.
+						$He is pleased to see $his breasts are now more pert and smooth than they were before.
 					<</if>>
 				<<else>>
-					and finds that her breasts are roughly the same, save for their @@.coral;missing implants.@@
+					and finds that $his breasts are roughly the same, save for their @@.coral;missing implants.@@
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						Except, of course, that they are younger and more pert, something that she @@.hotpink;can't help but appreciate.@@
+						Except, of course, that they are younger and more pert, something that $he @@.hotpink;can't help but appreciate.@@
 						<<set $args[0].devotion += 2>>
 					<</if>>
 				<</if>>
@@ -1974,83 +1974,83 @@ Now you only have to wait for her to wake up.
 		<<else>>
 			<<if $args[0].boobs <= 300 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>>/*flat+fetish*/
 				<<if $args[0].devotion > 20>>
-					and finds @@.orange;no tits at all.@@ She is saddened by her flat chest and struggles to keep herself under control for your sake, and succeeds. @@.mediumorchid;Barely.@@
+					and finds @@.orange;no tits at all.@@ $He is saddened by $his flat chest and struggles to keep $himself under control for your sake, and succeeds. @@.mediumorchid;Barely.@@
 				<<else>>
-					and finds @@.orange;no tits at all.@@ @@.mediumorchid;Tears leap into her eyes@@ as her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and let the tears run from her eyes before continuing her bodily inspection.
+					and finds @@.orange;no tits at all.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and let the tears run from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= 300 && $args[1].boobs > 300>> /*flat*/
 				<<if $args[0].fetish == "mindbroken">>
-					and @@.orange;finds nothing.@@ She doesn't seem to care, though.
+					and @@.orange;finds nothing.@@ $He doesn't seem to care, though.
 				<<elseif $args[0].devotion > 20>>
-					and finds nothing; @@.orange;her breasts are completely gone.@@ At least it's a literal weight off her chest.
+					and finds nothing; @@.orange;$his breasts are completely gone.@@ At least it's a literal weight off $his chest.
 				<<else>>
-					and finds nothing; @@.orange;her breasts are completely gone.@@ <<if $arcologies[0].FSSlimnessEnthusiast == "unset">>She knows much of society will view her as a lesser person and a part of her feels the same.<</if>> This feels like a cruel manipulation of her body and she @@.mediumorchid;hates you@@ a little more for it.
+					and finds nothing; @@.orange;$his breasts are completely gone.@@ <<if $arcologies[0].FSSlimnessEnthusiast == "unset">>$He knows much of society will view $him as a lesser person and a part of $him feels the same.<</if>> This feels like a cruel manipulation of $his body and $he @@.mediumorchid;hates you@@ a little more for it.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Massive+breast fetish)*/
-				and finds @@.lime;nothing but breast.@@ As she wiggles back and forth beneath their mass, she can make out that they are all natural.
+				and finds @@.lime;nothing but breast.@@ As $he wiggles back and forth beneath their mass, $he can make out that they are all natural.
 				<<if $args[0].devotion >= -20>>
-					The sheer size of her titanic tits greatly excites her to the point that she can't hold back. She shudders against her new chest pillows as an intense orgasm @@.hotpink;rewards her for enjoying your gift.@@
+					The sheer size of $his titanic tits greatly excites $him to the point that $he can't hold back. $He shudders against $his new chest pillows as an intense orgasm @@.hotpink;rewards $him for enjoying your gift.@@
 					<<set $args[0].devotion += 5>>
 				<<else>>
-					She tries desperately to control her mounting excitement, reminding herself that these breasts were not given to her for her own enjoyment. However, she can’t help become aroused under the weight of her massive mammaries. She finally stops squirming when she sees your wolfish grin. Deep down, @@.hotpink;she's thankful,@@ and the way she's lovingly eying her chest pillows proves it.
+					$He tries desperately to control $his mounting excitement, reminding $himself that these breasts were not given to $him for $his own enjoyment. However, $he can't help become aroused under the weight of $his massive mammaries. $He finally stops squirming when $he sees your wolfish grin. Deep down, @@.hotpink;$he's thankful,@@ and the way $he's lovingly eying $his chest pillows proves it.
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs >= $args[1].boobs+20000>> /*(Extreme bigger breasts)*/
-				and finds a @@.lime;pair of massive tits resting on her chest.@@<<if $args[0].fetish != "mindbroken">> As she moves, she can clearly tell they are completely natural.<</if>>
+				and finds a @@.lime;pair of massive tits resting on $his chest.@@<<if $args[0].fetish != "mindbroken">> As $he moves, $he can clearly tell they are completely natural.<</if>>
 				<<if $args[0].fetish == "mindbroken">>
-					As she examines her breasts, she seems to understand that they are much bigger now.
+					As $he examines $his breasts, $he seems to understand that they are much bigger now.
 				<<elseif $args[0].devotion > 20>>
-					This new size excites her and she looks forward to experimenting with them.
+					This new size excites $him and $he looks forward to experimenting with them.
 				<<else>>
-					This new size is a @@.gold;massive inconvenience@@ for her and it @@.mediumorchid.infuriates her@@ that you would do such a thing to her.
+					This new size is a @@.gold;massive inconvenience@@ for $him and it @@.mediumorchid.infuriates $him@@ that you would do such a thing to $him.
 					<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Bigger+breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					and finds @@.lime;her tits are bigger than ever.@@ She eyes her mammaries eagerly, desperate to grope them. She bites her lip and gives you a pleading look that begs you to teases her nipples. From the look on her face, you know she’ll want to put them to the test.
+					and finds @@.lime;$his tits are bigger than ever.@@ $He eyes $his mammaries eagerly, desperate to grope them. $He bites $his lip and gives you a pleading look that begs you to teases $his nipples. From the look on $his face, you know $he'll want to put them to the test.
 				<<else>>
-					and finds @@.lime;her breasts have expanded in size.@@ She wrestles with the fact that you have clearly not done this for her benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
+					and finds @@.lime;$his breasts have expanded in size.@@ $He wrestles with the fact that you have clearly not done this for $his benefit, @@.hotpink;but decides this is definitely better than the alternative.@@
 					<<set $args[0].devotion += 5>>
 				<</if>>
 			<<elseif $args[0].boobs > $args[1].boobs+100>> /*(Bigger breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					and finds breasts. As she examines them, she seems to understand that @@.lime;they are bigger now.@@
+					and finds breasts. As $he examines them, $he seems to understand that @@.lime;they are bigger now.@@
 				<<elseif $args[0].devotion > 20>>
-					and finds @@.lime;her bust has grown.@@ She is caught off guard at the size of her new chest. She shakes her shoulders, marveling at the motion of her soft flesh.
+					and finds @@.lime;$his bust has grown.@@ $He is caught off guard at the size of $his new chest. $He shakes $his shoulders, marveling at the motion of $his soft flesh.
 				<<else>>
-					and finds that @@.lime;her chest is heavier than ever.@@ However, she is well aware however that these breasts are not for her benefit or pleasure. She views this as a @@.mediumorchid;cruel manipulation of her body@@ on top of what has already been done to her.
+					and finds that @@.lime;$his chest is heavier than ever.@@ However, $he is well aware however that these breasts are not for $his benefit or pleasure. $He views this as a @@.mediumorchid;cruel manipulation of $his body@@ on top of what has already been done to $him.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300 && $args[0].fetish == "boobs" && $args[0].fetishKnown>> /*(Smaller breasts + breast fetish)*/
 				<<if $args[0].devotion > 20>>
-					and finds that @@.orange;her bust has shrunk.@@ She is saddened by her smaller chest and struggles to keep herself under control for your sake, @@.mediumorchid;barely.@@
+					and finds that @@.orange;$his bust has shrunk.@@ $He is saddened by $his smaller chest and struggles to keep $himself under control for your sake, @@.mediumorchid;barely.@@
 				<<else>>
-					and finds that @@.orange;her chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into her eyes@@ as her her shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. She pauses to gather herself together and let the tears run from her eyes before continuing her bodily inspection.
+					and finds that @@.orange;$his chest is not as large as it once was.@@ @@.mediumorchid;Tears leap into $his eyes@@ as $his shoulders begin to shake<<if $args[0].voice != 0>> and sobs echo about the room<</if>>. $He pauses to gather $himself together and let the tears run from $his eyes before continuing $his bodily inspection.
 				<</if>>
 				<<set $args[0].devotion -= 5>>
 			<<elseif $args[0].boobs <= $args[1].boobs-100 && $args[1].boobs > 300>> /*(Smaller breasts)*/
 				<<if $args[0].fetish == "mindbroken">>
-					breasts. As she examines them, she seems to understand @@.orange;that they smaller now.@@
+					breasts. As $he examines them, $he seems to understand @@.orange;that they smaller now.@@
 				<<elseif $args[0].devotion > 20>>
-					that @@.orange;her breasts are smaller.@@ She shrugs this off, as her devotion to you overrides any anguish this might cause.
+					that @@.orange;$his breasts are smaller.@@ $He shrugs this off, as $his devotion to you overrides any anguish this might cause.
 				<<else>>
-					that @@.orange;her chest is not as large as it once was.@@ She looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of her body, but she is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
+					that @@.orange;$his chest is not as large as it once was.@@ $He looks at you with @@.mediumorchid;anger<<if $arcologies[0].FSSlimnessEnthusiast == "unset">>@@ as this is not only a cruel manipulation of $his body, but $he is now less of a woman in the eyes of a vast majority of society.<<else>>.@@<</if>>
 					<<set $args[0].devotion -= 2>>
 				<</if>>
-			<<else>> /*(No change (less than a 100 cc’s of change)*/
+			<<else>> /*(No change (less than a 100 cc's of change)*/
 				<<if $args[0].fetish == "mindbroken">>
 						nothing out of the ordinary.
 				<<elseif $args[0].devotion > 20>>
-					a familiar chest waiting for her.
+					a familiar chest waiting for $him.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						She is pleased to see her breasts are now more pert and smooth than they were before.
+						$He is pleased to see $his breasts are now more pert and smooth than they were before.
 					<</if>>
 				<<else>>
-					that her breasts are roughly the same.
+					that $his breasts are roughly the same.
 					<<if ($args[0].physicalAge < $args[1].physicalAge-5)>> /*(younger)*/
-						Except, of course, that they are younger and more pert, something that she @@.hotpink;can't help but appreciate.@@
+						Except, of course, that they are younger and more pert, something that $he @@.hotpink;can't help but appreciate.@@
 						<<set $args[0].devotion += 2>>
 					<</if>>
 				<</if>>
@@ -2058,87 +2058,87 @@ Now you only have to wait for her to wake up.
 		<</if>>
 		<<if $args[0].areolaePiercing != 0 && $args[1].areolaePiercing == 0>>
 			<<if $args[0].fetish != "mindbroken" && $args[0].boobs >= 10000>>
-				She can just barely catch the glimmer of the piercings adorning her areolae.
+				$He can just barely catch the glimmer of the piercings adorning $his areolae.
 			<<elseif $args[0].fetish == "mindbroken" && $args[0].boobs >= 10000>>
 				/* out of sight, out of mind */
 			<<elseif $args[0].boobs >= 1000>>
-				She gawks at the piercings adorning her areolae for a spell.
+				$He gawks at the piercings adorning $his areolae for a spell.
 			<<else>>
-				She can't take her eyes off the piercings now adorning her areolae.
+				$He can't take $his eyes off the piercings now adorning $his areolae.
 			<</if>>
 		<</if>>
 
 		/*(if lactation status has changed)*/
-		<<if $args[0].lactation > 0 && $args[1].lactation == 0>> /*(lactating now, wasn’t before)*/
-			As she wiggles her breasts,
+		<<if $args[0].lactation > 0 && $args[1].lactation == 0>> /*(lactating now, wasn't before)*/
+			As $he wiggles $his breasts,
 			<<if $args[0].lactation == 1>>
-				@@.coral;solitary drops of milk begin to drop from her nipples.@@
+				@@.coral;solitary drops of milk begin to drop from $his nipples.@@
 			<<else>>
-				@@.coral;steady streams of milk start to flow from her nipples.@@
+				@@.coral;steady streams of milk start to flow from $his nipples.@@
 			<</if>>
 			<<if $args[0].fetish == "mindbroken">>
-				She shudders at the wet feeling.
+				$He shudders at the wet feeling.
 			<<elseif $args[0].devotion > 20>>
-				She is delighted by the fact that her breasts now produce milk. This is a gift she will happily use for your benefit.
+				$He is delighted by the fact that $his breasts now produce milk. This is a gift $he will happily use for your benefit.
 			<<else>>
-				She is irritated that you have altered her body to produce milk.
+				$He is irritated that you have altered $his body to produce milk.
 			<</if>>
 		<<elseif $args[0].fetish == "mindbroken">>
 		<<elseif $args[0].lactation > 1 && $args[1].lactation == 1>>
-			She realizes her breasts are @@.lime;rapidly producing milk.@@ She groans at the unfamiliar pressure.
+			$He realizes $his breasts are @@.lime;rapidly producing milk.@@ $He groans at the unfamiliar pressure.
 		<<elseif $args[0].lactation == 1 && $args[1].lactation == 2>>
-			She realizes that her breasts are @@.orange;producing less milk.@@ She seems a little relieved.
+			$He realizes that $his breasts are @@.orange;producing less milk.@@ $He seems a little relieved.
 		<<elseif $args[0].lactation == 0 && $args[1].lactation > 0>>
-			She realizes that her breasts @@.orange;no longer produce milk.@@ She doesn’t show much reaction to this change.
+			$He realizes that $his breasts @@.orange;no longer produce milk.@@ $He doesn't show much reaction to this change.
 		<<elseif $args[0].lactation > 0 && $args[1].lactation > 0>>
-			The familiar feeling of fullness in her breasts tells her she's producing as much milk as ever.
+			The familiar feeling of fullness in $his breasts tells $him $he's producing as much milk as ever.
 		<</if>>
 
 		<<if $args[0].nipples != $args[1].nipples && $args[0].fetish != "mindbroken">> /*(if nipples have changed shape)*/
-			Once she is satisfied with her tits, she shifts herself to get a better view of her nipples, having noticed that they don’t look quite the same as before.
+			Once $he is satisfied with $his tits, $he shifts $himself to get a better view of $his nipples, having noticed that they don't look quite the same as before.
 			<<switch $args[0].nipples>>
 			<<case "fuckable">>
-				She doesn't seem to understand where they have gone.
+				$He doesn't seem to understand where they have gone.
 			<<case "tiny">>
-				She's a little depressed by @@.orange;how tiny they've become.@@
+				$He's a little depressed by @@.orange;how tiny they've become.@@
 			<<case "puffy">>
-				She giggle a little at the sight of how @@.lime;puffy they are.@@
+				$He giggle a little at the sight of how @@.lime;puffy they are.@@
 			<<case "huge">>
-				She gasps at the sight of the @@.lime;two towering protrusions@@ jutting out from her breasts.
+				$He gasps at the sight of the @@.lime;two towering protrusions@@ jutting out from $his breasts.
 			<<case "partially inverted">>
-				Due to the nature of her @@.lime;partially inverted nipples,@@ she can't get a good look at them.
+				Due to the nature of $his @@.lime;partially inverted nipples,@@ $he can't get a good look at them.
 			<<case "inverted">>
-				Due to the nature of her @@.lime;inverted nipples,@@ she can't get a good look at them.
+				Due to the nature of $his @@.lime;inverted nipples,@@ $he can't get a good look at them.
 			<<default>>
-				They can only be called normal, though she can still call them cute.
+				They can only be called normal, though $he can still call them cute.
 			<</switch>>
 			<<if $args[0].nipplesPiercing != 0 && $args[1].nipplesPiercing == 0>>
-				She also notices they are pierced, judging by how her eyes follow the movement of the piercings.
+				$He also notices they are pierced, judging by how $his eyes follow the movement of the piercings.
 			<</if>>
 		<</if>>
 
 		/*(if breasts have changed shape)*/
 		<<if $args[0].boobShape != $args[1].boobShape && $args[0].boobs > 300 && $args[0].fetish != "mindbroken">>
-			As she settles back down, she discovers they no longer rest the same either;
+			As $he settles back down, $he discovers they no longer rest the same either;
 			<<if $args[0].boobShape == "saggy">> /*(drooping or older)*/
-				@@.red;they now sag to her sides,@@ disappointing her.
+				@@.red;they now sag to $his sides,@@ disappointing $him.
 			<<elseif $args[0].boobShape == "downward-facing">>
-				@@.red;they now face downwards,@@ disappointing her.
+				@@.red;they now face downwards,@@ disappointing $him.
 			<<elseif $args[0].boobShape == "wide-set">>
-				@@.green;they settle heavily to either side of her body.@@
+				@@.green;they settle heavily to either side of $his body.@@
 			<<elseif $args[0].boobShape == "perky">>
-				@@.green;they stick out from her chest.@@
+				@@.green;they stick out from $his chest.@@
 				<<if $args[0].devotion > 20>>
-					She jostles them playfully.
+					$He jostles them playfully.
 				<<else>>
-					She is intrigued by this development.
+					$He is intrigued by this development.
 				<</if>>
 			<<elseif $args[0].boobShape == "torpedo-shaped">>
-				@@.green;they stick out far from her chest.@@
+				@@.green;they stick out far from $his chest.@@
 				<<if $args[0].devotion > 20>>
-					She squirms to make them sway about.
+					$He squirms to make them sway about.
 				<<else>>
-					She is intrigued by this development.
+					$He is intrigued by this development.
 				<</if>>
 				<<else>>
 				@@.green;they can only be called normal.@@
@@ -2148,18 +2148,18 @@ Now you only have to wait for her to wake up.
 		<br><br>
 		<<if $args[0].fetish == "mindbroken">>
 		<<elseif $args[1].voice == 0>>
-			After a moment, she turns to you and gestures for a mirror.
+			After a moment, $he turns to you and gestures for a mirror.
 			<<if $args[0].voice != 0>>
-				You gesture as if you couldn't hear her, to which she squeaks in response. It immediately @@.hotpink;dawns on her@@ what this means. She @@.mediumaquamarine;thanks you profusely@@ before asking for a mirror.
+				You gesture as if you couldn't hear $him, to which $he squeaks in response. It immediately @@.hotpink;dawns on $him@@ what this means. $He @@.mediumaquamarine;thanks you profusely@@ before asking for a mirror.
 				<<set $args[0].devotion += 5, $args[0].trust += 10>>
 			<</if>>
 		<<else>>
-			After a moment, she turns to speak to you,
+			After a moment, $he turns to speak to you,
 			<<if $args[0].voice == 0>>
-				but can’t. She tries again, frowning. She struggles to make any sound at all as tears well in her eyes, but no sobs can be heard as her shoulder stubs begin to @@.gold;shake.@@ After a bit, wiggles @@.mediumorchid;somberly@@ for a mirror.
+				but can't. $He tries again, frowning. $He struggles to make any sound at all as tears well in $his eyes, but no sobs can be heard as $his shoulder stubs begin to @@.gold;shake.@@ After a bit, wiggles @@.mediumorchid;somberly@@ for a mirror.
 				<<set $args[0].devotion -= 5, $args[0].trust -= 5>>
 			<<elseif $args[0].voice != $args[1].voice>>
-				and starts at her new
+				and starts at $his new
 				<<if $args[0].voice > $args[1].voice>>
 					higher pitched
 				<<elseif $args[0].voice < $args[1].voice>>
@@ -2172,208 +2172,208 @@ Now you only have to wait for her to wake up.
 		<</if>>
 		
 		<br><br>
-		You depress a button and a long, body length mirror slides up from the floor near the wall. Your slave, with the help of an assistant, sits up against the side of the gurney and sees her entire body for the first time.
+		You depress a button and a long, body length mirror slides up from the floor near the wall. Your slave, with the help of an assistant, sits up against the side of the gurney and sees $his entire body for the first time.
 		<br><br>
 		
-		Her eyes lock onto her face.
+		$His eyes lock onto $his face.
 
 		<<if $args[0].fetish != "mindbroken">>
 			<<if $args[0].race != $args[1].race>> /*(race changes)*/
-				It immediately strikes her that she is @@.coral;no longer <<print $args[1].race>>.@@ Her new $args[0].race body
+				It immediately strikes $him that $he is @@.coral;no longer <<print $args[1].race>>.@@ $His new $args[0].race body
 				<<if $args[0].devotion > 50>>
-					intrigues and delights her. She is happy that you invested in her appearance in such an interesting way.
+					intrigues and delights $him. $He is happy that you invested in $his appearance in such an interesting way.
 				<<elseif $args[0].devotion > 20>>
-					@@.mediumorchid;disturbs her.@@ She is @@.gold;shaken@@ by such a drastic change.
+					@@.mediumorchid;disturbs $him.@@ $He is @@.gold;shaken@@ by such a drastic change.
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<<else>>
-					@@.mediumorchid;disgusts and angers her.@@ One of the only parts of her identity she had left has now been stripped from her.
+					@@.mediumorchid;disgusts and angers $him.@@ One of the only parts of $his identity $he had left has now been stripped from $him.
 					<<set $args[0].devotion -= 20>>
 				<</if>>
 			<<elseif $args[0].devotion <= 50>>
-				It immediately strikes her that she is still <<print $args[0].race>>. She's @@.hotpink;relieved@@ that you didn't take such a deep part of her identity from her.
+				It immediately strikes $him that $he is still <<print $args[0].race>>. $He's @@.hotpink;relieved@@ that you didn't take such a deep part of $his identity from $him.
 				<<set $args[0].devotion += 1>>
 			<</if>>
 		<</if>>
 		
 		<<if $args[0].bald == 1 && $args[1].bald == 0>> /*(+baldness)*/
-			Something about her head catches her eye; @@.red;she is now bald.@@ This
+			Something about $his head catches $his eye; @@.red;$he is now bald.@@ This
 			<<if $args[0].fetish == "mindbroken">>
-				catches her attention, and she spends some time shaking her head to feel the air on her scalp.
+				catches $his attention, and $he spends some time shaking $his head to feel the air on $his scalp.
 			<<elseif $args[0].devotion > 20>>
 				feels fun and interesting.
 			<<else>>
-				feels like a gross imposition and she @@.mediumorchid;scowls at you accusingly,@@ for this is one less thing that marks her as a person that you have taken from her.
+				feels like a gross imposition and $he @@.mediumorchid;scowls at you accusingly,@@ for this is one less thing that marks $him as a person that you have taken from $him.
 				<<set $args[0].devotion -= 3>>
 			<</if>>
 		<<elseif $args[0].bald == 0 && $args[1].bald == 1>> /*(-baldness)*/
-			Something about her head catches her eye; @@.green;she now has hair.@@ This
+			Something about $his head catches $his eye; @@.green;$he now has hair.@@ This
 			<<if $args[0].fetish == "mindbroken">>
-				catches her attention, and she spends some time shaking her head to feel to make her hair move.
+				catches $his attention, and $he spends some time shaking $his head to feel to make $his hair move.
 			<<elseif $args[0].devotion >= -20>>
-				makes her @@.hotpink;squeal with delight.@@ She plays with her new hair, enjoying how it feels as she moves her head.
+				makes $him @@.hotpink;squeal with delight.@@ $He plays with $his new hair, enjoying how it feels as $he moves $his head.
 				<<set $args[0].devotion += 3>>
 			<<else>>
-				surprises her. She is not happy with your doing something like this while she had no control of it, but under the circumstances there are far worse things to have than hair.
+				surprises $him. $He is not happy with your doing something like this while $he had no control of it, but under the circumstances there are far worse things to have than hair.
 			<</if>>
 		<<elseif $args[0].bald == 1 && $args[1].bald == 1>>
-			Something about her head catches her eye, but it turned out to be nothing. She is as bald as ever.
+			Something about $his head catches $his eye, but it turned out to be nothing. $He is as bald as ever.
 		<<else>>
-			Something about her head catches her 
+			Something about $his head catches $his 
 			<<if $args[0].hColor != $args[1].hColor>>
-				eye; she @@.coral;now has $args[0].hColor hair.@@
+				eye; $he @@.coral;now has $args[0].hColor hair.@@
 			<<else>>
-				eye, but it was a trick of the light; her hair is more or less the same.
+				eye, but it was a trick of the light; $his hair is more or less the same.
 			<</if>>
 		<</if>>
 
 		<<if $args[0].sexualFlaw == "oral fixation" && $args[0].lips > $args[1].lips+10>> /* (bigger lip+oral fixation) */
-			She slowly puckers her @@.lime;plush pillows.@@ A blush blossoms over her face and the beeping of her heart monitor speeds up slightly. You know that she’ll put them to good use.
+			$He slowly puckers $his @@.lime;plush pillows.@@ A blush blossoms over $his face and the beeping of $his heart monitor speeds up slightly. You know that $he'll put them to good use.
 			<<if $args[0].devotion <= 20>>
-				She pauses, and begins to @@.hotpink;hesitantly smile@@ as she runs her tongue across her lovely new lips.
+				$He pauses, and begins to @@.hotpink;hesitantly smile@@ as $he runs $his tongue across $his lovely new lips.
 			<</if>>
 		<<elseif $args[0].lips > $args[1].lips+10>>
-			Her eyes lock on her lips and she pauses for a moment,<<if $args[0].fetish == "mindbroken">> as if<</if>> noticing that @@.lime;they are larger now@@ than they once were.
+			$His eyes lock on $his lips and $he pauses for a moment,<<if $args[0].fetish == "mindbroken">> as if<</if>> noticing that @@.lime;they are larger now@@ than they once were.
 		<<elseif $args[0].sexualFlaw == "oral fixation" && $args[0].lips < $args[1].lips-10>> /* (smaller lip+oral fixation) */
 			<<if $args[0].devotion > 20>>
-				Her eyes lock on her lips and she recoils. A second later, she runs her tongue across them to confirm her fear. Her pride and joy are @@.orange;gone.@@ She lets out a sniff and @@.mediumorchid;tears begin to roll down her cheeks.@@
+				$His eyes lock on $his lips and $he recoils. A second later, $he runs $his tongue across them to confirm $his fear. $His pride and joy are @@.orange;gone.@@ $He lets out a sniff and @@.mediumorchid;tears begin to roll down $his cheeks.@@
 				<<set $args[0].devotion -= 10>>
 			<<else>>
-				Her eyes lock on her lips before she turns her head from the mirror and <<if $args[0].voice == 0>>attempted <</if>>sobs well up from her. For someone who values her lips like her, for them @@.orange;to be gone@@ is a truly @@.mediumorchid;terrible fate.@@
+				$His eyes lock on $his lips before $he turns $his head from the mirror and <<if $args[0].voice == 0>>attempted <</if>>sobs well up from $him. For someone who values $his lips like $him, for them @@.orange;to be gone@@ is a truly @@.mediumorchid;terrible fate.@@
 				<<set $args[0].devotion -= 20>>
 			<</if>>
 		<<elseif $args[0].lips < $args[1].lips-10>>
-			Her eyes lock on her lips and she pauses for a moment,<<if $args[0].fetish == "mindbroken">> as if<</if>> noticing that @@.orange;they are smaller@@ now than they once were.
+			$His eyes lock on $his lips and $he pauses for a moment,<<if $args[0].fetish == "mindbroken">> as if<</if>> noticing that @@.orange;they are smaller@@ now than they once were.
 		<<else>>
-			Her eyes lock on her lips and she pauses for a moment,<<if $args[0].fetish == "mindbroken">> having found nothing different about them<<else>> finding them familiar enough<</if>>.
+			$His eyes lock on $his lips and $he pauses for a moment,<<if $args[0].fetish == "mindbroken">> having found nothing different about them<<else>> finding them familiar enough<</if>>.
 		<</if>>
 		<<if $args[0].lipsPiercing != 0 && $args[1].lipsPiercing == 0>>
-			She touches the tip of her tongue to her new piercing.
+			$He touches the tip of $his tongue to $his new piercing.
 		<</if>>
 		<<if $args[0].teeth == "removable" && $args[1].teeth != "removable">> /* no teeth */
-			A look of confusion crosses her face, her brow furrowing slightly. You see her work her jaw for moment before she turns her head and spits out a set of dentures.
+			A look of confusion crosses $his face, $his brow furrowing slightly. You see $him work $his jaw for moment before $he turns $his head and spits out a set of dentures.
 			<<if $args[0].devotion <= -20 && $args[0].fetish != "mindbroken">>
-				She @@.mediumorchid;glowers@@ at them, knowing full well they'll be back in her mouth shortly.
+				$He @@.mediumorchid;glowers@@ at them, knowing full well they'll be back in $his mouth shortly.
 				<<set $args[0].devotion -= 2>>
 			<</if>>
 		<<elseif $args[0].teeth != "removable" && $args[0].tonguePiercing > 0 && $args[1].tonguePiercing == 0>> /* (if tongue pierced+has teeth) */
-			You can vaguely hear her rattling her tongue piercing against her teeth as she takes in her appearance.
+			You can vaguely hear $him rattling $his tongue piercing against $his teeth as $he takes in $his appearance.
 		<</if>>
 		<<if $args[0].physicalAge < 40 && $args[1].physicalAge > 50 && $args[0].fetish != "mindbroken">>
 			<<if $args[0].devotion > 20>>
-				She notices the @@.green;lack of wrinkles@@ on her face and @@.hotpink;smiles broadly.@@
+				$He notices the @@.green;lack of wrinkles@@ on $his face and @@.hotpink;smiles broadly.@@
 				<<set $args[0].devotion += 2>>
 			<<else>>
-				She notices the @@.green;lack of wrinkles@@ on her face and cringes at what this means for her future.
+				$He notices the @@.green;lack of wrinkles@@ on $his face and cringes at what this means for $his future.
 			<</if>>
 		<</if>>
 		<<if ($args[0].earPiercing != 0 && $args[1].earPiercing == 0) || ($args[0].eyebrowPiercing != 0 && $args[1].eyebrowPiercing == 0) || ($args[0].nosePiercing != 0 && $args[1].nosePiercing == 0)>>
-			On top of that, several new piercings glint upon her face.
+			On top of that, several new piercings glint upon $his face.
 		<</if>>
 
 		<br><br>
-		Her eyes slip down to focus on her body.
+		$His eyes slip down to focus on $his body.
 
 		/*(age)*/
 		<<if $args[0].physicalAge >= $args[1].physicalAge+5 || ($args[0].physicalAge > 18 && $args[1].physicalAge < 16)>> /*(older)*/
 			<<if $args[0].physicalAge > 18 && $args[1].physicalAge < 16>>
-				She starts at just how much @@.red;older her <<if canSee($args[0])>>face and body are<<else>>body is<</if>>.@@
+				$He starts at just how much @@.red;older $his <<if canSee($args[0])>>face and body are<<else>>body is<</if>>.@@
 				<<if $args[0].physicalAge > 100>>
-					She's thoroughly shocked to find she's knocking on death's door.
+					$He's thoroughly shocked to find $he's knocking on death's door.
 				<<elseif $args[0].physicalAge > 80>>
-					She's thoroughly shocked to find she's ancient.
+					$He's thoroughly shocked to find $he's ancient.
 				<<elseif $args[0].physicalAge > 30>>
-					She's shocked to find that she's practically a MILF.
+					$He's shocked to find that $he's practically a MILF.
 				<<elseif $args[0].physicalAge >= 18>>
-					She's shocked to find she's now a fresh adult.
+					$He's shocked to find $he's now a fresh adult.
 				<</if>>
 				<<if $args[0].fetish != "mindbroken">>
-					This is disturbing to her on a fundamental level,
+					This is disturbing to $him on a fundamental level,
 					<<if $args[0].devotion > 50>>
-						as that means she will now will have less time with you before the end of her
+						as that means $he will now will have less time with you before the end of $his
 						<<if $PhysicalRetirementAgePolicy == 1>>
 							service and
 						<</if>>
-						life. She does her best to shrug this off and tries to think of all the fun things a lewd older body can do.
+						life. $He does $his best to shrug this off and tries to think of all the fun things a lewd older body can do.
 					<<else>>
-						as that means she will be @@.mediumorchid;unable to spend as much time on this earth.@@
+						as that means $he will be @@.mediumorchid;unable to spend as much time on this earth.@@
 						<<set $args[0].devotion -= ($args[0].physicalAge-$args[1].physicalAge)*2>>
 						<<if $PhysicalRetirementAgePolicy == 1>>
-							On the other hand, it means she won’t have as much time to spend with you before she is retired.
+							On the other hand, it means $he won't have as much time to spend with you before $he is retired.
 						<<else>>
-							This is compounded with the fact that she @@.gold;may well die before she becomes a freed slave.@@
+							This is compounded with the fact that $he @@.gold;may well die before $he becomes a freed slave.@@
 							<<set $args[0].trust -= ($args[0].physicalAge-$args[1].physicalAge)*2>>
 						<</if>>
 					<</if>>
 					<<if ($args[0].ovaries == 1 || $args[0].mpreg == 1) && $args[0].pubertyXX == 1 && $args[1].pubertyXX == 0 && isFertile($args[0])>>
-						She fidgets uncomfortably as the urge to breed crosses her mind.
+						$He fidgets uncomfortably as the urge to breed crosses $his mind.
 					<</if>>
 					<<if ($args[0].balls > 0) && $args[0].pubertyXY == 1 && $args[1].pubertyXY == 0>>
-						She shudders with pleasure at the thought of cumming in a fertile pussy. She realizes this body has gone through puberty.
+						$He shudders with pleasure at the thought of cumming in a fertile pussy. $He realizes this body has gone through puberty.
 					<</if>>
 				<</if>>
 			<<elseif $args[0].fetish != "mindbroken">>
-				She starts as she <<if canSee($args[0])>>sees<<else>>discovers<</if>> that she is @@.red;now older than she once was.@@ This is disturbing to her on a fundamental level,
+				$He starts as $he <<if canSee($args[0])>>sees<<else>>discovers<</if>> that $he is @@.red;now older than $he once was.@@ This is disturbing to $him on a fundamental level,
 				<<if $args[0].devotion > 50>>
-					as that means she will now will have less time with you before the end of her
+					as that means $he will now will have less time with you before the end of $his
 					<<if $PhysicalRetirementAgePolicy == 1>>
 						service and
 					<</if>>
-					life. She does her best to shrug this off and tries to think of all the fun things a lewd older body can do.
+					life. $He does $his best to shrug this off and tries to think of all the fun things a lewd older body can do.
 				<<else>>
-					as that means she will be @@.mediumorchid;unable to spend as much time on this earth.@@
+					as that means $he will be @@.mediumorchid;unable to spend as much time on this earth.@@
 					<<set $args[0].devotion -= ($args[0].physicalAge-$args[1].physicalAge)*2>>
 					<<if $PhysicalRetirementAgePolicy == 1>>
-						On the other hand, it means she won’t have as much time to spend with you before she is retired.
+						On the otther hand, it means $he won't have as much time to spend with you before $he is retired.
 					<<else>>
-						This is compounded with the fact that she @@.gold;may well die before she becomes a freed slave.@@
+						This is compounded with the fact that $he @@.gold;may well die before $he becomes a freed slave.@@
 						<<set $args[0].trust -= ($args[0].physicalAge-$args[1].physicalAge)*2>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].physicalAge <= $args[1].physicalAge-5 || ($args[0].physicalAge < 18 && $args[0].physicalAge < $args[1].physicalAge)>> /*(younger)*/
-			She starts at her @@.green;youthful new <<if canSee($args[0])>>face and <</if>>body.@@
+			$He starts at $his @@.green;youthful new <<if canSee($args[0])>>face and <</if>>body.@@
 			<<if $args[1].physicalAge >= 18>>
 				<<if $args[0].physicalAge < 4>>
-					She's thoroughly shocked to find she's a toddler again.
+					$He's thoroughly shocked to find $he's a toddler again.
 				<<elseif $args[0].physicalAge < 9>>
-					She's surprised to find she's a little girl.
+					$He's surprised to find $he's a little girl.
 				<<elseif $args[0].physicalAge < 13>>
-					She's surprised to find that she's once more a preteen.
+					$He's surprised to find that $he's once more a preteen.
 				<<elseif $args[0].physicalAge < 16>>
-					She never expected to be a teenager again.
+					$He never expected to be a teenager again.
 				<<elseif $args[0].physicalAge < 18>>
-					She never expected to be a young adult again.
+					$He never expected to be a young adult again.
 				<</if>>
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
 				<<set _puberty = 0>>
 				<<if (($args[0].physicalAge < $fertilityAge && ($args[0].ovaries == 1 || $args[0].mpreg == 1)) || ($args[0].physicalAge < $potencyAge && $args[0].balls > 0)) && ($args[1].pubertyXX == 1 || $args[1].pubertyXY == 1)>>
-					She realizes that she will have to @@.coral;go through puberty again,@@ now that she is $args[0].physicalAge once more. This is unnerving to her.
+					$He realizes that $he will have to @@.coral;go through puberty again,@@ now that $he is $args[0].physicalAge once more. This is unnerving to $him.
 					<<set _puberty = 1>>
 				<</if>>
 				<<if $args[0].devotion > 20>>
 					<<if _puberty == 1>>
-						However, she will do her best to enjoy the highs that come with it, and
+						However, $he will do $his best to enjoy the highs that come with it, and
 					<<else>>
-						This is a @@.hotpink;wonderful gift to her,@@ as she will now be able to
+						This is a @@.hotpink;wonderful gift to $him,@@ as $he will now be able to
 						<<set $args[0].devotion += Math.max($args[1].physicalAge-$args[0].physicalAge, 10)>>
 					<</if>>
 					<<if $PhysicalRetirementAgePolicy == 1>>
-						spend more time with you before the end of her service.
+						spend more time with you before the end of $his service.
 					<<else>>
 						service you better, as well as have all the other benefits of youthful age.
 					<</if>>
 				<<else>>
 					<<if _puberty == 1>>
-						It will be frustrating to go through the rigors of sexual development all over again, especially when combined with the fact that she must also
+						It will be frustrating to go through the rigors of sexual development all over again, especially when combined with the fact that $he must also
 					<<else>>
-						This is both a @@.hotpink;blessing@@ and a @@.gold;curse,@@ as while she now has a younger and healthier body, she must also
+						This is both a @@.hotpink;blessing@@ and a @@.gold;curse,@@ as while $he now has a younger and healthier body, $he must also
 						<<set $args[0].devotion += Math.min($args[1].physicalAge-$args[0].physicalAge, 10), $args[0].trust -= 5>>
 					<</if>>
 					<<if $PhysicalRetirementAgePolicy == 1>>
-						spend more time with you before the end of her service.
+						spend more time with you before the end of $his service.
 					<<else>>
-						use all of her the youth for the benefit of her master instead of herself.
+						use all of $his youth for the benefit of $his master instead of $himself.
 					<</if>>
 				<</if>>
 			<</if>>
@@ -2381,24 +2381,24 @@ Now you only have to wait for her to wake up.
 
 		/*weight*/
 		<<if $args[0].weight >= $args[1].weight + 5 || $args[0].weight <= $args[1].weight - 5>>
-			The very next thing she finds is how much
+			The very next thing $he finds is how much
 			<<if $args[0].weight >= $args[1].weight + 5>>
-				@@.red;heavier she is.@@
+				@@.red;heavier $he is.@@
 				<<if $args[0].fetish == "mindbroken">>
-					With her broken mind, she shows no real reaction to this new weight.
+					With $his broken mind, $he shows no real reaction to this new weight.
 				<<elseif $args[0].devotion >= 50>>
 					<<if $args[0].behavioralFlaw == "gluttonous">>
-						She is @@.hotpink;perfectly fine@@ with this; a bigger body means more food for her belly and more for you to love.
+						$He is @@.hotpink;perfectly fine@@ with this; a bigger body means more food for $his belly and more for you to love.
 						<<set $args[0].devotion += 1>>
 					<<elseif $args[0].behavioralFlaw == "anorexic">>
-						She wiggles and groans a little as her body keeps going. She knows if you wanted her heavier, you could have just force fed her to this size, so she keeps further opinions to herself.
+						$He wiggles and groans a little as $his body keeps going. $He knows if you wanted $his heavier, you could have just force fed $him to this size, so $he keeps further opinions to $himself.
 					<<elseif $args[0].behavioralQuirk == "insecure">>
-						She is @@.hotpink;perfectly fine@@ with this; if you want her to be softer, then @@.mediumaquamarine;that is what she wants too.@@
+						$He is @@.hotpink;perfectly fine@@ with this; if you want $him to be softer, then @@.mediumaquamarine;that is what $he wants too.@@
 						<<set $args[0].devotion += 1, $args[0].trust += 1>>
 					<<elseif $args[0].behavioralQuirk == "fitness">>
-						She would prefer to be fitter, but without arms and legs, she gets little say in the matter.
+						$He would prefer to be fitter, but without arms and legs, $he gets little say in the matter.
 					<<else>>
-						She is happy that you have given her more weight for you to play 
+						$He is happy that you have given $his more weight for you to play 
 						<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
 							with, but is somewhat confused that you would do so against the society you created.
 						<<else>>
@@ -2407,27 +2407,27 @@ Now you only have to wait for her to wake up.
 					<</if>>
 				<<else>>
 					<<if $args[0].behavioralFlaw == "gluttonous">>
-						She is @@.hotpink;surprisingly fine@@ with this; a bigger body means more food for her belly, after all.
+						$He is @@.hotpink;surprisingly fine@@ with this; a bigger body means more food for $his belly, after all.
 						<<if $args[0].weight > 30>>
-							Though she would have preferred to not be this fat.
+							Though $he would have preferred to not be this fat.
 						<</if>>
 						<<set $args[0].devotion += 1>>
 					<<elseif $args[0].behavioralFlaw == "anorexic">>
-						She wiggles and @@.mediumorchid;groans with disgust@@ as her body keeps going. She shudders at the thought of @@.gold;what you'll do next.@@
+						$He wiggles and @@.mediumorchid;groans with disgust@@ as $his body keeps going. $He shudders at the thought of @@.gold;what you'll do next.@@
 						<<set $args[0].devotion -= 3, $args[0].trust -= 3>>
 					<<elseif $args[0].behavioralQuirk == "insecure">>
-						She is surprisingly fine with this; you know best, after all.
+						$He is surprisingly fine with this; you know best, after all.
 					<<elseif $args[0].behavioralQuirk == "fitness" && $args[0].weight > 30>>
-						She is @@.mediumorchid;irritated and frustrated@@ at this new weight. She should be fit not fat!
+						$He is @@.mediumorchid;irritated and frustrated@@ at this new weight. $He should be fit not fat!
 						<<set $args[0].devotion -= 10>>
 					<<else>>
-						She is @@.mediumorchid;irritated and frustrated@@ at this new
+						$He is @@.mediumorchid;irritated and frustrated@@ at this new
 						<<set $args[0].devotion -= 5>>
 						<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-							weight, @@.mediumorchid;doubly so@@ because your society will view her as less of a person now.
+							weight, @@.mediumorchid;doubly so@@ because your society will view $him as less of a person now.
 							<<set $args[0].devotion -= 5>>
 						<<elseif $arcologies[0].FSHedonisticDecadence != "unset">>
-							weight, however she is at least @@.hotpink;somewhat mollified@@ with the knowledge that society will treat her a with a bit more reverence now.
+							weight, however $he is at least @@.hotpink;somewhat mollified@@ with the knowledge that society will treat $him a with a bit more reverence now.
 							<<set $args[0].devotion += 3>>
 						<<else>>
 							weight.
@@ -2435,20 +2435,20 @@ Now you only have to wait for her to wake up.
 					<</if>>
 				<</if>>
 			<<else>>
-				@@.green;lighter she is.@@
+				@@.green;lighter $he is.@@
 				<<if $args[0].fetish == "mindbroken">>/*mindbroken*/
-					She doesn’t show much reaction to her lost weight.
+					$He doesn't show much reaction to $his lost weight.
 				<<elseif $args[0].devotion >= 50>>/*devoted*/
-					She is pleased that you have given her a more slender and svelte body
+					$He is pleased that you have given $him a more slender and svelte body
 					<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-						body and is even happier that her body is more in line with your society.
+						body and is even happier that $his body is more in line with your society.
 					<<else>>
 						body.
 					<</if>>
 				<<else>>/*not devoted*/
-					She is a bit miffed that you would modify her body in such a way, knowing it has nothing to do with making her happy
+					$He is a bit miffed that you would modify $his body in such a way, knowing it has nothing to do with making $him happy
 					<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-						happy, but feels a bit better knowing that society will now view her in a better light.
+						happy, but feels a bit better knowing that society will now view $him in a better light.
 					<<else>>
 						happy.
 					<</if>>
@@ -2458,16 +2458,16 @@ Now you only have to wait for her to wake up.
 
 		/*muscle*/
 		<<if $args[0].muscles >= $args[1].muscles +5 || $args[0].muscles <= $args[1].muscles - 5>>
-			The last major change to her body structure worth her attention is
+			The last major change to $his body structure worth $his attention is
 			<<if $args[0].muscles >= $args[1].muscles + 5>>
-				that she is @@.lime;significantly more muscular@@ than she once was.
+				that $he is @@.lime;significantly more muscular@@ than $he once was.
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion >= 50>>
-						She is happy with her newfound strength and looks forward to putting this power to work for you, as limited as it may be.
+						$He is happy with $his newfound strength and looks forward to putting this power to work for you, as limited as it may be.
 					<<else>>
-						She is irritated that you would change something like this about her
+						$He is irritated that you would change something like this about $him
 						<<if $args[0].genes == "XX" && $arcologies.FSPhysicalIdealist == "unset">>
-							and is @@.mediumorchid;annoyed@@ that she now looks less feminine.
+							and is @@.mediumorchid;annoyed@@ that $he now looks less feminine.
 							<<set $args[0].devotion -= 3>>
 						<<else>>
 							but @@.mediumaquamarine;appreciates@@ the extra strength nonetheless, even if it is all in the torso.
@@ -2476,11 +2476,11 @@ Now you only have to wait for her to wake up.
 					<</if>>
 				<</if>>
 			<<else>>
-				that she is @@.orange;significantly less muscular@@ than before.
+				that $he is @@.orange;significantly less muscular@@ than before.
 				<<if $args[0].devotion >= 50>>
-					She appreciates that you would take the time to make her more feminine.
+					$He appreciates that you would take the time to make $him more feminine.
 				<<else>>
-					She is @@.mediumorchid;annoyed@@ that you would alter something about her like this, but it's not a big loss given her state.
+					$He is @@.mediumorchid;annoyed@@ that you would alter something about $him like this, but it's not a big loss given $his state.
 					<<set $args[0].devotion -= 3>>
 				<</if>>
 			<</if>>
@@ -2490,48 +2490,48 @@ Now you only have to wait for her to wake up.
 		<<set _weightChange = 0>> /*used to segway to weight after pregnancy/belly implants*/
 		<<if $args[0].pregKnown == 1 && $args[1].preg > 0>>
 			<br><br>
-			She wiggles into a better position to see her stomach,
+			$He wiggles into a better position to see $his stomach,
 			<<if $args[0].bellyPreg < 100>>
 				<<if $args[0].birthsTotal == 0>>
-					but she's too inexperienced to recognize her @@.pink;early pregnancy.@@
+					but $he's too inexperienced to recognize $his @@.pink;early pregnancy.@@
 				<<elseif $args[0].birthsTotal > 0>>
-					and since this is not her first pregnancy, she is able to recognize the @@.pink;life within her.@@
+					and since this is not $his first pregnancy, $he is able to recognize the @@.pink;life within $him.@@
 				<</if>>
 			<<elseif $args[0].bellyPreg >= 450000>>
-				and she can immediately see that she is @@.pink;insanely pregnant;@@ her body stretched full of babies.
+				and $he can immediately see that $he is @@.pink;insanely pregnant;@@ $his body stretched full of babies.
 			<<elseif $args[0].bellyPreg >= 150000>>
-				and she can quite clearly see that she is @@.pink;enormously pregnant,@@ so much so that her body could quite believably be carrying nine full sized babies.
+				and $he can quite clearly see that $he is @@.pink;enormously pregnant,@@ so much so that $his body could quite believably be carrying nine full sized babies.
 			<<elseif $args[0].bellyPreg >= 60000>>
-				and she can see that she is almost @@.pink;unnaturally pregnant,@@ with a belly swollen to a size that could easily carry four full grown babies.
+				and $he can see that $he is almost @@.pink;unnaturally pregnant,@@ with a belly swollen to a size that could easily carry four full grown babies.
 			<<elseif $args[0].bellyPreg >= 15000>>
-				and she can clearly see that she is @@.pink;quite pregnant,@@ as she sports a belly that could easily carry a full sized baby.
+				and $he can clearly see that $he is @@.pink;quite pregnant,@@ as $he sports a belly that could easily carry a full sized baby.
 			<<elseif $args[0].bellyPreg >= 5000>>
-				and she sees a @@.pink;bump in her stomach.@@ A gentle kick clues her in to the reason.
+				and $he sees a @@.pink;bump in $his stomach.@@ A gentle kick clues $him in to the reason.
 			<<elseif $args[0].bellyPreg >= 100>>
-				and she see a @@.pink;slight swell to her stomach.@@
+				and $he see a @@.pink;slight swell to $his stomach.@@
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].bellyPreg >= 100 || $args[0].birthsTotal > 0>>
 					<<if $args[0].devotion >= 50>>
-						Even though she didn’t get to experience being made into one, she is delighted to be a mother<<if $args[0].birthsTotal > 0>> again<</if>>.
+						Even though $he didn't get to experience being made into one, $he is delighted to be a mother<<if $args[0].birthsTotal > 0>> again<</if>>.
 					<<else>>
-						She is filled with conflicting emotions, @@.mediumorchid;hatred@@ for you for forcing <<if $args[0].pregType > 1>>these lives<<else>>this life<</if>> onto her, as well as the instinct of a mother’s love for her unborn child.
+						$He is filled with conflicting emotions, @@.mediumorchid;hatred@@ for you for forcing <<if $args[0].pregType > 1>>these lives<<else>>this life<</if>> onto $him, as well as the instinct of a mother's love for $his unborn child.
 						<<set $args[0].devotion -= 3>>
 					<</if>>
 				<</if>>
 			<<elseif $args[0].fetish == "pregnancy">>
 				<<if $args[0].bellyPreg >= 100 || $args[0].birthsTotal > 0>>
 					<<if $args[0].devotion >= 50>>
-						Even though she didn’t get to experience being made into one, she is overjoyed to have <<if $args[0].birthsTotal > 0>>another<<else>>a<</if>> life growing inside her.
+						Even though $he didn't get to experience being made into one, $he is overjoyed to have <<if $args[0].birthsTotal > 0>>another<<else>>a<</if>> life growing inside $him.
 					<<else>>
-						She is filled with conflicting emotions, hate for being forced into this, but also joy from getting to be pregnant. While you didn't do this for her amusement, she'll definitely take advantage of it.
+						$He is filled with conflicting emotions, hate for being forced into this, but also joy from getting to be pregnant. While you didn't do this for $his amusement, $he'll definitely take advantage of it.
 					<</if>>
 				<</if>>
 			<</if>>
 			<<set _weightChange = 1>>
 		<<elseif $args[0].bellyImplant > $args[1].bellyImplant && $args[0].bellyImplant >= 100>> /*belly implant filled*/
 			<br><br>
-			She wiggles into a better position to view her stomach, where she
+			$He wiggles into a better position to view $his stomach, where $he
 			<<if $args[0].bellyImplant >= 450000>>
 				sees nothing but a @@.pink;massive middle.@@
 			<<elseif $args[0].bellyImplant >= 150000>>
@@ -2541,35 +2541,35 @@ Now you only have to wait for her to wake up.
 			<<elseif $args[0].bellyImplant >= 15000>>
 				sees a @@.pink;belly swollen enough to be carrying at least one baby ready to drop.@@
 			<<elseif $args[0].bellyImplant >= 5000>>
-				sees a @@.pink;clear bump in her stomach from the belly implant.@@
+				sees a @@.pink;clear bump in $his stomach from the belly implant.@@
 			<<elseif $args[0].bellyImplant >= 100>>
-				sees a @@.pink;slight swell to her stomach.@@
+				sees a @@.pink;slight swell to $his stomach.@@
 			<</if>>
 			<<if $args[0].devotion >= 50>>
-				She likes how the bulge looks on her and can't wait to get fucked with it in the way.
+				$He likes how the bulge looks on $him and can't wait to get fucked with it in the way.
 			<<else>>
-				It @@.mediumorchid;bothers her@@ that you would add such a <<if $args[0].bellyImplant >= 10000>>major<<else>>minor<</if>> inconvenience to her body.
+				It @@.mediumorchid;bothers $him@@ that you would add such a <<if $args[0].bellyImplant >= 10000>>major<<else>>minor<</if>> inconvenience to $his body.
 				<<set $args[0].devotion -= 1>>
 			<</if>>
 			<<if $args[1].pregKnown == 1>>
 				<<if $args[0].fetish == "pregnancy">>
 					<<if $args[0].devotion >= 50>>
-						She @@.mediumorchid;scowls with momentary wrath@@ before regaining her composure. She resents being separated from her pregnancy<<if canGetPregnant($args[0])>>, though that is easily remedied<</if>>.
+						$He @@.mediumorchid;scowls with momentary wrath@@ before regaining $his composure. $He resents being separated from $his pregnancy<<if canGetPregnant($args[0])>>, though that is easily remedied<</if>>.
 						<<set $args[0].devotion -= 5>>
 					<<elseif $args[0].devotion >= 20>>
-						She @@.mediumorchid;scowls angrily@@ at this turn of events<<if canGetPregnant($args[0])>>, though that will be easily remedied by putting another child in her<</if>>.
+						$He @@.mediumorchid;scowls angrily@@ at this turn of events<<if canGetPregnant($args[0])>>, though that will be easily remedied by putting another child in $him<</if>>.
 						<<set $args[0].devotion -= 10>>
 					<<else>>
-						She is filled with @@.mediumorchid;hatred for you@@ for snatching her pregnancy away from her.
+						$He is filled with @@.mediumorchid;hatred for you@@ for snatching $his pregnancy away from $him.
 						<<set $args[0].devotion -= 15>>
 					<</if>>
 				<<elseif $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion >= 50>>
-						While she will miss the chance of meeting her future child, she will no longer be weighed down by it as she gets used to her new body.
+						While $he will miss the chance of meeting $his future child, $he will no longer be weighed down by it as $he gets used to $his new body.
 					<<elseif $args[0].devotion >= 20>>
-						She accepts this as how things are.
+						$He accepts this as how things are.
 					<<else>>
-						She is filled with @@.mediumorchid;hatred for you@@ for snatching her child away from her. It didn't matter if she wanted it or not; @@.gold;it was hers and you took it.@@
+						$He is filled with @@.mediumorchid;hatred for you@@ for snatching $his child away from $him. It didn't matter if $he wanted it or not; @@.gold;it was $hers and you took it.@@
 						<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 					<</if>>
 				<</if>>
@@ -2577,32 +2577,32 @@ Now you only have to wait for her to wake up.
 			<<set _weightChange = 1>>
 		<<elseif $args[0].pregKnown == 0 && $args[1].pregKnown == 1>>
 			<br><br>
-			She wiggles into a better position to view her stomach, where she discovers she is @@.pink;no longer pregnant.@@
+			$He wiggles into a better position to view $his stomach, where $he discovers $he is @@.pink;no longer pregnant.@@
 			<<if $args[0].fetish == "pregnancy">>
 				<<if $args[0].devotion >= 50>>
-					She @@.mediumorchid;scowls with momentary wrath@@ before regaining her composure. She resents being separated from her pregnancy<<if canGetPregnant($args[0])>>, though that is easily remedied<</if>>.
+					$He @@.mediumorchid;scowls with momentary wrath@@ before regaining $his composure. $He resents being separated from $his pregnancy<<if canGetPregnant($args[0])>>, though that is easily remedied<</if>>.
 					<<set $args[0].devotion -= 5>>
 				<<elseif $args[0].devotion >= 20>>
-					She @@.mediumorchid;scowls angrily@@ at this turn of events<<if canGetPregnant($args[0])>>, though that will be easily remedied by putting another child in her<</if>>.
+					$He @@.mediumorchid;scowls angrily@@ at this turn of events<<if canGetPregnant($args[0])>>, though that will be easily remedied by putting another child in $him<</if>>.
 					<<set $args[0].devotion -= 10>>
 				<<else>>
-					She is filled with @@.mediumorchid;hatred for you@@ for snatching her pregnancy away from her.
+					$He is filled with @@.mediumorchid;hatred for you@@ for snatching $his pregnancy away from $him.
 					<<set $args[0].devotion -= 15>>
 				<</if>>
 			<<elseif $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion >= 50>>
-					While she will miss the chance of meeting her future child, she will no longer be weighed down by it as she gets used to her new body.
+					While $he will miss the chance of meeting $his future child, $he will no longer be weighed down by it as $he gets used to $his new body.
 				<<elseif $args[0].devotion >= 20>>
-					She accepts this as how things are.
+					$He accepts this as how things are.
 				<<else>>
-					She is filled with @@.mediumorchid;hatred for you@@ for snatching her child away from her. It didn't matter if she wanted it or not; @@.gold;it was hers and you took it.@@
+					$He is filled with @@.mediumorchid;hatred for you@@ for snatching $his child away from $him. It didn't matter if $he wanted it or not; @@.gold;it was $hers and you took it.@@
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<</if>>
 			<</if>>
 			<<set _weightChange = 1>>
 		<<elseif $args[0].bellyImplant < $args[1].bellyImplant>> /*belly implant reduced*/
 			<br><br>
-			She wiggles into a better position to view her stomach, where she
+			$He wiggles into a better position to view $his stomach, where $he
 			<<if $args[0].bellyImplant >= 450000>>
 				sees nothing but a @@.pink;massive middle.@@
 			<<elseif $args[0].bellyImplant >= 150000>>
@@ -2612,16 +2612,16 @@ Now you only have to wait for her to wake up.
 			<<elseif $args[0].bellyImplant >= 15000>>
 				sees a @@.pink;belly swollen enough to be carrying at least one baby ready to drop.@@
 			<<elseif $args[0].bellyImplant >= 5000>>
-				sees a @@.pink;clear bump in her stomach from the belly implant.@@
+				sees a @@.pink;clear bump in $his stomach from the belly implant.@@
 			<<elseif $args[0].bellyImplant >= 100>>
-				sees a @@.pink;slight swell to her stomach.@@
+				sees a @@.pink;slight swell to $his stomach.@@
 			<<else>>
-				discovers her belly is @@.pink;no longer bulging.@@
+				discovers $his belly is @@.pink;no longer bulging.@@
 			<</if>>
 			<<if $args[0].devotion >= 20>>
-				She appreciates how much easier it will be with a smaller middle.
+				$He appreciates how much easier it will be with a smaller middle.
 			<<else>>
-				She can't help but appreciate losing the bulk, but she still @@.gold;worries@@ over your control of her body.
+				$He can't help but appreciate losing the bulk, but $he still @@.gold;worries@@ over your control of $his body.
 				<<set $args[0].trust -= 1>>
 			<</if>>
 			<<set _weightChange = 1>>
@@ -2630,129 +2630,129 @@ Now you only have to wait for her to wake up.
 		/*stomach*/
 		<<if _weightChange != 1>>
 			<br><br>
-			She wiggles into a better position to see her middle, and begins to shift
+			$He wiggles into a better position to see $his middle, and begins to shift
 		<<else>>
-			She continues to shift
+			$He continues to shift
 		<</if>>
 		<<if $args[0].weight >= $args[1].weight+30>> /*(fatter)*/
-			her stomach until she feels just how @@.red;much more weight@@ she is carrying.
+			$his stomach until $he feels just how @@.red;much more weight@@ $he is carrying.
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She finds her new curves intriguing.
+					$He finds $his new curves intriguing.
 				<<else>>
-					Her face contorts with @@.mediumorchid;disgust@@ at her newfound bulk.
+					$His face contorts with @@.mediumorchid;disgust@@ at $his newfound bulk.
 					<<set $args[0].devotion -= 5>>
 				<</if>>
 			<</if>>
 			<<if $args[0].bellySag > $args[1].bellySag && $args[0].belly < 100>>
-				She also notices @@.red;how much it sags.@@
+				$He also notices @@.red;how much it sags.@@
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion > 20>>
-						This isn’t pleasant, but she bears it for you.
+						This isn't pleasant, but $he bears it for you.
 					<<else>>
-						This does nothing for her self-image, only @@.mediumorchid;disgusts and annoys@@ her.
+						This does nothing for $his self-image, only @@.mediumorchid;disgusts and annoys@@ $him.
 						<<set $args[0].devotion -= 2>>
 					<</if>>
 				<</if>>
 			<<elseif $args[0].bellySag < $args[1].bellySag && $args[0].belly < 100>>
-				She also notices it is @@.green;tighter despite being softer.@@
+				$He also notices it is @@.green;tighter despite being softer.@@
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion > 20>>
-						This is great for her self-image and she happily strokes her new firm belly.
+						This is great for $his self-image and $he happily strokes $his new firm belly.
 					<<else>>
-						Whatever else this transition brings, this is a gift she will appreciate and she @@.hotpink;smiles, just a bit.@@
+						Whatever else this transition brings, this is a gift $he will appreciate and $he @@.hotpink;smiles, just a bit.@@
 						<<set $args[0].devotion += 1>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].weight <= $args[1].weight-30>> /*(thinner)*/
-			her stomach and she finds her body @@.green;thinner.@@
+			$his stomach and $he finds $his body @@.green;thinner.@@
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She finds her new curves intriguing.
+					$He finds $his new curves intriguing.
 				<<else>>
-					While free weight loss is @@.hotpink;appreciated,@@ she wishes she had some say in the matter.
+					While free weight loss is @@.hotpink;appreciated,@@ $he wishes $he had some say in the matter.
 					<<set $args[0].devotion += 1>>
 				<</if>>
 			<</if>>
 			<<if $args[0].bellySag > $args[1].bellySag && $args[0].belly < 100>>
-				She also notices how it @@.red;has a sag to it.@@
+				$He also notices how it @@.red;has a sag to it.@@
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion > 20>>
-						This isn’t pleasant, but she bears it for you.
+						This isn't pleasant, but $he bears it for you.
 					<<else>>
-						This does nothing for her self-image, only @@.mediumorchid;disgusts and annoys@@ her.
+						This does nothing for $his self-image, only @@.mediumorchid;disgusts and annoys@@ $him.
 						<<set $args[0].devotion -= 2>>
 					<</if>>
 				<</if>>
 			<<elseif $args[0].bellySag < $args[1].bellySag && $args[0].belly < 100>>
-				She also notices it is @@.green;tighter despite being softer.@@
+				$He also notices it is @@.green;tighter despite being softer.@@
 				<<if $args[0].fetish != "mindbroken">>
 					<<if $args[0].devotion > 20>>
-						This is great for her self-image and she happily strokes her new perkier belly.
+						This is great for $his self-image and $he happily strokes $his new perkier belly.
 					<<else>>
-						Whatever else this transition brings, this is a gift she will appreciate and she @@.hotpink;smiles, just a bit.@@
+						Whatever else this transition brings, this is a gift $he will appreciate and $he @@.hotpink;smiles, just a bit.@@
 						<<set $args[0].devotion += 1>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].bellySag > $args[1].bellySag && $args[0].belly < 100>> /*(belly sag)*/
-			her stomach and she notices a @@.red;sag in her belly.@@
+			$his stomach and $he notices a @@.red;sag in $his belly.@@
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					This isn’t pleasant, but she bears it for you.
+					This isn't pleasant, but $he bears it for you.
 				<<else>>
-					This does nothing for her self-image, only @@.mediumorchid;disgusts and annoys@@ her.
+					This does nothing for $his self-image, only @@.mediumorchid;disgusts and annoys@@ $him.
 					<<set $args[0].devotion -= 2>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].bellySag < $args[1].bellySag && $args[0].belly < 100>> /*(subtracted)*/
-			her stomach and notices the @@.green;sag in her belly has lessened.@@
+			$his stomach and notices the @@.green;sag in $his belly has lessened.@@
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					This is great for her self-image and she happily strokes her new tight belly.
+					This is great for $his self-image and $he happily strokes $his new tight belly.
 				<<else>>
-					Whatever else this transition brings, this is a gift she will appreciate and she @@.hotpink;smiles, just a bit.@@
+					Whatever else this transition brings, this is a gift $he will appreciate and $he @@.hotpink;smiles, just a bit.@@
 					<<set $args[0].devotion += 1>>
 				<</if>>
 			<</if>>
 		<<elseif $args[0].weight < 10 && $args[0].muscles > 5 && $args[0].belly < 100>>
-			her @@.lime;muscled stomach.@@
+			$his @@.lime;muscled stomach.@@
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She finds her new strength intriguing.
+					$He finds $his new strength intriguing.
 				<<else>>
-					She finds her new strength @@.mediumaquamarine;empowering.@@
+					$He finds $his new strength @@.mediumaquamarine;empowering.@@
 					<<set $args[0].trust += 2>>
 				<</if>>
 			<</if>>
 		<<else>>
-			stomach, though she finds little out of the ordinary<<if _weightChange == 1>>; other than the obvious, of course<</if>>.
+			stomach, though $he finds little out of the ordinary<<if _weightChange == 1>>; other than the obvious, of course<</if>>.
 		<</if>>
 		<<if $args[0].navelPiercing != 0 && $args[1].navelPiercing == 0>>
-			She now has a piercing in her navel; she rolls her tummy<<if $args[0].belly >= 15000>>, a feat in and of itself<</if>>, fascinated by her new hardware grazing her stomach to the motion.
+			$He now has a piercing in $his navel; $he rolls $his tummy<<if $args[0].belly >= 15000>>, a feat in and of itself<</if>>, fascinated by $his new hardware grazing $his stomach to the motion.
 		<</if>>
 
 		/* waist */
 		<<if $args[0].belly < 30000 || $args[0].weight <= 95>>
 			<<if $args[0].waist > $args[1].waist+40>>
-				As she explores her middle, she also takes note of her @@.orange;wider waist.@@
+				As $he explores $his middle, $he also takes note of $his @@.orange;wider waist.@@
 				<<if $args[0].fetish == "mindbroken">>
-					The effects of such a change on her appearance go right over her head.
+					The effects of such a change on $his appearance go right over $his head.
 				<<elseif $args[0].devotion > 20>>
-					This change disappoints her. She wishes she could have been more feminine for you.
+					This change disappoints $him. $He wishes $he could have been more feminine for you.
 				<<else>>
-					This change @@.mediumorchid;disgusts her;@@ it will only leave her treated worse compared to the more feminine slaves.
+					This change @@.mediumorchid;disgusts $him;@@ it will only leave $him treated worse compared to the more feminine slaves.
 					<<set $args[0].devotion -= 1>>
 				<</if>>
 			<<elseif $args[0].waist < $args[1].waist-40>>
-				As she explores her middle, she also takes note of her @@.lime;narrower waist.@@
+				As $he explores $his middle, $he also takes note of $his @@.lime;narrower waist.@@
 				<<if $args[0].fetish == "mindbroken">>
-					The effects of such a change on her appearance go right over her head.
+					The effects of such a change on $his appearance go right over $his head.
 				<<elseif $args[0].devotion > 20>>
-					This change pleases her; she can't wait to feel your hands around her.
+					This change pleases $him; $he can't wait to feel your hands around $him.
 				<<else>>
-					That you would make such a change to her @@.mediumorchid;disgusts her,@@ though she @@.mediumaquamarine;takes solace@@ in the fact that she will likely be treated better for being more attractive.
+					That you would make such a change to $him @@.mediumorchid;disgusts $him,@@ though $he @@.mediumaquamarine;takes solace@@ in the fact that $he will likely be treated better for being more attractive.
 					<<set $args[0].devotion -= 1, $args[0].trust += 1>>
 				<</if>>
 			<</if>>
@@ -2760,9 +2760,9 @@ Now you only have to wait for her to wake up.
 
 		/*(butt)*/
 		<br><br>
-		She cranes her neck back to review her rear, finding how
+		$He cranes $his neck back to review $his rear, finding how
 		<<if $args[0].butt > $args[1].butt>> /*(bigger)*/
-			much @@.lime;bigger her butt is now.@@ As she bounces her cheeks, it becomes clear that it has grown
+			much @@.lime;bigger $his butt is now.@@ As $he bounces $his cheeks, it becomes clear that it has grown
 			<<if $args[0].butt >= $args[1].butt+5>> /*(+to max size description or above)*/
 				an incredible amount.
 			<<elseif $args[0].butt > $args[1].butt+1>> /*(+more sizes)*/
@@ -2772,16 +2772,16 @@ Now you only have to wait for her to wake up.
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					This is a pleasing development as she looks forward to putting this new rear to the test with you.
+					This is a pleasing development as $he looks forward to putting this new rear to the test with you.
 				<<else>>
-					While she’s not terribly upset, this still feels like a violation of her, somehow. Still, there are worse things that could happen than waking up with a bigger rear.
+					While $he's not terribly upset, this still feels like a violation of $him, somehow. Still, there are worse things that could happen than waking up with a bigger rear.
 				<</if>>
 			<</if>>
 			<<if $args[0].butt >= $args[1].butt+5 && $args[0].butt > 12>>
-				She is overwhelmed by how large her new bottom is. She doubts she can even lay flat on her back any longer.
+				$He is overwhelmed by how large $his new bottom is. $He doubts $he can even lay flat on $his back any longer.
 			<</if>>
 		<<elseif $args[0].butt < $args[1].butt>> /*(smaller)*/
-			much @@.orange;smaller her butt is now.@@ As she bounces her cheeks, it becomes clear that it has shrunk
+			much @@.orange;smaller $his butt is now.@@ As $he bounces $his cheeks, it becomes clear that it has shrunk
 			<<if $args[0].butt <= $args[1].butt-5>> /*(+to max size description or above)*/
 				an incredible amount.
 			<<elseif $args[0].butt > $args[1].butt-1>> /*(+more sizes)*/
@@ -2791,64 +2791,64 @@ Now you only have to wait for her to wake up.
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She is saddened that there is now less of her for you to play with, but remembers that you chose this body for her and hopes that you will still make use of her rear.
+					$He is saddened that there is now less of $him for you to play with, but remembers that you chose this body for $him and hopes that you will still make use of $his rear.
 				<<else>>
-					This is just @@.mediumorchid;depressing@@ to her. A nice rear is one of the two parts of her body that almost every women (or “women”) is defined by, and now she feels like just that much less of a person.
+					This is just @@.mediumorchid;depressing@@ to $him. A nice rear is one of the two parts of $his body that almost every women (or “women”) is defined by, and now $he feels like just that much less of a person.
 					<<set $args[0].devotion -= 1>>
 				<</if>>
 			<</if>>
 		<<else>>
-			little her butt has changed in size.
+			little $his butt has changed in size.
 		<</if>>
 		<<if $args[0].buttImplant > 0 && $args[1].buttImplant == 0>> /*(+butt implants)*/
-			She also notes that @@.coral;there are implants in her,@@ as her ass’s shape didn't really change as it moved.
+			$He also notes that @@.coral;there are implants in $him,@@ as $his ass's shape didn't really change as it moved.
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					It pleases her that you would invest in such a minor way in her body.
+					It pleases $him that you would invest in such a minor way in $his body.
 				<<else>>
-					It feels like you have modified her in a such a minor way for your own benefit, and she doesn’t kid herself in thinking otherwise.
+					It feels like you have modified $him in a such a minor way for your own benefit, and $he doesn't kid $himself in thinking otherwise.
 				<</if>>
 			<</if>>
 		<<elseif $args[0].buttImplant == 0 && $args[1].buttImplant > 0>> /*(-butt implants)*/
-			She also notes that she @@.coral;no longer has ass implants,@@ as her experimentation reveals a more natural bounce to her buttocks.
+			$He also notes that $he @@.coral;no longer has ass implants,@@ as $his experimentation reveals a more natural bounce to $his buttocks.
 			<<if $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She is happy that you think her body doesn’t need any artificial modification to be pleasing.
+					$He is happy that you think $his body doesn't need any artificial modification to be pleasing.
 				<<else>>
-					She views this as one more thing she @@.mediumorchid;didn’t have a choice in.@@
+					$He views this as one more thing $he @@.mediumorchid;didn't have a choice in.@@
 					<<set $args[0].devotion -= 1>>
 				<</if>>
 			<</if>>
 		<</if>>
 		<<if $args[0].fetish != "mindbroken">>
 			<<if $args[0].hips != $args[1].hips>>
-				As she prepares to look at her crotch, it occurs to her that her hips are
+				As $he prepares to look at $his crotch, it occurs to $him that $his hips are
 				<<if $args[0].hips > $args[1].hips>>
 					@@.lime;<<if $args[0].hips > $args[1].hips+3>>considerably <<elseif $args[0].hips < $args[1].hips-1>>much <</if>> wider.@@
 					<<if $args[0].fetish == "pregnancy" && $args[0].birthsTotal > 0>>
-						She seems @@.hotpink;overjoyed@@ at their new size; It means she'll be even better at popping out babies than ever. She continues around back to learn how
+						$He seems @@.hotpink;overjoyed@@ at their new size; It means $he'll be even better at popping out babies than ever. $He continues around back to learn how
 					<<elseif $args[0].devotion > 20>>
-						She gives them a little wiggle for your amusement before continuing around back to learn how
+						$He gives them a little wiggle for your amusement before continuing around back to learn how
 					<<else>>
-						She takes the new addition well enough since it is likely to raise her worth in society and thus not the worst thing ever. How you intend to make use of her hips @@.gold;worries her,@@ however. She continues around back to learn how
+						$He takes the new addition well enough since it is likely to raise $his worth in society and thus not the worst thing ever. How you intend to make use of $his hips @@.gold;worries $him,@@ however. $He continues around back to learn how
 						<<set $args[0].trust -= 1>>
 					<</if>>
 				<<else>>
 					@@.orange;<<if $args[0].hips < $args[1].hips-3>>considerably <<elseif $args[0].hips < $args[1].hips-1>>much <</if>> narrower.@@
 					<<if $args[0].fetish == "pregnancy" && $args[0].birthsTotal > 0>>
-						She seems a little caught up on their new size, likely by concern over future pregnancies and childbirth.
+						$He seems a little caught up on their new size, likely by concern over future pregnancies and childbirth.
 					<<elseif $args[0].devotion > 50>>
-						She gives them a little wiggle for your amusement.
+						$He gives them a little wiggle for your amusement.
 					<<elseif $args[0].devotion >= -20>>
-						She accepts your judgment that her new hips suit her better.
+						$He accepts your judgment that $his new hips suit $him better.
 						<<if $args[0].pregKnown && $args[0].birthsTotal > 0>>
-							She @@.gold;worries@@ about what this means for her coming birth.
+							$He @@.gold;worries@@ about what this means for $his coming birth.
 							<<set $args[0].trust -= 3>>
 						<</if>>
 					<<else>>
-						She seems upset, @@.mediumorchid;both from her loss of femininity and the overreach of your power,@@ that you would alter her body is such a way.
+						$He seems upset, @@.mediumorchid;both from $his loss of femininity and the overreach of your power,@@ that you would alter $his body is such a way.
 						<<if $args[0].pregKnown && $args[0].birthsTotal > 0>>
-							A @@.gold;terrifying realization@@ dawns on her; her upcoming birth is going to be much harder than her last.
+							A @@.gold;terrifying realization@@ dawns on $him; $his upcoming birth is going to be much harder than $his last.
 							<<set $args[0].trust -= 5>>
 						<</if>>
 						<<set $args[0].devotion -= 3>>
@@ -2856,14 +2856,14 @@ Now you only have to wait for her to wake up.
 				<</if>>
 			<</if>>
 			<<if $args[0].anusPiercing != 0 && $args[1].anusPiercing == 0>>
-				As she moved, she felt something odd in her butt. She can only speculate that she has a new addition down there.
+				As $he moved, $he felt something odd in $his butt. $He can only speculate that $he has a new addition down there.
 			<</if>>
 		<</if>>
 		
 		<br><br>
 		<<set _seeCrotch = 1>>
 		<<if $args[0].weight > 97 || $args[0].belly >= 60000 || $args[0].boobs >= 20000>> /* crotch blockers */
-			She tries to get a good view of her crotch, but finds it impossible with her
+			$He tries to get a good view of $his crotch, but finds it impossible with $his
 			<<if $args[0].belly >= 60000>>
 				<<set _belly = bellyAdjective($args[0])>>
 				_belly belly in the way.
@@ -2873,31 +2873,31 @@ Now you only have to wait for her to wake up.
 				enormous boobs taking up so much space.
 			<</if>>
 			<<if $args[0].fetish != "mindbroken">>
-				She shifts her weight so that she falls onto her back
+				$He shifts $his weight so that $he falls onto $his back
 				<<if $args[0].corsetPiercing != 0 && $args[1].corsetPiercing == 0>>
-					and recoils as she lands on something unfamiliar and hard. Her mind races as to what it could be, before the realization sets in that she now has a corset piercing up her back. Once she gets used to the feeling, she leans to her side to finally get a view around her body.
+					and recoils as $he lands on something unfamiliar and hard. $His mind races as to what it could be, before the realization sets in that $he now has a corset piercing up $his back. Once $he gets used to the feeling, $he leans to $his side to finally get a view around $his body.
 				<<else>>
-					and leans to her side to finally see what's under her body.
+					and leans to $his side to finally see what's under $his body.
 				<</if>>
 				<<if $args[0].weight > 160 || ($args[0].boobs >= 20000 && ["wide-set", "saggy",].includes($args[0].boobShape)) || $args[0].boobs >= 40000 || $args[0].hips == 3>> /* still can't see */
-					Unfortunately for her,
+					Unfortunately for $him,
 					<<if $args[0].boobs >= 40000>>
-						her tits are so massive they hang over her sides and block any line of sight she may have been able to use.
+						$his tits are so massive they hang over $his sides and block any line of sight $he may have been able to use.
 					<<elseif $args[0].boobs >= 20000 && ["wide-set", "saggy",].includes($args[0].boobShape)>>
-						her tits are resting heavily to her sides and block any line of sight she may have been able to use.
+						$his tits are resting heavily to $his sides and block any line of sight $he may have been able to use.
 					<<elseif $args[0].weight > 160>>
-						she is so fat her gut rests past her sides and block any line of sight she may have been able to use.
+						$he is so fat $his gut rests past $his sides and block any line of sight $he may have been able to use.
 					<<else>>
-						her hips are so absurdly wide, there is no way for her to see around them.
+						$his hips are so absurdly wide, there is no way for $him to see around them.
 					<</if>>
 					<<set _seeCrotch = 0>>
 				<</if>>
 			<<else>>
-				Her simple mind cannot fathom a good way to see her junk like this, so what she has will come as a surprise sooner or later to her.
+				$His simple mind cannot fathom a good way to see $his junk like this, so what $he has will come as a surprise sooner or later to $him.
 				<<set _seeCrotch = 0>>
 			<</if>>
 		<<else>>
-			As her eyes center on her crotch,
+			As $his eyes center on $his crotch,
 		<</if>>
 		
 		<<if _seeCrotch == 1>>
@@ -2905,11 +2905,11 @@ Now you only have to wait for her to wake up.
 			/*(changed genitals)*/
 			<<if $args[1].vagina > -1>> /*(had a vagina)*/
 				<<if $args[0].dick > 0 && $args[1].dick > 0>> /*(had a penis)*/
-					she is relieved to find @@.coral;
+					$he is relieved to find @@.coral;
 					<<if $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
 						a cock, balls and pussy.
 					<<elseif $args[0].balls == 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
-						both a cock and pussy, though she is a little miffed that she now lacks testicles.
+						both a cock and pussy, though $he is a little miffed that $he now lacks testicles.
 					<<elseif $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls == 0>>
 						both a cock, pussy and, more surprisingly, balls.
 					<<else>>
@@ -2917,33 +2917,33 @@ Now you only have to wait for her to wake up.
 					<</if>>
 					@@
 				<<elseif $args[0].dick > 0 && $args[1].dick == 0>> /*(+penis)*/
-					she is startled to find she @@.coral;has a penis@@ now.
+					$he is startled to find $he @@.coral;has a penis@@ now.
 					<<if $args[0].vagina > -1>> /*(kept vagina)*/
-						She is confused for a moment until she lifts her new penis to @@.coral;<<if canSee($args[0])>>see<<else>>discover<</if>> a pussy under it.@@
+						$He is confused for a moment until $he lifts $his new penis to @@.coral;<<if canSee($args[0])>>see<<else>>discover<</if>> a pussy under it.@@
 					<<else>> /*(did not keep vagina, +penis or not)*/
-						She understands that she @@.coral;no longer has a vagina.@@
+						$He understands that $he @@.coral;no longer has a vagina.@@
 					<</if>>
 				<<elseif $args[0].dick == 0 && $args[1].dick > 0>> /*(had a penis)*/
-					she is shocked to <<if canSee($args[0])>>see<<else>>discover<</if>> that she @@.coral;no longer has a
+					$he is shocked to <<if canSee($args[0])>>see<<else>>discover<</if>> that $he @@.coral;no longer has a
 					<<if $args[0].balls > 0 && $args[0].scrotum > 0>>
-						penis, mostly because she still has balls.@@
+						penis, mostly because $he still has balls.@@
 					<<elseif $args[0].vagina > -1>>
-						penis, though she is glad to still have a pussy.@@
+						penis, though $he is glad to still have a pussy.@@
 					<<else>>
-						penis, or anything, for that matter, on her crotch.@@
+						penis, or anything, for that matter, on $his crotch.@@
 					<</if>>
 				<<elseif $args[0].vagina > -1>>
-					she is happy to find a familiar hole.
+					$he is happy to find a familiar hole.
 				<<else>>
-					she is startled to find she @@.coral;no longer has genitals.@@
+					$he is startled to find $he @@.coral;no longer has genitals.@@
 				<</if>>
 			<<elseif $args[1].dick > 0>> /*(had a penis)*/
 				<<if $args[0].dick > 0>>
-					she is relieved to find she @@.coral;still has her
+					$he is relieved to find $he @@.coral;still has $his
 					<<if $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
 						penis and testicles.
 					<<elseif $args[0].balls == 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
-						penis, but is a little alarmed to find she now lacks testicles.
+						penis, but is a little alarmed to find $he now lacks testicles.
 					<<elseif $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls == 0>>
 						penis, but is more interested in the dangling pair of objects beneath it.
 					<<else>>
@@ -2951,10 +2951,10 @@ Now you only have to wait for her to wake up.
 					<</if>>
 					@@
 					<<if $args[0].vagina > -1 && $args[0].balls < 6 && $args[0].dick < 10>>
-						A new sensation causes her to gaze lower. Much to her surprise, she @@.coral;now also has a pussy.@@
+						A new sensation causes $him to gaze lower. Much to $his surprise, $he @@.coral;now also has a pussy.@@
 					<</if>>
 				<<else>>
-					she is shocked to find that she @@.coral;no longer has a
+					$he is shocked to find that $he @@.coral;no longer has a
 					<<if $args[0].balls > 0 && $args[0].scrotum > 0 && $args[1].balls > 0 && $args[1].scrotum > 0>>
 						penis, but still has balls.
 					<<elseif $args[0].vagina > -1>>
@@ -2965,75 +2965,75 @@ Now you only have to wait for her to wake up.
 					@@
 				<</if>>
 			<<else>>
-				she is surprised to find
+				$he is surprised to find
 				<<if $args[0].dick > 0 && $args[0].vagina > -1 && $args[0].balls > 0 && $args[0].scrotum > 0>>
-					her crotch is fully loaded.
+					$his crotch is fully loaded.
 				<<elseif $args[0].dick > 0 && $args[0].vagina > -1>>
-					she has both a dick and pussy.
+					$he has both a dick and pussy.
 				<<elseif $args[0].dick > 0>>
-					she now has a cock<<if $args[0].balls > 0 && $args[0].scrotum > 0>> and balls<</if>> to entertain with.
+					$he now has a cock<<if $args[0].balls > 0 && $args[0].scrotum > 0>> and balls<</if>> to entertain with.
 				<<elseif $args[0].vagina > -1>>
-					she now has a pussy to get pounded in.
+					$he now has a pussy to get pounded in.
 				<<else>>
-					she is still a null. She expected something more.
+					$he is still a null. $He expected something more.
 				<</if>>
 			<</if>>
 
 			<<set _cockChanged = 0>>
 			/*(penis changes)*/
 			<<if $args[0].dick != $args[1].dick && $args[0].dick != 0 && $args[1].dick != 0>>
-				Her penis is <<if $args[0].dick > $args[1].dick + 4>>@@.lime;way bigger@@<<elseif $args[0].dick > $args[1].dick>>@@.lime;a good deal larger@@<<else>>@@.orange;smaller@@<</if>> than it was, and she is
+				$His penis is <<if $args[0].dick > $args[1].dick + 4>>@@.lime;way bigger@@<<elseif $args[0].dick > $args[1].dick>>@@.lime;a good deal larger@@<<else>>@@.orange;smaller@@<</if>> than it was, and $he is
 				<<if $args[0].fetish == "mindbroken">>
-					not bothered one way or the other by this development; it isn't even clear if she notices anything different about her cock.
+					not bothered one way or the other by this development; it isn't even clear if $he notices anything different about $his cock.
 				<<elseif $args[0].devotion > 20>>
 					<<if $args[0].dick > $args[1].dick + 4>>
-						@@.hotpink;incredibly excited@@ about this change. She laughs and groans at the weight of her shaft, and as she waggles it, it becomes increasingly obvious that she is having difficulty not straight up humping the air. She regains control over herself, though just barely.
+						@@.hotpink;incredibly excited@@ about this change. $He laughs and groans at the weight of $his shaft, and as $he waggles it, it becomes increasingly obvious that $he is having difficulty not straight up humping the air. $He regains control over $himself, though just barely.
 						<<set $args[0].devotion += 3>>
 					<<elseif $args[0].dick > $args[1].dick>>
-						pleased with this development. She takes the time to rub her newfound length across the sheets.
+						pleased with this development. $He takes the time to rub $his newfound length across the sheets.
 					<<else>>
-						accepting of it. She takes a moment to jostle her now shorter dick.
+						accepting of it. $He takes a moment to jostle $his now shorter dick.
 					<</if>>
 				<<else>>
 					<<if $args[0].dick > $args[1].dick + 4>>
-						@@.mediumaquamarine;incredibly aggravated@@ about this change. This is just one more thing she has to deal with now. How dare you give her such a massive, throbbing, sensitive piece of meat between her legs! Her glower loses its bite as you note her subconsciously thrusting her ridiculously enlarged organ against the sheets. She stops after she realizes what she is doing, nervously staying completely still to not blast a load out of her massive prick.
+						@@.mediumaquamarine;incredibly aggravated@@ about this change. This is just one more thing $he has to deal with now. How dare you give $him such a massive, throbbing, sensitive piece of meat between $his legs! $His glower loses its bite as you note $him subconsciously thrusting $his ridiculously enlarged organ against the sheets. $He stops after $he realizes what $he is doing, nervously staying completely still to not blast a load out of $his massive prick.
 						<<set $args[0].trust += 3>>
 					<<elseif $args[0].dick > $args[1].dick>>
-						annoyed at this development. She frowns as she tests her newfound growth, only thrusting once before <<if canSee($args[0])>>noticing your amused grin<<else>>sensing your gaze<</if>> and stopping.
+						annoyed at this development. $He frowns as $he tests $his newfound growth, only thrusting once before <<if canSee($args[0])>>noticing your amused grin<<else>>sensing your gaze<</if>> and stopping.
 					<<else>>
-						@@.mediumorchid;infuriated by it.@@ She jostles her smaller dick, only stopping when she starts to become flushed.
+						@@.mediumorchid;infuriated by it.@@ $He jostles $his smaller dick, only stopping when $he starts to become flushed.
 						<<set $args[0].devotion -= 5>>
 					<</if>>
 				<</if>>
 				<<set _cockChanged = 1>>
 			<</if>>
 			<<if $args[0].dickPiercing != 0 && $args[1].dickPiercing == 0>>
-				There was no missing the piercing in her dick as well.
+				There was no missing the piercing in $his dick as well.
 				<<set _cockChanged = 1>>
 			<</if>>
 			
 			/*(ball changes)*/
 			<<if $args[0].balls != $args[1].balls && $args[0].scrotum != 0 && $args[1].scrotum != 0>>
-				Then she takes a moment to jostle her balls, it seems they are
+				Then $he takes a moment to jostle $his balls, it seems they are
 				<<if $args[0].balls > $args[1].balls + 4>>
 					@@.lime;much larger@@ now. This
 					<<if $args[0].fetish == "mindbroken">>
-						does not seem to register in her mind.
+						does not seem to register in $his mind.
 					<<elseif $args[0].devotion > 20>>
-						amazing addition to her body is @@.hotpink;surely welcome@@. She moans as she rubs against her new balls, groaning as their weight shifts around. Her face is flushed by the time she’s done "examining" them.
+						amazing addition to $his body is @@.hotpink;surely welcome@@. $He moans as $he rubs against $his new balls, groaning as their weight shifts around. $His face is flushed by the time $he's done "examining" them.
 						<<set $args[0].devotion +=5>>
 					<<else>>
-						addition to her body is @@mediumaquamarine;annoying@@, clearly. The frustrated irritation on her face contrasts sharply with the actions of her hips, which are busy causing <<if $args[0].dick>>her dick to become engorged with blood<<else>>precum to start flowing freely<</if>>. Catching herself, she takes a few soothing breaths to calm her body down.
+						addition to $his body is @@mediumaquamarine;annoying@@, clearly. The frustrated irritation on $his face contrasts sharply with the actions of $his hips, which are busy causing <<if $args[0].dick>>$his dick to become engorged with blood<<else>>precum to start flowing freely<</if>>. Catching $himself, $he takes a few soothing breaths to calm $his body down.
 						<<set $args[0].trust += 5>>
 					<</if>>
 				<<elseif $args[0].balls > $args[1].balls>>
 					@@.lime;larger@@ now. This
 					<<if $args[0].fetish == "mindbroken">>
-						change doesn't mean much of anything to her.
+						change doesn't mean much of anything to $him.
 					<<elseif $args[0].devotion > 20>>
-						change delights her and she spends ample time jostling her bigger nuts.
+						change delights $him and $he spends ample time jostling $his bigger nuts.
 					<<else>>
-						change is just one more @@.hotpink;bother@@ for her. Her brow furrows as she takes a moment to feel them up and stops as <<if $args[0].dick>>her cock starts to stiffen<<else>>as a bead of precum starts to form from her urethra<</if>>.
+						change is just one more @@.hotpink;bother@@ for $him. $His brow furrows as $he takes a moment to feel them up and stops as <<if $args[0].dick>>$his cock starts to stiffen<<else>>as a bead of precum starts to form from $his urethra<</if>>.
 						<<set $args[0].devotion += 3>>
 					<</if>>
 				<<else>>
@@ -3043,7 +3043,7 @@ Now you only have to wait for her to wake up.
 					<<elseif $args[0].devotion > 20>>
 						change, while not necessarily fun, is appreciated by your devoted slave nonetheless.
 					<<else>>
-						change causes her consternation and humiliation.
+						change causes $him consternation and humiliation.
 					<</if>>
 				<</if>>
 				<<set _cockChanged = 1>>
@@ -3051,9 +3051,9 @@ Now you only have to wait for her to wake up.
 
 			<<if _cockChanged == 1 && $args[0].fetish != "mindbroken">>
 				<<if $args[0].devotion > 20>>
-					She is thrilled at your modifications to her genitals and is excited to explore those changes with you.
+					$He is thrilled at your modifications to $his genitals and is excited to explore those changes with you.
 				<<else>>
-					She is @@.mediumorchid;enraged@@ and @@.gold;frightened@@ to see such changes to her genitals, as they were fundamental parts of her identity.
+					$He is @@.mediumorchid;enraged@@ and @@.gold;frightened@@ to see such changes to $his genitals, as they were fundamental parts of $his identity.
 					<<set $args[0].devotion -= 10, $args[0].trust -= 10>>
 				<</if>>
 			<</if>>
@@ -3063,63 +3063,63 @@ Now you only have to wait for her to wake up.
 			<<if $args[0].vagina != -1>>
 				<<set _seeVagina = 1>>
 				<<if $args[0].dick > 0>>
-					Then she leans to her side to shift her dick<<if $args[0].scrotum > 0>> and balls<</if>> out of the way to inspect her vagina more closely.
+					Then $he leans to $his side to shift $his dick<<if $args[0].scrotum > 0>> and balls<</if>> out of the way to inspect $his vagina more closely.
 					<<if $args[0].balls >= 6 || $args[0].dick >= 10>>
-						There's only one problem: Her maleness is so huge it steadfastly remains in the way; there is no angle she can manage to see her vagina from.
+						There's only one problem: $His maleness is so huge it steadfastly remains in the way; there is no angle $he can manage to see $his vagina from.
 						<<set _seeVagina = 0>>
 					<</if>>
 				<<elseif $args[0].scrotum > 0>>
-					Then she leans to her side to shift her balls out of the way to inspect her vagina more closely.
+					Then $he leans to $his side to shift $his balls out of the way to inspect $his vagina more closely.
 					<<if $args[0].balls >= 6>>
-						There's only one problem: Her testicles are so huge they steadfastly remain in the way; there is no angle she can manage to see her vagina from.
+						There's only one problem: $His testicles are so huge they steadfastly remain in the way; there is no angle $he can manage to see $his vagina from.
 						<<set _seeVagina = 0>>
 					<</if>>
 				<<else>>
-					Next she gives her vagina a closer inspection.
+					Next $he gives $his vagina a closer inspection.
 				<</if>>
 				<<if _seeVagina == 1>>
 					<<if $args[0].vagina == 0>> /*(+virginity)*/
-						She can't really tell, but it looks like it may be @@.lime;unbroken.@@
+						$He can't really tell, but it looks like it may be @@.lime;unbroken.@@
 						<<if $args[0].vagina > 0>>
 							<<if $args[0].fetish == "mindbroken">>
-								And this would likely mean something to her, if her mind was not lost.
+								And this would likely mean something to $him, if $his mind was not lost.
 							<<elseif $args[0].devotion > 20>>
-								She is happy to be a virgin again so that she can lose it to you.
+								$He is happy to be a virgin again so that $he can lose it to you.
 							<<else>>
-								She is @@.hotpink;happy@@ to be a virgin again, but @@.gold;worries@@ about how long it will last.
+								$He is @@.hotpink;happy@@ to be a virgin again, but @@.gold;worries@@ about how long it will last.
 								<<set $args[0].devotion += 3, $args[0].trust -= 3>>
 							<</if>>
 						<</if>>
 					<<elseif $args[1].vagina != -1 && $args[0].vagina < $args[1].vagina>> /*(+tightness)*/
-						She can't really tell, but it looks like it may be @@.lime;tighter@@ now.
+						$He can't really tell, but it looks like it may be @@.lime;tighter@@ now.
 						<<if $args[0].fetish == "mindbroken">>
-							And this might have been significant to her, if her brain worked correctly.
+							And this might have been significant to $him, if $his brain worked correctly.
 						<<elseif $args[0].devotion > 20>>
-							Sex will be more pleasurable than it was before and she looks forward to breaking in her new pussy with you.
+							Sex will be more pleasurable than it was before and $he looks forward to breaking in $his new pussy with you.
 						<<else>>
-							She groans in @@.mediumorchid;frustration.@@ She is well aware of the displeasure of having a pussy forcibly broken in and does not look forward to it again.
+							$He groans in @@.mediumorchid;frustration.@@ $He is well aware of the displeasure of having a pussy forcibly broken in and does not look forward to it again.
 							<<set $args[0].devotion -= 2>>
 						<</if>>
 					<<elseif $args[1].vagina != -1 && $args[0].vagina > $args[1].vagina>> /*(-tightness)*/
-						She can't really tell, but it looks like it may be @@.orange;looser@@ now.
+						$He can't really tell, but it looks like it may be @@.orange;looser@@ now.
 						<<if $args[0].fetish == "mindbroken">>
-							And this might be important to her, if her head was in working order.
+							And this might be important to $him, if $his head was in working order.
 						<<elseif $args[0].devotion > 20>>
-							She giggles a bit as she tests out how many fingers she can fit inside her new loose hole, though she wishes she were still tight for you.
+							$He giggles a bit as $he tests out how many fingers $he can fit inside $his new loose hole, though $he wishes $he were still tight for you.
 						<<else>>
-							She @@.mediumorchid;frowns@@ as she feels out how much looser she is now. She supposes it saves her from getting fucked loose, but it is humiliating how many more fingers she can fit inside herself without even having to part her lips. /*This is not how vaginas work goddamit. - is that better? */
+							$He @@.mediumorchid;frowns@@ as $he feels out how much looser $he is now. $He supposes it saves $him from getting fucked loose, but it is humiliating how many more fingers $he can fit inside $himself without even having to part $his lips. /*This is not how vaginas work goddamit. - is that better? */
 							<<set $args[0].devotion -= 1>>
 						<</if>>
 					<<elseif $args[0].vagina == $args[1].vagina>>
-						It's looks like her old vagina.
+						It's looks like $his old vagina.
 					<<else>>
-						After a bit of flexing, she's satisfied with her new organ.
+						After a bit of flexing, $he's satisfied with $his new organ.
 					<</if>>
 					<<if $args[0].clitPiercing > 0 && $args[1].clitPiercing == 0 && $args[0].dick == 0>>
-						She also noticed a glimmer her clit.
+						$He also noticed a glimmer $his clit.
 					<</if>>
 					<<if $args[0].vaginaPiercing != 0 && $args[1].vaginaPiercing == 0>>
-						She also now has piercings in her vagina, a ring around her labia, creating a halo of sparkles that she couldn't help but marvel at.
+						$He also now has piercings in $his vagina, a ring around $his labia, creating a halo of sparkles that $he couldn't help but marvel at.
 					<</if>>
 				<</if>>
 			<</if>>
@@ -3127,67 +3127,67 @@ Now you only have to wait for her to wake up.
 		
 		<<if ($args[0].boobsTat != $args[1].boobsTat || $args[0].buttTat != $args[1].buttTat || $args[0].lipsTat != $args[1].lipsTat || $args[0].vaginaTat != $args[1].vaginaTat || $args[0].anusTat != $args[1].anusTat || $args[0].dickTat != $args[1].dickTat || $args[0].customTat != $args[1].customTat || $args[0].shouldersTat != $args[1].shouldersTat || $args[0].armsTat != $args[1].armsTat || $args[0].legsTat != $args[1].legsTat || $args[0].backTat != $args[1].backTat || $args[0].stampTat != $args[1].stampTat || $args[0].bellyTat != $args[1].bellyTat) && $args[0].fetish != "mindbroken">>
 			<br><br>
-			The changes to her tattoos were not lost on her, but compared to everything else, they were truly insignificant.
+			The changes to $his tattoos were not lost on $him, but compared to everything else, they were truly insignificant.
 		<</if>>
 
 		<<if $args[0].fetish != "mindbroken" && $args[0].origBodyOwnerID == $args[0].ID>>
-			This is her body alright. Some things might have changed,
+			This is $his body alright. Some things might have changed,
 			<<if $args[0].devotion > 50>>
-				but she enjoyed the time they spent apart.
+				but $he enjoyed the time they spent apart.
 			<<elseif $args[0].devotion >= -20>>
 				but @@.mediumaquamarine;it's good to be home.@@
 				<<set $args[0].trust += 15>>
 			<<else>>
-				but @@.mediumaquamarine;she's where she belongs.@@ Now to get it back the way @@.mediumorchid;she likes it.@@
+				but @@.mediumaquamarine;$he's where $he belongs.@@ Now to get it back the way @@.mediumorchid;$he likes it.@@
 				<<set $args[0].trust += 30, $args[0].devotion -= 15>>
 			<</if>>
 		<</if>>
 
 	<</if>>
-<<else>> /* blind amp that needs you to detail the changes to her body */
-	After a while, she begins to stir, her eyes fluttering.
+<<else>> /* blind amp that needs you to detail the changes to $his body */
+	After a while, $he begins to stir, $his eyes fluttering.
 	<<if _sight == -2>>
 		<<if $args[0].fetish != "mindbroken">>
 			<<if $args[0].devotion >= 50>>
-				She nearly panics when she finds @@.red;she can no longer see.@@ She barely manages to keep calm before accepting this is the fate you have chosen for her.
+				$He nearly panics when $he finds @@.red;$he can no longer see.@@ $He barely manages to keep calm before accepting this is the fate you have chosen for $him.
 			<<elseif $args[0].devotion > 20>>
-				She starts to panic as she realizes @@.red;she can no longer see.@@ After a short expurgation of @@.gold;grief and terror,@@ she takes a deep breath and visibly suppresses her emotions before returning to her inspection.
+				$He starts to panic as $he realizes @@.red;$he can no longer see.@@ After a short expurgation of @@.gold;grief and terror,@@ $he takes a deep breath and visibly suppresses $his emotions before returning to $his inspection.
 				<<set $args[0].trust -= 15>>
 			<<else>>
-				A deep panic sets in as she realizes @@.red;she can no longer see.@@ After a short expurgation of @@.gold;grief and terror,@@ she takes a deep breath and visibly suppresses her emotions.
+				A deep panic sets in as $he realizes @@.red;$he can no longer see.@@ After a short expurgation of @@.gold;grief and terror,@@ $he takes a deep breath and visibly suppresses $his emotions.
 				<<set $args[0].trust -= 30>>
 			<</if>>
 		<<else>>
-			A deep panic sets in as she realizes @@.red;she can no longer see.@@ She begins thrashing violently until she is restrained and sedated. Hopefully when she comes to again, she'll have forgotten she could ever see in the first place.
+			A deep panic sets in as $he realizes @@.red;$he can no longer see.@@ $He begins thrashing violently until $he is restrained and sedated. Hopefully when $he comes to again, $he'll have forgotten $he could ever see in the first place.
 			<<set _end = 1>>
 		<</if>>
 	<</if>>
 	<<if _end != 1>>
-		She lets out a low groan and reaches up to rub at her eyes. Or rather, she attempts to. A visible look of confusion crosses her face and she strains to sit up, but all she manages to do is wiggle, her movements reminding you of a suffocating goldfish. As the cloud of anesthetics fades, she realizes what's happened to her
+		$He lets out a low groan and reaches up to rub at $his eyes. Or rather, $he attempts to. A visible look of confusion crosses $his face and $he strains to sit up, but all $he manages to do is wiggle, $his movements reminding you of a suffocating goldfish. As the cloud of anesthetics fades, $he realizes what's happened to $him
 		<<if $args[0].fetish == "mindbroken">>
-			and is supremely unaffected by it, as her mind has already left her.
+			and is supremely unaffected by it, as $his mind has already left $him.
 		<<elseif $args[0].devotion > 20>>
-			and begins to panic, her breaths quickening. With a visible look of concentration, her breathing slows and she tries to take stock of her new body.
+			and begins to panic, $his breaths quickening. With a visible look of concentration, $his breathing slows and $he tries to take stock of $his new body.
 			<<if $args[1].amp == 1>> /*(was already an amputee)*/
-				but she realizes that at least nothing about her limbs, or lack thereof, has changed.
+				but $he realizes that at least nothing about $his limbs, or lack thereof, has changed.
 			<<else>>
-				and begins to panic, her breaths quickening. She quickly realizes @@.gold;you have taken her arms and legs.@@
+				and begins to panic, $his breaths quickening. $He quickly realizes @@.gold;you have taken $his arms and legs.@@
 				<<set $args[0].trust -= 15>>
 			<</if>>
 		<<else>>
 			<<if $args[1].amp == 1>> /*(was already an amputee)*/
-				but she realizes that at least nothing about her limbs, or lack thereof, has changed.
+				but $he realizes that at least nothing about $his limbs, or lack thereof, has changed.
 			<<else>>
-				Her eyes seemed to bulge, her heart monitor begins to beep faster and more insistently. Eventually, your assistant is forced to inject her with a sedative. Her eyes flutter closed and the heart monitors beeping slows to a steady pulse. Hopefully she’ll be calmer when she wakes up again, though the memory of waking without limbs will @@.gold;stick with her.@@
+				$His eyes seemed to bulge, $his heart monitor begins to beep faster and more insistently. Eventually, your assistant is forced to inject $him with a sedative. $His eyes flutter closed and the heart monitors beeping slows to a steady pulse. Hopefully $he'll be calmer when $he wakes up again, though the memory of waking without limbs will @@.gold;stick with $him.@@
 				<br>
 				...
 				<br>
-				When she wakes up again, she seems stable; the cold @@.hotpink;acceptance@@ of her fate clouds her eyes.
+				When $he wakes up again, $he seems stable; the cold @@.hotpink;acceptance@@ of $his fate clouds $his eyes.
 				<<set $args[0].devotion += 5, $args[0].trust -= 15>>
 			<</if>>
 		<</if>>
 	
-		Since she has no sight to see the changes to her body, nor hands to feel them, she lacks any real ability to visualize her new body. You could explain the changes to her, or even fondle her new assets, but ultimately it will lack the same impact of forcing her to discover herself.
+		Since $he has no sight to see the changes to $his body, nor hands to feel them, $he lacks any real ability to visualize $his new body. You could explain the changes to $him, or even fondle $his new assets, but ultimately it will lack the same impact of forcing $him to discover $himself.
 		
 	<</if>>
 <</if>>
diff --git a/src/pregmod/widgets/pregmodBirthWidgets.tw b/src/pregmod/widgets/pregmodBirthWidgets.tw
index 9839c527143..f400714d2e8 100644
--- a/src/pregmod/widgets/pregmodBirthWidgets.tw
+++ b/src/pregmod/widgets/pregmodBirthWidgets.tw
@@ -14,37 +14,37 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She runs her hands across the still huge dome of her middle; to her, gravidity and birth is nothing out of the ordinary.
+				$He is helped back to her bed and stripped before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He runs her hands across the still huge dome of her middle; to $him, gravidity and birth is nothing out of the ordinary.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+				$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 				<<ClothingBirth>>
-				She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes resting.
+				$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes resting.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She rolls over, cradling her heavily rounded middle, and dozes off.
+				$He is helped back to her bed and stripped before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He rolls over, cradling her heavily rounded middle, and dozes off.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+				$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 				<<ClothingBirth>>
-				She struggles to collect her child and places them in the cradle readied for her. She is helped to the shower as your servants clean up and remove her child.
+				$He struggles to collect her child and places them in the cradle readied for $him. $He is helped to the shower as your servants clean up and remove her child.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She runs her hands across the still huge dome of her middle; to her, gravidity and birth is nothing out of the ordinary.
+				$He returns to her bed and strips before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He runs her hands across the still huge dome of her middle; to $him, gravidity and birth is nothing out of the ordinary.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+				$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 				<<ClothingBirth>>
-				She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes resting.
+				$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes resting.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She rolls over, cradling her heavily rounded middle, and dozes off.
+				$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He rolls over, cradling her heavily rounded middle, and dozes off.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+				$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 				<<ClothingBirth>>
-				She struggles to collect her child and places them in the cradle readied for her. She hefts her still very gravid body out of bed to take a shower as your servants clean up and remove her child.
+				$He struggles to collect her child and places them in the cradle readied for $him. $He hefts her still very gravid body out of bed to take a shower as your servants clean up and remove her child.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -54,37 +54,37 @@
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if $slaves[$i].subTarget == 0>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests for a short while before returned to your waiting slaves.
+				$He returns to her bed and strips before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests for a short while before returned to your waiting slaves.
 			<<else>>
 				While servicing your other slaves, $slaves[$i].slaveName's water breaks, though it does nothing to deter her from her task.
 				<<ClothingBirth>>
-				No sooner than <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby is born, a cock is shoved into her gaping, still very gravid <<if $slaves[$i].mpreg == 1>>asshole<<else>>pussy<</if>> as she draws her child to her breast.
+				No sooner than <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby is born, a cock is shoved into her gaping, still very gravid <<if $slaves[$i].mpreg == 1>>asshole<<else>>pussy<</if>> as $he draws her child to her breast.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She lead by _tempSub.slaveName to a private room so that she may watch. Instinctively she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her watching audience. Her child is promptly taken and _tempSub.slaveName eagerly descends upon her defenseless and still very gravid body.
+				$He lead by _tempSub.slaveName to a private room so that $he may watch. Instinctively $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her watching audience. $His child is promptly taken and _tempSub.slaveName eagerly descends upon her defenseless and still very gravid body.
 			<<else>>
 				While servicing _tempSub.slaveName, $slaves[$i].slaveName's water breaks, though it does nothing to deter her from her task.
 				<<ClothingBirth>>
-				No sooner than <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby is born does she go back to pleasuring her dom.
+				No sooner than <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby is born does $he go back to pleasuring her dom.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].subTarget == 0>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests for a short while before returned to your waiting slaves.
+				$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests for a short while before returned to your waiting slaves.
 			<<else>>
-				While servicing your other slaves, $slaves[$i].slaveName's water breaks, causing her to immediately try to break off. However, a hand quickly hooks her gravid bulk and she is pulled back into another slave's crotch.
+				While servicing your other slaves, $slaves[$i].slaveName's water breaks, causing her to immediately try to break off. However, a hand quickly hooks her gravid bulk and $he is pulled back into another slave's crotch.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She is allowed a moment to prepare <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off before returning to pleasuring your other slaves.
+				$He is allowed a moment to prepare <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off before returning to pleasuring your other slaves.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She taken by _tempSub.slaveName to a private room so that she may watch. Reluctantly, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, fully aware of _tempSub.slaveName's <<if _tempSub.fetish == "pregnancy">>hungry gaze<<else>>amused gaze<</if>>. Her child is promptly taken and _tempSub.slaveName eagerly descends upon her exhausted and still very gravid body.
+				$He taken by _tempSub.slaveName to a private room so that $he may watch. Reluctantly, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of _tempSub.slaveName's <<if _tempSub.fetish == "pregnancy">>hungry gaze<<else>>amused gaze<</if>>. $His child is promptly taken and _tempSub.slaveName eagerly descends upon her exhausted and still very gravid body.
 				<<set $humiliation = 1>>
 			<<else>>
-				While servicing _tempSub.slaveName, $slaves[$i].slaveName's water breaks, causing her to immediately try to break off. Her dom eagerly watches her gravid sub's ordeal.
+				While servicing _tempSub.slaveName, $slaves[$i].slaveName's water breaks, causing her to immediately try to break off. $His dom eagerly watches her gravid sub's ordeal.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
 				_tempSub.slaveName collects the newborn child to be sent off before returning, caressing the swell of her still huge belly and planting her crotch directly onto her exhausted sub's face.
@@ -96,39 +96,39 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to her work as a pregnant whore.
+				$He is helped back to her bed and stripped before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to her work as a pregnant whore.
 			<<else>>
 				While attempting to attract customers with her gravid body, $slaves[$i].slaveName's water breaks.
 				<<ClothingBirth>>
-				She struggles to bring <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to her breast as she resumes whoring, oblivious to the free show she just gave her customers.
+				$He struggles to bring <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to her breast as $he resumes whoring, oblivious to the free show $he just gave her customers.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to her work as a pregnant whore.
+				$He is helped back to her bed and stripped before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to her work as a pregnant whore.
 			<<else>>
-				While attempting to attract customers with her gravid body, $slaves[$i].slaveName's water breaks, soaking her. She attempts to get someplace safe to give birth but finds it impossible.
+				While attempting to attract customers with her gravid body, $slaves[$i].slaveName's water breaks, soaking $him. $He attempts to get someplace safe to give birth but finds it impossible.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She lies on the ground, exhausted and covered in sperm from the circle of men watching her, until she recovers enough to heft her still very gravid body to its feet and collect <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+				$He lies on the ground, exhausted and covered in sperm from the circle of men watching $him, until $he recovers enough to heft her still very gravid body to its feet and collect <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to her work as a pregnant whore.
+				$He returns to her bed and strips before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to her work as a pregnant whore.
 			<<else>>
 				While attempting to attract customers with her gravid body, $slaves[$i].slaveName's water breaks.
 				<<ClothingBirth>>
-				She struggles to bring <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to her breast as she resumes whoring, oblivious to the free show she just gave her customers.
+				$He struggles to bring <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to her breast as $he resumes whoring, oblivious to the free show $he just gave her customers.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to her work as a pregnant whore.
+				$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to her work as a pregnant whore.
 			<<else>>
-				While attempting to attract customers with her gravid body, $slaves[$i].slaveName's water breaks, soaking her. She attempts to get someplace safe to give birth but finds her path blocked by rowdy johns.
+				While attempting to attract customers with her gravid body, $slaves[$i].slaveName's water breaks, soaking $him. $He attempts to get someplace safe to give birth but finds her path blocked by rowdy johns.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She lies on the ground, exhausted and covered in sperm from the circle of men watching her, until she recovers enough to push her still very gravid body to its feet and collect <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+				$He lies on the ground, exhausted and covered in sperm from the circle of men watching $him, until $he recovers enough to push her still very gravid body to its feet and collect <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -137,84 +137,84 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to sharing her gravid body with the public.
+				$He is helped back to her bed and stripped before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to sharing her gravid body with the public.
 			<<else>>
 				<<if (_birthScene > 80) && canDoVaginal($slaves[$i])>>
-					While riding a citizen's dick, $slaves[$i].slaveName's water breaks on him. Showing no signs of stopping, he shoves her bulk off of him. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. She draws her child to her breast before seeking out the next citizen's cock.
+					While riding a citizen's dick, $slaves[$i].slaveName's water breaks on him. Showing no signs of stopping, he shoves her bulk off of him. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. $He draws her child to her breast before seeking out the next citizen's cock.
 				<<elseif (_birthScene > 60) && canDoAnal($slaves[$i])>>
-					While taking a citizen's dick in her ass, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so he allows her to reposition and continue. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next citizen's cock.
+					While taking a citizen's dick in her ass, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so he allows her to reposition and continue. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next citizen's cock.
 				<<elseif (_birthScene > 40)>>
-					While licking a citizen's cunt, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so she allows her to reposition and continue.
+					While licking a citizen's cunt, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so $he allows her to reposition and continue.
 					<<ClothingBirth>>
-					The citizen splashes across her face as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next citizen's cunt.
+					The citizen splashes across her face as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next citizen's cunt.
 				<<else>>
-					While sucking a citizen's dick, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so he allows her to reposition and continue.
+					While sucking a citizen's dick, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so he allows her to reposition and continue.
 					<<ClothingBirth>>
-					He cums down her throat as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next citizen's cock.
+					He cums down her throat as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next citizen's cock.
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to sharing her gravid body with the public.
+				$He is helped back to her bed and stripped before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to sharing her gravid body with the public.
 			<<else>>
 				<<if (_birthScene > 80) && canDoVaginal($slaves[$i])>>
-					While riding a citizen's dick, $slaves[$i].slaveName's water breaks on him. She desperately tries to disengage but he grabs her hips and slams her back down. He thoroughly enjoys her contracting cunt before pushing her off and standing over her, jacking off. Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He cums over her heaving, still very gravid body and moves on leaving her to recover and collect her child to be sent off.
+					While riding a citizen's dick, $slaves[$i].slaveName's water breaks on him. $He desperately tries to disengage but he grabs her hips and slams her back down. He thoroughly enjoys her contracting cunt before pushing her off and standing over $him, jacking off. Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He cums over her heaving, still very gravid body and moves on leaving her to recover and collect her child to be sent off.
 					<<set $humiliation = 1>>
 				<<elseif (_birthScene > 60) && canDoAnal($slaves[$i])>>
-					While taking a citizen's dick in her ass, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but he grabs her hips and slams into her hard. Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as she collapses onto her still very gravid belly and slips to her side. She quickly gathers her child to be sent off.
+					While taking a citizen's dick in her ass, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but he grabs her hips and slams into her hard. Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as $he collapses onto her still very gravid belly and slips to her side. $He quickly gathers her child to be sent off.
 					<<set $humiliation = 1>>
 				<<elseif (_birthScene > 40)>>
-					While licking a citizen's cunt, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but she grabs her head and slams her back into her crotch.
+					While licking a citizen's cunt, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but $he grabs her head and slams her back into her crotch.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					She cums across her face before helping her still very gravid body to the ground and leaving. When she recovers, she quickly gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+					$He cums across her face before helping her still very gravid body to the ground and leaving. When $he recovers, $he quickly gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 				<<else>>
-					While sucking a citizen's dick, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but he grabs her head and slams her back into his crotch.
+					While sucking a citizen's dick, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but he grabs her head and slams her back into his crotch.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					He cums down her throat before letting her collapse to the ground and leaving. When she recovers and pushes her still very gravid body upright, she quickly gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+					He cums down her throat before letting her collapse to the ground and leaving. When $he recovers and pushes her still very gravid body upright, $he quickly gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 				<</if>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to sharing her gravid body with the public.
+				$He returns to her bed and strips before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to sharing her gravid body with the public.
 			<<else>>
 				<<if (_birthScene > 80) && canDoVaginal($slaves[$i])>>
-					While riding a citizen's dick, $slaves[$i].slaveName's water breaks on him. Showing no signs of stopping, he shoves her bulk off of him. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. She draws her child to her breast before seeking out the next citizen's cock.
+					While riding a citizen's dick, $slaves[$i].slaveName's water breaks on him. Showing no signs of stopping, he shoves her bulk off of him. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. $He draws her child to her breast before seeking out the next citizen's cock.
 				<<elseif (_birthScene > 60) && canDoAnal($slaves[$i])>>
-					While taking a citizen's dick in her ass, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so he allows her to reposition and continue. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next citizen's cock.
+					While taking a citizen's dick in her ass, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so he allows her to reposition and continue. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next citizen's cock.
 				<<elseif (_birthScene > 40)>>
-					While licking a citizen's cunt, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so she allows her to reposition and continue.
+					While licking a citizen's cunt, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so $he allows her to reposition and continue.
 					<<ClothingBirth>>
-					The citizen splashes across her face as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next citizen's cunt.
+					The citizen splashes across her face as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next citizen's cunt.
 				<<else>>
-					While sucking a citizen's dick, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so he allows her to reposition and continue.
+					While sucking a citizen's dick, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so he allows her to reposition and continue.
 					<<ClothingBirth>>
-					He cums down her throat as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next citizen's cock.
+					He cums down her throat as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next citizen's cock.
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to sharing her gravid body with the public.
+				$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to sharing her gravid body with the public.
 			<<else>>
 				<<if (_birthScene > 80) && canDoVaginal($slaves[$i])>>
-					While riding a citizen's dick, $slaves[$i].slaveName's water breaks on him. She desperately tries to disengage but he grabs her hips and slams her back down. He thoroughly enjoys her contracting cunt before pushing her off and standing over her, jacking off. Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He cums over her heaving, still very gravid body and moves on leaving her to recover and collect her child to be sent off.
+					While riding a citizen's dick, $slaves[$i].slaveName's water breaks on him. $He desperately tries to disengage but he grabs her hips and slams her back down. He thoroughly enjoys her contracting cunt before pushing her off and standing over $him, jacking off. Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He cums over her heaving, still very gravid body and moves on leaving her to recover and collect her child to be sent off.
 					<<set $humiliation = 1>>
 				<<elseif (_birthScene > 60) && canDoAnal($slaves[$i])>>
-					While taking a citizen's dick in her ass, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but he grabs her hips and slams into her hard. Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as she collapses onto her still very gravid belly and slips to her side. She quickly gathers her child to be sent off.
+					While taking a citizen's dick in her ass, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but he grabs her hips and slams into her hard. Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as $he collapses onto her still very gravid belly and slips to her side. $He quickly gathers her child to be sent off.
 					<<set $humiliation = 1>>
 				<<elseif (_birthScene > 40)>>
-					While licking a citizen's cunt, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but she grabs her head and slams her back into her crotch.
+					While licking a citizen's cunt, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but $he grabs her head and slams her back into her crotch.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					She cums across her face before helping her still very gravid body to the ground and leaving. When she recovers, she quickly gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+					$He cums across her face before helping her still very gravid body to the ground and leaving. When $he recovers, $he quickly gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 				<<else>>
-					While sucking a citizen's dick, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but he grabs her head and slams her back into his crotch.
+					While sucking a citizen's dick, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but he grabs her head and slams her back into his crotch.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					He cums down her throat before letting her collapse to the ground and leaving. When she recovers and pushes her still very gravid body to its feet, she quickly gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+					He cums down her throat before letting her collapse to the ground and leaving. When $he recovers and pushes her still very gravid body to its feet, $he quickly gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -223,46 +223,46 @@
 <<case "work a glory hole">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if (random(1,20) > $suddenBirth)>>
-			Since she is unable to leave her box, she doesn't have far to go. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is quickly extracted from the box. She never notices, focused entirely on the fresh cock poking through the glory hole and the sensation of her still very gravid middle rubbing the wall.
+			Since $he is unable to leave her box, $he doesn't have far to go. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is quickly extracted from the box. $He never notices, focused entirely on the fresh cock poking through the glory hole and the sensation of her still very gravid middle rubbing the wall.
 		<<else>>
-			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's water breaks. She makes no effort to stop sucking the dicks presented to her.
+			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's water breaks. $He makes no effort to stop sucking the dicks presented to $him.
 			<<ClothingBirth>>
-			<<if $slaves[$i].birthsTotal == 0>>Her first<<else>>This week's<</if>> child is quickly extracted from the box. She never notices, focused entirely on the fresh cock poking through the glory hole and the sensation of her still very gravid middle rubbing the wall.
+			<<if $slaves[$i].birthsTotal == 0>>$His first<<else>>This week's<</if>> child is quickly extracted from the box. $He never notices, focused entirely on the fresh cock poking through the glory hole and the sensation of her still very gravid middle rubbing the wall.
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			Since she is unable to leave her box, she doesn't have far to go. She quickly finishes the waiting dick before shifting herself into a slightly, though not by much, more comfortable position. She begins laboring on <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child. As she finishes, the box is opened and her child is gathered and taken away before she is ordered back to sucking.
+			Since $he is unable to leave her box, $he doesn't have far to go. $He quickly finishes the waiting dick before shifting herself into a slightly, though not by much, more comfortable position. $He begins laboring on <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child. As $he finishes, the box is opened and her child is gathered and taken away before $he is ordered back to sucking.
 		<<else>>
-			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's water breaks. She quickly finishes the dick off before seating herself in the back of the box.
+			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's water breaks. $He quickly finishes the dick off before seating herself in the back of the box.
 			<<ClothingBirth>>
-			As she finishes, she could have sworn she saw an eye peeping through the glory hole, watching the show. The box is opened and <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child is gathered and taken away as she struggles to reach the fresh cock poking through the hole.
+			As $he finishes, $he could have sworn $he saw an eye peeping through the glory hole, watching the show. The box is opened and <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child is gathered and taken away as $he struggles to reach the fresh cock poking through the hole.
 		<</if>>
 	<</if>>
 
 <<case "get milked">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if $dairyPregSetting > 0>>
-			Since the dairy is designed for pregnant cows, she stays hooked up to the milkers. She shows little interest in her coming birth, instead focusing on her milky breasts. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She shows no interest in her child being removed from the milking stall, nor when her still very gravid body is hosed off.
+			Since the dairy is designed for pregnant cows, $he stays hooked up to the milkers. $He shows little interest in her coming birth, instead focusing on her milky breasts. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He shows no interest in her child being removed from the milking stall, nor when her still very gravid body is hosed off.
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				<<if !canWalk($slaves[$i])>>She is helped back to her bed and stripped before slipping into it<<else>>She returns to her bed and strips before slipping into it<</if>>. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to the milkers to lighten her swelling breasts.
+				<<if !canWalk($slaves[$i])>>$He is helped back to her bed and stripped before slipping into it<<else>>$He returns to her bed and strips before slipping into it<</if>>. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to the milkers to lighten her swelling breasts.
 			<<else>>
-				While getting milked, $slaves[$i].slaveName's water breaks. She show little interest and continues kneading her breasts.
+				While getting milked, $slaves[$i].slaveName's water breaks. $He show little interest and continues kneading her breasts.
 				<<ClothingBirth>>
-				She shows no interest in <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child being removed from the milking stall, nor her still very gravid middle, instead focusing entirely on draining her breasts.
+				$He shows no interest in <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child being removed from the milking stall, nor her still very gravid middle, instead focusing entirely on draining her breasts.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $dairyPregSetting > 0>>
-			Since the dairy is designed for pregnant cows, she stays hooked up to the milkers. She meekly protests her situation, but ultimately accepts it. She begins working on birthing her <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, and catches a glimpse of her child being removed from the milking stall, but quickly forgets when she is hosed off.
+			Since the dairy is designed for pregnant cows, $he stays hooked up to the milkers. $He meekly protests her situation, but ultimately accepts it. $He begins working on birthing her <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, and catches a glimpse of her child being removed from the milking stall, but quickly forgets when $he is hosed off.
 			<<set $humiliation = 1>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				<<if !canWalk($slaves[$i])>>She is helped back to her bed and stripped before slipping into it<<else>>She returns to her bed and strips before slipping into it<</if>>. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to the milkers to lighten her swelling breasts.
+				<<if !canWalk($slaves[$i])>>$He is helped back to her bed and stripped before slipping into it<<else>>$He returns to her bed and strips before slipping into it<</if>>. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to the milkers to lighten her swelling breasts.
 			<<else>>
-				While getting milked, $slaves[$i].slaveName's water breaks. She shifts into a comfortable position to give birth while the milker works her breasts.
+				While getting milked, $slaves[$i].slaveName's water breaks. $He shifts into a comfortable position to give birth while the milker works her breasts.
 				<<ClothingBirth>>
-				She takes a break from milking to collect <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child for removal and to catch her breath before reattaching the milkers and coaxing her milk to begin flowing anew.
+				$He takes a break from milking to collect <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child for removal and to catch her breath before reattaching the milkers and coaxing her milk to begin flowing anew.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -271,53 +271,53 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				You strip her and help her onto your couch. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she falls into a contented nap. You fondle her still very gravid body until a servant comes to help clean her up.
+				You strip her and help her onto your couch. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he falls into a contented nap. You fondle her still very gravid body until a servant comes to help clean her up.
 			<<else>>
-				While sitting absentmindedly nearby, $slaves[$i].slaveName's water breaks soaking the floor under her. She pays no heed to it and continues waiting for you to use her.
+				While sitting absentmindedly nearby, $slaves[$i].slaveName's water breaks soaking the floor under $him. $He pays no heed to it and continues waiting for you to use $him.
 				<<ClothingBirth>>
-				You certainly enjoyed the show as you call for a servant to take away <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and to clean up the spill.
+				You certainly enjoyed the show as you call for a servant to take away <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and to clean up the spill.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
 				<<if $slaves[$i].devotion > 20>>
-					She moans lewdly at you and wiggles her hips. As she teases, she begins pushing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby out. As she crowns, you pull her into your arms and hold her close. You hold her in a comforting embrace until she finishes.
+					$He moans lewdly at you and wiggles her hips. As $he teases, $he begins pushing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby out. As $he crowns, you pull her into your arms and hold her close. You hold her in a comforting embrace until $he finishes.
 				<<elseif $slaves[$i].devotion >= -20>>
-					She releases a lewd moan and begins attempting to remove her clothes. You approach her, clearing her vagina and helping her onto the couch, where you take a seat next to her to fondle her vulnerable body. She begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Once she finishes, you give her some time to catch her breath.
+					$He releases a lewd moan and begins attempting to remove her clothes. You approach $him, clearing her vagina and helping her onto the couch, where you take a seat next to her to fondle her vulnerable body. $He begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. Once $he finishes, you give her some time to catch her breath.
 				<<else>>
-					She begins desperately begging to be taken back to her bed; instead you pull her towards the couch and take a seat with her in your lap, back against your front. Blushing thoroughly, she gives a meek protest before focusing on the coming birth, rather than your wandering hands. She begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby.
+					$He begins desperately begging to be taken back to her bed; instead you pull her towards the couch and take a seat with her in your lap, back against your front. Blushing thoroughly, $he gives a meek protest before focusing on the coming birth, rather than your wandering hands. $He begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby.
 					<<set $humiliation = 1>>
 				<</if>>
-				 Her child is promptly taken and, following a shower and a fresh change of clothes, she is helped back to your office<<if $slaves[$i].devotion < -20>> where you are waiting to enjoy her still very gravid body<</if>>.
+				 $His child is promptly taken and, following a shower and a fresh change of clothes, $he is helped back to your office<<if $slaves[$i].devotion < -20>> where you are waiting to enjoy her still very gravid body<</if>>.
 			<<else>>
-				While sitting nearby, $slaves[$i].slaveName's water breaks, startling her. She looks to you for guidance and you shake your head "no". Without permission to leave she <<if $slaves[$i].devotion > 50>>decides to give you a show<<elseif $slaves[$i].devotion > 20>>reluctantly decides giving birth in front of you isn't so bad<<else>>begins to panic as her contractions come sooner and sooner<<set $humiliation = 1>><</if>>.
+				While sitting nearby, $slaves[$i].slaveName's water breaks, startling $him. $He looks to you for guidance and you shake your head "no". Without permission to leave $he <<if $slaves[$i].devotion > 50>>decides to give you a show<<elseif $slaves[$i].devotion > 20>>reluctantly decides giving birth in front of you isn't so bad<<else>>begins to panic as her contractions come sooner and sooner<<set $humiliation = 1>><</if>>.
 				<<ClothingBirth>>
-				As thanks for the show, you help her still very gravid body to the couch so she can recover before returning to her duties. You call for a servant to take away <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and to clean up your floor and your toy.
+				As thanks for the show, you help her still very gravid body to the couch so $he can recover before returning to her duties. You call for a servant to take away <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and to clean up your floor and your toy.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she falls into a contented nap. That is until you drag her still very gravid ass out of bed, inquiring where she waddled off to without your permission.
+				$He returns to her bed and strips before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he falls into a contented nap. That is until you drag her still very gravid ass out of bed, inquiring where $he waddled off to without your permission.
 			<<else>>
-				While standing absentmindedly nearby, $slaves[$i].slaveName's water breaks soaking the floor under her. She pays no heed to it and continues waiting for you to use her.
+				While standing absentmindedly nearby, $slaves[$i].slaveName's water breaks soaking the floor under $him. $He pays no heed to it and continues waiting for you to use $him.
 				<<ClothingBirth>>
-				You certainly enjoyed the show as you call for a servant to take away <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and to clean up the spill.
+				You certainly enjoyed the show as you call for a servant to take away <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and to clean up the spill.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
 				<<if $slaves[$i].devotion > 20>>
-					She seeks you out and begins slowly stripping. As she teases, she begins pushing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby out. As she crowns, she throws herself into your waiting arms and holds herself to you. You hold her in a comforting embrace until she finishes.
+					$He seeks you out and begins slowly stripping. As $he teases, $he begins pushing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby out. As $he crowns, $he throws herself into your waiting arms and holds herself to you. You hold her in a comforting embrace until $he finishes.
 				<<elseif $slaves[$i].devotion >= -20>>
-					She approaches you and begins a very uncertain striptease. As she lowers herself to the floor to begin pushing, you overtake her and fondle her vulnerable body. She begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Once she finishes, you help her to the couch to catch her breath.
+					$He approaches you and begins a very uncertain striptease. As $he lowers herself to the floor to begin pushing, you overtake her and fondle her vulnerable body. $He begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. Once $he finishes, you help her to the couch to catch her breath.
 				<<else>>
-					She attempts to leave your office and return to her bed, but you catch her arm before she slips out of reach. You order her to strip and give you a show. Blushing thoroughly, she gives a meek performance before falling to the floor. She begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby.
+					$He attempts to leave your office and return to her bed, but you catch her arm before $he slips out of reach. You order her to strip and give you a show. Blushing thoroughly, $he gives a meek performance before falling to the floor. $He begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby.
 					<<set $humiliation = 1>>
 				<</if>>
-				Her child is promptly taken and, following a shower and a fresh change of clothes, she waddles back into your office<<if $slaves[$i].devotion < -20>> where you are waiting to enjoy her still very gravid body<</if>>.
+				$His child is promptly taken and, following a shower and a fresh change of clothes, $he waddles back into your office<<if $slaves[$i].devotion < -20>> where you are waiting to enjoy her still very gravid body<</if>>.
 			<<else>>
-				While standing nearby, $slaves[$i].slaveName's water breaks, startling her. She looks to you for guidance and you shake your head "no". Without permission to leave she <<if $slaves[$i].devotion > 50>>decides to give you a show<<elseif $slaves[$i].devotion > 20>>reluctantly decides giving birth in front of you isn't so bad<<else>>begins to panic as her contractions come sooner and sooner<<set $humiliation = 1>><</if>>.
+				While standing nearby, $slaves[$i].slaveName's water breaks, startling $him. $He looks to you for guidance and you shake your head "no". Without permission to leave $he <<if $slaves[$i].devotion > 50>>decides to give you a show<<elseif $slaves[$i].devotion > 20>>reluctantly decides giving birth in front of you isn't so bad<<else>>begins to panic as her contractions come sooner and sooner<<set $humiliation = 1>><</if>>.
 				<<ClothingBirth>>
-				As thanks for the show, you help her still very gravid body onto the couch so she can recover before returning to her duties. You call for a servant to take away <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and to clean up your floor and your toy.
+				As thanks for the show, you help her still very gravid body onto the couch so $he can recover before returning to her duties. You call for a servant to take away <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and to clean up your floor and your toy.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -325,51 +325,51 @@
 <<case "stay confined">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if (random(1,20) > $suddenBirth)>>
-			Since she is locked in a cell, she doesn't have far to go. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, after her still very gravid body and the cell are hosed down, she is returned to isolation.
+			Since $he is locked in a cell, $he doesn't have far to go. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, after her still very gravid body and the cell are hosed down, $he is returned to isolation.
 		<<else>>
-			While waiting in confinement, $slaves[$i].slaveName's water breaks. She assumes a birthing position.
+			While waiting in confinement, $slaves[$i].slaveName's water breaks. $He assumes a birthing position.
 			<<ClothingBirth>>
-			She struggles to reach <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child around her still very gravid middle and resumes waiting with it latched to her breast.
+			$He struggles to reach <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child around her still very gravid middle and resumes waiting with it latched to her breast.
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			Since she is locked in a cell, she doesn't have far to go. Reluctantly, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, after her still very gravid body and the cell are hosed down, she is returned to isolation.
+			Since $he is locked in a cell, $he doesn't have far to go. Reluctantly, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, after her still very gravid body and the cell are hosed down, $he is returned to isolation.
 			<<set $humiliation = 1>>
 		<<else>>
-			$slaves[$i].slaveName is awoken from her stupor by moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+			$slaves[$i].slaveName is awoken from her stupor by moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 			<<ClothingBirth>>
-			She collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and holds it close knowing someone will soon come to take it away from her.
+			$He collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and holds it close knowing someone will soon come to take it away from $him.
 		<</if>>
 	<</if>>
 
 <<case "work as a servant" "be a servant">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if (random(1,20) > $suddenBirth)>>
-			She returns to her bed and strips before slipping into it. Instinctively she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to her role as your ever-pregnant maid.
+			$He returns to her bed and strips before slipping into it. Instinctively $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to her role as your ever-pregnant maid.
 		<<else>>
 			<<if _birthScene > 50>>
-				While giving a slave oral service, $slaves[$i].slaveName's water breaks. She disregards this development and continues working.
+				While giving a slave oral service, $slaves[$i].slaveName's water breaks. $He disregards this development and continues working.
 				<<ClothingBirth>>
-				The slave gets off quite strongly to the show and shoves her out of the way, leaving her to clean up her mess. Instead, she draws <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to her breast until <<if $Stewardess != 0>>$Stewardess.slaveName<<elseif $HeadGirl != 0>>$HeadGirl.slaveName<<elseif $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>> shouts at her to move her useless pregnant ass.
+				The slave gets off quite strongly to the show and shoves $him out of the way, leaving $him to clean up $his mess. Instead, $he draws <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to her breast until <<if $Stewardess != 0>>$Stewardess.slaveName<<elseif $HeadGirl != 0>>$HeadGirl.slaveName<<elseif $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>> shouts at $him to move her useless pregnant ass.
 			<<else>>
-				While scrubbing the penthouse floor, $slaves[$i].slaveName's water breaks. She turns to clean this new spill, disregarding what it means.
+				While scrubbing the penthouse floor, $slaves[$i].slaveName's water breaks. $He turns to clean this new spill, disregarding what it means.
 				<<ClothingBirth>>
-				Instead of cleaning the fresh mess she made, she draws <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to her breast until <<if $Stewardess != 0>>$Stewardess.slaveName<<elseif $HeadGirl != 0>>$HeadGirl.slaveName<<elseif $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>> shouts at her to move her useless pregnant ass.
+				Instead of cleaning the fresh mess $he made, $he draws <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to her breast until <<if $Stewardess != 0>>$Stewardess.slaveName<<elseif $HeadGirl != 0>>$HeadGirl.slaveName<<elseif $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>> shouts at her to move her useless pregnant ass.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to her role as your ever-pregnant maid.
+			$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to her role as your ever-pregnant maid.
 		<<else>>
 			<<if _birthScene > 50>>
-				While giving a slave oral service, $slaves[$i].slaveName's water breaks. She desperately tries to pull away but they grab her head and force her back to their crotch.
+				While giving a slave oral service, $slaves[$i].slaveName's water breaks. $He desperately tries to pull away but they grab her head and force her back to their crotch.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				The slave gets off quite strongly to the show and shoves her out of the way, leaving her to clean up her mess. She hurriedly tries to mop up the mess and collect <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child before <<if $Stewardess != 0>>$Stewardess.slaveName<<elseif $HeadGirl != 0>>$HeadGirl.slaveName<<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>><</if>> shouts at her for dragging her pregnant ass.
+				The slave gets off quite strongly to the show and shoves her out of the way, leaving her to clean up her mess. $He hurriedly tries to mop up the mess and collect <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child before <<if $Stewardess != 0>>$Stewardess.slaveName<<elseif $HeadGirl != 0>>$HeadGirl.slaveName<<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>><</if>> shouts at her for dragging her pregnant ass.
 			<<else>>
-				While scrubbing the penthouse floor, $slaves[$i].slaveName's water breaks. She panics at the thought of not cleaning up her spill but her worsening contractions force her to find a secluded place to give birth.
+				While scrubbing the penthouse floor, $slaves[$i].slaveName's water breaks. $He panics at the thought of not cleaning up $his spill but her worsening contractions force her to find a secluded place to give birth.
 				<<ClothingBirth>>
-				Collecting <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child, she carefully exits her hiding place before coming under the eye of <<if $Stewardess != 0>>the glaring $Stewardess.slaveName. Her child is promptly taken<<elseif $HeadGirl != 0>>the glaring $HeadGirl.slaveName. Her child is promptly taken <<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>. Her child is promptly taken by other servants<</if>> following a lecture about priorities and time management given her constant pregnancy and predictable birth cycle.
+				Collecting <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child, $he carefully exits her hiding place before coming under the eye of <<if $Stewardess != 0>>the glaring $Stewardess.slaveName. $His child is promptly taken<<elseif $HeadGirl != 0>>the glaring $HeadGirl.slaveName. $His child is promptly taken <<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>. $His child is promptly taken by other servants<</if>> following a lecture about priorities and time management given her constant pregnancy and predictable birth cycle.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -379,44 +379,44 @@
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
 				<<if $masterSuiteUpgradePregnancy == 1>>
-					She is helping into the birthing chamber, stripped, and aided into the specialized chair. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, following a shower and fresh change of clothes, she is returned to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>the main room of the master suite<</if>>.
+					$He is helping into the birthing chamber, stripped, and aided into the specialized chair. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, following a shower and fresh change of clothes, $he is returned to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>the main room of the master suite<</if>>.
 				<<else>>
-					After struggling to strip and tipping into one of the various seats around the room, she prepares to give birth. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her may be watching her. Her child is promptly taken and, following a shower and fresh change of clothes, she is helped back to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>her usual spot<</if>>.
+					After struggling to strip and tipping into one of the various seats around the room, $he prepares to give birth. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her may be watching $him. $His child is promptly taken and, following a shower and fresh change of clothes, $he is helped back to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>her usual spot<</if>>.
 				<</if>>
 			<<else>>
 				<<if $masterSuiteUpgradeLuxury == 1>>
-					While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's water breaks thoroughly soaking the sheets. Ignoring the mess, she shifts into a more comfortable position.
+					While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's water breaks thoroughly soaking the sheets. Ignoring the mess, $he shifts into a more comfortable position.
 					<<ClothingBirth>>
-					She struggles to reach <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child around her still gravid figure before bringing it to her breast and resuming her wait. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child removed and her still very pregnant ass forcefully ejected from the bed so it can be cleaned before your return.<</if>>
+					$He struggles to reach <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child around her still gravid figure before bringing it to her breast and resuming her wait. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child removed and her still very pregnant ass forcefully ejected from the bed so it can be cleaned before your return.<</if>>
 				<<elseif $masterSuiteUpgradeLuxury == 2>>
-					While being the bottom of the master suite's fuckpit, $slaves[$i].slaveName's water breaks. While she doesn't stop having sex, the fucktoys using her do and drag her from the pit to give birth. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. Without a second thought about her child, she slips back into the fuckpit.
+					While being the bottom of the master suite's fuckpit, $slaves[$i].slaveName's water breaks. While $he doesn't stop having sex, the fucktoys using her do and drag her from the pit to give birth. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. Without a second thought about her child, $he slips back into the fuckpit.
 				<<else>>
-					While awaiting your return in the master suite, $slaves[$i].slaveName's water breaks. She pays it no heed and continues blankly waiting.
+					While awaiting your return in the master suite, $slaves[$i].slaveName's water breaks. $He pays it no heed and continues blankly waiting.
 					<<ClothingBirth>>
-					She struggles to reach <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child around her still gravid figure before bringing it to her breast and resuming her wait <<if $Concubine != 0>>Concubine.slaveName furiously orders her child removed and her still very pregnant ass thoroughly cleaned before your return.<</if>>
+					$He struggles to reach <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child around her still gravid figure before bringing it to her breast and resuming her wait <<if $Concubine != 0>>Concubine.slaveName furiously orders her child removed and her still very pregnant ass thoroughly cleaned before your return.<</if>>
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
 				<<if $masterSuiteUpgradePregnancy == 1>>
-					She is helping into the birthing chamber, stripped, and aided into the specialized chair. Finding it quite comfortable, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, following a shower and fresh change of clothes, she is returned to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>the main room of the master suite<</if>>.
+					$He is helping into the birthing chamber, stripped, and aided into the specialized chair. Finding it quite comfortable, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, following a shower and fresh change of clothes, $he is returned to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>the main room of the master suite<</if>>.
 				<<else>>
-					After struggling to strip and tipping into one of the various seats around the room, she prepares to give birth. She gets comfortable and begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child> is promptly taken and, following a shower and fresh change of clothes, she is returned to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>her preferred spot<</if>>.
+					After struggling to strip and tipping into one of the various seats around the room, $he prepares to give birth. $He gets comfortable and begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child> is promptly taken and, following a shower and fresh change of clothes, $he is returned to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>her preferred spot<</if>>.
 				<</if>>
 			<<else>>
 				<<if $masterSuiteUpgradeLuxury == 1>>
-					While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's water breaks thoroughly soaking the sheets. She quickly shifts herself off the bed and calls for a servant before dropping to the floor.
+					While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's water breaks thoroughly soaking the sheets. $He quickly shifts herself off the bed and calls for a servant before dropping to the floor.
 					<<ClothingBirth>>
-					Once <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child is removed, her still very gravid body cleaned up, and the sheets are changed, she is helped back into bed to recover for your return.
+					Once <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child is removed, her still very gravid body cleaned up, and the sheets are changed, $he is helped back into bed to recover for your return.
 				<<elseif $masterSuiteUpgradeLuxury == 2>>
-					While participating in the fuckpit orgy, $slaves[$i].slaveName's water breaks. She begs to be let out of the pit but the other fucktoys pull her in and position themselves for her to pleasure them while giving birth.
+					While participating in the fuckpit orgy, $slaves[$i].slaveName's water breaks. $He begs to be let out of the pit but the other fucktoys pull her in and position themselves for her to pleasure them while giving birth.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					Once the fucktoys are done tormenting the still very gravid new mother, they hand <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child off to the help and pull her into an embrace to allow her to regain her strength.
+					Once the fucktoys are done tormenting the still very gravid new mother, they hand <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child off to the help and pull her into an embrace to allow her to regain her strength.
 				<<else>>
-					While awaiting your return in the master suite, $slaves[$i].slaveName's water breaks. She tries to get to the prepared area but fails to untangle herself from the toys she was playing with. She calls for a servant to hurry as she begins laboring.
+					While awaiting your return in the master suite, $slaves[$i].slaveName's water breaks. $He tries to get to the prepared area but fails to untangle herself from the toys $he was playing with. $He calls for a servant to hurry as $he begins laboring.
 					<<ClothingBirth>>
-					The servant collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and helps her still very gravid body onto a cushion to recover for your return. <<if canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>>With a little effort, she pushes the vibrating dildo out of her ass<<else>>With things settling down, she finally manages to switch off the bullet vibrators stuck to her crotch<</if>> before settling down for a nap.
+					The servant collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and helps her still very gravid body onto a cushion to recover for your return. <<if canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>>With a little effort, $he pushes the vibrating dildo out of her ass<<else>>With things settling down, $he finally manages to switch off the bullet vibrators stuck to her crotch<</if>> before settling down for a nap.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -424,44 +424,44 @@
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
 				<<if $masterSuiteUpgradePregnancy == 1>>
-					She enters the birthing chamber, strips, and seats herself in the specialized chair. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, following a shower and fresh change of clothes, she returns to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>the main room of the master suite<</if>>.
+					$He enters the birthing chamber, strips, and seats herself in the specialized chair. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, following a shower and fresh change of clothes, $he returns to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>the main room of the master suite<</if>>.
 				<<else>>
-					She strips and settles into one of the various seats around the room. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her may be watching her. Her child is promptly taken and, following a shower and fresh change of clothes, she returns to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>her usual spot<</if>>.
+					$He strips and settles into one of the various seats around the room. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her may be watching $him. $His child is promptly taken and, following a shower and fresh change of clothes, $he returns to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>her usual spot<</if>>.
 				<</if>>
 			<<else>>
 				<<if $masterSuiteUpgradeLuxury == 1>>
-					While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's water breaks thoroughly soaking the sheets. Ignoring the mess, she shifts into a more comfortable position.
+					While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's water breaks thoroughly soaking the sheets. Ignoring the mess, $he shifts into a more comfortable position.
 					<<ClothingBirth>>
-					She struggles to reach <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child around her still gravid figure before bringing it to her breast and resuming her wait. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child removed and her still very pregnant ass forcefully ejected from the bed so it can be cleaned before your return.<</if>>
+					$He struggles to reach <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child around her still gravid figure before bringing it to her breast and resuming her wait. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child removed and her still very pregnant ass forcefully ejected from the bed so it can be cleaned before your return.<</if>>
 				<<elseif $masterSuiteUpgradeLuxury == 2>>
-					While being the bottom of the master suite's fuckpit, $slaves[$i].slaveName's water breaks. While she doesn't stop having sex, the fucktoys using her do and drag her from the pit to give birth. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. Without a second thought about her child, she slips back into the fuckpit.
+					While being the bottom of the master suite's fuckpit, $slaves[$i].slaveName's water breaks. While $he doesn't stop having sex, the fucktoys using her do and drag her from the pit to give birth. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. Without a second thought about her child, $he slips back into the fuckpit.
 				<<else>>
-					While awaiting your return in the master suite, $slaves[$i].slaveName's water breaks. She pays it no heed and continues blankly waiting.
+					While awaiting your return in the master suite, $slaves[$i].slaveName's water breaks. $He pays it no heed and continues blankly waiting.
 					<<ClothingBirth>>
-					She struggles to reach <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child around her still gravid figure before bringing it to her breast and resuming her wait <<if $Concubine != 0>>Concubine.slaveName furiously orders her child removed and her still very pregnant ass thoroughly cleaned before your return.<</if>>
+					$He struggles to reach <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child around her still gravid figure before bringing it to her breast and resuming her wait <<if $Concubine != 0>>Concubine.slaveName furiously orders her child removed and her still very pregnant ass thoroughly cleaned before your return.<</if>>
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
 				<<if $masterSuiteUpgradePregnancy == 1>>
-					She enters the birthing chamber, strips, and seats herself in the specialized chair. Finding it quite comfortable, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, following a shower and fresh change of clothes, she returns to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>the main room of the master suite<</if>>.
+					$He enters the birthing chamber, strips, and seats herself in the specialized chair. Finding it quite comfortable, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, following a shower and fresh change of clothes, $he returns to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>the main room of the master suite<</if>>.
 				<<else>>
-					She strips and settles into one of the various seats around the room. She gets comfortable and begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, following a shower and fresh change of clothes, she returns to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>her preferred spot<</if>>.
+					$He strips and settles into one of the various seats around the room. $He gets comfortable and begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, following a shower and fresh change of clothes, $he returns to <<if $masterSuiteUpgradeLuxury == 1>>your big bed<<elseif $masterSuiteUpgradeLuxury == 2>>the fuckpit<<else>>her preferred spot<</if>>.
 				<</if>>
 			<<else>>
 				<<if $masterSuiteUpgradeLuxury == 1>>
-					While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's water breaks thoroughly soaking the sheets. She quickly moves herself off the bed and calls for a servant before dropping to the floor.
+					While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's water breaks thoroughly soaking the sheets. $He quickly moves herself off the bed and calls for a servant before dropping to the floor.
 					<<ClothingBirth>>
-					Once <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child is removed, her still very gravid body cleaned up, and the sheets are changed, she crawls back into bed to recover for your return.
+					Once <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child is removed, her still very gravid body cleaned up, and the sheets are changed, $he crawls back into bed to recover for your return.
 				<<elseif $masterSuiteUpgradeLuxury == 2>>
-					While participating in the fuckpit orgy, $slaves[$i].slaveName's water breaks. She tries to crawl out of the pit but the other fucktoys pull her back in and position themselves for her to pleasure them while giving birth.
+					While participating in the fuckpit orgy, $slaves[$i].slaveName's water breaks. $He tries to crawl out of the pit but the other fucktoys pull her back in and position themselves for her to pleasure them while giving birth.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
 					Once the fucktoys are done tormenting the exhausted <<if $slaves[$i].birthsTotal == 0>>new <<else>>brood<</if>>mother, they hand her child off to the help and pull her into an embrace to allow her to regain her strength.
 				<<else>>
-					While awaiting your return in the master suite, $slaves[$i].slaveName's water breaks. She tries to get to the prepared area but fails to untangle herself from the toys she was playing with. She calls for a servant to hurry as she begins laboring.
+					While awaiting your return in the master suite, $slaves[$i].slaveName's water breaks. $He tries to get to the prepared area but fails to untangle herself from the toys $he was playing with. $He calls for a servant to hurry as $he begins laboring.
 					<<ClothingBirth>>
-					The servant collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and helps her still very gravid body onto a cushion to recover for your return. <<if canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>>With a little effort, she pushes the vibrating dildo out of her ass<<else>>With things settling down, she finally manages to switch off the bullet vibrators stuck to her crotch<</if>> before settling down for a nap.
+					The servant collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and helps her still very gravid body onto a cushion to recover for your return. <<if canDoAnal($slaves[$i]) && $slaves[$i].anus > 0>>With a little effort, $he pushes the vibrating dildo out of her ass<<else>>With things settling down, $he finally manages to switch off the bullet vibrators stuck to her crotch<</if>> before settling down for a nap.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -471,52 +471,52 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped into a private room in the back of the club by a group of eager patrons. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her audience. Her child is promptly taken and, following a cleaning and fresh change of clothes, the audience is allowed to have their way with her still very gravid body.
+				$He is helped into a private room in the back of the club by a group of eager patrons. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her audience. $His child is promptly taken and, following a cleaning and fresh change of clothes, the audience is allowed to have their way with her still very gravid body.
 			<<else>>
-				$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens as well as she can. During one of her teases, her water breaks, soaking the floor. She keeps on teasing, despite her condition, until her contractions drag her to the floor.
+				$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens as well as $he can. During one of her teases, her water breaks, soaking the floor. $He keeps on teasing, despite her condition, until her contractions drag her to the floor.
 				<<ClothingBirth>>
-				Multiple citizens pull her still very pregnant form into a booth so that they may tease her exhausted body while the floor is dried and <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child carried off.
+				Multiple citizens pull her still very pregnant form into a booth so that they may tease her exhausted body while the floor is dried and <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child carried off.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped to a private room in the back of the club by several patrons who just can't keep their hands off her. She settles herself onto a patron's lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, basking in the attention of her audience. Her child is promptly taken and she beckons the audience to enjoy her still very gravid body.
+				$He is helped to a private room in the back of the club by several patrons who just can't keep their hands off $him. $He settles herself onto a patron's lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, basking in the attention of her audience. $His child is promptly taken and $he beckons the audience to enjoy her still very gravid body.
 			<<else>>
 				<<if $slaves[$i].fetish == "humiliation">>
-					$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by "dancing" as well as she can, all the while being a huge tease. During one of her "dances", her water breaks, soaking the floor. She calls out to the crowd, hyping them up for her new show.
+					$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by "dancing" as well as $he can, all the while being a huge tease. During one of her "dances", her water breaks, soaking the floor. $He calls out to the crowd, hyping them up for her new show.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					As <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child are removed, she is helped into one of the back rooms by several of her aroused onlookers.
+					As <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child are removed, $he is helped into one of the back rooms by several of her aroused onlookers.
 				<<else>>
-					$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by "dancing" as well as her figure will let her. During one of her dances, her water breaks, soaking the floor. She hastily tries to find help to leave, but only finds hands groping her body. She is quickly pulled into one of the side rooms by a group of men looking forward to the show she's about to perform for them.
+					$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by "dancing" as well as her figure will let $him. During one of her dances, her water breaks, soaking the floor. $He hastily tries to find help to leave, but only finds hands groping her body. $He is quickly pulled into one of the side rooms by a group of men looking forward to the show $he's about to perform for them.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					Only once the last of her clients cums over her still very pregnant body is she allowed to gather <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and take a seat. She enjoys a moment with her newborn before the servant comes to collect it.
+					Only once the last of her clients cums over her still very pregnant body is $he allowed to gather <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and take a seat. $He enjoys a moment with her newborn before the servant comes to collect it.
 				<</if>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She heads to a private room in the back of the club filled with eager patrons. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her audience. Her child is promptly taken and, following a cleaning and fresh change of clothes, the audience is allowed to have their way with her still very gravid body.
+				$He heads to a private room in the back of the club filled with eager patrons. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her audience. $His child is promptly taken and, following a cleaning and fresh change of clothes, the audience is allowed to have their way with her still very gravid body.
 			<<else>>
-				$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by dancing as well as she can. During one of her dances, her water breaks, soaking the dance floor. She keeps on dancing, despite her condition, until her contractions drag her to the floor.
+				$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by dancing as well as $he can. During one of her dances, her water breaks, soaking the dance floor. $He keeps on dancing, despite her condition, until her contractions drag her to the floor.
 				<<ClothingBirth>>
-				Multiple citizens pull her still very pregnant form into a booth so that they may tease her exhausted body while the dance floor is dried and <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child carried off.
+				Multiple citizens pull her still very pregnant form into a booth so that they may tease her exhausted body while the dance floor is dried and <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child carried off.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She heads to a private room in the back of the club accompanied by several patrons who just can't keep their hands off her. She settles herself onto a patron's lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, basking in the attention of her audience. Her child is promptly taken and she beckons the audience to enjoy her still very gravid body.
+				$He heads to a private room in the back of the club accompanied by several patrons who just can't keep their hands off $him. $He settles herself onto a patron's lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, basking in the attention of her audience. $His child is promptly taken and $he beckons the audience to enjoy her still very gravid body.
 			<<else>>
 				<<if $slaves[$i].fetish == "humiliation">>
-					$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by dancing as well as she can, all the while flashing glimpses of her crotch and nipples. During one of her dances, her water breaks, soaking the dance floor. She calls out to the crowd, hyping them up for her new show.
+					$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by dancing as well as $he can, all the while flashing glimpses of her crotch and nipples. During one of her dances, her water breaks, soaking the dance floor. $He calls out to the crowd, hyping them up for her new show.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					As <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child is removed from the dance floor, her still very pregnant form is helped into one of the back rooms by several of her aroused onlookers.
+					As <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child is removed from the dance floor, her still very pregnant form is helped into one of the back rooms by several of her aroused onlookers.
 				<<else>>
-					$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by dancing as well as she can. During one of her dances, her water breaks, soaking the dance floor. She hastily tries to escape the public's gaze only to find hands groping her body. She is quickly pulled into one of the side rooms by a group of men looking forward to the show she's about to perform for them.
+					$slaves[$i].slaveName is showing off her gravid body and trying to attract citizens by dancing as well as $he can. During one of her dances, her water breaks, soaking the dance floor. $He hastily tries to escape the public's gaze only to find hands groping her body. $He is quickly pulled into one of the side rooms by a group of men looking forward to the show $he's about to perform for them.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					Only once the last of her clients cums over her still very pregnant figure is she allowed to gather <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and take a seat. She enjoys a moment with her newborn before the servant comes to collect it.
+					Only once the last of her clients cums over her still very pregnant figure is $he allowed to gather <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and take a seat. $He enjoys a moment with her newborn before the servant comes to collect it.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -526,43 +526,43 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, after a short rest, she waits for someone to help her still very gravid form to her next job, having forgotten she was choosing it.
+				$He is helped back to her bed and stripped before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, after a short rest, $he waits for someone to help her still very gravid form to her next job, having forgotten $he was choosing it.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her stupor by a strong contraction. She runs a hand across her middle as another contraction runs through it.
+				$slaves[$i].slaveName is awoken from her stupor by a strong contraction. $He runs a hand across her middle as another contraction runs through it.
 				<<ClothingBirth>>
-				She fishes around under her still huge dome of a stomach searching for <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> newborn. Once she finds it, she draws it to her breast and resumes waiting for someone to tell her what to do.
+				$He fishes around under her still huge dome of a stomach searching for <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> newborn. Once $he finds it, $he draws it to her breast and resumes waiting for someone to tell her what to do.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, after a short rest, she returns to pondering what assignment would be best for a still very gravid girl.
+				$He is helped back to her bed and stripped before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, after a short rest, $he returns to pondering what assignment would be best for a still very gravid girl.
 			<<else>>
-				While deciding on her post, $slaves[$i].slaveName's water breaks. Unable to reach the prepared birthing room in time, she pulls herself into a secluded nook to give birth in.
+				While deciding on her post, $slaves[$i].slaveName's water breaks. Unable to reach the prepared birthing room in time, $he pulls herself into a secluded nook to give birth in.
 				<<ClothingBirth>>
-				She gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and recovers her strength before a servant finds her and collects her baby. She decides to rest for the rest of the day before returning to pondering what assignment would be best for a still very gravid girl.
+				$He gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and recovers her strength before a servant finds her and collects her baby. $He decides to rest for the rest of the day before returning to pondering what assignment would be best for a still very gravid girl.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, after a short rest, she returns to waddling around the penthouse.
+				$He returns to her bed and strips before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, after a short rest, $he returns to waddling around the penthouse.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her stupor by a strong contraction. She runs a hand across her middle as another contraction runs through it.
+				$slaves[$i].slaveName is awoken from her stupor by a strong contraction. $He runs a hand across her middle as another contraction runs through it.
 				<<ClothingBirth>>
-				She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes waiting for someone to tell her what to do.
+				$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes waiting for someone to tell her what to do.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, after a short rest, she returns to pondering her what assignment would be best for a still very gravid girl.
+				$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, after a short rest, $he returns to pondering her what assignment would be best for a still very gravid girl.
 			<<else>>
 				<<if $slaves[$i].fetish == "humiliation">>
-					While wandering the penthouse deciding on her post, $slaves[$i].slaveName's water breaks. Sensing an opportunity, she waddles to the nearest balcony overlooking the city. She calls out, making sure all eyes are on her for what happens next.
+					While wandering the penthouse deciding on her post, $slaves[$i].slaveName's water breaks. Sensing an opportunity, $he waddles to the nearest balcony overlooking the city. $He calls out, making sure all eyes are on her for what happens next.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					She gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and recovers her strength before finding a servant to give her it to. She decides to rest for the rest of the day before returning to figuring out what assignment would be most humiliating for a still very gravid girl.
+					$He gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and recovers her strength before finding a servant to give her it to. $He decides to rest for the rest of the day before returning to figuring out what assignment would be most humiliating for a still very gravid girl.
 				<<else>>
-					While wandering the penthouse deciding on her post, $slaves[$i].slaveName's water breaks. Unable to reach the prepared birthing room in time, she finds a secluded nook to give birth in.
+					While wandering the penthouse deciding on her post, $slaves[$i].slaveName's water breaks. Unable to reach the prepared birthing room in time, $he finds a secluded nook to give birth in.
 					<<ClothingBirth>>
-					She gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and recovers her strength before finding a servant to give her it to. She decides to rest for the rest of the day before returning to deciding what assignment would be best for a still very gravid girl.
+					$He gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and recovers her strength before finding a servant to give her it to. $He decides to rest for the rest of the day before returning to deciding what assignment would be best for a still very gravid girl.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -571,153 +571,153 @@
 <<case "rest in the spa">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if (random(1,20) > $suddenBirth)>>
-			<<if $Attendant != 0>>$Attendant.slaveName leads her to a special pool designed to give birth in. Once she is safely in the water alongside her,<<else>>She is lead to a special pool designed to give birth in. Once she is safely in the water alongside her assistant,<</if>> she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her watching caretaker. Her child is promptly taken and, following a cleaning of her still very gravid body, she is taken back to the spa.
+			<<if $Attendant != 0>>$Attendant.slaveName leads her to a special pool designed to give birth in. Once $he is safely in the water alongside her,<<else>>$He is lead to a special pool designed to give birth in. Once $he is safely in the water alongside her assistant,<</if>> $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her watching caretaker. $His child is promptly taken and, following a cleaning of her still very gravid body, $he is taken back to the spa.
 		<<else>>
-			While soaking in the spa's pool, $slaves[$i].slaveName's water breaks. As she begins to ready herself for birth, <<if $Attendant != 0>>$Attendant.slaveName pulls her out of the pool and glares at her<<else>>the other bathers watch curiously<</if>>.
+			While soaking in the spa's pool, $slaves[$i].slaveName's water breaks. As $he begins to ready herself for birth, <<if $Attendant != 0>>$Attendant.slaveName pulls her out of the pool and glares at her<<else>>the other bathers watch curiously<</if>>.
 			<<ClothingBirth>>
-			Her and <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child are quickly dried off as she begins nursing it. A servant soon arrives to take her children away.
+			$His and <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child are quickly dried off as $he begins nursing it. A servant soon arrives to take her children away.
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			<<if $Attendant != 0>>$Attendant.slaveName escorts her to a special pool designed to give birth in. Once she is safely in the water alongside her,<<else>>She is escorted to a special pool designed to give birth in. Once she is safely in the water alongside her assistant,<</if>> she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, aided by her caretaker. Her child is promptly taken and, following a cleaning of her still very gravid body, she is taken back to the spa.
+			<<if $Attendant != 0>>$Attendant.slaveName escorts her to a special pool designed to give birth in. Once $he is safely in the water alongside her,<<else>>$He is escorted to a special pool designed to give birth in. Once $he is safely in the water alongside her assistant,<</if>> $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, aided by her caretaker. $His child is promptly taken and, following a cleaning of her still very gravid body, $he is taken back to the spa.
 		<<else>>
-			<<if !canWalk($slaves[$i])>>While changing in the changing room before a nice soak, $slaves[$i].slaveName's water breaks. She hurries to find someone to help her but only finds curious onlookers<<else>>While heading for the changing room before a nice soak, $slaves[$i].slaveName's water breaks. She hurries into the changing room only to find it unusually crowded<</if>>. Without any choice left, she assumes a birthing position.
+			<<if !canWalk($slaves[$i])>>While changing in the changing room before a nice soak, $slaves[$i].slaveName's water breaks. $He hurries to find someone to help her but only finds curious onlookers<<else>>While heading for the changing room before a nice soak, $slaves[$i].slaveName's water breaks. $He hurries into the changing room only to find it unusually crowded<</if>>. Without any choice left, $he assumes a birthing position.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			Several of other slaves present help her with <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child while the rest finish pleasuring themselves over the show. <<if $Attendant != 0>>$Attendant.slaveName, lured in by the commotion, shoos the other slaves out and helps the new mother to a private relaxation room to unwind<<else>>Soon a servant arrives to take her child away and she is ushered into the bath to clean up and relax<</if>>.
+			Several of other slaves present help her with <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child while the rest finish pleasuring themselves over the show. <<if $Attendant != 0>>$Attendant.slaveName, lured in by the commotion, shoos the other slaves out and helps the new mother to a private relaxation room to unwind<<else>>Soon a servant arrives to take her child away and $he is ushered into the bath to clean up and relax<</if>>.
 		<</if>>
 	<</if>>
 
 <<case "learn in the schoolroom">>
 	<<if !canWalk($slaves[$i])>>
 		<<if (random(1,20) > $suddenBirth)>>
-			Having been notified in the weeks leading up to her <<if $slaves[$i].birthsTotal == 0>>first<<else>>regular<</if>> birth, she is helped to the front of the class and stripped; she is being used as a learning aid in this lesson. Blushing strongly, she begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, fully aware of the rapt attention of the other students. Her child is promptly taken and, following a cleaning and fresh change of clothes, she is helped back to her seat. She can't help but <<if canSee($slaves[$i])>>notice some of the detailed notes the class took on her genitals<<else>>overhear some of the lewd comments about her still very gravid figure<</if>>.
+			Having been notified in the weeks leading up to her <<if $slaves[$i].birthsTotal == 0>>first<<else>>regular<</if>> birth, $he is helped to the front of the class and stripped; $he is being used as a learning aid in this lesson. Blushing strongly, $he begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of the rapt attention of the other students. $His child is promptly taken and, following a cleaning and fresh change of clothes, $he is helped back to her seat. $He can't help but <<if canSee($slaves[$i])>>notice some of the detailed notes the class took on her genitals<<else>>overhear some of the lewd comments about her still very gravid figure<</if>>.
 			<<set $humiliation = 1>>
 		<<else>>
-			During a lesson in $schoolroomName, $slaves[$i].slaveName's water breaks. Since she can't leave the lesson, she tries her best to hold back the upcoming birth. She fails to manage and a particularly strong contraction elicits a moan noticeable enough to draw all the students' attention.
+			During a lesson in $schoolroomName, $slaves[$i].slaveName's water breaks. Since $he can't leave the lesson, $he tries her best to hold back the upcoming birth. $He fails to manage and a particularly strong contraction elicits a moan noticeable enough to draw all the students' attention.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			<<if $Schoolteacher != 0>>$Schoolteacher.slaveName, furious that her lesson was interrupted, drags her still very pregnant ass from the class along with her newborn child<<else>>She gathers her newborn child up and is quickly helped from the class<</if>>. She can feel all the eyes watching her leave.
+			<<if $Schoolteacher != 0>>$Schoolteacher.slaveName, furious that her lesson was interrupted, drags her still very pregnant ass from the class along with her newborn child<<else>>$He gathers her newborn child up and is quickly helped from the class<</if>>. $He can feel all the eyes watching her leave.
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			Having been notified in the weeks leading up to her <<if $slaves[$i].birthsTotal == 0>>first<<else>>regular<</if>> birth, she heads to the front of the class and strips; she is being used as a learning aid in this lesson. Blushing strongly, she begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, fully aware of the rapt attention of the other students. Her child is promptly taken and, following a cleaning and fresh change of clothes, she returns to her seat. She can't help but <<if canSee($slaves[$i])>>notice some of the detailed notes the class took on her genitals<<else>>overhear some of the lewd comments about her still very gravid figure<</if>>.
+			Having been notified in the weeks leading up to her <<if $slaves[$i].birthsTotal == 0>>first<<else>>regular<</if>> birth, $he heads to the front of the class and strips; $he is being used as a learning aid in this lesson. Blushing strongly, $he begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of the rapt attention of the other students. $His child is promptly taken and, following a cleaning and fresh change of clothes, $he returns to her seat. $He can't help but <<if canSee($slaves[$i])>>notice some of the detailed notes the class took on her genitals<<else>>overhear some of the lewd comments about her still very gravid figure<</if>>.
 			<<set $humiliation = 1>>
 		<<else>>
-			During a lesson in $schoolroomName, $slaves[$i].slaveName's water breaks. Since she can't leave the lesson, she tries her best to hold back the upcoming birth. She fails to manage and a particularly strong contraction elicits a moan noticeable enough to draw all the students' attention.
+			During a lesson in $schoolroomName, $slaves[$i].slaveName's water breaks. Since $he can't leave the lesson, $he tries her best to hold back the upcoming birth. $He fails to manage and a particularly strong contraction elicits a moan noticeable enough to draw all the students' attention.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			<<if $Schoolteacher != 0>>$Schoolteacher.slaveName, furious that her lesson was interrupted, dismisses her from the class along with her newborn child<<else>>She gathers her newborn child up and quickly excuses herself from the class<</if>>. She can feel all the eyes staring at her still very gravid middle.
+			<<if $Schoolteacher != 0>>$Schoolteacher.slaveName, furious that her lesson was interrupted, dismisses her from the class along with her newborn child<<else>>$He gathers her newborn child up and quickly excuses herself from the class<</if>>. $He can feel all the eyes staring at her still very gravid middle.
 		<</if>>
 	<</if>>
 
 <<case "take classes">>
 	<<if (random(1,20) > $suddenBirth)>>
-		Or she would have, had <<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>> allowed it. Since she can't leave the lesson, she tries her best to hold back the upcoming birth, not without your assistant noticing. As punishment for poor planning, especially since this will be a weekly occurrence in her life, her birth will be turned into a live broadcast. Blushing strongly, she begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, trying her best to hide her shame. Exhausted from the birth, she is permitted a short break as her child is collected to clean herself up before the lesson is continued.
+		Or $he would have, had <<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>> allowed it. Since $he can't leave the lesson, $he tries her best to hold back the upcoming birth, not without your assistant noticing. As punishment for poor planning, especially since this will be a weekly occurrence in her life, her birth will be turned into a live broadcast. Blushing strongly, $he begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, trying her best to hide her shame. Exhausted from the birth, $he is permitted a short break as her child is collected to clean herself up before the lesson is continued.
 		<<set $humiliation = 1>>
 	<<else>>
-		During a lesson under <<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>, $slaves[$i].slaveName's water breaks. Since she can't leave the lesson, she tries her best to hold back the upcoming birth, not without your assistant noticing. As punishment for poor planning, especially since this will be a weekly occurrence in her life, she is forbidden from leaving. Additionally, her birth will be turned into a live broadcast.
+		During a lesson under <<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>, $slaves[$i].slaveName's water breaks. Since $he can't leave the lesson, $he tries her best to hold back the upcoming birth, not without your assistant noticing. As punishment for poor planning, especially since this will be a weekly occurrence in her life, $he is forbidden from leaving. Additionally, her birth will be turned into a live broadcast.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		Exhausted from the birth, she is permitted a short break as <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child is gathered to <<if !canWalk($slaves[$i])>>be cleaned<<else>>clean herself<</if>> up before the lesson is continued.
+		Exhausted from the birth, $he is permitted a short break as <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child is gathered to <<if !canWalk($slaves[$i])>>be cleaned<<else>>clean herself<</if>> up before the lesson is continued.
 	<</if>>
 
 <<case "work in the brothel">>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped to a private room in the back of the brothel by a group of eager patrons. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her audience. Her child is promptly taken and, following a cleaning and fresh change of clothes, the audience is allowed to have their way with her still very gravid body.
+				$He is helped to a private room in the back of the brothel by a group of eager patrons. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her audience. $His child is promptly taken and, following a cleaning and fresh change of clothes, the audience is allowed to have their way with her still very gravid body.
 			<<else>>
 				<<if (_birthScene > 80) && canDoVaginal($slaves[$i])>>
-					While riding a costumer's dick, $slaves[$i].slaveName's water breaks on him. Showing no signs of stopping, he shoves her bulk off of him. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. She draws her child to her breast before seeking out the next costumer's cock.
+					While riding a costumer's dick, $slaves[$i].slaveName's water breaks on him. Showing no signs of stopping, he shoves her bulk off of him. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. $He draws her child to her breast before seeking out the next costumer's cock.
 				<<elseif (_birthScene > 60) && canDoAnal($slaves[$i])>>
-					While taking a costumer's dick in her ass, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so he allows her to reposition and continue. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next costumer's cock.
+					While taking a costumer's dick in her ass, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so he allows her to reposition and continue. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next costumer's cock.
 				<<elseif (_birthScene > 40)>>
-					While licking a costumer's cunt, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so she allows her to reposition and continue.
+					While licking a costumer's cunt, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so she allows her to reposition and continue.
 					<<ClothingBirth>>
-					The costumer splashes across her face as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next costumer's cunt.
+					The costumer splashes across her face as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next costumer's cunt.
 				<<else>>
-					While sucking a costumer's dick, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so he allows her to reposition and continue.
+					While sucking a costumer's dick, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so he allows her to reposition and continue.
 					<<ClothingBirth>>
-					He cums down her throat as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next costumer's cock.
+					He cums down her throat as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next costumer's cock.
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped to a private room in the back of the brothel by several patrons who paid quite a handsome price to enjoy this moment.
+				$He is helped to a private room in the back of the brothel by several patrons who paid quite a handsome price to enjoy this moment.
 				<<if $slaves[$i].devotion > 20>>
-					She settles herself onto a patron's lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, basking in the attention of her audience. Her child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and she beckons the audience to enjoy her still very gravid body.
+					$He settles herself onto a patron's lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, basking in the attention of her audience. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he beckons the audience to enjoy her still very gravid body.
 				<<elseif $slaves[$i].devotion >= -20>>
-					She hesitantly begins to pose, but one of the patrons grabs her by the swollen waist and pulls her onto his lap. She winces as his dick slips over her exposed crotch, but can do nothing to stop <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby from being born. She hates that the first thing her child will touch is an erect cock; a bitter reminder of what its future will likely hold. Her fully born child is promptly taken and her clients descend upon her vulnerable, still very gravid, body.
+					$He hesitantly begins to pose, but one of the patrons grabs her by the swollen waist and pulls her onto his lap. $He winces as his dick slips over her exposed crotch, but can do nothing to stop <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby from being born. $He hates that the first thing her child will touch is an erect cock; a bitter reminder of what its future will likely hold. $His fully born child is promptly taken and her clients descend upon her vulnerable, still very gravid, body.
 				<<else>>
-					She stands shaking, her waters flowing down her legs, until one of the patrons grabs her by the swollen waist and pulls her onto his lap. She cries out as his dick slips over her exposed crotch, but can do nothing to stop <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby from being born. She hates that the first thing her child will touch is an erect cock; a bitter reminder of what its future will likely hold. Her fully born child is promptly taken and her clients descend upon her vulnerable, still very gravid, body.
+					$He stands shaking, her waters flowing down her legs, until one of the patrons grabs her by the swollen waist and pulls her onto his lap. $He cries out as his dick slips over her exposed crotch, but can do nothing to stop <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby from being born. $He hates that the first thing her child will touch is an erect cock; a bitter reminder of what its future will likely hold. $His fully born child is promptly taken and her clients descend upon her vulnerable, still very gravid, body.
 				<</if>>
 			<<else>>
 				<<if (_birthScene > 80) && canDoVaginal($slaves[$i])>>
-					While riding a costumer's dick, $slaves[$i].slaveName's water breaks on him. She desperately tries to disengage but he grabs her hips and slams her back down. He thoroughly enjoys her contracting cunt before pushing her off and standing over her, jacking off. Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He cums over her heaving, still very gravid body and moves on leaving her to recover and collect her child to be sent off.
+					While riding a costumer's dick, $slaves[$i].slaveName's water breaks on him. $He desperately tries to disengage but he grabs her hips and slams her back down. He thoroughly enjoys her contracting cunt before pushing her off and standing over $him, jacking off. Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He cums over her heaving, still very gravid body and moves on leaving her to recover and collect her child to be sent off.
 					<<set $humiliation = 1>>
 				<<elseif (_birthScene > 60) && canDoAnal($slaves[$i])>>
-					While taking a costumer's dick in her ass, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but he grabs her hips and slams into her hard. Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as she collapses onto her still very gravid belly and slips to her side. She quickly gathers her child to be sent off.
+					While taking a costumer's dick in her ass, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but he grabs her hips and slams into her hard. Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as $he collapses onto her still very gravid belly and slips to her side. $He quickly gathers her child to be sent off.
 					<<set $humiliation = 1>>
 				<<elseif (_birthScene > 40)>>
-					While licking a costumer's cunt, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but she grabs her head and slams her back into her crotch.
+					While licking a costumer's cunt, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but she grabs her head and slams her back into her crotch.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					She cums across her face before helping her still very gravid body to the ground and leaving. When she recovers, she quickly gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+					She cums across her face before helping her still very gravid body to the ground and leaving. When $he recovers, $he quickly gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 				<<else>>
-					While sucking a costumer's dick, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but he grabs her head and slams her back into his crotch.
+					While sucking a costumer's dick, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but he grabs her head and slams her back into his crotch.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					He cums down her throat before letting her collapse to the ground and leaving. When she recovers and pushes her still very gravid body upright, she quickly gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+					He cums down her throat before letting her collapse to the ground and leaving. When $he recovers and pushes her still very gravid body upright, $he quickly gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 				<</if>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She heads to a private room in the back of the brothel filled with eager patrons. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her audience. Her child is promptly taken and, following a cleaning and fresh change of clothes, the audience is allowed to have their way with her still very gravid body.
+				$He heads to a private room in the back of the brothel filled with eager patrons. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her audience. $His child is promptly taken and, following a cleaning and fresh change of clothes, the audience is allowed to have their way with her still very gravid body.
 			<<else>>
 				<<if (_birthScene > 80) && canDoVaginal($slaves[$i])>>
-					While riding a costumer's dick, $slaves[$i].slaveName's water breaks on him. Showing no signs of stopping, he shoves her bulk off of him. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. She draws her child to her breast before seeking out the next costumer's cock.
+					While riding a costumer's dick, $slaves[$i].slaveName's water breaks on him. Showing no signs of stopping, he shoves her bulk off of him. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. $He draws her child to her breast before seeking out the next costumer's cock.
 				<<elseif (_birthScene > 60) && canDoAnal($slaves[$i])>>
-					While taking a costumer's dick in her ass, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so he allows her to reposition and continue. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next costumer's cock.
+					While taking a costumer's dick in her ass, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so he allows her to reposition and continue. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next costumer's cock.
 				<<elseif (_birthScene > 40)>>
-					While licking a costumer's cunt, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so she allows her to reposition and continue.
+					While licking a costumer's cunt, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so she allows her to reposition and continue.
 					<<ClothingBirth>>
-					The costumer splashes across her face as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next costumer's cunt.
+					The costumer splashes across her face as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next costumer's cunt.
 				<<else>>
-					While sucking a costumer's dick, $slaves[$i].slaveName's water breaks. She shows no signs of slowing down, so he allows her to reposition and continue.
+					While sucking a costumer's dick, $slaves[$i].slaveName's water breaks. $He shows no signs of slowing down, so he allows her to reposition and continue.
 					<<ClothingBirth>>
-					He cums down her throat as she struggles to reach her child around her still very gravid middle. Once she has brought her child to her breast, she seeks out the next costumer's cock.
+					He cums down her throat as $he struggles to reach her child around her still very gravid middle. Once $he has brought her child to her breast, $he seeks out the next costumer's cock.
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She heads to a private room in the back of the brothel accompanied by several patrons who paid quite a handsome price to enjoy this moment.
+				$He heads to a private room in the back of the brothel accompanied by several patrons who paid quite a handsome price to enjoy this moment.
 				<<if $slaves[$i].devotion > 20>>
-					She settles herself onto a patron's lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, basking in the attention of her audience. Her child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and she beckons the audience to enjoy her still very gravid body.
+					$He settles herself onto a patron's lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, basking in the attention of her audience. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he beckons the audience to enjoy her still very gravid body.
 				<<elseif $slaves[$i].devotion >= -20>>
-					She hesitantly begins to pose, but one of the patrons grabs her by the swollen waist and pulls her onto his lap. She winces as his dick slips over her exposed crotch, but can do nothing to stop <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby from being born. She hates that the first thing her child will touch is an erect cock; a bitter reminder of what its future will likely hold. Her fully born child is promptly taken and her clients descend upon her vulnerable, still very gravid, body.
+					$He hesitantly begins to pose, but one of the patrons grabs her by the swollen waist and pulls her onto his lap. $He winces as his dick slips over her exposed crotch, but can do nothing to stop <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby from being born. $He hates that the first thing her child will touch is an erect cock; a bitter reminder of what its future will likely hold. $His fully born child is promptly taken and her clients descend upon her vulnerable, still very gravid, body.
 				<<else>>
-					She stands shaking, her waters flowing down her legs, until one of the patrons grabs her by the swollen waist and pulls her onto his lap. She cries out as his dick slips over her exposed crotch, but can do nothing to stop <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby from being born. She hates that the first thing her child will touch is an erect cock; a bitter reminder of what its future will likely hold. Her fully born child is promptly taken and her clients descend upon her vulnerable, still very gravid, body.
+					$He stands shaking, her waters flowing down her legs, until one of the patrons grabs her by the swollen waist and pulls her onto his lap. $He cries out as his dick slips over her exposed crotch, but can do nothing to stop <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby from being born. $He hates that the first thing her child will touch is an erect cock; a bitter reminder of what its future will likely hold. $His fully born child is promptly taken and her clients descend upon her vulnerable, still very gravid, body.
 				<</if>>
 			<<else>>
 				<<if (_birthScene > 80) && canDoVaginal($slaves[$i])>>
-					While riding a costumer's dick, $slaves[$i].slaveName's water breaks on him. She desperately tries to disengage but he grabs her hips and slams her back down. He thoroughly enjoys her contracting cunt before pushing her off and standing over her, jacking off. Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He cums over her heaving, still very gravid body and moves on leaving her to recover and collect her child to be sent off.
+					While riding a costumer's dick, $slaves[$i].slaveName's water breaks on him. $He desperately tries to disengage but he grabs her hips and slams her back down. He thoroughly enjoys her contracting cunt before pushing her off and standing over $him, jacking off. Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He cums over her heaving, still very gravid body and moves on leaving her to recover and collect her child to be sent off.
 					<<set $humiliation = 1>>
 				<<elseif (_birthScene > 60) && canDoAnal($slaves[$i])>>
-					While taking a costumer's dick in her ass, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but he grabs her hips and slams into her hard. Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as she collapses onto her still very gravid belly and slips to her side. She quickly gathers her child to be sent off.
+					While taking a costumer's dick in her ass, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but he grabs her hips and slams into her hard. Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as $he collapses onto her still very gravid belly and slips to her side. $He quickly gathers her child to be sent off.
 					<<set $humiliation = 1>>
 				<<elseif (_birthScene > 40)>>
-					While licking a costumer's cunt, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but she grabs her head and slams her back into her crotch.
+					While licking a costumer's cunt, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but she grabs $his head and slams $him back into her crotch.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					She cums across her face before helping her still very gravid body to the ground and leaving. When she recovers, she quickly gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+					She cums across $his face before helping $his still very gravid body to the ground and leaving. When $he recovers, $he quickly gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 				<<else>>
-					While sucking a costumer's dick, $slaves[$i].slaveName's water breaks. She desperately tries to disengage but he grabs her head and slams her back into his crotch.
+					While sucking a costumer's dick, $slaves[$i].slaveName's water breaks. $He desperately tries to disengage but he grabs her head and slams her back into his crotch.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					He cums down her throat before letting her collapse to the ground and leaving. When she recovers and pushes her still very gravid body to its feet, she quickly gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child to be sent off.
+					He cums down her throat before letting her collapse to the ground and leaving. When $he recovers and pushes her still very gravid body to its feet, $he quickly gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child to be sent off.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -726,49 +726,49 @@
 <<case "be the Schoolteacher">>
 	<<if !canWalk($slaves[$i])>>
 		<<if (random(1,20) > $suddenBirth)>>
-			She calls for her teaching aid to help position her so the class may receive a lesson on childbirth. She begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, fully aware of her watching students. She demonstrates the proper ways to labor and how to deliver a baby. She explains the infant's future as her child taken and excuses the class for a short break in order to freshen up. Upon their return, she begins a lesson on being a broodmother, as there is always a curious face locked onto her still very gravid middle. 
+			$He calls for her teaching aid to help position her so the class may receive a lesson on childbirth. $He begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of her watching students. $He demonstrates the proper ways to labor and how to deliver a baby. $He explains the infant's future as her child taken and excuses the class for a short break in order to freshen up. Upon their return, $he begins a lesson on being a broodmother, as there is always a curious face locked onto her still very gravid middle. 
 			<<set $humiliation = 1>>
 		<<else>>
-			While teaching a lesson, $slaves[$i].slaveName's water breaks. Sensing she wouldn't be able to make it to the birthing area, she instead chooses to act on the opportunity. Today's lesson will be on childbirth.
+			While teaching a lesson, $slaves[$i].slaveName's water breaks. Sensing $he wouldn't be able to make it to the birthing area, $he instead chooses to act on the opportunity. Today's lesson will be on childbirth.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			Once she recovers enough, she gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> newborn child and instructs the class to take notes on the lesson she just demonstrated before being escorted out of the classroom. All eyes are locked onto her still very gravid middle; it's clear the class will need a lecture on broodmothers and their weekly routine.
+			Once $he recovers enough, $he gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> newborn child and instructs the class to take notes on the lesson $he just demonstrated before being escorted out of the classroom. All eyes are locked onto her still very gravid middle; it's clear the class will need a lecture on broodmothers and their weekly routine.
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			While stripping, she makes her way to the front of the classroom and settles herself in a way her entire class can see. Birth <<if $slaves[$i].birthsTotal == 0>>will be<<else>>is<</if>> a regular occurrence in her life and it would be a waste to not work it into her lesson plan. She wiggles herself into a comfortable spot and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, fully aware of her watching students. She demonstrates the proper ways to labor and how to deliver a baby. She explains the infant's future as her child is taken and excuses the class for a short break in order to freshen up. Upon their return, she begins a lesson on being a broodmother, as there is always a curious face locked onto her still very gravid middle.
+			While stripping, $he makes her way to the front of the classroom and settles herself in a way her entire class can see. Birth <<if $slaves[$i].birthsTotal == 0>>will be<<else>>is<</if>> a regular occurrence in her life and it would be a waste to not work it into her lesson plan. $He wiggles herself into a comfortable spot and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, fully aware of her watching students. $He demonstrates the proper ways to labor and how to deliver a baby. $He explains the infant's future as her child is taken and excuses the class for a short break in order to freshen up. Upon their return, $he begins a lesson on being a broodmother, as there is always a curious face locked onto her still very gravid middle.
 			<<set $humiliation = 1>>
 		<<else>>
-			While teaching a lesson, $slaves[$i].slaveName's water breaks. Sensing she wouldn't be able to make it to the birthing area, she instead chooses to act on the opportunity. Today's lesson will be on childbirth.
+			While teaching a lesson, $slaves[$i].slaveName's water breaks. Sensing $he wouldn't be able to make it to the birthing area, $he instead chooses to act on the opportunity. Today's lesson will be on childbirth.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			Once she recovers enough, she gathers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> newborn child and instructs the class to take notes on the lesson she just demonstrated before leaving to drop off her child for removal. She feels all the eyes on her still very pregnant body as she waddles past. It's clear the class will need a review on broodmothers when she returns.
+			Once $he recovers enough, $he gathers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> newborn child and instructs the class to take notes on the lesson $he just demonstrated before leaving to drop off her child for removal. $He feels all the eyes on her still very pregnant body as $he waddles past. It's clear the class will need a review on broodmothers when $he returns.
 		<</if>>
 	<</if>>
 
 <<case "be your Concubine">>
 	<<if $slaves[$i].pregSource == -1 && $slaves[$i].relationship == -3>>
 		<<if (random(1,20) > $suddenBirth)>>
-			You make sure to find time in your busy schedule to be at your concubine wife's side as she gives birth to your children, even if it's <<if $slaves[$i].birthsTotal == 0>>to be <</if>> a weekly occurrence. You gently caress $slaves[$i].slaveName's body as she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. You help her upright and hold your child to her breasts. The two of you cuddle as you watch your newborn suckle from its mother. Since she is quite special to you, you allow her the time to pick out names before her child has to be taken away. When the time comes to pick up the newborn, the slave servant is surprised to find a name-card affixed to its blanket.<<if $slaves[$i].fetish != "mindbroken">> She can't help but feel more devoted to her master after seeing such a touching act. Before you leave, $slaves[$i].slaveName expresses how cute she found your child and that she can't wait to see the next one.<</if>>
+			You make sure to find time in your busy schedule to be at your concubine wife's side as $he gives birth to your children, even if it's <<if $slaves[$i].birthsTotal == 0>>to be <</if>> a weekly occurrence. You gently caress $slaves[$i].slaveName's body as $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. You help her upright and hold your child to her breasts. The two of you cuddle as you watch your newborn suckle from its mother. Since $he is quite special to you, you allow her the time to pick out names before her child has to be taken away. When the time comes to pick up the newborn, the slave servant is surprised to find a name-card affixed to its blanket.<<if $slaves[$i].fetish != "mindbroken">> $He can't help but feel more devoted to her master after seeing such a touching act. Before you leave, $slaves[$i].slaveName expresses how cute $he found your child and that $he can't wait to see the next one.<</if>>
 		<<else>>
-			Your sleep is awoken by a moist sensation and a loud moan beside you. As you help your concubine wife up, she can't hold back the coming birth.
+			Your sleep is awoken by a moist sensation and a loud moan beside you. As you help your concubine wife up, $he can't hold back the coming birth.
 			<<ClothingBirth>>
-			As you swaddle <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, you cuddle up to the still very gravid girl. Bringing your child to her breast, you enjoy each other's comfort until a servant comes to clean up. Since she is quite special to you, you allow her the time to pick out names before her child has to be taken away. The slave servant is somewhat surprised to by your actions, but understands those closest to you are afforded luxuries far beyond her peers.
+			As you swaddle <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, you cuddle up to the still very gravid girl. Bringing your child to her breast, you enjoy each other's comfort until a servant comes to clean up. Since $he is quite special to you, you allow her the time to pick out names before her child has to be taken away. The slave servant is somewhat surprised to by your actions, but understands those closest to you are afforded luxuries far beyond her peers.
 		<</if>>
 	<<elseif !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is assisted in reaching your side. You call her over and strip her as she instinctively begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to your wandering hands. Her child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with you, she is helped back to your master suite.
+				$He is assisted in reaching your side. You call her over and strip her as $he instinctively begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to your wandering hands. $His child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with you, $he is helped back to your master suite.
 			<<else>>
-				$slaves[$i].slaveName cradles her gravid belly, waiting for your return, when her water breaks. This disturbance of her usual routine spurs her to look for you and she begins struggling to find you. You find her in the halls, halfway to your office, just barely holding back <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child. You help her the rest of the way, just before it's too late.
+				$slaves[$i].slaveName cradles her gravid belly, waiting for your return, when her water breaks. This disturbance of her usual routine spurs her to look for you and $he begins struggling to find you. You find her in the halls, halfway to your office, just barely holding back <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child. You help her the rest of the way, just before it's too late.
 				<<ClothingBirth>>
 				Cradling your child, the two of you rest for a spell before sending it off and spending some more intimate time together.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is assisted in reaching your side. You beckon her over and strip her as she dutifully begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, enjoying your wandering hands and attention. Her child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with you, she is helped back to your master suite. As she leaves your office, she throws you a wink, hoping to see you again soon.
+				$He is assisted in reaching your side. You beckon her over and strip her as $he dutifully begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, enjoying your wandering hands and attention. $His child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with you, $he is helped back to your master suite. As $he leaves your office, $he throws you a wink, hoping to see you again soon.
 			<<else>>
-				$slaves[$i].slaveName cradles her gravid belly, waiting for your return, when her water breaks. Saddened that you aren't there for the show, she begins struggling to crawl to you . By the time she reaches your office, she is barely holding back her child. You rise to meet her and help her onto the couch, just before it's too late.
+				$slaves[$i].slaveName cradles her gravid belly, waiting for your return, when her water breaks. Saddened that you aren't there for the show, $he begins struggling to crawl to you . By the time $he reaches your office, $he is barely holding back her child. You rise to meet her and help her onto the couch, just before it's too late.
 				<<ClothingBirth>>
 				Cradling your child, the two of you rest for a spell before sending it off and spending some more intimate time together.
 			<</if>>
@@ -776,17 +776,17 @@
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She wanders the penthouse until she finds you. You call her over and strip her as she instinctively begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to your wandering hands. Her child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with you, she returns to your master suite.
+				$He wanders the penthouse until $he finds you. You call her over and strip her as $he instinctively begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to your wandering hands. $His child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with you, $he returns to your master suite.
 			<<else>>
-				$slaves[$i].slaveName cradles her gravid belly, waiting for your return, when her water breaks. This disturbance of her usual routine spurs her to look for you and she begins waddling off to find you. As she inches into your office, it's abundantly clear <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child is just beginning to crown. You help her to the couch, just as the show begins.
+				$slaves[$i].slaveName cradles her gravid belly, waiting for your return, when her water breaks. This disturbance of her usual routine spurs her to look for you and $he begins waddling off to find you. As $he inches into your office, it's abundantly clear <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child is just beginning to crown. You help her to the couch, just as the show begins.
 				<<ClothingBirth>>
 				Cradling your child, the two of you rest for a spell before sending it off and spending some more intimate time together.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She wanders the penthouse until she finds you. You beckon her over and strip her as she dutifully begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, enjoying your wandering hands and attention. Her child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with you, she returns to your master suite. As she waddles from your office, she throws you a wink, hoping to see you again soon.
+				$He wanders the penthouse until $he finds you. You beckon her over and strip her as $he dutifully begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, enjoying your wandering hands and attention. $His child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with you, $he returns to your master suite. As $he waddles from your office, $he throws you a wink, hoping to see you again soon.
 			<<else>>
-				$slaves[$i].slaveName cradles her gravid belly, waiting for your return, when her water breaks. Saddened that you aren't there for the show, she begins waddling off to find you. By the time she reaches your office, she is barely holding back her child<<if $slaves[$i].pregType > 1>>ren<</if>>. You rise to meet her and help her onto the couch, just before it's too late.
+				$slaves[$i].slaveName cradles her gravid belly, waiting for your return, when her water breaks. Saddened that you aren't there for the show, $he begins waddling off to find you. By the time $he reaches your office, $he is barely holding back her child<<if $slaves[$i].pregType > 1>>ren<</if>>. You rise to meet her and help her onto the couch, just before it's too late.
 				<<ClothingBirth>>
 				Cradling your child, the two of you rest for a spell before sending them off and spending some more intimate time together.
 			<</if>>
@@ -796,218 +796,218 @@
 <<case "live with your Head Girl">>
 	<<if $slaves[$i].pregSource == $HeadGirl.ID>>
 		<<if (random(1,20) > $suddenBirth)>>
-			$HeadGirl.slaveName makes sure that the mother of her child is happy and comfortable for the upcoming birth, even if they won't be spending much time with their offspring. She carefully undresses $slaves[$i].slaveName, all the while whispering sweet nothings in her ear. She begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, and her child is carefully collected by their father. Once they are out of the way, $HeadGirl.slaveName moves in to fondle $slaves[$i].slaveName's tired, still very gravid body.
+			$HeadGirl.slaveName makes sure that the mother of her child is happy and comfortable for the upcoming birth, even if they won't be spending much time with their offspring. $He carefully undresses $slaves[$i].slaveName, all the while whispering sweet nothings in her ear. $He begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, and her child is carefully collected by their father. Once they are out of the way, $HeadGirl.slaveName moves in to fondle $slaves[$i].slaveName's tired, still very gravid body.
 		<<else>>
 		<</if>>
 	<<else>>
 		<<if !canWalk($slaves[$i])>>
 			<<if $slaves[$i].fetish == "mindbroken">>
 				<<if (random(1,20) > $suddenBirth)>>
-					She is aided in finding $HeadGirl.slaveName, who undresses her as she instinctively begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her wandering hands. Her child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with your head girl, she is taken back to $HeadGirl.slaveName' room.
+					$He is aided in finding $HeadGirl.slaveName, who undresses her as $he instinctively begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her wandering hands. $His child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with your head girl, $he is taken back to $HeadGirl.slaveName' room.
 				<<else>>
-					$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+					$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 					<<ClothingBirth>>
-					She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes resting before $HeadGirl.slaveName returns from her duties.
+					$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes resting before $HeadGirl.slaveName returns from her duties.
 				<</if>>
 			<<else>>
 				<<if (random(1,20) > $suddenBirth)>>
-					She is aided in seeking out $HeadGirl.slaveName, who undresses her as she dutifully begins to push out, enjoying her wandering hands and attention. Her child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with your head girl, she is helped back to $HeadGirl.slaveName's room.
+					$He is aided in seeking out $HeadGirl.slaveName, who undresses her as $he dutifully begins to push out, enjoying her wandering hands and attention. $His child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with your head girl, $he is helped back to $HeadGirl.slaveName's room.
 				<<else>>
-					$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+					$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 					<<ClothingBirth>>
-					She collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and places it in the cradle readied for her. She is helped to the shower as your servants clean up and remove her newborn. Freshened up, she returns to resting knowing full well that $HeadGirl.slaveName will be eager to play with her still very pregnant body when she finishes her rounds.
+					$He collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and places it in the cradle readied for $him. $He is helped to the shower as your servants clean up and remove her newborn. Freshened up, $he returns to resting knowing full well that $HeadGirl.slaveName will be eager to play with her still very pregnant body when $he finishes her rounds.
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if $slaves[$i].fetish == "mindbroken">>
 				<<if (random(1,20) > $suddenBirth)>>
-					She wanders until she finds $HeadGirl.slaveName, who undresses her as she instinctively begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, indifferent to her wandering hands. Her child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with your head girl, she is lead back to $HeadGirl.slaveName' room.
+					$He wanders until $he finds $HeadGirl.slaveName, who undresses her as $he instinctively begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, indifferent to her wandering hands. $His child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with your head girl, $he is lead back to $HeadGirl.slaveName' room.
 				<<else>>
-					$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+					$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 					<<ClothingBirth>>
-					She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes resting before $HeadGirl.slaveName returns from her duties.
+					$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes resting before $HeadGirl.slaveName returns from her duties.
 				<</if>>
 			<<else>>
 				<<if (random(1,20) > $suddenBirth)>>
-					She seeks out $HeadGirl.slaveName, who undresses her as she dutifully begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, enjoying her wandering hands and attention. Her child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with your head girl, she returns to $HeadGirl.slaveName's room.
+					$He seeks out $HeadGirl.slaveName, who undresses her as $he dutifully begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, enjoying her wandering hands and attention. $His child is promptly taken and, following a cleaning, a fresh change of clothes, and some private time with your head girl, $he returns to $HeadGirl.slaveName's room.
 				<<else>>
-					$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+					$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 					<<ClothingBirth>>
-					She collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and places it in the cradle readied for her. She waddles off to shower as your servants clean up and remove her newborn. Freshened up, she returns to resting knowing full well that $HeadGirl.slaveName will be eager to play with her still very pregnant body when she finishes her rounds.
+					$He collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and places it in the cradle readied for $him. $He waddles off to shower as your servants clean up and remove her newborn. Freshened up, $he returns to resting knowing full well that $HeadGirl.slaveName will be eager to play with her still very pregnant body when $he finishes her rounds.
 				<</if>>
 			<</if>>
 		<</if>>
 	<</if>>
 
 <<case "be confined in the arcade">>
-	Or she would have been, if she weren't locked in an arcade cabinet. A gush of liquid pours from $slaves[$i].slaveName's cunt, followed by the attendant in charge of the arcade hanging an "out of order" sign on her exposed rear. While her mouth is filled with a customer's dick, her body instinctively births <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby into a waiting basket. As it is carried away, her rear is cleaned up and the sign removed.
+	Or $he would have been, if $he weren't locked in an arcade cabinet. A gush of liquid pours from $slaves[$i].slaveName's cunt, followed by the attendant in charge of the arcade hanging an "out of order" sign on her exposed rear. While her mouth is filled with a customer's dick, her body instinctively births <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby into a waiting basket. As it is carried away, her rear is cleaned up and the sign removed.
 
 <<case "get treatment in the clinic">>
 	<<if !canWalk($slaves[$i])>>
 		<<if (random(1,20) > $suddenBirth)>>
-			She is helped to the clinic's maternity ward. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child before taking it away. Before long she is returned to her recovery room to rest.
+			$He is helped to the clinic's maternity ward. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child before taking it away. Before long $he is returned to her recovery room to rest.
 		<<else>>
-			$slaves[$i].slaveName is in the perfect place to give birth when her water breaks. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child before taking it away. Before long she returns to attend to her patient's post-birth health.
+			$slaves[$i].slaveName is in the perfect place to give birth when her water breaks. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child before taking it away. Before long $he returns to attend to her patient's post-birth health.
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			She is guided to the clinic's maternity ward. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child before taking it away. Before long she is returned to her recovery room to rest.
+			$He is guided to the clinic's maternity ward. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child before taking it away. Before long $he is returned to her recovery room to rest.
 		<<else>>
-			$slaves[$i].slaveName is in the perfect place to give birth when her water breaks. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child before taking it away. Before long she returns to attend to her patient's post-birth health.
+			$slaves[$i].slaveName is in the perfect place to give birth when her water breaks. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child before taking it away. Before long $he returns to attend to her patient's post-birth health.
 		<</if>>
 	<</if>>
 
 <<case "be confined in the cellblock">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if (random(1,20) > $suddenBirth)>>
-			She is forced into a specially designed cell to give birth in. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, after her still very gravid body and the cell are hosed down, she is moved back into a standard cell.
+			$He is forced into a specially designed cell to give birth in. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, after her still very gravid body and the cell are hosed down, $he is moved back into a standard cell.
 		<<else>>
-			While waiting in a cell in $cellblockName, $slaves[$i].slaveName's water breaks. She assumes a birthing position,
+			While waiting in a cell in $cellblockName, $slaves[$i].slaveName's water breaks. $He assumes a birthing position,
 			<<ClothingBirth>>
-			She struggles to reach <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child around her still very gravid middle and resumes waiting with it latched to her breast.
+			$He struggles to reach <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child around her still very gravid middle and resumes waiting with it latched to her breast.
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			She is forced into a specially designed cell to give birth in. Reluctantly, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and, after her still very gravid body and the cell are hosed down, she is moved back into a standard cell.
+			$He is forced into a specially designed cell to give birth in. Reluctantly, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and, after her still very gravid body and the cell are hosed down, $he is moved back into a standard cell.
 		<<else>>
-			$slaves[$i].slaveName is awoken from her stupor by moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+			$slaves[$i].slaveName is awoken from her stupor by moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 			<<ClothingBirth>>
-			She collects her <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and holds it close knowing someone will soon come to take it away from her.
+			$He collects her <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and holds it close knowing someone will soon come to take it away from $him.
 		<</if>>
 	<</if>>
 
 <<case "be the DJ">>
 	<<if (random(1,20) > $suddenBirth)>>
-		She heads to a private room in the back of the club accompanied by a influential patron. She settles herself onto his lap and begins working on <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, basking in his attention. Placing her child outside the room, she returns to pleasure her tease.
+		$He heads to a private room in the back of the club accompanied by a influential patron. $He settles herself onto his lap and begins working on <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, basking in his attention. Placing her child outside the room, $he returns to pleasure her tease.
 	<<else>>
-		While DJing $clubName, $slaves[$i].slaveName's water breaks. She can't stop her setlist without drawing attention, so she tries her best to ride out the contractions. As soon as the opportunity arises, she attempts to sneak off stage. However, a number of fans block her progress keeping her on stage. Before long the contractions are too much to bear and she drops to the ground.
+		While DJing $clubName, $slaves[$i].slaveName's water breaks. $He can't stop her setlist without drawing attention, so $he tries her best to ride out the contractions. As soon as the opportunity arises, $he attempts to sneak off stage. However, a number of fans block her progress keeping her on stage. Before long the contractions are too much to bear and $he drops to the ground.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		Exhausted, she sits up and smiles to the crowd. Her show definitely drew attention to her club. With a burst of energy she hefts her still very gravid body to its feet, bows to the crowd, and gathers her child before making her way off stage. As she leaves the public's gaze, she shouts out with a wink "Same time next week!".
+		Exhausted, $he sits up and smiles to the crowd. $His show definitely drew attention to her club. With a burst of energy $he hefts her still very gravid body to its feet, bows to the crowd, and gathers her child before making her way off stage. As $he leaves the public's gaze, $he shouts out with a wink "Same time next week!".
 	<</if>>
 
 <<case "be the Attendant">>
 	<<if (random(1,20) > $suddenBirth)>>
-		$Attendant.slaveName waddles to a special pool designed to give birth in. Once she is safely in the water, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, something she has been trained for. Her child is promptly taken and, following a cleaning, she heads back to the main pool.
+		$Attendant.slaveName waddles to a special pool designed to give birth in. Once $he is safely in the water, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, something $he has been trained for. $His child is promptly taken and, following a cleaning, $he heads back to the main pool.
 	<<else>>
 		While tending to the girls in the spa, $slaves[$i].slaveName's water breaks. The girls quickly come to her aid as the contractions get closer and closer together. Their hands are all over her laboring body, unsure of what they should be doing.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		She thanks her charges for their, less than helpful, efforts and collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child for removal. Upon returning, she strips down and enters the pool, desperate for a break and eager to take the weight off her still very gravid body.
+		$He thanks her charges for their, less than helpful, efforts and collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child for removal. Upon returning, $he strips down and enters the pool, desperate for a break and eager to take the weight off her still very gravid body.
 	<</if>>
 
 <<case "be the Madam">>
 	<<if (random(1,20) > $suddenBirth)>>
-		She heads to a private room in the back of the club accompanied by a influential patron. She settles herself onto his lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, basking in his attention as he strips her. Placing her child outside the room, she returns to get more intimate with her catch.
+		$He heads to a private room in the back of the club accompanied by a influential patron. $He settles herself onto his lap and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, basking in his attention as he strips $him. Placing her child outside the room, $he returns to get more intimate with her catch.
 	<<else>>
-		While managing $brothelName, $slaves[$i].slaveName's water breaks. Knowing she lacks the time to leave, she sets up a sign reading "birthshow <<print cashFormat(100)>> a viewer" and takes a seat.
+		While managing $brothelName, $slaves[$i].slaveName's water breaks. Knowing $he lacks the time to leave, $he sets up a sign reading "birthshow <<print cashFormat(100)>> a viewer" and takes a seat.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		Upon completing her show, she reclines with <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and begins counting the credits she bought in. In total she made <<print cashFormat(100*_birthScene)>> and feels that business will be up in the brothel as patrons line up hoping another showing.
+		Upon completing her show, $he reclines with <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and begins counting the credits $he bought in. In total $he made <<print cashFormat(100*_birthScene)>> and feels that business will be up in the brothel as patrons line up hoping another showing.
 		<<set $cash += 100*_birthScene>>
 	<</if>>
 
 <<case "be the Stewardess">>
 	<<if (random(1,20) > $suddenBirth)>>
-		She strips and settles herself into her favorite chair while calling several servants to her aid. She begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby into the arms of her waiting charges. Her child is promptly taken and she reclines while her servants clean and dress her still very gravid body. Once she has had enough, she orders them to help her up and get back to work on the penthouse.
+		$He strips and settles herself into her favorite chair while calling several servants to her aid. $He begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby into the arms of her waiting charges. $His child is promptly taken and $he reclines while her servants clean and dress her still very gravid body. Once $he has had enough, $he orders them to help her up and get back to work on the penthouse.
 	<<else>>
-		While overseeing the house servants, $slaves[$i].slaveName's water breaks. She has no time to strip down so she takes a seat and readies herself. Commandingly, she snaps her fingers and orders her charges to clean up the floor, assist her with her clothes, and be ready to take <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child away.
+		While overseeing the house servants, $slaves[$i].slaveName's water breaks. $He has no time to strip down so $he takes a seat and readies herself. Commandingly, $he snaps her fingers and orders her charges to clean up the floor, assist her with her clothes, and be ready to take <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child away.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		Once she catches her breath, she struggles to her feet and takes the fresh change of clothing provided by her servants before ordering them back to work.
+		Once $he catches her breath, $he struggles to her feet and takes the fresh change of clothing provided by her servants before ordering them back to work.
 	<</if>>
 
 <<case "be the Milkmaid">>
 	<<if (random(1,20) > $suddenBirth)>>
-		She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She is quite experienced in delivering her cows' children, but she finds it much more difficult to apply her knowledge to herself. Her child is promptly taken and, after a short rest, she returns to caring for your cows, as gravid as ever.
+		$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He is quite experienced in delivering her cows' children, but $he finds it much more difficult to apply her knowledge to herself. $His child is promptly taken and, after a short rest, $he returns to caring for your cows, as gravid as ever.
 	<<else>>
-		While tending to her stock, $slaves[$i].slaveName's water breaks. She hastily pulls herself into a vacant stall and seats herself in its corner.
+		While tending to her stock, $slaves[$i].slaveName's water breaks. $He hastily pulls herself into a vacant stall and seats herself in its corner.
 		<<ClothingBirth>>
-		Quickly, she collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child for removal before returning to $dairyName. The cows around her stall all have a knowing look on their faces<<if $dairyPregSetting > 0>> but with their own swollen bellies hanging heavily from them, they know that they soon will follow her lead.<<else>>.<</if>>
+		Quickly, $he collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child for removal before returning to $dairyName. The cows around her stall all have a knowing look on their faces<<if $dairyPregSetting > 0>> but with their own swollen bellies hanging heavily from them, they know that they soon will follow her lead.<<else>>.<</if>>
 	<</if>>
 
 <<case "be the Wardeness">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if (random(1,20) > $suddenBirth)>>
-			She enters an empty cell, strips, and seats herself on the cot. She instinctively begins birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she returns to mindlessly breaking the confined slaves.
+			$He enters an empty cell, strips, and seats herself on the cot. $He instinctively begins birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he returns to mindlessly breaking the confined slaves.
 		<<else>>
-			While punishing a slave, $slaves[$i].slaveName's water breaks, soaking her. Indifferent, she resumes beating her until the contractions are too much to bear. Settling to the floor, she begins giving birth.
+			While punishing a slave, $slaves[$i].slaveName's water breaks, soaking $him. Indifferent, $he resumes beating her until the contractions are too much to bear. Settling to the floor, $he begins giving birth.
 			<<ClothingBirth>>
-			As soon as she regains her strength, she resumes beating the confused slave. Her child is collected by a servant, who carefully hints that $slaves[$i].slaveName should take a break before returning to her task.
+			As soon as $he regains her strength, $he resumes beating the confused slave. $His child is collected by a servant, who carefully hints that $slaves[$i].slaveName should take a break before returning to her task.
 		<</if>>
 	<<else>>
 		<<if (random(1,20) > $suddenBirth)>>
-			She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to the cellblock.
+			$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to the cellblock.
 		<<else>>
-			While punishing a rebellious slave, $slaves[$i].slaveName's water breaks, soaking her. Noticing the slave's smirk, she resumes beating her until the contractions are too much to bear. Relocking the cell, she waddles into the nearest empty cell and drops her weight onto the cot.
+			While punishing a rebellious slave, $slaves[$i].slaveName's water breaks, soaking $him. Noticing the slave's smirk, $he resumes beating her until the contractions are too much to bear. Relocking the cell, $he waddles into the nearest empty cell and drops her weight onto the cot.
 			<<ClothingBirth>>
-			Quickly, she collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child for removal before returning to $cellblockName. On her way past the cells, she takes note of any slaves whispering or gesturing about what transpired for future punishment.
+			Quickly, $he collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child for removal before returning to $cellblockName. On her way past the cells, $he takes note of any slaves whispering or gesturing about what transpired for future punishment.
 		<</if>>
 	<</if>>
 
 <<case "be the Nurse">>
 	<<if (random(1,20) > $suddenBirth)>>
-		She waddles to her maternity ward and strips before settling into an open bed. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby as her assistants watch. Her child is promptly taken and she is helped to the recovery ward until she recovers enough to take over $clinicName again.
+		$He waddles to her maternity ward and strips before settling into an open bed. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby as her assistants watch. $His child is promptly taken and $he is helped to the recovery ward until $he recovers enough to take over $clinicName again.
 	<<else>>
-		While tending to your unwell slaves, $slaves[$i].slaveName's water breaks. Counting the time between contractions, she knows she has no time to get to her prepared birthing chamber. She waddles into the nearest empty room and hoists her gravid body into the examination chair, placing her feet in the stirrups.
+		While tending to your unwell slaves, $slaves[$i].slaveName's water breaks. Counting the time between contractions, $he knows $he has no time to get to her prepared birthing chamber. $He waddles into the nearest empty room and hoists her gravid body into the examination chair, placing her feet in the stirrups.
 		<<ClothingBirth>>
-		Quickly, she collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child for removal before retiring to the recovery ward. Within an hour of rest, she is back on her feet tending to her charges.
+		Quickly, $he collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child for removal before retiring to the recovery ward. Within an hour of rest, $he is back on her feet tending to her charges.
 	<</if>>
 
 <<case "be your Head Girl">>
 	<<if (random(1,20) > $suddenBirth)>>
-		She returns to <<if $HGSuite == 1>>her room's bed<<else>>her bed<</if>> and strips before slipping into it. She makes herself comfortable<<if $HGSuiteSlaves != 0>>, as her slave rushes to her side,<</if>> and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken<<if $HGSuiteSlaves != 0>> by her roommate<</if>> and she rests awhile before returning to managing your slaves.
+		$He returns to <<if $HGSuite == 1>>her room's bed<<else>>her bed<</if>> and strips before slipping into it. $He makes herself comfortable<<if $HGSuiteSlaves != 0>>, as her slave rushes to her side,<</if>> and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken<<if $HGSuiteSlaves != 0>> by her roommate<</if>> and $he rests awhile before returning to managing your slaves.
 	<<else>>
-		While overseeing your other slaves, $slaves[$i].slaveName's water breaks. She attempts to hold back the coming birth until she can catch a break in her duties but ultimately fails.
+		While overseeing your other slaves, $slaves[$i].slaveName's water breaks. $He attempts to hold back the coming birth until $he can catch a break in her duties but ultimately fails.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		Upon finishing, she quickly collects <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child and orders the mess to be cleaned promptly without breaking her dominant appearance.
+		Upon finishing, $he quickly collects <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child and orders the mess to be cleaned promptly without breaking her dominant appearance.
 	<</if>>
 
 <<case "guard you">>
 	<<if (random(1,20) > $suddenBirth)>>
-		Or she would have, if she'd stop refusing to leave your side. You lead her someplace private and help her undress. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. You call for a servant to quickly gather her child as you help her into the shower, making sure to wait outside for your loyal guardian to finish.
+		Or $he would have, if $he'd stop refusing to leave your side. You lead her someplace private and help her undress. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. You call for a servant to quickly gather her child as you help her into the shower, making sure to wait outside for your loyal guardian to finish.
 	<<else>>
 		Refusing to leave your side even when on the verge of giving birth, $slaves[$i].slaveName continues to serve as your bodyguard despite her condition. A splashing sound and a loud groan emit from behind you; your bodyguard has gone into labor. You quickly help her to the ground and prepare for the coming birth.
 		<<ClothingBirth>>
-		You sit by your loyal guard holding her child until a servant comes by to take them away. Once she is thoroughly rested, you help her up and lead her back to the penthouse to shower and change.
+		You sit by your loyal guard holding her child until a servant comes by to take them away. Once $he is thoroughly rested, you help her up and lead her back to the penthouse to shower and change.
 	<</if>>
 
 <<case "recruit girls">>
 	<<if (random(1,20) > $suddenBirth)>>
-		She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she rests awhile before returning to finding new slaves for you.
+		$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he rests awhile before returning to finding new slaves for you.
 	<<else>>
-		While on a video call with a potential recruit, $slaves[$i].slaveName's water breaks. She attempts to play it cool and act like nothing is happening but the worsening contractions finally get to her.
+		While on a video call with a potential recruit, $slaves[$i].slaveName's water breaks. $He attempts to play it cool and act like nothing is happening but the worsening contractions finally get to $him.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
 		<<if _birthScene > 50>>
-			Exhausted from the birth and clutching her newborn child, she returns to find that she never ended the call. The prospective slave is blushing furiously and seems to have begun touching herself to the show. Apologizing for the interruption, while red with embarrassment, $slaves[$i].slaveName resumes chatting with the somewhat more pliant girl.
+			Exhausted from the birth and clutching her newborn child, $he returns to find that $he never ended the call. The prospective slave is blushing furiously and seems to have begun touching herself to the show. Apologizing for the interruption, while red with embarrassment, $slaves[$i].slaveName resumes chatting with the somewhat more pliant girl.
 		<<else>>
-			Exhausted from the birth and clutching her newborn child, she returns to find that she never ended the call. The prospective slave is grinning widely and states she has been recording the show. She signs off, but not before saying she'll be seeing more of $slaves[$i].slaveName around the internet. <<if $slaves[$i].fetish == "humiliation">>Your recruiter can't help but become aroused at the prospect<<else>>Your recruiter is terrified that her birth video is out there for everyone to see, partly due to her own shame and to the potential damage it will do to her reputation<</if>>.
+			Exhausted from the birth and clutching her newborn child, $he returns to find that $he never ended the call. The prospective slave is grinning widely and states $he has been recording the show. $He signs off, but not before saying $he'll be seeing more of $slaves[$i].slaveName around the internet. <<if $slaves[$i].fetish == "humiliation">>Your recruiter can't help but become aroused at the prospect<<else>>Your recruiter is terrified that her birth video is out there for everyone to see, partly due to her own shame and to the potential damage it will do to her reputation<</if>>.
 		<</if>>
 	<</if>>
 
 <<case "work in the dairy">>
 	<<if $dairyRestraintsSetting > 1 && $slaves[$i].career == "a bioreactor">>
 		<<if (random(1,20) > $suddenBirth)>>
-			As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. Once <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby is secure, the basket retracts to allow $possessive <<if $slaves[$i].mpreg == 1>>rear<<else>>vagina<</if>> to be cleaned.
+			As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. Once <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby is secure, the basket retracts to allow $possessive <<if $slaves[$i].mpreg == 1>>rear<<else>>vagina<</if>> to be cleaned.
 		<<else>>
-			Without warning, $slaves[$i].slaveName's water breaks and $possessive body begins to rapidly push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She manages to force out the squirming child before the basket could extend, flagging her unit for maintenance.
+			Without warning, $slaves[$i].slaveName's water breaks and $possessive body begins to rapidly push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He manages to force out the squirming child before the basket could extend, flagging her unit for maintenance.
 		<</if>>
 		All these events are meaningless to $object, as $possessive consciousness has long since been snuffed out.
 	<<elseif $dairyRestraintsSetting > 1>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. Once <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby is secure, the basket retracts to allow $possessive <<if $slaves[$i].mpreg == 1>>rear<<else>>vagina<</if>> to be cleaned.
+				As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. Once <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby is secure, the basket retracts to allow $possessive <<if $slaves[$i].mpreg == 1>>rear<<else>>vagina<</if>> to be cleaned.
 			<<else>>
-				Without warning, $slaves[$i].slaveName's water breaks and $possessive body begins to rapidly push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She manages to force out the squirming child before the basket could extend, flagging her unit for maintenance.
+				Without warning, $slaves[$i].slaveName's water breaks and $possessive body begins to rapidly push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He manages to force out the squirming child before the basket could extend, flagging her unit for maintenance.
 			<</if>>
 			$pronounCap doesn't care about any of this, as the only thoughts left in $possessive empty mind revolve around the sensations in $possessive crotch and breasts.
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. $pronounCap struggles in $possessive bindings, attempting to break free in order to birth <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby, but $possessive efforts are pointless. $pronounCap is forced to give birth, restrained, into the waiting holder. Once the child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> secure, the basket retracts allowing access to $possessive vagina.
+				As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. $pronounCap struggles in $possessive bindings, attempting to break free in order to birth <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby, but $possessive efforts are pointless. $pronounCap is forced to give birth, restrained, into the waiting holder. Once the child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> secure, the basket retracts allowing access to $possessive vagina.
 			<<else>>
-				Without warning, $slaves[$i].slaveName's water breaks and she uncontrollably births <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She manages to force out the screaming child before the basket could fully extend, flagging her unit for maintenance and causing quite the scene. She knows full well there is nothing she can do to hide her shame.
+				Without warning, $slaves[$i].slaveName's water breaks and $he uncontrollably births <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He manages to force out the screaming child before the basket could fully extend, flagging her unit for maintenance and causing quite the scene. $He knows full well there is nothing $he can do to hide her shame.
 			<</if>>
 			$possessiveCap mind slips slightly more as $pronoun focuses on $possessive fate as nothing more than an animal destined to be milked and bare offspring until $possessive body gives out.
 			<<set $humiliation = 1>>
@@ -1016,19 +1016,19 @@
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				While getting milked, $slaves[$i].slaveName's water breaks. $pronounCap shows little interest and continues kneading $possessive breasts. Instinctively, $pronoun begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>>. $pronounCap pays no heed to $possessive child being removed from the milking stall, instead focusing entirely on draining $possessive breasts and getting comfortable with her still very gravid middle.
+				While getting milked, $slaves[$i].slaveName's water breaks. $pronounCap shows little interest and continues kneading $possessive breasts. Instinctively, $pronoun begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>>. $pronounCap pays no heed to $possessive child being removed from the milking stall, instead focusing entirely on draining $possessive breasts and getting comfortable with her still very gravid middle.
 			<<else>>
-				While getting milked, $slaves[$i].slaveName's water breaks. She show little interest and continues kneading her breasts.
+				While getting milked, $slaves[$i].slaveName's water breaks. $He show little interest and continues kneading her breasts.
 				<<ClothingBirth>>
-				She shows no interest in <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child being removed from the milking stall, nor her still very gravid middle, instead focusing entirely on draining her breasts.
+				$He shows no interest in <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child being removed from the milking stall, nor her still very gravid middle, instead focusing entirely on draining her breasts.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				While getting milked, $slaves[$i].slaveName's water breaks,<<if $dairyPregSetting > 0>> this is a regular occurrence to $object now so<<else>> but<</if>> $pronoun continues enjoying $possessive milking while $pronoun works to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. $pronounCap catches <<if canSee($slaves[$i])>>a glimpse<<else>>the sound<</if>> of $possessive child being removed from the milking stall before returning $possessive focus to draining $possessive breasts.
+				While getting milked, $slaves[$i].slaveName's water breaks,<<if $dairyPregSetting > 0>> this is a regular occurrence to $object now so<<else>> but<</if>> $pronoun continues enjoying $possessive milking while $pronoun works to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $pronounCap catches <<if canSee($slaves[$i])>>a glimpse<<else>>the sound<</if>> of $possessive child being removed from the milking stall before returning $possessive focus to draining $possessive breasts.
 			<<else>>
-				While getting milked, $slaves[$i].slaveName's water breaks. Knowing she can't leave yet, she shifts into a more comfortable position for the impending birth.
+				While getting milked, $slaves[$i].slaveName's water breaks. Knowing $he can't leave yet, $he shifts into a more comfortable position for the impending birth.
 				<<ClothingBirth>>
-				She takes a break from milking to collect <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> child for removal and to catch her breath before reattaching the milkers and coaxing her milk to begin flowing anew.
+				$He takes a break from milking to collect <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> child for removal and to catch her breath before reattaching the milkers and coaxing her milk to begin flowing anew.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -1038,37 +1038,37 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She runs her hands across the still huge dome of her middle; to her, gravidity and birth is nothing out of the ordinary.
+				$He is helped back to her bed and stripped before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He runs her hands across the still huge dome of her middle; to $him, gravidity and birth is nothing out of the ordinary.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+				$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 				<<ClothingBirth>>
-				She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes resting.
+				$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes resting.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She rolls over, cradling her heavily rounded middle, and dozes off.
+				$He is helped back to her bed and stripped before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He rolls over, cradling her heavily rounded middle, and dozes off.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+				$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 				<<ClothingBirth>>
-				She struggles to collect her child and places them in the cradle readied for her. She is helped to the shower as your servants clean up and remove her child.
+				$He struggles to collect her child and places them in the cradle readied for $him. $He is helped to the shower as your servants clean up and remove her child.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She runs her hands across the still huge dome of her middle; to her, gravidity and birth is nothing out of the ordinary.
+				$He returns to her bed and strips before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He runs her hands across the still huge dome of her middle; to $him, gravidity and birth is nothing out of the ordinary.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+				$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 				<<ClothingBirth>>
-				She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes resting.
+				$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes resting.
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and she is encouraged to keep resting. She rolls over, cradling her heavily rounded middle, and dozes off.
+				$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> promptly taken and $he is encouraged to keep resting. $He rolls over, cradling her heavily rounded middle, and dozes off.
 			<<else>>
-				$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+				$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 				<<ClothingBirth>>
-				She struggles to collect her child and places them in the cradle readied for her. She hefts her still very gravid body out of bed to take a shower as your servants clean up and remove her child.
+				$He struggles to collect her child and places them in the cradle readied for $him. $He hefts her still very gravid body out of bed to take a shower as your servants clean up and remove her child.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -1079,75 +1079,75 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She runs her hands across the still huge dome of her middle; to her, gravidity and birth is nothing out of the ordinary.
+				$He is helped back to her bed and stripped before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He runs her hands across the still huge dome of her middle; to $him, gravidity and birth is nothing out of the ordinary.
 			<<else>>
 				<<if _birthScene >= 50>>
-					$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+					$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 					<<ClothingBirth>>
-					She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes resting.
+					$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes resting.
 				<<else>>
-					While stroking her pregnancy absentmindedly, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She carries on until the contractions drag her to her knees.
+					While stroking her pregnancy absentmindedly, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He carries on until the contractions drag her to her knees.
 					<<ClothingBirth>>
-					She rolls onto her side and rests with her child to her breast until a servant collects her child and helps her to her bed.
+					$He rolls onto her side and rests with her child to her breast until a servant collects her child and helps her to her bed.
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She is helped back to her bed and stripped before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She rolls over, cradling her heavily rounded middle, and dozes off.
+				$He is helped back to her bed and stripped before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He rolls over, cradling her heavily rounded middle, and dozes off.
 			<<else>>
 				<<if _birthScene >= 70>>
-					While waiting to be helped to her next assignment, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Unable to do anything, she is forced to give birth where she is.
+					While waiting to be helped to her next assignment, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. Unable to do anything, $he is forced to give birth where $he is.
 					<<ClothingBirth>>
-					She gathers her child and recovers her strength while resuming her wait a servant to help her to her assignment.
+					$He gathers her child and recovers her strength while resuming her wait a servant to help her to her assignment.
 				<<elseif _birthScene >= 30>>
-					While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Unable to walk without assistance, she finds herself stranded in the middle of all the dining slaves.
+					While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. Unable to walk without assistance, $he finds herself stranded in the middle of all the dining slaves.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					She gathers her child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter.
+					$He gathers her child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter.
 				<<else>>
-					$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+					$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 					<<ClothingBirth>>
-					She struggles to collect her child and places them in the cradle readied for her. She is helped to the shower as your servants clean up and remove her child.
+					$He struggles to collect her child and places them in the cradle readied for $him. $He is helped to the shower as your servants clean up and remove her child.
 				<</if>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. Instinctively, she begins to push out <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She runs her hands across the still huge dome of her middle; to her, gravidity and birth is nothing out of the ordinary.
+				$He returns to her bed and strips before slipping into it. Instinctively, $he begins to push out <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He runs her hands across the still huge dome of her middle; to $him, gravidity and birth is nothing out of the ordinary.
 			<<else>>
 				<<if _birthScene >= 50>>
-					While wandering the penthouse absentmindedly, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. She carries on until the contractions drag her to her knees.
+					While wandering the penthouse absentmindedly, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $He carries on until the contractions drag her to her knees.
 					<<ClothingBirth>>
-					She rolls onto her side and rests with her child to her breast until a servant collects her child and helps her to her bed.
+					$He rolls onto her side and rests with her child to her breast until a servant collects her child and helps her to her bed.
 				<<else>>
-					$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+					$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 					<<ClothingBirth>>
-					She fishes around under her still huge dome of a stomach searching for her newborn. Once she finds it, she draws it to her breast and resumes resting.
+					$He fishes around under her still huge dome of a stomach searching for her newborn. Once $he finds it, $he draws it to her breast and resumes resting.
 				<</if>>
 			<</if>>
 		<<elseif $slaves[$i].fetish == "humiliation" && _birthScene >= 50>>
-			While waddling through the penthouse between assignments, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Sensing an opportunity, she waddles to the nearest balcony overlooking the city. She calls out, making sure all eyes are on her for what happens next.
+			While waddling through the penthouse between assignments, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. Sensing an opportunity, $he waddles to the nearest balcony overlooking the city. $He calls out, making sure all eyes are on her for what happens next.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			She gathers her child and recovers her strength before finding a servant to give her child to. She resumes her previous task, eager for the next child to move into position.
+			$He gathers her child and recovers her strength before finding a servant to give her child to. $He resumes her previous task, eager for the next child to move into position.
 		<<else>>
 			<<if (random(1,20) > $suddenBirth)>>
-				She returns to her bed and strips before slipping into it. She makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Her child is promptly taken and she is encouraged to keep resting. She rolls over, cradling her heavily rounded middle, and dozes off.
+				$He returns to her bed and strips before slipping into it. $He makes herself comfortable and begins working on birthing <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. $His child is promptly taken and $he is encouraged to keep resting. $He rolls over, cradling her heavily rounded middle, and dozes off.
 			<<else>>
 				<<if _birthScene >= 70>>
-					While waddling through the penthouse on the way to her next assignment, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Unable to reach the prepared birthing room in time, she finds a secluded room to give birth in.
+					While waddling through the penthouse on the way to her next assignment, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. Unable to reach the prepared birthing room in time, $he finds a secluded room to give birth in.
 					<<ClothingBirth>>
-					She gathers her child and recovers her strength before finding a servant to give her child to before shuffling to her assignment, a hand on her still very gravid middle.
+					$He gathers her child and recovers her strength before finding a servant to give her child to before shuffling to her assignment, a hand on her still very gravid middle.
 				<<elseif _birthScene >= 30>>
-					While waddling through the penthouse on her way to the cafeteria, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby. Unable to reach the prepared birthing room in time, she finds herself stranded in the middle of all the dining slaves.
+					While waddling through the penthouse on her way to the cafeteria, $slaves[$i].slaveName's body begins to birth <<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby. Unable to reach the prepared birthing room in time, $he finds herself stranded in the middle of all the dining slaves.
 					<<set $humiliation = 1>>
 					<<ClothingBirth>>
-					She gathers her child and recovers her strength before trying to escape out of sight of the jeering crowd. Finding a servant to give her child to, she hastily heads back to her bed to hide herself from the mockery. She runs a hand across her still very gravid middle; she'll have to be more careful in the future as there are plenty more children growing within her.
+					$He gathers her child and recovers her strength before trying to escape out of sight of the jeering crowd. Finding a servant to give her child to, $he hastily heads back to her bed to hide herself from the mockery. $He runs a hand across her still very gravid middle; $he'll have to be more careful in the future as there are plenty more children growing within $him.
 				<<else>>
-					$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body.
+					$slaves[$i].slaveName is awoken from her rest by a moist sensation followed by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body.
 					<<ClothingBirth>>
-					She struggles to collect her child and places them in the cradle readied for her. She hefts her still very gravid body out of bed to take a shower as your servants clean up and remove her child.
+					$He struggles to collect her child and places them in the cradle readied for $him. $He hefts her still very gravid body out of bed to take a shower as your servants clean up and remove her child.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -1168,23 +1168,23 @@
 <<case "rest">>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			$slaves[$i].slaveName is awoken from her rest by a strong contraction. She attempts to roll over, and failing that, begins to fall back to sleep as another contraction wracks her body.
+			$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He attempts to roll over, and failing that, begins to fall back to sleep as another contraction wracks her body.
 			<<ClothingBirth>>
-			She struggles to draw her child to her breast and resumes resting.
+			$He struggles to draw her child to her breast and resumes resting.
 		<<else>>
-			$slaves[$i].slaveName is awoken from her rest by a contraction. She struggles to roll over, and failing that, clutches her gravid belly as another contraction wracks her body. Since this has already happened several times this week, she knows what to expect.
+			$slaves[$i].slaveName is awoken from her rest by a contraction. $He struggles to roll over, and failing that, clutches her gravid belly as another contraction wracks her body. Since this has already happened several times this week, $he knows what to expect.
 			<<ClothingBirth>>
-			Her child is collected and her body cleaned before she is allowed to resume her rest.
+			$His child is collected and her body cleaned before $he is allowed to resume her rest.
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body.
+			$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body.
 			<<ClothingBirth>>
-			She struggles to draw her child to her breast and resumes resting.
+			$He struggles to draw her child to her breast and resumes resting.
 		<<else>>
-			$slaves[$i].slaveName is awoken from her rest by a contraction. She rolls over and clutches her gravid belly as another contraction wracks her body. Since this has already happened several times this week, she knows what to expect.
+			$slaves[$i].slaveName is awoken from her rest by a contraction. $He rolls over and clutches her gravid belly as another contraction wracks her body. Since this has already happened several times this week, $he knows what to expect.
 			<<ClothingBirth>>
-			Her child is collected and her body cleaned before she is allowed to resume her rest.
+			$His child is collected and her body cleaned before $he is allowed to resume her rest.
 		<</if>>
 	<</if>>
 
@@ -1194,20 +1194,20 @@
 		<<if $slaves[$i].subTarget == 0>>
 			While servicing your other slaves, $slaves[$i].slaveName's body begins to birth another of her brood, though it does nothing to deter her from her task.
 			<<ClothingBirth>>
-			No sooner than her baby is born, a cock is shoved into her gaping pussy as she draws her child to her breast.
+			No sooner than her baby is born, a cock is shoved into her gaping pussy as $he draws her child to her breast.
 		<<else>>
 			While servicing _tempSub.slaveName, $slaves[$i].slaveName's body begins to birth another of her brood, though it does nothing to deter her from her task.
 			<<ClothingBirth>>
-			No sooner than her baby is born does she go back to pleasuring her dom.
+			No sooner than her baby is born does $he go back to pleasuring her dom.
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].subTarget == 0>>
-			While servicing your other slaves, $slaves[$i].slaveName's body begins to birth another of her brood, causing her to immediately try to break off. However, several hands quickly hook her enormous bulk and she is pulled back into another slave's crotch.
+			While servicing your other slaves, $slaves[$i].slaveName's body begins to birth another of her brood, causing her to immediately try to break off. However, several hands quickly hook her enormous bulk and $he is pulled back into another slave's crotch.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			Since she is too pregnant to collect her child, it is done for her. Her exhausted form is slumped onto her huge belly as another slave helps themselves to her vulnerable body.
+			Since $he is too pregnant to collect her child, it is done for $him. $His exhausted form is slumped onto her huge belly as another slave helps themselves to her vulnerable body.
 		<<else>>
-			While servicing _tempSub.slaveName, $slaves[$i].slaveName's body begins to birth another of her brood, causing her to immediately try to break off. Her dom eagerly watches her pregnant sub's ordeal.
+			While servicing _tempSub.slaveName, $slaves[$i].slaveName's body begins to birth another of her brood, causing her to immediately try to break off. $His dom eagerly watches her pregnant sub's ordeal.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
 			_tempSub.slaveName collects the newborn child to be sent off before returning and planting her crotch directly over her exhausted sub's face.
@@ -1219,23 +1219,23 @@
 		<<if $slaves[$i].fetish == "mindbroken">>
 			While attempting to attract customers to fuck her grotesquely distended body, $slaves[$i].slaveName's body begins to birth another of her brood.
 			<<ClothingBirth>>
-			She struggles to bring her child to her breast as she resumes whoring, oblivious to the free show she just gave her customers.
+			$He struggles to bring her child to her breast as $he resumes whoring, oblivious to the free show $he just gave her customers.
 		<<else>>
-			While attempting to attract customers to fuck her grotesquely distended body, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to move and rapidly crowning, she manages to get several men to help her out.
+			While attempting to attract customers to fuck her grotesquely distended body, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to move and rapidly crowning, $he manages to get several men to help her out.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			She lies stranded on the ground, exhausted and covered in sperm from the circle of men watching her, until she is helped into a sitting position and handed her child.
+			$He lies stranded on the ground, exhausted and covered in sperm from the circle of men watching $him, until $he is helped into a sitting position and handed her child.
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			While attempting to attract customers with her grotesquely distended body, $slaves[$i].slaveName's body begins to birth another of her brood.
 			<<ClothingBirth>>
-			She draws her child to her breast as she resumes whoring, oblivious to the free show she just gave her customers.
+			$He draws her child to her breast as $he resumes whoring, oblivious to the free show $he just gave her customers.
 		<<else>>
-			While attempting to attract customers with her grotesquely distended body, $slaves[$i].slaveName's body begins to birth another of her brood. She knows it is pointless to try to waddle away, as large as she is, so she convinces several men to help her out.
+			While attempting to attract customers with her grotesquely distended body, $slaves[$i].slaveName's body begins to birth another of her brood. $He knows it is pointless to try to waddle away, as large as $he is, so $he convinces several men to help her out.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			She lies on the ground, exhausted and covered in sperm from the circle of men watching her, until she is helped to her feet and handed her child.
+			$He lies on the ground, exhausted and covered in sperm from the circle of men watching $him, until $he is helped to her feet and handed her child.
 		<</if>>
 	<</if>>
 
@@ -1243,68 +1243,68 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if ($seed > 80)>>
-				While taking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood out on him. Showing no signs of stopping, he struggles to shoves her bulk off of him. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. She is handed her child, which she clutches to her breast before beckoning for the next citizen's cock.
+				While taking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood out on him. Showing no signs of stopping, he struggles to shoves her bulk off of him. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. $He is handed her child, which $he clutches to her breast before beckoning for the next citizen's cock.
 			<<elseif ($seed > 60)>>
-				While sucking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so he allows her to continue.
+				While sucking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. $He shows no signs of slowing down, so he allows her to continue.
 				<<ClothingBirth>>
-				He cums down her throat before placing her child on her breast, as she beckoning for the next citizen's cock.
+				He cums down her throat before placing her child on her breast, as $he beckoning for the next citizen's cock.
 			<<elseif ($seed > 40)>>
-				While licking a citizen's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so she allows her to continue.
+				While licking a citizen's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. $He shows no signs of slowing down, so $he allows her to continue.
 				<<ClothingBirth>>
-				The citizen splashes across her face before placing her child on her breast, as she begins beckoning for the next citizen's cunt.
+				The citizen splashes across her face before placing her child on her breast, as $he begins beckoning for the next citizen's cunt.
 			<<else>>
-				While taking a citizen's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so he allows her to continue. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass before handing her her child. She brings it to her breast before beckoning for the next citizen's cock.
+				While taking a citizen's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. $He shows no signs of slowing down, so he allows her to continue. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass before handing her her child. $He brings it to her breast before beckoning for the next citizen's cock.
 			<</if>>
 		<<else>>
 			<<if ($seed > 80)>>
-				While riding a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately struggles to disengage encouraging him to shove her onto her bloated womb and mount her. He thoroughly enjoys her contracting cunt before pulling out and standing over her, jacking off. Quickly she spreads her legs apart and begins pushing out her baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He comes over her exhausted body and moves on leaving her to recover and await her child to be sent off.
+				While riding a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately struggles to disengage encouraging him to shove her onto her bloated womb and mount $him. He thoroughly enjoys her contracting cunt before pulling out and standing over $him, jacking off. Quickly $he spreads her legs apart and begins pushing out her baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He comes over her exhausted body and moves on leaving her to recover and await her child to be sent off.
 				<<set $humiliation = 1>>
 			<<elseif ($seed > 60)>>
-				While sucking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. Since she is incapable of moving herself, she carries on sucking.
+				While sucking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. Since $he is incapable of moving herself, $he carries on sucking.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				He cums down her throat before letting her collapse onto her bloated form. When she recovers, she gathers her child to be sent off.
+				He cums down her throat before letting her collapse onto her bloated form. When $he recovers, $he gathers her child to be sent off.
 			<<elseif ($seed > 40)>>
-				While licking a citizen's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. Since she is incapable of moving herself, she carries on licking.
+				While licking a citizen's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. Since $he is incapable of moving herself, $he carries on licking.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She cums across her face before helping her to her rear and handing her the newborn child.
+				$He cums across her face before helping her to her rear and handing her the newborn child.
 			<<else>>
-				While taking a citizen's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately struggles to disengage but he shoves her onto her bloated womb and mounts her. Quickly she spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as she collapses onto her bloated womb. Once she recovers enough to collect her child, she awaits for it to be sent off.
+				While taking a citizen's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately struggles to disengage but he shoves her onto her bloated womb and mounts $him. Quickly $he spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as $he collapses onto her bloated womb. Once $he recovers enough to collect her child, $he awaits for it to be sent off.
 				<<set $humiliation = 1>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if ($seed > 80)>>
-				While taking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood out on him. Showing no signs of stopping, he struggles to shoves her bulk off of him. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. She is handed her child, which she clutches to her breast before seeking out the next citizen's cock.
+				While taking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood out on him. Showing no signs of stopping, he struggles to shoves her bulk off of him. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. $He is handed her child, which $he clutches to her breast before seeking out the next citizen's cock.
 			<<elseif ($seed > 60)>>
-				While sucking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so he allows her to reposition and continue.
+				While sucking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. $He shows no signs of slowing down, so he allows her to reposition and continue.
 				<<ClothingBirth>>
-				He cums down her throat before placing her child on her breast, as she begins seeking out the next citizen's cock.
+				He cums down her throat before placing her child on her breast, as $he begins seeking out the next citizen's cock.
 			<<elseif ($seed > 40)>>
-				While licking a citizen's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so she allows her to reposition and continue.
+				While licking a citizen's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. $He shows no signs of slowing down, so $he allows her to reposition and continue.
 				<<ClothingBirth>>
-				The citizen splashes across her face before placing her child on her breast, as she begins seeking out the next citizen's cunt.
+				The citizen splashes across her face before placing her child on her breast, as $he begins seeking out the next citizen's cunt.
 			<<else>>
-				While taking a citizen's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so he allows her to reposition and continue. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass before handing her her child. She brings it to her breast before seeking out the next citizen's cock.
+				While taking a citizen's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. $He shows no signs of slowing down, so he allows her to reposition and continue. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass before handing her her child. $He brings it to her breast before seeking out the next citizen's cock.
 			<</if>>
 		<<else>>
 			<<if ($seed > 80)>>
-				While riding a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to disengage but he shoves her onto her bloated womb and mounts her. He thoroughly enjoys her contracting cunt before pulling out and standing over her, jacking off. Quickly she spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He comes over her exhausted body and moves on leaving her to recover and collect her child to be sent off.
+				While riding a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately tries to disengage but he shoves her onto her bloated womb and mounts $him. He thoroughly enjoys her contracting cunt before pulling out and standing over $him, jacking off. Quickly $he spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He comes over her exhausted body and moves on leaving her to recover and collect her child to be sent off.
 				<<set $humiliation = 1>>
 			<<elseif ($seed > 60)>>
-				While sucking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to disengage but he grabs her head and slams her back into his crotch.
+				While sucking a citizen's dick, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately tries to disengage but he grabs her head and slams her back into his crotch.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				He cums down her throat before letting her collapse onto her bloated form. When she recovers, she gathers her child to be sent off.
+				He cums down her throat before letting her collapse onto her bloated form. When $he recovers, $he gathers her child to be sent off.
 			<<elseif ($seed > 40)>>
-				While licking a citizen's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to disengage but she grabs her head and slams her back into her crotch.
+				While licking a citizen's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately tries to disengage but $he grabs her head and slams her back into her crotch.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She cums across her face before helping her to her feet and handing her the newborn child.
+				$He cums across her face before helping her to her feet and handing her the newborn child.
 			<<else>>
-				While taking a citizen's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to disengage but he shoves her onto her bloated womb and mounts her. Quickly she spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as she collapses onto her bloated womb. Once she recovers enough to get to her feet, she gathers her child to be sent off.
+				While taking a citizen's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately tries to disengage but he shoves her onto her bloated womb and mounts $him. Quickly $he spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as $he collapses onto her bloated womb. Once $he recovers enough to get to her feet, $he gathers her child to be sent off.
 				<<set $humiliation = 1>>
 			<</if>>
 		<</if>>
@@ -1313,118 +1313,118 @@
 <<case "work a glory hole">>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's body begins to birth another of her brood. She makes no effort to stop sucking the dicks presented to her.
+			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's body begins to birth another of her brood. $He makes no effort to stop sucking the dicks presented to $him.
 			<<ClothingBirth>>
-			Her child is taken as it is born from her rear hanging out of the box. She never notices, focused entirely on the fresh cock poking through the glory hole.
+			$His child is taken as it is born from her rear hanging out of the box. $He never notices, focused entirely on the fresh cock poking through the glory hole.
 		<<else>>
-			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's body begins to birth another of her brood. She quickly finishes the dick off and sighs, knowing full well she couldn't move even if she weren't confined. Another dick is shoved into her trapped face and she is forced to keep sucking.
+			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's body begins to birth another of her brood. $He quickly finishes the dick off and sighs, knowing full well $he couldn't move even if $he weren't confined. Another dick is shoved into her trapped face and $he is forced to keep sucking.
 			<<ClothingBirth>>
-			Her child is taken as it is born from her rear hanging out of the box. She never got a look at it, being unable to turn even slightly.
+			$His child is taken as it is born from her rear hanging out of the box. $He never got a look at it, being unable to turn even slightly.
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's body begins to birth another of her brood. She makes no effort to stop sucking the dicks presented to her.
+			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's body begins to birth another of her brood. $He makes no effort to stop sucking the dicks presented to $him.
 			<<ClothingBirth>>
-			Her child is taken as it is born from her rear hanging out of the box. She never notices, focused entirely on the fresh cock poking through the glory hole.
+			$His child is taken as it is born from her rear hanging out of the box. $He never notices, focused entirely on the fresh cock poking through the glory hole.
 		<<else>>
-			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's body begins to birth another of her brood. She quickly finishes the dick off before realizing there is no way she can move her bloated form in the box. Another dick is shoved into her trapped face and she is forced to keep sucking.
+			While sucking a dick through the hole of her confining box, $slaves[$i].slaveName's body begins to birth another of her brood. $He quickly finishes the dick off before realizing there is no way $he can move her bloated form in the box. Another dick is shoved into her trapped face and $he is forced to keep sucking.
 			<<ClothingBirth>>
-			Her child is taken as it is born from her rear hanging out of the box. She never got a look at it, being unable to turn even slightly.
+			$His child is taken as it is born from her rear hanging out of the box. $He never got a look at it, being unable to turn even slightly.
 		<</if>>
 	<</if>>
 
 <<case "get milked">>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While getting milked, $slaves[$i].slaveName's body begins to birth another of her brood. She show little interest and continues kneading her breasts.
+			While getting milked, $slaves[$i].slaveName's body begins to birth another of her brood. $He show little interest and continues kneading her breasts.
 			<<ClothingBirth>>
-			She shows no interest in her child<<if $slaves[$i].pregType > 1>>ren<</if>> being removed from the milking stall, instead focusing entirely on draining breasts.
+			$He shows no interest in her child<<if $slaves[$i].pregType > 1>>ren<</if>> being removed from the milking stall, instead focusing entirely on draining breasts.
 		<<else>>
-			While getting milked, $slaves[$i].slaveName's body begins to birth another of her brood. Between the milkers and her immobilizing belly, she ends up stranded atop her immense pregnancy.
+			While getting milked, $slaves[$i].slaveName's body begins to birth another of her brood. Between the milkers and her immobilizing belly, $he ends up stranded atop her immense pregnancy.
 			<<ClothingBirth>>
-			Her child is carried away and she struggles to get off of herself. She groans as she realizes the milk tank is nearly full, having been filled with the copious amounts of milk her body is producing for her brood.
+			$His child is carried away and $he struggles to get off of herself. $He groans as $he realizes the milk tank is nearly full, having been filled with the copious amounts of milk her body is producing for her brood.
 			<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While getting milked, $slaves[$i].slaveName's body begins to birth another of her brood. She show little interest and continues kneading her breasts.
+			While getting milked, $slaves[$i].slaveName's body begins to birth another of her brood. $He show little interest and continues kneading her breasts.
 			<<ClothingBirth>>
-			She shows no interest in her child<<if $slaves[$i].pregType > 1>>ren<</if>> being removed from the milking stall, instead focusing entirely on draining breasts.
+			$He shows no interest in her child<<if $slaves[$i].pregType > 1>>ren<</if>> being removed from the milking stall, instead focusing entirely on draining breasts.
 		<<else>>
-			While getting milked, $slaves[$i].slaveName's body begins to birth another of her brood. She shifts into a comfortable position to give birth while the milker works her breasts.
+			While getting milked, $slaves[$i].slaveName's body begins to birth another of her brood. $He shifts into a comfortable position to give birth while the milker works her breasts.
 			<<ClothingBirth>>
-			Her child is carried away and she rests with her back against the wall. She groans as she realizes the milk tank is nearly full, having been filled with the copious amounts of milk her body is producing for her brood.
+			$His child is carried away and $he rests with her back against the wall. $He groans as $he realizes the milk tank is nearly full, having been filled with the copious amounts of milk her body is producing for her brood.
 		<</if>>
 	<</if>>
 
 <<case "please you">>
 	<<if !canWalk($slaves[$i])>>
 	<<if $slaves[$i].fetish == "mindbroken">>
-		While sitting absentmindedly nearby, $slaves[$i].slaveName's body begins to birth another of her brood. She pays no heed to it and continues waiting for you to use her.
+		While sitting absentmindedly nearby, $slaves[$i].slaveName's body begins to birth another of her brood. $He pays no heed to it and continues waiting for you to use $him.
 		<<ClothingBirth>>
 		You certainly enjoyed the show as you call for a servant to take away her child and to clean up the still oblivious broodmother.
 	<<else>>
-		While resting against her belly nearby, $slaves[$i].slaveName's body begins to birth another of her brood, startling her. She looks to you for guidance and you shake your head "no". Without permission to move she <<if $slaves[$i].devotion > 50>>decides to give you a show<<elseif $slaves[$i].devotion > 20>>reluctantly decides giving birth in front of you isn't so bad.<<else>>begins to panic as her contractions come sooner and sooner<<set $humiliation = 1>><</if>>.
+		While resting against her belly nearby, $slaves[$i].slaveName's body begins to birth another of her brood, startling $him. $He looks to you for guidance and you shake your head "no". Without permission to move $he <<if $slaves[$i].devotion > 50>>decides to give you a show<<elseif $slaves[$i].devotion > 20>>reluctantly decides giving birth in front of you isn't so bad.<<else>>begins to panic as her contractions come sooner and sooner<<set $humiliation = 1>><</if>>.
 		<<ClothingBirth>>
-		As thanks for the show, you help her exhausted body onto the couch so she can recover before returning to her duties. You call for a servant to take away her child and clean up your toy.
+		As thanks for the show, you help her exhausted body onto the couch so $he can recover before returning to her duties. You call for a servant to take away her child and clean up your toy.
 	<</if>>
 	<<else>>
 	<<if $slaves[$i].fetish == "mindbroken">>
-		While sitting absentmindedly nearby, $slaves[$i].slaveName's body begins to birth another of her brood. She pays no heed to it and continues waiting for you to use her.
+		While sitting absentmindedly nearby, $slaves[$i].slaveName's body begins to birth another of her brood. $He pays no heed to it and continues waiting for you to use $him.
 		<<ClothingBirth>>
 		You certainly enjoyed the show as you call for a servant to take away her child and to clean up the still oblivious broodmother.
 	<<else>>
-		While standing nearby, $slaves[$i].slaveName's body begins to birth another of her brood, startling her. She looks to you for guidance and you shake your head "no". Without permission to leave she <<if $slaves[$i].devotion > 50>>decides to give you a show<<elseif $slaves[$i].devotion > 20>>reluctantly decides giving birth in front of you isn't so bad.<<else>>begins to panic as her contractions come sooner and sooner<<set $humiliation = 1>><</if>>.
+		While standing nearby, $slaves[$i].slaveName's body begins to birth another of her brood, startling $him. $He looks to you for guidance and you shake your head "no". Without permission to leave $he <<if $slaves[$i].devotion > 50>>decides to give you a show<<elseif $slaves[$i].devotion > 20>>reluctantly decides giving birth in front of you isn't so bad.<<else>>begins to panic as her contractions come sooner and sooner<<set $humiliation = 1>><</if>>.
 		<<ClothingBirth>>
-		As thanks for the show, you help her exhausted body onto the couch so she can recover before returning to her duties. You call for a servant to take away her child and clean up your toy.
+		As thanks for the show, you help her exhausted body onto the couch so $he can recover before returning to her duties. You call for a servant to take away her child and clean up your toy.
 	<</if>>
 	<</if>>
 
 <<case "stay confined">>
 	<<if !canWalk($slaves[$i])>>
 	<<if $slaves[$i].fetish == "mindbroken">>
-		While waiting in confinement, $slaves[$i].slaveName's body begins to birth another of her brood. Since she can't move, she just lets things happen.
+		While waiting in confinement, $slaves[$i].slaveName's body begins to birth another of her brood. Since $he can't move, $he just lets things happen.
 		<<ClothingBirth>>
-		She struggles for a minute before realizing she is incapable of reaching her child. The servant that has to crawl under her bloated body to get her child is less than pleased, especially since this is the third time this week she has had to do it.
+		$He struggles for a minute before realizing $he is incapable of reaching her child. The servant that has to crawl under her bloated body to get her child is less than pleased, especially since this is the third time this week $he has had to do it.
 	<<else>>
-		$slaves[$i].slaveName is awoken from her stupor by her body beginning to birth another of her brood. She struggles to get into position but ends up getting stuck atop her massive belly.
+		$slaves[$i].slaveName is awoken from her stupor by her body beginning to birth another of her brood. $He struggles to get into position but ends up getting stuck atop her massive belly.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		She spills out of the cell when the servant comes once more to collect her child. She hastily tries to cram her bulk back into her cell before she gets chastised.
+		$He spills out of the cell when the servant comes once more to collect her child. $He hastily tries to cram her bulk back into her cell before $he gets chastised.
 	<</if>>
 	<<else>>
 	<<if $slaves[$i].fetish == "mindbroken">>
-		While waiting in confinement, $slaves[$i].slaveName's body begins to birth another of her brood. She assumes a birthing position.
+		While waiting in confinement, $slaves[$i].slaveName's body begins to birth another of her brood. $He assumes a birthing position.
 		<<ClothingBirth>>
-		She struggles for a minute before realizing her pregnancy takes up most of the cell and that she can't reach her child. The servant that has to crawl under her bloated body to get her child is less than pleased, especially since this is the third time this week she has had to do it.
+		$He struggles for a minute before realizing her pregnancy takes up most of the cell and that $he can't reach her child. The servant that has to crawl under her bloated body to get her child is less than pleased, especially since this is the third time this week $he has had to do it.
 	<<else>>
-		$slaves[$i].slaveName is awoken from her stupor by her body beginning to birth another of her brood. She struggles to get into position but ends up getting stuck standing thanks to her massive belly.
+		$slaves[$i].slaveName is awoken from her stupor by her body beginning to birth another of her brood. $He struggles to get into position but ends up getting stuck standing thanks to her massive belly.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		She spills out of the cell when the servant comes once more to collect her child. She hastily tries to cram her bulk back into her cell before she gets chastised.
+		$He spills out of the cell when the servant comes once more to collect her child. $He hastily tries to cram her bulk back into her cell before $he gets chastised.
 	<</if>>
 	<</if>>
 
 <<case "work as a servant" "be a servant">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		<<if $seed > 50>>
-			While giving a slave oral service, $slaves[$i].slaveName's body begins to birth another of her brood. She disregards this development and continues working.
+			While giving a slave oral service, $slaves[$i].slaveName's body begins to birth another of her brood. $He disregards this development and continues working.
 			<<ClothingBirth>>
-			The slave gets off quite strongly to the show and shoves her out of the way, leaving her to clean up her mess. Instead, she struggles to bring her child to her breast until <<if $Stewardess != 0>>$Stewardess.slaveName shouts at her to move her useless ass<<elseif $HeadGirl != 0>>$HeadGirl.slaveName shouts at her to move her useless ass<<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>shouts at her to move her useless ass<</if>>.
+			The slave gets off quite strongly to the show and shoves her out of the way, leaving her to clean up her mess. Instead, $he struggles to bring her child to her breast until <<if $Stewardess != 0>>$Stewardess.slaveName shouts at her to move her useless ass<<elseif $HeadGirl != 0>>$HeadGirl.slaveName shouts at her to move her useless ass<<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>shouts at her to move her useless ass<</if>>.
 		<<else>>
-			While struggling to scrub the penthouse floor, $slaves[$i].slaveName's body begins to birth another of her brood. She carries on trying to clean as she drags her belly along the floor.
+			While struggling to scrub the penthouse floor, $slaves[$i].slaveName's body begins to birth another of her brood. $He carries on trying to clean as $he drags her belly along the floor.
 			<<ClothingBirth>>
-			Instead of carrying on her task, she draws her child to her breast until <<if $Stewardess != 0>>$Stewardess.slaveName shouts at her to move her useless ass<<elseif $HeadGirl != 0>>$HeadGirl.slaveName shouts at her to move her useless ass<<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>shouts at her to move her useless ass<</if>>.
+			Instead of carrying on her task, $he draws her child to her breast until <<if $Stewardess != 0>>$Stewardess.slaveName shouts at her to move her useless ass<<elseif $HeadGirl != 0>>$HeadGirl.slaveName shouts at her to move her useless ass<<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>shouts at her to move her useless ass<</if>>.
 		<</if>>
 	<<else>>
 		<<if $seed > 50>>
-			While giving a slave oral service, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to pull away but they grab her head and force her back to their crotch.
+			While giving a slave oral service, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately tries to pull away but they grab her head and force her back to their crotch.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
 			The slave gets off quite strongly to the show and shoves her to the ground, leaving her struggling to get up before <<if $Stewardess != 0>>$Stewardess.slaveName shouts at her<<elseif $HeadGirl != 0>>$HeadGirl.slaveName shouts at her <<else>><<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>shouts at her<</if>>.
 		<<else>>
-			While using her bloated belly to scrub the penthouse floor, $slaves[$i].slaveName's body begins to birth another of her brood. Since this isn't the first time this week this happened, she readies herself for the coming birth.
+			While using her bloated belly to scrub the penthouse floor, $slaves[$i].slaveName's body begins to birth another of her brood. Since this isn't the first time this week this happened, $he readies herself for the coming birth.
 			<<ClothingBirth>>
-			She makes a pass around the room before scooping up her child and struggling to her feet. She slowly waddles to drop off her child.
+			$He makes a pass around the room before scooping up her child and struggling to her feet. $He slowly waddles to drop off her child.
 		<</if>>
 	<</if>>
 
@@ -1432,59 +1432,59 @@
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if $masterSuiteUpgradeLuxury == 1>>
-				While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. She struggles to shift into a more comfortable position before giving up.
+				While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. $He struggles to shift into a more comfortable position before giving up.
 				<<ClothingBirth>>
-				Resting in your bed, she draws her child to her breast and resumes waiting for you. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child<<if $slaves[$i].pregType > 1>>ren<</if>> removed, and her forcefully ejected from the bed so it can be cleaned before your return.<</if>>
+				Resting in your bed, $he draws her child to her breast and resumes waiting for you. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child<<if $slaves[$i].pregType > 1>>ren<</if>> removed, and her forcefully ejected from the bed so it can be cleaned before your return.<</if>>
 			<<elseif $masterSuiteUpgradeLuxury == 2>>
-				While being the bottom of the master suite's fuckpit, $slaves[$i].slaveName's body begins to birth another of her brood. While she doesn't stop having sex, the fucktoys using her do and attempt to drag her from the pit to give birth. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. The fucktoys give up their efforts to haul her bloated form out of the pit and allow her to settle at the bottom. Without a second thought about her child, she attempts to coax the other slaves back into an orgy.
+				While being the bottom of the master suite's fuckpit, $slaves[$i].slaveName's body begins to birth another of her brood. While $he doesn't stop having sex, the fucktoys using her do and attempt to drag her from the pit to give birth. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. The fucktoys give up their efforts to haul her bloated form out of the pit and allow her to settle at the bottom. Without a second thought about her child, $he attempts to coax the other slaves back into an orgy.
 			<<else>>
-				While awaiting your return in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. She pays it no heed and continues blankly waiting.
+				While awaiting your return in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. $He pays it no heed and continues blankly waiting.
 				<<ClothingBirth>>
-				Resting on her belly, she draws her child to her breast and resumes waiting for you. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child<<if $slaves[$i].pregType > 1>>ren<</if>> removed, and her thoroughly cleaned before your return.<</if>>
+				Resting on her belly, $he draws her child to her breast and resumes waiting for you. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child<<if $slaves[$i].pregType > 1>>ren<</if>> removed, and her thoroughly cleaned before your return.<</if>>
 			<</if>>
 		<<else>>
 			<<if $masterSuiteUpgradeLuxury == 1>>
-				While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. Knowing there is nothing she can do, she accpets that she is going to give birth in your bed.
+				While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. Knowing there is nothing $he can do, $he accpets that $he is going to give birth in your bed.
 				<<ClothingBirth>>
-				Once her child is removed, she's cleaned up, and the sheets changed, she struggles back into bed to recover for your return.
+				Once her child is removed, $he's cleaned up, and the sheets changed, $he struggles back into bed to recover for your return.
 			<<elseif $masterSuiteUpgradeLuxury == 2>>
-				While participating in the fuckpit orgy, $slaves[$i].slaveName's body begins to birth another of her brood. She knows she stands no chance of escaping the fuckpit, so she leaves herself at the mercy of the other fucktoys. They happily position themselves for her to pleasure them while giving birth.
+				While participating in the fuckpit orgy, $slaves[$i].slaveName's body begins to birth another of her brood. $He knows $he stands no chance of escaping the fuckpit, so $he leaves herself at the mercy of the other fucktoys. They happily position themselves for her to pleasure them while giving birth.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				Once the fucktoys are done tormenting the exhausted broodmother, they hand her child off to the help and snuggle up to her enormous pregnancy as she recovers her strength.
+				Once the fucktoys are done tormenting the exhausted broodmother, they hand her child off to the help and snuggle up to her enormous pregnancy as $he recovers her strength.
 			<<else>>
-				While awaiting your return in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. She knows she stands no chance of reaching her sex toys, so she does her best to conceal them. She calls for a servant to hurry as she begins laboring.
+				While awaiting your return in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. $He knows $he stands no chance of reaching her sex toys, so $he does her best to conceal them. $He calls for a servant to hurry as $he begins laboring.
 				<<ClothingBirth>>
-				The servant collects her child and helps her onto the largest cushion in the room to recover for your return. With a little effort she pushes the vibrating dildo out of her ass before settling down for a nap.
+				The servant collects her child and helps her onto the largest cushion in the room to recover for your return. With a little effort $he pushes the vibrating dildo out of her ass before settling down for a nap.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if $masterSuiteUpgradeLuxury == 1>>
-				While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. She shifts into a more comfortable position.
+				While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. $He shifts into a more comfortable position.
 				<<ClothingBirth>>
-				Resting in your bed, she draws her child to her breast and resumes waiting for you. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child<<if $slaves[$i].pregType > 1>>ren<</if>> removed, and her forcefully ejected from the bed so it can be cleaned before your return.<</if>>
+				Resting in your bed, $he draws her child to her breast and resumes waiting for you. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child<<if $slaves[$i].pregType > 1>>ren<</if>> removed, and her forcefully ejected from the bed so it can be cleaned before your return.<</if>>
 			<<elseif $masterSuiteUpgradeLuxury == 2>>
-				While being the bottom of the master suite's fuckpit, $slaves[$i].slaveName's body begins to birth another of her brood. While she doesn't stop having sex, the fucktoys using her do and attempt to drag her from the pit to give birth. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. The fucktoys give up their efforts to haul her bloated form out of the pit and allow her to settle a the bottom. Without a second thought about her child, she attempts to coax the other slaves back into an orgy.
+				While being the bottom of the master suite's fuckpit, $slaves[$i].slaveName's body begins to birth another of her brood. While $he doesn't stop having sex, the fucktoys using her do and attempt to drag her from the pit to give birth. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. The fucktoys give up their efforts to haul her bloated form out of the pit and allow her to settle a the bottom. Without a second thought about her child, $he attempts to coax the other slaves back into an orgy.
 			<<else>>
-				While awaiting your return in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. She pays it no heed and continues blankly waiting.
+				While awaiting your return in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. $He pays it no heed and continues blankly waiting.
 				<<ClothingBirth>>
-				Resting on her belly, she draws her child to her breast and resumes waiting for you. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child<<if $slaves[$i].pregType > 1>>ren<</if>> removed, and her thoroughly cleaned before your return.<</if>>
+				Resting on her belly, $he draws her child to her breast and resumes waiting for you. <<if $Concubine != 0>>Concubine.slaveName furiously orders her child<<if $slaves[$i].pregType > 1>>ren<</if>> removed, and her thoroughly cleaned before your return.<</if>>
 			<</if>>
 		<<else>>
 			<<if $masterSuiteUpgradeLuxury == 1>>
-				While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. She quickly moves herself off the bed and calls for a servant before dropping onto her bloated stomach.
+				While awaiting your return on the big bed in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. $He quickly moves herself off the bed and calls for a servant before dropping onto her bloated stomach.
 				<<ClothingBirth>>
-				Once her child is removed, she's cleaned up, and the sheets changed, she struggles back into bed to recover for your return.
+				Once her child is removed, $he's cleaned up, and the sheets changed, $he struggles back into bed to recover for your return.
 			<<elseif $masterSuiteUpgradeLuxury == 2>>
-				While participating in the fuckpit orgy, $slaves[$i].slaveName's body begins to birth another of her brood. She tries to crawl out of the pit but the other fucktoys easily pull her back in and position themselves for her to pleasure them while giving birth.
+				While participating in the fuckpit orgy, $slaves[$i].slaveName's body begins to birth another of her brood. $He tries to crawl out of the pit but the other fucktoys easily pull her back in and position themselves for her to pleasure them while giving birth.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				Once the fucktoys are done tormenting the exhausted broodmother, they hand her child off to the help and snuggle up to her enormous pregnancy as she recovers her strength.
+				Once the fucktoys are done tormenting the exhausted broodmother, they hand her child off to the help and snuggle up to her enormous pregnancy as $he recovers her strength.
 			<<else>>
-				While awaiting your return in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. She tries to get to the prepared area but fails to untangle herself from the toys she was playing with. She calls for a servant to hurry as she begins laboring.
+				While awaiting your return in the master suite, $slaves[$i].slaveName's body begins to birth another of her brood. $He tries to get to the prepared area but fails to untangle herself from the toys $he was playing with. $He calls for a servant to hurry as $he begins laboring.
 				<<ClothingBirth>>
-				The servant collects her child and helps her onto the largest cushion in the room to recover for your return. With a little effort she pushes the vibrating dildo out of her ass before settling down for a nap.
+				The servant collects $his child and helps her onto the largest cushion in the room to recover for your return. With a little effort $he pushes the vibrating dildo out of $his ass before settling down for a nap.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -1492,170 +1492,170 @@
 <<case "serve in the club">>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as she can. During one of her dances, her body begins to birth another of her brood. She keeps on dancing, despite her condition, until her contractions drag her onto her bloated stomach.
+			$slaves[$i].slaveName is showing off $his grotesque body and trying to attract citizens by dancing as well as $he can. During one of $his dances, $his body begins to birth another of $his brood. $He keeps on dancing, despite $his condition, until her contractions drag her onto $his bloated stomach.
 			<<ClothingBirth>>
-			Multiple citizens drag her into a booth so that they may tease her enormous exhausted body while the dance floor is dried and her child is carried off.
+			Multiple citizens drag her into a booth so that they may tease her enormous exhausted body while the dance floor is dried and $his child is carried off.
 		<<elseif $slaves[$i].fetish == "humiliation">>
-			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as she can, all the while flashing glimpses of her crotch and nipples. During one of her dances, her body begins to birth another of her brood. She calls out to the crowd, hyping them up for her new show.
+			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as $he can, all the while flashing glimpses of $his crotch and nipples. During one of $his dances, $his body begins to birth another of $his brood. $He calls out to the crowd, hyping them up for $his new show.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			As her child is removed from the dance floor, she is helped into one of the back rooms by several of her aroused onlookers.
+			As $his child is removed from the dance floor, $he is helped into one of the back rooms by several of $his aroused onlookers.
 		<<else>>
-			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as she can. During one of her dances, $slaves[$i].slaveName's body begins to birth another of her brood. She frantically struggles to move drawing even more attention to her helpless state. She is roughly pulled into one of the side rooms by a group of men looking forward to the show she's about to perform for them.
+			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as $he can. During one of her dances, $slaves[$i].slaveName's body begins to birth another of her brood. $He frantically struggles to move drawing even more attention to her helpless state. $He is roughly pulled into one of the side rooms by a group of men looking forward to the show $he's about to perform for them.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			Only once the last of her clients cums over her bloated body is she handed her child and allowed to rest. She enjoys a moment with her newborn before the servant comes to collect them.
+			Only once the last of $his clients cums over $his bloated body is $he handed $his child and allowed to rest. $He enjoys a moment with her newborn before the servant comes to collect them.
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as she can. During one of her dances, her body begins to birth another of her brood. She keeps on dancing, despite her condition, until her contractions drag her onto her bloated stomach.
+			$slaves[$i].slaveName is showing off $his grotesque body and trying to attract citizens by dancing as well as $he can. During one of her dances, her body begins to birth another of her brood. $He keeps on dancing, despite $his condition, until $his contractions drag her onto $his bloated stomach.
 			<<ClothingBirth>>
 			Multiple citizens drag her into a booth so that they may tease her enormous exhausted body while the dance floor is dried and her child is carried off.
 		<<elseif $slaves[$i].fetish == "humiliation">>
-			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as she can, all the while flashing glimpses of her crotch and nipples. During one of her dances, her body begins to birth another of her brood. She calls out to the crowd, hyping them up for her new show.
+			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as $he can, all the while flashing glimpses of her crotch and nipples. During one of her dances, her body begins to birth another of her brood. $He calls out to the crowd, hyping them up for her new show.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			As her child is removed from the dance floor, she is helped into one of the back rooms by several of her aroused onlookers.
+			As her child is removed from the dance floor, $he is helped into one of the back rooms by several of her aroused onlookers.
 		<<else>>
-			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as she can. During one of her dances, $slaves[$i].slaveName's body begins to birth another of her brood. She clumsily tries to leave the dance floor only to find hands groping her titanic belly. She is roughly pulled into one of the side rooms by a group of men looking forward to the show she's about to perform for them.
+			$slaves[$i].slaveName is showing off her grotesque body and trying to attract citizens by dancing as well as $he can. During one of her dances, $slaves[$i].slaveName's body begins to birth another of her brood. $He clumsily tries to leave the dance floor only to find hands groping her titanic belly. $He is roughly pulled into one of the side rooms by a group of men looking forward to the show $he's about to perform for them.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			Only once the last of her clients cums over her bloated body is she handed her child and allowed to rest. She enjoys a moment with her newborn before the servant comes to collect them.
+			Only once the last of $his clients cums over $his bloated body is $he handed $his child and allowed to rest. $He enjoys a moment with her newborn before the servant comes to collect them.
 		<</if>>
 	<</if>>
 
 <<case "choose her own job">>
 	<<if !canWalk($slaves[$i])>>
-		While thinking about what job to take as an immobile womb, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to do anything but labor, she gives in to what's coming.
+		While thinking about what job to take as an immobile womb, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to do anything but labor, $he gives in to what's coming.
 		<<ClothingBirth>>
-		She gathers her child and recovers her strength before finding a servant to give her child to. She decides to rest for the rest of the day before returning to choosing her next task.
+		$He gathers her child and recovers her strength before finding a servant to give her child to. $He decides to rest for the rest of the day before returning to choosing her next task.
 	<<else>>
 		<<if $slaves[$i].fetish == "humiliation">>
-			While slowly wandering the penthouse deciding on her post, $slaves[$i].slaveName's body begins to birth another of her brood. Sensing an opportunity, she waddles to the nearest balcony overlooking the city. She calls out, making sure all eyes are on her for what happens next.
+			While slowly wandering the penthouse deciding on her post, $slaves[$i].slaveName's body begins to birth another of $his brood. Sensing an opportunity, $he waddles to the nearest balcony overlooking the city. $He calls out, making sure all eyes are on her for what happens next.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			She gathers her child and recovers her strength before finding a servant to give her child to. She decides to rest for the rest of the day before returning to choosing her next task.
+			$He gathers her child and recovers her strength before finding a servant to give $his child to. $He decides to rest for the rest of the day before returning to choosing her next task.
 		<<else>>
-			While slowly wandering the penthouse deciding on her post, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, she finds a secluded room to give birth in.
+			While slowly wandering the penthouse deciding on $his post, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, $he finds a secluded room to give birth in.
 			<<ClothingBirth>>
-			She gathers her child and recovers her strength before finding a servant to give her child to. She decides to rest for the rest of the day before returning to choosing her next task.
+			$He gathers $his child and recovers $his strength before finding a servant to give her child to. $He decides to rest for the rest of the day before returning to choosing her next task.
 		<</if>>
 	<</if>>
 
 <<case "rest in the spa">>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While soaking in the spa's pool, $slaves[$i].slaveName's body begins to birth another of her brood. As she begins to ready herself for birth, <<if $Attendant != 0>>$Attendant.slaveName struggles to pull her out of the pool and glares at her<<else>>the other bathers watch curiously<</if>>.
+			While soaking in the spa's pool, $slaves[$i].slaveName's body begins to birth another of $his brood. As $he begins to ready herself for birth, <<if $Attendant != 0>>$Attendant.slaveName struggles to pull her out of the pool and glares at her<<else>>the other bathers watch curiously<</if>>.
 			<<ClothingBirth>>
-			She and her child are quickly dried off as she begins nursing them. A servant soon arrives to take her children away.
+			$He and $his child are quickly dried off as $he begins nursing them. A servant soon arrives to take $his children away.
 		<<else>>
-			While soaking in the spa's pool, $slaves[$i].slaveName's body begins to birth another of her brood. As she begins to ready herself for a water birth, <<if $Attendant != 0>>$Attendant.slaveName shifts into position to aid her<<else>>the other bathers watch curiously<</if>>.
+			While soaking in the spa's pool, $slaves[$i].slaveName's body begins to birth another of $his brood. As $he begins to ready herself for a water birth, <<if $Attendant != 0>>$Attendant.slaveName shifts into position to aid her<<else>>the other bathers watch curiously<</if>>.
 			<<ClothingBirth>>
-			She and her child are quickly dried off as she begins nursing them. A servant soon arrives to take her children away.
+			$He and $his child are quickly dried off as $he begins nursing them. A servant soon arrives to take $his children away.
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While soaking in the spa's pool, $slaves[$i].slaveName's body begins to birth another of her brood. As she begins to ready herself for birth, <<if $Attendant != 0>>$Attendant.slaveName struggles to pull her out of the pool and glares at her<<else>>the other bathers watch curiously<</if>>.
+			While soaking in the spa's pool, $slaves[$i].slaveName's body begins to birth another of $his brood. As $he begins to ready herself for birth, <<if $Attendant != 0>>$Attendant.slaveName struggles to pull her out of the pool and glares at her<<else>>the other bathers watch curiously<</if>>.
 			<<ClothingBirth>>
-			She and her child are quickly dried off as she begins nursing them. A servant soon arrives to take her children away.
+			$He and her child are quickly dried off as $he begins nursing them. A servant soon arrives to take $his children away.
 		<<else>>
-			While heading for the changing room before a nice soak, $slaves[$i].slaveName's body begins to birth another of her brood. She hurries into the changing room only to find it unusually crowded. Without any choice left, she assumes a birthing position.
+			While heading for the changing room before a nice soak, $slaves[$i].slaveName's body begins to birth another of her brood. $He hurries into the changing room only to find it unusually crowded. Without any choice left, $he assumes a birthing position.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			The several of other slaves present, that aren't pinned by her sudden intrusion, help her with her child while the rest enjoy the show. <<if $Attendant != 0>>$Attendant.slaveName, lured in by the commotion, shoos the other slaves out and helps the new mother to a private relaxation room to unwind<<else>>Soon a servant arrives to take her child away, and she is ushered into the bath to clean up and relax<</if>>.
+			The several of other slaves present, that aren't pinned by her sudden intrusion, help her with her child while the rest enjoy the show. <<if $Attendant != 0>>$Attendant.slaveName, lured in by the commotion, shoos the other slaves out and helps the new mother to a private relaxation room to unwind<<else>>Soon a servant arrives to take her child away, and $he is ushered into the bath to clean up and relax<</if>>.
 		<</if>>
 	<</if>>
 
 <<case "learn in the schoolroom">>
 	<<if !canWalk($slaves[$i])>>
-		During a lesson in $schoolroomName, $slaves[$i].slaveName's body begins to birth another of her brood. Since this isn't the first time she interrupted the lesson this week, and she is too heavy to move, she is allowed to give birth right where she is.
+		During a lesson in $schoolroomName, $slaves[$i].slaveName's body begins to birth another of her brood. Since this isn't the first time $he interrupted the lesson this week, and $he is too heavy to move, $he is allowed to give birth right where $he is.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		She struggles to gather her newborn child as class slowly resume. Looking around, she can't help but notice all the other students giggling and gesturing at her.
+		$He struggles to gather $his newborn child as class slowly resume. Looking around, $he can't help but notice all the other students giggling and gesturing at $him.
 	<<else>>
-		During a lesson in $schoolroomName, $slaves[$i].slaveName's body begins to birth another of her brood. Since this isn't the first time she interrupted the lesson this week, she is helped into an adjacent storage room.
+		During a lesson in $schoolroomName, $slaves[$i].slaveName's body begins to birth another of $his brood. Since this isn't the first time $he interrupted the lesson this week, $he is helped into an adjacent storage room.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		She struggles to gather her newborn child and slowly excuses herself from the class. She can't help but notice all the other students giggling and gesturing as she waddles out.
+		$He struggles to gather $his newborn child and slowly excuses herself from the class. $He can't help but notice all the other students giggling and gesturing as $he waddles out.
 	<</if>>
 
 <<case "take classes">>
 	<<if !canWalk($slaves[$i])>>
-		During a lesson under <<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>, $slaves[$i].slaveName's body begins to birth another of her brood. Your assistant pauses and waits for her to finish, having given up after the last several times
+		During a lesson under <<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>, $slaves[$i].slaveName's body begins to birth another of her brood. Your assistant pauses and waits for $him to finish, having given up after the last several times
 		<<ClothingBirth>>
-		Exhausted from the birth, she is permitted a short break as her child is collected to be cleaned up before the lesson is continued.
+		Exhausted from the birth, $he is permitted a short break as $his child is collected to be cleaned up before the lesson is continued.
 	<<else>>
-		During a lesson under <<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>, $slaves[$i].slaveName's body begins to birth another of her brood. Your assistant pauses and waits for her to finish, having given up after the last several times
+		During a lesson under <<if $assistantName == "your personal assistant">>your personal assistant<<else>>$assistantName<</if>>, $slaves[$i].slaveName's body begins to birth another of $his brood. Your assistant pauses and waits for $him to finish, having given up after the last several times
 		<<ClothingBirth>>
-		Exhausted from the birth, she is permitted a short break as her child is collected to clean herself up before the lesson is continued.
+		Exhausted from the birth, $he is permitted a short break as $his child is collected to clean herself up before the lesson is continued.
 	<</if>>
 
 <<case "work in the brothel">>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if ($seed > 80)>>
-				While taking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood out on him. Showing no signs of stopping, he struggles to shoves her bulk off of him. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. She is handed her child, which she clutches to her breast before beckoning for the next customer's cock.
+				While taking a customer's dick, $slaves[$i].slaveName's body begins to birth another of $his brood out on him. Showing no signs of stopping, he struggles to shoves $his bulk off of him. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. $He is handed $his child, which $he clutches to $his breast before beckoning for the next customer's cock.
 			<<elseif ($seed > 60)>>
-				While sucking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so he allows her to continue.
+				While sucking a customer's dick, $slaves[$i].slaveName's body begins to birth another of $his brood. $He shows no signs of slowing down, so he allows her to continue.
 				<<ClothingBirth>>
-				He cums down her throat before placing her child on her breast, as she beckoning for the next customer's cock.
+				He cums down her throat before placing $his child on $his breast, as $he beckoning for the next customer's cock.
 			<<elseif ($seed > 40)>>
-				While licking a customer's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so she allows her to continue.
+				While licking a customer's cunt, $slaves[$i].slaveName's body begins to birth another of $his brood. $He shows no signs of slowing down, so she allows her to continue.
 				<<ClothingBirth>>
-				The customer splashes across her face before placing her child on her breast, as she begins beckoning for the next customer's cunt.
+				The customer splashes across $his face before placing $his child on $his breast, as $he begins beckoning for the next customer's cunt.
 			<<else>>
-				While taking a customer's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so he allows her to continue. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass before handing her her child. She brings it to her breast before beckoning for the next customer's cock.
+				While taking a customer's dick in $his ass, $slaves[$i].slaveName's body begins to birth another of $his brood. $He shows no signs of slowing down, so he allows her to continue. Instinctively $he begins to push out $his baby, indifferent to who may be watching $his naked crotch. He came strongly thanks to her and gives her a slap on the ass before handing $him $his child. $He brings it to her breast before beckoning for the next customer's cock.
 			<</if>>
 		<<else>>
 			<<if ($seed > 80)>>
-				While riding a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately struggles to disengage encouraging him to shove her onto her bloated womb and mount her. He thoroughly enjoys her contracting cunt before pulling out and standing over her, jacking off. Quickly she spreads her legs apart and begins pushing out her baby. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He comes over her exhausted body and moves on leaving her to recover and await her child to be sent off.
+				While riding a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately struggles to disengage encouraging him to shove her onto her bloated womb and mount $him. He thoroughly enjoys her contracting cunt before pulling out and standing over $him, jacking off. Quickly $he spreads her legs apart and begins pushing out her baby. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He comes over her exhausted body and moves on leaving her to recover and await her child to be sent off.
 				<<set $humiliation = 1>>
 			<<elseif ($seed > 60)>>
-				While sucking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. Since she is incapable of moving herself, she carries on sucking.
+				While sucking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. Since $he is incapable of moving herself, $he carries on sucking.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				He cums down her throat before letting her collapse onto her bloated form. When she recovers, she gathers her child to be sent off.
+				He cums down $his throat before letting her collapse onto her bloated form. When $he recovers, $he gathers her child to be sent off.
 			<<elseif ($seed > 40)>>
-				While licking a customer's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. Since she is incapable of moving herself, she carries on licking.
+				While licking a customer's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. Since $he is incapable of moving herself, $he carries on licking.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She cums across her face before helping her to her rear and handing her the newborn child.
+				She cums across $his face before helping $him to $his rear and handing $his the newborn child.
 			<<else>>
-				While taking a customer's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately struggles to disengage but he shoves her onto her bloated womb and mounts her. Quickly she spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as she collapses onto her bloated womb. Once she recovers enough to collect her child, she awaits for it to be sent off.
+				While taking a customer's dick in $his ass, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately struggles to disengage but he shoves her onto her bloated womb and mounts $him. Quickly $he spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as $he collapses onto $his bloated womb. Once $he recovers enough to collect $his child, $he awaits for it to be sent off.
 				<<set $humiliation = 1>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
 			<<if ($seed > 80)>>
-				While taking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood out on him. Showing no signs of stopping, he struggles to shoves her bulk off of him. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. She is handed her child, which she clutches to her breast before seeking out the next citizen's cock.
+				While taking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood out on him. Showing no signs of stopping, he struggles to shoves her bulk off of him. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. $He is handed her child, which $he clutches to her breast before seeking out the next citizen's cock.
 			<<elseif ($seed > 60)>>
-				While sucking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so he allows her to reposition and continue.
+				While sucking a customer's dick, $slaves[$i].slaveName's body begins to birth another of $his brood. $He shows no signs of slowing down, so he allows $him to reposition and continue.
 				<<ClothingBirth>>
-				He cums down her throat before placing her child on her breast, as she begins seeking out the next citizen's cock.
+				He cums down her throat before placing her child on her breast, as $he begins seeking out the next citizen's cock.
 			<<elseif ($seed > 40)>>
-				While licking a customer's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so she allows her to reposition and continue.
+				While licking a customer's cunt, $slaves[$i].slaveName's body begins to birth another of $his brood. $He shows no signs of slowing down, so she allows $him to reposition and continue.
 			<<ClothingBirth>>
-				The customer splashes across her face before placing her child on her breast, as she begins seeking out the next customer's cunt.
+				The customer splashes across $his face before placing $his child on $his breast, as $he begins seeking out the next customer's cunt.
 			<<else>>
-				While taking a customer's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. She shows no signs of slowing down, so he allows her to reposition and continue. Instinctively she begins to push out her baby, indifferent to who may be watching her naked crotch. He came strongly thanks to her and gives her a slap on the ass before handing her her child. She brings it to her breast before seeking out the next customer's cock.
+				While taking a customer's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. $He shows no signs of slowing down, so he allows her to reposition and continue. Instinctively $he begins to push out her baby, indifferent to who may be watching her naked crotch. He came strongly thanks to $him and gives $him a slap on the ass before handing $him $his child. $He brings it to her breast before seeking out the next customer's cock.
 			<</if>>
 		<<else>>
 			<<if ($seed > 80)>>
-				While riding a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to disengage but he shoves her onto her bloated womb and mounts her. He thoroughly enjoys her contracting cunt before pulling out and standing over her, jacking off. Quickly she spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He comes over her exhausted body and moves on leaving her to recover and collect her child to be sent off.
+				While riding a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately tries to disengage but he shoves her onto her bloated womb and mounts $him. He thoroughly enjoys her contracting cunt before pulling out and standing over $him, jacking off. Quickly $he spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He comes over her exhausted body and moves on leaving her to recover and collect her child to be sent off.
 				<<set $humiliation = 1>>
 			<<elseif ($seed > 60)>>
-				While sucking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to disengage but he grabs her head and slams her back into his crotch.
+				While sucking a customer's dick, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately tries to disengage but he grabs her head and slams her back into his crotch.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				He cums down her throat before letting her collapse onto her bloated form. When she recovers, she gathers her child to be sent off.
+				He cums down her throat before letting her collapse onto her bloated form. When $he recovers, $he gathers her child to be sent off.
 			<<elseif ($seed > 40)>>
-				While licking a customer's cunt, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to disengage but she grabs her head and slams her back into her crotch.
+				While licking a customer's cunt, $slaves[$i].slaveName's body begins to birth another of $his brood. $He desperately tries to disengage but she grabs $his head and slams $him back into her crotch.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She cums across her face before helping her to her feet and handing her the newborn child.
+				She cums across $his face before helping her to $his feet and handing $his the newborn child.
 			<<else>>
-				While taking a customer's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. She desperately tries to disengage but he shoves her onto her bloated womb and mounts her. Quickly she spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as she collapses onto her bloated womb. Once she recovers enough to get to her feet, she gathers her child to be sent off.
+				While taking a customer's dick in her ass, $slaves[$i].slaveName's body begins to birth another of her brood. $He desperately tries to disengage but he shoves her onto her bloated womb and mounts $him. Quickly $he spreads her legs apart and begins pushing out her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. He came strongly thanks to her and gives her a slap on the ass as $he collapses onto her bloated womb. Once $he recovers enough to get to her feet, $he gathers her child to be sent off.
 				<<set $humiliation = 1>>
 			<</if>>
 		<</if>>
@@ -1664,7 +1664,7 @@
 <<case "be your Concubine">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 	<<else>>
-		$slaves[$i].slaveName cradles her swollen belly, waiting for your return, when her body begins to birth another of her brood. Saddened that you aren't there for the show, she begins waddling off to find you. By the time she reaches your office, she is barely holding back her child. You rise to meet her and struggle to help her onto the couch, just before it's to late.
+		$slaves[$i].slaveName cradles her swollen belly, waiting for your return, when her body begins to birth another of her brood. Saddened that you aren't there for the show, $he begins waddling off to find you. By the time $he reaches your office, $he is barely holding back her child. You rise to meet her and struggle to help her onto the couch, just before it's to late.
 		<<ClothingBirth>>
 		Cradling your child, the two of you rest for a spell before sending them off and spending some more intimate time together. You make sure to pay special attention to her overstimulated belly before you help her back to your suite.
 	<</if>>
@@ -1672,23 +1672,23 @@
 <<case "live with your Head Girl">>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			$slaves[$i].slaveName is awoken from her rest by a strong contraction. She attempts to roll over, and failing that, begins to fall back to sleep as another contraction wracks her body. Her body begins to birth another of her brood.
+			$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He attempts to roll over, and failing that, begins to fall back to sleep as another contraction wracks her body. $His body begins to birth another of her brood.
 			<<ClothingBirth>>
-			She draws her child to her breast and resumes resting before $HeadGirl.slaveName returns from her duties.
+			$He draws her child to her breast and resumes resting before $HeadGirl.slaveName returns from her duties.
 		<<else>>
-			$slaves[$i].slaveName's body begins to birth another of her brood. She attempts to roll over, and failing that, claws at her massive belly as another contraction wracks her body.
+			$slaves[$i].slaveName's body begins to birth another of her brood. $He attempts to roll over, and failing that, claws at her massive belly as another contraction wracks her body.
 			<<ClothingBirth>>
-			She struggles to collect her child and brings them to her breast. She waits for $HeadGirl.slaveName to return, hoping she will arrive before another baby makes its way out of her.
+			$He struggles to collect her child and brings them to her breast. $He waits for $HeadGirl.slaveName to return, hoping $he will arrive before another baby makes its way out of $him.
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			$slaves[$i].slaveName is awoken from her rest by a strong contraction. She rolls over and begins to fall back to sleep as another contraction wracks her body. Her body begins to birth another of her brood.
+			$slaves[$i].slaveName is awoken from her rest by a strong contraction. $He rolls over and begins to fall back to sleep as another contraction wracks her body. $His body begins to birth another of her brood.
 			<<ClothingBirth>>
-			She draws her child to her breast and resumes resting before $HeadGirl.slaveName returns from her duties.
+			$He draws her child to her breast and resumes resting before $HeadGirl.slaveName returns from her duties.
 		<<else>>
-			$slaves[$i].slaveName's body begins to birth another of her brood. She rolls over and claws at her massive belly as another contraction wracks her body.
+			$slaves[$i].slaveName's body begins to birth another of her brood. $He rolls over and claws at her massive belly as another contraction wracks her body.
 			<<ClothingBirth>>
-			She struggles to collect her child and places them in the cradle readied for her. She waddles off to take a bath as your servants clean up and remove her child. Cleaned up, she returns to resting knowing full well that $HeadGirl.slaveName will be eager to play with her body upon returning.
+			$He struggles to collect her child and places them in the cradle readied for $him. $He waddles off to take a bath as your servants clean up and remove her child. Cleaned up, $he returns to resting knowing full well that $HeadGirl.slaveName will be eager to play with her body upon returning.
 		<</if>>
 	<</if>>
 
@@ -1696,58 +1696,58 @@
 	A gush of liquid pours from the $slaves[$i].slaveName's cunt, followed by the attendant in charge of the arcade hanging an "out of order" sign on her exposed rear. While her mouth is filled with a customer's dick, her body instinctively births her child into the waiting basket. As they are carried away, her rear is cleaned up and the sign removed.
 
 <<case "get treatment in the clinic">>
-	$slaves[$i].slaveName is in the perfect place to give birth when her body begins to push out another of her brood. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers her child before taking them away. Before long she returns to attend to her patient's perpetual pregnancy.
+	$slaves[$i].slaveName is in the perfect place to give birth when her body begins to push out another of her brood. <<if $Nurse != 0>>$Nurse.slaveName<<else>>A freelance nurse<</if>> delivers her child before taking them away. Before long $he returns to attend to her patient's perpetual pregnancy.
 
 <<case "be confined in the cellblock">>
 	<<if $slaves[$i].fetish == "mindbroken">>
-		While waiting in confinement, $slaves[$i].slaveName's body begins to birth another of her brood. She assumes a birthing position.
+		While waiting in confinement, $slaves[$i].slaveName's body begins to birth another of her brood. $He assumes a birthing position.
 		<<ClothingBirth>>
-		She struggles for a minute before realizing her pregnancy takes up most of the cell and that she can't reach her child. The servant that has to crawl under her bloated body to get her child is less than pleased, especially since this is the third time this week she has had to do it.
+		$He struggles for a minute before realizing her pregnancy takes up most of the cell and that $he can't reach her child. The servant that has to crawl under her bloated body to get her child is less than pleased, especially since this is the third time this week $he has had to do it.
 	<<else>>
-		$slaves[$i].slaveName is awoken from her stupor by her body beginning to birth another of her brood. She struggles to get into position but ends up getting stuck thanks to her massive belly and inability to properly move herself.
+		$slaves[$i].slaveName is awoken from her stupor by her body beginning to birth another of her brood. $He struggles to get into position but ends up getting stuck thanks to her massive belly and inability to properly move herself.
 		<<set $humiliation = 1>>
 		<<ClothingBirth>>
-		She spills out of the cell when the servant comes once more to collect her child. She hastily tries to cram her bulk back into her cell before she gets chastised.
+		$He spills out of the cell when the servant comes once more to collect her child. $He hastily tries to cram her bulk back into her cell before $he gets chastised.
 	<</if>>
 
 <<default>>
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While stroking her pregnancy absentmindedly, $slaves[$i].slaveName's body begins to birth another of her brood. She carries on until the contractions drag her onto her swollen belly.
+			While stroking her pregnancy absentmindedly, $slaves[$i].slaveName's body begins to birth another of her brood. $He carries on until the contractions drag her onto her swollen belly.
 			<<ClothingBirth>>
-			She draws her child to her breast and rests upon her mass until a servant collects her child and helps her back to her bed.
+			$He draws her child to her breast and rests upon her mass until a servant collects her child and helps her back to her bed.
 		<<else>>
 			<<if $seed > 50>>
-				While waiting to be helped to her next assignment, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to do anything, she is forced to give birth where she is.
+				While waiting to be helped to her next assignment, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to do anything, $he is forced to give birth where $he is.
 				<<ClothingBirth>>
-				She gathers her child and recovers her strength while resuming her wait a servant to help her to her assignment.
+				$He gathers her child and recovers her strength while resuming her wait a servant to help her to her assignment.
 			<<else>>
-				While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to move, she finds herself stranded in the middle of all the dining slaves.
+				While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to move, $he finds herself stranded in the middle of all the dining slaves.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She gathers her child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter.
+				$He gathers her child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While stroking her pregnancy absentmindedly, $slaves[$i].slaveName's body begins to birth another of her brood. She carries on until the contractions drag her onto her swollen belly.
+			While stroking her pregnancy absentmindedly, $slaves[$i].slaveName's body begins to birth another of her brood. $He carries on until the contractions drag her onto her swollen belly.
 			<<ClothingBirth>>
-			She draws her child to her breast and rests upon her mass until a servant collects her child and helps her back to her bed.
+			$He draws her child to her breast and rests upon her mass until a servant collects her child and helps her back to her bed.
 		<<elseif $slaves[$i].fetish == "humiliation">>
-			While waddling through the penthouse between assignments, $slaves[$i].slaveName's body begins to birth another of her brood. Sensing an opportunity, she waddles to the nearest balcony overlooking the city. She calls out, making sure all eyes are on her for what happens next.
+			While waddling through the penthouse between assignments, $slaves[$i].slaveName's body begins to birth another of her brood. Sensing an opportunity, $he waddles to the nearest balcony overlooking the city. $He calls out, making sure all eyes are on her for what happens next.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			She gathers her child and recovers her strength before finding a servant to give her child to. She resumes her previous task, eager for the next child to move into position.
+			$He gathers her child and recovers her strength before finding a servant to give her child to. $He resumes her previous task, eager for the next child to move into position.
 		<<else>>
 			<<if $seed > 50>>
-				While waddling through the penthouse on her way to her next assignment, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, she finds a secluded room to give birth in.
+				While waddling through the penthouse on her way to her next assignment, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, $he finds a secluded room to give birth in.
 				<<ClothingBirth>>
-				She gathers her child and recovers her strength before finding a servant to give her child to before shuffling to her assignment.
+				$He gathers her child and recovers her strength before finding a servant to give her child to before shuffling to her assignment.
 			<<else>>
-				While waddling through the penthouse on her way to the cafeteria, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, she finds herself stranded in the middle of all the dining slaves.
+				While waddling through the penthouse on her way to the cafeteria, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, $he finds herself stranded in the middle of all the dining slaves.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She gathers her child and recovers her strength before trying to escape out of sight of the jeering crowd. Finding a servant to give her child to, she hastily heads back to her bed to hide herself from the mockery, though her enormous belly keeps her blanket from covering her.
+				$He gathers her child and recovers her strength before trying to escape out of sight of the jeering crowd. Finding a servant to give her child to, $he hastily heads back to her bed to hide herself from the mockery, though her enormous belly keeps her blanket from covering $him.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -1757,41 +1757,41 @@
 <<else>> /* add extra events here (moving between jobs | after work) */
 	<<if !canWalk($slaves[$i])>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While stroking her pregnancy absentmindedly, $slaves[$i].slaveName's body begins to birth another of her brood. She carries on until the contractions drag her onto her swollen belly.
+			While stroking her pregnancy absentmindedly, $slaves[$i].slaveName's body begins to birth another of her brood. $He carries on until the contractions drag her onto her swollen belly.
 			<<ClothingBirth>>
-			She draws her child to her breast and rests upon her mass until a servant collects her child and helps her back to her bed.
+			$He draws her child to her breast and rests upon her mass until a servant collects her child and helps her back to her bed.
 		<<else>>
 			<<if $seed > 50>>
-				While waiting to be helped to her next assignment, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to do anything, she is forced to give birth where she is.
+				While waiting to be helped to her next assignment, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to do anything, $he is forced to give birth where $he is.
 				<<ClothingBirth>>
-				She gathers her child and recovers her strength while resuming her wait a servant to help her to her assignment.
+				$He gathers her child and recovers her strength while resuming her wait a servant to help her to her assignment.
 			<<else>>
-				While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to move, she finds herself stranded in the middle of all the dining slaves.
+				While eating in the cafeteria, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to move, $he finds herself stranded in the middle of all the dining slaves.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She gathers her child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter.
+				$He gathers her child and waits to be rescued from the vicious mockery, fully aware of all the jestering and laughter.
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			While wandering the penthouse absentmindedly, $slaves[$i].slaveName's body begins to birth another of her brood. She carries on until the contractions drag her onto her swollen belly.
+			While wandering the penthouse absentmindedly, $slaves[$i].slaveName's body begins to birth another of her brood. $He carries on until the contractions drag her onto her swollen belly.
 			<<ClothingBirth>>
-			She draws her child to her breast and rests upon her mass until a servant collects her child and helps her back to her feet.
+			$He draws her child to her breast and rests upon her mass until a servant collects her child and helps her back to her feet.
 		<<elseif $slaves[$i].fetish == "humiliation">>
-			While waddling through the penthouse between assignments, $slaves[$i].slaveName's body begins to birth another of her brood. Sensing an opportunity, she waddles to the nearest balcony overlooking the city. She calls out, making sure all eyes are on her for what happens next.
+			While waddling through the penthouse between assignments, $slaves[$i].slaveName's body begins to birth another of her brood. Sensing an opportunity, $he waddles to the nearest balcony overlooking the city. $He calls out, making sure all eyes are on her for what happens next.
 			<<set $humiliation = 1>>
 			<<ClothingBirth>>
-			She gathers her child and recovers her strength before finding a servant to give her child to. She resumes her previous task, eager for the next child to move into position.
+			$He gathers her child and recovers her strength before finding a servant to give her child to. $He resumes her previous task, eager for the next child to move into position.
 		<<else>>
 			<<if $seed > 50>>
-				While waddling through the penthouse on the way to her next assignment, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, she finds a secluded room to give birth in.
+				While waddling through the penthouse on the way to her next assignment, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, $he finds a secluded room to give birth in.
 				<<ClothingBirth>>
-				She gathers her child and recovers her strength before finding a servant to give her child to before shuffling to her assignment.
+				$He gathers her child and recovers her strength before finding a servant to give her child to before shuffling to her assignment.
 			<<else>>
-				While waddling through the penthouse on her way to the cafeteria, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, she finds herself stranded in the middle of all the dining slaves.
+				While waddling through the penthouse on her way to the cafeteria, $slaves[$i].slaveName's body begins to birth another of her brood. Unable to reach the prepared birthing room in time, $he finds herself stranded in the middle of all the dining slaves.
 				<<set $humiliation = 1>>
 				<<ClothingBirth>>
-				She gathers her child and recovers her strength before trying to escape out of sight of the jeering crowd. Finding a servant to give her child to, she hastily heads back to her bed to hide herself from the mockery, though her enormous belly keeps her blanket from covering her.
+				$He gathers her child and recovers her strength before trying to escape out of sight of the jeering crowd. Finding a servant to give her child to, $he hastily heads back to her bed to hide herself from the mockery, though her enormous belly keeps her blanket from covering $him.
 			<</if>>
 		<</if>>
 	<</if>>
diff --git a/src/pregmod/widgets/seBirthWidgets.tw b/src/pregmod/widgets/seBirthWidgets.tw
index 89f7c58892f..8d0226078e9 100644
--- a/src/pregmod/widgets/seBirthWidgets.tw
+++ b/src/pregmod/widgets/seBirthWidgets.tw
@@ -191,7 +191,7 @@
 				<<if $slaves[$i].amp != 1>> /* amps are always carried in time */
 
 					<<if (random(1,20) > $suddenBirth) || ($universalRulesBirthing == 1)>> /* did she make it to her birthing area? */
-						Feeling childbirth approaching, <<if !canWalk($slaves[$i])>>$slaves[$i].slaveName is helped<<else>>$slaves[$i].slaveName makes $possessive way<</if>> to $possessive prepared birthing area.
+						Feeling childbirth approaching, <<if !canWalk($slaves[$i])>>$slaves[$i].slaveName is helped<<else>>$slaves[$i].slaveName makes $his way<</if>> to $his prepared birthing area.
 
 						<<Birth>>
 
@@ -210,7 +210,7 @@
 					<</if>> /* closes reg birth */
 
 				<<else>> /* made it to birthing area */
-					With childbirth approaching, $slaves[$i].slaveName is carried to $possessive prepared birthing area.
+					With childbirth approaching, $slaves[$i].slaveName is carried to $his prepared birthing area.
 
 					<<AmpBirth>>
 
@@ -221,20 +221,20 @@
 		<<else>>
 			<br>
 			<<if $dairyRestraintsSetting > 1 && $slaves[$i].career == "a bioreactor">>
-				As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. Once the child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> secure, the basket retracts allowing access to $possessive <<if $slaves[$i].mpreg == 1>>rear<<else>>vagina<</if>>.<<if $dairyPregSetting > 0>> The impregnation tube is promptly reinserted, bloating $possessive empty womb with fresh cum, where it will remain until $pronoun is pregnant once more.<</if>> All these events are meaningless to $object, as $possessive consciousness has long since been snuffed out.
+				As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $his laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. Once the child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> secure, the basket retracts allowing access to $his <<if $slaves[$i].mpreg == 1>>rear<<else>>vagina<</if>>.<<if $dairyPregSetting > 0>> The impregnation tube is promptly reinserted, bloating $his empty womb with fresh cum, where it will remain until $he is pregnant once more.<</if>> All these events are meaningless to $him, as $his consciousness has long since been snuffed out.
 			<<elseif $dairyRestraintsSetting > 1>>
 				<<if $slaves[$i].fetish == "mindbroken">>
-					As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. Once the child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> secure, the basket retracts allowing access to $possessive <<if $slaves[$i].mpreg == 1>>rear<<else>>vagina<</if>>.<<if $dairyPregSetting > 0>> The impregnation tube is promptly reinserted, bloating $possessive empty womb with fresh cum, where it will remain until $pronoun is pregnant once more.<</if>> $pronounCap doesn't care about any of this, as the only thoughts left in $possessive empty mind revolve around the sensations in $possessive crotch and breasts.
+					As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $his laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. Once the child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> secure, the basket retracts allowing access to $his <<if $slaves[$i].mpreg == 1>>rear<<else>>vagina<</if>>.<<if $dairyPregSetting > 0>> The impregnation tube is promptly reinserted, bloating $his empty womb with fresh cum, where it will remain until $he is pregnant once more.<</if>> $He doesn't care about any of this, as the only thoughts left in $his empty mind revolve around the sensations in $his crotch and breasts.
 				<<else>>
-					As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $possessive laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. $pronounCap struggles in $possessive bindings, attempting to break free in order to birth $possessive coming child, but $possessive efforts are pointless. $pronounCap is forced to give birth, restrained, into the waiting holder. Once the child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> secure, the basket retracts allowing access to $possessive vagina.<<if $dairyPregSetting > 0>> The impregnation tube is promptly reinserted, bloating $possessive empty womb with fresh cum, where it will remain until $pronoun is pregnant once more. $slaves[$i].slaveName moans, partially with pleasure and partially with defeat, under the growing pressure within $possessive body. Tears stream down $possessive face as <<if $slaves[$i].births > 0>>$pronoun is forcibly impregnated once more<<else>>$pronoun attempts to shift in $possessive restraints to peek around $possessive swollen breasts, but $pronoun is too well secured. $pronounCap'll realize what is happening when $possessive belly grows large enough to brush against $possessive breasts as the milker sucks from them<<if $slaves[$i].dick > 0>> or $possessive dick begins rubbing its underside<</if>><</if>>.<</if>> $possessiveCap mind slips slightly more as $pronoun focuses on $possessive fate as nothing more than an animal destined to be milked and bare offspring until $possessive body gives out.
+					As $slaves[$i].slaveName's water breaks, a mechanical basket is extended under $his laboring <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>. $He struggles in $his bindings, attempting to break free in order to birth $his coming child, but $his efforts are pointless. $He is forced to give birth, restrained, into the waiting holder. Once the child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> secure, the basket retracts allowing access to $his vagina.<<if $dairyPregSetting > 0>> The impregnation tube is promptly reinserted, bloating $his empty womb with fresh cum, where it will remain until $he is pregnant once more. $slaves[$i].slaveName moans, partially with pleasure and partially with defeat, under the growing pressure within $his body. Tears stream down $his face as <<if $slaves[$i].births > 0>>$he is forcibly impregnated once more<<else>>$he attempts to shift in $his restraints to peek around $his swollen breasts, but $he is too well secured. $He'll realize what is happening when $his belly grows large enough to brush against $his breasts as the milker sucks from them<<if $slaves[$i].dick > 0>> or $his dick begins rubbing its underside<</if>><</if>>.<</if>> $His mind slips slightly more as $he focuses on $his fate as nothing more than an animal destined to be milked and bare offspring until $his body gives out.
 					<<set $slaves[$i].trust -= 10>>
 					<<set $slaves[$i].devotion -= 10>>
 				<</if>>
 			<<else>>
 				<<if $slaves[$i].fetish == "mindbroken">>
-					While getting milked, $slaves[$i].slaveName's water breaks. $pronounCap shows little interest and continues kneading $possessive breasts. Instinctively $pronoun begins to push out $possessive bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $pronounCap pays no heed to $possessive child<<if $slaves[$i].pregType > 1>>ren<</if>> being removed from the milking stall, instead focusing entirely on draining $possessive breasts.
+					While getting milked, $slaves[$i].slaveName's water breaks. $He shows little interest and continues kneading $his breasts. Instinctively $he begins to push out $his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $He pays no heed to $his child<<if $slaves[$i].pregType > 1>>ren<</if>> being removed from the milking stall, instead focusing entirely on draining $his breasts.
 				<<else>>
-					While getting milked, $slaves[$i].slaveName's water breaks,<<if $dairyPregSetting > 0>> this is a regular occurrence to $object now so<<else>> but<</if>> $pronoun continues enjoying $possessive milking. $pronounCap begins to push out $possessive bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $pronounCap catches <<if canSee($slaves[$i])>>a glimpse<<else>>the sound<</if>> of $possessive child<<if $slaves[$i].pregType > 1>>ren<</if>> being removed from the milking stall before returning $possessive focus to draining $possessive breasts.
+					While getting milked, $slaves[$i].slaveName's water breaks,<<if $dairyPregSetting > 0>> this is a regular occurrence to $him now so<<else>> but<</if>> $he continues enjoying $his milking. $He begins to push out $his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>>. $He catches <<if canSee($slaves[$i])>>a glimpse<<else>>the sound<</if>> of $his child<<if $slaves[$i].pregType > 1>>ren<</if>> being removed from the milking stall before returning $his focus to draining $his breasts.
 				<</if>>
 			<</if>>
 		<</if>> /* close cow birth */
@@ -242,7 +242,7 @@
 	<<else>>
 
 		<<if $slaves[$i].amp == 1>>
-			With childbirth approaching, $slaves[$i].slaveName is carried to $possessive prepared birthing area.
+			With childbirth approaching, $slaves[$i].slaveName is carried to $his prepared birthing area.
 			<<AmpBirth>>
 		<<elseif $slaves[$i].broodmother == 1>>
 			<<BroodmotherBirth>>
@@ -335,11 +335,11 @@
 This decriptions can be expanded with more outcomes later. But it's not practical to check values above 5-10 - it become too affected by actual value of womb size.
 */
 <<if $slaves[$i].assignment == "work in the dairy" && $dairyPregSetting > 0>> 
-	As a human cow, $pronoun @@.orange;gave birth@@
+	As a human cow, $he @@.orange;gave birth@@
 	<<if $diffSize < 1.15>>
-		but $possessive overfilled womb barely lost any size. $possessiveCap body gave life
+		but $his overfilled womb barely lost any size. $His body gave life
 	<<elseif $diffSize < 1.3>>
-		but $possessive stomach barely shrank at all. $possessiveCap body gave life
+		but $his stomach barely shrank at all. $His body gave life
 	<</if>>
 
 	<<if _curBabies < 1>>
@@ -373,14 +373,14 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 <<else>> /* ---------- normal birth variant. -------------------------------------------------------------*/
 
 	<<if $csec == 1>>
-		$pronounCap was given @@.orange;a cesarean section@@ due to health concerns.<br><br>
-		From $possessive womb,
+		$He was given @@.orange;a cesarean section@@ due to health concerns.<br><br>
+		From $his womb,
 	<<else>>	
-		$pronounCap @@.orange;gave birth@@
+		$He @@.orange;gave birth@@
 		<<if $diffSize < 1.15>>
-			, but $possessive stomach barely shrank at all. $possessiveCap body gave life to
+			, but $his stomach barely shrank at all. $His body gave life to
 		<<elseif $diffSize < 1.3>>
-			, but $possessive overfilled womb barely lost any size. $possessiveCap body gave life to
+			, but $his overfilled womb barely lost any size. $His body gave life to
 		<<else>>
 			to
 		<</if>>
@@ -424,7 +424,7 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 		<<elseif $slaves[$i].pregSource == 0>>
 			an unknown father<<if $csec == 1>>, entered the world<</if>>.
 		<<elseif $slaves[$i].ID == $slaves[$i].pregSource>>
-			$possessive own curiosity over if $pronoun could fuck <<print $possessive>>self<<if $csec == 1>>, entered the world<</if>>.
+			$his own curiosity over if $he could fuck <<print $his>>self<<if $csec == 1>>, entered the world<</if>>.
 		<<else>>
 			$daddy's virile cock and balls<<if $csec == 1>>, entered the world<</if>>.
 		<</if>>
@@ -440,27 +440,27 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 		<br>
 		<<if $diffSize > 1.5 && _curBabies >= 80 >> /*only show if belly lost at least 1/4 of original size.*/
 			<br>
-			After an entire day of labor and birth, $possessive belly sags heavily.	
+			After an entire day of labor and birth, $his belly sags heavily.	
 		<<elseif $diffSize > 1.5 && _curBabies >= 40>>
 			<br>
-			After half a day of labor and birth, $possessive belly sags softly.
+			After half a day of labor and birth, $his belly sags softly.
 		<<elseif $diffSize > 1.5 && _curBabies >= 20>>
 			<br>
-			After several hours of labor and birth, $possessive belly sags softly.
+			After several hours of labor and birth, $his belly sags softly.
 		<<elseif $diffSize > 1.5 && _curBabies >= 10>>
 			<br>
-			After few hours of labor and birth, $possessive belly sags softly.
+			After few hours of labor and birth, $his belly sags softly.
 		<<elseif $diffSize > 1.5>>
 			<br>
-			After labor and birth, $possessive belly sags softly.
+			After labor and birth, $his belly sags softly.
 		<</if>>
 	<<else>> /* this was intended for normal birth to draw attention to how long it takes to pass that many children as well as how deflated she'll be after the fact. */
 		<<if $slaves[$i].pregType >= 80>>
-			After an entire day of labor and birth, $possessive belly sags heavily.
+			After an entire day of labor and birth, $his belly sags heavily.
 		<<elseif $slaves[$i].pregType >= 40>>
-			After half a day of labor and birth, $possessive belly sags emptily.
+			After half a day of labor and birth, $his belly sags emptily.
 		<<elseif $slaves[$i].pregType >= 20>>
-			After several hours of labor and birth, $possessive belly sags softly.
+			After several hours of labor and birth, $his belly sags softly.
 		<</if>>
 	<</if>>
 		
@@ -468,80 +468,80 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 		<<if $slaves[$i].fetish != "mindbroken">>
 			<br><br>
 			<<if ($slaves[$i].fetish == "masochist")>>
-				Since $pronoun was a virgin, giving birth was a @@.red;terribly painful@@ experience.<<if $slaves[$i].fetishKnown == 0>>$pronounCap seems to have orgasmed several times during the experience, $pronoun appears to @@.lightcoral;really like pain@@.<<set $slaves[$i].fetishKnown = 1>><<else>> However, due to $possessive masochistic streak, $pronoun @@.hotpink;greatly enjoyed@@ said experience<</if>>.
+				Since $he was a virgin, giving birth was a @@.red;terribly painful@@ experience.<<if $slaves[$i].fetishKnown == 0>>$heCap seems to have orgasmed several times during the experience, $he appears to @@.lightcoral;really like pain@@.<<set $slaves[$i].fetishKnown = 1>><<else>> However, due to $his masochistic streak, $he @@.hotpink;greatly enjoyed@@ said experience<</if>>.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 2>>
 			<<else>>
-				Since $pronoun was a virgin, giving birth was a @@.red;terribly painful@@ experience. $pronounCap @@.mediumorchid;despises@@ you for taking $possessive virginity in such a @@.gold;horrifying@@ way.
+				Since $he was a virgin, giving birth was a @@.red;terribly painful@@ experience. $He @@.mediumorchid;despises@@ you for taking $his virginity in such a @@.gold;horrifying@@ way.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion -= 25, $slaves[$i].trust -= 25>>
 			<</if>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].hips < -1)>>
 		<br><br>
-		$pronounCap had exceedingly narrow hips, completely unsuitable for childbirth. As $pronoun struggled on $possessive <<if _curBabies > 1>>first<</if>> child, $possessive pelvic bone strained under the pressure until it could no longer hold together and @@.red;agonizingly snapped.@@
+		$He had exceedingly narrow hips, completely unsuitable for childbirth. As $he struggled on $his <<if _curBabies > 1>>first<</if>> child, $his pelvic bone strained under the pressure until it could no longer hold together and @@.red;agonizingly snapped.@@
 		<<if $slaves[$i].fetish != "mindbroken">>
 			<<if ($slaves[$i].fetish == "masochist")>>
-				 <<if $slaves[$i].fetishKnown == 0>>What would have made most girls blackout from pain sent $object into the lewdest orgasm you've seen today. $pronounCap @@.lightcoral;must get off to pain.@@.<<set $slaves[$i].fetishKnown = 1>><<else>> $pronounCap claims to have never climaxed so hard and @@.hotpink;wishes her hips could have stayed that narrow for next time.@@<</if>>
+				 <<if $slaves[$i].fetishKnown == 0>>What would have made most girls blackout from pain sent $him into the lewdest orgasm you've seen today. $He @@.lightcoral;must get off to pain.@@.<<set $slaves[$i].fetishKnown = 1>><<else>> $He claims to have never climaxed so hard and @@.hotpink;wishes her hips could have stayed that narrow for next time.@@<</if>>
 				<<set $slaves[$i].devotion += 5>>
 			<<elseif $slaves[$i].devotion > 70>>
-				When $pronoun comes to, $possessive pelvis has already been patched up. $pronounCap is just glad that $pronoun managed to finish giving birth despite the hindrance.
+				When $he comes to, $his pelvis has already been patched up. $He is just glad that $he managed to finish giving birth despite the hindrance.
 			<<else>>
-				When $pronoun comes to, $possessive pelvis has already been patched up. $pronounCap @@.mediumorchid;loathes you@@ for forcing $possessive body to undergo such a painful experience and @@.gold;fears@@ what horror you have planned next.
+				When $he comes to, $his pelvis has already been patched up. $He @@.mediumorchid;loathes you@@ for forcing $his body to undergo such a painful experience and @@.gold;fears@@ what horror you have planned next.
 				<<set $slaves[$i].devotion -= 25, $slaves[$i].trust -= 25>>
 			<</if>>
 		<<else>>
-			It only hurt for an instant and a second later was promptly forgotten. To $object, $possessive hips were always this wide.
+			It only hurt for an instant and a second later was promptly forgotten. To $him, $his hips were always this wide.
 		<</if>>
-		$possessiveCap pelvis has been forced into a @@.lime;more feminine@@ shape.<<if $slaves[$i].hipsImplant > 0>> This has also undone any surgical narrowing $pronoun has undergone.<</if>>
+		$His pelvis has been forced into a @@.lime;more feminine@@ shape.<<if $slaves[$i].hipsImplant > 0>> This has also undone any surgical narrowing $he has undergone.<</if>>
 		<<set $slaves[$i].health -= 20, $slaves[$i].hips = 0, $slaves[$i].hipsImplant = 0>>
 	<</if>>
 	<br><br>
 	<<if $slaves[$i].mpreg == 1>>
 		<<if ($slaves[$i].anus < 0)>> /* you somehow got a pregnant slave with no vagina catch */
-			Childbirth has @@.lime;has torn $object a gaping anus.@@
+			Childbirth has @@.lime;has torn $him a gaping anus.@@
 		<<elseif ($slaves[$i].anus == 0)>> /* please stop selling me pregnant virgins, neighbor gender fundamentalist arcology */
-			Childbirth has @@.lime;ruined $possessive virgin ass.@@
+			Childbirth has @@.lime;ruined $his virgin ass.@@
 		<<elseif ($slaves[$i].anus == 1)>>
-			Childbirth has @@.lime;greatly stretched out $possessive ass.@@
+			Childbirth has @@.lime;greatly stretched out $his ass.@@
 		<<elseif ($slaves[$i].anus == 2)>>
-			Childbirth has @@.lime;stretched out $possessive ass.@@
+			Childbirth has @@.lime;stretched out $his ass.@@
 		<<elseif ($slaves[$i].anus == 3)>>
-			$possessiveCap ass was loose enough to not be stretched by childbirth.
+			$His ass was loose enough to not be stretched by childbirth.
 		<<elseif ($slaves[$i].anus < 10)>>
-			Childbirth stood no chance of stretching $possessive gaping ass.
+			Childbirth stood no chance of stretching $his gaping ass.
 		<<elseif ($slaves[$i].anus == 10)>>
-			$possessiveCap child could barely stretch $possessive cavernous ass.
+			$His child could barely stretch $his cavernous ass.
 		<<else>>
-			Childbirth has @@.lime;stretched out $possessive ass.@@
+			Childbirth has @@.lime;stretched out $his ass.@@
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].vagina < 0)>> /* you somehow got a pregnant slave with no vagina catch */
-			Childbirth has @@.lime;has torn $object a gaping vagina.@@
+			Childbirth has @@.lime;has torn $him a gaping vagina.@@
 		<<elseif ($slaves[$i].vagina == 0)>> /* please stop selling me pregnant virgins, neighbor gender fundamentalist arcology (or maybe it's just surgery?) */
-			Childbirth has @@.lime;ruined $possessive virgin vagina.@@
+			Childbirth has @@.lime;ruined $his virgin vagina.@@
 		<<elseif ($slaves[$i].vagina == 1)>>
-			Childbirth has @@.lime;greatly stretched out $possessive vagina.@@
+			Childbirth has @@.lime;greatly stretched out $his vagina.@@
 		<<elseif ($slaves[$i].vagina == 2)>>
-			Childbirth has @@.lime;stretched out $possessive vagina.@@
+			Childbirth has @@.lime;stretched out $his vagina.@@
 		<<elseif ($slaves[$i].vagina == 3)>>
-			$possessiveCap vagina was loose enough to not be stretched by childbirth.
+			$His vagina was loose enough to not be stretched by childbirth.
 		<<elseif ($slaves[$i].vagina < 6)>>
-			Childbirth stood no chance of stretching $possessive gaping vagina.
+			Childbirth stood no chance of stretching $his gaping vagina.
 		<<elseif ($slaves[$i].vagina == 10)>>
-			$possessiveCap child could barely stretch $possessive cavernous vagina.
+			$His child could barely stretch $his cavernous vagina.
 		<<else>>
-			Childbirth has @@.lime;stretched out $possessive vagina.@@
+			Childbirth has @@.lime;stretched out $his vagina.@@
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].mpreg == 1>>
-			/* Childbirth has @@.lime;stretched out $possessive anus.@@ //no need for description now */
+			/* Childbirth has @@.lime;stretched out $his anus.@@ //no need for description now */
 		<<if ($dairyPregSetting > 1) && ($slaves[$i].anus < 4)>>
 			<<set $slaves[$i].anus += 1>>
 		<<elseif ($slaves[$i].anus < 3)>>
 			<<set $slaves[$i].anus += 1>>
 		<</if>>
 	<<else>>
-			/* Childbirth has @@.lime;stretched out $possessive vagina.@@ //no need for description now */
+			/* Childbirth has @@.lime;stretched out $his vagina.@@ //no need for description now */
 		<<if ($dairyPregSetting > 1) && ($slaves[$i].vagina < 4)>>
 			<<set $slaves[$i].vagina += 1>>
 		<<elseif ($slaves[$i].vagina < 3)>>
@@ -551,7 +551,7 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 
 <<else>>	
 	<br><br>
-	Since $possessive <<if $slaves[$i].mpreg == 1>>ass<<else>>vagina<</if>> was spared from childbirth, @@.lime;it retained its tightness.@@
+	Since $his <<if $slaves[$i].mpreg == 1>>ass<<else>>vagina<</if>> was spared from childbirth, @@.lime;it retained its tightness.@@
 <</if>>
 
 /* ------ Postbirth reactions, mother experience ----------------------------------------------------------------------------- */
@@ -561,72 +561,72 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 	<br>
 	<<if $slaves[$i].laborCount == 0>>
 		<br>
-		$possessiveCap inexperience @@.red;complicated $possessive first birth@@.
+		$His inexperience @@.red;complicated $his first birth@@.
 		<<set _compoundCondition = 1>>
 	<</if>>
 	<<if $slaves[$i].mpreg == 1>>
 		<<if $slaves[$i].anus < 2>>
 			<br>
-			$possessiveCap tight ass @@.red;hindered $possessive <<if _curBabies >1>>babies<<else>>baby's<</if>> birth@@.
+			$His tight ass @@.red;hindered $his <<if _curBabies >1>>babies<<else>>baby's<</if>> birth@@.
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].vagina < 2>>
 			<br>
-			$possessiveCap tight vagina @@.red;hindered $possessive <<if _curBabies >1>>babies<<else>>baby's<</if>> birth@@.
+			$His tight vagina @@.red;hindered $his <<if _curBabies >1>>babies<<else>>baby's<</if>> birth@@.
 		<</if>>
 		<<if $slaves[$i].vaginaLube == 0>>
 			<br>
-			$possessiveCap dry vagina made pushing $possessive <<if _curBabies >1>>children<<else>>child<</if>> out @@.red;painful@@.
+			$His dry vagina made pushing $his <<if _curBabies >1>>children<<else>>child<</if>> out @@.red;painful@@.
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].hips < 0>>
 		<br>
-		$possessiveCap narrow hips made birth @@.red;troublesome@@.
+		$His narrow hips made birth @@.red;troublesome@@.
 	<</if>>
 	<<if $slaves[$i].weight < -95>>
 		<br>
-		$possessiveCap very thin body @@.red;was nearly incapable of birthing $possessive <<if _curBabies >1>>children<<else>>child<</if>>@@.
+		$His very thin body @@.red;was nearly incapable of birthing $his <<if _curBabies >1>>children<<else>>child<</if>>@@.
 		<<set _compoundCondition = 1>>
 	<<elseif $slaves[$i].weight <= -30>>
 		<br>
-		$possessiveCap thin body was @@.red;ill-suited $possessive childbirth@@.
+		$His thin body was @@.red;ill-suited $his childbirth@@.
 	<</if>>
 	<<if $slaves[$i].health < -20>>
 		<br>
-		$possessiveCap poor health made laboring @@.red;exhausting@@.
+		$His poor health made laboring @@.red;exhausting@@.
 		<<set _compoundCondition = 1>>
 	<</if>>
 	<<if $slaves[$i].physicalAge < 6>>
 		<br>
-		$possessiveCap very young body was @@.red;not designed to be able pass a <<if _curBabies >1>>babies<<else>>baby<</if>>@@.
+		$His very young body was @@.red;not designed to be able pass a <<if _curBabies >1>>babies<<else>>baby<</if>>@@.
 	<<elseif $slaves[$i].physicalAge < 9>>
 		<br>
-		$possessiveCap young body had @@.red;a lot of trouble@@ birthing $possessive <<if _curBabies >1>>babies<<else>>baby<</if>>.
+		$His young body had @@.red;a lot of trouble@@ birthing $his <<if _curBabies >1>>babies<<else>>baby<</if>>.
 	<<elseif $slaves[$i].physicalAge < 13>>
 		<br>
-		$possessiveCap young body had @@.red;trouble birthing@@ $possessive <<if _curBabies >1>>babies<<else>>baby<</if>>.
+		$His young body had @@.red;trouble birthing@@ $his <<if _curBabies >1>>babies<<else>>baby<</if>>.
 		<<set _compoundCondition = 1>>
 	<</if>>
 	<<if $slaves[$i].tired > 0>>
 		<br>
-		$pronounCap was so tired, $pronoun @@.red;lacked the energy to effectively push@@.
+		$He was so tired, $he @@.red;lacked the energy to effectively push@@.
 		<<set _compoundCondition = 1>>
 	<</if>>
 	<<if $slaves[$i].muscles < -95>>
 		<br>
-		$pronounCap tried and tried but $possessive frail body @@.red;could not push $possessive <<if _curBabies >1>>children<<else>>child<</if>> out@@.
+		$He tried and tried but $his frail body @@.red;could not push $his <<if _curBabies >1>>children<<else>>child<</if>> out@@.
 		<<set _compoundCondition = 1>>
 	<<elseif $slaves[$i].muscles < -30>>
 		<br>
-		$possessiveCap very weak body @@.red;barely managed to push@@ out $possessive <<if _curBabies >1>>children<<else>>child<</if>>.
+		$His very weak body @@.red;barely managed to push@@ out $his <<if _curBabies >1>>children<<else>>child<</if>>.
 		<<set _compoundCondition = 1>>
 	<<elseif $slaves[$i].muscles < -5>>
 		<br>
-		$possessiveCap weak body @@.red;struggled to push@@ out $possessive <<if _curBabies >1>>children<<else>>child<</if>>.
+		$His weak body @@.red;struggled to push@@ out $his <<if _curBabies >1>>children<<else>>child<</if>>.
 	<</if>>
 	<<if $slaves[$i].preg > 50>>
 		<br>
-		$possessiveCap's <<if _curBabies > 1>>children<<else>>child<</if>> had extra time to grow @@.red;greatly complicating childbirth@@.
+		$His's <<if _curBabies > 1>>children<<else>>child<</if>> had extra time to grow @@.red;greatly complicating childbirth@@.
 		<<set _compoundCondition = 1>>
 	<</if>>
 	<<if (($slaves[$i].vagina >= 2 || $slaves[$i].vaginaLube > 0) && $slaves[$i].mpreg == 1) || $slaves[$i].births > 0 || $slaves[$i].hips > 0 || (setup.nurseCareers.includes($slaves[$i].career) && $slaves[$i].fetish != "mindbroken" && $slaves[$i].muscles >= -95) || $slaves[$i].intelligenceImplant > 0>>
@@ -634,33 +634,33 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 		<<if $slaves[$i].mpreg == 1>>
 			<<if $slaves[$i].anus >= 2>>
 				<br>
-				$possessiveCap @@.green;loose ass@@ made birthing $possessive <<if _curBabies >1>>children<<else>>child<</if>> easier.
+				$His @@.green;loose ass@@ made birthing $his <<if _curBabies >1>>children<<else>>child<</if>> easier.
 			<</if>>
 		<<else>>
 			<<if $slaves[$i].vagina >= 2>>
 				<br>
-				$possessiveCap @@.green;loose vagina@@ made birthing $possessive <<if _curBabies >1>>children<<else>>child<</if>> easier.
+				$His @@.green;loose vagina@@ made birthing $his <<if _curBabies >1>>children<<else>>child<</if>> easier.
 			<</if>>
 			<<if $slaves[$i].vaginaLube > 0>>
 				<br>
-				$possessiveCap @@.green;moist vagina@@ hastened $possessive <<if _curBabies >1>>children's<<else>>child's<</if>> birth.
+				$His @@.green;moist vagina@@ hastened $his <<if _curBabies >1>>children's<<else>>child's<</if>> birth.
 			<</if>>
 		<</if>>
 		<<if $slaves[$i].laborCount > 0>>
 			<br>
-			$pronounCap has @@.green;given birth before@@, so $pronoun knows just what to do.
+			$He has @@.green;given birth before@@, so $he knows just what to do.
 		<</if>>
 		<<if $slaves[$i].hips > 0>>
 			<br>
-			$possessiveCap @@.green;wide hips@@ greatly aided childbirth.
+			$His @@.green;wide hips@@ greatly aided childbirth.
 		<</if>>
 		<<if setup.nurseCareers.includes($slaves[$i].career) && $slaves[$i].fetish != "mindbroken" && $slaves[$i].muscles >= -95>>
 			<br>
-			Thanks to $possessive @@.green;previous career@@, childbirth went smoothly.
+			Thanks to $his @@.green;previous career@@, childbirth went smoothly.
 		<</if>>
 		<<if $slaves[$i].intelligenceImplant > 0>>
 			<br>
-			$pronounCap was @@.green;taught how to handle birth@@ in class.
+			$He was @@.green;taught how to handle birth@@ in class.
 		<</if>>
 	<</if>>
 <</if>>
@@ -670,20 +670,20 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 <<if $slaves[$i].assignment != "work in the dairy" && $csec == 0>> /* && $slaves[$i].broodmother == 0 // removed - broodmother have sensations too */
 All in all,
 	<<if $birthDamage > 15>>
-		childbirth was @@.red;horrifically difficult for $object and nearly claimed $possessive lif.e@@
+		childbirth was @@.red;horrifically difficult for $him and nearly claimed $his lif.e@@
 	<<elseif $birthDamage > 10>>
-		childbirth was extremely difficult for $object and @@.red;greatly damaged $possessive health.@@
+		childbirth was extremely difficult for $him and @@.red;greatly damaged $his health.@@
 	<<elseif $birthDamage > 5>>
-		childbirth was difficult for $object and @@.red;damaged $possessive health.@@
+		childbirth was difficult for $him and @@.red;damaged $his health.@@
 	<<elseif $birthDamage > 0>>
-		childbirth was painful for $object, though not abnormally so, and @@.red;damaged $possessive health.@@
+		childbirth was painful for $him, though not abnormally so, and @@.red;damaged $his health.@@
 	<<else>>
-		childbirth was @@.green;no problem@@ for $object.
+		childbirth was @@.green;no problem@@ for $him.
 	<</if>>
 	<<if $birthDamage > 0>>
 		<<set $slaves[$i].health -= Math.round(($birthDamage/2)*10)>>
 		<<if $birthDamage > 5 && _compoundCondition == 1 && _curBabies > 0>>
-			Or it would have been, were $pronoun only having one. With each additional child that needed to be birthed, @@.red;the damage to $possessive health was compounded.@@
+			Or it would have been, were $he only having one. With each additional child that needed to be birthed, @@.red;the damage to $his health was compounded.@@
 			<<set $slaves[$i].health -= _curBabies>>
 		<</if>>
 	<</if>>
@@ -698,17 +698,17 @@ All in all,
 	<</if>>
 	<<if ($slaves[$i].devotion) < 20 && (($week-$slaves[$i].weekAcquired-$slaves[$i].pregWeek) > 0)>>
 		<br><br>
-		$pronounCap @@.mediumorchid;despises@@ you for using $object as a breeder.
+		$He @@.mediumorchid;despises@@ you for using $him as a breeder.
 		<<set $slaves[$i].devotion -= 10>>
 	<</if>>
 	<<if $slaves[$i].pregSource == -1>>
 		<<if $slaves[$i].devotion < 20 && $slaves[$i].weekAcquired > 0>>
 			<br>
-			$pronounCap @@.mediumorchid;hates@@ you for using $possessive body to bear your children.
+			$He @@.mediumorchid;hates@@ you for using $his body to bear your children.
 			<<set $slaves[$i].devotion -= 10>>
 		<<elseif $slaves[$i].devotion > 50>>
 			<br>
-			<<print $pronounCap>>'s @@.hotpink;so proud@@ to have successfully carried children for you.
+			<<print $He>>'s @@.hotpink;so proud@@ to have successfully carried children for you.
 			<<set $slaves[$i].devotion += 3>>
 		<</if>>
 	<</if>>
@@ -716,15 +716,15 @@ All in all,
 		<br><br>
 		Giving birth in such a manner was completely humiliating,
 		<<if $slaves[$i].fetish == "humiliation">>
-			and a complete turn on to $object. $possessiveCap humiliation fetish @@.lightcoral;strengthens@@ as $pronoun eagerly fantasizes about giving birth in public again.
+			and a complete turn on to $him. $His humiliation fetish @@.lightcoral;strengthens@@ as $he eagerly fantasizes about giving birth in public again.
 			<<set $slaves[$i].fetishStrength += 4>>
 		<<elseif $slaves[$i].fetish == "none" || $slaves[$i].fetishStrength <= 60>>
-			and a curious experience to $object. <<if random(1,5) == 1>>@@.lightcoral;$pronounCap has developed a humiliation fetish.@@<<set $slaves[$i].fetish = "humiliation">><<else>>$pronounCap hopes to never repeat it.<</if>>
+			and a curious experience to $him. <<if random(1,5) == 1>>@@.lightcoral;$heCap has developed a humiliation fetish.@@<<set $slaves[$i].fetish = "humiliation">><<else>>$heCap hopes to never repeat it.<</if>>
 		<<elseif $slaves[$i].devotion <= 20>>
-			and completely devastating to $possessive image of herself. The experience @@.hotpink;habituates $object@@ to cruelties of slavery.
+			and completely devastating to $his image of herself. The experience @@.hotpink;habituates $him@@ to cruelties of slavery.
 			<<set $slaves[$i].devotion += 5>>
 		<<else>>
-			and $pronoun hopes to never undergo it again.
+			and $he hopes to never undergo it again.
 		<</if>>
 	<</if>>	
 <</if>>
@@ -769,7 +769,7 @@ All in all,
 	<<set $mom = $slaves[$i]>>
 	<<set _identicalChildGen = 0, _shiftDegree = 0>>
 	<br><br>
-	Of $possessive _curBabies child<<if $slaves[$i].pregType > 1>>ren<</if>>; _cToIncub <<if $slaves[$i].reservedChildren > 1>>were<<else>>was<</if>> taken to $incubatorName.
+	Of $his _curBabies child<<if $slaves[$i].pregType > 1>>ren<</if>>; _cToIncub <<if $slaves[$i].reservedChildren > 1>>were<<else>>was<</if>> taken to $incubatorName.
 	<<for _k = 0; _k < _cToIncub; _k++>> 
 		<<if _identicalChildGen == 0>>
 			<<if _k == $slaves[$i].curBabies.length-1 && $slaves[$i].curBabies.length > 1 && $slaves[$i].curBabies[_k].identical == 1>> /* catch for improperly placed identical twin flag to still generate*/
@@ -802,7 +802,7 @@ All in all,
 	<<set _curBabies = $slaves[$i].curBabies.length>>
 	<br><br>
 	<<if _curBabies > 0>>
-		After sending $possessive reserved child<<if _cToIncub > 1>>ren<</if>> to $incubatorName, it's time to decide the fate of the other<<if _curBabies > 0>><</if>>.
+		After sending $his reserved child<<if _cToIncub > 1>>ren<</if>> to $incubatorName, it's time to decide the fate of the other<<if _curBabies > 0>><</if>>.
 	<</if>>
 <</if>>
 
@@ -815,20 +815,20 @@ All in all,
 	<<span $dispositionId>>
 	<<if $arcologies[0].FSRestart != "unset" && $slaves[$i].breedingMark == 1 && $slaves[$i].pregSource == -1>>
 		<<set _lostBabies = 1>>
-		$possessiveCap child<<if _curBabies > 1>>ren<</if>> are collected by the Societal Elite to be raised into upstanding members of the new society.
+		$His child<<if _curBabies > 1>>ren<</if>> are collected by the Societal Elite to be raised into upstanding members of the new society.
 	<<elseif $Cash4Babies == 1>>
 		<<set _lostBabies = 1>>
 		<<set _babyCost = random(-12,12)>>
 		<<if ($slaves[$i].relationship == -3)>>
-			You make sure $possessive children are cared for, since $pronoun is your wife. $slaves[$i].slaveName is @@.hotpink;touched@@ by this @@.mediumaquamarine;act of kindness.@@
+			You make sure $his children are cared for, since $he is your wife. $slaves[$i].slaveName is @@.hotpink;touched@@ by this @@.mediumaquamarine;act of kindness.@@
 			<<set $slaves[$i].trust += 3, $slaves[$i].devotion += 3>>
 			<<set _lostBabies = 0>>
 		<<elseif ($slaves[$i].assignment == "serve in the master suite" || $slaves[$i].assignment == "be your Concubine")>>
-			$possessiveCap children are guaranteed to be treated well despite the laws you've passed since $pronoun is a member of your harem. $slaves[$i].slaveName is @@.hotpink;touched@@ by this @@.mediumaquamarine;act of kindness.@@
+			$His children are guaranteed to be treated well despite the laws you've passed since $he is a member of your harem. $slaves[$i].slaveName is @@.hotpink;touched@@ by this @@.mediumaquamarine;act of kindness.@@
 			<<set $slaves[$i].trust += 3, $slaves[$i].devotion += 3>>
 			<<set _lostBabies = 0>>
 		<<else>>
-			$possessiveCap <<if _curBabies > 1>>babies<<else>>baby<</if>> sold for <<if _curBabies > 1>>a total of <</if>>@@.yellowgreen;<<print cashFormat(_curBabies*(50+_babyCost))>>.@@
+			$His <<if _curBabies > 1>>babies<<else>>baby<</if>> sold for <<if _curBabies > 1>>a total of <</if>>@@.yellowgreen;<<print cashFormat(_curBabies*(50+_babyCost))>>.@@
 			<<set $cash += _curBabies*(50+_babyCost)>>
 		<</if>>
 	<</if>>
@@ -836,12 +836,12 @@ All in all,
 		<<set $slaveOrphanageTotal += _curBabies>>
 		Unless you provide otherwise, the child<<if _curBabies > 1>>ren<</if>> will be remanded to one of $arcologies[0].name's slave orphanages. $slaves[$i].slaveName
 		<<if $slaves[$i].devotion > 95>>
-			worships you so completely that $pronoun will not resent this.
+			worships you so completely that $he will not resent this.
 		<<elseif $slaves[$i].devotion > 50>>
-			is devoted to you, but $pronoun will @@.mediumorchid;struggle to accept this.@@
+			is devoted to you, but $he will @@.mediumorchid;struggle to accept this.@@
 			<<set $slaves[$i].devotion -= 2>>
 		<<elseif $slaves[$i].devotion > 20>>
-			has accepted being a sex slave, but $pronoun will @@.mediumorchid;resent this intensely.@@
+			has accepted being a sex slave, but $he will @@.mediumorchid;resent this intensely.@@
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
 			will of course @@.mediumorchid;hate you for this.@@
@@ -854,15 +854,15 @@ All in all,
 				<<replace `"#" + $dispositionId`>>
 					The child<<if _count > 1>>ren are<<else>> is<</if>> sent to one of $arcologies[0].name's future minded schools, to be administered fertility and virility treatments as well as be brought up to take pride in reproduction. $slaves[$i].slaveName
 					<<if $slaves[$i].devotion > 95>>
-						loves you already, but <<print $pronoun>>'ll @@.hotpink;love you even more@@ for this. $pronounCap can't wait to see $possessive child<<if _count > 1>>ren<</if>> proudly furthering your cause.
+						loves you already, but <<print $he>>'ll @@.hotpink;love you even more@@ for this. $He can't wait to see $his child<<if _count > 1>>ren<</if>> proudly furthering your cause.
 						<<set $slaves[$i].devotion += 4>>
 					<<elseif $slaves[$i].devotion > 50>>
-						heard about these and will be @@.hotpink;happy that $possessive child<<if _count > 1>>ren<</if>> will have a purpose in your society other than slavery.@@ $pronounCap will miss $possessive child<<if _count > 1>>ren<</if>>, but $pronoun expected that.
+						heard about these and will be @@.hotpink;happy that $his child<<if _count > 1>>ren<</if>> will have a purpose in your society other than slavery.@@ $He will miss $his child<<if _count > 1>>ren<</if>>, but $he expected that.
 						<<set $slaves[$i].devotion += 4>>
 					<<elseif $slaves[$i].devotion > 20>>
-						will naturally miss $possessive child<<if _count > 1>>ren<</if>>, but will is broken enough to hope that $possessive offspring will have a better life, or at least an enjoyable one.
+						will naturally miss $his child<<if _count > 1>>ren<</if>>, but will is broken enough to hope that $his offspring will have a better life, or at least an enjoyable one.
 					<<else>>
-						will of course @@.mediumorchid;hate you for this.@@ The mere thought of $possessive $fertilityAge year old daughter<<if _count > 1>>s<</if>> swollen with life, and proud of it, fills $object with @@.gold;disdain.@@
+						will of course @@.mediumorchid;hate you for this.@@ The mere thought of $his $fertilityAge year old daughter<<if _count > 1>>s<</if>> swollen with life, and proud of it, fills $him with @@.gold;disdain.@@
 						<<set $slaves[$i].devotion -= 4, $slaves[$i].trust -= 4>>
 					<</if>>
 					<<set $breederOrphanageTotal += _count, $slaveOrphanageTotal -= _count>>
@@ -874,13 +874,13 @@ All in all,
 			<<replace `"#" + $dispositionId`>>
 				The child<<if _count > 1>>ren are<<else>> is<</if>> sent to one of $arcologies[0].name's citizen schools, to be brought up coequal with the arcology's other young people. $slaves[$i].slaveName
 				<<if $slaves[$i].devotion > 95>>
-					loves you already, but <<print $pronoun>>'ll @@.hotpink;love you even more@@ for this.
+					loves you already, but <<print $he>>'ll @@.hotpink;love you even more@@ for this.
 				<<elseif $slaves[$i].devotion > 50>>
-					knows about these and will be @@.hotpink;overjoyed.@@ $pronounCap will miss $possessive child<<if _count > 1>>ren<</if>>, but $pronoun expected that.
+					knows about these and will be @@.hotpink;overjoyed.@@ $He will miss $his child<<if _count > 1>>ren<</if>>, but $he expected that.
 				<<elseif $slaves[$i].devotion > 20>>
-					will naturally miss $possessive child<<if _count > 1>>ren<</if>>, but will @@.hotpink;take comfort@@ in the hope that $possessive offspring will have a better life.
+					will naturally miss $his child<<if _count > 1>>ren<</if>>, but will @@.hotpink;take comfort@@ in the hope that $his offspring will have a better life.
 				<<else>>
-					will naturally retain some resentment over being separated from $possessive child<<if _count > 1>>ren<</if>>, but this should be balanced by hope that $possessive offspring will have a better life.
+					will naturally retain some resentment over being separated from $his child<<if _count > 1>>ren<</if>>, but this should be balanced by hope that $his offspring will have a better life.
 				<</if>>
 				<<set $slaves[$i].devotion += 4, $citizenOrphanageTotal += _count, $slaveOrphanageTotal -= _count>>
 			<</replace>>
@@ -894,9 +894,9 @@ All in all,
 				<<elseif $slaves[$i].devotion > 50>>
 					understands that this is the best possible outcome for the offspring of slave, and will be @@.hotpink;overjoyed.@@
 				<<elseif $slaves[$i].devotion > 20>>
-					will miss $possessive child<<if _count > 1>>ren<</if>>, but will be @@.hotpink;very grateful,@@ since <<print $pronoun>>'ll understand this is the best possible outcome for a slave mother.
+					will miss $his child<<if _count > 1>>ren<</if>>, but will be @@.hotpink;very grateful,@@ since <<print $he>>'ll understand this is the best possible outcome for a slave mother.
 				<<else>>
-					will resent being separated from $possessive child<<if _count > 1>>ren<</if>>, but @@.hotpink;should understand and be grateful@@ that this is the best possible outcome here.
+					will resent being separated from $his child<<if _count > 1>>ren<</if>>, but @@.hotpink;should understand and be grateful@@ that this is the best possible outcome here.
 				<</if>>
 				The child<<if _count > 1>>ren<</if>> will be raised privately, with expert care and tutoring, an expensive proposition.
 				<<set $slaves[$i].devotion += 6, $privateOrphanageTotal += _count, $slaveOrphanageTotal -= _count>>
@@ -908,17 +908,17 @@ All in all,
 				| <<link 'Send them to auction'>>
 					<<replace `"#" + $dispositionId`>>
 						<<set _babyCost = random(-12,100)>>
-						$possessiveCap <<if _count > 1>>babies<<else>>baby<</if>> went for a <<if _curBabies > 1>>total <</if>>bid of @@.yellowgreen;<<print cashFormat(_count*(50+_babyCost))>>.@@
+						$His <<if _count > 1>>babies<<else>>baby<</if>> went for a <<if _curBabies > 1>>total <</if>>bid of @@.yellowgreen;<<print cashFormat(_count*(50+_babyCost))>>.@@
 						<<if $slaves[$i].devotion > 95>>
-							$pronounCap adheres to your thoughts so strongly that even though you backed out of caring for $possessive child<<if _count > 1>>ren<</if>>, $pronoun still truly believes you are doing $object an honor.
+							$He adheres to your thoughts so strongly that even though you backed out of caring for $his child<<if _count > 1>>ren<</if>>, $he still truly believes you are doing $him an honor.
 						<<elseif $slaves[$i].devotion > 50>>
-							$pronounCap is @@.mediumorchid;deeply hurt@@ by your sudden decision to sell $possessive child<<if _count > 1>>ren<</if>> instead of having <<if _count > 1>>them<<else>>it<</if>> cared for. $possessiveCap trust in your words @@.gold;wavers@@ as $pronoun thinks of $possessive child<<if _count > 1>>ren<</if>>'s future.
+							$He is @@.mediumorchid;deeply hurt@@ by your sudden decision to sell $his child<<if _count > 1>>ren<</if>> instead of having <<if _count > 1>>them<<else>>it<</if>> cared for. $His trust in your words @@.gold;wavers@@ as $he thinks of $his child<<if _count > 1>>ren<</if>>'s future.
 							<<set $slaves[$i].trust -= 5, $slaves[$i].devotion -= 5>>
 						<<elseif $slaves[$i].devotion > 20>>
-							$pronounCap is @@.mediumorchid;devastated@@ by your sudden decision to sell $possessive child<<if _count > 1>>ren<</if>> instead of having <<if _count > 1>>them<<else>>it<</if>> cared for. $possessiveCap mind struggles to comprehend @@.gold;such betrayal.@@
+							$He is @@.mediumorchid;devastated@@ by your sudden decision to sell $his child<<if _count > 1>>ren<</if>> instead of having <<if _count > 1>>them<<else>>it<</if>> cared for. $His mind struggles to comprehend @@.gold;such betrayal.@@
 							<<set $slaves[$i].trust -= 10, $slaves[$i].devotion -= 10>>
 						<<else>>
-							For a moment, $pronoun saw a glimmer of good in you; @@.mediumorchid;$pronoun was clearly wrong.@@ $possessiveCap mind struggles to comprehend @@.gold;why $pronoun could ever even thing of trusting such a person.@@
+							For a moment, $he saw a glimmer of good in you; @@.mediumorchid;$he was clearly wrong.@@ $His mind struggles to comprehend @@.gold;why $he could ever even thing of trusting such a person.@@
 							<<set $slaves[$i].trust -= 30, $slaves[$i].devotion -= 30>>
 						<</if>>
 						<<set $cash += _curBabies*(50+_babyCost)>>
@@ -928,17 +928,17 @@ All in all,
 				| <<link 'Sell them anyway'>>
 					<<replace `"#" + $dispositionId`>>
 						<<set _babyCost = random(-12,12)>>
-						$possessiveCap <<if _count > 1>>babies<<else>>baby<</if>> sold for <<if _curBabies > 1>>a total of <</if>>@@.yellowgreen;<<print cashFormat(_count*(50+_babyCost))>>.@@
+						$His <<if _count > 1>>babies<<else>>baby<</if>> sold for <<if _curBabies > 1>>a total of <</if>>@@.yellowgreen;<<print cashFormat(_count*(50+_babyCost))>>.@@
 						<<if $slaves[$i].devotion > 95>>
-							$pronounCap adheres to your thoughts so strongly that even though you backed out of caring for $possessive child<<if _count > 1>>ren<</if>>, $pronoun still truly believes you are doing $object an honor.
+							$He adheres to your thoughts so strongly that even though you backed out of caring for $his child<<if _count > 1>>ren<</if>>, $he still truly believes you are doing $him an honor.
 						<<elseif $slaves[$i].devotion > 50>>
-							$pronounCap is @@.mediumorchid;deeply hurt@@ by your sudden decision to sell $possessive child<<if _count > 1>>ren<</if>> instead of having <<if _count > 1>>them<<else>>it<</if>> cared for. $possessiveCap trust in your words @@.gold;wavers@@ as $pronoun thinks of $possessive child<<if _count > 1>>ren<</if>>'s future.
+							$He is @@.mediumorchid;deeply hurt@@ by your sudden decision to sell $his child<<if _count > 1>>ren<</if>> instead of having <<if _count > 1>>them<<else>>it<</if>> cared for. $His trust in your words @@.gold;wavers@@ as $he thinks of $his child<<if _count > 1>>ren<</if>>'s future.
 							<<set $slaves[$i].trust -= 5, $slaves[$i].devotion -= 5>>
 						<<elseif $slaves[$i].devotion > 20>>
-							$pronounCap is @@.mediumorchid;devastated@@ by your sudden decision to sell $possessive child<<if _count > 1>>ren<</if>> instead of having <<if _count > 1>>them<<else>>it<</if>> cared for. $possessiveCap mind struggles to comprehend @@.gold;such betrayal.@@
+							$He is @@.mediumorchid;devastated@@ by your sudden decision to sell $his child<<if _count > 1>>ren<</if>> instead of having <<if _count > 1>>them<<else>>it<</if>> cared for. $His mind struggles to comprehend @@.gold;such betrayal.@@
 							<<set $slaves[$i].trust -= 10, $slaves[$i].devotion -= 10>>
 						<<else>>
-							For a moment, $pronoun saw a glimmer of good in you; @@.mediumorchid;$pronoun was clearly wrong.@@ $possessiveCap mind struggles to comprehend @@.gold;why $pronoun could ever even thing of trusting such a person.@@
+							For a moment, $he saw a glimmer of good in you; @@.mediumorchid;$he was clearly wrong.@@ $His mind struggles to comprehend @@.gold;why $he could ever even thing of trusting such a person.@@
 							<<set $slaves[$i].trust -= 30, $slaves[$i].devotion -= 30>>
 						<</if>>
 						<<set $cash += _curBabies*(50+_babyCost)>>
@@ -952,7 +952,7 @@ All in all,
 <<elseif $Cash4Babies == 1 && _curBabies > 0>>
 	<br><br>
 	<<set _babyCost = random(-12,12)>>
-	$possessiveCap <<if _curBabies > 1>>babies<<else>>baby<</if>> sold <<if _curBabies > 1>>a total of <</if>>@@.yellowgreen;<<print cashFormat(_curBabies*(50+_babyCost))>>.@@
+	$His <<if _curBabies > 1>>babies<<else>>baby<</if>> sold <<if _curBabies > 1>>a total of <</if>>@@.yellowgreen;<<print cashFormat(_curBabies*(50+_babyCost))>>.@@
 	<<set $cash += _curBabies*(50+_babyCost)>>
 <</if>>
 
@@ -998,9 +998,9 @@ All in all,
 
 <<if $slaves[$i].health <= -100>>
 	<br><br>
-	While attempting to recover, $slaves[$i].slaveName @@.red;passes away@@ from complications. $possessiveCap body was fatally damaged during childbirth.
+	While attempting to recover, $slaves[$i].slaveName @@.red;passes away@@ from complications. $His body was fatally damaged during childbirth.
 	<<if _curBabies > 0>> /* this needs to include ALL children born fom this batch, incubated ones included. */
-		But $possessive offspring <<if _curBabies > 1>>are<<else>>if<</if>> healthy, so $possessive legacy will carry on.
+		But $his offspring <<if _curBabies > 1>>are<<else>>if<</if>> healthy, so $his legacy will carry on.
 	<</if>>
 	<<set $activeSlave = $slaves[$i]>>
 	<<include "Remove activeSlave">>
diff --git a/src/uncategorized/bodyModification.tw b/src/uncategorized/bodyModification.tw
index ee6a1c5aba8..96865dd557b 100644
--- a/src/uncategorized/bodyModification.tw
+++ b/src/uncategorized/bodyModification.tw
@@ -9,14 +9,14 @@
 
 <h1>Body Modification Studio</h1>
 
-<<= SlaveFullName($activeSlave)>> is lying strapped down on the table in your body modification studio. $pronounCap is entirely at your mercy.
+<<= SlaveFullName($activeSlave)>> is lying strapped down on the table in your body modification studio. $He is entirely at your mercy.
 
 <<if $brandApplied || $degradation>>
 	<<if $activeSlave.fuckdoll == 0>>
-		<<if canSee($activeSlave)>>There's a mirror on the ceiling, so $pronoun can see her<<else>>$pronounCap can't see, so you're careful to describe $possessive<</if>> new appearance.
+		<<if canSee($activeSlave)>>There's a mirror on the ceiling, so $he can see<<else>>$He can't see, so you're careful to describe<</if>> $his new appearance.
 	<</if>>
 	<<if $brandApplied>>
-		The smell of burnt flesh hangs in the air. Being branded @@.red;has hurt $possessive health a little.@@
+		The smell of burnt flesh hangs in the air. Being branded @@.red;has hurt $his health a little.@@
 		<<set $activeSlave.health -= 10>>
 		<<unset $brandApplied>>
 	<</if>>
@@ -24,25 +24,25 @@
 	<<if $degradation > 1>>
 		<<if $degradation > 5>>
 			<<if $activeSlave.devotion <= 50 && $activeSlave.trust < -50>>
-				$pronounCap is appalled by the whorish spectacle you have made of $object. $pronounCap @@.gold;fears@@ you all the more for this but is so terrified of you it does not affect $possessive submission.
+				$He is appalled by the whorish spectacle you have made of $him. $He @@.gold;fears@@ you all the more for this but is so terrified of you it does not affect $his submission.
 				<<set $activeSlave.trust -= 10>>
 			<<elseif $activeSlave.devotion <= 50>>
-				$pronounCap is appalled by the whorish spectacle you have made of $object. $pronounCap @@.mediumorchid;hates@@ and @@.gold;fears@@ you for this.
+				$He is appalled by the whorish spectacle you have made of $him. $He @@.mediumorchid;hates@@ and @@.gold;fears@@ you for this.
 				<<set $activeSlave.devotion -= 10, $activeSlave.trust -= 10>>
 			<<else>>
-				$pronounCap is shocked by the whorish spectacle you have made of $object. However, $pronoun is so submissive to your will that $pronoun @@.hotpink;accepts@@ that the slave <<if canSee($activeSlave)>>in the mirror<<else>>$pronoun pictures<</if>> is who $pronoun is now.
+				$He is shocked by the whorish spectacle you have made of $him. However, $he is so submissive to your will that $he @@.hotpink;accepts@@ that the slave <<if canSee($activeSlave)>>in the mirror<<else>>$pronoun pictures<</if>> is who $he is now.
 				<<set $activeSlave.devotion += 4>>
 			<</if>>
 			<br><br>
 		<<else>>
 			<<if $activeSlave.devotion < -20 && $activeSlave.trust < 20>>
-				$pronounCap is @@.gold;afraid@@ that $pronoun has been permanently altered against $possessive will, but is also scared of your reaction to any objection and suppresses $possessive disgust.
+				$He is @@.gold;afraid@@ that $he has been permanently altered against $his will, but is also scared of your reaction to any objection and suppresses $his disgust.
 				<<set $activeSlave.trust -= 5>>
 			<<elseif $activeSlave.devotion < -20>>
-				$pronounCap is @@.mediumorchid;angry@@ and @@.gold;afraid@@ that $pronoun has been permanently altered against $possessive will.
+				$He is @@.mediumorchid;angry@@ and @@.gold;afraid@@ that $he has been permanently altered against $his will.
 				<<set $activeSlave.devotion -= 5, $activeSlave.trust -= 5>>
 			<<else>>
-				$pronounCap is saddened to have been altered against $possessive will. However, $pronoun realizes that $pronoun is a slave, so $pronoun @@.hotpink;accepts@@ your work.
+				$He is saddened to have been altered against $his will. However, $he realizes that $he is a slave, so $he @@.hotpink;accepts@@ your work.
 				<<set $activeSlave.devotion += 4>>
 			<</if>>
 		<</if>>
@@ -53,18 +53,18 @@
 		<<if $activeSlave.fetishKnown>>
 			<<if $activeSlave.fetishStrength > 10>>
 			<<if $activeSlave.fetish == "cumslut">>
-				Since $pronoun's an oral whore, $pronoun's
+				Since $he's an oral whore, $he's
 				<<if $activeSlave.tonguePiercing > _slaveBeforeSession.tonguePiercing>>
-					<<if $activeSlave.tonguePiercing > 1>>@@.hotpink;very happy@@ you took the time to personally pierce $possessive tongue so heavily<<else>>@@.hotpink;happy@@ to get a tongue piercing from you personally<</if>>. After all, $pronoun's pretty sure it's a sign there will be plenty of <<if $PC.dick>>dick for $object to suck<<else>>pussy for $object to eat<</if>> in the future.
+					<<if $activeSlave.tonguePiercing > 1>>@@.hotpink;very happy@@ you took the time to personally pierce $his tongue so heavily<<else>>@@.hotpink;happy@@ to get a tongue piercing from you personally<</if>>. After all, $he's pretty sure it's a sign there will be plenty of <<if $PC.dick>>dick for $him to suck<<else>>pussy for $him to eat<</if>> in the future.
 					<<set $activeSlave.devotion += ($activeSlave.tonguePiercing-_slaveBeforeSession.tonguePiercing)*2>>
 				<<elseif $activeSlave.devotion <= 95>>
-					@@.mediumorchid;saddened@@ you decided to take out $possessive tongue piercings yourself. $pronounCap's afraid this means something about $possessive future as a suck slut.
+					@@.mediumorchid;saddened@@ you decided to take out $his tongue piercings yourself. $He's afraid this means something about $his future as a suck slut.
 					<<set $activeSlave.devotion += ($activeSlave.tonguePiercing-_slaveBeforeSession.tonguePiercing)*2>>
 				<</if>>
 			<</if>>
 			<</if>>
 			<<if $activeSlave.sexualFlaw == "hates oral">>
-				$pronounCap has trouble thinking of her mouth as a warm, wet, playful hole, so her new piercings will be therapeutic. Having something to suck on at all times should force her past her hangups.
+				$He has trouble thinking of $his mouth as a warm, wet, playful hole, so $his new piercings will be therapeutic. Having something to suck on at all times should force $him past $his hangups.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -72,12 +72,12 @@
 		<<if $activeSlave.fetishKnown>>
 		<<if $activeSlave.fetishStrength > 10>>
 		<<if $activeSlave.fetish == "boobs">>
-			Since $pronoun's fixated on $possessive boobs, $pronoun's
+			Since $he's fixated on $his boobs, $he's
 			<<if $activeSlave.nipplesPiercing+$activeSlave.areolaePiercing > _slaveBeforeSession.nipplesPiercing+_slaveBeforeSession.areolaePiercing>>
-				<<if $activeSlave.nipplesPiercing+$activeSlave.areolaePiercing > 2>>@@.hotpink;very happy@@ you took the time to personally pierce them so heavily<<else>>@@.hotpink;happy@@ to get nipple piercings from you personally<</if>>. As far as $pronoun's concerned, more attention on $possessive tits is always good.
+				<<if $activeSlave.nipplesPiercing+$activeSlave.areolaePiercing > 2>>@@.hotpink;very happy@@ you took the time to personally pierce them so heavily<<else>>@@.hotpink;happy@@ to get nipple piercings from you personally<</if>>. As far as $he's concerned, more attention on $his tits is always good.
 				<<set $activeSlave.devotion += ($activeSlave.nipplesPiercing+$activeSlave.areolaePiercing-_slaveBeforeSession.nipplesPiercing-_slaveBeforeSession.areolaePiercing)*2>>
 			<<elseif $activeSlave.devotion <= 95>>
-				@@.mediumorchid;saddened@@ you decided to take out $possessive nipple piercings yourself. $pronounCap doesn't like anything that makes $possessive tits less distinctive.
+				@@.mediumorchid;saddened@@ you decided to take out $his nipple piercings yourself. $He doesn't like anything that makes $his tits less distinctive.
 				<<set $activeSlave.devotion += ($activeSlave.tonguePiercing-_slaveBeforeSession.tonguePiercing)*2>>
 			<</if>>
 		<</if>>
@@ -88,12 +88,12 @@
 		<<if $activeSlave.fetishKnown>>
 		<<if $activeSlave.fetishStrength > 10>>
 		<<if $activeSlave.fetish == "masochist">>
-			Since $pronoun's a pain whore,
+			Since $he's a pain whore,
 			<<if $activeSlave.corsetPiercing > _slaveBeforeSession.corsetPiercing>>
-				$pronoun @@.hotpink;got off on@@ you giving $possessive a corset piercing personally. $pronounCap loved the feeling of the metal entering $possessive flesh.
+				$he @@.hotpink;got off on@@ you giving $his a corset piercing personally. $He loved the feeling of the metal entering $his flesh.
 				<<set $activeSlave.devotion += ($activeSlave.corsetPiercing-_slaveBeforeSession.corsetPiercing)*2>>
 			<<elseif $activeSlave.devotion <= 95>>
-				 $pronoun's @@.mediumorchid;saddened@@ you decided to take out $possessive corset piercings yourself. $pronounCap'll miss the constant slight discomfort they gave $object.
+				 $he's @@.mediumorchid;saddened@@ you decided to take out $his corset piercings yourself. $He'll miss the constant slight discomfort they gave $him.
 				<<set $activeSlave.devotion += ($activeSlave.corsetPiercing-_slaveBeforeSession.corsetPiercing)*2>>
 			<</if>>
 		<</if>>
@@ -104,18 +104,18 @@
 		<<if $activeSlave.fetishKnown>>
 			<<if $activeSlave.fetishStrength > 10>>
 			<<if $activeSlave.fetish == "pregnancy">>
-				Since $pronoun's a whore for impregnation, $pronoun's
+				Since $he's a whore for impregnation, $he's
 				<<if $activeSlave.vaginaPiercing > _slaveBeforeSession.vaginaPiercing>>
-					<<if $activeSlave.vaginaPiercing > 1>>@@.hotpink;very happy@@ you took the time to personally pierce $possessive pussylips so heavily<<else>>@@.hotpink;happy@@ to get pussy piercings from you personally<</if>>. Like most pregnancy fetishists, $pronoun's a little desperate for dick, and anything that points towards more bareback sex is appealing to $object.
+					<<if $activeSlave.vaginaPiercing > 1>>@@.hotpink;very happy@@ you took the time to personally pierce $his pussylips so heavily<<else>>@@.hotpink;happy@@ to get pussy piercings from you personally<</if>>. Like most pregnancy fetishists, $he's a little desperate for dick, and anything that points towards more bareback sex is appealing to $him.
 					<<set $activeSlave.devotion += ($activeSlave.vaginaPiercing-_slaveBeforeSession.vaginaPiercing)*2>>
 				<<elseif $activeSlave.devotion <= 95>>
-					@@.mediumorchid;saddened@@ you decided to take out $possessive pussy piercings yourself. Like most pregnancy fetishists, $pronoun's a little desperate for dick, and $pronoun's afraid of anything that points towards less attention focused on $possessive cunt.
+					@@.mediumorchid;saddened@@ you decided to take out $his pussy piercings yourself. Like most pregnancy fetishists, $he's a little desperate for dick, and $he's afraid of anything that points towards less attention focused on $his cunt.
 					<<set $activeSlave.devotion += ($activeSlave.vaginaPiercing-_slaveBeforeSession.vaginaPiercing)*2>>
 				<</if>>
 			<</if>>
 			<</if>>
 			<<if $activeSlave.sexualFlaw == "hates penetration">>
-				$pronounCap has trouble thinking of her vagina as a fuckhole rather than something special to protect and cherish, so her new piercings will be therapeutic. The constant, inescapable stimulation of her labia should force her past her hangups.
+				$He has trouble thinking of her vagina as a fuckhole rather than something special to protect and cherish, so her new piercings will be therapeutic. The constant, inescapable stimulation of her labia should force her past her hangups.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -123,12 +123,12 @@
 		<<if $activeSlave.fetishKnown>>
 		<<if $activeSlave.fetishStrength > 10>>
 		<<if $activeSlave.fetish == "pregnancy">>
-			Since $pronoun's fixated on using $possessive cock to impregnate other slaves, $pronoun's
+			Since $he's fixated on using $his cock to impregnate other slaves, $he's
 			<<if $activeSlave.dickPiercing > _slaveBeforeSession.dickPiercing>>
-				<<if $activeSlave.dickPiercing > 1>>@@.hotpink;very happy@@ you took the time to personally stick so much metal into $possessive dick<<if $activeSlave.scrotum>> and ballsack<</if>><<else>>@@.hotpink;happy@@ to get penis piercings from you personally<</if>>. $pronounCap's extremely proud of $possessive newly decorated member.
+				<<if $activeSlave.dickPiercing > 1>>@@.hotpink;very happy@@ you took the time to personally stick so much metal into $his dick<<if $activeSlave.scrotum>> and ballsack<</if>><<else>>@@.hotpink;happy@@ to get penis piercings from you personally<</if>>. $He's extremely proud of $his newly decorated member.
 				<<set $activeSlave.devotion += ($activeSlave.dickPiercing-_slaveBeforeSession.dickPiercing)*2>>
 			<<elseif $activeSlave.devotion <= 95>>
-				@@.mediumorchid;saddened@@ you decided to take out $possessive dick<<if $activeSlave.scrotum>> and ballsack<</if>> piercings yourself. $pronounCap passionately loves using $possessive penis, and $pronoun's concerned you're planning to let $object do less of that.
+				@@.mediumorchid;saddened@@ you decided to take out $his dick<<if $activeSlave.scrotum>> and ballsack<</if>> piercings yourself. $He passionately loves using $his penis, and $he's concerned you're planning to let $him do less of that.
 				<<set $activeSlave.devotion += ($activeSlave.dickPiercing-_slaveBeforeSession.dickPiercing)*2>>
 			<</if>>
 		<</if>>
@@ -139,39 +139,39 @@
 		<<if $activeSlave.fetishKnown>>
 			<<if $activeSlave.fetishStrength > 10>>
 			<<if $activeSlave.fetish == "cumslut">>
-				Since $pronoun's an anal slut, $pronoun's
+				Since $he's an anal slut, $he's
 				<<if $activeSlave.anusPiercing > _slaveBeforeSession.anusPiercing>>
-					<<if $activeSlave.anusPiercing > 1>>@@.hotpink;very happy@@ you took the time to personally pierce the entire area around $possessive whorish asspussy<<else>>@@.hotpink;happy@@ to get a piercing next to $possessive favorite hole from you personally<</if>>. $pronounCap can't wait to find out how the metal will feel against $possessive butthole when $pronoun moves around.
+					<<if $activeSlave.anusPiercing > 1>>@@.hotpink;very happy@@ you took the time to personally pierce the entire area around $his whorish asspussy<<else>>@@.hotpink;happy@@ to get a piercing next to $his favorite hole from you personally<</if>>. $He can't wait to find out how the metal will feel against $his butthole when $he moves around.
 					<<set $activeSlave.devotion += ($activeSlave.anusPiercing-_slaveBeforeSession.anusPiercing)*2>>
 				<<elseif $activeSlave.devotion <= 95>>
-					@@.mediumorchid;saddened@@ you decided to take out $possessive backdoor piercings yourself. $pronounCap will miss the constant anal titillation, and $pronoun's worried this means you're becoming less interested in her butthole.
+					@@.mediumorchid;saddened@@ you decided to take out $his backdoor piercings yourself. $He will miss the constant anal titillation, and $he's worried this means you're becoming less interested in her butthole.
 					<<set $activeSlave.devotion += ($activeSlave.anusPiercing-_slaveBeforeSession.anusPiercing)*2>>
 				<</if>>
 			<</if>>
 			<</if>>
 			<<if $activeSlave.sexualFlaw == "hates anal">>
-				$pronounCap has trouble thinking of her asshole as a sexy, fuckable hole, so her new piercings will be therapeutic. The constant tickling back there should force her past her hangups.
+				$He has trouble thinking of $his asshole as a sexy, fuckable hole, so $his new piercings will be therapeutic. The constant tickling back there should force her past her hangups.
 			<</if>>
 		<</if>>
 	<</if>>
 	<<if $activeSlave.genes == "XY">>
 	<<if $activeSlave.attrXY <= 35>>
 	<<if $activeSlave.earPiercing+$activeSlave.nosePiercing+$activeSlave.eyebrowPiercing+$activeSlave.lipsPiercing+$activeSlave.navelPiercing > _slaveBeforeSession.earPiercing+_slaveBeforeSession.nosePiercing+_slaveBeforeSession.eyebrowPiercing+_slaveBeforeSession.lipsPiercing+_slaveBeforeSession.navelPiercing>>
-		$possessiveCap girly new
+		$His girly new
 		<<if $activeSlave.nosePiercing == 1 && _slaveBeforeSession.nosePiercing == 0>>
-			pierced ears should help $object a little with $possessive issues about $possessive self-image as a fuckable slave girl.
+			pierced ears should help $him a little with $his issues about $his self-image as a fuckable slave girl.
 		<<elseif $activeSlave.nosePiercing == 1 && _slaveBeforeSession.nosePiercing == 0>>
-			nose piercing should make $possessive reflection in the mirror seem just a bit more fuckably feminine to $object.
+			nose piercing should make $his reflection in the mirror seem just a bit more fuckably feminine to $him.
 		<<elseif $activeSlave.eyebrowPiercing == 1 && _slaveBeforeSession.eyebrowPiercing == 0>>
-			facial piercing should help destroy $possessive vestiges of sexual identity outside of her life as a hole for cocks.
+			facial piercing should help destroy $his vestiges of sexual identity outside of $his life as a hole for cocks.
 		<<elseif $activeSlave.lipsPiercing == 1 && _slaveBeforeSession.lipsPiercing == 0>>
-			facial piercing, just below $possessive pretty mouth, should help $object get used to the idea of it being a warm, wet hole for cocks.
+			facial piercing, just below $his pretty mouth, should help $him get used to the idea of it being a warm, wet hole for cocks.
 		<<elseif $activeSlave.navelPiercing == 1 && _slaveBeforeSession.navelPiercing == 0>>
-			navel piercing should help $possessive see $possessive naked body in a submissively sexual way, especially as $object turns to hide it and present $possessive asspussy.
+			navel piercing should help $his see $his naked body in a submissively sexual way, especially as $him turns to hide it and present $his asspussy.
 		<<else>>
-			new set of slutty facial piercings should help $object get used to the idea of being a girly slave meant to please dicks.
+			new set of slutty facial piercings should help $him get used to the idea of being a girly slave meant to please dicks.
 		<</if>>
-		<<if $activeSlave.devotion < -20>>Unfortunately, that positive effect will have to wait until $pronoun's a little less resistant to the idea of being a sex slave.<</if>>
+		<<if $activeSlave.devotion < -20>>Unfortunately, that positive effect will have to wait until $he's a little less resistant to the idea of being a sex slave.<</if>>
 	<</if>>
 	<</if>>
 	<</if>>
@@ -188,130 +188,130 @@
 			<<set _anus = "tight butthole">>
 		<</if>>
 		<<if $activeSlave.anusTat == "bleached">>
-			She knew she was getting her ass bleached, of course. The stinging sensation was hard to miss. Even so, she cranes her neck around as soon as possible to look at her _anus in the mirror.
+			$He knew $he was getting $his ass bleached, of course. The stinging sensation was hard to miss. Even so, $he cranes her neck around as soon as possible to look at her _anus in the mirror.
 		<<else>>
-			$pronounCap knew she was getting her asshole tattooed, of course. She cranes her neck around as soon as possible to look at her _anus in the mirror.
-			<<if $activeSlave.butt > 5>>Her huge buttocks are still held apart by the spreaders used to give the tattooing actuators access to her most intimate area, giving her a good view.<</if>>
+			$He knew $he was getting $his asshole tattooed, of course. $He cranes her neck around as soon as possible to look at her _anus in the mirror.
+			<<if $activeSlave.butt > 5>>$His huge buttocks are still held apart by the spreaders used to give the tattooing actuators access to her most intimate area, giving her a good view.<</if>>
 		<</if>>
 		<<if $activeSlave.fetishKnown && $activeSlave.fetish == "buttslut">>
 			<<switch $activeSlave.anusTat>>
 			<<case "bleached">>
-				She giggles at her crinkled fuckhole's clean, fuckable appearance, and starts squeezing her sphincter muscles experimentally. "Thank you, <<Master>>," she gasps, flushing.
+				$He giggles at $his crinkled fuckhole's clean, fuckable appearance, and starts squeezing her sphincter muscles experimentally. "Thank you, <<Master>>," $he gasps, flushing.
 			<<case "flowers" "tribal patterns">>
-				She gasps at the beautiful design and then suddenly bursts into tears. "T-thank you, <<Master>>," she blubbers. "I'm <<s>>-<<s>>uch an anal whore."
+				$He gasps at the beautiful design and then suddenly bursts into tears. "T-thank you, <<Master>>," $he blubbers. "I'm <<s>>-<<s>>uch an anal whore."
 			<<case "advertisements">>
-				She stares, her mouth working as she spells out
+				$He stares, her mouth working as $he spells out
 				<<if ($activeSlave.vagina > -1)>>
-					'Second Pussy.' She smiles naughtily. "<<Master>>, it'<<s>> my //favorite// pu<<ss>>y,"
+					'Second Pussy.' $He smiles naughtily. "<<Master>>, it'<<s>> my //favorite// pu<<ss>>y,"
 				<<else>>
-					'Spit First.' She smiles naughtily. "<<Master>>, that work<<s>> for me. Lube'<<s>> good too. Or, um, dry'<<s>> fine too,"
+					'Spit First.' $He smiles naughtily. "<<Master>>, that work<<s>> for me. Lube'<<s>> good too. Or, um, dry'<<s>> fine too,"
 				<</if>>
-				she giggles.
+				$he giggles.
 			<<case "rude words">>
-				She stares, her mouth working as she spells out
+				$He stares, her mouth working as $he spells out
 				<<if ($activeSlave.vagina > -1)>>
-					'Fucktoy's Favorite Fuckhole.' She smiles naughtily. "<<Master>>, it sure i<<s>>,"
+					'Fucktoy's Favorite Fuckhole.' $He smiles naughtily. "<<Master>>, it sure i<<s>>,"
 				<<else>>
-					'Sissy Slut's Sodomy Slit.' She smiles naughtily. "<<Master>>, I love it when you fuck my lewd butt <<s>>lit,"
+					'Sissy Slut's Sodomy Slit.' $He smiles naughtily. "<<Master>>, I love it when you fuck my lewd butt <<s>>lit,"
 				<</if>>
-				she giggles.
+				$he giggles.
 			<<case "sacrilege">>
-				She stares, her mouth working as she reads the ring of Aramaic blasphemy around her hole. Getting it, she smiles naughtily. "<<Master>>, I'm a horrible little butthole <<s>>uccubu<<s>>. Plea<<s>>e, <<Master>>, feed me. I need cum in my a<<ss>> to <<s>>urvive."
+				$He stares, her mouth working as $he reads the ring of Aramaic blasphemy around her hole. Getting it, $he smiles naughtily. "<<Master>>, I'm a horrible little butthole <<s>>uccubu<<s>>. Plea<<s>>e, <<Master>>, feed me. I need cum in my a<<ss>> to <<s>>urvive."
 			<<case "sacrament">>
-				She stares, her mouth working as she reads the ring of Aramaic around her hole. Getting it, she smiles beatifically. "<<Master>>, I alway<<s>> knew butt<<s>>e<<x>> was a <<s>>acrament."
+				$He stares, her mouth working as $he reads the ring of Aramaic around her hole. Getting it, $he smiles beatifically. "<<Master>>, I alway<<s>> knew butt<<s>>e<<x>> was a <<s>>acrament."
 			<<case "degradation">>
-				She stares, her mouth working as she spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Made Me An Anal Slut.' She smiles naughtily. "Oh <<Master>>, you did," she <<say>>s gratefully. "And I love you for it."
+				$He stares, her mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Made Me An Anal Slut.' $He smiles naughtily. "Oh <<Master>>, you did," $he <<say>>s gratefully. "And I love you for it."
 			<<case "counting">>
-				She stares, realizing that the markings denote how many times she's been sodomized. "<<Master>>, thank you, and, and, I hope I'll have to come back in here a lot," she <<say>>s. "Um, becau<<s>>e I have to have that updated. Because I'm being fucked in the butt a lot," she adds, wanting to be completely clear.
+				$He stares, realizing that the markings denote how many times $he's been sodomized. "<<Master>>, thank you, and, and, I hope I'll have to come back in here a lot," $he <<say>>s. "Um, becau<<s>>e I have to have that updated. Because I'm being fucked in the butt a lot," $he adds, wanting to be completely clear.
 			<<case "bovine patterns">>
-				She stares at her new cow's anus. Finally, she focuses on the upsides of being permanently transformed like this. "<<Master>>, I hope thi<<s>> mean<<s>> I'll have to be fed up the butt a lot," she <<say>>s, referencing the milking systems' anal feeders.
+				$He stares at $his new cow's anus. Finally, $he focuses on the upsides of being permanently transformed like this. "<<Master>>, I hope thi<<s>> mean<<s>> I'll have to be fed up the butt a lot," $he <<say>>s, referencing the milking systems' anal feeders.
 			<<case "possessive">>
-				She stares, realizing that the ring of numbers around $possessive anus give the date she was enslaved by you. "Be<<s>t place for that date, <<Master>>," she <<say>>s. "Being a butt <<s>>lut i<<s>> my life now."
+				$He stares, realizing that the ring of numbers around $his anus give the date $he was enslaved by you. "Be<<s>t place for that date, <<Master>>," $he <<say>>s. "Being a butt <<s>>lut i<<s>> my life now."
 			<<case "paternalist">>
-				She stares, her mouth working as she spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Helped Me Love Anal.' "Oh <<Master>>, you did," she coos. "You did! Thank you <<s>>o much for helping me become the anal <<s>>lut I wa<<s>> alway<<s>> meant to be!"
+				$He stares, $his mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Helped Me Love Anal.' "Oh <<Master>>, you did," $he coos. "You did! Thank you <<s>>o much for helping me become the anal <<s>>lut I wa<<s>> alway<<s>> meant to be!"
 			<</switch>>
 		<<elseif $activeSlave.devotion > 50>>
 			<<switch $activeSlave.anusTat>>
 			<<case "bleached">>
-				She gasps at how closely the crinkled skin around her anal opening matches the rest of her $activeSlave.skin body. "Oh, it'<<s>> <<s>>o beautiful! Thank you, <<Master>>, thank you," she exclaims lovingly.
+				$He gasps at how closely the crinkled skin around $his anal opening matches the rest of $his $activeSlave.skin body. "Oh, it'<<s>> <<s>>o beautiful! Thank you, <<Master>>, thank you," $he exclaims lovingly.
 			<<case "flowers" "tribal patterns">>
-				She gasps at the beautiful design. "It'<<s>> <<s>>o pretty, <<Master>>," she <<say>>s. "Thank you. I love you <<s>>o much!"
+				$He gasps at the beautiful design. "It'<<s>> <<s>>o pretty, <<Master>>," $he <<say>>s. "Thank you. I love you <<s>>o much!"
 			<<case "advertisements" "rude words" "sacrilege" "sacrament" "degradation" "possessive" "paternalist">>
-				She stares, her mouth working as she spells out the words tattooed in a ring around her asshole. "Thank you, <<Master>>," she <<say>>s devotedly. "I love you and I'll <<s>>erve you with my butthole a<<s>> be<<s>>t I can."
+				$He stares, $his mouth working as $he spells out the words tattooed in a ring around $his asshole. "Thank you, <<Master>>," $he <<say>>s devotedly. "I love you and I'll <<s>>erve you with my butthole a<<s>> be<<s>>t I can."
 			<<default>>
-				She smiles, pleased at the mark of your attention to her body. "Thank you, <<Master>>," she <<say>>s devotedly. "I love you and I'll <<s>>erve you with my butthole a<<s>> be<<s>>t I can."
+				$He smiles, pleased at the mark of your attention to $his body. "Thank you, <<Master>>," $he <<say>>s devotedly. "I love you and I'll <<s>>erve you with my butthole a<<s>> be<<s>>t I can."
 			<</switch>>
 		<<elseif $activeSlave.sexualFlaw == "hates anal">>
-			She stares,
+			$He stares,
 			<<switch $activeSlave.anusTat>>
 			<<case "bleached">>
 				horrified, and then shudders convulsively, but can't look away.
 			<<case "flowers" "tribal patterns">>
 				torn between fascination at the intricate design and horror at having her anus permanently tattooed.
 			<<case "advertisements" "rude words" "sacrilege" "sacrament" "degradation" "possessive" "paternalist">>
-				her mouth working as she spells out the words tattooed in a ring around her asshole. She starts to cry as their meaning sinks in.
+				her mouth working as $he spells out the words tattooed in a ring around her asshole. $He starts to cry as their meaning sinks in.
 			<<default>>
 				lower lip quivering.
 			<</switch>>
-			She hates being assraped, and knows that this means there's lots of it in store for her. "<<Master>>, p-plea<<s>>e," she moans halfheartedly. "I d-don't like being b-butt f-fucked."
+			$He hates being assraped, and knows that this means there's lots of it in store for $him. "<<Master>>, p-plea<<s>>e," $he moans halfheartedly. "I d-don't like being b-butt f-fucked."
 		<<elseif $activeSlave.devotion > 20>>
-			She stares,
+			$He stares,
 			<<switch $activeSlave.anusTat>>
 			<<case "bleached">>
-				fascinated. She doesn't seem sure what to make of this.
+				fascinated. $He doesn't seem sure what to make of this.
 			<<case "flowers" "tribal patterns">>
 				torn between admiration of the pretty design and realization that her anus has been permanently tattooed.
 			<<case "advertisements" "rude words" "sacrilege" "sacrament" "degradation" "possessive" "paternalist">>
-				her mouth working as she spells out the words tattooed in a ring around her asshole. She shudders a little as they sink in and she internalizes what they say about her and her asshole.
+				her mouth working as $he spells out the words tattooed in a ring around her asshole. $He shudders a little as they sink in and $he internalizes what they say about $him and $his asshole.
 			<<default>>
-				realizing that her anus has been permanently tattooed. It's yet another proof that she's permanently a sex slave, and her anus is for fucking.
+				realizing that $his anus has been permanently tattooed. It's yet another proof that $he's permanently a sex slave, and $his anus is for fucking.
 			<</switch>>
-			"Thank you, <<Master>>," she <<say>>s, taking refuge in propriety. "Um, d-doe<<s>> thi<<s>> mean I'm going to be more of a, um, b-butt<<s>>lut?" she asks hesitantly, not sounding very enthusiastic.
+			"Thank you, <<Master>>," $he <<say>>s, taking refuge in propriety. "Um, d-doe<<s>> thi<<s>> mean I'm going to be more of a, um, b-butt<<s>>lut?" $he asks hesitantly, not sounding very enthusiastic.
 		<<elseif $activeSlave.trust < -20>>
-			She stares,
+			$He stares,
 			<<switch $activeSlave.anusTat>>
 			<<case "bleached">>
 				trying to process the appearance of what must seem like an unnaturally clean-looking hole.
 			<<case "flowers" "tribal patterns">>
-				struggling to process the fact that one of her most intimate areas has been tattooed. Beautifully tattooed, but still.
+				struggling to process the fact that one of $his most intimate areas has been tattooed. Beautifully tattooed, but still.
 			<<case "advertisements" "rude words" "sacrilege" "sacrament" "degradation" "possessive" "paternalist">>
-				her mouth working as she spells out the words tattooed in a ring around her asshole. She shudders as she does her best to conceal her feelings about such a permanent display of her status as an anal slave.
+				$his mouth working as $he spells out the words tattooed in a ring around $his asshole. $He shudders as $he does her best to conceal $his feelings about such a permanent display of her status as an anal slave.
 			<<default>>
 				looking sad as the meaning of a permanent display of her status as an anal slave sinks in.
 			<</switch>>
-			After a short pause she remembers her duties and stammers, "T-thank you, <<Master>>." After a while longer she turns her head away, clearly not wanting to dwell on how her anus is obviously being beautified to attract sexual attention.
+			After a short pause $he remembers her duties and stammers, "T-thank you, <<Master>>." After a while longer $he turns her head away, clearly not wanting to dwell on how her anus is obviously being beautified to attract sexual attention.
 		<<else>>
 			<<switch $activeSlave.anusTat>>
 			<<case "bleached">>
-				Her face darkens as she sees her crinkled fuckhole's clean, fuckable appearance. "Don't you dare fucking a<<ss>>rape me!" she bursts out.
+				$His face darkens as $he sees $his crinkled fuckhole's clean, fuckable appearance. "Don't you dare fucking a<<ss>>rape me!" $he bursts out.
 			<<case "flowers" "tribal patterns">>
-				She's momentarily surprised by the pretty design, but then her face darkens. "That'<<s>> permanent!" she bursts out. "My a<<ss>>hole i<<s>> going to look like that forever!"
+				$He's momentarily surprised by the pretty design, but then $his face darkens. "That'<<s>> permanent!" $he bursts out. "My a<<ss>>hole i<<s>> going to look like that forever!"
 			<<case "advertisements">>
-				She stares, her mouth working as she spells out
+				$He stares, her mouth working as $he spells out
 				<<if ($activeSlave.vagina > -1)>>
-					'Second Pussy.' Her face darkens. "No it'<<s>> not," she bursts out. "Anal is dirty."
+					'Second Pussy.' $His face darkens. "No it'<<s>> not," $he bursts out. "Anal is dirty."
 				<<else>>
-					'Spit First.' Her face darkens. "Gro<<ss>>," she bursts out. "Gro<<ss>> and wrong!"
+					'Spit First.' $His face darkens. "Gro<<ss>>," $he bursts out. "Gro<<ss>> and wrong!"
 				<</if>>
 			<<case "rude words">>
-				She stares, her mouth working as she spells out
+				$He stares, her mouth working as $he spells out
 				<<if ($activeSlave.vagina > -1)>>
-					'Fucktoy's Favorite Fuckhole.' Her face darkens. "No it'<<s>> not," she bursts out. "It'<<s>> my a<<ss>>!"
+					'Fucktoy's Favorite Fuckhole.' $His face darkens. "No it'<<s>> not," $he bursts out. "It'<<s>> my a<<ss>>!"
 				<<else>>
-					'Sissy Slut's Sodomy Slit.' Her face darkens. "No it'<<s>> not," she bursts out. "I'm not a <<s>>i<<ss>>y! Or a <<s>>lut! And it'<<s>> not a slit!" Those are debatable, but they can all change, of course.
+					'Sissy Slut's Sodomy Slit.' $His face darkens. "No it'<<s>> not," $he bursts out. "I'm not a <<s>>i<<ss>>y! Or a <<s>>lut! And it'<<s>> not a slit!" Those are debatable, but they can all change, of course.
 				<</if>>
 			<<case "sacrilege" "sacrament">>
-				She stares, her mouth working as she reads the ring of Aramaic  around her hole. She doesn't understand it, but she's not happy about having stuff permanently inscribed around her ass.
+				$He stares, her mouth working as $he reads the ring of Aramaic around $his hole. $He doesn't understand it, but $he's not happy about having stuff permanently inscribed around $his ass.
 			<<case "degradation">>
-				She stares, her mouth working as she spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Made Me An Anal Slut.' Her face darkens. "No I'm not," she bursts out. That remains to be seen.
+				$He stares, her mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Made Me An Anal Slut.' $His face darkens. "No I'm not," $he bursts out. That remains to be seen.
 			<<case "counting">>
-				She stares, realizing that the markings denote how many times she's been sodomized. Her face darkens. "I <<s>>ee there'<<s>> room for more," she bursts out. "Fucking gro<<ss>>."
+				$He stares, realizing that the markings denote how many times $he's been sodomized. $His face darkens. "I <<s>>ee there'<<s>> room for more," $he bursts out. "Fucking gro<<ss>>."
 			<<case "bovine patterns">>
-				She stares at her new cow's anus. "Fucking gro<<ss>>," she bursts out. "I'm not an animal." That remains to be seen.
+				$He stares at $his new cow's anus. "Fucking gro<<ss>>," $he bursts out. "I'm not an animal." That remains to be seen.
 			<<case "possessive">>
-				She stares, realizing that the ring of numbers around $possessive anus give the date she was enslaved by you. Her face darkens. "Wor<<s>>t day of my life," she bursts out.
+				$He stares, realizing that the ring of numbers around $his anus give the date $he was enslaved by you. $His face darkens. "Wor<<s>>t day of my life," $he bursts out.
 			<<case "paternalist">>
-				She stares, her mouth working as she spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Helped Me Love Anal.' "I don't," she bursts out. "It'<<s>> fucking gro<<ss>>."
+				$He stares, her mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Helped Me Love Anal.' "I don't," $he bursts out. "It'<<s>> fucking gro<<ss>>."
 			<</switch>>
 		<</if>>
 	<</if>>
@@ -340,7 +340,7 @@
 Piercings:
 
 <<if _piercingCount == 0>>
-	Her smooth $activeSlave.skin skin is completely unpierced.
+	$His smooth $activeSlave.skin skin is completely unpierced.
 <</if>>
 
 <<if $activeSlave.earPiercing > 0 >><br>&nbsp;&nbsp;&nbsp;&nbsp;<<earPiercingDescription>><</if>>
@@ -386,7 +386,7 @@ Choose piercing style:
 
 <<if $piercingLevel == 1>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
-//Lightly// pierce $possessive:
+//Lightly// pierce $his:
 
 <<link "Entire body">>
 	<<if $activeSlave.earPiercing != 1>><<set $activeSlave.earPiercing = 1>>				<<set $cash -= $modCost>><</if>>
@@ -442,7 +442,7 @@ Choose piercing style:
 
 <<if $piercingLevel == 2>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
-''Heavily'' pierce $possessive:
+''Heavily'' pierce $his:
 
 <<link "Entire body">>
 	<<if $activeSlave.earPiercing != 2>><<set $activeSlave.earPiercing = 2>>			<<set $cash -= $modCost, $degradation += 1>><</if>>
@@ -500,10 +500,10 @@ Choose piercing style:
 <<if ($activeSlave.vagina != -1) || ($activeSlave.dick != 0)>>
 	<<if $activeSlave.clitPiercing != 3>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
-		Give $object a [[smart piercing?|Body Modification][$activeSlave.clitPiercing = 3,$activeSlave.clitSetting = "all",$cash -=$SPcost,$degradation += 1]] //Costs <<print cashFormat($SPcost)>>, unlocks options to mold sexuality//
+		Give $him a [[smart piercing?|Body Modification][$activeSlave.clitPiercing = 3,$activeSlave.clitSetting = "all",$cash -=$SPcost,$degradation += 1]] //Costs <<print cashFormat($SPcost)>>, unlocks options to mold sexuality//
 	<<else>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
-		$pronounCap already has a smart piercing!
+		$He already has a smart piercing!
 	<</if>>
 <</if>>
 <</if>>
@@ -596,13 +596,13 @@ Choose a tattoo style:
 <<if def $tattooChoice>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if $tattooChoice == 0>>
-		Clean the ink off of $object:
+		Clean the ink off of $him:
 	<<elseif $tattooChoice == "counting">>
-		Add tallies of $possessive sexual exploits to $object:
+		Add tallies of $his sexual exploits to $him:
 	<<elseif $tattooChoice == "bleached">>
-		Bleach $possessive:
+		Bleach $his:
 	<<else>>
-		Add $tattooChoice to $possessive:
+		Add $tattooChoice to $his:
 	<</if>>
 
 	<<if ($tattooChoice != "bleached") && ($tattooChoice != "permanent makeup")>>
@@ -743,9 +743,9 @@ Choose a tattoo style:
 
 <<if $activeSlave.belly >= 10000 && $activeSlave.bellyPreg < 450000 && $activeSlave.bellyFluid < 5000>>
 	<<if $activeSlave.bellyTat == 0>>
-		$pronounCap has no navel tattoos.
+		$He has no navel tattoos.
 	<<else>>
-		$possessiveCap navel is tattooed with $activeSlave.bellyTat.
+		$His navel is tattooed with $activeSlave.bellyTat.
 	<</if>>
 	<<if $activeSlave.bellyTat == 0>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
@@ -757,11 +757,11 @@ Choose a tattoo style:
 		//[[Remove tattoos|Body Modification][$activeSlave.bellyTat = 0,$cash -= $modCost]]//
 	<</if>>
 <<elseif $activeSlave.bellyPreg >= 450000>>
-	$possessiveCap middle is large and taut enough to be a suitable canvas for a navel focused tattoo, but $possessive brood is too active to permit the needle to do its work.
+	$His middle is large and taut enough to be a suitable canvas for a navel focused tattoo, but $his brood is too active to permit the needle to do its work.
 <<elseif $activeSlave.bellyFluid >= 10000>>
-	$possessiveCap middle is large and taut enough to be a suitable canvas for a navel focused tattoo, but the pressure applied to $possessive stomach will likely force $object to release her contents.
+	$His middle is large and taut enough to be a suitable canvas for a navel focused tattoo, but the pressure applied to $his stomach will likely force $him to release its contents.
 <<else>>
-	$possessiveCap middle isn't large enough to be a suitable canvas for a navel focused tattoo.
+	$His middle isn't large enough to be a suitable canvas for a navel focused tattoo.
 <</if>>
 
 <br>
@@ -772,65 +772,65 @@ Custom Tats:
 
 <<if $activeSlave.lipsTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom face tattoo: <<textbox "$activeSlave.lipsTat" $activeSlave.lipsTat "Slave Interact">>
+	Give $his a custom face tattoo: <<textbox "$activeSlave.lipsTat" $activeSlave.lipsTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.shouldersTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom shoulder tattoo: <<textbox "$activeSlave.shouldersTat" $activeSlave.shouldersTat "Slave Interact">>
+	Give $his a custom shoulder tattoo: <<textbox "$activeSlave.shouldersTat" $activeSlave.shouldersTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.armsTat == 0 && $activeSlave.amp != 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom arm tattoo: <<textbox "$activeSlave.armsTat" $activeSlave.armsTat "Slave Interact">>
+	Give $his a custom arm tattoo: <<textbox "$activeSlave.armsTat" $activeSlave.armsTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.boobsTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom tit tattoo: <<textbox "$activeSlave.boobsTat" $activeSlave.boobsTat "Slave Interact">>
+	Give $his a custom tit tattoo: <<textbox "$activeSlave.boobsTat" $activeSlave.boobsTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.backTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom back tattoo: <<textbox "$activeSlave.backTat" $activeSlave.backTat "Slave Interact">>
+	Give $his a custom back tattoo: <<textbox "$activeSlave.backTat" $activeSlave.backTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.stampTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom tramp stamp (lower back tattoo): <<textbox "$activeSlave.stampTat" $activeSlave.stampTat "Slave Interact">>
+	Give $his a custom tramp stamp (lower back tattoo): <<textbox "$activeSlave.stampTat" $activeSlave.stampTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.buttTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom butt tattoo (lower back tattoo): <<textbox "$activeSlave.buttTat" $activeSlave.buttTat "Slave Interact">>
+	Give $his a custom butt tattoo (lower back tattoo): <<textbox "$activeSlave.buttTat" $activeSlave.buttTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.dickTat == 0 && $activeSlave.dick != 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom dick tattoo: <<textbox "$activeSlave.dickTat" $activeSlave.dickTat "Slave Interact">>
+	Give $his a custom dick tattoo: <<textbox "$activeSlave.dickTat" $activeSlave.dickTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.vaginaTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom pubic tattoo: <<textbox "$activeSlave.vaginaTat" $activeSlave.vaginaTat "Slave Interact">>
+	Give $his a custom pubic tattoo: <<textbox "$activeSlave.vaginaTat" $activeSlave.vaginaTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.anusTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom anus tattoo (lower back tattoo): <<textbox "$activeSlave.anusTat" $activeSlave.anusTat "Slave Interact">>
+	Give $his a custom anus tattoo (lower back tattoo): <<textbox "$activeSlave.anusTat" $activeSlave.anusTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.legsTat == 0 && $activeSlave.amp != 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $possessive a custom leg tattoo: <<textbox "$activeSlave.legsTat" $activeSlave.legsTat "Slave Interact">>
+	Give $his a custom leg tattoo: <<textbox "$activeSlave.legsTat" $activeSlave.legsTat "Slave Interact">>
 <</if>>
 
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
 
 <<if ($activeSlave.customTat == "")>>
-	Give $possessive a custom tattoo: <<textbox "$activeSlave.customTat" $activeSlave.customTat "Slave Interact">>
+	Give $his a custom tattoo: <<textbox "$activeSlave.customTat" $activeSlave.customTat "Slave Interact">>
 <<else>>
-	$pronounCap <<if _hasTat == 1>>also<</if>> has a custom tattoo: $activeSlave.customTat
+	$He <<if _hasTat == 1>>also<</if>> has a custom tattoo: $activeSlave.customTat
 	Change it here: <<textbox "$activeSlave.customTat" $activeSlave.customTat "Slave Interact">>
 <</if>>
 <<if $activeSlave.customTat != "">>
@@ -848,7 +848,7 @@ Branding:
 	<<brandDescription>>
 	[[Remove Brand|Body Modification][$brandApplied = 0, $activeSlave.brand = 0,$cash -= $modCost,$degradation -= 10]]
 <<else>>
-	Her skin is unmarked.
+	$His skin is unmarked.
 <</if>>
 
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
@@ -882,7 +882,7 @@ Use ''$brandDesign'' or choose another brand:
 <<if ($arcologies[0].FSGenderRadicalist != "unset") || ($arcologies[0].FSGenderFundamentalist != "unset")>>
 | //FS// [[Gender Symbol|Body Modification][$brandDesign = "a gender symbol"]] <</if>>
 <<if ($arcologies[0].FSPaternalist != "unset")>>
-| //FS// [[Personal Symbol|Body Modification][$brandDesign = $possessive+" own personal symbol"]] <</if>>
+| //FS// [[Personal Symbol|Body Modification][$brandDesign = $his+" own personal symbol"]] <</if>>
 <<if ($arcologies[0].FSDegradationist != "unset")>>
 | //FS// [[Chain Symbol|Body Modification][$brandDesign = "a chain symbol"]] <</if>>
 <<if ($arcologies[0].FSBodyPurist != "unset")>>
@@ -890,21 +890,21 @@ Use ''$brandDesign'' or choose another brand:
 <<if ($arcologies[0].FSTransformationFetishist != "unset")>>
 | //FS// [[Scalpel|Body Modification][$brandDesign = "a scalpel"]] <</if>>
 <<if ($arcologies[0].FSYouthPreferentialist != "unset")>>
-| //FS// [[Virginity Status|Body Modification][$brandDesign = $possessive+" virginity status"]] <</if>>
+| //FS// [[Virginity Status|Body Modification][$brandDesign = $his+" virginity status"]] <</if>>
 <<if ($arcologies[0].FSMaturityPreferentialist != "unset")>>
-| //FS// [[Sexual Skill Info|Body Modification][$brandDesign = $possessive+" sexual skills"]] <</if>>
+| //FS// [[Sexual Skill Info|Body Modification][$brandDesign = $his+" sexual skills"]] <</if>>
 <<if ($arcologies[0].FSSlimnessEnthusiast != "unset")>>
-| //FS// [[Breast Floor|Body Modification][$brandDesign = $possessive+" absolute minimum breast size"]] <</if>>
+| //FS// [[Breast Floor|Body Modification][$brandDesign = $his+" absolute minimum breast size"]] <</if>>
 <<if ($arcologies[0].FSAssetExpansionist != "unset")>>
-| //FS// [[Breast Ceiling|Body Modification][$brandDesign = $possessive+" absolute maximum breast size"]] <</if>>
+| //FS// [[Breast Ceiling|Body Modification][$brandDesign = $his+" absolute maximum breast size"]] <</if>>
 <<if ($arcologies[0].FSHedonisticDecadence != "unset")>>
-| //FS// [[Weight Record|Body Modification][$brandDesign = $possessive+" highest weigh-in"]] <</if>>
+| //FS// [[Weight Record|Body Modification][$brandDesign = $his+" highest weigh-in"]] <</if>>
 <<if ($arcologies[0].FSHedonisticDecadence != "unset") && $PC.refreshmentType == 2>>
 | //FS// [[Favorite Food|Body Modification][$brandDesign = "a big helping of "+$PC.refreshment]] <</if>>
 <<if ($arcologies[0].FSPastoralist != "unset")>>
-| //FS// [[Product Quality|Body Modification][$brandDesign = $possessive+" body product quality"]] <</if>>
+| //FS// [[Product Quality|Body Modification][$brandDesign = $his+" body product quality"]] <</if>>
 <<if ($arcologies[0].FSPhysicalIdealist != "unset")>>
-| //FS// [[Deadlift Info|Body Modification][$brandDesign = $possessive+" deadlift record"]] <</if>>
+| //FS// [[Deadlift Info|Body Modification][$brandDesign = $his+" deadlift record"]] <</if>>
 <<if ($arcologies[0].FSChattelReligionist != "unset")>>
 | //FS// [[Religious Symbol|Body Modification][$brandDesign = "a religious symbol"]] <</if>>
 <<if ($arcologies[0].FSRomanRevivalist != "unset")>>
@@ -957,7 +957,7 @@ Choose a site for branding:
 <<if ($brandTarget == "neck" || $brandTarget == "chest" || $brandTarget == "belly" || $brandTarget == "pubic mound" || $brandTarget == "back" || $brandTarget == "lower back")>>
 	[[Brand|Body Modification][$brandApplied = 1,$activeSlave.brand = $brandDesign,$activeSlave.brandLocation = $brandTarget,$cash -= $modCost,$degradation += 10]]  with $brandDesign on the $brandTarget.
 <<else>>
-	Brand $object now with ''$brandDesign'' on the
+	Brand $him now with ''$brandDesign'' on the
 	<<link "left">>
 		<<set $brandApplied = 1>>
 		<<set $activeSlave.brand = $brandDesign>>
@@ -1010,4 +1010,4 @@ Choose a site for branding:
 		<<goto "Body Modification">>
 	<</link>>?
 <</if>>
-//Branding will slightly reduce $possessive beauty but may slowly increase your reputation.//
+//Branding will slightly reduce $his beauty but may slowly increase your reputation.//
diff --git a/src/uncategorized/bodyModificationReaction.tw b/src/uncategorized/bodyModificationReaction.tw
index 7fc7123efcd..ffd95f67514 100644
--- a/src/uncategorized/bodyModificationReaction.tw
+++ b/src/uncategorized/bodyModificationReaction.tw
@@ -5,42 +5,42 @@
 <<set $nextButton = "Continue">>
 <<set $nextLink = "Slave Interact">>
 
-As you cast off her bindings<<if canSee($activeSlave)>> and <<if ($activeSlave.amp != 1)>>let her stand<<else>>prop her up<</if>>, she catches sight of herself in the floor length mirror at the foot of the body modification table<<else>>, and <<if ($activeSlave.amp != 1)>>let her stand<<else>>prop her up<</if>>, you vividly describe her new appearance. Her mind hangs on every word that leaves your mouth<</if>>.
+As you cast off $his bindings<<if canSee($activeSlave)>> and <<if ($activeSlave.amp != 1)>>let $him stand<<else>>prop $him up<</if>>, $he catches sight of $himself in the floor length mirror at the foot of the body modification table<<else>>, and <<if ($activeSlave.amp != 1)>>let $him stand<<else>>prop $him up<</if>>, you vividly describe $his new appearance. $His mind hangs on every word that leaves your mouth<</if>>.
 
 <<if ($brandApplied == 1)>>
-	The smell of burnt flesh hangs in the air. Being branded @@.red;has hurt her health a little.@@
+	The smell of burnt flesh hangs in the air. Being branded @@.red;has hurt $his health a little.@@
 	<<set $brandApplied = 0>>
 	<<set $activeSlave.health -= 10>>
 <</if>>
 <<if $activeSlave.fetish != "mindbroken" && $activeSlave.fuckdoll == 0>>
 <<if ($degradation > 10) && ($activeSlave.devotion <= 50) && ($activeSlave.trust < -50)>>
-	She is appalled by the whorish spectacle you have made of her. She @@.gold;fears@@ you all the more for this but is so terrified of you it does not affect her submission.
+	$He is appalled by the whorish spectacle you have made of $him. $He @@.gold;fears@@ you all the more for this but is so terrified of you it does not affect $his submission.
 	<<set $activeSlave.trust -= 10>>
 <<elseif ($degradation > 10) && ($activeSlave.devotion <= 50)>>
-	She is appalled by the whorish spectacle you have made of her. She @@.mediumorchid;hates@@ and @@.gold;fears@@ you for this.
+	$He is appalled by the whorish spectacle you have made of $him. $He @@.mediumorchid;hates@@ and @@.gold;fears@@ you for this.
 	<<set $activeSlave.devotion -= 10>>
 	<<set $activeSlave.trust -= 10>>
 <<elseif ($degradation > 10)>>
-	She is shocked by the whorish spectacle you have made of her. However, she is so submissive to your will that she @@.hotpink;accepts@@ that the slave <<if canSee($activeSlave)>>in the mirror<<else>>she pictures<</if>> is who she is now.
+	$He is shocked by the whorish spectacle you have made of $him. However, $he is so submissive to your will that $he @@.hotpink;accepts@@ that the slave <<if canSee($activeSlave)>>in the mirror<<else>>$he pictures<</if>> is who $he is now.
 	<<set $activeSlave.devotion += 4>>
 <<elseif ($degradation > 4) && ($activeSlave.devotion <= 20) && ($activeSlave.trust < -20)>>
-	She is so afraid of you that she suppresses any reaction to the slutty modifications you have made to her body and @@.gold;fears@@ your power to do whatever you like to her.
+	$He is so afraid of you that $he suppresses any reaction to the slutty modifications you have made to $his body and @@.gold;fears@@ your power to do whatever you like to $him.
 	<<set $activeSlave.trust -= 5>>
 <<elseif ($degradation > 4)>>
-	She is surprised with the slutty modifications you have made to her body. However, she is so obedient that she @@.hotpink;accepts@@ your changes.
+	$He is surprised with the slutty modifications you have made to $his body. However, $he is so obedient that $he @@.hotpink;accepts@@ your changes.
 	<<set $activeSlave.devotion += 4>>
 <<elseif ($degradation > 1) && ($activeSlave.devotion < -20) && ($activeSlave.trust < 20)>>
-	She is @@.gold;afraid@@ that she has been permanently altered against her will, but is also scared of your reaction to any objection and suppresses her disgust.
+	$He is @@.gold;afraid@@ that $he has been permanently altered against $his will, but is also scared of your reaction to any objection and suppresses $his disgust.
 	<<set $activeSlave.trust -= 5>>
 <<elseif ($degradation > 1) && ($activeSlave.devotion < -20)>>
-	She is @@.mediumorchid;angry@@ and @@.gold;afraid@@ that she has been permanently altered against her will.
+	$He is @@.mediumorchid;angry@@ and @@.gold;afraid@@ that $he has been permanently altered against $his will.
 	<<set $activeSlave.devotion -= 5>>
 	<<set $activeSlave.trust -= 5>>
 <<elseif ($degradation > 1)>>
-	She is saddened to have been altered against her will. However, she realizes that she is a slave, so she @@.hotpink;accepts@@ your work.
+	$He is saddened to have been altered against $his will. However, $he realizes that $he is a slave, so $he @@.hotpink;accepts@@ your work.
 	<<set $activeSlave.devotion += 4>>
 <<else>>
-	She shows no real reaction to your modifications.
+	$He shows no real reaction to your modifications.
 <</if>>
 <</if>>
 <<set $degradation = 0>>
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index 1bb54f4cfdf..37421205bd8 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -33,15 +33,15 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<elseif $activeSlave.origin == "She submitted to enslavement to escape the hard life of an Old World whore.">>
 	wondering what one of your working girls can expect.
 <<elseif ($activeSlave.origin == "She submitted to enslavement to get access to modern prenatal care.") || ($activeSlave.origin == "She sold herself into slavery out of fear that life on the streets was endangering her pregnancy.")>>
-	hoping you'll give her modern medicine right away.
+	hoping you'll give $him modern medicine right away.
 <<elseif $activeSlave.origin == "She submitted to enslavement as her only way to obtain surgery to transform her into a woman.">>
-	hoping you'll schedule her reassignment surgery immediately.
+	hoping you'll schedule $his reassignment surgery immediately.
 <<elseif $activeSlave.origin == "She submitted to enslavement out of a misguided desire to join a sexually libertine society.">>
-	hoping she's made the right decision, and fantasizing a little, to go by her half-hard dick.
+	hoping $he's made the right decision, and fantasizing a little, to go by $his half-hard dick.
 <<elseif $activeSlave.origin == "She submitted to enslavement for a better chance at survival than she had as a migrant.">>
 	wondering what life as a sex slave will be like.
 <<elseif $activeSlave.origin == "She came to you to escape being sold to a cruel master after her producer informed her of her debt.">>
-	wondering if she will get to continue to perform for your people even as a slave.
+	wondering if $he will get to continue to perform for your people even as a slave.
 <<else>>
 	looking shyly at you and blushing.
 <</if>>
@@ -61,19 +61,19 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<</if>>
 
 	<<if $gingering == "antidepressant">>
-		Her intake toxicology reveals that she was<<if $gingeringDetected == 1>> indeed<</if>> given antidepressants to make her seem less fearful for _seed. She is much less trusting than she appeared in the market.
+		$His intake toxicology reveals that $he was<<if $gingeringDetected == 1>> indeed<</if>> given antidepressants to make $him seem less fearful for _seed. $He is much less trusting than $he appeared in the market.
 	<<elseif $gingering == "depressant">>
-		Her intake toxicology reveals that she was<<if $gingeringDetected == 1>> indeed<</if>> given a depressant to make her seem less hateful for _seed. She is much less obedient than she appeared in the market.
+		$His intake toxicology reveals that $he was<<if $gingeringDetected == 1>> indeed<</if>> given a depressant to make $him seem less hateful for _seed. $He is much less obedient than $he appeared in the market.
 	<<elseif $gingering == "stimulant">>
-		Her intake toxicology reveals that she was<<if $gingeringDetected == 1>> indeed<</if>> given a stimulant to make her seem healthier for _seed. She is much less vital than she appeared in the market.
+		$His intake toxicology reveals that $he was<<if $gingeringDetected == 1>> indeed<</if>> given a stimulant to make $him seem healthier for _seed. $He is much less vital than $he appeared in the market.
 	<<elseif $gingering == "vasoconstrictor">>
-		Her intake toxicology reveals that she was<<if $gingeringDetected == 1>> indeed<</if>> given a vasoconstrictor to make her cock seem more feminine for _seed. It's larger and more apt to become hard than it appeared in the market.
+		$His intake toxicology reveals that $he was<<if $gingeringDetected == 1>> indeed<</if>> given a vasoconstrictor to make $his cock seem more feminine for _seed. It's larger and more apt to become hard than it appeared in the market.
 	<<elseif $gingering == "vasodilator">>
-		Her intake toxicology reveals that she was<<if $gingeringDetected == 1>> indeed<</if>> given a vasodilator to give her an excessive erection for _seed. Her dick is somewhat smaller than it appeared in the market, and she's not really hard all the time.
+		$His intake toxicology reveals that $he was<<if $gingeringDetected == 1>> indeed<</if>> given a vasodilator to give $him an excessive erection for _seed. $His dick is somewhat smaller than it appeared in the market, and $he's not really hard all the time.
 	<<elseif $gingering == "aphrodisiac">>
-		Her intake toxicology reveals that she was<<if $gingeringDetected == 1>> indeed<</if>> given aphrodisiacs to make her horny and attracted to everyone for _seed. Her true sex drive and sexuality remain to be discovered.
+		$His intake toxicology reveals that $he was<<if $gingeringDetected == 1>> indeed<</if>> given aphrodisiacs to make $him horny and attracted to everyone for _seed. $His true sex drive and sexuality remain to be discovered.
 	<<else>>
-		A close inspection of her anus reveals that she was<<if $gingeringDetected == 1>> indeed<</if>> doctored with an irritant to make her present her butt when shown for _seed. She is not an actual anal sex enthusiast.
+		A close inspection of $his anus reveals that $he was<<if $gingeringDetected == 1>> indeed<</if>> doctored with an irritant to make $him present $his butt when shown for _seed. $He is not an actual anal sex enthusiast.
 	<</if>>
 <</if>>
 
@@ -111,45 +111,45 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if ($activeSlave.vagina > -1) && ($activeSlave.dick == 0)>>
 	<<if ($PC.dick == 0) && ($PC.boobs == 1)>>
-		She looks to you and sees a fellow woman, and is @@.mediumaquamarine;a little less afraid@@ that you will rape and abuse her.
+		$He looks to you and sees a fellow woman, and is @@.mediumaquamarine;a little less afraid@@ that you will rape and abuse $him.
 		<<set $activeSlave.trust += 4>>
 	<</if>>
 <<elseif $activeSlave.career == "a Futanari Sister">>
 	<<if ($PC.dick == 1) && ($PC.boobs == 1) && ($PC.vagina == 1)>>
 		<<if $TFS.schoolPresent == 1>>
-			She's heard of you, of course, as both a futanari yourself and a generous patron of the Sisters. She feels @@.mediumaquamarine;very lucky@@ that she's going to be your slave, not to mention @@.hotpink;almost desperate@@ to have sex with you.
+			$He's heard of you, of course, as both a futanari yourself and a generous patron of the Sisters. $He feels @@.mediumaquamarine;very lucky@@ that $he's going to be your slave, not to mention @@.hotpink;almost desperate@@ to have sex with you.
 			<<set $activeSlave.devotion += 10>>
 			<<set $activeSlave.trust += 10>>
 		<<else>>
-			Seeing that you're a fellow futanari, she's @@.mediumaquamarine;relieved@@ that she's going to be your slave, not to mention @@.hotpink;quite eager@@ to have sex with you.
+			Seeing that you're a fellow futanari, $he's @@.mediumaquamarine;relieved@@ that $he's going to be your slave, not to mention @@.hotpink;quite eager@@ to have sex with you.
 			<<set $activeSlave.devotion += 5>>
 			<<set $activeSlave.trust += 5>>
 		<</if>>
 	<</if>>
 <<elseif ($activeSlave.boobs > 400) && ($activeSlave.dick > 0)>>
 	<<if ($PC.dick == 1) && (($PC.boobs == 1) || ($PC.vagina == 1))>>
-		She looks to you and sees a fellow intersex person, and is @@.mediumaquamarine;rather hopeful@@ that she will find you a sympathetic owner.
+		$He looks to you and sees a fellow intersex person, and is @@.mediumaquamarine;rather hopeful@@ that $he will find you a sympathetic owner.
 		<<set $activeSlave.trust += 4>>
 	<</if>>
 <</if>>
 
 <<if (($activeSlave.attrXX > 50) || ($activeSlave.energy > 95)) && ($activeSlave.behavioralFlaw != "hates women") && ($activeSlave.trust >= -20)>>
 	<<if ($PC.boobs == 1)>>
-		She seems to think you're pretty, and is more willing to @@.hotpink;try for your approval@@ than she would otherwise be. She glances at your rack when she thinks you're not looking.
+		$He seems to think you're pretty, and is more willing to @@.hotpink;try for your approval@@ than $he would otherwise be. $He glances at your rack when $he thinks you're not looking.
 		<<set $activeSlave.devotion += 4>>
 	<</if>>
 <</if>>
 
 <<if ($activeSlave.behavioralFlaw == "hates women") && ($activeSlave.devotion <= 50)>>
 	<<if ($PC.dick == 0) && ($PC.boobs == 1)>>
-		She obviously does not find you immediately attractive, and is @@.mediumorchid;less eager to conciliate you@@ than she would otherwise be.
+		$He obviously does not find you immediately attractive, and is @@.mediumorchid;less eager to conciliate you@@ than $he would otherwise be.
 		<<set $activeSlave.devotion -= 5>>
 	<</if>>
 <</if>>
 
 <<if (($activeSlave.attrXY > 50) || ($activeSlave.energy > 95)) && ($activeSlave.behavioralFlaw != "hates men") && ($activeSlave.trust >= -20)>>
 	<<if ($PC.dick == 1) && ($PC.boobs == 0)>>
-		She seems to think you're handsome, and is more willing to @@.hotpink;try for your approval@@ than she would otherwise be. She glances at your crotch when she thinks you're not looking.
+		$He seems to think you're handsome, and is more willing to @@.hotpink;try for your approval@@ than $he would otherwise be. $He glances at your crotch when $he thinks you're not looking.
 		<<set $activeSlave.devotion += 4>>
 	<</if>>
 <</if>>
@@ -158,20 +158,20 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<<if ($activeSlave.actualAge > 35)>>
 		<<if ($PC.visualAge < 35)>>
 			<<if ($activeSlave.behavioralFlaw != "hates men") && ($PC.title == 1)>>
-				She tries to conceal her surprise at your age, and keeps glancing at her own naked body and then back at you, obviously wondering at such a @@.hotpink;gorgeous young man's@@ interest in an old slave like her.
+				$He tries to conceal $his surprise at your age, and keeps glancing at $his own naked body and then back at you, obviously wondering at such a @@.hotpink;gorgeous young man's@@ interest in an old slave like $him.
 				<<set $activeSlave.devotion += 4>>
 			<<elseif ($activeSlave.behavioralFlaw != "hates women") && ($PC.title == 0)>>
-				She tries to conceal her surprise at your age, and keeps glancing at her own naked body and then back at you, obviously wondering at such a @@.hotpink;gorgeous young girl's@@ interest in an old slave like her.
+				$He tries to conceal $his surprise at your age, and keeps glancing at $his own naked body and then back at you, obviously wondering at such a @@.hotpink;gorgeous young girl's@@ interest in an old slave like $him.
 				<<set $activeSlave.devotion += 4>>
 			<</if>>
 		<</if>>
 	<<elseif ($activeSlave.actualAge < 25)>>
 		<<if ($PC.visualAge >= 50)>>
 			<<if ($activeSlave.behavioralFlaw != "hates men") && ($PC.title == 1)>>
-				She keeps stealing glances at your face, probably wrestling with her feelings about your age. Eventually she seems to relax and accept it, with a certain @@.hotpink;obvious thrill@@ at her own willingness towards an older man.
+				$He keeps stealing glances at your face, probably wrestling with $his feelings about your age. Eventually $he seems to relax and accept it, with a certain @@.hotpink;obvious thrill@@ at $his own willingness towards an older man.
 				<<set $activeSlave.devotion += 4>>
 			<<elseif ($activeSlave.behavioralFlaw != "hates women") && ($PC.title == 0)>>
-				She keeps stealing glances at your face, probably wrestling with her feelings about your age. Eventually she seems to relax and accept it, with a certain @@.hotpink;obvious thrill@@ at her own willingness towards an older lady.
+				$He keeps stealing glances at your face, probably wrestling with $his feelings about your age. Eventually $he seems to relax and accept it, with a certain @@.hotpink;obvious thrill@@ at $his own willingness towards an older lady.
 				<<set $activeSlave.devotion += 4>>
 			<</if>>
 		<</if>>
@@ -183,14 +183,14 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 		<<if $PC.belly >= 1000>>
 			<<if $activeSlave.fetish == "pregnancy">>
 				<<if $activeSlave.fetishKnown == 0>>
-					She keeps stealing glances at your <<if $PC.belly >= 120000>>massive<<elseif $PC.belly >= 60000>>giant<<elseif $PC.belly >= 15000>>huge<<elseif $PC.belly >= 5000>>big<</if>> baby bump.<<if canAchieveErection($activeSlave)>> Her dick rapidly hardening.<</if>> You teasingly ask if she'd like to feel it sometime, eliciting a delighted squeal from the girl. @@.green;She's an pregnancy fetishist!@@
+					$He keeps stealing glances at your <<if $PC.belly >= 120000>>massive<<elseif $PC.belly >= 60000>>giant<<elseif $PC.belly >= 15000>>huge<<elseif $PC.belly >= 5000>>big<</if>> baby bump.<<if canAchieveErection($activeSlave)>> $His dick rapidly hardening.<</if>> You teasingly ask if $he'd like to feel it sometime, eliciting a delighted squeal from the girl. @@.green;$He's an pregnancy fetishist!@@
 					<<set $activeSlave.fetishKnown = 1>>
 				<<else>>
-					She keeps stealing glances at your <<if $PC.belly >= 120000>>massive<<elseif $PC.belly >= 60000>>giant<<elseif $PC.belly >= 15000>>huge<<elseif $PC.belly >= 5000>>big<</if>> baby bump.<<if canAchieveErection($activeSlave)>> Her dick rapidly hardening.<</if>> As you inspect her, you take care to gently brush your pregnancy across her as you move. She is practically bursting with lust by the end and @color:hotpink;eager to please you@@ so she can be close to that belly.
+					$He keeps stealing glances at your <<if $PC.belly >= 120000>>massive<<elseif $PC.belly >= 60000>>giant<<elseif $PC.belly >= 15000>>huge<<elseif $PC.belly >= 5000>>big<</if>> baby bump.<<if canAchieveErection($activeSlave)>> $His dick rapidly hardening.<</if>> As you inspect $him, you take care to gently brush your pregnancy across $him as you move. $He is practically bursting with lust by the end and @color:hotpink;eager to please you@@ so $he can be close to that belly.
 					<<set $activeSlave.devotion += 5>>
 				<</if>>
 			<<else>>
-				Your pregnancy is obvious to her, which means two things: you won't be as capable of disciplining her, leading her to be @@.mediumorchid;more willing to disobey,@@ and you going to be demanding and needy, possibly even @@.gold;using force to get her to do what you want.@@
+				Your pregnancy is obvious to $him, which means two things: you won't be as capable of disciplining $him, leading $him to be @@.mediumorchid;more willing to disobey,@@ and you going to be demanding and needy, possibly even @@.gold;using force to get $him to do what you want.@@
 				<<set $activeSlave.trust -= 10>>
 				<<set $activeSlave.devotion -= 10>>
 			<</if>>
@@ -199,14 +199,14 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 		<<if $PC.belly >= 1500>>
 			<<if $activeSlave.fetish == "pregnancy">>
 				<<if $activeSlave.fetishKnown == 0>>
-					She keeps stealing glances at your <<if $PC.belly >= 120000>>massive<<elseif $PC.belly >= 60000>>giant<<elseif $PC.belly >= 15000>>huge<<elseif $PC.belly >= 5000>>big<</if>> baby bump.<<if canAchieveErection($activeSlave)>> Her dick rapidly hardening.<</if>> You teasingly ask if she'd like to feel it sometime, eliciting a delighted squeal from the girl. @@.green;She's an impregnation fetishist!@@
+					$He keeps stealing glances at your <<if $PC.belly >= 120000>>massive<<elseif $PC.belly >= 60000>>giant<<elseif $PC.belly >= 15000>>huge<<elseif $PC.belly >= 5000>>big<</if>> baby bump.<<if canAchieveErection($activeSlave)>> $His dick rapidly hardening.<</if>> You teasingly ask if $he'd like to feel it sometime, eliciting a delighted squeal from the girl. @@.green;$He's an impregnation fetishist!@@
 					<<set $activeSlave.fetishKnown = 1>>
 				<<else>>
-					She keeps stealing glances at your <<if $PC.belly >= 120000>>massive<<elseif $PC.belly >= 60000>>giant<<elseif $PC.belly >= 15000>>huge<<elseif $PC.belly >= 5000>>big<</if>> baby bump.<<if canAchieveErection($activeSlave)>> Her dick rapidly hardening.<</if>> As you inspect her, you take care to gently brush your pregnancy across her as you move. She is practically bursting with lust by the end and @color:hotpink;eager to please you@@ so she can be close to that belly.
+					$He keeps stealing glances at your <<if $PC.belly >= 120000>>massive<<elseif $PC.belly >= 60000>>giant<<elseif $PC.belly >= 15000>>huge<<elseif $PC.belly >= 5000>>big<</if>> baby bump.<<if canAchieveErection($activeSlave)>> $His dick rapidly hardening.<</if>> As you inspect $him, you take care to gently brush your pregnancy across $him as you move. $He is practically bursting with lust by the end and @color:hotpink;eager to please you@@ so $he can be close to that belly.
 					<<set $activeSlave.devotion += 5>>
 				<</if>>
 			<<else>>
-				Your pregnancy is obvious to her, which means two things: you won't be as capable of disciplining her, leading her to be @@.mediumorchid;more willing to disobey,@@ and you going to be demanding and needy, possibly even @@.gold;using force to get her to do what you want.@@
+				Your pregnancy is obvious to $him, which means two things: you won't be as capable of disciplining $him, leading $him to be @@.mediumorchid;more willing to disobey,@@ and you going to be demanding and needy, possibly even @@.gold;using force to get $him to do what you want.@@
 				<<set $activeSlave.trust -= 10>>
 				<<set $activeSlave.devotion -= 10>>
 			<</if>>
@@ -217,10 +217,10 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<if $PC.boobsBonus == 3>>
 	<<if $activeSlave.fetish == "boobs">>
 		<<if $activeSlave.fetishKnown == 0>>
-			She keeps stealing glances at your huge rack<<if canAchieveErection($activeSlave)>>, her dick rapidly hardening<</if>>. You stretch, giving her a fantastic view of your breasts, before circling around behind her and cupping her chest. Between your tits against her back, and how teasingly big you are pretending her breasts will be, she can't contain herself; she cums from overstimulation, completely pinning her @@.green;as a breast fetishist!@@
+			$He keeps stealing glances at your huge rack<<if canAchieveErection($activeSlave)>>, $his dick rapidly hardening<</if>>. You stretch, giving $him a fantastic view of your breasts, before circling around behind $him and cupping $his chest. Between your tits against $his back, and how teasingly big you are pretending $his breasts will be, $he can't contain $himself; $he cums from overstimulation, completely pinning $him @@.green;as a breast fetishist!@@
 			<<set $activeSlave.fetishKnown = 1>>
 		<<else>>
-			She keeps stealing glances at your huge rack<<if canAchieveErection($activeSlave)>>, her dick rapidly hardening<</if>>. As you inspect her, you take care to keep "accidentally" bumping her with your tits, before "tripping" and landing with her face buried in your chest. She is practically bursting with lust by the end and @color:hotpink;eager to please you@@ so she can be close to those boobs.
+			$He keeps stealing glances at your huge rack<<if canAchieveErection($activeSlave)>>, $his dick rapidly hardening<</if>>. As you inspect $him, you take care to keep "accidentally" bumping $him with your tits, before "tripping" and landing with $his face buried in your chest. $He is practically bursting with lust by the end and @color:hotpink;eager to please you@@ so $he can be close to those boobs.
 			<<set $activeSlave.devotion += 5>>
 		<</if>>
 	<</if>>
@@ -228,73 +228,73 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $enduringTrust > 20>>
 	<<if $activeSlave.trust >= -20>>
-		She notices that most of the slaves she sees around your penthouse seem to trust you, and hopes that she can @@.mediumaquamarine;trust you,@@ too.
+		$He notices that most of the slaves $he sees around your penthouse seem to trust you, and hopes that $he can @@.mediumaquamarine;trust you,@@ too.
 		<<set $activeSlave.trust += 1>>
 	<</if>>
 <<else>>
 	<<if $activeSlave.trust < 50>>
-		She notices that most of the slaves she sees around your penthouse seem to fear you, and starts to @@.gold;fear you,@@ too.
+		$He notices that most of the slaves $he sees around your penthouse seem to fear you, and starts to @@.gold;fear you,@@ too.
 		<<set $activeSlave.trust -= 2>>
 	<</if>>
 <</if>>
 
 <<if $enduringDevotion > 20>>
 	<<if $activeSlave.devotion >= -20>>
-		She sees that most of the slaves she sees around your penthouse like you, and hopes that she can @@.hotpink;like you@@  a little more herself.
+		$He sees that most of the slaves $he sees around your penthouse like you, and hopes that $he can @@.hotpink;like you@@ a little more $himself.
 		<<set $activeSlave.devotion += 1>>
 	<</if>>
 <<else>>
 	<<if $activeSlave.devotion < 50>>
-		She sees that most of the slaves she sees around your penthouse dislike you, and starts to @@.mediumorchid;dislike you@@ a little more herself.
+		$He sees that most of the slaves $he sees around your penthouse dislike you, and starts to @@.mediumorchid;dislike you@@ a little more $himself.
 		<<set $activeSlave.devotion -= 2>>
 	<</if>>
 <</if>>
 
 <<if ($PC.career == "escort")>>
-	She recognizes you as a whore, leading her to @@.mediumaquamarine;fear you less@@; however, her views of you also leave her less willing to @@.mediumorchid;listen to you.@@
+	$He recognizes you as a whore, leading $him to @@.mediumaquamarine;fear you less@@; however, $his views of you also leave $him less willing to @@.mediumorchid;listen to you.@@
 	<<set $activeSlave.devotion -= 10>>
 	<<set $activeSlave.trust += 10>>
 <<elseif ($PC.career == "servant")>>
-	Seeing you in your <<if $PC.title == 0>>maid's dress<<else>>maid's outfit<</if>> @@.mediumaquamarine;calms her fears@@; however, she is unwilling to @@.mediumorchid;listen to a servant.@@
+	Seeing you in your <<if $PC.title == 0>>maid's dress<<else>>maid's outfit<</if>> @@.mediumaquamarine;calms $his fears@@; however, $he is unwilling to @@.mediumorchid;listen to a servant.@@
 	<<set $activeSlave.devotion -= 3>>
 	<<set $activeSlave.trust += 10>>
 <<elseif ($PC.career == "gang")>>
-	She recognizes you from various crime reports @@.gold;filling her with fear@@ over what life under you will be like.
+	$He recognizes you from various crime reports @@.gold;filling $him with fear@@ over what life under you will be like.
 	<<set $activeSlave.trust -= 10>>
 <</if>>
 
 <<if ($PC.rumor == "force")>>
 	<<if ($activeSlave.devotion <= 20)>>
 		<<if ($activeSlave.trust > 0)>>
-			She seems to have picked up rumors about your ruthlessness, and is @@.gold;horrified into obedience.@@
+			$He seems to have picked up rumors about your ruthlessness, and is @@.gold;horrified into obedience.@@
 			<<set $activeSlave.trust -= 25>>
 		<<elseif ($activeSlave.trust > -10)>>
-			She seems to have picked up rumors about your ruthlessness, and is @@.gold;terrified into obedience.@@
+			$He seems to have picked up rumors about your ruthlessness, and is @@.gold;terrified into obedience.@@
 			<<set $activeSlave.trust -= 20>>
 		<<elseif ($activeSlave.trust > -20)>>
-			She seems to have picked up rumors about your ruthlessness, and is @@.gold;frightened into obedience.@@
+			$He seems to have picked up rumors about your ruthlessness, and is @@.gold;frightened into obedience.@@
 			<<set $activeSlave.trust -= 15>>
 		<</if>>
 	<</if>>
 <<elseif $PC.rumor == "diligence">>
-	She seems to have picked up rumors about your probity, and is @@.mediumaquamarine;less afraid of you@@ and more @@.hotpink;willing to like you.@@
+	$He seems to have picked up rumors about your probity, and is @@.mediumaquamarine;less afraid of you@@ and more @@.hotpink;willing to like you.@@
 	<<set $activeSlave.devotion += 5>>
 	<<set $activeSlave.trust += 5>>
 <</if>>
 
 <<if ($activeSlave.accent >= 3)>>
 	<<if ($activeSlave.trust > 20)>>
-		During the enslavement process so far, it became obvious to her that she can barely understand enough $language to understand orders. She's @@.gold;frightened@@ by the sudden danger that she won't be able to do what she's told, even if she wants to.
+		During the enslavement process so far, it became obvious to $him that $he can barely understand enough $language to understand orders. $He's @@.gold;frightened@@ by the sudden danger that $he won't be able to do what $he's told, even if $he wants to.
 		<<set $activeSlave.trust -= 5>>
 	<<elseif ($activeSlave.devotion <= 20)>>
 		<<if $activeSlave.intelligence > 1>>
-			She can barely understand the $language language, but she's smart enough to understand everything that's happening to her. Even so, @@.mediumaquamarine;some fear is deferred,@@ since the harsh realities of being a sex slave may not be clear to her yet.
+			$He can barely understand the $language language, but $he's smart enough to understand everything that's happening to $him. Even so, @@.mediumaquamarine;some fear is deferred,@@ since the harsh realities of being a sex slave may not be clear to $him yet.
 			<<set $activeSlave.trust += 10>>
 		<<elseif $activeSlave.intelligence > -1>>
-			She can barely understand enough $language to understand what's happening to her. This incapacity @@.mediumaquamarine;defers a great deal of fear,@@ since her exact future hasn't become clear to her yet.
+			$He can barely understand enough $language to understand what's happening to $him. This incapacity @@.mediumaquamarine;defers a great deal of fear,@@ since $his exact future hasn't become clear to $him yet.
 			<<set $activeSlave.trust += 10>>
 		<<else>>
-			She can barely understand $language at all, and scarcely understands what's happening to her. This leaves her @@.mediumaquamarine;unaware of how afraid she should be,@@ since she's too stupid to figure it out without being told.
+			$He can barely understand $language at all, and scarcely understands what's happening to $him. This leaves $him @@.mediumaquamarine;unaware of how afraid $he should be,@@ since $he's too stupid to figure it out without being told.
 			<<set $activeSlave.trust += 25>>
 		<</if>>
 	<</if>>
@@ -302,34 +302,34 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $arcologies[0].FSSupremacist >= 50>>
 	<<if $activeSlave.race == $arcologies[0].FSSupremacistRace>>
-		She realizes that she's a member of the favored race in your arcology, and @@.mediumaquamarine;hopes@@ this will earn her good treatment.
+		$He realizes that $he's a member of the favored race in your arcology, and @@.mediumaquamarine;hopes@@ this will earn $him good treatment.
 		<<set $activeSlave.trust += 2>>
 	<<else>>
-		She realizes that she's not a member of the favored race in your arcology, and @@.gold;fears@@ this will earn her extra abuse.
+		$He realizes that $he's not a member of the favored race in your arcology, and @@.gold;fears@@ this will earn $him extra abuse.
 		<<set $activeSlave.trust -= 4>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSSubjugationist >= 50>>
 	<<if $activeSlave.race != $arcologies[0].FSSubjugationistRace>>
-		She realizes that she's not one of the people considered subhuman here, and @@.mediumaquamarine;hopes@@ this will allow her to avoid some abuse.
+		$He realizes that $he's not one of the people considered subhuman here, and @@.mediumaquamarine;hopes@@ this will allow $him to avoid some abuse.
 		<<set $activeSlave.trust += 2>>
 	<<else>>
-		She realizes that she's one of the people considered subhuman here, and @@.gold;fears@@ she will be unable to avoid degradation.
+		$He realizes that $he's one of the people considered subhuman here, and @@.gold;fears@@ $he will be unable to avoid degradation.
 		<<set $activeSlave.trust -= 4>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSRepopulationFocus >= 50>>
 	<<if $activeSlave.pregKnown == 1>>
-		She realizes that your arcology values bearing children and @@.mediumaquamarine;hopes@@ she'll be treated gently for being pregnant.
+		$He realizes that your arcology values bearing children and @@.mediumaquamarine;hopes@@ $he'll be treated gently for being pregnant.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSRestart >= 50>>
 	<<if $activeSlave.pregKnown == 0>>
-		She recognizes her place in society and @@.mediumaquamarine;is glad@@ she isn't pregnant.
+		$He recognizes $his place in society and @@.mediumaquamarine;is glad@@ $he isn't pregnant.
 		<<set $activeSlave.trust++>>
 	<</if>>
 <</if>>
@@ -337,10 +337,10 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<if $arcologies[0].FSGenderRadicalist >= 50>>
 	<<if $activeSlave.dick > 0>>
 		<<if $activeSlave.anus > 0>>
-			She realizes that your arcology accepts girls with dicks who take it up the ass, and since she qualifies, she @@.mediumaquamarine;hopes@@ to be well treated here.
+			$He realizes that your arcology accepts girls with dicks who take it up the ass, and since $he qualifies, $he @@.mediumaquamarine;hopes@@ to be well treated here.
 			<<set $activeSlave.trust += 2>>
 		<<else>>
-			She realizes that girls with dicks take it up the butt here, and @@.gold;fears@@ for her virgin anus.
+			$He realizes that girls with dicks take it up the butt here, and @@.gold;fears@@ for $his virgin anus.
 			<<set $activeSlave.trust -= 4>>
 		<</if>>
 	<</if>>
@@ -348,21 +348,21 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $arcologies[0].FSGenderFundamentalist >= 50>>
 	<<if $activeSlave.dick == 0>>
-		She realizes that she has a chance of conforming to gender roles in your arcology, and @@.mediumaquamarine;hopes@@ to avoid abuse this way.
+		$He realizes that $he has a chance of conforming to gender roles in your arcology, and @@.mediumaquamarine;hopes@@ to avoid abuse this way.
 		<<set $activeSlave.trust += 2>>
 	<<else>>
-		She realizes that your arcology's culture looks down on girls like her, and @@.gold;fears@@ she'll be abused as a result.
+		$He realizes that your arcology's culture looks down on girls like $him, and @@.gold;fears@@ $he'll be abused as a result.
 		<<set $activeSlave.trust -= 4>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSPaternalist >= 50>>
-	She realizes that your arcology's citizens look after their slaves, you more than anyone, and @@.mediumaquamarine;hopes@@ she'll do well here.
+	$He realizes that your arcology's citizens look after their slaves, you more than anyone, and @@.mediumaquamarine;hopes@@ $he'll do well here.
 	<<set $activeSlave.trust += 2>>
 <</if>>
 
 <<if $arcologies[0].FSDegradationist >= 50>>
-	She realizes that for her, your arcology is likely to be a hell unending, and is @@.gold;terrified.@@
+	$He realizes that for $him, your arcology is likely to be a hell unending, and is @@.gold;terrified.@@
 	<<set $activeSlave.trust -= 5>>
 <</if>>
 
@@ -374,20 +374,20 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $arcologies[0].FSMaturityPreferentialist >= 50>>
 	<<if ($activeSlave.actualAge > 30)>>
-		She realizes that your arcology appreciates older girls, and @@.mediumaquamarine;hopes@@ it'll be nicer here.
+		$He realizes that your arcology appreciates older girls, and @@.mediumaquamarine;hopes@@ it'll be nicer here.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSYouthPreferentialist >= 50>>
 	<<if ($activeSlave.actualAge > 30)>>
-		She realizes that your arcology has little use for older girls, and @@.gold;fears@@ she'll be abused here.
+		$He realizes that your arcology has little use for older girls, and @@.gold;fears@@ $he'll be abused here.
 		<<set $activeSlave.trust -= 4>>
 	<<elseif ($activeSlave.actualAge < 18)>>
 		/% begin is a child block %/
-		/% Set _understands to 0 or 1 to reflect whether she understands. %/
+		/% Set _understands to 0 or 1 to reflect whether $he understands. %/
 		<<set _understands = 0>>
-		<<if ($activeSlave.origin == "She was raised in a radical slave school that treated her from a very young age, up to the point that she never experienced male puberty.") || ($activeSlave.origin == "She was raised in a radical slave school that treated her with drugs and surgery from a very young age.") || ($activeSlave.origin == "She was brought up in a radical slave school to match her twin.")>>
+		<<if ($activeSlave.origin == "She was raised in a radical slave school that treated her from a very young age, up to the point that $he never experienced male puberty.") || ($activeSlave.origin == "She was raised in a radical slave school that treated her with drugs and surgery from a very young age.") || ($activeSlave.origin == "She was brought up in a radical slave school to match her twin.")>>
 			<<set _understands = 1>>
 		<<elseif isSexuallyPure($activeSlave)>>
 			<<if $activeSlave.intelligence > random(0,2)>>
@@ -399,22 +399,22 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 			<</if>>
 		<</if>>
 		<<if _understands < 1>>
-			She has heard that you like little girls and is @@.mediumaquamarine;reassured@@ because she misunderstands what this means.
+			$He has heard that you like little girls and is @@.mediumaquamarine;reassured@@ because $he misunderstands what this means.
 			<<set $activeSlave.trust += 2>>
 		<<elseif ($activeSlave.sexualQuirk == "perverted")>>
-			She has heard that you like little girls and @@.mediumaquamarine;hopes@@ that matching your taste means she will be treated well.
+			$He has heard that you like little girls and @@.mediumaquamarine;hopes@@ that matching your taste means $he will be treated well.
 			<<set $activeSlave.trust += 2>>
 		<<elseif ($activeSlave.sexualQuirk == "size queen") && $PC.dick == 1>>
-			She has heard that you like little girls and @@.hotpink;bites her lip@@ at the thought of how big your dick will be inside her.
+			$He has heard that you like little girls and @@.hotpink;bites $his lip@@ at the thought of how big your dick will be inside $him.
 			<<set  $activeSlave.devotion += 2>>
 		<<elseif ($activeSlave.sexualFlaw == "repressed") || ($activeSlave.sexualFlaw == "shamefast") || ($activeSlave.behavioralFlaw == "devout")>>
-			She has heard that you like little girls and is @@.gold;terrified@@ because she understands exactly what that means.
+			$He has heard that you like little girls and is @@.gold;terrified@@ because $he understands exactly what that means.
 			<<set $activeSlave.trust -= 5>>
 		<<elseif ($activeSlave.sexualFlaw == "hates oral") || ($activeSlave.sexualFlaw == "hates anal") || ($activeSlave.sexualFlaw == "hates penetration") || (isSexuallyPure($activeSlave) && (50 >= random(1, 100)))>>
-			She has heard that you like little girls and @@.gold;fears@@ what you might do to her.
+			$He has heard that you like little girls and @@.gold;fears@@ what you might do to $him.
 			<<set $activeSlave.trust -= 4>>
 		<<else>>
-			She has heard that you like little girls and @@.mediumaquamarine;hopes@@ that matching your taste means she will be treated well.
+			$He has heard that you like little girls and @@.mediumaquamarine;hopes@@ that matching your taste means $he will be treated well.
 			<<set $activeSlave.trust += 2>>
 		<</if>>
 		/% end is a child block %/
@@ -423,92 +423,92 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $arcologies[0].FSSlimnessEnthusiast >= 50>>
 	<<if ($activeSlave.boobs < 500) && ($activeSlave.butt < 3) && ($activeSlave.weight <= 10) && ($activeSlave.muscles <= 30)>>
-		She realizes that she has a fashionable body for your arcology, and @@.mediumaquamarine;hopes@@ it'll earn her some kindness.
+		$He realizes that $he has a fashionable body for your arcology, and @@.mediumaquamarine;hopes@@ it'll earn $him some kindness.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSAssetExpansionist >= 50>>
 	<<if ($activeSlave.butt > 4) && ($activeSlave.boobs > 800)>>
-		She realizes that she has a fashionable body for your arcology, and @@.mediumaquamarine;hopes@@ it'll earn her some kindness.
+		$He realizes that $he has a fashionable body for your arcology, and @@.mediumaquamarine;hopes@@ it'll earn $him some kindness.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSPastoralist >= 50>>
 	<<if ($activeSlave.pregKnown == 1) || ($activeSlave.lactation > 0)>>
-		She realizes that your arcology values slaves with motherly bodies, and @@.mediumaquamarine;hopes@@ she won't be a low value slave for having one.
+		$He realizes that your arcology values slaves with motherly bodies, and @@.mediumaquamarine;hopes@@ $he won't be a low value slave for having one.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSPhysicalIdealist >= 50>>
 	<<if ($activeSlave.muscles > 5)>>
-		She realizes that muscles are respected around here, and though she isn't truly swole, she's partway there; she @@.mediumaquamarine;hopes@@ she'll be kept healthy and strong.
+		$He realizes that muscles are respected around here, and though $he isn't truly swole, $he's partway there; $he @@.mediumaquamarine;hopes@@ $he'll be kept healthy and strong.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSHedonisticDecadence >= 50>>
 	<<if $activeSlave.behavioralFlaw == "gluttonous">>
-		She realizes that fat slaves are preferred around here, and as a glutton, can't wait to @@.mediumaquamarine;eat herself sick.@@
+		$He realizes that fat slaves are preferred around here, and as a glutton, can't wait to @@.mediumaquamarine;eat $himself sick.@@
 		<<set $activeSlave.trust += 2>>
 	<<elseif ($activeSlave.weight > 130) && $activeSlave.behavioralFlaw != "anorexic">>
-		She realizes that fat slaves are preferred around here, and since she is quiet rotund already, she @@.mediumaquamarine;hopes@@ she'll fit right in. That and if the cafeteria is open 24/7.
+		$He realizes that fat slaves are preferred around here, and since $he is quiet rotund already, $he @@.mediumaquamarine;hopes@@ $he'll fit right in. That and if the cafeteria is open 24/7.
 		<<set $activeSlave.trust += 2>>
 	<<elseif ($activeSlave.weight > 10) && $activeSlave.behavioralFlaw != "anorexic">>
-		She realizes that chubby slaves are preferred around here, and though she isn't truly fat, she's partway there; she @@.mediumaquamarine;hopes@@ she'll be kept well fed and happy.
+		$He realizes that chubby slaves are preferred around here, and though $he isn't truly fat, $he's partway there; $he @@.mediumaquamarine;hopes@@ $he'll be kept well fed and happy.
 		<<set $activeSlave.trust += 2>>
 	<<elseif $activeSlave.behavioralFlaw == "anorexic">>
-		She realizes that fat slaves are preferred around here, and that means she'll @@.gold;be made fat too.@@
+		$He realizes that fat slaves are preferred around here, and that means $he'll @@.gold;be made fat too.@@
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSChattelReligionist >= 50>>
 	<<if $activeSlave.intelligence < -1>>
-		Her dimwitted mind naturally takes to being told her role as a slave is righteous, and she naively @@.mediumaquamarine;hopes@@ your arcology's religion will protect her from harm.
+		$His dimwitted mind naturally takes to being told $his role as a slave is righteous, and $he naively @@.mediumaquamarine;hopes@@ your arcology's religion will protect $him from harm.
 		<<set $activeSlave.trust += 2>>
 	<<elseif $activeSlave.intelligence > 1>>
-		Her intelligent mind @@.gold;fears@@ the consequences of living in an arcology in which slavery has taken on religious significance.
+		$His intelligent mind @@.gold;fears@@ the consequences of living in an arcology in which slavery has taken on religious significance.
 		<<set $activeSlave.trust -= 4>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSRomanRevivalist >= 50>>
 	<<if $activeSlave.intelligence > 1>>
-		Though she knows it's not a truly authentic Roman restoration, her intelligent mind grasps the potential benefits of Roman mores for slaves, and she @@.mediumaquamarine;hopes@@ life in your arcology will be managed with virtue.
+		Though $he knows it's not a truly authentic Roman restoration, $his intelligent mind grasps the potential benefits of Roman mores for slaves, and $he @@.mediumaquamarine;hopes@@ life in your arcology will be managed with virtue.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <<elseif $arcologies[0].FSAztecRevivalist >= 50>>
 	<<if $activeSlave.intelligenceImplant == 1>>
-		Though she knows it's not a truly authentic ancient Aztec restoration, her educated mind grasps the potential benefits of ancient Aztec mores for slaves, and she @@.mediumaquamarine;hopes@@ your arcology will make respectful use of her devotion.
+		Though $he knows it's not a truly authentic ancient Aztec restoration, $his educated mind grasps the potential benefits of ancient Aztec mores for slaves, and $he @@.mediumaquamarine;hopes@@ your arcology will make respectful use of $his devotion.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <<elseif $arcologies[0].FSEgyptianRevivalist >= 50>>
 	<<if $activeSlave.intelligenceImplant == 1>>
-		Though she knows it's not a truly authentic ancient Egyptian restoration, her educated mind grasps the potential benefits of ancient Egyptian mores for slaves, and she @@.mediumaquamarine;hopes@@ your arcology will make good and respectful use of her learning.
+		Though $he knows it's not a truly authentic ancient Egyptian restoration, $his educated mind grasps the potential benefits of ancient Egyptian mores for slaves, and $he @@.mediumaquamarine;hopes@@ your arcology will make good and respectful use of $his learning.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <<elseif $arcologies[0].FSEdoRevivalist >= 50>>
 	<<if $activeSlave.intelligenceImplant == 1>>
-		Though she knows it's not a truly authentic feudal Japanese restoration, her educated mind grasps the potential benefits of traditional Japanese mores for slaves, and she @@.mediumaquamarine;hopes@@ your arcology will treat those who behave well with a modicum of honor.
+		Though $he knows it's not a truly authentic feudal Japanese restoration, $his educated mind grasps the potential benefits of traditional Japanese mores for slaves, and $he @@.mediumaquamarine;hopes@@ your arcology will treat those who behave well with a modicum of honor.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <<elseif $arcologies[0].FSArabianRevivalist >= 50>>
 	<<if $activeSlave.intelligenceImplant == 1>>
-		Though she knows it's not a truly authentic restoration of the old Caliphate, her educated mind grasps the potential benefits of old Arabian law and culture for slaves, and she @@.mediumaquamarine;hopes@@ your arcology has absorbed enough of the old wisdom to respect slaves.
+		Though $he knows it's not a truly authentic restoration of the old Caliphate, $his educated mind grasps the potential benefits of old Arabian law and culture for slaves, and $he @@.mediumaquamarine;hopes@@ your arcology has absorbed enough of the old wisdom to respect slaves.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <<elseif $arcologies[0].FSChineseRevivalist >= 50>>
 	<<if $activeSlave.intelligenceImplant == 1>>
-		Though she knows it's not a truly authentic ancient Chinese restoration, her educated mind grasps the potential benefits of ancient Confucian philosophy for slaves, and she @@.mediumaquamarine;hopes@@ your arcology at least maintains some pretense of order and conservatism.
+		Though $he knows it's not a truly authentic ancient Chinese restoration, $his educated mind grasps the potential benefits of ancient Confucian philosophy for slaves, and $he @@.mediumaquamarine;hopes@@ your arcology at least maintains some pretense of order and conservatism.
 		<<set $activeSlave.trust += 2>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSPaternalistLaw == 1>>
-	She saw a good deal of your arcology and its society on her way to your penthouse, and was amazed by all the happy, healthy slaves. She @@.mediumaquamarine;begins to trust@@ that she'll be one of them, and @@.hotpink;anticipates meeting@@ the person who built this place.
+	$He saw a good deal of your arcology and its society on $his way to your penthouse, and was amazed by all the happy, healthy slaves. $He @@.mediumaquamarine;begins to trust@@ that $he'll be one of them, and @@.hotpink;anticipates meeting@@ the person who built this place.
 	<<set $activeSlave.trust += 4>>
 	<<set $activeSlave.devotion += 4>>
 <</if>>
@@ -522,7 +522,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <</if>>
 
 <<if $activeSlave.breedingMark == 1>>
-	She knows her duty in life and playfully splays herself across your desk with her legs spread wide. Unfortunately, she must first be unwrapped before any breeding can begin, so for the time being, she rights herself and makes her way to your crotch to show you just how much she was worth the ¤.
+	$He knows $his duty in life and playfully splays $himself across your desk with $his legs spread wide. Unfortunately, $he must first be unwrapped before any breeding can begin, so for the time being, $he rights $himself and makes $his way to your crotch to show you just how much $he was worth the ¤.
 	<<set $activeSlave.oralCount++, $oralTotal++>>
 
 <<else>>
@@ -536,7 +536,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 		<</replace>>
 	<</link>>
 	<<if $activeSlave.devotion <= 20>>
-		//Will not apply many cosmetic and surgical options since she is not obedient//
+		//Will not apply many cosmetic and surgical options since $he is not obedient//
 	<</if>>
 	</span>
 <</if>>
@@ -544,15 +544,15 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <br><br>
 
 <span id="introResult">
-//Now might be a good time to introduce her to life in your stable of sex slaves//
+//Now might be a good time to introduce $him to life in your stable of sex slaves//
 
 <<switch $activeSlave.origin>>
 <<case "She submitted to enslavement to escape the hard life of an Old World whore.">>
-	//and since she wanted to leave the Old World...//
+	//and since $he wanted to leave the Old World...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Brand her to introduce her to life as a slave whore">>
+	<<link "Brand $him to introduce $him to life as a slave whore">>
 	<<replace "#introResult">>
-		You tell her you'll be marking her as one of your working girls. She looks resigned as she follows you to the body modification studio, and lets you strap her down with her $brandTarget bare. She understands what's coming. You've got her positioned just right<<if canDoAnal($activeSlave)>>, so your cock slides up her experienced asshole easily<</if>>. You bring the brand in close so she can feel the radiated heat, which breaks through even her jaded exterior and makes her tighten with fear. When you're close, you apply the brand<<if canDoAnal($activeSlave)>>, making the poor whore cinch her sphincter down hard in agony, bringing you to climax<</if>>. She knows you know how to @@.gold;apply pain,@@ now, and she @@.mediumorchid;learns to dislike you@@ even as her @@.red;wound@@ heals.
+		You tell $him you'll be marking $him as one of your working girls. $He looks resigned as $he follows you to the body modification studio, and lets you strap $him down with $his $brandTarget bare. $He understands what's coming. You've got $him positioned just right<<if canDoAnal($activeSlave)>>, so your cock slides up $his experienced asshole easily<</if>>. You bring the brand in close so $he can feel the radiated heat, which breaks through even $his jaded exterior and makes $him tighten with fear. When you're close, you apply the brand<<if canDoAnal($activeSlave)>>, making the poor whore cinch $his sphincter down hard in agony, bringing you to climax<</if>>. $He knows you know how to @@.gold;apply pain,@@ now, and $he @@.mediumorchid;learns to dislike you@@ even as $his @@.red;wound@@ heals.
 	<</replace>>
 	<<set $activeSlave.brand = $brandDesign>>
 	<<set $activeSlave.brandLocation = $brandTarget>>
@@ -566,11 +566,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She submitted to enslavement to get access to modern prenatal care.">>
-	//and since she's worried about her child...//
+	//and since $he's worried about $his child...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Manipulate her fear for her pregnancy">>
+	<<link "Manipulate $him fear for $his pregnancy">>
 	<<replace "#introResult">>
-		You place a curative injector on your desk, and describe its remarkable medical powers in detail, before mentioning its extreme cost. Her face rises at the first part and falls at the second. You tell her that if she's a perfect sex slave, she'll get as much as she needs, and that she can start by sucking you off. She grunts a little as she hurries to get her pregnant body down to her knees, but works your cock with almost desperate enthusiasm. You stroke her hair comfortingly as she does, and inject the healing dose into her shoulder. She murmurs her @@.hotpink;gratitude@@ into your dick, but @@.gold;fears@@ for her pregnancy.
+		You place a curative injector on your desk, and describe its remarkable medical powers in detail, before mentioning its extreme cost. $His face rises at the first part and falls at the second. You tell $him that if $he's a perfect sex slave, $he'll get as much as $he needs, and that $he can start by sucking you off. $He grunts a little as $he hurries to get $his pregnant body down to $his knees, but works your cock with almost desperate enthusiasm. You stroke $his hair comfortingly as $he does, and inject the healing dose into $his shoulder. $He murmurs $his @@.hotpink;gratitude@@ into your dick, but @@.gold;fears@@ for $his pregnancy.
 	<</replace>>
 	<<set $activeSlave.devotion += 4>>
 	<<set $activeSlave.trust -= 10>>
@@ -580,11 +580,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She offered herself as a slave to escape the horrors a blind girl faces on the streets.">>
-	//and since she loathes her pregnancy...//
+	//and since $he loathes $his pregnancy...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Abort her child">>
+	<<link "Abort $his child">>
 	<<replace "#introResult">>
-	You loudly place an innocuous-looking drug injector on your desk, and let her think about it for a long moment. Then, you declare exactly what made that sound, abortifacients. After a moment of comprehension, her mood instantly improves. She pledges to @@.hotpink;submit to you,@@ <<if $PC.dick == 1 && $PC.vagina == 1>>suck your cock, take it in her pussy, take it up her ass, eat you out<<elseif $PC.dick == 1>>suck your cock, take it in her pussy, take it up her ass<<else>>eat you out, worship you with her pussy, serve you with her ass<</if>>, anything, as long as you @@.mediumaquamarine;remove her rape baby.@@ You observe that she'll do all of those things, regardless of what you decide to do about her pregnancy, but for now, you'll let her terminate it; she needs all the nutrients for herself right now. She thanks you through her tears.
+	You loudly place an innocuous-looking drug injector on your desk, and let $him think about it for a long moment. Then, you declare exactly what made that sound, abortifacients. After a moment of comprehension, $his mood instantly improves. $He pledges to @@.hotpink;submit to you,@@ <<if $PC.dick == 1 && $PC.vagina == 1>>suck your cock, take it in $his pussy, take it up $his ass, eat you out<<elseif $PC.dick == 1>>suck your cock, take it in $his pussy, take it up $his ass<<else>>eat you out, worship you with $his pussy, serve you with $his ass<</if>>, anything, as long as you @@.mediumaquamarine;remove $his rape baby.@@ You observe that $he'll do all of those things, regardless of what you decide to do about $his pregnancy, but for now, you'll let $him terminate it; $he needs all the nutrients for $himself right now. $He thanks you through $his tears.
 	<</replace>>
 	<<set $activeSlave.devotion += 4>>
 	<<set $activeSlave.trust += 3>>
@@ -599,12 +599,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She submitted to enslavement for a better chance at survival than she had as a migrant.">>
-	//and since she's trying to do better than life as a migrant...//
+	//and since $he's trying to do better than life as a migrant...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if canDoAnal($activeSlave)>>
-		<<link "Introduce her to anal service">>
+		<<link "Introduce $him to anal service">>
 			<<replace "#introResult">>
-				You carefully and patiently explain to the fearful anal virgin how skilled Free Cities slaves take dick up the butt. She is allowed to go at her own pace, hesitantly progressing from enemata to a single well-lubricated finger to a little plug. After a long while she's beginning to get aroused, and you bring her over to the couch to spoon. She stiffens with fear but you take your time and just cuddle for a while before gently sodomizing her. She @@.hotpink;thanks@@ you for being a @@.mediumaquamarine;kind master,@@ and has @@.green;learned@@ the basics of taking it up the ass.
+				You carefully and patiently explain to the fearful anal virgin how skilled Free Cities slaves take dick up the butt. $He is allowed to go at $his own pace, hesitantly progressing from enemata to a single well-lubricated finger to a little plug. After a long while $he's beginning to get aroused, and you bring $him over to the couch to spoon. $He stiffens with fear but you take your time and just cuddle for a while before gently sodomizing $him. $He @@.hotpink;thanks@@ you for being a @@.mediumaquamarine;kind master,@@ and has @@.green;learned@@ the basics of taking it up the ass.
 			<</replace>>
 			<<set $activeSlave.devotion += 4>>
 			<<set $activeSlave.trust += 4>>
@@ -613,9 +613,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 			<<= AnalVCheck()>>
 		<</link>>
 
-		 | <<link "Initiate her with anal pain">>
+		 | <<link "Initiate $him with anal pain">>
 			<<replace "#introResult">>
-				You haul her wordlessly into the bathroom. In a few minutes she finds herself standing obediently behind you, waiting for your next command with a clean colon and an uncomfortably large buttplug stretching her virgin ass. Once it's been in long enough to prevent any damage, you push her fearful form over the desk and pull it free. She squeals with more embarrassment than pain at the feeling of her first sodomy, but before long you're pounding her hard enough that all she can do is moan and desperately wonder when you'll be done with her poor little butt. You keep her around all day; by night, her asshole is well broken in and @@.mediumorchid;so is her spirit.@@ She @@.gold;fears@@ you now, knowing this is only the beginning.
+				You haul $him wordlessly into the bathroom. In a few minutes $he finds $himself standing obediently behind you, waiting for your next command with a clean colon and an uncomfortably large buttplug stretching $his virgin ass. Once it's been in long enough to prevent any damage, you push $his fearful form over the desk and pull it free. $He squeals with more embarrassment than pain at the feeling of $his first sodomy, but before long you're pounding $him hard enough that all $he can do is moan and desperately wonder when you'll be done with $his poor little butt. You keep $him around all day; by night, $his asshole is well broken in and @@.mediumorchid;so is $his spirit.@@ $He @@.gold;fears@@ you now, knowing this is only the beginning.
 			<</replace>>
 			<<set $activeSlave.devotion -= 5>>
 			<<set $activeSlave.trust -= 10>>
@@ -626,11 +626,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She submitted to enslavement as her only way to obtain surgery to transform her into a woman.">>
-	//and since she came here for surgery...//
+	//and since $he came here for surgery...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Give her her surgery">>
+	<<link "Give $him $his surgery">>
 		<<replace "#introResult">>
-			When she hears she'll be heading to surgery immediately, she bursts into @@.hotpink;tears of gratitude@@ and makes to run around your desk to hug you before checking herself. She clearly doesn't want to put a foot wrong and isn't sure it would be appropriate. You solve her dilemma by meeting her with an embrace. She @@.mediumaquamarine;cries into your chest@@ and promises to be your best slave. The surgery does affect her @@.red;health@@ a little.
+			When $he hears $he'll be heading to surgery immediately, $he bursts into @@.hotpink;tears of gratitude@@ and makes to run around your desk to hug you before checking $himself. $He clearly doesn't want to put a foot wrong and isn't sure it would be appropriate. You solve $his dilemma by meeting $him with an embrace. $He @@.mediumaquamarine;cries into your chest@@ and promises to be your best slave. The surgery does affect $his @@.red;health@@ a little.
 		<</replace>>
 		<<set $activeSlave.devotion += 15>>
 		<<set $activeSlave.health -= 10>>
@@ -639,9 +639,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 		<<set $activeSlave.dick = 0>>
 		<<set $activeSlave.balls = 0>>
 	<</link>>
-	 | <<link "Use her as she is">>
+	 | <<link "Use $him as $he is">>
 		<<replace "#introResult">>
-			You announce that she'll have to earn her surgery - if she ever gets it at all. She only has time for a moment of shock and betrayal before she finds her face jammed into the cushions of your office couch. She struggles, outraged, but only manages to avoid sodomy for a moment. Her resistance only makes it harder on herself as you take her anus without mercy. By the third time you buttfuck her she's learned to @@.hotpink;relax and let it happen.@@
+			You announce that $he'll have to earn $his surgery - if $he ever gets it at all. $He only has time for a moment of shock and betrayal before $he finds $his face jammed into the cushions of your office couch. $He struggles, outraged, but only manages to avoid sodomy for a moment. $His  resistance only makes it harder on $himself as you take $his anus without mercy. By the third time you buttfuck $him $he's learned to @@.hotpink;relax and let it happen.@@
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.anus += 1>>
@@ -650,12 +650,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She submitted to enslavement out of a misguided desire to join a sexually libertine society.">>
-	//and since she's looking for a sexually libertine society...//
+	//and since $he's looking for a sexually libertine society...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if canDoAnal($activeSlave)>>
-		<<link "Disabuse her of her silly ideas">>
+		<<link "Disabuse $him of $his silly ideas">>
 			<<replace "#introResult">>
-				You rise from your desk and move in close. She turns to face you but you roughly spin her around. You haul her up on tiptoe so you can use her standing. As you get your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> lined up with her sissy ass she starts to struggle and protest, asking you to fuck in a more comfortable position. You tell her to keep her whore mouth shut, and administer an awful slap when she tries to keep talking. Her stupid illusions about life as a sex slave @@.mediumorchid;melt away@@ with the burning sensation of a dick forcing its way up her ass at an harsh angle. She wilts a little as you abuse her butt, and afterward, she's in tears as she stumbles to the bathroom to wash her fuckhole. She's regained her composure by the time she gets out but @@.gold;breaks down@@ when you tell her to present her asshole again.
+				You rise from your desk and move in close. $He turns to face you but you roughly spin $him around. You haul $him up on tiptoe so you can use $him standing. As you get your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> lined up with $his sissy ass $he starts to struggle and protest, asking you to fuck in a more comfortable position. You tell $him to keep $his whore mouth shut, and administer an awful slap when $he tries to keep talking. $His stupid illusions about life as a sex slave @@.mediumorchid;melt away@@ with the burning sensation of a dick forcing its way up $his ass at an harsh angle. $He wilts a little as you abuse $his butt, and afterward, $he's in tears as $he stumbles to the bathroom to wash $his fuckhole. $He's regained $his composure by the time $he gets out but @@.gold;breaks down@@ when you tell $him to present $his asshole again.
 			<</replace>>
 			<<set $activeSlave.devotion -= 5>>
 			<<set $activeSlave.trust -= 10>>
@@ -663,9 +663,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 		<</link>>
 	<</if>>
 	<<if ($activeSlave.indentureRestrictions <= 0) && ($seeExtreme == 1)>>
-		 | <<link "Cruelly castrate her">>
+		 | <<link "Cruelly castrate $him">>
 			<<replace "#introResult">>
-				You rise from your desk and move in close, wordlessly dominating her without touch, tempting and overawing her until she's desperate with desire, her prick stiff as iron. She follows you willingly into the autosurgery and even allows you to strap her in, face down, without comment. Her fuckhole welcomes your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> and she gasps with pleasure. She climaxes with indecent speed, dripping her cum onto the surgery floor. You keep fucking her, but lean forward to whisper to her that that was her last hardon. She's completely confused and says nothing, but gradually realizes what the numb feeling around her ballsack means. She @@.gold;screams with horror@@ and @@.mediumorchid;sobs disconsolately@@ as the autosurgery disengages from her clipped genitals and you disengage from her <<if $PC.dick == 1>>cum-filled<<else>>wilting<</if>> butthole. She gingerly stumbles back to your office with you and, without even being ordered to, arranges herself on the couch with her fuckhole ready. The gelding does affect her @@.red;health@@ somewhat.
+				You rise from your desk and move in close, wordlessly dominating $him without touch, tempting and overawing $him until $he's desperate with desire, $his prick stiff as iron. $He follows you willingly into the autosurgery and even allows you to strap $him in, face down, without comment. $His fuckhole welcomes your <<if $PC.dick == 1>>cock<<else>>strap-on<</if>> and $he gasps with pleasure. $He climaxes with indecent speed, dripping $his cum onto the surgery floor. You keep fucking $him, but lean forward to whisper to $him that that was $his last hardon. $He's completely confused and says nothing, but gradually realizes what the numb feeling around $his ballsack means. $He @@.gold;screams with horror@@ and @@.mediumorchid;sobs disconsolately@@ as the autosurgery disengages from $his clipped genitals and you disengage from $his <<if $PC.dick == 1>>cum-filled<<else>>wilting<</if>> butthole. $He gingerly stumbles back to your office with you and, without even being ordered to, arranges $himself on the couch with $his fuckhole ready. The gelding does affect $his @@.red;health@@ somewhat.
 			<</replace>>
 			<<set $activeSlave.devotion -= 10>>
 			<<set $activeSlave.trust -= -10>>
@@ -677,10 +677,10 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She asked to be enslaved out of naive infatuation with you.">>
-	//and since she is already infatuated with you...//
+	//and since $he is already infatuated with you...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if canDoAnal($activeSlave) || canDoVaginal($activeSlave)>>
-		<<link "Let her show you what she can do">>
+		<<link "Let $him show you what $he can do">>
 			<<if $activeSlave.vagina == 1>>
 				<<set _temp = random(1,100)>>
 			<<else>>
@@ -692,16 +692,16 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 				<<= AnalVCheck()>>
 			<</if>>
 			<<replace "#introResult">>
-				You tell her that slaves working in your penthouse are all expected to please you, and she'll have to impress you. She smiles and even giggles a little, standing to strip off her clothes, taking her time and showing off her fresh body. She gets lewder and lewder, displaying youthful libido basking in the gaze of her crush. She slowly becomes more and more desperate to entice you, so you let her keep going out of curiosity, to see how far she'll go. She goes to the point of reclining on the couch with her legs back, spreading herself and masturbating, and when that fails to get you out of your chair, she begins to wink her <<if _temp > 50>>pussy<<else>>anus<</if>> meaningfully. She's clearly got a good idea of what many men like, and you head over and take her tight <<if _temp > 50>>pussy<<else>>asshole<</if>>. You do it gently, making sure she enjoys herself, and she becomes @@.mediumaquamarine;very hopeful@@ that she was wrong to doubt you, and that she really can @@.hotpink;be close to@@ the object of her infatuation. She bounces up off the couch afterward to wiggle her butt at you, and even blows you a kiss as you get back to work.
+				You tell $him that slaves working in your penthouse are all expected to please you, and $he'll have to impress you. $He smiles and even giggles a little, standing to strip off $his clothes, taking $his time and showing off $his fresh body. $He gets lewder and lewder, displaying youthful libido basking in the gaze of $his crush. $He slowly becomes more and more desperate to entice you, so you let $him keep going out of curiosity, to see how far $he'll go. $He goes to the point of reclining on the couch with $his legs back, spreading $himself and masturbating, and when that fails to get you out of your chair, $he begins to wink $his <<if _temp > 50>>pussy<<else>>anus<</if>> meaningfully. $He's clearly got a good idea of what many men like, and you head over and take $his tight <<if _temp > 50>>pussy<<else>>asshole<</if>>. You do it gently, making sure $he enjoys $himself, and $he becomes @@.mediumaquamarine;very hopeful@@ that $he was wrong to doubt you, and that $he really can @@.hotpink;be close to@@ the object of $his infatuation. $He bounces up off the couch afterward to wiggle $his butt at you, and even blows you a kiss as you get back to work.
 			<</replace>>
 			<<set $activeSlave.devotion += 4>>
 			<<set $activeSlave.trust += 4>>
 		<</link>>
 	<</if>>
 	<<if canDoAnal($activeSlave)>>
-		 | <<link "Make sure she knows she made a mistake">>
+		 | <<link "Make sure $he knows $he made a mistake">>
 			<<replace "#introResult">>
-				You tell her that slaves working in your penthouse are all expected to please you, and she nods eagerly. She strips, only starting to look doubtful again when you brusquely order her to hurry up. You order her get down on the ground with her face up, her shoulders against the floor; she does, and then you order her to put her legs over her head. She looks puzzled but does, flipping herself flexibly up until she's doing a shoulder stand, bent double with her crotch over her face. You stand over her and shove <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>> down and into her asshole. This is an advanced anal position and although she's clearly no anal virgin it's well beyond her. She does her best but tears begin to streak her cheeks. After a while you tire of the position and flip her over onto her face to assrape her doggy style. This allows you to whisper into her ear that her holes are your property now, to use, to abuse, or to sell. She @@.mediumorchid;sobs in despair@@ at the latter, knowing she's @@.gold;thrown her life away.@@
+				You tell $him that slaves working in your penthouse are all expected to please you, and $he nods eagerly. $He strips, only starting to look doubtful again when you brusquely order $him to hurry up. You order $him to get down on the ground with $his face up, $his shoulders against the floor; $he does, and then you order $him to put $his legs over $his head. $He looks puzzled but does, flipping $himself flexibly up until $he's doing a shoulder stand, bent double with $his crotch over $his face. You stand over $him and shove <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>> down and into $his asshole. This is an advanced anal position and although $he's clearly no anal virgin it's well beyond $him. $He does $his best but tears begin to streak $his cheeks. After a while you tire of the position and flip $him over onto $his face to assrape $him doggy style. This allows you to whisper into $his ear that $his holes are your property now, to use, to abuse, or to sell. $He @@.mediumorchid;sobs in despair@@ at the latter, knowing $he's @@.gold;thrown $his life away.@@
 			<</replace>>
 			<<set $activeSlave.devotion -= 5>>
 			<<set $activeSlave.trust -= 10>>
@@ -711,20 +711,20 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She asked to be enslaved in the hope you'd treat a fellow woman well.">>
-	//and since she's hoping to protect someone...//
+	//and since $he's hoping to protect someone...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Build a connection with her">>
+	<<link "Build a connection with $him">>
 		<<replace "#introResult">>
-			You ask conversationally what experience she has with women. She takes a while to understand your point, but once she does, she blushes and <<say>>s, "Uh, I me<<ss>>ed around in <<s>>chool on<<c>>e or twi<<c>>e, but <<s>>in<<c>>e then, I've never -" and is then quiet, because you're making out with her. She's surprised and stiffens for a moment but perceptibly thinks things through and realizes she's yours now, and then she relaxes to let you have your way. You push her boundaries pretty far, and before long you've got her down on her knees eating you out. She's badly discomfited but does her best; she's @@.mediumaquamarine;hopeful@@ that she can do this, and slave life won't be so bad.
+			You ask conversationally what experience $he has with women. $He takes a while to understand your point, but once $he does, $he blushes and <<say>>s, "Uh, I me<<ss>>ed around in <<s>>chool on<<c>>e or twi<<c>>e, but <<s>>in<<c>>e then, I've never -" and is then quiet, because you're making out with $him. $He's surprised and stiffens for a moment but perceptibly thinks things through and realizes $he's yours now, and then $he relaxes to let you have your way. You push $his boundaries pretty far, and before long you've got $him down on $his knees eating you out. $He's badly discomfited but does $his best; $he's @@.mediumaquamarine;hopeful@@ that $he can do this, and slave life won't be so bad.
 		<</replace>>
 		<<set $activeSlave.trust += 4>>
 		<<set $activeSlave.oralCount += 1>>
 		<<set $oralTotal += 1>>
 	<</link>>
 	<<if canDoAnal($activeSlave)>>
-		 | <<link "Put her in her place">>
+		 | <<link "Put $him in $his place">>
 		 <<replace "#introResult">>
-			You stand up and tell her to strip. She hesitates, staring at you in dawning apprehension, until she sees that you're stepping into a strap-on. She unconsciously takes a step backward, but that's as far as she gets before you cover the ground between you, grab her by the throat, and push her back until she falls onto the couch. You drag the head of the fake phallus down over her pussylips, and she shivers, but you keep going, telling her that you'll only be fucking her there when she's good. When she's bad, you'll assfuck her. Her eyes fly open and she tries to struggle, but you give her a warning slap and then push yourself home. She starts to cry, more from hopelessness than anal pain, knowing that @@.mediumorchid;you're a slaveowner like any other,@@ more likely to @@.gold;abuse her@@ than be sympathetic.
+			You stand up and tell $him to strip. $He hesitates, staring at you in dawning apprehension, until $he sees that you're stepping into a strap-on. $He unconsciously takes a step backward, but that's as far as $he gets before you cover the ground between you, grab $him by the throat, and push $his back until $he falls onto the couch. You drag the head of the fake phallus down over $his pussylips, and $he shivers, but you keep going, telling $him that you'll only be fucking $him there when $he's good. When $he's bad, you'll assfuck $him. $His eyes fly open and $he tries to struggle, but you give $him a warning slap and then push yourself home. $He starts to cry, more from hopelessness than anal pain, knowing that @@.mediumorchid;you're a slaveowner like any other,@@ more likely to @@.gold;abuse $him@@ than be sympathetic.
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 5>>
@@ -734,11 +734,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She asked to be enslaved since she felt you were her only hope of becoming a prettier woman.">>
-	//and since she desperately wants to be a prettier woman...//
+	//and since $he desperately wants to be a prettier woman...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Start by fixing that voice of hers">>
+	<<link "Start by fixing that voice of $hers">>
 		<<replace "#introResult">>
-			You schedule her for some vocal surgery. You have her brought in to be inspected the next day, and though she's healing well, she's not to speak yet. She's sore enough to obey the stricture, but when she stands naked before your desk she clearly wants to communicate something. You approach her and place a finger on her fake lips, shushing her, and you tell her you understand. You kiss her and push her backward until she falls onto the couch; she smiles @@.mediumaquamarine;trustingly@@ and pulls her legs apart and back, offering you her asshole. She has a stiff hardon, a clear indication that she's honestly @@.hotpink;attracted to you,@@ and though she still doesn't speak, she makes a sore little whinny of pleasure when you enter her welcoming butt.
+			You schedule $him for some vocal surgery. You have $him brought in to be inspected the next day, and though $he's healing well, $he's not to speak yet. $He's sore enough to obey the stricture, but when $he stands naked before your desk $he clearly wants to communicate something. You approach $him and place a finger on $his fake lips, shushing $him, and you tell $him you understand. You kiss $him and push $him backward until $he falls onto the couch; $he smiles @@.mediumaquamarine;trustingly@@ and pulls $his legs apart and back, offering you $his asshole. $He has a stiff hardon, a clear indication that $he's honestly @@.hotpink;attracted to you,@@ and though $he still doesn't speak, $he makes a sore little whinny of pleasure when you enter $his welcoming butt.
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.trust += 4>>
@@ -747,9 +747,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 		<<= AnalVCheck()>>
 	<</link>>
 	<<if canDoAnal($activeSlave)>>
-		 | <<link "Let her know she'll have to earn her rewards">>
+		 | <<link "Let $him know $he'll have to earn $his rewards">>
 			<<replace "#introResult">>
-				You complete the induction and then perform a thorough inspection, noting down each area in which surgery or drugs could improve her body. She understands what you're doing and can barely contain her excitement, but you tell her that she'll have to earn such improvements. Her face falls. You reassure her that it won't take the years she would have had to work to afford such things herself, but that she needs to be a good slave, and soon, for you to spend resources on her. You let her start by taking a rough buttfuck, bent over the desk. Her ass is tight and you are not merciful. She gasps and moans but takes it all the same, @@.mediumaquamarine;trusting@@ that she'll eventually be rewarded with transformation.
+				You complete the induction and then perform a thorough inspection, noting down each area in which surgery or drugs could improve $his body. $He understands what you're doing and can barely contain $his excitement, but you tell $him that $he'll have to earn such improvements. $His  face falls. You reassure $him that it won't take the years $he would have had to work to afford such things $himself, but that $he needs to be a good slave, and soon, for you to spend resources on $him. You let $him start by taking a rough buttfuck, bent over the desk. $His  ass is tight and you are not merciful. $He gasps and moans but takes it all the same, @@.mediumaquamarine;trusting@@ that $he'll eventually be rewarded with transformation.
 			<</replace>>
 			<<set $activeSlave.trust += 10>>
 			<<= AnalVCheck()>>
@@ -758,12 +758,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She was transformed and enslaved after she fell into debt to you.">>
-	//and since she's so deeply in debt to you...//
+	//and since $he's so deeply in debt to you...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if canDoAnal($activeSlave)>>
-		<<link "Introduce her to getting fucked">>
+		<<link "Introduce $him to getting fucked">>
 			<<replace "#introResult">>
-				You stand up, your <<if $PC.dick == 1>>erection<<if $PC.vagina == 1>> and the pussy beneath it<</if>><<else>>strap-on<</if>> suddenly becoming visible to her, and order her in a conversational tone of voice to kneel on the couch and spread her buttocks. The true nature of her new life crashes down on her in a moment, and she cannot decide whether to run, to rage, or to cry. You solve her dilemma for her by seizing her and flinging her toward the couch, administering practiced cracks of your palm to her ass until she complies. She sobs as she feels the burning sensation of her @@.lime;anal virginity being taken,@@ knowing that she can now be @@.gold;used at will@@ and is now subject to the whims of someone who has shown themselves @@.mediumorchid;willing to rape her anus.@@
+				You stand up, your <<if $PC.dick == 1>>erection<<if $PC.vagina == 1>> and the pussy beneath it<</if>><<else>>strap-on<</if>> suddenly becoming visible to $him, and order $him in a conversational tone of voice to kneel on the couch and spread $his buttocks. The true nature of $his new life crashes down on $him in a moment, and $he cannot decide whether to run, to rage, or to cry. You solve $his dilemma for $him by seizing $him and flinging $him toward the couch, administering practiced cracks of your palm to $his ass until $he complies. $He sobs as $he feels the burning sensation of $his @@.lime;anal virginity being taken,@@ knowing that $he can now be @@.gold;used at will@@ and is now subject to the whims of someone who has shown themselves @@.mediumorchid;willing to rape $his anus.@@
 			<</replace>>
 			<<set $activeSlave.devotion -= 5>>
 			<<set $activeSlave.trust -= 5>>
@@ -774,12 +774,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She offered herself to you as a slave to escape a life of boredom.">>
-	//and since she was so bored...//
+	//and since $he was so bored...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if canDoAnal($activeSlave)>>
-		<<link "Make sure she enjoys her first butt stuff">>
+		<<link "Make sure $he enjoys $his first butt stuff">>
 			<<replace "#introResult">>
-				You make no direct answer to her nervous question about her virgin butt, though you do wonder how she was so selfish as to be a Free Cities party girl without giving up her asshole nightly. Instead, you ask her about herself, ensuring that she learns the proper way to answer questions from her <<if $PC.title == 1>>master<<else>>mistress<</if>>. She answers readily, even when you turn the subject to her sexual experiences, and she starts to get visibly aroused. Before long, she finds herself sitting on your lap on the couch, making out with you while she gives you a handjob. She stiffens a little when you begin to play with her butthole, but you take your time. Soon she's taking a finger, and then two, and before long, she's riding <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>>. She doesn't climax to her @@.lime;first buttsex,@@ but she is learning to @@.mediumaquamarine;trust@@ that you won't hurt her.
+				You make no direct answer to $his nervous question about $his virgin butt, though you do wonder how $he was so selfish as to be a Free Cities party girl without giving up $his asshole nightly. Instead, you ask $him about $himself, ensuring that $he learns the proper way to answer questions from $his <<if $PC.title == 1>>master<<else>>mistress<</if>>. $He answers readily, even when you turn the subject to $his sexual experiences, and $he starts to get visibly aroused. Before long, $he finds $himself sitting on your lap on the couch, making out with you while $he gives you a handjob. $He stiffens a little when you begin to play with $his butthole, but you take your time. Soon $he's taking a finger, and then two, and before long, $he's riding <<if $PC.dick == 1>>your cock<<else>>a strap-on<</if>>. $He doesn't climax to $his @@.lime;first buttsex,@@ but $he is learning to @@.mediumaquamarine;trust@@ that you won't hurt $him.
 			<</replace>>
 			<<set $activeSlave.trust += 10>>
 			<<set $activeSlave.anus = 1>>
@@ -789,12 +789,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She sold herself into slavery out of fear that life on the streets was endangering her pregnancy.">>
-	//and since she is here to protect her pregnancy...//
+	//and since $he is here to protect $his pregnancy...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if canDoAnal($activeSlave)>>
-		<<link "Make sure she enjoys her first anal sex">>
+		<<link "Make sure $he enjoys $his first anal sex">>
 			<<replace "#introResult">>
-				You introduce her to obedience and proper manners regarding her <<if $PC.title == 1>>master<<else>>mistress<</if>> before sending her off for a physical. That night, she's returned to your room, and finds you doing business on a tablet in bed. She looks doubtful, but obeys when you direct her to get into bed<<if $PC.dick == 0>>, even after she realizes you're wearing a strap-on<</if>>. You turn out the light and spoon her from behind, kissing her neck and ears, cupping her swollen breasts, and running your hands across her pregnant belly with its taut $activeSlave.skin skin. She's awkward at first but her body responds to the tenderness. Before long she's humping her pussy back and forth against <<if $PC.dick == 1>>your cock<<else>>the strap-on<</if>>. You tell her no, not there, and begin to gently work <<if $PC.dick == 1>>your dickhead<<else>>its tip<</if>> up her tight but relaxed ass. She's unsure of herself, but you keep her nice and relaxed. She doesn't climax to her @@.lime;first buttsex,@@ but she is learning to @@.mediumaquamarine;trust@@ that you won't hurt her.
+				You introduce $him to obedience and proper manners regarding $his <<if $PC.title == 1>>master<<else>>mistress<</if>> before sending $him off for a physical. That night, $he's returned to your room, and finds you doing business on a tablet in bed. $He looks doubtful, but obeys when you direct $him to get into bed<<if $PC.dick == 0>>, even after $he realizes you're wearing a strap-on<</if>>. You turn out the light and spoon $him from behind, kissing $his neck and ears, cupping $his swollen breasts, and running your hands across $his pregnant belly with its taut $activeSlave.skin skin. $He's awkward at first but $his body responds to the tenderness. Before long $he's humping $his pussy back and forth against <<if $PC.dick == 1>>your cock<<else>>the strap-on<</if>>. You tell $him no, not there, and begin to gently work <<if $PC.dick == 1>>your dickhead<<else>>its tip<</if>> up $his tight but relaxed ass. $He's unsure of $himself, but you keep $him nice and relaxed. $He doesn't climax to $his @@.lime;first buttsex,@@ but $he is learning to @@.mediumaquamarine;trust@@ that you won't hurt $him.
 			<</replace>>
 			<<set $activeSlave.trust += 10>>
 			<<set $activeSlave.anus = 1>>
@@ -804,11 +804,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She offered herself to you as a slave to escape the hard life of a free whore.">>
-	//and since she is trying to escape the hard life of a free whore...//
+	//and since $he is trying to escape the hard life of a free whore...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Clean up her whorish appearance">>
+	<<link "Clean up $his whorish appearance">>
 		<<replace "#introResult">>
-			She's totally unsurprised when you send her to the salon for a makeover. It takes several days of work before she's brought back in for another inspection; when she arrives, you wordlessly point her to a full length mirror. She <<if canSee($activeSlave)>>sees herself<<else>> <<if $activeSlave.amp != 1>>tenderly uses her hands and finds herself<<else>> stoically waits while you vividly describe her new appearance. One<</if>> <</if>>without tattoos, a hooker's haircut and piercings, a conventionally pretty girl with subtle implants and a clean appearance. She gasps <<if $activeSlave.amp != 0>>and covers her mouth with a hand <<else>> but quickly closes her mouth<</if>>, and then suddenly bursts into tears. "Thank you, <<Master>>," she sobs. "I never would have thought." <<if $activeSlave.amp != 1>> She reaches out to touch her reflection.<</if>> "I <<if canSee($activeSlave)>> look <<else>> would look<</if>> like a nice girl." She is @@.hotpink;grateful to you@@ for <<if canSee($activeSlave)>>showing her<<else>> <<if $activeSlave.amp != 1>> letting her feel <<else>> detailing <</if>> <</if>> this new side of herself, and has @@.mediumaquamarine;begun to trust@@ that being your slave will be less degrading than being a free prostitute.
+			$He's totally unsurprised when you send $him to the salon for a makeover. It takes several days of work before $he's brought back in for another inspection; when $he arrives, you wordlessly point $him to a full length mirror. $He <<if canSee($activeSlave)>>sees $himself<<else>> <<if $activeSlave.amp != 1>>tenderly uses $his hands and finds $himself<<else>> stoically waits while you vividly describe $his new appearance. One<</if>> <</if>>without tattoos, a hooker's haircut and piercings, a conventionally pretty girl with subtle implants and a clean appearance. $He gasps <<if $activeSlave.amp != 0>>and covers $his mouth with a hand <<else>> but quickly closes $his mouth<</if>>, and then suddenly bursts into tears. "Thank you, <<Master>>," $he sobs. "I never would have thought." <<if $activeSlave.amp != 1>> $He reaches out to touch $his reflection.<</if>> "I <<if canSee($activeSlave)>> look <<else>> would look<</if>> like a nice girl." $He is @@.hotpink;grateful to you@@ for <<if canSee($activeSlave)>>showing $him<<else>> <<if $activeSlave.amp != 1>> letting $him feel <<else>> detailing <</if>> <</if>> this new side of $himself, and has @@.mediumaquamarine;begun to trust@@ that being your slave will be less degrading than being a free prostitute.
 		<</replace>>
 		<<set $activeSlave.trust += 4>>
 		<<set $activeSlave.devotion += 4>>
@@ -831,17 +831,17 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She sold herself into slavery to escape life on the streets.">>
-	//and since she is trying to escape life on the streets...//
+	//and since $he is trying to escape life on the streets...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Show off her tits">>
+	<<link "Show off $his tits">>
 		<<replace "#introResult">>
-			You send her out to be cleaned up and inducted, but have her brought back afterward. You point out a clothes box on the couch and tell her to get dressed, since you're about to make a tour of the club, and she'll be accompanying you. She obeys without comment, but gasps with shock to find that she's been given a string sling bikini. She climbs into it hesitantly, and finds that not only does its string bottom ride up between her pussylips, it does not cover her nipples at all: the strings part to either side of the nipples to let them stick through, bare. This can only generously be called clothing. She accepts this with an obvious internal sigh, however, and walks dutifully behind you, her bare feet slapping along as her big butt bounces and her tits constantly fall out of her strings.
+			You send $him out to be cleaned up and inducted, but have $him brought back afterward. You point out a clothes box on the couch and tell $him to get dressed, since you're about to make a tour of the club, and $he'll be accompanying you. $He obeys without comment, but gasps with shock to find that $he's been given a string sling bikini. $He climbs into it hesitantly, and finds that not only does its string bottom ride up between $his pussylips, it does not cover $his nipples at all: the strings part to either side of the nipples to let them stick through, bare. This can only generously be called clothing. $He accepts this with an obvious internal sigh, however, and walks dutifully behind you, $his bare feet slapping along as $his big butt bounces and $his tits constantly fall out of $his strings.
 			<<if $activeSlave.behavioralFlaw != "shamefast">>
-				After a while, though, she notices that she's getting a lot of very positive attention, and even starts to strut it a little. When you get back to the penthouse, you ask her how she felt. She blushes. "Kinda hot, <<Master>>," she <<say>>s, embarrassed. "I didn't think an older girl like me would get <<s>>o many <<s>>tare<<s>>." You reach out to grope her tits, and tell her that with breasts like hers, it's not surprising. She @@.hotpink;likes you@@ for liking her body, and has @@.mediumaquamarine;begun to trust@@ that even though she's old, she can find a place under you.
+				After a while, though, $he notices that $he's getting a lot of very positive attention, and even starts to strut it a little. When you get back to the penthouse, you ask $him how $he felt. $He blushes. "Kinda hot, <<Master>>," $he <<say>>s, embarrassed. "I didn't think an older girl like me would get <<s>>o many <<s>>tare<<s>>." You reach out to grope $his tits, and tell $him that with breasts like hers, it's not surprising. $He @@.hotpink;likes you@@ for liking $his body, and has @@.mediumaquamarine;begun to trust@@ that even though $he's old, $he can find a place under you.
 				<<set $activeSlave.trust += 4>>
 				<<set $activeSlave.devotion += 4>>
 			<<else>>
-				After a while, though, she notices that she's getting a lot of very positive attention, but she remains embarrassed. Her gait is clumsy and hesitant, and she almost trips over herself with mortification. When you get back to the penthouse, you ask her how she felt. She blushes furiously. "T-terrible, <<Master>>," she <<say>>s with feeling. "P-plea<<s>>e, I'll @@.hotpink;d-do anything you want@@ @@.gold;a<<s>> long a<<s>> you don't m-make me do that again.@@ Anything." She thinks frantically, obviously trying to come up with the most abject idea she can. "I'll b-be a whore! J-ju<<s>>t a<<s>> long a<<s>> I can do it, you know, in a room."
+				After a while, though, $he notices that $he's getting a lot of very positive attention, but $he remains embarrassed. $His gait is clumsy and hesitant, and $he almost trips over $himself with mortification. When you get back to the penthouse, you ask $him how $he felt. $He blushes furiously. "T-terrible, <<Master>>," $he <<say>>s with feeling. "P-plea<<s>>e, I'll @@.hotpink;d-do anything you want@@ @@.gold;a<<s>> long a<<s>> you don't m-make me do that again.@@ Anything." $He thinks frantically, obviously trying to come up with the most abject idea $he can. "I'll b-be a whore! J-ju<<s>>t a<<s>> long a<<s>> I can do it, you know, in a room."
 				<<set $activeSlave.trust -= 4>>
 				<<set $activeSlave.devotion += 4>>
 			<</if>>
@@ -851,11 +851,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 /*Written by DrPill, coded by Boney M*/
 <<case "She was recruited into your service by her big sis." "She was recruited into your service by her older sister.">>
-	//and since she was recruited by her older sister...//
+	//and since $he was recruited by $his older sister...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Use her big sister as an example">>
+	<<link "Use $his big sister as an example">>
 		<<replace "#introResult">>
-			Your new slave appears <<if $activeSlave.devotion < -10>>reluctant to assume her new duties.<<else>>unsure what her new duties are.<</if>> You gesture towards $eventSlave.slaveName. She is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in<<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. She eagerly moans as you enter her, begging for your seed<<if $eventSlave.energy > 95>> like the slut she is<<elseif $eventSlave.whoreSkill > 30>> like the whore she is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy she is<</if>>. As you finish, she <<if $eventSlave.fetish == "cumslut">>opens her mouth and savors your gift, thanking you once she's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with her ass high in the air, thanking you for painting her hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from her big sister @@.hotpink;eases $activeSlave.slaveName into her new life,@@ and @@.mediumaquamarine;gives her hope@@ she can find a place here.
+			Your new slave appears <<if $activeSlave.devotion < -10>>reluctant to assume $his new duties.<<else>>unsure what $his new duties are.<</if>> You gesture towards $eventSlave.slaveName. $He is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in<<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. $He eagerly moans as you enter $him, begging for your seed<<if $eventSlave.energy > 95>> like the slut $he is<<elseif $eventSlave.whoreSkill > 30>> like the whore $he is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy $he is<</if>>. As you finish, $he <<if $eventSlave.fetish == "cumslut">>opens $his mouth and savors your gift, thanking you once $he's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with $his ass high in the air, thanking you for painting $his hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from $his big sister @@.hotpink;eases $activeSlave.slaveName into $his new life,@@ and @@.mediumaquamarine;gives $him hope@@ $he can find a place here.
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.trust += 4>>
@@ -863,11 +863,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She was recruited into your service by her little sis." "She was recruited into your service by her younger sister.">>
-	//and since she was recruited by her younger sister...//
+	//and since $he was recruited by $his younger sister...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Use her little sister as an example">>
+	<<link "Use $his little sister as an example">>
 		<<replace "#introResult">>
-			Your new slave appears <<if $activeSlave.devotion < -10>>reluctant to assume her new duties.<<else>>unsure what her new duties are.<</if>> You gesture towards $eventSlave.slaveName. She is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. She eagerly moans as you enter her, begging for your seed<<if $eventSlave.energy > 95>> like the slut she is<<elseif $eventSlave.whoreSkill > 30>> like the whore she is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy she is<</if>>. As you finish, she <<if $eventSlave.fetish == "cumslut">>opens her mouth and savors your gift, thanking you once she's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with her ass high in the air, thanking you for painting her hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from her little sister @@.hotpink;eases $activeSlave.slaveName into her new life,@@ and @@.mediumaquamarine;gives her hope@@ she can find a place here.
+			Your new slave appears <<if $activeSlave.devotion < -10>>reluctant to assume $his new duties.<<else>>unsure what $his new duties are.<</if>> You gesture towards $eventSlave.slaveName. $He is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. $He eagerly moans as you enter $him, begging for your seed<<if $eventSlave.energy > 95>> like the slut $he is<<elseif $eventSlave.whoreSkill > 30>> like the whore $he is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy $he is<</if>>. As you finish, $he <<if $eventSlave.fetish == "cumslut">>opens $his mouth and savors your gift, thanking you once $he's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with $his ass high in the air, thanking you for painting $his hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from $his little sister @@.hotpink;eases $activeSlave.slaveName into $his new life,@@ and @@.mediumaquamarine;gives $him hope@@ $he can find a place here.
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.trust += 4>>
@@ -875,11 +875,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She was recruited into your service by her twin sister.">>
-	//and since she was recruited by her twin...//
+	//and since $he was recruited by $his twin...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Use her sister as an example">>
+	<<link "Use $his sister as an example">>
 		<<replace "#introResult">>
-			Your new slave appears <<if $activeSlave.devotion < -10>>reluctant to assume her new duties.<<else>>unsure what her new duties are.<</if>> You gesture towards $eventSlave.slaveName. She is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. She eagerly moans as you enter her, begging for your seed<<if $eventSlave.energy > 95>> like the slut she is<<elseif $eventSlave.whoreSkill > 30>> like the whore she is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy she is<</if>>. As you finish, she <<if $eventSlave.fetish == "cumslut">>opens her mouth and savors your gift, thanking you once she's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with her ass high in the air, thanking you for painting her hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from her twin sister @@.hotpink;eases $activeSlave.slaveName into her new life,@@ and @@.mediumaquamarine;gives her hope@@ she can find a place here.
+			Your new slave appears <<if $activeSlave.devotion < -10>>reluctant to assume $his new duties.<<else>>unsure what $his new duties are.<</if>> You gesture towards $eventSlave.slaveName. $He is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. $He eagerly moans as you enter $him, begging for your seed<<if $eventSlave.energy > 95>> like the slut $he is<<elseif $eventSlave.whoreSkill > 30>> like the whore $he is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy $he is<</if>>. As you finish, $he <<if $eventSlave.fetish == "cumslut">>opens $his mouth and savors your gift, thanking you once $he's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with $his ass high in the air, thanking you for painting $his hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from $his twin sister @@.hotpink;eases $activeSlave.slaveName into $his new life,@@ and @@.mediumaquamarine;gives $him hope@@ $he can find a place here.
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.trust += 4>>
@@ -887,11 +887,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She was recruited into your service by her mother.">>
-	//and since she was recruited by her mother...//
+	//and since $he was recruited by $his mother...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Use her mother as an example">>
+	<<link "Use $his mother as an example">>
 		<<replace "#introResult">>
-			You gesture towards $eventSlave.slaveName. She is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. She eagerly moans as you enter her, begging for your seed<<if $eventSlave.energy > 95>> like the slut she is<<elseif $eventSlave.whoreSkill > 30>> like the whore she is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy she is<</if>>. As you finish, she <<if $eventSlave.fetish == "cumslut">>opens her mouth and savors your gift, thanking you once she's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with her ass high in the air, thanking you for painting her hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from her mother @@.hotpink;eases $activeSlave.slaveName into her new life,@@ and @@.mediumaquamarine;gives her hope@@ she can find a place here.
+			You gesture towards $eventSlave.slaveName. $He is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. $He eagerly moans as you enter $him, begging for your seed<<if $eventSlave.energy > 95>> like the slut $he is<<elseif $eventSlave.whoreSkill > 30>> like the whore $he is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy $he is<</if>>. As you finish, $he <<if $eventSlave.fetish == "cumslut">>opens $his mouth and savors your gift, thanking you once $he's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with $his ass high in the air, thanking you for painting $his hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from $his mother @@.hotpink;eases $activeSlave.slaveName into $his new life,@@ and @@.mediumaquamarine;gives $him hope@@ $he can find a place here.
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.trust += 4>>
@@ -899,11 +899,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She was recruited into your service by her parent.">>
-	//and since she was recruited by her parent...//
+	//and since $he was recruited by $his parent...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Use her parent as an example">>
+	<<link "Use $his parent as an example">>
 		<<replace "#introResult">>
-			You gesture towards $eventSlave.slaveName. She is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. She eagerly moans as you enter her, begging for your seed<<if $eventSlave.energy > 95>> like the slut she is<<elseif $eventSlave.whoreSkill > 30>> like the whore she is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy she is<</if>>. As you finish, she <<if $eventSlave.fetish == "cumslut">>opens her mouth and savors your gift, thanking you once she's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with her ass high in the air, thanking you for painting her hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from her <<if $activeSlave.mother == $eventSlave.ID>>mother<<else>>father<</if>> @@.hotpink;eases $activeSlave.slaveName into her new life,@@ and @@.mediumaquamarine;gives her hope@@ she can find a place here.
+			You gesture towards $eventSlave.slaveName. $He is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. $He eagerly moans as you enter $him, begging for your seed<<if $eventSlave.energy > 95>> like the slut $he is<<elseif $eventSlave.whoreSkill > 30>> like the whore $he is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy $he is<</if>>. As you finish, $he <<if $eventSlave.fetish == "cumslut">>opens $his mouth and savors your gift, thanking you once $he's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with $his ass high in the air, thanking you for painting $his hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from $his <<if $activeSlave.mother == $eventSlave.ID>>mother<<else>>father<</if>> @@.hotpink;eases $activeSlave.slaveName into $his new life,@@ and @@.mediumaquamarine;gives $him hope@@ $he can find a place here.
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.trust += 4>>
@@ -911,11 +911,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 
 <<case "She was recruited into your service by her daughter.">>
-	//and since she was recruited by her daughter...//
+	//and since $he was recruited by $his daughter...//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Use her daughter as an example">>
+	<<link "Use $his daughter as an example">>
 		<<replace "#introResult">>
-			You gesture towards $eventSlave.slaveName. She is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. She eagerly moans as you enter her, begging for your seed<<if $eventSlave.energy > 95>> like the slut she is<<elseif $eventSlave.whoreSkill > 30>> like the whore she is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy she is<</if>>. As you finish, she <<if $eventSlave.fetish == "cumslut">>opens her mouth and savors your gift, thanking you once she's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with her ass high in the air, thanking you for painting her hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from her <<if $eventSlave.genes == "XX">>daughter<<else>>son<</if>> @@.hotpink;eases $activeSlave.slaveName into her new life,@@ and @@.mediumaquamarine;gives her hope@@ she can find a place here.
+			You gesture towards $eventSlave.slaveName. $He is <<if $eventSlave.intelligence > 0>>bright enough<<elseif (($eventSlave.vaginalSkill + $eventSlave.analSkill + $eventSlave.oralSkill) > 100)>>skilled enough<<else>>obedient enough<</if>> to understand you mean a demonstration is in order. $eventSlave.slaveName starts things off with a <<if $eventSlave.entertainSkill >= 100>>masterful<<elseif $eventSlave.entertainSkill > 10>>skillful<<else>>passable<</if>> striptease, culminating in <<if ($eventSlave.anus > 0) && ($eventSlave.fetish != "cumslut")>>bending over<<else>>kneeling<</if>> in front of you. $He eagerly moans as you enter $him, begging for your seed<<if $eventSlave.energy > 95>> like the slut $he is<<elseif $eventSlave.whoreSkill > 30>> like the whore $he is<<elseif ($eventSlave.assignment == "serve in the master suite") || ($eventSlave.assignment == "please you")>> like the fucktoy $he is<</if>>. As you finish, $he <<if $eventSlave.fetish == "cumslut">>opens $his mouth and savors your gift, thanking you once $he's swallowed enough to be able to talk again.<<elseif ($eventSlave.fetish == "buttslut") || ($eventSlave.fetish == "submissive")>>collapses on the floor with $his ass high in the air, thanking you for painting $his hole white.<<else>>thanks you.<</if>> Witnessing this display of servitude from $his <<if $eventSlave.genes == "XX">>daughter<<else>>son<</if>> @@.hotpink;eases $activeSlave.slaveName into $his new life,@@ and @@.mediumaquamarine;gives $him hope@@ $he can find a place here.
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.trust += 4>>
@@ -923,13 +923,13 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
  <br>
 <</switch>>
 
-<br>//Have her changed...//
+<br>//Have $him changed...//
 
 <<if $activeSlave.health < -20>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Address her medical issues">>
+	<<link "Address $his medical issues">>
 	<<replace "#introResult">>
-		Since she's in rough shape, you give her a comprehensive medical exam with the help of the remote surgery. You apply care to @@.green;address@@ some of the most outstanding concerns. Whatever gratitude she might have felt for prompt medical attention is balanced by fear of the remote surgery and the nagging (and accurate) feeling that she's being treated like livestock, but she does @@.mediumaquamarine;begin to hope@@ she'll be well treated.
+		Since $he's in rough shape, you give $him a comprehensive medical exam with the help of the remote surgery. You apply care to @@.green;address@@ some of the most outstanding concerns. Whatever gratitude $he might have felt for prompt medical attention is balanced by fear of the remote surgery and the nagging (and accurate) feeling that $he's being treated like livestock, but $he does @@.mediumaquamarine;begin to hope@@ $he'll be well treated.
 		<<if $arcologies[0].FSPaternalist != "unset">>
 			Society @@.green;approves@@ of your promptly seeing to your stock's health; this advances the idea that all slave owners should look after their slaves.
 			<<FSChange "Paternalist" 2>>
@@ -944,9 +944,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<set $toSearch = $activeSlave.hStyle>>
 <<if ($toSearch.indexOf("shaved") == -1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Shave her hair">>
+	<<link "Shave $his hair">>
 		<<replace "#introResult">>
-			You seize her by the hair and drag her to the auto salon. She struggles and thrashes around but soon scrambles to keep up with you to relieve the pain in her scalp as she's dragged. You strap her in and set the auto salon to shave. She looks around frantically as the manipulators with their buzzing shears descend menacingly. As they run quickly back and forth across her head, she begins to sob, obviously @@.gold;fearing@@ that her new master is @@.mediumorchid;one to enjoy degradation and abuse.@@ She has a strong indication that obedience is her only hope.
+			You seize $him by the hair and drag $him to the auto salon. $He struggles and thrashes around but soon scrambles to keep up with you to relieve the pain in $his scalp as $he's dragged. You strap $him in and set the auto salon to shave. $He looks around frantically as the manipulators with their buzzing shears descend menacingly. As they run quickly back and forth across $his head, $he begins to sob, obviously @@.gold;fearing@@ that $his new master is @@.mediumorchid;one to enjoy degradation and abuse.@@ $He has a strong indication that obedience is $his only hope.
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.hStyle = "shaved">>
@@ -958,22 +958,22 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $activeSlave.stampTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Give her a lewd tramp stamp">>
+	<<link "Give $him a lewd tramp stamp">>
 	<<set $activeSlave.stampTat = either("advertisements", "rude words", "degradation")>>
 	<<replace "#introResult">>
-		You <<if $activeSlave.devotion > 20>>bring her down to the studio, lay the compliant<<else>>drag her down to the studio, strap the reluctant<</if>> slave in the chair face-down, and select a sufficiently lewd pattern to decorate her lower back. When the automated tattooing is done, a topical application of analgesics leaves her with nothing more than a slight ache there. When allowed to stand, she immediately turns her back to one of the studio's full length mirrors and cranes around to read the writing just over her butt. It's difficult, since of course it's reversed, and she mouths the words letter by letter.
+		You <<if $activeSlave.devotion > 20>>bring $him down to the studio, lay the compliant<<else>>drag $him down to the studio, strap the reluctant<</if>> slave in the chair face-down, and select a sufficiently lewd pattern to decorate $his lower back. When the automated tattooing is done, a topical application of analgesics leaves $him with nothing more than a slight ache there. When allowed to stand, $he immediately turns $his back to one of the studio's full length mirrors and cranes around to read the writing just over $his butt. It's difficult, since of course it's reversed, and $he mouths the words letter by letter.
 		<<if $activeSlave.stampTat == "advertisements">>
-			She mouths, 'Fuck my ass!'
+			$He mouths, 'Fuck my ass!'
 		<<elseif $activeSlave.stampTat == "rude words">>
-			'Rear Entrance,' she mouths, and then understands the arrow pointing down between her buttocks.
+			'Rear Entrance,' $he mouths, and then understands the arrow pointing down between $his buttocks.
 		<<elseif $activeSlave.stampTat == "degradation">>
-			Struggling to read the ornate gothic lettering, she slowly mouths, 'Anal Whore.'
+			Struggling to read the ornate gothic lettering, $he slowly mouths, 'Anal Whore.'
 		<</if>>
 		<<if $activeSlave.devotion > 20>>
-			She gasps at the realization that taking it up the ass is about to become a dominant part of her life. She isn't surprised by that, but it's a little stark, having her status as an anal slave permanently written on her lower back for anyone to see. Nevertheless, she @@.hotpink;resolves to do her best.@@
+			$He gasps at the realization that taking it up the ass is about to become a dominant part of $his life. $He isn't surprised by that, but it's a little stark, having $his status as an anal slave permanently written on $his lower back for anyone to see. Nevertheless, $he @@.hotpink;resolves to do $his best.@@
 			<<set $activeSlave.devotion += 5>>
 		<<else>>
-			She begins to cry softly. It's not likely that she didn't know, on some level, that she's a sex slave, and that most sex slaves are expected to take it up the ass. She's @@.gold;frightened@@ to find, though, that it's apparently so essential to her existence that it's worth tattooing right over her bottom. She continues to weep as you lead her out, but @@.hotpink;offers no real resistance.@@ She's just mourning her poor anal sphincter in an anticipatory sort of way.
+			$He begins to cry softly. It's not likely that $he didn't know, on some level, that $he's a sex slave, and that most sex slaves are expected to take it up the ass. $He's @@.gold;frightened@@ to find, though, that it's apparently so essential to $his existence that it's worth tattooing right over $his bottom. $He continues to weep as you lead $him out, but @@.hotpink;offers no real resistance.@@ $He's just mourning $his poor anal sphincter in an anticipatory sort of way.
 			<<set $activeSlave.devotion += 5>>
 			<<set $activeSlave.trust -= 5>>
 		<</if>>
@@ -981,9 +981,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<</link>>
 <</if>>
 
- | <<link "Brand her">>
+ | <<link "Brand $him">>
 	<<replace "#introResult">>
-		You drag her to the body modification studio and strap her down with her $brandTarget clear and defenseless. She doesn't understand what's coming for a while, even as disinfectant is applied to her $brandTarget. She can't see the approaching brand, but eventually she feels the radiated heat on her skin and manages to get one inarticulate, wordless noise of terror out before the dreadful sizzling noise and the sweet smell of burning flesh. If she didn't know she was a slave before, @@.mediumorchid;she does now,@@ and she's got the @@.gold;agonizing@@ @@.red;injury@@ to prove it.
+		You drag $him to the body modification studio and strap $him down with $his $brandTarget clear and defenseless. $He doesn't understand what's coming for a while, even as disinfectant is applied to $his $brandTarget. $He can't see the approaching brand, but eventually $he feels the radiated heat on $his skin and manages to get one inarticulate, wordless noise of terror out before the dreadful sizzling noise and the sweet smell of burning flesh. If $he didn't know $he was a slave before, @@.mediumorchid;$he does now,@@ and $he's got the @@.gold;agonizing@@ @@.red;injury@@ to prove it.
 		<<if ($arcologies[0].FSSubjugationistRace == $activeSlave.race) && ($arcologies[0].FSSubjugationist > 0)>>
 			Society @@.green;approves@@ of your purchase and branding of a inferior $activeSlave.race person; this advances the idea that $activeSlave.race people ought to be enslaved.
 			<<FSChange "Subjugationist" 2>>
@@ -1001,19 +1001,19 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 
 <<if $activeSlave.dick == 0>>
-	 | <<link "Give her a smart clitoral piercing">>
+	 | <<link "Give $him a smart clitoral piercing">>
 		<<set $cash -= $SPcost>>
 		<<replace "#introResult">>
-			You take her to the body modification studio, strap her down, pierce her clit, and insert what appears to be a large stainless steel barbell piercing. It actually contains a device that can vibrate to give her sexual stimulation or create subtle pain to suppress pleasure. It is connected wirelessly to the arcology, which can be given instructions to encourage or discourage sexual pleasure in specific situations. You run a quick test. On the oral setting, as soon as she kneels in front of your crotch, she gasps as the stimulation starts. On the anal setting, she whimpers when you run a finger across her asshole.
+			You take $him to the body modification studio, strap $him down, pierce $his clit, and insert what appears to be a large stainless steel barbell piercing. It actually contains a device that can vibrate to give $him sexual stimulation or create subtle pain to suppress pleasure. It is connected wirelessly to the arcology, which can be given instructions to encourage or discourage sexual pleasure in specific situations. You run a quick test. On the oral setting, as soon as $he kneels in front of your crotch, $he gasps as the stimulation starts. On the anal setting, $he whimpers when you run a finger across $his asshole.
 		<</replace>>
 		<<set $activeSlave.clitPiercing = 3>>
 	<</link>>
 	 //This option costs <<print cashFormat($SPcost)>>//
 <<else>>
-	 | <<link "Give her a smart frenulum piercing">>
+	 | <<link "Give $him a smart frenulum piercing">>
 		<<set $cash -= $SPcost>>
 		<<replace "#introResult">>
-			You take her to the body modification studio, strap her down, pierce her frenulum, and insert what appears to be a large stainless steel barbell piercing. It actually contains a device that can vibrate to give her sexual stimulation or create subtle pain to suppress pleasure. It is connected wirelessly to the arcology, which can be given instructions to encourage or discourage sexual pleasure in specific situations. You run a quick test. On the oral setting, as soon as she kneels in front of your crotch, she gasps as the stimulation starts. On the anal setting, she whimpers and gets rock hard when you run a finger across her asshole.
+			You take $him to the body modification studio, strap $him down, pierce $his frenulum, and insert what appears to be a large stainless steel barbell piercing. It actually contains a device that can vibrate to give $him sexual stimulation or create subtle pain to suppress pleasure. It is connected wirelessly to the arcology, which can be given instructions to encourage or discourage sexual pleasure in specific situations. You run a quick test. On the oral setting, as soon as $he kneels in front of your crotch, $he gasps as the stimulation starts. On the anal setting, $he whimpers and gets rock hard when you run a finger across $his asshole.
 		<</replace>>
 		<<set $activeSlave.clitPiercing = 3>>
 	<</link>>
@@ -1023,9 +1023,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $arcologies[0].FSHedonisticDecadence >= 50 && $activeSlave.behavioralFlaw == "anorexic" && $activeSlave.weight < 10>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Force feed her">>
+	<<link "Force feed $him">>
 		<<replace "#introResult">>
-			She is much too thin and seems to shirk any offered food, but there is an easy solution to that. If she refuses to eat, she can be made to. Pulling the reluctant slave to the feeders, binding her tightly to a chair, and attaching a hose to the slave food nozzle, you give her a choice; suck the hose willingly or have it forced down her throat. She glares defiantly and keeps her mouth firmly shut. You clamp down on her nose, inevitably forcing her to open her mouth to breath. In that moment, you shove the hose in and down her throat, carefully directing it down into her stomach. She gags as you turn on the flow, her eyes filling with tears as she feels the warm food travel down the tube and into her stomach. She sobs as her belly steadily swells with unwelcome sustenance, her eyes pleading with you, desperate to let you know she'll be good. You ignore her, letting her fill until her belly is noticeably distended compared to her thin frame. Once you feel she has had enough, you pull the hose from her gut, spraying her face with food in the process, and tell her it will go right back in if she doesn't keep it all down. She @@.gold;nods fearfully,@@ anything to not go through that again. She hobbles away once freed, one hand covering her retching mouth and the other clasping her @@.mediumorchid;hated, food bloated middle.@@
+			$He is much too thin and seems to shirk any offered food, but there is an easy solution to that. If $he refuses to eat, $he can be made to. Pulling the reluctant slave to the feeders, binding $him tightly to a chair, and attaching a hose to the slave food nozzle, you give $him a choice; suck the hose willingly or have it forced down $his throat. $He glares defiantly and keeps $his mouth firmly shut. You clamp down on $his nose, inevitably forcing $him to open $his mouth to breath. In that moment, you shove the hose in and down $his throat, carefully directing it down into $his stomach. $He gags as you turn on the flow, $his eyes filling with tears as $he feels the warm food travel down the tube and into $his stomach. $He sobs as $his belly steadily swells with unwelcome sustenance, $his eyes pleading with you, desperate to let you know $he'll be good. You ignore $him, letting $him fill until $his belly is noticeably distended compared to $his thin frame. Once you feel $he has had enough, you pull the hose from $his gut, spraying $his face with food in the process, and tell $him it will go right back in if $he doesn't keep it all down. $He @@.gold;nods fearfully,@@ anything to not go through that again. $He hobbles away once freed, one hand covering $his retching mouth and the other clasping $his @@.mediumorchid;hated, food bloated middle.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 10>>
 		<<set $activeSlave.trust -= 10>>
@@ -1035,9 +1035,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if ($activeSlave.pregKnown == 1) && ($seeExtreme == 1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Threaten her pregnancy">>
+	<<link "Threaten $his pregnancy">>
 		<<replace "#introResult">>
-			You place an innocuous-looking drug injector on your desk, and let her stare at it for a long moment. Then, you roll the cylinder slowly across the smooth surface, rotating it until its label comes into her view. It depicts the silhouette of a pregnant woman, with a red X over it. Abortifacients. After an instant of horrified comprehension, she flings herself at your feet, crying, begging, promising. She pledges to @@.hotpink;submit to you,@@ <<if $PC.dick == 1>><<if $PC.vagina == 1>>eat you out, <</if>>suck your cock, take it in her pussy, take it up her ass<<else>>eat you out, worship you with her pussy, serve you with her ass<</if>>, anything, as long as @@.gold;you don't hurt her baby.@@ You observe that she'll do all of those things, regardless of what you decide to do about her pregnancy, but for now, you'll keep her as a pregnant slut. She thanks you through her tears.
+			You place an innocuous-looking drug injector on your desk, and let $him stare at it for a long moment. Then, you roll the cylinder slowly across the smooth surface, rotating it until its label comes into $his view. It depicts the silhouette of a pregnant woman, with a red X over it. Abortifacients. After an instant of horrified comprehension, $he flings $himself at your feet, crying, begging, promising. $He pledges to @@.hotpink;submit to you,@@ <<if $PC.dick == 1>><<if $PC.vagina == 1>>eat you out, <</if>>suck your cock, take it in $his pussy, take it up $his ass<<else>>eat you out, worship you with $his pussy, serve you with $his ass<</if>>, anything, as long as @@.gold;you don't hurt $his baby.@@ You observe that $he'll do all of those things, regardless of what you decide to do about $his pregnancy, but for now, you'll keep $him as a pregnant slut. $He thanks you through $his tears.
 		<</replace>>
 		<<set $activeSlave.devotion += 10>>
 		<<set $activeSlave.trust -= 10>>
@@ -1047,22 +1047,22 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $arcologies[0].FSRestart >= 10 && $activeSlave.preg != -3 && $activeSlave.ovaries > 0 && $activeSlave.indentureRestrictions <= 0 && ($seeExtreme == 1) && canSee($activeSlave)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Sterilize her">>
+	<<link "Sterilize $him">>
 		<<replace "#introResult">>
-			You drag her to the remote surgery and strap her face up with her<<if $activeSlave.bellyPreg >= 1500>> pregnant<</if>> stomach bare. She doesn't understand what's coming for a while, even as her belly is carefully cleaned and disinfected. She begins to panic at the sight of the approaching surgical manipulators, cringing as they cut into her<<if $activeSlave.bellyPreg >= 1500>> rounded<</if>> abdomen. She squeals in horror as her<<if $activeSlave.preg > 30>> swollen womb, still moving with life,<<elseif $activeSlave.bellyPreg >= 1500>> pregnant womb<<else>> womb<</if>> and ovaries are extracted before her eyes.
+			You drag $him to the remote surgery and strap $his face up with $his<<if $activeSlave.bellyPreg >= 1500>> pregnant<</if>> stomach bare. $He doesn't understand what's coming for a while, even as $his belly is carefully cleaned and disinfected. $He begins to panic at the sight of the approaching surgical manipulators, cringing as they cut into $his<<if $activeSlave.bellyPreg >= 1500>> rounded<</if>> abdomen. $He squeals in horror as $his<<if $activeSlave.preg > 30>> swollen womb, still moving with life,<<elseif $activeSlave.bellyPreg >= 1500>> pregnant womb<<else>> womb<</if>> and ovaries are extracted before $his eyes.
 			<<if $activeSlave.fetish == "pregnancy" && $activeSlave.pregKnown == 1>>
 				<<if $activeSlave.preg > 25>>
-					She watches her exposed womb with absolute terror in her eyes. A small handprint bulges against the organ; she sobs once before her mind @@.red;shatters at the sight.@@
+					$He watches $his exposed womb with absolute terror in $his eyes. A small handprint bulges against the organ; $he sobs once before $his mind @@.red;shatters at the sight.@@
 					<<set $activeSlave.fetish = "mindbroken", $activeSlave.fetishKnown = 1, $activeSlave.behavioralQuirk == "none", $activeSlave.behavioralFlaw == "none", $activeSlave.sexualQuirk == "none", $activeSlave.sexualFlaw == "none">>
 				<<else>>
-					She will never carry another child, and @@.mediumorchid;deeply hates you@@ for snuffing out its life. Your absolute power over her body is rightfully @@.gold;terrifying.@@
+					$He will never carry another child, and @@.mediumorchid;deeply hates you@@ for snuffing out its life. Your absolute power over $his body is rightfully @@.gold;terrifying.@@
 					<<set $activeSlave.trust = -100, $activeSlave.devotion = -100>>
 				<</if>>
 			<<else>>
-				She will never bear children, and will @@.mediumorchid;remember her status@@ with every fucking she receives. Your absolute power over her body is rightfully @@.gold;terrifying.@@
+				$He will never bear children, and will @@.mediumorchid;remember $his status@@ with every fucking $he receives. Your absolute power over $his body is rightfully @@.gold;terrifying.@@
 				<<set $activeSlave.trust -= 20, $activeSlave.devotion -= 50>>
 			<</if>>
-			Society @@.green;approves@@ of your promptly rendering her sterile; this advances the idea that only the elite should breed.
+			Society @@.green;approves@@ of your promptly rendering $him sterile; this advances the idea that only the elite should breed.
 			<<FSChange "Eugenics" 1>>
 			<<if $activeSlave.pregKnown == 1>>
 				Since you snuffed out an unworthy life in the process, the sterilization has an even @@.green;bigger impact.@@
@@ -1082,9 +1082,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if ($activeSlave.balls > 0) && ($activeSlave.attrXY < 65) && ($seeExtreme == 1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Threaten her balls">>
+	<<link "Threaten $his balls">>
 		<<replace "#introResult">>
-			You ask her how she feels about taking cock up her ass. A look of revulsion and fear crosses her face, and she backs away from you slightly, unconsciously protecting her bottom. Before she can muster any kind of response, you tell her that you suspected as much, and that she has balls. She looks confused at the apparently unrelated remarks until you explain that in your arcology, balls are a privilege. If she won't be a good little bitch, you'll take them away and turn her into a bitch anyway. Only good girls get to keep their hardons, and if she isn't a good girl, you'll make her a little good girl with a bouncing little bitchclit. She begins to cry, @@.gold;sobbing and sobbing@@ as she promises to @@.hotpink;be a good girl.@@
+			You ask $him how $he feels about taking cock up $his ass. A look of revulsion and fear crosses $his face, and $he backs away from you slightly, unconsciously protecting $his bottom. Before $he can muster any kind of response, you tell $him that you suspected as much, and that $he has balls. $He looks confused at the apparently unrelated remarks until you explain that in your arcology, balls are a privilege. If $he won't be a good little bitch, you'll take them away and turn $him into a bitch anyway. Only good girls get to keep their hardons, and if $he isn't a good girl, you'll make $him a little good girl with a bouncing little bitchclit. $He begins to cry, @@.gold;sobbing and sobbing@@ as $he promises to @@.hotpink;be a good girl.@@
 		<</replace>>
 		<<set $activeSlave.devotion += 10>>
 		<<set $activeSlave.trust -= 10>>
@@ -1095,15 +1095,15 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<if ($activeSlave.indentureRestrictions <= 0) && ($seeExtreme == 1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<if $activeSlave.balls > 0>>
-		<<link "Geld her">>
+		<<link "Geld $him">>
 			<<replace "#introResult">>
-				You drag her to the remote surgery and strap her face down with her legs spread. She doesn't understand what's happening, since the anesthetics totally deprive her of any sensation. She's so drugged and drowsy with @@.red;surgical recovery@@ that it takes a while for her to figure out what's happened. When she does, her poor mind scarcely processes the @@.gold;horror@@ of what's happened. She numbly carries on, terrified.
+				You drag $him to the remote surgery and strap $his face down with $his legs spread. $He doesn't understand what's happening, since the anesthetics totally deprive $him of any sensation. $He's so drugged and drowsy with @@.red;surgical recovery@@ that it takes a while for $him to figure out what's happened. When $he does, $his poor mind scarcely processes the @@.gold;horror@@ of what's happened. $He numbly carries on, terrified.
 				<<if $arcologies[0].FSGenderRadicalist != "unset">>
-					Society @@.green;approves@@ of your promptly gelding her; this advances the idea that all societal inferiors can be made female.
+					Society @@.green;approves@@ of your promptly gelding $him; this advances the idea that all societal inferiors can be made female.
 					<<FSChange "GenderRadicalist" 2>>
 				<</if>>
 				<<if $arcologies[0].FSRestart != "unset" && $activeSlave.pubertyXY == 1>>
-					Society @@.green;approves@@ of your promptly gelding her; this advances the idea that all only the elite should breed.
+					Society @@.green;approves@@ of your promptly gelding $him; this advances the idea that all only the elite should breed.
 					<<FSChange "Eugenics" 2>>
 				<</if>>
 			<</replace>>
@@ -1111,11 +1111,11 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 			<<set $activeSlave.health -= 10, $activeSlave.trust -= 50>>
 		<</link>> |
 	<</if>>
-	<<link "Remove her genitalia">>
+	<<link "Remove $his genitalia">>
 		<<replace "#introResult">>
-			You drag her to the remote surgery and strap her face down with her legs spread. She doesn't understand what's happening, since the anesthetics totally deprive her of any sensation. She's so drugged and drowsy with @@.red;surgical recovery@@ that it takes a while for her to figure out what's happened. Eventually, though, she realizes that she's been reduced to the status of a genital null: the only remaining feature of her newly smooth groin is a tiny soft hole, her urethra.
-			<<if $activeSlave.scrotum > 0>>She retains her ballsack beneath this, though of course you can always remove that later if you decide to geld her, too.<</if>>
-			She almost passes out from @@.gold;sheer horror.@@ Instead, she collapses and tries desperately to vomit. Fortunately, she doesn't have anything to bring up. She's reduced to impotent weeping and retching as she begins to process the stress of having had her parts cut off.
+			You drag $him to the remote surgery and strap $his face down with $his legs spread. $He doesn't understand what's happening, since the anesthetics totally deprive $him of any sensation. $He's so drugged and drowsy with @@.red;surgical recovery@@ that it takes a while for $him to figure out what's happened. Eventually, though, $he realizes that $he's been reduced to the status of a genital null: the only remaining feature of $his newly smooth groin is a tiny soft hole, $his urethra.
+			<<if $activeSlave.scrotum > 0>>$He retains $his ballsack beneath this, though of course you can always remove that later if you decide to geld $him, too.<</if>>
+			$He almost passes out from @@.gold;sheer horror.@@ Instead, $he collapses and tries desperately to vomit. Fortunately, $he doesn't have anything to bring up. $He's reduced to impotent weeping and retching as $he begins to process the stress of having had $his parts cut off.
 			<<if $arcologies[0].FSRestart != "unset">>
 				Society @@.green;approves@@ of you stripping away everything from society's inferiors.
 				<<FSChange "Eugenics" 3>>
@@ -1131,9 +1131,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if ($activeSlave.amp != 1) && ($activeSlave.indentureRestrictions <= 0) && ($seeExtreme == 1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Clip her Achilles tendons">>
+	<<link "Clip $his Achilles tendons">>
 		<<replace "#introResult">>
-			You drag her to the remote surgery and strap her face down with her legs bare. She doesn't understand what's coming for a while, even as her lower legs are carefully cleaned and disinfected. She can't see the approaching surgical manipulators, but eventually she feels a tugging at her lower legs even through the local anesthetic. She gets one squeal of protest out before the surgery begins to apply healing agents. She now requires special heels to walk, and will @@.mediumorchid;remember her status@@ with every @@.red;painful@@ step she takes. She's barefoot, crawling, and @@.gold;frightened@@ for now, until you decide to give her heels - if you ever do.
+			You drag $him to the remote surgery and strap $his face down with $his legs bare. $He doesn't understand what's coming for a while, even as $his lower legs are carefully cleaned and disinfected. $He can't see the approaching surgical manipulators, but eventually $he feels a tugging at $his lower legs even through the local anesthetic. $He gets one squeal of protest out before the surgery begins to apply healing agents. $He now requires special heels to walk, and will @@.mediumorchid;remember $his status@@ with every @@.red;painful@@ step $he takes. $He's barefoot, crawling, and @@.gold;frightened@@ for now, until you decide to give $him heels - if you ever do.
 		<</replace>>
 		<<set $activeSlave.heels = 1>>
 		<<set $activeSlave.devotion -= 5>>
@@ -1145,39 +1145,39 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <br>
 
 
-//...or show her what it's like here for a slave//
+//...or show $him what it's like here for a slave//
 
 <<if $activeSlave.fetish != "mindbroken">>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Inseminate her">>
+	<<link "Inseminate $him">>
 		<<replace "#introResult">>
-			You <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>lay the obedient $desc across your desk<<else>>force the resistant $desc to lie atop your desk<</if>> and gently <<if $PC.dick == 1>>slide your hard cock<<else>>push a special strap-on<</if>>	<<if $activeSlave.vagina >= 0>>inside her womanhood<<else>>up her butt<</if>>. You take her with care, enjoying her body <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>and doing your best to give her pleasure, too<<else>>without hurting her<</if>>. <<if $PC.dick == 1>>You empty your balls inside her, thrusting in as far as you can go<<else>>The strap-on contains a reservoir of faux ejaculate, and you give it to her<</if>> as you climax. When she feels the hot liquid jet into her,
+			You <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>lay the obedient $desc across your desk<<else>>force the resistant $desc to lie atop your desk<</if>> and gently <<if $PC.dick == 1>>slide your hard cock<<else>>push a special strap-on<</if>> <<if $activeSlave.vagina >= 0>>inside $his womanhood<<else>>up $his butt<</if>>. You take $him with care, enjoying $his body <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>and doing your best to give $him pleasure, too<<else>>without hurting $him<</if>>. <<if $PC.dick == 1>>You empty your balls inside $him, thrusting in as far as you can go<<else>>The strap-on contains a reservoir of faux ejaculate, and you give it to $him<</if>> as you climax. When $he feels the hot liquid jet into $him,
 			<<if $activeSlave.devotion > 20>>
 				<<if $activeSlave.fetish == "pregnancy">>
 					<<if $activeSlave.fetishKnown == 0>>
-						she gasps with unaccustomed pleasure, and climaxes so strongly that she cries a little from the pain in her flexing abs. @@.green;She's an impregnation fetishist!@@
+						$he gasps with unaccustomed pleasure, and climaxes so strongly that $he cries a little from the pain in $his flexing abs. @@.green;$He's an impregnation fetishist!@@
 						<<set $activeSlave.fetishKnown = 1>>
 					<<else>>
-						she climaxes, her impregnation fetish displayed cutely on her face.
+						$he climaxes, $his impregnation fetish displayed cutely on $his face.
 					<</if>>
-					As you let her go, she feels <<if $PC.dick == 1>>your<<else>>the fake<</if>> cum dripping out of her, and she @@.hotpink;feels like your property.@@
+					As you let $him go, $he feels <<if $PC.dick == 1>>your<<else>>the fake<</if>> cum dripping out of $him, and $he @@.hotpink;feels like your property.@@
 					<<set $activeSlave.devotion += 5>>
 				<<else>>
-					she gasps and does her best to relax, accepting the flow. <<if $activeSlave.fetishKnown == 0>>It seems she<<else>>She<</if>> isn't an impregnation fetishist, but she is @@.hotpink;willing to submit@@ to have her body used as your receptacle.
+					$he gasps and does $his best to relax, accepting the flow. <<if $activeSlave.fetishKnown == 0>>It seems $he<<else>>$He<</if>> isn't an impregnation fetishist, but $he is @@.hotpink;willing to submit@@ to have $his body used as your receptacle.
 					<<set $activeSlave.devotion += 4>>
 				<</if>>
 			<<else>>
 				<<if $activeSlave.fetish == "pregnancy">>
 					<<if $activeSlave.fetishKnown == 0>>
-						she shudders with a sensation of perverted pleasure, and climaxes despite all her feelings about the situation. @@.green;She's an impregnation fetishist!@@
+						$he shudders with a sensation of perverted pleasure, and climaxes despite all $his feelings about the situation. @@.green;$He's an impregnation fetishist!@@
 						<<set $activeSlave.fetishKnown = 1>>
 					<<else>>
-						she climaxes, her impregnation fetish forcing her to feel pleasure her mind would prefer to reject.
+						$he climaxes, $his impregnation fetish forcing $him to feel pleasure $his mind would prefer to reject.
 					<</if>>
-					As you let her go, she cries openly, <<if $PC.dick == 1>>your<<else>>the fake<</if>> cum dripping out of her, and she @@.hotpink;feels like your property.@@
+					As you let $him go, $he cries openly, <<if $PC.dick == 1>>your<<else>>the fake<</if>> cum dripping out of $him, and $he @@.hotpink;feels like your property.@@
 					<<set $activeSlave.devotion += 4>>
 				<<else>>
-					she groans and struggles a little, disgusted to be filled by your fluids so immediately. <<if $activeSlave.fetishKnown == 0>>It seems she<<else>>She<</if>> isn't an impregnation fetishist, and is @@.gold;afraid@@ that she'll be treated as nothing more than your receptacle.
+					$he groans and struggles a little, disgusted to be filled by your fluids so immediately. <<if $activeSlave.fetishKnown == 0>>It seems $he<<else>>$He<</if>> isn't an impregnation fetishist, and is @@.gold;afraid@@ that $he'll be treated as nothing more than your receptacle.
 					<<set $activeSlave.trust -= 4>>
 				<</if>>
 			<</if>>
@@ -1188,9 +1188,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $seePreg != 0>>
 <<if isFertile($activeSlave)>>
-	 | <<link "Impregnate her">>
+	 | <<link "Impregnate $him">>
 	<<replace "#introResult">>
-		You perform a careful medical examination to verify fertility, and then restrain her in your office with her ass in the air. Whenever you feel able, you drain your balls into her <<if $activeSlave.mpreg == 1>>ass<<else>>cunt<</if>>, only releasing her for other duties when scans verify a fertilized ovum. She didn't properly understand the scans, so she just thought it was bound, forced sex; she won't realize what happened for some weeks at least.
+		You perform a careful medical examination to verify fertility, and then restrain $him in your office with $his ass in the air. Whenever you feel able, you drain your balls into $his <<if $activeSlave.mpreg == 1>>ass<<else>>cunt<</if>>, only releasing $him for other duties when scans verify a fertilized ovum. $He didn't properly understand the scans, so $he just thought it was bound, forced sex; $he won't realize what happened for some weeks at least.
 		<<if $activeSlave.mpreg == 1>>
 			<<= AnalVCheck()>>
 		<<else>>
@@ -1200,10 +1200,10 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 			The Societal Elite @@.green;disapprove@@ of this breach of eugenics.
 			<<set $failedElite += 5>>
 		<<elseif $arcologies[0].FSGenderFundamentalist != "unset" && $activeSlave.mpreg == 0>>
-			Society @@.green;approves@@ of your promptly putting a new slave in her; this advances the idea that all slaves should bear their masters' babies.
+			Society @@.green;approves@@ of your promptly putting a new slave in $him; this advances the idea that all slaves should bear their masters' babies.
 			<<FSChange "GenderFundamentalist" 2>>
 		<<elseif $arcologies[0].FSGenderFundamentalist != "unset">>
-			Society @@.red;is disgusted@@ by you promptly knocking up her ass; babies come from women, not men.
+			Society @@.red;is disgusted@@ by you promptly knocking up $his ass; babies come from women, not men.
 			<<FSChange "GenderFundamentalist" -2>>
 		<</if>>
 	<</replace>>
@@ -1219,9 +1219,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if  ($activeSlave.devotion < -10) && ($activeSlave.vagina == 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Tie her up and take her virginity">>
+	<<link "Tie $him up and take $his virginity">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles and secure her struggling, screeching body to the couch next to your desk with her legs spread. She wriggles and protests as you take her virginity. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;Her tight little pussy has been broken in.@@
+			You cuff $his wrists and ankles and secure $his struggling, screeching body to the couch next to your desk with $his legs spread. $He wriggles and protests as you take $his virginity. $He's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;$His tight little pussy has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1230,9 +1230,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<</link>>
 <<elseif ($activeSlave.vagina == 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Tie her up and take her virginity">>
+	<<link "Tie $him up and take $his virginity">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles and secure her unresisting body to the couch next to your desk with her legs spread. She writhes and moans as you enter her virgin pussy. You might not have even had to restrain her for this, but being tied up and deflowered sends her a message. She's certainly entered your service in a way that colors her impression of you @@.hotpink;with pain@@ and @@.gold;fear.@@ @@.lime;Her tight little pussy has been broken in.@@
+			You cuff $his wrists and ankles and secure $his unresisting body to the couch next to your desk with $his legs spread. $He writhes and moans as you enter $his virgin pussy. You might not have even had to restrain $him for this, but being tied up and deflowered sends $him a message. $He's certainly entered your service in a way that colors $his impression of you @@.hotpink;with pain@@ and @@.gold;fear.@@ @@.lime;$His tight little pussy has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion += 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1244,9 +1244,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if  ($activeSlave.devotion < -10) && ($activeSlave.anus == 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Tie her up and rape her virgin ass">>
+	<<link "Tie $him up and rape $his virgin ass">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles and secure her struggling, screeching body to the couch next to your desk so that she's straddling the back of the couch with her butt sticking out. She wriggles and protests until she feels the lubricated head of <<if $PC.dick == 1>>your dick<<else>>a strap-on<</if>> pushing against her virgin butthole, at which point she desperately tries to break free. She fails, but she never stops writhing and begging you to take <<if $PC.dick == 1>>your cock<<else>>the phallus<</if>> out of her asshole. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;Her tight little ass has been broken in.@@
+			You cuff $his wrists and ankles and secure $his struggling, screeching body to the couch next to your desk so that $he's straddling the back of the couch with $his butt sticking out. $He wriggles and protests until $he feels the lubricated head of <<if $PC.dick == 1>>your dick<<else>>a strap-on<</if>> pushing against $his virgin butthole, at which point $he desperately tries to break free. $He fails, but $he never stops writhing and begging you to take <<if $PC.dick == 1>>your cock<<else>>the phallus<</if>> out of $his asshole. $He's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;$His tight little ass has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1255,9 +1255,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<</link>>
 <<elseif ($activeSlave.anus == 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Tie her up and break her ass in">>
+	<<link "Tie $him up and break $his ass in">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles and secure her unresisting body to the couch next to your desk so that she's straddling the back of the couch with her butt sticking out. She lies obediently still until she feels the lubricated head of your cock pushing against her virgin butthole, at which point she starts in surprise. When the pain of the buttfuck gets to be too much she begs you to use her <<if $activeSlave.dick == 0>>pussy<<else>>mouth<</if>> instead. She gasps and cries as you slowly push your cock all the way up her tight little butt, and in no time you fill her rectum with cum. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with pain@@ and @@.gold;fear.@@ @@.lime;Her tight little ass has been broken in.@@
+			You cuff $his wrists and ankles and secure $his unresisting body to the couch next to your desk so that $he's straddling the back of the couch with $his butt sticking out. $He lies obediently still until $he feels the lubricated head of your cock pushing against $his virgin butthole, at which point $he starts in surprise. When the pain of the buttfuck gets to be too much $he begs you to use $his <<if $activeSlave.dick == 0>>pussy<<else>>mouth<</if>> instead. $He gasps and cries as you slowly push your cock all the way up $his tight little butt, and in no time you fill $his rectum with cum. $He's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with pain@@ and @@.gold;fear.@@ @@.lime;$His tight little ass has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1269,53 +1269,53 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $activeSlave.fetish != "mindbroken">>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
-<<link "Break her in publicly">>
+<<link "Break $him in publicly">>
 	<<replace "#introResult">>
 		You <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>order the obedient slave to follow you<<else>>bring the resistant slave<</if>> out into the public areas below your penthouse, shove the nude $desc over a convenient handrail, and stick <<if $PC.dick == 1>>your dick<<else>>a strap-on<</if>>
 		<<if $activeSlave.vagina >= 0>>
 			<<if $activeSlave.vagina >= 3>>
-				inside her gaping cunt, which is loose enough that the rough treatment doesn't bother her physically.
+				inside $his gaping cunt, which is loose enough that the rough treatment doesn't bother $him physically.
 			<<elseif $activeSlave.vagina >= 2>>
-				inside her accommodating pussy, which is welcoming enough that the rough insertion doesn't hurt her physically.
+				inside $his accommodating pussy, which is welcoming enough that the rough insertion doesn't hurt $him physically.
 			<<else>>
-				inside her tight little pussy, making the poor girl writhe with discomfort.
+				inside $his tight little pussy, making the poor girl writhe with discomfort.
 			<</if>>
 		<<else>>
 			<<if $activeSlave.anus >= 3>>
-				inside her lewd anal slit, which is so used to being fucked that the rough treatment doesn't bother her physically.
+				inside $his lewd anal slit, which is so used to being fucked that the rough treatment doesn't bother $him physically.
 			<<elseif $activeSlave.anus >= 2>>
-				up her welcoming butt, which is loose enough that the rough insertion doesn't hurt her physically.
+				up $his welcoming butt, which is loose enough that the rough insertion doesn't hurt $him physically.
 			<<else>>
-				up her poor little butthole, making the poor girl struggle desperately with anal pain.
+				up $his poor little butthole, making the poor girl struggle desperately with anal pain.
 			<</if>>
 		<</if>>
-		You take her, hard, while passersby stare at her as she gets pounded over a rail.
+		You take $him, hard, while passersby stare at $him as $he gets pounded over a rail.
 		<<if $activeSlave.devotion > 20>>
 			<<if $activeSlave.fetish == "humiliation">>
 				<<if $activeSlave.fetishKnown == 0>>
-					She struggles under the stares, blushing furiously as she takes a fuck in the open. She orgasms despite herself; @@.green;she's a humiliation fetishist!@@
+					$He struggles under the stares, blushing furiously as $he takes a fuck in the open. $He orgasms despite $himself; @@.green;$he's a humiliation fetishist!@@
 					<<set $activeSlave.fetishKnown = 1>>
 				<<else>>
-					As a humiliation fetishist, she gets off on the stares, blushing cutely as she takes a fuck in public.
+					As a humiliation fetishist, $he gets off on the stares, blushing cutely as $he takes a fuck in public.
 				<</if>>
-				She follows you back inside your penthouse, leaking <<if $PC.dick == 1>>your cum<<else>>lube<</if>>, @@.hotpink;feeling like a slut.@@
+				$He follows you back inside your penthouse, leaking <<if $PC.dick == 1>>your cum<<else>>lube<</if>>, @@.hotpink;feeling like a slut.@@
 				<<set $activeSlave.devotion += 5>>
 			<<else>>
-				She takes the fuck obediently, and does her very best to ignore the stares. <<if $activeSlave.fetishKnown == 0>>It seems she<<else>>She<</if>> isn't a humiliation fetishist, but she is @@.hotpink;willing to submit@@ to being used as a sex slave in public.
+				$He takes the fuck obediently, and does $his very best to ignore the stares. <<if $activeSlave.fetishKnown == 0>>It seems $he<<else>>$He<</if>> isn't a humiliation fetishist, but $he is @@.hotpink;willing to submit@@ to being used as a sex slave in public.
 				<<set $activeSlave.devotion += 4>>
 			<</if>>
 		<<else>>
 			<<if $activeSlave.fetish == "humiliation">>
 				<<if $activeSlave.fetishKnown == 0>>
-					Her struggles slowly diminish as the stares have a horribly embarrassing effect on her. She orgasms and then starts to cry, realizing what just happened; @@.green;she's a humiliation fetishist!@@
+					$His struggles slowly diminish as the stares have a horribly embarrassing effect on $him. $He orgasms and then starts to cry, realizing what just happened; @@.green;$he's a humiliation fetishist!@@
 					<<set $activeSlave.fetishKnown = 1>>
 				<<else>>
-					As a humiliation fetishist, she can't stop herself from getting off on being fucked in public.
+					As a humiliation fetishist, $he can't stop $himself from getting off on being fucked in public.
 				<</if>>
-				As you pull her back towards your penthouse, she leaks <<if $PC.dick == 1>>your cum<<else>>lube<</if>> and @@.hotpink;feels like a slut.@@
+				As you pull $him back towards your penthouse, $he leaks <<if $PC.dick == 1>>your cum<<else>>lube<</if>> and @@.hotpink;feels like a slut.@@
 				<<set $activeSlave.devotion += 4>>
 			<<else>>
-				She takes the fuck unwillingly, crying and doing her best to ignore the stares. <<if $activeSlave.fetishKnown == 0>>It seems she<<else>>She<</if>> isn't a humiliation fetishist, and is @@.gold;rapidly learning what it means@@ to be your sex slave.
+				$He takes the fuck unwillingly, crying and doing $his best to ignore the stares. <<if $activeSlave.fetishKnown == 0>>It seems $he<<else>>$He<</if>> isn't a humiliation fetishist, and is @@.gold;rapidly learning what it means@@ to be your sex slave.
 			<<set $activeSlave.trust -= 4>>
 			<</if>>
 		<</if>>
@@ -1327,10 +1327,10 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if ($activeSlave.devotion > 20)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Give her a chance to impress">>
+	<<link "Give $him a chance to impress">>
 		<<replace "#introResult">>
 			<<set _num = random(1,100)>>
-			She seems reasonably obedient, so you give her a chance to impress. You remain seated and offer her your <<if $PC.dick == 1>>half-erect cock<<if $PC.vagina == 1>> and ready pussy<</if>><<else>>pussy, wet with arousal at the prospect of breaking in a new slut<</if>>. She comes over obediently and gets on her knees. She works hard and is clearly doing her absolute best to please, so you let her finish you with her mouth. <<if $PC.dick == 1>><<if _num > 20>>She looks up at you as she swallows<<elseif _num > 40>>She even swallows your cum without being told<<elseif _num > 60>>She smiles sloppily as your seed slowly dribbles from her mouth and down her chin<<elseif _num > 80>>She struggles to contain your seed and makes a mess all over her face as a result<<else>>She struggles to contain your seed with her mouth and it splatters over the floor as a result<</if>><<else>>She worked her tongue hard and did her best<</if>>. You spend the rest of the day with her kneeling on a cushion next to your chair. She learns obedience, but also learns that you are @@.mediumaquamarine;fair@@ and @@.hotpink;reasonable.@@
+			$He seems reasonably obedient, so you give $him a chance to impress. You remain seated and offer $him your <<if $PC.dick == 1>>half-erect cock<<if $PC.vagina == 1>> and ready pussy<</if>><<else>>pussy, wet with arousal at the prospect of breaking in a new slut<</if>>. $He comes over obediently and gets on $his knees. $He works hard and is clearly doing $his absolute best to please, so you let $him finish you with $his mouth. <<if $PC.dick == 1>><<if _num > 20>>$He looks up at you as $he swallows<<elseif _num > 40>>$He even swallows your cum without being told<<elseif _num > 60>>$He smiles sloppily as your seed slowly dribbles from $his mouth and down $his chin<<elseif _num > 80>>$He struggles to contain your seed and makes a mess all over $his face as a result<<else>>$He struggles to contain your seed with $his mouth and it splatters over the floor as a result<</if>><<else>>$He worked $his tongue hard and did $his best<</if>>. You spend the rest of the day with $him kneeling on a cushion next to your chair. $He learns obedience, but also learns that you are @@.mediumaquamarine;fair@@ and @@.hotpink;reasonable.@@
 		<</replace>>
 		<<set $activeSlave.devotion += 4>>
 		<<set $activeSlave.trust += 4>>
@@ -1344,9 +1344,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $activeSlave.bellyPreg >= 5000>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Make sure she knows pregnant women can still enjoy sex.">>
+	<<link "Make sure $he knows pregnant women can still enjoy sex.">>
 		<<replace "#introResult">>
-			You introduce her to obedience and proper manners regarding her <<if $PC.title == 1>>master<<else>>mistress<</if>> before sending her off for a physical. That night, she's returned to your room, and finds you doing business on a tablet in bed. She looks doubtful, but obeys when you direct her to get into bed<<if $PC.dick == 0>>, even after she realizes you're wearing a strap-on<</if>>. You turn out the light and spoon her from behind, kissing her neck and ears, cupping her swollen breasts, and running your hands across her pregnant belly with its taut $activeSlave.skin skin. She's awkward at first but her body responds to the tenderness. Before long she's humping her pussy back and forth against <<if $PC.dick == 1>>your cock<<else>>the strap-on<</if>>. You begin to gently work <<if $PC.dick == 1>>your dickhead<<else>>its tip<</if>> up her used pussy. She's unsure of herself, but you keep her nice and relaxed. After several minutes of gentle loving, she's nothing but a satisfied puddle in your arms. She believes that she can @@.mediumaquamarine;trust@@ you won't harm her or her child.
+			You introduce $him to obedience and proper manners regarding $his <<if $PC.title == 1>>master<<else>>mistress<</if>> before sending $him off for a physical. That night, $he's returned to your room, and finds you doing business on a tablet in bed. $He looks doubtful, but obeys when you direct $him to get into bed<<if $PC.dick == 0>>, even after $he realizes you're wearing a strap-on<</if>>. You turn out the light and spoon $him from behind, kissing $his neck and ears, cupping $his swollen breasts, and running your hands across $his pregnant belly with its taut $activeSlave.skin skin. $He's awkward at first but $his body responds to the tenderness. Before long $he's humping $his pussy back and forth against <<if $PC.dick == 1>>your cock<<else>>the strap-on<</if>>. You begin to gently work <<if $PC.dick == 1>>your dickhead<<else>>its tip<</if>> up $his used pussy. $He's unsure of $himself, but you keep $him nice and relaxed. After several minutes of gentle loving, $he's nothing but a satisfied puddle in your arms. $He believes that $he can @@.mediumaquamarine;trust@@ you won't harm $him or $his child.
 		<</replace>>
 		<<set $activeSlave.trust += 5>>
 		<<= VaginalVCheck()>>
@@ -1357,40 +1357,40 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <</if>>
 
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
-<<link "Tease her nipples">>
+<<link "Tease $his nipples">>
 	<<replace "#introResult">>
-		You <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>instruct the obedient $desc<<else>>force the reluctant $desc<</if>> to lie atop your desk in front of you and go back to business. After a few minutes, you extend an idle hand and begin to fondle her <<if $activeSlave.boobs > 2000>>massive tits<<elseif $activeSlave.boobs > 400>>healthy breasts<<else>>cute little boobs<</if>>, continuing your work with your other hand. You quickly focus your fiddling on her $activeSlave.nipples nipples, the stimulation
+		You <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>instruct the obedient $desc<<else>>force the reluctant $desc<</if>> to lie atop your desk in front of you and go back to business. After a few minutes, you extend an idle hand and begin to fondle $his <<if $activeSlave.boobs > 2000>>massive tits<<elseif $activeSlave.boobs > 400>>healthy breasts<<else>>cute little boobs<</if>>, continuing your work with your other hand. You quickly focus your fiddling on $his $activeSlave.nipples nipples, the stimulation
 		<<if $activeSlave.nipples == "fuckable">>
-			<<if ($activeSlave.devotion > 20)>>quickly engorging them around your fingers<<else>>slowly engorging them around your fingers despite her feelings<</if>>.
+			<<if ($activeSlave.devotion > 20)>>quickly engorging them around your fingers<<else>>slowly engorging them around your fingers despite $his feelings<</if>>.
 		<<else>>
-			bringing them <<if ($activeSlave.devotion > 20)>>quickly erect<<else>>slowly erect despite her feelings<</if>>.
+			bringing them <<if ($activeSlave.devotion > 20)>>quickly erect<<else>>slowly erect despite $his feelings<</if>>.
 		<</if>>
 		<<if $activeSlave.devotion > 20>>
 			<<if $activeSlave.fetish == "boobs">>
 				<<if $activeSlave.fetishKnown == 0>>
-					The slave quickly becomes aroused. Before long, an orgasm convulses her entire body, jiggling the feminine flesh under your hand delightfully. @@.green;She's a breast fetishist!@@
+					The slave quickly becomes aroused. Before long, an orgasm convulses $his entire body, jiggling the feminine flesh under your hand delightfully. @@.green;$He's a breast fetishist!@@
 				<<set $activeSlave.fetishKnown = 1>>
 				<<else>>
-					Her breast fixation makes this teasing quite pleasurable for her, almost as good as a handjob. Before long, an orgasm convulses her entire body, jiggling the feminine flesh under your hand delightfully.
+					$His breast fixation makes this teasing quite pleasurable for $him, almost as good as a handjob. Before long, an orgasm convulses $his entire body, jiggling the feminine flesh under your hand delightfully.
 				<</if>>
-				When you tell her to go, she carefully rolls off your desk in such a way that, @@.hotpink;her nipples graze your cheek.@@
+				When you tell $him to go, $he carefully rolls off your desk in such a way that, @@.hotpink;$his nipples graze your cheek.@@
 				<<set $activeSlave.devotion += 5>>
 			<<else>>
-				She accepts being treated as a desktop stress relief toy. She's no breast fetishist, but she's @@.hotpink;willing to be used@@ as a sex object.
+				$He accepts being treated as a desktop stress relief toy. $He's no breast fetishist, but $he's @@.hotpink;willing to be used@@ as a sex object.
 				<<set $activeSlave.devotion += 4>>
 			<</if>>
 		<<else>>
 			<<if $activeSlave.fetish == "boobs">>
 				<<if $activeSlave.fetishKnown == 0>>
-					The slave slowly becomes aroused despite her reluctance. Soon, she can no longer hide her horniness and begins to pant, openly enjoying the sensations. @@.green;She's a breast fetishist!@@
+					The slave slowly becomes aroused despite $his reluctance. Soon, $he can no longer hide $his horniness and begins to pant, openly enjoying the sensations. @@.green;$He's a breast fetishist!@@
 					<<set $activeSlave.fetishKnown = 1>>
 				<<else>>
-					The slave slowly becomes aroused despite her reluctance. As a breast fetishist, playing with her nipples is an excellent way to overcome her petty resistance to being a sex object.
+					The slave slowly becomes aroused despite $his reluctance. As a breast fetishist, playing with $his nipples is an excellent way to overcome $his petty resistance to being a sex object.
 				<</if>>
-				When you tell her to go, she gets off your desk gingerly, since she's almost painfully aroused. @@.hotpink;She feels like quite a slut@@ for wanting a fuck this badly after a little nipple play.
+				When you tell $him to go, $he gets off your desk gingerly, since $he's almost painfully aroused. @@.hotpink;$He feels like quite a slut@@ for wanting a fuck this badly after a little nipple play.
 				<<set $activeSlave.devotion += 4>>
 			<<else>>
-				She expects something worse to happen immediately, and slowly relaxes when she realizes that she's nothing more than your desktop stress relief toy, at least for now. She experiences the usual effects of nipple play, but seems @@.gold;somewhat frightened@@ to be dehumanized so thoroughly.
+				$He expects something worse to happen immediately, and slowly relaxes when $he realizes that $he's nothing more than your desktop stress relief toy, at least for now. $He experiences the usual effects of nipple play, but seems @@.gold;somewhat frightened@@ to be dehumanized so thoroughly.
 				<<set $activeSlave.devotion -= 4>>
 			<</if>>
 		<</if>>
@@ -1399,23 +1399,23 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $PC.vagina == 1 && $activeSlave.dick > 0 && canAchieveErection($activeSlave)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Dominate her penis and demonstrate her place">>
+	<<link "Dominate $his penis and demonstrate $his place">>
 		<<replace "#introResult">>
-			As you inspect her, you take note of her fully functional <<if $activeSlave.dick == 1>>tiny dick<<elseif $activeSlave.dick == 2>>cute dick<<elseif $activeSlave.dick == 3>>dick<<elseif $activeSlave.dick == 4>>big dick<<elseif $activeSlave.dick == 5>>impressive dick<<elseif $activeSlave.dick == 6>>huge dick<</if>>. You roughly push her up against a wall and begin fondling her penis, grinning at the look of panic growing on her face.
+			As you inspect $him, you take note of $his fully functional <<if $activeSlave.dick == 1>>tiny dick<<elseif $activeSlave.dick == 2>>cute dick<<elseif $activeSlave.dick == 3>>dick<<elseif $activeSlave.dick == 4>>big dick<<elseif $activeSlave.dick == 5>>impressive dick<<elseif $activeSlave.dick == 6>>huge dick<</if>>. You roughly push $him up against a wall and begin fondling $his penis, grinning at the look of panic growing on $his face.
 		<<if $activeSlave.dick == 1>>
-		You scoff at her as her micropenis barely fills your palm.
+		You scoff at $him as $his micropenis barely fills your palm.
 		<<elseif $activeSlave.dick == 2>>
-		You laugh at her as her small penis fills your palm.
+		You laugh at $him as $his small penis fills your palm.
 		<<elseif $activeSlave.dick == 3>>
-		You nod at her as her penis fills your hand.
+		You nod at $him as $his penis fills your hand.
 		<<elseif $activeSlave.dick == 4>>
-		You smirk at her as her big penis fills your hand.
+		You smirk at $him as $his big penis fills your hand.
 		<<elseif $activeSlave.dick == 5>>
-		You smile widely at her, a dangerous look in your eyes, as you bring another hand to her impressive dick.
+		You smile widely at $him, a dangerous look in your eyes, as you bring another hand to $his impressive dick.
 		<<elseif $activeSlave.dick == 6>>
-		You grin sadistically at her as her massive dick fills both of your hands.
+		You grin sadistically at $him as $his massive dick fills both of your hands.
 		<</if>>
-		As she begins to moan with lust, you grip down tightly and force her to the floor. You straddle her and lower your dripping pussy onto her face<<if $PC.dick == 1>>, your erect cock coming to rest on her forehead<</if>>. You continue stroking your toy's rod as she eagerly begins eating you out. As her cock begins to throb, anticipating her upcoming orgasm, you quickly bind the base of her penis, denying her release. You grind your cunt into her face, telling her that YOU are the one who'll be orgasming here, not her. Only once you have initiated the new slave by soaking her face in your cum do you release her dick and lean back to avoid the coming blast. A few strokes later and your hand is coated in her cum. You turn around and order the exhausted girl to clean her cum off your hand<<if $PC.dick == 1>> and to finish off her twitching dick<</if>>; she @@.hotpink;complies meekly@@, knowing you are the @@.gold;dominant force@@ in her life now.
+		As $he begins to moan with lust, you grip down tightly and force $him to the floor. You straddle $him and lower your dripping pussy onto $his face<<if $PC.dick == 1>>, your erect cock coming to rest on $his forehead<</if>>. You continue stroking your toy's rod as $he eagerly begins eating you out. As $his cock begins to throb, anticipating $his upcoming orgasm, you quickly bind the base of $his penis, denying $his release. You grind your cunt into $his face, telling $him that YOU are the one who'll be orgasming here, not $him. Only once you have initiated the new slave by soaking $his face in your cum do you release $his dick and lean back to avoid the coming blast. A few strokes later and your hand is coated in $his cum. You turn around and order the exhausted girl to clean $his cum off your hand<<if $PC.dick == 1>> and to finish off $his twitching dick<</if>>; $he @@.hotpink;complies meekly@@, knowing you are the @@.gold;dominant force@@ in $his life now.
 		<</replace>>
 		<<set $activeSlave.devotion += 5>>
 		<<set $activeSlave.trust -= 3>>
@@ -1424,14 +1424,14 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $PC.belly >= 3000 && $activeSlave.amp != 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Make her worship your pregnancy">>
+	<<link "Make $him worship your pregnancy">>
 		<<replace "#introResult">>
-			You aggressively approach $activeSlave.slaveName, forcing your pregnancy directly into her <<if $activeSlave.height > 175>>stomach<<elseif $activeSlave.height < 155>>face<<else>>chest<</if>> until she has no choice but to be pushed to the ground. Standing over her, staring her down as she peeks around your firm globe of a middle, you order her to worship your pregnancy.
+			You aggressively approach $activeSlave.slaveName, forcing your pregnancy directly into $his <<if $activeSlave.height > 175>>stomach<<elseif $activeSlave.height < 155>>face<<else>>chest<</if>> until $he has no choice but to be pushed to the ground. Standing over $him, staring $him down as $he peeks around your firm globe of a middle, you order $him to worship your pregnancy.
 			<<if $activeSlave.fetish == "pregnancy">>
-				She complies eagerly. She begins with sucking your popped navel before running her tongue across the taut, smooth surface of your pregnancy. Once she has finished with your belly, she lowers herself under it to begin work on your needy pussy. Before long, her overzealous efforts have you quaking in pleasure, rousing your child. Once she finishes you off, she returns to rubbing your belly, soothing your rowdy child and @@.hotpink;solidifying her place@@ beneath you.
+				$He complies eagerly. $He begins with sucking your popped navel before running $his tongue across the taut, smooth surface of your pregnancy. Once $he has finished with your belly, $he lowers $himself under it to begin work on your needy pussy. Before long, $his overzealous efforts have you quaking in pleasure, rousing your child. Once $he finishes you off, $he returns to rubbing your belly, soothing your rowdy child and @@.hotpink;solidifying $his place@@ beneath you.
 				<<set $activeSlave.devotion += 15>>
 			<<else>>
-				She shifts her gaze between your middle and your face, not sure what to do. Losing patience, you toss a tube of cream at her. She shakily massages it onto your stretched skin, missing spots, much to your pleasure. With reason, you force her onto her back, turn around, and plant your needy cunt directly onto her face. Struggling to breath under your weight, she begins eating you out in desperation. After coaxing her to massage your belly as she does, you quickly climax across her face and gently lift yourself off the coughing girl. She now @@.hotpink;understands her place in life@@ and is @@.gold;terrified@@ about what she will have to do if she wants to survive.
+				$He shifts $his gaze between your middle and your face, not sure what to do. Losing patience, you toss a tube of cream at $him. $He shakily massages it onto your stretched skin, missing spots, much to your pleasure. With reason, you force $him onto $his back, turn around, and plant your needy cunt directly onto $his face. Struggling to breath under your weight, $he begins eating you out in desperation. After coaxing $him to massage your belly as $he does, you quickly climax across $his face and gently lift yourself off the coughing girl. $He now @@.hotpink;understands $his place in life@@ and is @@.gold;terrified@@ about what $he will have to do if $he wants to survive.
 				<<set $activeSlave.devotion += 5>>
 				<<set $activeSlave.trust -= 5>>
 			<</if>>
@@ -1440,14 +1440,14 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<<if $PC.preg >= 28>>
 	<<if $PC.pregMood == 2 && canPenetrate($activeSlave)>>
 		|
-		<<link "She has a dick and you need it">>
+		<<link "$He has a dick and you need it">>
 			<<replace "#introResult">>
-				You aggressively approach $activeSlave.slaveName, forcing your pregnancy directly into her <<if $activeSlave.height > 175>>stomach<<elseif $activeSlave.height < 155>>face<<else>>chest<</if>> until she has no choice but to be pushed to the ground. You quickly straddle her face, forcing your oozing cunt over her mouth as you eagerly stroke her cock to full length.
+				You aggressively approach $activeSlave.slaveName, forcing your pregnancy directly into $his <<if $activeSlave.height > 175>>stomach<<elseif $activeSlave.height < 155>>face<<else>>chest<</if>> until $he has no choice but to be pushed to the ground. You quickly straddle $his face, forcing your oozing cunt over $his mouth as you eagerly stroke $his cock to full length.
 				<<if $activeSlave.fetish == "pregnancy">>
-					She groans with disappointment as your pregnant pussy leaves her reach, though her displeasure is short lived as you greedily take her entire dick into your aching snatch. You ride her mercilessly, frequently smacking her with your heavy belly. She loves every minute of it, especially when she feels your body tense up as she lets loose her load deep into you. Where most slaves would be begging for mercy, she @@.hotpink;eagerly complies@@ as you adjust yourself and begin round two. You don't know what came over you, but when you wake up, you find she's resting peacefully under your gravid mass. <<if $activeSlave.fetishKnown == 0>>It seems she likes @@.green;being a pregnant woman's plaything.@@<<set $activeSlave.fetishKnown = 1>><<else>>You knew she had a pregnancy fetish and the look on her face confirms it.<</if>> A kick from within startles you from your thoughts; it would appear your child agrees that you'll have to have another ride sometime.
+					$He groans with disappointment as your pregnant pussy leaves $his reach, though $his displeasure is short lived as you greedily take $his entire dick into your aching snatch. You ride $him mercilessly, frequently smacking $him with your heavy belly. $He loves every minute of it, especially when $he feels your body tense up as $he lets loose $his load deep into you. Where most slaves would be begging for mercy, $he @@.hotpink;eagerly complies@@ as you adjust yourself and begin round two. You don't know what came over you, but when you wake up, you find $he's resting peacefully under your gravid mass. <<if $activeSlave.fetishKnown == 0>>It seems $he likes @@.green;being a pregnant woman's plaything.@@<<set $activeSlave.fetishKnown = 1>><<else>>You knew $he had a pregnancy fetish and the look on $his face confirms it.<</if>> A kick from within startles you from your thoughts; it would appear your child agrees that you'll have to have another ride sometime.
 					<<set $activeSlave.devotion += 15>>
 				<<else>>
-					She coughs as your pregnant pussy vacates her face, though her relief is short lived as you greedily slam yourself down onto her waiting dick. You ride her mercilessly, frequently smacking her with your heavy belly. She hates every minute of it, choosing to alternate between begging you to stop and just openly weeping. You cum hard as you watch the look on her face as she unwillingly cums deep inside you. She cries out in protest as you continue raping her, but you don't care. All that matters is your satisfaction. You are eventually awoken by desperate struggle to escape from beneath your gravid mass; she quickly regrets her choices as you remount her for one last go. She now @@.hotpink;better understands her place as a toy@@ and is @@.gold;terrified@@ of your insatiable lust.
+					$He coughs as your pregnant pussy vacates $his face, though $his relief is short lived as you greedily slam yourself down onto $his waiting dick. You ride $him mercilessly, frequently smacking $him with your heavy belly. $He hates every minute of it, choosing to alternate between begging you to stop and just openly weeping. You cum hard as you watch the look on $his face as $he unwillingly cums deep inside you. $He cries out in protest as you continue raping $him, but you don't care. All that matters is your satisfaction. You are eventually awoken by desperate struggle to escape from beneath your gravid mass; $he quickly regrets $his choices as you remount $him for one last go. $He now @@.hotpink;better understands $his place as a toy@@ and is @@.gold;terrified@@ of your insatiable lust.
 					<<set $activeSlave.devotion += 5, $activeSlave.trust -= 15>>
 				<</if>>
 				<<set $activeSlave.penetrativeCount += 5, $penetrativeTotal += 5>>
@@ -1456,9 +1456,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 		<</link>>
 	<<elseif $PC.pregMood == 1>>
 		|
-		<<link "Take her to your breast">>
+		<<link "Take $him to your breast">>
 			<<replace "#introResult">>
-				You calmly approach $activeSlave.slaveName, pulling her into a soothing embrace against your
+				You calmly approach $activeSlave.slaveName, pulling $him into a soothing embrace against your
 				<<if $PC.boobsBonus > 2>>
 					enormous<<if $PC.boobsImplant == 1>>, fake<</if>>, milk laden breasts.
 				<<elseif $PC.boobsBonus == 2>>
@@ -1474,15 +1474,15 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 				<<else>>
 					milk swollen chest.
 				<</if>>
-				She tries to squirm away from the moist spot growing under her cheek, but you reveal your nipple and carefully direct her mouth over it.
+				$He tries to squirm away from the moist spot growing under $his cheek, but you reveal your nipple and carefully direct $his mouth over it.
 				<<if $activeSlave.fetish == "pregnancy">>
-					Slowly she begins to suckle from your swollen breast. You gently brush her head as you try to hold back your pleasure, a wasted effort as a hand sneaks its way to your <<if $PC.dick == 1>>growing erection and enthusiastically begins pumping away. You clutch your pervy girl closer to you as she caresses your pregnancy with one hand and gets you off with the other<<else>>wet pussy and enthusiastically begins rubbing your clit. You clutch your pervy girl closer to you as she caresses your pregnancy with one hand and gets you off with the other<</if>>. Before long you find yourself bucking your hips with lust, a queue for you to release her from your nipple so she may slide down your gravid dome of a belly to finish you off. Happy to serve her pregnant <<if $PC.title == 1>>master<<else>>mistress<</if>>, she returns to your chest, happy to relieve you of the pressure building in your neglected breast. <<if $activeSlave.fetishKnown == 0>>Judging by that show, @@.green;she savors getting to be with a pregnant woman.@@<<set $activeSlave.fetishKnown = 1>><<else>>You knew she had a pregnancy fetish and her eagerness to serve a pregnant woman proves that.<</if>> A kick from within startles you from your thoughts; as you reach to soothe your child, you find your new slave @@.mediumaquamarine;already doting on it.@@ She's already starting to @@.hotpink;show understanding of her place.@@
+					Slowly $he begins to suckle from your swollen breast. You gently brush $his head as you try to hold back your pleasure, a wasted effort as a hand sneaks its way to your <<if $PC.dick == 1>>growing erection and enthusiastically begins pumping away. You clutch your pervy girl closer to you as $he caresses your pregnancy with one hand and gets you off with the other<<else>>wet pussy and enthusiastically begins rubbing your clit. You clutch your pervy girl closer to you as $he caresses your pregnancy with one hand and gets you off with the other<</if>>. Before long you find yourself bucking your hips with lust, a queue for you to release $him from your nipple so $he may slide down your gravid dome of a belly to finish you off. Happy to serve $his pregnant <<if $PC.title == 1>>master<<else>>mistress<</if>>, $he returns to your chest, happy to relieve you of the pressure building in your neglected breast. <<if $activeSlave.fetishKnown == 0>>Judging by that show, @@.green;$he savors getting to be with a pregnant woman.@@<<set $activeSlave.fetishKnown = 1>><<else>>You knew $he had a pregnancy fetish and $his eagerness to serve a pregnant woman proves that.<</if>> A kick from within startles you from your thoughts; as you reach to soothe your child, you find your new slave @@.mediumaquamarine;already doting on it.@@ $He's already starting to @@.hotpink;show understanding of $his place.@@
 					<<set $activeSlave.devotion += 15, $activeSlave.trust += 15>>
 				<<elseif $activeSlave.fetish == "boobs">>
-					Eagerly she begins to suckle from your swollen breast. You gently brush her head as you try to hold back your pleasure, a wasted effort as a hand sneaks its way to your neglected breast. She massages it, careful not to encourage your lactation too much, as she greedily sucks you dry. She wastes no time in swapping to your other nipple, shifting her ministrations to the one the just left. By the time your reserves are tapped out, both you and she are quite content. You permit her to rest against your chest for a little before you send her on her way. <<if $activeSlave.fetishKnown == 0>>Judging by her enthusiasm, @@.green;she savors getting her mouth close to a pair of boobs.@@<<set $activeSlave.fetishKnown = 1>><<else>>You knew she had a breast fetishist and her eagerness to lighten a lactating woman proves that.<</if>> A kick from within startles you from your thoughts; you pat your gravid middle, reassuring your child that you'll make sure to save some milk for them. She's already starting to @@.hotpink;show understanding of her place@@ and even @@.mediumaquamarine;beginning to build trust@@ with you.
+					Eagerly $he begins to suckle from your swollen breast. You gently brush $his head as you try to hold back your pleasure, a wasted effort as a hand sneaks its way to your neglected breast. $He massages it, careful not to encourage your lactation too much, as $he greedily sucks you dry. $He wastes no time in swapping to your other nipple, shifting $his ministrations to the one the just left. By the time your reserves are tapped out, both you and $he are quite content. You permit $him to rest against your chest for a little before you send $him on $his way. <<if $activeSlave.fetishKnown == 0>>Judging by $his enthusiasm, @@.green;$he savors getting $his mouth close to a pair of boobs.@@<<set $activeSlave.fetishKnown = 1>><<else>>You knew $he had a breast fetishist and $his eagerness to lighten a lactating woman proves that.<</if>> A kick from within startles you from your thoughts; you pat your gravid middle, reassuring your child that you'll make sure to save some milk for them. $He's already starting to @@.hotpink;show understanding of $his place@@ and even @@.mediumaquamarine;beginning to build trust@@ with you.
 					<<set $activeSlave.devotion += 15, $activeSlave.trust += 15>>
 				<<else>>
-					Reluctantly she begins to suckle from your swollen breast. You gently brush her head as you try to hold back your pleasure, but it is too much. As she drinks deeper, you begin moaning with relief. At first she tenses at the sound, fearing punishment, but soon realizes you have no intent on @@.mediumaquamarine;harming her.@@ She allows you to dote over her as if she were your child, carefully moving to your other breast once the first runs dry. As she drinks, she begins to massage your taut middle; her touch soft and gentle. When you both finish, you push her to her feet and send her on her way. @@.hotpink;She stays and offers a hand to help you to your feet.@@ You are surprised by this display; it might be obedience, but she also may view you in your gravid state as someone weak. As she helps you back to your desk, she shoulders all of your weight. It would appear she is putting you first, for now.
+					Reluctantly $he begins to suckle from your swollen breast. You gently brush $his head as you try to hold back your pleasure, but it is too much. As $he drinks deeper, you begin moaning with relief. At first $he tenses at the sound, fearing punishment, but soon realizes you have no intent on @@.mediumaquamarine;harming $him.@@ $He allows you to dote over $him as if $he were your child, carefully moving to your other breast once the first runs dry. As $he drinks, $he begins to massage your taut middle; $his touch soft and gentle. When you both finish, you push $him to $his feet and send $him on $his way. @@.hotpink;$He stays and offers a hand to help you to your feet.@@ You are surprised by this display; it might be obedience, but $he also may view you in your gravid state as someone weak. As $he helps you back to your desk, $he shoulders all of your weight. It would appear $he is putting you first, for now.
 					<<set $activeSlave.devotion += 5, $activeSlave.trust += 5>>
 				<</if>>
 			<</replace>>
@@ -1493,12 +1493,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $PC.boobs == 1 && $activeSlave.boobs < (800+(200*$PC.boobsBonus)) && $activeSlave.boobs >= 300>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Let your ample bust dominate her pathetic one">>
+	<<link "Let your ample bust dominate $his pathetic one">>
 		<<replace "#introResult">>
-			You quickly strip off your shirt and draw close to $activeSlave.slaveName. You grab her as she attempts to back away and pull her tits directly into your own. Both of sets of eyes lock onto their pair of breasts, or they would have, had yours not utterly eclipsed their rival. Scoffing, you release the confused girl and walk away; leaving her cupping her own breasts and feeling uncertain about herself. She gets caught up in how small they really are, and how much @@.hotpink;lesser@@ than her <<= WrittenMaster($activeSlave)>> she is.
+			You quickly strip off your shirt and draw close to $activeSlave.slaveName. You grab $him as $he attempts to back away and pull $his tits directly into your own. Both of sets of eyes lock onto their pair of breasts, or they would have, had yours not utterly eclipsed their rival. Scoffing, you release the confused girl and walk away; leaving $him cupping $his own breasts and feeling uncertain about $himself. $He gets caught up in how small they really are, and how much @@.hotpink;lesser@@ than $him <<= WrittenMaster($activeSlave)>> $he is.
 			<<if $activeSlave.fetish == "boobs">>
 				<<if $activeSlave.fetishKnown == 0>>
-					You did note one thing when your breasts touched, her nipples <<if $activeSlave.nipples == "fuckable">>tightened around yours<<else>>got very hard<</if>>. @@.green;Looks like she's a breast fetishist!@@
+					You did note one thing when your breasts touched, $his nipples <<if $activeSlave.nipples == "fuckable">>tightened around yours<<else>>got very hard<</if>>. @@.green;Looks like $he's a breast fetishist!@@
 					<<set $activeSlave.fetishKnown = 1>>
 				<</if>>
 			<</if>>
@@ -1509,13 +1509,13 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if ($activeSlave.accent >= 3) && ($activeSlave.anus < 2) && ($activeSlave.intelligence < 2) && ($activeSlave.devotion < 10) && ($activeSlave.amp != 1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Force understanding of her situation past the language barrier">>
+	<<link "Force understanding of $his situation past the language barrier">>
 		<<replace "#introResult">>
-			With a rudimentary understanding of $language, at best, it's doubtful that she understands exactly what her immediate future is likely to entail. You resolve to let her in on the secret, and stand up, drawing her attention to your hands with gestures. You point first at her, and then at your left hand, which you form into a hole shape. Then you point at yourself with your left hand, and then at your right hand, whose index and middle fingers you extend, straight and together. Then, you take your left hand hole and your right hand phallus, and fuck the former with the latter, hard enough that the sex act depicted is obviously fun for your right hand only. She watches raptly, and when comprehension dawns across her face, @@.gold;she starts to sob.@@
+			With a rudimentary understanding of $language, at best, it's doubtful that $he understands exactly what $his immediate future is likely to entail. You resolve to let $him in on the secret, and stand up, drawing $his attention to your hands with gestures. You point first at $him, and then at your left hand, which you form into a hole shape. Then you point at yourself with your left hand, and then at your right hand, whose index and middle fingers you extend, straight and together. Then, you take your left hand hole and your right hand phallus, and fuck the former with the latter, hard enough that the sex act depicted is obviously fun for your right hand only. $He watches raptly, and when comprehension dawns across $his face, @@.gold;$he starts to sob.@@
 			<<if $activeSlave.vagina > -1>>
-				She indicates her vagina tentatively, almost hopefully, but you shake your head, and emphasize the circular, anus-like shape of your left hand. She cries harder.
+				$He indicates $his vagina tentatively, almost hopefully, but you shake your head, and emphasize the circular, anus-like shape of your left hand. $He cries harder.
 			<<else>>
-				She wilts, pressing her thighs together in an unconscious attempt to shield her anus from its future as a target for her <<if $PC.title == 1>>Master's<<else>>Mistress's<</if>> attentions.
+				$He wilts, pressing $his thighs together in an unconscious attempt to shield $his anus from its future as a target for $his <<if $PC.title == 1>>Master's<<else>>Mistress's<</if>> attentions.
 			<</if>>
 		<<set $activeSlave.trust -= 10>>
 		<</replace>>
@@ -1524,41 +1524,41 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $activeSlave.preg < 1 && $activeSlave.bellyImplant <= 0 && $activeSlave.inflation == 0 && $activeSlave.amp != 1 && $arcologies[0].FSHedonisticDecadenceResearch == 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Offer her a slave-food cookie">>
+	<<link "Offer $him a slave-food cookie">>
 		<<replace "#introResult">>
-			You pull a big plate of specially formulated cookies from your desk, place it before her and invite her to have some. She looks between the plate and you, unsure of what to make of this development, but eventually grabs one and
+			You pull a big plate of specially formulated cookies from your desk, place it before $him and invite $him to have some. $He looks between the plate and you, unsure of what to make of this development, but eventually grabs one and
 			<<if $activeSlave.behavioralFlaw == "gluttonous">>
-				shoves it into her mouth. She nearly chokes in surprise at the taste before greedily reaching for another.
+				shoves it into $his mouth. $He nearly chokes in surprise at the taste before greedily reaching for another.
 			<<elseif $activeSlave.behavioralFlaw == "anorexic">>
-				nibbles the edge of it. She gasps in surprise at the taste before greedily shoving the entire thing into her mouth and reaching for another.
+				nibbles the edge of it. $He gasps in surprise at the taste before greedily shoving the entire thing into $his mouth and reaching for another.
 			<<else>>
-				takes a bite. She gasps in surprise at the taste before greedily shoving the entire thing into her mouth and reaching for another.
+				takes a bite. $He gasps in surprise at the taste before greedily shoving the entire thing into $his mouth and reaching for another.
 			<</if>>
-			In minutes, she's managed to devour every last cookie on the plate. Before she can even pout that they're all gone, you place another pair of plates under her nose. She promptly rushes for them,
+			In minutes, $he's managed to devour every last cookie on the plate. Before $he can even pout that they're all gone, you place another pair of plates under $his nose. $He promptly rushes for them,
 			<<if $activeSlave.behavioralFlaw == "gluttonous">>
-				paying no mind to her bloated belly bumping into your desk, and resumes stuffing herself.
+				paying no mind to $his bloated belly bumping into your desk, and resumes stuffing $himself.
 			<<elseif $activeSlave.behavioralFlaw == "anorexic">>
-				only to recoil in shock when her bloated belly pushes into your desk. She gropes it uncomfortably before being overwhelmed by the addictive substance and going back to stuffing herself.
+				only to recoil in shock when $his bloated belly pushes into your desk. $He gropes it uncomfortably before being overwhelmed by the addictive substance and going back to stuffing $himself.
 			<<else>>
-				barely noticing her bloated belly bumping into your desk, and resumes stuffing herself.
+				barely noticing $his bloated belly bumping into your desk, and resumes stuffing $himself.
 			<</if>>
-			By the time she's done, her belly is positively huge. You can clearly see her swollen stomach at the top of the mass of food inside her. She collapses onto her rear and belches loudly.
+			By the time $he's done, $his belly is positively huge. You can clearly see $his swollen stomach at the top of the mass of food inside $him. $He collapses onto $his rear and belches loudly.
 			<<if $arcologies[0].FSDegradationist != "unset">>
-				It doesn't take long for the tainted food to do its thing. She groans loudly and clutches her bulging midriff, her body in severe distress thanks to the modified slave food. She rolls onto her back and does everything she can to soothe the turmoil growing inside her. You know it won't do any good, but she doesn't. She'll spend however long it takes her body to digest the food in anguish; she'll regret ever touching the stuff. But you know better, her growing addiction will have her scarfing it down at every chance, but for now, all she can do is @@.mediumorchid;blame you@@ and @@.gold;curse your trickery.@@
+				It doesn't take long for the tainted food to do its thing. $He groans loudly and clutches $his bulging midriff, $his body in severe distress thanks to the modified slave food. $He rolls onto $his back and does everything $he can to soothe the turmoil growing inside $him. You know it won't do any good, but $he doesn't. $He'll spend however long it takes $his body to digest the food in anguish; $he'll regret ever touching the stuff. But you know better, $his growing addiction will have $him scarfing it down at every chance, but for now, all $he can do is @@.mediumorchid;blame you@@ and @@.gold;curse your trickery.@@
 				<<set $activeSlave.devotion -= 20, $activeSlave.trust -= 20>>
 			<<else>>
 				<<if $activeSlave.behavioralFlaw == "gluttonous">>
-					She @@.mediumaquamarine;happily pats her full belly;@@ she's going to @@.hotpink;like it here.@@
+					$He @@.mediumaquamarine;happily pats $his full belly;@@ $he's going to @@.hotpink;like it here.@@
 					<<set $activeSlave.devotion += 10, $activeSlave.trust += 10>>
 				<<elseif $activeSlave.behavioralFlaw == "anorexic">>
-					Only then does she regain composure enough to realize what she's done. She @@.mediumorchid; bursts into tears@@ as she rubs her disgustingly full belly. She glares at you, only to catch you toying with even more food. She begins to @@.gold;tremble@@ when she realizes how easily you did this to her. You're sure she'll change her tune in time, since you know she'll be unable to resist sneaking treats.
+					Only then does $he regain composure enough to realize what $he's done. $He @@.mediumorchid; bursts into tears@@ as $he rubs $his disgustingly full belly. $He glares at you, only to catch you toying with even more food. $He begins to @@.gold;tremble@@ when $he realizes how easily you did this to $him. You're sure $he'll change $his tune in time, since you know $he'll be unable to resist sneaking treats.
 					<<set $activeSlave.devotion -= 10, $activeSlave.trust -= 10>>
 				<<else>>
-					She @@.hotpink;happily pats her full belly,@@ before coming to her senses and realizing what she did. She begins to @@.gold;tremble@@ as it dawns on her just how easily you manipulated her.
+					$He @@.hotpink;happily pats $his full belly,@@ before coming to $his senses and realizing what $he did. $He begins to @@.gold;tremble@@ as it dawns on $him just how easily you manipulated $him.
 					<<set $activeSlave.devotion += 5, $activeSlave.trust -= 10>>
 				<</if>>
 			<</if>>
-			Given the availability of the slave treats and her burgeoning addiction to them, she'll likely keep herself stuffed unless you force her to stop.
+			Given the availability of the slave treats and $his burgeoning addiction to them, $he'll likely keep $himself stuffed unless you force $him to stop.
 			<<set $activeSlave.inflation = 2, $activeSlave.inflationType = "food", $activeSlave.inflationMethod = 1>>
 			<<run SetBellySize($activeSlave)>>
 		<</replace>>
@@ -1569,35 +1569,35 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
-<<link "Spank her">>
+<<link "Spank $him">>
 <<replace "#introResult">>
-	You <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>lay the obedient $desc across your knees<<else>>force the resistant $desc to lie across your knees<</if>> and run a voluptuary hand across her <<if $activeSlave.butt > 6>>jiggling<<elseif $activeSlave.butt > 3>>delightfully big<<elseif $activeSlave.butt > 1>>cute<<else>>skinny<</if>> buttocks, enjoying the way she tenses up reflexively at the extreme vulnerability of her position. She feels the change in your posture as you bring your hand back, and <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>can't stop herself from wriggling<<else>>struggles desperately<</if>> for just a moment before your palm smacks against her ass.
+	You <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>lay the obedient $desc across your knees<<else>>force the resistant $desc to lie across your knees<</if>> and run a voluptuary hand across $his <<if $activeSlave.butt > 6>>jiggling<<elseif $activeSlave.butt > 3>>delightfully big<<elseif $activeSlave.butt > 1>>cute<<else>>skinny<</if>> buttocks, enjoying the way $he tenses up reflexively at the extreme vulnerability of $his position. $He feels the change in your posture as you bring your hand back, and <<if ($activeSlave.devotion > 20) || ($activeSlave.trust < -20)>>can't stop $himself from wriggling<<else>>struggles desperately<</if>> for just a moment before your palm smacks against $his ass.
 	<<if $activeSlave.devotion > 20>>
 		<<if $activeSlave.fetish == "masochist">>
 			<<if $activeSlave.fetishKnown == 0>>
-				She gasps with profound shock, and you feel her whole body stiffen atop your thighs as she tries to work out what just happened. With each spank, she grows more and more aroused until she finally reaches orgasm. @@.green;She's a pain fetishist!@@
+				$He gasps with profound shock, and you feel $his whole body stiffen atop your thighs as $he tries to work out what just happened. With each spank, $he grows more and more aroused until $he finally reaches orgasm. @@.green;$He's a pain fetishist!@@
 				<<set $activeSlave.fetishKnown = 1>>
 			<<else>>
-				She groans with guilty pleasure, feeling the pain radiate out from her buttocks with each swat, feeling it seem to circle around her hips to pool between her legs. Before long, she reaches a quivering orgasm.
+				$He groans with guilty pleasure, feeling the pain radiate out from $his buttocks with each swat, feeling it seem to circle around $his hips to pool between $his legs. Before long, $he reaches a quivering orgasm.
 			<</if>>
-			She gets up very gingerly, but bites her lip cutely, @@.hotpink;feeling a strange satisfaction.@@
+			$He gets up very gingerly, but bites $his lip cutely, @@.hotpink;feeling a strange satisfaction.@@
 			<<set $activeSlave.devotion += 5>>
 		<<else>>
-			She gasps with pain, but does not object or try to escape. She accepts the spanking dutifully. You're not particularly harsh, and she gets up after you tire of swatting her bottom @@.hotpink;without resentment@@ of this treatment.
+			$He gasps with pain, but does not object or try to escape. $He accepts the spanking dutifully. You're not particularly harsh, and $he gets up after you tire of swatting $his bottom @@.hotpink;without resentment@@ of this treatment.
 			<<set $activeSlave.devotion += 4>>
 		<</if>>
 	<<else>>
 		<<if $activeSlave.fetish == "masochist">>
 			<<if $activeSlave.fetishKnown == 0>>
-				She gasps with profound shock, and you feel her whole body stiffen atop your thighs as she tries to work out what just happened. She begins to cry as she realizes that having her bottom beaten is getting her horny. @@.green;She's a pain fetishist!@@
+				$He gasps with profound shock, and you feel $his whole body stiffen atop your thighs as $he tries to work out what just happened. $He begins to cry as $he realizes that having $his bottom beaten is getting $him horny. @@.green;$He's a pain fetishist!@@
 				<<set $activeSlave.fetishKnown = 1>>
 			<<else>>
-				She groans with unwilling pleasure, feeling the pain radiate out from her buttocks with each swat, feeling it seem to circle around her hips to pool between her legs. She does not orgasm, but feels much more pleasure than she's willing to admit.
+				$He groans with unwilling pleasure, feeling the pain radiate out from $his buttocks with each swat, feeling it seem to circle around $his hips to pool between $his legs. $He does not orgasm, but feels much more pleasure than $he's willing to admit.
 			<</if>>
-			When you let her up, she's sobbing, more from humiliation than pain. However, she @@.hotpink;submits@@ to an uncomfortable groping of her buttocks, which are pleasingly warm from the spanking.
+			When you let $him up, $he's sobbing, more from humiliation than pain. However, $he @@.hotpink;submits@@ to an uncomfortable groping of $his buttocks, which are pleasingly warm from the spanking.
 			<<set $activeSlave.devotion += 4>>
 		<<else>>
-			She gasps with pain, and starts to wriggle off you until you pin her with your other hand. She accepts the rest of the spanking unhappily. You're not particularly harsh, and she gets up after you tire of swatting her bottom, @@.gold;fearful@@ due to the humiliation rather than the pain.
+			$He gasps with pain, and starts to wriggle off you until you pin $him with your other hand. $He accepts the rest of the spanking unhappily. You're not particularly harsh, and $he gets up after you tire of swatting $his bottom, @@.gold;fearful@@ due to the humiliation rather than the pain.
 			<<set $activeSlave.trust -= 4>>
 		<</if>>
 	<</if>>
@@ -1607,9 +1607,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $activeSlave.amp != 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Tie her up and give her a good whipping">>
+	<<link "Tie $him up and give $him a good whipping">>
 		<<replace "#introResult">>
-			You cuff her wrists and tie the cuffs to a hook in the ceiling so she's forced up on tiptoe. Reflecting that sometimes the old ways are best, you take a whip to her. It's soft leather and you have some skill, so her skin isn't broken, but you lash her buttocks and every stroke draws a scream. After a while, the pain grows dull for her and she slumps in her bindings, moaning. You switch to her nipples, bringing her back to howling life as she dances on tiptoe and tries to dodge. <<if $activeSlave.dick != 0>>You finish by taking the whip to her penis, leaving her sobbing and begging. <</if>>If she was wondering what kind of master her new master is, now she @@.gold;knows.@@ She will remember @@.mediumorchid;what you can do to her@@.
+			You cuff $his wrists and tie the cuffs to a hook in the ceiling so $he's forced up on tiptoe. Reflecting that sometimes the old ways are best, you take a whip to $him. It's soft leather and you have some skill, so $his skin isn't broken, but you lash $his buttocks and every stroke draws a scream. After a while, the pain grows dull for $him and $he slumps in $his bindings, moaning. You switch to $his nipples, bringing $him back to howling life as $he dances on tiptoe and tries to dodge. <<if $activeSlave.dick != 0>>You finish by taking the whip to $his penis, leaving $him sobbing and begging. <</if>>If $he was wondering what kind of master $his new master is, now $he @@.gold;knows.@@ $He will remember @@.mediumorchid;what you can do to $him@@.
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
 		<</replace>>
@@ -1620,9 +1620,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<if ($activeSlave.anus != 0)>>
 <<if ($activeSlave.vagina > 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Use a machine on her holes">>
+	<<link "Use a machine on $his holes">>
 		<<replace "#introResult">>
-			She's not a virgin anywhere, so you'll have to go more extreme to provide a properly introductory level of sexual torture equivalent to defloration. You tie your new slave down on hands and knees and bring a fuckmachine up from storage. It fits over her as she whimpers down there on all fours, and you adjust the pistons so that the tip of a dildo rests inside each of her holes. You add lube when necessary, <<if $assistant == 0>>but the rest of the day is monotonous machine rape for her.<<else>>but for her the rest of the day is machine rape controlled by your sultry-voiced personal assistant program. Your assistant is an exquisite sexual torturer, ensuring that the experience is never damaging and always overwhelming. She keeps up a steady stream of degrading verbal abuse while she works.<</if>> Any resistance to you is @@.mediumorchid;worn down@@ and replaced with a germ of @@.gold;fear.@@ @@.lime;The slave's holes are nicely stretched.@@
+			$He's not a virgin anywhere, so you'll have to go more extreme to provide a properly introductory level of sexual torture equivalent to defloration. You tie your new slave down on hands and knees and bring a fuckmachine up from storage. It fits over $him as $he whimpers down there on all fours, and you adjust the pistons so that the tip of a dildo rests inside each of $his holes. You add lube when necessary, <<if $assistant == 0>>but the rest of the day is monotonous machine rape for $him.<<else>>but for $him the rest of the day is machine rape controlled by your sultry-voiced personal assistant program. Your assistant is an exquisite sexual torturer, ensuring that the experience is never damaging and always overwhelming. $He keeps up a steady stream of degrading verbal abuse while $he works.<</if>> Any resistance to you is @@.mediumorchid;worn down@@ and replaced with a germ of @@.gold;fear.@@ @@.lime;The slave's holes are nicely stretched.@@
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
 		<<set $activeSlave.vaginalCount += 1>>
@@ -1635,9 +1635,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<</link>>
 <<elseif ($activeSlave.vagina == -1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Use a machine on her asshole">>
+	<<link "Use a machine on $his asshole">>
 		<<replace "#introResult">>
-			She's not an anal virgin, so you'll have to go more extreme to provide an introductory level of sexual torture equivalent to defloration. You tie your new slave down on hands and knees and bring a fuckmachine up from storage. It fits over her as she whimpers down there on all fours, and you adjust the pistons so that the tip of a dildo rests inside her asshole. You add lube when necessary, <<if $assistant == 0>>but the rest of the day is monotonous machine rape for her.<<else>>but for her the rest of the day is machine rape controlled by your sultry-voiced personal assistant program. Your assistant is an exquisite sexual torturer, ensuring that the experience is never damaging and always overwhelming. She keeps up a steady stream of degrading verbal abuse while she works.<</if>> Any resistance to you is @@.mediumorchid;worn down@@ and replaced with a germ of @@.gold;fear.@@ @@.lime;The slave's asshole is nicely stretched.@@ /*Written and coded by Boney M*/
+			$He's not an anal virgin, so you'll have to go more extreme to provide an introductory level of sexual torture equivalent to defloration. You tie your new slave down on hands and knees and bring a fuckmachine up from storage. It fits over $him as $he whimpers down there on all fours, and you adjust the pistons so that the tip of a dildo rests inside $his asshole. You add lube when necessary, <<if $assistant == 0>>but the rest of the day is monotonous machine rape for $him.<<else>>but for $him the rest of the day is machine rape controlled by your sultry-voiced personal assistant program. Your assistant is an exquisite sexual torturer, ensuring that the experience is never damaging and always overwhelming. $He keeps up a steady stream of degrading verbal abuse while $he works.<</if>> Any resistance to you is @@.mediumorchid;worn down@@ and replaced with a germ of @@.gold;fear.@@ @@.lime;The slave's asshole is nicely stretched.@@ /*Written and coded by Boney M*/
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
 		<<set $activeSlave.analCount += 1>>
@@ -1651,9 +1651,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if canTalk($activeSlave) && ($activeSlave.amp != 1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Make her an office ornament for the day">>
+	<<link "Make $him an office ornament for the day">>
 		<<replace "#introResult">>
-			You cuff her wrists and ankles, bend all four limbs behind her, secure them together, and hoist her up to the ceiling on a rope. She hangs up there like a sex slave chandelier, breasts swaying in a lovely way whenever she struggles. Periodically you let her down to stretch her aching limbs, but whenever you put your decoration back up you add some clips with little bells on them: first the nose, then the nipples, and finally the <<if $activeSlave.dick != 0>>dickhead<<else>>pussylips<</if>>. By the end of the day your work is accompanied by the sweet sounds of ringing bells and @@.gold;agonized pleas@@ for mercy in her <<if $activeSlave.voice == 3>>high, girlish<<elseif $activeSlave.voice == 2>>feminine<<else>>deep<</if>> voice. She will remember @@.mediumorchid;what you can do to her@@.
+			You cuff $his wrists and ankles, bend all four limbs behind $him, secure them together, and hoist $him up to the ceiling on a rope. $He hangs up there like a sex slave chandelier, breasts swaying in a lovely way whenever $he struggles. Periodically you let $him down to stretch $his aching limbs, but whenever you put your decoration back up you add some clips with little bells on them: first the nose, then the nipples, and finally the <<if $activeSlave.dick != 0>>dickhead<<else>>pussylips<</if>>. By the end of the day your work is accompanied by the sweet sounds of ringing bells and @@.gold;agonized pleas@@ for mercy in $his <<if $activeSlave.voice == 3>>high, girlish<<elseif $activeSlave.voice == 2>>feminine<<else>>deep<</if>> voice. $He will remember @@.mediumorchid;what you can do to $him@@.
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1662,9 +1662,9 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 
 <<if $cumSlaves > 3>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
-<<link "Fill her with cum">>
+<<link "Fill $him with cum">>
 	<<replace "#introResult">>
-		You securely restrain your new slave<<if $dairyRestraintsSetting > 1>> in a milking stall<</if>>. A quick finger check of her holes allows you to choose wisely from a selection of hollow phalluses, which push into your helpless new slave's
+		You securely restrain your new slave<<if $dairyRestraintsSetting > 1>> in a milking stall<</if>>. A quick finger check of $his holes allows you to choose wisely from a selection of hollow phalluses, which push into your helpless new slave's
 		mouth,
 		<<set $activeSlave.oralCount += 1>>
 		<<set $oralTotal += 1>>
@@ -1674,7 +1674,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 			<<set $vaginalTotal += 1>>
 		<</if>>
 		<<if $activeSlave.anus > 0>>
-			and squeeze into her ass,
+			and squeeze into $his ass,
 			<<set $activeSlave.analCount += 1>>
 			<<set $analTotal += 1>>
 		<</if>>
@@ -1683,53 +1683,53 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 		<<if $activeSlave.devotion > 20>>
 			<<if $activeSlave.fetish == "cumslut">>
 				<<if $activeSlave.fetishKnown == 0>>
-					She seems genuinely eager to hold as much of the fluid as she can. @@.green;She's a cum fetishist!@@
+					$He seems genuinely eager to hold as much of the fluid as $he can. @@.green;$He's a cum fetishist!@@
 					<<set $activeSlave.fetishKnown = 1>>
 				<<else>>
-					She groans with guilty pleasure, feeling her muscles ache and her torso swell. Before long, she reaches a quivering orgasm.
+					$He groans with guilty pleasure, feeling $his muscles ache and $his torso swell. Before long, $he reaches a quivering orgasm.
 				<</if>>
-				As you release her she swings up with difficulty, but @@.hotpink;she seems very pleased@@ to stay plugged for now.
+				As you release $him $he swings up with difficulty, but @@.hotpink;$he seems very pleased@@ to stay plugged for now.
 				<<set $activeSlave.devotion += 5>>
 			<<else>>
-				Her eyes swell with shock, but she does not flinch or make a sound. When she seems full enough, you shut off the valve, deciding to leave her plugged for now. She waddles off @@.hotpink;without apparent resentment@@ of this treatment.
+				$His eyes swell with shock, but $he does not flinch or make a sound. When $he seems full enough, you shut off the valve, deciding to leave $him plugged for now. $He waddles off @@.hotpink;without apparent resentment@@ of this treatment.
 				<<set $activeSlave.devotion += 4>>
 			<</if>>
 		<<else>>
 			<<if $activeSlave.fetish == "cumslut">>
 				<<if $activeSlave.fetishKnown == 0>>
-					Her eyes swell with profound horror at the realization of what is happening, and begin to leak tears as she realizes that having her body swell with semen is getting her horny. @@.green;She's a cum fetishist!@@
+					$His eyes swell with profound horror at the realization of what is happening, and begin to leak tears as $he realizes that having $his body swell with semen is getting $him horny. @@.green;$He's a cum fetishist!@@
 					<<set $activeSlave.fetishKnown = 1>>
 				<<else>>
-					She groans with guilty pleasure, feeling her muscles ache and her torso swell. She does not orgasm from her "meal," but feels much more pleasure than she's willing to admit.
+					$He groans with guilty pleasure, feeling $his muscles ache and $his torso swell. $He does not orgasm from $his "meal," but feels much more pleasure than $he's willing to admit.
 				<</if>>
-				When you let her up, she's sobbing, more from humiliation than discomfort. However, she @@.hotpink;submits@@ to an uncomfortable groping of her stomach, which is pleasingly taut from the inflation. You decide to leave her plugged for a few hours, impressing on her still more that her fate is out of her control.
+				When you let $him up, $he's sobbing, more from humiliation than discomfort. However, $he @@.hotpink;submits@@ to an uncomfortable groping of $his stomach, which is pleasingly taut from the inflation. You decide to leave $him plugged for a few hours, impressing on $him still more that $his fate is out of $his control.
 				<<set $activeSlave.devotion += 4>>
 			<<else>>
-				She gasps in horror, and starts to struggle frantically against her bonds. However, as the fluid reaches her she seems to resign herself to her fate. Once she reaches a fullness you like you let her up, @@.gold;fearful@@ due to the humiliation rather than the swelling. She limps off to her new duties as quickly as she can, before you can unplug her. Oh well!
+				$He gasps in horror, and starts to struggle frantically against $his bonds. However, as the fluid reaches $him $he seems to resign $himself to $his fate. Once $he reaches a fullness you like you let $him up, @@.gold;fearful@@ due to the humiliation rather than the swelling. $He limps off to $his new duties as quickly as $he can, before you can unplug $him. Oh well!
 				<<set $activeSlave.trust -= 4>>
 			<</if>>
 		<</if>>
-		Her first day promises to be a full one!
+		$His first day promises to be a full one!
 	<</replace>>
 <</link>>
 <</if>>
 
 <<if ($activeSlave.amp != 1)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Put a shock collar on her and force her to rape herself">>
+	<<link "Put a shock collar on $him and force $him to rape $himself">>
 		<<set $activeSlave.collar = "shock punishment">>
 		<<replace "#introResult">>
-			You put a shock collar on her. Its function isn't immediately obvious, at least until you test it on the lowest power setting, making her jump and look at you fearfully. This concern is compounded when you throw a big dildo at her and tell her to rape herself. She gapes at you incredulously until you give her a stronger jolt and peremptorily tell her to
+			You put a shock collar on $him. Its function isn't immediately obvious, at least until you test it on the lowest power setting, making $him jump and look at you fearfully. This concern is compounded when you throw a big dildo at $him and tell $him to rape $himself. $He gapes at you incredulously until you give $him a stronger jolt and peremptorily tell $him to
 			<<if $activeSlave.vagina > 0>>
-				pick it up and pound her own pussy. @@.mediumorchid;Reluctantly,@@ she reaches down shakily, seats herself, and slowly pushes the uncomfortably big phallus inside her womanhood. She starts to fuck herself. Harder, you command. Wincing, she works her cunt faster. Harder, you repeat, giving her another shock. @@.gold;She begins to cry,@@ but obeys, sawing the big fake cock in and out, really raping herself.
+				pick it up and pound $his own pussy. @@.mediumorchid;Reluctantly,@@ $he reaches down shakily, seats $himself, and slowly pushes the uncomfortably big phallus inside $his womanhood. $He starts to fuck $himself. Harder, you command. Wincing, $he works $his cunt faster. Harder, you repeat, giving $him another shock. @@.gold;$He begins to cry,@@ but obeys, sawing the big fake cock in and out, really raping $himself.
 				<<set $activeSlave.vaginalCount += 1>>
 				<<set $vaginalTotal += 1>>
 			<<elseif $activeSlave.anus > 0>>
-				pick it up and pound her own ass. @@.mediumorchid;Reluctantly,@@ she reaches down shakily, seats herself, and gradually shoves the already-lubricated phallus into her ass. It's uncomfortably big for her butt, but she can manage it, and slowly starts to sodomize herself. Harder, you command. Wincing, she fucks her ass faster. Harder, you repeat, giving her another shock. @@.gold;She begins to cry,@@ but obeys, sawing the big fake cock in and out, really assraping herself.
+				pick it up and pound $his own ass. @@.mediumorchid;Reluctantly,@@ $he reaches down shakily, seats $himself, and gradually shoves the already-lubricated phallus into $his ass. It's uncomfortably big for $his butt, but $he can manage it, and slowly starts to sodomize $himself. Harder, you command. Wincing, $he fucks $his ass faster. Harder, you repeat, giving $him another shock. @@.gold;$He begins to cry,@@ but obeys, sawing the big fake cock in and out, really assraping $himself.
 				<<set $activeSlave.analCount += 1>>
 				<<set $analTotal += 1>>
 			<<else>>
-				pick it up and facefuck herself. @@.mediumorchid;Reluctantly,@@ she reaches down shakily, seats herself, and slowly swallows the uncomfortably big phallus. She has to start over several times as her gag reflex kicks in, but she finally manages to hilt it. Harder, you command. Eyes rolling fearfully, she withdraws it a few inches and shoves it down her throat again. Harder, you repeat, giving her another shock. @@.gold;She begins to weep and gag,@@ but obeys, sawing the big fake cock in and out, really molesting herself.
+				pick it up and facefuck $himself. @@.mediumorchid;Reluctantly,@@ $he reaches down shakily, seats $himself, and slowly swallows the uncomfortably big phallus. $He has to start over several times as $his gag reflex kicks in, but $he finally manages to hilt it. Harder, you command. Eyes rolling fearfully, $he withdraws it a few inches and shoves it down $his throat again. Harder, you repeat, giving $him another shock. @@.gold;$He begins to weep and gag,@@ but obeys, sawing the big fake cock in and out, really molesting $himself.
 				<<set $activeSlave.oralCount += 1>>
 				<<set $oralTotal += 1>>
 			<</if>>
@@ -1743,28 +1743,28 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<if ($dairy > 0) && ($dairyRestraintsSetting > 1) && ($seeExtreme == 1)>>
 	<br>//...in the Industrial Dairy//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Threaten her with the Industrial Dairy">>
+	<<link "Threaten $him with the Industrial Dairy">>
 		<<replace "#introResult">>
-			You tell her that it's in her interests to be a good girl. She does not react immediately, perhaps wondering if you think such a trite statement will have a real impact, but then you point at a wallscreen behind her. She turns, and beholds a live feed from the Industrial Dairy. She gazes spellbound at the interleaved row of bodies intertwined with machines in embraces far more intimate than any lover could hope to match. The gently heaving masses of breastflesh hold her fascinated and horrified attention until one of the machines fortuitously chooses this moment to cycle its occupant's anal hydration regimen. It withdraws its horse-sized phallus from the slave's anus, leaving her gape pulsing gently as it awaits the resumption of the endless assrape. $activeSlave.slaveName lets out a huge sob and turns to you, @@.gold;fear suffusing her@@ as she promises to @@.hotpink;be a good girl.@@
+			You tell $him that it's in $his interests to be a good girl. $He does not react immediately, perhaps wondering if you think such a trite statement will have a real impact, but then you point at a wallscreen behind $him. $He turns, and beholds a live feed from the Industrial Dairy. $He gazes spellbound at the interleaved row of bodies intertwined with machines in embraces far more intimate than any lover could hope to match. The gently heaving masses of breastflesh hold $his fascinated and horrified attention until one of the machines fortuitously chooses this moment to cycle its occupant's anal hydration regimen. It withdraws its horse-sized phallus from the slave's anus, leaving $his gape pulsing gently as it awaits the resumption of the endless assrape. $activeSlave.slaveName lets out a huge sob and turns to you, @@.gold;fear suffusing $him@@ as $he promises to @@.hotpink;be a good girl.@@
 		<</replace>>
 		<<set $activeSlave.devotion += 10>>
 		<<set $activeSlave.trust -= 10>>
 	<</link>>
 	<<if ($activeSlave.lactation > 0 || (($dairySlimMaintainUpgrade == 0 || $dairySlimMaintain == 0) && ($activeSlave.boobs > 300 || $activeSlave.dick == 0 || $dairyImplantsSetting == 1) && $dairyImplantsSetting != 2)) || ($activeSlave.balls > 0)>>
 		<<if ($dairyPrepUpgrade == 1) && ($dairy > $dairySlaves+$bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren)>>
-			 | <<link "Send her straight to the Industrial Dairy">>
+			 | <<link "Send $him straight to the Industrial Dairy">>
 				<<set $activeSlave.choosesOwnAssignment = 0>>
 				<<set $activeSlave.anus = Math.clamp($activeSlave.anus, 3, 4)>>
 				<<if $activeSlave.vagina > -1>><<set $activeSlave.vagina = Math.clamp($activeSlave.vagina, 3, 4)>><</if>>
 				<<set $activeSlave.analCount += 10, $analTotal += 10>>
 				<<= assignJob($activeSlave, "dairy")>>
 				<<replace "#introResult">>
-					You order <<if $HeadGirl == 0>>another slave<<else>>$HeadGirl.slaveName<</if>> to get $activeSlave.slaveName set up in $dairyName. The new slave does not know what $dairyName is, not really, and she doesn't know what being set up there means, either. If she knew that you are able to send her there so blithely only because it is equipped with a special preparatory raper that will seize her, <<if $activeSlave.vagina > -1>>mercilessly fuck her pussy and ass until both are gaped<<else>>ream her anus until it's cavernously gaped<</if>>, and then consign her to constant fucking by gargantuan machine phalli, she might resist. But she doesn't, so she does not.
+					You order <<if $HeadGirl == 0>>another slave<<else>>$HeadGirl.slaveName<</if>> to get $activeSlave.slaveName set up in $dairyName. The new slave does not know what $dairyName is, not really, and $he doesn't know what being set up there means, either. If $he knew that you are able to send $him there so blithely only because it is equipped with a special preparatory raper that will seize $him, <<if $activeSlave.vagina > -1>>mercilessly fuck $his pussy and ass until both are gaped<<else>>ream $his anus until it's cavernously gaped<</if>>, and then consign $him to constant fucking by gargantuan machine phalli, $he might resist. But $he doesn't, so $he does not.
 				<</replace>>
 			<</link>>
 		<</if>>
 		<<if $dairy > $dairySlaves+$bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren>>
-			 | <<link "Break her in for the Industrial Dairy">>
+			 | <<link "Break $him in for the Industrial Dairy">>
 				<<set $activeSlave.choosesOwnAssignment = 0>>
 				<<set $activeSlave.anus = Math.clamp($activeSlave.anus, 3, 4)>>
 				<<if $activeSlave.vagina > -1>>
@@ -1775,7 +1775,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 				<<set $activeSlave.analCount += 10, $analTotal += 10>>
 				<<= assignJob($activeSlave, "dairy")>>
 				<<replace "#introResult">>
-					Making use of <<if ($activeSlave.trust < -20) || ($activeSlave.devotion > 20)>>her obedience<<else>>the compliance systems<</if>>, you restrain her on one of the chairs in your office in an approximation of the position she'll occupy in $dairyName. Then you put a mask on her, like the ones the machines there feature, and turn it on, watching the slave squirm against her restraints under the sudden bombardment of garish hardcore porn. Finally, you add a dildo gag, both to mimic the dildo that will feed her, and to keep your office reasonably quiet. Then, for the rest of the day, you use her vulnerable <<if $activeSlave.vagina > -1>>holes<<else>>asshole<</if>> as an outlet for your sexual energy. You are not gentle; in fact, the point of the whole exercise is to gape her. By the evening she's been fucked so hard that she's stopped jerking against the chair when you pound <<if $PC.dick == 1>>your huge cock<<else>>a huge strap-on<</if>> in and out of her, so you're obliged to get creative, sliding fingers in alongside <<if $PC.dick == 1>>yourself<<else>>it<</if>> to really blow her out. Once that gets too easy, you start adding dildos for double penetration. By the night she's properly prepared to take $dairyName's giant phalli, and you're bored, so you consign her to her fate. She might have some opinion on how she's spent her day, but it's unlikely she'll remember it by tomorrow, what with the forearm-sized dildos sliding in and out of her<<if $activeSlave.vagina > -1>> cunt,<</if>> throat, and asshole.
+					Making use of <<if ($activeSlave.trust < -20) || ($activeSlave.devotion > 20)>>$his obedience<<else>>the compliance systems<</if>>, you restrain $him on one of the chairs in your office in an approximation of the position $he'll occupy in $dairyName. Then you put a mask on $him, like the ones the machines there feature, and turn it on, watching the slave squirm against $his restraints under the sudden bombardment of garish hardcore porn. Finally, you add a dildo gag, both to mimic the dildo that will feed $him, and to keep your office reasonably quiet. Then, for the rest of the day, you use $his vulnerable <<if $activeSlave.vagina > -1>>holes<<else>>asshole<</if>> as an outlet for your sexual energy. You are not gentle; in fact, the point of the whole exercise is to gape $him. By the evening $he's been fucked so hard that $he's stopped jerking against the chair when you pound <<if $PC.dick == 1>>your huge cock<<else>>a huge strap-on<</if>> in and out of $him, so you're obliged to get creative, sliding fingers in alongside <<if $PC.dick == 1>>yourself<<else>>it<</if>> to really blow $him out. Once that gets too easy, you start adding dildos for double penetration. By the night $he's properly prepared to take $dairyName's giant phalli, and you're bored, so you consign $him to $his fate. $He might have some opinion on how $he's spent $his day, but it's unlikely $he'll remember it by tomorrow, what with the forearm-sized dildos sliding in and out of $his<<if $activeSlave.vagina > -1>> cunt,<</if>> throat, and asshole.
 				<</replace>>
 			<</link>>
 		<</if>>
@@ -1785,37 +1785,37 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<if $dairyPiping == 1>>
 	<<if (($cumPipeline > 88 && $cumPipeline != 0) || $arcologies[0].FSPastoralistLaw == 1) && $activeSlave.preg < 1 && $activeSlave.inflation == 0 && $activeSlave.bellyImplant <= 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	<<link "Give her all the cum she can drink">>
+	<<link "Give $him all the cum $he can drink">>
 		<<replace "#introResult">>
-			You securely restrain your new slave; for both her own safety and so she can't object to her meal. You reassure her and order her to close her eyes and open wide for a treat.<<if $activeSlave.eyes == -2>> Blind as she is,<<else>> Since her eyes are contentedly closed,<</if>> she doesn't see you reach for one of the phallus-tipped feeding tubes located throughout your penthouse. Before she knows what's happening, you've forced the cocktube firmly into her gaping maw and anchored it to her head, causing her entire body to tense up <<if $activeSlave.devotion < 20>>in panic <</if>>once more.
+			You securely restrain your new slave; for both $his own safety and so $he can't object to $his meal. You reassure $him and order $him to close $his eyes and open wide for a treat.<<if $activeSlave.eyes == -2>> Blind as $he is,<<else>> Since $his eyes are contentedly closed,<</if>> $he doesn't see you reach for one of the phallus-tipped feeding tubes located throughout your penthouse. Before $he knows what's happening, you've forced the cocktube firmly into $his gaping maw and anchored it to $his head, causing $his entire body to tense up <<if $activeSlave.devotion < 20>>in panic <</if>>once more.
 			<br><br>
-			You pause to examine the tap, making sure it is set to cum, before releasing the valve and unleashing a steady flow. The feeder bucks against her face as thick, white liquid rushes downward towards the helpless slave.
+			You pause to examine the tap, making sure it is set to cum, before releasing the valve and unleashing a steady flow. The feeder bucks against $his face as thick, white liquid rushes downward towards the helpless slave.
 			<<if $activeSlave.devotion > 20>>
 				<<if $activeSlave.fetish == "cumslut">>
 					<<if $activeSlave.fetishKnown == 0>>
-						Stunningly, once she gets over the impact of the wave of fresh semen, she seems genuinely eager to hold as much of the fluid as she can, stretching contentedly till her reasonable limit. @@.green;She's a cum fetishist!@@
+						Stunningly, once $he gets over the impact of the wave of fresh semen, $he seems genuinely eager to hold as much of the fluid as $he can, stretching contentedly till $his reasonable limit. @@.green;$He's a cum fetishist!@@
 						<<set $activeSlave.fetishKnown = 1>>
 					<<else>>
-						Her belly steadily swells from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces her belly button into an outie. Your cow groans not only with the weight and mounting pressure, but with guilt as well. Before long, she reaches a quivering orgasm.
+						$His belly steadily swells from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Your cow groans not only with the weight and mounting pressure, but with guilt as well. Before long, $he reaches a quivering orgasm.
 					<</if>>
-					You stroke her gurgling stomach slowly, before turning off the valve, unfastening her binds and leaving your @@.hotpink;very pleased@@ cum balloon to savor her meal. You'll make sure to set aside enough cum from your cumslaves for her to drink herself stupid with, and, glancing over your shoulder, find her eagerly masturbating to her cum filled gut. She'll probably intend to keep herself filled to the brim, which is fine by you.
+					You stroke $his gurgling stomach slowly, before turning off the valve, unfastening $his binds and leaving your @@.hotpink;very pleased@@ cum balloon to savor $his meal. You'll make sure to set aside enough cum from your cumslaves for $him to drink $himself stupid with, and, glancing over your shoulder, find $him eagerly masturbating to $his cum filled gut. $He'll probably intend to keep $himself filled to the brim, which is fine by you.
 					<<set $activeSlave.devotion += 5>>
 				<<else>>
-					<<if $activeSlave.eyes == -2>>Her face swells with emotion and<<else>>Her eyes swell<</if>> with horror, but she does not flinch or make a sound. Her belly also swells, from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces her belly button into an outie. Satisfied, you shut off the valve, deciding to leave her to consider her cum filled middle. Time passes. Her<<if $activeSlave.eyes == -2>> blind face is distant<<else>> eyes are glazed over<</if>> but she tolerates you slowly stroking her stomach @@.hotpink;without apparent resentment@@. You'll make sure to keep her like this for the time being.
+					<<if $activeSlave.eyes == -2>>$His face swells with emotion and<<else>>$His eyes swell<</if>> with horror, but $he does not flinch or make a sound. $His belly also swells, from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Satisfied, you shut off the valve, deciding to leave $him to consider $his cum filled middle. Time passes. $His<<if $activeSlave.eyes == -2>> blind face is distant<<else>> eyes are glazed over<</if>> but $he tolerates you slowly stroking $his stomach @@.hotpink;without apparent resentment@@. You'll make sure to keep $him like this for the time being.
 					<<set $activeSlave.devotion += 4>>
 				<</if>>
 			<<else>>
 				<<if $activeSlave.fetish == "cumslut">>
 					<<if $activeSlave.fetishKnown == 0>>
-						<<if $activeSlave.eyes == -2>>Her face tenses<<else>>Her eyes swell<</if>> with profound horror at the realization of what is filling her with a constant irresistible pressure, and she begins to leak tears as she realizes that her rapidly swelling body is getting her horny. @@.green;She's a cum fetishist!@@
+						<<if $activeSlave.eyes == -2>>$His face tenses<<else>>$His eyes swell<</if>> with profound horror at the realization of what is filling $him with a constant irresistible pressure, and $he begins to leak tears as $he realizes that $his rapidly swelling body is getting $him horny. @@.green;$He's a cum fetishist!@@
 						<<set $activeSlave.fetishKnown = 1>>
 					<<else>>
-						Her belly steadily swells from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces her belly button into an outie. Your cow groans not only with the weight and quickly mounting pressure, but with guilt as well. She does not orgasm from her gluttonous "meal," but feels much more pleasure than she's willing to admit.
+						$His belly steadily swells from a few months of apparent pregnancy, to "spent too much time at the buffet", till it finally stops wobbling, grows taut and forces $his belly button into an outie. Your cow groans not only with the weight and quickly mounting pressure, but with guilt as well. $He does not orgasm from $his gluttonous "meal," but feels much more pleasure than $he's willing to admit.
 					<</if>>
-					Time passes, marked only by the slowing growth of her waistline and the gurgling deep within her. However, she @@.hotpink;submits@@ to an uncomfortable groping of her fluid distended stomach, which is pleasingly taut from her massive cum meal. You decide to make it abundantly clear that if a single drop of cum leaves her gullet, she's getting the hose again, impressing on her still more that her fate is out of her control.
+					Time passes, marked only by the slowing growth of $his waistline and the gurgling deep within $him. However, $he @@.hotpink;submits@@ to an uncomfortable groping of $his fluid distended stomach, which is pleasingly taut from $his massive cum meal. You decide to make it abundantly clear that if a single drop of cum leaves $his gullet, $he's getting the hose again, impressing on $him still more that $his fate is out of $his control.
 					<<set $activeSlave.devotion += 4>>
 				<<else>>
-					She gasps in horror, and starts to struggle frantically against her bonds, <<if $activeSlave.voice != 0>>struggling to scream in panic.<<else>>her whole body begging to scream.<</if>> However, as the fluid reaches her she seems to despair and resigns herself to her fate. As her belly swells, you find yourself comparing her first to a binge eater, then some of the chubbier citizens you've seen, a large pregnancy, and finally a water balloon ready to burst. You stop the flow, and rest a hand on her heaving stomach. Her @@.gold;terrified@@ breathing and distant expression are clearly due to the pain, not lust, but it's also now quite clear to her who is in charge here. You have little intent on letting her stomach empty and will be setting aside enough cum to keep her bloated into submission.
+					$He gasps in horror, and starts to struggle frantically against $his bonds, <<if $activeSlave.voice != 0>>struggling to scream in panic.<<else>>$his whole body begging to scream.<</if>> However, as the fluid reaches $him $he seems to despair and resigns $himself to $his fate. As $his belly swells, you find yourself comparing $him first to a binge eater, then some of the chubbier citizens you've seen, a large pregnancy, and finally a water balloon ready to burst. You stop the flow, and rest a hand on $his heaving stomach. $His @@.gold;terrified@@ breathing and distant expression are clearly due to the pain, not lust, but it's also now quite clear to $him who is in charge here. You have little intent on letting $his stomach empty and will be setting aside enough cum to keep $him bloated into submission.
 					<<set $activeSlave.trust -= 4>>
 				<</if>>
 			<</if>>
@@ -1830,22 +1830,22 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<br>//...in the Arcade//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 
-	<<link "Threaten her with the Arcade">>
+	<<link "Threaten $him with the Arcade">>
 		<<replace "#introResult">>
-			You tell her that it's in her interests to be a good girl. She does not react immediately, perhaps wondering if you think such a trite statement will have a real impact, but then you point at a wallscreen behind her. She turns, and beholds a live feed from $arcadeName. She gazes at the row of butts sticking out of the wall at dick height, not quite realizing what she's seeing. Then she notices that there are citizens pumping away in front of two of the butts, and she understands. As she watches, terrified, first one citizen and then the other finishes and steps away. The first arcade inmate's <<if $seeDicks != 100>>pussy<<else>>butt<</if>> is left looking sore until $arcadeName's systems cover her for a quick cleaning, and the second inmate's asshole <<if $seeDicks != 0>>has obviously seen severe use, since the poor girl doesn't have  a pussy to spread the load<<else>>is loose enough that the machines have to clean up the cum it drools onto the floor<</if>>. $activeSlave.slaveName lets out a huge sob and turns to you, @@.gold;fear suffusing her@@ as she promises to @@.hotpink;be a good girl.@@
+			You tell $him that it's in $his interests to be a good girl. $He does not react immediately, perhaps wondering if you think such a trite statement will have a real impact, but then you point at a wallscreen behind $him. $He turns, and beholds a live feed from $arcadeName. $He gazes at the row of butts sticking out of the wall at dick height, not quite realizing what $he's seeing. Then $he notices that there are citizens pumping away in front of two of the butts, and $he understands. As $he watches, terrified, first one citizen and then the other finishes and steps away. The first arcade inmate's <<if $seeDicks != 100>>pussy<<else>>butt<</if>> is left looking sore until $arcadeName's systems cover $him for a quick cleaning, and the second inmate's asshole <<if $seeDicks != 0>>has obviously seen severe use, since the poor girl doesn't have a pussy to spread the load<<else>>is loose enough that the machines have to clean up the cum it drools onto the floor<</if>>. $activeSlave.slaveName lets out a huge sob and turns to you, @@.gold;fear suffusing $him@@ as $he promises to @@.hotpink;be a good girl.@@
 		<</replace>>
 		<<set $activeSlave.devotion += 10>>
 		<<set $activeSlave.trust -= 10>>
 	<</link>>
 
 	<<if ($arcade > $arcadeSlaves) || ($arcadeUpgradeFuckdolls != 0)>>
-		 | <<link "Send her straight to the Arcade">>
+		 | <<link "Send $him straight to the Arcade">>
 			<<set $activeSlave.assignment = "be confined in the arcade">>
 			<<set $activeSlave.assignmentVisible = 0>>
 			<<set $activeSlave.choosesOwnAssignment = 0>>
 			<<replace "#introResult">>
-				You order <<if $HeadGirl == 0>>another slave<<else>>$HeadGirl.slaveName<</if>> to get $activeSlave.slaveName set up in $arcadeName. The new slave does not know what $arcadeName is, not really, and she doesn't know what being set up there means, either. She'll be confined inside a small space, not too different from the indignities she's suffered already. It's only when the restraints lock into place that she'll understand her doom. Her mouth will be forced open and presented at one wall of $arcadeName, and her ass will protrude from its other side, her holes available for public relief at both ends. She'll probably refuse to believe the truth, until the first cockhead enters her mouth<<if $activeSlave.vagina > -1>>, parts her pussylips,<</if>> or presses against her poor anus.
-				<<if ($arcade <= $arcadeSlaves)>>Mere meters away, preparations to convert the least appealing Arcade slave into a Fuckdoll begin. As $activeSlave.slaveName is broken in by her first customers, she's blissfully unaware that she's $arcade new slaves away from the same fate.<</if>>
+				You order <<if $HeadGirl == 0>>another slave<<else>>$HeadGirl.slaveName<</if>> to get $activeSlave.slaveName set up in $arcadeName. The new slave does not know what $arcadeName is, not really, and $he doesn't know what being set up there means, either. $He'll be confined inside a small space, not too different from the indignities $he's suffered already. It's only when the restraints lock into place that $he'll understand $his doom. $His mouth will be forced open and presented at one wall of $arcadeName, and $his ass will protrude from its other side, $his holes available for public relief at both ends. $He'll probably refuse to believe the truth, until the first cockhead enters $his mouth<<if $activeSlave.vagina > -1>>, parts $his pussylips,<</if>> or presses against $his poor anus.
+				<<if ($arcade <= $arcadeSlaves)>>Mere meters away, preparations to convert the least appealing Arcade slave into a Fuckdoll begin. As $activeSlave.slaveName is broken in by $his first customers, $he's blissfully unaware that $he's $arcade new slaves away from the same fate.<</if>>
 			<</replace>>
 		<</link>>
 	<</if>>
diff --git a/src/uncategorized/saDevotion.tw b/src/uncategorized/saDevotion.tw
index e7a184688a8..1ab9c7f97a1 100644
--- a/src/uncategorized/saDevotion.tw
+++ b/src/uncategorized/saDevotion.tw
@@ -3,7 +3,7 @@
 &nbsp;&nbsp;&nbsp;&nbsp;
 
 <<if $slaves[$i].fetish == "mindbroken">>
-	@@.red;Her mind is fundamentally broken, so her experiences have no lasting effect on her emotional state.@@
+	@@.red;$His mind is fundamentally broken, so $his experiences have no lasting effect on $his emotional state.@@
 <<else>>
 <<if $slaves[$i].fuckdoll == 0>>
 
@@ -11,30 +11,30 @@
 
 <<if $slaves[$i].origin == "You were acquainted with her before you were an arcology owner; your rival tried to use her to manipulate you, but you rescued her.">>
 	<<if ($rivalryDuration <= 10 || $rivalryFS == "Racial Supremacism" || $rivalryFS == "Paternalism")>>
-		You @@.mediumaquamarine;saved $slaves[$i].slaveName from a living nightmare@@ under your rival's rule. She @@.hotpink;tries her best to adapt to her savior's wishes.@@
+		You @@.mediumaquamarine;saved $slaves[$i].slaveName from a living nightmare@@ under your rival's rule. $He @@.hotpink;tries $his best to adapt to $his savior's wishes.@@
 		<<set $slaves[$i].devotion += 10>>
 		<<set $slaves[$i].trust += 10>>
 	<<elseif $hostageGiveIn == 1>>
-		Since you are @@.mediumaquamarine;indulging@@ $slaves[$i].slaveName's desires, she @@.hotpink;likes you more.@@
+		Since you are @@.mediumaquamarine;indulging@@ $slaves[$i].slaveName's desires, $he @@.hotpink;likes you more.@@
 		<<set $slaves[$i].devotion += 5>>
 		<<set $slaves[$i].trust += 5>>
 	<<elseif $rivalryDuration > 20 && $slaves[$i].devotion < 5>>
 		<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-			You took everything from $slaves[$i].slaveName and @@.mediumorchid;she hates you for it.@@ Since you won't give her what she wants, she @@.gold;refuses to trust you.@@ Since you are putting such a personal touch into her care, she can't find it in her to rebel as strongly.
+			You took everything from $slaves[$i].slaveName and @@.mediumorchid;$he hates you for it.@@ Since you won't give her what $he wants, $he @@.gold;refuses to trust you.@@ Since you are putting such a personal touch into her care, $he can't find it in her to rebel as strongly.
 			<<set $slaves[$i].devotion -= 5>>
 			<<set $slaves[$i].trust -= 5>>
 		<<else>>
-			You took everything from $slaves[$i].slaveName and @@.mediumorchid;she hates you for it.@@ Since you won't give her what she wants, she @@.gold;refuses to trust you at all.@@
+			You took everything from $slaves[$i].slaveName and @@.mediumorchid;$he hates you for it.@@ Since you won't give $him what $he wants, $he @@.gold;refuses to trust you at all.@@
 			<<set $slaves[$i].devotion -= 25>>
 			<<set $slaves[$i].trust -= 25>>
 		<</if>>
 	<<elseif $rivalryDuration > 10 && $slaves[$i].devotion < 5>>
 		<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-			She is @@.gold;horrified by you.@@ Your rival taught her a great deal about slave life in your arcology and indulged her deepest fantasies. $slaves[$i].slaveName considers being your pet @@.mediumorchid;a fate worse than death.@@ Since you are putting such a personal touch into her care, maybe you aren't the monster she thought you were. She can't find it in her to hate and fear you as much.
+			$He is @@.gold;horrified by you.@@ Your rival taught her a great deal about slave life in your arcology and indulged her deepest fantasies. $slaves[$i].slaveName considers being your pet @@.mediumorchid;a fate worse than death.@@ Since you are putting such a personal touch into her care, maybe you aren't the monster $he thought you were. $He can't find it in her to hate and fear you as much.
 			<<set $slaves[$i].devotion -= 3>>
 			<<set $slaves[$i].trust -= 3>>
 		<<else>>
-			She is @@.gold;horrified by you.@@ Your rival taught her a great deal about slave life in your arcology and indulged her deepest fantasies. $slaves[$i].slaveName considers being your pet @@.mediumorchid;a fate worse than death.@@
+			$He is @@.gold;horrified by you.@@ Your rival taught $him a great deal about slave life in your arcology and indulged $his deepest fantasies. $slaves[$i].slaveName considers being your pet @@.mediumorchid;a fate worse than death.@@
 			<<set $slaves[$i].devotion -= 15>>
 			<<set $slaves[$i].trust -= 15>>
 		<</if>>
@@ -44,25 +44,25 @@
 <<if $PC.preg >= 20 || ($PC.preg >= 16 && $PC.career == "escort")>>
 	<<if $slaves[$i].devotion > 60>>
 		<<if $PC.pregMood == 2>>
-			She is devoted to you and does her best to satisfy your demanding, hormone driven libido, no matter what you want from her. Her efforts to give herself you to @@.hotpink;further her submission@@ to you.
+			$He is devoted to you and does her best to satisfy your demanding, hormone driven libido, no matter what you want from $him. $His efforts to give herself you to @@.hotpink;further her submission@@ to you.
 			<<set $slaves[$i].devotion += 2>>
 		<<elseif $PC.pregMood == 1>>
-			She is devoted to you and tries her best to accommodate your needs and desires. Your hormonal mothering @@.mediumaquamarine;leaves her slightly more trusting@@ of you.
+			$He is devoted to you and tries her best to accommodate your needs and desires. Your hormonal mothering @@.mediumaquamarine;leaves her slightly more trusting@@ of you.
 			<<set $slaves[$i].trust += 2>>
 		<<else>>
-			She is devoted to you and tries her best to accommodate your needs and desires.
+			$He is devoted to you and tries her best to accommodate your needs and desires.
 		<</if>>
 	<<else>>
 		<<if $PC.pregMood == 2>>
-			She is @@.gold;horrified@@ of your aggressive sexual advances, forcing her @@.hotpink;bend to your will@@ or face punishment at the hands of a hormonal pregnant woman.
+			$He is @@.gold;horrified@@ of your aggressive sexual advances, forcing her @@.hotpink;bend to your will@@ or face punishment at the hands of a hormonal pregnant woman.
 			<<set $slaves[$i].devotion += 4>>
 			<<set $slaves[$i].trust -= 4>>
 		<<elseif $PC.pregMood == 1>>
-			She happily @@.mediumorchid;takes advantage@@ of your hormone induced kindness, though your care @@.mediumaquamarine;builds her trust in you.@@
+			$He happily @@.mediumorchid;takes advantage@@ of your hormone induced kindness, though your care @@.mediumaquamarine;builds her trust in you.@@
 			<<set $slaves[$i].devotion -= 4>>
 			<<set $slaves[$i].trust += 4>>
 		<<else>>
-			She takes note of your gravid form and @@.mediumorchid;begins testing just how much she can get away with@@ while she can.
+			$He takes note of your gravid form and @@.mediumorchid;begins testing just how much $he can get away with@@ while $he can.
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
@@ -77,10 +77,10 @@
 
 <<if $slaves[$i].PCKnockedUp > 0 && $slaves[$i].fetish != "mindbroken" && $slaves[$i].fuckdoll == 0 && $slaves[$i].devotion < -20>>
 	<<set _pregCountFactor = $slaves[$i].PCKnockedUp*5>>
-	She got you pregnant<<if $slaves[$i].PCKnockedUp > 1>> more than once<</if>> and she knows it. This is a @@.mediumorchid;huge boost@@ to her ego and gives her a slight edge on you.
+	$He got you pregnant<<if $slaves[$i].PCKnockedUp > 1>> more than once<</if>> and $he knows it. This is a @@.mediumorchid;huge boost@@ to her ego and gives her a slight edge on you.
 	<<set $slaves[$i].devotion -= _pregCountFactor>>
 	<<if $slaves[$i].PCChildrenFathered > 0>>
-		Even better; you gave birth to her child<<if $slaves[$i].PCChildrenFathered > 1>>ren<</if>>. To her, she is the dominant force and you are just a bitch to be bred. She could create a scandal if she started running her mouth, something she lords over you every chance she gets under the assumption that @@.mediumaquamarine;you'll try to appease her to keep her quiet.@@
+		Even better; you gave birth to her child<<if $slaves[$i].PCChildrenFathered > 1>>ren<</if>>. To her, $he is the dominant force and you are just a bitch to be bred. $He could create a scandal if $he started running her mouth, something $he lords over you every chance $he gets under the assumption that @@.mediumaquamarine;you'll try to appease her to keep her quiet.@@
 		<<set $slaves[$i].devotion -= 5+_pregCountFactor, $slaves[$i].trust += 5+_pregCountFactor>>
 	<</if>>
 <</if>>
@@ -103,7 +103,7 @@
 		$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly resists slavery, but since you are giving her personal attention you are able to compensate for her genius.
 	<<else>>
 		<<if $slaves[$i].trust < -20>>
-			$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly resists slavery, but she fears you deeply enough that she consciously forces herself to obey out of self-preservation.
+			$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly resists slavery, but $he fears you deeply enough that $he consciously forces herself to obey out of self-preservation.
 		<<else>>
 			$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly @@.mediumorchid;resists@@ slavery and encourages her to @@.gold;fear you.@@
 			<<set $slaves[$i].devotion -= 2>>
@@ -115,7 +115,7 @@
 		$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally resists slavery, but since you are giving her personal attention you are able to compensate for her intelligence.
 	<<else>>
 		<<if $slaves[$i].trust < -20>>
-			$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally resists slavery, but she fears you deeply enough that she consciously forces herself to obey out of self-preservation.
+			$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally resists slavery, but $he fears you deeply enough that $he consciously forces herself to obey out of self-preservation.
 		<<else>>
 			$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally @@.mediumorchid;resists@@ slavery and encourages her to @@.gold;fear you.@@
 			<<set $slaves[$i].devotion -= 2>>
@@ -127,17 +127,17 @@
 		$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally resists slavery, but since you are giving her personal attention you are able to compensate for her cleverness.
 	<<else>>
 		<<if $slaves[$i].trust < -20>>
-			$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally resists slavery, but she fears you deeply enough that she consciously forces herself to obey out of self-preservation.
+			$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally resists slavery, but $he fears you deeply enough that $he consciously forces herself to obey out of self-preservation.
 		<<else>>
 			$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally @@.mediumorchid;resists@@ slavery.
 			<<set $slaves[$i].devotion -= 2>>
 		<</if>>
 	<</if>>
 <<elseif $slaves[$i].intelligence <= -3>>
-	$slaves[$i].slaveName's @@.orangered;moronic mind@@ naturally @@.hotpink;accepts@@ slavery, and she's imbecile enough to instinctively @@.mediumaquamarine;trust you@@ to know what's best for her.
+	$slaves[$i].slaveName's @@.orangered;moronic mind@@ naturally @@.hotpink;accepts@@ slavery, and $he's imbecile enough to instinctively @@.mediumaquamarine;trust you@@ to know what's best for $him.
 	<<set $slaves[$i].devotion += 2, $slaves[$i].trust += 2>>
 <<elseif $slaves[$i].intelligence <= -2>>
-	$slaves[$i].slaveName's @@.orangered;idiotic mind@@ naturally @@.hotpink;accepts@@ slavery, and she's stupid enough to instinctively @@.mediumaquamarine;trust you@@ to know what's best.
+	$slaves[$i].slaveName's @@.orangered;idiotic mind@@ naturally @@.hotpink;accepts@@ slavery, and $he's stupid enough to instinctively @@.mediumaquamarine;trust you@@ to know what's best.
 	<<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>>
 <<elseif $slaves[$i].intelligence <= -1>>
 	$slaves[$i].slaveName's @@.orangered;unintelligent mind@@ naturally @@.hotpink;accepts@@ slavery.
@@ -172,7 +172,7 @@
 <</if>>
 <<if $arcologies[0].FSChattelReligionistCreed == 1>>
 	<<if $nicaeaFocus == "slaves">>
-		The creed of $nicaeaName @@.hotpink;focuses on slaves@@ and is repeated constantly all around her.
+		The creed of $nicaeaName @@.hotpink;focuses on slaves@@ and is repeated constantly all around $him.
 		<<set $slaves[$i].devotion += $nicaeaPower>>
 	<</if>>
 <</if>>
@@ -189,7 +189,7 @@
 				$slaves[$i].slaveName is @@.mediumorchid;disturbed@@ to find her body is gone for good, damaging her @@.gold;ability to trust you.@@
 				<<set $slaves[$i].devotion -= 30, $slaves[$i].trust -= 30>>
 			<<else>>
-				$slaves[$i].slaveName is @@.mediumorchid;deeply upset@@ that she'll never see her body again. With so little left, she finds it easy to take vengeance by @@.orangered;completely rejecting your ownership of her.@@
+				$slaves[$i].slaveName is @@.mediumorchid;deeply upset@@ that $he'll never see her body again. With so little left, $he finds it easy to take vengeance by @@.orangered;completely rejecting your ownership of her.@@
 				<<set $slaves[$i].devotion -= 50, $slaves[$i].trust = 100>>
 			<</if>>
 		<</if>>
@@ -200,9 +200,9 @@
 
 <<if ($slaves[$i].indenture > -1)>>
 	<<if $slaves[$i].indenture <= 52>>
-	She knows that it's less than a year until her indenture ends.
+	$He knows that it's less than a year until her indenture ends.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she has mixed feelings about the prospect.
+		Since $he loves you, $he has mixed feelings about the prospect.
 	<<elseif $slaves[$i].devotion >= -20>>
 		The prospect of freedom @@.hotpink;encourages her to submit to your orders@@ and @@.mediumaquamarine;encourages her to be optimistic.@@
 		<<set $slaves[$i].devotion += 2>>
@@ -212,24 +212,24 @@
 		<<set $slaves[$i].trust += 2>>
 	<</if>>
 	<<else>>
-	The fact that she is an indentured servant, not a permanent slave, is never truly far from her mind.
+	The fact that $he is an indentured servant, not a permanent slave, is never truly far from her mind.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she has mixed feelings about eventual freedom.
+		Since $he loves you, $he has mixed feelings about eventual freedom.
 	<<elseif $slaves[$i].devotion >= -20>>
 		The prospect of eventual freedom @@.hotpink;cheers her up@@ and @@.mediumaquamarine;makes her optimistic.@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		The prospect of eventual freedom works to make the indignities of slavery @@.mediumaquamarine;weigh lightly@@ on her.
+		The prospect of eventual freedom works to make the indignities of slavery @@.mediumaquamarine;weigh lightly@@ on $him.
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 	<</if>>
 	<<if $slaves[$i].devotion <= 20>>
 	<<if $slaves[$i].indentureRestrictions >= 2>>
-		She's also @@.mediumaquamarine;able to rely on the protection@@ of her indenture.
+		$He's also @@.mediumaquamarine;able to rely on the protection@@ of her indenture.
 		<<set $slaves[$i].trust += 1>>
 	<<elseif $slaves[$i].indentureRestrictions > 1>>
-		She's also @@.mediumaquamarine;able to trust the restrictions@@ that her indenture places on her treatment.
+		$He's also @@.mediumaquamarine;able to trust the restrictions@@ that her indenture places on her treatment.
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 	<</if>>
@@ -239,9 +239,9 @@
 <<if $slaves[$i].actualAge >= $retirementAge-5 && $PhysicalRetirementAgePolicy != 1>>
 <<if ($CitizenRetirement == 1)>>
 	<<if $slaves[$i].actualAge >= $retirementAge-1>>
-	She knows that it's less than a year until her retirement from sexual slavery into citizenship.
+	$He knows that it's less than a year until her retirement from sexual slavery into citizenship.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she has mixed feelings about the prospect, but she prefers to think of it as your way of looking after her. It's her favorite subject, and her strong feelings about it
+		Since $he loves you, $he has mixed feelings about the prospect, but $he prefers to think of it as your way of looking after $him. It's her favorite subject, and her strong feelings about it
 		<<if $arcologies[0].FSPaternalist != "unset">>
 			advances paternalistic ideals and @@.green;improves your reputation.@@
 			<<FSChange "Paternalist" 2>>
@@ -258,9 +258,9 @@
 		<<set $slaves[$i].trust += 2>>
 	<</if>>
 	<<else>>
-	Her retirement from sexual slavery into citizenship is on the horizon.
+	$His retirement from sexual slavery into citizenship is on the horizon.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she has mixed feelings about the prospect, but she prefers to think of it as your way of looking after her. This
+		Since $he loves you, $he has mixed feelings about the prospect, but $he prefers to think of it as your way of looking after $him. This
 		<<if $arcologies[0].FSPaternalist != "unset">>
 			advances paternalistic ideals and @@.green;improves your reputation.@@
 			<<FSChange "Paternalist" 2>>
@@ -273,27 +273,27 @@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		The prospect of manumission works to make the indignities of slavery @@.mediumaquamarine;weigh lightly@@ on her.
+		The prospect of manumission works to make the indignities of slavery @@.mediumaquamarine;weigh lightly@@ on $him.
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 	<</if>>
 <<elseif ($BioreactorRetirement == 1)>>
 	<<if $slaves[$i].actualAge >= $retirementAge-1>>
-	She knows that it's less than a year until her permanent inclusion in the arcology's milk production systems.
+	$He knows that it's less than a year until her permanent inclusion in the arcology's milk production systems.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she desperately tries not to think about it, though she occasionally bursts into tears without provocation.
+		Since $he loves you, $he desperately tries not to think about it, though $he occasionally bursts into tears without provocation.
 	<<elseif $slaves[$i].devotion > 20>>
-		To put it mildly, @@.gold;she is terrified.@@
+		To put it mildly, @@.gold;$he is terrified.@@
 		<<set $slaves[$i].trust -= 3>>
 	<<else>>
-		She is filled with @@.gold;terror@@ and @@.mediumorchid;horror.@@
+		$He is filled with @@.gold;terror@@ and @@.mediumorchid;horror.@@
 		<<set $slaves[$i].devotion -= 3>>
 		<<set $slaves[$i].trust -= 3>>
 	<</if>>
 	<<else>>
-	She knows that her permanent inclusion in the arcology's milk production systems is not far off.
+	$He knows that her permanent inclusion in the arcology's milk production systems is not far off.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she tries not to think about it, though she occasionally seems preoccupied.
+		Since $he loves you, $he tries not to think about it, though $he occasionally seems preoccupied.
 	<<elseif $slaves[$i].devotion > 20>>
 		The prospect @@.gold;scares her.@@
 		<<set $slaves[$i].trust -= 2>>
@@ -305,21 +305,21 @@
 	<</if>>
 <<elseif ($ArcadeRetirement == 1)>>
 	<<if $slaves[$i].actualAge >= $retirementAge-1>>
-	She knows that it's less than a year until she is to be permanently encased in a bodysuit with holes for nothing but dick.
+	$He knows that it's less than a year until $he is to be permanently encased in a bodysuit with holes for nothing but dick.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she desperately tries not to think about it, though she occasionally bursts into tears without provocation.
+		Since $he loves you, $he desperately tries not to think about it, though $he occasionally bursts into tears without provocation.
 	<<elseif $slaves[$i].devotion > 20>>
-		To put it mildly, @@.gold;she is terrified.@@
+		To put it mildly, @@.gold;$he is terrified.@@
 		<<set $slaves[$i].trust -= 3>>
 	<<else>>
-		She is filled with @@.gold;terror@@ and @@.mediumorchid;horror.@@
+		$He is filled with @@.gold;terror@@ and @@.mediumorchid;horror.@@
 		<<set $slaves[$i].devotion -= 3>>
 		<<set $slaves[$i].trust -= 3>>
 	<</if>>
 	<<else>>
-	She knows that her ultimate fate as a Fuckdoll is not far off.
+	$He knows that her ultimate fate as a Fuckdoll is not far off.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she tries not to think about it, though she occasionally seems preoccupied.
+		Since $he loves you, $he tries not to think about it, though $he occasionally seems preoccupied.
 	<<elseif $slaves[$i].devotion > 20>>
 		The prospect @@.gold;scares her.@@
 		<<set $slaves[$i].trust -= 2>>
@@ -333,9 +333,9 @@
 <<elseif $slaves[$i].physicalAge >= $retirementAge-5 && $PhysicalRetirementAgePolicy == 1>>
 <<if ($CitizenRetirement == 1)>>
 	<<if $slaves[$i].physicalAge >= $retirementAge-1>>
-	She knows that it's less than a year until her retirement from sexual slavery into citizenship.
+	$He knows that it's less than a year until her retirement from sexual slavery into citizenship.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she has mixed feelings about the prospect, but she prefers to think of it as your way of looking after her. It's her favorite subject, and her strong feelings about it
+		Since $he loves you, $he has mixed feelings about the prospect, but $he prefers to think of it as your way of looking after $him. It's her favorite subject, and her strong feelings about it
 		<<if $arcologies[0].FSPaternalist != "unset">>
 			advances paternalistic ideals and @@.green;improves your reputation.@@
 			<<FSChange "Paternalist" 2>>
@@ -352,9 +352,9 @@
 		<<set $slaves[$i].trust += 2>>
 	<</if>>
 	<<else>>
-	Her retirement from sexual slavery into citizenship is on the horizon.
+	$His retirement from sexual slavery into citizenship is on the horizon.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she has mixed feelings about the prospect, but she prefers to think of it as your way of looking after her. This
+		Since $he loves you, $he has mixed feelings about the prospect, but $he prefers to think of it as your way of looking after $him. This
 		<<if $arcologies[0].FSPaternalist != "unset">>
 			advances paternalistic ideals and @@.green;improves your reputation.@@
 			<<FSChange "Paternalist" 2>>
@@ -367,27 +367,27 @@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		The prospect of manumission works to make the indignities of slavery @@.mediumaquamarine;weigh lightly@@ on her.
+		The prospect of manumission works to make the indignities of slavery @@.mediumaquamarine;weigh lightly@@ on $him.
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 	<</if>>
 <<elseif ($BioreactorRetirement == 1)>>
 	<<if $slaves[$i].physicalAge >= $retirementAge-1>>
-	She knows that it's less than a year until her permanent inclusion in the arcology's milk production systems.
+	$He knows that it's less than a year until her permanent inclusion in the arcology's milk production systems.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she desperately tries not to think about it, though she occasionally bursts into tears without provocation.
+		Since $he loves you, $he desperately tries not to think about it, though $he occasionally bursts into tears without provocation.
 	<<elseif $slaves[$i].devotion > 20>>
-		To put it mildly, @@.gold;she is terrified.@@
+		To put it mildly, @@.gold;$he is terrified.@@
 		<<set $slaves[$i].trust -= 3>>
 	<<else>>
-		She is filled with @@.gold;terror@@ and @@.mediumorchid;horror.@@
+		$He is filled with @@.gold;terror@@ and @@.mediumorchid;horror.@@
 		<<set $slaves[$i].devotion -= 3>>
 		<<set $slaves[$i].trust -= 3>>
 	<</if>>
 	<<else>>
-	She knows that her permanent inclusion in the arcology's milk production systems is not far off.
+	$He knows that her permanent inclusion in the arcology's milk production systems is not far off.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she tries not to think about it, though she occasionally seems preoccupied.
+		Since $he loves you, $he tries not to think about it, though $he occasionally seems preoccupied.
 	<<elseif $slaves[$i].devotion > 20>>
 		The prospect @@.gold;scares her.@@
 		<<set $slaves[$i].trust -= 2>>
@@ -399,21 +399,21 @@
 	<</if>>
 <<elseif ($ArcadeRetirement == 1)>>
 	<<if $slaves[$i].physicalAge >= $retirementAge-1>>
-	She knows that it's less than a year until she is to be permanently encased in a bodysuit with holes for nothing but dick.
+	$He knows that it's less than a year until $he is to be permanently encased in a bodysuit with holes for nothing but dick.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she desperately tries not to think about it, though she occasionally bursts into tears without provocation.
+		Since $he loves you, $he desperately tries not to think about it, though $he occasionally bursts into tears without provocation.
 	<<elseif $slaves[$i].devotion > 20>>
-		To put it mildly, @@.gold;she is terrified.@@
+		To put it mildly, @@.gold;$he is terrified.@@
 		<<set $slaves[$i].trust -= 3>>
 	<<else>>
-		She is filled with @@.gold;terror@@ and @@.mediumorchid;horror.@@
+		$He is filled with @@.gold;terror@@ and @@.mediumorchid;horror.@@
 		<<set $slaves[$i].devotion -= 3>>
 		<<set $slaves[$i].trust -= 3>>
 	<</if>>
 	<<else>>
-	She knows that her ultimate fate as a Fuckdoll is not far off.
+	$He knows that her ultimate fate as a Fuckdoll is not far off.
 	<<if $slaves[$i].devotion > 95>>
-		Since she loves you, she tries not to think about it, though she occasionally seems preoccupied.
+		Since $he loves you, $he tries not to think about it, though $he occasionally seems preoccupied.
 	<<elseif $slaves[$i].devotion > 20>>
 		The prospect @@.gold;scares her.@@
 		<<set $slaves[$i].trust -= 2>>
@@ -431,53 +431,53 @@
 <<if $SexMilestoneRetirement == 1>>
 	<<if $slaves[$i].oralCount + $slaves[$i].analCount + $slaves[$i].vaginalCount + $slaves[$i].penetrativeCount + $slaves[$i].mammaryCount >= $retirementSex*0.8>>
 	<<if $slaves[$i].devotion >= -20>>
-		She's @@.hotpink;more obedient@@ and @@.mediumaquamarine;more tolerant,@@
+		$He's @@.hotpink;more obedient@@ and @@.mediumaquamarine;more tolerant,@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		She does her best to @@.mediumaquamarine;stay strong,@@
+		$He does her best to @@.mediumaquamarine;stay strong,@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
-	since she knows that her freedom is only a few thousand dicks away.
+	since $he knows that her freedom is only a few thousand dicks away.
 	<</if>>
 <</if>>
 <<if $MilkMilestoneRetirement == 1>>
 	<<if $slaves[$i].milk >= $retirementMilk*0.8>>
 	<<if $slaves[$i].devotion >= -20>>
-		She's @@.hotpink;more obedient@@ and @@.mediumaquamarine;more tolerant,@@
+		$He's @@.hotpink;more obedient@@ and @@.mediumaquamarine;more tolerant,@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		She does her best to @@.mediumaquamarine;stay strong,@@
+		$He does her best to @@.mediumaquamarine;stay strong,@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
-	since she knows she will be free if her udders can gush just a bit more cream.
+	since $he knows $he will be free if her udders can gush just a bit more cream.
 	<</if>>
 <</if>>
 <<if $BirthsMilestoneRetirement == 1>>
 	<<if $slaves[$i].births >= $retirementBirths*0.6>>
 	<<if $slaves[$i].devotion >= -20>>
-		She's @@.hotpink;more obedient@@ and @@.mediumaquamarine;more tolerant,@@
+		$He's @@.hotpink;more obedient@@ and @@.mediumaquamarine;more tolerant,@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		She does her best to @@.mediumaquamarine;stay strong,@@
+		$He does her best to @@.mediumaquamarine;stay strong,@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
-	since she knows she only has to successfully breed a little more to be free.
+	since $he knows $he only has to successfully breed a little more to be free.
 	<</if>>
 <</if>>
 <<if $KillsMilestoneRetirement == 1>>
 	<<if $slaves[$i].pitKills >= $retirementKills*0.6>>
 	<<if $slaves[$i].devotion >= -20>>
-		She's @@.hotpink;more obedient@@ and @@.mediumaquamarine;more tolerant,@@
+		$He's @@.hotpink;more obedient@@ and @@.mediumaquamarine;more tolerant,@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		She does her best to @@.mediumaquamarine;stay strong,@@
+		$He does her best to @@.mediumaquamarine;stay strong,@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
-	since she knows just a bit more murder in the pit will win her freedom.
+	since $he knows just a bit more murder in the pit will win her freedom.
 	<</if>>
 <</if>>
 <</if>>
@@ -489,11 +489,11 @@
 <<if $personalAttention == "sex">>
 <<if $freeSexualEnergy > 0>>
 	<<if $freeSexualEnergy == 3>>
-		She gets a lot of sexual attention from you, since you don't have nearly enough dedicated fucktoys to sate your libido, and this @@.hotpink;<<if $slaves[$i].devotion > 50>>intensifies her love for you<<else>>forces her to get used to sex slavery<</if>>.@@
+		$He gets a lot of sexual attention from you, since you don't have nearly enough dedicated fucktoys to sate your libido, and this @@.hotpink;<<if $slaves[$i].devotion > 50>>intensifies her love for you<<else>>forces her to get used to sex slavery<</if>>.@@
 	<<elseif $freeSexualEnergy == 2>>
-		She receives some sexual attention from you, since you don't have enough dedicated fucktoys to sate your libido, and this @@.hotpink;<<if $slaves[$i].devotion > 50>>builds her closeness to you<<else>>gets her used to being your sex slave<</if>>.@@
+		$He receives some sexual attention from you, since you don't have enough dedicated fucktoys to sate your libido, and this @@.hotpink;<<if $slaves[$i].devotion > 50>>builds her closeness to you<<else>>gets her used to being your sex slave<</if>>.@@
 	<<else>>
-		She receives occasional sexual attention from you, since you barely have enough dedicated fucktoys to sate your libido, @@.hotpink;<<if $slaves[$i].devotion > 50>>making her feel closer to you<<else>>keeping her aware she's your sex slave<</if>>.@@
+		$He receives occasional sexual attention from you, since you barely have enough dedicated fucktoys to sate your libido, @@.hotpink;<<if $slaves[$i].devotion > 50>>making her feel closer to you<<else>>keeping her aware $he's your sex slave<</if>>.@@
 	<</if>>
 	<<set $slaves[$i].devotion += $freeSexualEnergy>>
 	<<set $slaves[$i].oralCount += $freeSexualEnergy>>
@@ -557,17 +557,17 @@
 <</if>>
 <<if _collectiveDevotionEffect == 1>>
 	<<if _collectiveTrustEffect == 1>>
-		Since she's ambivalent and fearful, the @@.hotpink;collective devotion@@ @@.mediumaquamarine;and trust@@ of your slaves affect her slightly.
+		Since $he's ambivalent and fearful, the @@.hotpink;collective devotion@@ @@.mediumaquamarine;and trust@@ of your slaves affect her slightly.
 	<<elseif _collectiveTrustEffect == 0>>
-		Since she's ambivalent about you, the @@.hotpink;collective devotion@@ your slaves feel for you affects her slightly.
+		Since $he's ambivalent about you, the @@.hotpink;collective devotion@@ your slaves feel for you affects her slightly.
 	<<else>>
-		Since she's ambivalent about you, the @@.hotpink;collective devotion@@ your slaves feel for you affects her slightly, but their @@.gold;general fear@@ affects her too.
+		Since $he's ambivalent about you, the @@.hotpink;collective devotion@@ your slaves feel for you affects her slightly, but their @@.gold;general fear@@ affects her too.
 	<</if>>
 <<elseif _collectiveDevotionEffect == 0>>
 	<<if _collectiveTrustEffect == 1>>
-		Since she's fearful of you, the @@.mediumaquamarine;collective trust@@ your slaves place in you affects her slightly.
+		Since $he's fearful of you, the @@.mediumaquamarine;collective trust@@ your slaves place in you affects her slightly.
 	<<elseif _collectiveTrustEffect == -1>>
-		Since she doesn't trust you, the @@.gold;collective fear@@ your slaves feel for you affects her slightly.
+		Since $he doesn't trust you, the @@.gold;collective fear@@ your slaves feel for you affects her slightly.
 	<</if>>
 <<else>>
 	<<if _collectiveTrustEffect == 1>>
@@ -583,10 +583,10 @@
 <<if $slaves[$i].assignmentVisible == 1>>
 <<if ($arcade != 0) || (($dairy != 0) && ($dairyRestraintsSetting >= 2))>>
 	<<if $slaves[$i].devotion <= 95>>
-		She knows about <<if $arcade != 0>>$arcadeName<<if ($dairy != 0) && ($dairyRestraintsSetting >= 2)>> and $dairyName<</if>><<else>>$dairyName<</if>>, and @@.gold;fears@@ that you might send her there.
+		$He knows about <<if $arcade != 0>>$arcadeName<<if ($dairy != 0) && ($dairyRestraintsSetting >= 2)>> and $dairyName<</if>><<else>>$dairyName<</if>>, and @@.gold;fears@@ that you might send her there.
 		<<set $slaves[$i].trust -= 1>>
 	<<else>>
-		She knows some of your other slaves meet terrible, industrial fates, but she loves you so much that she tries not to think about it.
+		$He knows some of your other slaves meet terrible, industrial fates, but $he loves you so much that $he tries not to think about it.
 	<</if>>
 <</if>>
 <</if>>
@@ -596,15 +596,15 @@
 <<if $slaves[$i].trust >= -20>>
 <<if $slaves[$i].devotion > 95>>
 	<<if $slaves[$i].trust <= 20>>
-		$slaves[$i].slaveName loves you, so she finds herself @@.mediumaquamarine;fearing you a little less.@@
+		$slaves[$i].slaveName loves you, so $he finds herself @@.mediumaquamarine;fearing you a little less.@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif $slaves[$i].trust <= 50>>
-		$slaves[$i].slaveName loves you, so she finds herself @@.mediumaquamarine;trusting you a little more.@@
+		$slaves[$i].slaveName loves you, so $he finds herself @@.mediumaquamarine;trusting you a little more.@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 <<elseif $slaves[$i].devotion > 60>>
 	<<if $slaves[$i].trust <= 20>>
-		$slaves[$i].slaveName is devoted to you, so she finds herself @@.mediumaquamarine;fearing you a little less.@@
+		$slaves[$i].slaveName is devoted to you, so $he finds herself @@.mediumaquamarine;fearing you a little less.@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 <<elseif $slaves[$i].devotion < -50>>
@@ -612,20 +612,20 @@
 		$slaves[$i].slaveName hates you, but also doesn't fear you, @@.orangered;bolstering her disobedience.@@
 		<<set $slaves[$i].trust += 5>>
 	<<else>>
-		$slaves[$i].slaveName hates you, so she finds herself @@.gold;trusting you a little less.@@
+		$slaves[$i].slaveName hates you, so $he finds herself @@.gold;trusting you a little less.@@
 		<<set $slaves[$i].trust -= 2>>
 	<</if>>
 <</if>>
 <</if>>
 <<if $slaves[$i].trust > 95>>
 	<<if $slaves[$i].devotion <= -20>>
-		$slaves[$i].slaveName feels no threat from you, so she finds it easy to @@.mediumorchid;express her hatred of you.@@
+		$slaves[$i].slaveName feels no threat from you, so $he finds it easy to @@.mediumorchid;express her hatred of you.@@
 		<<set $slaves[$i].devotion -= 10>>
 	<<elseif $slaves[$i].devotion <= 20>>
-		$slaves[$i].slaveName trusts you implicitly, so she finds herself @@.hotpink;hating you a little less.@@
+		$slaves[$i].slaveName trusts you implicitly, so $he finds herself @@.hotpink;hating you a little less.@@
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif $slaves[$i].devotion <= 50>>
-		$slaves[$i].slaveName trusts you implicitly, so she finds herself @@.hotpink;liking you a little more.@@
+		$slaves[$i].slaveName trusts you implicitly, so $he finds herself @@.hotpink;liking you a little more.@@
 		<<set $slaves[$i].devotion += 1>>
 	<</if>>
 <<elseif $slaves[$i].trust > 50>>
@@ -633,20 +633,20 @@
 		$slaves[$i].slaveName finds you non-threatening, so it's easy for her to @@.mediumorchid;defy you.@@
 		<<set $slaves[$i].devotion -= 5>>
 	<<elseif $slaves[$i].devotion <= 20>>
-		$slaves[$i].slaveName trusts you, so she finds herself @@.hotpink;hating you a little less.@@
+		$slaves[$i].slaveName trusts you, so $he finds herself @@.hotpink;hating you a little less.@@
 		<<set $slaves[$i].devotion += 1>>
 	<</if>>
 <<elseif $slaves[$i].trust < -50>>
 	<<if $slaves[$i].devotion >= -20>>
 	<<if $slaves[$i].devotion <= 50>>
-		$slaves[$i].slaveName is so terrified of you that she tries desperately to avoid punishment, @@.hotpink;which is sometimes indistinguishable from devotion.@@
+		$slaves[$i].slaveName is so terrified of you that $he tries desperately to avoid punishment, @@.hotpink;which is sometimes indistinguishable from devotion.@@
 		<<set $slaves[$i].devotion += 2>>
 	<</if>>
 	<</if>>
 <<elseif $slaves[$i].trust < -20>>
 	<<if $slaves[$i].devotion > 20>>
 	<<if $slaves[$i].devotion <= 50>>
-		$slaves[$i].slaveName is scared of you, but not truly terrified, so she feels safe in @@.mediumorchid;hating the worst parts of being your sex slave.@@
+		$slaves[$i].slaveName is scared of you, but not truly terrified, so $he feels safe in @@.mediumorchid;hating the worst parts of being your sex slave.@@
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 	<</if>>
@@ -661,7 +661,7 @@
 <<if ($slaves[$i].sexualQuirk == "unflinching")>>
 	<<if ($slaves[$i].devotion <= 95)>>
 	<<if ($slaves[$i].devotion < $slaves[$i].oldDevotion)>>
-	Her unflinching nature leads her to forget some of the unpleasant things she's experienced this week, @@.hotpink;reducing their impact on her feelings about you.@@
+	$His unflinching nature leads her to forget some of the unpleasant things $he's experienced this week, @@.hotpink;reducing their impact on her feelings about you.@@
 	<<set $slaves[$i].devotion += ($slaves[$i].oldDevotion - $slaves[$i].devotion)/2>>
 	<</if>>
 	<</if>>
@@ -670,17 +670,17 @@
 /* CAPS ON DEVOTION GAIN */
 
 <<if $slaves[$i].tankBaby == 1>>
-	The incubation facility conditioned her mind for total subservience to her owner; she cannot resist her progress.
+	The incubation facility conditioned her mind for total subservience to her owner; $he cannot resist her progress.
 <<elseif $slaves[$i].tankBaby == 2>>
-	The incubation facility conditioned her mind for total reverence of her owner; she cannot resist her progress.
+	The incubation facility conditioned her mind for total reverence of her owner; $he cannot resist her progress.
 <<elseif $slaves[$i].devotion >= -20>>
 	<<if $slaves[$i].devotion >= ($slaves[$i].oldDevotion+5)>>
 		<<if $slaves[$i].tankBaby == 1>>
-			The incubation facility conditioned her mind for total subservience to her owner; she cannot resist her progress.
+			The incubation facility conditioned her mind for total subservience to her owner; $he cannot resist her progress.
 		<<elseif $arcologies[0].FSChattelReligionist >= random(1,100)>>
-			The natural resilience of her mind is overcome by the omnipresent combination of faith and servitude in $arcologies[0].name, and she does not resist her progress down the path towards total subservience.
+			The natural resilience of her mind is overcome by the omnipresent combination of faith and servitude in $arcologies[0].name, and $he does not resist her progress down the path towards total subservience.
 		<<elseif Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-			She gained so much regard for you this week that her natural reaction is to rebound a little, but since you're giving her personal attention, your charismatic presence prevents this.
+			$He gained so much regard for you this week that her natural reaction is to rebound a little, but since you're giving her personal attention, your charismatic presence prevents this.
 		<<elseif $slaves[$i].devotion < 95>>
 			So many things served to drive her into subservience this week that her mind @@.mediumorchid;rebounds a little.@@
 			<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
@@ -689,18 +689,18 @@
 <<else>>
 	<<if $slaves[$i].devotion >= ($slaves[$i].oldDevotion+5)>>
 	<<if $slaves[$i].tankBaby == 1>>
-		The incubation facility conditioned her mind for total subservience to her owner; she cannot resist her progress.
+		The incubation facility conditioned her mind for total subservience to her owner; $he cannot resist her progress.
 	<<elseif $slaves[$i].behavioralFlaw == "arrogant">>
-		Though she made progress this week, @@.mediumorchid;it is limited by her arrogance.@@
+		Though $he made progress this week, @@.mediumorchid;it is limited by her arrogance.@@
 		<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 	<<elseif ($slaves[$i].behavioralFlaw == "bitchy") && canTalk($slaves[$i])>>
-		Though she made progress this week, @@.mediumorchid;it is limited by the independence she regains by making snide comments.@@
+		Though $he made progress this week, @@.mediumorchid;it is limited by the independence $he regains by making snide comments.@@
 		<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 	<<elseif $slaves[$i].behavioralFlaw == "devout">>
-		Though she made progress this week, @@.mediumorchid;it is limited by the independence she regains through reliance on her faith.@@
+		Though $he made progress this week, @@.mediumorchid;it is limited by the independence $he regains through reliance on her faith.@@
 		<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 	<<elseif $slaves[$i].behavioralFlaw == "liberated">>
-		Though she made progress this week, @@.mediumorchid;it is limited by the independence she retains due to her moral convictions that this is wrong.@@
+		Though $he made progress this week, @@.mediumorchid;it is limited by the independence $he retains due to her moral convictions that this is wrong.@@
 		<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 	<</if>>
 	<</if>>
@@ -711,29 +711,29 @@
 <<if $slaves[$i].trust > -20>>
 	<<if $slaves[$i].trust >= ($slaves[$i].oldTrust+5)>>
 		<<if $slaves[$i].tankBaby == 1>>
-			Any natural doubts she has are overcome by her conditioning in the incubation facility; she cannot resist trusting her owner.
+			Any natural doubts $he has are overcome by her conditioning in the incubation facility; $he cannot resist trusting her owner.
 		<<elseif $arcologies[0].FSChattelReligionist >= random(1,100)>>
-			Any natural doubts she harbors are overcome by her belief in Chattel Religionism, and she does not resist her progress down the path towards total trust in you.
+			Any natural doubts $he harbors are overcome by her belief in Chattel Religionism, and $he does not resist her progress down the path towards total trust in you.
 		<<elseif Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-			She gained so much trust in you this week that her natural reaction is to doubt herself, but since you're giving her personal attention, she decides to trust her understanding of your will.
+			$He gained so much trust in you this week that her natural reaction is to doubt herself, but since you're giving her personal attention, $he decides to trust her understanding of your will.
 		<<elseif $slaves[$i].trust < 95>>
-			She gained so much trust in you this week that she @@.gold;draws back a little@@ out of self-doubt.
+			$He gained so much trust in you this week that $he @@.gold;draws back a little@@ out of self-doubt.
 			<<set $slaves[$i].trust = ($slaves[$i].oldTrust+5)>>
 		<</if>>
 	<</if>>
 <<else>>
 	<<if $slaves[$i].trust >= ($slaves[$i].oldTrust+5)>>
 	<<if $slaves[$i].tankBaby == 1>>
-		Any natural doubts she has are overcome by her conditioning in the incubation facility; she cannot resist trusting her owner.
+		Any natural doubts $he has are overcome by her conditioning in the incubation facility; $he cannot resist trusting her owner.
 	<<elseif ($slaves[$i].behavioralFlaw == "odd") && ($slaves[$i].collar != "shock punishment")>>
-		Though she made progress this week, @@.gold;it is limited by her preoccupation with her own oddities.@@
+		Though $he made progress this week, @@.gold;it is limited by her preoccupation with her own oddities.@@
 		<<set $slaves[$i].trust = ($slaves[$i].oldTrust+5)>>
 	<</if>>
 	<</if>>
 <</if>>
 
 <<if ($slaves[$i].devotion > 100) && ($slaves[$i].trust > 100) && ($slaves[$i].energy > 50)>>
-	Her perfect devotion and trust @@.green;improve your reputation.@@
+	$His perfect devotion and trust @@.green;improve your reputation.@@
 	<<set $repGain += 10*($slaves[$i].devotion-100)>>
 	<<set $slaves[$i].devotion = 100>>
 	<<set $repGain += 10*($slaves[$i].trust-100)>>
@@ -745,7 +745,7 @@
 		<<elseif $slaves[$i].energy <= 50>>
 			<<set $energyPlus += Math.trunc($slaves[$i].devotion-100)>>
 		<<else>>
-			Her extreme devotion @@.green;improved your reputation.@@
+			$His extreme devotion @@.green;improved your reputation.@@
 			<<set $repGain += 10*($slaves[$i].devotion-100)>>
 		<</if>>
 		<<set $slaves[$i].devotion = 100>>
@@ -758,12 +758,12 @@
 		<<if $slaves[$i].devotion < 100 && $slaves[$i].devotion >= 20>>
 			<<set $slaves[$i].devotion += Math.trunc($slaves[$i].trust-100)>>
 		<<elseif $slaves[$i].devotion <= -50>>
-			Her blatant disregard for your rule @@.red;damages your reputation.@@
+			$His blatant disregard for your rule @@.red;damages your reputation.@@
 			<<set $repGain -= 30*($slaves[$i].trust-100)>>
 		<<elseif $slaves[$i].energy <= 50>>
 			<<set $energyPlus += Math.trunc($slaves[$i].trust-100)>>
 		<<else>>
-			Her extreme trust @@.green;improved your reputation.@@
+			$His extreme trust @@.green;improved your reputation.@@
 			<<set $repGain += 10*($slaves[$i].trust-100)>>
 		<</if>>
 		<<set $slaves[$i].trust = 100>>
@@ -774,7 +774,7 @@
 	<</if>>
 <</if>>
 <<if ($energyPlus > 0)>>
-	Her confidence in her sexuality @@.green;improved her low sex drive.@@
+	$His confidence in her sexuality @@.green;improved her low sex drive.@@
 	<<set $slaves[$i].energy += $energyPlus>>
 <</if>>
 
@@ -835,52 +835,52 @@
 <</if>>
 
 <<if ($slaves[$i].devotion > 50) && ($slaves[$i].oldDevotion <= 50)>>
-	@@.green;She has gone from accepting her position to being devoted to you!@@
+	@@.green;$He has gone from accepting her position to being devoted to you!@@
 	<<set $slaves[$i].devotion += 1>>
 <<elseif ($slaves[$i].devotion > 20) && ($slaves[$i].oldDevotion <= 20)>>
-	@@.green;She has gone from being ambivalent toward you to accepting your ownership of her!@@
+	@@.green;$He has gone from being ambivalent toward you to accepting your ownership of her!@@
 	<<set $slaves[$i].devotion += 1>>
 <<elseif ($slaves[$i].devotion >= -20) && ($slaves[$i].oldDevotion < -20)>>
-	@@.green;She has gone from disliking you to being ambivalent about you!@@
+	@@.green;$He has gone from disliking you to being ambivalent about you!@@
 	<<set $slaves[$i].devotion += 1>>
 <<elseif ($slaves[$i].devotion >= -50) && ($slaves[$i].oldDevotion < -50)>>
-	@@.green;She has gone from hating you to merely disliking you!@@
+	@@.green;$He has gone from hating you to merely disliking you!@@
 	<<set $slaves[$i].devotion += 1>>
 <</if>>
 
 <<if $slaves[$i].devotion < -20>>
 	<<if ($slaves[$i].trust > 50) && ($slaves[$i].oldtrust <= 50)>>
-		@@.red;She has gone from being careful around you to showing open defiance!@@
+		@@.red;$He has gone from being careful around you to showing open defiance!@@
 		<<set $slaves[$i].trust++>>
 	<<elseif ($slaves[$i].trust > 20) && ($slaves[$i].oldtrust <= 20)>>
-		@@.yellow;She has gone from fearing you to merely being careful around you!@@
+		@@.yellow;$He has gone from fearing you to merely being careful around you!@@
 		<<set $slaves[$i].trust++>>
 	<<elseif ($slaves[$i].trust >= -20) && ($slaves[$i].oldtrust < -20)>>
-		@@.yellow;She has gone from being afraid of you to being merely fearful!@@
+		@@.yellow;$He has gone from being afraid of you to being merely fearful!@@
 		<<set $slaves[$i].trust++>>
 	<<elseif ($slaves[$i].trust >= -50) && ($slaves[$i].oldtrust < -50)>>
-		@@.yellow;She has gone from being terrified to being merely afraid of you!@@
+		@@.yellow;$He has gone from being terrified to being merely afraid of you!@@
 		<<set $slaves[$i].trust++>>
 	<</if>>
 <<else>>
 	<<if ($slaves[$i].trust > 50) && ($slaves[$i].oldtrust <= 50)>>
-		@@.green;She has gone from being careful around you to trusting you!@@
+		@@.green;$He has gone from being careful around you to trusting you!@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].trust > 20) && ($slaves[$i].oldtrust <= 20)>>
-		@@.green;She has gone from fearing you to merely being careful around you!@@
+		@@.green;$He has gone from fearing you to merely being careful around you!@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].trust >= -20) && ($slaves[$i].oldtrust < -20)>>
-		@@.green;She has gone from being afraid of you to being merely fearful!@@
+		@@.green;$He has gone from being afraid of you to being merely fearful!@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].trust >= -50) && ($slaves[$i].oldtrust < -50)>>
-		@@.green;She has gone from being terrified to being merely afraid of you!@@
+		@@.green;$He has gone from being terrified to being merely afraid of you!@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 <</if>>
 
 <<if ($slaves[$i].trust < -20) && ($slaves[$i].oldtrust >= -20)>>
 	<<if ($slaves[$i].devotion <= 20)>>
-	@@.green;She has gone from merely fearing you to actively being afraid of you!@@
+	@@.green;$He has gone from merely fearing you to actively being afraid of you!@@
 	<<set $slaves[$i].trust -= 2>>
 	<</if>>
 <</if>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 6a4a356daed..edc30f850f4 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -116,81 +116,81 @@
 <<case "no clothing">>
 <<if $slaves[$i].devotion >= -20>>
 	<<if ($slaves[$i].fetish == "humiliation") && ($slaves[$i].fetishKnown == 0)>>
-		She pretends to be embarrassed by her nudity but seems to get off on it. @@.lightcoral;She's into humiliation.@@
+		$He pretends to be embarrassed by her nudity but seems to get off on it. @@.lightcoral;$He's into humiliation.@@
 		<<set $slaves[$i].fetishKnown = 1>>
 	<<elseif ($slaves[$i].fetish == "humiliation") && ($slaves[$i].fetishStrength > 60)>>
-		She pretends to be embarrassed by her nudity but @@.hotpink;openly gets off on it.@@
+		$He pretends to be embarrassed by her nudity but @@.hotpink;openly gets off on it.@@
 		<<set $slaves[$i].devotion += 2>>
 	<<elseif ($slaves[$i].fetish == "humiliation")>>
-		She pretends to be embarrassed by her nudity but @@.hotpink;secretly gets off on it.@@
+		$He pretends to be embarrassed by her nudity but @@.hotpink;secretly gets off on it.@@
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		Her libido is so strong that she @@.hotpink;enjoys being naked and available.@@
+		$His libido is so strong that $he @@.hotpink;enjoys being naked and available.@@
 		<<set $slaves[$i].devotion += 1>>
 	<</if>>
 <</if>>
 <<case "a penitent nuns habit">>
-	The mortification of the flesh she endures from wearing her sackcloth habit slowly and painfully @@.hotpink;purifies her mind@@ of any but devoted, @@.gold;fearful@@ thoughts. It's also @@.red;unhealthy.@@
+	The mortification of the flesh $he endures from wearing her sackcloth habit slowly and painfully @@.hotpink;purifies her mind@@ of any but devoted, @@.gold;fearful@@ thoughts. It's also @@.red;unhealthy.@@
 	<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 2, $slaves[$i].health -= 3>>
 	<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-		Her chafed skin makes sex an agonizing prospect. She seems to get off on the pain; she's a @@.lightcoral;natural masochist.@@
+		$His chafed skin makes sex an agonizing prospect. $He seems to get off on the pain; $he's a @@.lightcoral;natural masochist.@@
 		<<set $slaves[$i].fetishKnown = 1>>
 	<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 		<<if _fetishChangeChance > random(0,100)>>
-			Her chafed skin makes sex an agonizing prospect. She learns to come in spite of, and then @@.lightcoral;because of the pain.@@
+			$His chafed skin makes sex an agonizing prospect. $He learns to come in spite of, and then @@.lightcoral;because of the pain.@@
 			<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<</if>>
 	<</if>>
 <<case "uncomfortable straps">>
 	<<if ($slaves[$i].devotion >= -20) && ($slaves[$i].fetish == "masochist") && $slaves[$i].fetishKnown == 1>>
-		The uncomfortable straps she's wearing constantly give her little twinges of pain, @@.hotpink;titillating her.@@
+		The uncomfortable straps $he's wearing constantly give her little twinges of pain, @@.hotpink;titillating her.@@
 		<<set $slaves[$i].devotion += 2>>
 	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -50)>>
-		The uncomfortable straps she's wearing keep her @@.hotpink;servile@@ and @@.gold;afraid.@@
+		The uncomfortable straps $he's wearing keep her @@.hotpink;servile@@ and @@.gold;afraid.@@
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 1>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-			The straps pinch and constrict her whenever she's used. She seems to get off on the discomfort; she's a @@.lightcoral;natural masochist.@@
+			The straps pinch and constrict her whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				The straps pinch and constrict her whenever she's used. She learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
+				The straps pinch and constrict her whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
 				<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-			Her straps pinch and constrict her whenever she's used. She seems to get off on the discomfort; she's a @@.lightcoral;natural masochist.@@
+			$His straps pinch and constrict her whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				Her straps pinch and constrict her whenever she's used. She learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
+				$His straps pinch and constrict her whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
 				<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
 	<</if>>
 <<case "chains">>
 	<<if ($slaves[$i].devotion >= -20) && ($slaves[$i].fetish == "masochist") && $slaves[$i].fetishKnown == 1>>
-		The chains she's wearing constantly give her little twinges of pain, @@.hotpink;titillating her.@@
+		The chains $he's wearing constantly give her little twinges of pain, @@.hotpink;titillating her.@@
 		<<set $slaves[$i].devotion += 2>>
 	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -50)>>
-		The chains she's wearing keep her @@.hotpink;servile@@ and @@.gold;afraid.@@
+		The chains $he's wearing keep her @@.hotpink;servile@@ and @@.gold;afraid.@@
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 1>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-			Her chains pinch and constrict her whenever she's used. She seems to get off on the discomfort; she's a @@.lightcoral;natural masochist.@@
+			$His chains pinch and constrict her whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				Her chains pinch and constrict her whenever she's used. She learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
+				$His chains pinch and constrict her whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
 				<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-			Her chains pinch and constrict her whenever she's used.  She seems to get off on the discomfort; she's a @@.lightcoral;natural masochist.@@
+			$His chains pinch and constrict her whenever $he's used.  $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				Her chains pinch and constrict her whenever she's used. She learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
+				$His chains pinch and constrict her whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
 				<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
@@ -198,110 +198,110 @@
 <<case "restrictive latex">>
 	<<if ($slaves[$i].devotion >= 20) && ($slaves[$i].trust >= -50) && ($slaves[$i].fetish == "submissive")>>
 		<<if $slaves[$i].fetishKnown == 0>>
-			The latex she's wearing limits her world to your input and control. She seems to get off on the lack of control; she's a @@.lightcoral;total submissive.@@
+			The latex $he's wearing limits her world to your input and control. $He seems to get off on the lack of control; $he's a @@.lightcoral;total submissive.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetishStrength > 60)>>
-			As a submissive she @@.hotpink;openly enjoys being immured in latex.@@
+			As a submissive $he @@.hotpink;openly enjoys being immured in latex.@@
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			Her submissive tendencies help her @@.hotpink;enjoy being immured in latex.@@
+			$His submissive tendencies help her @@.hotpink;enjoy being immured in latex.@@
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].devotion < -20)>>
-		The latex she's wearing limits her world to @@.hotpink;your input and control@@ and @@.gold;fear@@ of unexpected pain.
+		The latex $he's wearing limits her world to @@.hotpink;your input and control@@ and @@.gold;fear@@ of unexpected pain.
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 1>>
 	<</if>>
 <<case "shibari ropes">>
 	<<if ($slaves[$i].devotion >= 20) && ($slaves[$i].trust >= -50) && ($slaves[$i].fetish == "submissive")>>
 		<<if $slaves[$i].fetishKnown == 0>>
-			The ropes she's wearing restrict her and leave her completely helpless. She seems to get off on the lack of control; she's a @@.lightcoral;natural submissive.@@
+			The ropes $he's wearing restrict her and leave her completely helpless. $He seems to get off on the lack of control; $he's a @@.lightcoral;natural submissive.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetishStrength > 60)>>
-			As a submissive she @@.hotpink;openly enjoys wearing binding ropes as clothing.@@
+			As a submissive $he @@.hotpink;openly enjoys wearing binding ropes as clothing.@@
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			Her submissive tendencies help her @@.hotpink;enjoy wearing binding ropes as clothing.@@
+			$His submissive tendencies help her @@.hotpink;enjoy wearing binding ropes as clothing.@@
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].devotion < -20)>>
-		The ropes she's wearing restrict her without pain, rendering her @@.hotpink;susceptible to control@@ and @@.gold;afraid.@@
+		The ropes $he's wearing restrict her without pain, rendering her @@.hotpink;susceptible to control@@ and @@.gold;afraid.@@
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 1>>
 	<</if>>
 <<case "an apron">>
 	<<if $slaves[$i].fetish == "submissive">>
 		<<if ($slaves[$i].fetishKnown == 0)>>
-			She pretends to be embarrassed by wearing nothing but an apron, but seems to get off on how it invites other to take control and use her. @@.lightcoral;She's a natural submissive.@@
+			$He pretends to be embarrassed by wearing nothing but an apron, but seems to get off on how it invites other to take control and use $him. @@.lightcoral;$He's a natural submissive.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<else>>
-			She pretends to be embarrassed by wearing nothing but an apron but @@.hotpink;secretly gets off@@ on how it invites men to bend her over and put her in her place.
+			$He pretends to be embarrassed by wearing nothing but an apron but @@.hotpink;secretly gets off@@ on how it invites men to bend $him over and put $him in $his place.
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif $slaves[$i].fetish == "humiliation">>
 		<<if ($slaves[$i].fetishKnown == 0)>>
-			She pretends to be embarrassed by her extremely revealing clothing but seems to get off on it. @@.lightcoral;She's into humiliation.@@
+			$He pretends to be embarrassed by $his extremely revealing clothing but seems to get off on it. @@.lightcoral;$He's into humiliation.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetishStrength > 60)>>
-			She pretends to be embarrassed by her extremely revealing clothing but @@.hotpink;openly gets off on it.@@
+			$He pretends to be embarrassed by $his extremely revealing clothing but @@.hotpink;openly gets off on it.@@
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			She pretends to be embarrassed by her extremely revealing clothing but @@.hotpink;secretly gets off on it.@@
+			$He pretends to be embarrassed by $his extremely revealing clothing but @@.hotpink;secretly gets off on it.@@
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif $slaves[$i].fetish == "pregnancy" && ($slaves[$i].bellyPreg >= 1500 || $slaves[$i].bellyImplant >= 1500)>>
 		<<if ($slaves[$i].fetishKnown == 0)>>
-			She pretends to be embarrassed over only having an apron to cover her gravid swell but seems to get off on it. @@.lightcoral;She's a pregnancy fetishist.@@
+			$He pretends to be embarrassed over only having an apron to cover $his gravid swell but seems to get off on it. @@.lightcoral;$He's a pregnancy fetishist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetishStrength > 60)>>
-			She @@.hotpink;openly gets off@@ from how motherly she looks wearing nothing but an apron over her <<if $slaves[$i].bellyPreg > 100>>increasingly <</if>>gravid frame.
+			$He @@.hotpink;openly gets off@@ from how motherly $he looks wearing nothing but an apron over $his <<if $slaves[$i].bellyPreg > 100>>increasingly <</if>>gravid frame.
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			She @@.hotpink;secretly gets off@@ from how motherly she feels wearing nothing but an apron over her <<if $slaves[$i].bellyPreg > 100>>increasingly <</if>>gravid frame.
+			$He @@.hotpink;secretly gets off@@ from how motherly $he feels wearing nothing but an apron over $his <<if $slaves[$i].bellyPreg > 100>>increasingly <</if>>gravid frame.
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].devotion <= 20)>>
-		She is @@.mediumorchid;inappropriately proud@@ of the nice apron she's wearing, @@.mediumaquamarine;building her confidence.@@
+		$He is @@.mediumorchid;inappropriately proud@@ of the nice apron $he's wearing, @@.mediumaquamarine;building $his confidence.@@
 		<<set $slaves[$i].devotion -= 5, $slaves[$i].trust += 3>>
 	<<else>>
-		She is @@.hotpink;proud@@ and @@.mediumaquamarine;confident@@ of the nice apron she's wearing.
+		$He is @@.hotpink;proud@@ and @@.mediumaquamarine;confident@@ of the nice apron $he's wearing.
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>>
 	<</if>>
 <<default>>
 	<<if ($slaves[$i].devotion <= 20)>>
-		She is @@.mediumorchid;inappropriately proud@@ of the nice clothes she's wearing, @@.mediumaquamarine;building her confidence.@@
+		$He is @@.mediumorchid;inappropriately proud@@ of the nice clothes $he's wearing, @@.mediumaquamarine;building $his confidence.@@
 		<<set $slaves[$i].devotion -= 5, $slaves[$i].trust += 3>>
 	<<elseif $slaves[$i].fetish == "boobs" && $slaves[$i].clothes == "a monokini">>
 		<<if ($slaves[$i].fetishKnown == 0)>>
-			She pretends to be embarrassed by how her monokini draws attention to her breasts but @@.hotpink;seems to get off on it.@@
+			$He pretends to be embarrassed by how $his monokini draws attention to $his breasts but @@.hotpink;seems to get off on it.@@
 			<<set $slaves[$i].devotion += 1>>
 		<<elseif ($slaves[$i].fetishStrength > 60)>>
-			She pretends to be embarrassed by her clearly exposed breasts but @@.hotpink;openly gets off on it.@@
+			$He pretends to be embarrassed by $his clearly exposed breasts but @@.hotpink;openly gets off on it.@@
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			She pretends to be embarrassed by her clearly exposed breasts but @@.hotpink;secretly gets off on it.@@
+			$He pretends to be embarrassed by $his clearly exposed breasts but @@.hotpink;secretly gets off on it.@@
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif $slaves[$i].fetish == "humiliation" && ($slaves[$i].clothes == "a string bikini" || $slaves[$i].clothes == "clubslut netting")>>
 		<<if ($slaves[$i].fetishKnown == 0)>>
-			She pretends to be embarrassed by her extremely revealing clothing but seems to get off on it. @@.lightcoral;She's into humiliation.@@
+			$He pretends to be embarrassed by $his extremely revealing clothing but seems to get off on it. @@.lightcoral;$He's into humiliation.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetishStrength > 60)>>
-			She pretends to be embarrassed by her extremely revealing clothing but @@.hotpink;openly gets off on it.@@
+			$He pretends to be embarrassed by $his extremely revealing clothing but @@.hotpink;openly gets off on it.@@
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			She pretends to be embarrassed by her extremely revealing clothing but @@.hotpink;secretly gets off on it.@@
+			$He pretends to be embarrassed by $his extremely revealing clothing but @@.hotpink;secretly gets off on it.@@
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].dick > 0) && ($slaves[$i].clothes == "attractive lingerie")>>
-		She is @@.hotpink;proud@@ of the pretty lingerie she's wearing, but she constantly has to adjust her g-string to cover her penis.
+		$He is @@.hotpink;proud@@ of the pretty lingerie $he's wearing, but $he constantly has to adjust $his g-string to cover $his penis.
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif ($slaves[$i].dick > 0) && ($slaves[$i].clothes == "a string bikini")>>
-		She is @@.hotpink;proud@@ of the slutty lingerie she's wearing, but she constantly has to adjust her string bikini bottom in a vain effort to cover her penis.
+		$He is @@.hotpink;proud@@ of the slutty lingerie $he's wearing, but $he constantly has to adjust $his string bikini bottom in a vain effort to cover $his penis.
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif ($slaves[$i].dick > 0) && ($slaves[$i].clothes == "attractive lingerie for a pregnant woman")>>
-		She is @@.hotpink;proud@@ of the pretty lingerie she's wearing, but she constantly has to adjust her panties to cover her penis.
+		$He is @@.hotpink;proud@@ of the pretty lingerie $he's wearing, but $he constantly has to adjust $his panties to cover $his penis.
 		<<set $slaves[$i].devotion += 1>>
 	<<else>>
-		She is @@.hotpink;proud@@ and @@.mediumaquamarine;confident@@ of the nice clothes she's wearing.
+		$He is @@.hotpink;proud@@ and @@.mediumaquamarine;confident@@ of the nice clothes $he's wearing.
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>>
 	<</if>>
 <</switch>>
@@ -310,7 +310,7 @@
 <<if ($slaves[$i].fetish == "humiliation")>>
 <<if random(1,100) > 90>>
 <<if !setup.modestClothes.includes($slaves[$i].clothes)>>
-	Surprisingly, she takes to her extremely revealing clothing, and gets an obvious thrill from it. @@.lightcoral;She's a humiliation fetishist!@@
+	Surprisingly, $he takes to $his extremely revealing clothing, and gets an obvious thrill from it. @@.lightcoral;$He's a humiliation fetishist!@@
 	<<set $slaves[$i].fetishKnown = 1>>
 <</if>>
 <</if>>
@@ -322,29 +322,29 @@
 	<<if ($slaves[$i].vagina == 0)>>
 		<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength > 60)>>
 			<<if $slaves[$i].fetishKnown == 1>>
-				She's such an anal whore that she's @@.hotpink;perversely proud@@ of the chastity belt that covers her neglected pussy.
+				$He's such an anal whore that $he's @@.hotpink;perversely proud@@ of the chastity belt that covers $his neglected pussy.
 				<<set $slaves[$i].devotion += 1>>
 			<<else>>
-				She @@.hotpink;doesn't seem to mind@@ that her pussy is going unused.
+				$He @@.hotpink;doesn't seem to mind@@ that $his pussy is going unused.
 				<<set $slaves[$i].devotion += 1>>
 			<</if>>
 		<<else>>
-			She @@.mediumaquamarine;trusts@@ that you're using the chastity belt she wears to save her virginity for something special.
+			$He @@.mediumaquamarine;trusts@@ that you're using the chastity belt $he wears to save $his virginity for something special.
 			<<set $slaves[$i].trust += 1>>
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].energy > 60)>>
 		<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength > 60)>>
 			<<if $slaves[$i].fetishKnown == 1>>
-				She's such a butthole slut that she doesn't care about having her pussy kept off limits.
+				$He's such a butthole slut that $he doesn't care about having $his pussy kept off limits.
 			<<else>>
-				She seems to like that her chastity is directing all the dicks into her ass.
+				$He seems to like that $his chastity is directing all the dicks into $his ass.
 				<<set $slaves[$i].devotion += 1>>
 			<</if>>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She's such a nympho that having her butthole do double duty for her pussy doesn't bother her.
+			$He's such a nympho that having $his butthole do double duty for $his pussy doesn't bother $him.
 		<<else>>
-			She has a healthy sexuality, and misses vaginal sex, @@.red;reducing her sex drive slightly.@@
+			$He has a healthy sexuality, and misses vaginal sex, @@.red;reducing $his sex drive slightly.@@
 			<<set $slaves[$i].energy -= 1>>
 		<</if>>
 		<</if>>
@@ -357,32 +357,32 @@
 	<<if ($slaves[$i].hormoneBalance < 100)>>
 	<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength > 60)>>
 		<<if $slaves[$i].fetishKnown == 1>>
-			She's such a butthole slut that she manages to get off just fine despite her dick being kept untouchable and soft behind a chastity cage.
+			$He's such a butthole slut that $he manages to get off just fine despite $his dick being kept untouchable and soft behind a chastity cage.
 		<<else>>
-			She seems to be getting off just fine without access to her dick.
+			$He seems to be getting off just fine without access to $his dick.
 		<</if>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		Her sex drive is so overcharged that she manages to orgasm often despite the chastity cage that <<if ($slaves[$i].balls == 0)>>prevents her or anyone else from touching her soft cock<<else>>keeps her dick soft and untouched<</if>>; it's almost always dripping a stream of precum.
+		$His sex drive is so overcharged that $he manages to orgasm often despite the chastity cage that <<if ($slaves[$i].balls == 0)>>prevents $him or anyone else from touching $his soft cock<<else>>keeps $his dick soft and untouched<</if>>; it's almost always dripping a stream of precum.
 	<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishStrength > 60) && canAchieveErection($slaves[$i])>>
 		<<if $slaves[$i].fetishKnown == 1>>
-			She's such a masochist that the pain of even getting semi-hard in her chastity cage turns her on even more, @@.green;slightly increasing her sexual appetite.@@
+			$He's such a masochist that the pain of even getting semi-hard in $his chastity cage turns $him on even more, @@.green;slightly increasing $his sexual appetite.@@
 			<<set $slaves[$i].energy++>>
 		<<else>>
-			Her chastity cage is always painfully tight around her semi-hard dick; something that seems to be arousing to her, only to make it even more painful.
+			$His chastity cage is always painfully tight around $his semi-hard dick; something that seems to be arousing to $him, only to make it even more painful.
 			<<set $slaves[$i].energy++>>
 		<</if>>
 	<<elseif $slaves[$i].sexualFlaw == "neglectful">>
-		Her soft, constrained dick is of little concern to her. She doesn't need release during sex.
+		$His soft, constrained dick is of little concern to $him. $He doesn't need release during sex.
 	<<elseif ($slaves[$i].balls == 0)>>
-		Though she's a soft, ballsless bitch, having her dick guarded against all stimulation by a chastity cage reduces her enjoyment of intercourse a bit, @@.red;slightly reducing her sexual appetite.@@
+		Though $he's a soft, ballsless bitch, having $his dick guarded against all stimulation by a chastity cage reduces $his enjoyment of intercourse a bit, @@.red;slightly reducing $his sexual appetite.@@
 		<<set $slaves[$i].energy -= 1>>
 	<<else>>
-		She has a healthy sexuality, but her chastity cage punishes it by making it very uncomfortable to achieve erection. She often goes without release rather than pushing through, @@.red;reducing her sex drive.@@
+		$He has a healthy sexuality, but $his chastity cage punishes it by making it very uncomfortable to achieve erection. $He often goes without release rather than pushing through, @@.red;reducing $his sex drive.@@
 		<<set $slaves[$i].energy -= 2>>
 		<<if ($slaves[$i].devotion > 95)>>
-			She's so devoted to you that she doesn't let this affect her opinion of you.
+			$He's so devoted to you that $he doesn't let this affect $his opinion of you.
 		<<else>>
-			She's @@.mediumorchid;a bit resentful@@ and @@.gold;much less trusting@@ under all this discomfort.
+			$He's @@.mediumorchid;a bit resentful@@ and @@.gold;much less trusting@@ under all this discomfort.
 			<<set $slaves[$i].devotion -= 1, $slaves[$i].trust -= 1>>
 		<</if>>
 	<</if>>
@@ -394,7 +394,7 @@
 <<if ($arcologies[0].FSChattelReligionist != "unset")>>
 <<if ($slaves[$i].behavioralQuirk == "sinful")>>
 <<if ($slaves[$i].clothes == "a fallen nuns habit") || ($slaves[$i].clothes == "a chattel habit") || ($slaves[$i].clothes == "a succubus outfit")>>
-	She's @@.hotpink;gratified@@ by the sacrilegious clothing she's wearing, glad to be an obvious anathema to old world faiths.
+	$He's @@.hotpink;gratified@@ by the sacrilegious clothing $he's wearing, glad to be an obvious anathema to old world faiths.
 	<<set $slaves[$i].devotion += 1>>
 <</if>>
 <</if>>
@@ -406,120 +406,120 @@
 <<if $slaves[$i].collar == "preg biometrics">>
 	<<if $slaves[$i].fetish == "pregnancy" && $slaves[$i].fetishKnown == 1>>
 		<<if $slaves[$i].preg < -1>>
-			Her collar's display reveals all sorts of personal information about her womb, which as an infertile pregnancy fetishist, is @@.mediumorchid;crippling@@ to her.
+			$His collar's display reveals all sorts of personal information about her womb, which as an infertile pregnancy fetishist, is @@.mediumorchid;crippling@@ to $him.
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her collar's display reveals all sorts of personal information about her womb, which as a pregnancy fetishist, is @@.hotpink;pleasing@@ to her.
+			$His collar's display reveals all sorts of personal information about her womb, which as a pregnancy fetishist, is @@.hotpink;pleasing@@ to $him.
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif $slaves[$i].fetish == "pregnancy" && $slaves[$i].fetishKnown == 0>>
 		<<if $slaves[$i].preg < -1>>
-		Her collar's display reveals all sorts of personal information about her womb, which nearly causes her to have a @@.mediumorchid;mental breakdown@@, painting her as an infertile @@.lightcoral;pregnancy fetishist.@@
+		$His collar's display reveals all sorts of personal information about her womb, which nearly causes her to have a @@.mediumorchid;mental breakdown@@, painting her as an infertile @@.lightcoral;pregnancy fetishist.@@
 		<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-		Her collar's display reveals all sorts of personal information about her womb, @@.hotpink;oddly exciting@@ her. It would seem she has a @@.lightcoral;pregnancy fetish!@@
+		$His collar's display reveals all sorts of personal information about her womb, @@.hotpink;oddly exciting@@ $him. It would seem $he has a @@.lightcoral;pregnancy fetish!@@
 		<<set $slaves[$i].devotion += 1>>
 		<</if>>
 		<<set $slaves[$i].fetishKnown = 1>>
 	<<elseif  $slaves[$i].fetish == "humiliation" && $slaves[$i].fetishKnown == 1>>
-		Her collar's display reveals all sorts of personal information about her womb, which is completely humiliating, and @@.hotpink;pleasing@@ to her.
+		$His collar's display reveals all sorts of personal information about her womb, which is completely humiliating, and @@.hotpink;pleasing@@ to $him.
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif  $slaves[$i].fetish == "humiliation" && $slaves[$i].fetishKnown == 0>>
-		Her collar's display reveals all sorts of personal information about her womb, which is completely humiliating, and @@.hotpink;oddly pleasing@@ to her. She seems to have a @@.lightcoral;humiliation fetish!@@
+		$His collar's display reveals all sorts of personal information about her womb, which is completely humiliating, and @@.hotpink;oddly pleasing@@ to $him. $He seems to have a @@.lightcoral;humiliation fetish!@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].fetishKnown = 1>>
 	<<elseif $slaves[$i].devotion <= -20>>
-		Her collar's display reveals all sorts of personal information about her fertility, filling her @@.mediumorchid;with disgust@@ that you that you consider her womb little more than property, as well as @@.gold;fear@@ that it will soon be swelling with an unwelcome child.
+		$His collar's display reveals all sorts of personal information about her fertility, filling her @@.mediumorchid;with disgust@@ that you that you consider her womb little more than property, as well as @@.gold;fear@@ that it will soon be swelling with an unwelcome child.
 		<<set $slaves[$i].devotion -= 2>>
 		<<set $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].devotion <= 20)>>
-		Her collar's display reveals all sorts of personal information about her womb, completely @@.hotpink;degrading her@@ and making her @@.gold;fear@@ her new life.
+		$His collar's display reveals all sorts of personal information about her womb, completely @@.hotpink;degrading her@@ and making her @@.gold;fear@@ her new life.
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust -= 2>>
 	<<elseif $slaves[$i].devotion >= 20>>
-		Her collar's display reveals all sorts of personal information about her womb, filling her @@.hotpink;with pride@@ that you think her womb is worth attention.
+		$His collar's display reveals all sorts of personal information about her womb, filling her @@.hotpink;with pride@@ that you think her womb is worth attention.
 		<<set $slaves[$i].devotion += 1>>
 	<</if>>
 <<elseif ($slaves[$i].devotion <= 20)>>
 	<<if ($slaves[$i].devotion <= 20) && (($slaves[$i].collar == "tight steel") || ($slaves[$i].collar == "cruel retirement counter"))>>
-		The tight metal collar she's wearing @@.gold;reminds her to be afraid@@ every time she takes a breath.
+		The tight metal collar $he's wearing @@.gold;reminds her to be afraid@@ every time $he takes a breath.
 		<<set $slaves[$i].trust -= 1>>
 	<<elseif ($slaves[$i].collar == "uncomfortable leather") || ($slaves[$i].collar == "neck corset")>>
-		The uncomfortable leather collar she's wearing @@.gold;reminds her to be afraid@@ every time she turns her head.
+		The uncomfortable leather collar $he's wearing @@.gold;reminds her to be afraid@@ every time $he turns her head.
 		<<set $slaves[$i].trust -= 1>>
 	<<elseif ($slaves[$i].collar == "dildo gag")>>
-		The dildo gag she's wearing @@.gold;reminds her to be afraid@@ with every breath she must carefully take through her nose.
+		The dildo gag $he's wearing @@.gold;reminds her to be afraid@@ with every breath $he must carefully take through her nose.
 		<<set $slaves[$i].trust -= 1>>
 	<<elseif ($slaves[$i].collar == "ball gag")>>
-		The ball gag she's wearing keeps her mouth filled and, since she can't speak out, forces her @@.hotpink;to submit@@ to your will. She @@.gold;fears@@ for her safety with every suppressed word.
+		The ball gag $he's wearing keeps her mouth filled and, since $he can't speak out, forces her @@.hotpink;to submit@@ to your will. $He @@.gold;fears@@ for her safety with every suppressed word.
 		<<set $slaves[$i].devotion++, $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].collar == "bit gag")>>
-		The uncomfortable bit gag she's wearing keeps her mouth locked and, since she can't speak out, forces her @@.hotpink;to submit@@ to your will. She @@.gold;fears@@ for her safety with every suppressed word.
+		The uncomfortable bit gag $he's wearing keeps her mouth locked and, since $he can't speak out, forces her @@.hotpink;to submit@@ to your will. $He @@.gold;fears@@ for her safety with every suppressed word.
 		<<set $slaves[$i].devotion++, $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].collar == "porcelain mask")>>
-		The beautiful porcelain mask she's wearing slowly erodes her identity, forcing her @@.hotpink;to submit@@ to your will. She @@.gold;questions@@ who she is.
+		The beautiful porcelain mask $he's wearing slowly erodes her identity, forcing her @@.hotpink;to submit@@ to your will. $He @@.gold;questions@@ who $he is.
 		<<set $slaves[$i].devotion++, $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].collar == "massive dildo gag")>>
-		The enormous dildo gag she's wearing @@.gold;terrifies her@@ that she will soon be choking down cocks of similar size. She can feel her throat stretching around the giant dildo, and @@.mediumorchid;resents you@@ for tormenting her this way.
+		The enormous dildo gag $he's wearing @@.gold;terrifies her@@ that $he will soon be choking down cocks of similar size. $He can feel her throat stretching around the giant dildo, and @@.mediumorchid;resents you@@ for tormenting her this way.
 		<<set $slaves[$i].devotion -= 1, $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].collar == "shock punishment")>>
-		The shock collar she's wearing makes her frequent, deserved punishments @@.gold;immediate, inescapable,@@ and @@.mediumorchid;awful.@@
+		The shock collar $he's wearing makes her frequent, deserved punishments @@.gold;immediate, inescapable,@@ and @@.mediumorchid;awful.@@
 		<<set $slaves[$i].devotion -= 2, $slaves[$i].trust -= 5>>
 		<<if ($slaves[$i].devotion < -20) && ($slaves[$i].behavioralFlaw != "odd")>>
-			Since she's rebellious her life is near-constant electroshock torture. Her resistance is @@.hotpink;worn down by the agony@@ and she is @@.gold;thoroughly cowed,@@ but she has been @@.red;emotionally damaged@@ by the experience to the extent that further shock torture is not likely to affect her as greatly.
+			Since $he's rebellious her life is near-constant electroshock torture. $His resistance is @@.hotpink;worn down by the agony@@ and $he is @@.gold;thoroughly cowed,@@ but $he has been @@.red;emotionally damaged@@ by the experience to the extent that further shock torture is not likely to affect her as greatly.
 			<<set $slaves[$i].devotion += 10>>
 			<<set $slaves[$i].trust -= 10>>
 			<<set $slaves[$i].behavioralFlaw = "odd">>
 		<</if>>
 	<<elseif ($slaves[$i].devotion >= -20)>>
-		She is @@.mediumorchid;inappropriately proud@@ and @@.mediumaquamarine;confident@@ of the nice collar she's wearing.
+		$He is @@.mediumorchid;inappropriately proud@@ and @@.mediumaquamarine;confident@@ of the nice collar $he's wearing.
 		<<set $slaves[$i].devotion -= 5, $slaves[$i].trust += 3>>
 	<</if>>
 <<else>>
 	<<if (($slaves[$i].collar == "heavy gold") || ($slaves[$i].collar == "ancient Egyptian"))>>
-		She bears the burden of her heavy gold collar with @@.mediumaquamarine;confidence.@@
+		$He bears the burden of her heavy gold collar with @@.mediumaquamarine;confidence.@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].collar == "bowtie")>>
-		The bowtie and shirt collar she wears fill her with @@.mediumaquamarine;confidence,@@ since although they conceal a more traditional slave collar that can be used to restrain her, they don't look like it.
+		The bowtie and shirt collar $he wears fill her with @@.mediumaquamarine;confidence,@@ since although they conceal a more traditional slave collar that can be used to restrain her, they don't look like it.
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].collar == "pretty jewelry") || ($slaves[$i].collar == "nice retirement counter") || ($slaves[$i].collar == "satin choker") || ($slaves[$i].collar == "nice retirement counter") || ($slaves[$i].collar == "stylish leather") || ($slaves[$i].collar == "silk ribbon")>>
-		The lovely collar she wears fills her with @@.mediumaquamarine;confidence.@@
+		The lovely collar $he wears fills her with @@.mediumaquamarine;confidence.@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].collar == "leather with cowbell")>>
 		<<if ($slaves[$i].fetish == "boobs") && ($slaves[$i].fetishStrength > 95)>>
-		  She @@.hotpink;loves@@ how her cow collar encourages everyone to fuck her udders.
+		  $He @@.hotpink;loves@@ how her cow collar encourages everyone to fuck her udders.
 		  <<set $slaves[$i].devotion += 1>>
 		<<elseif ($slaves[$i].fetish == "boobs") || ($slaves[$i].energy > 95)>>
-		  She @@.hotpink;likes@@ how her cow collar encourages everyone to touch her udders.
+		  $He @@.hotpink;likes@@ how her cow collar encourages everyone to touch her udders.
 		  <<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].collar == "ball gag" || $slaves[$i].collar == "bit gag")>>
 		<<if ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishStrength > 95)>>
-		  She @@.hotpink;loves@@ how her gag forces her to keep silent.
+		  $He @@.hotpink;loves@@ how her gag forces her to keep silent.
 		  <<set $slaves[$i].devotion += 1>>
 		<<elseif ($slaves[$i].fetish == "submissive") || ($slaves[$i].energy > 95)>>
-		  She @@.hotpink;likes@@ how her gag forces her to keep silent.
+		  $He @@.hotpink;likes@@ how her gag forces her to keep silent.
 		  <<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].collar == "porcelain mask")>>
 		<<if ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishStrength > 95)>>
-		  She @@.hotpink;loves@@ how her mask makes her beautiful enough for you.
+		  $He @@.hotpink;loves@@ how her mask makes her beautiful enough for you.
 		  <<set $slaves[$i].devotion += 1>>
 		<<elseif ($slaves[$i].fetish == "submissive") || ($slaves[$i].energy > 95)>>
-		  She @@.hotpink;likes@@ how her mask makes her beautiful enough for you.
+		  $He @@.hotpink;likes@@ how her mask makes her beautiful enough for you.
 		  <<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].collar == "dildo gag")>>
   <<if $slaves[$i].oralSkill <= 10>>
-	Living gagged by a dildo, she can't help but get better at having things down her throat.
+	Living gagged by a dildo, $he can't help but get better at having things down her throat.
 	<<set $skillIncrease = 5>><<OralSkillIncrease $slaves[$i]>>
   <</if>>
 <</if>>
 <<if ($slaves[$i].collar == "massive dildo gag")>>
 	<<if $slaves[$i].oralSkill < 75>>
-	Living gagged by such an immense dildo, she can't help but get even better at having giant things rammed down her throat.
+	Living gagged by such an immense dildo, $he can't help but get even better at having giant things rammed down her throat.
 	<<set $skillIncrease = 5>><<OralSkillIncrease $slaves[$i]>>
 	<</if>>
 <</if>>
@@ -531,7 +531,7 @@
 <<if $slaves[$i].bellyAccessory != "none">>
 <<if $slaves[$i].bellyAccessory == "an extreme corset">>
 	<<if $slaves[$i].belly >= 100000>>
-		Her straining corset finally gives in to her giant stomach and bursts, freeing her belly.
+		$His straining corset finally gives in to her giant stomach and bursts, freeing her belly.
 		<<set $slaves[$i].bellyAccessory = "none">>
 	<<elseif $slaves[$i].bellyPreg >= 1500>>
 		The tight corseting has @@.orange;caused her to miscarry,@@ which @@.red;damages her health.@@
@@ -542,24 +542,24 @@
 		<<if $slaves[$i].reservedChildren > 0>><<set $reservedChildren -= $slaves[$i].reservedChildren>><<set $slaves[$i].reservedChildren = 0>><</if>>
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 			<<if $slaves[$i].devotion < -50>>
-				She is @@.mediumorchid;filled with violent, consuming hatred@@ and @@.gold;fear.@@ Even though she knew her baby was destined for a slave orphanage, it seems she cared for it and views you as its killer.
+				$He is @@.mediumorchid;filled with violent, consuming hatred@@ and @@.gold;fear.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it and views you as its killer.
 				<<set $slaves[$i].devotion -= 25, $slaves[$i].trust -= 25>>
 			<<elseif $slaves[$i].devotion < -20>>
-				She is @@.mediumorchid;afflicted by desperate, inconsolable grief@@ and @@.gold;horror.@@ Even though she knew her baby was destined for a slave orphanage, it seems she cared for it.
+				$He is @@.mediumorchid;afflicted by desperate, inconsolable grief@@ and @@.gold;horror.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it.
 				<<set $slaves[$i].devotion -= 10, $slaves[$i].trust -= 20>>
 			<<elseif $slaves[$i].devotion <= 20>>
-				She is @@.mediumorchid;consumed by enduring sorrow@@ and @@.gold;horror.@@ Even though she knew her baby was destined for a slave orphanage, it seems she cared for it.
+				$He is @@.mediumorchid;consumed by enduring sorrow@@ and @@.gold;horror.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it.
 				<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<elseif $slaves[$i].devotion <= 50>>
-				She is dully obedient. She has been broken to slave life so thoroughly that even this is neither surprising nor affecting.
+				$He is dully obedient. $He has been broken to slave life so thoroughly that even this is neither surprising nor affecting.
 			<<else>>
-				She is @@.hotpink;pleased by this stark development@@, since she is so attentive to your will. She also expects she'll be able to fuck better now.
+				$He is @@.hotpink;pleased by this stark development@@, since $he is so attentive to your will. $He also expects $he'll be able to fuck better now.
 				<<set $slaves[$i].devotion += 4>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].waist <= -95>>
-			Her waist is so absurd that her extreme corsetage does not affect her further.
+			$His waist is so absurd that her extreme corsetage does not affect her further.
 		<<else>>
 			@@.lime;The extreme corseting narrows her waist.@@
 			<<set $slaves[$i].waist -= 5>>
@@ -571,13 +571,13 @@
 				<<set $slaves[$i].health -= 5>>
 				<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 					<<if $slaves[$i].devotion < -20>>
-						She @@.hotpink;barely has breath to think,@@ though she has enough to @@.gold;fear.@@
+						$He @@.hotpink;barely has breath to think,@@ though $he has enough to @@.gold;fear.@@
 						<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 2>>
 					<</if>>
 					<<if ($slaves[$i].fetish == "masochist")>>
 						During sex, every breath in and out is agonizing.
 						<<if ($slaves[$i].fetishKnown == 0)>>
-							Despite this, she seems to get off on the pain; she's a @@.lightcoral;natural masochist.@@
+							Despite this, $he seems to get off on the pain; $he's a @@.lightcoral;natural masochist.@@
 							<<set $slaves[$i].fetishKnown = 1>>
 						<<else>>
 							It only adds to her pleasure, much to her @@.hotpink;enjoyment.@@
@@ -589,7 +589,7 @@
 						<</if>>
 					<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 						<<if _fetishChangeChance > random(0,100)>>
-							During sex, every breath in and out is agonizing. She learns to come in spite of, and then @@.lightcoral;because of the pain.@@
+							During sex, every breath in and out is agonizing. $He learns to come in spite of, and then @@.lightcoral;because of the pain.@@
 							<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 						<</if>>
 					<</if>>
@@ -599,12 +599,12 @@
 	<</if>>
 <<elseif $slaves[$i].bellyAccessory == "a corset">>
 	<<if $slaves[$i].bellyPreg >= 1500>>
-		Her corset lets her growing belly protrude comfortably, preventing any danger to her pregnancy but preventing any effect on her waist.
+		$His corset lets her growing belly protrude comfortably, preventing any danger to her pregnancy but preventing any effect on her waist.
 	<<elseif $slaves[$i].belly >= 1500>>
-		Her corset lets her rounded belly protrude comfortably but prevents any effect on her waist.
+		$His corset lets her rounded belly protrude comfortably but prevents any effect on her waist.
 	<<else>>
 		<<if $slaves[$i].waist < -40>>
-			Her waist is so narrow that her corsetage does not affect it.
+			$His waist is so narrow that her corsetage does not affect it.
 		<<else>>
 			@@.lime;The corseting narrows her waist.@@
 			<<set $slaves[$i].waist -= 3>>
@@ -612,37 +612,37 @@
 	<</if>>
 <<elseif setup.fakeBellies.includes($bellyAccessory)>>
 	<<if $slaves[$i].weight > 130>>
-		$pronounCap has trouble keeping $possessive fake belly strapped around $possessive huge gut, forcing it to be removed to prevent damage.
+		$He has trouble keeping $his fake belly strapped around $his huge gut, forcing it to be removed to prevent damage.
 		<<set $slaves[$i].bellyAccessory = "none">>
 	<<else>>
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 			<<if ($slaves[$i].sexualFlaw == "breeder")>>
-				She @@.mediumorchid;resents@@ being forced to carry a fake pregnancy instead of a real one.
+				$He @@.mediumorchid;resents@@ being forced to carry a fake pregnancy instead of a real one.
 				<<set $slaves[$i].devotion -= 5>>
 			<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -50) && ($slaves[$i].fetish == "pregnancy")>>
 				<<if ($slaves[$i].fetishStrength > 60)>>
-					As a pregnancy fetishist, she @@.hotpink;openly enjoys@@ wearing her fake belly around.
+					As a pregnancy fetishist, $he @@.hotpink;openly enjoys@@ wearing her fake belly around.
 					<<set $slaves[$i].devotion += 2>>
 				<<else>>
-					Her interest in pregnancy helps her @@.hotpink;enjoy@@ wearing a fake belly.
+					$His interest in pregnancy helps her @@.hotpink;enjoy@@ wearing a fake belly.
 					<<set $slaves[$i].devotion += 1>>
 				<</if>>
 			<<elseif ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].devotion > 50)>>
-				She carries her fake belly @@.hotpink;with pride@@, eager for the day you give her one of her own.
+				$He carries her fake belly @@.hotpink;with pride@@, eager for the day you give her one of her own.
 				<<set $slaves[$i].devotion += 1>>
 			<<elseif ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].pregKnown == 0) && ($slaves[$i].ovaries ==1 || $slaves[$i].mpreg == 1)>>
-				The fake belly she wears @@.mediumorchid;reminds her@@ that she isn't pregnant with a child.
+				The fake belly $he wears @@.mediumorchid;reminds her@@ that $he isn't pregnant with a child.
 				<<set $slaves[$i].devotion -= 1>>
 			<<elseif ($slaves[$i].vagina == 0) && isFertile($slaves[$i]) && $arcologies[0].FSRepopulationFocus == "unset" && $slaves[$i].devotion <= 20>>
-				The fake belly she wears @@.gold;worries@@ her that you will soon put a real baby in her.
+				The fake belly $he wears @@.gold;worries@@ her that you will soon put a real baby in $him.
 				<<set $slaves[$i].trust -= 1>>
 			<</if>>
 			<<if $slaves[$i].bellyAccessory == "a huge empathy belly" && $slaves[$i].fetish != "pregnancy">>
 				<<if $slaves[$i].devotion > 50>>
-					Her full-sized twins belly is heavy and unwieldy, but she carries it @@.hotpink;proudly@@ for you.
+					$His full-sized twins belly is heavy and unwieldy, but $he carries it @@.hotpink;proudly@@ for you.
 					<<set $slaves[$i].devotion += 1>>
 				<<else>>
-					Her full-sized twins belly is heavy and unwieldy, and she @@.mediumorchid;despises@@ being forced to bear it.
+					$His full-sized twins belly is heavy and unwieldy, and $he @@.mediumorchid;despises@@ being forced to bear it.
 					<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 			<</if>>
@@ -651,7 +651,7 @@
 					Pretending to be pregnant has @@.lightcoral;furthered her interest in pregnancy.@@
 					<<set $slaves[$i].fetishStrength += 4>>
 				<<elseif ($slaves[$i].fetishStrength <= 40)>>
-					Lugging around a fake pregnancy for the week has shown her she @@.coral;isn't as into pregnancy as she thought.@@
+					Lugging around a fake pregnancy for the week has shown her $he @@.coral;isn't as into pregnancy as $he thought.@@
 					<<set $slaves[$i].fetish = "none", $slaves[$i].fetishStrength = 10>>
 				<</if>>
 			<</if>>
@@ -662,41 +662,41 @@
 
 <<if ($slaves[$i].shoes == "heels")>>
 	<<if ($slaves[$i].amp < 0)>>
-		Her P-Limb legs work just as well in heels as they do out of them.
+		$His P-Limb legs work just as well in heels as they do out of them.
 	<<elseif $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 		<<if $slaves[$i].devotion < -20>>
-			She @@.mediumorchid;resents being forced@@ to wear high heels.
+			$He @@.mediumorchid;resents being forced@@ to wear high heels.
 			<<set $slaves[$i].devotion -= 2>>
 		<</if>>
 	<</if>>
 <<elseif ($slaves[$i].shoes == "boots")>>
 	<<if ($slaves[$i].amp < 0)>>
-		Her P-Limb legs work just as well in boots as they do out of them.
+		$His P-Limb legs work just as well in boots as they do out of them.
 	<<elseif $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 		<<if $slaves[$i].devotion < -20>>
-			She @@.mediumorchid;resents being forced@@ to wear high heeled boots.
+			$He @@.mediumorchid;resents being forced@@ to wear high heeled boots.
 			<<set $slaves[$i].devotion -= 2>>
 		<</if>>
 	<</if>>
 <<elseif ($slaves[$i].shoes == "extreme heels")>>
 	<<if ($slaves[$i].amp < 0)>>
-		Her P-Limb legs work just as well in extreme heels as they do out of them.
+		$His P-Limb legs work just as well in extreme heels as they do out of them.
 	<<elseif $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 		<<if $slaves[$i].devotion < -20>>
-			She @@.mediumorchid;resents being forced@@ to wear @@.gold;painfully@@ high heels.
+			$He @@.mediumorchid;resents being forced@@ to wear @@.gold;painfully@@ high heels.
 			<<set $slaves[$i].devotion -= 2>>
 			<<set $slaves[$i].trust -= 2>>
 		<<elseif ($slaves[$i].fetish == "masochist")>>
-			It is difficult to walk in her extreme heels, but she
+			It is difficult to walk in her extreme heels, but $he
 			<<if ($slaves[$i].fetishKnown == 0)>>
-				seems to enjoy every painful step; she's a @@.lightcoral;natural masochist.@@
+				seems to enjoy every painful step; $he's a @@.lightcoral;natural masochist.@@
 				<<set $slaves[$i].fetishKnown = 1>>
 			<<else>>
 				@@.hotpink;appreciates@@ every painful step you make her take.
 				<<set $slaves[$i].devotion += 1>>
 			<</if>>
 		<<else>>
-			She is kept @@.hotpink;mindful@@ and @@.gold;fearful@@ by the difficulty of walking in her extreme heels.
+			$He is kept @@.hotpink;mindful@@ and @@.gold;fearful@@ by the difficulty of walking in her extreme heels.
 			<<set $slaves[$i].devotion += 1>>
 			<<set $slaves[$i].trust -= 1>>
 		<</if>>
@@ -706,12 +706,12 @@
 <<else>>
 	<<if ($slaves[$i].heels == 1) && !canWalk($slaves[$i]) && ($slaves[$i].fetish != "mindbroken")>>
 		<<if ($slaves[$i].devotion >= -20) && ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1)>>
-			She @@.hotpink;loves being forced@@ to crawl around like some kind of animal.
+			$He @@.hotpink;loves being forced@@ to crawl around like some kind of animal.
 			<<set $slaves[$i].devotion += 1>>
 		<<elseif $slaves[$i].devotion > 50>>
-			She accepts being forced to crawl around on all fours.
+			$He accepts being forced to crawl around on all fours.
 		<<else>>
-			She @@.mediumorchid;resents being forced@@ to crawl around like some kind of animal, but it keeps her properly @@.gold;afraid.@@
+			$He @@.mediumorchid;resents being forced@@ to crawl around like some kind of animal, but it keeps her properly @@.gold;afraid.@@
 			<<set $slaves[$i].devotion -= 2,  $slaves[$i].trust -= 4>>
 		<</if>>
 	<</if>>
@@ -723,7 +723,7 @@
 		Constantly wearing a dildo in her virgin pussy @@.lime;gets it used to penetration.@@
 		<<set $slaves[$i].vagina += 1>>
 	<<else>>
-		Her pussy easily accommodates the dildo she's required to wear.
+		$His pussy easily accommodates the dildo $he's required to wear.
 	<</if>>
 	<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 		<<if ($slaves[$i].sexualFlaw == "hates penetration") && (random(1,100) > 50)>>
@@ -736,12 +736,12 @@
 	Constantly wearing a dildo in her virgin pussy @@.lime;gets it used to penetration.@@
 	<<set $slaves[$i].vagina += 1>>
 	<<else>>
-		Her pussy easily accommodates the dildo she's required to wear.
+		$His pussy easily accommodates the dildo $he's required to wear.
 	<</if>>
 	<<if $slaves[$i].fuckdoll == 0>>
 	<<if $slaves[$i].fetish != "mindbroken">>
 	<<if ($slaves[$i].sexualFlaw == "hates penetration") && (random(1,100) > 50)>>
-		The habit @@.green;reduces her dislike of having her pussy filled.@@
+		The habit @@.green;reduces $his dislike of having $his pussy filled.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<<if ($slaves[$i].sexualQuirk == "size queen")>>
@@ -759,10 +759,10 @@
 			Constantly wearing a large dildo in her pussy @@.lime;stretches it out.@@
 			<<set $slaves[$i].vagina += 1>>
 		<<else>>
-			The large dildo she's required to wear is a stretch for her cunt, but pussies are resilient and hers isn't seriously affected.
+			The large dildo $he's required to wear is a stretch for her cunt, but pussies are resilient and hers isn't seriously affected.
 		<</if>>
 	<<else>>
-		Her pussy accommodates the large dildo she's required to wear.
+		$His pussy accommodates the large dildo $he's required to wear.
 	<</if>>
 	<<if $slaves[$i].fuckdoll == 0>>
 	<<if $slaves[$i].fetish != "mindbroken">>
@@ -788,10 +788,10 @@
 			Constantly wearing a large dildo in her pussy @@.lime;stretches it out.@@
 			<<set $slaves[$i].vagina += 1>>
 		<<else>>
-			The large dildo she's required to wear is a stretch for her cunt, but pussies are resilient and hers isn't seriously affected.
+			The large dildo $he's required to wear is a stretch for her cunt, but pussies are resilient and hers isn't seriously affected.
 		<</if>>
 	<<else>>
-		Her pussy accommodates the large dildo she's required to wear.
+		$His pussy accommodates the large dildo $he's required to wear.
 	<</if>>
 	<<if ($slaves[$i].vagina < 2)>>
 	<<if $slaves[$i].fuckdoll == 0>>
@@ -817,13 +817,13 @@
 		<<if $slaves[$i].fuckdoll == 0>>
 		<<if $slaves[$i].fetish != "mindbroken">>
 		<<if ($slaves[$i].sexualQuirk == "size queen")>>
-			She thinks of the massive dildo stretching out her womanhood as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, truly anything, inside her newly capacious cunt.
+			$He thinks of the massive dildo stretching out her womanhood as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, truly anything, inside her newly capacious cunt.
 			<<set $slaves[$i].devotion += 4>>
 		<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			She gets off on the agony of having her cunt @@.lime;permanently stretched@@ by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+			$He gets off on the agony of having her cunt @@.lime;permanently stretched@@ by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 		<<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			She submits to the agony of having her cunt @@.lime;permanently stretched@@ by a huge dildo. Having her hole ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+			$He submits to the agony of having her cunt @@.lime;permanently stretched@@ by a huge dildo. Having her hole ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 		<<else>>
 			The agony of having her cunt @@.lime;permanently stretched@@ by a huge dildo fills her with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
@@ -833,20 +833,20 @@
 		<</if>>
 		<<set $slaves[$i].vagina += 1>>
 	<<else>>
-		Her cavernous pussy accommodates the huge dildo she's required to wear.
+		$His cavernous pussy accommodates the huge dildo $he's required to wear.
 	<</if>>
 <<elseif ($slaves[$i].vaginalAccessory == "long, huge dildo")>>
 	<<if ($slaves[$i].vagina < 4)>>
 		<<if $slaves[$i].fuckdoll == 0>>
 		<<if $slaves[$i].fetish != "mindbroken">>
 		<<if ($slaves[$i].sexualQuirk == "size queen")>>
-			She thinks of the massive dildo stretching out her womanhood and stomach as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, arms, truly anything, inside her newly capacious cunt.
+			$He thinks of the massive dildo stretching out her womanhood and stomach as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, arms, truly anything, inside her newly capacious cunt.
 			<<set $slaves[$i].devotion += 4>>
 		<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			She gets off on the agony of having her cunt @@.lime;permanently stretched@@ and her cervix penetrated by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+			$He gets off on the agony of having her cunt @@.lime;permanently stretched@@ and her cervix penetrated by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 		<<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			She submits to the agony of having her cunt @@.lime;permanently stretched@@ and her cervix penetrated by a huge dildo. Having her hole and cervix ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+			$He submits to the agony of having her cunt @@.lime;permanently stretched@@ and her cervix penetrated by a huge dildo. Having her hole and cervix ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 		<<else>>
 			The agony of having her cunt @@.lime;permanently stretched@@ and her cervix penetrated by a huge dildo fills her with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
@@ -856,7 +856,7 @@
 		<</if>>
 		<<set $slaves[$i].vagina += 1>>
 	<<else>>
-		Her cavernous pussy accommodates the huge dildo she's required to wear.
+		$His cavernous pussy accommodates the huge dildo $he's required to wear.
 	<</if>>
 <</if>>
 <<if ($slaves[$i].vaginalAccessory == "long, huge dildo") || ($slaves[$i].vaginalAccessory == "long, large dildo") || ($slaves[$i].vaginalAccessory == "long dildo")>>
@@ -867,20 +867,20 @@
 		<<if lastPregRule($slaves[$i],$defaultRules)>><<set $slaves[$i].preg = -1>><<else>><<set $slaves[$i].preg = 0>><</if>>
 		<<set $slaves[$i].pregType = 0, WombFlush($slaves[$i]), $slaves[$i].pregKnown = 0, $slaves[$i].pregWeek = -4>>
 		<<run SetBellySize($slaves[$i])>>
-		She is
+		$He is
 		<<if $slaves[$i].devotion < -50>>
-		  @@.mediumorchid;filled with violent, consuming hatred@@ and @@.gold;fear.@@ Even though she knew her baby was destined for a slave orphanage, it seems she cared for it and views you as its killer.
+		  @@.mediumorchid;filled with violent, consuming hatred@@ and @@.gold;fear.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it and views you as its killer.
 		  <<set  $slaves[$i].devotion -= 25,  $slaves[$i].trust -= 25>>
 		<<elseif $slaves[$i].devotion < -20>>
-		  @@.mediumorchid;afflicted by desperate, inconsolable grief@@ and @@.gold;horror.@@ Even though she knew her baby was destined for a slave orphanage, it seems she cared for it.
+		  @@.mediumorchid;afflicted by desperate, inconsolable grief@@ and @@.gold;horror.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it.
 		  <<set  $slaves[$i].devotion -= 10,  $slaves[$i].trust -= 20>>
 		<<elseif $slaves[$i].devotion <= 20>>
-		  @@.mediumorchid;consumed by enduring sorrow@@ and @@.gold;horror.@@ Even though she knew her baby was destined for a slave orphanage, it seems she cared for it.
+		  @@.mediumorchid;consumed by enduring sorrow@@ and @@.gold;horror.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it.
 		  <<set  $slaves[$i].devotion -= 5,  $slaves[$i].trust -= 5>>
 		<<elseif $slaves[$i].devotion <= 50>>
-		  dully obedient. She has been broken to slave life so thoroughly that even this is neither surprising nor affecting.
+		  dully obedient. $He has been broken to slave life so thoroughly that even this is neither surprising nor affecting.
 		<<else>>
-		  @@.hotpink;pleased by this stark development@@, since she is so attentive to your will. She also expects she'll be able to fuck better now.
+		  @@.hotpink;pleased by this stark development@@, since $he is so attentive to your will. $He also expects $he'll be able to fuck better now.
 		  <<set  $slaves[$i].devotion += 4>>
 		<</if>>
 	  <</if>>
@@ -898,7 +898,7 @@
 				<<set $slaves[$i].anus += 1>>
 				<<set $slaves[$i].trust -= 2>>
 			<<else>>
-				Her asshole is used to being penetrated and wearing her tailed buttplug doesn't affect it, though it still serves as @@.gold;a constant degrading reminder of her submission.@@
+				$His asshole is used to being penetrated and wearing her tailed buttplug doesn't affect it, though it still serves as @@.gold;a constant degrading reminder of her submission.@@
 				<<set $slaves[$i].trust -= 2>>
 			<</if>>
 			<<if ($slaves[$i].sexualFlaw == "hates anal") && (random(1,100) > 50)>>
@@ -906,7 +906,7 @@
 				<<set $slaves[$i].sexualFlaw = "none">>
 			<</if>>
 			<<if ($slaves[$i].sexualQuirk == "size queen") && ($slaves[$i].buttplug == "long plug")>>
-			The overly long plug delving the depths of her rear @@.hotpink;gets her off,@@ since she's a size queen.
+			The overly long plug delving the depths of her rear @@.hotpink;gets her off,@@ since $he's a size queen.
 				<<set $slaves[$i].devotion += 2>>
 			<</if>>
 		<</if>>
@@ -916,14 +916,14 @@
 				Constantly wearing a plug in her virgin butthole @@.lime;stretches it out.@@
 				<<set $slaves[$i].anus += 1>>
 			<<else>>
-				Her asshole is used to being penetrated and wearing her buttplug doesn't affect it.
+				$His asshole is used to being penetrated and wearing her buttplug doesn't affect it.
 			<</if>>
 			<<if ($slaves[$i].sexualFlaw == "hates anal") && (random(1,100) > 50)>>
 				It @@.green;gets her habituated to having her asshole filled.@@
 				<<set $slaves[$i].sexualFlaw = "none">>
 			<</if>>
 			<<if ($slaves[$i].sexualQuirk == "size queen") && ($slaves[$i].buttplug == "long plug")>>
-			The overly long plug delving the depths of her rear @@.hotpink;gets her off,@@ since she's a size queen.
+			The overly long plug delving the depths of her rear @@.hotpink;gets her off,@@ since $he's a size queen.
 				<<set $slaves[$i].devotion += 2>>
 			<</if>>
 		<</if>>
@@ -934,7 +934,7 @@
 			<<if ($slaves[$i].anus < 2)>>
 				The uncomfortable tailed plug in her asshole
 				<<if ($slaves[$i].sexualQuirk == "size queen")>>
-					@@.hotpink;gets her off,@@ since she's a size queen, while serving as @@.gold;a constant degrading reminder of her submission.@@
+					@@.hotpink;gets her off,@@ since $he's a size queen, while serving as @@.gold;a constant degrading reminder of her submission.@@
 					<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 2>>
 				<<else>>
 					@@.hotpink;breaks her to anal slavery@@ slightly, while serving as a @@.gold;a constant degrading reminder of her submission.@@
@@ -951,12 +951,12 @@
 				Constantly wearing a large tailed plug up her ass @@.lime;loosens her sphincter.@@
 				<<set $slaves[$i].anus += 1>>
 			<<else>>
-				The large tailed plug she's required to wear up her ass stretches it to the limit, but on the rare occasions when the plug is removed, her rear hole still tightens up.
+				The large tailed plug $he's required to wear up her ass stretches it to the limit, but on the rare occasions when the plug is removed, her rear hole still tightens up.
 			<</if>>
 		<<else>>
-			Her anus accommodates the large plug she's required to wear.
+			$His anus accommodates the large plug $he's required to wear.
 			<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-				In fact, she @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
+				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
 				<<set $slaves[$i].devotion += 1>>
 				<<set $slaves[$i].energy += 1>>
 			<</if>>
@@ -966,7 +966,7 @@
 			<<if ($slaves[$i].anus < 2)>>
 				The uncomfortable plug in her asshole
 				<<if ($slaves[$i].sexualQuirk == "size queen")>>
-					@@.hotpink;gets her off,@@ since she's a size queen.
+					@@.hotpink;gets her off,@@ since $he's a size queen.
 					<<set $slaves[$i].devotion += 2>>
 				<<else>>
 					@@.hotpink;breaks her to anal slavery@@ slightly.
@@ -983,12 +983,12 @@
 				Constantly wearing a large plug up her ass @@.lime;loosens her sphincter.@@
 				<<set $slaves[$i].anus += 1>>
 			<<else>>
-				The large plug she's required to wear up her ass stretches it to the limit, but on the rare occasions when the plug is removed, her rear hole still tightens up.
+				The large plug $he's required to wear up her ass stretches it to the limit, but on the rare occasions when the plug is removed, her rear hole still tightens up.
 			<</if>>
 		<<else>>
-			Her anus accommodates the large plug she's required to wear.
+			$His anus accommodates the large plug $he's required to wear.
 			<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-				In fact, she @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
+				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
 				<<set $slaves[$i].devotion += 1>>
 				<<set $slaves[$i].energy += 1>>
 			<</if>>
@@ -999,13 +999,13 @@
 		<<if ($slaves[$i].anus < 4)>>
 			<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 				<<if ($slaves[$i].sexualQuirk == "size queen")>>
-					She thinks of the horribly huge tailed plug she has wear in her butt as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to being able to safely take unlubricated anal from them. Even so, the tail hanging from her rear is @@.gold;a constant degrading reminder of her submission.@@
+					$He thinks of the horribly huge tailed plug $he has wear in her butt as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to being able to safely take unlubricated anal from them. Even so, the tail hanging from her rear is @@.gold;a constant degrading reminder of her submission.@@
 					<<set $slaves[$i].devotion += 4, $slaves[$i].trust -= 5>>
 				<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					She gets off on the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug, but can't ignore the tail hanging from the back of the plug. The terrible combination of anal pleasure and degradation @@.hotpink;breaks her will@@ and fills her with @@.gold;humiliation.@@
+					$He gets off on the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug, but can't ignore the tail hanging from the back of the plug. The terrible combination of anal pleasure and degradation @@.hotpink;breaks her will@@ and fills her with @@.gold;humiliation.@@
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 7>>
 				<<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					She submits to the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug and the shame of having a tail dangle from the back of the plug. Having her hole ruined at your whim and in such a degrading fashion @@.hotpink;breaks her will@@ and fills her with @@.gold;humiliation.@@
+					$He submits to the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug and the shame of having a tail dangle from the back of the plug. Having her hole ruined at your whim and in such a degrading fashion @@.hotpink;breaks her will@@ and fills her with @@.gold;humiliation.@@
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 7>>
 				<<else>>
 					The agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug fills her with @@.mediumorchid;resentment@@ and @@.gold;humiliation.@@
@@ -1014,9 +1014,9 @@
 			<</if>>
 			<<set $slaves[$i].anus += 1>>
 		<<else>>
-			Her gaping anus accommodates the huge tailed plug she's required to wear, serving little purpose other than to remind her of her @@.gold;humiliation.@@
+			$His gaping anus accommodates the huge tailed plug $he's required to wear, serving little purpose other than to remind her of her @@.gold;humiliation.@@
 			<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-				In fact, she @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
+				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
 				<<set $slaves[$i].devotion += 1>>
 				<<set $slaves[$i].energy += 1>>
 			<</if>>
@@ -1025,13 +1025,13 @@
 		<<if ($slaves[$i].anus < 4)>>
 			<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 				<<if ($slaves[$i].sexualQuirk == "size queen")>>
-					She thinks of the horribly huge plug she has wear in her butt as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to being able to safely take unlubricated anal from them.
+					$He thinks of the horribly huge plug $he has wear in her butt as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to being able to safely take unlubricated anal from them.
 					<<set $slaves[$i].devotion += 4>>
 				<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					She gets off on the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge buttplug. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+					$He gets off on the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge buttplug. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 				<<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					She submits to the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge buttplug. Having her hole ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+					$He submits to the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge buttplug. Having her hole ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 				<<else>>
 					The agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge buttplug fills her with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
@@ -1040,9 +1040,9 @@
 			<</if>>
 			<<set $slaves[$i].anus += 1>>
 		<<else>>
-			Her gaping anus accommodates the huge plug she's required to wear.
+			$His gaping anus accommodates the huge plug $he's required to wear.
 			<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-				In fact, she @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
+				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
 				<<set $slaves[$i].devotion += 1>>
 				<<set $slaves[$i].energy += 1>>
 			<</if>>
@@ -1052,7 +1052,7 @@
 <<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 	<<if ($slaves[$i].buttplugAttachment == "tail")>>
 		<<if ($slaves[$i].fetish == "humiliation") && ($slaves[$i].fetishKnown == 0)>>
-			She shows a surprising lack of resistance to the routine of having a tail inserted in her ass each morning; she seems to @@.lightcoral;naturally enjoy the humiliation.@@
+			$He shows a surprising lack of resistance to the routine of having a tail inserted in her ass each morning; $he seems to @@.lightcoral;naturally enjoy the humiliation.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
@@ -1062,7 +1062,7 @@
 		<</if>>
 	<<elseif ($slaves[$i].buttplug == "plug") || ($slaves[$i].buttplug == "large plug") || ($slaves[$i].buttplug == "long, large plug") || ($slaves[$i].buttplug == "long plug")>>
 		<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 0)>>
-			She shows a surprising lack of resistance to the routine of getting the plug up her butt in the morning; she seems to @@.lightcoral;naturally enjoy anal stimulation.@@
+			$He shows a surprising lack of resistance to the routine of getting the plug up her butt in the morning; $he seems to @@.lightcoral;naturally enjoy anal stimulation.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 		<<if _fetishChangeChance > random(0,100)>>
@@ -1088,34 +1088,34 @@
 		<<if ($slaves[$i].energy >= 20)>>
 			<<if ($slaves[$i].fetishKnown == 1)>>
 			<<if ($slaves[$i].fetish == "submissive")>>
-				Recently, she's been fantasizing about submitting to big strong men. Her revulsion at the idea of sex with a man @@.green;mellows.@@
+				Recently, $he's been fantasizing about submitting to big strong men. $His revulsion at the idea of sex with a man @@.green;mellows.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "buttslut")>>
-				Recently, she's been reconsidering her reluctance to be sodomized by a man. Her revulsion at the idea of sex with a man @@.green;mellows.@@
+				Recently, $he's been reconsidering her reluctance to be sodomized by a man. $His revulsion at the idea of sex with a man @@.green;mellows.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "pregnancy")>>
-				Recently, she's been fantasizing about getting knocked up. Her revulsion at the idea of sex with a man @@.green;mellows.@@
+				Recently, $he's been fantasizing about getting knocked up. $His revulsion at the idea of sex with a man @@.green;mellows.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].sexualQuirk == "adores men")>>
-				She enjoys spending time with men, and starts to @@.green;reconsider her unwillingness to be fucked by men.@@
+				$He enjoys spending time with men, and starts to @@.green;reconsider her unwillingness to be fucked by men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<<if ($slaves[$i].dick > 0)>>
 			<<if ($slaves[$i].energy >= 40)>>
 			<<if ($slaves[$i].analCount > 0) && canDoAnal($slaves[$i])>>
-				Every time she cums with a dick up her ass, her @@.green;resistance to sex with men is worn away.@@
+				Every time $he cums with a dick up her ass, her @@.green;resistance to sex with men is worn away.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].devotion > random(1,100))>>
-				The atmosphere in your arcology is so ubiquitously sexual that she @@.green;reconsiders her unwillingness to have sex with men.@@
+				The atmosphere in your arcology is so ubiquitously sexual that $he @@.green;reconsiders her unwillingness to have sex with men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 		<<else>>
-			Her weak libido limits natural development of her sexuality.
+			$His weak libido limits natural development of her sexuality.
 		<</if>>
 		<<if $slaves[$i].devotion >= -20>>
 		<<if $slaves[$i].genes == "XY">>
@@ -1123,27 +1123,27 @@
 			<<switch _roll>>
 			<<case 1>>
 				<<if $slaves[$i].nosePiercing>>
-					She's fascinated by her <<if $slaves[$i].nosePiercing > 1>>slutty nose piercings, and unconsciously thinks of herself as @@.green;prettier and more suited to take dick.@@<<else>>nice little nasal piercing, and feels like @@.green;more of a girly girl.@@<</if>>
+					$He's fascinated by her <<if $slaves[$i].nosePiercing > 1>>slutty nose piercings, and unconsciously thinks of herself as @@.green;prettier and more suited to take dick.@@<<else>>nice little nasal piercing, and feels like @@.green;more of a girly girl.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<<case 2>>
 				<<if $slaves[$i].eyebrowPiercing>>
-					Her <<if $slaves[$i].eyebrowPiercing > 1>>degrading eyebrow piercings make her feel @@.green;a little less disinclined to accept being on the bottom.@@<<else>>cute eyebrow piercing makes her feel @@.green;a little girlier.@@<</if>>
+					$His <<if $slaves[$i].eyebrowPiercing > 1>>degrading eyebrow piercings make her feel @@.green;a little less disinclined to accept being on the bottom.@@<<else>>cute eyebrow piercing makes her feel @@.green;a little girlier.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<<case 3>>
 				<<if $slaves[$i].lipsPiercing>>
-					She kind of likes her <<if $slaves[$i].lipsPiercing > 1>>whorish lip ring, and seems @@.green;less disturbed by the idea of her mouth as a fuckhole.@@<<else>>pretty little lip piercing, and feels like @@.green;she has a nice mouth.@@<</if>>
+					$He kind of likes her <<if $slaves[$i].lipsPiercing > 1>>whorish lip ring, and seems @@.green;less disturbed by the idea of her mouth as a fuckhole.@@<<else>>pretty little lip piercing, and feels like @@.green;$he has a nice mouth.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<<case 4>>
 				<<if $slaves[$i].navelPiercing>>
-					She sometimes stares at her <<if $slaves[$i].navelPiercing > 1>>navel chain, turning this way and that to make it move, unconsciously @@.green;getting used to her fuckable body.@@<<else>>little feminine navel piercing, and seems to think @@.green;her lower half is kind of pretty.@@<</if>>
+					$He sometimes stares at her <<if $slaves[$i].navelPiercing > 1>>navel chain, turning this way and that to make it move, unconsciously @@.green;getting used to her fuckable body.@@<<else>>little feminine navel piercing, and seems to think @@.green;her lower half is kind of pretty.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<<case 5>>
 				<<if $slaves[$i].earPiercing>>
-					Every morning, she's greeted by her girly reflection in the mirror, <<if $slaves[$i].earPiercing > 1>>whose slutty ear piercings make her @@.green;feel more fuckable.@@<<else>>complete with pretty pierced ears @@.green;like a good slave girl.@@<</if>>
+					Every morning, $he's greeted by her girly reflection in the mirror, <<if $slaves[$i].earPiercing > 1>>whose slutty ear piercings make her @@.green;feel more fuckable.@@<<else>>complete with pretty pierced ears @@.green;like a good slave girl.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<</switch>>
@@ -1153,67 +1153,67 @@
 		<<if ($slaves[$i].energy >= 40)>>
 			<<if ($slaves[$i].fetishKnown == 1)>>
 			<<if ($slaves[$i].fetish == "submissive")>>
-				She's found herself enjoying watching big strong men use other slaves recently. She's now @@.green;more attracted to men.@@
+				$He's found herself enjoying watching big strong men use other slaves recently. $He's now @@.green;more attracted to men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "buttslut")>>
-				She's started fantasizing about cocks being shoved up her butt even when there are no cocks being shoved up her butt. She's now @@.green;more attracted to men.@@
+				$He's started fantasizing about cocks being shoved up $his butt even when there are no cocks being shoved up $his butt. $He's now @@.green;more attracted to men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "pregnancy")>>
-				Her fantasies about pregnancy have become quite vivid; she loves hot cum jetting into her. She's now @@.green;more attracted to men.@@
+				$His fantasies about pregnancy have become quite vivid; $he loves hot cum jetting into $him. $He's now @@.green;more attracted to men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].behavioralQuirk == "adores men")>>
-				She enjoys spending time with men, and is now @@.green;more attracted to men.@@
+				$He enjoys spending time with men, and is now @@.green;more attracted to men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<<if ($slaves[$i].dick > 0)>>
 			<<if ($slaves[$i].energy >= 60)>>
 			<<if ($slaves[$i].analCount > 0)>>
-				Every time she cums to the feeling of a cock thrusting deep inside her, her @@.green;indifference to men is reduced.@@
+				Every time $he cums to the feeling of a cock thrusting deep inside $him, $his @@.green;indifference to men is reduced.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].devotion > random(1,200))>>
-				The atmosphere in your arcology is so ubiquitously sexual that she has become @@.green;more attracted to men.@@
+				The atmosphere in your arcology is so ubiquitously sexual that $he has become @@.green;more attracted to men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 		<<else>>
-			Her poor sex drive limits natural development of her sexuality.
+			$His poor sex drive limits natural development of her sexuality.
 		<</if>>
 	<<elseif ($slaves[$i].attrXY <= 85)>>
 		<<if ($slaves[$i].energy >= 60)>>
 			<<if ($slaves[$i].fetishKnown == 1)>>
 			<<if ($slaves[$i].fetish == "submissive")>>
-				She can no longer see a man without fantasizing about how it would feel if he held her down. She's now @@.green;more aroused by men.@@
+				$He can no longer see a man without fantasizing about how it would feel if he held $him down. $He's now @@.green;more aroused by men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "buttslut")>>
-				She can't see a man without doing her best to get his hard cock inside her. She's now @@.green;more aroused by men.@@
+				$He can't see a man without doing $his best to get his hard cock inside $him. $He's now @@.green;more aroused by men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "pregnancy")>>
-				She can't see a man without doing her best to get his hot seed into her body. She's now @@.green;more aroused by men.@@
+				$He can't see a man without doing $his best to get his hot seed into $his body. $He's now @@.green;more aroused by men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].dick > 0)>>
 			<<if ($slaves[$i].energy >= 80)>>
 			<<if ($slaves[$i].analCount > 0)>>
-				She often starts to climax as a cock begins to push inside her, @@.green;deepening her appetite for men.@@
+				$He often starts to climax as a cock begins to push inside $him, @@.green;deepening $his appetite for men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].behavioralQuirk == "adores men")>>
-				She enjoys spending time with men so much that any interaction becomes flirtation; she's now @@.green;more aroused by men.@@
+				$He enjoys spending time with men so much that any interaction becomes flirtation; $he's now @@.green;more aroused by men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 		<<else>>
-			Her average libido limits further natural development of her sexuality.
+			$His average libido limits further natural development of $his sexuality.
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].energy < 40)>>
-			Her low sex drive @@.red;reduces her extreme attraction to men.@@
+			$His low sex drive @@.red;reduces $his extreme attraction to men.@@
 			<<set $slaves[$i].attrXY -= 5>>
 		<</if>>
 	<</if>>
@@ -1221,118 +1221,118 @@
 		<<if ($slaves[$i].energy >= 20)>>
 			<<if ($slaves[$i].fetishKnown == 1)>>
 			<<if ($slaves[$i].fetish == "dom")>>
-				Recently, she's been fantasizing about how it would feel to force herself on some of the cute women all around her. Her revulsion at the idea of sex with a woman @@.green;mellows.@@
+				Recently, $he's been fantasizing about how it would feel to force $himself on some of the cute women all around $him. $His revulsion at the idea of sex with a woman @@.green;mellows.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif ($slaves[$i].fetish == "sadist")>>
-				Recently, she's been fantasizing about how it would feel to abuse a weak female slave. Her revulsion at the idea of sex with a woman @@.green;mellows.@@
+				Recently, $he's been fantasizing about how it would feel to abuse a weak female slave. $His revulsion at the idea of sex with a woman @@.green;mellows.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif ($slaves[$i].fetish == "boobs")>>
-				Recently, she's been fantasizing about other girls' tits. Her revulsion at the idea of sex with a woman @@.green;mellows.@@
+				Recently, $he's been fantasizing about other girls' tits. $His revulsion at the idea of sex with a woman @@.green;mellows.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].behavioralQuirk == "adores women")>>
-				She enjoys spending time with women, and starts to @@.green;reconsider her unwillingness to have sex with a woman.@@
+				$He enjoys spending time with women, and starts to @@.green;reconsider $his unwillingness to have sex with a woman.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 			<<if $slaves[$i].canAchieveErection>>
 			<<if ($slaves[$i].energy >= 40)>>
 			<<if ($slaves[$i].penetrativeCount > 0)>>
-				Getting to fuck another girl is rare and special, and she @@.green;starts to value getting to have sex with women.@@
+				Getting to fuck another girl is rare and special, and $he @@.green;starts to value getting to have sex with women.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].devotion > random(1,100))>>
-				The atmosphere in your arcology is so ubiquitously sexual that she @@.green;reconsiders her unwillingness to have sex with women.@@
+				The atmosphere in your arcology is so ubiquitously sexual that $he @@.green;reconsiders $his unwillingness to have sex with women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 		<<else>>
-			<<if ($slaves[$i].attrXX > 35)>>Her weak libido limits natural development of her sexuality.<</if>>
+			<<if ($slaves[$i].attrXX > 35)>>$His weak libido limits natural development of $his sexuality.<</if>>
 		<</if>>
 	<<elseif ($slaves[$i].attrXX <= 65)>>
 		<<if ($slaves[$i].energy >= 40)>>
 			<<if ($slaves[$i].fetishKnown == 1)>>
 			<<if ($slaves[$i].fetish == "dom")>>
-				She's found herself enjoying the sight of female slaves being forced to fuck recently. She's now @@.green;more attracted to women.@@
+				$He's found herself enjoying the sight of female slaves being forced to fuck recently. $He's now @@.green;more attracted to women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif ($slaves[$i].fetish == "sadist")>>
-				She's started fantasizing about how a girl might feel, struggling to get away from her. She's now @@.green;more attracted to women.@@
+				$He's started fantasizing about how a girl might feel, struggling to get away from $him. $He's now @@.green;more attracted to women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif ($slaves[$i].fetish == "boobs")>>
-				Her fantasies about boobs have become quite vivid. She's now @@.green;more attracted to women.@@
+				$His fantasies about boobs have become quite vivid. $He's now @@.green;more attracted to women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].behavioralQuirk == "adores women")>>
-				She enjoys spending time with women, and is now @@.green;more attracted to women.@@
+				$He enjoys spending time with women, and is now @@.green;more attracted to women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 			<<if $slaves[$i].canAchieveErection>>
 			<<if ($slaves[$i].energy >= 60)>>
 			<<if ($slaves[$i].penetrativeCount > 0)>>
-				@@.green;Her indifference to women@@ is worn down on the special occasions that she's allowed to stick her dick in one.
+				@@.green;$His indifference to women@@ is worn down on the special occasions that $he's allowed to stick $his dick in one.
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].devotion > random(1,200))>>
-				The atmosphere in your arcology is so ubiquitously sexual that she has become @@.green;more attracted to women.@@
+				The atmosphere in your arcology is so ubiquitously sexual that $he has become @@.green;more attracted to women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 		<<else>>
-			<<if ($slaves[$i].attrXX > 65)>>Her poor sex drive limits natural development of her sexuality.<</if>>
+			<<if ($slaves[$i].attrXX > 65)>>$His poor sex drive limits natural development of $his sexuality.<</if>>
 		<</if>>
 	<<elseif ($slaves[$i].attrXX <= 85)>>
 		<<if ($slaves[$i].energy >= 60)>>
 			<<if ($slaves[$i].fetishKnown == 1)>>
 			<<if ($slaves[$i].fetish == "dom")>>
-				She can't see a woman without plotting to dominate her. She's now @@.green;more aroused by women.@@
+				$He can't see a woman without plotting to dominate $him. $He's now @@.green;more aroused by women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif ($slaves[$i].fetish == "sadist")>>
-				She can't see a woman without doing her best to find a way the rules will allow her to abuse the poor girl. She's now @@.green;more aroused by women.@@
+				$He can't see a woman without doing $his best to find a way the rules will allow $his to abuse the poor girl. $He's now @@.green;more aroused by women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif ($slaves[$i].fetish == "boobs")>>
-				She can't see a woman without doing her best to get her hands on her breasts. She's now @@.green;more aroused by women.@@
+				$He can't see a woman without doing $his best to get $his hands on her breasts. $He's now @@.green;more aroused by women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif $slaves[$i].fetish == "pregnancy" && canAchieveErection($slaves[$i])>>
-				She can't see a woman without plotting to plant her seed in her womb. She's now @@.green;more aroused by women.@@
+				$He can't see a woman without plotting to plant $his seed in her womb. $He's now @@.green;more aroused by women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].behavioralQuirk == "adores women")>>
-				She enjoys spending time with women so much that any interaction becomes flirtation; she's now @@.green;more aroused by women.@@
+				$He enjoys spending time with women so much that any interaction becomes flirtation; $he's now @@.green;more aroused by women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 			<<if $slaves[$i].canAchieveErection>>
 			<<if ($slaves[$i].energy >= 80)>>
 			<<if ($slaves[$i].penetrativeCount > 0)>>
-				She cherishes the special occasions on which she gets to cum inside a girl, @@.green;building her appetite for women.@@
+				$He cherishes the special occasions on which $he gets to cum inside a girl, @@.green;building $his appetite for women.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<</if>>
 		<<else>>
-			<<if ($slaves[$i].attrXX > 85)>>Her average libido limits further natural development of her sexuality.<</if>>
+			<<if ($slaves[$i].attrXX > 85)>>$His average libido limits further natural development of $his sexuality.<</if>>
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].energy < 40)>>
-			Her low sex drive @@.red;reduces her extreme attraction to women.@@
+			$His low sex drive @@.red;reduces $his extreme attraction to women.@@
 			<<set $slaves[$i].attrXX -= 5>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].energy > 95)>>
 		<<if ($slaves[$i].attrXX < 100)>>
 			<<if ($slaves[$i].attrXY < 100)>>
-				Her nymphomania has a slow but inexorable impact on her sexuality, @@.green;increasing her attraction to everyone.@@
+				$His nymphomania has a slow but inexorable impact on $his sexuality, @@.green;increasing $his attraction to everyone.@@
 				<<set $slaves[$i].attrXY += 3>>
 				<<set $slaves[$i].attrXX += 3>>
 			<<else>>
-				Her nymphomania has a slow but inexorable impact on her sexuality, @@.green;increasing her lust for pussy,@@ since she's already crazy about guys.
+				$His nymphomania has a slow but inexorable impact on $his sexuality, @@.green;increasing $his lust for pussy,@@ since $he's already crazy about guys.
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 		<<elseif ($slaves[$i].attrXY < 100)>>
-			Her nymphomania has a slow but inexorable impact on her sexuality, @@.green;increasing her need for cock,@@ since she's already crazy about the ladies.
+			$His nymphomania has a slow but inexorable impact on $his sexuality, @@.green;increasing $his need for cock,@@ since $he's already crazy about the ladies.
 			<<set $slaves[$i].attrXY += 3>>
 		<</if>>
 	<</if>>
@@ -1381,7 +1381,7 @@
 	<</if>>
 	<<if ($slaves[$i].behavioralQuirk == "fitness")>>
 		<<if $slaves[$i].energy < 70>>
-		Her physical overachievement and her growing athletic prowess @@.green;increase her sex drive.@@
+		$His physical overachievement and $his growing athletic prowess @@.green;increase $his sex drive.@@
 		<<set $slaves[$i].energy += 1>>
 		<</if>>
 	<</if>>
@@ -1389,42 +1389,42 @@
 		<<switch $slaves[$i].behavioralQuirk>>
 		<<case "confident">>
 			<<if $slaves[$i].fetish == "dom">>
-			Her confidence and poise @@.lightcoral;increase her dominance.@@
+			$His confidence and poise @@.lightcoral;increase $his dominance.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "cutting">>
 			<<if $slaves[$i].fetish == "dom">>
-			Her willingness to cut a partner down @@.lightcoral;increases her dominance.@@
+			$His willingness to cut a partner down @@.lightcoral;increases $his dominance.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "funny">>
 			<<if $slaves[$i].fetish == "masochist">>
-			Using pain as an outlet for all the mental troubles lurking behind her funny facade @@.lightcoral;increases her masochism.@@
+			Using pain as an outlet for all the mental troubles lurking behind $his funny facade @@.lightcoral;increases $his masochism.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "adores men">>
 			<<if $slaves[$i].fetish == "pregnancy">>
-			Her love of male company has @@.lightcoral;advanced her pregnancy fetish.@@
+			$His love of male company has @@.lightcoral;advanced $his pregnancy fetish.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "adores women">>
 			<<if $slaves[$i].fetish == "boobs">>
-			Her love of female company has @@.lightcoral;advanced her boob fetish.@@
+			$His love of female company has @@.lightcoral;advanced $his boob fetish.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "insecure">>
 			<<if $slaves[$i].fetish == "submissive">>
-			Her desperation for validation from others @@.lightcoral;increases her submission.@@
+			$His desperation for validation from others @@.lightcoral;increases $his submission.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "sinful">>
 			<<if $slaves[$i].fetish == "humiliation">>
-			Her delight at sin @@.lightcoral;increases her appetite for humiliation.@@
+			$His delight at sin @@.lightcoral;increases $his appetite for humiliation.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "advocate">>
 			<<if $slaves[$i].fetish == "submissive">>
-			Her conviction that slavery is right @@.lightcoral;increases her willingness to submit.@@
+			$His conviction that slavery is right @@.lightcoral;increases $his willingness to submit.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<</switch>>
@@ -1433,42 +1433,42 @@
 		<<switch $slaves[$i].behavioralQuirk>>
 		<<case "confident">>
 			<<if ($slaves[$i].fetish != "dom")>>
-			Her confidence and poise affect her sexual outlook. @@.lightcoral;She's now a dom!@@
+			$His confidence and poise affect her sexual outlook. @@.lightcoral;$He's now a dom!@@
 			<<set $slaves[$i].fetish = "dom", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "cutting">>
 			<<if ($slaves[$i].fetish != "dom")>>
-			Her willingness to cut a partner down makes her more dominant in bed. @@.lightcoral;She's now a dom!@@
+			$His willingness to cut a partner down makes her more dominant in bed. @@.lightcoral;$He's now a dom!@@
 			<<set $slaves[$i].fetish = "dom", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "funny">>
 			<<if ($slaves[$i].fetish != "masochist")>>
-			Pain becomes an outlet for all the mental troubles lurking behind her funny facade. @@.lightcoral;She's now a masochist!@@
+			Pain becomes an outlet for all the mental troubles lurking behind her funny facade. @@.lightcoral;$He's now a masochist!@@
 			<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "adores men">>
 			<<if ($slaves[$i].fetish != "pregnancy")>>
-			Her appreciation of men has turned into a fantasy about getting knocked up. @@.lightcoral;She's a pregnancy fetishist!@@
+			$His appreciation of men has turned into a fantasy about getting knocked up. @@.lightcoral;$He's a pregnancy fetishist!@@
 			<<set $slaves[$i].fetish = "pregnancy", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "adores women">>
 			<<if ($slaves[$i].fetish != "boobs")>>
-			Her appreciation of women has turned into a fetish for breasts. @@.lightcoral;She's a boob fetishist!@@
+			$His appreciation of women has turned into a fetish for breasts. @@.lightcoral;$He's a boob fetishist!@@
 			<<set $slaves[$i].fetish = "boobs", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "insecure">>
 			<<if ($slaves[$i].fetish != "submissive")>>
-			She gets so desperate for validation from others that she becomes willing to submit to anything. @@.lightcoral;She's now a submissive!@@
+			$He gets so desperate for validation from others that $he becomes willing to submit to anything. @@.lightcoral;$He's now a submissive!@@
 			<<set $slaves[$i].fetish = "submissive", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "sinful">>
 			<<if ($slaves[$i].fetish != "humiliation")>>
-			She learns that she likes nothing better than being seen doing something sacrilegious. @@.lightcoral;She's now a humiliation fetishist!@@
+			$He learns that $he likes nothing better than being seen doing something sacrilegious. @@.lightcoral;$He's now a humiliation fetishist!@@
 			<<set $slaves[$i].fetish = "humiliation", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "advocate">>
 			<<if ($slaves[$i].fetish != "submissive")>>
-			Her conviction that slavery is right seeps into her sexuality. @@.lightcoral;She's now a submissive!@@
+			$His conviction that slavery is right seeps into her sexuality. @@.lightcoral;$He's now a submissive!@@
 			<<set $slaves[$i].fetish = "submissive", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<</switch>>
@@ -1521,51 +1521,51 @@
 		<<switch $slaves[$i].sexualQuirk>>
 		<<case "gagfuck queen">>
 			<<if $slaves[$i].fetish == "cumslut">>
-			Her eagerness to get roughly throatfucked has @@.lightcoral;advanced her oral fixation.@@
+			$His eagerness to get roughly throatfucked has @@.lightcoral;advanced her oral fixation.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "painal queen">>
 			<<if $slaves[$i].fetish == "buttslut">>
-			Her eagerness to get roughly assfucked has @@.lightcoral;advanced her anal fixation.@@
+			$His eagerness to get roughly assfucked has @@.lightcoral;advanced her anal fixation.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "strugglefuck queen">>
 			<<if $slaves[$i].fetish == "masochist">>
-			Her eagerness to get roughly fucked has @@.lightcoral;advanced her masochism.@@
+			$His eagerness to get roughly fucked has @@.lightcoral;advanced her masochism.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "tease">>
 			<<if $slaves[$i].fetish == "humiliation">>
-			The rush she feels when she shows herself off has @@.lightcoral;advanced her humiliation fetish.@@
+			The rush $he feels when $he shows herself off has @@.lightcoral;advanced her humiliation fetish.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "romantic">>
 			<<if $slaves[$i].fetish == "pregnancy">>
-			Her romanticism has @@.lightcoral;advanced her reproduction fetish.@@
+			$His romanticism has @@.lightcoral;advanced her reproduction fetish.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "perverted">>
 			<<if $slaves[$i].fetish == "humiliation">>
-			Her desire to be seen doing the forbidden has @@.lightcoral;advanced her humiliation fetish.@@
+			$His desire to be seen doing the forbidden has @@.lightcoral;advanced her humiliation fetish.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 			<<if ($slaves[$i].energy < 94)>>
-			She's such a pervert that the depravity all around her @@.green;improves her sex drive.@@
+			$He's such a pervert that the depravity all around her @@.green;improves her sex drive.@@
 			<<set $slaves[$i].energy += 1>>
 			<</if>>
 		<<case "caring">>
 			<<if $slaves[$i].fetish == "submissive">>
-			Her caring nature has @@.lightcoral;advanced her submissiveness.@@
+			$His caring nature has @@.lightcoral;advanced her submissiveness.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "unflinching">>
 			<<if $slaves[$i].fetish == "masochist">>
-			Her unflinching nature has @@.lightcoral;advanced her masochism.@@
+			$His unflinching nature has @@.lightcoral;advanced her masochism.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "size queen">>
 			<<if $slaves[$i].fetish == "buttslut">>
-			Her size queen tendencies have @@.lightcoral;advanced her devotion to being an anal slut.@@
+			$His size queen tendencies have @@.lightcoral;advanced her devotion to being an anal slut.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<</switch>>
@@ -1574,47 +1574,47 @@
 		<<switch $slaves[$i].sexualQuirk>>
 		<<case "gagfuck queen">>
 			<<if $slaves[$i].fetish != "cumslut">>
-			Her willingness to get roughly throatfucked has turned into real anticipation. @@.lightcoral;She's now a cumslut!@@
+			$His willingness to get roughly throatfucked has turned into real anticipation. @@.lightcoral;$He's now a cumslut!@@
 			<<set $slaves[$i].fetish = "cumslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "painal queen">>
 			<<if $slaves[$i].fetish != "buttslut">>
-			Her willingness to get roughly assfucked has turned into real anticipation. @@.lightcoral;She's now a buttslut!@@
+			$His willingness to get roughly assfucked has turned into real anticipation. @@.lightcoral;$He's now a buttslut!@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "strugglefuck queen">>
 			<<if $slaves[$i].fetish != "masochist">>
-			Her willingness to be roughly used has turned into real anticipation. @@.lightcoral;She's now a masochist!@@
+			$His willingness to be roughly used has turned into real anticipation. @@.lightcoral;$He's now a masochist!@@
 			<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "tease">>
 			<<if $slaves[$i].fetish != "humiliation">>
-			The rush she feels when she shows herself off has deepened into a fetish for being publicly fucked. @@.lightcoral;She's a humiliation fetishist!@@
+			The rush $he feels when $he shows herself off has deepened into a fetish for being publicly fucked. @@.lightcoral;$He's a humiliation fetishist!@@
 			<<set $slaves[$i].fetish = "humiliation", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "romantic">>
 			<<if $slaves[$i].fetish != "pregnancy">>
-			Her romantic bent has turned into a fantasy about settling down and having a child. @@.lightcoral;She's a pregnancy fetishist!@@
+			$His romantic bent has turned into a fantasy about settling down and having a child. @@.lightcoral;$He's a pregnancy fetishist!@@
 			<<set $slaves[$i].fetish = "pregnancy", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "perverted">>
 			<<if $slaves[$i].fetish != "humiliation">>
-			Her perverted side has turned into a desire to be seen doing the forbidden. @@.lightcoral;She's a humiliation fetishist!@@
+			$His perverted side has turned into a desire to be seen doing the forbidden. @@.lightcoral;$He's a humiliation fetishist!@@
 			<<set $slaves[$i].fetish = "humiliation", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "caring">>
 			<<if $slaves[$i].fetish != "submissive">>
-			Her caring nature has matured into a need to submit. @@.lightcoral;She's a submissive!@@
+			$His caring nature has matured into a need to submit. @@.lightcoral;$He's a submissive!@@
 			<<set $slaves[$i].fetish = "submissive", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "unflinching">>
 			<<if $slaves[$i].fetish != "masochist">>
-			She's so unflinching that she's left searching for sex extreme enough to excite her. @@.lightcoral;She's a masochist!@@
+			$He's so unflinching that $he's left searching for sex extreme enough to excite $him. @@.lightcoral;$He's a masochist!@@
 			<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "size queen">>
 			<<if $slaves[$i].fetish != "buttslut">>
-			She's such a size queen that she's decided she prefers dicks where they'll feel biggest to her. @@.lightcoral;She's a buttslut!@@
+			$He's such a size queen that $he's decided $he prefers dicks where they'll feel biggest to $him. @@.lightcoral;$He's a buttslut!@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<</switch>>
@@ -1628,30 +1628,30 @@
 	<<if $slaves[$i].fetishStrength <= 75>>
 		<<if $slaves[$i].devotion > 50>>
 		<<if $slaves[$i].trust > 50>>
-			She has the confidence to pursue what pleases her, @@.lightcoral;increasing her kinkiness.@@
+			$He has the confidence to pursue what pleases her, @@.lightcoral;increasing her kinkiness.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].fetishStrength > 10>>
 		<<if $slaves[$i].trust < -20>>
-			She's too afraid to pursue what pleases her, @@.coral;reducing her sexual distinctiveness.@@
+			$He's too afraid to pursue what pleases her, @@.coral;reducing her sexual distinctiveness.@@
 			<<set $slaves[$i].fetishStrength -= 4>>
 		<<elseif $slaves[$i].devotion < -20>>
-			She's so unhappy with her life as a sex slave that @@.coral;her interest in unusual sex decreases.@@
+			$He's so unhappy with her life as a sex slave that @@.coral;her interest in unusual sex decreases.@@
 			<<set $slaves[$i].fetishStrength -= 4>>
 		<<elseif $slaves[$i].trust <= 50>>
-			She lacks the confidence to pursue what pleases her, @@.coral;reducing her kinkiness.@@
+			$He lacks the confidence to pursue what pleases her, @@.coral;reducing her kinkiness.@@
 			<<set $slaves[$i].fetishStrength -= 2>>
 		<<elseif $slaves[$i].devotion <= 50>>
-			She's not fully comfortable being a sex slave, @@.coral;reducing her interest in kinky sex.@@
+			$He's not fully comfortable being a sex slave, @@.coral;reducing her interest in kinky sex.@@
 			<<set $slaves[$i].fetishStrength -= 2>>
 		<</if>>
 		<<if $slaves[$i].fetish == "buttslut">>
 		<<if $slaves[$i].prostate == 0>>
 		<<if $slaves[$i].vagina == -1>>
 		<<if $slaves[$i].trust >= -20>>
-			She thinks of her anus as her primary sexual organ, but she lacks prostate or a g-spot to be internally stimulated by a cock inside her rear hole, @@.coral;reducing her ability to appreciate anal.@@
+			$He thinks of her anus as her primary sexual organ, but $he lacks prostate or a g-spot to be internally stimulated by a cock inside her rear hole, @@.coral;reducing her ability to appreciate anal.@@
 			<<set $slaves[$i].fetishStrength -= 4>>
 		<</if>>
 		<</if>>
@@ -1659,7 +1659,7 @@
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].fetishStrength <= 5>>
-		@@.coral;She has lost all interest in her fetishes and is now sexually vanilla.@@
+		@@.coral;$He has lost all interest in her fetishes and is now sexually vanilla.@@
 		<<set $slaves[$i].fetish = "none", $slaves[$i].fetishStrength = 0>>
 	<</if>>
 <</if>>
@@ -1670,23 +1670,23 @@
 	<<if ($slaves[$i].behavioralFlaw == "devout") && ($arcologies[0].FSChattelReligionist != "unset")>>
 	<<if ($slaves[$i].devotion <= 20)>>
 		<<if ($slaves[$i].trust < -20)>>
-		She is inwardly @@.gold;terrified@@ by living in what she sees as a powerful theocratic society inimical to her old world faith.
+		$He is inwardly @@.gold;terrified@@ by living in what $he sees as a powerful theocratic society inimical to her old world faith.
 		<<set $slaves[$i].trust -= 1*Math.trunc($arcologies[0].FSChattelReligionist/25)>>
 		<<else>>
-		She is filled with @@.mediumorchid;hatred and disgust@@ by Chattel Religionism, which she believes to be heretical and wrong.
+		$He is filled with @@.mediumorchid;hatred and disgust@@ by Chattel Religionism, which $he believes to be heretical and wrong.
 		<<set $slaves[$i].devotion -= 1*Math.trunc($arcologies[0].FSChattelReligionist/35)>>
 		<</if>>
 	<<elseif ($slaves[$i].devotion <= 50)>>
 		<<if ($slaves[$i].trust > 20)>>
-		She is experiencing considerable spiritual anguish as she is torn between obedience and conviction that Chattel Religionism is heretical and wrong. This @@.gold;hinders her acceptance of her place@@ in slave society.
+		$He is experiencing considerable spiritual anguish as $he is torn between obedience and conviction that Chattel Religionism is heretical and wrong. This @@.gold;hinders her acceptance of her place@@ in slave society.
 		<<set $slaves[$i].trust -= 1*Math.trunc($arcologies[0].FSChattelReligionist/25)>>
 		<<else>>
-		She is badly torn between Chattel Religionism and her old world faith, but she is doing her best to defer these spiritual issues for now.
+		$He is badly torn between Chattel Religionism and her old world faith, but $he is doing her best to defer these spiritual issues for now.
 		<</if>>
 	<<else>>
-		She has experienced a religious epiphany, and now accepts Chattel Religionism in her mind, her heart, and her <<if $slaves[$i].vagina > -1>>womanhood<<else>>anus<</if>>. @@.green;She has become sinful,@@ maliciously eager to transgress against the faith she has abandoned.
+		$He has experienced a religious epiphany, and now accepts Chattel Religionism in her mind, her heart, and her <<if $slaves[$i].vagina > -1>>womanhood<<else>>anus<</if>>. @@.green;$He has become sinful,@@ maliciously eager to transgress against the faith $he has abandoned.
 		<<set $slaves[$i].behavioralQuirk = "sinful", $slaves[$i].behavioralFlaw = "none">>
-		She now sees that everything she has suffered up to now has been a necessary and divinely ordained trial to bring her into the true faith as a holy sex slave, @@.mediumaquamarine;enormously boosting her trust in you.@@
+		$He now sees that everything $he has suffered up to now has been a necessary and divinely ordained trial to bring her into the true faith as a holy sex slave, @@.mediumaquamarine;enormously boosting her trust in you.@@
 		<<if ($slaves[$i].trust < -30)>>
 		<<set $slaves[$i].trust = -10>>
 		<<else>>
@@ -1697,50 +1697,50 @@
 	<<if $slaves[$i].fetishStrength+$slaves[$i].devotion+$slaves[$i].trust > random(1,500)>>
 		<<if ($slaves[$i].behavioralFlaw == "arrogant")>>
 		<<if ($slaves[$i].fetish == "submissive")>>
-			Her need to submit has @@.green;softened her arrogance into confidence.@@
+			$His need to submit has @@.green;softened her arrogance into confidence.@@
 			<<SoftenBehavioralFlaw $slaves[$i]>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
 		<<if ($slaves[$i].fetish == "humiliation")>>
-			Her need to be humiliated has @@.green;softened her bitchiness into a penchant for repartee.@@
+			$His need to be humiliated has @@.green;softened her bitchiness into a penchant for repartee.@@
 			<<SoftenBehavioralFlaw $slaves[$i]>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates men")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
-			She dislikes men, but fetishizes pregnancy; she comes around, and decides that @@.green;she needs a man to knock her up.@@
+			$He dislikes men, but fetishizes pregnancy; $he comes around, and decides that @@.green;$he needs a man to knock her up.@@
 			<<set $slaves[$i].behavioralQuirk = "adores men", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "boobs")>>
-			She dislikes men and adores boobs, which @@.green;softens her hatred of men into a love of women.@@
+			$He dislikes men and adores boobs, which @@.green;softens her hatred of men into a love of women.@@
 			<<SoftenBehavioralFlaw $slaves[$i]>>
 		<<elseif ($slaves[$i].attrXY > 85)>>
-			She dislikes the company of men but likes their cocks; she learns to @@.green;enjoy the male presence that comes with taking the dick.@@
+			$He dislikes the company of men but likes their cocks; $he learns to @@.green;enjoy the male presence that comes with taking the dick.@@
 			<<set $slaves[$i].behavioralQuirk = "adores men", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She dislikes men and has constant needs; women are the obvious answer, which @@.green;softens her hatred of men into a love of feminine company.@@
+			$He dislikes men and has constant needs; women are the obvious answer, which @@.green;softens her hatred of men into a love of feminine company.@@
 			<<SoftenBehavioralFlaw $slaves[$i]>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates women")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
-			She dislikes women, but fetishizes pregnancy; she comes around, and decides that @@.green;she loves pregnant girls.@@
+			$He dislikes women, but fetishizes pregnancy; $he comes around, and decides that @@.green;$he loves pregnant girls.@@
 			<<set $slaves[$i].behavioralQuirk = "adores women", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
-			She dislikes women and has a real oral fixation; eating dick is the obvious answer, which @@.green;softens her hatred of women into a love of men.@@
+			$He dislikes women and has a real oral fixation; eating dick is the obvious answer, which @@.green;softens her hatred of women into a love of men.@@
 			<<SoftenBehavioralFlaw $slaves[$i]>>
 		<<elseif ($slaves[$i].attrXX > 85)>>
-			She dislikes the company of women but likes fucking them; she learns to @@.green;enjoy the feminine presence that comes with getting some pussy.@@
+			$He dislikes the company of women but likes fucking them; $he learns to @@.green;enjoy the feminine presence that comes with getting some pussy.@@
 			<<set $slaves[$i].behavioralQuirk = "adores women", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She dislikes women and has constant needs; men are the obvious answer, which @@.green;softens her hatred of women into a love of maleness.@@
+			$He dislikes women and has constant needs; men are the obvious answer, which @@.green;softens her hatred of women into a love of maleness.@@
 			<<SoftenBehavioralFlaw $slaves[$i]>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "devout")>>
 		<<if ($slaves[$i].energy > 95)>>
-			Her need for constant sex has @@.green;softened her devoutness into an appetite for sacrilege.@@
+			$His need for constant sex has @@.green;softened her devoutness into an appetite for sacrilege.@@
 			<<SoftenBehavioralFlaw $slaves[$i]>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "liberated")>>
 		<<if ($slaves[$i].fetish == "masochist")>>
-			Her subconscious need to be abused has@@.green;converted her liberated philosophy into an ability to advocate for slavery.@@
+			$His subconscious need to be abused has@@.green;converted her liberated philosophy into an ability to advocate for slavery.@@
 			<<SoftenBehavioralFlaw $slaves[$i]>>
 		<</if>>
 		<</if>>
@@ -1749,50 +1749,50 @@
 	<<if $slaves[$i].fetishStrength+$slaves[$i].devotion+$slaves[$i].trust > random(1,500)>>
 		<<if ($slaves[$i].behavioralFlaw == "arrogant")>>
 		<<if ($slaves[$i].fetish == "submissive")>>
-			Her arrogance was probably a reflection of her subconscious need to submit, which is so satisfied by sexual slavery that @@.green;she no longer needs to act arrogant.@@
+			$His arrogance was probably a reflection of her subconscious need to submit, which is so satisfied by sexual slavery that @@.green;$he no longer needs to act arrogant.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
 		<<if ($slaves[$i].fetish == "humiliation")>>
-			Her bitchiness was probably a reflection of her sexual need to be publicly humiliated, which is so satisfied by sexual slavery that @@.green;she no longer needs to be insulting@@ to get the degradation she subconsciously needs.
+			$His bitchiness was probably a reflection of her sexual need to be publicly humiliated, which is so satisfied by sexual slavery that @@.green;$he no longer needs to be insulting@@ to get the degradation $he subconsciously needs.
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates men")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
-			She dislikes the company of men, but fetishizes pregnancy; she decides that men, those hunky impregnators, can't be //that// bad, and @@.green;gets over her hatred.@@
+			$He dislikes the company of men, but fetishizes pregnancy; $he decides that men, those hunky impregnators, can't be //that// bad, and @@.green;gets over her hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "boobs")>>
-			She dislikes the company of men and adores boobs; she finds that she doesn't mind ogling titties with the boys, and @@.green;gets over her hatred.@@
+			$He dislikes the company of men and adores boobs; $he finds that $he doesn't mind ogling titties with the boys, and @@.green;gets over her hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].attrXY > 85)>>
-			She dislikes the company of men but likes their cocks; she gets used to putting up with maleness if it gets her the dick, and @@.green;gets over her hatred.@@
+			$He dislikes the company of men but likes their cocks; $he gets used to putting up with maleness if it gets her the dick, and @@.green;gets over her hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She dislikes the company of men and has constant needs; she can't afford to narrow the playing field, and @@.green;gets over her hatred.@@
+			$He dislikes the company of men and has constant needs; $he can't afford to narrow the playing field, and @@.green;gets over her hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates women")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
-			She dislikes the company of women, but fetishizes pregnancy; that women, with their motherly hips and fertile cunts, can't be //that// bad, and @@.green;gets over her hatred.@@
+			$He dislikes the company of women, but fetishizes pregnancy; that women, with their motherly hips and fertile cunts, can't be //that// bad, and @@.green;gets over her hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
-			She dislikes the company of women and has a real oral fixation; she decides that women, with their soft, kissable lips can't be //that// bad, and @@.green;gets over her hatred.@@
+			$He dislikes the company of women and has a real oral fixation; $he decides that women, with their soft, kissable lips can't be //that// bad, and @@.green;gets over her hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].attrXX > 85)>>
-			She dislikes the company of women but likes fucking them; she gets used to putting up with girls to get into their pants, and @@.green;gets over her hatred.@@
+			$He dislikes the company of women but likes fucking them; $he gets used to putting up with girls to get into their pants, and @@.green;gets over her hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She dislikes the company of women and has constant needs; she can't afford to narrow the playing field, and @@.green;gets over her hatred.@@
+			$He dislikes the company of women and has constant needs; $he can't afford to narrow the playing field, and @@.green;gets over her hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "devout")>>
 		<<if ($slaves[$i].energy > 95)>>
-			She finally resolves her internal dilemma between the faith she was brought up in and her all-consuming need to be a slut by deciding that she prefers being a sinner. @@.green;She is no longer devoutly faithful@@ to her old religion.
+			$He finally resolves her internal dilemma between the faith $he was brought up in and her all-consuming need to be a slut by deciding that $he prefers being a sinner. @@.green;$He is no longer devoutly faithful@@ to her old religion.
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "liberated")>>
 		<<if ($slaves[$i].fetish == "masochist")>>
-			Her pre-enslavement belief that she deserves rights and respect fades in light of how much she likes being beaten and abused. @@.green;She is no longer a modern, liberated girl,@@ and accepts her place as a sex slave as natural.
+			$His pre-enslavement belief that $he deserves rights and respect fades in light of how much $he likes being beaten and abused. @@.green;$He is no longer a modern, liberated girl,@@ and accepts her place as a sex slave as natural.
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<</if>>
@@ -1807,86 +1807,86 @@
 <<if ($slaves[$i].sexualQuirk == "none")>>
 	<<if ($slaves[$i].sexualFlaw == "hates anal")>>
 		<<if $slaves[$i].anusPiercing>>
-			The constant stimulation her guiche piercings give her most intimate areas helps her with her anal hangups, @@.green;softening her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
+			The constant stimulation her guiche piercings give her most intimate areas helps her with her anal hangups, @@.green;softening her hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			Her sexual fascination with things entering her asshole @@.green;softens her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
+			$His sexual fascination with things entering her asshole @@.green;softens her hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<<elseif ($slaves[$i].energy > 95)>>
-			As a nymphomaniac she appreciates kinky sex, so she @@.green;softens her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
+			As a nymphomaniac $he appreciates kinky sex, so $he @@.green;softens her hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates oral")>>
 		<<if $slaves[$i].tonguePiercing>>
-			She can't stop sucking on her tongue piercings, and she gets over her oral hangups, @@.green;softening her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
+			$He can't stop sucking on her tongue piercings, and $he gets over her oral hangups, @@.green;softening her hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
-			She can't get her beloved cum without choking down dick, so she @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
+			$He can't get her beloved cum without choking down dick, so $he @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She needs sex so much she often has to encourage her partners orally, so she @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
+			$He needs sex so much $he often has to encourage her partners orally, so $he @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates penetration")>>
 		<<if $slaves[$i].vaginaPiercing>>
-			Her pussy piercings get her used to the idea that it's a fuckhole, not her precious womanhood, @@.green;softening her hatred of penetration into an appetite for abusive sex.@@ She still cries, but she climaxes as she cries.
+			$His pussy piercings get her used to the idea that it's a fuckhole, not her precious womanhood, @@.green;softening her hatred of penetration into an appetite for abusive sex.@@ $He still cries, but $he climaxes as $he cries.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			Her sexual fascination with anal penetration @@.green;softens her hatred of penetration into an appetite for abusive sex.@@ She still cries, but she climaxes as she cries.
+			$His sexual fascination with anal penetration @@.green;softens her hatred of penetration into an appetite for abusive sex.@@ $He still cries, but $he climaxes as $he cries.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<<elseif ($slaves[$i].energy > 95)>>
-			As a nymphomaniac she appreciates kinky sex, so she @@.green;softens her hatred of penetration into an appetite for abusive intercourse.@@ She still cries, but she climaxes as she cries.
+			As a nymphomaniac $he appreciates kinky sex, so $he @@.green;softens her hatred of penetration into an appetite for abusive intercourse.@@ $He still cries, but $he climaxes as $he cries.
 			<<SoftenSexualFlaw $slaves[$i]>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "apathetic")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
-		Her subconscious drive to submit @@.green;softens her sexual apathy into constant care for her partners' wants.@@
+		$His subconscious drive to submit @@.green;softens her sexual apathy into constant care for her partners' wants.@@
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She needs sex so badly that she can no longer be apathetic in bed, and @@.green;softens her sexual apathy into care for what keeps her partners aroused.@@
+		$He needs sex so badly that $he can no longer be apathetic in bed, and @@.green;softens her sexual apathy into care for what keeps her partners aroused.@@
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "crude")>>
 	<<if ($slaves[$i].fetish == "buttslut")>>
-		She needs to avoid making unsexy noises during buttsex to be an appealing enough anal partner to satisfy her backdoor needs, @@.green;softening her crudeness into a willingness to do anything.@@
+		$He needs to avoid making unsexy noises during buttsex to be an appealing enough anal partner to satisfy her backdoor needs, @@.green;softening her crudeness into a willingness to do anything.@@
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She needs sex so badly that she can no longer afford to disgust partners, and @@.green;softens her sexual crudeness into a willingness to do anything.@@
+		$He needs sex so badly that $he can no longer afford to disgust partners, and @@.green;softens her sexual crudeness into a willingness to do anything.@@
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "judgemental")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
-		Her subconscious belief that she's worthless @@.green;softens her judgemental behavior into eagerness to be fucked by the biggest cocks.@@
+		$His subconscious belief that $he's worthless @@.green;softens her judgemental behavior into eagerness to be fucked by the biggest cocks.@@
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She needs sex so badly that she can no longer be selective, and @@.green;softens her judgemental behavior into a love of big dicks, though she now loves them all.@@
+		$He needs sex so badly that $he can no longer be selective, and @@.green;softens her judgemental behavior into a love of big dicks, though $he now loves them all.@@
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "shamefast")>>
 	<<if ($slaves[$i].fetish == "humiliation")>>
-		She decides that hiding won't get her the humiliation she craves, and @@.green;softens her shamefastness into a willingness to tease.@@
+		$He decides that hiding won't get her the humiliation $he craves, and @@.green;softens her shamefastness into a willingness to tease.@@
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She decides that hiding isn't getting her enough sex, and @@.green;softens her shamefastness into a willingness to tease.@@
+		$He decides that hiding isn't getting her enough sex, and @@.green;softens her shamefastness into a willingness to tease.@@
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "idealistic")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
-		Her appetite for submission has @@.green;softened her innocent ideas about sex into an ability to find romance@@ in the life of a sex slave.
+		$His appetite for submission has @@.green;softened her innocent ideas about sex into an ability to find romance@@ in the life of a sex slave.
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		Her appetite for sex has @@.green;softened her innocent ideas about sex into an ability to find something romantic@@ in a constant whirl of intercourse.
+		$His appetite for sex has @@.green;softened her innocent ideas about sex into an ability to find something romantic@@ in a constant whirl of intercourse.
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "repressed")>>
 	<<if ($slaves[$i].fetish == "buttslut")>>
-		She grew up being taught that good girls do not take cock up their good girl anuses, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@  of dicks up her behind.
+		$He grew up being taught that good girls do not take cock up their good girl anuses, but $he's just now decided $he prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@  of dicks up her behind.
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<<elseif ($slaves[$i].fetish == "cumslut")>>
-		She grew up being taught that good girls do not put their good girl mouths on boys' private parts, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perverted@@ idea of dicks down her throat.
+		$He grew up being taught that good girls do not put their good girl mouths on boys' private parts, but $he's just now decided $he prefers being a bad girl and has @@.green;softened her repression into arousal at the perverted@@ idea of dicks down her throat.
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She grew up being taught that good girls do not happily fuck anything that moves, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@ of revelling in sexual addiction.
+		$He grew up being taught that good girls do not happily fuck anything that moves, but $he's just now decided $he prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@ of revelling in sexual addiction.
 		<<SoftenSexualFlaw $slaves[$i]>>
 	<</if>>
 	<</if>>
@@ -1896,77 +1896,77 @@
 			The constant stimulation her guiche piercings give her most intimate areas helps her with her anal hangups, so @@.green;her previous hesitations about buttsex vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			Her sexual fascination with things entering her asshole overcomes her professed hatred of anal, so @@.green;her previous hesitations about buttsex vanish.@@
+			$His sexual fascination with things entering her asshole overcomes her professed hatred of anal, so @@.green;her previous hesitations about buttsex vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			As a nymphomaniac she doesn't really care which hole she's getting fucked in, so @@.green;her previous hesitations about buttsex vanish.@@
+			As a nymphomaniac $he doesn't really care which hole $he's getting fucked in, so @@.green;her previous hesitations about buttsex vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates oral")>>
 		<<if $slaves[$i].tonguePiercing>>
-			She can't stop sucking on her tongue piercings, so @@.green;she gets over her oral hangups.@@
+			$He can't stop sucking on her tongue piercings, so @@.green;$he gets over her oral hangups.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
-			She can't get her beloved cum without sucking, so @@.green;she forcibly overcomes her strong gag reflex.@@
+			$He can't get her beloved cum without sucking, so @@.green;$he forcibly overcomes her strong gag reflex.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She needs sex so much she often has to encourage her partners orally, so @@.green;she forcibly overcomes her strong gag reflex.@@
+			$He needs sex so much $he often has to encourage her partners orally, so @@.green;$he forcibly overcomes her strong gag reflex.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates penetration")>>
 		<<if $slaves[$i].vaginaPiercing>>
-			Her pussy piercings get her used to the idea that it's a fuckhole, not her precious womanhood, so @@.green;her previous hesitations about getting fucked vanish.@@
+			$His pussy piercings get her used to the idea that it's a fuckhole, not her precious womanhood, so @@.green;her previous hesitations about getting fucked vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			She's fascinated with the perversity of being anally penetrated, so @@.green;her previous hesitations about getting fucked vanish.@@
+			$He's fascinated with the perversity of being anally penetrated, so @@.green;her previous hesitations about getting fucked vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She needs sex like she needs air, so @@.green;her previous hesitations about getting fucked vanish.@@
+			$He needs sex like $he needs air, so @@.green;her previous hesitations about getting fucked vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "apathetic")>>
 	<<if ($slaves[$i].fetish == "dom")>>
-		She likes being on top so much @@.green;she can no longer bear being lazy in bed.@@
+		$He likes being on top so much @@.green;$he can no longer bear being lazy in bed.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She needs sex so badly that @@.green;she can no longer afford to wait apathetically for others to fuck her.@@
+		$He needs sex so badly that @@.green;$he can no longer afford to wait apathetically for others to fuck her.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "crude")>>
 	<<if ($slaves[$i].energy > 95)>>
-		She needs sex so badly that @@.green;she can no longer afford to disgust partners into abandoning intercourse.@@
+		$He needs sex so badly that @@.green;$he can no longer afford to disgust partners into abandoning intercourse.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "judgemental")>>
 	<<if ($slaves[$i].energy > 95)>>
-		She needs sex so badly that @@.green;she can no longer afford to turn potential partners off by judging them.@@
+		$He needs sex so badly that @@.green;$he can no longer afford to turn potential partners off by judging them.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "shamefast")>>
 	<<if ($slaves[$i].fetish == "humiliation")>>
-		Her shamefastness is no longer anything but a pretense; @@.green;she's decided she really does like getting fucked in public.@@
+		$His shamefastness is no longer anything but a pretense; @@.green;$he's decided $he really does like getting fucked in public.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She needs sex so badly that @@.green;she can no longer afford to be embarrassed by public fucking.@@
+		$He needs sex so badly that @@.green;$he can no longer afford to be embarrassed by public fucking.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "idealistic")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
-		She always expected to be able to turn down sex, but @@.green;she's finally realized that she doesn't want to be asked.@@
+		$He always expected to be able to turn down sex, but @@.green;$he's finally realized that $he doesn't want to be asked.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<<elseif ($slaves[$i].energy > 95)>>
-		Hard as it is for her to admit, she recognizes her own willingness to take sex from other slaves if it isn't forthcoming, and @@.green;accepts that a slave nympho can't worry about trifles like consent.@@
+		Hard as it is for her to admit, $he recognizes her own willingness to take sex from other slaves if it isn't forthcoming, and @@.green;accepts that a slave nympho can't worry about trifles like consent.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "repressed")>>
 	<<if ($slaves[$i].fetish == "buttslut")>>
-		She grew up being taught that good girls do not take cock up their good girl anuses, but @@.green;she's just now decided she prefers being a bad girl.@@
+		$He grew up being taught that good girls do not take cock up their good girl anuses, but @@.green;$he's just now decided $he prefers being a bad girl.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<<elseif ($slaves[$i].fetish == "cumslut")>>
-		She grew up being taught that good girls do not put their good girl mouths on boys' private parts, but @@.green;she's just now decided she prefers being a bad girl.@@
+		$He grew up being taught that good girls do not put their good girl mouths on boys' private parts, but @@.green;$he's just now decided $he prefers being a bad girl.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She grew up being taught that good girls do not happily fuck anything that moves, but @@.green;she's just now decided she prefers being a bad girl.@@
+		$He grew up being taught that good girls do not happily fuck anything that moves, but @@.green;$he's just now decided $he prefers being a bad girl.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<</if>>
@@ -1980,83 +1980,83 @@
 <<case "cum addict">>
 	<<if $slaves[$i].fetish != "cumslut">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Her cum addiction @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His cum addiction @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her cum addiction @@.lightcoral;forces her back towards oral fixation.@@
+			$His cum addiction @@.lightcoral;forces her back towards oral fixation.@@
 			<<set $slaves[$i].fetish = "cumslut">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her cum addiction @@.lightcoral;forces her back towards her past life as an abject cumslut.@@
+			$His cum addiction @@.lightcoral;forces her back towards her past life as an abject cumslut.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ["whore", "serve the public", "work in the brothel", "serve in the club", "work a glory hole", "be confined in the arcade"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by how many dicks she gets to suck at work.
+		$His paraphilia is satisfied by how many dicks $he gets to suck at work.
 		<<set _para = 1>>
 	<<elseif ($PC.dick == 1) && ($slaves[$i].toyHole == "mouth") && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by constant oral sex with you.
+		$His paraphilia is satisfied by constant oral sex with you.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].inflation != 0 && $slaves[$i].inflationType == "cum">>
-		Her paraphilia is satisfied by swelling her body with cum.
+		$His paraphilia is satisfied by swelling her body with cum.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].dietCum == 1>>
-		Her paraphilia is satisfied by what she gets to eat.
+		$His paraphilia is satisfied by what $he gets to eat.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].dietCum == 2>>
 		Other slaves in your penthouse are disturbed by her insatiable appetite for human ejaculate, which her heavy cum-diet encourages.
 		<<set _para = 1>>
 	<<elseif $feeder != 0>>
-		Her paraphilia is satisfied by the way she gets to eat.
+		$His paraphilia is satisfied by the way $he gets to eat.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "work in the dairy") && ($dairyFeedersSetting > 0)>>
 	<<else>>
-		She doesn't seem to feel she's getting enough cum, leaving the cum addict @@.mediumorchid;depressed and anxious.@@
+		$He doesn't seem to feel $he's getting enough cum, leaving the cum addict @@.mediumorchid;depressed and anxious.@@
 		<<set $slaves[$i].devotion -= 2>>
 		<<set _para = -1>>
 	<</if>>
 <<case "anal addict">>
 	<<if $slaves[$i].fetish != "buttslut">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Her anal addiction @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His anal addiction @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her anal addiction @@.lightcoral;forces her back towards an intense preference for buttsex.@@
+			$His anal addiction @@.lightcoral;forces her back towards an intense preference for buttsex.@@
 			<<set $slaves[$i].fetish = "buttslut">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her anal addiction @@.lightcoral;forces her back towards her past life as an abject buttslut.@@
+			$His anal addiction @@.lightcoral;forces her back towards her past life as an abject buttslut.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ["whore", "serve the public", "work in the brothel", "serve in the club", "work a glory hole", "be confined in the arcade"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by how many dicks get shoved up her butt at work.
+		$His paraphilia is satisfied by how many dicks get shoved up her butt at work.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].toyHole == "ass") && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by constant anal sex with you.
+		$His paraphilia is satisfied by constant anal sex with you.
 		<<set _para = 1>>
 	<<elseif $suppository != 0>>
-		Her paraphilia is satisfied by the way she gets to take medication.
+		$His paraphilia is satisfied by the way $he gets to take medication.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].buttplug == "huge plug" || $slaves[$i].buttplug == "long, huge plug">>
-		Her paraphilia is satisfied by the enormous plug she wears in her ass.
+		$His paraphilia is satisfied by the enormous plug $he wears in her ass.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "work in the dairy") && ($dairyStimulatorsSetting > 0)>>
 	<<else>>
-		She doesn't seem to feel she's getting buttfucked often enough, leaving the anal addict @@.mediumorchid;depressed and anxious.@@
+		$He doesn't seem to feel $he's getting buttfucked often enough, leaving the anal addict @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 	<<if $slaves[$i].prostate == 0>>
 	<<if $slaves[$i].vagina == -1>>
 	<<if random(1,5) == 1>>
-		Since she lacks a prostate or a g-spot to be stimulated by cocks up her butt, her @@.green;purely psychological addiction to asshole sex resolves itself,@@ and she @@.coral;starts to consider other sexual pursuits.@@
+		Since $he lacks a prostate or a g-spot to be stimulated by cocks up her butt, her @@.green;purely psychological addiction to asshole sex resolves itself,@@ and $he @@.coral;starts to consider other sexual pursuits.@@
 		<<set $slaves[$i].sexualQuirk = "none">>
 		<<set $slaves[$i].fetishStrength -= 20>>
 	<</if>>
@@ -2069,24 +2069,24 @@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her addiction to exposure @@.lightcoral;forces her back towards a humiliation fetish.@@
+			$His addiction to exposure @@.lightcoral;forces her back towards a humiliation fetish.@@
 			<<set $slaves[$i].fetish = "humiliation">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her addiction to exposure @@.lightcoral;forces her back towards her past life as an abject humiliation whore.@@
+			$His addiction to exposure @@.lightcoral;forces her back towards her past life as an abject humiliation whore.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ["whore", "serve the public", "work in the brothel", "serve in the club", "be the DJ"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by how often she gets publicly fucked at work.
+		$His paraphilia is satisfied by how often $he gets publicly fucked at work.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].clothes == "none">>
-		Her paraphilia is satisfied by her total nudity.
+		$His paraphilia is satisfied by her total nudity.
 		<<set _para = 1>>
 	<<else>>
-		She doesn't seem to feel she's getting fucked in public enough, leaving the attention whore @@.mediumorchid;depressed and anxious.@@
+		$He doesn't seem to feel $he's getting fucked in public enough, leaving the attention whore @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
@@ -2097,34 +2097,34 @@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her addiction to breast growth @@.lightcoral;forces her back towards a boob fetish.@@
+			$His addiction to breast growth @@.lightcoral;forces her back towards a boob fetish.@@
 			<<set $slaves[$i].fetish = "boobs">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her addiction to breast growth @@.lightcoral;forces her back towards her past life as an abject slut for mammary intercourse.@@
+			$His addiction to breast growth @@.lightcoral;forces her back towards her past life as an abject slut for mammary intercourse.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ["get milked", "work in the dairy"].includes($slaves[$i].assignment) && $slaves[$i].lactation > 0>>
-		Her paraphilia is satisfied by her work as a cow; she can feel her udders swelling with milk.
+		$His paraphilia is satisfied by her work as a cow; $he can feel her udders swelling with milk.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].health < 0>>
-		Her paraphilia is ameliorated by her poor health; she knows she can't take expansion right now.
+		$His paraphilia is ameliorated by her poor health; $he knows $he can't take expansion right now.
 	<<elseif $slaves[$i].drugs == "intensive breast injections">>
-		Her paraphilia makes her feel @@.mediumaquamarine;fulfilled to be a sex slave@@ if it means breast expansion like this.
+		$His paraphilia makes her feel @@.mediumaquamarine;fulfilled to be a sex slave@@ if it means breast expansion like this.
 		<<set $slaves[$i].trust += 2>>
 		<<set _para = 1>>
 	<<elseif $slaves[$i].drugs == "breast injections">>
-		Her paraphilia makes breast injections very satisfying for her.
+		$His paraphilia makes breast injections very satisfying for $him.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].drugs == "hyper breast injections">>
-		Her paraphilia makes her feel @@.mediumaquamarine;fulfilled to be a sex slave@@ if it means breast expansion like this.
+		$His paraphilia makes her feel @@.mediumaquamarine;fulfilled to be a sex slave@@ if it means breast expansion like this.
 		<<set $slaves[$i].trust += 2>>
 		<<set _para = 1>>
 	<<else>>
-		She feels her breasts are shrinking horribly, leaving the growth addict @@.mediumorchid;depressed and anxious.@@
+		$He feels her breasts are shrinking horribly, leaving the growth addict @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
@@ -2135,27 +2135,27 @@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her addiction to sexual force @@.lightcoral;forces her back towards sexual dominance.@@
+			$His addiction to sexual force @@.lightcoral;forces her back towards sexual dominance.@@
 			<<set $slaves[$i].fetish = "dom">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her need to force others to pleasure her @@.lightcoral;forces her back towards her past life as a total dom.@@
+			$His need to force others to pleasure her @@.lightcoral;forces her back towards her past life as a total dom.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].assignment == "be your Head Girl")>>
-		Her paraphilia is satisfied by her work as your Head Girl.
+		$His paraphilia is satisfied by her work as your Head Girl.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "be the Wardeness")>>
-		Her paraphilia is satisfied by her work as your Wardeness.
+		$His paraphilia is satisfied by her work as your Wardeness.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "be the Stewardess")>>
-		Her paraphilia is satisfied by her work as the Stewardess.
+		$His paraphilia is satisfied by her work as the Stewardess.
 		<<set _para = 1>>
 	<<else>>
-		She gets few chances to indulge her need to hold others down as she fucks them, leaving her @@.mediumorchid;depressed and anxious.@@
+		$He gets few chances to indulge her need to hold others down as $he fucks them, leaving her @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
@@ -2166,102 +2166,102 @@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her addiction to tormenting others sexually @@.lightcoral;forces her back towards sadism.@@
+			$His addiction to tormenting others sexually @@.lightcoral;forces her back towards sadism.@@
 			<<set $slaves[$i].fetish = "sadist">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her need to be the only one enjoying sex @@.lightcoral;forces her back towards her past life as a complete sexual sadist.@@
+			$His need to be the only one enjoying sex @@.lightcoral;forces her back towards her past life as a complete sexual sadist.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].assignment == "be your Head Girl")>>
-		Her paraphilia is satisfied by her work as your Head Girl.
+		$His paraphilia is satisfied by her work as your Head Girl.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "be the Wardeness")>>
-		Her paraphilia is satisfied by her work as your Wardeness.
+		$His paraphilia is satisfied by her work as your Wardeness.
 		<<set _para = 1>>
 	<<else>>
-		She gets few chances to indulge her need to subject others to sexual anguish, leaving her @@.mediumorchid;depressed and anxious.@@
+		$He gets few chances to indulge her need to subject others to sexual anguish, leaving her @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "self hating">>
 	<<if $slaves[$i].fetish != "masochist">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Her sexual self hatred @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His sexual self hatred @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her sexual self hatred @@.lightcoral;forces her back towards masochism.@@
+			$His sexual self hatred @@.lightcoral;forces her back towards masochism.@@
 			<<set $slaves[$i].fetish = "masochist">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her sexual self hatred @@.lightcoral;forces her back towards her past life as a total masochist.@@
+			$His sexual self hatred @@.lightcoral;forces her back towards her past life as a total masochist.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].assignment == "work in the dairy") && ($dairyRestraintsSetting >= 2)>>
-		Her paraphilia is satisfied by her horrible life as a producer of useful fluids and a receptacle for machine rape.
+		$His paraphilia is satisfied by her horrible life as a producer of useful fluids and a receptacle for machine rape.
 		<<set _para = 1>>
 	<<elseif ["work a glory hole", "be confined in the arcade"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by her horrible life as a helpless hole for an infinite bag of dicks.
+		$His paraphilia is satisfied by her horrible life as a helpless hole for an infinite bag of dicks.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].trust < -50>>
-		Her paraphilia is satisfied by her constant terror.
+		$His paraphilia is satisfied by her constant terror.
 		<<set _para = 1>>
 	<<else>>
-		She doesn't seem to feel she's treated poorly enough, leaving the self hating slut @@.mediumorchid;depressed and anxious.@@
+		$He doesn't seem to feel $he's treated poorly enough, leaving the self hating slut @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "neglectful">>
 	<<if $slaves[$i].fetish != "submissive">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Her sexual self neglect @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His sexual self neglect @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her sexual self neglect @@.lightcoral;forces her back towards submissiveness.@@
+			$His sexual self neglect @@.lightcoral;forces her back towards submissiveness.@@
 			<<set $slaves[$i].fetish = "submissive">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her sexual self neglect @@.lightcoral;forces her back towards her past life as a total submissive.@@
+			$His sexual self neglect @@.lightcoral;forces her back towards her past life as a total submissive.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ["whore", "serve the public", "work in the brothel", "serve in the club", "work a glory hole", "be confined in the arcade", "work as a servant", "be the Attendant", "be the Milkmaid"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by how she's expected to serve others' sexual needs at work.
+		$His paraphilia is satisfied by how $he's expected to serve others' sexual needs at work.
 		<<set _para = 1>>
 	<<elseif ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by how she's expected to serve your sexual needs at work.
+		$His paraphilia is satisfied by how $he's expected to serve your sexual needs at work.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].assignment == "be a subordinate slave">>
-		Her paraphilia is satisfied by how she's expected to serve other slaves' sexual needs.
+		$His paraphilia is satisfied by how $he's expected to serve other slaves' sexual needs.
 		<<set _para = 1>>
 	<<else>>
-		She doesn't seem to feel she's serving others' sexual needs enough, leaving her @@.mediumorchid;depressed and anxious.@@
+		$He doesn't seem to feel $he's serving others' sexual needs enough, leaving her @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "breeder">>
 	<<if $slaves[$i].fetish != "pregnancy">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Her breeding obsession @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His breeding obsession @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			Her breeding obsession @@.lightcoral;forces her back towards appreciation for impregnation.@@
+			$His breeding obsession @@.lightcoral;forces her back towards appreciation for impregnation.@@
 			<<set $slaves[$i].fetish = "pregnancy">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Her breeding obsession @@.lightcoral;forces her back towards her past life as an abject impregnation whore.@@
+			$His breeding obsession @@.lightcoral;forces her back towards her past life as an abject impregnation whore.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
@@ -2269,10 +2269,10 @@
 	<<if $arcologies[0].FSRestart != "unset">>
 		Living in a society that rejects her paraphilia
 		<<if $slaves[$i].breedingMark == 1>>
-			would have mentally and emotionally crippled her; but as a designated breeder , she can't help but @@.hotpink;love her role@@ in society.
+			would have mentally and emotionally crippled her; but as a designated breeder , $he can't help but @@.hotpink;love her role@@ in society.
 			<<set $slaves[$i].devotion++>>
 		<<else>>
-			@@.mediumorchid;mentally and emotionally cripples@@ her.
+			@@.mediumorchid;mentally and emotionally cripples@@ $him.
 			<<set $slaves[$i].devotion -= 10>>
 		<</if>>
 	<<elseif $arcologies[0].FSRepopulationFocus != "unset">>
@@ -2280,38 +2280,38 @@
 		<<set $slaves[$i].devotion += 5>>
 	<</if>>
 	<<if $slaves[$i].broodmother > 0 && $slaves[$i].pregKnown == 1>>
-		She knows she will be pregnant until her body gives out, and @@.hotpink;she couldn't be happier.@@
+		$He knows $he will be pregnant until her body gives out, and @@.hotpink;$he couldn't be happier.@@
 		<<set _para = 1>>
 		<<set $slaves[$i].devotion += 5>>
 	<<elseif $slaves[$i].pregControl == "labor supressors" && $slaves[$i].preg >= 40>>
-		Under the effects of labor suppression drugs, she knows she will be pregnant until you decided to allow her birth. @@.hotpink;She couldn't be happier.@@
+		Under the effects of labor suppression drugs, $he knows $he will be pregnant until you decided to allow her birth. @@.hotpink;$He couldn't be happier.@@
 		<<set _para = 1>>
 		<<set $slaves[$i].devotion += 5>>
 	<<elseif $slaves[$i].pregType >= 10 && $slaves[$i].pregKnown == 1>>
-		Her growing hyperpregnancy feeds her paraphilia and @@.hotpink;fulfills her deepest fantasies.@@
+		$His growing hyperpregnancy feeds her paraphilia and @@.hotpink;fulfills her deepest fantasies.@@
 		<<set _para = 1>>
 		<<set $slaves[$i].devotion += 3>>
 	<<elseif $slaves[$i].pregKnown == 1>>
-		Her paraphilia is satisfied by her pregnancy.
+		$His paraphilia is satisfied by $his pregnancy.
 		<<set _para = 1>>
 	<<elseif canGetPregnant($slaves[$i]) && ($PC.dick == 1) && ($slaves[$i].toyHole == "pussy" && $slaves[$i].mpreg != 1) && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by constant unprotected vaginal sex with you.
+		$His paraphilia is satisfied by constant unprotected vaginal sex with you.
 		<<set _para = 1>>
 	<<elseif canGetPregnant($slaves[$i]) && ($PC.dick == 1) && ($slaves[$i].toyHole == "ass" && $slaves[$i].mpreg == 1) && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>>
-		Her paraphilia is satisfied by constant unprotected anal sex with you.
+		$His paraphilia is satisfied by constant unprotected anal sex with you.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].bellyImplant >= 60000>>
-		Her paraphilia is satisfied by her overfilled belly implant.
+		$His paraphilia is satisfied by $his overfilled belly implant.
 		<<set _para = 1>>
 	<<elseif setup.fakeBellies.includes($bellyAccessory)>>
-		She @@.mediumorchid;loathes@@ being forced to carry a fake pregnancy.
+		$He @@.mediumorchid;loathes@@ being forced to carry a fake pregnancy.
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 3>>
 	<<elseif $slaves[$i].pregWeek < 0>>
-		Her paraphilia is temporarily sated by her recent pregnancy, though she anxiously counts the days until she can get pregnant again.
+		$His paraphilia is temporarily sated by $his recent pregnancy, though $he anxiously counts the days until $he can get pregnant again.
 		<<set _para = 1>>
 	<<else>>
-		She isn't pregnant, leaving the breeder slut @@.mediumorchid;depressed and anxious.@@
+		$He isn't pregnant, leaving the breeder slut @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
@@ -2324,11 +2324,11 @@
 	<<if ($slaves[$i].fetishStrength <= 95)>>
 	<<if ($slaves[$i].fetish != "boobs")>>
 	<<if _fetishChangeChance > random(0,100)>>
-		Since she has had her lactating nipples constantly caressed by the milkers, @@.lightcoral;she begins to appreciate nipple stimulation in a new way.@@
+		Since $he has had $his lactating nipples constantly caressed by the milkers, @@.lightcoral;$he begins to appreciate nipple stimulation in a new way.@@
 		<<set $slaves[$i].fetish = "boobs", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 	<</if>>
 	<<elseif ($slaves[$i].fetish == "boobs") && ($slaves[$i].fetishStrength <= 95)>>
-		Since she has had her lactating nipples constantly caressed by the milkers, @@.lightcoral;she sinks deeper into sexual reliance on nipple stimulation.@@
+		Since $he has had $his lactating nipples constantly caressed by the milkers, @@.lightcoral;$he sinks deeper into sexual reliance on nipple stimulation.@@
 		<<set $slaves[$i].fetishStrength += 4>>
 	<</if>>
 	<</if>>
@@ -2338,12 +2338,12 @@
 	<<if $slaves[$i].fetishStrength <= 95>>
 	<<if $slaves[$i].fetish != "buttslut">>
 		<<if _fetishChangeChance > random(0,100)>>
-			Since she has had her prostate constantly stimulated to encourage her to give cum, @@.lightcoral;she begins to look forward to anal penetration.@@
+			Since $he has had her prostate constantly stimulated to encourage her to give cum, @@.lightcoral;$he begins to look forward to anal penetration.@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Since she has had her prostate constantly stimulated to encourage her to give cum, @@.lightcoral;she sinks deeper into sexual reliance on penetration of her butthole.@@
+			Since $he has had her prostate constantly stimulated to encourage her to give cum, @@.lightcoral;$he sinks deeper into sexual reliance on penetration of her butthole.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 	<</if>>
@@ -2355,13 +2355,13 @@
 <<if $slaves[$i].energy > 95>>
 <<if $slaves[$i].attrKnown == 1>>
 <<if ($slaves[$i].devotion < -20)>>
-	She's having trouble accepting it, but the sex surrounding her @@.hotpink;is intriguing to a nymphomaniac.@@
+	$He's having trouble accepting it, but the sex surrounding her @@.hotpink;is intriguing to a nymphomaniac.@@
 	<<set $slaves[$i].devotion += 2>>
 <<elseif ($slaves[$i].devotion <= 50)>>
-	@@.hotpink;Her acceptance of her life as a sex slave is driven faster@@ by how satisfied she is by the availability of her favorite activity.
+	@@.hotpink;$His acceptance of her life as a sex slave is driven faster@@ by how satisfied $he is by the availability of her favorite activity.
 	<<set $slaves[$i].devotion += 2>>
 <<else>>
-	@@.hotpink;She loves being your nympho slut.@@
+	@@.hotpink;$He loves being your nympho slut.@@
 	<<set $slaves[$i].devotion += 2>>
 <</if>>
 <</if>>
@@ -2371,7 +2371,7 @@
 <<if !["heels", "pumps", "boots", "extreme heels"].includes($slaves[$i].shoes)>>
 <<if $slaves[$i].fetish != "submissive">>
 <<if $slaves[$i].career == "a dairy cow" || $slaves[$i].career == "a breeding bull">>
-	Since she sees herself as an animal, she is perfectly content walking on all fours.
+	Since $he sees herself as an animal, $he is perfectly content walking on all fours.
 <<else>>
 <<if _fetishChangeChance > random(0,100)>>
 	Living as a sex slave on all fours @@.lightcoral;turns her into a sexual submissive.@@
@@ -2388,39 +2388,39 @@
 
 <<switch $slaves[$i].career>>
 <<case "a slave">>
-	She has been a slave so long that she can barely remember making decisions for herself, and @@.hotpink;feels naturally drawn@@ to her <<= WrittenMaster($slaves[$i])>>.
+	$He has been a slave so long that $he can barely remember making decisions for herself, and @@.hotpink;feels naturally drawn@@ to her <<= WrittenMaster($slaves[$i])>>.
 	<<set $slaves[$i].devotion += 1>>
 <<case "a dairy slave">>
-	She is @@.hotpink;thankful@@ that you saved her from becoming a mindless cow<<if $slaves[$i].trust < 50>>, though she still has her doubts<</if>>.
+	$He is @@.hotpink;thankful@@ that you saved her from becoming a mindless cow<<if $slaves[$i].trust < 50>>, though $he still has her doubts<</if>>.
 	<<set $slaves[$i].devotion += 2>>
 <<case "a Fuckdoll">>
-	She was once a Fuckdoll, leaving her @@.hotpink;willing to obey on an instinctual level.@@
+	$He was once a Fuckdoll, leaving her @@.hotpink;willing to obey on an instinctual level.@@
 	<<set $slaves[$i].devotion += 5>>
 <<case "a cum dump" "a meat toilet">>
-	She was trained to be nothing more than a warm hole to fuck, leaving her @@.hotpink;obedient@@ and @@.mediumaquamarine;willing.@@
+	$He was trained to be nothing more than a warm hole to fuck, leaving her @@.hotpink;obedient@@ and @@.mediumaquamarine;willing.@@
 	<<set $slaves[$i].devotion += 2, $slaves[$i].trust += 1>>
 <<case "a dairy cow">>
-	Her mental conditioning @@.hotpink;leaves her mellow@@ and @@.mediumaquamarine;trusting.@@
+	$His mental conditioning @@.hotpink;leaves her mellow@@ and @@.mediumaquamarine;trusting.@@
 	<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 	<<if $slaves[$i].lactation == 0>>
-		However, she is @@.gold;reduced to a state of sheer panic@@ over her dried up breasts.
+		However, $he is @@.gold;reduced to a state of sheer panic@@ over her dried up breasts.
 		<<set $slaves[$i].trust -= 10>>
 	<<elseif $slaves[$i].pregKnown == 0 && $slaves[$i].bellyImplant < 1500>>
-		However, she is @@.gold;reduced to a state of panic@@ that her milk will dry up if she doesn't get pregnant again soon.
+		However, $he is @@.gold;reduced to a state of panic@@ that her milk will dry up if $he doesn't get pregnant again soon.
 		<<set $slaves[$i].trust -= 2>>
 	<</if>>
 <<case "a breeding bull">>
-	Her mental conditioning @@.hotpink;leaves her mellow@@ and @@.mediumaquamarine;trusting.@@
+	$His mental conditioning @@.hotpink;leaves her mellow@@ and @@.mediumaquamarine;trusting.@@
 	<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 	<<if !canAchieveErection($slaves[$i])>>
-		However, she is @@.gold;reduced to a state of sheer panic@@ over her inability to get hard.
+		However, $he is @@.gold;reduced to a state of sheer panic@@ over her inability to get hard.
 		<<set $slaves[$i].trust -= 10>>
 	<<elseif !canPenetrate($slaves[$i])>>
-		However, she is @@.mediumorchid;disappointed@@ that she is unable to mount and fuck others any more.
+		However, $he is @@.mediumorchid;disappointed@@ that $he is unable to mount and fuck others any more.
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "a slave since birth">>
-	The tank's imprinting left a lasting impression on her; deep down she
+	The tank's imprinting left a lasting impression on her; deep down $he
 	<<if $slaves[$i].tankBaby == 2>>
 		@@.hotpink;knows you are to be obeyed@@ or @@.gold;bad things will happen,@@
 		<<set $slaves[$i].devotion += 3, $slaves[$i].trust -= 3>>
@@ -2428,31 +2428,31 @@
 		@@.hotpink;knows you are to be obeyed@@ and @@.mediumaquamarine;trusted,@@
 		<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 3>>
 	<</if>>
-	even if she can't understand why.
+	even if $he can't understand why.
 <<case "a breeder">>
 	<<if $slaves[$i].pregKnown == 1 && $arcologies[0].FSRepopulation != "unset">>
-		Her life used to revolve around being pregnant all the time and nothing has changed. However, being surrounded with happy, heavily pregnant women leaves her @@.hotpink;slightly more accepting@@ of her fate and @@.mediumaquamarine;hopeful@@ that her trained body will be useful to you.
+		$His life used to revolve around being pregnant all the time and nothing has changed. However, being surrounded with happy, heavily pregnant women leaves her @@.hotpink;slightly more accepting@@ of her fate and @@.mediumaquamarine;hopeful@@ that her trained body will be useful to you.
 		<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 	<<elseif $slaves[$i].pregControl == "speed up">>
-		Her life used to revolve around being pregnant all the time and nothing has changed. She @@.gold;watches in horror@@ as her middle visibly swells before her eyes. She @@.hotpink;slips more into submission@@ as the pressure in her womb increases.
+		$His life used to revolve around being pregnant all the time and nothing has changed. $He @@.gold;watches in horror@@ as her middle visibly swells before her eyes. $He @@.hotpink;slips more into submission@@ as the pressure in her womb increases.
 		<<set $slaves[$i].trust -= 10, $slaves[$i].devotion += 5>>
 	<<elseif $slaves[$i].pregKnown == 1 || $slaves[$i].pregWeek < 0>>
-		Her life used to revolve around being pregnant all the time and nothing has changed. She @@.gold;fears@@ that her entire life will revolve around pregnancy and @@.hotpink;slips more into submission@@ of her fate.
+		$His life used to revolve around being pregnant all the time and nothing has changed. $He @@.gold;fears@@ that her entire life will revolve around pregnancy and @@.hotpink;slips more into submission@@ of her fate.
 		<<set $slaves[$i].trust -= 1, $slaves[$i].devotion += 1>>
 	<<else>>
-		She remembers how her womb used to be swollen with children as often as possible, and is @@.hotpink;thankful@@ and @@.mediumaquamarine;grateful@@ that she isn't just meat to fuck pregnant anymore.
+		$He remembers how her womb used to be swollen with children as often as possible, and is @@.hotpink;thankful@@ and @@.mediumaquamarine;grateful@@ that $he isn't just meat to fuck pregnant anymore.
 		<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 	<</if>>
 <<case "a bioreactor">>
-	She remembers what it was like to be a living, breathing, milk-jetting,<<if isFertile($slaves[$i]) && ($dairyPregUpgrade > 0)>> baby-filled,<</if>><<if ($slaves[$i].balls != 0)>> cum-squirting,<</if>> drug-filled piece of industrial equipment, and is @@.hotpink;thankful@@ and @@.mediumaquamarine;grateful@@ that she isn't any more.
+	$He remembers what it was like to be a living, breathing, milk-jetting,<<if isFertile($slaves[$i]) && ($dairyPregUpgrade > 0)>> baby-filled,<</if>><<if ($slaves[$i].balls != 0)>> cum-squirting,<</if>> drug-filled piece of industrial equipment, and is @@.hotpink;thankful@@ and @@.mediumaquamarine;grateful@@ that $he isn't any more.
 	<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 <<case "a Futanari Sister">>
 	<<if $masterSuiteUpgradeLuxury == 2>>
 		<<if $slaves[$i].assignment == "serve in the master suite">>
-			As a former Futanari Sister, the fuckpit in $masterSuiteName feels like home to her, and she has @@.mediumaquamarine;no desire to ever leave.@@
+			As a former Futanari Sister, the fuckpit in $masterSuiteName feels like home to her, and $he has @@.mediumaquamarine;no desire to ever leave.@@
 			<<set $slaves[$i].trust += 1>>
 		<<else>>
-			She knows that $masterSuiteName features a fuckpit much like the one she spent years enjoying as a Futanari Sister, and @@.hotpink;does her best@@ to be a good girl in the hope you'll send her there someday.
+			$He knows that $masterSuiteName features a fuckpit much like the one $he spent years enjoying as a Futanari Sister, and @@.hotpink;does her best@@ to be a good girl in the hope you'll send her there someday.
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<</if>>
@@ -2460,7 +2460,7 @@
 	<<if $slaves[$i].trust >= -50>>
 		<<if setup.gratefulCareers.includes($slaves[$i].career)>>
 			<<set $slaves[$i].trust += 1>>
-			She remembers how hard her life was before she was a slave, and
+			$He remembers how hard her life was before $he was a slave, and
 			<<if $slaves[$i].trust > 50>>
 				@@.mediumaquamarine;trusts you a bit more@@ for improving it.
 			<<elseif $slaves[$i].trust > -20>>
@@ -2473,7 +2473,7 @@
 	<<if $slaves[$i].devotion >= -50>>
 		<<if setup.menialCareers.includes($slaves[$i].career)>>
 		<<set $slaves[$i].devotion += 1>>
-		She took orders a lot before she was a slave, and is subconsciously
+		$He took orders a lot before $he was a slave, and is subconsciously
 		<<if $slaves[$i].trust > 50>>
 			@@.hotpink;a little more eager to obey.@@
 		<<elseif $slaves[$i].trust > -20>>
@@ -2492,10 +2492,10 @@
 <<if ($slaves[$i].assignment != "serve in the master suite") || ($masterSuiteUpgradeLuxury < 2)>>
 <<if ($slaves[$i].assignment != "work in the dairy") || ($dairyStimulatorsSetting == 0)>>
 <<if ($slaves[$i].vagina == 3) && !["large dildo", "huge dildo", "long, large dildo", "long, huge dildo"].includes($slaves[$i].vaginalAccessory)>>
-	With a rest from strenuous use, @@.lime;$possessive loose vagina recovers a little.@@
+	With a rest from strenuous use, @@.lime;$his loose vagina recovers a little.@@
 	<<set $slaves[$i].vagina -= 1>>
 <<elseif ($slaves[$i].anus == 3) && !["large plug", "huge plug", "long, large plug", "long, huge plug"].includes($slaves[$i].buttplug)>>
-	With a rest from continual sodomy, @@.lime;$possessive gaping anus recovers a little.@@
+	With a rest from continual sodomy, @@.lime;$his gaping anus recovers a little.@@
 	<<set $slaves[$i].anus -= 1>>
 <</if>>
 <</if>>
@@ -2512,7 +2512,7 @@
 <<else>>
 <<switch $slaves[$i].clitSetting>>
 <<case "none">>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing disrupts arousal, @@.red;reducing her sex drive@@ and @@.mediumorchid;infuriating her.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing disrupts arousal, @@.red;reducing her sex drive@@ and @@.mediumorchid;infuriating her.@@
 	<<set $slaves[$i].devotion -= 2>>
 	<<if $slaves[$i].energy > 5>>
 	<<set $slaves[$i].energy -= 10>>
@@ -2521,12 +2521,12 @@
 	<</if>>
 <<case "all">>
 	<<if $slaves[$i].energy <= 95>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages sex of all kinds, @@.green;increasing her sex drive.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages sex of all kinds, @@.green;increasing her sex drive.@@
 	<<set $slaves[$i].energy += 3>>
 	<</if>>
 <<case "women">>
 	<<if $slaves[$i].attrXX < 95>>
-		Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;increases her attraction to girls@@ by pleasuring her when she's around them.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;increases her attraction to girls@@ by pleasuring her when $he's around them.
 		<<set $slaves[$i].attrXX += 4+$assistant+$assistant>>
 		<<if $slaves[$i].energy < 80>>
 			This has the secondary effect of slightly @@.green;enhancing her libido.@@
@@ -2535,7 +2535,7 @@
 	<</if>>
 <<case "anti-women">>
 	<<if $slaves[$i].attrXX > 0>>
-		Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;suppresses her attraction to girls@@ by making her private parts very uncomfortable when she's around them.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;suppresses her attraction to girls@@ by making her private parts very uncomfortable when $he's around them.
 		<<set $slaves[$i].attrXX -= Math.clamp($slaves[$i].attrXX-(4+$assistant+$assistant),0,100)>>
 		<<if $slaves[$i].energy > 0>>
 			This has the secondary effect of slightly @@.red;reducing her libido.@@
@@ -2544,7 +2544,7 @@
 	<</if>>
 <<case "men">>
 	<<if $slaves[$i].attrXY < 95>>
-		Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;increases her attraction to guys@@ by pleasuring her when she's around cocks.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;increases her attraction to guys@@ by pleasuring her when $he's around cocks.
 		<<set $slaves[$i].attrXY += 4+$assistant+$assistant>>
 		<<if $slaves[$i].energy < 80>>
 			This has the secondary effect of slightly @@.green;enhancing her libido.@@
@@ -2553,7 +2553,7 @@
 	<</if>>
 <<case "anti-men">>
 	<<if $slaves[$i].attrXY > 0>>
-		Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;suppresses her attraction to guys@@ by making her private parts very uncomfortable when she's around them.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;suppresses her attraction to guys@@ by making her private parts very uncomfortable when $he's around them.
 		<<set $slaves[$i].attrXY -= Math.clamp($slaves[$i].attrXY-(4+$assistant+$assistant),0,100)>>
 		<<if $slaves[$i].energy > 0>>
 			This has the secondary effect of slightly @@.red;reducing her libido.@@
@@ -2568,118 +2568,118 @@
 <<case "oral">>
 	<<if ($slaves[$i].fetish != "cumslut")>>
 	<<if $slaves[$i].fetishStrength >= 10>>
-		Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when she's using her mouth.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he's using her mouth.
 		<<set $slaves[$i].fetishStrength -= 20>>
 	<<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-		After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms as she performs oral sex, @@.lightcoral;she develops a fetish for cum.@@
+		After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms as $he performs oral sex, @@.lightcoral;$he develops a fetish for cum.@@
 		<<set $slaves[$i].fetish = "cumslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 	<</if>>
 	<<elseif ($slaves[$i].fetishStrength <= 95)>>
-		Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her oral fetish.@@
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her oral fetish.@@
 		<<set $slaves[$i].fetishStrength += 4>>
 	<</if>>
 <<case "anal">>
 <<if ($slaves[$i].fetish != "buttslut")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when her rear hole is being fucked.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when her rear hole is being fucked.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when her ass is being stimulated, @@.lightcoral;she develops a fetish for being an anal bottom.@@
+	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when her ass is being stimulated, @@.lightcoral;$he develops a fetish for being an anal bottom.@@
 	<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her anal fetish.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her anal fetish.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "boobs">>
 <<if ($slaves[$i].fetish != "boobs")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when her tits are being touched.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when her tits are being touched.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when her nipples are being stimulated, @@.lightcoral;she develops a fetish for her tits.@@
+	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when her nipples are being stimulated, @@.lightcoral;$he develops a fetish for her tits.@@
 	<<set $slaves[$i].fetish = "boobs", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her boob fetish.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her boob fetish.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "submissive">>
 <<if ($slaves[$i].fetish != "submissive")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when she's being held down and used.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he's being held down and used.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when she is restrained, @@.lightcoral;she develops a fetish for submission.@@
+	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when $he is restrained, @@.lightcoral;$he develops a fetish for submission.@@
 	<<set $slaves[$i].fetish = "submissive", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her submission.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her submission.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "humiliation">>
 <<if ($slaves[$i].fetish != "humiliation")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when she's got an audience.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he's got an audience.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when she is being humiliated, @@.lightcoral;she develops a fetish for humiliation.@@
+	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when $he is being humiliated, @@.lightcoral;$he develops a fetish for humiliation.@@
 	<<set $slaves[$i].fetish = "humiliation", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her humiliation fetish.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her humiliation fetish.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "pregnancy">>
 <<if ($slaves[$i].fetish != "pregnancy")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when she feels like she's being bred.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he feels like $he's being bred.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms during <<if $PC.dick == 1>>unprotected sex<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>loving contact with the female anatomy<</if>>, @@.lightcoral;she begins to fantasize about pregnancy.@@
+	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms during <<if $PC.dick == 1>>unprotected sex<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>loving contact with the female anatomy<</if>>, @@.lightcoral;$he begins to fantasize about pregnancy.@@
 	<<set $slaves[$i].fetish = "pregnancy", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her pregnancy fetish.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her pregnancy fetish.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "dom">>
 <<if ($slaves[$i].fetish != "dom")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when another slave is servicing her.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when another slave is servicing $him.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while she's taking an active, dominant sexual role, @@.lightcoral;she begins to enjoy dominance.@@
+	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's taking an active, dominant sexual role, @@.lightcoral;$he begins to enjoy dominance.@@
 	<<set $slaves[$i].fetish = "dom", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her dominance.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her dominance.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "masochist">>
 <<if ($slaves[$i].fetish != "masochist")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when she's being hurt.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he's being hurt.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while she's being beaten, @@.lightcoral;she begins to enjoy pain.@@
+	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's being beaten, @@.lightcoral;$he begins to enjoy pain.@@
 	<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her masochism.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her masochism.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "sadist">>
 	<<if ($slaves[$i].fetish != "sadist")>>
 		<<if $slaves[$i].fetishStrength >= 10>>
-			Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when she witnesses or even takes part in another slave's pain.
+			$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he witnesses or even takes part in another slave's pain.
 			<<set $slaves[$i].fetishStrength -= 20>>
 		<<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-			After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while she's involved in the abuse of other slaves, @@.lightcoral;she begins to develop a sadistic streak.@@
+			After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's involved in the abuse of other slaves, @@.lightcoral;$he begins to develop a sadistic streak.@@
 			<<set $slaves[$i].fetish = "sadist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<</if>>
 	<<elseif ($slaves[$i].fetishStrength <= 95)>>
-			Her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her sadism.@@
+			$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her sadism.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 	<</if>>
 <</switch>>
@@ -2698,7 +2698,7 @@
 	<<if _fetishChangeChance > random(0,100)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "serve in the club")>>
 		<<if $slaves[$i].fetish != "buttslut">>
-			With so much sexual attention focused on her anus, @@.lightcoral;she comes to view buttsex as the centerpiece of her sexuality.@@
+			With so much sexual attention focused on her anus, @@.lightcoral;$he comes to view buttsex as the centerpiece of her sexuality.@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength <= 95)>>
 			With so much sexual attention focused on her anus, @@.lightcoral;her love of anal increases.@@
@@ -2706,7 +2706,7 @@
 		<</if>>
 	<<elseif ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel")>>
 		<<if $slaves[$i].fetish != "buttslut">>
-			With her anus constantly sold for use, @@.lightcoral;she comes to view buttsex as the centerpiece of her sexuality.@@
+			With her anus constantly sold for use, @@.lightcoral;$he comes to view buttsex as the centerpiece of her sexuality.@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
 			With her anus constantly sold for use, @@.lightcoral;her love of anal increases.@@
@@ -2721,7 +2721,7 @@
 	<<if _fetishChangeChance > random(0,90)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "serve in the club")>>
 		<<if $slaves[$i].fetish != "buttslut">>
-		Since most of her orgasms are caused by prostate stimulation from anal sex with citizens, @@.lightcoral;she comes to view her asshole as her primary sexual organ.@@
+		Since most of her orgasms are caused by prostate stimulation from anal sex with citizens, @@.lightcoral;$he comes to view her asshole as her primary sexual organ.@@
 		<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength <= 95)>>
 		After many, many prostate orgasms with a citizen's cock up her butt, @@.lightcoral;her love of anal increases.@@
@@ -2729,7 +2729,7 @@
 		<</if>>
 	<<elseif ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel")>>
 		<<if $slaves[$i].fetish != "buttslut">>
-		Since most of her orgasms are caused by prostate stimulation from anal sex with customers, @@.lightcoral;she comes to view her asshole as her primary sexual organ.@@
+		Since most of her orgasms are caused by prostate stimulation from anal sex with customers, @@.lightcoral;$he comes to view her asshole as her primary sexual organ.@@
 		<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength <= 95)>>
 		After many, many prostate orgasms with a customer's cock up her butt, @@.lightcoral;her love of anal increases.@@
@@ -2748,10 +2748,10 @@
 	<<if ($slaves[$i].fetishStrength <= 95)>>
 	<<if _fetishChangeChance > random(0,100)>>
 		<<if $slaves[$i].fetish != "cumslut">>
-		While masturbating, she's at first surprised but then aroused by her drug-enhanced ejaculation. After repeatedly covering herself in the stuff, @@.lightcoral;she's become a cum fetishist.@@
+		While masturbating, $he's at first surprised but then aroused by her drug-enhanced ejaculation. After repeatedly covering herself in the stuff, @@.lightcoral;$he's become a cum fetishist.@@
 		<<set $slaves[$i].fetish = "cumslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "cumslut") && ($slaves[$i].fetishStrength <= 95)>>
-		Her masturbation sessions have come to consist mainly of her blowing massive loads of cum into her own mouth. @@.lightcoral;Her ejaculate addiction increases.@@
+		$His masturbation sessions have come to consist mainly of her blowing massive loads of cum into her own mouth. @@.lightcoral;$His ejaculate addiction increases.@@
 		<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 	<</if>>
@@ -2777,7 +2777,7 @@
 	<<if $slaves[$i].sexualFlaw != "neglectful">>
 		<<if $slaves[$i].energy < 80>>
 		<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade")>>
-			Serving as a sex worker drives her deeper and deeper into submission, and she pays less and less attention to her own pleasure. @@.yellow;She's become sexually self neglectful,@@ and only cares about getting others off.
+			Serving as a sex worker drives her deeper and deeper into submission, and $he pays less and less attention to her own pleasure. @@.yellow;$He's become sexually self neglectful,@@ and only cares about getting others off.
 			<<set $slaves[$i].sexualFlaw = "neglectful">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2790,7 +2790,7 @@
 	<<if $slaves[$i].sexualFlaw != "neglectful">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on submission. @@.yellow;She's become sexually self neglectful,@@ and only cares about getting others off.
+			$His aphrodisiac addiction makes her dependent on submission. @@.yellow;$He's become sexually self neglectful,@@ and only cares about getting others off.
 			<<set $slaves[$i].sexualFlaw = "neglectful">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2803,7 +2803,7 @@
 <<case "cumslut">>
 	<<if $slaves[$i].sexualFlaw != "cum addict">>
 		<<if $slaves[$i].dietCum > 0>>
-			In addition to being an orally fixated cumslut, she eats ejaculate in her food, making the taste omnipresent for her. @@.yellow;She's become psychologically addicted to cum.@@
+			In addition to being an orally fixated cumslut, $he eats ejaculate in her food, making the taste omnipresent for $him. @@.yellow;$He's become psychologically addicted to cum.@@
 			<<set $slaves[$i].sexualFlaw = "cum addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2811,7 +2811,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].inflation != 0 && $slaves[$i].inflationType == "cum">>
-			In addition to being an orally fixated cumslut, she is required to keep her belly bloated with cum at all times, making her life revolve around being full of cum. @@.yellow;She's become psychologically addicted to cum.@@
+			In addition to being an orally fixated cumslut, $he is required to keep her belly bloated with cum at all times, making her life revolve around being full of cum. @@.yellow;$He's become psychologically addicted to cum.@@
 			<<set $slaves[$i].sexualFlaw = "cum addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2819,7 +2819,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $cockFeeder != 0>>
-			In addition to being an orally fixated cumslut, she eats by sucking dick. @@.yellow;She's become psychologically addicted to cum.@@
+			In addition to being an orally fixated cumslut, $he eats by sucking dick. @@.yellow;$He's become psychologically addicted to cum.@@
 			<<set $slaves[$i].sexualFlaw = "cum addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2831,7 +2831,7 @@
 	<<if $slaves[$i].sexualFlaw != "cum addict">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on oral stimulation. @@.yellow;She's become psychologically addicted to cum.@@
+			$His aphrodisiac addiction makes her dependent on oral stimulation. @@.yellow;$He's become psychologically addicted to cum.@@
 			<<set $slaves[$i].sexualFlaw = "cum addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2846,7 +2846,7 @@
 		<<if $slaves[$i].energy > 80>>
 		<<if $slaves[$i].anus > 0>>
 		<<if $slaves[$i].prostate > 0>>
-			She has a powerful sex drive, and constantly coming to prostate stimulation drives her ever deeper into her identity as a helpless anal slut. @@.yellow;She's become psychologically addicted to getting assfucked.@@
+			$He has a powerful sex drive, and constantly coming to prostate stimulation drives her ever deeper into her identity as a helpless anal slut. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
 			<<set $slaves[$i].sexualFlaw = "anal addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2854,7 +2854,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].vaginalAccessory == "chastity belt">>
-			She has a powerful sex drive, and since her pussy's off limits, she sinks ever deeper into her identity as a helpless anal slut. @@.yellow;She's become psychologically addicted to getting assfucked.@@
+			$He has a powerful sex drive, and since her pussy's off limits, $he sinks ever deeper into her identity as a helpless anal slut. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
 			<<set $slaves[$i].sexualFlaw = "anal addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2868,7 +2868,7 @@
 	<<if $slaves[$i].sexualFlaw != "anal addict">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on constant buttsex. @@.yellow;She's become psychologically addicted to getting assfucked.@@
+			$His aphrodisiac addiction makes her dependent on constant buttsex. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
 			<<set $slaves[$i].sexualFlaw = "anal addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2881,7 +2881,7 @@
 <<case "humiliation">>
 	<<if $slaves[$i].sexualFlaw != "attention whore">>
 		<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club")>>
-			Serving as a public sex worker gives her plenty of delicious humiliation, and she cares less and less about sex itself and more about making people blush. @@.yellow;She's become an attention whore.@@
+			Serving as a public sex worker gives her plenty of delicious humiliation, and $he cares less and less about sex itself and more about making people blush. @@.yellow;$He's become an attention whore.@@
 			<<set $slaves[$i].sexualFlaw = "attention whore">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2893,7 +2893,7 @@
 	<<if $slaves[$i].sexualFlaw != "attention whore">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on stares to get off. @@.yellow;She's become an attention whore.@@
+			$His aphrodisiac addiction makes her dependent on stares to get off. @@.yellow;$He's become an attention whore.@@
 			<<set $slaves[$i].sexualFlaw = "attention whore">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2906,7 +2906,7 @@
 <<case "boobs">>
 	<<if $slaves[$i].sexualFlaw != "breast growth">>
 		<<if $slaves[$i].drugs == "breast injections" || $slaves[$i].drugs == "intensive breast injections">>
-			She loves her tits, and feeling them respond to drug injections starts to hold more fascination for her than mere sex. @@.yellow;Her sexual identity is now dominated by her swelling boobs.@@
+			$He loves her tits, and feeling them respond to drug injections starts to hold more fascination for her than mere sex. @@.yellow;$His sexual identity is now dominated by her swelling boobs.@@
 			<<set $slaves[$i].sexualFlaw = "breast growth">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2914,7 +2914,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].drugs == "hyper breast injections">>
-			She loves her tits, and watching them steadily swell from the hyper injections starts to hold more fascination for her than mere sex. @@.yellow;Her sexual identity is now dominated by her swelling boobs.@@
+			$He loves her tits, and watching them steadily swell from the hyper injections starts to hold more fascination for her than mere sex. @@.yellow;$His sexual identity is now dominated by her swelling boobs.@@
 			<<set $slaves[$i].sexualFlaw = "breast growth">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2922,7 +2922,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif ($slaves[$i].hormoneBalance >= 100) && ($slaves[$i].boobs < 1000)>>
-			She loves her tits, and feeling them grow under female hormone treatments starts to hold more fascination for her than mere sex. @@.yellow;Her sexual identity is now dominated by her swelling boobs.@@
+			$He loves her tits, and feeling them grow under female hormone treatments starts to hold more fascination for her than mere sex. @@.yellow;$His sexual identity is now dominated by her swelling boobs.@@
 			<<set $slaves[$i].sexualFlaw = "breast growth">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2934,7 +2934,7 @@
 	<<if $slaves[$i].sexualFlaw != "breast growth">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on her tits for relief. @@.yellow;Her sexual identity is now dominated by her swelling boobs.@@
+			$His aphrodisiac addiction makes her dependent on her tits for relief. @@.yellow;$His sexual identity is now dominated by her swelling boobs.@@
 			<<set $slaves[$i].sexualFlaw = "breast growth">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2948,7 +2948,7 @@
 	<<if $slaves[$i].sexualFlaw != "malicious">>
 		<<if $Wardeness != 0>>
 		<<if $slaves[$i].ID == $Wardeness.ID>>
-			As Wardeness, she becomes @@.yellow;sexually addicted to inflicting pain and anguish.@@
+			As Wardeness, $he becomes @@.yellow;sexually addicted to inflicting pain and anguish.@@
 			<<set $slaves[$i].sexualFlaw = "malicious">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2961,7 +2961,7 @@
 	<<if $slaves[$i].sexualFlaw != "malicious">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on degradation in other slaves to get off. She becomes @@.yellow;sexually addicted to inflicting pain and anguish.@@
+			$His aphrodisiac addiction makes her dependent on degradation in other slaves to get off. $He becomes @@.yellow;sexually addicted to inflicting pain and anguish.@@
 			<<set $slaves[$i].sexualFlaw = "malicious">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2976,7 +2976,7 @@
 		<<if $HeadGirl != 0>>
 		<<if $HGSeverity >= 0>>
 		<<if $slaves[$i].ID == $HeadGirl.ID>>
-			As Head Girl, she's plentifully provided with misbehaving slaves to dominate sexually. She becomes more and more eager until she's actively @@.yellow;sexually abusive, getting off on the thrill of forcing herself on other slaves.@@
+			As Head Girl, $he's plentifully provided with misbehaving slaves to dominate sexually. $He becomes more and more eager until $he's actively @@.yellow;sexually abusive, getting off on the thrill of forcing herself on other slaves.@@
 			<<set $slaves[$i].sexualFlaw = "abusive">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -2990,7 +2990,7 @@
 	<<if $slaves[$i].sexualFlaw != "abusive">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on pain in others to get off. She's become @@.yellow;sexually abusive, getting off on the thrill of forcing herself on other slaves.@@
+			$His aphrodisiac addiction makes her dependent on pain in others to get off. $He's become @@.yellow;sexually abusive, getting off on the thrill of forcing herself on other slaves.@@
 			<<set $slaves[$i].sexualFlaw = "abusive">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3003,7 +3003,7 @@
 <<case "masochist">>
 	<<if $slaves[$i].sexualFlaw != "self hating">>
 		<<if ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade")>>
-			Condemned to serve as a public fuckhole, her masochistic tendencies darken into sexual appreciation for her life as a human sex toy. @@.yellow;She's descended into true self hatred.@@
+			Condemned to serve as a public fuckhole, her masochistic tendencies darken into sexual appreciation for her life as a human sex toy. @@.yellow;$He's descended into true self hatred.@@
 			<<set $slaves[$i].sexualFlaw = "self hating">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3011,7 +3011,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif ($slaves[$i].assignment == "work in the dairy") && ($dairyRestraintsSetting >= 2)>>
-			Strapped into a milking machine's tender, penetrative embrace, her masochistic tendencies darken into sexual appreciation for her life as a human factory. @@.yellow;She's descended into true self hatred.@@
+			Strapped into a milking machine's tender, penetrative embrace, her masochistic tendencies darken into sexual appreciation for her life as a human factory. @@.yellow;$He's descended into true self hatred.@@
 			<<set $slaves[$i].sexualFlaw = "self hating">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3023,7 +3023,7 @@
 	<<if $slaves[$i].sexualFlaw != "self hating">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on sexual self harm. @@.yellow;She's descended into true self hatred.@@
+			$His aphrodisiac addiction makes her dependent on sexual self harm. @@.yellow;$He's descended into true self hatred.@@
 			<<set $slaves[$i].sexualFlaw = "self hating">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3037,11 +3037,11 @@
 	<<if $slaves[$i].sexualFlaw != "breeder">>
 		<<if $slaves[$i].preg > 37 && $slaves[$i].broodmother > 0>>
 			<<if $slaves[$i].broodmother == 2>>
-				She's nearly bursting with life and giving birth constantly,
+				$He's nearly bursting with life and giving birth constantly,
 			<<else>>
-				She's stuffed full of child and brings a new life into the world each week, with or without a good fucking,
+				$He's stuffed full of child and brings a new life into the world each week, with or without a good fucking,
 			<</if>>
-			causing her to pay more sexual attention to pregnancy than to impregnation. @@.yellow;She's become obsessed with breeding.@@
+			causing her to pay more sexual attention to pregnancy than to impregnation. @@.yellow;$He's become obsessed with breeding.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3049,7 +3049,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $slaves[$i].devotion > 75>>
-			She's been marked to be the bearer of your offspring and is growing larger by the day with your child. She is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
+			$He's been marked to be the bearer of your offspring and is growing larger by the day with your child. $He is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3057,7 +3057,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].bellyPreg >= 120000>>
-			She's so overfull with life that she starts to pay much more sexual attention to pregnancy than to impregnation. @@.yellow;She's become obsessed with breeding.@@
+			$He's so overfull with life that $he starts to pay much more sexual attention to pregnancy than to impregnation. @@.yellow;$He's become obsessed with breeding.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3065,7 +3065,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].births > 10>>
-			She's been bred so much that she starts to pay as much sexual attention to pregnancy as to impregnation. @@.yellow;She's become obsessed with breeding.@@
+			$He's been bred so much that $he starts to pay as much sexual attention to pregnancy as to impregnation. @@.yellow;$He's become obsessed with breeding.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3073,7 +3073,7 @@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif ($slaves[$i].assignment == "work in the dairy") && ($dairyPregSetting >= 2) && ($slaves[$i].pregKnown == 1)>>
-			With her womanhood fucked full of cum and fertility drugs, her pregnancy fetish deepens into true perversity. @@.yellow;She's become obsessed with breeding.@@
+			With her womanhood fucked full of cum and fertility drugs, her pregnancy fetish deepens into true perversity. @@.yellow;$He's become obsessed with breeding.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
@@ -3085,11 +3085,11 @@
 	<<if $slaves[$i].sexualFlaw != "breeder">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			Her aphrodisiac addiction makes her dependent on her pregnancy fantasies. @@.yellow;She's become obsessed with breeding.@@
+			$His aphrodisiac addiction makes $him dependent on $his pregnancy fantasies. @@.yellow;$He's become obsessed with breeding.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3107,19 +3107,19 @@
 
 <<if ($slaves[$i].vaginaPiercing > 1)>>
 	<<if ($slaves[$i].vagina > -1) && ($slaves[$i].labia < 2) && (random(1,100) > 90)>>
-	The weight of $possessive labial piercings @@.lime;stretches out $possessive pussylips a bit.@@
+	The weight of $his labial piercings @@.lime;stretches out $his pussylips a bit.@@
 	<<set $slaves[$i].labia += 1>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].nipplesPiercing == 1)>>
 	<<if ($slaves[$i].nipples == "tiny")>>
 	<<if (random(1,100) > 95)>>
-		$possessiveCap piercings keep $possessive nipples half-hard all the time, and @@.lime;$possessive nipples have stretched out a bit.@@
+		$His piercings keep $his nipples half-hard all the time, and @@.lime;$his nipples have stretched out a bit.@@
 		<<set $slaves[$i].nipples = "cute">>
 	<</if>>
 	<<elseif ($slaves[$i].nipples == "partially inverted")>>
 	<<if (random(1,100) > 70)>>
-		$possessiveCap piercings keep $possessive nipples half-hard all the time, which @@.lime;permanently protrudes them.@@
+		$His piercings keep $his nipples half-hard all the time, which @@.lime;permanently protrudes them.@@
 		<<if (random(1,2) == 1)>>
 		It turns out they're pretty cute.
 		<<set $slaves[$i].nipples = "cute">>
@@ -3128,14 +3128,14 @@
 		<<set $slaves[$i].nipples = "puffy">>
 		<</if>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1)>>
-		This is @@.hotpink;a long and uncomfortable experience, which $pronoun gets off on.@@
+		This is @@.hotpink;a long and uncomfortable experience, which $he gets off on.@@
 		<<set $slaves[$i].devotion += 1>>
 		<<else>>
 		This is @@.mediumorchid;a long and uncomfortable experience.@@
 		<<set $slaves[$i].devotion -= 1>>
 		<</if>>
 	<<else>>
-		Having $possessive nipples held protruded by $possessive piercings is uncomfortable, which $pronoun
+		Having $his nipples held protruded by $his piercings is uncomfortable, which $he
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1)>>
 		@@.hotpink;gets off on.@@
 		<<set $slaves[$i].devotion += 1>>
@@ -3146,7 +3146,7 @@
 	<</if>>
 	<<elseif ($slaves[$i].nipples == "inverted")>>
 	<<if (random(1,100) > 90)>>
-		$possessiveCap piercings keep $possessive nipples half-hard all the time, which eventually @@.lime;permanently protrudes them.@@
+		$His piercings keep $his nipples half-hard all the time, which eventually @@.lime;permanently protrudes them.@@
 		<<if (random(1,2) == 1)>>
 		It turns out they're absolutely massive.
 		<<set $slaves[$i].nipples = "huge">>
@@ -3155,14 +3155,14 @@
 		<<set $slaves[$i].nipples = "puffy">>
 		<</if>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1)>>
-		This is @@.hotpink;a long and very uncomfortable experience, which $pronoun gets off on.@@
+		This is @@.hotpink;a long and very uncomfortable experience, which $he gets off on.@@
 		<<set $slaves[$i].devotion += 3>>
 		<<else>>
 		This is @@.mediumorchid;a long and very uncomfortable experience.@@
 		<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<<else>>
-		Having $possessive nipples held protruded by $possessive piercings is very uncomfortable, which $pronoun
+		Having $his nipples held protruded by $his piercings is very uncomfortable, which $he
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1)>>
 		@@.hotpink;gets off on.@@
 		<<set $slaves[$i].devotion += 1>>
@@ -3175,12 +3175,12 @@
 <<elseif ($slaves[$i].nipplesPiercing == 2)>>
 	<<if ($slaves[$i].nipples == "tiny")>>
 	<<if (random(1,100) > 80)>>
-		$pronounCap's got so much metal in $possessive nipples that the weight @@.lime;stretches and lengthens them.@@
+		$He's got so much metal in $his nipples that the weight @@.lime;stretches and lengthens them.@@
 		<<set $slaves[$i].nipples = "cute">>
 	<</if>>
 	<<elseif ($slaves[$i].nipples == "partially inverted")>>
 	<<if (random(1,100) > 50)>>
-		$pronounCap's got so much metal in $possessive nipples that the weight @@.lime;permanently protrudes them.@@
+		$He's got so much metal in $his nipples that the weight @@.lime;permanently protrudes them.@@
 		<<if (random(1,2) == 1)>>
 		It turns out they're pretty cute.
 		<<set $slaves[$i].nipples = "cute">>
@@ -3189,14 +3189,14 @@
 		<<set $slaves[$i].nipples = "puffy">>
 		<</if>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1)>>
-		This is @@.hotpink;a long and uncomfortable experience, which $possessive gets off on.@@
+		This is @@.hotpink;a long and uncomfortable experience, which $his gets off on.@@
 		<<set $slaves[$i].devotion += 2>>
 		<<else>>
 		This is @@.mediumorchid;a long and uncomfortable experience.@@
 		<<set $slaves[$i].devotion -= 2>>
 		<</if>>
 	<<else>>
-		Having $possessive nipples held protruded by $possessive piercings is uncomfortable, which $possessive
+		Having $his nipples held protruded by $his piercings is uncomfortable, which $his
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1)>>
 		@@.hotpink;gets off on.@@
 		<<set $slaves[$i].devotion += 1>>
@@ -3207,7 +3207,7 @@
 	<</if>>
 	<<elseif ($slaves[$i].nipples == "inverted")>>
 	<<if (random(1,100) > 70)>>
-		$pronounCap's got so much metal in $possessive nipples that the weight @@.lime;permanently protrudes them.@@
+		$He's got so much metal in $his nipples that the weight @@.lime;permanently protrudes them.@@
 		<<if (random(1,2) == 1)>>
 		It turns out they're absolutely massive.
 		<<set $slaves[$i].nipples = "huge">>
@@ -3216,14 +3216,14 @@
 		<<set $slaves[$i].nipples = "puffy">>
 		<</if>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1)>>
-		This is @@.hotpink;a long and extremely uncomfortable experience, which she gets off on.@@
+		This is @@.hotpink;a long and extremely uncomfortable experience, which $he gets off on.@@
 		<<set $slaves[$i].devotion += 4>>
 		<<else>>
 		This is @@.mediumorchid;a long and extremely uncomfortable experience.@@
 		<<set $slaves[$i].devotion -= 4>>
 		<</if>>
 	<<else>>
-		Having $possessive nipples held protruded by $possessive piercings is extremely uncomfortable, which $pronoun
+		Having $his nipples held protruded by $his piercings is extremely uncomfortable, which $he
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1)>>
 		@@.hotpink;gets off on.@@
 		<<set $slaves[$i].devotion += 2>>
@@ -3241,22 +3241,22 @@
 <<if ($slaves[$i].lactation >= 2)>>
 	<<if ($slaves[$i].nipples == "tiny")>>
 	<<if (random(1,100) > 70)>>
-		Having $possessive heavy milk production forced through $possessive tiny nipples @@.lime;stretches and engorges them.@@
+		Having $his heavy milk production forced through $his tiny nipples @@.lime;stretches and engorges them.@@
 		<<set $slaves[$i].nipples = "cute">>
 	<</if>>
 	<<elseif ($slaves[$i].nipples == "cute") || ($slaves[$i].nipples == "inverted")>>
 	<<if (random(1,100) > 80)>>
-		$pronounCap's lactating so heavily that $possessive permanently swollen nipples gradually become accustomed to the constant flow of milk. They @@.lime;become puffy@@ and engorged.
+		$He's lactating so heavily that $his permanently swollen nipples gradually become accustomed to the constant flow of milk. They @@.lime;become puffy@@ and engorged.
 		<<set $slaves[$i].nipples = "puffy">>
 	<</if>>
 	<<elseif ($slaves[$i].nipples == "partially inverted") || ($slaves[$i].nipples == "inverted")>>
 	<<if (random(1,100) > 80)>>
-		$pronounCap's lactating so heavily that $possessive swollen nipples almost never retreat into their inverted state. Lactation has @@.lime;permanently protruded them,@@ leaving them engorged and puffy.
+		$He's lactating so heavily that $his swollen nipples almost never retreat into their inverted state. Lactation has @@.lime;permanently protruded them,@@ leaving them engorged and puffy.
 		<<set $slaves[$i].nipples = "puffy">>
 	<</if>>
 	<<else>>
 	<<if (random(1,100) > 90)>>
-		Lactation has @@.lime;swollen $possessive nipples@@ to an absurd size, making $possessive status as a cow obvious even when $possessive chest faucets aren't gushing cream.
+		Lactation has @@.lime;swollen $his nipples@@ to an absurd size, making $his status as a cow obvious even when $his chest faucets aren't gushing cream.
 		<<set $slaves[$i].nipples = "huge">>
 	<</if>>
 	<</if>>
@@ -3266,38 +3266,38 @@
 /* IMPLANT EFFECTS ON UNDERLYING FLESH */
 
 <<if ($slaves[$i].boobsImplantType == 1)>>
-	$possessiveCap string implants absorb fluid @@.lime;slowly swelling $possessive breasts.@@
+	$His string implants absorb fluid @@.lime;slowly swelling $his breasts.@@
 	<<set $slaves[$i].boobsImplant += 50, $slaves[$i].boobs += 50>>
 	<<set _effect = random(1,10)>>
 	<<if ($slaves[$i].boobs > 50000)>>
-		Since they are as large as $possessive body can handle, some serum is drained from them.
+		Since they are as large as $his body can handle, some serum is drained from them.
 		<<set $slaves[$i].boobs -= 100, $slaves[$i].boobsImplant -= 100>>
 	<<elseif ($slaves[$i].boobsImplant > 25000) && (_effect >= 2)>>
-		As they grow they @@.red;greatly irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;greatly irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 20>>
 	<<elseif ($slaves[$i].boobsImplant > 15000) && (_effect >= 3)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].boobsImplant > 10000) && (_effect >= 4)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].boobsImplant > 8000) && (_effect >= 5)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].boobsImplant > 6000) && (_effect >= 6)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].boobsImplant > 4500) && (_effect >= 7)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].boobsImplant > 3000) && (_effect >= 8)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 7>>
 	<<elseif ($slaves[$i].boobsImplant > 2000) && (_effect >= 9)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 5>>
 	<<elseif ($slaves[$i].boobsImplant > 1000) && (_effect > 9)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive breasts.
+		As they grow they @@.red;irritate@@ the tissue of $his breasts.
 		<<set $slaves[$i].health -= 3>>
 	<</if>>
 <</if>>
@@ -3305,57 +3305,57 @@
 <<if ($slaves[$i].boobsImplant > 1000)>>
 <<if ($slaves[$i].boobs-$slaves[$i].boobsImplant < 1000)>>
 <<if (random(1,100) > 60)>>
-	$possessiveCap breast tissue has naturally @@.lime;stretched and grown@@ to accommodate $possessive massive implants a bit better.
+	$His breast tissue has naturally @@.lime;stretched and grown@@ to accommodate $his massive implants a bit better.
 	<<set $slaves[$i].boobs += 50>>
 <</if>>
 <</if>>
 <<elseif ($slaves[$i].boobsImplant > 600)>>
 <<if ($slaves[$i].boobs-$slaves[$i].boobsImplant < 500)>>
 <<if (random(1,100) > 60)>>
-	$possessiveCap breast tissue has naturally @@.lime;stretched and grown@@ to accommodate $possessive large implants a bit better.
+	$His breast tissue has naturally @@.lime;stretched and grown@@ to accommodate $his large implants a bit better.
 	<<set $slaves[$i].boobs += 50>>
 <</if>>
 <</if>>
 <<elseif ($slaves[$i].boobsImplant > 0)>>
 <<if ($slaves[$i].boobs-$slaves[$i].boobsImplant < 300)>>
 <<if (random(1,100) > 60)>>
-	$possessiveCap breast tissue has naturally @@.lime;stretched and grown@@ to accommodate $possessive implants a bit better.
+	$His breast tissue has naturally @@.lime;stretched and grown@@ to accommodate $his implants a bit better.
 	<<set $slaves[$i].boobs += 50>>
 <</if>>
 <</if>>
 <</if>>
 
 <<if ($slaves[$i].buttImplantType == 1)>>
-	$possessiveCap string implants absorb fluid @@.lime;slowly swelling $possessive ass.@@
+	$His string implants absorb fluid @@.lime;slowly swelling $his ass.@@
 	<<set $slaves[$i].buttImplant += .25, $slaves[$i].butt += .25>>
 	<<if ($slaves[$i].butt > 10)>>
-	Since it as large as $possessive body can handle, some serum is drained from them.
+	Since it as large as $his body can handle, some serum is drained from them.
 	<<set $slaves[$i].butt -= 1, $slaves[$i].buttImplant -= 1>>
 	<</if>>
 	<<set _effect = random(1,8)>>
 	<<if ($slaves[$i].buttImplant > 7) && (_effect >= 2)>>
-		As they grow they @@.red;greatly irritate@@ the tissue of $possessive cheeks.
+		As they grow they @@.red;greatly irritate@@ the tissue of $his cheeks.
 		<<set $slaves[$i].health -= 20>>
 	<<elseif ($slaves[$i].buttImplant > 6) && (_effect >= 2)>>
-		As they grow they @@.red;greatly irritate@@ the tissue of $possessive cheeks.
+		As they grow they @@.red;greatly irritate@@ the tissue of $his cheeks.
 		<<set $slaves[$i].health -= 20>>
 	<<elseif ($slaves[$i].buttImplant > 5) && (_effect >= 3)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive cheeks.
+		As they grow they @@.red;irritate@@ the tissue of $his cheeks.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].buttImplant > 4) && (_effect >= 4)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive cheeks.
+		As they grow they @@.red;irritate@@ the tissue of $his cheeks.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].buttImplant > 3) && (_effect >= 5)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive cheeks.
+		As they grow they @@.red;irritate@@ the tissue of $his cheeks.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].buttImplant > 2) && (_effect >= 6)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive cheeks.
+		As they grow they @@.red;irritate@@ the tissue of $his cheeks.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].buttImplant > 1) && (_effect >= 7)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive cheeks.
+		As they grow they @@.red;irritate@@ the tissue of $his cheeks.
 		<<set $slaves[$i].health -= 10>>
 	<<elseif ($slaves[$i].buttImplant > 0) && (_effect > 7)>>
-		As they grow they @@.red;irritate@@ the tissue of $possessive cheeks.
+		As they grow they @@.red;irritate@@ the tissue of $his cheeks.
 		<<set $slaves[$i].health -= 10>>
 	<</if>>
 <</if>>
@@ -3363,12 +3363,12 @@
 <<if $slaves[$i].diet == "muscle building">>
 <<if ($slaves[$i].muscles > 30)>>
 	<<if ($slaves[$i].face-$slaves[$i].faceImplant > 10) && (random(1,100) > 90) && $slaves[$i].drugs == "steroids">>
-		All the hormones in $possessive system from $possessive heavy, steroid enhanced workouts @@.orange;harden $possessive face a little.@@
+		All the hormones in $his system from $his heavy, steroid enhanced workouts @@.orange;harden $his face a little.@@
 		<<set $slaves[$i].face -= 5>>
 	<</if>>
 	<<if (($slaves[$i].boobs - $slaves[$i].boobsImplant) > 250)>>
 		<<if (random(1,100) > 95)>>
-			All the hormones in $possessive system from $possessive heavy workouts @@.orange;shrink $possessive breasts slightly.@@
+			All the hormones in $his system from $his heavy workouts @@.orange;shrink $his breasts slightly.@@
 			<<set $slaves[$i].boobs -= 50>>
 		<</if>>
 	<</if>>
@@ -3425,60 +3425,60 @@
 		<<switch _Effects>>
 		<<case "DickShrink">>
 	                <<if (($slaves[$i].inducedNCS == 1) && ($slaves[$i].dick > 2) && (random(1,100) > 25))>>
-                                Dependence on the hormone-based aphrodisiacs combined with $possessive @@.orange;NCS@@ makes @@.orange;$possessive dick shrink down to be more childlike.@@
+                                Dependence on the hormone-based aphrodisiacs combined with $his @@.orange;NCS@@ makes @@.orange;$his dick shrink down to be more childlike.@@
                                 <<set $slaves[$i].dick -= 1>>
                         <<else>>
-                                Dependence on the hormone-based aphrodisiacs makes @@.orange;$possessive dick atrophy.@@
+                                Dependence on the hormone-based aphrodisiacs makes @@.orange;$his dick atrophy.@@
                         <</if>>
 			<<set $slaves[$i].dick -= 1>>
 		<<case "BallsShrink">>
 	                <<if (($slaves[$i].inducedNCS == 1) && ($slaves[$i].balls > 2) && (random(1,100) > 25))>>
-                                Dependence on the hormone-based aphrodisiacs combined with $possessive @@.orange;NCS@@ makes @@.orange;$possessive balls shrink down to be more childlike.@@
+                                Dependence on the hormone-based aphrodisiacs combined with $his @@.orange;NCS@@ makes @@.orange;$his balls shrink down to be more childlike.@@
                                 <<set $slaves[$i].balls -= 1>>
                         <<else>>
-                                Dependence on the hormone-based aphrodisiacs makes @@.orange;$possessive testicles atrophy.@@
+                                Dependence on the hormone-based aphrodisiacs makes @@.orange;$his testicles atrophy.@@
                         <</if>>
 			<<set $slaves[$i].balls -= 1>>
 		<<case "VoiceHigher">>
-			Dependence on the hormone-based aphrodisiacs makes @@.lime;$possessive voice higher and more feminine.@@
+			Dependence on the hormone-based aphrodisiacs makes @@.lime;$his voice higher and more feminine.@@
 			<<set $slaves[$i].voice += 1>>
 		<<case "VaginaWetter">>
-			Dependence on the hormone-based aphrodisiacs makes @@.lime;$possessive vagina produce more copious natural lubricant.@@
+			Dependence on the hormone-based aphrodisiacs makes @@.lime;$his vagina produce more copious natural lubricant.@@
 			<<set $slaves[$i].vaginaLube += 1>>
 		<<case "ButtBigger">>
-			Dependence on the hormone-based aphrodisiacs makes @@.lime;the natural size of $possessive butt increase.@@
+			Dependence on the hormone-based aphrodisiacs makes @@.lime;the natural size of $his butt increase.@@
 			<<set $slaves[$i].butt += 1>>
 		<<case "BoobsBigger">>
-			Dependence on the hormone-based aphrodisiacs makes @@.lime;the natural size of $possessive tits increase.@@
+			Dependence on the hormone-based aphrodisiacs makes @@.lime;the natural size of $his tits increase.@@
 			<<set $slaves[$i].boobs += 100>>
 		<<case "FaceSofter">>
-			Dependence on the hormone-based aphrodisiacs makes @@.lime;$possessive facial structure soften and become sexier.@@
+			Dependence on the hormone-based aphrodisiacs makes @@.lime;$his facial structure soften and become sexier.@@
 			<<FaceIncrease $slaves[$i] 10>>
 		<<case "FaceSofterAndrogynous">>
-			Dependence on the hormone-based aphrodisiacs makes @@.lime;$possessive face soften into androgyny.@@
+			Dependence on the hormone-based aphrodisiacs makes @@.lime;$his face soften into androgyny.@@
 			<<set $slaves[$i].faceShape = "androgynous">>
 		<<case "FaceNormal">>
-			Dependence on the hormone-based aphrodisiacs makes @@.lime;$possessive face soften into femininity.@@
+			Dependence on the hormone-based aphrodisiacs makes @@.lime;$his face soften into femininity.@@
 			<<set $slaves[$i].faceShape = "normal">>
 		<<case "ClitSmaller">>
 	                <<if (($slaves[$i].inducedNCS == 1) && ($slaves[$i].clit > 1) && (random(1,100) > 50))>>
-                                Dependence on the hormone-based aphrodisiacs combined with $possessive @@.orange;NCS@@ makes @@.orange;$possessive clit shrink down to be more childlike.@@
+                                Dependence on the hormone-based aphrodisiacs combined with $his @@.orange;NCS@@ makes @@.orange;$his clit shrink down to be more childlike.@@
                                 <<set $slaves[$i].clit -= 1>>
                         <<else>>
-                                Dependence on the hormone-based aphrodisiacs makes @@.orange;$possessive clit shrink significantly.@@
+                                Dependence on the hormone-based aphrodisiacs makes @@.orange;$his clit shrink significantly.@@
                         <</if>>
 			<<set $slaves[$i].clit -= 1>>
 		<<case "Devoted">>
-			Hormonal effects make $object a bit more @@.hotpink;docile.@@
+			Hormonal effects make $him a bit more @@.hotpink;docile.@@
 			<<set $slaves[$i].devotion += 1>>
 		<<case "Trusting">>
-			Hormonal effects make $object a bit more @@.mediumaquamarine;trusting.@@
+			Hormonal effects make $him a bit more @@.mediumaquamarine;trusting.@@
 			<<set $slaves[$i].trust += 1>>
 		<<case "MaleAttracted">>
-			Dependence on the hormone-based aphrodisiacs makes $object become @@.green;more attracted to men.@@
+			Dependence on the hormone-based aphrodisiacs makes $him become @@.green;more attracted to men.@@
 			<<set $slaves[$i].attrXY += 3>>
 		<<case "FemaleAttracted">>
-			Dependence on the hormone-based aphrodisiacs makes $object become @@.green;more attracted to women.@@
+			Dependence on the hormone-based aphrodisiacs makes $him become @@.green;more attracted to women.@@
 			<<set $slaves[$i].attrXX += 3>>
 		<<default>>
 			ERROR: bad aphro addict effect: _Effects
@@ -3565,19 +3565,19 @@
 <<if $slaves[$i].drugs != "hormone blockers">>
 	<<include "SA hormone effects">>
 <<elseif $slaves[$i].drugs == "hormone blockers">>
-	The hormone blockers $pronoun is on suppress $possessive hormones, natural or not.
+	The hormone blockers $he is on suppress $his hormones, natural or not.
 	<<if $slaves[$i].energy > 20>>
-		$possessiveCap libido is similarly
+		$His libido is similarly
 		<<set _supp = 1, $slaves[$i].energy-->>
 	<</if>>
 	<<if _supp == 1>>
 		<<if ($slaves[$i].attrXX != 50 || $slaves[$i].attrXY != 50) && $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
-			@@.red;suppressed,@@ alongside what $pronoun @@.red;finds sexually attractive.@@ Though that may not be a bad thing, should $pronoun find a sex repulsive.
+			@@.red;suppressed,@@ alongside what $he @@.red;finds sexually attractive.@@ Though that may not be a bad thing, should $he find a sex repulsive.
 		<<else>>
 			@@.red;suppressed.@@
 		<</if>>
 	<<elseif ($slaves[$i].attrXX != 50 || $slaves[$i].attrXY != 50) && $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
-		$possessiveCap @@.red;sexual tastes are also suppressed by the drugs,@@ though that may not be a bad thing should $pronoun find a sex repulsive.
+		$His @@.red;sexual tastes are also suppressed by the drugs,@@ though that may not be a bad thing should $he find a sex repulsive.
 	<</if>>
 	<<if $slaves[$i].attrXX > 50>>
 		<<set $slaves[$i].attrXX-->>
@@ -3687,41 +3687,41 @@
                         <<set _precocious += 0.2>>
                         <<if ($slaves[$i].boobs > 100) && (random(1,100) < 30)>>
                                 <<if (($slaves[$i].inducedNCS == 1) && ($slaves[$i].boobs > 300) && (random(1,100) > 25))>>
-                                        Hormonal effects work with $possessive @@.orange;NCS@@ and cause @@.orange;$possessive tits to shrink down.@@
+                                        Hormonal effects work with $his @@.orange;NCS@@ and cause @@.orange;$his tits to shrink down.@@
                                         <<set $slaves[$i].boobs -= 50>>
                                         <<set $slaves[$i].energy += 1>>
                                 <<else>>
-                                        $pronounCap feels an @@.orange;unusual calmness@@ in $possessive belly and breasts.
+                                        $He feels an @@.orange;unusual calmness@@ in $his belly and breasts.
                                 <</if>>
                                 <<set $slaves[$i].boobs -= 50>>
                         <</if>>
                         <<if ($slaves[$i].inducedNCS == 0)>>
                                 <<if ($slaves[$i].clit < 2) && (random(1,100) < 10)>>
-                                        $pronounCap feels @@.lime;unusual warmness@@ in $possessive clitoris.
+                                        $He feels @@.lime;unusual warmness@@ in $his clitoris.
                                         <<set $slaves[$i].clit += 1>>
                                 <</if>>
                         <</if>>
                 <<elseif ($slaves[$i].drugs == "super fertility drugs")>>
                         <<set _precocious -= 0.5>>
                         <<if ($slaves[$i].inducedNCS == 0)>>
-                                $pronounCap feels an @@.lime;unusual warm feeling@@ in $possessive belly and breasts.
+                                $He feels an @@.lime;unusual warm feeling@@ in $his belly and breasts.
                                 <<if ($slaves[$i].boobs < 400) && (random(1,100) < 30)>>
-                                        $possessiveCap breasts feel @@.lime;heavy, hot and sensitive.@@
+                                        $His breasts feel @@.lime;heavy, hot and sensitive.@@
                                         <<set $slaves[$i].boobs += 50>>
                                         <<if random(1,100) < 10 && ($slaves[$i].breastMesh != 1)>>
                                                 <<set $slaves[$i].boobShape = "perky">>
                                         <</if>>
                                 <</if>>
                                 <<if ($slaves[$i].hips < 2) && (random(1,100) < 10)>>
-                                        $pronounCap feels @@.lime;strange minor pains@@ in $possessive pelvis.
+                                        $He feels @@.lime;strange minor pains@@ in $his pelvis.
                                         <<set $slaves[$i].hips += 1>>
                                 <</if>>
                                 <<if ($slaves[$i].butt < 4) && (random(1,100) < 10)>>
-                                        $pronounCap feels a @@.lime;strange weight@@ on $possessive rear.
+                                        $He feels a @@.lime;strange weight@@ on $his rear.
                                         <<set $slaves[$i].butt += 1>>
                                 <</if>>
                                 <<if ($slaves[$i].labia < 2) && (random(1,100) < 10)>>
-                                        $pronounCap feels an @@.lime;unusual tenderness@@ in $possessive labia.
+                                        $He feels an @@.lime;unusual tenderness@@ in $his labia.
                                         <<set $slaves[$i].labia += 1>>
                                 <</if>>
                         <</if>>
@@ -3757,9 +3757,9 @@
 
                 <<if ($slaves[$i].physicalAge < $slaves[$i].pubertyAgeXX) && ($slaves[$i].physicalAge > $slaves[$i].pubertyAgeXX-3) && ($slaves[$i].pubertyAgeXX < $fertilityAge)>>
                         <<if $slaves[$i].inducedNCS == 0>>
-                                $possessiveCap body is showing signs of @@.lime;early puberty.@@
+                                $His body is showing signs of @@.lime;early puberty.@@
                         <<else>>
-                                A routine scan confirms that $possessive body is advancing towards @@.lime;early puberty.@@ puberty, despite not really showing signs of secondary sexual characteristics.
+                                A routine scan confirms that $his body is advancing towards @@.lime;early puberty.@@ puberty, despite not really showing signs of secondary sexual characteristics.
                         <</if>>
                 <</if>>
 
@@ -3788,51 +3788,51 @@
                 <<elseif ($slaves[$i].drugs == "hyper testicle enhancement")>>
                         <<set _precocious -= 0.5>>
                         <<if ($slaves[$i].inducedNCS == 0)>>
-                                $pronounCap feels an @@.lime;unusual warm feeling@@ in $possessive groin.
+                                $He feels an @@.lime;unusual warm feeling@@ in $his groin.
                                 <<if ($slaves[$i].dick < 4) && (random(1,100) < 30)>>
-                                        $possessiveCap penis feels @@.lime;heavy, hot and oversensitive@@.
+                                        $His penis feels @@.lime;heavy, hot and oversensitive@@.
                                         <<set $slaves[$i].dick += 1>>
                                 <</if>>
                                 <<if ($slaves[$i].balls < 4) && (random(1,100) < 30)>>
-                                            $possessiveCap balls feel @@.lime;heavy, full and oversensitive@@.
+                                            $His balls feel @@.lime;heavy, full and oversensitive@@.
                                             <<set $slaves[$i].balls += 1>>
                                 <</if>>
                         <</if>>
                 <<elseif ($slaves[$i].drugs == "super fertility drugs")>>
                         <<set _precocious -= 1>>
                         <<if ($slaves[$i].inducedNCS == 0)>>
-                                $pronounCap feels @@.lime;unusual warm feeling@@ in $possessive breasts.
+                                $He feels @@.lime;unusual warm feeling@@ in $his breasts.
                                 <<if ($slaves[$i].boobs < 400) && (random(1,100) < 30)>>
-                                        $possessiveCap chest feels @@.lime;hot and sensitive@@.
+                                        $His chest feels @@.lime;hot and sensitive@@.
                                         <<set $slaves[$i].boobs += 50>>
                                         <<if random(1,100) < 10 && ($slaves[$i].breastMesh != 1)>>
                                                 <<set $slaves[$i].boobShape = "perky">>
                                         <</if>>
                                 <</if>>
                                 <<if ($slaves[$i].hips < 2) && (random(1,100) < 10)>>
-                                        $pronounCap feels @@.lime;strange minor pains@@ in $possessive pelvis.
+                                        $He feels @@.lime;strange minor pains@@ in $his pelvis.
                                         <<set $slaves[$i].hips += 1>>
                                 <</if>>
                                 <<if ($slaves[$i].butt < 4) && (random(1,100) < 10)>>
-                                        $pronounCap feels a @@.lime;strange weight@@ to $possessive rear.
+                                        $He feels a @@.lime;strange weight@@ to $his rear.
                                         <<set $slaves[$i].butt += 1>>
                                 <</if>>
                         <</if>>
                         <<if ($slaves[$i].dick > 1) && (random(1,100) < 30)>>
                                 <<if (($slaves[$i].inducedNCS == 1) && ($slaves[$i].dick > 2) && (random(1,100) > 25))>>
-                                        Hormonal effects work with $possessive @@.orange;NCS@@ and cause @@.orange;$possessive dick to shrink.@@
+                                        Hormonal effects work with $his @@.orange;NCS@@ and cause @@.orange;$his dick to shrink.@@
                                         <<set $slaves[$i].dick -= 1>>
                                 <<else>>
-                                        $pronounCap feels an @@.orange;unusual lightness@@ in $possessive penis.
+                                        $He feels an @@.orange;unusual lightness@@ in $his penis.
                                 <</if>>
                                 <<set $slaves[$i].dick -= 1>>
                         <</if>>
                         <<if ($slaves[$i].balls > 1) && (random(1,100) < 30)>>
                                 <<if (($slaves[$i].inducedNCS == 1) && ($slaves[$i].balls > 2) && (random(1,100) > 25))>>
-                                        Hormonal effects work with $possessive @@.orange;NCS@@ and cause @@.orange;$possessive balls to shrink.@@
+                                        Hormonal effects work with $his @@.orange;NCS@@ and cause @@.orange;$his balls to shrink.@@
                                         <<set $slaves[$i].balls -= 1>>
                                 <<else>>
-                                        $pronounCap feels an @@.orange;unusual emptiness@@ to $possessive scrotum.
+                                        $He feels an @@.orange;unusual emptiness@@ to $his scrotum.
                                 <</if>>
                                 <<set $slaves[$i].balls -= 1>>
                         <</if>>
@@ -3866,9 +3866,9 @@
 
                 <<if ($slaves[$i].physicalAge < $slaves[$i].pubertyAgeXY) && ($slaves[$i].physicalAge > $slaves[$i].pubertyAgeXY-3) && ($slaves[$i].pubertyAgeXY < $potencyAge)>>
                         <<if $slaves[$i].inducedNCS == 0>>
-                                $possessiveCap body is showing signs of @@.lime;early puberty.@@
+                                $His body is showing signs of @@.lime;early puberty.@@
                         <<else>>
-                                A routine scan confirms that $possessive body is advancing towards @@.lime;early puberty.@@ puberty, despite not really showing signs of secondary sexual characteristics.
+                                A routine scan confirms that $his body is advancing towards @@.lime;early puberty.@@ puberty, despite not really showing signs of secondary sexual characteristics.
                         <</if>>
                 <</if>>
 
@@ -3907,20 +3907,20 @@
 	<</if>>
 	<<if $slaves[$i].bellyFluid > 2000>>
 		<<if $slaves[$i].inflation > 1>>
-			$pronounCap finds herself only capable of handling @@.yellow;two liters of $slaves[$i].inflationType inside $possessive body at once,@@ far less than $possessive required bloating.
+			$He finds herself only capable of handling @@.yellow;two liters of $slaves[$i].inflationType inside $his body at once,@@ far less than $his required bloating.
 		<<else>>
-			$possessiveCap body cannot handle having so much $slaves[$i].inflationType inside it, forcing $object to release $possessive contents until $pronoun feels better.
+			$His body cannot handle having so much $slaves[$i].inflationType inside it, forcing $him to release $his contents until $he feels better.
 		<</if>>
 		<<if $slaves[$i].pregKnown == 0>>
-			The cause? @@.lime;$pronounCap's pregnant<<if $slaves[$i].preg > 10>> and rather far along<</if>>.@@
+			The cause? @@.lime;$He's pregnant<<if $slaves[$i].preg > 10>> and rather far along<</if>>.@@
 		<<else>>
-			This will likely be the case for the duration of $possessive pregnancy.
+			This will likely be the case for the duration of $his pregnancy.
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
 			<<if $slaves[$i].preg >= 40>>
-				She's full-term and has never been hornier. Her pregnancy fetish combined with her ripe belly confers a @@.green;huge improvement in her sexual appetite.@@
+				$He's full-term and has never been hornier. $His pregnancy fetish combined with her ripe belly confers a @@.green;huge improvement in her sexual appetite.@@
 				<<set $slaves[$i].energy += 5>>
 			<<elseif $slaves[$i].preg > 30>>
 				Being a pregnancy fetishist and hugely pregnant confers an @@.green;improvement in her sexual appetite.@@
@@ -3929,13 +3929,13 @@
 				Being a pregnancy fetishist and pregnant confers a @@.green;slow improvement in her sexual appetite.@@
 				<<set $slaves[$i].energy += 2>>
 			<<elseif $slaves[$i].preg > 10>>
-				Her new pregnancy excites her and produces @@.green;very slow improvement in her sexual appetite.@@
+				$His new pregnancy excites her and produces @@.green;very slow improvement in her sexual appetite.@@
 				<<set $slaves[$i].energy += 1>>
 			<<elseif $slaves[$i].preg <= 10 && $slaves[$i].preg > 3>>
-				The rigors of early pregnancy do not seem to decrease her sex drive. If anything, it seems to be exciting her.
+				The rigors of early pregnancy do not seem to decrease her sex drive. If anything, it seems to be exciting $him.
 			<</if>>
 			<<if $slaves[$i].fetishKnown == 0>>
-				Given her enthusiasm, she appears to have a @@.lightcoral;pregnancy fetish.@@
+				Given her enthusiasm, $he appears to have a @@.lightcoral;pregnancy fetish.@@
 				<<set $slaves[$i].fetishKnown = 1>>
 			<</if>>
 		<<else>> /* not pregnancy fetish */
@@ -3944,16 +3944,16 @@
 					The rigors of early pregnancy @@.red;reduce her sexual appetite.@@
 					<<set $slaves[$i].energy -= 3>>
 				<<elseif ($slaves[$i].preg >= 40)>>
-					She is full-term and feels massively unattractive, @@.red;greatly suppressing her sexual appetite.@@
+					$He is full-term and feels massively unattractive, @@.red;greatly suppressing her sexual appetite.@@
 					<<set $slaves[$i].energy -= 4>>
 				<<elseif ($slaves[$i].preg > 30)>>
-					Her advanced pregnancy @@.red;greatly suppresses her sexual appetite.@@
+					$His advanced pregnancy @@.red;greatly suppresses her sexual appetite.@@
 					<<set $slaves[$i].energy -= 3>>
 				<<elseif ($slaves[$i].preg > 20)>>
-					Her growing pregnancy @@.red;suppresses her sexual appetite.@@
+					$His growing pregnancy @@.red;suppresses her sexual appetite.@@
 					<<set $slaves[$i].energy -= 2>>
 				<<elseif ($slaves[$i].bellyPreg >= 1500)>>
-					Her visible pregnancy causes her to feel unattractive, @@.red;reducing her sex drive.@@
+					$His visible pregnancy causes her to feel unattractive, @@.red;reducing her sex drive.@@
 					<<set $slaves[$i].energy -= 1>>
 				<</if>>
 			<<elseif ($slaves[$i].energy < 61)>>
@@ -3961,10 +3961,10 @@
 					The rigors of early pregnancy @@.red;slightly reduce her sexual appetite.@@
 					<<set $slaves[$i].energy -= 1>>
 				<<elseif ($slaves[$i].preg >= 40)>>
-					She is full-term and @@.green;hornier than ever.@@
+					$He is full-term and @@.green;hornier than ever.@@
 					<<set $slaves[$i].energy += 2>>
 				<<elseif ($slaves[$i].preg > 30)>>
-					Her advanced pregnancy @@.green;increases her libido.@@
+					$His advanced pregnancy @@.green;increases her libido.@@
 					<<set $slaves[$i].energy += 1>>
 				<</if>>
 			<<elseif $slaves[$i].energy < 90>>
@@ -3972,13 +3972,13 @@
 					The rigors of early pregnancy @@.red;reduce her sexual appetite.@@
 					<<set $slaves[$i].energy -= 3>>
 				<<elseif ($slaves[$i].preg >= 40)>>
-					She is full-term and suffering from an @@.green;unquenchable need for sex.@@
+					$He is full-term and suffering from an @@.green;unquenchable need for sex.@@
 					<<set $slaves[$i].energy += 4>>
 				<<elseif $slaves[$i].preg > 30>>
-					Her advanced pregnancy comes with a hugely increased libido, @@.green;greatly increasing her sexual drive.@@
+					$His advanced pregnancy comes with a hugely increased libido, @@.green;greatly increasing her sexual drive.@@
 					<<set $slaves[$i].energy += 3>>
 				<<elseif $slaves[$i].preg > 20>>
-					Her growing pregnancy comes with an increased libido, @@.green;spurring her sexual appetite.@@
+					$His growing pregnancy comes with an increased libido, @@.green;spurring her sexual appetite.@@
 					<<set $slaves[$i].energy += 2>>
 				<</if>>
 			<<else>>
@@ -3986,12 +3986,12 @@
 					The rigors of early pregnancy @@.red;reduce her sexual appetite.@@
 					<<set $slaves[$i].energy -= 3>>
 				<<elseif ($slaves[$i].preg >= 40)>>
-					She is full-term and horny as hell. Her hormones and already high libido have her acting like she hasn't had a good fuck in nine months.
+					$He is full-term and horny as hell. $His hormones and already high libido have her acting like $he hasn't had a good fuck in nine months.
 					<<set $slaves[$i].energy += 2>>
 				<<elseif $slaves[$i].preg > 30>>
-					Her advanced pregnancy, combined with her already high libido, has her practically begging for sex whenever she has a spare moment.
+					$His advanced pregnancy, combined with her already high libido, has her practically begging for sex whenever $he has a spare moment.
 				<<elseif $slaves[$i].preg > 20>>
-					Her growing pregnancy, combined with her already high libido, has her always itching for some sex.
+					$His growing pregnancy, combined with her already high libido, has her always itching for some sex.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -4000,34 +4000,34 @@
 	<<if ($slaves[$i].preg >= 10)>>
 		<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 			<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 50)>>
-				She @@.mediumaquamarine;feels right@@ to be growing heavy with child. To her, a growing baby means better milk.
+				$He @@.mediumaquamarine;feels right@@ to be growing heavy with child. To her, a growing baby means better milk.
 				<<set $slaves[$i].devotion += 1>>
 			<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].pregSource == -1)>>
-				She is filled with a feeling of @@.mediumorchid;revulsion@@ that your child is growing within her body.
+				$He is filled with a feeling of @@.mediumorchid;revulsion@@ that your child is growing within her body.
 				<<set $slaves[$i].devotion -= 1>>
 				<<if $slaves[$i].relationship == -3>>
 					This is compounded by the fact that you @@.gold;forced her to marry you@@ and @@.mediumorchid;raped her pregnant.@@
 					<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= -5>>
 				<</if>>
 			<<elseif ($slaves[$i].devotion > 50) && ($slaves[$i].pregSource == -1)>>
-				She @@.hotpink;loves@@ that your child is growing within her.
+				$He @@.hotpink;loves@@ that your child is growing within $him.
 				<<set $slaves[$i].devotion += 1>>
 				<<if $slaves[$i].relationship == -3>>
-					This is compounded by the fact that she is your @@.hotpink;devoted wife@@ and @@.mediumaquamarine;feels it is her duty@@ to bear your children.
+					This is compounded by the fact that $he is your @@.hotpink;devoted wife@@ and @@.mediumaquamarine;feels it is her duty@@ to bear your children.
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 				<</if>>
 			<</if>>
 			<<if ($slaves[$i].pregSource == $slaves[$i].relationshipTarget) && ($slaves[$i].relationship > 2)>>
-				She can't help but feel @@.mediumaquamarine;satisfaction@@ in carrying her lover's child.
+				$He can't help but feel @@.mediumaquamarine;satisfaction@@ in carrying her lover's child.
 				<<set $slaves[$i].trust += 1>>
 			<</if>>
 			/* pregmod start */
 			<<if $slaves[$i].pregSource == $slaves[$i].ID>>
 				<<if $slaves[$i].sexualQuirk == "perverted">>
-					She's @@.hotpink;aroused@@ at the mere concept that the baby growing inside her was conceived by her own sperm.
+					$He's @@.hotpink;aroused@@ at the mere concept that the baby growing inside her was conceived by her own sperm.
 					<<set $slaves[$i].devotion += 1>>
 				<<else>>
-					She often becomes preoccupied with @@.gold;worry@@ that her self-conceived child will be born unhealthy.
+					$He often becomes preoccupied with @@.gold;worry@@ that her self-conceived child will be born unhealthy.
 					<<set $slaves[$i].trust -= 1>>
 				<</if>>
 			<</if>>
@@ -4036,52 +4036,52 @@
 				<<if $Nurse == 0 && $slaves[$i].assignment != "get treatment in the clinic">>
 					<<if $slaves[$i].pregType >= 20 && $slaves[$i].devotion <= 20 && $slaves[$i].trust <= 50>>
 						<<if $slaves[$i].sexualFlaw == "self hating">>
-							She is @@.hotpink;delirious with joy@@ over her straining womb. Every week she gets bigger, fuller and tighter; in her mind, it won't be long until she bursts, bringing her children into the world.
+							$He is @@.hotpink;delirious with joy@@ over her straining womb. Every week $he gets bigger, fuller and tighter; in her mind, it won't be long until $he bursts, bringing her children into the world.
 							<<set $slaves[$i].devotion += 10>>
 						<<else>>
-							She is @@.gold;utterly terrified@@ by her straining womb. Every week she gets bigger, fuller and tighter; in her mind, it won't be long until she bursts, bringing her children into @@.mediumorchid;this wretched world.@@<<if $slaves[$i].bellyPreg >= 600000>> She is absolutely huge, her stretchmark streaked orb of a belly keeps her painfully immobilized. She counts every second, hoping that she can make it to the next. Her mind @@.red;can't handle it and shatters,@@ leaving her nothing more than an overfilled broodmother.<<set $slaves[$i].fetish = "mindbroken">><</if>>
+							$He is @@.gold;utterly terrified@@ by her straining womb. Every week $he gets bigger, fuller and tighter; in her mind, it won't be long until $he bursts, bringing her children into @@.mediumorchid;this wretched world.@@<<if $slaves[$i].bellyPreg >= 600000>> $He is absolutely huge, her stretchmark streaked orb of a belly keeps her painfully immobilized. $He counts every second, hoping that $he can make it to the next. $His mind @@.red;can't handle it and shatters,@@ leaving her nothing more than an overfilled broodmother.<<set $slaves[$i].fetish = "mindbroken">><</if>>
 							<<set $slaves[$i].devotion -= 10>>
 							<<set $slaves[$i].trust -= 10>>
 						<</if>>
 					<<elseif $slaves[$i].devotion <= 20 && $slaves[$i].trust <= 20>>
-						She is @@.gold;utterly terrified@@ by her straining womb and filled @@.mediumorchid;with disgust@@ that you've turned her into nothing more than a rapid breeding vessel.
+						$He is @@.gold;utterly terrified@@ by her straining womb and filled @@.mediumorchid;with disgust@@ that you've turned her into nothing more than a rapid breeding vessel.
 						<<set $slaves[$i].devotion -= 10>>
 						<<set $slaves[$i].trust -= 10>>
 					<<elseif $slaves[$i].devotion <= 80 && $slaves[$i].trust <= 80>>
-						She trusts you, but deep down @@.gold;she can't help but worry@@ over how fast she is growing.
+						$He trusts you, but deep down @@.gold;$he can't help but worry@@ over how fast $he is growing.
 						<<set $slaves[$i].trust -= 2>>
 					<</if>>
 				<</if>>
 			<<case "labor supressors">>
 				<<if $slaves[$i].devotion <= 20 && ($slaves[$i].pregSource == -1)>>
-					She is filled with @@.mediumorchid;hate@@ that you're forcing her to continue carrying your child.
+					$He is filled with @@.mediumorchid;hate@@ that you're forcing her to continue carrying your child.
 					<<set $slaves[$i].devotion -= 5>>
 				<</if>>
 			<<case "slow gestation">>
 				<<if $slaves[$i].devotion <= 20 && ($slaves[$i].pregSource == -1)>>
-					She is filled with @@.mediumorchid;hate@@ that you're tormenting her by prolonging her pregnancy.
+					$He is filled with @@.mediumorchid;hate@@ that you're tormenting her by prolonging her pregnancy.
 					<<set $slaves[$i].devotion -= 5>>
 				<</if>>
 			<</switch>>
 			<<if $slaves[$i].induce == 1>>
-				Her child<<if $slaves[$i].pregType > 1>>ren visibly shift<<else>> visibly shifts<</if>> within her womb as <<if $slaves[$i].pregType > 1>>they prepare<<else>>it prepares<</if>> to enter the world. She experiences several contractions, but not enough to deter her from her work.
+				$His child<<if $slaves[$i].pregType > 1>>ren visibly shift<<else>> visibly shifts<</if>> within her womb as <<if $slaves[$i].pregType > 1>>they prepare<<else>>it prepares<</if>> to enter the world. $He experiences several contractions, but not enough to deter her from her work.
 			<<elseif $slaves[$i].pregControl == "labor supressors">>
-				Her child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> oddly calm; it is unlikely she will give birth soon, despite being overdue.
+				$His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> oddly calm; it is unlikely $he will give birth soon, despite being overdue.
 			<<elseif $slaves[$i].broodmother == 0>>
 				<<if $slaves[$i].preg > 41>>
-					She is constantly beset by her squirming child<<if $slaves[$i].pregType > 1>>ren<</if>>. They're overdue, so she's likely to go into labor at any moment, but they aren't quite ready to leave their home.
+					$He is constantly beset by her squirming child<<if $slaves[$i].pregType > 1>>ren<</if>>. They're overdue, so $he's likely to go into labor at any moment, but they aren't quite ready to leave their home.
 				<<elseif $slaves[$i].preg > 39>>
-					She is constantly beset by her squirming child<<if $slaves[$i].pregType > 1>>ren<</if>>. Given their liveliness, and how long she has been pregnant, it is likely that she will go into labor at any time now.
+					$He is constantly beset by her squirming child<<if $slaves[$i].pregType > 1>>ren<</if>>. Given their liveliness, and how long $he has been pregnant, it is likely that $he will go into labor at any time now.
 				<<elseif $slaves[$i].preg > 38>>
-					She often has to stop for breaks to soothe her kicking child<<if $slaves[$i].pregType > 1>>ren<</if>> and to catch her breath. She is far enough along that she may go into labor any day now.
+					$He often has to stop for breaks to soothe her kicking child<<if $slaves[$i].pregType > 1>>ren<</if>> and to catch her breath. $He is far enough along that $he may go into labor any day now.
 				<<elseif $slaves[$i].preg > 37>>
-					She often has to stop for breaks to soothe her kicking child<<if $slaves[$i].pregType > 1>>ren<</if>>. She is far enough along that she may go into early labor.
+					$He often has to stop for breaks to soothe her kicking child<<if $slaves[$i].pregType > 1>>ren<</if>>. $He is far enough along that $he may go into early labor.
 				<</if>>
 			<<elseif $slaves[$i].broodmother > 0 && $slaves[$i].preg > 37>>
 				<<if $slaves[$i].broodmother == 1>>
-					She often has to stop for breaks to soothe her kicking children and to catch her breath. It's only a matter of time until the next one drops into position to be born.
+					$He often has to stop for breaks to soothe her kicking children and to catch her breath. It's only a matter of time until the next one drops into position to be born.
 				<<else>>
-					She is constantly beset by her squirming children and often has to stop to handle labor pains. She is never quite sure when the next one will drop into position to be born.
+					$He is constantly beset by her squirming children and often has to stop to handle labor pains. $He is never quite sure when the next one will drop into position to be born.
 				<</if>>
 			<</if>>
 			/* pregmod end */
@@ -4182,75 +4182,75 @@
                 <<if ($slaves[$i].inducedNCS == 0)>>
                         <<if ($slaves[$i].pregType >= 30) && ((($slaves[$i].assignment == "be your Concubine" || $slaves[$i].assignment == "serve in the master suite") && $masterSuitePregnancySlaveLuxuries == 1) || ($slaves[$i].diet == "high caloric"))>>
                                 <<if ($slaves[$i].weight <= 65)>>
-                                        $pronounCap has @@.lime;gained weight@@ in order to better sustain <<print $possessive>>self and $possessive children.
+                                        $He has @@.lime;gained weight@@ in order to better sustain <<print $his>>self and $his children.
                                         <<set $slaves[$i].weight += 1>>
                                 <</if>>
                                 <<if (random(1,100) > 60)>>
                                         <<if (($slaves[$i].boobs - $slaves[$i].boobsImplant) < _boobTarget)>>
-                                                $possessiveCap breasts @@.lime;greatly swell@@ to meet the upcoming demand.
+                                                $His breasts @@.lime;greatly swell@@ to meet the upcoming demand.
                                                 <<set $slaves[$i].boobs += 200>>
                                                 <<if $slaves[$i].boobShape != "saggy" && $slaves[$i].preg > 32 && ($slaves[$i].breastMesh != 1) && ($slaves[$i].drugs != "sag-B-gone")>>
-                                                        $possessiveCap immensely engorged @@.orange;breasts become saggy@@ in the last stages of $possessive pregnancy as $possessive body undergoes changes in anticipation of the forthcoming birth.
+                                                        $His immensely engorged @@.orange;breasts become saggy@@ in the last stages of $his pregnancy as $his body undergoes changes in anticipation of the forthcoming birth.
                                                         <<set $slaves[$i].boobShape = "saggy">>
                                                 <</if>>
                                         <</if>>
                                         <<if ($slaves[$i].hips < 2)>>
-                                                $possessiveCap hips @@.lime;widen@@ for $possessive upcoming birth.
+                                                $His hips @@.lime;widen@@ for $his upcoming birth.
                                                 <<set $slaves[$i].hips += 1>>
                                         <</if>>
                                         <<if ($slaves[$i].butt < 14)>>
-                                                $possessiveCap butt @@.lime;swells with added fat@@ from $possessive changing body.
+                                                $His butt @@.lime;swells with added fat@@ from $his changing body.
                                                 <<set $slaves[$i].butt += 1>>
                                         <</if>>
                                 <</if>>
                         <<elseif ($slaves[$i].pregType >= 10)>>
                                 <<if random(1,100) > 80 && (($slaves[$i].boobs - $slaves[$i].boobsImplant) < _boobTarget)>>
-                                        $possessiveCap breasts @@.lime;swell@@ in preparation for $possessive growing brood.
+                                        $His breasts @@.lime;swell@@ in preparation for $his growing brood.
                                         <<set $slaves[$i].boobs += 100>>
                                         <<if $slaves[$i].boobShape != "saggy" && ($slaves[$i].breastMesh != 1) && ($slaves[$i].drugs != "sag-B-gone")>>
                                                 <<if $slaves[$i].preg > random(32,82)>>
-                                                        $possessiveCap swollen @@.orange;breasts become saggy@@ in the last stages of $possessive pregnancy as $possessive body undergoes changes in anticipation of the forthcoming birth.
+                                                        $His swollen @@.orange;breasts become saggy@@ in the last stages of $his pregnancy as $his body undergoes changes in anticipation of the forthcoming birth.
                                                         <<set $slaves[$i].boobShape = "saggy">>
                                                 <</if>>
                                         <</if>>
                                 <</if>>
                         <<elseif ($slaves[$i].boobs - $slaves[$i].boobsImplant) < _boobTarget>>
                                 <<if random(1,100) > 80>>
-                                        Pregnancy @@.lime;causes $possessive breasts to swell somewhat.@@
+                                        Pregnancy @@.lime;causes $his breasts to swell somewhat.@@
                                         <<set $slaves[$i].boobs += 50>>
                                         <<if $slaves[$i].boobShape != "saggy" && $slaves[$i].preg > random(32,100) && ($slaves[$i].breastMesh != 1) && ($slaves[$i].drugs != "sag-B-gone")>>
-                                                $possessiveCap @@.orange;breasts become saggy@@ in the last stages of $possessive pregnancy as $possessive body undergoes changes in anticipation of the forthcoming birth.
+                                                $His @@.orange;breasts become saggy@@ in the last stages of $his pregnancy as $his body undergoes changes in anticipation of the forthcoming birth.
                                                 <<set $slaves[$i].boobShape = "saggy">>
                                         <</if>>
                                 <</if>>
                         <</if>>
                         <<if $slaves[$i].preg > 32 && $slaves[$i].physicalAge >= 18 && $slaves[$i].hips == 1 && $slaves[$i].hipsImplant == 0 && random(1,100) > 90>>
-                                $possessiveCap hips @@.lime;widen@@ to better support $possessive gravidity.
+                                $His hips @@.lime;widen@@ to better support $his gravidity.
                                 <<set $slaves[$i].hips += 1>>
                         <<elseif $slaves[$i].preg > 28 && $slaves[$i].physicalAge >= 18 && $slaves[$i].hips == 0 && $slaves[$i].hipsImplant == 0 && random(1,100) > 70>>
-                                $possessiveCap hips @@.lime;widen@@ to better support $possessive gravidity.
+                                $His hips @@.lime;widen@@ to better support $his gravidity.
                                 <<set $slaves[$i].hips += 1>>
                         <</if>>
 		<</if>>
 		<<if $slaves[$i].preg == 15>>
 			<<if $slaves[$i].pregKnown == 0>>
-				$possessiveCap areolae have oddly darkened. Some cursory tests reveal @@.lime;she is about fifteen weeks pregnant.@@
+				$His areolae have oddly darkened. Some cursory tests reveal @@.lime;$he is about fifteen weeks pregnant.@@
 				<<set $slaves[$i].pregKnown = 1>>
 			<<else>>
-				$possessiveCap areolae darken with $possessive progressing pregnancy.
+				$His areolae darken with $his progressing pregnancy.
 			<</if>>
 		<<elseif $slaves[$i].bellyPreg >= 1500>>
 			<<if setup.fakeBellies.includes($bellyAccessory)>>
-				Her growing pregnancy renders her fake belly moot.
+				$His growing pregnancy renders her fake belly moot.
 				<<set $slaves[$i].bellyAccessory = "none">>
 			<</if>>
 			<<if ($slaves[$i].preg > 20) && ($slaves[$i].lactation == 0)>>
 				<<if $slaves[$i].health < -20>>
-					$pronounCap's so unwell that natural lactation is unlikely.
+					$He's so unwell that natural lactation is unlikely.
 				<<elseif $slaves[$i].weight <= -30>>
-					$pronounCap's so skinny that natural lactation is unlikely.
+					$He's so skinny that natural lactation is unlikely.
 				<<elseif $slaves[$i].preg > random(18,30)>>
-					Pregnancy @@.lime;causes $object to begin lactating.@@
+					Pregnancy @@.lime;causes $him to begin lactating.@@
 					<<set $slaves[$i].lactation = 1>>
 				<</if>>
 			<</if>>
@@ -4269,10 +4269,10 @@
 <<if $seePreg != 0>>
 <<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].preg == -1) && ($slaves[$i].devotion > 20) && ($slaves[$i].fetishStrength > 60) && ($slaves[$i].fetish == "pregnancy") && isFertile($slaves[$i])>>
 	<<if $slaves[$i].fetishKnown == 0>>
-		@@.mediumorchid;She's unhappy@@ that she's on contraceptives, revealing that she has a @@.lightcoral;deep desire to get pregnant.@@
+		@@.mediumorchid;$He's unhappy@@ that $he's on contraceptives, revealing that $he has a @@.lightcoral;deep desire to get pregnant.@@
 		<<set $slaves[$i].fetishKnown = 1>>
 	<<else>>
-		She badly wants to have a child, so @@.mediumorchid;she's unhappy@@ that she's on contraceptives.
+		$He badly wants to have a child, so @@.mediumorchid;$he's unhappy@@ that $he's on contraceptives.
 	<</if>>
 	<<set $slaves[$i].devotion -= 4>>
 <</if>>
@@ -4284,10 +4284,10 @@
 <<set _conceptionSeed = random(1,100)>>
 
 <<if ($PC.dick > 0) && ($universalRulesImpregnation == "PC") && ($slaves[$i].eggType == "human")>>
-	$slaves[$i].slaveName is ripe for breeding, so you ejaculate inside $object often. When you bore of $possessive fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>, you keep $object around as you fuck other slaves so you can pull out of them, shove your cock into $object, and fill $object with your seed anyway.
+	$slaves[$i].slaveName is ripe for breeding, so you ejaculate inside $him often. When you bore of $his fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>, you keep $him around as you fuck other slaves so you can pull out of them, shove your cock into $him, and fill $him with your seed anyway.
 	<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 		<<if ($slaves[$i].devotion <= 20) && ($slaves[$i].trust > -20)>>
-			She attempts to resist this treatment, and spends most of her days bound securely, with your cum dripping out of her <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. This regimen fills her with @@.mediumorchid;hatred,@@ @@.gold;fear,@@ and @@.lime;a pregnancy.@@
+			$He attempts to resist this treatment, and spends most of her days bound securely, with your cum dripping out of her <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. This regimen fills $him with @@.mediumorchid;hatred,@@ @@.gold;fear,@@ and @@.lime;a pregnancy.@@
 			<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<if ($slaves[$i].sexualFlaw == "none")>>
 				This unpleasant interlude leaves her @@.red;hating penetration@@ of her now-pregnant <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>.
@@ -4298,9 +4298,9 @@
 				<</if>>
 			<</if>>
 		<<elseif ($slaves[$i].devotion <= 20)>>
-			She complies fearfully with your use of her body.
+			$He complies fearfully with your use of her body.
 		<<elseif ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			She is @@.hotpink;absurdly pleased@@ by this treatment, @@.mediumaquamarine;trustingly@@ serving as your breeding bitch until she @@.lime;conceives.@@ She's so aroused by the constant insemination that having your dick, wet from another slave, pushed inside her to climax is often enough to bring her to orgasm in turn.
+			$He is @@.hotpink;absurdly pleased@@ by this treatment, @@.mediumaquamarine;trustingly@@ serving as your breeding bitch until $he @@.lime;conceives.@@ $He's so aroused by the constant insemination that having your dick, wet from another slave, pushed inside her to climax is often enough to bring $him to orgasm in turn.
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 			<<if ($slaves[$i].fetishStrength <= 95)>>
 				Such total satisfaction of her pregnancy fantasies @@.lightcoral;strengthens her fetish.@@
@@ -4308,7 +4308,7 @@
 			<</if>>
 			<<set $slaves[$i].need = 0>>
 		<<else>>
-			She serves you dutifully in this, @@.mediumaquamarine;trustingly@@ serving as your breeding bitch until she @@.lime;conceives.@@
+			$He serves you dutifully in this, @@.mediumaquamarine;trustingly@@ serving as your breeding bitch until $he @@.lime;conceives.@@
 			<<set $slaves[$i].trust += 5>>
 		<</if>>
 	<</if>>
@@ -4324,9 +4324,9 @@
 	<<elseif $HGCum == 0>>
 		It's $HeadGirl.slaveName's responsibility to impregnate fertile slaves, but your Head Girl can only fuck a limited number of slaves enough to ensure impregnation each week.
 	<<elseif !canBreed($slaves[$i], $HeadGirl)>>
-		It's $HeadGirl.slaveName's responsibility to impregnate fertile slaves, but $HeadGirl.slaveName's sperm is unable to fertilize $slaves[$i].slaveName's ova, so she doesn't waste her seed trying.
+		It's $HeadGirl.slaveName's responsibility to impregnate fertile slaves, but $HeadGirl.slaveName's sperm is unable to fertilize $slaves[$i].slaveName's ova, so $he doesn't waste her seed trying.
 	<<else>>
-		It's $HeadGirl.slaveName's responsibility to get $object pregnant, a task your
+		It's $HeadGirl.slaveName's responsibility to get $him pregnant, a task your
 		<<if ($HeadGirl.fetish == "pregnancy") && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
 			pregnancy fetishist Head Girl is @@.hotpink;extremely pleased@@ to take on.
 			<<set $HeadGirl.devotion += 2>>
@@ -4335,7 +4335,7 @@
 				<<set $HeadGirl.fetishStrength += 4>>
 			<</if>>
 		<<elseif $HeadGirl.career == "a breeding bull">>
-			Head Girl feels @@.hotpink;she was meant for.@@
+			Head Girl feels @@.hotpink;$he was meant for.@@
 			<<set $HeadGirl.devotion += 1>>
 		<<elseif ($HeadGirl.attrXX > 65) && ($HeadGirl.attrKnown == 1)>>
 			<<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>-hungry Head Girl is @@.hotpink;happy@@ to take on.
@@ -4349,7 +4349,7 @@
 				$slaves[$i].slaveName feels a need to be bred by the Head Girl, and submits herself to her superior's virile cock until @@.lime;conception@@ is verified.
 			<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust > -20)>>
 				<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
-					Her interest is piqued, however, when $slaves[$i].slaveName shows signs of resistance. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ @@.mediumorchid;rapes the poor girl@@ pregnant, ejaculating inside her victim more often than is really necessary for @@.lime;conception.@@
+					$His interest is piqued, however, when $slaves[$i].slaveName shows signs of resistance. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ @@.mediumorchid;rapes the poor girl@@ pregnant, ejaculating inside her victim more often than is really necessary for @@.lime;conception.@@
 					<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 5>>
 				<<else>>
 					$slaves[$i].slaveName tries to resist her, so $HeadGirl.slaveName is forced to @@.mediumorchid;rape the poor girl@@ pregnant, regularly ejaculating inside her until @@.lime;conception@@ is confirmed.
@@ -4365,7 +4365,7 @@
 				<</if>>
 			<<elseif ($slaves[$i].devotion <= 20)>>
 				<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
-					Her interest is piqued, however, when it becomes clear that $slaves[$i].slaveName, though fearfully obedient, is not happy with being bred. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ ensures that her victim @@.mediumorchid;does not enjoy@@ a week of being @@.lime;raped pregnant.@@
+					$His interest is piqued, however, when it becomes clear that $slaves[$i].slaveName, though fearfully obedient, is not happy with being bred. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ ensures that her victim @@.mediumorchid;does not enjoy@@ a week of being @@.lime;raped pregnant.@@
 					<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 3>>
 				<<else>>
 					$slaves[$i].slaveName, though fearfully obedient, is not happy with being bred, but $HeadGirl.slaveName @@.mediumorchid;rapes the poor girl@@ pregnant anyway, regularly ejaculating inside her until @@.lime;conception@@ is confirmed.
@@ -4401,7 +4401,7 @@
 					<</if>>
 					<<set $slaves[$i].need = 0>>
 				<<else>>
-					$slaves[$i].slaveName is @@.hotpink;quite willing to be bred@@ by the Head Girl, whom she respects, and submissively takes her superior's cock bareback until @@.lime;conception@@ is verified.
+					$slaves[$i].slaveName is @@.hotpink;quite willing to be bred@@ by the Head Girl, whom $he respects, and submissively takes her superior's cock bareback until @@.lime;conception@@ is verified.
 					<<set $slaves[$i].devotion += 1>>
 				<</if>>
 			<</if>>
@@ -4424,14 +4424,14 @@
 
 	<<case "be your Concubine">>
 		<<if ($PC.dick == 1) && ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken") && ($slaves[$i].eggType == "human")>>
-			As your concubine, she takes care to only share her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>> with you. Her efforts paid off; @@.lime;she has become pregnant with your child.@@
+			As your concubine, $he takes care to only share her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>> with you. $His efforts paid off; @@.lime;$he has become pregnant with your child.@@
 			<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = -1, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -1, 1)>>
 		<</if>>
 
 	<<case "serve in the master suite">>
 		<<if ($PC.dick == 1) && ($slaves[$i].eggType == "human") && (($slaves[$i].toyHole == "all her holes" && $slaves[$i].mpreg != 1 && $slaves[$i].vagina > 0) || ($slaves[$i].toyHole == "all her holes" && $slaves[$i].mpreg == 1 && $slaves[$i].anus > 0) || ($slaves[$i].toyHole == "pussy" && $slaves[$i].mpreg != 1) || ($slaves[$i].mpreg == 1 && $slaves[$i].toyHole == "ass"))>>
-			You frequently avail yourself to her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. It's no surprise when @@.lime;she ends up pregnant with your child.@@
+			You frequently avail yourself to her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. It's no surprise when @@.lime;$he ends up pregnant with your child.@@
 			<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = -1, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -1, 1)>>
 
@@ -4447,7 +4447,7 @@
 						<</if>>
 					<</if>>
 					/* found eligible father */
-					After all the unprotected sex $pronoun had this week, it's really no surprise when @@.lime;$pronoun ends up pregnant.@@
+					After all the unprotected sex $he had this week, it's really no surprise when @@.lime;$he ends up pregnant.@@
 					<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = _msSlaves[_m].ID, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 					<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, $slaves[$i].pregSource, 1)>>
 					<<break>>
@@ -4457,21 +4457,21 @@
 
 	<<case "please you">>
 		<<if ($PC.dick == 1) && ($slaves[$i].eggType == "human") && (($slaves[$i].toyHole == "all her holes" && $slaves[$i].mpreg != 1 && $slaves[$i].vagina > 0) || ($slaves[$i].toyHole == "all her holes" && $slaves[$i].mpreg == 1 && $slaves[$i].anus > 0) || ($slaves[$i].toyHole == "pussy" && $slaves[$i].mpreg != 1) || ($slaves[$i].mpreg == 1 && $slaves[$i].toyHole == "ass"))>>
-			You frequently avail yourself to her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. It's no surprise when @@.lime;she ends up pregnant with your child.@@
+			You frequently avail yourself to her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. It's no surprise when @@.lime;$he ends up pregnant with your child.@@
 			<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = -1, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -1, 1)>>
 		<</if>>
 
 	<<case "work in the brothel" "serve in the club" "whore" "serve the public">>
 		<<if ($slaves[$i].eggType == "human")>>
-			Due to all the citizens cumming in $possessive fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>, @@.lime;$pronoun has become pregnant.@@
+			Due to all the citizens cumming in $his fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>, @@.lime;$he has become pregnant.@@
 			<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = -2, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -2, 1)>>
 		<</if>>
 
 	<<case "work a glory hole" "be confined in the arcade">>
 		<<if ($slaves[$i].eggType == "human")>>
-			Due to all the customers cumming in $possessive fertile, restrained <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>, @@.lime;$pronoun has become pregnant.@@
+			Due to all the customers cumming in $his fertile, restrained <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>, @@.lime;$he has become pregnant.@@
 			<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = -2, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -2, 1)>>
 		<</if>>
@@ -4495,7 +4495,7 @@
 			<<elseif ($slaves[$i].subTarget != 0) && ($slaves[$i].assignment == "be a subordinate slave") && canAchieveErection(_tempSub) && canImpreg($slaves[$i], _tempSub)>> /* subordinate must have erection to impregnate target */
 				<<set $slaves[$i].pregSource = _tempSub.ID>>
 			<<elseif (random(1,100) > 95) && ($slaves[$i].rivalry > 2) && canAchieveErection(_tempRival) && canImpreg($slaves[$i], _tempRival)>> /* 5% chance to be raped and knocked up by bitter rival - erection needed */
-				Driven by the bitter rivalry between them, _tempRival.slaveName successfully overpowers $slaves[$i].slaveName and rapes $object, cumming deep in $possessive fertile <<if $slaves[$i].mpreg == 1>>asshole<<else>>pussy<</if>> whenever she chooses. By the end of the week, $slaves[$i].slaveName is vowing revenge as $pronoun regains confidence.
+				Driven by the bitter rivalry between them, _tempRival.slaveName successfully overpowers $slaves[$i].slaveName and rapes $him, cumming deep in $his fertile <<if $slaves[$i].mpreg == 1>>asshole<<else>>pussy<</if>> whenever $he chooses. By the end of the week, $slaves[$i].slaveName is vowing revenge as $he regains confidence.
 				<<set $slaves[$i].pregSource = _tempRival.ID>>
 			<<elseif (random(1,100) > 60) && ($PC.dick == 1) && ($slaves[$i].eggType == "human")>> /* still 40% chance of impregnation by PC */
 				<<set $slaves[$i].pregSource = -1>>
@@ -4524,7 +4524,7 @@
 				<</if>>
 			<</if>>
 			<<if $slaves[$i].pregSource != 0>>
-				A quick scan after a bout of morning nausea reveals that @@.lime;$pronoun has become pregnant.@@
+				A quick scan after a bout of morning nausea reveals that @@.lime;$he has become pregnant.@@
 				<<set $slaves[$i].preg = 1, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 				<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, $slaves[$i].pregSource, 1)>>
 			<</if>>
@@ -4553,25 +4553,25 @@
 	<<include "SA inflation">>
 
 	<<if setup.fakeBellies.includes($bellyAccessory)>>
-		$pronounCap has trouble keeping <<print $object>>self full of
+		$He has trouble keeping <<print $him>>self full of
 		<<switch $slaves[$i].inflationType>>
 			<<case "cum" "milk" "water" "food">>
 				$slaves[$i].inflationType
 			<<default>>
 				<<print $slaves[$i].inflationType>>s
 		<</switch>>
-		with the weight of the fake belly resting on $possessive swollen stomach, forcing it to be removed.
+		with the weight of the fake belly resting on $his swollen stomach, forcing it to be removed.
 		<<set $slaves[$i].bellyAccessory = "none">>
 	<</if>>
 
 	<<if $slaves[$i].fetish != "mindbroken" && $slaves[$i].fuckdoll == 0>>
 		<<if $slaves[$i].bellyFluid >= 10000>>
 			<<if $slaves[$i].fetish != "masochist" && $slaves[$i].sexualFlaw != "hates self">>
-				Being so distended with fluids is @@.mediumorchid;very uncomfortable@@ to $possessive.
+				Being so distended with fluids is @@.mediumorchid;very uncomfortable@@ to $his.
 				<<set $slaves[$i].devotion -= 3>>
 			<</if>>
 			<<if ($slaves[$i].fetish == "none") && (_fetishChangeChance > random(0,100))>>
-				Having such a round, heavy belly leads $object to @@.lightcoral;begin fantasizing about being pregnant.@@
+				Having such a round, heavy belly leads $him to @@.lightcoral;begin fantasizing about being pregnant.@@
 				<<set $slaves[$i].fetish = "pregnancy", $slaves[$i].fetishStrength = 10, $slaves[$i].fetishKnown = 1>>
 			<</if>>
 		<<elseif $slaves[$i].bellyFluid >= 1500>>
@@ -4585,13 +4585,13 @@
 				<</switch>>
 				is completely humiliating, and
 				<<if $slaves[$i].fetishKnown == 0>>
-					$pronoun revels in the attention. @@.lightcoral;$pronounCap's a humiliation fetishist!@@
+					$he revels in the attention. @@.lightcoral;$He's a humiliation fetishist!@@
 					<<set $slaves[$i].fetishKnown = 1>>
 				<<else>>
-					$pronoun @@.hotpink;loves it.@@
+					$he @@.hotpink;loves it.@@
 					<<set $slaves[$i].devotion += 2>>
 					<<if $slaves[$i].fetishStrength < 100>>
-						Every eye on $possessive swollen stomach @@.lightcoral;strengthens $possessive fetish@@ further.
+						Every eye on $his swollen stomach @@.lightcoral;strengthens $his fetish@@ further.
 						<<set $slaves[$i].fetishStrength++>>
 					<</if>>
 				<</if>>
@@ -4606,7 +4606,7 @@
 				is @@.mediumorchid;completely humiliating.@@
 				<<set $slaves[$i].devotion -= 2>>
 				<<if (($slaves[$i].fetish == "none") || ($slaves[$i].fetishStrength <= 10)) && (_fetishChangeChance > random(0,100))>>
-					However, all the eyes on $object and $possessive jiggling middle @@.lightcoral;makes $object begin to crave humiliation.@@
+					However, all the eyes on $him and $his jiggling middle @@.lightcoral;makes $him begin to crave humiliation.@@
 					<<set $slaves[$i].fetish = "humiliation", $slaves[$i].fetishStrength = 10, $slaves[$i].fetishKnown = 1>>
 				<</if>>
 			<</if>>
@@ -4614,28 +4614,28 @@
 		<<switch $slaves[$i].inflationType>>
 		<<case "milk" "cum">>
 			<<if $slaves[$i].behavioralFlaw == "none" && $slaves[$i].behavioralQuirk == "none" && random(1,100) > 70>>
-				Filling $possessive guts with <<print $slaves[$i].inflationType>> all week @@.red;drives $object to gluttony.@@
+				Filling $his guts with <<print $slaves[$i].inflationType>> all week @@.red;drives $him to gluttony.@@
 				<<set $slaves[$i].behavioralFlaw = "gluttonous">>
 			<<elseif $slaves[$i].behavioralFlaw == "none" && $slaves[$i].behavioralQuirk == "none" && random(1,100) > 70>>
 				<<if $slaves[$i].inflationType == "cum" && $slaves[$i].fetish == "cumslut">>
 				<<else>>
-					Filling $possessive guts with <<print $slaves[$i].inflationType>> all week @@.red;drives $object to hate eating and food.@@
+					Filling $his guts with <<print $slaves[$i].inflationType>> all week @@.red;drives $him to hate eating and food.@@
 					<<set $slaves[$i].behavioralFlaw = "anorexic">>
 				<</if>>
 			<</if>>
 		<<case "food">>
 			<<if $slaves[$i].behavioralFlaw == "none" && $slaves[$i].behavioralQuirk != "fitness" && random(1,100) > 70>>
-				Stuffing her face with food all week @@.red;drives $object to gluttony.@@
+				Stuffing her face with food all week @@.red;drives $him to gluttony.@@
 				<<set $slaves[$i].behavioralFlaw = "gluttonous">>
 			<<elseif $slaves[$i].behavioralFlaw == "none" && $slaves[$i].behavioralQuirk != "fitness" && random(1,100) > 70>>
-				Stuffing her face with food all week @@.red;drives $object to hate eating.@@
+				Stuffing her face with food all week @@.red;drives $him to hate eating.@@
 				<<set $slaves[$i].behavioralFlaw = "anorexic">>
 			<</if>>
 		<</switch>>
 	<</if>>
 
 	<<if $slaves[$i].bellyFluid >= 10000 && $seeExtreme == 1 && $slaves[$i].health <= -100>>
-		$pronounCap feels an @@.red;unusual intense pain@@ in $possessive bloated belly.
+		$He feels an @@.red;unusual intense pain@@ in $his bloated belly.
 		<<set $slaves[$i].burst = 1>>
 	<</if>>
 
@@ -4734,9 +4734,9 @@
 <<if $slaves[$i].bellySag > 0 && $slaves[$i].belly < 1500>>
 	<<if $slaves[$i].muscles > 95>>
 		<<if (random(1,100) > 1)>>
-			$possessiveCap stretched, extreme muscles @@.lime;firm up readily@@ after
+			$His stretched, extreme muscles @@.lime;firm up readily@@ after
 			<<if $slaves[$i].bellySagPreg > 0>>
-				$possessive pregnancy.
+				$his pregnancy.
 				<<set $slaves[$i].bellySag -= 0.5, $slaves[$i].bellySagPreg -= 0.5>>
 				<<if $slaves[$i].bellySag < 0>>
 					<<set $slaves[$i].bellySag = 0, $slaves[$i].bellySagPreg = 0>>
@@ -4751,9 +4751,9 @@
 		<</if>>
 	<<elseif $slaves[$i].muscles >= 30>>
 		<<if (random(1,100) > 20)>>
-			$possessiveCap stretched, muscular belly @@.lime;firms up@@ after
+			$His stretched, muscular belly @@.lime;firms up@@ after
 			<<if $slaves[$i].bellySagPreg > 0>>
-				$possessive pregnancy.
+				$his pregnancy.
 				<<set $slaves[$i].bellySag -= 0.4, $slaves[$i].bellySagPreg -= 0.4>>
 				<<if $slaves[$i].bellySag < 0>>
 					<<set $slaves[$i].bellySag = 0, $slaves[$i].bellySagPreg = 0>>
@@ -4768,9 +4768,9 @@
 		<</if>>
 	<<elseif $slaves[$i].muscles >= 5>>
 		<<if (random(1,100) > 40)>>
-			$possessiveCap stretched, toned belly @@.lime;firms up@@ after
+			$His stretched, toned belly @@.lime;firms up@@ after
 			<<if $slaves[$i].bellySagPreg > 0>>
-				$possessive pregnancy.
+				$his pregnancy.
 				<<set $slaves[$i].bellySag -= 0.3, $slaves[$i].bellySagPreg -= 0.3>>
 				<<if $slaves[$i].bellySag < 0>>
 					<<set $slaves[$i].bellySag = 0, $slaves[$i].bellySagPreg = 0>>
@@ -4785,9 +4785,9 @@
 		<</if>>
 	<<else>>
 		<<if (random(1,100) > 60)>>
-			$possessiveCap belly @@.lime;regains some firmness@@ after
+			$His belly @@.lime;regains some firmness@@ after
 			<<if $slaves[$i].bellySagPreg > 0>>
-				$possessive pregnancy.
+				$his pregnancy.
 				<<set $slaves[$i].bellySag -= 0.2, $slaves[$i].bellySagPreg -= 0.2>>
 				<<if $slaves[$i].bellySag < 0>>
 					<<set $slaves[$i].bellySag = 0, $slaves[$i].bellySagPreg = 0>>
@@ -4814,7 +4814,7 @@
 	<</if>>
 <<elseif $slaves[$i].bellyImplant >= 1500>>
 	<<if setup.fakeBellies.includes($bellyAccessory)>>
-		Her implant rounded belly renders her fake one moot.
+		$His implant rounded belly renders her fake one moot.
 		<<set $slaves[$i].bellyAccessory = "none">>
 	<</if>>
 <</if>>
@@ -4826,14 +4826,14 @@
 	<<if $slaves[$i].devotion < -50>>
 	<<if $week-$slaves[$i].weekAcquired > 9>>
 	<<if $slaves[$i].fuckdoll > 50>>
-		Denied all stimulation other than sexual use for longer than a human mind can bear, @@.red;she, or rather it, has been irretrievably broken.@@
+		Denied all stimulation other than sexual use for longer than a human mind can bear, @@.red;$he, or rather it, has been irretrievably broken.@@
 		<<set $slaves[$i].fetish = "mindbroken", $slaves[$i].sexualFlaw = "none", $slaves[$i].behavioralFlaw = "none">>
 	<<else>>
 		<<if random(1,5) == 1>>
-			She has been used as a sexual slave for so long, and is so hopeless that her future as a slave will be anything but torment, that her mind finally slips. @@.red;She has been irretrievably broken.@@
+			$He has been used as a sexual slave for so long, and is so hopeless that her future as a slave will be anything but torment, that her mind finally slips. @@.red;$He has been irretrievably broken.@@
 			<<set $slaves[$i].fetish = "mindbroken", $slaves[$i].sexualFlaw = "none", $slaves[$i].behavioralFlaw = "none">>
 		<<else>>
-			She's so unhappy and terrified that the effects of the extreme stress on her mind and body are unpredictable. This week,
+			$He's so unhappy and terrified that the effects of the extreme stress on her mind and body are unpredictable. This week,
 			<<set _stressEffect = random(1,4)>>
 			<<switch _stressEffect>>
 			<<case 1>>
@@ -4846,7 +4846,7 @@
 				@@.orange;her face grew a little more haggard.@@
 				<<set $slaves[$i].face -= 2>>
 			<<default>>
-				she managed to bear it without lasting harm.
+				$he managed to bear it without lasting harm.
 			<</switch>>
 		<</if>>
 	<</if>>
@@ -4861,16 +4861,16 @@
 			<<set _effect = random(1,4)>>
 			Being so afraid so constantly drives her to find solace in
 			<<if _effect == 1>>
-			self-denial. @@.red;She has developed anorexia.@@
+			self-denial. @@.red;$He has developed anorexia.@@
 			<<set $slaves[$i].behavioralFlaw = "anorexic">>
 			<<elseif _effect == 2>>
-			stress eating. @@.red;She's now a nervous glutton.@@
+			stress eating. @@.red;$He's now a nervous glutton.@@
 			<<set $slaves[$i].behavioralFlaw = "gluttonous">>
 			<<elseif _effect == 3>>
-			the scraps of prayer and superstition she can remember from her life before she was a slave. @@.red;She's now religious.@@
+			the scraps of prayer and superstition $he can remember from her life before $he was a slave. @@.red;$He's now religious.@@
 			<<set $slaves[$i].behavioralFlaw = "devout">>
 			<<else>>
-			the remnants of modern philosophy and education she can remember from her life before she was a slave. @@.red;She feels mentally liberated.@@
+			the remnants of modern philosophy and education $he can remember from her life before $he was a slave. @@.red;$He feels mentally liberated.@@
 			<<set $slaves[$i].behavioralFlaw = "liberated">>
 			<</if>>
 		<</if>>
@@ -4886,19 +4886,19 @@
                                 driven her into @@.red;sexual apathy.@@
                                 <<set $slaves[$i].sexualFlaw = "apathetic">>
 			<<elseif _effect == 2>>
-                                convinced her that the conservative parts of her upbringing were right: sex is evil. @@.red;She's now repressed.@@
+                                convinced her that the conservative parts of her upbringing were right: sex is evil. @@.red;$He's now repressed.@@
                                 <<set $slaves[$i].sexualFlaw = "repressed">>
 			<<elseif _effect == 3>>
-                                given her a dread of being nude. @@.red;She's now shamefast.@@
+                                given her a dread of being nude. @@.red;$He's now shamefast.@@
                                 <<set $slaves[$i].sexualFlaw = "shamefast">>
 			<<elseif _effect == 4>>
-                                deprived her of any motivation to keep sex appealing or even clean. @@.red;She's now crude.@@
+                                deprived her of any motivation to keep sex appealing or even clean. @@.red;$He's now crude.@@
                                 <<set $slaves[$i].sexualFlaw = "crude">>
 			<<elseif _effect == 5>>
-                                driven her to find refuge in high standards. @@.red;She's now judgemental.@@
+                                driven her to find refuge in high standards. @@.red;$He's now judgemental.@@
                                 <<set $slaves[$i].sexualFlaw = "judgemental">>
 			<<else>>
-                                convinced her that sex is only this way here. Convinced that sexual slavery is wrong, @@.red;She's become sexually idealistic.@@
+                                convinced her that sex is only this way here. Convinced that sexual slavery is wrong, @@.red;$He's become sexually idealistic.@@
                                 <<set $slaves[$i].sexualFlaw = "idealistic">>
 			<</if>>
 		<</if>>
@@ -4909,26 +4909,26 @@
 
 <<if !canTalk($slaves[$i])>>
 <<if ($slaves[$i].behavioralFlaw == "bitchy")>>
-	If $pronoun has anything bitchy to say, @@.green;no one can tell,@@ since $pronoun can't talk.
+	If $he has anything bitchy to say, @@.green;no one can tell,@@ since $he can't talk.
 <</if>>
 <<if ($slaves[$i].behavioralQuirk == "cutting")>>
-	If $pronoun has anything witty to say, @@.red;no one can tell,@@ since $pronoun can't talk.
+	If $he has anything witty to say, @@.red;no one can tell,@@ since $he can't talk.
 <</if>>
 <</if>>
 
 <<if ($slaves[$i].breedingMark == 1) && ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 	<<if ($slaves[$i].devotion <= -20)>>
-		She views the mark of the Societal Elite @@.mediumorchid;with disgust@@ as it brands her as nothing more than your breeding bitch.
+		$He views the mark of the Societal Elite @@.mediumorchid;with disgust@@ as it brands her as nothing more than your breeding bitch.
 		<<set $slaves[$i].devotion -= 10>>
 	<<elseif ($slaves[$i].devotion <= 50)>>
-		She bears the mark of the Societal Elite as a sign of her superiority. As such, she @@.mediumorchid;behaves like a spoiled child@@ and tries to have everything her way.
+		$He bears the mark of the Societal Elite as a sign of her superiority. As such, $he @@.mediumorchid;behaves like a spoiled child@@ and tries to have everything her way.
 		<<set $slaves[$i].devotion -= 5>>
 		<<if ($slaves[$i].behavioralFlaw == "none") && ($slaves[$i].behavioralQuirk != "confident")>>
-			She has become @@.red;quite arrogant.@@
+			$He has become @@.red;quite arrogant.@@
 			<<set $slaves[$i].behavioralFlaw = "arrogant">>
 		<</if>>
 	<<else>>
-		She bears the mark of the Societal Elite @@.hotpink;with pride.@@ It signals that she is yours, and yours alone, drawing her ever closer to her beloved <<= WrittenMaster($slaves[$i])>>.
+		$He bears the mark of the Societal Elite @@.hotpink;with pride.@@ It signals that $he is yours, and yours alone, drawing her ever closer to her beloved <<= WrittenMaster($slaves[$i])>>.
 		<<set $slaves[$i].devotion += 10>>
 	<</if>>
 <</if>>
@@ -4939,74 +4939,74 @@
 			<<if $arcologies[0].FSDegradationist == "unset">>
 				<<if $slaves[$i].onDiet != 1>>
 					<<if $slaves[$i].behavioralQuirk == "insecure">>
-						She can't stop herself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. She knows they are fattening and @@.gold;starts obsessing@@ even more about her weight, appearance and how others view her.
+						$He can't stop herself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. $He knows they are fattening and @@.gold;starts obsessing@@ even more about her weight, appearance and how others view $him.
 						<<set $slaves[$i].trust -= 3>>
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
 							<<set $slaves[$i].weight++>>
 						<</if>>
 						<<set $slaves[$i].devotion++>>
 					<<elseif $slaves[$i].behavioralQuirk == "fitness">>
-						She hates the availability of the tasty slave treats and how they tempt her away from a fit lifestyle, but often @@.hotpink;finds herself absentmindedly snacking on them.@@
+						$He hates the availability of the tasty slave treats and how they tempt her away from a fit lifestyle, but often @@.hotpink;finds herself absentmindedly snacking on them.@@
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-							The more her @@.lime;waistline grows,@@ the @@.gold;less she finds herself trusting you.@@
+							The more her @@.lime;waistline grows,@@ the @@.gold;less $he finds herself trusting you.@@
 							<<set $slaves[$i].trust--, $slaves[$i].devotion++>>
 							<<set $slaves[$i].weight++>>
 						<<else>>
-							She finds that no matter how many she eats, she never gains weight, a detail she is @@.mediumaquamarine;thankful@@ for.
+							$He finds that no matter how many $he eats, $he never gains weight, a detail $he is @@.mediumaquamarine;thankful@@ for.
 							<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 						<</if>>
 					<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-						She @@.hotpink;loves@@ the availability of the tasty slave treats and how she can keep her mouth filled at @@.hotpink;nearly all times.@@
+						$He @@.hotpink;loves@@ the availability of the tasty slave treats and how $he can keep her mouth filled at @@.hotpink;nearly all times.@@
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-							Since her belly is always full thanks to your food supplies, she @@.mediumaquamarine;trusts you to keep her sated,@@ though her constant gorging has a @@.lime;huge impact on her waistline.@@
+							Since her belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep her sated,@@ though her constant gorging has a @@.lime;huge impact on her waistline.@@
 							<<set $slaves[$i].trust++, $slaves[$i].devotion += 3>>
 							<<set $slaves[$i].weight += 3>>
 						<<else>>
-							Since her belly is always full thanks to your food supplies, she @@.mediumaquamarine;trusts you to keep her sated.@@ Since the food is fat free, her waistline is spared her bad habits.
+							Since her belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep her sated.@@ Since the food is fat free, her waistline is spared her bad habits.
 							<<set $slaves[$i].trust++, $slaves[$i].devotion += 3>>
 						<</if>>
 					<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
-						She hates the availability of the tasty slave treats and how she @@.hotpink;can't stop eating them.@@
+						$He hates the availability of the tasty slave treats and how $he @@.hotpink;can't stop eating them.@@
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
 							The @@.lime;more her waistline grows,@@ the @@.gold;more horrifying her body becomes to her.@@
 							<<set $slaves[$i].trust -= 5, $slaves[$i].devotion++>>
 							<<set $slaves[$i].weight++>>
 						<<else>>
-							She finds that no matter how many she eats, she never gains weight, a detail she is @@.mediumaquamarine;thankful@@ for, even if she is disgusted by her actions.
+							$He finds that no matter how many $he eats, $he never gains weight, a detail $he is @@.mediumaquamarine;thankful@@ for, even if $he is disgusted by her actions.
 							<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 						<</if>>
 					<<else>>
-						She @@.hotpink;loves@@ the availability of the tasty slave treats and @@.mediumaquamarine;trusts you to more@@ for having them so accessible.
+						$He @@.hotpink;loves@@ the availability of the tasty slave treats and @@.mediumaquamarine;trusts you to more@@ for having them so accessible.
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-							She is so distracted by the luxury that she doesn't notice the @@.lime;weight she is gaining.@@
+							$He is so distracted by the luxury that $he doesn't notice the @@.lime;weight $he is gaining.@@
 							<<set $slaves[$i].weight++>>
 						<</if>>
 						<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 					<</if>>
 				<<else>> /* no treats for you */
 					<<if $slaves[$i].behavioralQuirk == "insecure">>
-						She is @@.mediumaquamarine;relieved@@ she doesn't have to fret over eating the treats and gaining weight as her <<= WrittenMaster($slaves[$i])>> is carefully directing her.
+						$He is @@.mediumaquamarine;relieved@@ $he doesn't have to fret over eating the treats and gaining weight as her <<= WrittenMaster($slaves[$i])>> is carefully directing $him.
 						<<set $slaves[$i].trust++>>
 					<<elseif $slaves[$i].behavioralQuirk == "fitness">>
-						She is @@.mediumaquamarine;thankful@@ that she isn't permitted to eat the treats. She's seen others try one, only to start shoveling them down.
+						$He is @@.mediumaquamarine;thankful@@ that $he isn't permitted to eat the treats. $He's seen others try one, only to start shoveling them down.
 						<<set $slaves[$i].trust++>>
 					<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-						She @@.mediumorchid;resents@@ not being allowed to stuff her face with the tempting treats like the other slaves she sees.
+						$He @@.mediumorchid;resents@@ not being allowed to stuff her face with the tempting treats like the other slaves $he sees.
 						<<set $slaves[$i].devotion -= 2>>
 					<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
-						She @@.hotpink;is relieved@@ that she doesn't have to eat the treats and is @@.mediumaquamarine;thankful@@ for your apparent consideration.
+						$He @@.hotpink;is relieved@@ that $he doesn't have to eat the treats and is @@.mediumaquamarine;thankful@@ for your apparent consideration.
 						<<set $slaves[$i].trust++, $slaves[$i].devotion += 2>>
 					<<else>>
-						She <<if canSee($slaves[$i])>>sees<<else>>knows<</if>> how much the other slaves enjoy the delicious treats and @@.mediumorchid;resents@@ not being allowed to enjoy them, feeling you are doing this to @@.gold;spite her.@@
+						$He <<if canSee($slaves[$i])>>sees<<else>>knows<</if>> how much the other slaves enjoy the delicious treats and @@.mediumorchid;resents@@ not being allowed to enjoy them, feeling you are doing this to @@.gold;spite her.@@
 						<<set $slaves[$i].devotion--, $slaves[$i].trust-->>
 					<</if>>
 				<</if>>
 			<<else>>
 				<<if $slaves[$i].onDiet != 1>>
-					The treats are designed to cause stomach cramps alongside being extremely addictive. She cannot stop herself from eating them, but she can @@.gold;fear@@ your cruelty as her @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in her food.
+					The treats are designed to cause stomach cramps alongside being extremely addictive. $He cannot stop herself from eating them, but $he can @@.gold;fear@@ your cruelty as her @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in her food.
 					<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 3>>
 				<<else>>
-					The treats are designed to cause stomach cramps alongside being extremely addictive. Since she is not permitted to eat them, @@.mediumaquamarine;she breathes a sigh of relief,@@ though she is fully aware of what happens to those not as fortunate as her. She @@.hotpink;tries her best to be obedient@@ hoping to not undergo the agony, but her efforts pale in comparison to the effects of the food based aphrodisiacs.
+					The treats are designed to cause stomach cramps alongside being extremely addictive. Since $he is not permitted to eat them, @@.mediumaquamarine;$he breathes a sigh of relief,@@ though $he is fully aware of what happens to those not as fortunate as $him. $He @@.hotpink;tries her best to be obedient@@ hoping to not undergo the agony, but her efforts pale in comparison to the effects of the food based aphrodisiacs.
 					<<set $slaves[$i].devotion++, $slaves[$i].trust++>>
 				<</if>>
 			<</if>>
@@ -5015,13 +5015,13 @@
 				Watching citizens sculpt their slaves to their ideals fills her with @@.mediumaquamarine;relief@@ that someone will find her attractive; that or make her so.
 				<<set $slaves[$i].trust++>>
 			<<elseif $slaves[$i].behavioralQuirk == "fitness">>
-				Watching both citizens and other slaves lie around and shirk exercise disappoints her. She @@.gold;fears@@ that she'll be prevented from exercising and grow soft too.
+				Watching both citizens and other slaves lie around and shirk exercise disappoints $him. $He @@.gold;fears@@ that $he'll be prevented from exercising and grow soft too.
 				<<set $slaves[$i].trust -= 2>>
 			<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
 				Being part of a society that welcomes gluttony makes her @@.mediumaquamarine;feel right at home.@@
 				<<set $slaves[$i].trust += 2>>
 			<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
-				She feels fat just watching your society gorge itself. She @@.gold;fears@@ that she'll be a bloated hog soon too.
+				$He feels fat just watching your society gorge itself. $He @@.gold;fears@@ that $he'll be a bloated hog soon too.
 				<<set $slaves[$i].trust -= 5>>
 			<</if>>
 		<</if>>
@@ -5029,74 +5029,74 @@
 		<<if $arcologies[0].FSDegradationist == "unset">>
 			<<if $slaves[$i].onDiet != 1>>
 				<<if $slaves[$i].behavioralQuirk == "insecure">>
-					She can't stop herself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. She knows they are fattening and @@.gold;starts obsessing@@ even more about her weight, appearance and how others view her.
+					$He can't stop herself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. $He knows they are fattening and @@.gold;starts obsessing@@ even more about her weight, appearance and how others view $him.
 					<<set $slaves[$i].trust -= 3>>
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
 						<<set $slaves[$i].weight++>>
 					<</if>>
 					<<set $slaves[$i].devotion++>>
 				<<elseif $slaves[$i].behavioralQuirk == "fitness">>
-					She hates the availability of the tasty slave treats and how they tempt her away from a fit lifestyle, but often @@.hotpink;finds herself absentmindedly snacking on them.@@
+					$He hates the availability of the tasty slave treats and how they tempt her away from a fit lifestyle, but often @@.hotpink;finds herself absentmindedly snacking on them.@@
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-						The more her @@.lime;waistline grows,@@ the @@.gold;less she finds herself trusting you.@@
+						The more her @@.lime;waistline grows,@@ the @@.gold;less $he finds herself trusting you.@@
 						<<set $slaves[$i].trust--, $slaves[$i].devotion++>>
 						<<set $slaves[$i].weight++>>
 					<<else>>
-						She finds that no matter how many she eats, she never gains weight, a detail she is @@.mediumaquamarine;thankful@@ for.
+						$He finds that no matter how many $he eats, $he never gains weight, a detail $he is @@.mediumaquamarine;thankful@@ for.
 						<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 					<</if>>
 				<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-					She @@.hotpink;loves@@ the availability of the tasty slave treats and how she can keep her mouth filled at @@.hotpink;nearly all times.@@
+					$He @@.hotpink;loves@@ the availability of the tasty slave treats and how $he can keep her mouth filled at @@.hotpink;nearly all times.@@
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-						Since her belly is always full thanks to your food supplies, she @@.mediumaquamarine;trusts you to keep her sated,@@ though her constant gorging has a @@.lime;huge impact on her waistline.@@
+						Since her belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep her sated,@@ though her constant gorging has a @@.lime;huge impact on her waistline.@@
 						<<set $slaves[$i].trust++, $slaves[$i].devotion += 3>>
 						<<set $slaves[$i].weight += 3>>
 					<<else>>
-						Since her belly is always full thanks to your food supplies, she @@.mediumaquamarine;trusts you to keep her sated.@@ Since the food is fat free, her waistline is spared her bad habits.
+						Since her belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep her sated.@@ Since the food is fat free, her waistline is spared her bad habits.
 						<<set $slaves[$i].trust++, $slaves[$i].devotion += 3>>
 					<</if>>
 				<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
-					She hates the availability of the tasty slave treats and how she @@.hotpink;can't stop eating them.@@
+					$He hates the availability of the tasty slave treats and how $he @@.hotpink;can't stop eating them.@@
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
 						The @@.lime;more her waistline grows,@@ the @@.gold;more horrifying her body becomes to her.@@
 						<<set $slaves[$i].trust -= 5, $slaves[$i].devotion++>>
 						<<set $slaves[$i].weight++>>
 					<<else>>
-						She finds that no matter how many she eats, she never gains weight, a detail she is @@.mediumaquamarine;thankful@@ for, even if she is disgusted by her actions.
+						$He finds that no matter how many $he eats, $he never gains weight, a detail $he is @@.mediumaquamarine;thankful@@ for, even if $he is disgusted by her actions.
 						<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 					<</if>>
 				<<else>>
-					She @@.hotpink;loves@@ the availability of the tasty slave treats and @@.mediumaquamarine;trusts you to more@@ for having them so accessible.
+					$He @@.hotpink;loves@@ the availability of the tasty slave treats and @@.mediumaquamarine;trusts you to more@@ for having them so accessible.
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-						She is so distracted by the luxury that she doesn't notice the @@.lime;weight she is gaining.@@
+						$He is so distracted by the luxury that $he doesn't notice the @@.lime;weight $he is gaining.@@
 						<<set $slaves[$i].weight++>>
 					<</if>>
 					<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 				<</if>>
 			<<else>> /* no treats for you */
 				<<if $slaves[$i].behavioralQuirk == "insecure">>
-					She is @@.mediumaquamarine;relieved@@ she doesn't have to fret over eating the treats and gaining weight as her <<= WrittenMaster($slaves[$i])>> is carefully directing her.
+					$He is @@.mediumaquamarine;relieved@@ $he doesn't have to fret over eating the treats and gaining weight as her <<= WrittenMaster($slaves[$i])>> is carefully directing $him.
 					<<set $slaves[$i].trust++>>
 				<<elseif $slaves[$i].behavioralQuirk == "fitness">>
-					She is @@.mediumaquamarine;thankful@@ that she isn't permitted to eat the treats. She's seen others try one, only to start shoveling them down.
+					$He is @@.mediumaquamarine;thankful@@ that $he isn't permitted to eat the treats. $He's seen others try one, only to start shoveling them down.
 					<<set $slaves[$i].trust++>>
 				<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-					She @@.mediumorchid;resents@@ not being allowed to stuff her face with the tempting treats like the other slaves she sees.
+					$He @@.mediumorchid;resents@@ not being allowed to stuff her face with the tempting treats like the other slaves $he sees.
 					<<set $slaves[$i].devotion -= 2>>
 				<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
-					She @@.hotpink;is relieved@@ that she doesn't have to eat the treat and is @@.mediumaquamarine;thankful@@ for your apparent consideration.
+					$He @@.hotpink;is relieved@@ that $he doesn't have to eat the treat and is @@.mediumaquamarine;thankful@@ for your apparent consideration.
 					<<set $slaves[$i].trust++, $slaves[$i].devotion += 2>>
 				<<else>>
-					She <<if canSee($slaves[$i])>>sees<<else>>knows<</if>> how much the other slaves enjoy the delicious treats and @@.mediumorchid;resents@@ not being allowed to enjoy them, feeling you are doing this to @@.gold;spite her.@@
+					$He <<if canSee($slaves[$i])>>sees<<else>>knows<</if>> how much the other slaves enjoy the delicious treats and @@.mediumorchid;resents@@ not being allowed to enjoy them, feeling you are doing this to @@.gold;spite her.@@
 					<<set $slaves[$i].devotion--, $slaves[$i].trust-->>
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if $slaves[$i].onDiet != 1>>
-				The treats are designed to cause stomach cramps alongside being extremely addictive. She cannot stop herself from eating them, but she can @@.gold;fear@@ your cruelty as her @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in her food.
+				The treats are designed to cause stomach cramps alongside being extremely addictive. $He cannot stop herself from eating them, but $he can @@.gold;fear@@ your cruelty as her @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in her food.
 				<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 3>>
 			<<else>>
-				The treats are designed to cause stomach cramps alongside being extremely addictive. Since she is not permitted to eat them, @@.mediumaquamarine;she breathes a sigh of relief,@@ though she is fully aware of what happens to those not as fortunate as her. She @@.hotpink;tries her best to be obedient@@ hoping to not undergo the agony, but her efforts pale in comparison to the effects of the food based aphrodisiacs.
+				The treats are designed to cause stomach cramps alongside being extremely addictive. Since $he is not permitted to eat them, @@.mediumaquamarine;$he breathes a sigh of relief,@@ though $he is fully aware of what happens to those not as fortunate as $him. $He @@.hotpink;tries her best to be obedient@@ hoping to not undergo the agony, but her efforts pale in comparison to the effects of the food based aphrodisiacs.
 				<<set $slaves[$i].devotion++, $slaves[$i].trust++>>
 			<</if>>
 		<</if>>
@@ -5110,11 +5110,11 @@
 <<if $slaves[$i].pornFameSpending > 0>>
 	<<set $pornFameBonus += 0.2 + (($slaves[$i].pornFameSpending/10000)/$HackingSkillMultiplier)>>
 	<<if ($slaves[$i].pornFameSpending >= 4000)>>
-		$possessiveCap near-ubiquitous presence in arcology pornography greatly increases $possessive impact on society.
+		$His near-ubiquitous presence in arcology pornography greatly increases $his impact on society.
 	<<elseif ($slaves[$i].pornFameSpending >= 2000)>>
-		$possessiveCap presence in arcology pornography increases $possessive impact on society.
+		$His presence in arcology pornography increases $his impact on society.
 	<<else>>
-		$possessiveCap occasional presence in arcology pornography slightly increases $possessive impact on society.
+		$His occasional presence in arcology pornography slightly increases $his impact on society.
 	<</if>>
 <</if>>
 <</if>>
@@ -5148,7 +5148,7 @@
 			<<FSChangePorn "Supremacist" 2>>
 			/* Code contributed by Anon1888 */
 		<<else>>
-			Society does not disapprove of your keeping a slave of the $arcologies[0].FSSupremacistRace race, since $pronoun is not in a publicly degrading role.
+			Society does not disapprove of your keeping a slave of the $arcologies[0].FSSupremacistRace race, since $he is not in a publicly degrading role.
 		<</if>>
 		<<if $slaves[$i].pregKnown == 1>>
 			<<if $slaves[$i].pregSource > 0>>
@@ -5192,7 +5192,7 @@
 		<<FSChangePorn "Subjugationist" 1>>
 		<<if $slaves[$i].ovaries == 0>>
 			<<if $slaves[$i].balls == 0 || $slaves[$i].vasectomy == 1>>
-				Society @@.green;approves@@ of $slaves[$i].slaveName's <<if $slaves[$i].vasectomy == 1 && $slaves[$i].balls > 0>>vasectomy<<elseif $slaves[$i].dick > 0>>gelding<<else>>sterilization<</if>>, which ensures that $pronoun will not propagate the $arcologies[0].FSSubjugationistRace race.
+				Society @@.green;approves@@ of $slaves[$i].slaveName's <<if $slaves[$i].vasectomy == 1 && $slaves[$i].balls > 0>>vasectomy<<elseif $slaves[$i].dick > 0>>gelding<<else>>sterilization<</if>>, which ensures that $he will not propagate the $arcologies[0].FSSubjugationistRace race.
 				<<FSChangePorn "Subjugationist" 1>>
 			<</if>>
 		<</if>>
@@ -5217,13 +5217,13 @@
                 Society @@.green;strongly approves@@ of you keeping $slaves[$i].slaveName forever young and youthening; this furthers the fashion for young slaves.
                 <<FSChangePorn "YouthPreferentialist" 2>>
 	<<elseif ($slaves[$i].visualAge < 30)>>
-                Society @@.green;approves@@ of $slaves[$i].slaveName's youthful body; $pronoun furthers the fashion for young slaves.
+                Society @@.green;approves@@ of $slaves[$i].slaveName's youthful body; $he furthers the fashion for young slaves.
                 <<set _youth_rep_change = ((30-$slaves[$i].visualAge)/5)>>
                 <<FSChangePorn "YouthPreferentialist" _youth_rep_change>>
 	<</if>>
 <<elseif $arcologies[0].FSMaturityPreferentialist != "unset">>
 	<<if ($slaves[$i].visualAge >= 30)>>
-                Society @@.green;approves@@ of $slaves[$i].slaveName's mature body; $pronoun furthers the fashion for older ladies.
+                Society @@.green;approves@@ of $slaves[$i].slaveName's mature body; $he furthers the fashion for older ladies.
                 <<set _maturity_rep_change = (($slaves[$i].visualAge-25)/5)>>
                 <<FSChangePorn "MaturityPreferentialist" _maturity_rep_change>>
 	<</if>>
@@ -5252,7 +5252,7 @@
                 <<FSChangePorn "GenderFundamentalist" 1>>
 	<</if>>
 	<<if ($slaves[$i].devotion <= 95) && canPenetrate($slaves[$i])>>
-		Society @@.red;disapproves@@ of $slaves[$i].slaveName's stiff, unrestrained dick, since $pronoun isn't even worshipful of you.
+		Society @@.red;disapproves@@ of $slaves[$i].slaveName's stiff, unrestrained dick, since $he isn't even worshipful of you.
 		<<FSChangePorn "GenderFundamentalist" -1>>
 	<</if>>
 <</if>>
@@ -5272,24 +5272,24 @@
 		<<if $arcologies[0].FSSubjugationist != "unset" && ($slaves[$i].race == $arcologies[0].FSSubjugationistRace)>>
 			They just wish it wasn't <<print $arcologies[0].FSSubjugationistRace>>, of course.
 		<<elseif $arcologies[0].FSSupremacist != "unset" && ($slaves[$i].race == $arcologies[0].FSSupremacistRace)>>
-			The fact that $pronoun is $arcologies[0].FSSupremacistRace only makes it better.
+			The fact that $he is $arcologies[0].FSSupremacistRace only makes it better.
 		<</if>>
 	<<elseif $slaves[$i].weight > 130>>
 		$slaves[$i].slaveName is so fat, society just assumes there is a baby somewhere in there, though they wish it was more obvious.
 		<<if $slaves[$i].pregWeek < 0>>
-			But fortunately for her, word of her recent birth has gotten around @@.green;reassuring the masses@@ that she can still bear children.
+			But fortunately for her, word of her recent birth has gotten around @@.green;reassuring the masses@@ that $he can still bear children.
 			<<FSChangePorn "Repopulationist" 2>>
 		<<elseif $slaves[$i].collar == "preg biometrics">>
 			<<if $slaves[$i].preg > 0>>
-				@@.green;Their wish is granted@@ by $slaves[$i].slaveName's collar revealing $possessive womb's secret<<if $slaves[$i].pregType > 1>>s<</if>> even when $possessive body is trying its best to keep <<if $slaves[$i].pregType > 1>>them<<else>>it<</if>> hidden.
+				@@.green;Their wish is granted@@ by $slaves[$i].slaveName's collar revealing $his womb's secret<<if $slaves[$i].pregType > 1>>s<</if>> even when $his body is trying its best to keep <<if $slaves[$i].pregType > 1>>them<<else>>it<</if>> hidden.
 				<<FSChangePorn "Repopulationist" 1>>
 				<<if $arcologies[0].FSSubjugationist != "unset" && ($slaves[$i].race == $arcologies[0].FSSubjugationistRace)>>
 					They just wish it wasn't <<print $arcologies[0].FSSubjugationistRace>>, of course.
 				<<elseif $arcologies[0].FSSupremacist != "unset" && ($slaves[$i].race == $arcologies[0].FSSupremacistRace)>>
-					The fact that $pronoun is $arcologies[0].FSSupremacistRace only makes it better.
+					The fact that $he is $arcologies[0].FSSupremacistRace only makes it better.
 				<</if>>
 			<<elseif $slaves[$i].preg <= 0>>
-				@@.red;The illusion is shattered@@ by $slaves[$i].slaveName's collar revealing $possessive vacant womb.
+				@@.red;The illusion is shattered@@ by $slaves[$i].slaveName's collar revealing $his vacant womb.
 				<<FSChangePorn "Repopulationist" -2>>
 			<</if>>
 		<</if>>
@@ -5299,21 +5299,21 @@
 		<<if $arcologies[0].FSSubjugationist != "unset" && ($slaves[$i].race == $arcologies[0].FSSubjugationistRace)>>
 			They just wish it wasn't <<print $arcologies[0].FSSubjugationistRace>>, of course.
 		<<elseif $arcologies[0].FSSupremacist != "unset" && ($slaves[$i].race == $arcologies[0].FSSupremacistRace)>>
-			The fact that $pronoun is $arcologies[0].FSSupremacistRace only makes it better.
+			The fact that $he is $arcologies[0].FSSupremacistRace only makes it better.
 		<</if>>
 	<<elseif $arcologies[0].FSSubjugationist != "unset" && ($slaves[$i].race == $arcologies[0].FSSubjugationistRace) && $slaves[$i].bellyImplant >= 1500>>
-		Society @@.green;is satisfied@@ with $slaves[$i].slaveName's implant filled belly since $possessive kind really shouldn't be breeding.
+		Society @@.green;is satisfied@@ with $slaves[$i].slaveName's implant filled belly since $his kind really shouldn't be breeding.
 		<<set $repGain += 0.1*$FSSingleSlaveRep>>
 	<<elseif $slaves[$i].bellyImplant >= 1500 && (($slaves[$i].ovaries == 0 && $slaves[$i].mpreg == 0) || $slaves[$i].preg < -1)>>
-		Society @@.green;accepts@@ $slaves[$i].slaveName's implant filled belly due to $possessive infertility.
+		Society @@.green;accepts@@ $slaves[$i].slaveName's implant filled belly due to $his infertility.
 		<<set $repGain += 0.1*$FSSingleSlaveRep>>
 	<<elseif $slaves[$i].collar == "preg biometrics" && $slaves[$i].preg > 0>>
-		Society is @@.green;pleased@@ by $slaves[$i].slaveName's collar revealing $possessive womb's secret<<if $slaves[$i].pregType > 1>>s<</if>> even when $possessive body is trying its best to keep <<if $slaves[$i].pregType > 1>>them<<else>>it<</if>> hidden.
+		Society is @@.green;pleased@@ by $slaves[$i].slaveName's collar revealing $his womb's secret<<if $slaves[$i].pregType > 1>>s<</if>> even when $his body is trying its best to keep <<if $slaves[$i].pregType > 1>>them<<else>>it<</if>> hidden.
 		<<FSChangePorn "Repopulationist" 1>>
 		<<if $arcologies[0].FSSubjugationist != "unset" && ($slaves[$i].race == $arcologies[0].FSSubjugationistRace)>>
 			They just wish it wasn't <<print $arcologies[0].FSSubjugationistRace>>, of course.
 		<<elseif $arcologies[0].FSSupremacist != "unset" && ($slaves[$i].race == $arcologies[0].FSSupremacistRace)>>
-			The fact that $pronoun is $arcologies[0].FSSupremacistRace only makes it better.
+			The fact that $he is $arcologies[0].FSSupremacistRace only makes it better.
 		<</if>>
 	<<elseif $slaves[$i].pregWeek < 0>>
 		Society is @@.green;pleased@@ by $slaves[$i].slaveName's recent birth.
@@ -5322,7 +5322,7 @@
 		Society is @@.green;placated@@ by $slaves[$i].slaveName's fake belly.
 		<<set $repGain += 0.01*$FSSingleSlaveRep>>
 	<<elseif $arcologies[0].FSSubjugationist != "unset" && ($slaves[$i].race == $arcologies[0].FSSubjugationistRace)>>
-		Society is perfectly fine with $slaves[$i].slaveName not reproducing. $possessiveCap belly is still unattractively small, however.
+		Society is perfectly fine with $slaves[$i].slaveName not reproducing. $His belly is still unattractively small, however.
 	<<elseif ($slaves[$i].ovaries == 0 && $slaves[$i].mpreg == 0) || ($slaves[$i].preg < -1) || ($slaves[$i].pubertyXX == 0)>>
 		Society is @@.red;mildly disappointed@@ that $slaves[$i].slaveName is unable to become pregnant.
 		<<FSChangePorn "Repopulationist" -1>>
@@ -5335,16 +5335,16 @@
 	<</if>>
 <<elseif $arcologies[0].FSRestart != "unset">>
 	<<if $slaves[$i].vaginalAccessory == "chastity belt" || $slaves[$i].vaginalAccessory == "combined chastity">>
-		Society is @@.green;mildly pleased@@ at you keeping $possessive vagina in check.
+		Society is @@.green;mildly pleased@@ at you keeping $his vagina in check.
 		<<FSChangePorn "Eugenics" 1>>
 	<</if>>
 	<<if $slaves[$i].dickAccessory == "chastity" || $slaves[$i].dickAccessory == "combined chastity">>
-		Society is @@.green;mildly pleased@@ at you keeping $possessive dick in check.
+		Society is @@.green;mildly pleased@@ at you keeping $his dick in check.
 		<<FSChangePorn "Eugenics" 1>>
 	<</if>>
 	<<if $slaves[$i].breedingMark == 1>>
 		<<if $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1>>
-			The Societal Elite @@.green;are pleased@@ your child is growing in within <<print $object>>. The mark covering $possessive lower belly, coupled with $possessive gravidity and blessing, @@.green;enamors@@ your populace.
+			The Societal Elite @@.green;are pleased@@ your child is growing in within <<print $him>>. The mark covering $his lower belly, coupled with $his gravidity and blessing, @@.green;enamors@@ your populace.
 			<<set $failedElite -= 5+$slaves[$i].pregType>>
 			<<FSChangePorn "Eugenics" 3>>
 		<</if>>
@@ -5386,7 +5386,7 @@
 
 <<if $arcologies[0].FSPaternalist != "unset">>
 	<<if ($slaves[$i].inducedNCS > 0) && ($slaves[$i].visualAge <= $potencyAge) && ($slaves[$i].physicalAge >= $potencyAge)>>
-                Society @@.green;approves@@ of you keeping $slaves[$i].slaveName perpetually young and innocent looking so you can keep taking care of $object; this advances paternalistic ideals.
+                Society @@.green;approves@@ of you keeping $slaves[$i].slaveName perpetually young and innocent looking so you can keep taking care of $him; this advances paternalistic ideals.
                 <<FSChangePorn "Paternalist" 1>>
 	<<elseif ($slaves[$i].intelligenceImplant > 0) && ($slaves[$i].fetish != "mindbroken")>>
                 Society @@.green;approves@@ of $slaves[$i].slaveName being properly educated; this advances ideas about slave improvement.
@@ -5396,45 +5396,45 @@
                 <<FSChangePorn "Paternalist" -1>>
 	<</if>>
 	<<if ($slaves[$i].health > 80)>>
-                Society @@.green;approves@@ of $possessive shining health; this advances belief in a slaveowner's duty.
+                Society @@.green;approves@@ of $his shining health; this advances belief in a slaveowner's duty.
                 <<FSChangePorn "Paternalist" 1>>
 	<</if>>
 	<<if ($slaves[$i].devotion+$slaves[$i].trust > 180)>>
 		<<if ($slaves[$i].relationship == -3)>>
-                        Society @@.green;approves very strongly@@ of $possessive happiness as your wife; this advances paternalistic ideals.
+                        Society @@.green;approves very strongly@@ of $his happiness as your wife; this advances paternalistic ideals.
                         <<FSChangePorn "Paternalist" 5>>
 		<<elseif ($slaves[$i].relationship == -2)>>
-                        Society @@.green;strongly approves@@ of $possessive emotional bond to you; this advances paternalistic ideals.
+                        Society @@.green;strongly approves@@ of $his emotional bond to you; this advances paternalistic ideals.
                         <<FSChangePorn "Paternalist" 2>>
 		<<else>>
-                        Society @@.green;approves@@ of $possessive attachment to you; this advances paternalistic ideals.
+                        Society @@.green;approves@@ of $his attachment to you; this advances paternalistic ideals.
                         <<FSChangePorn "Paternalist" 1>>
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].devotion > 95)>>
-                        Society @@.green;approves@@ of $possessive attachment to you; this advances paternalistic ideals.
+                        Society @@.green;approves@@ of $his attachment to you; this advances paternalistic ideals.
                         <<FSChangePorn "Paternalist" 1>>
 		<</if>>
 		<<if ($slaves[$i].trust > 95)>>
-                        Society @@.green;approves@@ of $possessive trust in you; this advances paternalistic ideals.
+                        Society @@.green;approves@@ of $his trust in you; this advances paternalistic ideals.
                         <<FSChangePorn "Paternalist" 1>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].choosesOwnAssignment == 1)>>
-                Society @@.green;approves@@ of $slaves[$i].slaveName being allowed to choose $possessive own job, advancing ideals about slave self-actualization.
+                Society @@.green;approves@@ of $slaves[$i].slaveName being allowed to choose $his own job, advancing ideals about slave self-actualization.
                 <<FSChangePorn "Paternalist" 1>>
 	<</if>>
 	<<if ($slaves[$i].relationship == -3)>>
 		<<if $slaves[$i].fetish == "mindbroken">>
-			Society is mixed over your marriage to the mindbroken girl; on one hand $pronoun had no consent, but on the other, you @@.green;surely must love $object@@ to marry $object.
+			Society is mixed over your marriage to the mindbroken girl; on one hand $he had no consent, but on the other, you @@.green;surely must love $him@@ to marry $him.
 			<<FSChangePorn "Paternalist" 1>>
 		<<elseif ($slaves[$i].devotion < 20)>>
-			Society is @@.red;thoroughly disgusted@@ that you took $possessive hand in marriage by force.
+			Society is @@.red;thoroughly disgusted@@ that you took $his hand in marriage by force.
 			<<FSChangePorn "Paternalist" -3>>
 		<</if>>
 	<</if>>
 	<<if ($modScore > 15 || ($piercingScore > 8 && $tatScore > 5))>>
-                Society @@.red;disapproves@@ of $possessive degrading body modifications, which dulls the public interest in letting slaves choose their own appearance.
+                Society @@.red;disapproves@@ of $his degrading body modifications, which dulls the public interest in letting slaves choose their own appearance.
                 <<FSChangePorn "Paternalist" -1>>
 	<</if>>
 	<<if $slaves[$i].fuckdoll > 0>>
@@ -5443,7 +5443,7 @@
 	<</if>>
 <<elseif $arcologies[0].FSDegradationist != "unset">>
 	<<if ($slaves[$i].fetish == "mindbroken")>>
-                Society @@.green;approves@@ of $possessive broken spirit; $pronoun serves as an example of a soulless fuckpuppet.
+                Society @@.green;approves@@ of $his broken spirit; $he serves as an example of a soulless fuckpuppet.
                 <<FSChangePorn "Degradationist" 1>>
 	<<else>>
 	<<if ($slaves[$i].trust <= 4)>>
@@ -5451,33 +5451,33 @@
 		<<FSChangePorn "Degradationist" 1>>
 	<<else>>
 		<<if ($slaves[$i].assignment == "be your Head Girl")>>
-			Society accepts $slaves[$i].slaveName trusting you, since $pronoun is your Head Girl and keeps the other slaves down.
+			Society accepts $slaves[$i].slaveName trusting you, since $he is your Head Girl and keeps the other slaves down.
 		<<elseif ($slaves[$i].assignment == "recruit girls")>>
-			Society accepts $slaves[$i].slaveName trusting you, since $pronoun is your Recruiter and entraps new slaves.
+			Society accepts $slaves[$i].slaveName trusting you, since $he is your Recruiter and entraps new slaves.
 		<<elseif ($slaves[$i].devotion > 95)>>
-			Society reluctantly accepts of $slaves[$i].slaveName trusting you, since $pronoun worshipful of you.
+			Society reluctantly accepts of $slaves[$i].slaveName trusting you, since $he is worshipful of you.
 		<<else>>
-			Society @@.red;disapproves@@ of $slaves[$i].slaveName being trusting of you; $pronoun is not being properly degraded for $possessive role.
+			Society @@.red;disapproves@@ of $slaves[$i].slaveName being trusting of you; $he is not being properly degraded for $his role.
 			<<FSChangePorn "Degradationist" -1>>
 		<</if>>
 	<</if>>
 	<</if>>
 	<<if ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade")>>
-                Society @@.green;approves@@ of how $pronoun is restrained for involuntary use, seeing this as the future of sexual relations.
+                Society @@.green;approves@@ of how $he is restrained for involuntary use, seeing this as the future of sexual relations.
                 <<FSChangePorn "Degradationist" 1>>
 	<</if>>
 	<<if ($modScore > 15 || ($piercingScore > 8 && $tatScore > 5))>>
-                Society @@.green;approves@@ of $possessive many body modifications, which advances the public taste for such degradation of slave bodies.
+                Society @@.green;approves@@ of $his many body modifications, which advances the public taste for such degradation of slave bodies.
                 <<FSChangePorn "Degradationist" 1>>
 	<</if>>
 	<<if $slaves[$i].voice != 0>>
 	<<if $slaves[$i].lips > 95>>
-		Society @@.green;approves@@ of the way $possessive mouth, with its useless ability to speak, has been replaced with an appealing hole.
+		Society @@.green;approves@@ of the way $his mouth, with its useless ability to speak, has been replaced with an appealing hole.
 		<<FSChangePorn "Degradationist" 1>>
 	<</if>>
 	<</if>>
 	<<if ($slaves[$i].choosesOwnAssignment == 1)>>
-                Society @@.red;disapproves@@ of $slaves[$i].slaveName being allowed to choose $possessive own job; this holds back ideas about slave degradation.
+                Society @@.red;disapproves@@ of $slaves[$i].slaveName being allowed to choose $his own job; this holds back ideas about slave degradation.
                 <<FSChangePorn "Degradationist" -1>>
 	<</if>>
 	<<if $slaves[$i].fuckdoll > 0>>
@@ -5506,12 +5506,12 @@
                 <<FSChangePorn "BodyPurist" -1>>
 	<</if>>
 	<<if ($slaves[$i].corsetPiercing == 0 && $piercingScore < 3 && $tatScore < 2)>>
-                Society @@.green;approves@@ of $possessive unmarked, unblemished skin, advancing the fashion for unspoiled slaves.
+                Society @@.green;approves@@ of $his unmarked, unblemished skin, advancing the fashion for unspoiled slaves.
                 <<FSChangePorn "BodyPurist" 1>>
 	<</if>>
 	<<set _race = $slaves[$i].race>>
 	<<if $slaves[$i].faceImplant <= 5 && _race.indexOf("surgically") == -1>>
-		Society @@.green;approves@@ of $possessive natural, untouched appearance, advancing the fashion for unaltered slaves.
+		Society @@.green;approves@@ of $his natural, untouched appearance, advancing the fashion for unaltered slaves.
 		<<FSChangePorn "BodyPurist" 1>>
 	<<else>>
 		Society @@.red;disapproves@@ of $slaves[$i].slaveName's surgical beautification; this holds back acceptance of the idea that a natural slave is a beautiful slave.
@@ -5519,13 +5519,13 @@
 	<</if>>
 	<<if $slaves[$i].fuckdoll == 0>>
 		<<if $slaves[$i].vagina == 0 && $slaves[$i].anus == 0 && $slaves[$i].vaginalCount == 0 && $slaves[$i].analCount == 0>>
-			Society @@.green;strongly approves@@ of $possessive intact holes, idolizing $possessive pristine body.
+			Society @@.green;strongly approves@@ of $his intact holes, idolizing $his pristine body.
 			<<FSChangePorn "BodyPurist" 3>>
 		<<elseif $slaves[$i].vagina == 0 && $slaves[$i].vaginalCount == 0>>
-			Society @@.green;approves@@ of $possessive intact hymen, advancing ideals of pure, fresh slaves.
+			Society @@.green;approves@@ of $his intact hymen, advancing ideals of pure, fresh slaves.
 			<<FSChangePorn "BodyPurist" 1>>
 		<<elseif $slaves[$i].anus == 0 && $slaves[$i].analCount == 0>>
-			Society @@.green;approves@@ of $possessive intact anus, advancing ideals of pure, fresh slaves.
+			Society @@.green;approves@@ of $his intact anus, advancing ideals of pure, fresh slaves.
 			<<FSChangePorn "BodyPurist" 1>>
 		<</if>>
 	<</if>>
@@ -5542,32 +5542,32 @@
 		<<set _transformed = 1>>
 	<</if>>
 	<<if ($slaves[$i].amp == 1) || ($slaves[$i].waist < -95) || ($slaves[$i].teeth == "pointy") || ($slaves[$i].teeth == "removable") || ($slaves[$i].hips == 3)>>
-		Society @@.green;approves@@ of $possessive extreme surgeries; interest in $object stirs interest in transformations of all kinds.
+		Society @@.green;approves@@ of $his extreme surgeries; interest in $him stirs interest in transformations of all kinds.
 		<<FSChangePorn "TransformationFetishist" 1>>
 		<<set _transformed = 1>>
 	<</if>>
 	<<set _race = $slaves[$i].race>>
 	<<if $slaves[$i].faceImplant > 30 || _race.indexOf("surgically") == 1>>
-		Society @@.green;approves@@ of $possessive surgically improved appearance; this supports the fashion for surgical corrections.
+		Society @@.green;approves@@ of $his surgically improved appearance; this supports the fashion for surgical corrections.
 		<<FSChangePorn "TransformationFetishist" 1>>
 	<</if>>
 	<<if $slaves[$i].faceImplant > 95 && $slaves[$i].face > 40>>
-		Society @@.green;approves@@ of $possessive beautiful face, considering it's uncanny nature a boon rather than a fault; this supports the belief that there is no such thing as too much surgery.
+		Society @@.green;approves@@ of $his beautiful face, considering it's uncanny nature a boon rather than a fault; this supports the belief that there is no such thing as too much surgery.
 		<<FSChangePorn "TransformationFetishist" 1>>
 		<<set _transformed = 1>>
 	<</if>>
 	<<if ($slaves[$i].amp < 0)>>
-		Society @@.green;strongly approves@@ of $possessive transhuman body.
+		Society @@.green;strongly approves@@ of $his transhuman body.
 		<<FSChangePorn "TransformationFetishist" 1>>
 		<<set _transformed = 1>>
 	<</if>>
 	<<if ($slaves[$i].dick > 8)>>
-		Society @@.green;approves@@ of $possessive monolithic dick, since it's such an obvious transformation masterpiece.
+		Society @@.green;approves@@ of $his monolithic dick, since it's such an obvious transformation masterpiece.
 		<<FSChangePorn "TransformationFetishist" 1>>
 		<<set _transformed = 1>>
 	<</if>>
 	<<if ($slaves[$i].lips > 95)>>
-		Society @@.green;approves@@ of $possessive absurd facepussy as a transformation of $possessive mouth into nothing more than another fuckhole.
+		Society @@.green;approves@@ of $his absurd facepussy as a transformation of $his mouth into nothing more than another fuckhole.
 		<<FSChangePorn "TransformationFetishist" 1>>
 		<<set _transformed = 1>>
 	<</if>>
@@ -5582,7 +5582,7 @@
 		<<set _transformed = 1>>
 	<</if>>
 	<<if _transformed == 0>>
-		Society @@.red;disapproves@@ of $slaves[$i].slaveName's lack of obvious transformations; $pronoun does not advance the ideal of body modification.
+		Society @@.red;disapproves@@ of $slaves[$i].slaveName's lack of obvious transformations; $he does not advance the ideal of body modification.
 		<<FSChangePorn "TransformationFetishist" -1>>
 	<</if>>
 <</if>>
@@ -5599,52 +5599,52 @@
 			<<set _slimAccept = 0>>
 		<</if>>
 		<<if _slimAccept == 1>>
-			Society @@.green;approves@@ of $slaves[$i].slaveName's graceful, girlish form; $pronoun furthers the fashion for slaves like $object.
+			Society @@.green;approves@@ of $slaves[$i].slaveName's graceful, girlish form; $he furthers the fashion for slaves like $him.
 			<<FSChangePorn "SlimnessEnthusiast" 1>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].butt > 4) && ($slaves[$i].boobs > 800)>>
-                Society @@.red;disapproves@@ of $slaves[$i].slaveName's boorishly large tits and ass; $pronoun damages the fashion for slender slaves.
+                Society @@.red;disapproves@@ of $slaves[$i].slaveName's boorishly large tits and ass; $he damages the fashion for slender slaves.
                 <<FSChangePorn "SlimnessEnthusiast" -1>>
 	<</if>>
 <<elseif $arcologies[0].FSAssetExpansionist != "unset">>
 	<<if ($slaves[$i].inducedNCS > 0)>>
-                Society @@.green;strongly disaproves @@ of $slaves[$i].slaveName who can't get bigger; Her shrinking body hurts the fashion for Asset expansion.
+                Society @@.green;strongly disaproves @@ of $slaves[$i].slaveName who can't get bigger; $His shrinking body hurts the fashion for Asset expansion.
                 <<FSChangePorn "AssetExpansionist" -2>>
 	<</if>>
 	<<if ($slaves[$i].boobs > 2000)>>
-                Society @@.green;approves@@ of $slaves[$i].slaveName's huge tits; $possessive breasts further the fashion for bouncing boobs on slaves.
+                Society @@.green;approves@@ of $slaves[$i].slaveName's huge tits; $his breasts further the fashion for bouncing boobs on slaves.
                 <<FSChangePorn "AssetExpansionist" 1>>
 	<</if>>
 	<<if ($slaves[$i].butt > 7)>>
-                Society @@.green;approves@@ of $possessive massive ass; $possessive butt furthers the fashion for big behinds on slaves.
+                Society @@.green;approves@@ of $his massive ass; $his butt furthers the fashion for big behinds on slaves.
                 <<FSChangePorn "AssetExpansionist" 1>>
 	<</if>>
 	<<if ($slaves[$i].dick > 8)>>
-                Society @@.green;approves@@ of $possessive massive member, which might be nonfunctional, but is a wonder of expansionism.
+                Society @@.green;approves@@ of $his massive member, which might be nonfunctional, but is a wonder of expansionism.
                 <<set _Dic = $slaves[$i].dick-8>>
 	        <<FSChangePorn "AssetExpansionist" _Dic>>
 	<<elseif ($slaves[$i].dick > 6)>>
-                Society @@.green;approves@@ of $possessive enormous penis; $possessive cock furthers the fashion for dangling dicks on slaves.
+                Society @@.green;approves@@ of $his enormous penis; $his cock furthers the fashion for dangling dicks on slaves.
 		<<FSChangePorn "AssetExpansionist" 1>>
 	<</if>>
 	<<if ($slaves[$i].balls > 6)>>
-		Society @@.green;approves@@ of $possessive swinging balls; $possessive nuts further the fashion for tremendous testicles on slaves.
+		Society @@.green;approves@@ of $his swinging balls; $his nuts further the fashion for tremendous testicles on slaves.
 		<<FSChangePorn "AssetExpansionist" 1>>
 	<</if>>
 	<<if ($slaves[$i].lips > 95)>>
-		Society @@.green;approves@@ of $possessive expanded lips.
+		Society @@.green;approves@@ of $his expanded lips.
 		<<FSChangePorn "AssetExpansionist" 1>>
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSPastoralist != "unset">>
 	<<if ($slaves[$i].lactation > 0)>>
-                Society @@.green;approves@@ of $slaves[$i].slaveName's milky udders; the sight of $possessive creamy milk encourages the public taste for dairy straight from the nipple.
+                Society @@.green;approves@@ of $slaves[$i].slaveName's milky udders; the sight of $his creamy milk encourages the public taste for dairy straight from the nipple.
                 <<FSChangePorn "Pastoralist" 1>>
 	<</if>>
 	<<if ($slaves[$i].assignment == "get milked") && ($slaves[$i].balls > 0)>>
-                Society @@.green;approves@@ of how $slaves[$i].slaveName gets cockmilked; the sight of $possessive product encourages experimentation with cum-based concoctions.
+                Society @@.green;approves@@ of how $slaves[$i].slaveName gets cockmilked; the sight of $his product encourages experimentation with cum-based concoctions.
                 <<FSChangePorn "Pastoralist" 1>>
 	<</if>>
 <</if>>
@@ -5652,10 +5652,10 @@
 <<if $arcologies[0].FSPhysicalIdealist != "unset">>
 	<<if $arcologies[0].FSPhysicalIdealistLaw == 1>>
 		<<if ($slaves[$i].muscles > 50)>>
-			Society @@.green;approves@@ of $slaves[$i].slaveName's commitment to fitness; but thinks $possessive muscles are too big and vascular.
+			Society @@.green;approves@@ of $slaves[$i].slaveName's commitment to fitness; but thinks $his muscles are too big and vascular.
 			<<FSChangePorn "PhysicalIdealist" 1>>
 		<<elseif ($slaves[$i].muscles > 20)>>
-			Society @@.green;strongly approves@@ of $slaves[$i].slaveName's fit body; physical enthusiasts see $possessive as the optimal example of feminine fitness.
+			Society @@.green;strongly approves@@ of $slaves[$i].slaveName's fit body; physical enthusiasts see $his as the optimal example of feminine fitness.
 			<<FSChangePorn "PhysicalIdealist" 2>>
 		<<elseif ($slaves[$i].muscles > 5)>>
 			Society @@.green;approves@@ of $slaves[$i].slaveName's toned form; the public sees potential in those guns.
@@ -5663,10 +5663,10 @@
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].muscles > 95)>>
-			Society @@.green;strongly approves@@ of $slaves[$i].slaveName's glorious muscles; everyone wants to train a slave to look as swole as $object.
+			Society @@.green;strongly approves@@ of $slaves[$i].slaveName's glorious muscles; everyone wants to train a slave to look as swole as $him.
 			<<FSChangePorn "PhysicalIdealist" 2>>
 		<<elseif ($slaves[$i].muscles > 30)>>
-			Society @@.green;approves@@ of $slaves[$i].slaveName's fit body; physical enthusiasts see $possessive as on $possessive way to something great.
+			Society @@.green;approves@@ of $slaves[$i].slaveName's fit body; physical enthusiasts see $his as on $his way to something great.
 			<<FSChangePorn "PhysicalIdealist" 1>>
 		<<elseif ($slaves[$i].muscles > 5)>>
 			Society @@.green;approves@@ of $slaves[$i].slaveName's toned form; the public sees potential in those guns.
@@ -5674,37 +5674,37 @@
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].height >= 185)>>
-		Society @@.green;approves@@ of how tall $pronoun is; the sexual advantages of $possessive height are impressed on the public mind.
+		Society @@.green;approves@@ of how tall $he is; the sexual advantages of $his height are impressed on the public mind.
 		<<FSChangePorn "PhysicalIdealist" 1>>
 	<</if>>
 	<<if ($slaves[$i].health > 80)>>
-		Society @@.green;approves@@ of $possessive health; the expectation that slaves should be kept perfectly healthy grows.
+		Society @@.green;approves@@ of $his health; the expectation that slaves should be kept perfectly healthy grows.
 		<<FSChangePorn "PhysicalIdealist" 1>>
 	<</if>>
 <<elseif $arcologies[0].FSHedonisticDecadence != "unset">>
 	<<if ($slaves[$i].weight > 160)>>
-                Society @@.green;strongly approves@@ of $slaves[$i].slaveName's glorious rolls; everyone wants to own a pillowy slave like $object.
+                Society @@.green;strongly approves@@ of $slaves[$i].slaveName's glorious rolls; everyone wants to own a pillowy slave like $him.
                 <<FSChangePorn "Hedonism" 3>>
 	<<elseif ($slaves[$i].weight > 95)>>
-                Society @@.green;approves@@ of $slaves[$i].slaveName's fat body; it shows just how much luxurious your life must be to pamper a slave as much as $object.
+                Society @@.green;approves@@ of $slaves[$i].slaveName's fat body; it shows just how much luxurious your life must be to pamper a slave as much as $him.
                 <<FSChangePorn "Hedonism" 2>>
 	<<elseif ($slaves[$i].weight > 30)>>
                 Society @@.green;approves@@ of $slaves[$i].slaveName's chubby form; the public enjoys the sight of a well rounded slave.
                 <<FSChangePorn "Hedonism" 1>>
 	<</if>>
 	<<if ($slaves[$i].muscles < -30)>>
-                Society @@.green;approves@@ of how soft $pronoun is; the sexual advantages of being able to effortlessly overpower $object are not lost on them.
+                Society @@.green;approves@@ of how soft $he is; the sexual advantages of being able to effortlessly overpower $him are not lost on them.
                 <<FSChangePorn "Hedonism" 1>>
 	<</if>>
 	<<if ($slaves[$i].fetishStrength > 95)>>
-                Society @@.green;approves@@ of $possessive intense fetish; the expectation that everyone's deepest desires should be fulfilled grows.
+                Society @@.green;approves@@ of $his intense fetish; the expectation that everyone's deepest desires should be fulfilled grows.
                 <<FSChangePorn "Hedonism" 1>>
 	<</if>>
 	<<if (_para > 0)>>
-                Society @@.green;is pleased@@ that $pronoun is allowed to fully indulge $possessive paraphilia.
+                Society @@.green;is pleased@@ that $he is allowed to fully indulge $his paraphilia.
                 <<FSChangePorn "Hedonism" 1>>
 	<<elseif (_para < 0)>>
-	        Society @@.red;frowns@@ upon $object not being allowed to indulge in $possessive paraphilia.
+	        Society @@.red;frowns@@ upon $him not being allowed to indulge in $his paraphilia.
 	        <<FSChangePorn "Hedonism" -2>>
 	<</if>>
 <</if>>
@@ -5715,26 +5715,26 @@
 		<<FSChangePorn "ChattelReligionist" 1>>
 	<</if>>
 	<<if ["a chattel habit", "a fallen nuns habit", "a penitent nuns habit", "a hijab and abaya", "a succubus outfit"].includes($slaves[$i].clothes)>>
-		Society @@.green;approves@@ of $possessive religiously themed clothing, strengthening the connection between sexual servitude and faith.
+		Society @@.green;approves@@ of $his religiously themed clothing, strengthening the connection between sexual servitude and faith.
 		<<FSChangePorn "ChattelReligionist" 1>>
 	<<elseif ["uncomfortable straps", "shibari ropes", "a nice maid outfit", "chains", "nice business attire", "a nice nurse outfit", "a kimono", "a military uniform", "conservative clothing", "a toga", "body oil", "no clothing"].includes($slaves[$i].clothes)>>
-		Society accepts $possessive spartan clothing, seeing it as permissible under the new religious mores.
+		Society accepts $his spartan clothing, seeing it as permissible under the new religious mores.
 	<<elseif ($slaves[$i].fuckdoll == 0)>>
-		Society @@.red;disapproves@@ of $possessive unnecessarily gaudy attire; this slows acceptance of a link between faith and sexual servitude.
+		Society @@.red;disapproves@@ of $his unnecessarily gaudy attire; this slows acceptance of a link between faith and sexual servitude.
 		<<FSChangePorn "ChattelReligionist" -1>>
 	<</if>>
 	<<if ($slaves[$i].devotion > 95)>>
-		Society @@.green;approves@@ of $possessive devotion to you as a companion to religious devotion, seeing both as the model for holy slaves.
+		Society @@.green;approves@@ of $his devotion to you as a companion to religious devotion, seeing both as the model for holy slaves.
 		<<FSChangePorn "ChattelReligionist" 1>>
 	<</if>>
 	<<if ($slaves[$i].trust > 95)>>
-		Society @@.green;strongly approves@@ of $possessive faith in you as a companion to faith in God, seeing both as the model for righteous slaves of the future.
+		Society @@.green;strongly approves@@ of $his faith in you as a companion to faith in God, seeing both as the model for righteous slaves of the future.
 		<<FSChangePorn "ChattelReligionist" 2>>
 	<</if>>
 	<<if ($slaves[$i].behavioralFlaw == "devout")>>
-		Society does not disapprove of $possessive devout adherence to an old world faith, having confidence that you'll bring $object around, and looking forward to seeing $object converted into a holy sex object.
+		Society does not disapprove of $his devout adherence to an old world faith, having confidence that you'll bring $him around, and looking forward to seeing $him converted into a holy sex object.
 	<<elseif ($slaves[$i].behavioralQuirk == "sinful")>>
-		Society @@.green;strongly approves@@ of $possessive eagerness to transgress against the old world religious mores $pronoun once held dear.
+		Society @@.green;strongly approves@@ of $his eagerness to transgress against the old world religious mores $he once held dear.
 		<<FSChangePorn "ChattelReligionist" 2>>
 	<</if>>
 <</if>>
@@ -5755,7 +5755,7 @@
 		<<case "work in the brothel">><<run getSlaveStatisticData($slaves[$i], $facility.brothel).rep += 2*$FSSingleSlaveRep*($arcologies[0].FSPaternalist/$FSLockinLevel)>>
 		<</switch>>
 	<<elseif $arcologies[0].FSDegradationist == "unset">>
-		The public knows she's a shelter girl you took in, and is @@.green;touched@@ that she now seems happy and healthy.
+		The public knows $he's a shelter girl you took in, and is @@.green;touched@@ that $he now seems happy and healthy.
 		<<set $repGain += 10>>
 		<<switch $slaves[$i].assignment>>
 		<<case "work in the brothel">><<run getSlaveStatisticData($slaves[$i], $facility.brothel).rep += 10>>
@@ -5773,16 +5773,16 @@
 <<if $slaves[$i].fuckdoll == 0>>
 <<if ($slaves[$i].brand != 0)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club")>>
-		Since $pronoun is in public, your brand against the $slaves[$i].skin skin of $possessive $slaves[$i].brandLocation @@.green;slightly increases your reputation@@ as a slaveowner.
+		Since $he is in public, your brand against the $slaves[$i].skin skin of $his $slaves[$i].brandLocation @@.green;slightly increases your reputation@@ as a slaveowner.
 		<<set $repGain += 5>>
 		<<switch $slaves[$i].assignment>>
 		<<case "work in the brothel">><<run getSlaveStatisticData($slaves[$i], $facility.brothel).rep += 5>>
 		<</switch>>
 	<</if>>
 	<<if $rep > 10000>>
-		$possessiveCap brand is considered a minor enhancement to her beauty since you are very well liked.
+		$His brand is considered a minor enhancement to her beauty since you are very well liked.
 	<<elseif $rep < 5000>>
-		$possessiveCap brand is considered a minor blemish on her beauty since you are not well liked.
+		$His brand is considered a minor blemish on her beauty since you are not well liked.
 	<</if>>
 <</if>>
 <</if>>
@@ -5792,44 +5792,44 @@
 <<if $slaves[$i].eyes != 0>>
 <<if $slaves[$i].eyes == -2>>
 	<<if $slaves[$i].devotion > 50>>
-		Even though she is blind, she is devoted enough to you to allow herself to lower her guard. She becomes @@.mediumaquamarine;trusting@@ of your ability to keep her safe.
+		Even though $he is blind, $he is devoted enough to you to allow herself to lower her guard. $He becomes @@.mediumaquamarine;trusting@@ of your ability to keep her safe.
 		<<set $slaves[$i].trust += 3>>
 	<<elseif $slaves[$i].devotion > 20>>
-		Since she's blind and on the cusp of devotion, she becomes slightly @@.hotpink;more reliant@@, but also begins to be @@.mediumaquamarine;less fearful@@ of what she can't see.
+		Since $he's blind and on the cusp of devotion, $he becomes slightly @@.hotpink;more reliant@@, but also begins to be @@.mediumaquamarine;less fearful@@ of what $he can't see.
 		<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 1>>
 	<<elseif ["please you", "be your Concubine", "serve in the master suite"].includes($slaves[$i].assignment)>>
-		She may be blind, but she knows nobody would dare harm her under your watch, @@.mediumaquamarine;building her trust@@ in you.
+		$He may be blind, but $he knows nobody would dare harm her under your watch, @@.mediumaquamarine;building her trust@@ in you.
 		<<set $slaves[$i].trust += 2>>
 	<<elseif $slaves[$i].devotion > -20>>
-		Her blindness forces her to @@.hotpink;rely@@ on your mercy. However, it only @@.gold;amplifies her fear@@ as she has severely limited capabilities to defend herself.
+		$His blindness forces her to @@.hotpink;rely@@ on your mercy. However, it only @@.gold;amplifies her fear@@ as $he has severely limited capabilities to defend herself.
 		<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 10>>
 	<<else>>
-		Being blind forces her to @@.hotpink;completely rely@@ on your mercy. It does nothing to stem @@.gold;the terror@@ she faces constantly being unable to tell what will happen to her.
+		Being blind forces her to @@.hotpink;completely rely@@ on your mercy. It does nothing to stem @@.gold;the terror@@ $he faces constantly being unable to tell what will happen to $him.
 		<<set $slaves[$i].devotion += 10, $slaves[$i].trust -= 25>>
 	<</if>>
 <<elseif $slaves[$i].eyes == -1>>
 	<<if ($slaves[$i].eyewear != "corrective glasses") && ($slaves[$i].eyewear != "corrective contacts")>>
 		<<if $slaves[$i].devotion > 50>>
 	        <<elseif $slaves[$i].devotion > 20>>
-                        Since she's on the cusp of devotion, her blurred vision makes her @@.hotpink;slightly more submissive,@@ since she can't always see what's happening to her.
+                        Since $he's on the cusp of devotion, her blurred vision makes her @@.hotpink;slightly more submissive,@@ since $he can't always see what's happening to $him.
                         <<set $slaves[$i].devotion += 1>>
                 <<elseif ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel")>>
-                        Her blurred vision @@.hotpink;reduces her distaste for her life slightly,@@ since her fuzzy vision allows her to ignore the details of everyone she's expected to fuck.
+                        $His blurred vision @@.hotpink;reduces her distaste for her life slightly,@@ since her fuzzy vision allows her to ignore the details of everyone $he's expected to fuck.
                         <<set $slaves[$i].devotion += 1>>
                 <<else>>
-                        Her blurred vision tends to make her @@.mediumorchid;a little more fearful,@@ since she can never tell what's about to happen to her.
+                        $His blurred vision tends to make her @@.mediumorchid;a little more fearful,@@ since $he can never tell what's about to happen to $him.
                         <<set $slaves[$i].trust -= 1>>
                 <</if>>
 	<</if>>
 <<elseif $slaves[$i].eyes == 2>>
 	<<if ($slaves[$i].eyewear == "blurring glasses") || ($slaves[$i].eyewear == "blurring contacts")>>
 	<<if $slaves[$i].devotion > 50>>
-		She tolerates the annoyance of blurred vision induced by her eyewear.
+		$He tolerates the annoyance of blurred vision induced by her eyewear.
 	<<elseif $slaves[$i].devotion > 20>>
-		Since she's on the cusp of devotion, the blurred vision induced by her eyewear actually makes her @@.hotpink;slightly more submissive.@@
+		Since $he's on the cusp of devotion, the blurred vision induced by her eyewear actually makes her @@.hotpink;slightly more submissive.@@
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel")>>
-		The blurred vision induced by her eyewear actually @@.hotpink;reduces her distaste for her life slightly,@@ since her fuzzy vision allows her to ignore the details of everyone she's expected to fuck.
+		The blurred vision induced by her eyewear actually @@.hotpink;reduces her distaste for her life slightly,@@ since her fuzzy vision allows her to ignore the details of everyone $he's expected to fuck.
 		<<set $slaves[$i].devotion += 1>>
 	<<else>>
 		The blurred vision induced by her eyewear actually @@.mediumorchid;infuriates her.@@
@@ -5843,19 +5843,19 @@
 
 <<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken" && $slaves[$i].muscles < -95>>
 	<<if $slaves[$i].devotion > 50>>
-		She knows she is near helpless but is devoted enough to you to allow herself to lower her guard. She becomes @@.mediumaquamarine;trusting@@ of your ability to keep her safe.
+		$He knows $he is near helpless but is devoted enough to you to allow herself to lower her guard. $He becomes @@.mediumaquamarine;trusting@@ of your ability to keep her safe.
 		<<set $slaves[$i].trust += 3>>
 	<<elseif $slaves[$i].devotion > 20>>
-		Since she's near helpless and on the cusp of devotion, she becomes slightly @@.hotpink;more reliant@@, but also begins to be @@.mediumaquamarine;less fearful@@ of what she can't see.
+		Since $he's near helpless and on the cusp of devotion, $he becomes slightly @@.hotpink;more reliant@@, but also begins to be @@.mediumaquamarine;less fearful@@ of what $he can't see.
 		<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 1>>
 	<<elseif ["please you", "be your Concubine", "serve in the master suite"].includes($slaves[$i].assignment)>>
-		She may be physically frail and vulnerable, but she knows nobody would dare harm her under your watch, @@.mediumaquamarine;building her trust@@ in you.
+		$He may be physically frail and vulnerable, but $he knows nobody would dare harm her under your watch, @@.mediumaquamarine;building her trust@@ in you.
 		<<set $slaves[$i].trust += 2>>
 	<<elseif $slaves[$i].devotion > -20>>
-		Her frailty forces her to @@.hotpink;rely@@ on your mercy. However, it only @@.gold;amplifies her fear@@ as she has no chance of defending herself.
+		$His frailty forces her to @@.hotpink;rely@@ on your mercy. However, it only @@.gold;amplifies her fear@@ as $he has no chance of defending herself.
 		<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 10>>
 	<<else>>
-		Being frail and near helpless forces her to @@.hotpink;heavily rely@@ on your mercy. It does nothing to stem @@.gold;the terror@@ she faces constantly knowing that whatever anyone wants to do to her, there is nothing she can do to stop it.
+		Being frail and near helpless forces her to @@.hotpink;heavily rely@@ on your mercy. It does nothing to stem @@.gold;the terror@@ $he faces constantly knowing that whatever anyone wants to do to her, there is nothing $he can do to stop it.
 		<<set $slaves[$i].devotion += 10, $slaves[$i].trust -= 25>>
 	<</if>>
 <</if>>
@@ -5864,20 +5864,20 @@
 	<<if $slaves[$i].fuckdoll == 0>>
 	<<if $slaves[$i].fetish != "mindbroken">>
 		<<if $slaves[$i].devotion <= 20>>
-		Her mouth full of orthodontia is quite uncomfortable,
+		$His mouth full of orthodontia is quite uncomfortable,
 		<<if $slaves[$i].intelligence > 0>>
-			but she has the presence of mind to know that it's for her own good, and she doesn't blame you for it.
+			but $he has the presence of mind to know that it's for her own good, and $he doesn't blame you for it.
 		<<else>>
-			and she's stupid enough to @@.mediumorchid;blame you@@ for the discomfort.
+			and $he's stupid enough to @@.mediumorchid;blame you@@ for the discomfort.
 			<<set $slaves[$i].devotion -= 1>>
 		<</if>>
 		<<else>>
-		She puts up with the discomfort produced by her orthodontia for your sake.
+		$He puts up with the discomfort produced by her orthodontia for your sake.
 		<</if>>
 	<</if>>
 	<</if>>
 	<<if random(1,10) == 1>>
-	Her braces @@.lime;straighten her teeth.@@ They can now be removed to leave her with a beautiful smile, or left on.
+	$His braces @@.lime;straighten her teeth.@@ They can now be removed to leave her with a beautiful smile, or left on.
 	<<set $slaves[$i].teeth = "cosmetic braces">>
 	<</if>>
 <</if>>
@@ -5887,58 +5887,58 @@
 <<if $slaves[$i].diet != "fattening">>
 	<<if $slaves[$i].weight < -95>>
 		<<if $slaves[$i].boobs-$slaves[$i].boobsImplant > 750>>
-			$possessiveCap desperately underweight body @@.orange;burns fat off $possessive plush boobs.@@
+			$His desperately underweight body @@.orange;burns fat off $his plush boobs.@@
 			<<set $slaves[$i].boobs -= 50>>
 		<<elseif $slaves[$i].butt-$slaves[$i].buttImplant > 3>>
-			$possessiveCap desperately underweight body @@.orange;burns fat off $possessive plush butt.@@
+			$His desperately underweight body @@.orange;burns fat off $his plush butt.@@
 			<<set $slaves[$i].butt -= 0.4>>
 		<<elseif $slaves[$i].boobs-$slaves[$i].boobsImplant > 500>>
-			$possessiveCap desperately underweight body @@.orange;burns some fat off $possessive healthy boobs.@@
+			$His desperately underweight body @@.orange;burns some fat off $his healthy boobs.@@
 			<<set $slaves[$i].boobs -= 25>>
 		<<elseif $slaves[$i].butt-$slaves[$i].buttImplant > 2>>
-			$possessiveCap desperately underweight body @@.orange;burns some fat off $possessive healthy butt.@@
+			$His desperately underweight body @@.orange;burns some fat off $his healthy butt.@@
 			<<set $slaves[$i].butt -= 0.2>>
 		<</if>>
 	<<elseif $slaves[$i].weight <= -30>>
 		<<if $slaves[$i].boobs-$slaves[$i].boobsImplant > 1000>>
-			$possessiveCap underweight body @@.orange;burns fat off $possessive big boobs.@@
+			$His underweight body @@.orange;burns fat off $his big boobs.@@
 			<<set $slaves[$i].boobs -= 50>>
 		<<elseif $slaves[$i].butt-$slaves[$i].buttImplant > 4>>
-			$possessiveCap underweight body @@.orange;burns fat off $possessive big butt.@@
+			$His underweight body @@.orange;burns fat off $his big butt.@@
 			<<set $slaves[$i].butt -= 0.4>>
 		<<elseif $slaves[$i].boobs-$slaves[$i].boobsImplant > 750>>
-			$possessiveCap underweight body @@.orange;burns some fat off $possessive plush boobs.@@
+			$His underweight body @@.orange;burns some fat off $his plush boobs.@@
 			<<set $slaves[$i].boobs -= 25>>
 		<<elseif $slaves[$i].butt-$slaves[$i].buttImplant > 3>>
-			$possessiveCap underweight body @@.orange;burns some fat off $possessive plush butt.@@
+			$His underweight body @@.orange;burns some fat off $his plush butt.@@
 			<<set $slaves[$i].butt -= 0.2>>
 		<</if>>
 	<<elseif $slaves[$i].weight < -10>>
 		<<if $slaves[$i].boobs-$slaves[$i].boobsImplant > 2000>>
-			$possessiveCap skinny body @@.orange;burns fat off $possessive huge boobs.@@
+			$His skinny body @@.orange;burns fat off $his huge boobs.@@
 			<<set $slaves[$i].boobs -= 50>>
 		<<elseif $slaves[$i].butt-$slaves[$i].buttImplant > 6>>
-			$possessiveCap skinny body @@.orange;burns fat off $possessive huge butt.@@
+			$His skinny body @@.orange;burns fat off $his huge butt.@@
 			<<set $slaves[$i].butt -= 0.4>>
 		<<elseif $slaves[$i].boobs-$slaves[$i].boobsImplant > 1000>>
-			$possessiveCap skinny body @@.orange;burns some fat off $possessive big boobs.@@
+			$His skinny body @@.orange;burns some fat off $his big boobs.@@
 			<<set $slaves[$i].boobs -= 25>>
 		<<elseif $slaves[$i].butt-$slaves[$i].buttImplant > 4>>
-			$possessiveCap skinny body @@.orange;burns some fat off $possessive big butt.@@
+			$His skinny body @@.orange;burns some fat off $his big butt.@@
 			<<set $slaves[$i].butt -= 0.2>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].boobs-$slaves[$i].boobsImplant > 5000>>
-			$possessiveCap thin body @@.orange;burns fat off $possessive monstrous boobs.@@
+			$His thin body @@.orange;burns fat off $his monstrous boobs.@@
 			<<set $slaves[$i].boobs -= 50>>
 		<<elseif $slaves[$i].butt-$slaves[$i].buttImplant > 8>>
-			$possessiveCap thin body @@.orange;burns fat off $possessive monstrous butt.@@
+			$His thin body @@.orange;burns fat off $his monstrous butt.@@
 			<<set $slaves[$i].butt -= 0.4>>
 		<<elseif $slaves[$i].boobs-$slaves[$i].boobsImplant > 2000>>
-			$possessiveCap thin body @@.orange;burns some fat off $possessive huge boobs.@@
+			$His thin body @@.orange;burns some fat off $his huge boobs.@@
 			<<set $slaves[$i].boobs -= 25>>
 		<<elseif $slaves[$i].butt-$slaves[$i].buttImplant > 6>>
-			$possessiveCap thin body @@.orange;burns some fat off $possessive huge butt.@@
+			$His thin body @@.orange;burns some fat off $his huge butt.@@
 			<<set $slaves[$i].butt -= 0.2>>
 		<</if>>
 	<</if>>
@@ -5950,15 +5950,15 @@
 <<if $slaves[$i].anus >= $slaves[$i].analArea>>
 <<if random(1,100) > (80 - (20*($slaves[$i].anus - $slaves[$i].analArea)))>>
 	<<set $slaves[$i].analArea += 1>>
-	$possessiveCap anal area is getting used to being
+	$His anal area is getting used to being
 	<<if $slaves[$i].analArea > 3>>
-                permanently gaped, and the puckered skin around $possessive anus now runs from $possessive tailbone all the way down to the <<if $slaves[$i].vagina > -1>>bottom of $possessive pussy<<else>>base of $possessive dick<</if>>.
+                permanently gaped, and the puckered skin around $his anus now runs from $his tailbone all the way down to the <<if $slaves[$i].vagina > -1>>bottom of $his pussy<<else>>base of $his dick<</if>>.
 	<<elseif $slaves[$i].analArea > 2>>
-                very loose, and the puckered skin around $possessive anus now covers more of the space between $possessive buttocks.
+                very loose, and the puckered skin around $his anus now covers more of the space between $his buttocks.
 	<<elseif $slaves[$i].analArea > 1>>
                 nice and relaxed, and it now looks quite lewd.
 	<<else>>
-                penetrated, and to put it delicately, $possessive anus is now a bit more eye-catching.
+                penetrated, and to put it delicately, $his anus is now a bit more eye-catching.
 	<</if>>
 <</if>>
 <</if>>
@@ -5969,31 +5969,31 @@
 <<if $slaves[$i].foreskin > 0>>
 <<if $slaves[$i].foreskin - $slaves[$i].dick < -1>>
 	<<if canAchieveErection($slaves[$i])>>
-                $possessiveCap cockhead has grown to the point where it is much too large for $possessive foreskin, making $possessive erections so uncomfortable to achieve that $possessive @@.red;appetite for sex is reduced@@ by $possessive reluctance to undergo the discomfort.
+                $His cockhead has grown to the point where it is much too large for $his foreskin, making $his erections so uncomfortable to achieve that $his @@.red;appetite for sex is reduced@@ by $his reluctance to undergo the discomfort.
                 <<set $slaves[$i].energy -= 2>>
                 <<if random(1,300) < $slaves[$i].energy>>
-                        Despite this, she spends enough of $possessive time hard that $possessive foreskin @@.lime;stretches out naturally.@@
+                        Despite this, $he spends enough of $his time hard that $his foreskin @@.lime;stretches out naturally.@@
                         <<set $slaves[$i].foreskin += 1>>
                 <</if>>
 	<</if>>
 <<elseif $slaves[$i].foreskin - $slaves[$i].dick < 0>>
 	<<if canAchieveErection($slaves[$i])>>
-                $possessiveCap cockhead has grown to the point where it is too large for $possessive foreskin, making $possessive erections uncomfortable to achieve; $possessive @@.red;arousal is slightly impeded@@ by $possessive reluctance to undergo the discomfort.
+                $His cockhead has grown to the point where it is too large for $his foreskin, making $his erections uncomfortable to achieve; $his @@.red;arousal is slightly impeded@@ by $his reluctance to undergo the discomfort.
                 <<set $slaves[$i].energy -= 1>>
                 <<if random(1,500) < $slaves[$i].energy>>
-                        Despite this, she spends enough of $possessive time hard that $possessive foreskin @@.lime;stretches out naturally.@@
+                        Despite this, $he spends enough of $his time hard that $his foreskin @@.lime;stretches out naturally.@@
                         <<set $slaves[$i].foreskin += 1>>
                 <</if>>
 	<</if>>
 <<elseif $slaves[$i].foreskin - $slaves[$i].dick > 1>>
 	<<if ($slaves[$i].balls > 0)>>
                 <<if random(30,110) > $slaves[$i].energy>>
-                        $possessiveCap penis has gotten so small that even when she's hard, $possessive loose foreskin rarely retracts. Despite $possessive regular erections, @@.orange;$possessive foreskin atrophies.@@
+                        $His penis has gotten so small that even when $he's hard, $his loose foreskin rarely retracts. Despite $his regular erections, @@.orange;$his foreskin atrophies.@@
                         <<set $slaves[$i].foreskin -= 1>>
                 <</if>>
 	<<else>>
                 <<if random(40,120) > $slaves[$i].energy>>
-                        @@.orange;$possessiveCap foreskin atrophies,@@ which is not surprising, since $possessive penis has shrunk and it's almost never hard.
+                        @@.orange;$His foreskin atrophies,@@ which is not surprising, since $his penis has shrunk and it's almost never hard.
                         <<set $slaves[$i].foreskin -= 1>>
                 <</if>>
 	<</if>>
@@ -6003,40 +6003,40 @@
 <<if $slaves[$i].scrotum > 0>>
 	<<set _extraScrotum = $slaves[$i].scrotum - $slaves[$i].balls>>
 	<<if _extraScrotum < -1>>
-		$possessiveCap nuts are much too big for $possessive ballsack, giving $possessive constant discomfort. $possessiveCap @@.red;appetite for sex is reduced@@ by how much $possessive junk hurts.
+		$His nuts are much too big for $his ballsack, giving $his constant discomfort. $His @@.red;appetite for sex is reduced@@ by how much $his junk hurts.
 		<<set $slaves[$i].energy -= 2>>
 		<<if random(0,2) == 0>>
-			$possessiveCap scrotum @@.lime;stretches out naturally@@ as $possessive balls force it to accept their size.
+			$His scrotum @@.lime;stretches out naturally@@ as $his balls force it to accept their size.
 			<<set $slaves[$i].scrotum += 1>>
 		<</if>>
 	<<elseif  _extraScrotum < 0 && $slaves[$i].balls > 5>>
 		<<if random(0,4) == 0>>
-			$possessiveCap heavy balls tug $possessive scrotum downward, and it @@.lime;stretches out naturally@@ under their weight.
+			$His heavy balls tug $his scrotum downward, and it @@.lime;stretches out naturally@@ under their weight.
 			<<set $slaves[$i].scrotum += 1>>
 		<</if>>
 	<<elseif  _extraScrotum == -1>>
 		<<if random(0,5) == 0>>
-			$possessiveCap scrotum @@.lime;stretches out naturally@@ as it adapts to $possessive newly expanded balls.
+			$His scrotum @@.lime;stretches out naturally@@ as it adapts to $his newly expanded balls.
 			<<set $slaves[$i].scrotum += 1>>
 		<</if>>
 	<<elseif _extraScrotum > 1>>
 		<<if $slaves[$i].hormoneBalance >= 100>>
 			<<if random(0,2) == 0>>
-				@@.orange;$possessiveCap ballsack atrophies,@@ which is not surprising, since she's on female hormones and $possessive girly balls have gotten so small.
+				@@.orange;$His ballsack atrophies,@@ which is not surprising, since $he's on female hormones and $his girly balls have gotten so small.
 				<<set $slaves[$i].scrotum -= 1>>
 			<</if>>
 		<</if>>
 	<</if>>
 <<else>>
 	<<if $slaves[$i].balls > 2>>
-		$possessiveCap balls have been relocated to $possessive abdomen, and while they still work there, it's not where they're designed to be. Routine scans show that @@.orange;they've atrophied,@@ <<if $slaves[$i].balls > 3>>and will probably continue to do so until they stabilise at a below-average size<<else>>but are not likely to get any smaller<</if>>.
+		$His balls have been relocated to $his abdomen, and while they still work there, it's not where they're designed to be. Routine scans show that @@.orange;they've atrophied,@@ <<if $slaves[$i].balls > 3>>and will probably continue to do so until they stabilise at a below-average size<<else>>but are not likely to get any smaller<</if>>.
 		<<set $slaves[$i].balls -= 1>>
 	<</if>>
 <</if>>
 <</if>>
 
 <<if ($slaves[$i].clit > 0)>>
-	$possessiveCap clit is largely vestigial, since she has a penis atop $possessive vagina, so $possessive @@.orange;clitoris atrophies.@@
+	$His clit is largely vestigial, since $he has a penis atop $his vagina, so $his @@.orange;clitoris atrophies.@@
 	<<set $slaves[$i].clit -= 1>>
 <</if>>
 
@@ -6047,14 +6047,14 @@
 	<<if $slaves[$i].energy > 5>>
 	<<if $slaves[$i].energy <= 95>>
 		<<if ($slaves[$i].dick == 0)>>
-			$possessiveCap lack of natural sex hormones @@.red;slightly reduces $possessive sex drive.@@
+			$His lack of natural sex hormones @@.red;slightly reduces $his sex drive.@@
 			<<set $slaves[$i].energy -= 1>>
 		<<else>>
-			$possessiveCap lack of balls @@.red;reduces $possessive sex drive.@@
+			$His lack of balls @@.red;reduces $his sex drive.@@
 			<<set $slaves[$i].energy -= 2>>
 		<</if>>
 	<<else>>
-		$pronounCap's so addicted to sex that $possessive lack of natural sex hormones doesn't affect her sex drive.
+		$He's so addicted to sex that $his lack of natural sex hormones doesn't affect her sex drive.
 	<</if>>
 	<</if>>
 <</if>>
@@ -6064,27 +6064,27 @@
 <<if $slaves[$i].dick == 0>>
 	<<set _frustration = 0>>
 	<<if $slaves[$i].energy > 20>>
-		$pronounCap
+		$He
 		<<if canDoAnal($slaves[$i])>>
 			<<if $slaves[$i].prostate != 0>>
 				<<if $slaves[$i].fetish == "buttslut">>
 					<<if $slaves[$i].fetishStrength > 60>>
-						is such a buttslut that $possessive's null status doesn't affect $possessive libido at all; $pronoun's got her prostate and that's all $pronoun cares about.
+						is such a buttslut that $his's null status doesn't affect $his libido at all; $he's got her prostate and that's all $he cares about.
 					<<else>>
-						is a buttslut, but not enough of one that $possessive lack of<<if $seeDicks > 0>> a dick or<</if>> a pussy isn't frustrating.
+						is a buttslut, but not enough of one that $his lack of<<if $seeDicks > 0>> a dick or<</if>> a pussy isn't frustrating.
 						<<set _frustration = 1>>
 					<</if>>
 				<<else>>
-					is no buttslut, but $pronoun has a prostate, allowing $object a sexual outlet despite $object lack of<<if $seeDicks > 0>> a dick or<</if>> a pussy.
+					is no buttslut, but $he has a prostate, allowing $him a sexual outlet despite $him lack of<<if $seeDicks > 0>> a dick or<</if>> a pussy.
 					<<set _frustration = 1>>
 				<</if>>
 			<<else>>
 				<<if $slaves[$i].fetish == "buttslut">>
 					<<if $slaves[$i].fetishStrength > 95>>
-						is such a buttslut that $possessive complete lack of <<if $seeDicks > 0>>a dick, a pussy, or a prostate<<else>>a pussy<</if>> only bothers $object slightly.
+						is such a buttslut that $his complete lack of <<if $seeDicks > 0>>a dick, a pussy, or a prostate<<else>>a pussy<</if>> only bothers $him slightly.
 						<<set _frustration = 1>>
 					<<else>>
-						is a buttslut, but not enough of to console $object for $possessive complete lack of <<if $seeDicks > 0>>a dick, a pussy, or a prostate<<else>>a pussy<</if>>.
+						is a buttslut, but not enough of to console $him for $his complete lack of <<if $seeDicks > 0>>a dick, a pussy, or a prostate<<else>>a pussy<</if>>.
 						<<set _frustration = 2>>
 					<</if>>
 				<<else>>
@@ -6093,14 +6093,14 @@
 				<</if>>
 			<</if>>
 		<<else>>
-			has no<<if $seeDicks > 0>> dick, no<</if>> pussy, and can't even take it up the ass, leaving $object no easy way to get off.
+			has no<<if $seeDicks > 0>> dick, no<</if>> pussy, and can't even take it up the ass, leaving $him no easy way to get off.
 			<<set _frustration = 2>>
 		<</if>>
 	<</if>>
 	<<if _frustration > 0>>
 		This @@.red;affects her libido@@ and is
 		<<if $slaves[$i].devotion > 50>>
-			annoying, but she puts up with it for your sake.
+			annoying, but $he puts up with it for your sake.
 		<<else>>
 			@@.mediumorchid;annoying.@@
 			<<set $slaves[$i].devotion -= _frustration*2>>
@@ -6114,35 +6114,35 @@
 <<if $slaves[$i].fetish != "mindbroken">>
 <<if ($slaves[$i].devotion > 95)>>
 	<<if ($slaves[$i].energy <= 50)>>
-		She's so worshipful of you that she derives erotic satisfaction simply from being your slave, giving her @@.green;more of an appetite for sex.@@
+		$He's so worshipful of you that $he derives erotic satisfaction simply from being your slave, giving her @@.green;more of an appetite for sex.@@
 		<<set $slaves[$i].energy += 1>>
 	<</if>>
 <<elseif ($slaves[$i].devotion > 50)>>
-	She's so devoted to you that her appetite for sex isn't affected by the unpleasant parts of slave life.
+	$He's so devoted to you that her appetite for sex isn't affected by the unpleasant parts of slave life.
 <<elseif ($slaves[$i].energy > 95)>>
 <<elseif ($slaves[$i].energy <= 5)>>
 <<elseif ($slaves[$i].devotion > 20)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade") || ($slaves[$i].assignment == "please you") || ($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be a subordinate slave")>>
-		Her assignment constantly requires her to fuck. She obeys, but @@.red;her appetite for sex is reduced.@@
+		$His assignment constantly requires her to fuck. $He obeys, but @@.red;her appetite for sex is reduced.@@
 		<<set $slaves[$i].energy -= 2>>
 	<<else>>
-		Sometimes, she wishes she weren't a sex slave, @@.red;reducing her appetite for sex,@@ though less than if her assignment required her to fuck constantly.
+		Sometimes, $he wishes $he weren't a sex slave, @@.red;reducing her appetite for sex,@@ though less than if her assignment required her to fuck constantly.
 		<<set $slaves[$i].energy -= 1>>
 	<</if>>
 <<elseif ($slaves[$i].devotion >= -20)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade") || ($slaves[$i].assignment == "please you") || ($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be a subordinate slave")>>
-		Her assignment forces her to let herself get fucked constantly, @@.red;reducing her appetite for sex.@@
+		$His assignment forces her to let herself get fucked constantly, @@.red;reducing her appetite for sex.@@
 		<<set $slaves[$i].energy -= 3>>
 	<<else>>
-		She isn't used to life as a sex slave, and the constant sexual anxiety @@.red;reduces her appetite for sex,@@ though less than if her assignment forced her to let herself get fucked constantly.
+		$He isn't used to life as a sex slave, and the constant sexual anxiety @@.red;reduces her appetite for sex,@@ though less than if her assignment forced her to let herself get fucked constantly.
 		<<set $slaves[$i].energy -= 2>>
 	<</if>>
 <<else>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade") || ($slaves[$i].assignment == "please you") || ($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be a subordinate slave")>>
-		Her assignment subjects her to constant rape, @@.red;rapidly reducing her appetite for sex.@@
+		$His assignment subjects her to constant rape, @@.red;rapidly reducing her appetite for sex.@@
 		<<set $slaves[$i].energy -= 5>>
 	<<else>>
-		She hates being a sex slave, @@.red;reducing her appetite for sex,@@ though less than if her assignment subjected her to constant rape.
+		$He hates being a sex slave, @@.red;reducing her appetite for sex,@@ though less than if her assignment subjected her to constant rape.
 		<<set $slaves[$i].energy -= 3>>
 	<</if>>
 <</if>>
@@ -6186,17 +6186,17 @@
 <<if $slaves[$i].need>>
 <<if $slaves[$i].need > $slaves[$i].energy/2>>
 	<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
-		$pronounCap is not allowed to get off as frequently as her aphrodisiac fueled sex drive demands, and the constant frustration
+		$He is not allowed to get off as frequently as her aphrodisiac fueled sex drive demands, and the constant frustration
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 			@@.red;stresses her body considerably.@@
 			<<set $slaves[$i].health -= 1+Math.trunc($slaves[$i].need/20)>>
 		<<else>>
-			drives her mad with lust. She @@.mediumorchid;blames you@@ for this @@.gold;cruelty.@@
+			drives her mad with lust. $He @@.mediumorchid;blames you@@ for this @@.gold;cruelty.@@
 			<<set _decay = 1+Math.trunc($slaves[$i].need/20)>>
 			<<set $slaves[$i].devotion -= _decay, $slaves[$i].trust -= _decay>>
 		<</if>>
 	<<else>>
-		$pronounCap is not allowed to get off as frequently as her healthy sex drive demands, and the constant frustration @@.red;wears away at her libido.@@
+		$He is not allowed to get off as frequently as her healthy sex drive demands, and the constant frustration @@.red;wears away at her libido.@@
 		<<set $slaves[$i].energy -= 1+Math.trunc($slaves[$i].need/20)>>
 	<</if>>
 <</if>>
@@ -6205,14 +6205,14 @@
 <<if $slaves[$i].health > 90>>
 	<<if $slaves[$i].need <= $slaves[$i].energy/2>>
 		<<if $slaves[$i].energy <= 70>>
-			$possessiveCap outstanding health produces a @@.green;slow improvement in libido.@@
+			$His outstanding health produces a @@.green;slow improvement in libido.@@
 			<<set $slaves[$i].energy += 1>>
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].face > 80>>
 	<<if $slaves[$i].face <= 95>>
 	<<if $slaves[$i].trust > 95>>
-		$pronounCap is so healthy and trusting that @@.lime;the minute flaws in her facial appearance seem to be smoothed away@@ every time she sleeps.
+		$He is so healthy and trusting that @@.lime;the minute flaws in her facial appearance seem to be smoothed away@@ every time $he sleeps.
 		<<FaceIncrease $slaves[$i] 5>>
 	<</if>>
 	<</if>>
@@ -6222,7 +6222,7 @@
 	<<if $slaves[$i].visualAge > 20 && $slaves[$i].physicalAge > 20>>
 	<<if $slaves[$i].trust > 95 && $slaves[$i].devotion > 95>>
 		<<if $slaves[$i].ageAdjust == 40>>
-			$pronounCap has been living a happy, healthy and trusting life under you for so long that you swear @@.lime;she looks a little younger@@ than a girl her age should.
+			$He has been living a happy, healthy and trusting life under you for so long that you swear @@.lime;$he looks a little younger@@ than a girl her age should.
 			<<set $slaves[$i].visualAge-->>
 			<<set $slaves[$i].ageAdjust = 0>>
 		<<elseif random(1,100) > 60>>
@@ -6234,7 +6234,7 @@
 <<elseif ($slaves[$i].health > 60)>>
 	<<if $slaves[$i].need <= $slaves[$i].energy/2>>
 		<<if ($slaves[$i].energy <= 50)>>
-			$possessiveCap good health produces a @@.green;slow improvement in libido.@@
+			$His good health produces a @@.green;slow improvement in libido.@@
 			<<set $slaves[$i].energy += 1>>
 		<</if>>
 	<</if>>
@@ -6244,7 +6244,7 @@
 	<<if $slaves[$i].health > 20>>
 	<<if $slaves[$i].curatives == 0 && $slaves[$i].inflationType != "curative">>
 	<<if $slaves[$i].physicalAge-30 > random(1,100)>>
-		The bloom comes off $possessive excellent health a little. It seems $possessive @@.red;age@@ may be affecting $object.
+		The bloom comes off $his excellent health a little. It seems $his @@.red;age@@ may be affecting $him.
 		<<set $slaves[$i].health -= 10>>
 	<</if>>
 	<</if>>
@@ -6252,7 +6252,7 @@
 	<<if $slaves[$i].trust < random(1,100)>>
 	<<if $slaves[$i].health < random(1,100)>>
 	<<if $slaves[$i].physicalAge-30 > random(1,100)>>
-		$possessiveCap face looks @@.orange;just a little older@@ than it did last week. $pronounCap's not getting any younger.
+		$His face looks @@.orange;just a little older@@ than it did last week. $He's not getting any younger.
 		<<set $slaves[$i].face -= 2>>
 	<</if>>
 	<</if>>
@@ -6263,7 +6263,7 @@
 	<<if $slaves[$i].visualAge > 15 && $slaves[$i].physicalAge > 15>>
 	<<if $slaves[$i].trust < -20 && $slaves[$i].devotion < -20>>
 		<<if $slaves[$i].ageAdjust == -40>>
-			$pronounCap has been living a miserable life under your feet for so long that you swear @@.orange;she looks a little older@@ than a girl her age should.
+			$He has been living a miserable life under your feet for so long that you swear @@.orange;$he looks a little older@@ than a girl her age should.
 			<<set $slaves[$i].visualAge++>>
 			<<set $slaves[$i].ageAdjust = 0>>
 		<<elseif random(1,100) > 40>>
@@ -6313,7 +6313,7 @@
 	<<if (($slaves[$i].visualAge > 8) && ($slaves[$i].NCSyouthening >= (11 - _youtheningLevel)))>>
 		<!-- NCS: youthening fires! -->
 		<<if $seeAge == 1>>
-			$pronounCap has been living under the effects of $possessive @@.orange;NCS@@ for a while and the accumulated effects make @@.lime;$object look younger again.@@
+			$He has been living under the effects of $his @@.orange;NCS@@ for a while and the accumulated effects make @@.lime;$object look younger again.@@
 		<</if>>
 		<<set $slaves[$i].visualAge--, _countNCS++, _youthening++>>
 	<</if>>
@@ -6333,7 +6333,7 @@
 		<<elseif _heightDelta > -15>><<set _shrinkage = 2>>
 		<<else>><<set _shrinkage = 1>>
 		<</if>>
-		$possessiveCap @@.orange;NCS@@ is actively @@.orange;reducing $possessive stature, leaving her shorter.@@
+		$His @@.orange;NCS@@ is actively @@.orange;reducing $his stature, leaving her shorter.@@
 		<<set $slaves[$i].height -= _shrinkage, _countNCS++>>
 	<</if>>
 	/*
@@ -6346,21 +6346,21 @@
 	**              or by a 50% chance.
 	*/
 	<<if (($slaves[$i].boobs-$slaves[$i].boobsImplant >= 5000) && (random(1,100) < 90))>>
-		$possessiveCap @@.orange;NCS@@ has @@.orange;reduced the size of $possessive bouncing breasts.@@
+		$His @@.orange;NCS@@ has @@.orange;reduced the size of $his bouncing breasts.@@
 		<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .11), _countNCS++>>
 	<<elseif (($slaves[$i].boobs-$slaves[$i].boobsImplant <= 5000) && (!['tiny', 'cute', 'fuckable'].includes($slaves[$i].nipples)) && (random(1,100) < 30))>>
 		<<if ('inverted' == $slaves[$i].nipples)>><<set _target = 'partially inverted'>>
 		<<elseif ('partially inverted' == $slaves[$i].nipples)>><<set _target = 'normal'>>
 		<<else>><<set _target = either('cute', 'tiny')>>
 		<</if>>
-		$possessiveCap @@.orange;NCS@@ has @@.lime;changed $possessive nipples to <<= _target>>.@@
+		$His @@.orange;NCS@@ has @@.lime;changed $his nipples to <<= _target>>.@@
 		<<set $slaves[$i].nipples = _target>>
 		<<if ($slaves[$i].areolae > 1)>>
-			$possessiveCap areolae also shrink down to a more normal size<<if ($slaves[$i].areolae > 3)>>, losing the surgical shape alteration<</if>>.
+			$His areolae also shrink down to a more normal size<<if ($slaves[$i].areolae > 3)>>, losing the surgical shape alteration<</if>>.
 			<<set $slaves[$i].areolae = 1, _countNCS++>>
 		<</if>>
 	<<elseif (($slaves[$i].boobs-$slaves[$i].boobsImplant >= 300) && (($slaves[$i].NCSyouthening >= 6) || (random(1,100) < 50)))>>
-		$possessiveCap @@.orange;NCS@@ has @@.orange;reduced the size of $possessive tits.@@
+		$His @@.orange;NCS@@ has @@.orange;reduced the size of $his tits.@@
 		<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .09), _countNCS++>>
 	<</if>>
 	/*
@@ -6369,7 +6369,7 @@
 	**      level, though the chances get much more likely for the widest sizes.
 	*/
 	<<if ((($slaves[$i].hips-Math.abs($slaves[$i].hipsImplant)) > -2) && (random(1,100) < (($slaves[$i].hips + 3) * 18)))>>
-		$possessiveCap @@.orange;NCS@@ gets busy @@.orange;reducing the size of $possessive
+		$His @@.orange;NCS@@ gets busy @@.orange;reducing the size of $his
 		<<if ($slaves[$i].hips >= 2)>>freakish
 		<<elseif ($slaves[$i].hips >= 0)>>wide
 		<<elseif ($slaves[$i].hips >= -2)>>already narrow
@@ -6377,7 +6377,7 @@
 		hips.@@
 		<<set $slaves[$i].hips -= 1, _countNCS++>>
 	<<elseif ((($slaves[$i].shoulders-Math.abs($slaves[$i].shouldersImplant)) > -2) && (random(1,100) < (($slaves[$i].shoulders + 3) * 18)))>>
-		$possessiveCap @@.orange;NCS@@ applies and @@.orange;reduces the size of $possessive
+		$His @@.orange;NCS@@ applies and @@.orange;reduces the size of $his
 		<<if ($slaves[$i].shoulders >= 2)>>domineering
 		<<elseif ($slaves[$i].shoulders >= 0)>>
 		<<elseif ($slaves[$i].shoulders >= -2)>>already narrow
@@ -6391,16 +6391,16 @@
 	**      Below that by chance, (reducing chances by current size). In general clits shrink faster.
 	*/
 	<<if ($slaves[$i].dick >= 10)>>
-		$possessiveCap @@.orange;NCS@@ is actively @@.orange;reducing the size of $possessive giant dick.@@
+		$His @@.orange;NCS@@ is actively @@.orange;reducing the size of $his giant dick.@@
 		<<set $slaves[$i].dick -= 2, _countNCS++>>
 	<<elseif ($slaves[$i].clit >= 5)>>
-		$possessiveCap @@.orange;NCS@@ has @@.orange;reduced the size of $possessive enormous clit-dick.@@
+		$His @@.orange;NCS@@ has @@.orange;reduced the size of $his enormous clit-dick.@@
 		<<set $slaves[$i].clit -= 2, _countNCS++>>
 	<<elseif ((_countNCS < 3) && ($slaves[$i].dick > 2) && (random(1,100) < (($slaves[$i].dick + 1) * 9)))>>
-		$possessiveCap @@.orange;NCS@@ is actively @@.orange;reducing the size of $possessive dick.@@
+		$His @@.orange;NCS@@ is actively @@.orange;reducing the size of $his dick.@@
 		<<set $slaves[$i].dick -= 1, _countNCS++>>
 	<<elseif ((_countNCS < 3) && ($slaves[$i].clit >= 1) && (random(1,100) < (($slaves[$i].clit + 2) * 16)))>>
-		$possessiveCap @@.orange;NCS@@ has @@.orange;reduced the size of $possessive clit.@@
+		$His @@.orange;NCS@@ has @@.orange;reduced the size of $his clit.@@
 		<<set $slaves[$i].clit -= 1, _countNCS++>>
 	<</if>>
 	/*
@@ -6409,10 +6409,10 @@
 	**      Others decreace by chance based on current size.
 	*/
 	<<if ($slaves[$i].balls >= 10)>>
-		$possessiveCap @@.orange;NCS@@ gets busy @@.orange;reducing the size of $possessive titanic balls.@@
+		$His @@.orange;NCS@@ gets busy @@.orange;reducing the size of $his titanic balls.@@
 		<<set $slaves[$i].balls -= 2, _countNCS++>>
 	<<elseif ((_countNCS < 3) && ($slaves[$i].balls > 2) && (random(1,100) < (($slaves[$i].balls + 1) * 8)))>>
-		$possessiveCap @@.orange;NCS@@ gets busy @@.orange;reducing the size of $possessive balls.@@
+		$His @@.orange;NCS@@ gets busy @@.orange;reducing the size of $his balls.@@
 		<<set $slaves[$i].balls -= 1, _countNCS++>>
 	<</if>>
 	/*
@@ -6421,10 +6421,10 @@
 	**      Regular butts based on chances, decrease as the size does.
 	*/
 	<<if ($slaves[$i].butt-$slaves[$i].buttImplant >= 10)>>
-		$possessiveCap @@.orange;NCS@@ applies and @@.orange;reduces the size of $possessive bulbous butt.@@
+		$His @@.orange;NCS@@ applies and @@.orange;reduces the size of $his bulbous butt.@@
 		<<set $slaves[$i].butt -= 2, _countNCS++>>
 	<<elseif ((_countNCS < 3) && ($slaves[$i].butt-$slaves[$i].buttImplant >= 1) && (random(1,100) < ($slaves[$i].butt * 9)))>>
-		$possessiveCap @@.orange;NCS@@ applies and @@.orange;reduces the size of $possessive butt.@@
+		$His @@.orange;NCS@@ applies and @@.orange;reduces the size of $his butt.@@
 		<<set $slaves[$i].butt -= 1, _countNCS++>>
 	<</if>>
 	/*
@@ -6434,16 +6434,16 @@
 	**      Otherwise by reducing chance based on current sizes, but labias are a little more likley.
 	*/
 	<<if ($slaves[$i].scrotum >= 5)>>
-		$possessiveCap @@.orange;NCS@@ kicks in and @@.orange;reduces the size of $possessive pendulous scrotum.@@
+		$His @@.orange;NCS@@ kicks in and @@.orange;reduces the size of $his pendulous scrotum.@@
 		<<set $slaves[$i].scrotum -= 2, _countNCS++>>
 	<<elseif ($slaves[$i].labia >= 5)>>
-		$possessiveCap @@.orange;NCS@@ kicks in and @@.orange;reduces the size of $possessive sagging labia.@@
+		$His @@.orange;NCS@@ kicks in and @@.orange;reduces the size of $his sagging labia.@@
 		<<set $slaves[$i].labia -= 2, _countNCS++>>
 	<<elseif ((_countNCS < 3) && ($slaves[$i].labia >= 1) && (random(1,100) < ($slaves[$i].labia * 11)))>>
-		$possessiveCap @@.orange;NCS@@ kicks in and @@.orange;reduces the size of $possessive labia.@@
+		$His @@.orange;NCS@@ kicks in and @@.orange;reduces the size of $his labia.@@
 		<<set $slaves[$i].labia -= 1, _countNCS++>>
 	<<elseif ((_countNCS < 3) && ($slaves[$i].scrotum > 1) && (random(1,100) < ($slaves[$i].scrotum * 8.5)))>>
-		$possessiveCap @@.orange;NCS@@ kicks in and @@.orange;reduces the size of $possessive scrotum.@@
+		$His @@.orange;NCS@@ kicks in and @@.orange;reduces the size of $his scrotum.@@
 		<<set $slaves[$i].scrotum -= 1, _countNCS++>>
 	<</if>>
 	/*
@@ -6451,7 +6451,7 @@
 	**      Small chance for any non-childlike voice.
 	*/
 	<<if ((_countNCS < 3) && ($slaves[$i].voice < 3) && $slaves[$i].voice != 0 && (random(1,100) > ($slaves[$i].voice * 15)))>>
-		$possessiveCap @@.orange;NCS@@ has @@.lime;raised the pitch of $possessive voice, $pronoun now sounds more <<if $slaves[$i].voice == 1>>feminine<<else>>childlike<</if>>.@@
+		$His @@.orange;NCS@@ has @@.lime;raised the pitch of $his voice, $he now sounds more <<if $slaves[$i].voice == 1>>feminine<<else>>childlike<</if>>.@@
 		<<set $slaves[$i].voice += 1, _countNCS++>>
 	<</if>>
 	/*
@@ -6459,10 +6459,10 @@
 	*       10% chance of either one rejuvinating per week.  (The Child Whore's delight!)
 	*/
 	<<if ((_countNCS < 2) && ($slaves[$i].vagina > 1) && (random(1,100) < ($slaves[$i].vagina * 10)))>>
-		$possessiveCap @@.orange;NCS@@ manages to @@.lime;reverse the stretching in $possessive vagina, $possessive pussy now looks more childlike.@@
+		$His @@.orange;NCS@@ manages to @@.lime;reverse the stretching in $his vagina, $his pussy now looks more childlike.@@
 		<<set $slaves[$i].vagina -= 1, _countNCS++>>
 	<<elseif ((_countNCS < 2) && ($slaves[$i].anus > 1) && (random(1,100) < ($slaves[$i].anus * 10)))>>
-		$possessiveCap @@.orange;NCS@@ effectively @@.lime;reverses the stretching in $possessive anus, $possessive ass-pussy now looks more childlike.@@
+		$His @@.orange;NCS@@ effectively @@.lime;reverses the stretching in $his anus, $his ass-pussy now looks more childlike.@@
 		<<set $slaves[$i].anus -= 1, _countNCS++>>
 	<</if>>
 	/*
@@ -6475,7 +6475,7 @@
 
 <<if $slaves[$i].fuckdoll == 0>>
 	<<if !canWalk($slaves[$i])>>
-		She is immobilized by her
+		$He is immobilized by her
 		<<set $anchors = []>>
 		<<if tooBigBreasts($slaves[$i])>>
 			<<set $anchors.push("tits")>>
@@ -6510,7 +6510,7 @@
 				<<print $anchors[0]>>,
 			<</if>>
 			<<if ($slaves[$i].amp == 1)>>
-				<<if $anchors.length > 1>>but ultimately her limblessness<<else>>or would be if she had limbs<</if>>,
+				<<if $anchors.length > 1>>but ultimately her limblessness<<else>>or would be if $he had limbs<</if>>,
 			<<elseif $slaves[$i].heels == 1 && !["heels", "pumps", "boots", "extreme heels"].includes($slaves[$i].shoes)>>
 				<<if $anchors.length > 1>>but ultimately her heels having been clipped<<else>>or would be if her heels weren't clipped<</if>>,
 			<</if>>
@@ -6543,18 +6543,18 @@
 			<<if $slaves[$i].devotion > 50>>
 				the devoted slave bears with equanimity.
 			<<elseif $slaves[$i].devotion > 20>>
-				she can't help @@.mediumorchid;resenting@@ a little.
+				$he can't help @@.mediumorchid;resenting@@ a little.
 				<<set $slaves[$i].devotion -= 1>>
 			<<elseif $slaves[$i].devotion >= -20>>
-				she @@.mediumorchid;actively resents.@@
+				$he @@.mediumorchid;actively resents.@@
 				<<set $slaves[$i].devotion -= 2>>
 			<<else>>
-				she @@.mediumorchid;utterly detests.@@
+				$he @@.mediumorchid;utterly detests.@@
 				<<set $slaves[$i].devotion -= 2>>
 			<</if>>
 			<<if $slaves[$i].devotion < 10>>
 			<<if $slaves[$i].trust > -20>>
-				She's @@.gold;aware of her total vulnerability@@ to punishment.
+				$He's @@.gold;aware of her total vulnerability@@ to punishment.
 				<<set $slaves[$i].trust -= 1>>
 			<</if>>
 			<</if>>
@@ -6565,7 +6565,7 @@
 			<<if $slaves[$i].muscles > -80>>
 				As an amputee
 				<<if $slaves[$i].muscles > 5>>
-					she @@.orange;loses some muscle definition.@@
+					$he @@.orange;loses some muscle definition.@@
 				<<else>>
 					her @@.orange;muscles steadily atrophy.@@
 				<</if>>
@@ -6573,11 +6573,11 @@
 			<</if>>
 		<<elseif !canWalk($slaves[$i]) && ($slaves[$i].diet != "muscle building")>>
 			<<if $slaves[$i].muscles > -80>>
-				Since she is incapable of moving herself,
+				Since $he is incapable of moving herself,
 				<<if $universalRulesImmobileSlavesMaintainMuscles == 1 && $slaves[$i].muscles >= 0>>
-					and is required to maintain her musculature, she regularly lifts weights to stave off muscular atrophy.
+					and is required to maintain her musculature, $he regularly lifts weights to stave off muscular atrophy.
 				<<elseif $slaves[$i].muscles >= -5>>
-					she steadily @@.orange;loses muscle definition.@@
+					$he steadily @@.orange;loses muscle definition.@@
 					<<set $slaves[$i].muscles-->>
 				<<else>>
 					her @@.orange;muscles steadily atrophy.@@
@@ -6592,14 +6592,14 @@
 				<<if (($slaves[$i].drugs != "breast injections") && ($slaves[$i].drugs != "intensive breast injections") && ($arcologies[0].FSAssetExpansionistResearch == 0))>>
 					<<if (($slaves[$i].bellyPreg < 300000) && ($slaves[$i].hormoneBalance < 300))>>
 						<<if ($slaves[$i].boobs > 30000+($slaves[$i].muscles*100))>>
-							$possessiveCap breasts are larger than $possessive body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
+							$His breasts are larger than $his body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 25>>
 						<<else>>
-							$possessiveCap breasts are far, far beyond what $possessive body can sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
+							$His breasts are far, far beyond what $his body can sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 50>>
 						<</if>>
 						<<if (($slaves[$i].inducedNCS == 1) && (random(1,100) > 50))>>
-							This effect is massively compounded by $possessive @@.orange;NCS.@@
+							This effect is massively compounded by $his @@.orange;NCS.@@
 							<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .1)>>
 						<</if>>
 					<</if>>
@@ -6607,38 +6607,38 @@
 			<</if>>
 		<</if>>
 		<<if ($slaves[$i].boobs > 40000)>>
-			Her immense breasts are so big they pin her to the floor, taking the weight off her body.
+			$His immense breasts are so big they pin her to the floor, taking the weight off her body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
-				She's perfectly fine with dragging them along as a testament to how much she's managed to grow.
+				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
-				She finds pulling them along @@.mediumorchid;mildly annoying.@@
+				$He finds pulling them along @@.mediumorchid;mildly annoying.@@
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
-				She finds pulling them along somewhat annoying, but she's happy to do so if it pleases you.
+				$He finds pulling them along somewhat annoying, but $he's happy to do so if it pleases you.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 25000)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					Her giant tits are debilitatingly big and a constant reminder of her progress. No amount of discomfort or pain could dissuade her from going bigger.
+					$His giant tits are debilitatingly big and a constant reminder of her progress. No amount of discomfort or pain could dissuade her from going bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					Her giant tits are debilitatingly big. They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her body.
+					$His giant tits are debilitatingly big. They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her body.
 					<<set $slaves[$i].devotion -= 3>>
 					<<set $slaves[$i].health -= 5>>
 				<<else>>
-					Her giant tits are debilitatingly big, but she takes measures to keep comfortable and pain free as to not concern you with her troubles.
+					$His giant tits are debilitatingly big, but $he takes measures to keep comfortable and pain free as to not concern you with her troubles.
 				<</if>>
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 10000)>>
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					Her huge breasts are becoming troublesome for her slight form, but that only drives her desire to go even bigger.
+					$His huge breasts are becoming troublesome for her slight form, but that only drives her desire to go even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
 					Dragging her huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for her slight form.
 					<<set $slaves[$i].devotion -= 2>>
 					<<set $slaves[$i].health -= 2>>
 				<<else>>
-					She finds her breasts uncomfortably large, but she grins and bears it for you.
+					$He finds her breasts uncomfortably large, but $he grins and bears it for you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6646,12 +6646,12 @@
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					The weight of her big boobs serves as a reminder that she needs to get even bigger.
+					The weight of her big boobs serves as a reminder that $he needs to get even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
 					The weight of her big boobs is @@.mediumorchid;uncomfortable@@ for her slight form.
 					<<set $slaves[$i].devotion -= 2>>
 				<<else>>
-					The weight of her big boobs is uncomfortable for her slight form, but she bears it out of devotion to you.
+					The weight of her big boobs is uncomfortable for her slight form, but $he bears it out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6662,14 +6662,14 @@
 				<<if ($slaves[$i].drugs != "breast injections" && $slaves[$i].drugs != "intensive breast injections" && $arcologies[0].FSAssetExpansionistResearch == 0)>>
 					<<if $slaves[$i].bellyPreg < 300000 && $slaves[$i].hormoneBalance < 300>>
 						<<if ($slaves[$i].boobs > 5000+($slaves[$i].muscles*10))>>
-							$possessiveCap breasts are larger than $possessive body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
+							$His breasts are larger than $his body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 25>>
 						<<else>>
-							$possessiveCap breasts are far, far beyond what $possessive body can sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
+							$His breasts are far, far beyond what $his body can sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 50>>
 						<</if>>
 						<<if (($slaves[$i].inducedNCS == 1) && (random(1,100) > 50))>>
-							This effect is compounded by $possessive @@.orange;NCS.@@
+							This effect is compounded by $his @@.orange;NCS.@@
 							<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .1)>>
 						<</if>>
 					<</if>>
@@ -6677,49 +6677,49 @@
 			<</if>>
 		<</if>>
 		<<if ($slaves[$i].boobs > 40000)>>
-			Her titanic breasts are so massive they dwarf her body. She <<if $slaves[$i].sexualFlaw == "breast growth">>happily embraces<<else>>has no choice but to accept<</if>> immobility.
+			$His titanic breasts are so massive they dwarf her body. $He <<if $slaves[$i].sexualFlaw == "breast growth">>happily embraces<<else>>has no choice but to accept<</if>> immobility.
 		<<elseif ($slaves[$i].boobs > 20000)>>
-			Her immense breasts are so huge they rest upon the floor even when she tries to stand, taking the weight off her tiny body.
+			$His immense breasts are so huge they rest upon the floor even when $he tries to stand, taking the weight off her tiny body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
-				She's perfectly fine with dragging them along as a testament to how much she's managed to grow.
+				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
-				She finds pulling them along @@.mediumorchid;mildly annoying.@@
+				$He finds pulling them along @@.mediumorchid;mildly annoying.@@
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
-				She finds pulling them along a big burden, but her devotion to you is far stronger than her discomfort.
+				$He finds pulling them along a big burden, but her devotion to you is far stronger than her discomfort.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 6000)>>
-			Her giant breasts are so big they pin her to the floor, taking the weight off her tiny body.
+			$His giant breasts are so big they pin her to the floor, taking the weight off her tiny body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
-				She's perfectly fine with dragging them along as a testament to how much she's managed to grow.
+				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
-				She finds pulling them along @@.mediumorchid;mildly annoying.@@
+				$He finds pulling them along @@.mediumorchid;mildly annoying.@@
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
-				She finds pulling them along a little annoying, but your will is far more important to her.
+				$He finds pulling them along a little annoying, but your will is far more important to $him.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 5000)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					Her giant tits are debilitatingly big and a constant reminder of her progress. No amount of discomfort or pain could dissuade her from going bigger.
+					$His giant tits are debilitatingly big and a constant reminder of her progress. No amount of discomfort or pain could dissuade her from going bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					Her giant tits are debilitatingly big. They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her childish form.
+					$His giant tits are debilitatingly big. They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her childish form.
 					<<set $slaves[$i].devotion -= 3>>
 					<<set $slaves[$i].health -= 4>>
 				<<else>>
-					Her giant tits are debilitatingly big. She does everything she can to keep comfortable and pain free as to not bother you.
+					$His giant tits are debilitatingly big. $He does everything $he can to keep comfortable and pain free as to not bother you.
 				<</if>>
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 2500)>>
 			<<if ($slaves[$i].muscles <= 80)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					Her huge breasts are troublesome for her childish form, but that only drives her desire to go even bigger.
+					$His huge breasts are troublesome for her childish form, but that only drives her desire to go even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
 					Hauling her huge tits around is @@.mediumorchid;uncomfortable@@ for her childish form.
 					<<set $slaves[$i].devotion -= 2>>
 				<<else>>
-					She finds her breasts uncomfortably large for her tiny body, but she grins and bears it for you.
+					$He finds her breasts uncomfortably large for her tiny body, but $he grins and bears it for you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6727,12 +6727,12 @@
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					The weight of her big boobs serves as a reminder that she needs to get even bigger.
+					The weight of her big boobs serves as a reminder that $he needs to get even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
 					The weight of her big boobs is @@.mediumorchid;uncomfortable@@ for her slight form.
 					<<set $slaves[$i].devotion -= 2>>
 				<<else>>
-					The weight of her big boobs is uncomfortable for her slight form, but she bears it out of devotion to you.
+					The weight of her big boobs is uncomfortable for her slight form, but $he bears it out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6743,14 +6743,14 @@
 				<<if ($slaves[$i].drugs != "breast injections" && $slaves[$i].drugs != "intensive breast injections" && $arcologies[0].FSAssetExpansionistResearch == 0)>>
 					<<if $slaves[$i].bellyPreg < 300000 && $slaves[$i].hormoneBalance < 300>>
 						<<if ($slaves[$i].boobs > 10000+($slaves[$i].muscles*20))>>
-							$possessiveCap breasts are larger than $possessive body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
+							$His breasts are larger than $his body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 25>>
 						<<else>>
-							$possessiveCap breasts are far, far beyond what $possessive body can sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
+							$His breasts are far, far beyond what $his body can sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 50>>
 						<</if>>
 						<<if (($slaves[$i].inducedNCS == 1) && (random(1,100) > 50))>>
-							This effect is compounded by $possessive @@.orange;NCS.@@
+							This effect is compounded by $his @@.orange;NCS.@@
 							<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .1)>>
 						<</if>>
 					<</if>>
@@ -6758,28 +6758,28 @@
 			<</if>>
 		<</if>>
 		<<if ($slaves[$i].boobs > 40000)>>
-			Her immense breasts are so huge they rest upon the floor even when she tries to stand, taking the weight off her small body.
+			$His immense breasts are so huge they rest upon the floor even when $he tries to stand, taking the weight off her small body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
-				She's perfectly fine with dragging them along as a testament to how much she's managed to grow.
+				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
-				She finds pulling them along @@.mediumorchid;mildly annoying.@@
+				$He finds pulling them along @@.mediumorchid;mildly annoying.@@
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
-				She finds pulling them along a burden, but her devotion to you is far stronger than her discomfort.
+				$He finds pulling them along a burden, but her devotion to you is far stronger than her discomfort.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 12000)>>
-			Her giant breasts are so big they pin her to the floor, taking the weight off her young body.
+			$His giant breasts are so big they pin her to the floor, taking the weight off her young body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
-				She's perfectly fine with dragging them along as a testament to how much she's managed to grow.
+				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
-				She finds pulling them along @@.mediumorchid;mildly annoying.@@
+				$He finds pulling them along @@.mediumorchid;mildly annoying.@@
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
-				She finds pulling them along a little annoying, but your will is far more important to her.
+				$He finds pulling them along a little annoying, but your will is far more important to $him.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 10000)>>
 			<<if canWalk($slaves[$i])>>
-				Her giant tits are debilitatingly big.
+				$His giant tits are debilitatingly big.
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
 					No amount of discomfort or pain could dissuade her from going bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
@@ -6787,20 +6787,20 @@
 					<<set $slaves[$i].devotion -= 3>>
 					<<set $slaves[$i].health -= 5>>
 				<<else>>
-					She does her best to not let them get the better of her youthful body.
+					$He does her best to not let them get the better of her youthful body.
 				<</if>>
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 5000)>>
 			<<if ($slaves[$i].muscles <= 80)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					Her huge breasts are troublesome for her childish form, but that only drives her desire to go even bigger.
+					$His huge breasts are troublesome for her childish form, but that only drives her desire to go even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
 					Dragging her huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for her childish form.
 					<<set $slaves[$i].devotion -= 2>>
 					<<set $slaves[$i].health -= 4>>
 				<<else>>
-					Her huge tits are uncomfortably big for her childish form, but she keeps it to herself out of devotion to you.
+					$His huge tits are uncomfortably big for her childish form, but $he keeps it to herself out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6808,12 +6808,12 @@
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					The weight of her big boobs serves as a reminder that she needs to get even bigger.
+					The weight of her big boobs serves as a reminder that $he needs to get even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
 					The weight of her big boobs is @@.mediumorchid;uncomfortable@@ for her slight form.
 					<<set $slaves[$i].devotion -= 1>>
 				<<else>>
-					The weight of her big boobs is uncomfortable for her slight form, but she bears it out of devotion to you.
+					The weight of her big boobs is uncomfortable for her slight form, but $he bears it out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6824,14 +6824,14 @@
 				<<if ($slaves[$i].drugs != "breast injections" && $slaves[$i].drugs != "intensive breast injections" && $arcologies[0].FSAssetExpansionistResearch == 0)>>
 					<<if $slaves[$i].bellyPreg < 300000 && $slaves[$i].hormoneBalance < 300>>
 						<<if ($slaves[$i].boobs > 20000+($slaves[$i].muscles*50))>>
-							$possessiveCap breasts are larger than $possessive body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
+							$His breasts are larger than $his body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 25>>
 						<<else>>
-							$possessiveCap breasts are far, far beyond what $possessive body can sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
+							$His breasts are far, far beyond what $his body can sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 50>>
 						<</if>>
 						<<if (($slaves[$i].inducedNCS == 1) && (random(1,100) > 50))>>
-							This effect is compounded by $possessive @@.orange;NCS.@@
+							This effect is compounded by $his @@.orange;NCS.@@
 							<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .1)>>
 						<</if>>
 					<</if>>
@@ -6839,35 +6839,35 @@
 			<</if>>
 		<</if>>
 		<<if ($slaves[$i].boobs > 25000)>>
-			Her immense breasts are so big they pin her to the floor, taking the weight off her youthful body.
+			$His immense breasts are so big they pin her to the floor, taking the weight off her youthful body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
-				She's perfectly fine with dragging them along as a testament to how much she's managed to grow.
+				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
-				She finds pulling them along @@.mediumorchid;mildly annoying.@@
+				$He finds pulling them along @@.mediumorchid;mildly annoying.@@
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
-				She finds pulling them along a little annoying, but your will is far more important to her.
+				$He finds pulling them along a little annoying, but your will is far more important to $him.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 17000)>>
-			Her giant tits are debilitatingly big.
+			$His giant tits are debilitatingly big.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
 				No amount of discomfort or pain could dissuade her from going bigger.
 			<<elseif $slaves[$i].devotion <= 50>>
 				They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her youthful form.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].health -= 10>>
 			<<else>>
-				She finds them painfully uncomfortable, but finds ways to mitigate it to not distract you with her worries.
+				$He finds them painfully uncomfortable, but finds ways to mitigate it to not distract you with her worries.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 10000)>>
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					Her huge breasts are troublesome for her slight form, but that only drives her desire to go even bigger.
+					$His huge breasts are troublesome for her slight form, but that only drives her desire to go even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
 					Dragging her huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for her slight form.
 					<<set $slaves[$i].devotion -= 2, $slaves[$i].health -= 3>>
 				<<else>>
-					Her huge tits are uncomfortably big for her slight form, but she keeps it to herself out of devotion to you.
+					$His huge tits are uncomfortably big for her slight form, but $he keeps it to herself out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6875,12 +6875,12 @@
 			<<if ($slaves[$i].muscles <= 5)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					The weight of her big boobs serves as a reminder that she needs to get even bigger.
+					The weight of her big boobs serves as a reminder that $he needs to get even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
 					The weight of her big boobs is @@.mediumorchid;uncomfortable@@ for her slight form.
 					<<set $slaves[$i].devotion -= 1>>
 				<<else>>
-					The weight of her big boobs is uncomfortable for her slight form, but she bears it out of devotion to you.
+					The weight of her big boobs is uncomfortable for her slight form, but $he bears it out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6892,9 +6892,9 @@
 	<<if ($slaves[$i].preg > 30)>>
 		<<if ($slaves[$i].physicalAge < 4)>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				Her womb takes up most of her body and puts tremendous pressure on her skin and organs. This is @@.mediumorchid;very worrying@@ to her. She is in @@.red;constant pain@@ and each movement within her straining womb causes additional discomfort. She is @@.gold;terrified@@ that at any moment she could burst.
+				$His womb takes up most of her body and puts tremendous pressure on her skin and organs. This is @@.mediumorchid;very worrying@@ to $him. $He is in @@.red;constant pain@@ and each movement within her straining womb causes additional discomfort. $He is @@.gold;terrified@@ that at any moment $he could burst.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					Her slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
 					<<set $slaves[$i].devotion -= 1>>
  					<<set $slaves[$i].trust -= 4>>
  				<<else>>
@@ -6903,23 +6903,23 @@
  				<</if>>
 				<<set $slaves[$i].health -= 20>>
 			<<elseif ($slaves[$i].pregType >= 10)>>
-				Her womb greatly fills her body and compresses her internal organs. She is in constant @@.mediumorchid;discomfort@@ and @@.red;pain@@ and can't wait for these children to be born.
+				$His womb greatly fills her body and compresses her internal organs. $He is in constant @@.mediumorchid;discomfort@@ and @@.red;pain@@ and can't wait for these children to be born.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					Her slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
 					<<set $slaves[$i].devotion -= 1>>
  				<<else>>
 					<<set $slaves[$i].devotion -= 2>>
  				<</if>>
 				<<set $slaves[$i].health -= 10>>
 			<<else>>
-				Her full womb puts pressure on her organs. It is quite @@.mediumorchid;uncomfortable@@ to her.
+				$His full womb puts pressure on her organs. It is quite @@.mediumorchid;uncomfortable@@ to $him.
 				<<set $slaves[$i].devotion -= 2>>
 			<</if>>
 		<<elseif ($slaves[$i].physicalAge < 13)>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				Her bloated womb is constantly straining to hold together. This is @@.mediumorchid;very worrying@@ to her. She moans @@.red;painfully@@ with each movement within her.
+				$His bloated womb is constantly straining to hold together. This is @@.mediumorchid;very worrying@@ to $him. $He moans @@.red;painfully@@ with each movement within $him.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					Her slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
 					<<set $slaves[$i].devotion -= 1>>
  				<<else>>
 					<<set $slaves[$i].devotion -= 2>>
@@ -6928,28 +6928,28 @@
 			<<elseif ($slaves[$i].pregType >= 10)>>
 				<<if ($slaves[$i].muscles <= 30)>>
 				<<if canWalk($slaves[$i])>>
-					Her belly is very heavy and juts out quite far from her body. Between constantly getting in the way and the discomfort of being so full, her belly is @@.mediumorchid;very annoying@@ to her.
+					$His belly is very heavy and juts out quite far from her body. Between constantly getting in the way and the discomfort of being so full, her belly is @@.mediumorchid;very annoying@@ to $him.
 					<<set $slaves[$i].devotion -= 2>>
 				<</if>>
 				<<else>>
 				<<if canWalk($slaves[$i])>>
-					Her belly juts out @@.mediumorchid;annoyingly@@ far.
+					$His belly juts out @@.mediumorchid;annoyingly@@ far.
 					<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 				<</if>>
 			<<else>>
 				<<if ($slaves[$i].muscles <= 5)>>
 				<<if canWalk($slaves[$i])>>
-					Her pregnant belly is quite tiring to carry around, leading her to be @@.mediumorchid;somewhat annoyed.@@
+					$His pregnant belly is quite tiring to carry around, leading her to be @@.mediumorchid;somewhat annoyed.@@
 					<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				Her straining womb is @@.mediumorchid;very worrying@@ to her. She @@.red;moans with pain@@ every time one of her brood moves within her.
+				$His straining womb is @@.mediumorchid;very worrying@@ to $him. $He @@.red;moans with pain@@ every time one of her brood moves within $him.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					Her slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
 					<<set $slaves[$i].devotion -= 1>>
  				<<else>>
 					<<set $slaves[$i].devotion -= 3>>
@@ -6958,7 +6958,7 @@
 		<<elseif ($slaves[$i].pregType >= 10)>>
 				<<if ($slaves[$i].muscles <= 30)>>
 				<<if canWalk($slaves[$i])>>
-					Her belly is very heavy and juts out quite far from her body. Between constantly getting in the way and the discomfort of being so full, her belly is @@.mediumorchid;very annoying@@ to her.
+					$His belly is very heavy and juts out quite far from her body. Between constantly getting in the way and the discomfort of being so full, her belly is @@.mediumorchid;very annoying@@ to $him.
 					<<set $slaves[$i].devotion -= 2>>
 				<</if>>
 				<</if>>
@@ -6967,9 +6967,9 @@
 	<<elseif ($slaves[$i].preg > 20)>>
 		<<if ($slaves[$i].physicalAge < 4)>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				Her womb is becoming @@.mediumorchid;distressing@@ to her. She is in @@.red;pain@@ with each motion within her straining womb. She is @@.gold;terrified@@ of what awaits her at the end of this pregnancy.
+				$His womb is becoming @@.mediumorchid;distressing@@ to $him. $He is in @@.red;pain@@ with each motion within her straining womb. $He is @@.gold;terrified@@ of what awaits her at the end of this pregnancy.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					Her slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
 					<<set $slaves[$i].devotion -= 1>>
 					<<set $slaves[$i].trust -= 2>>
  				<<else>>
@@ -6978,20 +6978,20 @@
  				<</if>>
 				<<set $slaves[$i].health -= 20>>
 			<<elseif ($slaves[$i].pregType >= 10)>>
-				Her womb is becoming quite full causing her some @@.mediumorchid;discomfort@@. She is eager to be free of this burden.
+				$His womb is becoming quite full causing her some @@.mediumorchid;discomfort@@. $He is eager to be free of this burden.
 				<<set $slaves[$i].devotion -= 2>>
 			<<else>>
 				<<if canWalk($slaves[$i])>>
-				Her big belly on her small body keeps getting in her way, @@.mediumorchid;annoying her.@@
+				$His big belly on her small body keeps getting in her way, @@.mediumorchid;annoying her.@@
 				<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 			<</if>>
 		<<elseif ($slaves[$i].physicalAge < 13)>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				Her bloated womb is beginning to get too crowded, @@.mediumorchid;worrying@@ her. She moans with @@.red;discomfort@@ with each movement within her.
+				$His bloated womb is beginning to get too crowded, @@.mediumorchid;worrying@@ $him. $He moans with @@.red;discomfort@@ with each movement within $him.
 				<<set $slaves[$i].devotion -= 2>>
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					Her slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
 					<<set $slaves[$i].devotion -= 1>>
  				<<else>>
 					<<set $slaves[$i].devotion -= 2>>
@@ -7000,19 +7000,19 @@
 			<<elseif ($slaves[$i].pregType >= 10)>>
 				<<if ($slaves[$i].muscles <= 30)>>
 				<<if canWalk($slaves[$i])>>
-					Her belly is getting heavy and starting to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to her.
+					$His belly is getting heavy and starting to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to $him.
 					<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				Her swelling womb is @@.mediumorchid; worrying@@ her.
+				$His swelling womb is @@.mediumorchid; worrying@@ $him.
 				<<set $slaves[$i].devotion -= 2>>
 			<<elseif ($slaves[$i].pregType >= 10)>>
 				<<if ($slaves[$i].muscles <= 30)>>
 				<<if canWalk($slaves[$i])>>
-					Her belly is getting heavy and starting to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to her.
+					$His belly is getting heavy and starting to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to $him.
 					<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 				<</if>>
@@ -7039,20 +7039,20 @@
 		<<if ($slaves[$i].boobs > 20000)>>
 			<<if $boobAccessibility == 1>>
 				<<if ($slaves[$i].devotion > 20)>>
-					She's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with gigantic boobs.
+					$He's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with gigantic boobs.
 					<<set $slaves[$i].trust += 1>>
 				<</if>>
 			<<else>>
-				Her gigantic boobs make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $ballsAccessibility == 1>>she has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>she barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
+				$His gigantic boobs make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $ballsAccessibility == 1>>$he has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					Every little inconvenience just feeds her breast growth obsession, so she's more bothered that they aren't an even bigger problem for her daily life.
+					Every little inconvenience just feeds her breast growth obsession, so $he's more bothered that they aren't an even bigger problem for her daily life.
 				<<elseif ($slaves[$i].devotion > 50)>>
-					Since she's devoted to you, she just does her best.
+					Since $he's devoted to you, $he just does her best.
 				<<elseif ($slaves[$i].trust > -20)>>
-					This torment makes her @@.gold;less trusting@@ of your willingness to look after her.
+					This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
 					<<set $slaves[$i].trust -= 2>>
 				<<else>>
-					She already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+					$He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
 					<<set $slaves[$i].devotion -= 2>>
 				<</if>>
 			<</if>>
@@ -7062,13 +7062,13 @@
 
 <<if (($slaves[$i].inducedNCS == 0) && ($slaves[$i].lactation > 1))>>
 <<if ($slaves[$i].boobs < 800)>>
-	The powerful lactation drugs $pronoun's implanted with @@.lime;rapidly swell $possessive small breasts.@@
+	The powerful lactation drugs $he's implanted with @@.lime;rapidly swell $his small breasts.@@
 	<<set $slaves[$i].boobs += 100>>
 <<elseif ($slaves[$i].boobs < 1600)>>
-	The powerful lactation drugs $pronoun's implanted with @@.lime;slowly swell $possessive big breasts.@@
+	The powerful lactation drugs $he's implanted with @@.lime;slowly swell $his big breasts.@@
 	<<set $slaves[$i].boobs += 50>>
 <<elseif ($slaves[$i].boobs < 3000)>>
-	The powerful lactation drugs $pronoun's implanted with @@.lime;gradually swell $possessive enormous breasts.@@
+	The powerful lactation drugs $he's implanted with @@.lime;gradually swell $his enormous breasts.@@
 	<<set $slaves[$i].boobs += 25>>
 <</if>>
 <</if>>
@@ -7076,10 +7076,10 @@
 <<if ($slaves[$i].boobs - ($slaves[$i].muscles*30) > 5000) && ($slaves[$i].boobs <= 8000) && ($slaves[$i].boobsImplant < 500) && ($slaves[$i].breastMesh != 1)>>
 	<<if $slaves[$i].physicalAge < random(10,200)>>
 	<<if $slaves[$i].boobShape == "perky">>
-		$possessiveCap @@.orange;breasts lose their perkiness@@ under their own titanic weight. Their nipples now point forward and $possessive boobs rest more heavily against the chest beneath them.
+		$His @@.orange;breasts lose their perkiness@@ under their own titanic weight. Their nipples now point forward and $his boobs rest more heavily against the chest beneath them.
 		<<set $slaves[$i].boobShape = "torpedo-shaped">>
 	<<elseif $slaves[$i].boobShape != "saggy">>
-		$possessiveCap @@.orange;breasts become saggy@@ under their own titanic weight. Their nipples now point downward and $possessive bosom sways pendulously with $possessive every movement.
+		$His @@.orange;breasts become saggy@@ under their own titanic weight. Their nipples now point downward and $his bosom sways pendulously with $his every movement.
 		<<set $slaves[$i].boobShape = "saggy">>
 	<</if>>
 	<</if>>
@@ -7087,7 +7087,7 @@
 
 /* boobs too small for fuckable nipples */
 <<if $slaves[$i].nipples == "fuckable" && ($slaves[$i].boobs-$slaves[$i].boobsImplant < 500)>>
-	Without the necessary flesh to support them, $possessive fuckable nipples pop out and stay out. They have @@.orange;reverted to being huge.@@
+	Without the necessary flesh to support them, $his fuckable nipples pop out and stay out. They have @@.orange;reverted to being huge.@@
 	<<set $slaves[$i].nipples = "huge">>
 <</if>>
 
@@ -7096,13 +7096,13 @@
 <<if $slaves[$i].fetish != "mindbroken">>
 <<if canWalk($slaves[$i])>>
 <<if $slaves[$i].bellyImplant >= 600000>>
-	Her belly implant takes up most of her body cavity, is tremendously heavy, and protrudes massively from her abdomen. Between constantly bumping things and the discomfort of being so extremely full, her belly is @@.mediumorchid;really frustrating@@ to her.
+	$His belly implant takes up most of her body cavity, is tremendously heavy, and protrudes massively from her abdomen. Between constantly bumping things and the discomfort of being so extremely full, her belly is @@.mediumorchid;really frustrating@@ to $him.
 	<<set $slaves[$i].devotion -= 3>>
 <<elseif $slaves[$i].bellyImplant >= 150000>>
-	Her belly implant takes up a good deal of her body cavity, is extremely heavy, and protrudes greatly from her abdomen. Between constantly bumping things and the discomfort of being so very full, her belly is @@.mediumorchid;very annoying@@ to her.
+	$His belly implant takes up a good deal of her body cavity, is extremely heavy, and protrudes greatly from her abdomen. Between constantly bumping things and the discomfort of being so very full, her belly is @@.mediumorchid;very annoying@@ to $him.
 	<<set $slaves[$i].devotion -= 2>>
 <<elseif $slaves[$i].bellyImplant >= 10000>>
-	Her belly implant is quite heavy and tends to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to her.
+	$His belly implant is quite heavy and tends to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to $him.
 	<<set $slaves[$i].devotion -= 1>>
 <</if>>
 <</if>>
@@ -7111,7 +7111,7 @@
 
 <<if $slaves[$i].cervixImplant == 1>>
 	<<if ($slaves[$i].bellyImplant >= 800000) || (($slaves[$i].bellyImplant > 130000) && ($arcologies[0].FSTransformationFetishistResearch != 1))>>
-		$possessiveCap cervix implant detected that the volume of filler in $slaves[$i].slaveName's belly reached $possessiveCap implant's threshold, and @@.orange;opens backflow@@ several times throughout week.
+		$His cervix implant detected that the volume of filler in $slaves[$i].slaveName's belly reached $His implant's threshold, and @@.orange;opens backflow@@ several times throughout week.
 		<<if $arcologies[0].FSTransformationFetishistResearch != 1>>
 			<<set $slaves[$i].bellyImplant = 120000>>
 		<<else>>
@@ -7131,22 +7131,22 @@
 	<</if>>
 	<<set $slaves[$i].chem += 2>>
 	<<if $slaves[$i].weight lt -2>>
-		She is @@.mediumorchid;gravely concerned@@ over her withered body and @@.gold;terrified@@ of what will happen next.
+		$He is @@.mediumorchid;gravely concerned@@ over her withered body and @@.gold;terrified@@ of what will happen next.
 	  	<<set $slaves[$i].devotion -= 4.0>>
 		<<set $slaves[$i].trust -= 4.0>>
 	<<else>>
-		She is @@.mediumorchid;concerned@@ by her withering body and @@.gold;fears@@ her future.
+		$He is @@.mediumorchid;concerned@@ by her withering body and @@.gold;fears@@ her future.
 	  	<<set $slaves[$i].devotion -= 1.0>>
 		<<set $slaves[$i].trust -= 1.0>>
 	<</if>>
 	<<if $slaves[$i].physicalAge lt 12>>
-	  Her very young body is decimated by it.
+	  $His very young body is decimated by it.
 		<<if random(2,10) gt $slaves[$i].health and $slaves[$i].weight gt -3>>
-		  She has @@.red;lost weight.@@
+		  $He has @@.red;lost weight.@@
 			<<set $slaves[$i].weight -= 2>>
 		<</if>>
 		<<if random(2,10) gt $slaves[$i].health and $slaves[$i].muscles gt 0>>
-		  She has @@.red;lost muscle mass.@@
+		  $He has @@.red;lost muscle mass.@@
 			<<set $slaves[$i].muscles -= 2>>
 		<</if>>
 		<<if random(2,10) gt $slaves[$i].health and $slaves[$i].boobs gt 0>>
@@ -7154,7 +7154,7 @@
 			  With nothing else to draw from, her body @@.red;rapidly consumes her breasts@@.
 				<<set $slaves[$i].boobs -= 5000>>
 			<<else>>
-			  She has @@.red;lost breast tissue@@.
+			  $He has @@.red;lost breast tissue@@.
 				<<set $slaves[$i].boobs -= 300>>
 			<</if>>
 			<<if $slaves[$i].boobs lt 0>>
@@ -7166,7 +7166,7 @@
 			  With nothing else to draw from, her body @@.red;rapidly consumes her ass fat@@.
 				<<set $slaves[$i].butt -= 4>>
 			<<else>>
-			  She has @@.red;lost some ass fat@@.
+			  $He has @@.red;lost some ass fat@@.
 				<<set $slaves[$i].butt -= 3>>
 			<</if>>
 			<<if $slaves[$i].butt lt 0>>
@@ -7174,13 +7174,13 @@
 			<</if>>
 		<</if>>
 	<<elseif $slaves[$i].physicalAge lt 18>>
-	  Her young body suffers greatly from it.
+	  $His young body suffers greatly from it.
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].weight gt -3>>
-		  She has @@.red;lost weight@@.
+		  $He has @@.red;lost weight@@.
 			<<set $slaves[$i].weight -= 2>>
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].muscles gt 0>>
-		  She has @@.red;lost muscle mass@@.
+		  $He has @@.red;lost muscle mass@@.
 			<<set $slaves[$i].muscles -= 2>>
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].boobs gt 0>>
@@ -7188,7 +7188,7 @@
 			  With nothing else to draw from, her body @@.red;rapidly consumes her breasts@@.
 				<<set $slaves[$i].boobs -= 2000>>
 			<<else>>
-			  She has @@.red;lost breast tissue@@.
+			  $He has @@.red;lost breast tissue@@.
 				<<set $slaves[$i].boobs -= 200>>
 			<</if>>
 			<<if $slaves[$i].boobs lt 0>>
@@ -7200,7 +7200,7 @@
 			  With nothing else to draw from, her body @@.red;rapidly consumes her ass fat@@.
 				<<set $slaves[$i].butt -= 3>>
 			<<else>>
-			  She has @@.red;lost some ass fat@@.
+			  $He has @@.red;lost some ass fat@@.
 				<<set $slaves[$i].butt -= 2>>
 			<</if>>
 			<<if $slaves[$i].butt lt 0>>
@@ -7208,13 +7208,13 @@
 			<</if>>
 		<</if>>
 	<<elseif $slaves[$i].physicalAge gt 32>>
-	  Her mature body handles it well.
+	  $His mature body handles it well.
 		<<if random(1,6) gt $slaves[$i].health and $slaves[$i].weight gt -3>>
-		  She has @@.red;lost weight@@.
+		  $He has @@.red;lost weight@@.
 			<<set $slaves[$i].weight -= 1>>
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].muscles gt 0>>
-		  She has @@.red;lost muscle mass@@.
+		  $He has @@.red;lost muscle mass@@.
 			<<set $slaves[$i].muscles -= 1>>
 		<</if>>
 		<<if random(1,6) gt $slaves[$i].health and $slaves[$i].boobs gt 0>>
@@ -7222,7 +7222,7 @@
 			  With nothing else to draw from, her body @@.red;rapidly consumes her breasts@@.
 				<<set $slaves[$i].boobs -= 1000>>
 			<<else>>
-			  She has @@.red;lost breast tissue@@.
+			  $He has @@.red;lost breast tissue@@.
 				<<set $slaves[$i].boobs -= 50>>
 			<</if>>
 			<<if $slaves[$i].boobs lt 0>>
@@ -7234,7 +7234,7 @@
 			  With nothing else to draw from, her body @@.red;rapidly consumes her ass fat@@.
 				<<set $slaves[$i].butt -= 2>>
 			<<else>>
-			  She has @@.red;lost some ass fat@@.
+			  $He has @@.red;lost some ass fat@@.
 				<<set $slaves[$i].butt -= 1>>
 			<</if>>
 			<<if $slaves[$i].butt lt 0>>
@@ -7243,11 +7243,11 @@
 		<</if>>
 	<<else>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].weight gt -3>>
-		  She has @@.red;lost weight@@.
+		  $He has @@.red;lost weight@@.
 			<<set $slaves[$i].weight -= 1>>
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].muscles gt 0>>
-		  She has @@.red;lost muscle mass@@.
+		  $He has @@.red;lost muscle mass@@.
 			<<set $slaves[$i].muscles -= 1>>
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].boobs gt 0>>
@@ -7255,7 +7255,7 @@
 			  With nothing else to draw from, her body @@.red;rapidly consumes her breasts@@.
 				<<set $slaves[$i].boobs -= 1000>>
 			<<else>>
-			  She has @@.red;lost breast tissue@@.
+			  $He has @@.red;lost breast tissue@@.
 				<<set $slaves[$i].boobs -= 100>>
 			<</if>>
 			<<if $slaves[$i].boobs lt 0>>
@@ -7267,7 +7267,7 @@
 			  With nothing else to draw from, her body @@.red;rapidly consumes her ass fat@@.
 				<<set $slaves[$i].butt -= 2>>
 			<<else>>
-			  She has @@.red;lost some ass fat@@.
+			  $He has @@.red;lost some ass fat@@.
 				<<set $slaves[$i].butt -= 1>>
 			<</if>>
 			<<if $slaves[$i].butt lt 0>>
@@ -7279,40 +7279,40 @@
 <<if $slaves[$i].preg gt 30>>
 	<<if $slaves[$i].amp isnot 1>>
 	<<if $slaves[$i].devotion lt -4 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  When she isn't laboring or performing her duties she can be seen pressing down on her grotesque belly desperately trying to coax the device out of her body.  She is  @@.gold;mortified@@ by her body and @@.mediumorchid;loathes you@@ for doing this to her.
+	  When $he isn't laboring or performing her duties $he can be seen pressing down on her grotesque belly desperately trying to coax the device out of her body.  $He is  @@.gold;mortified@@ by her body and @@.mediumorchid;loathes you@@ for doing this to $him.
 	  	<<set $slaves[$i].devotion -= 4.0>>
 		<<set $slaves[$i].trust -= 4.0>>
 	<<elseif $slaves[$i].devotion lt 5 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  She runs her hands across her bulging belly, feeling the life within threatening to burst her.  She is  @@.gold;disgusted@@ by her body and @@.mediumorchid;hates you@@ for doing this to her.
+	  $He runs her hands across her bulging belly, feeling the life within threatening to burst $him.  $He is  @@.gold;disgusted@@ by her body and @@.mediumorchid;hates you@@ for doing this to $him.
 	  	<<set $slaves[$i].devotion -= 3.0>>
 		<<set $slaves[$i].trust -= 3.0>>
 	<<elseif $slaves[$i].devotion lt 20 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  She runs her hands across her bulging belly, feeling the life within growing larger.  She is  @@.gold;concerned@@ by her body and @@.mediumorchid;is uncertain@@ on her situation.
+	  $He runs her hands across her bulging belly, feeling the life within growing larger.  $He is  @@.gold;concerned@@ by her body and @@.mediumorchid;is uncertain@@ on her situation.
 	  	<<set $slaves[$i].devotion -= 2.0>>
 		<<set $slaves[$i].trust -= 2.0>>
 	<</if>>
 	<<else>>
 	<<if $slaves[$i].devotion lt -4 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  When she isn't laboring or performing her duties she can be seen desperately thrashing trying to coax the device out of her body.  She is  @@.gold;mortified@@ by her body and @@.mediumorchid;loathes you@@ for doing this to her.
+	  When $he isn't laboring or performing her duties $he can be seen desperately thrashing trying to coax the device out of her body.  $He is  @@.gold;mortified@@ by her body and @@.mediumorchid;loathes you@@ for doing this to $him.
 	  	<<set $slaves[$i].devotion -= 4.0>>
 		<<set $slaves[$i].trust -= 4.0>>
 	<<elseif $slaves[$i].devotion lt 5 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  She attempts to shift beneath her bulging belly, feeling the life within threatening to burst her.  She is  @@.gold;disgusted@@ by her body and @@.mediumorchid;hates you@@ for doing this to her.
+	  $He attempts to shift beneath her bulging belly, feeling the life within threatening to burst $him.  $He is  @@.gold;disgusted@@ by her body and @@.mediumorchid;hates you@@ for doing this to $him.
 	  	<<set $slaves[$i].devotion -= 3.0>>
 		<<set $slaves[$i].trust -= 3.0>>
 	<<elseif $slaves[$i].devotion lt 20 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  She pushes her bulging belly out, feeling the life within growing larger.  She is  @@.gold;concerned@@ by her body and @@.mediumorchid;is uncertain@@ on her situation.
+	  $He pushes her bulging belly out, feeling the life within growing larger.  $He is  @@.gold;concerned@@ by her body and @@.mediumorchid;is uncertain@@ on her situation.
 	  	<<set $slaves[$i].devotion -= 2.0>>
 		<<set $slaves[$i].trust -= 2.0>>
 	<</if>>
 	<</if>>
 	<<if ($slaves[$i].births gt 100) and ($slaves[$i].devotion lt 0) and ($slaves[$i].trust lt 0) and ($slaves[$i].fetish isnot "mindbroken")>>
-	  Being constantly pregnant and giving birth to over a hundred offspring has taken its toll on $slaves[$i].slaveName's mind.  Feeling that she is nothing more than a breeder has destroyed any hopes that she had. $slaves[$i].slaveName has become completely broken, leaving her nothing more than a baby filled sack.
+	  Being constantly pregnant and giving birth to over a hundred offspring has taken its toll on $slaves[$i].slaveName's mind.  Feeling that $he is nothing more than a breeder has destroyed any hopes that $he had. $slaves[$i].slaveName has become completely broken, leaving her nothing more than a baby filled sack.
 	  <<set $slaves[$i].fetish = "mindbroken">>
 	  <<set $slaves[$i].sexualFlaw = "none">>
 	  <<set $slaves[$i].behavioralFlaw = "none">>
 	<<elseif ($slaves[$i].weight lt -2) and ($slaves[$i].boobs lt 100) and ($slaves[$i].butt lt 1) and ($slaves[$i].muscles lt 1) and ($slaves[$i].fetish isnot "mindbroken")>>
-	  Watching her body sacrifice itself for a pregnancy she hates takes its toll on $slaves[$i].slaveName's mind.  Feeling that she is nothing more than a host for her brood has destroyed any hopes she had left.  $slaves[$i].slaveName has become completely broken.
+	  Watching her body sacrifice itself for a pregnancy $he hates takes its toll on $slaves[$i].slaveName's mind.  Feeling that $he is nothing more than a host for her brood has destroyed any hopes $he had left.  $slaves[$i].slaveName has become completely broken.
 	  <<set $slaves[$i].fetish = "mindbroken">>
 	  <<set $slaves[$i].sexualFlaw = "none">>
 	  <<set $slaves[$i].behavioralFlaw = "none">>
@@ -7327,7 +7327,7 @@
 	<</if>>
 <</if>>
 <<else>>
-	Her high-calorie and nutrient filled diet allows her body to handle its demanding pregnancy, though being stuffed only compounds the pressure within her abdomen. She @@.mediumorchid;resents@@ needing to have her stomach bloated with food at all times, but @@.mediumaquamarine;appreciates@@ the effort you are putting into keeping her healthy.
+	$His high-calorie and nutrient filled diet allows her body to handle its demanding pregnancy, though being stuffed only compounds the pressure within her abdomen. $He @@.mediumorchid;resents@@ needing to have her stomach bloated with food at all times, but @@.mediumaquamarine;appreciates@@ the effort you are putting into keeping her healthy.
 	<<set $slaves[$i].devotion -= 0.2>>
 	<<set $slaves[$i].trust += 0.3>>
 <</if>>
@@ -7342,18 +7342,18 @@
 <<if ($slaves[$i].bellyPreg >= 100000)>>
   <<if $pregAccessibility == 1>>
     <<if ($slaves[$i].devotion > 20)>>
-      She's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to heavily pregnant life.
+      $He's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to heavily pregnant life.
       <<set $slaves[$i].trust += 1>>
 	<</if>>
   <<else>>
-    Her giant pregnancy makes life a struggle: <<if $buttAccessibility == 1 || $boobAccessibility == 1 || $ballsAccessibility == 1>>she has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>she barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
+    $His giant pregnancy makes life a struggle: <<if $buttAccessibility == 1 || $boobAccessibility == 1 || $ballsAccessibility == 1>>$he has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
     <<if ($slaves[$i].devotion > 50)>>
-      Since she's devoted to you, she just does her best.
+      Since $he's devoted to you, $he just does her best.
     <<elseif ($slaves[$i].trust > -20)>>
-      This torment makes her @@.gold;less trusting@@ of your willingness to look after her.
+      This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
       <<set $slaves[$i].trust -= 2>>
     <<else>>
-      She already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+      $He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
      <<set $slaves[$i].devotion -= 2>>
 	<</if>>
   <</if>>
@@ -7361,18 +7361,18 @@
 <<if $slaves[$i].bellyImplant >= 100000>>
   <<if $pregAccessibility == 1>>
     <<if ($slaves[$i].devotion > 20)>>
-      She's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with an enormous belly.
+      $He's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with an enormous belly.
       <<set $slaves[$i].trust += 1>>
 	<</if>>
   <<else>>
-    Her giant belly makes life a struggle: <<if $buttAccessibility == 1 || $boobAccessibility == 1 || $ballsAccessibility == 1>>she has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>she barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
+    $His giant belly makes life a struggle: <<if $buttAccessibility == 1 || $boobAccessibility == 1 || $ballsAccessibility == 1>>$he has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
     <<if ($slaves[$i].devotion > 40)>>
-      Since she's devoted to you, she just does her best.
+      Since $he's devoted to you, $he just does her best.
     <<elseif ($slaves[$i].trust > -20)>>
-      This torment makes her @@.gold;less trusting@@ of your willingness to look after her.
+      This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
       <<set $slaves[$i].trust -= 2>>
     <<else>>
-      She already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+      $He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
       <<set $slaves[$i].devotion -= 2>>
 	<</if>>
   <</if>>
@@ -7381,25 +7381,25 @@
 <<if canWalk($slaves[$i])>>
         <<if ($slaves[$i].dick >= 30)>>
                 <<if ($slaves[$i].devotion <= 50)>>
-                        Her titanic penis rests upon the floor even when she stands. She finds moving @@.mediumorchid;terrifying@@ since she drags her cock along.
+                        $His titanic penis rests upon the floor even when $he stands. $He finds moving @@.mediumorchid;terrifying@@ since $he drags her cock along.
                         <<set $slaves[$i].devotion -= 3>>
                 <<else>>
-                        Her titanic penis rests upon the floor even when she stands. She pays close attention as she moves to keep it pristine for you.
+                        $His titanic penis rests upon the floor even when $he stands. $He pays close attention as $he moves to keep it pristine for you.
                 <</if>>
         <<elseif ($slaves[$i].dick > 20)>>
                 <<if ($slaves[$i].devotion <= 50)>>
-                        Her enormous cock is @@.mediumorchid;very uncomfortable@@ for her to drag around.
+                        $His enormous cock is @@.mediumorchid;very uncomfortable@@ for her to drag around.
                         <<set $slaves[$i].devotion -= 2>>
                 <<else>>
-                        Her enormous cock is uncomfortable for her to move with, but she bears its weight out of devotion to you.
+                        $His enormous cock is uncomfortable for her to move with, but $he bears its weight out of devotion to you.
                 <</if>>
         <<elseif ($slaves[$i].dick >= 10)>>
                 <<if canWalk($slaves[$i])>>
                         <<if ($slaves[$i].devotion <= 50)>>
-                                Her giant dick is @@.mediumorchid;uncomfortable@@ for her body.
+                                $His giant dick is @@.mediumorchid;uncomfortable@@ for her body.
                                 <<set $slaves[$i].devotion -= 1>>
                         <<else>>
-                                She can't seem to get comfortable with her giant dick, but she keeps it to herself out of devotion.
+                                $He can't seem to get comfortable with her giant dick, but $he keeps it to herself out of devotion.
                         <</if>>
                 <</if>>
         <</if>>
@@ -7408,18 +7408,18 @@
 <<if ($slaves[$i].dick >= 20)>>
 	<<if $dickAccessibility == 1>>
 		<<if ($slaves[$i].devotion > 20)>>
-			She's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with an enormous dick.
+			$He's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with an enormous dick.
 			<<set $slaves[$i].trust += 1>>
 		<</if>>
 	<<else>>
-		Her giant penis make life a struggle: she has to drag it along as she moves, has trouble fitting into beds and sitting in chairs, and constantly has to make sure to not get her dick caught in doors.
+		$His giant penis make life a struggle: $he has to drag it along as $he moves, has trouble fitting into beds and sitting in chairs, and constantly has to make sure to not get her dick caught in doors.
 		<<if ($slaves[$i].devotion > 50)>>
-			 Since she's devoted to you, she just does her best.
+			 Since $he's devoted to you, $he just does her best.
 		<<elseif ($slaves[$i].trust > -20)>>
-			This torment makes her @@.gold;less trusting@@ of your willingness to look after her.
+			This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
 			<<set $slaves[$i].trust -= 2>>
 		<<else>>
-			She already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+			$He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
@@ -7427,26 +7427,26 @@
 
 <<if canWalk($slaves[$i])>>
 	<<if ($slaves[$i].balls > 90)>>
-		Her titanic balls rest upon the floor even when she stands.
+		$His titanic balls rest upon the floor even when $he stands.
 		<<if ($slaves[$i].devotion <= 50)>>
-			She finds them @@.mediumorchid;annoying@@ to lug around.
+			$He finds them @@.mediumorchid;annoying@@ to lug around.
 			<<set $slaves[$i].devotion -= 1>>
 		<<else>>
-			They are a little annoying at times, but she bears them with pride.
+			They are a little annoying at times, but $he bears them with pride.
 		<</if>>
 	<<elseif ($slaves[$i].balls > 50)>>
 		<<if ($slaves[$i].devotion <= 50)>>
-			Her enormous balls are @@.mediumorchid;very uncomfortable@@ for her to carry.
+			$His enormous balls are @@.mediumorchid;very uncomfortable@@ for her to carry.
 			<<set $slaves[$i].devotion -= 2>>
 		<<else>>
-			She finds her enormous balls a little uncomfortable, but she bears their weight out of devotion to you.
+			$He finds her enormous balls a little uncomfortable, but $he bears their weight out of devotion to you.
 		<</if>>
 	<<elseif ($slaves[$i].balls > 25)>>
 		<<if ($slaves[$i].devotion <= 50)>>
-			Her huge balls are @@.mediumorchid;uncomfortable@@ for her body.
+			$His huge balls are @@.mediumorchid;uncomfortable@@ for her body.
 			<<set $slaves[$i].devotion -= 1>>
 		<<else>>
-			She can't seem to get comfortable with her huge balls, but she keeps it to herself out of devotion.
+			$He can't seem to get comfortable with her huge balls, but $he keeps it to herself out of devotion.
 		<</if>>
 	<</if>>
 <</if>>
@@ -7454,52 +7454,52 @@
 <<if ($slaves[$i].balls > 90)>>
 	<<if $ballsAccessibility == 1>>
 		<<if ($slaves[$i].devotion > 20)>>
-			She's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with enormous testicles.
+			$He's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with enormous testicles.
 			<<set $slaves[$i].trust += 1>>
 		<</if>>
 	<<else>>
-		Her giant balls make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $boobAccessibility == 1>>she has trouble using appliances and furniture, and has to be constantly mindful of things striking her oversensitive testicles, but at least the doors have already been widened for your other slaves<<else>>she barely fits through doors, has trouble using appliances and furniture, and has to be constantly mindful of things striking her oversensitive testicles<</if>>.
+		$His giant balls make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $boobAccessibility == 1>>$he has trouble using appliances and furniture, and has to be constantly mindful of things striking her oversensitive testicles, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and has to be constantly mindful of things striking her oversensitive testicles<</if>>.
 		<<if ($slaves[$i].devotion > 50)>>
-			Since she's devoted to you, she just does her best.
+			Since $he's devoted to you, $he just does her best.
 		<<elseif ($slaves[$i].trust > -20)>>
-			This torment makes her @@.gold;less trusting@@ of your willingness to look after her.
+			This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
 			<<set $slaves[$i].trust -= 2>>
 		<<else>>
-			She already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+			$He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 <</if>>
 
 <<if ($slaves[$i].hips > 2)>>
-	Her inhumanly wide hips make walking difficult. She can barely move without swinging them side to side seductively, and she keeps bumping things with them.
+	$His inhumanly wide hips make walking difficult. $He can barely move without swinging them side to side seductively, and $he keeps bumping things with them.
 	<<if ($slaves[$i].devotion > 50)>>
-		Since she's devoted to you, she embraces her wide body and does everything she can to show it off for you.
+		Since $he's devoted to you, $he embraces her wide body and does everything $he can to show it off for you.
 	<<elseif ($slaves[$i].devotion > -20)>>
 		This gait makes her feel like a huge whore, @@.hotpink;increasing her submissiveness.@@
 		<<set $slaves[$i].devotion += 2>>
 	<<else>>
-		She hates that she is forced to bear such freakish hips and @@.mediumorchid;blames you@@ for every trip, bumped object, and hip checked slave.
+		$He hates that $he is forced to bear such freakish hips and @@.mediumorchid;blames you@@ for every trip, bumped object, and hip checked slave.
 		<<set $slaves[$i].devotion -= 3>>
 	<</if>>
 <</if>>
 
 <<if canWalk($slaves[$i])>>
 <<if ($slaves[$i].butt > 15)>>
-	Her butt is a massive burden to her. She dreads walking down narrow hallways and getting dressed in the morning.
+	$His butt is a massive burden to $him. $He dreads walking down narrow hallways and getting dressed in the morning.
 	<<if ($slaves[$i].devotion <= 50)>>
-		She lives a life of @@.mediumorchid;annoyance@@ over knocking things over, bumping people, and getting stuck in chairs with her godly ass.
+		$He lives a life of @@.mediumorchid;annoyance@@ over knocking things over, bumping people, and getting stuck in chairs with her godly ass.
 		<<set $slaves[$i].devotion -= 2>>
 	<<else>>
-		She lives a life of minor annoyances knocking things over, bumping people and getting stuck in chairs with her godly ass, but bears them with pride out of devotion.
+		$He lives a life of minor annoyances knocking things over, bumping people and getting stuck in chairs with her godly ass, but bears them with pride out of devotion.
 	<</if>>
 <<elseif ($slaves[$i].butt > 10)>>
-	Her butt has gotten absolutely enormous.
+	$His butt has gotten absolutely enormous.
 	<<if ($slaves[$i].devotion <= 50)>>
-		She finds it a  @@.mediumorchid;massive nuisance@@ to live with.
+		$He finds it a  @@.mediumorchid;massive nuisance@@ to live with.
 		<<set $slaves[$i].devotion -= 1>>
 	<<else>>
-		She finds it a massive nuisance to live with, but does anyway out of devotion to you.
+		$He finds it a massive nuisance to live with, but does anyway out of devotion to you.
 	<</if>>
 <</if>>
 <</if>>
@@ -7507,18 +7507,18 @@
 <<if ($slaves[$i].butt > 15)>>
 	<<if $buttAccessibility == 1>>
 		<<if ($slaves[$i].devotion > 20)>>
-			She's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with way too much excess junk in the trunk.
+			$He's @@.mediumaquamarine;thankful@@ to you for providing living spaces adapted to life with way too much excess junk in the trunk.
 			<<set $slaves[$i].trust += 1>>
 		<</if>>
 	<<else>>
-		Her giant butt make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $boobAccessibility == 1>>she has trouble using furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>she barely fits through doors, has trouble using furniture, and constantly bumps into things<</if>>.
+		$His giant butt make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $boobAccessibility == 1>>$he has trouble using furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using furniture, and constantly bumps into things<</if>>.
 		<<if ($slaves[$i].devotion > 50)>>
-			Since she's devoted to you, she just does her best.
+			Since $he's devoted to you, $he just does her best.
 		<<elseif ($slaves[$i].trust > -20)>>
-			This torment makes her @@.gold;less trusting@@ of your willingness to look after her.
+			This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
 			<<set $slaves[$i].trust -= 1>>
 		<<else>>
-			She already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+			$He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
 			<<set $slaves[$i].devotion -= 2>>
 		<</if>>
 	<</if>>
@@ -7534,31 +7534,31 @@
 	<<set $slaves[$i].health -= 10>>
 	<<switch _effect>>
 	<<case 1>>
-		A routine medical scan detects a small, benign growth in one of $possessive breasts. The autosurgery removes it with only @@.red;minor health consequences,@@
+		A routine medical scan detects a small, benign growth in one of $his breasts. The autosurgery removes it with only @@.red;minor health consequences,@@
 	<<case 2>>
-		A routine medical scan detects a small, benign growth <<if ($slaves[$i].ovaries == 1)>>on one of $possessive ovaries<<elseif ($slaves[$i].balls > 0)>>in one of $possessive testicles<<else>>in $possessive abdomen<</if>>. The autosurgery removes it with only @@.red;minor health consequences,@@
+		A routine medical scan detects a small, benign growth <<if ($slaves[$i].ovaries == 1)>>on one of $his ovaries<<elseif ($slaves[$i].balls > 0)>>in one of $his testicles<<else>>in $his abdomen<</if>>. The autosurgery removes it with only @@.red;minor health consequences,@@
 	<<case 3>>
-		$pronounCap experiences a troublingly severe panic attack one morning. It passes with @@.red;a minor dose of medication,@@
+		$He experiences a troublingly severe panic attack one morning. It passes with @@.red;a minor dose of medication,@@
 	<<case 4>>
-		$pronounCap suffers a series of severe headaches. they pass with @@.red;a minor dose of medication,@@
+		$He suffers a series of severe headaches. they pass with @@.red;a minor dose of medication,@@
 	<<case 5>>
-		$pronounCap experiences recurrent nausea this week. It passes with @@.red;a minor dose of medication,@@
+		$He experiences recurrent nausea this week. It passes with @@.red;a minor dose of medication,@@
 	<<case 6>>
-		$pronounCap experiences troublingly severe night terrors several times this week. @@.red;A minor dose of medication@@ resolves them,
+		$He experiences troublingly severe night terrors several times this week. @@.red;A minor dose of medication@@ resolves them,
 	<<case 7>>
-		A routine medical scan detects a minor arrhythmia in $possessive heart. @@.red;A minor dose of medication@@ resolves it,
+		A routine medical scan detects a minor arrhythmia in $his heart. @@.red;A minor dose of medication@@ resolves it,
 	<<case 8>>
-		A trivial injury turns serious when $possessive blood takes an unnaturally long time to clot. The autosurgery patches $possessive up with only @@.red;minor health consequences,@@
+		A trivial injury turns serious when $his blood takes an unnaturally long time to clot. The autosurgery patches $him up with only @@.red;minor health consequences,@@
 	<<case 9>>
-		An unsightly new vein becomes visible, just under $possessive $slaves[$i].skin skin. The autosurgery removes it with only @@.red;minor health consequences,@@
+		An unsightly new vein becomes visible, just under $his $slaves[$i].skin skin. The autosurgery removes it with only @@.red;minor health consequences,@@
 	<<default>>
-		$pronounCap seems @@.red;slightly ill@@ this week. $pronounCap recovers quickly,
+		$He seems @@.red;slightly ill@@ this week. $He recovers quickly,
 	<</switch>>
-	but it's likely this is a side effect of the heavy drug treatments $pronoun's received.
+	but it's likely this is a side effect of the heavy drug treatments $he's received.
 	<<if $arcologies[0].FSBodyPuristLaw == 1>>
-		Your society's focus on preventing things like this is starting to have an effect, but long term damage like that $pronoun has suffered takes time to resolve itself.
+		Your society's focus on preventing things like this is starting to have an effect, but long term damage like that $he has suffered takes time to resolve itself.
 	<<elseif $healthyDrugsUpgrade == 1>>
-		Your effort to provide drug treatments free of negative side effects is starting to show results, but long term damage like that $pronoun has suffered takes time to resolve itself.
+		Your effort to provide drug treatments free of negative side effects is starting to show results, but long term damage like that $he has suffered takes time to resolve itself.
 	<</if>>
 <</if>>
 <</if>>
@@ -7567,30 +7567,30 @@
 <<if $slaves[$i].weight >= 100>>
 	<<if $slaves[$i].weight > 190>>
 		<<if $slaves[$i].curatives != 1>>
-			$possessiveCap extreme obesity @@.red;directly affects@@ $possessive health.
+			$His extreme obesity @@.red;directly affects@@ $his health.
 			<<set $slaves[$i].health -= 2>>
 		<</if>>
 		<<if random(1,200) < 5>>
-			$pronounCap experienced @@.red;severe@@ health complications due to $possessive weight this week. After extensive surgery, $possessive health was stabilized, though $possessive survival is not assured.
+			$He experienced @@.red;severe@@ health complications due to $his weight this week. After extensive surgery, $his health was stabilized, though $his survival is not assured.
 			<<set $slaves[$i].health -= 80>>
 		<</if>>
 	<<elseif $slaves[$i].weight > 160>>
 		<<if $slaves[$i].curatives != 1>>
-			$possessiveCap obesity @@.red;directly affects@@ $possessive health.
+			$His obesity @@.red;directly affects@@ $his health.
 			<<set $slaves[$i].health-->>
 		<</if>>
 		<<if random(1,200) < 5>>
-			$pronounCap experienced @@.red;severe@@ health complications due to $possessive weight this week. After extensive surgery, $possessive health was stabilized.
+			$He experienced @@.red;severe@@ health complications due to $his weight this week. After extensive surgery, $his health was stabilized.
 			<<set $slaves[$i].health -= 40>>
 		<</if>>
 	<<elseif $slaves[$i].weight > 130>>
 		<<if random(1,200) < 5>>
-			$pronounCap experienced @@.red;severe@@ health complications due to $possessive weight this week. After some rest, $pronoun recovered.
+			$He experienced @@.red;severe@@ health complications due to $his weight this week. After some rest, $he recovered.
 			<<set $slaves[$i].health -= 20>>
 		<</if>>
 	<<elseif $slaves[$i].weight > 95>>
 		<<if random(1,200) < 5>>
-			$pronounCap experienced @@.red;minor@@ health complications due to $possessive weight this week. After some rest, $pronoun recovered.
+			$He experienced @@.red;minor@@ health complications due to $his weight this week. After some rest, $he recovered.
 			<<set $slaves[$i].health -= 5>>
 		<</if>>
 	<</if>>
@@ -7627,31 +7627,31 @@
 			<<set $slaves[$i].accent -= 1>>
 			<<if $slaves[$i].speechRules == "language lessons">><<set $slaves[$i].speechRules = "accent elimination">><</if>>
 			<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>>
-				$pronounCap has managed to pick up enough $language that @@.green;$pronoun could now barely get $possessive point across.@@ If $pronoun were able to talk, that is.
+				$He has managed to pick up enough $language that @@.green;$he could now barely get $his point across.@@ If $he were able to talk, that is.
 			<<else>>
-				$pronounCap has managed to pick up enough $language that @@.green;$pronoun can now barely get $possessive point across.@@ $possessiveCap accent is horrible, but it's a start.
+				$He has managed to pick up enough $language that @@.green;$he can now barely get $his point across.@@ $His accent is horrible, but it's a start.
 			<</if>>
 		<</if>>
 	<<elseif ($slaves[$i].accent >= 3)>>
 		<<if ($week - $slaves[$i].weekAcquired) > _minweeks>>
 			<<set $slaves[$i].accent -= 1>>
 			<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>>
-				$pronounCap has managed to pick up enough $language that @@.green;$pronoun's now able to understand most of what $pronoun hears.@@
+				$He has managed to pick up enough $language that @@.green;$he's now able to understand most of what $he hears.@@
 			<<else>>
-				$pronounCap has managed to pick up enough $language that @@.green;$pronoun's now reasonably fluent in the language.@@ $possessiveCap accent is quite heavy, but $pronoun can make <<print $object>>self understood.
+				$He has managed to pick up enough $language that @@.green;$he's now reasonably fluent in the language.@@ $His accent is quite heavy, but $he can make <<print $him>>self understood.
 			<</if>>
 		<</if>>
 	<<elseif canTalk($slaves[$i])>>
 		<<if ($slaves[$i].accent == 2)>>
 			<<if ($week - $slaves[$i].weekAcquired) > (5 + _minweeks)>>
 				<<set $slaves[$i].accent -= 1>>
-				$pronounCap has heard and spoken a great deal of $language as your slave. @@.green;$possessiveCap accent has diminished to a pleasant exoticism.@@
+				$He has heard and spoken a great deal of $language as your slave. @@.green;$His accent has diminished to a pleasant exoticism.@@
 			<</if>>
 		<<elseif ($slaves[$i].accent == 1) && ($slaves[$i].speechRules == "accent elimination")>>
 			<<if ($week - $slaves[$i].weekAcquired) > (10 + _minweeks)>>
 
 				<<set $slaves[$i].accent -= 1>>
-				$pronounCap does her best to speak proper, unaccented $language, as encouraged by the rules. @@.green;$possessiveCap accent has diminished to imperceptibility.@@
+				$He does her best to speak proper, unaccented $language, as encouraged by the rules. @@.green;$His accent has diminished to imperceptibility.@@
 			<</if>>
 		<</if>>
 	<</if>>
@@ -7668,16 +7668,16 @@
 <<if $slaves[$i].pornFameSpending > 0>>
 	<<set _oldFame = $slaves[$i].pornFame>>
 	<<if ($slaves[$i].pornFame < 35) && ($slaves[$i].prestige > 1)>>
-		Interest in porn of $object is very high, since $pronoun's already quite prestigious.
+		Interest in porn of $him is very high, since $he's already quite prestigious.
                 <<set $slaves[$i].pornFame += 1*$HackingSkillMultiplier>>
 	<<elseif ($slaves[$i].pornFame < 10) && ($slaves[$i].prestige > 0)>>
-		Interest in porn of $object is high, since $pronoun's already prestigious.
+		Interest in porn of $him is high, since $he's already prestigious.
                 <<set $slaves[$i].pornFame += 1*$HackingSkillMultiplier>>
 	<</if>>
 	<<set $slaves[$i].pornFame += (($slaves[$i].pornFameSpending/1000)/$HackingSkillMultiplier)>>
 	<<if ($slaves[$i].prestige < 3) && ($slaves[$i].pornFame >= 100) && (_oldFame < 100)>>
 		<<set $slaves[$i].prestige = 3>>
-		@@.green;$pronounCap has become world famous for $possessive career in slave pornography!@@ Millions are now intimately familiar with
+		@@.green;$He has become world famous for $his career in slave pornography!@@ Millions are now intimately familiar with
 		<<if $slaves[$i].fuckdoll > 0>>
 			<<set $slaves[$i].prestigeDesc = "It is world famous for its career in slave pornography. Millions are intimately familiar with the sight of it being used.">>
 			the sight of it being used,
@@ -7687,8 +7687,8 @@
 			the sight of her being raped,
 			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her crying">>
 		<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds she makes when being throatfucked.">>
-			the sounds she makes when being throatfucked,
+			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds $he makes when being throatfucked.">>
+			the sounds $he makes when being throatfucked,
 			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting facefucked">>
 		<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
 			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her screams of anal pain.">>
@@ -7696,7 +7696,7 @@
 			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking a brutal assfuck">>
 		<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
 			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being gagfucked.">>
-			how she struggles when taking a fuck,
+			how $he struggles when taking a fuck,
 			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her screaming and struggling">>
 		<<elseif ($slaves[$i].sexualQuirk == "tease")>>
 			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her lewd striptease.">>
@@ -7728,14 +7728,14 @@
 			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pregnant pussy getting pounded">>
 		<<else>>
 			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being fucked.">>
-			the sight of her being fucked,
+			the sight of $him being fucked,
 			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting fucked">>
 		<</if>>
 		<<set $trinkets.push($desc)>>
-		so it is now extremely prestigious to own $object.
+		so it is now extremely prestigious to own $him.
 	<<elseif ($slaves[$i].prestige < 2) && ($slaves[$i].pornFame >= 35) && (_oldFame < 35)>>
 	<<set $slaves[$i].prestige = 2>>
-	@@.green;$pronounCap has become famous for $possessive recurring role in slave pornography!@@ Her many fans relish
+	@@.green;$He has become famous for $his recurring role in slave pornography!@@ $His many fans relish
 	<<if $slaves[$i].fuckdoll > 0>>
 		<<set $slaves[$i].prestigeDesc = "It is famous for her recurring role in slave pornography. Its many fans relish the sight of it being used.">>
 		the sight of it being used,
@@ -7743,17 +7743,17 @@
 		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being raped.">>
 		the sight of her being raped,
 	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
-		the sounds she makes when being throatfucked,
+		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sounds $he makes when being throatfucked.">>
+		the sounds $he makes when being throatfucked,
 	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
 		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her screams of anal pain.">>
 		her screams of anal pain,
 	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
 		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being gagfucked.">>
-		how she struggles when taking a fuck,
+		how $he struggles when taking a fuck,
 	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
 		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her lewd striptease.">>
-		her lewd striptease,
+		$his lewd striptease,
 	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
 		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her authentic pleasure.">>
 		her authentic pleasure,
@@ -7776,25 +7776,25 @@
 		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being fucked.">>
 		the sight of her being fucked,
 	<</if>>
-	so it is now very prestigious to own $object.
+	so it is now very prestigious to own $him.
 	<<elseif ($slaves[$i].prestige < 1) && ($slaves[$i].pornFame >= 10) && (_oldFame < 10)>>
 	<<set $slaves[$i].prestige = 1>>
-	@@.green;$pronounCap has become well known from slave pornography!@@ Thousands have enjoyed
+	@@.green;$He has become well known from slave pornography!@@ Thousands have enjoyed
 	<<if $slaves[$i].fuckdoll > 0>>
 		<<set $slaves[$i].prestigeDesc = "It is well known from slave pornography. Its many fans relish the sight of it being used.">>
 		the sight of it being used,
 	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
 		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being raped.">>
-		the sight of her being raped,
+		the sight of $him being raped,
 	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
 		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
-		the sounds she makes when being throatfucked,
+		the sounds $he makes when being throatfucked,
 	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
 		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her screams of anal pain.">>
-		her screams of anal pain,
+		$his screams of anal pain,
 	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
 		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being gagfucked.">>
-		how she struggles when taking a fuck,
+		how $he struggles when taking a fuck,
 	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
 		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her lewd striptease.">>
 		her lewd striptease,
@@ -7818,12 +7818,12 @@
 		the sight of her rounded belly and pregnant pussy,
 	<<else>>
 		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being fucked.">>
-		the sight of her being fucked,
+		the sight of $him being fucked,
 	<</if>>
-	so it is now prestigious to own $object.
+	so it is now prestigious to own $him.
 	<</if>>
 	<<if ($slaves[$i].prestige >= 3)>>
-		Further paid publicity cannot increase $possessive fame, so subsidy of porn featuring $object has stopped.
+		Further paid publicity cannot increase $his fame, so subsidy of porn featuring $him has stopped.
 		<<set $slaves[$i].pornFameSpending = 0>>
 	<</if>>
 	<<set $slaves[$i].pornFame = Math.trunc($slaves[$i].pornFame)>>
@@ -7832,15 +7832,15 @@
 
 <<if $seeAge != 0>>
 <<if $slaves[$i].birthWeek >= 51>>
-	$possessiveCap birthday was this week<<if $seeAge == 1>>; $pronoun turned <<print $slaves[$i].physicalAge+1>><</if>>.
+	$His birthday was this week<<if $seeAge == 1>>; $he turned <<print $slaves[$i].physicalAge+1>><</if>>.
 	<<if $slaves[$i].fuckdoll > 0>>
 		It did not know.
 	<<elseif $slaves[$i].devotion > 50>>
-		$pronounCap did not notice.
+		$He did not notice.
 	<<elseif $week-$slaves[$i].weekAcquired > 10>>
-		$pronounCap remembered it only dimly.
+		$He remembered it only dimly.
 	<<else>>
-		$pronounCap remembered it, but no one cared.
+		$He remembered it, but no one cared.
 	<</if>>
 <</if>>
 <<if $retiree == 0>>
@@ -7877,7 +7877,7 @@
 <<if $slaves[$i].breedingMark == 1>>
 	<<if $slaves[$i].preg > 3 || $slaves[$i].pregKnown == 1>>
 		<<if $slaves[$i].pregSource != -1>>
-			$slaves[$i].slaveName's weekly health checkup revealed she is pregnant with an unacceptable child. @@.red;Its life has been terminated, you have been fined <<print cashFormat(100000)>>, and your rep among the Elite has been severely damaged.@@
+			$slaves[$i].slaveName's weekly health checkup revealed $he is pregnant with an unacceptable child. @@.red;Its life has been terminated, you have been fined <<print cashFormat(100000)>>, and your rep among the Elite has been severely damaged.@@
 			<<set $slaves[$i].preg = 0>>
 			<<set $slaves[$i].pregType = 0>>
 			<<set $slaves[$i].pregSource = 0>>
diff --git a/src/uncategorized/saWorkAGloryHole.tw b/src/uncategorized/saWorkAGloryHole.tw
index 5ae3a44a6de..79fa56cbe96 100644
--- a/src/uncategorized/saWorkAGloryHole.tw
+++ b/src/uncategorized/saWorkAGloryHole.tw
@@ -36,35 +36,35 @@
 	<<set $FResult += 1>>
 <</if>>
 
-is <<if $slaves[$i].fuckdoll == 0>>restrained in a glory hole<<else>>set out for use<</if>>. $beauty customers (<<print Math.trunc($beauty/7)>> a day) paid <<print cashFormat($FResult)>> to use $possessive holes.
+is <<if $slaves[$i].fuckdoll == 0>>restrained in a glory hole<<else>>set out for use<</if>>. $beauty customers (<<print Math.trunc($beauty/7)>> a day) paid <<print cashFormat($FResult)>> to use $his holes.
 <<set _incomeStats.customers = $beauty>>
 
 <<if ($arcologies[0].FSDegradationist > 0)>>
-	Demand for $possessive holes is strong due to the appetite for degradation rampant in $arcologies[0].name.
+	Demand for $his holes is strong due to the appetite for degradation rampant in $arcologies[0].name.
 <</if>>
 
 <<if ($slaves[$i].curatives > 0) || $slaves[$i].inflationType == "curative">>
-	The drugs $pronoun's<<if $slaves[$i].inflationType == "curative">> harboring inside $possessive guts<<else>> on<</if>> protect $possessive health from the stress of being used as a sexual appliance.
+	The drugs $he's<<if $slaves[$i].inflationType == "curative">> harboring inside $his guts<<else>> on<</if>> protect $his health from the stress of being used as a sexual appliance.
 <<elseif ($slaves[$i].health < -50)>>
-	The stress of being used while very ill @@.red;damaged $possessive health.@@
+	The stress of being used while very ill @@.red;damaged $his health.@@
 	<<set $slaves[$i].health -= 10>>
 <<elseif ($slaves[$i].health < -10)>>
 	<<if (random(1,100) > 10)>>
-		The stress of being used while weak has @@.red;damaged $possessive health.@@
+		The stress of being used while weak has @@.red;damaged $his health.@@
 		<<set $slaves[$i].health -= 10>>
 	<</if>>
 <<elseif ($slaves[$i].vagina == -1)>>
 	<<if (random(1,100) > 70)>>
-		The stress of being used in only two holes has @@.red;damaged $possessive health.@@
+		The stress of being used in only two holes has @@.red;damaged $his health.@@
 		<<set $slaves[$i].health -= 10>>
 	<</if>>
 <<elseif (random(1,100) > 25)>>
-	The stress of being used has @@.red;damaged $possessive health.@@
+	The stress of being used has @@.red;damaged $his health.@@
 	<<set $slaves[$i].health -= 10>>
 <</if>>
 
 <<if ($slaves[$i].vagina == 0) && canDoVaginal($slaves[$i])>>
-	A <<if $slaves[$i].fuckdoll == 0>>glory hole <</if>>user takes $possessive virginity. He does not notice or care. @@.lime;$possessiveCap pussy has been broken in@@ in a @@.gold;painful@@ and @@.mediumorchid;degrading@@ way.
+	A <<if $slaves[$i].fuckdoll == 0>>glory hole <</if>>user takes $his virginity. He does not notice or care. @@.lime;$possessiveCap pussy has been broken in@@ in a @@.gold;painful@@ and @@.mediumorchid;degrading@@ way.
 	<<set $slaves[$i].devotion -= 10, $slaves[$i].trust -= 10, $slaves[$i].vagina = 1>>
 <<elseif ($slaves[$i].vagina < 3) && (canDoVaginal($slaves[$i])) && (random(1,100) > ((170-$beauty)+($slaves[$i].vagina*10)))>>
 	@@.lime;$possessiveCap pussy gets stretched out by the use.@@
@@ -72,7 +72,7 @@ is <<if $slaves[$i].fuckdoll == 0>>restrained in a glory hole<<else>>set out for
 <</if>>
 
 <<if ($slaves[$i].anus == 0) && canDoAnal($slaves[$i])>>
-	$possessiveCap anal virginity goes to a <<if $slaves[$i].fuckdoll == 0>>glory hole <</if>>user, who doesn't understand why this particular run at <<if $slaves[$i].fuckdoll == 0>>the glory hole<<else>>a Fuckdoll<</if>> is so great. @@.lime;$possessiveCap ass has been broken in@@ in a @@.gold;painful@@ and @@.mediumorchid;degrading@@ way.
+	$His anal virginity goes to a <<if $slaves[$i].fuckdoll == 0>>glory hole <</if>>user, who doesn't understand why this particular run at <<if $slaves[$i].fuckdoll == 0>>the glory hole<<else>>a Fuckdoll<</if>> is so great. @@.lime;$possessiveCap ass has been broken in@@ in a @@.gold;painful@@ and @@.mediumorchid;degrading@@ way.
 	<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5, $slaves[$i].anus = 1>>
 <<elseif ($slaves[$i].anus < 3) && canDoAnal($slaves[$i]) && (random(1,100) > ((150-$beauty)+($slaves[$i].anus*10)))>>
 	@@.lime;$possessiveCap asshole sees constant use and loosens.@@
@@ -80,59 +80,59 @@ is <<if $slaves[$i].fuckdoll == 0>>restrained in a glory hole<<else>>set out for
 <</if>>
 
 <<if ($slaves[$i].fetish == "mindbroken")>>
-	$pronounCap serves $possessive role as a mindless set of holes to perfection.
+	$He serves $his role as a mindless set of holes to perfection.
 <<else>>
 	<<set $skillIncrease = 5>>
 	<<if ($slaves[$i].oralSkill <= 10)>>
-		With $possessive throat being brutally used, $possessive gag reflex is suppressed and $possessive oral skills improve.
+		With $his throat being brutally used, $his gag reflex is suppressed and $his oral skills improve.
 		<<OralSkillIncrease $slaves[$i]>>
 	<<elseif ($slaves[$i].vaginalSkill <= 10) && (canDoVaginal($slaves[$i]))>>
-		With $possessive pussy being harshly used, $possessive vaginal skills improve.
+		With $his pussy being harshly used, $his vaginal skills improve.
 		<<VaginalSkillIncrease $slaves[$i]>>
 	<<elseif ($slaves[$i].analSkill <= 10) && (canDoAnal($slaves[$i]))>>
-		With $possessive butt being mercilessly fucked, $possessive anal skills improve.
+		With $his butt being mercilessly fucked, $his anal skills improve.
 		<<AnalSkillIncrease $slaves[$i]>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "self hating">>
-		$possessiveCap self hatred is so deep that $pronoun believes $pronoun deserves to serve in a glory hole, and even gets off on the degradation.
+		$His self hatred is so deep that $he believes $he deserves to serve in a glory hole, and even gets off on the degradation.
 	<<elseif ($slaves[$i].sentence > 0)>>
 		<<if ($slaves[$i].behavioralFlaw != "odd") && (random(1,100) > (100+($slaves[$i].devotion/5)))>>
-			Constant confinement coupled with brutal use has left $object with involuntary nervous tics.
+			Constant confinement coupled with brutal use has left $him with involuntary nervous tics.
 			<<set $slaves[$i].behavioralFlaw = "odd">>
 		<</if>>
 		<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 		<<if ($slaves[$i].devotion > 50)>>
-			$pronounCap does $possessive best to tolerate $possessive sentence to the glory hole, but @@.mediumorchid;$possessive devotion is hurt@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			$He does $his best to tolerate $his sentence to the glory hole, but @@.mediumorchid;$possessive devotion is hurt@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<<elseif ($slaves[$i].devotion > 20)>>
-			$pronounCap does not understand why $possessive obedience has earned $object a sentence to this torture. @@.mediumorchid;$possessiveCap obedience is hurt@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			$He does not understand why $his obedience has earned $him a sentence to this torture. @@.mediumorchid;$possessiveCap obedience is hurt@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<<elseif ($slaves[$i].devotion >= -20)>>
-			$possessiveCap fear of you turns to desperation during $possessive sentence. @@.mediumorchid;$possessiveCap obedience is reduced@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			$His fear of you turns to desperation during $his sentence. @@.mediumorchid;$possessiveCap obedience is reduced@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<<elseif ($slaves[$i].devotion >= -50)>>
-			Though $pronoun is only temporarily sentenced to suffer, @@.mediumorchid;$possessive resistance is increased@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			Though $he is only temporarily sentenced to suffer, @@.mediumorchid;$possessive resistance is increased@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<<else>>
-			$pronounCap has hope $pronoun'll be released after $possessive sentence, but @@.mediumorchid;$possessive hatred of you is increased@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			$He has hope $he'll be released after $his sentence, but @@.mediumorchid;$possessive hatred of you is increased@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].behavioralFlaw != "odd") && (random(1,100) > (70+($slaves[$i].devotion/5)))>>
-			Constant confinement coupled with brutal use has left $object with involuntary nervous tics.
+			Constant confinement coupled with brutal use has left $him with involuntary nervous tics.
 			<<set $slaves[$i].behavioralFlaw = "odd">>
 		<</if>>
 		<<set $slaves[$i].devotion -= 10, $slaves[$i].trust -= 10>>
 		<<if ($slaves[$i].devotion > 50)>>
-			$pronounCap feels starved of personal contact. @@.mediumorchid;$possessiveCap devotion is hurt@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			$He feels starved of personal contact. @@.mediumorchid;$possessiveCap devotion is hurt@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<<elseif ($slaves[$i].devotion > 20)>>
-			$pronounCap does not understand why $possessive obedience has earned $object this immurement. @@.mediumorchid;$possessiveCap obedience is hurt@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			$He does not understand why $his obedience has earned $him this immurement. @@.mediumorchid;$possessiveCap obedience is hurt@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<<elseif ($slaves[$i].devotion >= -20)>>
-			$possessiveCap fear of you has increased into something like a pathology. @@.mediumorchid;$possessiveCap obedience is reduced@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			$His fear of you has increased into something like a pathology. @@.mediumorchid;$possessiveCap obedience is reduced@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<<elseif ($slaves[$i].devotion >= -50)>>
-			$possessiveCap resistance is deepening into hatred. @@.mediumorchid;$possessiveCap resistance is increased@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			$His resistance is deepening into hatred. @@.mediumorchid;$possessiveCap resistance is increased@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<<else>>
-			@@.mediumorchid;$possessiveCap helpless hatred of you is increased@@ and $pronoun is @@.gold;filled with fear@@ $pronoun won't be let out.
+			@@.mediumorchid;$possessiveCap helpless hatred of you is increased@@ and $he is @@.gold;filled with fear@@ $he won't be let out.
 		<</if>>
 	<</if>>
 <</if>>
 
-$possessiveCap feelings, skills, and appearance do not matter. $pronounCap is condemned to a world that consists of a tiny cell, featureless except for the never-ending dicks $pronoun is required to service. You were paid @@.yellowgreen;<<print cashFormat(($beauty*$FResult))>>@@ for the use of $slaves[$i].slaveName's holes this week.
+$His feelings, skills, and appearance do not matter. $He is condemned to a world that consists of a tiny cell, featureless except for the never-ending dicks $he is required to service. You were paid @@.yellowgreen;<<print cashFormat(($beauty*$FResult))>>@@ for the use of $slaves[$i].slaveName's holes this week.
 
 /* FACILITY DECORATION IMPACTS */
 
@@ -215,41 +215,41 @@ $possessiveCap feelings, skills, and appearance do not matter. $pronounCap is co
 <<switch $slaves[$i].fetish>>
 <<case "submissive" "masochist">>
 	<<if _analUse+_vaginalUse > 0>>
-		She enjoys being used, and got sexual satisfaction from the <<print _analUse+_vaginalUse>> dicks stuck inside her this week.
+		$He enjoys being used, and got sexual satisfaction from the <<print _analUse+_vaginalUse>> dicks stuck inside her this week.
 		<<set $slaves[$i].need -= _analUse+_vaginalUse>>
 	<</if>>
 <<case "dom" "sadist">>
 <<case "cumslut">>
 	<<if _oralUse > 0>>
-		She enjoys being facefucked, and got sexual satisfaction from the _oralUse dicks shoved inside her throat this week.
+		$He enjoys being facefucked, and got sexual satisfaction from the _oralUse dicks shoved inside her throat this week.
 		<<set $slaves[$i].need -= _oralUse>>
 	<</if>>
 <<case "buttslut">>
 	<<if _analUse > 0>>
-		She enjoys getting buttfucked, and got sexual satisfaction from the _analUse times she was sodomized this week.
+		$He enjoys getting buttfucked, and got sexual satisfaction from the _analUse times $he was sodomized this week.
 		<<set $slaves[$i].need -= _analUse>>
 	<</if>>
 <<case "pregnancy">>
 	<<if $slaves[$i].mpreg == 0>>
 	<<if _vaginalUse > 0>>
-		She enjoys having her pussy fucked, and got sexual satisfaction from the _vaginalUse times she got pounded this week.
+		$He enjoys having her pussy fucked, and got sexual satisfaction from the _vaginalUse times $he got pounded this week.
 		<<set $slaves[$i].need -= _vaginalUse>>
 	<</if>>
 	<<else>>
 		<<if _analUse > 0>>
-			She enjoys having her ass fucked, and got sexual satisfaction from the _analUse times she got pounded this week.
+			$He enjoys having her ass fucked, and got sexual satisfaction from the _analUse times $he got pounded this week.
 			<<set $slaves[$i].need -= _analUse>>
 		<</if>>
 	<</if>>
 <<case "humiliation">>
-	She enjoys the humiliation of having her most intimate parts presented for public use, and got a bit of sexual satisfaction from every sex act she performed this week.
+	$He enjoys the humiliation of having her most intimate parts presented for public use, and got a bit of sexual satisfaction from every sex act $he performed this week.
 	<<set $slaves[$i].need -= $beauty>>
 <</switch>>
 <</if>>
 <</if>>
 
 <<if $slaves[$i].cervixImplant == 1 && _cervixPump > 0 && canDoVaginal($slaves[$i])>>
-	She notices her @@.lime;belly has swollen@@ from all the vaginal sex she had throughout the week.
+	$He notices her @@.lime;belly has swollen@@ from all the vaginal sex $he had throughout the week.
 	<<set $slaves[$i].bellyImplant += _cervixPump*20>>
 <</if>>
 
diff --git a/src/uncategorized/useGuard.tw b/src/uncategorized/useGuard.tw
index eacbe0e3eca..ca41245dd98 100644
--- a/src/uncategorized/useGuard.tw
+++ b/src/uncategorized/useGuard.tw
@@ -6,128 +6,128 @@ $slaves[$i].slaveName is standing behind your left shoulder, guarding your perso
 
 <<switch $slaves[$i].clothes>>
 <<case "attractive lingerie">>
-	Her lacy lingerie contrasts with her deadly weaponry.
+	$His lacy lingerie contrasts with $his deadly weaponry.
 <<case "a succubus outfit">>
-	Her succubus outfit and impressive weapons make her look like a character from an overwrought graphic novel.
+	$His succubus outfit and impressive weapons make $him look like a character from an overwrought graphic novel.
 <<case "uncomfortable straps">>
-	Her uncomfortable straps make her look like a classical slave warrior.
+	$His uncomfortable straps make $him look like a classical slave warrior.
 <<case "shibari ropes">>
-	Her shibari ropes make her look like an insane slave fighter.
+	$His shibari ropes make $him look like an insane slave fighter.
 <<case "restrictive latex" "a latex catsuit">>
-	Her complete suit of latex gives her a beautiful yet intimidating appearance.
+	$His complete suit of latex gives $him a beautiful yet intimidating appearance.
 <<case "a nice nurse outfit">>
-	Her practical nurse's outfit make her weapons look like surgical instruments of death.
+	$His practical nurse's outfit make $his weapons look like surgical instruments of death.
 <<case "a military uniform">>
-	Her military uniform is most befitting of an honor guard.
+	$His military uniform is most befitting of an honor guard.
 <<case "a schutzstaffel uniform">>
-	Her military uniform is most befitting of an honor guard.
+	$His military uniform is most befitting of an honor guard.
 <<case "a slutty schutzstaffel uniform">>
-	Her military uniform is most befitting of an honor guard and your personal whore.
+	$His military uniform is most befitting of an honor guard and your personal whore.
 <<case "a red army uniform">>
-	Her military uniform is most befitting of an honor guard.
+	$His military uniform is most befitting of an honor guard.
 <<case "a long qipao">>
-	Her elegant qipao makes her seem less deadly than she actually is.
+	$His elegant qipao makes $him seem less deadly than $he actually is.
 <<case "battlearmor">>
-	Her battlearmor means she's always ready for combat.
+	$His battlearmor means $he's always ready for combat.
 <<case "a mounty outfit">>
-	Her mounty outfit only enhances her authority as your personal guard.
+	$His mounty outfit only enhances $his authority as your personal guard.
 <<case "a dirndl">>
-	Her dirndl allows her to hide all sorts of useful weapons against her bare thighs.
+	$His dirndl allows $him to hide all sorts of useful weapons against $his bare thighs.
 <<case "lederhosen">>
-	Her weapon hangs from a shoulder sling over her lederhosen.
+	$His weapon hangs from a shoulder sling over $his lederhosen.
 <<case "a biyelgee costume">>
-	Her biyelgee costume makes her appear as an athletic specimen, ready to defend you in hand-to-hand combat.
+	$His biyelgee costume makes $him appear as an athletic specimen, ready to defend you in hand-to-hand combat.
 <<case "a mini dress">>
-	Her revealing mini dress and elegant weapons make her look sexy, yet deadly.
+	$His revealing mini dress and elegant weapons make $him look sexy, yet deadly.
 <<case "a monokini">>
-	Her monokini's unrepressed appearance clashes amusingly with her deadly weapons.
+	$His monokini's unrepressed appearance clashes amusingly with $his deadly weapons.
 <<case "an apron">>
-	She's nude, aside from an apron and the holsters for her numerous weapons.
+	$He's nude, aside from an apron and the holsters for $his numerous weapons.
 <<case "a cybersuit">>
-	Her cybersuit makes her look sleek, sexy, and deadly. A perfect femme fatale.
+	$His cybersuit makes $him look sleek, sexy, and deadly. A perfect femme fatale.
 <<case "clubslut netting">>
-	Her club netting's slutty appearance clashes amusingly with her deadly weapons.
+	$His club netting's slutty appearance clashes amusingly with $his deadly weapons.
 <<case "a string bikini">>
-	Her string bikini's flirty appearance clashes amusingly with her deadly weapons.
+	$His string bikini's flirty appearance clashes amusingly with $his deadly weapons.
 <<case "a scalemail bikini">>
-	Her scalemail bikini's barbaric appearance meshes well with her sword, but clashes with her firearms.
+	$His scalemail bikini's barbaric appearance meshes well with $his sword, but clashes with $his firearms.
 <<case "a slutty outfit">>
 	<<if $slaves[$i].actualAge < 21>>
-		She's wearing a schoolgirl uniform and sucking on hard candy, making her look like a character from a kung-fu film.
+		$He's wearing a schoolgirl uniform and sucking on hard candy, making $him look like a character from a kung-fu film.
 	<<elseif $slaves[$i].actualAge < 30>>
-		She's chosen to wear a catsuit, and looks like a fictional heroine.
+		$He's chosen to wear a catsuit, and looks like a fictional heroine.
 	<<elseif $slaves[$i].actualAge < 40>>
-		She's wearing a schoolgirl uniform and sucking on hard candy, making her look like a character from a kung-fu film.
+		$He's wearing a schoolgirl uniform and sucking on hard candy, making $him look like a character from a kung-fu film.
 	<<else>>
-		She's wearing a wifely dress, creating a discordant effect with her weapons.
+		$He's wearing a wifely dress, creating a discordant effect with $his weapons.
 	<</if>>
 <<case "a cheerleader outfit">>
-	She's wearing a cheerleader uniform, creating an amusing effect with her weapons.
+	$He's wearing a cheerleader uniform, creating an amusing effect with $his weapons.
 <<case "attractive lingerie for a pregnant woman">>
-	Her silky lingerie contrasts with her deadly weaponry.
+	$His silky lingerie contrasts with $his deadly weaponry.
 <<case "a maternity dress">>
-	Her loose dress gives her plenty of places to conceal weaponry.
+	$His loose dress gives $him plenty of places to conceal weaponry.
 <<case "stretch pants and a crop-top">>
-	Her relaxed outfit clashes amusingly with her serious weapons.
+	$His relaxed outfit clashes amusingly with $his serious weapons.
 <<case "a slave gown">>
-	Her gorgeous gown and elegant weapons make her look refined, yet deadly.
+	$His gorgeous gown and elegant weapons make $him look refined, yet deadly.
 <<case "a halter top dress">>
-	Her beautiful halter top dress and elegant weapons make her look refined, yet deadly.
+	$His beautiful halter top dress and elegant weapons make $him look refined, yet deadly.
 <<case "a ball gown">>
-	Her fabulous silken ball gown and elegant weapons make her look refined, yet deadly.
+	$His fabulous silken ball gown and elegant weapons make $him look refined, yet deadly.
 <<case "a nice maid outfit">>
-	Her pretty maid outfit and weapons make her look like a character from an animated movie.
+	$His pretty maid outfit and weapons make $him look like a character from an animated movie.
 <<case "spats and a tank top">>
-	Her exercise outfit makes her look like she has the fitness to back up her weapons.
+	$His exercise outfit makes $him look like $he has the fitness to back up $his weapons.
 <<case "a slutty maid outfit">>
-	Her slutty maid outfit and weapons make her look like a character from an exploitation film.
+	$His slutty maid outfit and weapons make $him look like a character from an exploitation film.
 <<case "cutoffs and a t-shirt">>
-	Her relaxed clothing clashes with her weaponry, making her look like she's planning to kill someone and then have a relaxing day off.
+	$His relaxed clothing clashes with $his weaponry, making $him look like $he's planning to kill someone and then have a relaxing day off.
 <<case "harem gauze">>
-	Her weapons pin her sheer gauze down over her body, putting everything on lewd display.
+	$His weapons pin $his sheer gauze down over $his body, putting everything on lewd display.
 <<case "a fallen nuns habit">>
-	Her sacrilegious getup and weapons make her look like a sinner's fantasy.
+	$His sacrilegious getup and weapons make $him look like a sinner's fantasy.
 <<case "a chattel habit">>
-	Her chattel habit and weapons make her role as a defender of the new faith instantly obvious.
+	$His chattel habit and weapons make $his role as a defender of the new faith instantly obvious.
 <<case "a penitent nuns habit">>
-	Her somber habit and weapons make her look like a member of a militant order.
+	$His somber habit and weapons make $him look like a member of a militant order.
 <<case "slutty business attire">>
-	Her slutty business suit and weapons give her the look a supervillain's sidekick.
+	$His slutty business suit and weapons give $him the look a supervillain's sidekick.
 <<case "nice business attire">>
-	Her business suit and weapons give her the look of a finely honed corporate instrument.
+	$His business suit and weapons give $him the look of a finely honed corporate instrument.
 <<case "conservative clothing">>
-	Her casual, conservative clothes and weapons make her look like a normal old world security contractrix.
+	$His casual, conservative clothes and weapons make $him look like a normal old world security contractrix.
 <<case "a comfortable bodysuit">>
-	Her bodysuit and weapons make her look like an action movie heroine.
+	$His bodysuit and weapons make $him look like an action movie heroine.
 <<case "a leotard">>
-	Her leotard and weapons make her look like the heroine of an old exploitation film.
+	$His leotard and weapons make $him look like the heroine of an old exploitation film.
 <<case "a bunny outfit">>
-	Her bunny outfit and weapons make her look like the henchwoman of a villain from a cheesy vintage spy film.
+	$His bunny outfit and weapons make $him look like the henchwoman of a villain from a cheesy vintage spy film.
 <<case "a slutty nurse outfit">>
-	Between her nurse outfit and her weapons she looks prepared to do harm, and then to heal it.
+	Between $his nurse outfit and $his weapons $he looks prepared to do harm, and then to heal it.
 <<case "a schoolgirl outfit">>
 	This schoolgirl is well armed, bringing to mind more than one farcical action film.
 <<case "a kimono">>
-	Her kimono has discreet cuts that allow her to fight reasonably well in it if necessary, and are almost invisible when she stands straight.
+	$His kimono has discreet cuts that allow $him to fight reasonably well in it if necessary, and are almost invisible when $he stands straight.
 <<case "a slutty qipao">>
-	Her qipao and weapons make her look like a character from a fighting game.
+	$His qipao and weapons make $him look like a character from a fighting game.
 <<case "a toga">>
-	Her toga and weapons make a stark contrast, making her stand out a lot.
+	$His toga and weapons make a stark contrast, making $him stand out a lot.
 <<case "a huipil">>
-	Her huipil hides most of the weapons she carries, but carrying them on naked skin is a slight discomfort.
+	$His huipil hides most of the weapons $he carries, but carrying them on naked skin is a slight discomfort.
 <<case "a hijab and abaya">>
-	Her weapons are strapped to the outside of her abaya, a juxtaposition that would be more ludicrous had not many women of the middle east recently been seen fighting dressed in just this way.
+	$His weapons are strapped to the outside of $his abaya, a juxtaposition that would be more ludicrous had not many women of the middle east recently been seen fighting dressed in just this way.
 <<case "battledress">>
-	Though her battledress top is just a tank top, she still skirts the edge of looking more like a Free Cities mercenary than a Free Cities sex slave.
+	Though $his battledress top is just a tank top, $he still skirts the edge of looking more like a Free Cities mercenary than a Free Cities sex slave.
 <<case "slutty jewelry">>
-	The bangles she's wearing are complemented by the straps that mount her weapons to her otherwise naked body.
+	The bangles $he's wearing are complemented by the straps that mount $his weapons to $his otherwise naked body.
 <<default>>
 	<<if ["chastity belt", "combined chastity"].includes($activeSlave.vaginalAccessory)>>
-		Her chastity belt covers and protects her, just as her weapons cover and protect you.
+		$His chastity belt covers and protects $him, just as $his weapons cover and protect you.
 	<<elseif ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>>
-		Her chastity cage covers and protects her, just as her weapons cover and protect you.
+		$His chastity cage covers and protects $him, just as $his weapons cover and protect you.
 	<<else>>
-		She is nude except for her armament.
+		$He is nude except for $his armament.
 	<</if>>
 <</switch>>
 
diff --git a/src/utility/birthWidgets.tw b/src/utility/birthWidgets.tw
index 3a3a6f19885..8854eee64ed 100644
--- a/src/utility/birthWidgets.tw
+++ b/src/utility/birthWidgets.tw
@@ -1156,7 +1156,7 @@
 <br>
 <<set $slaveDead = 1>>
 
-Feeling childbirth approaching, $slaves[$i].slaveName is helped to her prepared birthing area.
+Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared birthing area.
 
 <<switch $slaves[$i].assignment>>
 
@@ -1252,7 +1252,7 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to her prepared
 	<<if $slaves[$i].fetish == "mindbroken">>
 		Instinctively, she begins to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>, indifferent to who may be watching her naked <<if $slaves[$i].mpreg == 1>>asshole<<else>>crotch<</if>>.
 	<<else>>
-		Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>.
+		Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>. $He can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>.
 	<</if>>
 
 <<case "attractive lingerie for a pregnant woman">>
@@ -1266,7 +1266,7 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to her prepared
 	<<if $slaves[$i].fetish == "mindbroken">>
 		Instinctively, she begins to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>, indifferent to the obvious wetness forming <<if $slaves[$i].mpreg == 1>>under her rear<<else>>over her crotch<</if>>.
 	<<else>>
-		Quickly she spreads her legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>.<<if $slaves[$i].fetish == "humiliation">> She is disappointed that her dress hides what's happening between her legs<<else>> She does her best to hide what's happening between her legs<</if>>.
+		Quickly $he spreads her legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>.<<if $slaves[$i].fetish == "humiliation">> She is disappointed that her dress hides what's happening between her legs<<else>> She does her best to hide what's happening between her legs<</if>>.
 	<</if>>
 
 <<case "a string bikini" "a scalemail bikini">>
@@ -1443,13 +1443,13 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to her prepared
 	<<if $slaves[$i].fetish == "mindbroken">>
 		Instinctively, she begins to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>, indifferent to who may be watching her <<if $slaves[$i].mpreg == 1>>crotch<<else>>ass<</if>>.
 		<<if $slaves[$i].pregType > 30 && $slaves[$i].broodmother == 0>>
-			Child after child is born into her monokini as the <<if $slaves[$i].mpreg == 1>>seat<<else>>front<</if>> distends more and more. Eventually the squirming mass pulls her to the floor, where she lies, still very much in labor. As the load of newborns reaches the leotard's limit, a loud rip sounds out as the overburdened garmit splits and frees her brood into the world.
+			Child after child is born into her monokini as the <<if $slaves[$i].mpreg == 1>>seat<<else>>front<</if>> distends more and more. Eventually the squirming mass pulls her to the floor, where she lies, still very much in labor. As the load of newborns reaches the swimsuit's limit, a loud rip sounds out as the overburdened garmit splits and frees her brood into the world.
 		<<elseif $slaves[$i].pregType > 10 && $slaves[$i].broodmother == 0>>
 			Child after child is born into her monokini as the <<if $slaves[$i].mpreg == 1>>seat<<else>>front<</if>> distends more and more. Eventually the squirming mass pulls her to the floor, where she lays until she finishes giving birth. She struggles to get to her feet and carry on with her task until someone helps free them from their nylon prison.
 		<<elseif $slaves[$i].pregType > 4 && $slaves[$i].broodmother == 0>>
 			Child after child is born into her monokini as the <<if $slaves[$i].mpreg == 1>>seat<<else>>front<</if>> distends more and more. She struggles to carry on with her task with the squirming mass between her legs until someone helps free them from their nylon prison.
 		<<else>>
-			She finishes giving birth and begins anew on her assigned task, ignoring the squirming bab<<if $slaves[$i].pregType > 1 && $slaves[$i].broodmother == 0>>ies<<else>>y<</if>> distending the <<if $slaves[$i].mpreg == 1>>seat<<else>>crotch<</if>> of her leotard until someone helps them from their nylon prison.
+			She finishes giving birth and begins anew on her assigned task, ignoring the squirming bab<<if $slaves[$i].pregType > 1 && $slaves[$i].broodmother == 0>>ies<<else>>y<</if>> distending the <<if $slaves[$i].mpreg == 1>>seat<<else>>crotch<</if>> of her swimsuit until someone helps them from their nylon prison.
 		<</if>>
 	<<else>>
 		Quickly she attempts to remove her monokini but fails to do so before having to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. The tight material stretches as her child is born into it and with a little help she's freed to finish giving birth.
@@ -1465,7 +1465,7 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to her prepared
 		<<elseif $slaves[$i].pregType > 4 && $slaves[$i].broodmother == 0>>
 			Child after child is born into her bodysuit as the <<if $slaves[$i].mpreg == 1>>seat<<else>>front<</if>> distends more and more. She struggles to carry on with her task with the squirming mass between her legs until someone helps free them from their rubber prison.
 		<<else>>
-			She finishes giving birth and begins anew on her assigned task, ignoring the squirming bab<<if $slaves[$i].pregType > 1 && $slaves[$i].broodmother == 0>>ies<<else>>y<</if>> distending the <<if $slaves[$i].mpreg == 1>>seat<<else>>crotch<</if>> of her leotard until someone helps them from their rubber prison.
+			She finishes giving birth and begins anew on her assigned task, ignoring the squirming bab<<if $slaves[$i].pregType > 1 && $slaves[$i].broodmother == 0>>ies<<else>>y<</if>> distending the <<if $slaves[$i].mpreg == 1>>seat<<else>>crotch<</if>> of her bodysuit until someone helps them from their rubber prison.
 		<</if>>
 	<<else>>
 		Quickly she attempts to remove her bodysuit but fails to do so before having to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>her first<<else>>this week's<</if>> baby<<else>>her bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>. She can't hide what's happening between her legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so she bears with it<</if>>. The tight material stretches as her child is born into it and with a little help she's freed to finish giving birth.
-- 
GitLab


From 71b3771af148e453619e605a51f8b4c10c0981ef Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Fri, 20 Jul 2018 14:05:12 +0300
Subject: [PATCH 094/189] fix bad array concatenation

---
 src/init/setupVars.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index ddebe02854d..51443ae5e55 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -444,7 +444,7 @@
 /* NOTE: Names ending in "-iia" aren't data errors, but simply how the official romanization of "-ія" looks like. */
 <<set setup.ukrainianSlaveNames = ["Ada", "Al'bina", "Alex", "Alexandra", "Alina", "Alisa", "Alla", "Alyona", "Amaliia", "Anastasia", "Anastasiia", "Anastasiya", "Angela", "Angelina", "Anita", "Ann", "Anna", "Anzhela", "Arina", "Ayya", "Biliana", "Bohdanna", "Bohuslava", "Bozhena", "Danna", "Daria", "Darina", "Darya", "Daryna", "Dasha", "Diana", "Draha", "Edyta", "Elena", "Elisabeta", "Emiliia", "Erika", "Eva", "Halina", "Hanna", "Hordana", "Ilona", "Ira", "Irena", "Irene", "Irina", "Iryna", "Julia", "Juliva", "Kamilla", "Karina", "Karolina", "Kasia", "Kate", "Kateryna", "Katia", "Katya", "Khrystyna", "Klavdiia", "Kristina", "Larisa", "Laura", "Lena", "Lida", "Liia", "Liliia", "Liliya", "Liubomyra", "Liubov", "Liudmyla", "Liza", "Luba", "Mahda", "Mahdalyna", "Mar'iana", "Margaryta", "Maria", "Mariia", "Marina", "Mariya", "Marta", "Marusia", "Mary", "Maryna", "Masha", "Miiana", "Milena", "Mykhailyna", "Myroslava", "Nadiia", "Nastia", "Nastya", "Natalia", "Nataliia", "Nataliya", "Natalya", "Natasha", "Nina", "Odarka", "Oksana", "Okseniia", "Ol'ha", "Oleksandra", "Olena", "Olga", "Olha", "Olya", "Oryna", "Orysia", "Pavlyna", "Polina", "Priska", "Pylypyna", "Rakhil", "Reveka", "Roksolana", "Romana", "Rozaliia", "Ruslana", "Santa", "Sara", "Sasha", "Sesiliia", "Snejana", "Snizhana", "Sofiya", "Solomiia", "Sonya", "Sophie", "Sophiia", "Stepaniia", "Sveta", "Sviatoslava", "Svitlana", "Tania", "Tanya", "Tatiana", "Taya", "Tereza", "Tetiana", "Tetyana", "Tina", "Valentyna", "Valeria", "Valeriya", "Varvara", "Vasylyna", "Velana", "Vesna", "Victoria", "Vika", "Viktoriia", "Viktoriya", "Violetta", "Vira", "Volodymyra", "Yana", "Yara", "Yaroslava", "Yaryna", "Yasna", "Yelyzaveta", "Yulia", "Yuliia", "Yuliya", "Yustyna", "Zlata", "Zlatoslava", "Zoriana"]>>
 /* NOTE: Ukrainian surnames have different forms depending on the gender of the person AND the area (they are more common in Eastern Ukraine). This list uses the female form where it's common overall. */
-<<set setup.russianSlaveNames = setup.russianSlaveNames + setup.ukrainianSlaveNames>>
+<<set setup.russianSlaveNames = setup.russianSlaveNames.concat(setup.ukrainianSlaveNames)>>
 <<set setup.ukrainianSlaveNames = setup.russianSlaveNames >>
 /* Now we have bigger pool for russian and ukrainian names in game. Russian and ukrainian first names become so common on both territories thorugh USSR time and later, that it's IRL just one list. */
 <<set setup.ukrainianSlaveSurnames = ["Aleksandrova", "Andreeva", "Antonyuk", "Astafieva", "Avramenko", "Azanova", "Babenko", "Babich", "Baikova", "Belous", "Belova", "Bets", "Beznosyuk", "Bilous", "Bodnar", "Boiko", "Bondar", "Bondarchuk", "Bondarenko", "Borisenko", "Boychuk", "Boyko", "Chernenko", "Chorna", "Chumak", "Danilyuk", "Demchenko", "Denisenko", "Dereviankina", "Derkach", "Diachenko", "Didenko", "Dimopoulos", "Dmitrenko", "Doroshenko", "Dyachenko", "Fedorenko", "Fedorova", "Fomenko", "Frolova", "Gavrilyuk", "Gerasimenko", "Golovko", "Golub", "Gonchar", "Goncharenko", "Goncharova", "Goncharuk", "Gordienko", "Gorelova", "Gotsiy", "Grischenko", "Gritsenko", "Grytsay", "Gumenyuk", "Havryiuk", "Honcharenko", "Honcharova", "Hotlib", "Iaryn", "Ischenko", "Ishchenko", "Ivanchenko", "Ivanenko", "Ivanova", "Ivanyuk", "Ivaschenko", "Karlenko", "Karol", "Karpenko", "Kharchenko", "Khmidan", "Khomenko", "Kirichenko", "Klimenko", "Klymenko", "Koblenko", "Kolesnik", "Kolesnyk", "Kolomiets", "Kolomiiets", "Kondratyuk", "Kononenko", "Kornienko", "Korol", "Kostenko", "Kostiuk", "Kostyuk", "Kot", "Kotova", "Kots-Hotlib", "Kots", "Koval'chuk", "Koval'ova", "Koval", "Kovalchuk", "Kovalenko", "Kovtun", "Kozak", "Kozlova", "Kravchenko", "Kravchuk", "Kravets", "Kristal", "Kucher", "Kucherenko", "Kuiek", "Kulik", "Kulizhka", "Kulyk", "Kunis", "Kurovska", "Kurylenko", "Kushnir", "Kuz'menko", "Kuzmenko", "Kuznetsova", "Kyrychenko", "Lauta", "Lebedeva", "Levchenko", "Litvina", "Litvinenko", "Litvinova", "Luczenko", "Lutsenko", "Lyashenko", "Lysenko", "Lytvynenko", "Makarenko", "Makarova", "Maliouk", "Marchenko", "Marchuk", "Martynenko", "Martyniuk", "Matvienko", "Mazur", "Mel'nychuk", "Mel'nyk", "Melnichenko", "Melnichuk", "Melnik", "Mikhaylenko", "Mikhaylova", "Mironenko", "Mironova", "Miroshnichenko", "Mischenko", "Moroz", "Morozova", "Moskalenko", "Mykhailova", "Myshchenko", "Naumenko", "Nazarenko", "Nesterenko", "Nikitina", "Nikolaenko", "Nikolaeva", "Novikova", "Oleynik", "Oliinyk", "Oliynik", "Olyenik", "Omelchenko", "Onischenko", "Onopka", "Orlova", "Osmanova", "Ostapenko", "Ovcharenko", "Palamarchuk", "Panchenko", "Parkhomenko", "Pavlenko", "Pavliuk", "Pavlova", "Pavlyuk", "Petrenko", "Petrova", "Pilipenko", "Piro", "Piskun", "Poliakova", "Polischuk", "Polishchuk", "Polyakova", "Ponomarenko", "Popova", "Popovich", "Popovych", "Poslavska", "Prikhodko", "Prokopenko", "Prykhod'ko", "Pylypenko", "Radchenko", "Remez", "Romanenko", "Romaniuk", "Romanova", "Romanyuk", "Romonova", "Rudenko", "Safroncik", "Samoylenko", "Savchenko", "Savchuk", "Scherbina", "Sedokova", "Semeniuk", "Semenyuk", "Senchylo", "Serdyuk", "Sergeeva", "Sergienko", "Shapoval", "Shevchenko", "Shevchuk", "Shorokhova", "Shulga", "Shumeyko", "Shvets", "Sidorchuk", "Sidorenko", "Smerechevskaya", "Smirnova", "Sokolova", "Soroka", "Stepanenko", "Stepanova", "Stotskaya", "Svets", "Sydorenko", "Taran", "Tarasenko", "Tereschenko", "Tereshchenko", "Timchenko", "Timoshenko", "Tischenko", "Tkach", "Tkachenko", "Tkachuk", "Toksik", "Turenko", "Tymoshenko", "Tyshchenko", "Vasilenko", "Vasileva", "Vasyl'ieva", "Vasylenko", "Velchinskaya", "Velichko", "Veryovkina", "Vlasenko", "Volkova", "Voloshina", "Voloshyn", "Vovk", "Yakovenko", "Yatsenko", "Yurchenko", "Zaitseva", "Zaytseva", "Zhiuk", "Zhuk", "Zhuravska", "Zinchenko"]>>
-- 
GitLab


From 34c1d9929a3796186144f33137597049e8bf99ef Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 20 Jul 2018 15:35:22 -0400
Subject: [PATCH 095/189] progress and tweaks

---
 src/endWeek/saPornJS.tw                  |  116 +++
 src/pregmod/saPorn.tw                    | 1098 ++++++++++++++++++----
 src/uncategorized/arcologyDescription.tw |    2 +-
 src/uncategorized/reFSAcquisition.tw     |    2 +-
 src/uncategorized/saLongTermEffects.tw   |    5 +
 5 files changed, 1020 insertions(+), 203 deletions(-)
 create mode 100644 src/endWeek/saPornJS.tw

diff --git a/src/endWeek/saPornJS.tw b/src/endWeek/saPornJS.tw
new file mode 100644
index 00000000000..4d09d9195b5
--- /dev/null
+++ b/src/endWeek/saPornJS.tw
@@ -0,0 +1,116 @@
+:: SA porn JS [script]
+
+/* to later be rolled into saPorn */
+
+window.getHighestPorn = function(slave) {
+
+	var max = 0;
+	
+	if(slave.pornTypeGeneral > max){
+		max = slave.pornTypeGeneral;
+	}
+	if(slave.pornTypeFuckdoll > max){
+		max = slave.pornTypeFuckdoll;
+	}
+	if(slave.pornTypeRape > max){
+		max = slave.pornTypeRape;
+	}
+	if(slave.pornTypePreggo > max){
+		max = slave.pornTypePreggo;
+	}
+	if(slave.pornTypeBBW > max){
+		max = slave.pornTypeBBW;
+	}
+	if(slave.pornTypeGainer > max){
+		max = slave.pornTypeGainer;
+	}
+	if(slave.pornTypeStud > max){
+		max = slave.pornTypeStud;
+	}
+	if(slave.pornTypeLoli > max){
+		max = slave.pornTypeLoli;
+	}
+	if(slave.pornTypeDeepThroat > max){
+		max = slave.pornTypeDeepThroat;
+	}
+	if(slave.pornTypeStruggleFuck > max){
+		max = slave.pornTypeStruggleFuck;
+	}
+	if(slave.pornTypePainal > max){
+		max = slave.pornTypePainal;
+	}
+	if(slave.pornTypeTease > max){
+		max = slave.pornTypeTease;
+	}
+	if(slave.pornTypeRomantic > max){
+		max = slave.pornTypeRomantic;
+	}
+	if(slave.pornTypePervert > max){
+		max = slave.pornTypePervert;
+	}
+	if(slave.pornTypeCaring > max){
+		max = slave.pornTypeCaring;
+	}
+	if(slave.pornTypeUnflinching > max){
+		max = slave.pornTypeUnflinching;
+	}
+	if(slave.pornTypeSizeQueen > max){
+		max = slave.pornTypeSizeQueen;
+	}
+	if(slave.pornTypeNeglectful > max){
+		max = slave.pornTypeNeglectful;
+	}
+	if(slave.pornTypeCumAddict > max){
+		max = slave.pornTypeCumAddict;
+	}
+	if(slave.pornTypeAnalAddict > max){
+		max = slave.pornTypeAnalAddict;
+	}
+	if(slave.pornTypeAttentionWhore > max){
+		max = slave.pornTypeAttentionWhore;
+	}
+	if(slave.pornTypeBreastGrowth > max){
+		max = slave.pornTypeBreastGrowth;
+	}
+	if(slave.pornTypeAbusive > max){
+		max = slave.pornTypeAbusive;
+	}
+	if(slave.pornTypeMalicious > max){
+		max = slave.pornTypeMalicious;
+	}
+	if(slave.pornTypeSelfHating > max){
+		max = slave.pornTypeSelfHating;
+	}
+	if(slave.pornTypeBreeder > max){
+		max = slave.pornTypeBreeder;
+	}
+	if(slave.pornTypeSub > max){
+		max = slave.pornTypeSub;
+	}
+	if(slave.pornTypeCumSlut > max){
+		max = slave.pornTypeCumSlut;
+	}
+	if(slave.pornTypeAnal > max){
+		max = slave.pornTypeAnal;
+	}
+	if(slave.pornTypeHumiliation > max){
+		max = slave.pornTypeHumiliation;
+	}
+	if(slave.pornTypeBoobs > max){
+		max = slave.pornTypeBoobs;
+	}
+	if(slave.pornTypeDom > max){
+		max = slave.pornTypeDom;
+	}
+	if(slave.pornTypeSadist > max){
+		max = slave.pornTypeSadist;
+	}
+	if(slave.pornTypeMasochist > max){
+		max = slave.pornTypeMasochist;
+	}
+	if(slave.pornTypePregnancy > max){
+		max = slave.pornTypePregnancy;
+	}
+	
+	return max;
+}
\ No newline at end of file
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index acd3f36a33b..027c5129cbb 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -3,7 +3,7 @@
 <<if $studio == 1 && $slaves[$i].pornFeed == 1>> /* content is being produced */
 
 	/* rate of decay*/
-	<<if $slaves[$i].pornPrestige > 1>> /* 100k */
+	<<if $slaves[$i].pornPrestige > 1>> /* 75k */
 		<<set _decayRate = 5000>>
 		<<set _viewership = (500/$HackingSkillMultiplier) + ($slaves[$i].pornFameSpending) + ($slaves[$i].face*2) + ($slaves[$i].prestige*10) - _decayRate>>
 	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
@@ -66,7 +66,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeNeglectful>>
 		<<set $slaves[$i].pornTypeNeglectful += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarNeglectfuls-1))>>
-		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful, 0, 100000)>>
 		<<set _viewerSoaking++>>
 		
 		<<if $slaves[$i].pornFocus == "neglectful" || $slaves[$i].pornFameType == "orgasm denial">>
@@ -82,7 +82,7 @@
 		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
 	<<elseif slaves[$i].pornTypeNeglectful > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeNeglectful>><</if>>
-		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "cum addict">>
@@ -93,7 +93,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeCumAddict>>
 		<<set $slaves[$i].pornTypeCumAddict += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarCumAddicts-1))>>
-		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict, 0, 100000)>>
 		<<set _viewerSoaking++>>
 		
 		<<if $slaves[$i].pornFocus == "cum addict" || $slaves[$i].pornFameType == "bukkake">>
@@ -109,7 +109,7 @@
 		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
 	<<elseif slaves[$i].pornTypeCumAddict > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumAddict>><</if>>
-		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "anal addict" && canDoAnal($slaves[$i])>>
@@ -120,7 +120,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeAnalAddict>>
 		<<set $slaves[$i].pornTypeAnalAddict += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarAnalAddicts-1))>>
-		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict, 0, 100000)>>
 		<<set _viewerSoaking++>>
 		
 		<<if $slaves[$i].sexualFlaw == "anal addict" || $slaves[$i].pornFameType == "anal addiction">>
@@ -136,7 +136,7 @@
 		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
 	<<elseif slaves[$i].pornTypeAnalAddict > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnalAddict>><</if>>
-		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "attention whore">>
@@ -147,7 +147,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeAttentionWhore>>
 		<<set $slaves[$i].pornTypeAttentionWhore += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarAttentionWhores-1))>>
-		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "attention whore" || $slaves[$i].pornFameType == "exhibition">>
@@ -163,7 +163,7 @@
 		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
 	<<elseif slaves[$i].pornTypeAttentionWhore > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAttentionWhore>><</if>>
-		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "breast growth">>
@@ -174,7 +174,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeBreastGrowth>>
 		<<set $slaves[$i].pornTypeBreastGrowth += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarBreastGrowths-1))>>
-		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth, 0, 100000)>>
 		<<set _viewerSoaking++>>
 		
 		<<if $slaves[$i].pornFocus == "breast growth" || $slaves[$i].pornFameType == "breast expansion">>
@@ -190,7 +190,7 @@
 		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
 	<<elseif slaves[$i].pornTypeBreastGrowth > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreastGrowth>><</if>>
-		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "abusive">>
@@ -201,7 +201,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeAbusive>>
 		<<set $slaves[$i].pornTypeAbusive += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarAbusives-1))>>
-		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive, 0, 100000)>>
 		<<set _viewerSoaking++>>
 		
 		<<if $slaves[$i].pornFocus == "abusive" || $slaves[$i].pornFameType == "abuse">>
@@ -217,7 +217,7 @@
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
 	<<elseif slaves[$i].pornTypeAbusive > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAbusive>><</if>>
-		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "malicious">>
@@ -228,7 +228,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeMalicious>>
 		<<set $slaves[$i].pornTypeMalicious += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarMalicious-1))>>
-		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "sexual torture">>
@@ -244,7 +244,7 @@
 		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
 	<<elseif slaves[$i].pornTypeMalicious > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMalicious>><</if>>
-		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "self hating">>
@@ -255,7 +255,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeSelfHating>>
 		<<set $slaves[$i].pornTypeSelfHating += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarSelfHatings-1))>>
-		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating, 0, 100000)>>
 		<<set _viewerSoaking++>>
 		
 		<<if $slaves[$i].pornFocus == "self hating" || $slaves[$i].pornFameType == "self hating">>
@@ -271,7 +271,7 @@
 		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
 	<<elseif slaves[$i].pornTypeSelfHating > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSelfHating>><</if>>
-		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "breeder">>
@@ -282,7 +282,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeBreeder>>
 		<<set $slaves[$i].pornTypeBreeder += _adjustedViewership+($slaves[$i].fetishStrength*2)-((_decayRate/10)*($pornStarBreeders-1))>>
-		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "breeder" || $slaves[$i].pornFameType == "breeder">>
@@ -298,7 +298,7 @@
 		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
 	<<elseif slaves[$i].pornTypeBreeder > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreeder>><</if>>
-		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
 	<</if>>
 
@@ -311,7 +311,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeSub>>
 		<<set $slaves[$i].pornTypeSub += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarSubs-1))>>
-		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "submissive" || $slaves[$i].pornFameType == "submissive">>
@@ -327,7 +327,7 @@
 		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
 	<<elseif slaves[$i].pornTypeSub > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSub>><</if>>
-		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "cumslut">>
@@ -338,7 +338,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeCumSlut>>
 		<<set $slaves[$i].pornTypeCumSlut += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarCumSluts-1))>>
-		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut, 0, 100000)>>
 		<<set _viewerSoaking++>>
 		
 		<<if $slaves[$i].pornFocus == "cumslut" || $slaves[$i].pornFameType == "cum">>
@@ -354,7 +354,7 @@
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
 	<<elseif slaves[$i].pornTypeCumSlut > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumSlut>><</if>>
-		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "buttslut">>
@@ -365,7 +365,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeAnal>>
 		<<set $slaves[$i].pornTypeAnal += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarAnals-1))>>
-		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "buttslut">>
@@ -381,7 +381,7 @@
 		<<if $cheatMode == 1>>Buttslut: (_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
 	<<elseif slaves[$i].pornTypeAnal > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnal>><</if>>
-		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "humiliation">>
@@ -392,7 +392,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeHumiliation>>
 		<<set $slaves[$i].pornTypeHumiliation += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarHumiliations-1))>>
-		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "humiliation" || $slaves[$i].pornFameType == "humiliating">>
@@ -408,7 +408,7 @@
 		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
 	<<elseif slaves[$i].pornTypeHumiliation > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeHumiliation>><</if>>
-		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "boobs">>
@@ -419,7 +419,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeBoobs>>
 		<<set $slaves[$i].pornTypeBoobs += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarBoobs-1))>>
-		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "boobs" || $slaves[$i].pornFameType == "breast">>
@@ -435,7 +435,7 @@
 		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
 	<<elseif slaves[$i].pornTypeBoobs > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBoobs>><</if>>
-		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "dom">>
@@ -446,7 +446,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeDom>>
 		<<set $slaves[$i].pornTypeDom += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarDoms-1))>>
-		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "dom" || $slaves[$i].pornFameType == "dominant">>
@@ -462,7 +462,7 @@
 		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
 	<<elseif slaves[$i].pornTypeDom > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDom>><</if>>
-		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "sadist">>
@@ -473,7 +473,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeSadist>>
 		<<set $slaves[$i].pornTypeSadist += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarSadists-1))>>
-		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "sadist" || $slaves[$i].pornFameType == "sadistic">>
@@ -489,7 +489,7 @@
 		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
 	<<elseif slaves[$i].pornTypeSadist > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSadist>><</if>>
-		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "masochist">>
@@ -500,7 +500,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeMasochist>>
 		<<set $slaves[$i].pornTypeMasochist += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarMasochists-1))>>
-		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "masochist" || $slaves[$i].pornFameType == "masochistic">>
@@ -516,7 +516,7 @@
 		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
 	<<elseif slaves[$i].pornTypeMasochist > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMasochist>><</if>>
-		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
 	<</if>>
 	<<if $slaves[$i].fetish == "pregnancy">>
@@ -527,7 +527,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypePregnancy>>
 		<<set $slaves[$i].pornTypePregnancy += (_adjustedViewership/_viewerSoaking)+($slaves[$i].fetishStrength)-((_decayRate/10)*($pornStarPregnancySluts-1))>>
-		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "pregnancy" || $slaves[$i].pornFameType == "pregnancy fetish">>
@@ -543,7 +543,7 @@
 		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
 	<<elseif slaves[$i].pornTypePregnancy > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePregnancy>><</if>>
-		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
 	<</if>>
 	
@@ -557,7 +557,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeFuckdoll>>
 		<<set $slaves[$i].pornTypeFuckdoll += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarFuckdolls-1))>>
-		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "fuckdoll" || $slaves[$i].pornFameType == "fuckdoll">>
@@ -573,7 +573,7 @@
 		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
 	<<elseif slaves[$i].pornTypeFuckdoll > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeFuckdoll>><</if>>
-		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
 	<</if>>
 	<<if ($slaves[$i].devotion < -20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
@@ -584,7 +584,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeRape>>
 		<<set $slaves[$i].pornTypeRape += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarRapees-1))>>
-		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "rape" || $slaves[$i].pornFameType == "rape">>
@@ -600,7 +600,7 @@
 		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
 	<<elseif slaves[$i].pornTypeRape > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRape>><</if>>
-		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
 	<</if>>
 	<<if $slaves[$i].bellyPreg > 500>>
@@ -611,7 +611,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypePreggo>>
 		<<set $slaves[$i].pornTypePreggo += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarPreggos-1))>>
-		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "preggo" || $slaves[$i].pornFameType == "preggo">>
@@ -627,7 +627,7 @@
 		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
 	<<elseif slaves[$i].pornTypePreggo > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePreggo>><</if>>
-		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
 	<</if>>
 	<<if $slaves[$i].weight > 95>>
@@ -638,7 +638,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeBBW>>
 		<<set $slaves[$i].pornTypeBBW += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarBBWs-1))>>
-		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "BBW" || $slaves[$i].pornFameType == "BBW">>
@@ -654,7 +654,7 @@
 		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
 	<<elseif slaves[$i].pornTypeBBW > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBBW>><</if>>
-		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
 	<</if>>
 	<<if $slaves[$i].visualAge <= 12>>
@@ -665,7 +665,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeLoli>>
 		<<set $slaves[$i].pornTypeLoli += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarLolis-1))>>
-		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "loli" || $slaves[$i].pornFameType == "underage">>
@@ -681,7 +681,7 @@
 		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
 	<<elseif slaves[$i].pornTypeLoli > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeLoli>><</if>>
-		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
 	<</if>>
 	<<if ($slaves[$i].weight > 30 && $slaves[$i].diet == "fattening") || ($slaves[$i].inflation > 0 && $slaves[$i].inflationType == "food")>>
@@ -692,7 +692,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeGainer>>
 		<<set $slaves[$i].pornTypeGainer += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarGainers-1))>>
-		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "gainer" || $slaves[$i].pornFameType == "weight gain">>
@@ -708,7 +708,7 @@
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
 	<<elseif slaves[$i].pornTypeGainer > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGainer>><</if>>
-		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
 	<</if>>
 	<<if canPenetrate($slaves[$i]) && $slaves[$i].dick > 3>>
@@ -719,7 +719,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeStud>>
 		<<set $slaves[$i].pornTypeStud += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarStuds-1))>>
-		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud, 0, 100000)>>
 		<<set _viewerSoaking++>>
 
 		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "big dick">>
@@ -735,7 +735,7 @@
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
 	<<elseif slaves[$i].pornTypeStud > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStud>><</if>>
-		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
 	<</if>>
 	<<if $slaves[$i].pornFocus == "porn" || $slaves[$i].pornFameType === "generic">>
@@ -745,7 +745,7 @@
 	<</if>>
 	<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGeneral>><</if>>
 	<<set $slaves[$i].pornTypeGeneral += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStars-1))>>
-	<<set $slaves[$i].pornTypeGeneral = Math.clamp($slaves[$i].pornTypeGeneral, 0, 1000000000)>>
+	<<set $slaves[$i].pornTypeGeneral = Math.clamp($slaves[$i].pornTypeGeneral, 0, 100000)>>
 	<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeGeneral).<</if>>
 
 	/*Quirks are low and unlikely, requiring focus to push into the limelight*/
@@ -757,7 +757,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeDeepThroat>>
 		<<set $slaves[$i].pornTypeDeepThroat += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarDeepThroats-1))>>
-		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "gagfuck queen" || $slaves[$i].pornFameType == "deepthroat">>
 			$possessiveCap impresses with just how much dick can slip down $possessive throat.
@@ -772,7 +772,7 @@
 		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
 	<<elseif slaves[$i].pornTypeDeepThroat > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDeepThroat>><</if>>
-		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualQuirk == "strugglefuck queen" && (canDoVaginal($slaves[$i]) || canDoAnal($slaves[$i]))>>
@@ -783,7 +783,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeStruggleFuck>>
 		<<set $slaves[$i].pornTypeStruggleFuck += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarStruggleFucks-1))>>
-		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "strugglefuck queen" || $slaves[$i].pornFameType == "unwilling">>
 			$possessiveCap impresses with $possessive ability to put up just the right amount of fight during sex.
@@ -798,7 +798,7 @@
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
 	<<elseif slaves[$i].pornTypeStruggleFuck > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStruggleFuck>><</if>>
-		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualQuirk == "painal queen" && canDoAnal($slaves[$i])>>
@@ -809,7 +809,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypePainal>>
 		<<set $slaves[$i].pornTypePainal += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarPainals-1))>>
-		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "painal queen" || $slaves[$i].pornFameType == "hardcore anal">>
 			$possessiveCap impresses with $possessive ability to push $possessive anus to its limit.
@@ -824,7 +824,7 @@
 		<<if $cheatMode == 1>>Painal Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
 	<<elseif slaves[$i].pornTypePainal > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePainal>><</if>>
-		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualQuirk == "tease">>
@@ -835,7 +835,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeTease>>
 		<<set $slaves[$i].pornTypeTease += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarTeases-1))>>
-		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "tease" || $slaves[$i].pornFameType == "softcore">>
 			$possessiveCap tantalizes viewers with $possessive suggestive moves.
@@ -850,7 +850,7 @@
 		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
 	<<elseif slaves[$i].pornTypeTease > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeTease>><</if>>
-		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualQuirk == "romantic">>
@@ -861,7 +861,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeRomantic>>
 		<<set $slaves[$i].pornTypeRomantic += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarRomantics-1))>>
-		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "romantic" || $slaves[$i].pornFameType == "romantic">>
 			$possessiveCap draws viewers in with $possessive genuine pleasure.
@@ -876,7 +876,7 @@
 		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
 	<<elseif slaves[$i].pornTypeRomantic > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRomantic>><</if>>
-		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualQuirk == "perverted">>
@@ -887,7 +887,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypePervert>>
 		<<set $slaves[$i].pornTypePervert += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarPerverts-1))>>
-		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "perverted" || $slaves[$i].pornFameType == "really perverted">>
 			$possessiveCap perverted tastes shocks and allures viewers in ways they didn't even realize.
@@ -902,7 +902,7 @@
 		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
 	<<elseif slaves[$i].pornTypePervert > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePervert>><</if>>
-		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualQuirk == "caring">>
@@ -913,7 +913,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeCaring>>
 		<<set $slaves[$i].pornTypeCaring += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarCarings-1))>>
-		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "caring" || $slaves[$i].pornFameType == "voyeur">>
 			$possessiveCap sincere devotion to $possessive partner's pleasure draws in viewers with an interest in watching couples fuck.
@@ -928,7 +928,7 @@
 		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
 	<<elseif slaves[$i].pornTypeCaring > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCaring>><</if>>
-		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualQuirk == "unflinching">>
@@ -939,7 +939,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeUnflinching>>
 		<<set $slaves[$i].pornTypeUnflinching += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarUnflinchings-1))>>
-		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "unflinching" || $slaves[$i].pornFameType == "unspeakable">>
 			$possessiveCap willingness to do anything catches the attention of those who enjoy acts that should never be mentioned to others.
@@ -954,7 +954,7 @@
 		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
 	<<elseif slaves[$i].pornTypeUnflinching > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeUnflinching>><</if>>
-		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
 	<</if>>
 	<<if $slaves[$i].sexualQuirk == "size queen">>
@@ -965,7 +965,7 @@
 		<</if>>
 		<<set _oldPorn = $slaves[$i].pornTypeSizeQueen>>
 		<<set $slaves[$i].pornTypeSizeQueen += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStarSizeQueens-1))>>
-		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen, 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "size queen" || $slaves[$i].pornFameType == "huge insertion">>
 			$possessiveCap intent on taking the largest things possible into her holes draws in viewers with an interest for huge insertions.
@@ -980,19 +980,32 @@
 		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
 	<<elseif slaves[$i].pornTypeSizeQueen > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSizeQueen>><</if>>
-		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
 	<</if>>
 
 	<<set $slaves[$i].pornFame = $slaves[$i].pornTypeGeneral + $slaves[$i].pornTypeFuckdoll + $slaves[$i].pornTypeRape + $slaves[$i].pornTypePreggo + $slaves[$i].pornTypeBBW + $slaves[$i].pornTypeGainer + $slaves[$i].pornTypeStud + $slaves[$i].pornTypeLoli + $slaves[$i].pornTypeDeepThroat + $slaves[$i].pornTypeStruggleFuck + $slaves[$i].pornTypePainal + $slaves[$i].pornTypeTease + $slaves[$i].pornTypeRomantic + $slaves[$i].pornTypePervert + $slaves[$i].pornTypeCaring + $slaves[$i].pornTypeUnflinching + $slaves[$i].pornTypeSizeQueen + $slaves[$i].pornTypeNeglectful + $slaves[$i].pornTypeCumAddict + $slaves[$i].pornTypeAnalAddict + $slaves[$i].pornTypeAttentionWhore + $slaves[$i].pornTypeBreastGrowth + $slaves[$i].pornTypeAbusive + $slaves[$i].pornTypeMalicious + $slaves[$i].pornTypeSelfHating + $slaves[$i].pornTypeBreeder + $slaves[$i].pornTypeSub + $slaves[$i].pornTypeCumSlut + $slaves[$i].pornTypeAnal + $slaves[$i].pornTypeHumiliation + $slaves[$i].pornTypeBoobs + $slaves[$i].pornTypeDom + $slaves[$i].pornTypeSadist + $slaves[$i].pornTypeMasochist + $slaves[$i].pornTypePregnancy>>
 	<<set $slaves[$i].pornFame = Math.trunc($slaves[$i].pornFame)>>
+	
+	
 
 	<<if _oldFame > $slaves[$i].pornFame>>
 		Overall, $possessive online fame @@.red:dropped@@ this week.
 	<<elseif _oldFame < $slaves[$i].pornFame>>
 		Overall, $possessive online fame @@.green:rose@@ this week.
-	<<else>>
+	<<elseif $slaves[$i].pornFame != 0>>
 		Surprisingly, $possessive online fame @@.yellow;remained consistant@@ this week despite how fickle watchers can be.
+	<<else>>
+		$pronoun cap went @@.red;completely overlooked@@ this week and failed to gain any hits at all.
+	<</if>>
+	
+	<<if $slaves[$i].pornFame > 0>>
+		<<set _topFame = getHighestPorn($slaves[$i])>>
+		<<set _donations = Math.floor($slaves[$i].pornFame/(random(10,15+_viewerSoaking)))>>
+		<<if _donations > 0>>
+			Fans donated a total of @@.yellowgreen;<<print cashFormat(_donations)>>@@ to $possessive account this week.
+			<<set $cash += _donations>>
+		<</if>>
 	<</if>>
 	
 	/* prestige gen */
@@ -1153,13 +1166,15 @@
 		<</if>>
 	<<elseif $slaves[$i].pornPrestige == 1>>
 		<<set _failedStar = 0>>
-	
+
 		<<switch $slaves[$i].pornFameType>>
 		<<case "generic">>
 			<<if $slaves[$i].pornTypeGeneral >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from her career in slave pornography. Her many fans relish the sight of her being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
+			<<elseif $slaves[$i].pornTypeGeneral >= _topFame*1.5>>
+				
 			<<elseif $slaves[$i].pornTypeGeneral < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1174,7 +1189,7 @@
 		<<case "rape">>
 			<<if $slaves[$i].pornTypeRape >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
-				<<set $slaves[$i].pornPrestigeDesc = "It is well known from its career in slave pornography. Her many fans relish the sight of her being raped.">>
+				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her being raped.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being raped, so it is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeRape < 100>>
 				<<set _failedStar = 1>>
@@ -1255,7 +1270,7 @@
 			<<if $slaves[$i].pornTypeRomantic >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the deep bond she shares with her partners.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeRomantic < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1263,7 +1278,7 @@
 			<<if $slaves[$i].pornTypePervert >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the depths of her pervesions.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypePervert < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1271,7 +1286,7 @@
 			<<if $slaves[$i].pornTypeCaring >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeCaring < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1279,7 +1294,7 @@
 			<<if $slaves[$i].pornTypeUnflinching >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her willingness to do anything and everything.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeUnflinching < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1287,7 +1302,7 @@
 			<<if $slaves[$i].pornTypeSizeQueen >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her holes filled to their limits.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeSizeQueen < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1295,7 +1310,7 @@
 			<<if $slaves[$i].pornTypeNeglectful >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her denying herself pleasure.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $object denying <<print $object>>self pleasure.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object denying <<print $object>>self pleasure, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeNeglectful < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1303,7 +1318,7 @@
 			<<if $slaves[$i].pornTypeCumAddict >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for cum.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $object doing anything for cum.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for cum, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeCumAddict < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1311,7 +1326,7 @@
 			<<if $slaves[$i].pornTypeAnalAddict >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for a dick up her ass.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $object doing anything for a dick up $possessive ass.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for a dick up $possessive ass, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeAnalAddict < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1319,7 +1334,7 @@
 			<<if $slaves[$i].pornTypeAttentionWhore >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for attention.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $object doing anything for attention.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for attention, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeAttentionWhore < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1327,7 +1342,7 @@
 			<<if $slaves[$i].pornTypeBreastGrowth >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her expanding bust.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive expanding bust.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive expanding bust, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeBreastGrowth < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1335,7 +1350,7 @@
 			<<if $slaves[$i].pornTypeAbusive >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her abusing others.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive abusing others.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object abusing others, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeAbusive < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1343,7 +1358,7 @@
 			<<if $slaves[$i].pornTypeMalicious >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her getting off from the suffering she caused.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive getting off from the suffering $pronoun caused.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object getting off from the suffering $pronoun caused, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeMalicious < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1351,7 +1366,7 @@
 			<<if $slaves[$i].pornTypeSelfHating >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her suffering.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive suffering.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive suffering, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeSelfHating < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1359,7 +1374,7 @@
 			<<if $slaves[$i].pornTypeBreeder >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her obsession with having children.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive obsession with having children.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive obsession with having children, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeBreeder < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1367,7 +1382,7 @@
 			<<if $slaves[$i].pornTypeSub >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her submissiveness.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive submissiveness.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive submissiveness, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeSub < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1375,7 +1390,7 @@
 			<<if $slaves[$i].pornTypeCumSlut >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her desire for cum.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive desire for cum.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive desire for cum, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeCumSlut < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1383,7 +1398,7 @@
 			<<if $slaves[$i].pornTypeAnal >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her rear.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive rear.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive rear, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeAnal < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1391,7 +1406,7 @@
 			<<if $slaves[$i].pornTypeHumiliation >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her frequent humiliation.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive frequent humiliation.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive frequent humiliation, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeHumiliation < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1399,7 +1414,7 @@
 			<<if $slaves[$i].pornTypeBoobs >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her breasts.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish the sight of $possessive breasts.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive breasts, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeBoobs < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1407,7 +1422,7 @@
 			<<if $slaves[$i].pornTypeDom >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her dominance.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive dominance.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive dominance, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeDom < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1415,7 +1430,7 @@
 			<<if $slaves[$i].pornTypeSadist >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her sadism.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive sadism.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive sadism, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeSadist < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1423,7 +1438,7 @@
 			<<if $slaves[$i].pornTypeMasochist >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her masochism.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive masochism.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive masochism, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypeMasochist < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1431,7 +1446,7 @@
 			<<if $slaves[$i].pornTypePregnancy >= 10000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her fondness for pregnancy.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans  relish $possessive fondness for pregnancy.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive fondness for pregnancy, so $pronoun is now prestigious to own $object.
 			<<elseif $slaves[$i].pornTypePregnancy < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1442,79 +1457,459 @@
 		
 		<<if _failedStar == 1>>
 			<<set $slaves[$i].pornPrestige = 0, $slaves[$i].pornPrestigeDesc = 0>>
-			@@.red;$pronounCap popularity in $slaves[$i].pornFameType pornography has faded.@@ $pronounCap is once again relatively unknown.
+			@@.red;$possessiveCap popularity in $slaves[$i].pornFameType pornography has faded.@@ $pronounCap is once again relatively unknown.
 			<<set $slaves[$i].pornFameType = "none">>
 		<</if>>
-		
-	<</if>>
-	
-	
-	<<if ($slaves[$i].prestige < 3) && ($slaves[$i].pornFame >= 100) && (_oldFame < 100)>>
-		<<set $slaves[$i].prestige = 3>>
-		@@.green;$pronounCap has become world famous for $possessive career in slave pornography!@@ Millions are now intimately familiar with
-		<<if $slaves[$i].fuckdoll > 0>>
-			<<set $slaves[$i].prestigeDesc = "It is world famous for its career in slave pornography. Millions are intimately familiar with the sight of it being used.">>
-			the sight of it being used,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing it offering itself">>
-		<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being raped.">>
-			the sight of her being raped,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her crying">>
-		<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds she makes when being throatfucked.">>
-			the sounds she makes when being throatfucked,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting facefucked">>
-		<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her screams of anal pain.">>
-			her screams of anal pain,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking a brutal assfuck">>
-		<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being gagfucked.">>
-			how she struggles when taking a fuck,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her screaming and struggling">>
-		<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her lewd striptease.">>
-			her lewd striptease,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stripping">>
-		<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her authentic pleasure.">>
-			her authentic pleasure,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her in ecstasy">>
-		<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her most perverted tendencies.">>
-			her most perverted tendencies,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something perverted">>
-		<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her devotion to her partners' pleasure.">>
-			her devotion to her partners' pleasure,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her smiling genuinely">>
-		<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her willingness to do things not repeated in polite company.">>
-			her willingness to do things not repeated in polite company,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something extreme">>
-		<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her holes stretched to their limits.">>
-			the sight of her holes stretched to their limits,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stuffed to her limit">>
-		<<elseif $slaves[$i].bellyPreg >= 1500>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the growth of her belly and her pregnant pussy.">>
-			the sight of her rounded belly and pregnant pussy,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pregnant pussy getting pounded">>
-		<<else>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being fucked.">>
-			the sight of her being fucked,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting fucked">>
-		<</if>>
-		<<set $trinkets.push($desc)>>
-		so it is now extremely prestigious to own $object.
-
-
-
-	
+	<<elseif $slaves[$i].pornPrestige == 2>>
+		<<set _failedStar = 0>>
 
-	<<if ($slaves[$i].prestige >= 3)>>
-		Further paid publicity cannot increase $possessive fame, so subsidy of porn featuring $object has stopped.
-		<<set $slaves[$i].pornFameSpending = 0>>
+		<<switch $slaves[$i].pornFameType>>
+		<<case "generic">>
+			<<if $slaves[$i].pornTypeGeneral >= 75000 && $pornStarID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeGeneral = 250000, $pornStarID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her mid-coitus.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object mid-coitus, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her mid-coitus">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeGeneral < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "fuckdoll">>
+			<<if $slaves[$i].pornTypeFuckdoll >= 75000 && $pornStarFuckdollID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeFuckdoll = 250000, $pornStarFuckdollID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "It is world famous for its career in slave pornography. Millions are intimately familiar with the sight of it being used.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object being used, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing it offering itself">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeFuckdoll < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "rape">>
+			<<if $slaves[$i].pornTypeRape >= 75000 && $pornStarRapeID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeRape = 250000, $pornStarRapeID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being raped.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object being raped, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her rape">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeRape < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "preggo">>
+			<<if $slaves[$i].pornTypePreggo >= 75000 && $pornStarPreggoID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePreggo = 250000, $pornStarPreggoID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her swollen with child.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object swollen with child, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her cradling her middle">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypePreggo < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "BBW">>
+			<<if $slaves[$i].pornTypeBBW >= 75000 && $pornStarBBWID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBBW = 250000, $pornStarBBWID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her thick, soft body.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive thick and soft body, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her giving a bellyjob">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypePreggo < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "underage">>
+			<<if $slaves[$i].pornTypeLoli >= 75000 && $pornStarLoliID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeLoli = 250000, $pornStarLoliID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her immature body.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive immature body, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her 'innocence'">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeLoli < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "weight gain">>
+			<<if $slaves[$i].pornTypeGainer >= 75000 && $pornStarGainerID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeGainer = 250000, $pornStarGainerID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with how with how much weight she has gained.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with how much weight<<print $pronoun>>'s put on, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her trying on her old clothes">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeGainer < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "big dick">>
+			<<if $slaves[$i].pornTypeStud >= 75000 && $pornStarStudID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeStud = 250000, $pornStarStudID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her erect dick.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive erect dick, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her money shot">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeStud < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "deepthroat">>
+			<<if $slaves[$i].pornTypeDeepThroat >= 75000 && $pornStarDeepThroatID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeDeepThroat = 250000, $pornStarDeepThroatID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds she makes when being throatfucked.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sounds $pronoun makes when being throatfucked, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting facefucked">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeDeepThroat < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "unwilling">>
+			<<if $slaves[$i].pornTypeStruggleFuck >= 75000 && $pornStarStruggleFuckID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeStruggleFuck = 250000, $pornStarStruggleFuckID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with how perfectly she struggles during sex.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with how perfectly $pronoun struggles during sex, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her struggling">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeStruggleFuck < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "hardcore anal">>
+			<<if $slaves[$i].pornTypePainal >= 75000 && $pornStarPainalID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePainal = 250000, $pornStarPainalID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with seeing her asshole pushed to its limit.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with seeing $possessive asshole pushed to its limit, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking an enormous dick up her ass">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypePainal < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "softcore">>
+			<<if $slaves[$i].pornTypeTease >= 75000 && $pornStarTeaseID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeTease = 250000, $pornStarTeaseID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her lewd striptease.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive lewd striptease, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stripping">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeTease < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "romantic">>
+			<<if $slaves[$i].pornTypeRomantic >= 75000 && $pornStarRomanticID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeRomantic = 250000, $pornStarRomanticID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the deep bond she shares with her partners.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the deep bond $pronoun shares with her partners, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her sharing an orgasm with her partner">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeRomantic < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "really perverted">>
+			<<if $slaves[$i].pornTypePervert >= 75000 && $pornStarPervertID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePervert = 250000, $pornStarPervertID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the depths of her pervesions.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the depths of $possessive pervesions, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something perverted">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypePervert < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "voyeur">>
+			<<if $slaves[$i].pornTypeCaring >= 75000 && $pornStarCaringID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCaring = 250000, $pornStarCaringID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her devotion to her partners' pleasure.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive devotion to $possessive partners' pleasure, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bringing her partner to orgasm">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeCaring < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "unspeakable">>
+			<<if $slaves[$i].pornTypeUnflinching >= 75000 && $pornStarUnflinchingID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeUnflinching = 250000, $pornStarUnflinchingID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her willingness to do things not repeated in polite company.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive willingness to do things not repeated in polite company, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something unmentionable">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeUnflinching < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "huge insertion">>
+			<<if $slaves[$i].pornTypeSizeQueen >= 75000 && $pornStarSizeQueenID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSizeQueen = 250000, $pornStarSizeQueenID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her holes filled to their limits.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive holes filled to their limits, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her belly bulging from within">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeSizeQueen < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "orgasm denial">>
+			<<if $slaves[$i].pornTypeNeglectful >= 75000 && $pornStarNeglectfulID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeNeglectful = 250000, $pornStarNeglectfulID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her denying herself pleasure.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object denying <<print $object>>self pleasure, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pleasing a line of partners without cuming once">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeNeglectful < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "cum addiction">>
+			<<if $slaves[$i].pornTypeCumAddict >= 75000 && $pornStarCumAddictID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCumAddict = 250000, $pornStarCumAddictID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her doing anything for cum.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object doing anything for cum, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bathing in a tub of cum">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeCumAddict < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "anal addiction">>
+			<<if $slaves[$i].pornTypeAnalAddict >= 75000 && $pornStarAnalAddictID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAnalAddict = 250000, $pornStarAnalAddictID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her well-versed anus.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object doing anything for a dick up $possessive ass, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking a series of huge cocks up her ass">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeAnalAddict < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "exhibition">>
+			<<if $slaves[$i].pornTypeAttentionWhore >= 75000 && $pornStarAttentionWhoreID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAttentionWhore = 250000, $pornStarAttentionWhoreID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her doing anything for attention.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object going to any length for attention, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her flashing strangers">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeAttentionWhore < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breast expansion">>
+			<<if $slaves[$i].pornTypeBreastGrowth >= 75000 && $pornStarBreastGrowthID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBreastGrowth = 250000, $pornStarBreastGrowthID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the history of her growing bust.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with history of her growing bust, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her having her tits measured">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeBreastGrowth < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "abuse">>
+			<<if $slaves[$i].pornTypeAbusive >= 75000 && $pornStarAbusiveID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAbusive = 250000, $pornStarAbusiveID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her abusive tendencies.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive abusive tendencies, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " taking what she wants by force">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeAbusive < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "sexual torture">>
+			<<if $slaves[$i].pornTypeMalicious >= 75000 && $pornStarMaliciousID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeMalicious = 250000, $pornStarMaliciousID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her hunger for making others suffer.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive torturing others, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her tormenting her prey">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeMalicious < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "self hating">>
+			<<if $slaves[$i].pornTypeSelfHating >= 75000 && $pornStarSelfHatingID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSelfHating = 250000, $pornStarSelfHatingID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her suffering.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object suffering, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her orgasming from pain">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeSelfHating < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breeder">>
+			<<if $slaves[$i].pornTypeBreeder >= 75000 && $pornStarBreederID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBreeder = 250000, $pornStarBreederID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her obsession with being pregnant.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive obsession with having children, so it is now extremely prestigious to own $object.
+				<<if $slaves[$i].births > 0>>
+					<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her having an orgasmic birth">>
+				<<else>>
+					<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her being bred">>
+				<</if>>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeBreeder < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "submissive">>
+			<<if $slaves[$i].pornTypeSub >= 75000 && $pornStarSubID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSub = 250000, $pornStarSubID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her submissiveness.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive submissiveness, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her sumbmission">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeSub < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "cum">>
+			<<if $slaves[$i].pornTypeCumSlut >= 75000 && $pornStarCumSlutID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCumSlut = 250000, $pornStarCumSlutID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her taste for cum.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive taste for cum, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her drinking a glass of cum">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeCumSlut < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "buttslut">>
+			<<if $slaves[$i].pornTypeAnal >= 75000 && $pornStarAnalID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAnal = 250000, $pornStarAnalID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her rear.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive rear, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her shaking her booty">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeAnal < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "humiliating">>
+			<<if $slaves[$i].pornTypeHumiliation >= 75000 && $pornStarHumiliationID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeHumiliation = 250000, $pornStarHumiliationID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her frequent humiliation.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive frequent humiliation, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her humiliated in public">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeHumiliation < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breast">>
+			<<if $slaves[$i].pornTypeBoobs >= 75000 && $pornStarBoobsID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBoobs = 250000, $pornStarBoobsID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her breasts.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive breasts, so it is now extremely prestigious to own $object, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bare chest">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeBoobs < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "dominant">>
+			<<if $slaves[$i].pornTypeDom >= 75000 && $pornStarDomID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeDom = 250000, $pornStarDomID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her dominant streak.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive dominant streak, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her seated upon her obediant toy">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeDom < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "sadistic">>
+			<<if $slaves[$i].pornTypeSadist >= 75000 && $pornStarSadistID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSadist = 250000, $pornStarSadistID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her sadistic streak.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive sadistic streak, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her whipping her lover">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeSadist < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "masochistic">>
+			<<if $slaves[$i].pornTypeMasochist >= 75000 && $pornStarMasochistID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeMasochist = 250000, $pornStarMasochistID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her masochistic streak.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive masochistic streak, so it is now extremely prestigious to own $object.
+				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her being whipped">>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypeMasochist < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "pregnancy fetish">>
+			<<if $slaves[$i].pornTypePregnancy >= 75000 && $pornStarPregnancyID == 0>>
+				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePregnancy = 250000, $pornStarPregnancyID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her pregnancy kink.">>
+				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive pregnancy kink, so it is now extremely prestigious to own $object.
+				<<if $slaves[$i].ovaries == 1 || $slaves[$i].mpreg == 1>>
+					<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting knocked up">>
+				<<elseif $slaves[$i].dick > 0>>
+					<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her knocking a girl up">>
+				<<else>>
+					<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pretending to be pregnant">>
+				<</if>>
+				<<set $trinkets.push(_desc)>>
+			<<elseif $slaves[$i].pornTypePregnancy < 5000>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<default>>
+			@@.red;No porn fame detected, reseting to "none".@@
+			<<set $slaves[$i].pornPrestige = 0, $slaves[$i].pornPrestigeDesc = 0, $slaves[$i].pornFameType = "none">>
+		<</switch>>
+		
+		<<if _failedStar == 1>>
+			<<set $slaves[$i].pornPrestige = 1>>
+			@@.red;$possessiveCap popularity in $slaves[$i].pornFameType pornography has dropped considerably,@@ though $pronoun still retains a core fanbase.
+			<<switch $slaves[$i].pornFameType>>
+			<<case "generic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her being used.">>
+			<<case "fuckdoll">>
+				<<set $slaves[$i].pornPrestigeDesc = "It has a following in slave pornography. Its fans relish the sight of it being used.">>
+			<<case "rape">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her being raped.">>
+			<<case "preggo">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her swell with child.">>
+			<<case "BBW">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her thick and soft body.">>
+			<<case "underage">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her childish body.">>
+			<<case "weight gain">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her eating and gaining weight.">>
+			<<case "big dick">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her throbbing erection.">>
+			<<case "deepthroat">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
+			<<case "unwilling">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed how she struggles during sex.">>
+			<<case "hardcore anal">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her asshole pushed to its limit.">>
+			<<case "softcore">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her lewd striptease.">>
+			<<case "romantic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the deep bond she shares with her partners.">>
+			<<case "really perverted">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her most perverted tendencies.">>
+			<<case "voyeur">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her devote herself to her partners' pleasure.">>
+			<<case "unspeakable">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her willingness to do things not repeated in polite company.">>
+			<<case "huge insertion">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her holes filled to their limits.">>
+			<<case "orgasm denial">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her ignoring her own pleasure.">>
+			<<case "cum addiction">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything and everything for cum.">>
+			<<case "anal addiction">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything for a dick in her ass.">>
+			<<case "exhibition">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything for attention.">>
+			<<case "breast expansion">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed charting the growth of her breasts.">>
+			<<case "abuse">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her abuse others.">>
+			<<case "sexual torture">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her getting off from the suffering she caused.">>
+			<<case "self hating">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her happily suffer.">>
+			<<case "breeder">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her obsess over pumping out babies.">>
+			<<case "submissive">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her submission.">>
+			<<case "cum">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her taste for cum.">>
+			<<case "buttslut">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her rear.">>
+			<<case "humiliating">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her humiliating herself.">>
+			<<case "breast">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her breasts.">>
+			<<case "dominant">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her dominance.">>
+			<<case "sadistic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her sadism.">>
+			<<case "masochistic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her masochism.">>
+			<<case "pregnancy fetish">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her fondness for pregnancy.">>
+			<</switch>>
+		<</if>>
+		
+		<<if $slaves[$i].pornPrestige > 2>>
+			Further paid publicity cannot increase $possessive fame, so subsidy of porn featuring $object has stopped.
+			<<set $slaves[$i].pornFameSpending = 0>>
+		<</if>>
 	<</if>>
 	
 <<else>> /* popularity decay from lack of new content */
@@ -1529,184 +1924,485 @@
 
 	<<if slaves[$i].pornTypeNeglectful > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeNeglectful>><</if>>
-		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeCumAddict > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumAddict>><</if>>
-		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeAnalAddict > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnalAddict>><</if>>
-		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeAttentionWhore > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAttentionWhore>><</if>>
-		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeBreastGrowth > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreastGrowth>><</if>>
-		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeAbusive > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAbusive>><</if>>
-		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeMalicious > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMalicious>><</if>>
-		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeSelfHating > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSelfHating>><</if>>
-		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeBreeder > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreeder>><</if>>
-		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
 	<</if>>
 
 	<<if slaves[$i].pornTypeSub > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSub>><</if>>
-		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeCumSlut > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumSlut>><</if>>
-		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeAnal > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnal>><</if>>
-		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeHumiliation > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeHumiliation>><</if>>
-		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeBoobs > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBoobs>><</if>>
-		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeDom > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDom>><</if>>
-		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeSadist > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSadist>><</if>>
-		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeMasochist > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMasochist>><</if>>
-		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypePregnancy > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePregnancy>><</if>>
-		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
 	<</if>>
 
 	<<if slaves[$i].pornTypeFuckdoll > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeFuckdoll>><</if>>
-		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeRape > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRape>><</if>>
-		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypePreggo > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePreggo>><</if>>
-		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeBBW > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBBW>><</if>>
-		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeLoli > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeLoli>><</if>>
-		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeGainer > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGainer>><</if>>
-		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeStud > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStud>><</if>>
-		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeGeneral > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGeneral>><</if>>
-		<<set $slaves[$i].pornTypeGeneral = Math.clamp($slaves[$i].pornTypeGeneral-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeGeneral = Math.clamp($slaves[$i].pornTypeGeneral-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeGeneral).<</if>>
 	<</if>>
 
 	<<if slaves[$i].pornTypeDeepThroat > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDeepThroat>><</if>>
-		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeStruggleFuck > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStruggleFuck>><</if>>
-		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypePainal > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePainal>><</if>>
-		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeTease > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeTease>><</if>>
-		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeRomantic > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRomantic>><</if>>
-		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypePervert > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePervert>><</if>>
-		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeCaring > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCaring>><</if>>
-		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeUnflinching > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeUnflinching>><</if>>
-		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
 	<</if>>
 	<<if slaves[$i].pornTypeSizeQueen > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSizeQueen>><</if>>
-		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen-(_decayRate*2), 0, 1000000000)>>
+		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
 	<</if>>
 
 	<<set $slaves[$i].pornFame = $slaves[$i].pornTypeGeneral + $slaves[$i].pornTypeFuckdoll + $slaves[$i].pornTypeRape + $slaves[$i].pornTypePreggo + $slaves[$i].pornTypeBBW + $slaves[$i].pornTypeGainer + $slaves[$i].pornTypeStud + $slaves[$i].pornTypeLoli + $slaves[$i].pornTypeDeepThroat + $slaves[$i].pornTypeStruggleFuck + $slaves[$i].pornTypePainal + $slaves[$i].pornTypeTease + $slaves[$i].pornTypeRomantic + $slaves[$i].pornTypePervert + $slaves[$i].pornTypeCaring + $slaves[$i].pornTypeUnflinching + $slaves[$i].pornTypeSizeQueen + $slaves[$i].pornTypeNeglectful + $slaves[$i].pornTypeCumAddict + $slaves[$i].pornTypeAnalAddict + $slaves[$i].pornTypeAttentionWhore + $slaves[$i].pornTypeBreastGrowth + $slaves[$i].pornTypeAbusive + $slaves[$i].pornTypeMalicious + $slaves[$i].pornTypeSelfHating + $slaves[$i].pornTypeBreeder + $slaves[$i].pornTypeSub + $slaves[$i].pornTypeCumSlut + $slaves[$i].pornTypeAnal + $slaves[$i].pornTypeHumiliation + $slaves[$i].pornTypeBoobs + $slaves[$i].pornTypeDom + $slaves[$i].pornTypeSadist + $slaves[$i].pornTypeMasochist + $slaves[$i].pornTypePregnancy>>
 	<<set $slaves[$i].pornFame = Math.trunc($slaves[$i].pornFame)>>
+	
+	<<if $slaves[$i].pornPrestige > 0>>
+		<<set _failedStar = 0>>
+
+		<<switch $slaves[$i].pornFameType>>
+		<<case "generic">>
+			<<if $slaves[$i].pornTypeGeneral < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeGeneral < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "fuckdoll">>
+			<<if $slaves[$i].pornTypeFuckdoll < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeFuckdoll < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "rape">>
+			<<if $slaves[$i].pornTypeRape < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeRape < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "preggo">>
+			<<if $slaves[$i].pornTypePreggo < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypePreggo < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "BBW">>
+			<<if $slaves[$i].pornTypePreggo < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypePreggo < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "underage">>
+			<<if $slaves[$i].pornTypeLoli < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeLoli < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "weight gain">>
+			<<if $slaves[$i].pornTypeGainer < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeGainer < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "big dick">>
+			<<if $slaves[$i].pornTypeStud < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeStud < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "deepthroat">>
+			<<if $slaves[$i].pornTypeDeepThroat < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeDeepThroat < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "unwilling">>
+			<<if $slaves[$i].pornTypeStruggleFuck < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeStruggleFuck < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "hardcore anal">>
+			<<if $slaves[$i].pornTypePainal < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypePainal < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "softcore">>
+			<<if $slaves[$i].pornTypeTease < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeTease < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "romantic">>
+			<<if $slaves[$i].pornTypeRomantic < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeRomantic < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "really perverted">>
+			<<if $slaves[$i].pornTypePervert < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypePervert < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "voyeur">>
+			<<if $slaves[$i].pornTypeCaring < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeCaring < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "unspeakable">>
+			<<if $slaves[$i].pornTypeUnflinching < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeUnflinching < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "huge insertion">>
+			<<if $slaves[$i].pornTypeSizeQueen < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeSizeQueen < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "orgasm denial">>
+			<<if $slaves[$i].pornTypeNeglectful < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeNeglectful < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "cum addiction">>
+			<<if $slaves[$i].pornTypeCumAddict < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeCumAddict < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "anal addiction">>
+			<<if $slaves[$i].pornTypeAnalAddict < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeAnalAddict < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "exhibition">>
+			<<if $slaves[$i].pornTypeAttentionWhore < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeAttentionWhore < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breast expansion">>
+			<<if $slaves[$i].pornTypeBreastGrowth < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeBreastGrowth < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "abuse">>
+			<<if $slaves[$i].pornTypeAbusive < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeAbusive < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "sexual torture">>
+			<<if $slaves[$i].pornTypeMalicious < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeMalicious < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "self hating">>
+			<<if $slaves[$i].pornTypeSelfHating < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeSelfHating < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breeder">>
+			<<if $slaves[$i].pornTypeBreeder < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeBreeder < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "submissive">>
+			<<if $slaves[$i].pornTypeSub < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeSub < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "cum">>
+			<<if $slaves[$i].pornTypeCumSlut < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeCumSlut < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "buttslut">>
+			<<if $slaves[$i].pornTypeAnal < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeAnal < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "humiliating">>
+			<<if $slaves[$i].pornTypeHumiliation < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeHumiliation < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "breast">>
+			<<if $slaves[$i].pornTypeBoobs < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeBoobs < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "dominant">>
+			<<if $slaves[$i].pornTypeDom < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeDom < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "sadistic">>
+			<<if $slaves[$i].pornTypeSadist < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeSadist < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "masochistic">>
+			<<if $slaves[$i].pornTypeMasochist < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypeMasochist < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<case "pregnancy fetish">>
+			<<if $slaves[$i].pornTypePregnancy < 5000 && $slaves[$i].pornPrestige == 2>>
+				<<set _failedStar = 2>>
+			<<elseif $slaves[$i].pornTypePregnancy < 100>>
+				<<set _failedStar = 1>>
+			<</if>>
+		<<default>>
+			@@.red;No porn fame detected, reseting to "none".@@
+			<<set $slaves[$i].pornPrestige = 0, $slaves[$i].pornPrestigeDesc = 0, $slaves[$i].pornFameType = "none">>
+		<</switch>>
+		
+		<<if _failedStar == 1>>
+			<<set $slaves[$i].pornPrestige = 0, $slaves[$i].pornPrestigeDesc = 0>>
+			With no new $slaves[$i].pornFameType content coming out, @@.red;$possessive popularity has faded away.@@
+			<<set $slaves[$i].pornFameType = "none">>
+		<<elseif _failedStar == 2>>
+			<<set $slaves[$i].pornPrestige = 1>>
+			With the lack of any new content, @@.red;$possessive popularity in $slaves[$i].pornFameType pornography has dropped considerably,@@ though some viewers still cling to the hope that <<print $pronoun>>'ll come back.
+			<<switch $slaves[$i].pornFameType>>
+			<<case "generic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her being used.">>
+			<<case "fuckdoll">>
+				<<set $slaves[$i].pornPrestigeDesc = "It has a following in slave pornography. Its fans relish the sight of it being used.">>
+			<<case "rape">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her being raped.">>
+			<<case "preggo">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her swell with child.">>
+			<<case "BBW">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her thick and soft body.">>
+			<<case "underage">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her childish body.">>
+			<<case "weight gain">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her eating and gaining weight.">>
+			<<case "big dick">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her throbbing erection.">>
+			<<case "deepthroat">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
+			<<case "unwilling">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed how she struggles during sex.">>
+			<<case "hardcore anal">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her asshole pushed to its limit.">>
+			<<case "softcore">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her lewd striptease.">>
+			<<case "romantic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the deep bond she shares with her partners.">>
+			<<case "really perverted">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her most perverted tendencies.">>
+			<<case "voyeur">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her devote herself to her partners' pleasure.">>
+			<<case "unspeakable">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her willingness to do things not repeated in polite company.">>
+			<<case "huge insertion">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her holes filled to their limits.">>
+			<<case "orgasm denial">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her ignoring her own pleasure.">>
+			<<case "cum addiction">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything and everything for cum.">>
+			<<case "anal addiction">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything for a dick in her ass.">>
+			<<case "exhibition">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything for attention.">>
+			<<case "breast expansion">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed charting the growth of her breasts.">>
+			<<case "abuse">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her abuse others.">>
+			<<case "sexual torture">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her getting off from the suffering she caused.">>
+			<<case "self hating">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her happily suffer.">>
+			<<case "breeder">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her obsess over pumping out babies.">>
+			<<case "submissive">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her submission.">>
+			<<case "cum">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her taste for cum.">>
+			<<case "buttslut">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her rear.">>
+			<<case "humiliating">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her humiliating herself.">>
+			<<case "breast">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her breasts.">>
+			<<case "dominant">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her dominance.">>
+			<<case "sadistic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her sadism.">>
+			<<case "masochistic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her masochism.">>
+			<<case "pregnancy fetish">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her fondness for pregnancy.">>
+			<</switch>>
+		<</if>>
+	<</if>>
 
 <</if>>
\ No newline at end of file
diff --git a/src/uncategorized/arcologyDescription.tw b/src/uncategorized/arcologyDescription.tw
index 952cc8e1016..0f502413753 100644
--- a/src/uncategorized/arcologyDescription.tw
+++ b/src/uncategorized/arcologyDescription.tw
@@ -496,7 +496,7 @@ Its<<if $weatherCladding == 2>> glorious<<elseif $weatherCladding > 0>> dull<<el
 	<<if $arcologies[0].FSAssetExpansionistResearch == 1>>
 	Many are using wheeled stands to permit them to stand despite their titanic breasts, massive asses, trunk-like cocks and boulder-sized balls.
 	<<else>>
-	Many are using wheeled stands to permit them to stand comfortably despite their titanic breasts.
+	Many are wearing custom bras to manage their enormous breasts.
 	<</if>>
 	<</if>>
 	<<if $arcologies[0].FSRepopulationFocusDecoration >= 80>>
diff --git a/src/uncategorized/reFSAcquisition.tw b/src/uncategorized/reFSAcquisition.tw
index a5a40cc14af..4f4ad9fc1b0 100644
--- a/src/uncategorized/reFSAcquisition.tw
+++ b/src/uncategorized/reFSAcquisition.tw
@@ -1311,7 +1311,7 @@ The call comes in from an office, and you suppress the urge to check whether $as
 	<<case "Edo Revivalist">>\
 	She arrives with doubt already clouding her eyes. It seems she passed one of the arcology's seedier bars on her way up to your penthouse; the sight of roaring patrons swilling cheap sake and manhandling whores in loose kimonos does not seem to have been part of her expectations. As the enslavement process winds on, she reflexively begins to look around for a means of escape, and slowly collapses into herself as she realizes there is none.
 	<<case "Arabian Revivalist">>\
-	Your estimation of her rises through the enslavement process: she doffs and discards her conservative business wear without complaint, and stands nude before you, obeying instructions without fuss. There is an indecipherable glint in her eyeColor: nerves? Excitement? Challenge, even? Perhaps she even feels this is an adventure. And that, it will certainly be.
+	Your estimation of her rises through the enslavement process: she doffs and discards her conservative business wear without complaint, and stands nude before you, obeying instructions without fuss. There is an indecipherable glint in her $activeSlave.eyeColor eyes: nerves? Excitement? Challenge, even? Perhaps she even feels this is an adventure. And that, it will certainly be.
 	<<case "Chinese Revivalist">>\
 	She arrives in a simple, sturdy suit, which she obviously wore in the correct anticipation of immediately removing and never seeing again. She cooperates with the enslavement process as best she can, her glance confident and watchful. She's obviously calculating how to get ahead within this new place, and she pays particularly close attention as the ebb and flow of business through your office brings your various slaves into her view for the first time.
 	<</switch>>\
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index ca27ffe0baf..e5cdafae712 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -7668,6 +7668,11 @@
 <<if $slaves[$i].pornPrestige == 3>>
 	$pronounCap is the whore people envision of when they think of $slaves[$i].pornFameType porn. $possessiveCap ever presence on the internet @@.green;boosts $possessive owner's reputation.@@
 	<<set $repGain += (100*$slaves[$i].pornPrestige)>>
+	<<set _donations = Math.floor($slaves[$i].pornFame/(random(13,20)))+(random(-5000,5000))>>
+	<<if _donations > 0>>
+		A number of gifts and donations totalling @@.yellowgreen;<<print cashFormat(_donations)>>@@ were also sent to $object, among other things.
+		<<set $cash += _donations>>
+	<</if>>
 <<elseif $slaves[$i].pornFame > 0>>
 	<<include "SA Porn">>
 <</if>>
-- 
GitLab


From 79bb1e11293086e9701e137c6f6ee2be1e8a2784 Mon Sep 17 00:00:00 2001
From: Blank <okp57855@psoxs.com>
Date: Fri, 20 Jul 2018 18:15:33 -0700
Subject: [PATCH 096/189] Bug fixes

---
 src/uncategorized/customSlave.tw | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/uncategorized/customSlave.tw b/src/uncategorized/customSlave.tw
index 0e14e5057c6..36372f699dd 100644
--- a/src/uncategorized/customSlave.tw
+++ b/src/uncategorized/customSlave.tw
@@ -360,7 +360,7 @@
 
 <br>
 
-<span id = "ethnicity">
+Ethnicity: <span id = "ethnicity">
 <<textbox "$customSlave.race" $customSlave.race "Custom Slave">>
 </span>
 <<link "White">>
@@ -425,7 +425,7 @@
 
 <br>
 
-<span id = "skin">
+Skin tone: <span id = "skin">
 <<textbox "$customSlave.skin" $customSlave.skin "Custom Slave">>
 </span>
 <<link "White">>
@@ -604,7 +604,7 @@
 <</link>>
 
 <br>
-
+<<if $seeDick > 0>>
 <span id = "dick">
 <<if $customSlave.dick == 0>>No penis.
 <<elseif $customSlave.dick == 2>>Small penis.
@@ -625,7 +625,7 @@
 	<<set $customSlave.dick = 4>>
 	<<CustomSlaveDick>>
 <</link>>
-
+<</if>>
 <br>
 
 <span id = "balls">
-- 
GitLab


From 54e94aa2a52699f5f88c1af2d23907081342de7d Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Sat, 21 Jul 2018 15:28:08 +0300
Subject: [PATCH 097/189] port remove active slave, cleanup

---
 .jshintrc                    |   6 +-
 src/js/assayJS.tw            | 253 +++++++++++++++++++----------------
 src/js/removeActiveSlave.tw  | 205 ++++++++++++++++++++++++++++
 src/npc/removeActiveSlave.tw | 187 +-------------------------
 4 files changed, 346 insertions(+), 305 deletions(-)
 create mode 100644 src/js/removeActiveSlave.tw

diff --git a/.jshintrc b/.jshintrc
index 25cfa9f413f..9aec78ded8e 100644
--- a/.jshintrc
+++ b/.jshintrc
@@ -1,4 +1,8 @@
 {
 	"browser": true,
-	"esversion": 6
+	"esversion": 6,
+	"eqeqeq": true,
+	"nocomma": true,
+	"undef": true,
+	"maxerr": 150
 }
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index c916ceb9213..3dad892b930 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -5,14 +5,14 @@ window.isSlim = function(slave) {
 	var ArcologyZero = State.variables.arcologies[0];
 	
 	if ((slave.boobs < 500) && (slave.butt < 3)) {
-		if ((slave.muscles <= 30) && (ArcologyZero.FSPhysicalIdealist == "unset") && (slave.weight <= 10) && (ArcologyZero.FSHedonisticDecadence == "unset")) {
+		if ((slave.muscles <= 30) && (ArcologyZero.FSPhysicalIdealist === "unset") && (slave.weight <= 10) && (ArcologyZero.FSHedonisticDecadence === "unset")) {
 			slim = true;
-		} else if (ArcologyZero.FSPhysicalIdealist != "unset") {
-			if ((ArcologyZero.FSPhysicalIdealistStrongFat == 1) && (slave.weight <= 30)) { 
+		} else if (ArcologyZero.FSPhysicalIdealist !== "unset") {
+			if ((ArcologyZero.FSPhysicalIdealistStrongFat === 1) && (slave.weight <= 30)) { 
 				slim = true;
 			} 
-		} else if ((ArcologyZero.FSHedonisticDecadence != "unset") && (slave.weight <= 30)) { 
-			if (ArcologyZero.FSHedonisticDecadenceStrongFat == 1) { 
+		} else if ((ArcologyZero.FSHedonisticDecadence !== "unset") && (slave.weight <= 30)) { 
+			if (ArcologyZero.FSHedonisticDecadenceStrongFat === 1) { 
 				slim = true;
 			} else if (slave.muscles <= 30) {
 				slim = true;
@@ -39,7 +39,7 @@ window.isUnmodded = function(slave) {
 	var tatScore = TatScore(slave);
 	var piercingScore = PiercingScore(slave);
 	
-	return !isModded(slave) && (slave.corsetPiercing == 0) && (piercingScore < 3) && (tatScore < 2);
+	return !isModded(slave) && (slave.corsetPiercing === 0) && (piercingScore < 3) && (tatScore < 2);
 };
 
 window.isXY = function(slave) {
@@ -59,7 +59,7 @@ window.isNotPreg = function(slave) {
 };
 
 window.isPure = function(slave) {
-	return ((slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant < 30) && (slave.bellyImplant == -1) && (Math.abs(slave.shouldersImplant) < 2) && (Math.abs(slave.hipsImplant) < 2));
+	return ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant < 30) && (slave.bellyImplant === -1) && (Math.abs(slave.shouldersImplant) < 2) && (Math.abs(slave.hipsImplant) < 2));
 };
 
 window.modScore = function modScore(slave) {
@@ -99,7 +99,7 @@ window.PiercingScore = function(slave) {
 	if (slave.tonguePiercing > 0 ) {
 		piercingScore += slave.tonguePiercing*0.75-0.25;
 	}
-	if (slave.clitPiercing == 3) {
+	if (slave.clitPiercing === 3) {
 		piercingScore += 1.25; /* smart piercing */
 	} else if (slave.clitPiercing > 0) {
 		piercingScore += slave.clitPiercing*0.75-0.25;
@@ -119,37 +119,37 @@ window.PiercingScore = function(slave) {
 window.TatScore = function(slave) {
 	var tatScore = 0;
 
-	if (slave.boobsTat != 0) {
+	if (slave.boobsTat !== 0) {
 		tatScore += 1.25;
 	}
-	if (slave.buttTat != 0) {
+	if (slave.buttTat !== 0) {
 		tatScore += 1.25;
 	}
-	if (slave.lipsTat != 0) {
+	if (slave.lipsTat !== 0) {
 		tatScore += 1.25;
 	}
-	if (slave.shouldersTat != 0) {
+	if (slave.shouldersTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.backTat != 0) {
+	if (slave.backTat !== 0) {
 		tatScore += 1.25;
 	}
-	if (slave.armsTat != 0) {
+	if (slave.armsTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.legsTat != 0) {
+	if (slave.legsTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.stampTat != 0) {
+	if (slave.stampTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.vaginaTat != 0) {
+	if (slave.vaginaTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.dickTat != 0) {
+	if (slave.dickTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.bellyTat != 0) {
+	if (slave.bellyTat !== 0) {
 		if (((slave.preg > 30) && (slave.pregType >= 20)) || (slave.belly >= 300000)) {
 			tatScore += 0.75;
 		} else if (((slave.preg > 20) && (slave.pregType >= 20)) || ((slave.preg > 30) && (slave.pregType >= 10)) || (slave.belly >= 150000)) {
@@ -164,9 +164,9 @@ window.TatScore = function(slave) {
 			tatScore += 0.1;
 		}
 	}
-	if (slave.anusTat == "bleached") {
+	if (slave.anusTat === "bleached") {
 		tatScore += 0.5;
-	} else if (slave.anusTat != 0) {
+	} else if (slave.anusTat !== 0) {
 		tatScore += 1.25;
 	}
 	
@@ -177,14 +177,14 @@ window.slimPass = function(slave) {
 	var slimPass = 0;
 	var ArcologyZero = State.variables.arcologies[0];
 	
-	if (ArcologyZero.FSSlimnessEnthusiastLaw == 1) {
+	if (ArcologyZero.FSSlimnessEnthusiastLaw === 1) {
 		if ((slave.boobs < 300) && (slave.butt <= 1) && (slave.waist <= 10)) {
 			State.variables.slimPass = 1;
-			if ((ArcologyZero.FSPhysicalIdealist == "unset") && (ArcologyZero.FSHedonisticDecadenceStrongFat == 0) && (slave.muscles > 30)) { /*muscle check*/
+			if ((ArcologyZero.FSPhysicalIdealist === "unset") && (ArcologyZero.FSHedonisticDecadenceStrongFat === 0) && (slave.muscles > 30)) { /*muscle check*/
 				slimPass = 0;
 			}
-			if (State.variables.slimPass == 1) {
-				if ((ArcologyZero.FSHedonisticDecadence != "unset") || (ArcologyZero.FSPhysicalIdealistStrongFat == 1)) { /*weight check*/
+			if (State.variables.slimPass === 1) {
+				if ((ArcologyZero.FSHedonisticDecadence !== "unset") || (ArcologyZero.FSPhysicalIdealistStrongFat === 1)) { /*weight check*/
 					if (slave.weight > 30) {
 						slimPass = 0;
 					}
@@ -313,11 +313,26 @@ window.newSlave = function newSlave(slave) {
 	}
 
 	if (slave.fuckdoll > 0) {
-		slave.pronoun = "it", slave.possessivePronoun = "its", slave.possessive = "its", slave.object = "it", slave.objectReflexive = "itself", slave.noun = "toy";
+		slave.pronoun = "it";
+		slave.possessivePronoun = "its";
+		slave.possessive = "its";
+		slave.object = "it";
+		slave.objectReflexive = "itself";
+		slave.noun = "toy";
 	} else if (slave.dick > 0 && slave.vagina === -1 && V.diversePronouns === 1) {
-		slave.pronoun = "he", slave.possessivePronoun = "his", slave.possessive = "his", slave.object = "him", slave.objectReflexive = "himself", slave.noun = "boy";
+		slave.pronoun = "he";
+		slave.possessivePronoun = "his";
+		slave.possessive = "his";
+		slave.object = "him";
+		slave.objectReflexive = "himself";
+		slave.noun = "boy";
 	} else {
-		slave.pronoun = "she", slave.possessivePronoun = "hers", slave.possessive = "her", slave.object = "her", slave.objectReflexive = "herself", slave.noun = "girl";
+		slave.pronoun = "she";
+		slave.possessivePronoun = "hers";
+		slave.possessive = "her";
+		slave.object = "her";
+		slave.objectReflexive = "herself";
+		slave.noun = "girl";
 	}
 
 	SetBellySize(slave);
@@ -400,32 +415,32 @@ window.Enunciate = function Enunciate(slave) {
 		else
 			V.titleEnunciate = "Mithtreth";
 		if (V.allowFamilyTitles === 1) {
-			if (slave.father == -1) {
+			if (slave.father === -1) {
 				if (slave.actualAge < 4 && slave.physicalAge < 4)
 					V.titleEnunciate = "Dadda";
 				else if (slave.actualAge < 9)
 					V.titleEnunciate = "Daddy";
 				else
 					V.titleEnunciate = "Dad";
-			} else if (slave.mother == -1) {
+			} else if (slave.mother === -1) {
 				if (slave.actualAge < 4 && slave.physicalAge < 4)
 					V.titleEnunciate = "Mama";
 				else if (slave.actualAge < 9)
 					V.titleEnunciate = "Mommy";
 				else
 					V.titleEnunciate = "Mom";
-			} else if (V.PC.mother == slave.ID || V.PC.father == slave.ID) {
-				if (V.PC.title == 1)
+			} else if (V.PC.mother === slave.ID || V.PC.father === slave.ID) {
+				if (V.PC.title === 1)
 					V.titleEnunciate = "Thon";
-				else if (V.PC.title == 0)
+				else if (V.PC.title === 0)
 					V.titleEnunciate = "Daughter";
 			} else if (areSisters(slave, V.PC) > 0) {
-				if (V.PC.title == 1) {
+				if (V.PC.title === 1) {
 					if (slave.actualAge < 18)
 						V.titleEnunciate = "Bro";
 					else
 						V.titleEnunciate = "Brother";
-				} else if (V.PC.title == 0) {
+				} else if (V.PC.title === 0) {
 					if (slave.actualAge < 18)
 						V.titleEnunciate = "Thith";
 					else
@@ -448,37 +463,37 @@ window.Enunciate = function Enunciate(slave) {
 	} else {
 		if (V.PC.customTitle !== undefined)
 			V.titleEnunciate = V.PC.customTitle;
-		else if (V.PC.title != 0)
+		else if (V.PC.title !== 0)
 			V.titleEnunciate = "Master";
 		else
 			V.titleEnunciate = "Mistress";
-		if (V.allowFamilyTitles == 1) {
-			if (slave.father == -1) {
+		if (V.allowFamilyTitles === 1) {
+			if (slave.father === -1) {
 				if (slave.actualAge < 4 && slave.physicalAge < 4)
 					V.titleEnunciate = "Dadda";
 				else if (slave.actualAge < 9)
 					V.titleEnunciate = "Daddy";
 				else
 					V.titleEnunciate = "Dad";
-			} else if (slave.mother == -1) {
+			} else if (slave.mother === -1) {
 				if (slave.actualAge < 4 && slave.physicalAge < 4)
 					V.titleEnunciate = "Mama";
 				else if (slave.actualAge < 9)
 					V.titleEnunciate = "Mommy";
 				else
 					V.titleEnunciate = "Mom";
-			} else if (V.PC.mother == slave.ID || V.PC.father == slave.ID) {
-				if (V.PC.title == 1)
+			} else if (V.PC.mother === slave.ID || V.PC.father === slave.ID) {
+				if (V.PC.title === 1)
 					V.titleEnunciate = "Son";
-				else if (V.PC.title == 0)
+				else if (V.PC.title === 0)
 					V.titleEnunciate = "Daughter";
 			} else if (areSisters(slave, V.PC) > 0) {
-				if (V.PC.title == 1) {
+				if (V.PC.title === 1) {
 					if (slave.actualAge < 18)
 						V.titleEnunciate = "Bro";
 					else
 						V.titleEnunciate = "Brother";
-				} else if (V.PC.title == 0) {
+				} else if (V.PC.title === 0) {
 					if (slave.actualAge < 18)
 						V.titleEnunciate = "Sis";
 					else
@@ -486,15 +501,15 @@ window.Enunciate = function Enunciate(slave) {
 				}
 			}
 		}
-		if (slave.customTitle !== undefined && slave.customTitle != "")
+		if (slave.customTitle !== undefined && slave.customTitle !== "")
 			V.titleEnunciate = slave.customTitle;
 		if (V.PC.customTitle !== undefined)
 			V.writtenTitle = V.PC.customTitle;
-		else if (V.PC.title != 0)
+		else if (V.PC.title !== 0)
 			V.writtenTitle = "Master";
 		else
 			V.writtenTitle = "Mistress";
-		if (slave.customTitle !== undefined && slave.customTitle != "" && slave.rudeTitle == 0)
+		if (slave.customTitle !== undefined && slave.customTitle !== "" && slave.rudeTitle === 0)
 			V.writtenTitle = slave.customTitle;
 		V.sayEnunciate = "say";
 		V.sEnunciate = "s";
@@ -563,46 +578,46 @@ window.PCTitle = function PCTitle() {
 	} else if (V.arcologies[0].FSRestart > 10) {
 		V.PCTitle = (V.PCTitle + " of the Societal Elite");
 	} else if (V.rep > 18000) {
-		V.PCTitle = (V.PCTitle + " the Great")
+		V.PCTitle = (V.PCTitle + " the Great");
 	} else if (V.rep > 17000) {
-		V.PCTitle = ("the exalted " + V.PCTitle)
+		V.PCTitle = ("the exalted " + V.PCTitle);
 	} else if (V.rep > 16000) {
-		V.PCTitle = ("the illustrious " + V.PCTitle)
+		V.PCTitle = ("the illustrious " + V.PCTitle);
 	} else if (V.rep > 15000) {
-		V.PCTitle = ("the prestigious " + V.PCTitle)
+		V.PCTitle = ("the prestigious " + V.PCTitle);
 	} else if (V.rep > 14000) {
-		V.PCTitle = ("the renowned " + V.PCTitle)
+		V.PCTitle = ("the renowned " + V.PCTitle);
 	} else if (V.rep > 13000) {
-		V.PCTitle = ("the famed " + V.PCTitle)
+		V.PCTitle = ("the famed " + V.PCTitle);
 	} else if (V.rep > 12000) {
-		V.PCTitle = ("the celebrated " + V.PCTitle)
+		V.PCTitle = ("the celebrated " + V.PCTitle);
 	} else if (V.rep > 11000) {
-		V.PCTitle = ("the honored " + V.PCTitle)
+		V.PCTitle = ("the honored " + V.PCTitle);
 	} else if (V.rep > 10000) {
-		V.PCTitle = ("the acclaimed " + V.PCTitle)
+		V.PCTitle = ("the acclaimed " + V.PCTitle);
 	} else if (V.rep > 9000) {
-		V.PCTitle = ("the eminent " + V.PCTitle)
+		V.PCTitle = ("the eminent " + V.PCTitle);
 	} else if (V.rep > 8250) {
-		V.PCTitle = ("the prominent " + V.PCTitle)
+		V.PCTitle = ("the prominent " + V.PCTitle);
 	} else if (V.rep > 7500) {
-		V.PCTitle = ("the distinguished " + V.PCTitle)
+		V.PCTitle = ("the distinguished " + V.PCTitle);
 	} else if (V.rep > 6750) {
-		V.PCTitle = ("the admired " + V.PCTitle)
+		V.PCTitle = ("the admired " + V.PCTitle);
 	} else if (V.rep > 6000) {
-		V.PCTitle = ("the esteemed " + V.PCTitle)
+		V.PCTitle = ("the esteemed " + V.PCTitle);
 	} else if (V.rep > 5250) {
-		V.PCTitle = ("the respected " + V.PCTitle)
+		V.PCTitle = ("the respected " + V.PCTitle);
 	} else if (V.rep > 4500) {
-		V.PCTitle = ("the known " + V.PCTitle)
+		V.PCTitle = ("the known " + V.PCTitle);
 	} else if (V.rep > 3750) {
-		V.PCTitle = ("the recognized " + V.PCTitle)
+		V.PCTitle = ("the recognized " + V.PCTitle);
 	} else if (V.rep > 3000) {
-		V.PCTitle = ("the rumored " + V.PCTitle)
+		V.PCTitle = ("the rumored " + V.PCTitle);
 	}
 
 	V.PCTitle = (V.PCTitle + ", ");
 
-	if (V.PC.name == "FC Dev") {
+	if (V.PC.name === "FC Dev") {
 		titles.push("the Creator");
 	}
 
@@ -1084,7 +1099,7 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 	const V = State.variables, PC = V.PC, s = V.sEnunciate, ss = V.ssEnunciate;
 	
 	var r = "";
-	if (slave.nationality == "Japanese") {
+	if (slave.nationality === "Japanese") {
 		if (slave.trust > 0) {
 			r += `${PC.name}${PC.title > 0 ? "kun" : "chan"}`;
 		} else {
@@ -1092,7 +1107,7 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 		}
 	} else {
 		if (slave.intelligence < -2) {
-			r += V.titleEnunciate
+			r += V.titleEnunciate;
 		} else if (slave.intelligence > 1) {
 			r += (PC.title > 0 ? `Ma${s}ter` : `Mi${s}tre${ss}`);
 		} else if (slave.trust > 0) {
@@ -1107,27 +1122,27 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 window.SlaveTitle = function SlaveTitle(slave) {
 	const V = State.variables;
 	let r = "";
-	if (V.newDescriptions == 1) {
-		if (slave.dick > 0 && slave.balls > 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries == 1) {
-			if (random(1,100) > 50) {
+	if (V.newDescriptions === 1) {
+		if (slave.dick > 0 && slave.balls > 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries === 1) {
+			if (jsRandom(1,100) > 50) {
 				r = "futanari";
 			} else {
 				r = "herm";
 			}
-		} else if (slave.dick > 0 && slave.balls == 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries == 1) {
+		} else if (slave.dick > 0 && slave.balls === 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries === 1) {
 			r = "dickgirl";
-		} else if (slave.dick > 0 && slave.vagina > -1 && slave.ovaries == 0) {
+		} else if (slave.dick > 0 && slave.vagina > -1 && slave.ovaries === 0) {
 			r = "shemale";
-		} else if (slave.dick > 0 && slave.balls == 0 && slave.vagina == -1 && slave.ovaries == 0) {
+		} else if (slave.dick > 0 && slave.balls === 0 && slave.vagina === -1 && slave.ovaries === 0) {
 			r = "eunuch";
-		} else if (slave.dick > 0 && slave.balls > 0 && slave.vagina == -1 && slave.ovaries == 0) {
-			if (slave.face > 10 && slave.hips > -1 && slave.shoulders < 1 && slave.faceShape != "masculine") {
+		} else if (slave.dick > 0 && slave.balls > 0 && slave.vagina === -1 && slave.ovaries === 0) {
+			if (slave.face > 10 && slave.hips > -1 && slave.shoulders < 1 && slave.faceShape !== "masculine") {
 				r = "trap";
 			} else if (slave.boobs > 800) {
 				r = "tittyboy";
-			} else if (slave.dick == 1 && slave.balls == 1) {
+			} else if (slave.dick === 1 && slave.balls === 1) {
 				r = "sissy";
-			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 165 && slave.muscles < 5 && slave.visualAge < 19 && slave.faceShape != "masculine") {
+			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 165 && slave.muscles < 5 && slave.visualAge < 19 && slave.faceShape !== "masculine") {
 				r = "twink";
 			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 160 && slave.muscles < 5 && slave.visualAge < 19) {
 				r = "boytoy";
@@ -1138,10 +1153,10 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			} else {
 				r = "slaveboy";
 			}
-		} else if (slave.dick == 0 && slave.balls == 0 && slave.vagina > -1) {
-			if ((slave.shoulders > slave.hips || slave.faceShape == "masculine") && slave.boobs < 400 && slave.genes == "XY") {
+		} else if (slave.dick === 0 && slave.balls === 0 && slave.vagina > -1) {
+			if ((slave.shoulders > slave.hips || slave.faceShape === "masculine") && slave.boobs < 400 && slave.genes === "XY") {
 				r = "cuntboy";
-			} else if (slave.ovaries == 0 && slave.genes == "XY") {
+			} else if (slave.ovaries === 0 && slave.genes === "XY") {
 				r = "tranny";
 			} else if (slave.weight > 10 && slave.boobs > 800 && slave.birthsTotal > 0 && slave.physicalAge > 59) {
 				r = "GMILF";
@@ -1158,16 +1173,16 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			} else {
 				r = "slavegirl";
 			}
-		} else if (slave.dick == 0 && slave.balls == 0 && slave.vagina == -1) {
+		} else if (slave.dick === 0 && slave.balls === 0 && slave.vagina === -1) {
 			r = "neuter";
-		} else if (slave.dick == 0 && slave.vagina == -1) {
+		} else if (slave.dick === 0 && slave.vagina === -1) {
 			r = "ballslave";
 		} else {
 			r = "slave";
 		}
 
 		if (slave.visualAge < 13) {
-			if (slave.genes == "XY" && slave.vagina == -1) {
+			if (slave.genes === "XY" && slave.vagina === -1) {
 				r = "shota " + r;
 			} else {
 				r = "loli " + r;
@@ -1228,7 +1243,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			r = "indentured " + r;
 		}
 
-		if (slave.preg > 10 && slave.pregKnown == 1) {
+		if (slave.preg > 10 && slave.pregKnown === 1) {
 			r = "pregnant " + r;
 		} else if (slave.bellyFluid >= 5000) {
 			r = "bloated " + r;
@@ -1241,7 +1256,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 		}
 	} else {
 		r = "slave"; /* I don't tihnk there is an 'else'? */
-		if ((slave.dick == 0) && (slave.vagina == -1)) { /* NULLS */
+		if ((slave.dick === 0) && (slave.vagina === -1)) { /* NULLS */
 			r = "null";
 				if ((slave.lactation > 0) && (slave.boobs > 2000)) {
 					r = r + " cow";
@@ -1265,7 +1280,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 					}
 		}
 
-		if ((slave.dick == 0) && (slave.vagina != -1)) { /* FEMALES */
+		if ((slave.dick === 0) && (slave.vagina !== -1)) { /* FEMALES */
 			if (slave.visualAge > 55) {
 				r = "GILF";
 			} else if (slave.visualAge > 35) {
@@ -1288,7 +1303,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 				}
 		}
 
-		if ((slave.dick != 0) && (slave.vagina != -1)) {
+		if ((slave.dick !== 0) && (slave.vagina !== -1)) {
 				if (slave.balls > 0) { /* FUTANARI: cock & balls & vagina */
 					r = "futanari ";
 				} else { /* FUTANARI: cock & vagina */
@@ -1319,7 +1334,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 							}
 		}
 
-		if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0) && (slave.boobs > 300) && (slave.butt > 2)) { /* SHEMALES: cock & balls, T&A above minimum */
+		if ((slave.dick !== 0) && (slave.vagina === -1) && (slave.balls > 0) && (slave.boobs > 300) && (slave.butt > 2)) { /* SHEMALES: cock & balls, T&A above minimum */
 			if (slave.visualAge > 55) {
 				r = "sheGILF";
 			} else if (slave.visualAge > 35) {
@@ -1343,9 +1358,9 @@ window.SlaveTitle = function SlaveTitle(slave) {
 		}
 
 		if ((slave.boobs < 300) || (slave.butt < 2)) {
-			if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0)) {
+			if ((slave.dick !== 0) && (slave.vagina === -1) && (slave.balls > 0)) {
 				if ((slave.shoulders < 1) || (slave.muscles <= 30)) {
-					if ((slave.faceShape == "masculine") || (slave.faceShape == "androgynous")) { /* SISSIES: feminine shoulders or muscles, masculine faces */
+					if ((slave.faceShape === "masculine") || (slave.faceShape === "androgynous")) { /* SISSIES: feminine shoulders or muscles, masculine faces */
 						if (slave.visualAge > 55) {
 							r = "sissyGILF";
 						} else if (slave.visualAge > 35) {
@@ -1374,7 +1389,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 		}
 
 		if ((slave.boobs < 300) || (slave.butt < 2)) {
-			if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0)) {
+			if ((slave.dick !== 0) && (slave.vagina === -1) && (slave.balls > 0)) {
 				if ((slave.shoulders > 1) || (slave.muscles >= 30)) {	/* BITCHES: masculine shoulders or muscles */
 					r = "bitch";
 						if ((slave.muscles > 30) && (slave.height < 185)) {
@@ -1395,7 +1410,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			}
 		}
 
-		if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls == 0)) {
+		if ((slave.dick !== 0) && (slave.vagina === -1) && (slave.balls === 0)) {
 			r = "dick";
 				if (slave.visualAge > 55) {
 					r = r + "GILF";
@@ -1439,7 +1454,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			r = "indentured " + r;
 		}
 
-		if (slave.preg > 10 && slave.pregKnown == 1) {
+		if (slave.preg > 10 && slave.pregKnown === 1) {
 			r = "pregnant " + r;
 		} else if (slave.bellyFluid >= 5000) {
 			r = "bloated " + r;
@@ -1475,7 +1490,7 @@ window.DegradingName = function DegradingName(slave) {
 	if (slave.fuckdoll > 0) {
 		slave.slaveName = "Fuckdoll No. " + slave.ID;
 		slave.slaveSurname = 0;
-	} else if (slave.assignment == "work in the dairy" && V.dairyRestraintsSetting >= 2) {
+	} else if (slave.assignment === "work in the dairy" && V.dairyRestraintsSetting >= 2) {
 		slave.slaveName = "Bioreactor No. " + slave.ID;
 		slave.slaveSurname = 0;
 	} else {	
@@ -1546,19 +1561,19 @@ window.DegradingName = function DegradingName(slave) {
 			names.push("Huge", "Muscles", "Ripped", "Strong");
 		}
 		if (slave.fetishKnown === 1) {
-			if (slave.fetish == "buttslut") {
+			if (slave.fetish === "buttslut") {
 				names.push("Anal", "Sodomy");
 			} 
-			if (slave.fetish == "cumslut") {
+			if (slave.fetish === "cumslut") {
 				names.push("Cum", "Dicksuck", "Sucker");
 			}
-			if (slave.fetish == "humiliation") {
+			if (slave.fetish === "humiliation") {
 				names.push("Rape");
 			}
-			if (slave.fetish == "masochist") {
+			if (slave.fetish === "masochist") {
 				names.push("Pain", "Rape", "Struggle");
 			}
-			if (slave.fetish == "pregnancy") {
+			if (slave.fetish === "pregnancy") {
 				names.push("Fertile");
 			}
 		}
@@ -1569,9 +1584,9 @@ window.DegradingName = function DegradingName(slave) {
 		if (slave.oralSkill <= 30 && slave.analSkill <= 30) {
 			names.push("Cheap", "Fail", "Gutter");
 		}
-		if (slave.nipples == "fuckable") {
+		if (slave.nipples === "fuckable") {
 			names.push("Nipplefuck", "Nipplecunt");
-		} else if (slave.nipples != "tiny" && slave.nipples != "cute") {
+		} else if (slave.nipples !== "tiny" && slave.nipples !== "cute") {
 			names.push("Pointy", "Titclit");
 			suffixes.push("Nipples");
 		}
@@ -1701,7 +1716,7 @@ window.DegradingName = function DegradingName(slave) {
 				}
 			}
 		} else {
-			if (slave.vagina != -1) {
+			if (slave.vagina !== -1) {
 				suffixes.push("Futa");
 			} else {
 				if (slave.balls > 0) {
@@ -1709,7 +1724,7 @@ window.DegradingName = function DegradingName(slave) {
 						suffixes.push("Shemale");
 					} else {
 						if (slave.shoulders < 1 && slave.muscles <= 30) {
-							if (slave.faceShape == "masculine" || slave.faceShape == "androgynous") { /* SISSIES: feminine shoulders or muscles, masculine faces */
+							if (slave.faceShape === "masculine" || slave.faceShape === "androgynous") { /* SISSIES: feminine shoulders or muscles, masculine faces */
 								suffixes.push("Sissy");
 							} else { /* TRAPS: feminine shoulders or muscles, feminine faces */
 								suffixes.push("Trap");
@@ -1745,19 +1760,19 @@ window.DegradingName = function DegradingName(slave) {
 			suffixes.push("Fuck", "Fuckaddict", "Nympho", "Sexaddict");
 		}
 		if (slave.fetishKnown === 1) {
-			if (slave.fetish == "humiliation") {
+			if (slave.fetish === "humiliation") {
 				suffixes.push("Rapebait", "Showgirl");
 			}
-			if (slave.fetish == "submissive") {
+			if (slave.fetish === "submissive") {
 				suffixes.push("Bottom", "Fuckee", "Rapebait");
 			}
-			if (slave.fetish == "dom") {
+			if (slave.fetish === "dom") {
 				suffixes.push("Dom", "Fucker", "Top");
 			}
-			if (slave.fetish == "pregnancy") {
+			if (slave.fetish === "pregnancy") {
 				suffixes.push("Breeder", "Mommy");
 			}
-			if (slave.fetish == "boobs") {
+			if (slave.fetish === "boobs") {
 				suffixes.push("Boob", "Boobie", "Tit", "Titty");
 			}
 		}
@@ -1833,7 +1848,7 @@ window.DegradingName = function DegradingName(slave) {
 		}
 	}
 	let surname = jsEither(suffixes);
-	if (typeof surname == "string" && surname.toLowerCase() == slave.slaveName.toLowerCase()) {
+	if (typeof surname === "string" && surname.toLowerCase() === slave.slaveName.toLowerCase()) {
 		DegradingName(slave);
 	}
 	slave.slaveSurname = surname;
@@ -1844,43 +1859,43 @@ window.SlaveSort = function SlaveSort(slaves, main=false) {
 	if (main) {
 		switch (V.sortSlavesBy) {
 		case "name":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.slaveName < b.slaveName ? -1 : 1);
 			else
 				slaves = slaves.sort((a, b) => a.slaveName > b.slaveName ? -1 : 1);
 			break;
 		case "assignment":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.assignment < b.assignment ? -1 : 1);
 			else
 				slaves = slaves.sort((a, b) => a.assignment > b.assignment ? -1 : 1);
 			break;
 		case "seniority":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => b.weekAcquired - a.weekAcquired);
 			else
 				slaves = slaves.sort((a, b) => a.weekAcquired - b.weekAcquired);
 			break;
 		case "actualAge":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.actualAge - b.actualAge);
 			else
 				slaves = slaves.sort((a, b) => b.actualAge - a.actualAge);
 			break;
 		case "visualAge":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.visualAge - b.visualAge);
 			else
 				slaves = slaves.sort((a, b) => b.visualAge - a.visualAge);
 			break;
 		case "physicalAge":
-			if (V.sortSlavesOrder == "physicalAge")
+			if (V.sortSlavesOrder === "physicalAge")
 				slaves = slaves.sort((a, b) => a.physicalAge - b.physicalAge);
 			else
 				slaves = slaves.sort((a, b) => b.physicalAge - a.physicalAge);
 			break;
 		default:
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.devotion - b.devotion);
 			else
 				slaves = slaves.sort((a, b) => b.devotion - a.devotion);
@@ -1950,7 +1965,9 @@ window.MenialPopCap = function MenialPopCap () {
 
 window.faceIncrease = function faceIncrease(slave, amount) {
 	const pronouns = getPronouns(slave);
+	const his = pronouns.possessive;
 	const His = capFirstChar(his);
+	let r = "";
 	if (slave.face <= -95)
 		r += `<span class="green">${His} face is no longer horrifying,</span> and is now merely ugly.`;
 	else if (slave.face <= -40 && slave.face + amount > -40)
@@ -1965,4 +1982,4 @@ window.faceIncrease = function faceIncrease(slave, amount) {
 		r += `<span class="green">${His} face is now perfect.</span> It's difficult to imagine how it could be any more beautiful.`;
 	slave.face = Math.clamp(slave.face + amount,-100,100);
 	if (slave.face > 95) slave.face = 100;
-}
+};
diff --git a/src/js/removeActiveSlave.tw b/src/js/removeActiveSlave.tw
new file mode 100644
index 00000000000..87020a11b1d
--- /dev/null
+++ b/src/js/removeActiveSlave.tw
@@ -0,0 +1,205 @@
+//:: Remove activeSlave JS [script]
+
+window.removeActiveSlave = function removeActiveSlave() {
+	"use strict";
+	const V = State.variables;
+
+	const AS_ID = V.activeSlave.ID;
+	let LENGTH = V.slaves.length;
+	const INDEX = V.slaveIndices[AS_ID];
+	let missing = false;
+
+	WombZeroID(V.PC, AS_ID);
+	if (V.activeSlave.reservedChildren > 0) {
+		V.reservedChildren -= V.activeSlave.reservedChildren;
+	}
+	if (V.PC.mother === AS_ID) {
+		V.PC.mother = V.missingParentID;
+		missing = true;
+	}
+	if (V.PC.father === AS_ID) {
+		V.PC.father = V.missingParentID;
+		missing = true;
+	}
+	if (V.PC.sisters > 0) {
+		if (areSisters(V.PC, V.activeSlave) > 0) {
+			V.PC.sisters--;
+		}
+	}
+	if (V.PC.daughters > 0) {
+		if (V.activeSlave.father === -1 || V.activeSlave.mother === -1) {
+			V.PC.daughters--;
+		}
+	}
+
+	if (INDEX >= 0 && INDEX < LENGTH) {
+		if (V.incubator > 0) {
+			V.tanks.forEach(child => {
+				if (AS_ID === child.mother) {
+					child.mother = V.missingParentID;
+					missing = true;
+				}
+				if (AS_ID === child.father) {
+					child.father = V.missingParentID;
+					missing = true;
+				}
+			});
+		}
+		V.slaves.forEach(slave => {
+			WombZeroID(slave, AS_ID); /* This check is complex, should be done in JS now, all needed will be done here. */
+			if (V.activeSlave.daughters > 0) {
+				if (slave.mother === AS_ID) {
+					slave.mother = V.missingParentID;
+				}
+				if (slave.father === AS_ID) {
+					slave.father = V.missingParentID;
+				}
+				missing = true;
+			}
+			if (V.activeSlave.mother > 0 || V.activeSlave.father > 0) {
+				if (V.activeSlave.mother === slave.ID || V.activeSlave.father === slave.ID) {
+					slave.daughters--;
+				}
+			}
+			if (V.activeSlave.sisters > 0) {
+				if (areSisters(V.activeSlave, slave) > 0) {
+					slave.sisters--;
+				}
+			}
+			if (slave.ID === V.activeSlave.relationTarget) {
+				slave.relation = 0;
+				slave.relationTarget = 0;
+			}
+			if (slave.milkSource !== 0) {
+				if (slave.milkSource === AS_ID) {
+					slave.milkSource = 0;
+					slave.inflation = 0;
+					slave.inflationType = "none";
+					slave.inflationMethod = 0;
+				}
+			}
+			if (slave.cumSource !== 0) {
+				if (slave.cumSource === AS_ID) {
+					slave.cumSource = 0;
+					slave.inflation = 0;
+					slave.inflationType = "none";
+					slave.inflationMethod = 0;
+				}
+			}
+			if (slave.ID === V.activeSlave.relationshipTarget) {
+				slave.relationship = 0;
+				slave.relationshipTarget = 0;
+			}
+			if (slave.ID === V.activeSlave.rivalryTarget) {
+				slave.rivalry = 0;
+				slave.rivalryTarget = 0;
+			}
+			/* moved to saDevotion as a discovery event
+			   if (slave.origBodyOwnerID === AS_ID) {
+			   slave.origBodyOwnerID = 0;
+			   }
+			*/
+		});
+
+		/* remove from Pit fighters list, if needed */
+		V.fighterIDs.delete(AS_ID);
+
+		/* remove from Coursing Association, if needed */
+		if (V.Lurcher !== 0 && V.Lurcher.ID === AS_ID) {
+			V.Lurcher = 0;
+		}
+
+		if (Array.isArray(V.personalAttention)) {
+			const _rasi = V.personalAttention.findIndex(function(s) { return s.ID === AS_ID; });
+			if (_rasi !== -1) {
+				V.personalAttention.deleteAt(_rasi);
+				if (V.personalAttention.length === 0) {
+					if (V.PC.career === "escort") {
+						V.personalAttention = "whoring";
+					} else if (V.PC.career === "servant") {
+						V.personalAttention = "upkeep";
+					} else {
+						V.personalAttention = "business";
+					}
+				}
+			}
+		}
+
+			/* Remove from facility array or leadership role, if needed */
+			removeJob(V.activeSlave, V.activeSlave.assignment);
+
+		if (V.traitor !== 0) {
+			if (AS_ID === V.traitor.pregSource) {
+				V.traitor.pregSource = 0;
+			}
+			if (V.traitor.mother === AS_ID) {
+				V.traitor.mother = V.missingParentID;
+				missing = true;
+			}
+			if (V.traitor.father === AS_ID) {
+				V.traitor.father = V.missingParentID;
+				missing = true;
+			}
+			if (V.traitor.origBodyOwnerID === AS_ID) {
+				V.traitor.origBodyOwnerID = 0;
+			}
+		}
+		if (V.boomerangSlave !== 0) {
+			if (AS_ID === V.boomerangSlave.pregSource) {
+				V.boomerangSlave.pregSource = 0;
+			}
+			if (V.boomerangSlave.mother === AS_ID) {
+				V.boomerangSlave.mother = V.missingParentID;
+				missing = true;
+			}
+			if (V.boomerangSlave.father === AS_ID) {
+				V.boomerangSlave.father = V.missingParentID;
+				missing = true;
+			}
+			if (V.boomerangSlave.origBodyOwnerID === AS_ID) {
+				V.traitor.origBodyOwnerID = 0;
+			}
+		}
+		
+		let _o = V.organs.findIndex(function(s) { return s.ID === V.activeSlave.ID; });
+		if (_o !== -1) {
+			V.organs.deleteAt(_o);
+		}
+		_o = V.limbs.findIndex(function(s) { return s.ID === V.activeSlave.ID; });
+		if (_o !== -1) {
+			V.limbs.deleteAt(_o);
+		}
+		
+		const _geneIndex = V.genePool.findIndex(function(s) { return s.ID === V.activeSlave.ID; });
+		if (_geneIndex !== -1) {
+			let keep = false;
+			if (V.traitor !== 0) {
+				if (isImpregnatedBy(V.traitor, V.activeSlave) || V.traitor.ID === V.activeSlave.ID) { /* did we impregnate the traitor, or are we the traitor? */
+					keep = true;
+				}
+			}
+			if (V.boomerangSlave !== 0) {
+				if (isImpregnatedBy(V.boomerangSlave, V.activeSlave) || V.boomerangSlave.ID === V.activeSlave.ID) { /* did we impregnate the boomerang, or are we the boomerang? */
+					keep = true;
+				}
+			}
+			if (!keep) { /* avoid going through this loop if possible */
+				keep = V.slaves.some(slave => {
+					/* have we impregnated a slave that is not ourself? */
+					return (slave.ID !== V.activeSlave.ID && isImpregnatedBy(slave, V.activeSlave))
+				});
+			}
+			if (!keep) {
+				V.genePool.deleteAt(_geneIndex);
+			}
+		}
+		
+		removeSlave(INDEX);
+		LENGTH--;
+		V.activeSlave = 0;
+		
+		if (missing) {
+			V.missingParentID--;
+		}
+	}
+};
diff --git a/src/npc/removeActiveSlave.tw b/src/npc/removeActiveSlave.tw
index 44976f116e7..2fcc7d9b025 100644
--- a/src/npc/removeActiveSlave.tw
+++ b/src/npc/removeActiveSlave.tw
@@ -1,188 +1,3 @@
 :: Remove activeSlave [nobr]
 
-<<set _ID = $activeSlave.ID, _SL = $slaves.length, _x = $slaveIndices[_ID]>>
-
-<<set WombZeroID($PC, _ID)>>
-<<if $activeSlave.reservedChildren > 0>>
-	<<set $reservedChildren -= $activeSlave.reservedChildren>>
-<</if>>
-<<if $PC.mother == _ID>>
-	<<set $PC.mother = $missingParentID>>
-	<<set _missingID = 1>>
-<</if>>
-<<if $PC.father == _ID>>
-	<<set $PC.father = $missingParentID>>
-	<<set _missingID = 1>>
-<</if>>
-<<if $PC.sisters > 0>>
-	<<if areSisters($PC, $activeSlave) > 0>>
-		<<set $PC.sisters-->>
-	<</if>>
-<</if>>
-<<if $PC.daughters > 0>>
-	<<if $activeSlave.father == -1 || $activeSlave.mother == -1>>
-		<<set $PC.daughters-->>
-	<</if>>
-<</if>>
-
-<<if _x >= 0 && _x < _SL>>
-	<<if $incubator > 0>>
-		<<for _z = 0; _z < $tanks.length; _z++>>
-			<<if _ID == $tanks[_z].mother>>
-				<<set $tanks[_z].mother = $missingParentID>>
-				<<set _missingID = 1>>
-			<</if>>
-			<<if _ID == $tanks[_z].father>>
-				<<set $tanks[_z].father = $missingParentID>>
-				<<set _missingID = 1>>
-			<</if>>
-		<</for>>
-	<</if>>
-	<<for _y = 0; _y < _SL; _y++>>
-		<<set WombZeroID($slaves[_y], _ID)>> /* This check is complex, should be done in JS now, all needed will be done here. */
-		<<if $activeSlave.daughters > 0>>
-			<<if $slaves[_y].mother == _ID>>
-				<<set $slaves[_y].mother = $missingParentID>>
-			<</if>>
-			<<if $slaves[_y].father == _ID>>
-				<<set $slaves[_y].father = $missingParentID>>
-			<</if>>
-			<<set _missingID = 1>>
-		<</if>>
-		<<if $activeSlave.mother > 0 || $activeSlave.father > 0>>
-			<<if $activeSlave.mother == $slaves[_y].ID || $activeSlave.father == $slaves[_y].ID>>
-				<<set $slaves[_y].daughters-->>
-			<</if>>
-		<</if>>
-		<<if $activeSlave.sisters > 0>>
-			<<if areSisters($activeSlave, $slaves[_y]) > 0>>
-				<<set $slaves[_y].sisters-->>
-			<</if>>
-		<</if>>
-		<<if $slaves[_y].ID == $activeSlave.relationTarget>>
-			<<set $slaves[_y].relation = 0, $slaves[_y].relationTarget = 0>>
-		<</if>>
-		<<if $slaves[_y].milkSource != 0>>
-			<<if $slaves[_y].milkSource == _ID>>
-				<<set $slaves[_y].milkSource =0, $slaves[_y].inflation = 0, $slaves[_y].inflationType = "none", $slaves[_y].inflationMethod = 0>>
-			<</if>>
-		<</if>>
-		<<if $slaves[_y].cumSource != 0>>
-			<<if $slaves[_y].cumSource == _ID>>
-				<<set $slaves[_y].cumSource = 0, $slaves[_y].inflation = 0, $slaves[_y].inflationType = "none", $slaves[_y].inflationMethod = 0>>
-			<</if>>
-		<</if>>
-		<<if $slaves[_y].ID == $activeSlave.relationshipTarget>>
-			<<set $slaves[_y].relationship = 0, $slaves[_y].relationshipTarget = 0>>
-		<</if>>
-		<<if $slaves[_y].ID == $activeSlave.rivalryTarget>>
-			<<set $slaves[_y].rivalry = 0, $slaves[_y].rivalryTarget = 0>>
-		<</if>>
-		/* moved to saDevotion as a discovery event
-		<<if $slaves[_y].origBodyOwnerID == _ID>>
-			<<set $slaves[_y].origBodyOwnerID = 0>>
-		<</if>>
-		*/
-	<</for>>
-
-	/* remove from Pit fighters list, if needed */
-	<<set $fighterIDs.delete(_ID)>>
-
-	/* remove from Coursing Association, if needed */
-	<<if $Lurcher != 0 && $Lurcher.ID == _ID>>
-		<<set $Lurcher = 0>>
-	<</if>>
-
-	<<if Array.isArray($personalAttention)>>
-		<<set _rasi = $personalAttention.findIndex(function(s) { return s.ID == _ID; })>>
-		<<if _rasi != -1>>
-			<<set $personalAttention.deleteAt(_rasi)>>
-			<<if $personalAttention.length == 0>>
-				<<if $PC.career == "escort">>
-					<<set $personalAttention = "whoring">>
-				<<elseif $PC.career == "servant">>
-					<<set $personalAttention = "upkeep">>
-				<<else>>
-					<<set $personalAttention = "business">>
-				<</if>>
-			<</if>>
-		<</if>>
-	<</if>>
-
-	/% Remove from facility array or leadership role, if needed %/
-	<<= removeJob($activeSlave, $activeSlave.assignment)>>
-
-	<<if $traitor != 0>>
-		<<if _ID == $traitor.pregSource>>
-			<<set $traitor.pregSource = 0>>
-		<</if>>
-		<<if $traitor.mother == _ID>>
-			<<set $traitor.mother = $missingParentID>>
-			<<set _missingID = 1>>
-		<</if>>
-		<<if $traitor.father == _ID>>
-			<<set $traitor.father = $missingParentID>>
-			<<set _missingID = 1>>
-		<</if>>
-		<<if $traitor.origBodyOwnerID == _ID>>
-			<<set $traitor.origBodyOwnerID = 0>>
-		<</if>>
-	<</if>>
-	<<if $boomerangSlave != 0>>
-		<<if _ID == $boomerangSlave.pregSource>>
-			<<set $boomerangSlave.pregSource = 0>>
-		<</if>>
-		<<if $boomerangSlave.mother == _ID>>
-			<<set $boomerangSlave.mother = $missingParentID>>
-			<<set _missingID = 1>>
-		<</if>>
-		<<if $boomerangSlave.father == _ID>>
-			<<set $boomerangSlave.father = $missingParentID>>
-			<<set _missingID = 1>>
-		<</if>>
-		<<if $boomerangSlave.origBodyOwnerID == _ID>>
-			<<set $traitor.origBodyOwnerID = 0>>
-		<</if>>
-	<</if>>
-	
-	<<set _o = $organs.findIndex(function(s) { return s.ID == $activeSlave.ID; })>>
-	<<if _o != -1>>
-		<<set $organs.deleteAt(_o)>>
-	<</if>>
-	<<set _o = $limbs.findIndex(function(s) { return s.ID == $activeSlave.ID; })>>
-	<<if _o != -1>>
-		<<set $limbs.deleteAt(_o)>>
-	<</if>>
-	
-	<<set _geneIndex = $genePool.findIndex(function(s) { return s.ID == $activeSlave.ID; })>>
-	<<if _geneIndex != -1>>
-		<<set _dontDeleteMe = 0>>
-		<<if $traitor != 0>>
-			<<if isImpregnatedBy($traitor, $activeSlave) || $traitor.ID == $activeSlave.ID>> /* did we impregnate the traitor, or are we the traitor? */
-				<<set _dontDeleteMe = 1>>
-			<</if>>
-		<</if>>
-		<<if $boomerangSlave != 0>>
-			<<if isImpregnatedBy($boomerangSlave, $activeSlave) || $boomerangSlave.ID == $activeSlave.ID>> /* did we impregnate the boomerang, or are we the boomerang? */
-				<<set _dontDeleteMe = 1>>
-			<</if>>
-		<</if>>
-		<<if _dontDeleteMe == 0>> /* avoid going through this loop if possible */
-			<<for _rasi = 0; _rasi < _SL; _rasi++>>
-				<<if $slaves[_rasi].ID != $activeSlave.ID && isImpregnatedBy($slaves[_rasi], $activeSlave)>> /* have we impregnated a slave that is not ourself? */
-					<<set _dontDeleteMe = 1>>
-					<<break>>
-				<</if>>
-			<</for>>
-		<</if>>
-		<<if _dontDeleteMe == 0>>
-			<<set $genePool.deleteAt(_geneIndex)>>	
-		<</if>>
-	<</if>>
-	
-	<<set _dump = removeSlave(_x), _SL--, $activeSlave = 0>>
-	
-	<<if _missingID == 1>>
-		<<set $missingParentID-->>
-	<</if>>
-<</if>>
+<<= removeActiveSlave() >>
-- 
GitLab


From 4c55cb690d56eab96a9c7b1ab9b5a8888d04f80a Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Sat, 21 Jul 2018 15:43:47 +0300
Subject: [PATCH 098/189] bugs

---
 src/js/assayJS.tw           | 1 +
 src/js/removeActiveSlave.tw | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index 3dad892b930..b2de9885055 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -1982,4 +1982,5 @@ window.faceIncrease = function faceIncrease(slave, amount) {
 		r += `<span class="green">${His} face is now perfect.</span> It's difficult to imagine how it could be any more beautiful.`;
 	slave.face = Math.clamp(slave.face + amount,-100,100);
 	if (slave.face > 95) slave.face = 100;
+	return r;
 };
diff --git a/src/js/removeActiveSlave.tw b/src/js/removeActiveSlave.tw
index 87020a11b1d..a5189210c9f 100644
--- a/src/js/removeActiveSlave.tw
+++ b/src/js/removeActiveSlave.tw
@@ -1,4 +1,4 @@
-//:: Remove activeSlave JS [script]
+:: Remove activeSlave JS [script]
 
 window.removeActiveSlave = function removeActiveSlave() {
 	"use strict";
-- 
GitLab


From 4bdf40a9c885a8185e55df6dae1a42e5a378415f Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Sat, 21 Jul 2018 15:46:49 +0300
Subject: [PATCH 099/189] devnotes sync

---
 devNotes/twine JS.txt | 477 +++++++++++++++++++++++++++++++-----------
 1 file changed, 360 insertions(+), 117 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 00596324dc0..144e82d1a96 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -6623,19 +6623,21 @@ window.populateEventArray = function(RESS = State.variables.RESSevent.length, RE
 
 /*:: AssayJS [script]*/
 
+:: AssayJS [script]
+
 window.isSlim = function(slave) {
 	var slim = false;
 	var ArcologyZero = State.variables.arcologies[0];
 	
 	if ((slave.boobs < 500) && (slave.butt < 3)) {
-		if ((slave.muscles <= 30) && (ArcologyZero.FSPhysicalIdealist == "unset") && (slave.weight <= 10) && (ArcologyZero.FSHedonisticDecadence == "unset")) {
+		if ((slave.muscles <= 30) && (ArcologyZero.FSPhysicalIdealist === "unset") && (slave.weight <= 10) && (ArcologyZero.FSHedonisticDecadence === "unset")) {
 			slim = true;
-		} else if (ArcologyZero.FSPhysicalIdealist != "unset") {
-			if ((ArcologyZero.FSPhysicalIdealistStrongFat == 1) && (slave.weight <= 30)) { 
+		} else if (ArcologyZero.FSPhysicalIdealist !== "unset") {
+			if ((ArcologyZero.FSPhysicalIdealistStrongFat === 1) && (slave.weight <= 30)) { 
 				slim = true;
 			} 
-		} else if ((ArcologyZero.FSHedonisticDecadence != "unset") && (slave.weight <= 30)) { 
-			if (ArcologyZero.FSHedonisticDecadenceStrongFat == 1) { 
+		} else if ((ArcologyZero.FSHedonisticDecadence !== "unset") && (slave.weight <= 30)) { 
+			if (ArcologyZero.FSHedonisticDecadenceStrongFat === 1) { 
 				slim = true;
 			} else if (slave.muscles <= 30) {
 				slim = true;
@@ -6662,7 +6664,7 @@ window.isUnmodded = function(slave) {
 	var tatScore = TatScore(slave);
 	var piercingScore = PiercingScore(slave);
 	
-	return !isModded(slave) && (slave.corsetPiercing == 0) && (piercingScore < 3) && (tatScore < 2);
+	return !isModded(slave) && (slave.corsetPiercing === 0) && (piercingScore < 3) && (tatScore < 2);
 };
 
 window.isXY = function(slave) {
@@ -6682,7 +6684,7 @@ window.isNotPreg = function(slave) {
 };
 
 window.isPure = function(slave) {
-	return ((slave.boobsImplant == 0) && (slave.buttImplant == 0) && (slave.waist >= -95) && (slave.lipsImplant == 0) && (slave.faceImplant < 30) && (slave.bellyImplant == -1) && (Math.abs(slave.shouldersImplant) < 2) && (Math.abs(slave.hipsImplant) < 2));
+	return ((slave.boobsImplant === 0) && (slave.buttImplant === 0) && (slave.waist >= -95) && (slave.lipsImplant === 0) && (slave.faceImplant < 30) && (slave.bellyImplant === -1) && (Math.abs(slave.shouldersImplant) < 2) && (Math.abs(slave.hipsImplant) < 2));
 };
 
 window.modScore = function modScore(slave) {
@@ -6722,7 +6724,7 @@ window.PiercingScore = function(slave) {
 	if (slave.tonguePiercing > 0 ) {
 		piercingScore += slave.tonguePiercing*0.75-0.25;
 	}
-	if (slave.clitPiercing == 3) {
+	if (slave.clitPiercing === 3) {
 		piercingScore += 1.25; /* smart piercing */
 	} else if (slave.clitPiercing > 0) {
 		piercingScore += slave.clitPiercing*0.75-0.25;
@@ -6742,37 +6744,37 @@ window.PiercingScore = function(slave) {
 window.TatScore = function(slave) {
 	var tatScore = 0;
 
-	if (slave.boobsTat != 0) {
+	if (slave.boobsTat !== 0) {
 		tatScore += 1.25;
 	}
-	if (slave.buttTat != 0) {
+	if (slave.buttTat !== 0) {
 		tatScore += 1.25;
 	}
-	if (slave.lipsTat != 0) {
+	if (slave.lipsTat !== 0) {
 		tatScore += 1.25;
 	}
-	if (slave.shouldersTat != 0) {
+	if (slave.shouldersTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.backTat != 0) {
+	if (slave.backTat !== 0) {
 		tatScore += 1.25;
 	}
-	if (slave.armsTat != 0) {
+	if (slave.armsTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.legsTat != 0) {
+	if (slave.legsTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.stampTat != 0) {
+	if (slave.stampTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.vaginaTat != 0) {
+	if (slave.vaginaTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.dickTat != 0) {
+	if (slave.dickTat !== 0) {
 		tatScore += 1;
 	}
-	if (slave.bellyTat != 0) {
+	if (slave.bellyTat !== 0) {
 		if (((slave.preg > 30) && (slave.pregType >= 20)) || (slave.belly >= 300000)) {
 			tatScore += 0.75;
 		} else if (((slave.preg > 20) && (slave.pregType >= 20)) || ((slave.preg > 30) && (slave.pregType >= 10)) || (slave.belly >= 150000)) {
@@ -6787,9 +6789,9 @@ window.TatScore = function(slave) {
 			tatScore += 0.1;
 		}
 	}
-	if (slave.anusTat == "bleached") {
+	if (slave.anusTat === "bleached") {
 		tatScore += 0.5;
-	} else if (slave.anusTat != 0) {
+	} else if (slave.anusTat !== 0) {
 		tatScore += 1.25;
 	}
 	
@@ -6800,14 +6802,14 @@ window.slimPass = function(slave) {
 	var slimPass = 0;
 	var ArcologyZero = State.variables.arcologies[0];
 	
-	if (ArcologyZero.FSSlimnessEnthusiastLaw == 1) {
+	if (ArcologyZero.FSSlimnessEnthusiastLaw === 1) {
 		if ((slave.boobs < 300) && (slave.butt <= 1) && (slave.waist <= 10)) {
 			State.variables.slimPass = 1;
-			if ((ArcologyZero.FSPhysicalIdealist == "unset") && (ArcologyZero.FSHedonisticDecadenceStrongFat == 0) && (slave.muscles > 30)) { /*muscle check*/
+			if ((ArcologyZero.FSPhysicalIdealist === "unset") && (ArcologyZero.FSHedonisticDecadenceStrongFat === 0) && (slave.muscles > 30)) { /*muscle check*/
 				slimPass = 0;
 			}
-			if (State.variables.slimPass == 1) {
-				if ((ArcologyZero.FSHedonisticDecadence != "unset") || (ArcologyZero.FSPhysicalIdealistStrongFat == 1)) { /*weight check*/
+			if (State.variables.slimPass === 1) {
+				if ((ArcologyZero.FSHedonisticDecadence !== "unset") || (ArcologyZero.FSPhysicalIdealistStrongFat === 1)) { /*weight check*/
 					if (slave.weight > 30) {
 						slimPass = 0;
 					}
@@ -6936,11 +6938,26 @@ window.newSlave = function newSlave(slave) {
 	}
 
 	if (slave.fuckdoll > 0) {
-		slave.pronoun = "it", slave.possessivePronoun = "its", slave.possessive = "its", slave.object = "it", slave.objectReflexive = "itself", slave.noun = "toy";
+		slave.pronoun = "it";
+		slave.possessivePronoun = "its";
+		slave.possessive = "its";
+		slave.object = "it";
+		slave.objectReflexive = "itself";
+		slave.noun = "toy";
 	} else if (slave.dick > 0 && slave.vagina === -1 && V.diversePronouns === 1) {
-		slave.pronoun = "he", slave.possessivePronoun = "his", slave.possessive = "his", slave.object = "him", slave.objectReflexive = "himself", slave.noun = "boy";
+		slave.pronoun = "he";
+		slave.possessivePronoun = "his";
+		slave.possessive = "his";
+		slave.object = "him";
+		slave.objectReflexive = "himself";
+		slave.noun = "boy";
 	} else {
-		slave.pronoun = "she", slave.possessivePronoun = "hers", slave.possessive = "her", slave.object = "her", slave.objectReflexive = "herself", slave.noun = "girl";
+		slave.pronoun = "she";
+		slave.possessivePronoun = "hers";
+		slave.possessive = "her";
+		slave.object = "her";
+		slave.objectReflexive = "herself";
+		slave.noun = "girl";
 	}
 
 	SetBellySize(slave);
@@ -7023,32 +7040,32 @@ window.Enunciate = function Enunciate(slave) {
 		else
 			V.titleEnunciate = "Mithtreth";
 		if (V.allowFamilyTitles === 1) {
-			if (slave.father == -1) {
+			if (slave.father === -1) {
 				if (slave.actualAge < 4 && slave.physicalAge < 4)
 					V.titleEnunciate = "Dadda";
 				else if (slave.actualAge < 9)
 					V.titleEnunciate = "Daddy";
 				else
 					V.titleEnunciate = "Dad";
-			} else if (slave.mother == -1) {
+			} else if (slave.mother === -1) {
 				if (slave.actualAge < 4 && slave.physicalAge < 4)
 					V.titleEnunciate = "Mama";
 				else if (slave.actualAge < 9)
 					V.titleEnunciate = "Mommy";
 				else
 					V.titleEnunciate = "Mom";
-			} else if (V.PC.mother == slave.ID || V.PC.father == slave.ID) {
-				if (V.PC.title == 1)
+			} else if (V.PC.mother === slave.ID || V.PC.father === slave.ID) {
+				if (V.PC.title === 1)
 					V.titleEnunciate = "Thon";
-				else if (V.PC.title == 0)
+				else if (V.PC.title === 0)
 					V.titleEnunciate = "Daughter";
 			} else if (areSisters(slave, V.PC) > 0) {
-				if (V.PC.title == 1) {
+				if (V.PC.title === 1) {
 					if (slave.actualAge < 18)
 						V.titleEnunciate = "Bro";
 					else
 						V.titleEnunciate = "Brother";
-				} else if (V.PC.title == 0) {
+				} else if (V.PC.title === 0) {
 					if (slave.actualAge < 18)
 						V.titleEnunciate = "Thith";
 					else
@@ -7071,37 +7088,37 @@ window.Enunciate = function Enunciate(slave) {
 	} else {
 		if (V.PC.customTitle !== undefined)
 			V.titleEnunciate = V.PC.customTitle;
-		else if (V.PC.title != 0)
+		else if (V.PC.title !== 0)
 			V.titleEnunciate = "Master";
 		else
 			V.titleEnunciate = "Mistress";
-		if (V.allowFamilyTitles == 1) {
-			if (slave.father == -1) {
+		if (V.allowFamilyTitles === 1) {
+			if (slave.father === -1) {
 				if (slave.actualAge < 4 && slave.physicalAge < 4)
 					V.titleEnunciate = "Dadda";
 				else if (slave.actualAge < 9)
 					V.titleEnunciate = "Daddy";
 				else
 					V.titleEnunciate = "Dad";
-			} else if (slave.mother == -1) {
+			} else if (slave.mother === -1) {
 				if (slave.actualAge < 4 && slave.physicalAge < 4)
 					V.titleEnunciate = "Mama";
 				else if (slave.actualAge < 9)
 					V.titleEnunciate = "Mommy";
 				else
 					V.titleEnunciate = "Mom";
-			} else if (V.PC.mother == slave.ID || V.PC.father == slave.ID) {
-				if (V.PC.title == 1)
+			} else if (V.PC.mother === slave.ID || V.PC.father === slave.ID) {
+				if (V.PC.title === 1)
 					V.titleEnunciate = "Son";
-				else if (V.PC.title == 0)
+				else if (V.PC.title === 0)
 					V.titleEnunciate = "Daughter";
 			} else if (areSisters(slave, V.PC) > 0) {
-				if (V.PC.title == 1) {
+				if (V.PC.title === 1) {
 					if (slave.actualAge < 18)
 						V.titleEnunciate = "Bro";
 					else
 						V.titleEnunciate = "Brother";
-				} else if (V.PC.title == 0) {
+				} else if (V.PC.title === 0) {
 					if (slave.actualAge < 18)
 						V.titleEnunciate = "Sis";
 					else
@@ -7109,15 +7126,15 @@ window.Enunciate = function Enunciate(slave) {
 				}
 			}
 		}
-		if (slave.customTitle !== undefined && slave.customTitle != "")
+		if (slave.customTitle !== undefined && slave.customTitle !== "")
 			V.titleEnunciate = slave.customTitle;
 		if (V.PC.customTitle !== undefined)
 			V.writtenTitle = V.PC.customTitle;
-		else if (V.PC.title != 0)
+		else if (V.PC.title !== 0)
 			V.writtenTitle = "Master";
 		else
 			V.writtenTitle = "Mistress";
-		if (slave.customTitle !== undefined && slave.customTitle != "" && slave.rudeTitle == 0)
+		if (slave.customTitle !== undefined && slave.customTitle !== "" && slave.rudeTitle === 0)
 			V.writtenTitle = slave.customTitle;
 		V.sayEnunciate = "say";
 		V.sEnunciate = "s";
@@ -7186,46 +7203,46 @@ window.PCTitle = function PCTitle() {
 	} else if (V.arcologies[0].FSRestart > 10) {
 		V.PCTitle = (V.PCTitle + " of the Societal Elite");
 	} else if (V.rep > 18000) {
-		V.PCTitle = (V.PCTitle + " the Great")
+		V.PCTitle = (V.PCTitle + " the Great");
 	} else if (V.rep > 17000) {
-		V.PCTitle = ("the exalted " + V.PCTitle)
+		V.PCTitle = ("the exalted " + V.PCTitle);
 	} else if (V.rep > 16000) {
-		V.PCTitle = ("the illustrious " + V.PCTitle)
+		V.PCTitle = ("the illustrious " + V.PCTitle);
 	} else if (V.rep > 15000) {
-		V.PCTitle = ("the prestigious " + V.PCTitle)
+		V.PCTitle = ("the prestigious " + V.PCTitle);
 	} else if (V.rep > 14000) {
-		V.PCTitle = ("the renowned " + V.PCTitle)
+		V.PCTitle = ("the renowned " + V.PCTitle);
 	} else if (V.rep > 13000) {
-		V.PCTitle = ("the famed " + V.PCTitle)
+		V.PCTitle = ("the famed " + V.PCTitle);
 	} else if (V.rep > 12000) {
-		V.PCTitle = ("the celebrated " + V.PCTitle)
+		V.PCTitle = ("the celebrated " + V.PCTitle);
 	} else if (V.rep > 11000) {
-		V.PCTitle = ("the honored " + V.PCTitle)
+		V.PCTitle = ("the honored " + V.PCTitle);
 	} else if (V.rep > 10000) {
-		V.PCTitle = ("the acclaimed " + V.PCTitle)
+		V.PCTitle = ("the acclaimed " + V.PCTitle);
 	} else if (V.rep > 9000) {
-		V.PCTitle = ("the eminent " + V.PCTitle)
+		V.PCTitle = ("the eminent " + V.PCTitle);
 	} else if (V.rep > 8250) {
-		V.PCTitle = ("the prominent " + V.PCTitle)
+		V.PCTitle = ("the prominent " + V.PCTitle);
 	} else if (V.rep > 7500) {
-		V.PCTitle = ("the distinguished " + V.PCTitle)
+		V.PCTitle = ("the distinguished " + V.PCTitle);
 	} else if (V.rep > 6750) {
-		V.PCTitle = ("the admired " + V.PCTitle)
+		V.PCTitle = ("the admired " + V.PCTitle);
 	} else if (V.rep > 6000) {
-		V.PCTitle = ("the esteemed " + V.PCTitle)
+		V.PCTitle = ("the esteemed " + V.PCTitle);
 	} else if (V.rep > 5250) {
-		V.PCTitle = ("the respected " + V.PCTitle)
+		V.PCTitle = ("the respected " + V.PCTitle);
 	} else if (V.rep > 4500) {
-		V.PCTitle = ("the known " + V.PCTitle)
+		V.PCTitle = ("the known " + V.PCTitle);
 	} else if (V.rep > 3750) {
-		V.PCTitle = ("the recognized " + V.PCTitle)
+		V.PCTitle = ("the recognized " + V.PCTitle);
 	} else if (V.rep > 3000) {
-		V.PCTitle = ("the rumored " + V.PCTitle)
+		V.PCTitle = ("the rumored " + V.PCTitle);
 	}
 
 	V.PCTitle = (V.PCTitle + ", ");
 
-	if (V.PC.name == "FC Dev") {
+	if (V.PC.name === "FC Dev") {
 		titles.push("the Creator");
 	}
 
@@ -7707,7 +7724,7 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 	const V = State.variables, PC = V.PC, s = V.sEnunciate, ss = V.ssEnunciate;
 	
 	var r = "";
-	if (slave.nationality == "Japanese") {
+	if (slave.nationality === "Japanese") {
 		if (slave.trust > 0) {
 			r += `${PC.name}${PC.title > 0 ? "kun" : "chan"}`;
 		} else {
@@ -7715,7 +7732,7 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 		}
 	} else {
 		if (slave.intelligence < -2) {
-			r += V.titleEnunciate
+			r += V.titleEnunciate;
 		} else if (slave.intelligence > 1) {
 			r += (PC.title > 0 ? `Ma${s}ter` : `Mi${s}tre${ss}`);
 		} else if (slave.trust > 0) {
@@ -7730,27 +7747,27 @@ window.PoliteRudeTitle = function PoliteRudeTitle(slave) {
 window.SlaveTitle = function SlaveTitle(slave) {
 	const V = State.variables;
 	let r = "";
-	if (V.newDescriptions == 1) {
-		if (slave.dick > 0 && slave.balls > 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries == 1) {
-			if (random(1,100) > 50) {
+	if (V.newDescriptions === 1) {
+		if (slave.dick > 0 && slave.balls > 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries === 1) {
+			if (jsRandom(1,100) > 50) {
 				r = "futanari";
 			} else {
 				r = "herm";
 			}
-		} else if (slave.dick > 0 && slave.balls == 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries == 1) {
+		} else if (slave.dick > 0 && slave.balls === 0 && slave.boobs > 300 && slave.vagina > -1 && slave.ovaries === 1) {
 			r = "dickgirl";
-		} else if (slave.dick > 0 && slave.vagina > -1 && slave.ovaries == 0) {
+		} else if (slave.dick > 0 && slave.vagina > -1 && slave.ovaries === 0) {
 			r = "shemale";
-		} else if (slave.dick > 0 && slave.balls == 0 && slave.vagina == -1 && slave.ovaries == 0) {
+		} else if (slave.dick > 0 && slave.balls === 0 && slave.vagina === -1 && slave.ovaries === 0) {
 			r = "eunuch";
-		} else if (slave.dick > 0 && slave.balls > 0 && slave.vagina == -1 && slave.ovaries == 0) {
-			if (slave.face > 10 && slave.hips > -1 && slave.shoulders < 1 && slave.faceShape != "masculine") {
+		} else if (slave.dick > 0 && slave.balls > 0 && slave.vagina === -1 && slave.ovaries === 0) {
+			if (slave.face > 10 && slave.hips > -1 && slave.shoulders < 1 && slave.faceShape !== "masculine") {
 				r = "trap";
 			} else if (slave.boobs > 800) {
 				r = "tittyboy";
-			} else if (slave.dick == 1 && slave.balls == 1) {
+			} else if (slave.dick === 1 && slave.balls === 1) {
 				r = "sissy";
-			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 165 && slave.muscles < 5 && slave.visualAge < 19 && slave.faceShape != "masculine") {
+			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 165 && slave.muscles < 5 && slave.visualAge < 19 && slave.faceShape !== "masculine") {
 				r = "twink";
 			} else if (slave.dick > 1 && slave.balls > 1 && slave.height < 160 && slave.muscles < 5 && slave.visualAge < 19) {
 				r = "boytoy";
@@ -7761,10 +7778,10 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			} else {
 				r = "slaveboy";
 			}
-		} else if (slave.dick == 0 && slave.balls == 0 && slave.vagina > -1) {
-			if ((slave.shoulders > slave.hips || slave.faceShape == "masculine") && slave.boobs < 400 && slave.genes == "XY") {
+		} else if (slave.dick === 0 && slave.balls === 0 && slave.vagina > -1) {
+			if ((slave.shoulders > slave.hips || slave.faceShape === "masculine") && slave.boobs < 400 && slave.genes === "XY") {
 				r = "cuntboy";
-			} else if (slave.ovaries == 0 && slave.genes == "XY") {
+			} else if (slave.ovaries === 0 && slave.genes === "XY") {
 				r = "tranny";
 			} else if (slave.weight > 10 && slave.boobs > 800 && slave.birthsTotal > 0 && slave.physicalAge > 59) {
 				r = "GMILF";
@@ -7781,16 +7798,16 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			} else {
 				r = "slavegirl";
 			}
-		} else if (slave.dick == 0 && slave.balls == 0 && slave.vagina == -1) {
+		} else if (slave.dick === 0 && slave.balls === 0 && slave.vagina === -1) {
 			r = "neuter";
-		} else if (slave.dick == 0 && slave.vagina == -1) {
+		} else if (slave.dick === 0 && slave.vagina === -1) {
 			r = "ballslave";
 		} else {
 			r = "slave";
 		}
 
 		if (slave.visualAge < 13) {
-			if (slave.genes == "XY" && slave.vagina == -1) {
+			if (slave.genes === "XY" && slave.vagina === -1) {
 				r = "shota " + r;
 			} else {
 				r = "loli " + r;
@@ -7851,7 +7868,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			r = "indentured " + r;
 		}
 
-		if (slave.preg > 10 && slave.pregKnown == 1) {
+		if (slave.preg > 10 && slave.pregKnown === 1) {
 			r = "pregnant " + r;
 		} else if (slave.bellyFluid >= 5000) {
 			r = "bloated " + r;
@@ -7864,7 +7881,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 		}
 	} else {
 		r = "slave"; /* I don't tihnk there is an 'else'? */
-		if ((slave.dick == 0) && (slave.vagina == -1)) { /* NULLS */
+		if ((slave.dick === 0) && (slave.vagina === -1)) { /* NULLS */
 			r = "null";
 				if ((slave.lactation > 0) && (slave.boobs > 2000)) {
 					r = r + " cow";
@@ -7888,7 +7905,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 					}
 		}
 
-		if ((slave.dick == 0) && (slave.vagina != -1)) { /* FEMALES */
+		if ((slave.dick === 0) && (slave.vagina !== -1)) { /* FEMALES */
 			if (slave.visualAge > 55) {
 				r = "GILF";
 			} else if (slave.visualAge > 35) {
@@ -7911,7 +7928,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 				}
 		}
 
-		if ((slave.dick != 0) && (slave.vagina != -1)) {
+		if ((slave.dick !== 0) && (slave.vagina !== -1)) {
 				if (slave.balls > 0) { /* FUTANARI: cock & balls & vagina */
 					r = "futanari ";
 				} else { /* FUTANARI: cock & vagina */
@@ -7942,7 +7959,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 							}
 		}
 
-		if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0) && (slave.boobs > 300) && (slave.butt > 2)) { /* SHEMALES: cock & balls, T&A above minimum */
+		if ((slave.dick !== 0) && (slave.vagina === -1) && (slave.balls > 0) && (slave.boobs > 300) && (slave.butt > 2)) { /* SHEMALES: cock & balls, T&A above minimum */
 			if (slave.visualAge > 55) {
 				r = "sheGILF";
 			} else if (slave.visualAge > 35) {
@@ -7966,9 +7983,9 @@ window.SlaveTitle = function SlaveTitle(slave) {
 		}
 
 		if ((slave.boobs < 300) || (slave.butt < 2)) {
-			if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0)) {
+			if ((slave.dick !== 0) && (slave.vagina === -1) && (slave.balls > 0)) {
 				if ((slave.shoulders < 1) || (slave.muscles <= 30)) {
-					if ((slave.faceShape == "masculine") || (slave.faceShape == "androgynous")) { /* SISSIES: feminine shoulders or muscles, masculine faces */
+					if ((slave.faceShape === "masculine") || (slave.faceShape === "androgynous")) { /* SISSIES: feminine shoulders or muscles, masculine faces */
 						if (slave.visualAge > 55) {
 							r = "sissyGILF";
 						} else if (slave.visualAge > 35) {
@@ -7997,7 +8014,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 		}
 
 		if ((slave.boobs < 300) || (slave.butt < 2)) {
-			if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls > 0)) {
+			if ((slave.dick !== 0) && (slave.vagina === -1) && (slave.balls > 0)) {
 				if ((slave.shoulders > 1) || (slave.muscles >= 30)) {	/* BITCHES: masculine shoulders or muscles */
 					r = "bitch";
 						if ((slave.muscles > 30) && (slave.height < 185)) {
@@ -8018,7 +8035,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			}
 		}
 
-		if ((slave.dick != 0) && (slave.vagina == -1) && (slave.balls == 0)) {
+		if ((slave.dick !== 0) && (slave.vagina === -1) && (slave.balls === 0)) {
 			r = "dick";
 				if (slave.visualAge > 55) {
 					r = r + "GILF";
@@ -8062,7 +8079,7 @@ window.SlaveTitle = function SlaveTitle(slave) {
 			r = "indentured " + r;
 		}
 
-		if (slave.preg > 10 && slave.pregKnown == 1) {
+		if (slave.preg > 10 && slave.pregKnown === 1) {
 			r = "pregnant " + r;
 		} else if (slave.bellyFluid >= 5000) {
 			r = "bloated " + r;
@@ -8098,7 +8115,7 @@ window.DegradingName = function DegradingName(slave) {
 	if (slave.fuckdoll > 0) {
 		slave.slaveName = "Fuckdoll No. " + slave.ID;
 		slave.slaveSurname = 0;
-	} else if (slave.assignment == "work in the dairy" && V.dairyRestraintsSetting >= 2) {
+	} else if (slave.assignment === "work in the dairy" && V.dairyRestraintsSetting >= 2) {
 		slave.slaveName = "Bioreactor No. " + slave.ID;
 		slave.slaveSurname = 0;
 	} else {	
@@ -8169,19 +8186,19 @@ window.DegradingName = function DegradingName(slave) {
 			names.push("Huge", "Muscles", "Ripped", "Strong");
 		}
 		if (slave.fetishKnown === 1) {
-			if (slave.fetish == "buttslut") {
+			if (slave.fetish === "buttslut") {
 				names.push("Anal", "Sodomy");
 			} 
-			if (slave.fetish == "cumslut") {
+			if (slave.fetish === "cumslut") {
 				names.push("Cum", "Dicksuck", "Sucker");
 			}
-			if (slave.fetish == "humiliation") {
+			if (slave.fetish === "humiliation") {
 				names.push("Rape");
 			}
-			if (slave.fetish == "masochist") {
+			if (slave.fetish === "masochist") {
 				names.push("Pain", "Rape", "Struggle");
 			}
-			if (slave.fetish == "pregnancy") {
+			if (slave.fetish === "pregnancy") {
 				names.push("Fertile");
 			}
 		}
@@ -8192,9 +8209,9 @@ window.DegradingName = function DegradingName(slave) {
 		if (slave.oralSkill <= 30 && slave.analSkill <= 30) {
 			names.push("Cheap", "Fail", "Gutter");
 		}
-		if (slave.nipples == "fuckable") {
+		if (slave.nipples === "fuckable") {
 			names.push("Nipplefuck", "Nipplecunt");
-		} else if (slave.nipples != "tiny" && slave.nipples != "cute") {
+		} else if (slave.nipples !== "tiny" && slave.nipples !== "cute") {
 			names.push("Pointy", "Titclit");
 			suffixes.push("Nipples");
 		}
@@ -8324,7 +8341,7 @@ window.DegradingName = function DegradingName(slave) {
 				}
 			}
 		} else {
-			if (slave.vagina != -1) {
+			if (slave.vagina !== -1) {
 				suffixes.push("Futa");
 			} else {
 				if (slave.balls > 0) {
@@ -8332,7 +8349,7 @@ window.DegradingName = function DegradingName(slave) {
 						suffixes.push("Shemale");
 					} else {
 						if (slave.shoulders < 1 && slave.muscles <= 30) {
-							if (slave.faceShape == "masculine" || slave.faceShape == "androgynous") { /* SISSIES: feminine shoulders or muscles, masculine faces */
+							if (slave.faceShape === "masculine" || slave.faceShape === "androgynous") { /* SISSIES: feminine shoulders or muscles, masculine faces */
 								suffixes.push("Sissy");
 							} else { /* TRAPS: feminine shoulders or muscles, feminine faces */
 								suffixes.push("Trap");
@@ -8368,19 +8385,19 @@ window.DegradingName = function DegradingName(slave) {
 			suffixes.push("Fuck", "Fuckaddict", "Nympho", "Sexaddict");
 		}
 		if (slave.fetishKnown === 1) {
-			if (slave.fetish == "humiliation") {
+			if (slave.fetish === "humiliation") {
 				suffixes.push("Rapebait", "Showgirl");
 			}
-			if (slave.fetish == "submissive") {
+			if (slave.fetish === "submissive") {
 				suffixes.push("Bottom", "Fuckee", "Rapebait");
 			}
-			if (slave.fetish == "dom") {
+			if (slave.fetish === "dom") {
 				suffixes.push("Dom", "Fucker", "Top");
 			}
-			if (slave.fetish == "pregnancy") {
+			if (slave.fetish === "pregnancy") {
 				suffixes.push("Breeder", "Mommy");
 			}
-			if (slave.fetish == "boobs") {
+			if (slave.fetish === "boobs") {
 				suffixes.push("Boob", "Boobie", "Tit", "Titty");
 			}
 		}
@@ -8456,7 +8473,7 @@ window.DegradingName = function DegradingName(slave) {
 		}
 	}
 	let surname = jsEither(suffixes);
-	if (typeof surname == "string" && surname.toLowerCase() == slave.slaveName.toLowerCase()) {
+	if (typeof surname === "string" && surname.toLowerCase() === slave.slaveName.toLowerCase()) {
 		DegradingName(slave);
 	}
 	slave.slaveSurname = surname;
@@ -8467,43 +8484,43 @@ window.SlaveSort = function SlaveSort(slaves, main=false) {
 	if (main) {
 		switch (V.sortSlavesBy) {
 		case "name":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.slaveName < b.slaveName ? -1 : 1);
 			else
 				slaves = slaves.sort((a, b) => a.slaveName > b.slaveName ? -1 : 1);
 			break;
 		case "assignment":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.assignment < b.assignment ? -1 : 1);
 			else
 				slaves = slaves.sort((a, b) => a.assignment > b.assignment ? -1 : 1);
 			break;
 		case "seniority":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => b.weekAcquired - a.weekAcquired);
 			else
 				slaves = slaves.sort((a, b) => a.weekAcquired - b.weekAcquired);
 			break;
 		case "actualAge":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.actualAge - b.actualAge);
 			else
 				slaves = slaves.sort((a, b) => b.actualAge - a.actualAge);
 			break;
 		case "visualAge":
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.visualAge - b.visualAge);
 			else
 				slaves = slaves.sort((a, b) => b.visualAge - a.visualAge);
 			break;
 		case "physicalAge":
-			if (V.sortSlavesOrder == "physicalAge")
+			if (V.sortSlavesOrder === "physicalAge")
 				slaves = slaves.sort((a, b) => a.physicalAge - b.physicalAge);
 			else
 				slaves = slaves.sort((a, b) => b.physicalAge - a.physicalAge);
 			break;
 		default:
-			if (V.sortSlavesOrder == "ascending")
+			if (V.sortSlavesOrder === "ascending")
 				slaves = slaves.sort((a, b) => a.devotion - b.devotion);
 			else
 				slaves = slaves.sort((a, b) => b.devotion - a.devotion);
@@ -8571,6 +8588,28 @@ window.MenialPopCap = function MenialPopCap () {
 	return r;
 };
 
+window.faceIncrease = function faceIncrease(slave, amount) {
+	const pronouns = getPronouns(slave);
+	const his = pronouns.possessive;
+	const His = capFirstChar(his);
+	let r = "";
+	if (slave.face <= -95)
+		r += `<span class="green">${His} face is no longer horrifying,</span> and is now merely ugly.`;
+	else if (slave.face <= -40 && slave.face + amount > -40)
+		r += `<span class="green">${His} face is no longer ugly,</span> and is now merely unattractive.`;
+	else if (slave.face <= -10 && slave.face + amount > -10)
+		r += `<span class="green">${His} face is no longer unattractive,</span> and is now somewhat tolerable.`;
+	else if (slave.face <= 10 && slave.face + amount > 10)
+		r += `<span class="green">${His} face is now decently attractive,</span> rather than merely tolerable.`;
+	else if (slave.face <= 40 && slave.face + amount > 40)
+		r += `<span class="green">${His} face is now quite beautiful,</span> rather than merely pretty.`;
+	else if (slave.face <= 95 && slave.face + amount > 95)
+		r += `<span class="green">${His} face is now perfect.</span> It's difficult to imagine how it could be any more beautiful.`;
+	slave.face = Math.clamp(slave.face + amount,-100,100);
+	if (slave.face > 95) slave.face = 100;
+	return r;
+};
+
 /*:: Summary Widgets JS [script]*/
 
 window.SlaveStatClamp = function SlaveStatClamp(slave) {
@@ -22777,4 +22816,208 @@ window.SlaveSummaryUncached = (function(){
 	return SlaveSummaryUncached;
 })();
 
+// :: Remove activeSlave JS [script]
 
+window.removeActiveSlave = function removeActiveSlave() {
+	"use strict";
+	const V = State.variables;
+
+	const AS_ID = V.activeSlave.ID;
+	let LENGTH = V.slaves.length;
+	const INDEX = V.slaveIndices[AS_ID];
+	let missing = false;
+
+	WombZeroID(V.PC, AS_ID);
+	if (V.activeSlave.reservedChildren > 0) {
+		V.reservedChildren -= V.activeSlave.reservedChildren;
+	}
+	if (V.PC.mother === AS_ID) {
+		V.PC.mother = V.missingParentID;
+		missing = true;
+	}
+	if (V.PC.father === AS_ID) {
+		V.PC.father = V.missingParentID;
+		missing = true;
+	}
+	if (V.PC.sisters > 0) {
+		if (areSisters(V.PC, V.activeSlave) > 0) {
+			V.PC.sisters--;
+		}
+	}
+	if (V.PC.daughters > 0) {
+		if (V.activeSlave.father === -1 || V.activeSlave.mother === -1) {
+			V.PC.daughters--;
+		}
+	}
+
+	if (INDEX >= 0 && INDEX < LENGTH) {
+		if (V.incubator > 0) {
+			V.tanks.forEach(child => {
+				if (AS_ID === child.mother) {
+					child.mother = V.missingParentID;
+					missing = true;
+				}
+				if (AS_ID === child.father) {
+					child.father = V.missingParentID;
+					missing = true;
+				}
+			});
+		}
+		V.slaves.forEach(slave => {
+			WombZeroID(slave, AS_ID); /* This check is complex, should be done in JS now, all needed will be done here. */
+			if (V.activeSlave.daughters > 0) {
+				if (slave.mother === AS_ID) {
+					slave.mother = V.missingParentID;
+				}
+				if (slave.father === AS_ID) {
+					slave.father = V.missingParentID;
+				}
+				missing = true;
+			}
+			if (V.activeSlave.mother > 0 || V.activeSlave.father > 0) {
+				if (V.activeSlave.mother === slave.ID || V.activeSlave.father === slave.ID) {
+					slave.daughters--;
+				}
+			}
+			if (V.activeSlave.sisters > 0) {
+				if (areSisters(V.activeSlave, slave) > 0) {
+					slave.sisters--;
+				}
+			}
+			if (slave.ID === V.activeSlave.relationTarget) {
+				slave.relation = 0;
+				slave.relationTarget = 0;
+			}
+			if (slave.milkSource !== 0) {
+				if (slave.milkSource === AS_ID) {
+					slave.milkSource = 0;
+					slave.inflation = 0;
+					slave.inflationType = "none";
+					slave.inflationMethod = 0;
+				}
+			}
+			if (slave.cumSource !== 0) {
+				if (slave.cumSource === AS_ID) {
+					slave.cumSource = 0;
+					slave.inflation = 0;
+					slave.inflationType = "none";
+					slave.inflationMethod = 0;
+				}
+			}
+			if (slave.ID === V.activeSlave.relationshipTarget) {
+				slave.relationship = 0;
+				slave.relationshipTarget = 0;
+			}
+			if (slave.ID === V.activeSlave.rivalryTarget) {
+				slave.rivalry = 0;
+				slave.rivalryTarget = 0;
+			}
+			/* moved to saDevotion as a discovery event
+			   if (slave.origBodyOwnerID === AS_ID) {
+			   slave.origBodyOwnerID = 0;
+			   }
+			*/
+		});
+
+		/* remove from Pit fighters list, if needed */
+		V.fighterIDs.delete(AS_ID);
+
+		/* remove from Coursing Association, if needed */
+		if (V.Lurcher !== 0 && V.Lurcher.ID === AS_ID) {
+			V.Lurcher = 0;
+		}
+
+		if (Array.isArray(V.personalAttention)) {
+			const _rasi = V.personalAttention.findIndex(function(s) { return s.ID === AS_ID; });
+			if (_rasi !== -1) {
+				V.personalAttention.deleteAt(_rasi);
+				if (V.personalAttention.length === 0) {
+					if (V.PC.career === "escort") {
+						V.personalAttention = "whoring";
+					} else if (V.PC.career === "servant") {
+						V.personalAttention = "upkeep";
+					} else {
+						V.personalAttention = "business";
+					}
+				}
+			}
+		}
+
+			/* Remove from facility array or leadership role, if needed */
+			removeJob(V.activeSlave, V.activeSlave.assignment);
+
+		if (V.traitor !== 0) {
+			if (AS_ID === V.traitor.pregSource) {
+				V.traitor.pregSource = 0;
+			}
+			if (V.traitor.mother === AS_ID) {
+				V.traitor.mother = V.missingParentID;
+				missing = true;
+			}
+			if (V.traitor.father === AS_ID) {
+				V.traitor.father = V.missingParentID;
+				missing = true;
+			}
+			if (V.traitor.origBodyOwnerID === AS_ID) {
+				V.traitor.origBodyOwnerID = 0;
+			}
+		}
+		if (V.boomerangSlave !== 0) {
+			if (AS_ID === V.boomerangSlave.pregSource) {
+				V.boomerangSlave.pregSource = 0;
+			}
+			if (V.boomerangSlave.mother === AS_ID) {
+				V.boomerangSlave.mother = V.missingParentID;
+				missing = true;
+			}
+			if (V.boomerangSlave.father === AS_ID) {
+				V.boomerangSlave.father = V.missingParentID;
+				missing = true;
+			}
+			if (V.boomerangSlave.origBodyOwnerID === AS_ID) {
+				V.traitor.origBodyOwnerID = 0;
+			}
+		}
+		
+		let _o = V.organs.findIndex(function(s) { return s.ID === V.activeSlave.ID; });
+		if (_o !== -1) {
+			V.organs.deleteAt(_o);
+		}
+		_o = V.limbs.findIndex(function(s) { return s.ID === V.activeSlave.ID; });
+		if (_o !== -1) {
+			V.limbs.deleteAt(_o);
+		}
+		
+		const _geneIndex = V.genePool.findIndex(function(s) { return s.ID === V.activeSlave.ID; });
+		if (_geneIndex !== -1) {
+			let keep = false;
+			if (V.traitor !== 0) {
+				if (isImpregnatedBy(V.traitor, V.activeSlave) || V.traitor.ID === V.activeSlave.ID) { /* did we impregnate the traitor, or are we the traitor? */
+					keep = true;
+				}
+			}
+			if (V.boomerangSlave !== 0) {
+				if (isImpregnatedBy(V.boomerangSlave, V.activeSlave) || V.boomerangSlave.ID === V.activeSlave.ID) { /* did we impregnate the boomerang, or are we the boomerang? */
+					keep = true;
+				}
+			}
+			if (!keep) { /* avoid going through this loop if possible */
+				keep = V.slaves.some(slave => {
+					/* have we impregnated a slave that is not ourself? */
+					return (slave.ID !== V.activeSlave.ID && isImpregnatedBy(slave, V.activeSlave))
+				});
+			}
+			if (!keep) {
+				V.genePool.deleteAt(_geneIndex);
+			}
+		}
+		
+		removeSlave(INDEX);
+		LENGTH--;
+		V.activeSlave = 0;
+		
+		if (missing) {
+			V.missingParentID--;
+		}
+	}
+};
-- 
GitLab


From 3d1d1a18aaa11944854c0ba858a29d1e905fc3dc Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Sun, 22 Jul 2018 19:34:04 +0300
Subject: [PATCH 100/189] clean up unnecessary V.seed

---
 src/js/fresult.tw             | 22 +++++++++-------------
 src/js/slaveSummaryWidgets.tw |  5 ++---
 2 files changed, 11 insertions(+), 16 deletions(-)

diff --git a/src/js/fresult.tw b/src/js/fresult.tw
index b4331c67577..1001cf910ea 100644
--- a/src/js/fresult.tw
+++ b/src/js/fresult.tw
@@ -60,23 +60,23 @@ window.FResult = (function() {
 		else if (slave.muscles < -30)
 			V.FResult -= 2;
 
-		V.seed = V.oralUseWeight + V.vaginalUseWeight + V.analUseWeight;
-		if (V.seed <= 0) return;
+		const uses = V.oralUseWeight + V.vaginalUseWeight + V.analUseWeight;
+		if (uses <= 0) return;
 
-		V.FResult += (6+slave.tonguePiercing) * (V.oralUseWeight/V.seed) * (slave.oralSkill/30);
+		V.FResult += (6+slave.tonguePiercing) * (V.oralUseWeight/uses) * (slave.oralSkill/30);
 		if (slave.sexualFlaw === "cum addict")
-			V.FResult += (V.oralUseWeight/V.seed) * (slave.oralSkill/30);
+			V.FResult += (V.oralUseWeight/uses) * (slave.oralSkill/30);
 		if (canDoVaginal(slave)) {
-			V.FResult += 6 * (V.vaginalUseWeight/V.seed) * (slave.vaginalSkill/30);
+			V.FResult += 6 * (V.vaginalUseWeight/uses) * (slave.vaginalSkill/30);
 			V.FResult += (3 - slave.vagina);
 			V.FResult += slave.vaginaLube;
 		}
 		if (canDoAnal(slave)) {
-			V.FResult += 6 * (V.analUseWeight/V.seed) * (slave.analSkill/30);
+			V.FResult += 6 * (V.analUseWeight/uses) * (slave.analSkill/30);
 			if (slave.sexualFlaw === "anal addict")
-				V.FResult += (V.analUseWeight/V.seed) * (slave.analSkill/30);
+				V.FResult += (V.analUseWeight/uses) * (slave.analSkill/30);
 			if (slave.inflationType === "aphrodisiac")
-				V.FResult += (V.analUseWeight/V.seed) * (slave.inflation * 3);
+				V.FResult += (V.analUseWeight/uses) * (slave.inflation * 3);
 		}
 	}
 
@@ -194,11 +194,7 @@ window.FResult = (function() {
 
 	function calcEgyptianBonus(slave) {
 		if (V.racialVarieties === undefined) V.racialVarieties = [];
-		V.seed = 0;
-		V.racialVarieties.forEach(race => {
-			if (slave.race === race) V.seed = 1;
-		});
-		if (V.seed === 0)
+		if (V.racialVarieties.every(race => slave.race !== race))
 			V.racialVarieties.push(slave.race);
 	}
 
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 613d7875a32..14b93c45edd 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -60,9 +60,8 @@ window.SlaveSummaryUncached = (function(){
 				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
 		V.desc = SlaveTitle(slave);
-		V.seed = V.desc.substring(0, 1);
-		V.seed = V.seed.toUpperCase();
-		V.desc = V.seed + V.desc.substring(1);
+		let first_letter = V.desc.substring(0, 1).toUpperCase();
+		V.desc = first_letter + V.desc.substring(1);
 		r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong> `;
 		if (V.seeRace === 1) {
 			r += `<span class="tan">`;
-- 
GitLab


From 6da339822fc53478362fa272b3e1d2817523b226 Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Sun, 22 Jul 2018 19:36:45 +0300
Subject: [PATCH 101/189] cleaner condition

---
 src/js/fresult.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/fresult.tw b/src/js/fresult.tw
index 1001cf910ea..4341ca791cc 100644
--- a/src/js/fresult.tw
+++ b/src/js/fresult.tw
@@ -194,7 +194,7 @@ window.FResult = (function() {
 
 	function calcEgyptianBonus(slave) {
 		if (V.racialVarieties === undefined) V.racialVarieties = [];
-		if (V.racialVarieties.every(race => slave.race !== race))
+		if (!V.racialVarieties.includes(slave.race))
 			V.racialVarieties.push(slave.race);
 	}
 
-- 
GitLab


From 829744a96665dec904c97e82efd59d4fe939be81 Mon Sep 17 00:00:00 2001
From: Vas <whiterocket@outlook.com>
Date: Sun, 22 Jul 2018 19:39:50 +0300
Subject: [PATCH 102/189] twine js sync

---
 devNotes/twine JS.txt | 37 ++++++++++++++++---------------------
 1 file changed, 16 insertions(+), 21 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 144e82d1a96..e66f11d93b0 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -10305,7 +10305,7 @@ window.saChoosesOwnClothes = function saChoosesOwnClothes(slave) {
 	return r;
 };
 
-/*:: FResult [script]*/
+// :: FResult [script]
 
 // this is a port of the FResult widget
 // it has been broken up into several functions, because it grew too long
@@ -10337,7 +10337,7 @@ window.FResult = (function() {
 
 		if (slave.nipples === "fuckable")
 			calcFuckableTits(slave);
-
+			
 		if (V.seeAge === 1)
 			calcAge(slave);
 		if (slave.fetish === "mindbroken")
@@ -10367,23 +10367,23 @@ window.FResult = (function() {
 		else if (slave.muscles < -30)
 			V.FResult -= 2;
 
-		V.seed = V.oralUseWeight + V.vaginalUseWeight + V.analUseWeight;
-		if (V.seed <= 0) return;
+		const uses = V.oralUseWeight + V.vaginalUseWeight + V.analUseWeight;
+		if (uses <= 0) return;
 
-		V.FResult += (6+slave.tonguePiercing) * (V.oralUseWeight/V.seed) * (slave.oralSkill/30);
+		V.FResult += (6+slave.tonguePiercing) * (V.oralUseWeight/uses) * (slave.oralSkill/30);
 		if (slave.sexualFlaw === "cum addict")
-			V.FResult += (V.oralUseWeight/V.seed) * (slave.oralSkill/30);
+			V.FResult += (V.oralUseWeight/uses) * (slave.oralSkill/30);
 		if (canDoVaginal(slave)) {
-			V.FResult += 6 * (V.vaginalUseWeight/V.seed) * (slave.vaginalSkill/30);
+			V.FResult += 6 * (V.vaginalUseWeight/uses) * (slave.vaginalSkill/30);
 			V.FResult += (3 - slave.vagina);
 			V.FResult += slave.vaginaLube;
 		}
 		if (canDoAnal(slave)) {
-			V.FResult += 6 * (V.analUseWeight/V.seed) * (slave.analSkill/30);
+			V.FResult += 6 * (V.analUseWeight/uses) * (slave.analSkill/30);
 			if (slave.sexualFlaw === "anal addict")
-				V.FResult += (V.analUseWeight/V.seed) * (slave.analSkill/30);
+				V.FResult += (V.analUseWeight/uses) * (slave.analSkill/30);
 			if (slave.inflationType === "aphrodisiac")
-				V.FResult += (V.analUseWeight/V.seed) * (slave.inflation * 3);
+				V.FResult += (V.analUseWeight/uses) * (slave.inflation * 3);
 		}
 	}
 
@@ -10501,11 +10501,7 @@ window.FResult = (function() {
 
 	function calcEgyptianBonus(slave) {
 		if (V.racialVarieties === undefined) V.racialVarieties = [];
-		V.seed = 0;
-		V.racialVarieties.forEach(race => {
-			if (slave.race === race) V.seed = 1;
-		});
-		if (V.seed === 0)
+		if (!V.racialVarieties.includes(slave.race))
 			V.racialVarieties.push(slave.race);
 	}
 
@@ -18337,7 +18333,7 @@ window.I = function() {
 		name = V.incubatorNameCaps;
 	return `<<link "${name}""Incubator">><</link>> `}
 
-/*:: Slave Summary Widgets JS [script]*/
+// :: Slave Summary Widgets JS [script]
 
 window.clearSummaryCache = function clearSummaryCache(slave) {
 	if (!slave)
@@ -18399,9 +18395,8 @@ window.SlaveSummaryUncached = (function(){
 				r += `&nbsp;&nbsp;&nbsp;&nbsp;`;
 		}
 		V.desc = SlaveTitle(slave);
-		V.seed = V.desc.substring(0, 1);
-		V.seed = V.seed.toUpperCase();
-		V.desc = V.seed + V.desc.substring(1);
+		let first_letter = V.desc.substring(0, 1).toUpperCase();
+		V.desc = first_letter + V.desc.substring(1);
 		r += `<strong><span class="coral">${V.desc}${V.abbreviatePhysicals === 2? '.' : ''}</span></strong> `;
 		if (V.seeRace === 1) {
 			r += `<span class="tan">`;
@@ -18779,7 +18774,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<strong><span class="red">W++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
 			}
 		} else if (slave.weight <= 130) {
-			if (slave.hips > 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `<strong>W+++${V.summaryStats? `[${slave.weight}]` : ''}</strong>`;
 			} else {
 				r += `<strong><span class="red">W+++${V.summaryStats? `[${slave.weight}]` : ''}</span></strong>`;
@@ -18828,7 +18823,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `<span class="red">Overweight${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
 			}
 		} else if (slave.weight <= 130) {
-			if (slave.hips > 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.hips >= 2 || V.arcologies[0].FSHedonisticDecadence !== "unset") {
 				r += `Pleasantly soft and shapely${V.summaryStats? `[${slave.weight}]`: ''}.`;
 			} else {
 				r += `<span class="red">Fat${V.summaryStats ? `[${slave.weight}]`: ''}.</span>`;
-- 
GitLab


From 934ffb6ee0d05418358329784d5c4eb3173f583d Mon Sep 17 00:00:00 2001
From: x <okp57855@psoxs.com>
Date: Mon, 23 Jul 2018 14:03:47 +1200
Subject: [PATCH 103/189] Bug fix

---
 src/uncategorized/RESS.tw | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index a3ee5b57462..883921dd3a7 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -7800,10 +7800,10 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<</if>>
 <</if>>
 <<if $PC.preg > 30 && $PC.pregMood == 1 && $PC.boobs == 1 && $PC.boobsImplant == 0 && $PC.boobsBonus >= 0>>
-	<br><<link "She just needs a mother's touch">>
+	<br><<link "She just needs a mother's touch">> <<EventNameDelink $activeSlave>> <<replace "#result">>
 		You reassure the frightened $desc and beckon her to return to the hole before settling your gravid body before the door and pushing a fat, milk-laden breast through the gap. You coax the nervous girl to drink her fill; she must be starving in there, after all. After some hesitation, you finally feel a pair of lips wrap themselves around your erect nipple and begin to drink deep. You talk to the suckling slave, explaining to her just what she needs to do to thrive in her new life, shushing her whenever she tries to object and asking her to just listen. Before long, your teat is drained of all its mother's milk, and as you move to shift to the other closer to the door, the desperate slave begs you not to go. You slip a hand through the slat, caressing her face as you let her know you're just turning around. As she suckles your remaining milk, you feel her @@.mediumaquamarine;relax and lower her guard.@@ She needed to connect to someone and she didn't expect it to be you, especially like not this. @@.hotpink;Her willingness to listen to your has increased.@@
 		<<set $activeSlave.devotion += 15, $activeSlave.trust += 5>>
-	<</link>>
+		<</replace>> <</link>>
 <</if>>
 
 <<case "scrubbing">>
-- 
GitLab


From 5f0f2450fa476520d96603c1ce8c0255618c664b Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 23 Jul 2018 18:46:12 -0400
Subject: [PATCH 104/189] final clean up

---
 devNotes/twine JS.txt                     |  34 +-
 src/endWeek/saPornJS.tw                   | 142 +++---
 src/js/DefaultRules.tw                    |   2 +-
 src/js/rulesAssistantOptions.tw           |   2 +-
 src/js/slaveSummaryWidgets.tw             |  30 ++
 src/pregmod/saPorn.tw                     | 152 +++++-
 src/pregmod/widgets/bodyswapWidgets.tw    |  39 ++
 src/pregmod/widgets/seBirthWidgets.tw     |   2 +-
 src/uncategorized/longSlaveDescription.tw |  40 +-
 src/uncategorized/masterSuiteReport.tw    |   9 +-
 src/uncategorized/reFSAcquisition.tw      | 541 +++++++++++-----------
 src/uncategorized/reRecruit.tw            |   6 +
 src/uncategorized/reRelativeRecruiter.tw  |  42 +-
 src/uncategorized/saLongTermEffects.tw    |   8 +-
 src/uncategorized/saPleaseYou.tw          |  11 +
 src/uncategorized/saRecruitGirls.tw       |   6 +-
 src/uncategorized/saServeThePublic.tw     |  14 +-
 src/uncategorized/saWhore.tw              |  14 +-
 src/uncategorized/salon.tw                |   2 +-
 src/uncategorized/sellSlave.tw            |   8 +
 src/uncategorized/slaveInteract.tw        |   2 +-
 src/utility/assayWidgets.tw               |  18 +-
 src/utility/descriptionWidgetsFlesh.tw    |   2 +-
 src/utility/slaveCreationWidgets.tw       |   5 +
 24 files changed, 752 insertions(+), 379 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 00596324dc0..ee559a0ccc6 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -13907,7 +13907,7 @@ window.DefaultRules = (function() {
 
 	function ProcessPorn(slave, rule) {
 		if ((rule.pornFameSpending !== undefined) && (rule.pornFameSpending !== "no default setting")) {
-			if ((slave.prestige < 3)) {
+			if ((slave.pornPrestige < 3)) {
 				if ((slave.pornFameSpending !== rule.pornFameSpending)) {
 					slave.pornFameSpending = rule.pornFameSpending;
 					r += `<br>${slave.slaveName}'s porn publicity has been corrected.`;
@@ -15857,7 +15857,7 @@ window.rulesAssistantOptions = (function() {
 		constructor() {
 			const pairs = [
 				["No default setting", "no default setting"],
-				["No broadcasting", -1],
+				/*["No broadcasting", -1], **This has changed, it would now use .pornFeed** */
 				["No subsidy", 0],
 				["1000", 1000],
 				["2000", 2000],
@@ -18431,6 +18431,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `C`;
 			r += `</span> `;
 			short_prestige(slave);
+			short_porn_prestige(slave);
 		} else if (V.abbreviateSkills === 2) {
 			long_intelligence(slave);
 			long_sex_skills(slave);
@@ -18438,6 +18439,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `Trained fighter.`;
 			r += `</span> `;
 			long_prestige(slave);
+			long_porn_prestige(slave);
 		}
 		if (V.abbreviateMental === 1) {
 			if (slave.fetish !== "mindbroken") {
@@ -20877,6 +20879,20 @@ window.SlaveSummaryUncached = (function(){
 		}
 	}
 	
+	function short_porn_prestige(slave) {
+		if (slave.pornPrestige > 0) {
+			r += `<span class="green">`;
+			if (slave.pornPrestige > 2) {
+				r += `PPrest++`;
+			} else if (slave.pornPrestige === 2) {
+				r += `PPrest+`;
+			} else if (slave.pornPrestige === 1) {
+				r += `PPrest`;
+			}
+			r += `</span> `;
+		}
+	}
+	
 	function long_intelligence(slave) {
 		if (slave.fetish === "mindbroken") {
 			return;
@@ -20988,6 +21004,20 @@ window.SlaveSummaryUncached = (function(){
 		}
 	}
 	
+	function long_porn_prestige(slave) {
+		if (slave.pornPrestige > 0) {
+			r += `<span class="green">`;
+			if (slave.pornPrestige > 2) {
+				r += `Porn star.`;
+			} else if (slave.pornPrestige === 2) {
+				r += `Porn slut.`;
+			} else if (slave.pornPrestige === 1) {
+				r += `Porn amateur.`;
+			}
+			r += `</span> `;
+		}
+	}
+	
 	function short_fetish(slave) {
 		r += `<span class="lightcoral">`;
 		switch (slave.fetish) {
diff --git a/src/endWeek/saPornJS.tw b/src/endWeek/saPornJS.tw
index 4d09d9195b5..b9d3b0bd8a8 100644
--- a/src/endWeek/saPornJS.tw
+++ b/src/endWeek/saPornJS.tw
@@ -4,112 +4,112 @@
 
 window.getHighestPorn = function(slave) {
 
-	var max = 0;
+	var max = {value: 0, type: "none"};
 	
-	if(slave.pornTypeGeneral > max){
-		max = slave.pornTypeGeneral;
+	if(slave.pornTypeGeneral > max.value){
+		max = {value: slave.pornTypeGeneral, type: "generic"};
 	}
-	if(slave.pornTypeFuckdoll > max){
-		max = slave.pornTypeFuckdoll;
+	if(slave.pornTypeFuckdoll > max.value){
+		max = {value: slave.pornTypeFuckdoll, type: "fuckdoll"};
 	}
-	if(slave.pornTypeRape > max){
-		max = slave.pornTypeRape;
+	if(slave.pornTypeRape > max.value){
+		max = {value: slave.pornTypeRape, type: "rape"};
 	}
-	if(slave.pornTypePreggo > max){
-		max = slave.pornTypePreggo;
+	if(slave.pornTypePreggo > max.value){
+		max = {value: slave.pornTypePreggo, type: "preggo"};
 	}
-	if(slave.pornTypeBBW > max){
-		max = slave.pornTypeBBW;
+	if(slave.pornTypeBBW > max.value){
+		max = {value: slave.pornTypeBBW, type: "BBW"};
 	}
-	if(slave.pornTypeGainer > max){
-		max = slave.pornTypeGainer;
+	if(slave.pornTypeGainer > max.value){
+		max = {value: slave.pornTypeGainer, type: "weight gain"};
 	}
-	if(slave.pornTypeStud > max){
-		max = slave.pornTypeStud;
+	if(slave.pornTypeStud > max.value){
+		max = {value: slave.pornTypeStud, type: "big dick"};
 	}
-	if(slave.pornTypeLoli > max){
-		max = slave.pornTypeLoli;
+	if(slave.pornTypeLoli > max.value){
+		max = {value: slave.pornTypeLoli, type: "underage"};
 	}
-	if(slave.pornTypeDeepThroat > max){
-		max = slave.pornTypeDeepThroat;
+	if(slave.pornTypeDeepThroat > max.value){
+		max = {value: slave.pornTypeDeepThroat, type: "deepthroat"};
 	}
-	if(slave.pornTypeStruggleFuck > max){
-		max = slave.pornTypeStruggleFuck;
+	if(slave.pornTypeStruggleFuck > max.value){
+		max = {value: slave.pornTypeStruggleFuck, type: "unwilling"};
 	}
-	if(slave.pornTypePainal > max){
-		max = slave.pornTypePainal;
+	if(slave.pornTypePainal > max.value){
+		max = {value: slave.pornTypePainal, type: "hardcore anal"};
 	}
-	if(slave.pornTypeTease > max){
-		max = slave.pornTypeTease;
+	if(slave.pornTypeTease > max.value){
+		max = {value: slave.pornTypeTease, type: "softcore"};
 	}
-	if(slave.pornTypeRomantic > max){
-		max = slave.pornTypeRomantic;
+	if(slave.pornTypeRomantic > max.value){
+		max = {value: slave.pornTypeRomantic, type: "romantic"};
 	}
-	if(slave.pornTypePervert > max){
-		max = slave.pornTypePervert;
+	if(slave.pornTypePervert > max.value){
+		max = {value: slave.pornTypePervert, type: "really perverted"};
 	}
-	if(slave.pornTypeCaring > max){
-		max = slave.pornTypeCaring;
+	if(slave.pornTypeCaring > max.value){
+		max = {value: slave.pornTypeCaring, type: "voyeur"};
 	}
-	if(slave.pornTypeUnflinching > max){
-		max = slave.pornTypeUnflinching;
+	if(slave.pornTypeUnflinching > max.value){
+		max = {value: slave.pornTypeUnflinching, type: "unspeakable"};
 	}
-	if(slave.pornTypeSizeQueen > max){
-		max = slave.pornTypeSizeQueen;
+	if(slave.pornTypeSizeQueen > max.value){
+		max = {value: slave.pornTypeSizeQueen, type: "huge insertion"};
 	}
-	if(slave.pornTypeNeglectful > max){
-		max = slave.pornTypeNeglectful;
+	if(slave.pornTypeNeglectful > max.value){
+		max = {value: slave.pornTypeNeglectful, type: "orgasm denial"};
 	}
-	if(slave.pornTypeCumAddict > max){
-		max = slave.pornTypeCumAddict;
+	if(slave.pornTypeCumAddict > max.value){
+		max = {value: slave.pornTypeCumAddict, type: "cum addiction"};
 	}
-	if(slave.pornTypeAnalAddict > max){
-		max = slave.pornTypeAnalAddict;
+	if(slave.pornTypeAnalAddict > max.value){
+		max = {value: slave.pornTypeAnalAddict, type: "anal addiction"};
 	}
-	if(slave.pornTypeAttentionWhore > max){
-		max = slave.pornTypeAttentionWhore;
+	if(slave.pornTypeAttentionWhore > max.value){
+		max = {value: slave.pornTypeAttentionWhore, type: "exhibition"};
 	}
-	if(slave.pornTypeBreastGrowth > max){
-		max = slave.pornTypeBreastGrowth;
+	if(slave.pornTypeBreastGrowth > max.value){
+		max = {value: slave.pornTypeBreastGrowth, type: "breast expansion"};
 	}
-	if(slave.pornTypeAbusive > max){
-		max = slave.pornTypeAbusive;
+	if(slave.pornTypeAbusive > max.value){
+		max = {value: slave.pornTypeAbusive, type: "abuse"};
 	}
-	if(slave.pornTypeMalicious > max){
-		max = slave.pornTypeMalicious;
+	if(slave.pornTypeMalicious > max.value){
+		max = {value: slave.pornTypeMalicious, type: "sexual torture"};
 	}
-	if(slave.pornTypeSelfHating > max){
-		max = slave.pornTypeSelfHating;
+	if(slave.pornTypeSelfHating > max.value){
+		max = {value: slave.pornTypeSelfHating, type: "self hating"};
 	}
-	if(slave.pornTypeBreeder > max){
-		max = slave.pornTypeBreeder;
+	if(slave.pornTypeBreeder > max.value){
+		max = {value: slave.pornTypeBreeder, type: "breeder"};
 	}
-	if(slave.pornTypeSub > max){
-		max = slave.pornTypeSub;
+	if(slave.pornTypeSub > max.value){
+		max = {value: slave.pornTypeSub, type: "submissive"};
 	}
-	if(slave.pornTypeCumSlut > max){
-		max = slave.pornTypeCumSlut;
+	if(slave.pornTypeCumSlut > max.value){
+		max = {value: slave.pornTypeCumSlut, type: "cum"};
 	}
-	if(slave.pornTypeAnal > max){
-		max = slave.pornTypeAnal;
+	if(slave.pornTypeAnal > max.value){
+		max = {value: slave.pornTypeAnal, type: "buttslut"};
 	}
-	if(slave.pornTypeHumiliation > max){
-		max = slave.pornTypeHumiliation;
+	if(slave.pornTypeHumiliation > max.value){
+		max = {value: slave.pornTypeHumiliation, type: "humiliating"};
 	}
-	if(slave.pornTypeBoobs > max){
-		max = slave.pornTypeBoobs;
+	if(slave.pornTypeBoobs > max.value){
+		max = {value: slave.pornTypeBoobs, type: "breast"};
 	}
-	if(slave.pornTypeDom > max){
-		max = slave.pornTypeDom;
+	if(slave.pornTypeDom > max.value){
+		max = {value: slave.pornTypeDom, type: "dominant"};
 	}
-	if(slave.pornTypeSadist > max){
-		max = slave.pornTypeSadist;
+	if(slave.pornTypeSadist > max.value){
+		max = {value: slave.pornTypeSadist, type: "sadistic"};
 	}
-	if(slave.pornTypeMasochist > max){
-		max = slave.pornTypeMasochist;
+	if(slave.pornTypeMasochist > max.value){
+		max = {value: slave.pornTypeMasochist, type: "masochistic"};
 	}
-	if(slave.pornTypePregnancy > max){
-		max = slave.pornTypePregnancy;
+	if(slave.pornTypePregnancy > max.value){
+		max = {value: slave.pornTypePregnancy, type: "pregnancy fetish"};
 	}
 	
 	return max;
diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 27a1b54220d..9cfa0ca6aa2 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -2181,7 +2181,7 @@ window.DefaultRules = (function() {
 
 	function ProcessPorn(slave, rule) {
 		if ((rule.pornFameSpending !== undefined) && (rule.pornFameSpending !== "no default setting")) {
-			if ((slave.prestige < 3)) {
+			if ((slave.pornPrestige < 3)) {
 				if ((slave.pornFameSpending !== rule.pornFameSpending)) {
 					slave.pornFameSpending = rule.pornFameSpending;
 					r += `<br>${slave.slaveName}'s porn publicity has been corrected.`;
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index e947f7b77f3..5e112444a39 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -1924,7 +1924,7 @@ window.rulesAssistantOptions = (function() {
 		constructor() {
 			const pairs = [
 				["No default setting", "no default setting"],
-				["No broadcasting", -1],
+				/*["No broadcasting", -1], **This has changed, it would now use .pornFeed** */
 				["No subsidy", 0],
 				["1000", 1000],
 				["2000", 2000],
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 49fd0c52eac..4841b60c9a5 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -131,6 +131,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `C`;
 			r += `</span> `;
 			short_prestige(slave);
+			short_porn_prestige(slave);
 		} else if (V.abbreviateSkills === 2) {
 			long_intelligence(slave);
 			long_sex_skills(slave);
@@ -138,6 +139,7 @@ window.SlaveSummaryUncached = (function(){
 				r += `Trained fighter.`;
 			r += `</span> `;
 			long_prestige(slave);
+			long_porn_prestige(slave);
 		}
 		if (V.abbreviateMental === 1) {
 			if (slave.fetish !== "mindbroken") {
@@ -2577,6 +2579,20 @@ window.SlaveSummaryUncached = (function(){
 		}
 	}
 	
+	function short_porn_prestige(slave) {
+		if (slave.pornPrestige > 0) {
+			r += `<span class="green">`;
+			if (slave.pornPrestige > 2) {
+				r += `PPrest++`;
+			} else if (slave.pornPrestige === 2) {
+				r += `PPrest+`;
+			} else if (slave.pornPrestige === 1) {
+				r += `PPrest`;
+			}
+			r += `</span> `;
+		}
+	}
+	
 	function long_intelligence(slave) {
 		if (slave.fetish === "mindbroken") {
 			return;
@@ -2688,6 +2704,20 @@ window.SlaveSummaryUncached = (function(){
 		}
 	}
 	
+	function long_porn_prestige(slave) {
+		if (slave.pornPrestige > 0) {
+			r += `<span class="green">`;
+			if (slave.pornPrestige > 2) {
+				r += `Porn star.`;
+			} else if (slave.pornPrestige === 2) {
+				r += `Porn slut.`;
+			} else if (slave.pornPrestige === 1) {
+				r += `Porn amateur.`;
+			}
+			r += `</span> `;
+		}
+	}
+	
 	function short_fetish(slave) {
 		r += `<span class="lightcoral">`;
 		switch (slave.fetish) {
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index 027c5129cbb..14e753a84fe 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -1165,7 +1165,7 @@
 			but $pronoun isn't famous enough to be called prestigious yet.
 		<</if>>
 	<<elseif $slaves[$i].pornPrestige == 1>>
-		<<set _failedStar = 0>>
+		<<set _failedStar = 0, _fameSwap = 0, _swapPoint = 1.2>>
 
 		<<switch $slaves[$i].pornFameType>>
 		<<case "generic">>
@@ -1173,8 +1173,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from her career in slave pornography. Her many fans relish the sight of her being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
-			<<elseif $slaves[$i].pornTypeGeneral >= _topFame*1.5>>
-				
+			<<elseif _topFame.value >= $slaves[$i].pornTypeGeneral*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeGeneral < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1183,6 +1183,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "It is well known from its career in slave pornography. Its many fans relish the sight of it being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeFuckdoll*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeFuckdoll < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1191,6 +1193,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her being raped.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being raped, so it is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeRape*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeRape < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1199,6 +1203,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her swollen with child.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object swollen with child, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypePreggo*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypePreggo < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1207,7 +1213,9 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her thick, soft body.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive thick and soft body, so $pronoun is now prestigious to own $object.
-			<<elseif $slaves[$i].pornTypePreggo < 100>>
+			<<elseif _topFame.value >= $slaves[$i].pornTypeBBW*_swapPoint>>
+				<<set _fameSwap = 1>>
+			<<elseif $slaves[$i].pornTypeBBW < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "underage">>
@@ -1215,6 +1223,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her immature body.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive immature body, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeLoli*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeLoli < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1223,6 +1233,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how curvy she's gotten.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how curvy <<print $pronoun>>'s gotten, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeGainer*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeGainer < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1231,6 +1243,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her heavy dick.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive heavy dick, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeStud*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeStud < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1239,6 +1253,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sounds $pronoun makes when being throatfucked, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeDeepThroat*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeDeepThroat < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1247,6 +1263,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how perfectly she struggles during sex.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how perfectly $pronoun struggles during sex, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeStruggleFuck*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeStruggleFuck < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1255,6 +1273,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish watching her asshole pushed to its limit.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish watching $possessive asshole pushed to its limit, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypePainal*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypePainal < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1263,6 +1283,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her lewd striptease.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive lewd striptease, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeTease*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeTease < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1271,6 +1293,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the deep bond she shares with her partners.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeRomantic*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeRomantic < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1279,6 +1303,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the depths of her pervesions.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypePervert*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypePervert < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1287,6 +1313,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeCaring*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeCaring < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1295,6 +1323,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her willingness to do anything and everything.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeUnflinching*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeUnflinching < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1303,6 +1333,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her holes filled to their limits.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeSizeQueen*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeSizeQueen < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1311,6 +1343,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her denying herself pleasure.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object denying <<print $object>>self pleasure, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeNeglectful*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeNeglectful < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1319,6 +1353,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for cum.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for cum, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeCumAddict*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeCumAddict < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1327,6 +1363,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for a dick up her ass.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for a dick up $possessive ass, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeAnalAddict*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeAnalAddict < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1335,6 +1373,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for attention.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for attention, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeAttentionWhore*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeAttentionWhore < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1343,6 +1383,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her expanding bust.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive expanding bust, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeBreastGrowth*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeBreastGrowth < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1351,6 +1393,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her abusing others.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object abusing others, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeAbusive*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeAbusive < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1359,6 +1403,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her getting off from the suffering she caused.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object getting off from the suffering $pronoun caused, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeMalicious*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeMalicious < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1367,6 +1413,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her suffering.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive suffering, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeSelfHating*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeSelfHating < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1375,6 +1423,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her obsession with having children.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive obsession with having children, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeBreeder*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeBreeder < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1383,6 +1433,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her submissiveness.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive submissiveness, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeSub*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeSub < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1391,6 +1443,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her desire for cum.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive desire for cum, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeCumSlut*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeCumSlut < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1399,6 +1453,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her rear.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive rear, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeAnal*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeAnal < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1407,6 +1463,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her frequent humiliation.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive frequent humiliation, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeHumiliation*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeHumiliation < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1415,6 +1473,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her breasts.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive breasts, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeBoobs*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeBoobs < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1423,6 +1483,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her dominance.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive dominance, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeDom*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeDom < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1431,6 +1493,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her sadism.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive sadism, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeSadist*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeSadist < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1439,6 +1503,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her masochism.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive masochism, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypeMasochist*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeMasochist < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1447,6 +1513,8 @@
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her fondness for pregnancy.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive fondness for pregnancy, so $pronoun is now prestigious to own $object.
+			<<elseif _topFame.value >= $slaves[$i].pornTypePregnancy*_swapPoint>>
+				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypePregnancy < 100>>
 				<<set _failedStar = 1>>
 			<</if>>
@@ -1460,6 +1528,82 @@
 			@@.red;$possessiveCap popularity in $slaves[$i].pornFameType pornography has faded.@@ $pronounCap is once again relatively unknown.
 			<<set $slaves[$i].pornFameType = "none">>
 		<</if>>
+		<<if _fameSwap == 1>>
+			$possessiveCap fame in $slaves[$i].pornFameType pornography has been overwhelmed by $possessive surging popularity in other aspects. @@.yellow;pronounCap is now better known for $possessive _topFame.type porn.@@
+			<<set $slaves[$i].pornFameType = _topFame.type>>
+			<<switch _topFame.type>>
+			<<case "generic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her being used.">>
+			<<case "fuckdoll">>
+				<<set $slaves[$i].pornPrestigeDesc = "It has a following in slave pornography. Its fans relish the sight of it being used.">>
+			<<case "rape">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her being raped.">>
+			<<case "preggo">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her swell with child.">>
+			<<case "BBW">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her thick and soft body.">>
+			<<case "underage">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her childish body.">>
+			<<case "weight gain">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her eating and gaining weight.">>
+			<<case "big dick">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her throbbing erection.">>
+			<<case "deepthroat">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
+			<<case "unwilling">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed how she struggles during sex.">>
+			<<case "hardcore anal">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her asshole pushed to its limit.">>
+			<<case "softcore">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her lewd striptease.">>
+			<<case "romantic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the deep bond she shares with her partners.">>
+			<<case "really perverted">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her most perverted tendencies.">>
+			<<case "voyeur">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her devote herself to her partners' pleasure.">>
+			<<case "unspeakable">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her willingness to do things not repeated in polite company.">>
+			<<case "huge insertion">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her holes filled to their limits.">>
+			<<case "orgasm denial">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her ignoring her own pleasure.">>
+			<<case "cum addiction">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything and everything for cum.">>
+			<<case "anal addiction">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything for a dick in her ass.">>
+			<<case "exhibition">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed whatching her do anything for attention.">>
+			<<case "breast expansion">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed charting the growth of her breasts.">>
+			<<case "abuse">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her abuse others.">>
+			<<case "sexual torture">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her getting off from the suffering she caused.">>
+			<<case "self hating">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her happily suffer.">>
+			<<case "breeder">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed watching her obsess over pumping out babies.">>
+			<<case "submissive">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her submission.">>
+			<<case "cum">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her taste for cum.">>
+			<<case "buttslut">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her rear.">>
+			<<case "humiliating">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her humiliating herself.">>
+			<<case "breast">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed the sight of her breasts.">>
+			<<case "dominant">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her dominance.">>
+			<<case "sadistic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her sadism.">>
+			<<case "masochistic">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her masochism.">>
+			<<case "pregnancy fetish">>
+				<<set $slaves[$i].pornPrestigeDesc = "She has a following in slave pornography. Thousands have enjoyed her fondness for pregnancy.">>
+			<</switch>>
+		<</if>>
 	<<elseif $slaves[$i].pornPrestige == 2>>
 		<<set _failedStar = 0>>
 
diff --git a/src/pregmod/widgets/bodyswapWidgets.tw b/src/pregmod/widgets/bodyswapWidgets.tw
index caf2df12971..8ce195237b2 100644
--- a/src/pregmod/widgets/bodyswapWidgets.tw
+++ b/src/pregmod/widgets/bodyswapWidgets.tw
@@ -9,6 +9,45 @@
 <<set $args[0].genes = $args[1].genes>>
 <<set $args[0].prestige = $args[1].prestige>>
 <<set $args[0].pornFame = $args[1].pornFame>>
+<<set $args[0].pornPrestige = $args[1].pornPrestige>>
+<<set $args[0].pornPrestigeDesc = $args[1].pornPrestigeDesc>>
+<<set $args[0].pornFameType = $args[1].pornFameType>>
+<<set $args[0].pornFocus = "none">>
+<<set $args[0].pornTypeGeneral = $args[1].pornTypeGeneral>>
+<<set $args[0].pornTypeFuckdoll = $args[1].pornTypeFuckdoll>>
+<<set $args[0].pornTypeRape = $args[1].pornTypeRape>>
+<<set $args[0].pornTypePreggo = $args[1].pornTypePreggo>>
+<<set $args[0].pornTypeBBW = $args[1].pornTypeBBW>>
+<<set $args[0].pornTypeGainer = $args[1].pornTypeGainer>>
+<<set $args[0].pornTypeStud = $args[1].pornTypeStud>>
+<<set $args[0].pornTypeLoli = $args[1].pornTypeLoli>>
+<<set $args[0].pornTypeDeepThroat = $args[1].pornTypeDeepThroat>>
+<<set $args[0].pornTypeStruggleFuck = $args[1].pornTypeStruggleFuck>>
+<<set $args[0].pornTypePainal = $args[1].pornTypePainal>>
+<<set $args[0].pornTypeTease = $args[1].pornTypeTease>>
+<<set $args[0].pornTypeRomantic = $args[1].pornTypeRomantic>>
+<<set $args[0].pornTypePervert = $args[1].pornTypePervert>>
+<<set $args[0].pornTypeCaring = $args[1].pornTypeCaring>>
+<<set $args[0].pornTypeUnflinching = $args[1].pornTypeUnflinching>>
+<<set $args[0].pornTypeSizeQueen = $args[1].pornTypeSizeQueen>>
+<<set $args[0].pornTypeNeglectful = $args[1].pornTypeNeglectful>>
+<<set $args[0].pornTypeCumAddict = $args[1].pornTypeCumAddict>>
+<<set $args[0].pornTypeAnalAddict = $args[1].pornTypeAnalAddict>>
+<<set $args[0].pornTypeAttentionWhore = $args[1].pornTypeAttentionWhore>>
+<<set $args[0].pornTypeBreastGrowth = $args[1].pornTypeBreastGrowth>>
+<<set $args[0].pornTypeAbusive = $args[1].pornTypeAbusive>>
+<<set $args[0].pornTypeMalicious = $args[1].pornTypeMalicious>>
+<<set $args[0].pornTypeSelfHating = $args[1].pornTypeSelfHating>>
+<<set $args[0].pornTypeBreeder = $args[1].pornTypeBreeder>>
+<<set $args[0].pornTypeSub = $args[1].pornTypeSub>>
+<<set $args[0].pornTypeCumSlut = $args[1].pornTypeCumSlut>>
+<<set $args[0].pornTypeAnal = $args[1].pornTypeAnal>>
+<<set $args[0].pornTypeHumiliation = $args[1].pornTypeHumiliation>>
+<<set $args[0].pornTypeBoobs = $args[1].pornTypeBoobs>>
+<<set $args[0].pornTypeDom = $args[1].pornTypeDom>>
+<<set $args[0].pornTypeSadist = $args[1].pornTypeSadist>>
+<<set $args[0].pornTypeMasochist = $args[1].pornTypeMasochist>>
+<<set $args[0].pornTypePregnancy = $args[1].pornTypePregnancy>>
 <<set $args[0].prestigeDesc = $args[1].prestigeDesc>>
 <<set $args[0].physicalAge = $args[1].physicalAge>>
 <<set $args[0].visualAge = $args[1].visualAge>>
diff --git a/src/pregmod/widgets/seBirthWidgets.tw b/src/pregmod/widgets/seBirthWidgets.tw
index 89f7c58892f..4a0c0b86720 100644
--- a/src/pregmod/widgets/seBirthWidgets.tw
+++ b/src/pregmod/widgets/seBirthWidgets.tw
@@ -904,7 +904,7 @@ All in all,
 		<</link>> 
 		//Will cost <<print cashFormat(500)>> weekly//
 		<<if $Cash4Babies == 1>>
-			<<if $slaves[$i].prestige > 1>>
+			<<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>
 				| <<link 'Send them to auction'>>
 					<<replace `"#" + $dispositionId`>>
 						<<set _babyCost = random(-12,100)>>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index 1d1c47eacf4..0ce7dd328fc 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -1502,19 +1502,31 @@ when a dick is pushed inside <<if $activeSlave.vagina >= -1>>either of its lower
 */
 
 <<if $activeSlave.prestige > 0>>
-  <<if $activeSlave.prestigeDesc>>$activeSlave.prestigeDesc<</if>>
-  <<if $activeSlave.prestige > 2>>
-	It is extremely prestigious to own $him.
-  <<elseif $activeSlave.prestige > 1>>
-	It is quite prestigious to own $him.
-  <<else>>
-	It is fairly prestigious to own $him.
-  <</if>>
-  <<if $activeSlave.fuckdoll == 0>>
-  <<if $activeSlave.markings == "birthmark">>
-	$He has a large, liver-colored birthmark, but since $he's prestigious, this uniqueness adds to $his beauty rather than detracting from it.
-  <</if>>
-  <</if>>
+	<<if $activeSlave.prestigeDesc>>$activeSlave.prestigeDesc<</if>>
+	<<if $activeSlave.prestige > 2>>
+		It is extremely prestigious to own $him.
+	<<elseif $activeSlave.prestige > 1>>
+		It is quite prestigious to own $him.
+	<<else>>
+		It is fairly prestigious to own $him.
+	<</if>>
+<</if>>
+
+<<if $activeSlave.pornPrestige > 0>>
+	<<if $activeSlave.prestigeDesc>>$activeSlave.pornPrestigeDesc<</if>>
+	<<if $activeSlave.pornPrestige > 2>>
+		$He is an famous porn star and tends to gain a following wherever $he goes.
+	<<elseif $activeSlave.pornPrestige > 1>>
+		$His porn has a sizable fanbase, so $he is recognized often.
+	<<else>>
+		$His porn has a small fanbase, so $he is recognized occasionally.
+	<</if>>
+<</if>>
+
+<<if $activeSlave.prestige > 0 || $activeSlave.pornPrestige > 1>>
+	<<if $activeSlave.fuckdoll == 0 && $activeSlave.markings == "birthmark">>
+		$He has a large, liver-colored birthmark, but since $he's well known, this uniqueness adds to $his beauty rather than detracting from it.
+	<</if>>
 <</if>>
 
 <<if $activeSlave.fuckdoll > 0>>
@@ -1945,7 +1957,7 @@ $His scars make $him look like $he's in the right place.
 <</if>>
 
 <<if $activeSlave.fuckdoll == 0>>
-	<<if $activeSlave.markings == "birthmark" && $activeSlave.prestige == 0>>
+	<<if $activeSlave.markings == "birthmark" && $activeSlave.prestige == 0 && $activeSlave.pornPrestige < 2>>
 	  $He has a large, liver-colored birthmark, detracting from $his beauty.
 	<</if>>
 	<<if ($activeSlave.skin == "tanned") && ($activeSlave.origSkin != "tanned")>>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index ee73218403e..6e3bbc38f1a 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -113,9 +113,9 @@
 				She was once your rival, and your relationship is widely thought to be @@.green;the perfect modern romance.@@
 				<<set $repGain += 250>>
 			<<elseif ($Concubine.prestige > 0)>>
-				<<if $verboseDescriptions == 1>>Keeping such a prestigious slave as your concubine @@.green;adds to your fame.@@<</if>>
 				<<set $repGain += 25*$Concubine.prestige>>
 				<<if $verboseDescriptions == 1>>
+					Keeping such a prestigious slave as your concubine @@.green;adds to your fame.@@
 					<<if $Concubine.prestigeDesc == "She is a famed Free Cities whore, and commands top prices.">>
 						When she has a free moment, she refines her flexibility so that she is prepared for any sexual position you can think of, and many more that she researched just for your pleasure. 
 					<</if>>
@@ -151,6 +151,13 @@
 					<</if>>
 				<</if>>
 			<</if>>
+			<<if $Concubine.pornPrestige > 2>>
+				<<set $repGain += 100>>
+				Having a porn star as your personal bed warmer @@.green;reflects on your standing.@@ Your citizens can only wonder at what kinky things happen behind closed doors.
+			<<elseif $Concubine.pornPrestige > 1>>
+				<<set $repGain += 25>>
+				Having a rising porn star as your personal bed warmer @@.green;reflects on your standing.@@
+			<</if>>
 			<<if ($Concubine.oralCount + $Concubine.analCount + $Concubine.vaginalCount + $Concubine.mammaryCount + $Concubine.penetrativeCount > 1000)>>
 				<<if $verboseDescriptions == 1>>Many citizens <<if $Concubine.publicCount > 10>>remember having had her themselves, and <</if>>@@.green;respectfully@@ envy you her exclusive company.<</if>>
 				<<set $repGain += 25>>
diff --git a/src/uncategorized/reFSAcquisition.tw b/src/uncategorized/reFSAcquisition.tw
index 4f4ad9fc1b0..5678a1e6ba1 100644
--- a/src/uncategorized/reFSAcquisition.tw
+++ b/src/uncategorized/reFSAcquisition.tw
@@ -1,7 +1,7 @@
-:: RE FS acquisition
+:: RE FS acquisition [nobr]
 
 <<if Array.isArray($FSAcquisitionEvents)>>
-  <<if $cheatMode == 1>><<nobr>>
+  <<if $cheatMode == 1>>
 	<<set $nextButton = "Back", $nextLink = "Nonrandom Event", $returnTo = "Nonrandom Event">> /* if user just clicks spacebar */
 	''A random FS acquisition event would have been selected from the following:''
 	<br>
@@ -10,15 +10,12 @@
 		<br>
 	<</for>>
 	<br><br>[[Go Back to Random Nonindividual Event|Random Nonindividual Event][$eventSlave = 0]]
-	<</nobr>>
   <<else>>
 	<<set $FSAcquisitionEvents = $FSAcquisitionEvents.random()>>
 	<<goto "RE FS acquisition">>
   <</if>>
 <<else>>
 
-<<nobr>>
-
 <<set $nextButton = "Continue", $nextLink = "RIE Eligibility Check", $returnTo = "RIE Eligibility Check", $showEncyclopedia = 1, $encyclopedia = "Enslaving People">>
 
 <<switch $FSAcquisitionEvents>>
@@ -233,6 +230,7 @@
 <<set $activeSlave.pregKnown = 1>>
 <<run SetBellySize($activeSlave)>>
 <<set $activeSlave.vagina = 1>>
+<<set $activeSlave.trueVirgin = 1>>
 <<slaveCost $activeSlave>>
 <<set $slaveCost -= 1000>>
 
@@ -688,6 +686,7 @@
 <</if>>
 <<if $activeSlave.vagina > 0>>
 	<<set $activeSlave.vagina = 0>>
+	<<set $activeSlave.trueVirgin = 1>>
 	<<set $activeSlave.career = "a nun">>
 <<else>>
 	<<set $activeSlave.career = "a priest">>
@@ -756,6 +755,7 @@
 <<set $activeSlave.attrXX = 30>>
 <<set $activeSlave.attrXY = 30>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.anus = 0>>
 <<slaveCost $activeSlave>>
 <<set $slaveCost -= 1000>>
@@ -778,6 +778,7 @@
 <<set $activeSlave.devotion = random(25,35)>>
 <<set $activeSlave.trust = random(20,25)>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.preg = 0>>
 <<set $activeSlave.pregType = 0>>
 <<set $activeSlave.fetish = "pregnancy">>
@@ -801,6 +802,7 @@
 <<set $activeSlave.devotion = random(25,35)>>
 <<set $activeSlave.trust = random(20,25)>>
 <<set $activeSlave.vagina = 2>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.preg = -2>>
 <<slaveCost $activeSlave>>
 <<set $slaveCost -= 1000>>
@@ -820,6 +822,7 @@
 <<set $activeSlave.devotion = random(-100,-90)>>
 <<set $activeSlave.trust = random(-100,-90)>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.preg = 0>>
 <<set $activeSlave.behavioralFlaw = "arrogant">>
 <<slaveCost $activeSlave>>
@@ -911,6 +914,7 @@
 <<set $activeSlave.face = random(-60,10)>>
 <<set $activeSlave.weight = random(20,100)>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.vaginalSkill = 0>>
 <<set $activeSlave.whoreSkill = 0>>
 <<set $activeSlave.entertainSkill = 0>>
@@ -972,444 +976,451 @@
 
 <</switch>>
 
-<</nobr>>\
-\
-<<switch $FSAcquisitionEvents>>\
-<<case "Pastoralist">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
-This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. This proves to be right on the money in this case, though the woman isn't too terribly bedraggled; her situation must be recent. She asks to be enslaved with the crushing sadness most such people experience during their last free hours. "I'm pregnant," she says through tears. "I know I'm not that pretty, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. But," and she brings her sizeable chest into view, "I've got pretty big boobs, and I started giving milk yesterday. I was searching the net, and I saw that you milk women, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. It seems like a better life than getting fucked all the time."
-\
-<<case "Pastoralist Two">>\
-\
+<<switch $FSAcquisitionEvents>>
+<<case "Pastoralist">>
+
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. This proves to be right on the money in this case, though the woman isn't too terribly bedraggled; her situation must be recent. She asks to be enslaved with the crushing sadness most such people experience during their last free hours. "I'm pregnant," she says through tears. "I know I'm not that pretty, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. But," and she brings her sizeable chest into view, "I've got pretty big boobs, and I started giving milk yesterday. I was searching the net, and I saw that you milk women, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. It seems like a better life than getting fucked all the time."
+
+<<case "Pastoralist Two">>
 
+You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
 This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. You are understandably surprised when this turns out to not be the case, the woman in the video call is modestly dressed; so her newfound situation must be exceedingly recent. Nonetheless, she asks to be enslaved with the same poignant sadness most people experience during their last free hours. "All my children are gone and my husband left me," she says through tears. "I know I'm older than most, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. But," and she brings her motherly chest into view, "I've still got pretty big breasts, and they still give milk. One of my friends told me that you milk women, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. I can't do anything else to make a living."
-\
-<<case "Supremacist">>\
-\
-Ever since you have been steering $arcologies[0].name towards a belief in $arcologies[0].FSSupremacistRace supremacy, you've been receiving increasingly useful communications from groups that share your ideals. Many rebel, mercenary, and paramilitary groups active in conflict zones have racial beliefs of one stripe or other, and by taking the $arcologies[0].FSSupremacistRace side, you've automatically inserted yourself into a worldwide network of like-minded organizations. You receive an urgent communication from one such private military company.
 
+<<case "Supremacist">>
+
+Ever since you have been steering $arcologies[0].name towards a belief in $arcologies[0].FSSupremacistRace supremacy, you've been receiving increasingly useful communications from groups that share your ideals. Many rebel, mercenary, and paramilitary groups active in conflict zones have racial beliefs of one stripe or other, and by taking the $arcologies[0].FSSupremacistRace side, you've automatically inserted yourself into a worldwide network of like-minded organizations. You receive an urgent communication from one such private military company.
+<br><br>
 It seems that they've run into a serious cash flow problem. They may not have liquid assets, but they do have human assets. What they lack is the slaveholding and selling infrastructure to translate the latter into the former. They're interested in fencing some merchandise to you, no questions asked, on a flat fee basis. Included in the message is a slave dossier detailing the piece of human chattel they're offering.
-\
-<<case "Supremacist Two">>\
-\
-Ever since you have been steering $arcologies[0].name towards a belief in $arcologies[0].FSSupremacistRace supremacy, you've been receiving increasingly useful communications from groups that share your ideals. With much of the Old World in freefall many groups with particularly vehement racial beliefs are expanding unchecked by the mores of big government, and by taking the $arcologies[0].FSSupremacistRace side, you've automatically inserted yourself into a worldwide network of like-minded organizations. You receive a communication from one such group.
 
+<<case "Supremacist Two">>
+
+Ever since you have been steering $arcologies[0].name towards a belief in $arcologies[0].FSSupremacistRace supremacy, you've been receiving increasingly useful communications from groups that share your ideals. With much of the Old World in freefall many groups with particularly vehement racial beliefs are expanding unchecked by the mores of big government, and by taking the $arcologies[0].FSSupremacistRace side, you've automatically inserted yourself into a worldwide network of like-minded organizations. You receive a communication from one such group.
+<br><br>
 It seems that in a man in their town made the mistake of marrying a woman of an undesirable racial background, and this group has stepped in to put an end to such a distasteful union. However, though they may be ruthless vigilantes, they don't consider themselves murderers. They're interested in fencing this former wife to you, no questions asked, on a flat fee basis. Included in the message is a slave dossier detailing the piece of human chattel they're offering.
-\
-<<case "Subjugationist">>\
-\
-Your security drones break up a minor disturbance on the lowest, poorest levels of the arcology without needing your direction, or indeed without even informing you. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> is good enough at filtering incidents down to what you need to know that you typically leave minor things to her discretion. This time $assistantName only informs you once it's apparent that that brawl left someone injured and unconscious.
 
+<<case "Subjugationist">>
+
+Your security drones break up a minor disturbance on the lowest, poorest levels of the arcology without needing your direction, or indeed without even informing you. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> is good enough at filtering incidents down to what you need to know that you typically leave minor things to her discretion. This time $assistantName only informs you once it's apparent that that brawl left someone injured and unconscious.
+<br><br>
 It seems the violence was racially motivated. The $arcologies[0].FSSubjugationistRace victim was publicly sodomized and left bruised and bleeding, her clothes torn off, beaten into insensibility, with anti-$arcologies[0].FSSubjugationistRace slogans written crudely across her $activeSlave.skin skin. It seems she came into the arcology despite the strong penalties for free $arcologies[0].FSSubjugationistRace subhumans found here. You can easily enslave her in return for her medical costs, though no one is likely to object to your enslaving one of her kind, whatever the situation.
-\
-<<case "Subjugationist Two">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
-The caller is $arcologies[0].FSSubjugationistRace, and a particularly self-hating one at that. It seems she came into the arcology despite the strong penalties for free $arcologies[0].FSSubjugationistRace subhumans found here in order to seek enslavement, a curious turn of events. You can easily enslave her, no one is likely to object to your enslaving one of her kind, especially when she came so willingly.
-\
-<<case "Gender Radicalist">>\
-\
+<<case "Subjugationist Two">>
+
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The caller is $arcologies[0].FSSubjugationistRace, and a particularly self-hating one at that. It seems she came into the arcology despite the strong penalties for free $arcologies[0].FSSubjugationistRace subhumans found here in order to seek enslavement, a curious turn of events. You can easily enslave her, no one is likely to object to your enslaving one of her kind, especially when she came so willingly.
+
+<<case "Gender Radicalist">>
 
-This one is from a rather abused individual from one of the more traditionalist areas of the old world. It seems she's heard of the new and interesting way gender is thought of in the Free Cities, and in $arcologies[0].name in particular. "Being your slave has to be better than being a subhuman here," she says. "Being your sex slave is more accepted in your city than being me is, here."
-\
-<<case "Gender Radicalist Two">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This one is from a rather abused individual from one of the more traditionalist areas of the old world. It seems she's heard of the new and interesting way gender is thought of in the Free Cities, and in $arcologies[0].name in particular. "Being your slave has to be better than being a subhuman here," she says. "Being your sex slave is more accepted in your city than being me is, here."
+
+<<case "Gender Radicalist Two">>
 
+You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
 This one is from a rather mature but otherwise visibly well-to-do individual from one of the more traditionalist areas of the old world. It seems she's heard of the new and interesting way gender is thought of in the Free Cities, and in $arcologies[0].name in particular. "I've lived my whole life as a subhuman here," she says. "Being your sex slave is more accepted in your city than being me is, here."
-\
-<<case "Gender Fundamentalist">>\
-\
-The sexual and moral revolution taking place in the Free Cites has spread back into the old world, producing an inevitable reaction. Thus there are still many places in the world where it is socially embarrassing for one's young female relatives to appear pregnant and unmarried, and where direct solutions to this unfortunate situation are frowned upon. You receive a communication from one such place, from a traditionalist family whose daughter has dishonored them in this way.
 
+<<case "Gender Fundamentalist">>
+
+The sexual and moral revolution taking place in the Free Cites has spread back into the old world, producing an inevitable reaction. Thus there are still many places in the world where it is socially embarrassing for one's young female relatives to appear pregnant and unmarried, and where direct solutions to this unfortunate situation are frowned upon. You receive a communication from one such place, from a traditionalist family whose daughter has dishonored them in this way.
+<br><br>
 Having her disappear discreetly into $arcologies[0].name would be a convenient and face-saving way of resolving the situation. Your society's respect for slave pregnancy gives them a plausible way to salve their own consciences where the baby is concerned. As for the girl, having her out of the way is what matters to them.
-\
-<<case "Gender Fundamentalist Two">>\
-\
-The sexual and moral revolution taking place in the Free Cites has spread back into the old world, producing an inevitable reaction. Thus there are still many places in the world where it is socially embarrassing for one's female relatives to be pregnant as a result of rape, and where direct solutions to this unfortunate situation are frowned upon. You receive a communication from one such place, from a traditionalist family whose mother was dishonored in this way.
 
+<<case "Gender Fundamentalist Two">>
+
+The sexual and moral revolution taking place in the Free Cites has spread back into the old world, producing an inevitable reaction. Thus there are still many places in the world where it is socially embarrassing for one's female relatives to be pregnant as a result of rape, and where direct solutions to this unfortunate situation are frowned upon. You receive a communication from one such place, from a traditionalist family whose mother was dishonored in this way.
+<br><br>
 Having her disappear discreetly into $arcologies[0].name would be a convenient and face-saving way of resolving the situation. Your society's respect for slave pregnancy gives them a plausible way to salve their own consciences where the baby is concerned. As for the mother, having her out of the way is what matters to them.
-\
-<<case "Paternalist">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
-This one is interesting, even by the standards of messages from people who want to become slaves. The individual is neither sick nor abused, and speaks with intelligence and directness. "I've heard a lot about how $arcologies[0].name treats slaves," she says. "And, well, I don't know how closely you watch the old world from where you are, but it's pretty bad. Being smart and driven out here doesn't always keep you fed and clothed, or even alive. I'm smart and driven, and I understand that might make me a madam or a DJ or even a head girl in $arcologies[0].name. I'm not dumb enough to rely on that, but I'll take that chance."
-\
-<<case "Paternalist Two">>\
-\
+<<case "Paternalist">>
+
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This one is interesting, even by the standards of messages from people who want to become slaves. The individual is neither sick nor abused, and speaks with intelligence and directness. "I've heard a lot about how $arcologies[0].name treats slaves," she says. "And, well, I don't know how closely you watch the old world from where you are, but it's pretty bad. Being smart and driven out here doesn't always keep you fed and clothed, or even alive. I'm smart and driven, and I understand that might make me a madam or a DJ or even a head girl in $arcologies[0].name. I'm not dumb enough to rely on that, but I'll take that chance."
+
+<<case "Paternalist Two">>
 
+You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
 This one is interesting, even by the standards of messages from people who want to become slaves. The individual is a normal looking woman, neither sick nor visibly abused. "I've heard a lot about how $arcologies[0].name treats slaves," she says. "And, well, I don't know how closely you watch the old world from where you are, but it's pretty bad. Saving your whole life doesn't always keep you fed and clothed, or even alive. I never had much and now I have even less, and I'd rather live as your slave in $arcologies[0].name than on the streets back home."
-\
-<<case "Degradationist">>\
-\
-<<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> does not typically permit anonymous messages through to you. If someone wishes to speak to you, they can do so under their own name and with their own face. She makes an exception, however, for a message offering you a slave so long as you pay the costs of enslavement, nothing else.
 
-The face and voice are obscured by a petty anonymization program, the sort that can be obtained with five minutes' work in the shadier parts of the net. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> could crack it nearly instantaneously, but you hold her back a moment to avoid spooking your correspondent. You are rewarded with video of the subject of the proposed enslavement, and the simple statement "I hate this fucking bitch, and I want her to suffer. Can't do it myself. You seem like the right <<if $PC.title == 1>>guy<<else>>woman<</if>> to break the cunt."
-\
-<<case "Degradationist Two">>\
-\
+<<case "Degradationist">>
+
 <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> does not typically permit anonymous messages through to you. If someone wishes to speak to you, they can do so under their own name and with their own face. She makes an exception, however, for a message offering you a slave so long as you pay the costs of enslavement, nothing else.
+<br><br>
+The face and voice are obscured by a petty anonymization program, the sort that can be obtained with five minutes' work in the shadier parts of the net. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> could crack it nearly instantaneously, but you hold her back a moment to avoid spooking your correspondent. You are rewarded with video of the subject of the proposed enslavement, and the simple statement "I hate this fucking bitch, and I want her to suffer. Can't do it myself. You seem like the right <<if $PC.title == 1>>guy<<else>>woman<</if>> to break the cunt."
+
+<<case "Degradationist Two">>
 
+<<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> does not typically permit anonymous messages through to you. If someone wishes to speak to you, they can do so under their own name and with their own face. She makes an exception, however, for a message offering you a slave so long as you pay the costs of enslavement, nothing else.
+<br><br>
 In lieu of a face, a plain page of mostly text and a scant few pictures fills the screen and details a number of potential slaves for sale, though most of the merchandise seems visibly too damaged to be worthy of purchase. Yet, one of the slaves catches your eye - an older woman covered in lashes, bruises and marks yet absent the dead-eyed expression of her peers. The document claims she has been in their possession longer than any of the other slaves, but has proven resistant to their breaking methods.
-\
-<<case "Body Purist">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
-This one is from another arcology, which is rather unusual. You are presented with a rather normal-looking, if obviously poor, free citizen. She says dejectedly, "I'm on my last few ¤ here, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. The owner here, he's planning to enslave me later today. I just know it. He fills his slaves up with silicone until they look like fucking barbie dolls." She shivers fearfully. "You don't do that, right? If I have to be a fucktoy, I don't want to be cut up first."
-\
-<<case "Body Purist Two">>\
-\
+<<case "Body Purist">>
+
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This one is from another arcology, which is rather unusual. You are presented with a rather normal-looking, if obviously poor, free citizen. She says dejectedly, "I'm on my last few ¤ here, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. The owner here, he's planning to enslave me later today. I just know it. He fills his slaves up with silicone until they look like fucking barbie dolls." She shivers fearfully. "You don't do that, right? If I have to be a fucktoy, I don't want to be cut up first."
+
+<<case "Body Purist Two">>
 
+You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
 This one is from one of the less prestigious slave schools, which is not in itself unusual, save that it comes directly from one of the graduating students. You are presented with a rather normal-looking slavegirl. "I'm past my majority," she says happily. "I know I'm not that pretty, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. But," and she pulls the camera back to reveal her fully nude body, "I've never had any plastic in me, the school couldn't afford it anyways. I was searching the net, and I saw that you like women without surgery, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. If I'm to be owned, I'd like it to be by someone like you who won't cut me open."
-\
-<<case "Transformation Fetishist">>\
-\
-You receive a message coded urgent from a surgeon who you've hired in the past. You are on the point of opening the a call with a friendly businesslike salutation when you see his haggard, worried face, and change your greeting to one of commiseration and understanding. He pours out his troubles to you in a rush.
 
+<<case "Transformation Fetishist">>
+
+You receive a message coded urgent from a surgeon who you've hired in the past. You are on the point of opening the a call with a friendly businesslike salutation when you see his haggard, worried face, and change your greeting to one of commiseration and understanding. He pours out his troubles to you in a rush.
+<br><br>
 It seems he botched an implant operation on a free woman. She's still out, and the implants are in successfully, but she's not too far from dead and will remain so for some time. He needs her out of sight, now. With your pull, you could easily manipulate the financial situation to enslave her and get her out of the doctor's area at the same time. It would be a favor to him, and by the medical records, a favor to you too, once you nurse her back to health. She's quite the implant queen.
-\
-<<case "Transformation Fetishist Two">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
-The call comes in from an unusually well-to-do area. It appears that an aristocratic-looking man placing the call has fallen on hard times, and is doing the intelligent thing and staying ahead of his creditors by offering his trophy wife into slavery. Enslaving her will be costlier than usual, but it seems likely to be worth it. She's finely aged and completed worked over under a surgeon's knife. She's quite the implant queen, in fact.
-\
-<<case "Slimness Enthusiast">>\
-\
+<<case "Transformation Fetishist Two">>
+
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The call comes in from an unusually well-to-do area. It appears that an aristocratic-looking man placing the call has fallen on hard times, and is doing the intelligent thing and staying ahead of his creditors by offering his trophy wife into slavery. Enslaving her will be costlier than usual, but it seems likely to be worth it. She's finely aged and completed worked over under a surgeon's knife. She's quite the implant queen, in fact.
+
+<<case "Slimness Enthusiast">>
 
-The call comes in from an unusually well-to-do area. It appears that the aristocratic-looking woman placing the call has fallen on hard times, and is doing the intelligent thing and staying ahead of her creditors by offering herself into slavery. Enslaving her will be costlier than usual, but it seems likely to be worth it. She's well-spoken and seems both educated and intelligent. Even better, despite being middle-aged, she's extremely well-preserved, a tall, slim and graceful beauty with a face that must be the envy of girls half her age. She knows all this herself, and says, "I hear you appreciate a slender woman; if I'm going down into slavery, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I'd be happy to avoid too many implants. I understand $arcologies[0].name is a fine place for someone in my situation."
-\
-<<case "Slimness Enthusiast Two">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The call comes in from an unusually well-to-do area. It appears that the aristocratic-looking woman placing the call has fallen on hard times, and is doing the intelligent thing and staying ahead of her creditors by offering herself into slavery. Enslaving her will be costlier than usual, but it seems likely to be worth it. She's well-spoken and seems both educated and intelligent. Even better, despite being middle-aged, she's extremely well-preserved, a tall, slim and graceful beauty with a face that must be the envy of girls half her age. She knows all this herself, and says, "I hear you appreciate a slender woman; if I'm going down into slavery, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I'd be happy to avoid too many implants. I understand $arcologies[0].name is a fine place for someone in my situation."
+
+<<case "Slimness Enthusiast Two">>
 
-This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. You are understandably surprised when this turns out to not be the case, the young woman in the video call is reasonably well dressed; so her newfound situation must be exceedingly recent. Without hesitation she immediately asks to be enslaved. "My boyfriend wants to turn me into some sort of bimbo," she says through tears. "I found all the surgery brochures that he hid, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. But," and she brings her slender chest, though covered by her top, into view, "I don't want to be cut up and filled with plastic. One of my friends told me that you care about woman with a good figure, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. I should have never sold myself to that bastard."
-\
-<<case "Asset Expansionist">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. You are understandably surprised when this turns out to not be the case, the young woman in the video call is reasonably well dressed; so her newfound situation must be exceedingly recent. Without hesitation she immediately asks to be enslaved. "My boyfriend wants to turn me into some sort of bimbo," she says through tears. "I found all the surgery brochures that he hid, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. But," and she brings her slender chest, though covered by her top, into view, "I don't want to be cut up and filled with plastic. One of my friends told me that you care about woman with a good figure, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>. I should have never sold myself to that bastard."
+
+<<case "Asset Expansionist">>
 
-The person placing the call is physically quite unusual, to the point of looking distinctly unnatural. She has absolutely enormous tits, an ass to match, and is generally plush all over; yet despite being able to compete with the lushest mother in the curves department, she appears to be very young. She explains herself quickly. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I just turned 19. Where I'm from, that means I'm very likely to be enslaved one way or another. So, I've been taking off-market hormones for a couple of years to raise myself out of the gutter as far as who might take me. I hear life is better if you're a valuable slave." She leans into the camera, displaying a solid acre of cleavage. "Can I be your valuable slave?"
-\
-<<case "Asset Expansionist Two">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The person placing the call is physically quite unusual, to the point of looking distinctly unnatural. She has absolutely enormous tits, an ass to match, and is generally plush all over; yet despite being able to compete with the lushest mother in the curves department, she appears to be very young. She explains herself quickly. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I just turned 19. Where I'm from, that means I'm very likely to be enslaved one way or another. So, I've been taking off-market hormones for a couple of years to raise myself out of the gutter as far as who might take me. I hear life is better if you're a valuable slave." She leans into the camera, displaying a solid acre of cleavage. "Can I be your valuable slave?"
+
+<<case "Asset Expansionist Two">>
 
-The person placing the call is physically quite unusual, to the point of looking distinctly unnatural. She has absolutely enormous tits, an ass to match, and is generally plush all over; perhaps one of the lushest mothers in the curves department you've ever seen. She explains herself quickly. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I'm not a young woman. Where I'm from, being this old and unmarried means I'm very likely to be enslaved one way or another. But I've always had big breasts. Well, big everything really. I hear life is better if you're a plush slave." She leans into the camera, displaying a solid acre of cleavage. "Can I be your plush slave?"
-\
-<<case "Youth Preferentialist">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The person placing the call is physically quite unusual, to the point of looking distinctly unnatural. She has absolutely enormous tits, an ass to match, and is generally plush all over; perhaps one of the lushest mothers in the curves department you've ever seen. She explains herself quickly. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I'm not a young woman. Where I'm from, being this old and unmarried means I'm very likely to be enslaved one way or another. But I've always had big breasts. Well, big everything really. I hear life is better if you're a plush slave." She leans into the camera, displaying a solid acre of cleavage. "Can I be your plush slave?"
+
+<<case "Youth Preferentialist">>
 
-This one, unusually, is voice-only. The caller explains why in a painfully quiet voice: she's turning $activeSlave.actualAge in the next few days, and she's fairly certain her family is about to sell her into slavery. The mixed notes of despair, apathy, and fear in her voice are heartrending, even to you. She begs you to make the necessary arrangements to enslave her. She's heard about you and how you like young girls, and she's also heard about brothels and arcades. There is very little hope discernible in her tone or the pictures she sends you,
-\
-<<case "Youth Preferentialist Two">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This one, unusually, is voice-only. The caller explains why in a painfully quiet voice: she's turning $activeSlave.actualAge in the next few days, and she's fairly certain her family is about to sell her into slavery. The mixed notes of despair, apathy, and fear in her voice are heartrending, even to you. She begs you to make the necessary arrangements to enslave her. She's heard about you and how you like young girls, and she's also heard about brothels and arcades. There is very little hope discernible in her tone or the pictures she sends you,
+
+<<case "Youth Preferentialist Two">>
 
-This one, unusually, is voice-only. The caller explains why in a unusually upbeat voice: she turned 18 a few days ago, and she's fairly certain her family is expecting her to make something of her life to help support them. The apathy to her family's wishes is readily evident in her tone of voice. She begs you to make the necessary arrangements to enslave her. She's heard about you and how you like younger girls, and that you take care of all the decision-making for your slaves. There's a lot of hope in her tone, she clearly wants an escape from responsibility - even if that means becoming a slave.
-\
-<<case "Maturity Preferentialist">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This one, unusually, is voice-only. The caller explains why in a unusually upbeat voice: she turned 18 a few days ago, and she's fairly certain her family is expecting her to make something of her life to help support them. The apathy to her family's wishes is readily evident in her tone of voice. She begs you to make the necessary arrangements to enslave her. She's heard about you and how you like younger girls, and that you take care of all the decision-making for your slaves. There's a lot of hope in her tone, she clearly wants an escape from responsibility - even if that means becoming a slave.
+
+<<case "Maturity Preferentialist">>
 
-And this one is a rare one indeed. It's a personal file, and you suppress the urge to see whether $assistantName is bugged and has misfiled an application for employment. The beautiful older woman depicted has included a resume listing her skills, and a clever selection of photographs: tasteful shots of her in nice makeup and a fashionable business skirt, and fully nude mirror shots, flaws and all. Curious, you place a video call and get an immediate answer. It seems that 'personal circumstances' that she saw coming are forcing her to accept enslavement. She had some weeks of warning, however, and seems to have made use of the time to find an arcology owner that treats women of her age well, and then to make herself as appealing as possible in the hope you'll keep her.
-\
-<<case "Maturity Preferentialist Two">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+And this one is a rare one indeed. It's a personal file, and you suppress the urge to see whether $assistantName is bugged and has misfiled an application for employment. The beautiful older woman depicted has included a resume listing her skills, and a clever selection of photographs: tasteful shots of her in nice makeup and a fashionable business skirt, and fully nude mirror shots, flaws and all. Curious, you place a video call and get an immediate answer. It seems that 'personal circumstances' that she saw coming are forcing her to accept enslavement. She had some weeks of warning, however, and seems to have made use of the time to find an arcology owner that treats women of her age well, and then to make herself as appealing as possible in the hope you'll keep her.
+
+<<case "Maturity Preferentialist Two">>
 
-The call comes in from a middle-class area. It appears that the youthful man placing the call has a failing business, and is leveraging his last remaining asset by selling his stately-looking mother into slavery. Enslaving her will be costlier than usual, but it seems likely to be worth it. From the dossier her son forwarded to you, she's both educated and intelligent, both relics of her impressive pedigree. Even better, she's aged like a fine wine, a short, stacked and attractive beauty with a face and rack that must be the envy of girls half her age. She's aware of the situation at hand, and peeks in from the corner of the screen to say, "I hear you appreciate a mature woman; if I'm going down into slavery, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I hope for your sake that you know how to treat a woman of my caliber."
-\
-<<case "Physical Idealist">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The call comes in from a middle-class area. It appears that the youthful man placing the call has a failing business, and is leveraging his last remaining asset by selling his stately-looking mother into slavery. Enslaving her will be costlier than usual, but it seems likely to be worth it. From the dossier her son forwarded to you, she's both educated and intelligent, both relics of her impressive pedigree. Even better, she's aged like a fine wine, a short, stacked and attractive beauty with a face and rack that must be the envy of girls half her age. She's aware of the situation at hand, and peeks in from the corner of the screen to say, "I hear you appreciate a mature woman; if I'm going down into slavery, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, I hope for your sake that you know how to treat a woman of my caliber."
+
+<<case "Physical Idealist">>
 
-The subject line of the latest is badly misspelled, but the accompanying profile image is impressive, if trite, depicting the sender's massive bicep flexing, veins playing across the striated muscle. Getting her situation out of her proves to be something of a chore, since she scarcely has two functional neurons to rub together. It seems that she's on a fair number of drugs, not limited to aphrodisiacs and steroids, that she can't afford them, and that she has a distorted image of $arcologies[0].name as a sort of muscle-worshipping Valhalla of sex and gains. Hearing her describe her idea of life as one of your slaves, you understand why this idiot wants to be enslaved. If her idea of slave life were accurate, //you'd// want to be enslaved.
-\
-<<case "Physical Idealist Two">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The subject line of the latest is badly misspelled, but the accompanying profile image is impressive, if trite, depicting the sender's massive bicep flexing, veins playing across the striated muscle. Getting her situation out of her proves to be something of a chore, since she scarcely has two functional neurons to rub together. It seems that she's on a fair number of drugs, not limited to aphrodisiacs and steroids, that she can't afford them, and that she has a distorted image of $arcologies[0].name as a sort of muscle-worshipping Valhalla of sex and gains. Hearing her describe her idea of life as one of your slaves, you understand why this idiot wants to be enslaved. If her idea of slave life were accurate, //you'd// want to be enslaved.
 
+<<case "Physical Idealist Two">>
+
+You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
 And this one is a rare one indeed. It's a personal file, and you suppress the urge to see whether $assistantName is bugged and has misfiled an application for employment. The muscular woman depicted has included a resume listing her various physical achievements, and a clever selection of photographs: tantalizing shots of her in skimpy workout clothes, and fully nude mirror shots of her flexing and posing. Curious, you place a video call and get an immediate answer. It seems that she's determined that life as a slave is the easiest means to access the drugs and steroids she needs to continue making massive gains. She had some weeks of planning, however, and seems to have made use of the time to find an arcology owner that values the pursuit of the physical ideal, and then to make herself as appealing as possible in the hope you'll take her.
-\
-<<case "Hedonistic Decadence">>\
-\
+
+<<case "Hedonistic Decadence">>
+
 <<run Enunciate($activeSlave)>>
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
-
+<br><br>
 This one is coming from inside your own arcology, from a tourist interested in permanent residence even if it means enslavement. You have them bought to your office to hear them out. A heavily pregnant girl waddles into your office, her distended belly a stark contrast to her relative thinness. She smiles, her many piercings clicking against each other in the process, and pats her middle. "It'<<s>> food, not a baby. I really enjoyed <<s>>taying in your arcology, I mean, I live like thi<<s>> back home, but everyone alway<<s>> pick<<s>> on me for eating <<s>>o much and never getting off my a<<ss>> to work. I can't find a lover either, no one can <<s>>ati<<s>>fy me anymore..." She exposes her gaping asshole to you. "I overdid it with the toy<<s>>. It felt <<s>>o good, I couldn't <<s>>top going bigger. Once I realized that, I <<s>>tarted getting piercing<<s>> and eating, anything to make me feel better. But on<<c>>e I arrived here, I never felt <<s>>o a<<c>>epted before, everyone wa<<s>> enjoying them<<s>>elve<<s>> however they wanted. <<S>>o plea<<s>>e, let me <<s>>tay, I'll do everything you can think of."
-\
-<<case "Hedonistic Decadence Two">>\
-\
+
+<<case "Hedonistic Decadence Two">>
+
 <<run Enunciate($activeSlave)>>
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
-
+<br><br>
 This one is interesting, even by the standards of messages from people who want to become slaves. The individual is neither sick nor abused, and speaks with directness. "I'm what you'd call 'vanilla'," she sighs. "And, well, I want to expand my horizons and I heard how much fun people have in your arcology. I'm yours to experiment with.
-\
-<<case "Repopulation Efforts">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that your personal assistant has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, are requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.  This one is interesting, even by the standards of messages from people who want to become slaves. The individual is neither sick nor abused, and speaks with directness. "I've heard a lot about how your arcology wishes to preserve humanity's place in the future," she says. "And, well, I don't know how closely you watch the old world from where you are, but things are falling apart.  Humanity's future surely rests in the arcologies, and you seem to be the only one who's focusing on that future...  As such, I want to become a mother to the future of humanity!  Please, take me in and knock me up!  I'll carry as many children as my body can take!"
-\
-<<case "Repopulation Efforts Two">>\
-\
+
+<<case "Repopulation Efforts">>
+
 You receive so many messages, as a noted titan of the new Free Cities world, that your personal assistant has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, are requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This one is interesting, even by the standards of messages from people who want to become slaves. The individual is neither sick nor abused, and speaks with directness. "I've heard a lot about how your arcology wishes to preserve humanity's place in the future," she says. "And, well, I don't know how closely you watch the old world from where you are, but things are falling apart. Humanity's future surely rests in the arcologies, and you seem to be the only one who's focusing on that future... As such, I want to become a mother to the future of humanity! Please, take me in and knock me up! I'll carry as many children as my body can take!"
+
+<<case "Repopulation Efforts Two">>
 
-This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. You are understandably surprised when this turns out to not be the case, the young woman in the video call is reasonably well dressed, if rather upset over something. "I.. can't have children," she says through building tears. "I've always dreamed of being a mother, but I was born sterile... I heard rumors that $arcologies[0].name had cures for infertility, and if you'd help me, I would love to <<if $PC.title == 1>>have your children<<else>>get pregnant for you<</if>>. Even if the rest of my life was devoted to motherhood... I'd like that..."
-\
-<<case "Eugenics">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that your personal assistant has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through are potential applicants for the Societal Elite. As the new world takes shape, they've become more rare than they once were.  This one is most mundane, a student with top grades wanting to be part of the top of society. Upon arriving for her evaluation, she begins droning on about her unimpressive achievements and pointless accomplishments. You review information on her lineage and connections, while feigning interest in her prattling. It would seem she is worth far less than she thinks she is.
-\
-<<case "Eugenics Two">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that your personal assistant has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, are requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. You are understandably surprised when this turns out to not be the case, the young woman in the video call is reasonably well dressed, if rather upset over something. "I.. can't have children," she says through building tears. "I've always dreamed of being a mother, but I was born sterile... I heard rumors that $arcologies[0].name had cures for infertility, and if you'd help me, I would love to <<if $PC.title == 1>>have your children<<else>>get pregnant for you<</if>>. Even if the rest of my life was devoted to motherhood... I'd like that..."
+
+<<case "Eugenics">>
+
+You receive so many messages, as a noted titan of the new Free Cities world, that your personal assistant has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through are potential applicants for the Societal Elite. As the new world takes shape, they've become more rare than they once were.
+<br><br>
+This one is most mundane, a student with top grades wanting to be part of the top of society. Upon arriving for her evaluation, she begins droning on about her unimpressive achievements and pointless accomplishments. You review information on her lineage and connections, while feigning interest in her prattling. It would seem she is worth far less than she thinks she is.
 
+<<case "Eugenics Two">>
+
+You receive so many messages, as a noted titan of the new Free Cities world, that your personal assistant has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, are requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
 This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. A rather homely face greets you, much to your displeasure. "I know I'm not much to look at, so I don't even want you to consider me more than just a slave. With the way things are going, I figured just getting it over with is the way to go."
-\
-<<case "Chattel Religionist">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
+<<case "Chattel Religionist">>
+
+You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
 This one is a little odd; it merely begs you for an in person audience and offers you the sender's "unworthy body" as payment for granting it. You surreptitiously scan her when she arrives to make sure this isn't an attack of some kind, but she's just a normal girl wearing conservative clothing. When admitted to your office, she immediately strips off her clothing, gets down before your desk, and presses her forehead to the floor. "<<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>," she says, "please accept me as your slave. I am a wretched whore, filled with sin, and freedom is a burden to me. Please free me from this torment and take me into your service."
-\
-<<case "Chattel Religionist Two">>\
-\
-Ever since you have been steering $arcologies[0].name towards a belief in chattel religionism, you've been receiving increasingly useful communications from groups that share your ideals. With much of the Old World in freefall, many groups with particularly vehement religious beliefs are expanding unchecked by the mores of big government, and by taking the chattel religionist side, you've automatically inserted yourself into a worldwide network of like-minded organizations. You receive a message from one such group.
 
+<<case "Chattel Religionist Two">>
+
+Ever since you have been steering $arcologies[0].name towards a belief in chattel religionism, you've been receiving increasingly useful communications from groups that share your ideals. With much of the Old World in freefall, many groups with particularly vehement religious beliefs are expanding unchecked by the mores of big government, and by taking the chattel religionist side, you've automatically inserted yourself into a worldwide network of like-minded organizations. You receive a message from one such group.
+<br><br>
 It seems that the Chattel Religionists have all but taken over their town and driven out or converted the local worshippers of old world religions, save for a single religious building and its clergy who continue in defiance. This group has stepped in to put an end to this impiety. However, though they may be ruthless vigilantes, they don't consider themselves murderers. They're interested in fencing a member clergy to you, no questions asked, on a flat fee basis. Included in the message is a slave dossier detailing the piece of human chattel they're offering: <<if $activeSlave.genes == "XX">>a lovely virgin nun<<else>>a rather stuck up priest<</if>>.
-\
-<<case "Roman Revivalist">>\
-\
-You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
-The call comes in from an old world university. The caller is a young woman who explains that she's struggling with extreme student debt, and has recently graduated with a history degree that she can't seem to turn into gainful employment. She gushes at length about how much she enjoyed ancient history, and how she's heard all about your ideas about reviving ancient culture in the Free Cities. She sees joining your household as a romantic way out of her difficult situation. Apparently she read all the idyllic parts of history and somehow missed out on learning about the salt mines and slave galleys. She's not terribly pretty and seems socially awkward, but that's likely to have its side benefits. She nervously sends you a complete dossier on herself.
-\
-<<case "Aztec Revivalist">>\
-\
+<<case "Roman Revivalist">>
+
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The call comes in from an old world university. The caller is a young woman who explains that she's struggling with extreme student debt, and has recently graduated with a history degree that she can't seem to turn into gainful employment. She gushes at length about how much she enjoyed ancient history, and how she's heard all about your ideas about reviving ancient culture in the Free Cities. She sees joining your household as a romantic way out of her difficult situation. Apparently she read all the idyllic parts of history and somehow missed out on learning about the salt mines and slave galleys. She's not terribly pretty and seems socially awkward, but that's likely to have its side benefits. She nervously sends you a complete dossier on herself.
+
+<<case "Aztec Revivalist">>
 
-The call comes in from an old world trading colony. The caller is a woman who humbly explains how tired she's from all the godless people and terrible conditions, and expresses interest to join the old empires. She probably knows only of the incredible architecture and the military accomplishments that are advertised in vids. Though the sacrifice and collaring of slaves is no secret, most people never find out the real truth to what you do. Nevertheless she's incredibly willing, so much so that she almost signs herself off to you by accident. Her file is displayed in front if you, pending your reaction.
-\
-<<case "Edo Revivalist">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The call comes in from an old world trading colony. The caller is a woman who humbly explains how tired she's from all the godless people and terrible conditions, and expresses interest to join the old empires. She probably knows only of the incredible architecture and the military accomplishments that are advertised in vids. Though the sacrifice and collaring of slaves is no secret, most people never find out the real truth to what you do. Nevertheless she's incredibly willing, so much so that she almost signs herself off to you by accident. Her file is displayed in front if you, pending your reaction.
+
+<<case "Edo Revivalist">>
 
-The caller is a young woman who struggles to stop herself from peppering her socially awkward babble with poorly pronounced Japanese colloquialisms. Insofar as you can parse her nonsense, she seems to have gotten a hilariously romanticized version of feudal Japan from somewhere, and is willing to submit to enslavement in order to join your revivalist arcology. Whoever's out there spreading this rubbish, you owe them one; this serf is in for an extremely rude awakening.
-\
-<<case "Arabian Revivalist">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The caller is a young woman who struggles to stop herself from peppering her socially awkward babble with poorly pronounced Japanese colloquialisms. Insofar as you can parse her nonsense, she seems to have gotten a hilariously romanticized version of feudal Japan from somewhere, and is willing to submit to enslavement in order to join your revivalist arcology. Whoever's out there spreading this rubbish, you owe them one; this serf is in for an extremely rude awakening.
+
+<<case "Arabian Revivalist">>
 
-The call comes in from an old world university. The caller, surprisingly, is a beautiful woman in her thirties who speaks with a richly lilting accent and a literary vocabulary. "I'm afraid," she says sadly, "it's come to slavery, for me. I am no longer a girl, but I can make some claim to beauty. I know many stories and can tell them cleverly; I can sing and dance well. I know you are not looking for a Scheherazade, but I could play her part. Nor am I naive; I know the Sultan enjoyed her body as well as her wit, and I am not unskilled in those respects, either." She looks you straight in the eye. "May I come into your harem? I will do my best to brighten it."
-\
-<<case "Chinese Revivalist">>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
+The call comes in from an old world university. The caller, surprisingly, is a beautiful woman in her thirties who speaks with a richly lilting accent and a literary vocabulary. "I'm afraid," she says sadly, "it's come to slavery, for me. I am no longer a girl, but I can make some claim to beauty. I know many stories and can tell them cleverly; I can sing and dance well. I know you are not looking for a Scheherazade, but I could play her part. Nor am I naive; I know the Sultan enjoyed her body as well as her wit, and I am not unskilled in those respects, either." She looks you straight in the eye. "May I come into your harem? I will do my best to brighten it."
+
+<<case "Chinese Revivalist">>
 
+You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
+<br><br>
 The call comes in from an office, and you suppress the urge to check whether $assistantName has misidentified a business communication. The caller is a middle-aged woman, not unattractive, whose face is lined with stress and worry. She draws herself up and says, "I would like to apply to be your slave." There is a flash of bitter amusement at the absurd statement,  but she continues, "Business circumstances make it inevitable. I have considerable skills and experience, and it is my understanding that you value such things." She forwards her qualifications: they are comprehensive and open, including her sexual skills as if they were merely another business asset. Which, in a way, they are.
-\
-<</switch>>\
 
-<<include "Long Slave Description">>\
+<</switch>>
+
+<br><br>
+
+<<include "Long Slave Description">>
+
+<br><br>
 
 <span id="result">
-<<if $cash >= $contractCost>>\
+<<if $cash >= $contractCost>>
 <<link "Enslave her">>
 	<<set $cash -= $contractCost>>
 	<<replace "#result">>
-	<<switch $FSAcquisitionEvents>>\
-	<<case "Pastoralist">>\
+	<<switch $FSAcquisitionEvents>>
+	<<case "Pastoralist">>
 	She drags herself in, but as the enslavement process winds grindingly on, she shakes off her depression. The vast weight of her situation lifts from her. You've seen this before, the perverse internal freedom that comes with the knowledge that her life is in the hands of another now, and that all she has to do or can do is obey. Her last words to you as a free woman are an ironic statement that, when she was teased back in school for the size of her boobs, she never thought they'd save her one day.
-	<<case "Pastoralist Two">>\
+	<<case "Pastoralist Two">>
 	She speaks to you as a free woman while working through the enslavement process, perhaps she hasn't quite grasped her new role. Nonetheless, it seems as if a vast weight has been lifted from her shoulders. You've seen this before, the perverse internal freedom that comes with the knowledge that her life is in the hands of another now, and that all she has to do or can do is obey. Her last words to you as a free woman are an ironic statement that, people always praised her milk filled udders as givers of life, yet she never thought they'd save hers one day.
-	<<case "Supremacist">>\
+	<<case "Supremacist">>
 	A battered VTOL craft arrives at $arcologies[0].name, broadcasting obviously bogus IFF codes. It seems this mercenary group is playing fast and loose in an attempt to get back on their feet. The aircraft doesn't even touch down on the pad they're directed to: it simply hovers six feet off the pad for the five seconds it takes to shove a canvas bag that obviously contains a struggling human form out of the side door.
-	<<case "Supremacist Two">>\
+	<<case "Supremacist Two">>
 	A clearly improvised VTOL craft arrives at $arcologies[0].name, broadcasting an erratic array of IFF codes. It seems this group hasn't quite mastered the intricacies of air travel. The aircraft doesn't seem capable of the delicate feat of landing on the pad it had been directed to: it simply hovers six feet off the pad for the five seconds it takes to shove a canvas bag that obviously contains a struggling human form out of the side door.
-	<<case "Subjugationist">>\
+	<<case "Subjugationist">>
 	The enslavement process is disappointingly quiet, since she's still unconscious. As of this morning she was one of the last free $arcologies[0].FSSubjugationistRace people in the arcology. Now she's simply the newest sex slave of the inferior race to take her proper place.
-	<<case "Subjugationist Two">>\
+	<<case "Subjugationist Two">>
 	The enslavement process is disappointingly quiet, since she does little more than stare blankly ahead and respond to any orders. As of this morning she was one of the last free $arcologies[0].FSSubjugationistRace people in the arcology. Now she's simply the newest, and perhaps most willing, sex slave of the inferior race to take her proper place.
-	<<case "Repopulation Efforts">>\
+	<<case "Repopulation Efforts">>
 	When she arrives, she comes directly to your to your penthouse for enslavement. She wears an excited expression, having seen so many pregnant women on the way there, she can barely contain her enthusiasm.  She eagerly strips for inspection revealing her moist pussy, it seems she may be more into pregnancy then she let on.
-	<<case "Repopulation Efforts Two">>\
+	<<case "Repopulation Efforts Two">>
 	When she arrives, she is the very picture of a someone who has seen the light at the end of a very dark tunnel. She can't wait to get started making babies for you.
-	<<case "Eugenics">>\
+	<<case "Eugenics">>
 	You interrupt her rambling and bluntly inform her that she is useless to society. She steps back, insulted, and attempts a rebuttal. You cut her off again and tell her shes much more useful as your personal toy. She takes another step back and is promptly restrained before being dragged off to the autosurgeon.
 	<<set $activeSlave.preg = -2>>
 	<<set $activeSlave.ovaries = 0>>
 	<<set $activeSlave.balls = 0>>
-	<<case "Eugenics Two">>\
+	<<case "Eugenics Two">>
 	When she arrives, she comes directly to your to your penthouse for enslavement. Her face may painful to look at, but her body is not all bad; with a little work, she can be quite the catch. When she hears the news, her spirits are visibly lifted; she never thought she'd be so lucky.
-	<<case "Hedonistic Decadence">>\
+	<<case "Hedonistic Decadence">>
 	She becomes elated when she hears she'll be allowed to stay. Even if she doesn't get to fulfill all her desires, her new life is more welcome than her rapidly ending prior one. She revealed as she is escorted to the slave quarters that she blew the last of her money on her visit here.
-	<<case "Hedonistic Decadence Two">>\
+	<<case "Hedonistic Decadence Two">>
 	When she arrives, she comes directly to your penthouse for enslavement. She wears an expression of doubt, fear, and wonder as she takes in the sights and sounds of the magnificent beast that is the new society taking shape in $arcologies[0].name. The enslavement process requires her to be nude, of course, and it reveals she has no idea how to be sexy. She really is as boring as she said she was.
-	<<case "Gender Radicalist">>\
+	<<case "Gender Radicalist">>
 	When she arrives, she comes directly to your penthouse for enslavement. She wears an expression of doubt, fear, and wonder as she takes in the sights and sounds of the magnificent beast that is the new society taking shape in $arcologies[0].name. The enslavement process requires her to be nude, of course, so she doesn't need to strip to offer herself to you when it's over. She doesn't even have to be prompted: she just gets down on the floor in front of your desk and offers you her fuckhole.
-	<<case "Gender Radicalist Two">>\
+	<<case "Gender Radicalist Two">>
 	When she arrives, she comes directly to your penthouse for enslavement. She wears an expression of doubt, fear, and wonder as she takes in the sights and sounds of the magnificent beast that is the new society taking shape in $arcologies[0].name. The enslavement process requires her to be nude, of course, so she doesn't need to strip to offer herself to you when it's over. She doesn't even have to be prompted: she just gets down on the floor in front of your desk and offers you her fuckhole.
-	<<case "Gender Fundamentalist">>\
+	<<case "Gender Fundamentalist">>
 	When she arrives, she is the very picture of a lost and very pregnant young waif. She clearly feels some hope at leaving her traditionalist home for a more modern society, but she has just as clearly heard enough about the Free Cities to know that she's likely to buy her presence here through long years of sexual labor. She sighs with relief at getting off her feet when the enslavement process finally allows her to sit.
-	<<case "Gender Fundamentalist Two">>\
+	<<case "Gender Fundamentalist Two">>
 	When she arrives, she is the very picture of a distraught and very pregnant mature woman. She clearly feels some resentment at her traditionalist home and family for selling her into slavery, but she has just as clearly heard enough about the Free Cities to know that she's likely traded one form of marginalization for another.
-	<<case "Paternalist">>\
+	<<case "Paternalist">>
 	She speaks to you as a free woman throughout the enslavement process, but as soon as it is completed, she stops and waits for instruction before talking. She does not look directly at your face, but keeps her gaze lower than that, and stands expectant and ready for commands. You are reminded of her intelligence by her precisely correct behavior for a new slave, even before you give any kind of direction.
-	<<case "Paternalist Two">>\
+	<<case "Paternalist Two">>
 	She speaks to you as a free woman throughout the enslavement process, but as soon as it is completed, she stops and waits for instruction before talking. She may not have had many prospects in her life back home, but if she remains this obedient she'll fit right in here in the Free Cities.
-	<<case "Degradationist">>\
+	<<case "Degradationist">>
 	When she arrives as part of the anonymous slave transfers that make up a good part of the inter-arcology commerce, she has clearly had some time to mull over her situation. As soon as she sees you, she blurts out, "Whatever that fucker told you, it isn't true. I'll be your little bitch bimbo, whatever you want. Just don't - just don't fucking hurt me." She sticks out her chest in a clear attempt to entice you with her fake tits.
-	<<case "Degradationist Two">>\
+	<<case "Degradationist Two">>
 	When she arrives as part of the anonymous slave transfers that make up a good part of the inter-arcology commerce, she has clearly had some time to mull over her situation. As soon as she sees you, she glares deep into your eyes and addresses you directly, "Those fuckers threw everything they could at me, you can't break me. No one can."
-	<<case "Body Purist">>\
+	<<case "Body Purist">>
 	When she arrives, it's obvious that she isn't particularly happy with the situation, but there is some evident relief to her. When asked about it, she says, "I really hate the idea of surgery, especially implant surgery, M-<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>. Just - the idea of having fake shit in here -" she rubs her chest a little "- ugh." She laughs bitterly at herself, and then rubs her chest again, looking at you with mixed fear and invitation.
-	<<case "Body Purist Two">>\
+	<<case "Body Purist Two">>
 	When she arrives, it's obvious that she's fairly happy. After all, the slave school trained her for this. When asked about it, she says, "Some of the girls who graduated before me were given implants, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>. Just - the idea of having fake shit in here -" she rubs her chest a little "- ugh. I'm glad you're not into that" She laughs bitterly at herself, and then rubs her chest again, looking at you with mixed fear and invitation.
-	<<case "Transformation Fetishist">>\
+	<<case "Transformation Fetishist">>
 	She arrives with various medical devices still attached to her, wrapped up in supportive hospital clothing. Despite this, it's obvious that you've made a good decision. The new tits that got her into this situation are so cartoonish that some of the medical tubing has been hastily routed between them. After a few weeks on curatives and a few more in training, she'll be ready to bounce those fake boobs up and down as she takes dick.
-	<<case "Transformation Fetishist Two">>\
+	<<case "Transformation Fetishist Two">>
 	She arrives unapologetically in her fine clothing. "I'm not sorry," she says harshly, "but I'm wearing my best one last time whether you like it or not." Eventually she sighs, squares her shoulders, and visibly steels herself. "I'll say as a free woman, since it's my last chance to say anything as a free woman, you're good-looking, for an evil slaveholding oligarch." She delivers this last with a little smile on her plush lips and a sense of bitter irony in her voice. "If we'd met at a nice party last week I might have made a pass at you. You'd be a better choice than my ex-husband at least."
-	<<case "Slimness Enthusiast">>\
+	<<case "Slimness Enthusiast">>
 	She arrives apologizing for her fine clothing. "I'm sorry," she apologizes sadly, "but I wanted to wear my best one last time." She sighs, squares her shoulders, and visibly steels herself. "I'll say as a free woman, since it's my last chance to say anything as a free woman, you're good-looking, for an evil slaveholding oligarch." She delivers this last with a little smile on her lips and rich turn of humor in her voice. "If we'd met at a nice party last week I might have made a pass at you. I suppose that's beside the point now."
-	<<case "Slimness Enthusiast Two">>\
+	<<case "Slimness Enthusiast Two">>
 	When she arrives, she is the very picture of a young waif out of her depth. It's clear she feels relief and escaping going under the knife, but she knows enough about the Free Cities to know that she's likely to buy her presence here through long years of sexual labor.
-	<<case "Asset Expansionist">>\
+	<<case "Asset Expansionist">>
 	When she arrives, it's clear she's nobody's fool. She comes without personal effects of any kind, and is wearing cheap, sturdy clothes to travel in, since she knows she'll be taking them off immediately. She does, without being told, just as soon as the enslavement formalities are out of the way. Her breasts are capped by titanic, puffy nipples; she notices you appreciating them and gives you a hesitant little smile, swaying her shoulders back and forth a little to set her flesh deliciously into motion.
-	<<case "Asset Expansionist Two">>\
+	<<case "Asset Expansionist Two">>
 	When she arrives, it's clear she's nobody's fool. She comes without personal effects of any kind, and is wearing cheap, sturdy clothes to travel in, since she knows she'll be taking them off immediately. She does, without being told, just as soon as the enslavement formalities are out of the way. Her breasts are capped by titanic, puffy nipples; she notices you appreciating them and gives you a hesitant little smile, swaying her shoulders back and forth a little to set her flesh deliciously into motion.
-	<<case "Physical Idealist">>\
+	<<case "Physical Idealist">>
 	She gets through the enslavement process without breaking anything, mostly due to your increasingly exasperated supervision. You wondered whether the destruction of her moronic ideas about life as one of your slaves was going to cause an explosion, but it seems that she's under fewer illusions than you thought. She's obviously familiar with getting fucked as a way of earning her keep, and hangs around, flexing idly and clearly wondering when you'll get on with it.
-	<<case "Physical Idealist Two">>\
+	<<case "Physical Idealist Two">>
 	When she arrives, you're impressed again. She's even more muscular in person than in her pictures. "<<Master>>," she growls, "I've done my very best to be the biggest, strongest slave before coming here. May I show you?" More than a little curious, you nod. She reaches down to place a palm on the ground. "Well, <<Master>>, I had a month. So I did my best to get in shape." She suddenly flips as if starting a cartwheel, but stops suspended in midair, holding her entire muscular frame off the ground with just one hand planted on the floor. She turns slowly, revealing the base of an impressively large buttplug nestling between her cheeks. She knows her audience.
-	<<case "Youth Preferentialist">>\
+	<<case "Youth Preferentialist">>
 	Your slaving network gets her out of her difficult situation without trouble, forwarding her the necessary travel documents. When she arrives, she displays the clear signs of someone who has learned to avoid abuse: she takes no initiative and does nothing without instructions, just standing dumbly until ordered; when told what to do, she does it quickly and carefully. Though her mind is not broken, there is something dead lurking in her eyes. When she looks at you, it is with the watchful caution of an abused animal.
-	<<case "Youth Preferentialist Two">>\
+	<<case "Youth Preferentialist Two">>
 	Your slaving network extracts her from her family's grasp easily, forwarding her the necessary travel documents. When she arrives, she displays the clear signs of someone who's never had to think for themselves: she takes no initiative and does nothing without instructions, just standing dumbly until ordered; when told what to do, she does it quickly and carefully. Though her mind is not broken, there's clearly not a lot in there. Being a slave may actually be her most fitting vocation.
-	<<case "Maturity Preferentialist">>\
+	<<case "Maturity Preferentialist">>
 	When she arrives, you're impressed again. She elected to appear in black lace lingerie, and stalks into your office on high heels with a calculated sensuality. "<<Master>>," she purrs, "I've done my very best to get ready to be a good slave. May I show you?" More than a little curious, you nod. She starts to strip slowly and skillfully. "Well, <<Master>>, I had a month. So I did my best to get in shape." She rubs her hands down her toned belly, hooking fingers under her thong. "I practiced stripping. I practiced blowjobs." She turns slowly, revealing the base of an impressively large buttplug nestling between her cheeks. "I even practiced buttsex."
-	<<case "Maturity Preferentialist Two">>\
+	<<case "Maturity Preferentialist Two">>
 	She arrives apologizing for her fine clothing. "I'm sorry," she apologizes sadly, "but I wanted to wear my best one last time." She sighs, squares her shoulders, and visibly steels herself. "My son's a bastard for selling me to you, and all to save that useless store of his." She delivers this last with a bitter smile on her lips. "At least he had the sense to sell me to someone with exquisite taste, like you. After all, you did buy me."
-	<<case "Chattel Religionist">>\
+	<<case "Chattel Religionist">>
 	She lets out a convulsive sob when you accept her servitude, and is painfully obsequious as you complete the formalities of enslavement. Your exam reveals several minor indications of self-harm - chewed nails, bitten lips, and such. But for all that, a remarkable look of peace has settled on the poor woman's face. She waits patiently for a hint of your will, <<if canAchieveErection($activeSlave)>>her cock painfully erect<<elseif $activeSlave.dick > 0>>precum dripping from her soft dick<<else>>her pussy visibly moist<</if>> at the prospect of the servile sex she is convinced is her duty.
-	<<case "Chattel Religionist Two">>\
+	<<case "Chattel Religionist Two">>
 	You complete the legalities and a clearly improvised VTOL craft arrives at $arcologies[0].name, broadcasting an erratic array of IFF codes. It seems this group hasn't quite mastered the intricacies of air travel. The aircraft doesn't seem capable of the delicate feat of landing on the pad it had been directed to: it simply hovers six feet off the pad for the five seconds it takes to shove a canvas bag that obviously contains a struggling human form out of the side door. The condemned prays tirelessly throughout the biometric scanning process, utterly shocked and disgusted by what they've witnessed in just the few minutes they've been in your arcology. Then it's off to the penthouse for basic slave induction.
-	<<case "Roman Revivalist">>\
+	<<case "Roman Revivalist">>
 	She arrives wide-eyed and enthusiastic about the historical style she saw on the way in. She swallows nervously throughout the enslavement process and even cries a little at the end. She's slow to undress, and when she's finished, she covers her modest breasts with one arm and her mons with the other. It seems that she's about to have a rude awakening about the realities of being a house slave.
-	<<case "Aztec Revivalist">>\
+	<<case "Aztec Revivalist">>
 	She arrives awestruck by all the sights she passed through to get to your abode. She probably didn't see anything too extreme, but she will soon. Feeling your gaze on her body, she quickly abandons all fears from her past life, strips off her clothes, and submits to you fully. Only time will tell if she made a mistake.
-	<<case "Edo Revivalist">>\
+	<<case "Edo Revivalist">>
 	She arrives with doubt already clouding her eyes. It seems she passed one of the arcology's seedier bars on her way up to your penthouse; the sight of roaring patrons swilling cheap sake and manhandling whores in loose kimonos does not seem to have been part of her expectations. As the enslavement process winds on, she reflexively begins to look around for a means of escape, and slowly collapses into herself as she realizes there is none.
-	<<case "Arabian Revivalist">>\
+	<<case "Arabian Revivalist">>
 	Your estimation of her rises through the enslavement process: she doffs and discards her conservative business wear without complaint, and stands nude before you, obeying instructions without fuss. There is an indecipherable glint in her $activeSlave.eyeColor eyes: nerves? Excitement? Challenge, even? Perhaps she even feels this is an adventure. And that, it will certainly be.
-	<<case "Chinese Revivalist">>\
+	<<case "Chinese Revivalist">>
 	She arrives in a simple, sturdy suit, which she obviously wore in the correct anticipation of immediately removing and never seeing again. She cooperates with the enslavement process as best she can, her glance confident and watchful. She's obviously calculating how to get ahead within this new place, and she pays particularly close attention as the ebb and flow of business through your office brings your various slaves into her view for the first time.
-	<</switch>>\
+	<</switch>>
 	<<include "New Slave Intro">>
 	<</replace>>
 <</link>> //This will cost <<print cashFormat($contractCost)>>//
-<<link "Sell her immediately">>
+<br><<link "Sell her immediately">>
 	<<set $cash += $slaveCost>>
 	<<replace "#result">>
-	<<switch $FSAcquisitionEvents>>\
-	<<case "Pastoralist">>\
+	<<switch $FSAcquisitionEvents>>
+	<<case "Pastoralist">>
 	She drags herself in, but as the enslavement process winds grindingly on, she shakes off her depression. It threatens to descend again when a purchaser's agent comes in to take her away. She begs to know where she's going, so you tell her she's to be a cow in a slave dairy. She quails at the term, but you observe that she'll be well treated and lightly used, if at all, and she seems to take heart at this.
-	<<case "Pastoralist Two">>\
+	<<case "Pastoralist Two">>
 	She speaks to you as a free woman while working through the enslavement process, perhaps she hasn't quite grasped her new role. Nonetheless, it seems as if a vast weight has been lifted from her shoulders. It threatens to descend again when a purchaser's agent comes in to take her away. She begs to know where she's going, so you tell her she's to be a cow in a slave dairy. She quails at the term, but you observe that she'll be well treated and lightly used, if at all, and she seems to take heart at this.
-	<<case "Supremacist">>\
+	<<case "Supremacist">>
 	A battered VTOL craft arrives at $arcologies[0].name, broadcasting obviously bogus IFF codes. It seems this mercenary group is playing fast and loose in an attempt to get back on their feet. The aircraft doesn't even touch down on the pad they're directed to: it simply hovers six feet off the pad for the five seconds it takes to shove a canvas bag that obviously contains a struggling human form out of the side door. You decide to do the simple thing, and leave the bag where it is. The purchaser's agent can deal with it.
-	<<case "Supremacist Two">>\
+	<<case "Supremacist Two">>
 	A clearly improvised VTOL craft arrives at $arcologies[0].name, broadcasting an erratic array of IFF codes. It seems this group hasn't quite mastered the intricacies of air travel. The aircraft doesn't seem capable of the delicate feat of landing on the pad it had been directed to: it simply hovers six feet off the pad for the five seconds it takes to shove a canvas bag that obviously contains a struggling human form out of the side door.  You decide to do the simple thing, and leave the bag where it is. The purchaser's agent can deal with it.
-	<<case "Subjugationist">>\
+	<<case "Subjugationist">>
 	The purchasing agent is businesslike, even hurried. The inert slave receives a simple check, with some industrious fingering of orifices, and is bundled off. As is appropriate.
-	<<case "Subjugationist Two">>\
+	<<case "Subjugationist Two">>
 	The enslavement process is disappointingly quiet, since she does little more than stare blankly ahead and respond to any orders. As of this morning she was one of the last free $arcologies[0].FSSubjugationistRace people in the arcology. Now she's simply the newest, and perhaps most willing, sex slave of the inferior race to take her proper place. She's taken away by a purchasing agent soon after.
-	<<case "Repopulation Efforts">>\
-	When she arrives, she comes directly to your to your penthouse for enslavement.  She wears an excited expression, having seen so many pregnant women on the way there, she can barely contain her enthusiasm.  She eagerly strips for inspection revealing her moist pussy, it seems she may be more into pregnancy then she let on.  You shake your head to her as a purchaser's agent appears to take her away.  She asks if she'll still be impregnated and the agent nods approvingly.  She seems slightly downtrodden that she won't be yours but she accepts the fact that she'll still be useful to your future.
-	<<case "Repopulation Efforts Two">>\
+	<<case "Repopulation Efforts">>
+	When she arrives, she comes directly to your to your penthouse for enslavement. She wears an excited expression, having seen so many pregnant women on the way there, she can barely contain her enthusiasm. She eagerly strips for inspection revealing her moist pussy, it seems she may be more into pregnancy then she let on. You shake your head to her as a purchaser's agent appears to take her away. She asks if she'll still be impregnated and the agent nods approvingly. She seems slightly downtrodden that she won't be yours but she accepts the fact that she'll still be useful to your future.
+	<<case "Repopulation Efforts Two">>
 	When she arrives, she is the very picture of a someone who has seen the light at the end of a very dark tunnel. She can't wait to get started making babies for you. A purchaser's agent arrives to take charge of her and she pleads not to leave her infertile. You abate her fears, her fertility will be restored. Her new owner likes to experiment with fertility agents; she'll quickly be pregnant with <<if $seeHyperPreg == 1>>dozens of children<<else>>multiples<</if>>. Her face alights at the thought. She'll finally have all the children she'd dreamed of.
-	<<case "Eugenics">>\
+	<<case "Eugenics">>
 	You interrupt her rambling and bluntly inform her that she is useless to society. She steps back, insulted, and attempts a rebuttal. You cut her off again and tell her another of the Societal Elite has taken interest in making her his pet. She takes another step back and is promptly restrained before being dragged off to her new owner.
-	<<case "Eugenics Two">>\
+	<<case "Eugenics Two">>
 	When she arrives, she comes directly to your to your penthouse for enslavement. Her face may painful to look at, but her body is not all bad; with a little work, she can be quite the catch. A purchaser's agent appears to take her away, and she quietly asks who's bought her. A plastic surgeon, you tell her, who sees a diamond in the rough. She's speechless.
-	<<case "Hedonistic Decadence">>\
+	<<case "Hedonistic Decadence">>
 	You inform her that she will be staying in your arcology, but not under you. She has been purchased by a feeding trainer interested in slim girls with massive stomach capacities for entry into the eating competitions that have become so popular lately. She seems elated at the news, "<<S>>tuffing i<<s>> one of my favorite perver<<s>>ion<<s>>..." You cut her off and inform her that her current belly pales in comparison to her new owner's previous champion. She should expect to be tied up and force fed until her entire body is filled to capacity with slave food. She gulps nervously as she escorted out by the portly purchasing agent to her new home.
-	<<case "Hedonistic Decadence Two">>\
-	When she arrives, she comes directly to your penthouse for enslavement. She wears an expression of doubt, fear, and wonder as she takes in the sights and sounds of the magnificent beast that is the new society taking shape in $arcologies[0].name. A purchaser's agent arrives to take charge of her, and she asks politely who bought her. A man with an oviposition fetish, you tell her. She fails to grasp the meaning. You explain to her that eggs will be stuck into all her holes until she can't stomach any more. She turns beat red at the description, so you carry on. Her new owner will likely remodel her cervix to allow eggs to be pumped directly into her womb; she'll be lucky if she can stand once he's done with her, then she'll have to look forward to laying them all for his amusement. Her hands have since moved to her crotch, it seems she's getting into the fantasy.
-	<<case "Gender Radicalist">>\
+	<<case "Hedonistic Decadence Two">>
+	When she arrives, she comes directly to your penthouse for enslavement. She wears an expression of doubt, fear, and wonder as she takes in the sights and sounds of the magnificent beast that is the new society taking shape in $arcologies[0].name. A purchaser's agent arrives to take charge of her, and she asks politely who bought her. A man with an oviposition fetish, you tell her. She fails to grasp the meaning. You explain to her that eggs will be stuck into all her holes until she can't stomach any more. She turns beat red at the description, so you carry on. Her new owner will likely remodel her cervix to allow eggs to be pumped straight into her womb; she'll be lucky if she can stand once he's done with her. Then she'll have to look forward to laying them all for his amusement. Her hands have since moved to her crotch, it seems she's getting into the fantasy.
+	<<case "Gender Radicalist">>
 	When she arrives, she comes directly to your penthouse for enslavement. She wears an expression of doubt, fear, and wonder as she takes in the sights and sounds of the magnificent beast that is the new society taking shape in $arcologies[0].name. A purchaser's agent arrives to take charge of her, and she asks politely who bought her. A salon, you tell her; she'll be trained to wait tables, serve drinks, and entertain customers with her mouth and anus.
-	<<case "Gender Radicalist Two">>\
+	<<case "Gender Radicalist Two">>
 	When she arrives, she comes directly to your penthouse for enslavement. She wears an expression of doubt, fear, and wonder as she takes in the sights and sounds of the magnificent beast that is the new society taking shape in $arcologies[0].name. A purchaser's agent arrives to take charge of her, and she asks politely who bought her. A salon, you tell her; she'll be trained to wait tables, serve drinks, and entertain customers with her mouth and anus.
-	<<case "Gender Fundamentalist">>\
+	<<case "Gender Fundamentalist">>
 	When she arrives, she is the very picture of a lost and very pregnant young waif. She clearly feels some hope at leaving her traditionalist home for a more modern society, but she has just as clearly heard enough about the Free Cities to know that she's likely to buy her presence here through long years of sexual labor. A purchaser's agent appears to take her away, and she quietly asks who's bought her. A breeder, you tell her, who prefers stock proven to be fertile. She'll probably manage 20 pregnancies or so, before she's retired.
-	<<case "Gender Fundamentalist Two">>\
+	<<case "Gender Fundamentalist Two">>
 	When she arrives, she is the very picture of a distraught and very pregnant mature woman. She clearly feels some resentment at her traditionalist home and family for selling her into slavery, but she has just as clearly heard enough about the Free Cities to know that she's likely traded one form of marginalization for another. A purchaser's agent appears to take her away, and she quietly asks who's bought her. A breeder, you tell her, who prefers to squeeze a few pregnancies out of mature women. She'll probably manage a few pregnancies before she's retired.
-	<<case "Paternalist">>\
+	<<case "Paternalist">>
 	She speaks to you as a free woman throughout the enslavement process, but as soon as it is completed, she stops and waits for instruction before talking. She does not look directly at your face, but keeps her gaze lower than that, and stands expectant and ready for commands. You are reminded of her intelligence by her presence of mind when a purchaser's agent arrives to take charge of her; she clearly calculates that making a scene will gain her nothing, and cooperates. You reward this by telling her the truth: she's been sold to a citizen of $arcologies[0].name who shares paternalistic beliefs; she'll be fine.
-	<<case "Paternalist Two">>\
+	<<case "Paternalist Two">>
 	She speaks to you as a free woman throughout the enslavement process, but as soon as it is completed, she stops and waits for instruction before talking. She may not have had many prospects in her life back home, but if she remains this obedient she'll fit right in here in the Free Cities. When the purchasing agent arrives she is momentarily surprised but not alarmed, she figures she'll been sold to a citizen of $arcologies[0].name who shares paternalistic beliefs.
-	<<case "Degradationist">>\
+	<<case "Degradationist">>
 	When she arrives as part of the anonymous slave transfers that make up a good part of the inter-arcology commerce, she has clearly had some time to mull over her situation. As soon as she sees you, she blurts out, "Whatever that fucker told you, it isn't true. I'll be your little bitch bimbo, whatever you want. Just don't - just don't fucking hurt me." She sticks out her chest in a clear attempt to entice you with her fake tits, and is rewarded with a bag over her head, courtesy of the purchaser's agent who arrived in the meantime. The agent clearly felt that she would be a handful worth corralling quickly, and this proves correct. She goes limp after being tased, though.
-	<<case "Degradationist Two">>\
+	<<case "Degradationist Two">>
 	When she arrives as part of the anonymous slave transfers that make up a good part of the inter-arcology commerce, she has clearly had some time to mull over her situation. As soon as she sees you, she glares deep into your eyes and addresses you directly, "Those fuckers threw everything they could at me, you can't break me. No one can." She is rewarded with a bag over her head, courtesy of the purchaser's agent who arrived in the meantime. The agent clearly felt that she would be a handful worth corralling quickly, and this proves correct. She goes limp after being tased, though.
-	<<case "Body Purist">>\
+	<<case "Body Purist">>
 	When she arrives, it's obvious that she isn't particularly happy with the situation, but there is some evident relief to her. It vanishes when a purchaser's agent arrives to take her away. She looks at you desperately, begging to know who's purchased her. You tell her truthfully that a wealthy citizen one arcology over bought her as a house slave; you neglect to mention that he likes big tits, and he isn't particular about whether they're natural.
-	<<case "Body Purist Two">>\
+	<<case "Body Purist Two">>
 	When she arrives, it's obvious that she's fairly happy. After all, the slave school trained her for this. When asked about it, she says, "Some of the girls who graduated before me were given implants, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>. Just - the idea of having fake shit in here -" she rubs her chest a little "- ugh. I'm glad you're not into that" She laughs bitterly at herself, and then rubs her chest again, looking at you with mixed fear and invitation. Her playfulness vanishes when a purchaser's agent arrives to take her away. She looks at you desperately, begging to know who's purchased her. You tell her truthfully that a wealthy citizen one arcology over bought her as a house slave; you neglect to mention that he likes big tits, and he isn't particular about whether they're natural.
-	<<case "Transformation Fetishist">>\
+	<<case "Transformation Fetishist">>
 	The only downside to her condition is that reselling her is utterly anticlimactic. A purchaser's agent arrives and takes charge of her, transferring her to a medical transport bed. He takes her away, and it's done.
-	<<case "Transformation Fetishist Two">>\
+	<<case "Transformation Fetishist Two">>
 	She arrives unapologetically in her fine clothing. "I'm not sorry," she says harshly, "but I'm wearing my best one last time whether you like it or not." Eventually she sighs, squares her shoulders, and visibly steels herself. She's about to declaim something when a purchaser's agent arrives to bundle her off. Her face darkens and she mulls something over, probably preparing a really cutting remark, but before she can deliver it the agent fastens a bag over her head and she is heard no more.
-	<<case "Slimness Enthusiast">>\
+	<<case "Slimness Enthusiast">>
 	She arrives apologizing for her fine clothing. "I'm sorry," she apologizes sadly, "but I wanted to wear my best one last time." She sighs, squares her shoulders, and visibly steels herself. She's about to declaim something when a purchaser's agent arrives to bundle her off. Her face darkens and she mulls something over, probably preparing a really cutting remark, but before she can deliver it the agent fastens a bag over her head and she is heard no more.
-	<<case "Slimness Enthusiast Two">>\
+	<<case "Slimness Enthusiast Two">>
 	When she arrives, she is the very picture of a young waif out of her depth. It's clear she feels relief and escaping going under the knife, but she knows enough about the Free Cities to know that she's likely to buy her presence here through long years of sexual labor. A purchaser's agent appears to take her away, and she quietly asks who's bought her. A citizen, you tell her, who prefers his women slender and unimplanted. She seems relieved by this.
-	<<case "Asset Expansionist">>\
+	<<case "Asset Expansionist">>
 	When she arrives, it's clear she's nobody's fool. She comes without personal effects of any kind, and is wearing cheap, sturdy clothes to travel in, since she knows she'll be taking them off immediately. She does, without being told, just as soon as the enslavement formalities are out of the way. Her breasts are capped by titanic, puffy nipples; she notices you appreciating them and gives you a hesitant little smile, swaying her shoulders back and forth a little to set her flesh deliciously into motion. Her playfulness vanishes when a purchaser's agent arrives to take her away. She looks at you desperately, begging to know who's purchased her. You tell her truthfully that a wealthy citizen one arcology over bought her as a house slave; you neglect to mention that he likes big tits.
-	<<case "Asset Expansionist Two">>\
+	<<case "Asset Expansionist Two">>
 	When she arrives, it's clear she's nobody's fool. She comes without personal effects of any kind, and is wearing cheap, sturdy clothes to travel in, since she knows she'll be taking them off immediately. She does, without being told, just as soon as the enslavement formalities are out of the way. Her breasts are capped by titanic, puffy nipples; she notices you appreciating them and gives you a hesitant little smile, swaying her shoulders back and forth a little to set her flesh deliciously into motion. Her playfulness vanishes when a purchaser's agent arrives to take her away. She looks at you desperately, begging to know who's purchased her. You tell her truthfully that a wealthy citizen one arcology over bought her as a house slave; you neglect to mention that he likes big tits.
-	<<case "Physical Idealist">>\
+	<<case "Physical Idealist">>
 	She gets through the enslavement process without breaking anything, mostly due to your increasingly exasperated supervision. Her buyer's agent arrives to take her away, and it takes the poor man ten minutes to get the situation through her thick skull. He sees the beginnings of rage building in her as she realizes how she's been tricked, but he's a quick draw, and before she can do anything he's got his taser unholstered and deployed. The bitch gives off an antediluvian roar as she goes stiff as a board and crashes to the floor.
-	<<case "Physical Idealist Two">>\
+	<<case "Physical Idealist Two">>
 	When she arrives, you're impressed again. She's even more muscular in person than in her pictures. "<<Master>>," she growls, "I've done my very best to be the biggest, strongest slave before coming here. May I show you?" Though more than a little curious, the arrival of the purchasing agent cuts short any theatrics. Though initially confused, the promise of steroids and other drugs by her new owner has her follow the agent out of your penthouse without fuss.
-	<<case "Youth Preferentialist">>\
+	<<case "Youth Preferentialist">>
 	Your slaving network gets her out of her difficult situation without trouble, forwarding her the necessary travel documents. When she arrives, she displays the clear signs of someone who has learned to avoid abuse: she takes no initiative and does nothing without instructions, just standing dumbly until ordered; when told what to do, she does it quickly and carefully. When a buyer's agent arrives to take her away, she follows him without a backward glance.
-	<<case "Youth Preferentialist Two">>\
+	<<case "Youth Preferentialist Two">>
 	Your slaving network extracts her from her family's grasp easily, forwarding her the necessary travel documents. When she arrives, she displays the clear signs of someone who's never had to think for themselves: she takes no initiative and does nothing without instructions, just standing dumbly until ordered; when told what to do, she does it quickly and carefully. Though her mind is not broken, there's clearly not a lot in there. Being a slave may actually be her most fitting vocation. When a buyer's agent arrives to take her away, she follows him without a backward glance, clearly unaware of who he is.
-	<<case "Maturity Preferentialist">>\
+	<<case "Maturity Preferentialist">>
 	She and the buyer's agent arrive at the same time. She accepts this defeat with good grace, and cooperates with him as best she can. She gives you a single questioning glance, with just a glint of hope; you take pity, and tell her she won't be going far. She's to be employed in one of the arcology's better MILF brothels. She'll be fucked ten times tomorrow, it's true, but she'll be well treated when she doesn't have dicks in her.
-	<<case "Maturity Preferentialist Two">>\
+	<<case "Maturity Preferentialist Two">>
 	She arrives apologizing for her fine clothing. "I'm sorry," she apologizes sadly, "but I wanted to wear my best one last time." She sighs, squares her shoulders, and visibly steels herself. "My son's a bastard for selling me to you, and all to save that useless store of his." She delivers this last with a bitter smile on her lips. "At least he had the sense to sell me to someone with exquisite taste, like you. After all, you did buy me."  She's about to declaim something else when a purchaser's agent arrives to bundle her off. Her face darkens and she mulls something over, probably preparing a really cutting remark, but before she can deliver it the agent fastens a bag over her head and she is heard no more.
-	<<case "Chattel Religionist">>\
+	<<case "Chattel Religionist">>
 	She lets out a convulsive sob when you accept her servitude, and is painfully obsequious as you complete the formalities of enslavement. When her buyer arrives to take her away, the realization agonizes her, but she snuffs out her saddened reaction almost as soon as it dawns on her face. She visibly draws herself up, obviously telling herself that service under one master is as righteous as service under another.
-	<<case "Chattel Religionist Two">>\
+	<<case "Chattel Religionist Two">>
 	You complete the legalities and a clearly improvised VTOL craft arrives at $arcologies[0].name, broadcasting an erratic array of IFF codes. It seems this group hasn't quite mastered the intricacies of air travel. The aircraft doesn't seem capable of the delicate feat of landing on the pad it had been directed to: it simply hovers six feet off the pad for the five seconds it takes to shove a canvas bag that obviously contains a struggling human form out of the side door. The condemned prays tirelessly they're unpacked, utterly shocked and disgusted by what they've witnessed in just the few minutes they've been in your arcology. You tell them to cheer up, they're off to a nice little brothel where they'll learn the joys of their new religion. You make out a single word as they are hauled away, "Blasphemer!" Seems someone wants you to patron them in their new career.
-	<<case "Roman Revivalist">>\
+	<<case "Roman Revivalist">>
 	She arrives with doubt already clouding her eyes. It seems she got an introduction to the reality of Roman Revivalism on her way up the arcology to your villa. The violence it did to her vision of Rome is deeply ironic; $arcologies[0].name is a fair reproduction of the decadence and vigor of imperial Rome. If she's shocked by the screams of a slave dying in gladiatorial combat or the spectacle of prisoners from the provinces being sold at auction, that's her ignorance. When you cause a price placard to be affixed to her chest so she can be sold at auction, the reality of her future finally comes home to her.
-	<<case "Aztec Revivalist">>\
+	<<case "Aztec Revivalist">>
 	She arrives so terrified, she can't stop shaking and won't acknowledge most of your commands. It seems she realized what really goes on in this arcology. The blood and gruesome mutilation is very far from she envisioned for her future; $arcologies[0].name is a close reproduction of the miasma of death that accompanied the Aztecs. She's currently too shaken to realize what awaits her. Whether good or bad, she can't back out. She's yours.
-	<<case "Edo Revivalist">>\
+	<<case "Edo Revivalist">>
 	She arrives with doubt already clouding her eyes. It seems she passed one of the arcology's seedier bars on her way up to your penthouse; the sight of roaring patrons swilling cheap sake and manhandling whores in loose kimonos does not seem to have been part of her expectations. When a buyer's agent arrives to take charge of her low-value body, she manages to spit out a last bit of bad Japanese (a childish insult) before he bags her. The body in the bag struggles spastically until he knuckles it hard in the kidney, slings it over his shoulder, and carries the package out, grinning at you in commiseration.
-	<<case "Arabian Revivalist">>\
+	<<case "Arabian Revivalist">>
 	She arrives and works her way through the enslavement process without fuss. When a buyer's agent arrives, she immediately understands that she has been sold. She looks rueful for a moment, obviously realizing that you made no commitment not to do this, and that such a commitment would have been worthless in any case. She flawlessly performs the only successful insult available to her, ignoring you utterly from that moment on, but obeying the agent faultlessly.
-	<<case "Chinese Revivalist">>\
+	<<case "Chinese Revivalist">>
 	She arrives and works her way through the enslavement process, doing her best to ingratiate herself. When a buyer's agent arrives, she immediately understands that she has been sold. She looks rueful for a moment, obviously realizing that you made no commitment not to do this, and that such a commitment would have been worthless in any case. She transfers her focus to the agent without hesitation, doing her best to improve her rapidly changing position.
-	<</switch>>\
+	<</switch>>
 	<</replace>>
 <</link>> //This will bring in <<print cashFormat($slaveCost)>>//
-<<else>>\
+<<else>>
 	//You lack the necessary funds to enslave her.//
-<</if>>\
+<</if>>
 
 <<if $cheatMode == 1>>
 	<br><br>DEBUG: &nbsp;&nbsp;&nbsp;&nbsp;[[Go back to Nonrandom Event|Nonrandom Event][$activeSlave = 0, $eventSlave = 0]]
diff --git a/src/uncategorized/reRecruit.tw b/src/uncategorized/reRecruit.tw
index 4d0c1b23309..c578823ed84 100644
--- a/src/uncategorized/reRecruit.tw
+++ b/src/uncategorized/reRecruit.tw
@@ -325,6 +325,7 @@ One of your tenants asks for an interview. He's an effeminate young man; it seem
 <<set $activeSlave.lipsImplant = 10>>
 <<set $activeSlave.anus = 0>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.vaginalSkill = 0>>
 <<set $activeSlave.oralSkill = 0>>
 <<set $activeSlave.analSkill = 0>>
@@ -939,6 +940,7 @@ After the fighting died down, your men found a woman inside the compound, harshl
 <<set $activeSlave.entertainSkill = 35>>
 <<set $activeSlave.boobs = random(2,7)*100>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.vaginaLube = 1>>
 <<set $activeSlave.ovaries = 1>>
 <<set $activeSlave.preg = -1>>
@@ -1124,6 +1126,7 @@ As fate has it, the person calling is the owner of the local race-track, wanting
 <<set $activeSlave.behavioralQuirk = "fitness">>
 <<set $activeSlave.sexualQuirk = "tease">>
 <<set $activeSlave.sexualFlaw = "none">>
+<<set $activeSlave.trueVirgin = 1>>
 
 Coming to your desk in the morning, you see that your assistant has flagged an interesting news item for you to check out. Looks like the monthly final in the slave racing league was yesterday. With the push of a button on the keyboard, you check out the rankings and then choose to display a video of the race's end - with a very pretty young woman crossing the finish line, immediately followed by half a dozen further slaves. It is quite a show since of course, all of them are naked - or almost so, as anything but smallish breasts make sports bras a necessity.
 <br><br>
@@ -1151,6 +1154,7 @@ As fate has it, the person calling is the owner of the local race-track, wanting
 <<set $activeSlave.whoreSkill = 0>>
 <<set $activeSlave.boobs = either(100, 200, 300)>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.ovaries = 1>>
 <<set $activeSlave.preg = -1>>
 <<set $activeSlave.pubicHStyle = "waxed">>
@@ -1377,6 +1381,7 @@ From the looks of all the brochures and extra information included, the associat
 <<set $activeSlave.whoreSkill = 0>>
 <<set $activeSlave.boobs = random(6,12)*100>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.vaginaLube = 1>>
 <<set $activeSlave.labia = 2>>
 <<set $activeSlave.ovaries = 1>>
@@ -1980,6 +1985,7 @@ While digging through the highest security and clearance level database of a pow
 <<set $activeSlave.entertainSkill = 20>>
 <<set $activeSlave.boobs = random(4,7)*100>>
 <<set $activeSlave.vagina = 0>>
+<<set $activeSlave.trueVirgin = 1>>
 <<set $activeSlave.vaginaLube = 2>>
 <<set $activeSlave.ovaries = 1>>
 <<set $activeSlave.preg = 40>>
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index 10c7014e3cc..8ee02891269 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -32,7 +32,7 @@
 <<if $eventSlave.father == 0 && $activeSlave.actualAge < 24 && $seeDicks != 0>>
 	<<set _recruitedType.push("father")>>
 <</if>>
-<<if ($eventSlave.daughters < 3) && ($activeSlave.actualAge > ($minimumSlaveAge+$fertilityAge)) && isFertile($activeSlave)>>
+<<if ($eventSlave.daughters < 3) && ($activeSlave.actualAge > ($minimumSlaveAge+$fertilityAge)) && isFertile($activeSlave) && $activeSlave.trueVirgin != 1>>
 	<<if $seeDicks != 100>>
 		<<set _recruitedType.push("daughter")>>
 		<<set _recruitedType.push("daughter")>>
@@ -463,6 +463,46 @@ She waits anxiously for your decision.
 <<set $activeSlave.prestige = 0>>
 <<set $activeSlave.pornFame = 0>>
 <<set $activeSlave.pornFameSpending = 0>>
+<<set $activeSlave.pornFeed = 0>>
+<<set $activeSlave.pornPrestige = 0>>
+<<set $activeSlave.pornPrestigeDesc = 0>>
+<<set $activeSlave.pornFameType = "none">>
+<<set $activeSlave.pornFocus = "none">>
+<<set $activeSlave.pornTypeGeneral = 0>>
+<<set $activeSlave.pornTypeFuckdoll = 0>>
+<<set $activeSlave.pornTypeRape = 0>>
+<<set $activeSlave.pornTypePreggo = 0>>
+<<set $activeSlave.pornTypeBBW = 0>>
+<<set $activeSlave.pornTypeGainer = 0>>
+<<set $activeSlave.pornTypeStud = 0>>
+<<set $activeSlave.pornTypeLoli = 0>>
+<<set $activeSlave.pornTypeDeepThroat = 0>>
+<<set $activeSlave.pornTypeStruggleFuck = 0>>
+<<set $activeSlave.pornTypePainal = 0>>
+<<set $activeSlave.pornTypeTease = 0>>
+<<set $activeSlave.pornTypeRomantic = 0>>
+<<set $activeSlave.pornTypePervert = 0>>
+<<set $activeSlave.pornTypeCaring = 0>>
+<<set $activeSlave.pornTypeUnflinching = 0>>
+<<set $activeSlave.pornTypeSizeQueen = 0>>
+<<set $activeSlave.pornTypeNeglectful = 0>>
+<<set $activeSlave.pornTypeCumAddict = 0>>
+<<set $activeSlave.pornTypeAnalAddict = 0>>
+<<set $activeSlave.pornTypeAttentionWhore = 0>>
+<<set $activeSlave.pornTypeBreastGrowth = 0>>
+<<set $activeSlave.pornTypeAbusive = 0>>
+<<set $activeSlave.pornTypeMalicious = 0>>
+<<set $activeSlave.pornTypeSelfHating = 0>>
+<<set $activeSlave.pornTypeBreeder = 0>>
+<<set $activeSlave.pornTypeSub = 0>>
+<<set $activeSlave.pornTypeCumSlut = 0>>
+<<set $activeSlave.pornTypeAnal = 0>>
+<<set $activeSlave.pornTypeHumiliation = 0>>
+<<set $activeSlave.pornTypeBoobs = 0>>
+<<set $activeSlave.pornTypeDom = 0>>
+<<set $activeSlave.pornTypeSadist = 0>>
+<<set $activeSlave.pornTypeMasochist = 0>>
+<<set $activeSlave.pornTypePregnancy = 0>>
 <<set $activeSlave.prestigeDesc = "">>
 <<set $activeSlave.rivalry = 0>>
 <<set $activeSlave.rivalryTarget = 0>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 1fd262f6a5d..687045559e1 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -5107,11 +5107,11 @@
 
 <<set $pornFameBonus = 1>>
 <<if $studio == 1>>
-<<if $slaves[$i].pornFameSpending > 0>>
-	<<set $pornFameBonus += 0.2 + (($slaves[$i].pornFameSpending/10000)/$HackingSkillMultiplier)>>
-	<<if ($slaves[$i].pornFameSpending >= 4000)>>
+<<if $slaves[$i].pornFame > 0>>
+	<<set $pornFameBonus += (Math.ceil($slaves[$i].pornFame/100000))>>
+	<<if ($slaves[$i].pornFame >= 100000)>>
 		$possessiveCap near-ubiquitous presence in arcology pornography greatly increases $possessive impact on society.
-	<<elseif ($slaves[$i].pornFameSpending >= 2000)>>
+	<<elseif ($slaves[$i].pornFame >= 10000)>>
 		$possessiveCap presence in arcology pornography increases $possessive impact on society.
 	<<else>>
 		$possessiveCap occasional presence in arcology pornography slightly increases $possessive impact on society.
diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw
index 9b0947901d8..b3f75c7665b 100644
--- a/src/uncategorized/saPleaseYou.tw
+++ b/src/uncategorized/saPleaseYou.tw
@@ -1201,6 +1201,11 @@ serves you this week.
 <<elseif ($slaves[$i].ID == $HeadGirl.ID) && ($arcologies[0].FSEgyptianRevivalistLaw == 1)>>
 	<<set _multiplier += 0.05>>
 <</if>>
+<<if $slaves[$i].pornPrestige > 2>>
+	<<set _multiplier += 0.1>>
+<<elseif $slaves[$i].pornPrestige > 1>>
+	<<set _multiplier += 0.03>>
+<</if>>
 
 <<if $beauty>>
 	<<set $repGain += Math.trunc(($beauty*$FResult)*_multiplier)>>
@@ -1226,6 +1231,12 @@ Keeping $object as nothing but your personal
 	@@.green;adds slightly to your reputation@@ as a prosperous citizen.
 <</if>>
 
+<<if $slaves[$i].pornPrestige > 2>>
+	Having your every urge attended to by a famous porn star @@.green;is not lost on the citizenry.@@
+<<elseif $slaves[$i].pornPrestige > 1>>
+	Having a rising porn star to sate your urges with @@.green;demonstrates how well off you are.@@
+<</if>>
+
 <<if $slaves[$i].fuckdoll == 0>>
 	<<if $slaves[$i].relationship == -2>>
 		$possessiveCap satisfaction with $possessive place near you is obvious, @@.green;bringing attention@@ to how completely you've broken $object.
diff --git a/src/uncategorized/saRecruitGirls.tw b/src/uncategorized/saRecruitGirls.tw
index aef02b90e13..e3f05ef6d4e 100644
--- a/src/uncategorized/saRecruitGirls.tw
+++ b/src/uncategorized/saRecruitGirls.tw
@@ -417,8 +417,8 @@
 	<<if $slaves[$i].intelligence > 0>>
 		<<set _seed += $slaves[$i].intelligence+$slaves[$i].intelligenceImplant>>
 	<</if>>
-	<<if $studio && $slaves[$i].pornFame >= 10>>
-		<<set _seed += $slaves[$i].prestige*3>>
+	<<if $studio && $slaves[$i].pornFame >= 10000 && $slaves[$i].pornPrestige > 0>>
+		<<set _seed += $slaves[$i].pornPrestige*3>>
 	<</if>>
 
 	<<if $arcologies[0].FSSupremacist != "unset">>
@@ -691,7 +691,7 @@
 		<<else>>
 			She lacks the intelligence to compose thoughtful remarks; a lot the time she merely +1s what others have said.
 		<</if>>
-		<<if $studio && $slaves[$i].pornFame >= 10>>
+		<<if $studio && $slaves[$i].pornFame >= 1000 && $slaves[$i].pornPrestige > 0>>
 			Her fan base from arcology porn significantly drives up her followers count.
 		<</if>>
 	<</if>> /*temp close EWM so next two lines always show */
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index 1cf416d6c53..8a203761f01 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -430,13 +430,13 @@ Her appearance attracted $beauty members of the public (<<print Math.trunc($beau
 		<</if>>
 		charms are only for the @@.green;most prominent citizens.@@ When she's not
 		<<if canDoVaginal($slaves[$i]) && (random(1,4) == 1)>>
-			pleasing high society with her <<if $slaves[$i].prestige > 0>>prestigious<<else>>popular<</if>> pussy,
+			pleasing high society with her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>prestigious<<else>>popular<</if>> pussy,
 		<<elseif ($beauty > 70) && (random(1,3) == 1)>>
 			getting gangbanged,
 		<<elseif (random(1,2) == 1)>>
-			giving away one of her <<if $slaves[$i].prestige > 0>>famous<<else>>top-tier<</if>> blowjobs,
+			giving away one of her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>famous<<else>>top-tier<</if>> blowjobs,
 		<<else>>
-			providing free access to her <<if $slaves[$i].prestige > 0>>legendary<<else>>notorious<</if>> anus,
+			providing free access to her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>legendary<<else>>notorious<</if>> anus,
 		<</if>>
 		she offers personal training and sexual therapy.
 	<<else>>
@@ -811,6 +811,14 @@ Her appearance attracted $beauty members of the public (<<print Math.trunc($beau
 	She attracts more attention because it's prestigious to be seen with her.
 <</if>>
 
+<<if $slaves[$i].pornPrestige > 2>>
+	Patrons line up for the chance to spend time with the face of $slaves[$i].pornType porn.
+<<elseif $slaves[$i].pornPrestige > 1>>
+	She has a sizable fanbase, one that is eager to spend time with her.
+<<elseif $slaves[$i].pornPrestige > 0>>
+	A few of her fans recognize her and eagerly make use of her.
+<</if>>
+
 <<if ($slaves[$i].clitPiercing > 2) && ($slaves[$i].devotion >= -20)>>
 	Almost everyone loves her orgasms encouraged by her smart piercing.
 <<elseif ($slaves[$i].clitPiercing > 2)>>
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index 7dfc94a393c..b2617f65b2e 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -427,13 +427,13 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 		<</if>>
 		body commands @@.yellowgreen;a high price.@@ When she's not
 		<<if canDoVaginal($slaves[$i]) && (random(1,4) == 1)>>
-			pleasing the rich with her <<if $slaves[$i].prestige > 0>>prestigious<<else>>popular<</if>> pussy,
+			pleasing the rich with her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>prestigious<<else>>popular<</if>> pussy,
 		<<elseif ($beauty > 70) && (random(1,3) == 1)>>
 			getting gangbanged,
 		<<elseif (random(1,2) == 1)>>
-			performing one of her <<if $slaves[$i].prestige > 0>>famous<<else>>top-tier<</if>> blowjobs,
+			performing one of her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>famous<<else>>top-tier<</if>> blowjobs,
 		<<elseif canDoAnal($slaves[$i])>>
-			selling access to her <<if $slaves[$i].prestige > 0>>legendary<<else>>notorious<</if>> anus,
+			selling access to her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>legendary<<else>>notorious<</if>> anus,
 		<<else>>
 			pleasing the masses with her chest,
 		<</if>>
@@ -816,6 +816,14 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 	She attracts more attention because it's prestigious to fuck her.
 <</if>>
 
+<<if $slaves[$i].pornPrestige > 2>>
+	Customers line up for the chance to buy time with the face of $slaves[$i].pornType porn.
+<<elseif $slaves[$i].pornPrestige > 1>>
+	She has a sizable fanbase, one that is eager to buy time with her.
+<<elseif $slaves[$i].pornPrestige > 0>>
+	A few of her fans recognize her and eagerly patronize her.
+<</if>>
+
 <<if ($slaves[$i].fetishKnown == 1)>>
 <<if ($slaves[$i].fetishStrength > 60)>>
 <<switch $slaves[$i].fetish>>
diff --git a/src/uncategorized/salon.tw b/src/uncategorized/salon.tw
index 2169816eb37..8de1af9918a 100644
--- a/src/uncategorized/salon.tw
+++ b/src/uncategorized/salon.tw
@@ -469,7 +469,7 @@ Dye or paint:
 <<if ($activeSlave.markings == "birthmark")>>
 	<br><br>
 	$pronounCap has a large birthmark, which
-	<<if $activeSlave.prestige > 0>>
+	<<if $activeSlave.prestige > 0 || $activeSlave.pornPrestige > 1>>
 	enhances $possessive attractiveness due to $possessive prestige.
 	<<else>>
 	detracts from $possessive attractiveness.
diff --git a/src/uncategorized/sellSlave.tw b/src/uncategorized/sellSlave.tw
index eebeafc7f6d..d91a0543a5c 100644
--- a/src/uncategorized/sellSlave.tw
+++ b/src/uncategorized/sellSlave.tw
@@ -458,6 +458,14 @@ A reputable slave appraiser arrives promptly to inspect her and certify her qual
 	I see notes on her notoriety in her file. That will drive up her price.
 <</if>>
 
+<<if $activeSlave.pornPrestige == 3>>
+	She's pretty popular in $activeSlave.pornType smut, isn't she? Buyers will be lining up for her.
+<<elseif $activeSlave.pornPrestige == 2>>
+	She's gained quite the following in $activeSlave.pornType smut. In fact, I've even seen some of her smut; buyers will flock to her.
+<<elseif $activeSlave.pornPrestige == 1>>
+	She's got a small fanbase in $activeSlave.pornType smut. Who knows? Maybe one of them will want her all to herself?
+<</if>>
+
 <<if $activeSlave.devotion > 95>>
 	Her worshipfulness is a major positive
 <<elseif $activeSlave.devotion > 50>>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 4a5c5e1afae..86678e5703c 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1361,7 +1361,7 @@ Relationship rules: ''<span id="relationshipRules">$activeSlave.relationshipRule
 		<<if $studioFeed == 1>>
 			<br>
 			<<if $activeSlave.pornPrestige > 0>>
-				$He is known for $activeSlave.pornFameType porn and viewers demand nothing else from $him.
+				$He is known for $activeSlave.pornFameType porn<<if $activeSlave.pornPrestige > 1>> and viewers have grown to expect it from $him<</if>>.
 			<<elseif $activeSlave.pornFame < 1000>>
 				$He lacks the fame in porn needed to discern what $his feed is getting tagged as.
 			<<else>>
diff --git a/src/utility/assayWidgets.tw b/src/utility/assayWidgets.tw
index 8d252bb0955..8615dd404bb 100644
--- a/src/utility/assayWidgets.tw
+++ b/src/utility/assayWidgets.tw
@@ -158,7 +158,7 @@
 		<<set $beauty -= 6>>
 	<</if>>
 	<<elseif ($args[0].markings == "birthmark")>>
-	<<if ($args[0].prestige > 0)>>
+	<<if ($args[0].prestige > 0 || $args[0].pornPrestige > 1)>>
 		<<set $beauty += 4>>
 	<<else>>
 		<<set $beauty -= 4>>
@@ -1073,7 +1073,14 @@
 <</if>>
 
 <<if $args[0].prestige > 0>>
-	<<set $beauty = $beauty+($beauty*$args[0].prestige*0.1)>>
+	<<set $beauty += ($beauty*$args[0].prestige*0.5)>>
+<</if>>
+<<if $args[0].pornPrestige == 3>>
+	<<set $beauty += ($beauty*1.0)>>
+<<elseif $args[0].pornPrestige == 2>>
+	<<set $beauty += ($beauty*0.5)>>
+<<elseif $args[0].pornPrestige == 1>>
+	<<set $beauty += ($beauty*0.1)>>
 <</if>>
 
 <<if $args[0].breedingMark == 1>>
@@ -1335,6 +1342,13 @@
 <<if $args[0].prestige > 0>>
 	<<set _slaveMultiplier += 0.7*$args[0].prestige>>
 <</if>>
+<<if $args[0].pornPrestige == 3>>
+	<<set _slaveMultiplier += 1.5>>
+<<elseif $args[0].pornPrestige == 2>>
+	<<set _slaveMultiplier += 0.7>>
+<<elseif $args[0].pornPrestige == 1>>
+	<<set _slaveMultiplier += 0.2>>
+<</if>>
 
 <<if $specialSlavesPriceOverride == 1>>
 	<<if $args[0].devotion >= 50>>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 898bdef4ac6..b13565327f2 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -4624,7 +4624,7 @@ $His
 	<<if $activeSlave.face < -95>>
 	disturbingly androgynous and terribly ugly.
 	<<elseif $activeSlave.face < -40>>
-	ugly and androgynous; $he has neither masculine or feminine appeal.
+	ugly and androgynous; $he has neither masculine nor feminine appeal.
 	<<elseif $activeSlave.face < -10>>
 	strangely androgynous, and rather unattractive.
 	<<elseif ($activeSlave.face <= 10)>>
diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw
index 8f555d878e1..1f7f39dee48 100644
--- a/src/utility/slaveCreationWidgets.tw
+++ b/src/utility/slaveCreationWidgets.tw
@@ -3003,6 +3003,7 @@
 	<<if $activeSlave.vagina != -1>>
 		<<set $activeSlave.vaginalSkill = 0>>
 		<<set $activeSlave.vagina = 0>>
+		<<set $activeSlave.trueVirgin = 1>>
 		<<set $activeSlave.preg = 0>>
 		<<run SetBellySize($activeSlave)>>
 	<</if>>
@@ -3026,6 +3027,7 @@
 		<<if random(1,2) == 1>>
 		<<set $activeSlave.vaginalSkill = 0>>
 		<<set $activeSlave.vagina = 0>>
+		<<set $activeSlave.trueVirgin = 1>>
 		<<set $activeSlave.preg = 0>>
 		<<run SetBellySize($activeSlave)>>
 		<</if>>
@@ -3093,6 +3095,7 @@
 		<<set $activeSlave.origin = "You bought her fresh from the Slavegirl School right after her majority.">>
 		<<set $activeSlave.anus = 0>>
 		<<set $activeSlave.vagina = 0>>
+		<<set $activeSlave.trueVirgin = 1>>
 		<<set $activeSlave.birthWeek = 0>>
 	<</if>>
 	<<set $activeSlave.intelligenceImplant = 1>>
@@ -3366,6 +3369,7 @@
 		<<set $activeSlave.lactationAdaptation = 0>>
 		<<set $activeSlave.anus = 0>>
 		<<set $activeSlave.vagina = 0>>
+		<<set $activeSlave.trueVirgin = 1>>
 		<<set $activeSlave.vaginaLube = either(1, 1, 2)>>
 		<<set $activeSlave.intelligenceImplant = 0>>
 		<<set $activeSlave.devotion = -20>>
@@ -3716,6 +3720,7 @@
 	<<set $activeSlave.hStyle = "neat">>
 	<<set $activeSlave.hLength = 150>>
 	<<set $activeSlave.customTat = "She has a simple pink heart tattooed on her right temple.">>
+	<<set $activeSlave.trueVirgin = 1>>
 
 <<case HA>>
 	<<set $activeSlaveOneTimeMinAge = 22>>
-- 
GitLab


From 110e7f6b63e80069ed7be7131a14362bf7e64123 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 23 Jul 2018 19:32:22 -0400
Subject: [PATCH 105/189] finalization

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |   1 +
 devNotes/twine JS.txt                        | 117 +++++++++++++++++++
 2 files changed, 118 insertions(+)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index e2520d338f9..913bf6133bb 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -4,6 +4,7 @@
 
 	1
 	-porn system overhaul
+	-added ability to track true virgins
 
 0.10.7.1-0.4.x
 
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 491da5552db..bb8567b50a1 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -23046,3 +23046,120 @@ window.removeActiveSlave = function removeActiveSlave() {
 		}
 	}
 };
+
+/*:: SA porn JS [script]*/
+
+/* to later be rolled into saPorn */
+
+window.getHighestPorn = function(slave) {
+
+	var max = {value: 0, type: "none"};
+	
+	if(slave.pornTypeGeneral > max.value){
+		max = {value: slave.pornTypeGeneral, type: "generic"};
+	}
+	if(slave.pornTypeFuckdoll > max.value){
+		max = {value: slave.pornTypeFuckdoll, type: "fuckdoll"};
+	}
+	if(slave.pornTypeRape > max.value){
+		max = {value: slave.pornTypeRape, type: "rape"};
+	}
+	if(slave.pornTypePreggo > max.value){
+		max = {value: slave.pornTypePreggo, type: "preggo"};
+	}
+	if(slave.pornTypeBBW > max.value){
+		max = {value: slave.pornTypeBBW, type: "BBW"};
+	}
+	if(slave.pornTypeGainer > max.value){
+		max = {value: slave.pornTypeGainer, type: "weight gain"};
+	}
+	if(slave.pornTypeStud > max.value){
+		max = {value: slave.pornTypeStud, type: "big dick"};
+	}
+	if(slave.pornTypeLoli > max.value){
+		max = {value: slave.pornTypeLoli, type: "underage"};
+	}
+	if(slave.pornTypeDeepThroat > max.value){
+		max = {value: slave.pornTypeDeepThroat, type: "deepthroat"};
+	}
+	if(slave.pornTypeStruggleFuck > max.value){
+		max = {value: slave.pornTypeStruggleFuck, type: "unwilling"};
+	}
+	if(slave.pornTypePainal > max.value){
+		max = {value: slave.pornTypePainal, type: "hardcore anal"};
+	}
+	if(slave.pornTypeTease > max.value){
+		max = {value: slave.pornTypeTease, type: "softcore"};
+	}
+	if(slave.pornTypeRomantic > max.value){
+		max = {value: slave.pornTypeRomantic, type: "romantic"};
+	}
+	if(slave.pornTypePervert > max.value){
+		max = {value: slave.pornTypePervert, type: "really perverted"};
+	}
+	if(slave.pornTypeCaring > max.value){
+		max = {value: slave.pornTypeCaring, type: "voyeur"};
+	}
+	if(slave.pornTypeUnflinching > max.value){
+		max = {value: slave.pornTypeUnflinching, type: "unspeakable"};
+	}
+	if(slave.pornTypeSizeQueen > max.value){
+		max = {value: slave.pornTypeSizeQueen, type: "huge insertion"};
+	}
+	if(slave.pornTypeNeglectful > max.value){
+		max = {value: slave.pornTypeNeglectful, type: "orgasm denial"};
+	}
+	if(slave.pornTypeCumAddict > max.value){
+		max = {value: slave.pornTypeCumAddict, type: "cum addiction"};
+	}
+	if(slave.pornTypeAnalAddict > max.value){
+		max = {value: slave.pornTypeAnalAddict, type: "anal addiction"};
+	}
+	if(slave.pornTypeAttentionWhore > max.value){
+		max = {value: slave.pornTypeAttentionWhore, type: "exhibition"};
+	}
+	if(slave.pornTypeBreastGrowth > max.value){
+		max = {value: slave.pornTypeBreastGrowth, type: "breast expansion"};
+	}
+	if(slave.pornTypeAbusive > max.value){
+		max = {value: slave.pornTypeAbusive, type: "abuse"};
+	}
+	if(slave.pornTypeMalicious > max.value){
+		max = {value: slave.pornTypeMalicious, type: "sexual torture"};
+	}
+	if(slave.pornTypeSelfHating > max.value){
+		max = {value: slave.pornTypeSelfHating, type: "self hating"};
+	}
+	if(slave.pornTypeBreeder > max.value){
+		max = {value: slave.pornTypeBreeder, type: "breeder"};
+	}
+	if(slave.pornTypeSub > max.value){
+		max = {value: slave.pornTypeSub, type: "submissive"};
+	}
+	if(slave.pornTypeCumSlut > max.value){
+		max = {value: slave.pornTypeCumSlut, type: "cum"};
+	}
+	if(slave.pornTypeAnal > max.value){
+		max = {value: slave.pornTypeAnal, type: "buttslut"};
+	}
+	if(slave.pornTypeHumiliation > max.value){
+		max = {value: slave.pornTypeHumiliation, type: "humiliating"};
+	}
+	if(slave.pornTypeBoobs > max.value){
+		max = {value: slave.pornTypeBoobs, type: "breast"};
+	}
+	if(slave.pornTypeDom > max.value){
+		max = {value: slave.pornTypeDom, type: "dominant"};
+	}
+	if(slave.pornTypeSadist > max.value){
+		max = {value: slave.pornTypeSadist, type: "sadistic"};
+	}
+	if(slave.pornTypeMasochist > max.value){
+		max = {value: slave.pornTypeMasochist, type: "masochistic"};
+	}
+	if(slave.pornTypePregnancy > max.value){
+		max = {value: slave.pornTypePregnancy, type: "pregnancy fetish"};
+	}
+	
+	return max;
+}
\ No newline at end of file
-- 
GitLab


From c86df312c9146141c64f5a135108f20a8e2565e3 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Tue, 24 Jul 2018 04:02:12 -0400
Subject: [PATCH 106/189] fixes, cleanup and adjusting

---
 devNotes/twine JS.txt                  |   6 +-
 src/js/slaveSummaryWidgets.tw          |   6 +-
 src/pregmod/saPorn.tw                  | 514 +++++++++++++------------
 src/uncategorized/customSlave.tw       |   2 +-
 src/uncategorized/saLongTermEffects.tw |   2 +-
 src/uncategorized/slaveInteract.tw     |  13 +-
 6 files changed, 277 insertions(+), 266 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index bb8567b50a1..edbc37e345c 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -20331,13 +20331,13 @@ window.SlaveSummaryUncached = (function(){
 			} else {
 				r += `Amp`;
 			}
-			r += " ";
 		}
+		r += " ";
 		if (!canWalk(slave)) {
-			r += `Immob`;
+			r += ` Immob `;
 		}
 		if (slave.heels === 1) {
-			r += `Heel`;
+			r += ` Heel `;
 		}
 		r += `</span> `;
 	}
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 14f62e1de87..598c424813a 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -1996,13 +1996,13 @@ window.SlaveSummaryUncached = (function(){
 			} else {
 				r += `Amp`;
 			}
-			r += " ";
 		}
+		r += " ";
 		if (!canWalk(slave)) {
-			r += `Immob`;
+			r += ` Immob `;
 		}
 		if (slave.heels === 1) {
-			r += `Heel`;
+			r += ` Heel `;
 		}
 		r += `</span> `;
 	}
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index 14e753a84fe..734eb491ce2 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -1,22 +1,27 @@
 :: SA Porn [nobr]
 
 <<if $studio == 1 && $slaves[$i].pornFeed == 1>> /* content is being produced */
-
+	<<set $HackingSkillMultiplier = HSM()>>
+	
 	/* rate of decay*/
-	<<if $slaves[$i].pornPrestige > 1>> /* 75k */
+	<<if $slaves[$i].pornPrestige > 1>> /* 20k */
 		<<set _decayRate = 5000>>
-		<<set _viewership = (500/$HackingSkillMultiplier) + ($slaves[$i].pornFameSpending) + ($slaves[$i].face*2) + ($slaves[$i].prestige*10) - _decayRate>>
-	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
+		<<set _viewership = ((500/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending)+($slaves[$i].face*2)+($slaves[$i].prestige*10)-(_decayRate))>>
+	<<elseif $slaves[$i].pornPrestige > 0>> /* 5k */
 		<<set _decayRate = 500>>
-		<<set _viewership = (150/$HackingSkillMultiplier) + ($slaves[$i].pornFameSpending/100) + ($slaves[$i].face) + ($slaves[$i].prestige*50) - _decayRate>>
+		<<set _viewership = ((150/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/100)+($slaves[$i].face)+($slaves[$i].prestige*50)-(_decayRate))>>
 	<<else>>
 		<<set _decayRate = 30>>
-		<<set _viewership = (50/$HackingSkillMultiplier) + ($slaves[$i].pornFameSpending/1000) + ($slaves[$i].face/20) + ($slaves[$i].prestige*10) - _decayRate>>
+		<<set _viewership = ((50/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/1000)+($slaves[$i].face/20)+($slaves[$i].prestige*10)-(_decayRate))>>
 	<</if>>
 	<<set _viewerSoaking = 1>>
-	<<set_viewership = Math.trunc(_viewership)>>
+	<<set _viewership = Math.trunc(_viewership)>>
 	<<set _oldFame = $slaves[$i].pornFame>>
 	
+	The studio regularly releases clips of $possessive daily affairs.
+	
+	<<if $cheatMode == 1>>Decay: _decayRate Viewership: _viewership Last week's fame: _oldFame<</if>>
+	
 	<<if $slaves[$i].pornPrestige > 1>>
 		$pronounCap is widely regarded in $slaves[$i].pornFameType porn, but with so many watchers, turn over is high.
 	<<elseif $slaves[$i].pornPrestige > 0>>
@@ -72,15 +77,15 @@
 		<<if $slaves[$i].pornFocus == "neglectful" || $slaves[$i].pornFameType == "orgasm denial">>
 			$possessiveCap lack of interest in getting off <<print $object>>self, even when at the verge of climax, makes $object a hit with viewers that enjoy orgasm denial.
 			<<if $slaves[$i].pornTypeNeglectful > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeNeglectful < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
-	<<elseif slaves[$i].pornTypeNeglectful > 0>>
+	<<elseif $slaves[$i].pornTypeNeglectful > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeNeglectful>><</if>>
 		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
@@ -99,15 +104,15 @@
 		<<if $slaves[$i].pornFocus == "cum addict" || $slaves[$i].pornFameType == "bukkake">>
 			$possessiveCap complete obsession with cum makes $object a hit with viewers that enjoy bukkake and cum drinking.
 			<<if $slaves[$i].pornTypeCumAddict > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCumAddict < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
-	<<elseif slaves[$i].pornTypeCumAddict > 0>>
+	<<elseif $slaves[$i].pornTypeCumAddict > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumAddict>><</if>>
 		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
@@ -126,15 +131,15 @@
 		<<if $slaves[$i].sexualFlaw == "anal addict" || $slaves[$i].pornFameType == "anal addiction">>
 			$possessiveCap complete obsession with taking things up $possessive ass makes $object a hit with viewers that enjoy hardcore anal.
 			<<if $slaves[$i].pornTypeAnalAddict > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAnalAddict < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
-	<<elseif slaves[$i].pornTypeAnalAddict > 0>>
+	<<elseif $slaves[$i].pornTypeAnalAddict > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnalAddict>><</if>>
 		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
@@ -153,15 +158,15 @@
 		<<if $slaves[$i].pornFocus == "attention whore" || $slaves[$i].pornFameType == "exhibition">>
 			$possessiveCap complete obsession with being the center of attention makes $object a hit with viewers that savor $possessive frequent exhibitionism.
 			<<if $slaves[$i].pornTypeAttentionWhore > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAttentionWhore < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
-	<<elseif slaves[$i].pornTypeAttentionWhore > 0>>
+	<<elseif $slaves[$i].pornTypeAttentionWhore > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAttentionWhore>><</if>>
 		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
@@ -180,15 +185,15 @@
 		<<if $slaves[$i].pornFocus == "breast growth" || $slaves[$i].pornFameType == "breast expansion">>
 			$possessiveCap complete obsession with the ever increasing size of $possessive tits makes $object a hit with viewers that enjoy enormous knockers and breast expansion.
 			<<if $slaves[$i].pornTypeBreastGrowth > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBreastGrowth < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
-	<<elseif slaves[$i].pornTypeBreastGrowth > 0>>
+	<<elseif $slaves[$i].pornTypeBreastGrowth > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreastGrowth>><</if>>
 		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
@@ -207,15 +212,15 @@
 		<<if $slaves[$i].pornFocus == "abusive" || $slaves[$i].pornFameType == "abuse">>
 			$possessiveCap wanton enjoyment of pleasure through force amuses viewers that enjoy rape and abuse.
 			<<if $slaves[$i].pornTypeAbusive > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAbusive < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
-	<<elseif slaves[$i].pornTypeAbusive > 0>>
+	<<elseif $slaves[$i].pornTypeAbusive > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAbusive>><</if>>
 		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
@@ -234,15 +239,15 @@
 		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "sexual torture">>
 			$possessiveCap sexual appetite of other's suffering makes $object a hit with viewers that enjoy sadism and violence.
 			<<if $slaves[$i].pornTypeMalicious > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeMalicious < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
-	<<elseif slaves[$i].pornTypeMalicious > 0>>
+	<<elseif $slaves[$i].pornTypeMalicious > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMalicious>><</if>>
 		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
@@ -261,15 +266,15 @@
 		<<if $slaves[$i].pornFocus == "self hating" || $slaves[$i].pornFameType == "self hating">>
 			$possessiveCap complete disregard for $possessive own wellbeing makes $object a hit with viewers that enjoy watching $object suffer.
 			<<if $slaves[$i].pornTypeSelfHating > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSelfHating < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
-	<<elseif slaves[$i].pornTypeSelfHating > 0>>
+	<<elseif $slaves[$i].pornTypeSelfHating > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSelfHating>><</if>>
 		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
@@ -288,15 +293,15 @@
 		<<if $slaves[$i].pornFocus == "breeder" || $slaves[$i].pornFameType == "breeder">>
 			$possessiveCap complete obsession with getting and staying pregnant makes $object a hit with viewers with all manner of pregnancy fetish, but particularly resonates with those as focused on it as $pronoun is.
 			<<if $slaves[$i].pornTypeBreeder > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBreeder < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
-	<<elseif slaves[$i].pornTypeBreeder > 0>>
+	<<elseif $slaves[$i].pornTypeBreeder > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreeder>><</if>>
 		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
@@ -317,15 +322,15 @@
 		<<if $slaves[$i].pornFocus == "submissive" || $slaves[$i].pornFameType == "submissive">>
 			With $possessive submissive streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeSub > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSub < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
-	<<elseif slaves[$i].pornTypeSub > 0>>
+	<<elseif $slaves[$i].pornTypeSub > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSub>><</if>>
 		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
@@ -344,15 +349,15 @@
 		<<if $slaves[$i].pornFocus == "cumslut" || $slaves[$i].pornFameType == "cum">>
 			With $possessive taste for cum, $pronoun has a clear advantage when it comes to ejaculate-based smut.
 			<<if $slaves[$i].pornTypeCumSlut > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCumSlut < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
-	<<elseif slaves[$i].pornTypeCumSlut > 0>>
+	<<elseif $slaves[$i].pornTypeCumSlut > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumSlut>><</if>>
 		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
@@ -371,15 +376,15 @@
 		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "buttslut">>
 			With $possessive fetish for asses, $pronoun finds in the company of viewers that love rear ends.
 			<<if $slaves[$i].pornTypeAnal > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAnal < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Buttslut: (_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
-	<<elseif slaves[$i].pornTypeAnal > 0>>
+	<<elseif $slaves[$i].pornTypeAnal > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnal>><</if>>
 		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
@@ -398,15 +403,15 @@
 		<<if $slaves[$i].pornFocus == "humiliation" || $slaves[$i].pornFameType == "humiliating">>
 			With $possessive fetish for humiliation, $pronoun has a clear advantage when it comes to demeaning smut.
 			<<if $slaves[$i].pornTypeHumiliation > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeHumiliation < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
-	<<elseif slaves[$i].pornTypeHumiliation > 0>>
+	<<elseif $slaves[$i].pornTypeHumiliation > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeHumiliation>><</if>>
 		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
@@ -425,15 +430,15 @@
 		<<if $slaves[$i].pornFocus == "boobs" || $slaves[$i].pornFameType == "breast">>
 			With $possessive fetish for tits, $pronoun has a clear advantage when it comes to breast focused smut.
 			<<if $slaves[$i].pornTypeBoobs > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBoobs < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
-	<<elseif slaves[$i].pornTypeBoobs > 0>>
+	<<elseif $slaves[$i].pornTypeBoobs > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBoobs>><</if>>
 		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
@@ -452,15 +457,15 @@
 		<<if $slaves[$i].pornFocus == "dom" || $slaves[$i].pornFameType == "dominant">>
 			With $possessive dominant streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeDom > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeDom < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
-	<<elseif slaves[$i].pornTypeDom > 0>>
+	<<elseif $slaves[$i].pornTypeDom > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDom>><</if>>
 		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
@@ -479,15 +484,15 @@
 		<<if $slaves[$i].pornFocus == "sadist" || $slaves[$i].pornFameType == "sadistic">>
 			With $possessive sadistic streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeSadist > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSadist < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
-	<<elseif slaves[$i].pornTypeSadist > 0>>
+	<<elseif $slaves[$i].pornTypeSadist > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSadist>><</if>>
 		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
@@ -506,15 +511,15 @@
 		<<if $slaves[$i].pornFocus == "masochist" || $slaves[$i].pornFameType == "masochistic">>
 			With $possessive masochistic streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeMasochist > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeMasochist < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
-	<<elseif slaves[$i].pornTypeMasochist > 0>>
+	<<elseif $slaves[$i].pornTypeMasochist > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMasochist>><</if>>
 		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
@@ -533,15 +538,15 @@
 		<<if $slaves[$i].pornFocus == "pregnancy" || $slaves[$i].pornFameType == "pregnancy fetish">>
 			With $possessive fetish for all things pregnancy, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypePregnancy > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePregnancy < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
-	<<elseif slaves[$i].pornTypePregnancy > 0>>
+	<<elseif $slaves[$i].pornTypePregnancy > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePregnancy>><</if>>
 		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
@@ -563,15 +568,15 @@
 		<<if $slaves[$i].pornFocus == "fuckdoll" || $slaves[$i].pornFameType == "fuckdoll">>
 			$possessiveCap latex encased body attracts a variety of viewers with tastes ranging from bondage to dolls.
 			<<if $slaves[$i].pornTypeFuckdoll > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeFuckdoll < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
-	<<elseif slaves[$i].pornTypeFuckdoll > 0>>
+	<<elseif $slaves[$i].pornTypeFuckdoll > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeFuckdoll>><</if>>
 		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
@@ -590,15 +595,15 @@
 		<<if $slaves[$i].pornFocus == "rape" || $slaves[$i].pornFameType == "rape">>
 			$pronounCap is too unbroken for consensual sex, but $possessive viewers wouldn't want it any other way.
 			<<if $slaves[$i].pornTypeRape > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeRape < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
-	<<elseif slaves[$i].pornTypeRape > 0>>
+	<<elseif $slaves[$i].pornTypeRape > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRape>><</if>>
 		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
@@ -617,15 +622,15 @@
 		<<if $slaves[$i].pornFocus == "preggo" || $slaves[$i].pornFameType == "preggo">>
 			$possessiveCap gravid swell may be a turn off to some, but the maiesiophiliacs love it.
 			<<if $slaves[$i].pornTypePreggo > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePreggo < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
-	<<elseif slaves[$i].pornTypePreggo > 0>>
+	<<elseif $slaves[$i].pornTypePreggo > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePreggo>><</if>>
 		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
@@ -644,15 +649,15 @@
 		<<if $slaves[$i].pornFocus == "BBW" || $slaves[$i].pornFameType == "BBW">>
 			$possessiveCap weight gives $object a heavy allure to the chubby chasers and BBS lovers out there.
 			<<if $slaves[$i].pornTypeBBW > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBBW < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
-	<<elseif slaves[$i].pornTypeBBW > 0>>
+	<<elseif $slaves[$i].pornTypeBBW > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBBW>><</if>>
 		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
@@ -671,15 +676,15 @@
 		<<if $slaves[$i].pornFocus == "loli" || $slaves[$i].pornFameType == "underage">>
 			$possessiveCap young age gives $object a dangerous edge and a number of careful viewers.
 			<<if $slaves[$i].pornTypeLoli > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeLoli < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
-	<<elseif slaves[$i].pornTypeLoli > 0>>
+	<<elseif $slaves[$i].pornTypeLoli > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeLoli>><</if>>
 		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
@@ -698,15 +703,15 @@
 		<<if $slaves[$i].pornFocus == "gainer" || $slaves[$i].pornFameType == "weight gain">>
 			$possessiveCap expanding waistline attracts those who enjoy seeing a girl pack on the pounds while stuffing $possessive face.
 			<<if $slaves[$i].pornTypeGainer > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeGainer < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
-	<<elseif slaves[$i].pornTypeGainer > 0>>
+	<<elseif $slaves[$i].pornTypeGainer > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGainer>><</if>>
 		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
@@ -725,15 +730,15 @@
 		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "big dick">>
 			$possessiveCap powerful erection excites those who see it, especially when it is put to good use.
 			<<if $slaves[$i].pornTypeStud > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeStud < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
-	<<elseif slaves[$i].pornTypeStud > 0>>
+	<<elseif $slaves[$i].pornTypeStud > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStud>><</if>>
 		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
@@ -746,7 +751,7 @@
 	<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGeneral>><</if>>
 	<<set $slaves[$i].pornTypeGeneral += (_adjustedViewership/_viewerSoaking)-((_decayRate/10)*($pornStars-1))>>
 	<<set $slaves[$i].pornTypeGeneral = Math.clamp($slaves[$i].pornTypeGeneral, 0, 100000)>>
-	<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeGeneral).<</if>>
+	<<if $cheatMode == 1>>General: (_oldPorn) to ($slaves[$i].pornTypeGeneral).<</if>>
 
 	/*Quirks are low and unlikely, requiring focus to push into the limelight*/
 	<<if $slaves[$i].sexualQuirk == "gagfuck queen">>
@@ -762,15 +767,15 @@
 		<<if $slaves[$i].pornFocus == "gagfuck queen" || $slaves[$i].pornFameType == "deepthroat">>
 			$possessiveCap impresses with just how much dick can slip down $possessive throat.
 			<<if $slaves[$i].pornTypeDeepThroat > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeDeepThroat < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
-	<<elseif slaves[$i].pornTypeDeepThroat > 0>>
+	<<elseif $slaves[$i].pornTypeDeepThroat > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDeepThroat>><</if>>
 		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
@@ -788,15 +793,15 @@
 		<<if $slaves[$i].pornFocus == "strugglefuck queen" || $slaves[$i].pornFameType == "unwilling">>
 			$possessiveCap impresses with $possessive ability to put up just the right amount of fight during sex.
 			<<if $slaves[$i].pornTypeStruggleFuck > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeStruggleFuck < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
-	<<elseif slaves[$i].pornTypeStruggleFuck > 0>>
+	<<elseif $slaves[$i].pornTypeStruggleFuck > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStruggleFuck>><</if>>
 		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
@@ -814,15 +819,15 @@
 		<<if $slaves[$i].pornFocus == "painal queen" || $slaves[$i].pornFameType == "hardcore anal">>
 			$possessiveCap impresses with $possessive ability to push $possessive anus to its limit.
 			<<if $slaves[$i].pornTypePainal > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePainal < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Painal Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
-	<<elseif slaves[$i].pornTypePainal > 0>>
+	<<elseif $slaves[$i].pornTypePainal > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePainal>><</if>>
 		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
@@ -840,15 +845,15 @@
 		<<if $slaves[$i].pornFocus == "tease" || $slaves[$i].pornFameType == "softcore">>
 			$possessiveCap tantalizes viewers with $possessive suggestive moves.
 			<<if $slaves[$i].pornTypeTease > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeTease < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
-	<<elseif slaves[$i].pornTypeTease > 0>>
+	<<elseif $slaves[$i].pornTypeTease > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeTease>><</if>>
 		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
@@ -866,15 +871,15 @@
 		<<if $slaves[$i].pornFocus == "romantic" || $slaves[$i].pornFameType == "romantic">>
 			$possessiveCap draws viewers in with $possessive genuine pleasure.
 			<<if $slaves[$i].pornTypeRomantic > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeRomantic < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
-	<<elseif slaves[$i].pornTypeRomantic > 0>>
+	<<elseif $slaves[$i].pornTypeRomantic > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRomantic>><</if>>
 		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
@@ -892,15 +897,15 @@
 		<<if $slaves[$i].pornFocus == "perverted" || $slaves[$i].pornFameType == "really perverted">>
 			$possessiveCap perverted tastes shocks and allures viewers in ways they didn't even realize.
 			<<if $slaves[$i].pornTypePervert > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePervert < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
-	<<elseif slaves[$i].pornTypePervert > 0>>
+	<<elseif $slaves[$i].pornTypePervert > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePervert>><</if>>
 		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
@@ -918,15 +923,15 @@
 		<<if $slaves[$i].pornFocus == "caring" || $slaves[$i].pornFameType == "voyeur">>
 			$possessiveCap sincere devotion to $possessive partner's pleasure draws in viewers with an interest in watching couples fuck.
 			<<if $slaves[$i].pornTypeCaring > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCaring < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
-	<<elseif slaves[$i].pornTypeCaring > 0>>
+	<<elseif $slaves[$i].pornTypeCaring > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCaring>><</if>>
 		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
@@ -944,15 +949,15 @@
 		<<if $slaves[$i].pornFocus == "unflinching" || $slaves[$i].pornFameType == "unspeakable">>
 			$possessiveCap willingness to do anything catches the attention of those who enjoy acts that should never be mentioned to others.
 			<<if $slaves[$i].pornTypeUnflinching > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeUnflinching < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
-	<<elseif slaves[$i].pornTypeUnflinching > 0>>
+	<<elseif $slaves[$i].pornTypeUnflinching > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeUnflinching>><</if>>
 		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
@@ -970,15 +975,15 @@
 		<<if $slaves[$i].pornFocus == "size queen" || $slaves[$i].pornFameType == "huge insertion">>
 			$possessiveCap intent on taking the largest things possible into her holes draws in viewers with an interest for huge insertions.
 			<<if $slaves[$i].pornTypeSizeQueen > _oldPorn>>
-				Viewship @@.green:increased@@ this week.
+				Viewship @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSizeQueen < _oldPorn>>
-				Viewship @@.red:declined@@ this week.
+				Viewship @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow:was stable@@ this week.
+				Viewship @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
-	<<elseif slaves[$i].pornTypeSizeQueen > 0>>
+	<<elseif $slaves[$i].pornTypeSizeQueen > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSizeQueen>><</if>>
 		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
@@ -990,9 +995,12 @@
 	
 
 	<<if _oldFame > $slaves[$i].pornFame>>
-		Overall, $possessive online fame @@.red:dropped@@ this week.
+		Overall, $possessive online fame @@.red;dropped@@ this week.
 	<<elseif _oldFame < $slaves[$i].pornFame>>
-		Overall, $possessive online fame @@.green:rose@@ this week.
+		Overall, $possessive online fame @@.green;rose@@ this week.
+		<<if _oldFame < 1000 && $slaves[$i].pornFame >= 1000 && $studioFeed == 1>>
+			$pronounCap @@.yellow;has accrued enough views to warrant specialization.@@
+		<</if>>
 	<<elseif $slaves[$i].pornFame != 0>>
 		Surprisingly, $possessive online fame @@.yellow;remained consistant@@ this week despite how fickle watchers can be.
 	<<else>>
@@ -1010,43 +1018,43 @@
 	
 	/* prestige gen */
 	
-	<<if $slaves[$i].pornPrestige == 0 && $slaves[$i].pornFame >= 10000>>
+	<<if $slaves[$i].pornPrestige == 0 && $slaves[$i].pornFame >= 5000>>
 		<<set _pornFameGrabBag = []>>
-		<<if $slaves[$i].pornTypeGeneral >= 10000>><<set _pornFameGrabBag.push("generic")>><</if>>
-		<<if $slaves[$i].pornTypeFuckdoll >= 10000>><<set _pornFameGrabBag.push("fuckdoll")>><</if>>
-		<<if $slaves[$i].pornTypeRape >= 10000>><<set _pornFameGrabBag.push("rape")>><</if>>
-		<<if $slaves[$i].pornTypePreggo >= 10000>><<set _pornFameGrabBag.push("preggo")>><</if>>
-		<<if $slaves[$i].pornTypeBBW >= 10000>><<set _pornFameGrabBag.push("BBW")>><</if>>
-		<<if $slaves[$i].pornTypeGainer >= 10000>><<set _pornFameGrabBag.push("weight gain")>><</if>>
-		<<if $slaves[$i].pornTypeStud >= 10000>><<set _pornFameGrabBag.push("big dick")>><</if>>
-		<<if $slaves[$i].pornTypeLoli >= 10000>><<set _pornFameGrabBag.push("underage")>><</if>>
-		<<if $slaves[$i].pornTypeDeepThroat >= 10000>><<set _pornFameGrabBag.push("deepthroat")>><</if>>
-		<<if $slaves[$i].pornTypeStruggleFuck >= 10000>><<set _pornFameGrabBag.push("unwilling")>><</if>>
-		<<if $slaves[$i].pornTypePainal >= 10000>><<set _pornFameGrabBag.push("hardcore anal")>><</if>>
-		<<if $slaves[$i].pornTypeTease >= 10000>><<set _pornFameGrabBag.push("softcore")>><</if>>
-		<<if $slaves[$i].pornTypeRomantic >= 10000>><<set _pornFameGrabBag.push("romantic")>><</if>>
-		<<if $slaves[$i].pornTypePervert >= 10000>><<set _pornFameGrabBag.push("really perverted")>><</if>>
-		<<if $slaves[$i].pornTypeCaring >= 10000>><<set _pornFameGrabBag.push("voyeur")>><</if>>
-		<<if $slaves[$i].pornTypeUnflinching >= 10000>><<set _pornFameGrabBag.push("unspeakable")>><</if>>
-		<<if $slaves[$i].pornTypeSizeQueen >= 10000>><<set _pornFameGrabBag.push("huge insertion")>><</if>>
-		<<if $slaves[$i].pornTypeNeglectful >= 10000>><<set _pornFameGrabBag.push("orgasm denial")>><</if>>
-		<<if $slaves[$i].pornTypeCumAddict >= 10000>><<set _pornFameGrabBag.push("cum addiction")>><</if>>
-		<<if $slaves[$i].pornTypeAnalAddict >= 10000>><<set _pornFameGrabBag.push("anal addiction")>><</if>>
-		<<if $slaves[$i].pornTypeAttentionWhore >= 10000>><<set _pornFameGrabBag.push("exhibition")>><</if>>
-		<<if $slaves[$i].pornTypeBreastGrowth >= 10000>><<set _pornFameGrabBag.push("breast expansion")>><</if>>
-		<<if $slaves[$i].pornTypeAbusive >= 10000>><<set _pornFameGrabBag.push("abuse")>><</if>>
-		<<if $slaves[$i].pornTypeMalicious >= 10000>><<set _pornFameGrabBag.push("sexual torture")>><</if>>
-		<<if $slaves[$i].pornTypeSelfHating >= 10000>><<set _pornFameGrabBag.push("self hating")>><</if>>
-		<<if $slaves[$i].pornTypeBreeder >= 10000>><<set _pornFameGrabBag.push("breeder")>><</if>>
-		<<if $slaves[$i].pornTypeSub >= 10000>><<set _pornFameGrabBag.push("submissive")>><</if>>
-		<<if $slaves[$i].pornTypeCumSlut >= 10000>><<set _pornFameGrabBag.push("cum")>><</if>>
-		<<if $slaves[$i].pornTypeAnal >= 10000>><<set _pornFameGrabBag.push("buttslut")>><</if>>
-		<<if $slaves[$i].pornTypeHumiliation >= 10000>><<set _pornFameGrabBag.push("humiliating")>><</if>>
-		<<if $slaves[$i].pornTypeBoobs >= 10000>><<set _pornFameGrabBag.push("breast")>><</if>>
-		<<if $slaves[$i].pornTypeDom >= 10000>><<set _pornFameGrabBag.push("dominant")>><</if>>
-		<<if $slaves[$i].pornTypeSadist >= 10000>><<set _pornFameGrabBag.push("sadistic")>><</if>>
-		<<if $slaves[$i].pornTypeMasochist >= 10000>><<set _pornFameGrabBag.push("masochistic")>><</if>>
-		<<if $slaves[$i].pornTypePregnancy >= 10000>><<set _pornFameGrabBag.push("pregnancy fetish")>><</if>>
+		<<if $slaves[$i].pornTypeGeneral >= 5000>><<set _pornFameGrabBag.push("generic")>><</if>>
+		<<if $slaves[$i].pornTypeFuckdoll >= 5000>><<set _pornFameGrabBag.push("fuckdoll")>><</if>>
+		<<if $slaves[$i].pornTypeRape >= 5000>><<set _pornFameGrabBag.push("rape")>><</if>>
+		<<if $slaves[$i].pornTypePreggo >= 5000>><<set _pornFameGrabBag.push("preggo")>><</if>>
+		<<if $slaves[$i].pornTypeBBW >= 5000>><<set _pornFameGrabBag.push("BBW")>><</if>>
+		<<if $slaves[$i].pornTypeGainer >= 5000>><<set _pornFameGrabBag.push("weight gain")>><</if>>
+		<<if $slaves[$i].pornTypeStud >= 5000>><<set _pornFameGrabBag.push("big dick")>><</if>>
+		<<if $slaves[$i].pornTypeLoli >= 5000>><<set _pornFameGrabBag.push("underage")>><</if>>
+		<<if $slaves[$i].pornTypeDeepThroat >= 5000>><<set _pornFameGrabBag.push("deepthroat")>><</if>>
+		<<if $slaves[$i].pornTypeStruggleFuck >= 5000>><<set _pornFameGrabBag.push("unwilling")>><</if>>
+		<<if $slaves[$i].pornTypePainal >= 5000>><<set _pornFameGrabBag.push("hardcore anal")>><</if>>
+		<<if $slaves[$i].pornTypeTease >= 5000>><<set _pornFameGrabBag.push("softcore")>><</if>>
+		<<if $slaves[$i].pornTypeRomantic >= 5000>><<set _pornFameGrabBag.push("romantic")>><</if>>
+		<<if $slaves[$i].pornTypePervert >= 5000>><<set _pornFameGrabBag.push("really perverted")>><</if>>
+		<<if $slaves[$i].pornTypeCaring >= 5000>><<set _pornFameGrabBag.push("voyeur")>><</if>>
+		<<if $slaves[$i].pornTypeUnflinching >= 5000>><<set _pornFameGrabBag.push("unspeakable")>><</if>>
+		<<if $slaves[$i].pornTypeSizeQueen >= 5000>><<set _pornFameGrabBag.push("huge insertion")>><</if>>
+		<<if $slaves[$i].pornTypeNeglectful >= 5000>><<set _pornFameGrabBag.push("orgasm denial")>><</if>>
+		<<if $slaves[$i].pornTypeCumAddict >= 5000>><<set _pornFameGrabBag.push("cum addiction")>><</if>>
+		<<if $slaves[$i].pornTypeAnalAddict >= 5000>><<set _pornFameGrabBag.push("anal addiction")>><</if>>
+		<<if $slaves[$i].pornTypeAttentionWhore >= 5000>><<set _pornFameGrabBag.push("exhibition")>><</if>>
+		<<if $slaves[$i].pornTypeBreastGrowth >= 5000>><<set _pornFameGrabBag.push("breast expansion")>><</if>>
+		<<if $slaves[$i].pornTypeAbusive >= 5000>><<set _pornFameGrabBag.push("abuse")>><</if>>
+		<<if $slaves[$i].pornTypeMalicious >= 5000>><<set _pornFameGrabBag.push("sexual torture")>><</if>>
+		<<if $slaves[$i].pornTypeSelfHating >= 5000>><<set _pornFameGrabBag.push("self hating")>><</if>>
+		<<if $slaves[$i].pornTypeBreeder >= 5000>><<set _pornFameGrabBag.push("breeder")>><</if>>
+		<<if $slaves[$i].pornTypeSub >= 5000>><<set _pornFameGrabBag.push("submissive")>><</if>>
+		<<if $slaves[$i].pornTypeCumSlut >= 5000>><<set _pornFameGrabBag.push("cum")>><</if>>
+		<<if $slaves[$i].pornTypeAnal >= 5000>><<set _pornFameGrabBag.push("buttslut")>><</if>>
+		<<if $slaves[$i].pornTypeHumiliation >= 5000>><<set _pornFameGrabBag.push("humiliating")>><</if>>
+		<<if $slaves[$i].pornTypeBoobs >= 5000>><<set _pornFameGrabBag.push("breast")>><</if>>
+		<<if $slaves[$i].pornTypeDom >= 5000>><<set _pornFameGrabBag.push("dominant")>><</if>>
+		<<if $slaves[$i].pornTypeSadist >= 5000>><<set _pornFameGrabBag.push("sadistic")>><</if>>
+		<<if $slaves[$i].pornTypeMasochist >= 5000>><<set _pornFameGrabBag.push("masochistic")>><</if>>
+		<<if $slaves[$i].pornTypePregnancy >= 5000>><<set _pornFameGrabBag.push("pregnancy fetish")>><</if>>
 		
 		<<if _pornFameGrabBag.length > 0>>
 			<<set $slaves[$i].pornFameType = _pornFameGrabBag.random()>>
@@ -1169,7 +1177,7 @@
 
 		<<switch $slaves[$i].pornFameType>>
 		<<case "generic">>
-			<<if $slaves[$i].pornTypeGeneral >= 10000>>
+			<<if $slaves[$i].pornTypeGeneral >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from her career in slave pornography. Her many fans relish the sight of her being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
@@ -1179,7 +1187,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "fuckdoll">>
-			<<if $slaves[$i].pornTypeFuckdoll >= 10000>>
+			<<if $slaves[$i].pornTypeFuckdoll >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "It is well known from its career in slave pornography. Its many fans relish the sight of it being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
@@ -1189,7 +1197,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "rape">>
-			<<if $slaves[$i].pornTypeRape >= 10000>>
+			<<if $slaves[$i].pornTypeRape >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her being raped.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being raped, so it is now prestigious to own $object.
@@ -1199,7 +1207,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "preggo">>
-			<<if $slaves[$i].pornTypePreggo >= 10000>>
+			<<if $slaves[$i].pornTypePreggo >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her swollen with child.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object swollen with child, so $pronoun is now prestigious to own $object.
@@ -1209,7 +1217,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "BBW">>
-			<<if $slaves[$i].pornTypeBBW >= 10000>>
+			<<if $slaves[$i].pornTypeBBW >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her thick, soft body.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive thick and soft body, so $pronoun is now prestigious to own $object.
@@ -1219,7 +1227,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "underage">>
-			<<if $slaves[$i].pornTypeLoli >= 10000>>
+			<<if $slaves[$i].pornTypeLoli >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her immature body.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive immature body, so $pronoun is now prestigious to own $object.
@@ -1229,7 +1237,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "weight gain">>
-			<<if $slaves[$i].pornTypeGainer >= 10000>>
+			<<if $slaves[$i].pornTypeGainer >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how curvy she's gotten.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how curvy <<print $pronoun>>'s gotten, so $pronoun is now prestigious to own $object.
@@ -1239,7 +1247,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "big dick">>
-			<<if $slaves[$i].pornTypeStud >= 10000>>
+			<<if $slaves[$i].pornTypeStud >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her heavy dick.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive heavy dick, so $pronoun is now prestigious to own $object.
@@ -1249,7 +1257,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "deepthroat">>
-			<<if $slaves[$i].pornTypeDeepThroat >= 10000>>
+			<<if $slaves[$i].pornTypeDeepThroat >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sounds $pronoun makes when being throatfucked, so $pronoun is now prestigious to own $object.
@@ -1259,7 +1267,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unwilling">>
-			<<if $slaves[$i].pornTypeStruggleFuck >= 10000>>
+			<<if $slaves[$i].pornTypeStruggleFuck >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how perfectly she struggles during sex.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how perfectly $pronoun struggles during sex, so $pronoun is now prestigious to own $object.
@@ -1269,7 +1277,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "hardcore anal">>
-			<<if $slaves[$i].pornTypePainal >= 10000>>
+			<<if $slaves[$i].pornTypePainal >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish watching her asshole pushed to its limit.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish watching $possessive asshole pushed to its limit, so $pronoun is now prestigious to own $object.
@@ -1279,7 +1287,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "softcore">>
-			<<if $slaves[$i].pornTypeTease >= 10000>>
+			<<if $slaves[$i].pornTypeTease >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her lewd striptease.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive lewd striptease, so $pronoun is now prestigious to own $object.
@@ -1289,7 +1297,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "romantic">>
-			<<if $slaves[$i].pornTypeRomantic >= 10000>>
+			<<if $slaves[$i].pornTypeRomantic >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the deep bond she shares with her partners.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners, so $pronoun is now prestigious to own $object.
@@ -1299,7 +1307,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "really perverted">>
-			<<if $slaves[$i].pornTypePervert >= 10000>>
+			<<if $slaves[$i].pornTypePervert >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the depths of her pervesions.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions, so $pronoun is now prestigious to own $object.
@@ -1309,7 +1317,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "voyeur">>
-			<<if $slaves[$i].pornTypeCaring >= 10000>>
+			<<if $slaves[$i].pornTypeCaring >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure, so $pronoun is now prestigious to own $object.
@@ -1319,7 +1327,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unspeakable">>
-			<<if $slaves[$i].pornTypeUnflinching >= 10000>>
+			<<if $slaves[$i].pornTypeUnflinching >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her willingness to do anything and everything.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything, so $pronoun is now prestigious to own $object.
@@ -1329,7 +1337,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "huge insertion">>
-			<<if $slaves[$i].pornTypeSizeQueen >= 10000>>
+			<<if $slaves[$i].pornTypeSizeQueen >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her holes filled to their limits.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits, so $pronoun is now prestigious to own $object.
@@ -1339,7 +1347,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "orgasm denial">>
-			<<if $slaves[$i].pornTypeNeglectful >= 10000>>
+			<<if $slaves[$i].pornTypeNeglectful >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her denying herself pleasure.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object denying <<print $object>>self pleasure, so $pronoun is now prestigious to own $object.
@@ -1349,7 +1357,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum addiction">>
-			<<if $slaves[$i].pornTypeCumAddict >= 10000>>
+			<<if $slaves[$i].pornTypeCumAddict >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for cum.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for cum, so $pronoun is now prestigious to own $object.
@@ -1359,7 +1367,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "anal addiction">>
-			<<if $slaves[$i].pornTypeAnalAddict >= 10000>>
+			<<if $slaves[$i].pornTypeAnalAddict >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for a dick up her ass.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for a dick up $possessive ass, so $pronoun is now prestigious to own $object.
@@ -1369,7 +1377,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "exhibition">>
-			<<if $slaves[$i].pornTypeAttentionWhore >= 10000>>
+			<<if $slaves[$i].pornTypeAttentionWhore >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for attention.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for attention, so $pronoun is now prestigious to own $object.
@@ -1379,7 +1387,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast expansion">>
-			<<if $slaves[$i].pornTypeBreastGrowth >= 10000>>
+			<<if $slaves[$i].pornTypeBreastGrowth >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her expanding bust.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive expanding bust, so $pronoun is now prestigious to own $object.
@@ -1389,7 +1397,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "abuse">>
-			<<if $slaves[$i].pornTypeAbusive >= 10000>>
+			<<if $slaves[$i].pornTypeAbusive >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her abusing others.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object abusing others, so $pronoun is now prestigious to own $object.
@@ -1399,7 +1407,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sexual torture">>
-			<<if $slaves[$i].pornTypeMalicious >= 10000>>
+			<<if $slaves[$i].pornTypeMalicious >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her getting off from the suffering she caused.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object getting off from the suffering $pronoun caused, so $pronoun is now prestigious to own $object.
@@ -1409,7 +1417,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "self hating">>
-			<<if $slaves[$i].pornTypeSelfHating >= 10000>>
+			<<if $slaves[$i].pornTypeSelfHating >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her suffering.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive suffering, so $pronoun is now prestigious to own $object.
@@ -1419,7 +1427,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breeder">>
-			<<if $slaves[$i].pornTypeBreeder >= 10000>>
+			<<if $slaves[$i].pornTypeBreeder >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her obsession with having children.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive obsession with having children, so $pronoun is now prestigious to own $object.
@@ -1429,7 +1437,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "submissive">>
-			<<if $slaves[$i].pornTypeSub >= 10000>>
+			<<if $slaves[$i].pornTypeSub >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her submissiveness.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive submissiveness, so $pronoun is now prestigious to own $object.
@@ -1439,7 +1447,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum">>
-			<<if $slaves[$i].pornTypeCumSlut >= 10000>>
+			<<if $slaves[$i].pornTypeCumSlut >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her desire for cum.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive desire for cum, so $pronoun is now prestigious to own $object.
@@ -1449,7 +1457,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "buttslut">>
-			<<if $slaves[$i].pornTypeAnal >= 10000>>
+			<<if $slaves[$i].pornTypeAnal >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her rear.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive rear, so $pronoun is now prestigious to own $object.
@@ -1459,7 +1467,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "humiliating">>
-			<<if $slaves[$i].pornTypeHumiliation >= 10000>>
+			<<if $slaves[$i].pornTypeHumiliation >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her frequent humiliation.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive frequent humiliation, so $pronoun is now prestigious to own $object.
@@ -1469,7 +1477,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast">>
-			<<if $slaves[$i].pornTypeBoobs >= 10000>>
+			<<if $slaves[$i].pornTypeBoobs >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her breasts.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive breasts, so $pronoun is now prestigious to own $object.
@@ -1479,7 +1487,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "dominant">>
-			<<if $slaves[$i].pornTypeDom >= 10000>>
+			<<if $slaves[$i].pornTypeDom >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her dominance.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive dominance, so $pronoun is now prestigious to own $object.
@@ -1489,7 +1497,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sadistic">>
-			<<if $slaves[$i].pornTypeSadist >= 10000>>
+			<<if $slaves[$i].pornTypeSadist >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her sadism.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive sadism, so $pronoun is now prestigious to own $object.
@@ -1499,7 +1507,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "masochistic">>
-			<<if $slaves[$i].pornTypeMasochist >= 10000>>
+			<<if $slaves[$i].pornTypeMasochist >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her masochism.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive masochism, so $pronoun is now prestigious to own $object.
@@ -1509,7 +1517,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "pregnancy fetish">>
-			<<if $slaves[$i].pornTypePregnancy >= 10000>>
+			<<if $slaves[$i].pornTypePregnancy >= 20000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her fondness for pregnancy.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive fondness for pregnancy, so $pronoun is now prestigious to own $object.
@@ -1529,7 +1537,7 @@
 			<<set $slaves[$i].pornFameType = "none">>
 		<</if>>
 		<<if _fameSwap == 1>>
-			$possessiveCap fame in $slaves[$i].pornFameType pornography has been overwhelmed by $possessive surging popularity in other aspects. @@.yellow;pronounCap is now better known for $possessive _topFame.type porn.@@
+			$possessiveCap fame in $slaves[$i].pornFameType pornography has been overwhelmed by $possessive surging popularity in other aspects. @@.yellow;$pronounCap is now better known for $possessive _topFame.type porn.@@
 			<<set $slaves[$i].pornFameType = _topFame.type>>
 			<<switch _topFame.type>>
 			<<case "generic">>
@@ -2066,180 +2074,180 @@
 		<<set _decayRate = 30>>
 	<</if>>
 
-	<<if slaves[$i].pornTypeNeglectful > 0>>
+	<<if $slaves[$i].pornTypeNeglectful > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeNeglectful>><</if>>
 		<<set $slaves[$i].pornTypeNeglectful = Math.clamp($slaves[$i].pornTypeNeglectful-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeCumAddict > 0>>
+	<<if $slaves[$i].pornTypeCumAddict > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumAddict>><</if>>
 		<<set $slaves[$i].pornTypeCumAddict = Math.clamp($slaves[$i].pornTypeCumAddict-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeAnalAddict > 0>>
+	<<if $slaves[$i].pornTypeAnalAddict > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnalAddict>><</if>>
 		<<set $slaves[$i].pornTypeAnalAddict = Math.clamp($slaves[$i].pornTypeAnalAddict-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeAttentionWhore > 0>>
+	<<if $slaves[$i].pornTypeAttentionWhore > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAttentionWhore>><</if>>
 		<<set $slaves[$i].pornTypeAttentionWhore = Math.clamp($slaves[$i].pornTypeAttentionWhore-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeBreastGrowth > 0>>
+	<<if $slaves[$i].pornTypeBreastGrowth > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreastGrowth>><</if>>
 		<<set $slaves[$i].pornTypeBreastGrowth = Math.clamp($slaves[$i].pornTypeBreastGrowth-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeAbusive > 0>>
+	<<if $slaves[$i].pornTypeAbusive > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAbusive>><</if>>
 		<<set $slaves[$i].pornTypeAbusive = Math.clamp($slaves[$i].pornTypeAbusive-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeMalicious > 0>>
+	<<if $slaves[$i].pornTypeMalicious > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMalicious>><</if>>
 		<<set $slaves[$i].pornTypeMalicious = Math.clamp($slaves[$i].pornTypeMalicious-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeSelfHating > 0>>
+	<<if $slaves[$i].pornTypeSelfHating > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSelfHating>><</if>>
 		<<set $slaves[$i].pornTypeSelfHating = Math.clamp($slaves[$i].pornTypeSelfHating-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeBreeder > 0>>
+	<<if $slaves[$i].pornTypeBreeder > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBreeder>><</if>>
 		<<set $slaves[$i].pornTypeBreeder = Math.clamp($slaves[$i].pornTypeBreeder-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
 	<</if>>
 
-	<<if slaves[$i].pornTypeSub > 0>>
+	<<if $slaves[$i].pornTypeSub > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSub>><</if>>
 		<<set $slaves[$i].pornTypeSub = Math.clamp($slaves[$i].pornTypeSub-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeCumSlut > 0>>
+	<<if $slaves[$i].pornTypeCumSlut > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCumSlut>><</if>>
 		<<set $slaves[$i].pornTypeCumSlut = Math.clamp($slaves[$i].pornTypeCumSlut-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeAnal > 0>>
+	<<if $slaves[$i].pornTypeAnal > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeAnal>><</if>>
 		<<set $slaves[$i].pornTypeAnal = Math.clamp($slaves[$i].pornTypeAnal-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeHumiliation > 0>>
+	<<if $slaves[$i].pornTypeHumiliation > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeHumiliation>><</if>>
 		<<set $slaves[$i].pornTypeHumiliation = Math.clamp($slaves[$i].pornTypeHumiliation-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeBoobs > 0>>
+	<<if $slaves[$i].pornTypeBoobs > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBoobs>><</if>>
 		<<set $slaves[$i].pornTypeBoobs = Math.clamp($slaves[$i].pornTypeBoobs-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeDom > 0>>
+	<<if $slaves[$i].pornTypeDom > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDom>><</if>>
 		<<set $slaves[$i].pornTypeDom = Math.clamp($slaves[$i].pornTypeDom-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeSadist > 0>>
+	<<if $slaves[$i].pornTypeSadist > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSadist>><</if>>
 		<<set $slaves[$i].pornTypeSadist = Math.clamp($slaves[$i].pornTypeSadist-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeMasochist > 0>>
+	<<if $slaves[$i].pornTypeMasochist > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeMasochist>><</if>>
 		<<set $slaves[$i].pornTypeMasochist = Math.clamp($slaves[$i].pornTypeMasochist-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypePregnancy > 0>>
+	<<if $slaves[$i].pornTypePregnancy > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePregnancy>><</if>>
 		<<set $slaves[$i].pornTypePregnancy = Math.clamp($slaves[$i].pornTypePregnancy-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
 	<</if>>
 
-	<<if slaves[$i].pornTypeFuckdoll > 0>>
+	<<if $slaves[$i].pornTypeFuckdoll > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeFuckdoll>><</if>>
 		<<set $slaves[$i].pornTypeFuckdoll = Math.clamp($slaves[$i].pornTypeFuckdoll-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeRape > 0>>
+	<<if $slaves[$i].pornTypeRape > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRape>><</if>>
 		<<set $slaves[$i].pornTypeRape = Math.clamp($slaves[$i].pornTypeRape-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypePreggo > 0>>
+	<<if $slaves[$i].pornTypePreggo > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePreggo>><</if>>
 		<<set $slaves[$i].pornTypePreggo = Math.clamp($slaves[$i].pornTypePreggo-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeBBW > 0>>
+	<<if $slaves[$i].pornTypeBBW > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeBBW>><</if>>
 		<<set $slaves[$i].pornTypeBBW = Math.clamp($slaves[$i].pornTypeBBW-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeLoli > 0>>
+	<<if $slaves[$i].pornTypeLoli > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeLoli>><</if>>
 		<<set $slaves[$i].pornTypeLoli = Math.clamp($slaves[$i].pornTypeLoli-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeGainer > 0>>
+	<<if $slaves[$i].pornTypeGainer > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGainer>><</if>>
 		<<set $slaves[$i].pornTypeGainer = Math.clamp($slaves[$i].pornTypeGainer-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeStud > 0>>
+	<<if $slaves[$i].pornTypeStud > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStud>><</if>>
 		<<set $slaves[$i].pornTypeStud = Math.clamp($slaves[$i].pornTypeStud-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeGeneral > 0>>
+	<<if $slaves[$i].pornTypeGeneral > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeGeneral>><</if>>
 		<<set $slaves[$i].pornTypeGeneral = Math.clamp($slaves[$i].pornTypeGeneral-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>(_oldPorn) to ($slaves[$i].pornTypeGeneral).<</if>>
 	<</if>>
 
-	<<if slaves[$i].pornTypeDeepThroat > 0>>
+	<<if $slaves[$i].pornTypeDeepThroat > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeDeepThroat>><</if>>
 		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeStruggleFuck > 0>>
+	<<if $slaves[$i].pornTypeStruggleFuck > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeStruggleFuck>><</if>>
 		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypePainal > 0>>
+	<<if $slaves[$i].pornTypePainal > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePainal>><</if>>
 		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeTease > 0>>
+	<<if $slaves[$i].pornTypeTease > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeTease>><</if>>
 		<<set $slaves[$i].pornTypeTease = Math.clamp($slaves[$i].pornTypeTease-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeRomantic > 0>>
+	<<if $slaves[$i].pornTypeRomantic > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeRomantic>><</if>>
 		<<set $slaves[$i].pornTypeRomantic = Math.clamp($slaves[$i].pornTypeRomantic-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypePervert > 0>>
+	<<if $slaves[$i].pornTypePervert > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypePervert>><</if>>
 		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeCaring > 0>>
+	<<if $slaves[$i].pornTypeCaring > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeCaring>><</if>>
 		<<set $slaves[$i].pornTypeCaring = Math.clamp($slaves[$i].pornTypeCaring-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeUnflinching > 0>>
+	<<if $slaves[$i].pornTypeUnflinching > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeUnflinching>><</if>>
 		<<set $slaves[$i].pornTypeUnflinching = Math.clamp($slaves[$i].pornTypeUnflinching-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
 	<</if>>
-	<<if slaves[$i].pornTypeSizeQueen > 0>>
+	<<if $slaves[$i].pornTypeSizeQueen > 0>>
 		<<if $cheatMode == 1>><<set _oldPorn = $slaves[$i].pornTypeSizeQueen>><</if>>
 		<<set $slaves[$i].pornTypeSizeQueen = Math.clamp($slaves[$i].pornTypeSizeQueen-(_decayRate*2), 0, 100000)>>
 		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
diff --git a/src/uncategorized/customSlave.tw b/src/uncategorized/customSlave.tw
index 36372f699dd..4f4dddbc593 100644
--- a/src/uncategorized/customSlave.tw
+++ b/src/uncategorized/customSlave.tw
@@ -604,7 +604,7 @@ Skin tone: <span id = "skin">
 <</link>>
 
 <br>
-<<if $seeDick > 0>>
+<<if $seeDicks > 0>>
 <span id = "dick">
 <<if $customSlave.dick == 0>>No penis.
 <<elseif $customSlave.dick == 2>>Small penis.
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 687045559e1..9f392bb165a 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -7673,7 +7673,7 @@
 		A number of gifts and donations totalling @@.yellowgreen;<<print cashFormat(_donations)>>@@ were also sent to $object, among other things.
 		<<set $cash += _donations>>
 	<</if>>
-<<elseif $slaves[$i].pornFame > 0>>
+<<elseif $slaves[$i].pornFeed > 0>>
 	<<include "SA Porn">>
 <</if>>
 
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 86678e5703c..7c32ec1dcee 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1340,7 +1340,8 @@ Relationship rules: ''<span id="relationshipRules">$activeSlave.relationshipRule
 <<link "Permissive">><<set $activeSlave.relationshipRules = "permissive">><<replace "#relationshipRules">>$activeSlave.relationshipRules<</replace>><</link>>
 
 <<if $studio == 1>>
-	<br><br>
+	
+	<br><br>__Media__:<br>
 	<<if $activeSlave.pornPrestige == 3>>
 		//$He is so prestigious in the realm of $activeSlave.pornFameType porn that $his fame is self-sustaining.//
 	<<elseif $activeSlave.pornFeed == 0>>
@@ -1348,16 +1349,18 @@ Relationship rules: ''<span id="relationshipRules">$activeSlave.relationshipRule
 	<<else>>
 		The media hub is releasing highlights of $his sex life <<if $activeSlave.pornFameSpending  < 500>>to those who can find it<<elseif $activeSlave.pornFameSpending  < 2500>>on several websites<<elseif $activeSlave.pornFameSpending  > 5000>>through your old distributor<<else>>on many websites<</if>>.
 		<<if $activeSlave.pornFameSpending == 0>>
-			[[Begin publicizing?|Slave Interact][$activeSlave.pornFameSpending += 1000]]
+			[[Halt|Slave Interact][$activeSlave.pornFeed = 0, $activeSlave.pornFocus = "none"]] |
+			[[Publicize|Slave Interact][$activeSlave.pornFameSpending += 1000]]
 			//Will cost <<print cashFormat(1000)>> weekly.//
 		<<else>>
 			<<print cashFormat($activeSlave.pornFameSpending)>> weekly is spent to publicize them.
+			[[Halt|Slave Interact][$activeSlave.pornFeed = 0, $activeSlave.pornFameSpending = 0, $activeSlave.pornFocus = "none"]] |
 			<<if $activeSlave.pornFameSpending < 5000>>
 				[[Increase|Slave Interact][$activeSlave.pornFameSpending += 1000]] |
 			<</if>>
-			[[Decrease|Slave Interact][$activeSlave.pornFameSpending -= 1000]] |
-			[[Halt|Slave Interact][$activeSlave.pornFeed = 0, $activeSlave.pornFocus = "none"]]
+			[[Decrease|Slave Interact][$activeSlave.pornFameSpending -= 1000]]
 		<</if>>
+		
 		<<if $studioFeed == 1>>
 			<br>
 			<<if $activeSlave.pornPrestige > 0>>
@@ -1456,7 +1459,7 @@ Relationship rules: ''<span id="relationshipRules">$activeSlave.relationshipRule
 				<</if>>
 
 				[[Smut is smut|Slave Interact][$activeSlave.pornFocus = "porn"]] |
-				[[No focus|Slave Interact][$activeSlave.pornFocus = "none"]] |
+				[[No focus|Slave Interact][$activeSlave.pornFocus = "none"]]
 			<</if>>
 		<</if>>
 	<</if>>
-- 
GitLab


From 491dcb5dfc21ac9624be630e3c5ce8f111f81048 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Tue, 24 Jul 2018 04:19:55 -0400
Subject: [PATCH 107/189] tweaks

---
 src/pregmod/saPorn.tw                     | 2 +-
 src/uncategorized/longSlaveDescription.tw | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index 734eb491ce2..e1f91fddacf 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -9,7 +9,7 @@
 		<<set _viewership = ((500/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending)+($slaves[$i].face*2)+($slaves[$i].prestige*10)-(_decayRate))>>
 	<<elseif $slaves[$i].pornPrestige > 0>> /* 5k */
 		<<set _decayRate = 500>>
-		<<set _viewership = ((150/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/100)+($slaves[$i].face)+($slaves[$i].prestige*50)-(_decayRate))>>
+		<<set _viewership = ((200/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/10)+($slaves[$i].face)+($slaves[$i].prestige*50)-(_decayRate))>>
 	<<else>>
 		<<set _decayRate = 30>>
 		<<set _viewership = ((50/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/1000)+($slaves[$i].face/20)+($slaves[$i].prestige*10)-(_decayRate))>>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index 0ce7dd328fc..5df6b8da305 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -1513,13 +1513,13 @@ when a dick is pushed inside <<if $activeSlave.vagina >= -1>>either of its lower
 <</if>>
 
 <<if $activeSlave.pornPrestige > 0>>
-	<<if $activeSlave.prestigeDesc>>$activeSlave.pornPrestigeDesc<</if>>
+	<<if $activeSlave.pornPrestigeDesc>>$activeSlave.pornPrestigeDesc<</if>>
 	<<if $activeSlave.pornPrestige > 2>>
-		$He is an famous porn star and tends to gain a following wherever $he goes.
+		As such, $he tends to gain a following wherever $he goes.
 	<<elseif $activeSlave.pornPrestige > 1>>
-		$His porn has a sizable fanbase, so $he is recognized often.
+		As such, $he is recognized often.
 	<<else>>
-		$His porn has a small fanbase, so $he is recognized occasionally.
+		As such, $he is recognized occasionally.
 	<</if>>
 <</if>>
 
-- 
GitLab


From e1fa3edfa81b087e6636fbcf66056c66fde86815 Mon Sep 17 00:00:00 2001
From: deimios666 <deimios666@gmail.com>
Date: Tue, 24 Jul 2018 07:13:40 -0700
Subject: [PATCH 108/189] Color theme fix for gradients

---
 src/js/colorModeJS.tw | 25 ++++++++++---------------
 1 file changed, 10 insertions(+), 15 deletions(-)

diff --git a/src/js/colorModeJS.tw b/src/js/colorModeJS.tw
index f45e6f0fbcf..4b68f8a642b 100644
--- a/src/js/colorModeJS.tw
+++ b/src/js/colorModeJS.tw
@@ -1,26 +1,21 @@
 :: colorModeJS [script]
 
 window.setColors = function(colorMap){
+    let props = ["color","backgroundColor","backgroundImage"];
     let styleSheetArray = Array.from(document.styleSheets);
     styleSheetArray.forEach( styleSheet => {
         let cssRules = Array.from(styleSheet.cssRules);
         cssRules.forEach( cssRule => {
             if ( cssRule.type === 1 ){
-                let color = cssRule.style.color;
-                let bgcolor = cssRule.style.backgroundColor;
-                if (
-                    color != "" &&
-                    color != "inherit" ){
-                    cssRule.style.color = colorMap[color] || color;
-                    console.log('color: ',color);
-                }
-                if (
-                    bgcolor != "" &&
-                    bgcolor != "inherit" &&
-                    bgcolor != "transparent" ){
-                    cssRule.style.backgroundColor = colorMap[bgcolor] || bgcolor;
-                    console.log('color: ',color);
-                }
+                props.forEach( propName => {
+                    let currentValue = cssRule.style[propName];
+                    if (
+                        currentValue != "" &&
+                        currentValue != "inherit" &&
+                        currentValue != "transparent"){
+                        cssRule.style[propName] = colorMap[currentValue] || currentValue;
+                    }
+                })
             }
         });
     });
-- 
GitLab


From d53254c2b8e720232baecf61a5268bd304227014 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Tue, 24 Jul 2018 12:33:59 -0400
Subject: [PATCH 109/189] Fix

---
 src/init/setupVars.tw | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index 51443ae5e55..1418b7055b2 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -43,6 +43,8 @@
 }>>
 /* END Custom Nationalities region filter */
 
+<<set setup.summaryCache = {}>>
+
 /*** pregmod exclusive end ***/
 
 /* Nationality-to-race weighted objects */
-- 
GitLab


From f2ebc47b98249dd6aa3b23bad134148596087e7f Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Tue, 24 Jul 2018 14:17:54 -0400
Subject: [PATCH 110/189] fix

---
 devNotes/twine JS.txt | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index edbc37e345c..e881117af6d 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -6623,8 +6623,6 @@ window.populateEventArray = function(RESS = State.variables.RESSevent.length, RE
 
 /*:: AssayJS [script]*/
 
-:: AssayJS [script]
-
 window.isSlim = function(slave) {
 	var slim = false;
 	var ArcologyZero = State.variables.arcologies[0];
@@ -10305,7 +10303,7 @@ window.saChoosesOwnClothes = function saChoosesOwnClothes(slave) {
 	return r;
 };
 
-// :: FResult [script]
+/* :: FResult [script]*/
 
 // this is a port of the FResult widget
 // it has been broken up into several functions, because it grew too long
-- 
GitLab


From c39b2e4166fb334b4d40b44d317ca53776d27e91 Mon Sep 17 00:00:00 2001
From: deimios666 <deimios666@gmail.com>
Date: Tue, 24 Jul 2018 11:30:47 -0700
Subject: [PATCH 111/189] Mirrored flip color theme into twine JS.txt

---
 devNotes/twine JS.txt | 25 ++++++++++---------------
 1 file changed, 10 insertions(+), 15 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index e66f11d93b0..f8bdc1f30fc 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -11600,26 +11600,21 @@ window.HSM = function() {
 /*:: colorModeJS [script]*/
 
 window.setColors = function(colorMap){
+    let props = ["color","backgroundColor","backgroundImage"];
     let styleSheetArray = Array.from(document.styleSheets);
     styleSheetArray.forEach( styleSheet => {
         let cssRules = Array.from(styleSheet.cssRules);
         cssRules.forEach( cssRule => {
             if ( cssRule.type === 1 ){
-                let color = cssRule.style.color;
-                let bgcolor = cssRule.style.backgroundColor;
-                if (
-                    color != "" &&
-                    color != "inherit" ){
-                    cssRule.style.color = colorMap[color] || color;
-                    console.log('color: ',color);
-                }
-                if (
-                    bgcolor != "" &&
-                    bgcolor != "inherit" &&
-                    bgcolor != "transparent" ){
-                    cssRule.style.backgroundColor = colorMap[bgcolor] || bgcolor;
-                    console.log('color: ',color);
-                }
+                props.forEach( propName => {
+                    let currentValue = cssRule.style[propName];
+                    if (
+                        currentValue != "" &&
+                        currentValue != "inherit" &&
+                        currentValue != "transparent"){
+                        cssRule.style[propName] = colorMap[currentValue] || currentValue;
+                    }
+                })
             }
         });
     });
-- 
GitLab


From a53b12db50a42d89f613e84eb47c83a65f0a1a95 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Tue, 24 Jul 2018 22:26:16 -0400
Subject: [PATCH 112/189] fixes and adjustments

---
 devNotes/twine JS.txt                  | 2 +-
 src/js/slaveSummaryWidgets.tw          | 2 +-
 src/utility/descriptionWidgetsFlesh.tw | 2 ++
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 5c267ae9db6..4290eed261e 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -20543,7 +20543,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 		}
-		r += ` ${slave.faceShape} face.`;
+		r += ` ${slave.faceShape} face. `;
 	}
 	
 	function long_eyes(slave) {
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 598c424813a..851bbd508c8 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -2215,7 +2215,7 @@ window.SlaveSummaryUncached = (function(){
 		} else {
 			r += `<span class="pink">Very beautiful${V.summaryStats? `[${slave.face}]`: ''}</span>`;
 		}
-		r += ` ${slave.faceShape} face.`;
+		r += ` ${slave.faceShape} face. `;
 	}
 	
 	function long_eyes(slave) {
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index b13565327f2..ce8ea648266 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -13048,6 +13048,8 @@ $He has
 		$He has spent so much time in the Free Cities that their statelessness is effectively $his nationality; ethnically, $he's
 	<<elseif $activeSlave.nationality == "Zimbabwean" && $activeSlave.race == "white">>
 		$He's originally @@.tan;Rhodesian@@; ethnically, $he's
+	<<elseif  $activeSlave.nationality == "Vatican">>
+		$He's originally @@.tan;from Vatican City@@; ethnically, $he's
 	<<else>>
 		$He's originally @@.tan;<<print $activeSlave.nationality>>@@; ethnically, $he's
 <</if>>
-- 
GitLab


From 0825f5ae6038ee0232e9a5a2bbc15d49b32b2e7f Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Tue, 24 Jul 2018 22:01:35 -0500
Subject: [PATCH 113/189] Commit2

---
 src/init/setupVars.tw                  | 4 ++--
 src/uncategorized/club.tw              | 2 +-
 src/uncategorized/clubAdvertisement.tw | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index c120a29c577..770592e8c37 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -342,7 +342,7 @@
 
 
 
-<<set setup.whiteAmericanSlaveNames = ["Aaliyah", "Abagail", "Abba", "Abbie", "Abby", "Abiah", "Abigail", "Achsah", "Ada", "Adaline", "Adalyn", "Addie", "Addison", "Adelaide", "Adele", "Adelia", "Adelina", "Adeline", "Adina", "Adriana", "Adrianna", "Agnes", "Ahuva", "Aileen", "Aisha", "Alaina", "Alana", "Aleksandra", "Alessandra", "Alessia", "Alex", "Alexa", "Alexandra", "Alexandria", "Alexia", "Alexis", "Alice", "Alicia", "Alida", "Alina", "Alisa", "Aliza", "Allison", "Alma", "Almeda", "Almina", "Almira", "Alvira", "Alyssa", "Amalia", "Amanda", "Amara", "Amata", "Amber", "Amelia", "Amelie", "America", "Amina", "Amira", "Amy", "Ana", "Anastasia", "Andrea", "Angela", "Angelica", "Angelina", "Angeline", "Angie", "Anisa", "Anita", "Ann", "Anna", "Annabel", "Annabelle", "Annah", "Anne", "Annette", "Annie", "Annis", "Antonia", "April", "Arabella", "Araminta", "Arena", "Aria", "Ariana", "Arianna", "Ariel", "Ariela", "Ariella", "Arielle", "Arlene", "Arminda", "Arvilla", "Asenath", "Ashley", "Atara", "Athena", "Aubrey", "Audrey", "Augusta", "Aurelia", "Aurilla", "Aurora", "Austin", "Autumn", "Ava", "Avery", "Avigail", "Avital", "Aviva", "Aya", "Ayala", "Ayla", "Aziza", "Baila", "Bailey", "Barbara", "Barbary", "Barbery", "Barbi", "Barbie", "Basya", "Bathsheba", "Batsheva", "Batya", "Beatrice", "Beatrix", "Becca", "Belinda", "Bell", "Bella", "Belle", "Bernice", "Bertha", "Bessie", "Beth", "Bethany", "Bethena", "Bethia", "Betsey", "Betsy", "Bette", "Betty", "Beulah", "Beverly", "Bianca", "Biddy", "Billie", "Bitsy", "Blair", "Blake", "Blanche", "Bleba", "Blima", "Blimy", "Bonnibel", "Bonnie", "Boone", "Bracha", "Brandi", "Brandy", "Breanna", "Bree", "Breindy", "Brenda", "Briana", "Brianna", "Bridges", "Bridget", "Brielle", "Britney", "Brittany", "Brittney", "Brooke", "Brooklyn", "Brucha", "Bruchy", "Bryanne", "Brynn", "Buffy", "Bunny", "Caitlin", "Calista", "Callie", "Cameron", "Camila", "Camilla", "Camille", "Candice", "Carla", "Carly", "Carol", "Carole", "Carolina", "Caroline", "Carolyn", "Carrie", "Casey", "Cassandra", "Cassidy", "Cath", "Catharine", "Catherine", "Cathern", "Cathy", "Cecelia", "Cecila", "Cecilia", "Celestia", "Celia", "Celinda", "Celine", "Chana", "Chanie", "Chany", "Charity", "Charlie", "Charlott", "Charlotte", "Chava", "Chavy", "Chaya", "Chel", "Chelsea", "Cherry", "Cheryl", "Cheyenne", "Chiara", "Chloe", "Christian", "Christiana", "Christina", "Christine", "Christy", "Cindy Lou", "Cindy", "Claire", "Clara", "Clarinda", "Clarisa", "Clarissa", "Claudia", "Clementine", "Clover", "Colette", "Colleen", "Columbia", "Comfort", "Connie", "Cora", "Coraline", "Cordelia", "Cornelia", "Courtney", "Crimson", "Crystal", "Cyntha", "Cynthia", "Dahlia", "Daisy", "Dalia", "Dana", "Daniela", "Daniella", "Danielle", "Daphne", "Darcus", "Daria", "Darla", "Darleen", "Darlene", "Dawn", "Deanie", "Debbie", "Deborah", "Debra", "Dee", "Delia", "Delila", "Delilah", "Della", "Delores", "Delphine", "Denise", "Desire", "Destiny", "Devora", "Devorah", "Diana", "Diane", "Dianne", "Diantha", "Dicey", "Dicy", "Dina", "Dinah", "Dixie", "Dolly", "Dolores", "Donna", "Dora", "Dorcas", "Doreen", "Doris", "Dorothea", "Dorothy", "Drew", "Drusilla", "Dusty", "Dylan", "Easter", "Eda", "Eden", "Edie", "Edith", "Edna", "Edney", "Effa", "Effie", "Eileen", "Elaine", "Eleanor", "Electa", "Elena", "Eleni", "Elenor", "Eliana", "Elira", "Elisa", "Elisabeth", "Elise", "Elisheva", "Eliz", "Eliza", "Elizabeth", "Ella", "Elle", "Ellen", "Ellender", "Elliana", "Ellie", "Ellin", "Elmira", "Eloise", "Elsa", "Elsie", "Elvira", "Elyse", "Elza", "Emaline", "Emely", "Emerson", "Emilia", "Emiline", "Emily", "Emley", "Emma", "Emmeline", "Eneatha", "Erica", "Erika", "Erin", "Esme", "Estelle", "Ester", "Esther", "Esty", "Ethel", "Etta", "Etty", "Eudora", "Eugenia", "Eugenie", "Eunice", "Euphemia", "Eva", "Evaline", "Evangeline", "Eve", "Evelina", "Eveline", "Evelyn", "Everly", "Evie", "Experience", "Faiga", "Faigy", "Faith", "Fannie", "Fanny", "Farah", "Farmer", "Fatima", "Felicity", "Fidelia", "Finley", "Fiona", "Flora", "Florence", "Florida", "Fradel", "Frady", "Fraidy", "France", "Frances", "Francesca", "Frelove", "F reya", "Frimet", "Gabriela", "Gabriella", "Gabrielle", "Gage", "Gaige", "Gail", "Gemima", "Gemma", "Genevieve", "Georgia", "Georgianna", "Geraldine", "Gertrude", "Gia", "Giada", "Gianna", "Gina", "Ginger", "Giovanna", "Giselle", "Gittel", "Gitty", "Giulia", "Giuliana", "Gladis", "Gladys", "Glenda", "Gloria", "Golda", "Goldie", "Goldy", "Grace", "Gracie", "Grenda", "Greta", "Gwen", "Hadassa", "Hadassah", "Hadley", "Hailey", "Haley", "Hana", "Hanna", "Hannah", "Hariett", "Harlow", "Harper", "Harriet", "Harriette", "Harriot", "Hattie", "Hazel", "Heather", "Heidi", "Helen", "Helena", "Hellen", "Henchy", "Henny", "Henrietta", "Hepsey", "Hester", "Hetta", "Hilda", "Hillary", "Hinda", "Hindy", "Holly", "Honora", "Huldah", "Ida", "Idy", "Ilana", "Indiana", "Ines", "Irene", "Iris", "Isabel", "Isabella", "Isabelle", "Isadore", "Isla", "Issabella", "Ivy", "Izabella", "Jacqueline", "Jada", "Jade", "Jamie", "Jana", "Jane", "Janet", "Janette", "Janice", "Janie", "Janine", "Jasmina", "Jasmine", "Jean", "Jeann", "Jeanne", "Jemima", "Jenna", "Jennett", "Jennie", "Jennifer", "Jenny", "Jerusha", "Jesse", "Jessica", "Jessie", "Jill", "Jo", "Joan", "Joana", "Joann", "Joanna", "Joanne", "Jocelyn", "Jodie", "Jolie", "Jones", "Jordan", "Jordyn", "Josephine", "Joy", "Joyce", "Juana", "Juanita", "Juda", "Judith", "Judy", "Julia", "Julian", "Juliana", "Julianna", "Julie", "Juliet", "Juliette", "June", "Juniper", "Kaila", "Kaitlyn", "Karen", "Karol", "Karoline", "Kat", "Kate", "Katelyn", "Katerina", "Katherine", "Kathleen", "Kathryn", "Kathy", "Katie", "Kay", "Kaya", "Kayla", "Kaylee", "Keira", "Kelly", "Kelsey", "Kennedy", "Keziah", "Khloe", "Kim", "Kimberly", "Kira", "Kitty", "Kristen", "Kristin", "Kristina", "Krystal", "Kylie", "Laila", "Lamiza", "Lana", "Laney", "Lara", "Latoya", "Latrina", "Laura", "Lauren", "Laurie", "Lavina", "Lavinia", "Layan", "Layla", "Lea", "Leah", "Lee", "Leila", "Lena", "Leona", "Leora", "Leslie", "Levina", "Leyla", "Lia", "Liana", "Liba", "Libby", "Lila", "Lilah", "Lilian", "Liliana", "Lillian", "Lillie", "Lilly", "Lily", "Lina", "Linda", "Lindsay", "Lindsey", "Lisa", "Liv", "Livia", "Lizzie", "Lois", "Loisa", "Lola", "London", "Loretta", "Lori", "Lorinda", "Lorna", "Lorraine", "Lottie", "Louisa", "Louise", "Louisiana", "Louiza", "Louvina", "Lovina", "Luanne", "Lucetta", "Lucia", "Luciana", "Lucille", "Lucina", "Lucinda", "Lucretia", "Lucy", "Lula", "Lulu", "Luna", "Lura", "Lurleen", "Lydia", "Lyla", "Lynch", "Lynette", "Lynn", "Mabel", "Mackenzie", "Madeleine", "Madeline", "Madelyn", "Madison", "Madora", "Mae", "Maeve", "Magdalena", "Magdaline", "Maggie", "Mahala", "Mahaley", "Maisie", "Makayla", "Malak", "Malinda", "Malissa", "Malka", "Malky", "Malvina", "Mamie", "Manda", "Mandy", "Manerva", "Marceline", "Marcia", "Marcy", "Marey", "Margaret", "Margarett", "Margaretta", "Margarette", "Margaux", "Marge", "Margot", "Margret", "Marguerite", "Maria", "Mariah", "Mariam", "Marian", "Maribeth", "Marie", "Marielle", "Marietta", "Marilla", "Marilyn", "Marina", "Marion", "Mariska", "Marissa", "Marjorie", "Marlene", "Martha", "Mary Alice", "Mary Anne", "Mary Jane", "Mary Lou", "Mary", "Maryam", "Matilda", "Mattie", "Maud", "Maude", "Mavis", "Maxine", "May", "Maya", "McKayla", "McKenna", "Medora", "Megan", "Meghan", "Megyn", "Mehitable", "Melanie", "Melinda", "Melissa", "Melvina", "Mena", "Menucha", "Mercy", "Mia", "Michaela", "Michal", "Michele", "Michelle", "Mikayla", "Mila", "Milana", "Mildred", "Milena", "Miley", "Milla", "Miller", "Milly", "Mina", "Mindy", "Minerva", "Minnie", "Mira", "Miranda", "Mirel", "Miri", "Miriam", "Missouri", "Misty", "Mollie", "Molly", "Monica", "Morgan", "Moriah", "Muffy", "Mushka", "Myra", "Myrtle", "Nadia", "Nancy", "Nannie", "Naoma", "Naomi", "Narcissa", "Natalia", "Natalie", "Natasha", "Nazz", "Nechama", "Nellie", "Nettie", "Nevaeh", "Nicole", "Nicolette", "Nicollette", "Nikki", "Nina", "Noa", "Noelle", "Noor", "Nora", "Norah", "Norma", "Octavia", "Olive", "Olivia", "Onza", "Opal", "Orpha", "Orvilla", "Pacifica", "Paige", "Pamela", "Pamelia", "Parker", "Parnethia", "Parthena", "Parthenia", "Pat", "Patience", "Patricia", "Patsey", "Patsy", "Paula", "Pauline", "Pearl", "Peg", "Peggy Sue", "Peggy", "Penelope", "Percilla", "Perel", "Perl", "Permelia", "Perry", "Persis", "Pessy", "Peyton", "Pheba", "Phebe", "Pheby", "Pheobe", "Philena", "Philinda", "Phoebe", "Phyllis", "Pinky", "Piper", "Polina", "Polley", "Polly", "Poppy", "Portia", "Priscilla", "Prudence", "Quinn", "Rachael", "Rachal", "Rachel", "Raina", "Raizel", "Raizy", "Raquel", "Rayleen", "Reagan", "Rebeca", "Rebecca", "Reem", "Reese", "Regina", "Reizy", "Rena", "Renee", "Rhoda", "Rhody", "Rhonda", "Rifka", "Rifky", "Riley", "Rita", "Rivka", "Rivky", "Roberta", "Robin", "Rochel", "Roda", "Roiza", "Roizy", "Romy", "Rosa", "Rosanna", "Rose of Sharon", "Rose", "Roseanne", "Rosella", "Rosemary", "Rosetta", "Rosie", "Rosina", "Rowan", "Roxanne", "Roxy", "Ruby", "Ruchel", "Ruchy", "Ruth", "Rutha", "Ryan", "Sabina", "Sabra", "Sabrina", "Sadie", "Sage", "Salina", "Sallie", "Sally", "Salma", "Sam", "Samantha", "Samira", "Sandra", "Sandy", "Sara", "Sarah", "Sarepta", "Sarrah", "Sasha", "Savannah", "Scarlett", "Selina", "Selma", "Serena", "Shaina", "Shaindel", "Shaindy", "Shannon", "Sharon", "Shayna", "Sheila", "Shelby", "Sherri", "Sherry", "Shevy", "Shifra", "Shira", "Shirley", "Shoshana", "Sidra", "Siena", "Sienna", "Sierra", "Sigourney", "Silver", "Sima", "Simi", "Simone", "Skylar", "Skyler", "Sloane", "Sofia", "Sonia", "Sophia", "Sophiah", "Sophie", "Sophronia", "Spencer", "Stacey", "Stacy", "Stella", "Stephanie", "Sue", "Summer", "Suri", "Sury", "Susan", "Susanah", "Susanna", "Susannah", "Susie", "Suzanne", "Swoop", "Sydney", "Sylvia", "Sylvie", "Syntha", "Tabitha", "Talia", "Tamar", "Tamara", "Tammy", "Tanya", "Tara", "Taylor", "Telitha", "Temperance", "Tennessee", "Teresa", "Teri", "Terri", "Terry", "Tess", "Tessa", "Thadine", "Thankful", "Thea", "Thelma", "Theresa", "Thursey", "Tiana", "Tiffani", "Tiffany", "Tina", "Tippins", "Toby", "Tomi", "Tonya", "Tova", "Tracey", "Tracy", "Trany", "Trinity", "Tryphena", "Tzipora", "Tziporah", "Tzippy", "Tzivia", "Unice", "Unity", "Ursula", "Valentina", "Valerie", "Vanessa", "Velma", "Vera", "Veronica", "Veronika", "Vicki", "Vickie", "Victoria", "Viola", "Violet", "Violeta", "Virginia", "Vivian", "Vivienne", "Wanda", "Wealthy", "Wendy", "Whitney", "Wilhelmina", "Willa", "Willie", "Wilma", "Winona", "Yachet", "Yael", "Yara", "Yasmin", "Yasmina", "Yasmine", "Yehudis", "Yides", "Yitta", "Yitty", "Yocheved", "Zelda", "Zilpha", "Zissy", "Zoe", "Zoey"]>>
+<<set setup.whiteAmericanSlaveNames = ["Aaliyah", "Abagail", "Abba", "Abbie", "Abby", "Abiah", "Abigail", "Achsah", "Ada", "Adaline", "Adalyn", "Addie", "Addison", "Adelaide", "Adele", "Adelia", "Adelina", "Adeline", "Adina", "Adriana", "Adrianna", "Agnes", "Ahuva", "Aileen", "Aisha", "Alaina", "Alana", "Aleksandra", "Alessandra", "Alessia", "Alex", "Alexa", "Alexandra", "Alexandria", "Alexia", "Alexis", "Alice", "Alicia", "Alida", "Alina", "Alisa", "Aliza", "Allison", "Alma", "Almeda", "Almina", "Almira", "Alvira", "Alyssa", "Amalia", "Amanda", "Amara", "Amata", "Amber", "Amelia", "Amelie", "America", "Amina", "Amira", "Amy", "Ana", "Anastasia", "Andrea", "Angela", "Angelica", "Angelina", "Angeline", "Angie", "Anisa", "Anita", "Ann", "Anna", "Annabel", "Annabelle", "Annah", "Anne", "Annette", "Annie", "Annis", "Antonia", "April", "Arabella", "Araminta", "Arena", "Aria", "Ariana", "Arianna", "Ariel", "Ariela", "Ariella", "Arielle", "Arlene", "Arminda", "Arvilla", "Asenath", "Ashley", "Atara", "Athena", "Aubrey", "Audrey", "Augusta", "Aurelia", "Aurilla", "Aurora", "Austin", "Autumn", "Ava", "Avery", "Avigail", "Avital", "Aviva", "Aya", "Ayala", "Ayla", "Aziza", "Baila", "Bailey", "Barbara", "Barbary", "Barbery", "Barbi", "Barbie", "Basya", "Bathsheba", "Batsheva", "Batya", "Beatrice", "Beatrix", "Becca", "Belinda", "Bell", "Bella", "Belle", "Bernice", "Bertha", "Bessie", "Beth", "Bethany", "Bethena", "Bethia", "Betsey", "Betsy", "Bette", "Betty", "Beulah", "Beverly", "Bianca", "Biddy", "Billie", "Bitsy", "Blair", "Blake", "Blanche", "Bleba", "Blima", "Blimy", "Bonnibel", "Bonnie", "Boone", "Bracha", "Brandi", "Brandy", "Breanna", "Bree", "Breindy", "Brenda", "Briana", "Brianna", "Bridges", "Bridget", "Brielle", "Britney", "Brittany", "Brittney", "Brooke", "Brooklyn", "Brucha", "Bruchy", "Bryanne", "Brynn", "Buffy", "Bunny", "Caitlin", "Calista", "Callie", "Cameron", "Camila", "Camilla", "Camille", "Candice", "Carla", "Carly", "Carol", "Carole", "Carolina", "Caroline", "Carolyn", "Carrie", "Casey", "Cassandra", "Cassidy", "Cath", "Catharine", "Catherine", "Cathern", "Cathy", "Cecelia", "Cecila", "Cecilia", "Celestia", "Celia", "Celinda", "Celine", "Chana", "Chanie", "Chany", "Charity", "Charlie", "Charlott", "Charlotte", "Chava", "Chavy", "Chaya", "Chel", "Chelsea", "Cherry", "Cheryl", "Cheyenne", "Chiara", "Chloe", "Christian", "Christiana", "Christina", "Christine", "Christy", "Cindy Lou", "Cindy", "Claire", "Clara", "Clarinda", "Clarisa", "Clarissa", "Claudia", "Clementine", "Clover", "Colette", "Colleen", "Columbia", "Comfort", "Connie", "Cora", "Coraline", "Cordelia", "Cornelia", "Courtney", "Crimson", "Crystal", "Cyntha", "Cynthia", "Dahlia", "Daisy", "Dalia", "Dana", "Daniela", "Daniella", "Danielle", "Daphne", "Darcus", "Daria", "Darla", "Darleen", "Darlene", "Dawn", "Deanie", "Debbie", "Deborah", "Debra", "Dee", "Delia", "Delila", "Delilah", "Della", "Delores", "Delphine", "Denise", "Desire", "Destiny", "Devora", "Devorah", "Diana", "Diane", "Dianne", "Diantha", "Dicey", "Dicy", "Dina", "Dinah", "Dixie", "Dolly", "Dolores", "Donna", "Dora", "Dorcas", "Doreen", "Doris", "Dorothea", "Dorothy", "Drew", "Drusilla", "Dusty", "Dylan", "Easter", "Eda", "Eden", "Edie", "Edith", "Edna", "Edney", "Effa", "Effie", "Eileen", "Elaine", "Eleanor", "Electa", "Elena", "Eleni", "Elenor", "Eliana", "Elira", "Elisa", "Elisabeth", "Elise", "Elisheva", "Eliz", "Eliza", "Elizabeth", "Ella", "Elle", "Ellen", "Ellender", "Elliana", "Ellie", "Ellin", "Elmira", "Eloise", "Elsa", "Elsie", "Elvira", "Elyse", "Elza", "Emaline", "Emely", "Emerson", "Emilia", "Emiline", "Emily", "Emley", "Emma", "Emmeline", "Eneatha", "Erica", "Erika", "Erin", "Esme", "Estelle", "Ester", "Esther", "Esty", "Ethel", "Etta", "Etty", "Eudora", "Eugenia", "Eugenie", "Eunice", "Euphemia", "Eva", "Evaline", "Evangeline", "Eve", "Evelina", "Eveline", "Evelyn", "Everly", "Evie", "Experience", "Faiga", "Faigy", "Faith", "Fannie", "Fanny", "Farah", "Farmer", "Fatima", "Felicity", "Fidelia", "Finley", "Fiona", "Flora", "Florence", "Florida", "Fradel", "Frady", "Fraidy", "France", "Frances", "Francesca", "Frelove", "Freya", "Frimet", "Gabriela", "Gabriella", "Gabrielle", "Gage", "Gaige", "Gail", "Gemima", "Gemma", "Genevieve", "Georgia", "Georgianna", "Geraldine", "Gertrude", "Gia", "Giada", "Gianna", "Gina", "Ginger", "Giovanna", "Giselle", "Gittel", "Gitty", "Giulia", "Giuliana", "Gladis", "Gladys", "Glenda", "Gloria", "Golda", "Goldie", "Goldy", "Grace", "Gracie", "Grenda", "Greta", "Gwen", "Hadassa", "Hadassah", "Hadley", "Hailey", "Haley", "Hana", "Hanna", "Hannah", "Hariett", "Harlow", "Harper", "Harriet", "Harriette", "Harriot", "Hattie", "Hazel", "Heather", "Heidi", "Helen", "Helena", "Hellen", "Henchy", "Henny", "Henrietta", "Hepsey", "Hester", "Hetta", "Hilda", "Hillary", "Hinda", "Hindy", "Holly", "Honora", "Huldah", "Ida", "Idy", "Ilana", "Indiana", "Ines", "Irene", "Iris", "Isabel", "Isabella", "Isabelle", "Isadore", "Isla", "Issabella", "Ivy", "Izabella", "Jacqueline", "Jada", "Jade", "Jamie", "Jana", "Jane", "Janet", "Janette", "Janice", "Janie", "Janine", "Jasmina", "Jasmine", "Jean", "Jeann", "Jeanne", "Jemima", "Jenna", "Jennett", "Jennie", "Jennifer", "Jenny", "Jerusha", "Jesse", "Jessica", "Jessie", "Jill", "Jo", "Joan", "Joana", "Joann", "Joanna", "Joanne", "Jocelyn", "Jodie", "Jolie", "Jones", "Jordan", "Jordyn", "Josephine", "Joy", "Joyce", "Juana", "Juanita", "Juda", "Judith", "Judy", "Julia", "Julian", "Juliana", "Julianna", "Julie", "Juliet", "Juliette", "June", "Juniper", "Kaila", "Kaitlyn", "Karen", "Karol", "Karoline", "Kat", "Kate", "Katelyn", "Katerina", "Katherine", "Kathleen", "Kathryn", "Kathy", "Katie", "Kay", "Kaya", "Kayla", "Kaylee", "Keira", "Kelly", "Kelsey", "Kennedy", "Keziah", "Khloe", "Kim", "Kimberly", "Kira", "Kitty", "Kristen", "Kristin", "Kristina", "Krystal", "Kylie", "Laila", "Lamiza", "Lana", "Laney", "Lara", "Latoya", "Latrina", "Laura", "Lauren", "Laurie", "Lavina", "Lavinia", "Layan", "Layla", "Lea", "Leah", "Lee", "Leila", "Lena", "Leona", "Leora", "Leslie", "Levina", "Leyla", "Lia", "Liana", "Liba", "Libby", "Lila", "Lilah", "Lilian", "Liliana", "Lillian", "Lillie", "Lilly", "Lily", "Lina", "Linda", "Lindsay", "Lindsey", "Lisa", "Liv", "Livia", "Lizzie", "Lois", "Loisa", "Lola", "London", "Loretta", "Lori", "Lorinda", "Lorna", "Lorraine", "Lottie", "Louisa", "Louise", "Louisiana", "Louiza", "Louvina", "Lovina", "Luanne", "Lucetta", "Lucia", "Luciana", "Lucille", "Lucina", "Lucinda", "Lucretia", "Lucy", "Lula", "Lulu", "Luna", "Lura", "Lurleen", "Lydia", "Lyla", "Lynch", "Lynette", "Lynn", "Mabel", "Mackenzie", "Madeleine", "Madeline", "Madelyn", "Madison", "Madora", "Mae", "Maeve", "Magdalena", "Magdaline", "Maggie", "Mahala", "Mahaley", "Maisie", "Makayla", "Malak", "Malinda", "Malissa", "Malka", "Malky", "Malvina", "Mamie", "Manda", "Mandy", "Manerva", "Marceline", "Marcia", "Marcy", "Marey", "Margaret", "Margarett", "Margaretta", "Margarette", "Margaux", "Marge", "Margot", "Margret", "Marguerite", "Maria", "Mariah", "Mariam", "Marian", "Maribeth", "Marie", "Marielle", "Marietta", "Marilla", "Marilyn", "Marina", "Marion", "Mariska", "Marissa", "Marjorie", "Marlene", "Martha", "Mary Alice", "Mary Anne", "Mary Jane", "Mary Lou", "Mary", "Maryam", "Matilda", "Mattie", "Maud", "Maude", "Mavis", "Maxine", "May", "Maya", "McKayla", "McKenna", "Medora", "Megan", "Meghan", "Megyn", "Mehitable", "Melanie", "Melinda", "Melissa", "Melvina", "Mena", "Menucha", "Mercy", "Mia", "Michaela", "Michal", "Michele", "Michelle", "Mikayla", "Mila", "Milana", "Mildred", "Milena", "Miley", "Milla", "Miller", "Milly", "Mina", "Mindy", "Minerva", "Minnie", "Mira", "Miranda", "Mirel", "Miri", "Miriam", "Missouri", "Misty", "Mollie", "Molly", "Monica", "Morgan", "Moriah", "Muffy", "Mushka", "Myra", "Myrtle", "Nadia", "Nancy", "Nannie", "Naoma", "Naomi", "Narcissa", "Natalia", "Natalie", "Natasha", "Nazz", "Nechama", "Nellie", "Nettie", "Nevaeh", "Nicole", "Nicolette", "Nicollette", "Nikki", "Nina", "Noa", "Noelle", "Noor", "Nora", "Norah", "Norma", "Octavia", "Olive", "Olivia", "Onza", "Opal", "Orpha", "Orvilla", "Pacifica", "Paige", "Pamela", "Pamelia", "Parker", "Parnethia", "Parthena", "Parthenia", "Pat", "Patience", "Patricia", "Patsey", "Patsy", "Paula", "Pauline", "Pearl", "Peg", "Peggy Sue", "Peggy", "Penelope", "Percilla", "Perel", "Perl", "Permelia", "Perry", "Persis", "Pessy", "Peyton", "Pheba", "Phebe", "Pheby", "Pheobe", "Philena", "Philinda", "Phoebe", "Phyllis", "Pinky", "Piper", "Polina", "Polley", "Polly", "Poppy", "Portia", "Priscilla", "Prudence", "Quinn", "Rachael", "Rachal", "Rachel", "Raina", "Raizel", "Raizy", "Raquel", "Rayleen", "Reagan", "Rebeca", "Rebecca", "Reem", "Reese", "Regina", "Reizy", "Rena", "Renee", "Rhoda", "Rhody", "Rhonda", "Rifka", "Rifky", "Riley", "Rita", "Rivka", "Rivky", "Roberta", "Robin", "Rochel", "Roda", "Roiza", "Roizy", "Romy", "Rosa", "Rosanna", "Rose of Sharon", "Rose", "Roseanne", "Rosella", "Rosemary", "Rosetta", "Rosie", "Rosina", "Rowan", "Roxanne", "Roxy", "Ruby", "Ruchel", "Ruchy", "Ruth", "Rutha", "Ryan", "Sabina", "Sabra", "Sabrina", "Sadie", "Sage", "Salina", "Sallie", "Sally", "Salma", "Sam", "Samantha", "Samira", "Sandra", "Sandy", "Sara", "Sarah", "Sarepta", "Sarrah", "Sasha", "Savannah", "Scarlett", "Selina", "Selma", "Serena", "Shaina", "Shaindel", "Shaindy", "Shannon", "Sharon", "Shayna", "Sheila", "Shelby", "Sherri", "Sherry", "Shevy", "Shifra", "Shira", "Shirley", "Shoshana", "Sidra", "Siena", "Sienna", "Sierra", "Sigourney", "Silver", "Sima", "Simi", "Simone", "Skylar", "Skyler", "Sloane", "Sofia", "Sonia", "Sophia", "Sophiah", "Sophie", "Sophronia", "Spencer", "Stacey", "Stacy", "Stella", "Stephanie", "Sue", "Summer", "Suri", "Sury", "Susan", "Susanah", "Susanna", "Susannah", "Susie", "Suzanne", "Swoop", "Sydney", "Sylvia", "Sylvie", "Syntha", "Tabitha", "Talia", "Tamar", "Tamara", "Tammy", "Tanya", "Tara", "Taylor", "Telitha", "Temperance", "Tennessee", "Teresa", "Teri", "Terri", "Terry", "Tess", "Tessa", "Thadine", "Thankful", "Thea", "Thelma", "Theresa", "Thursey", "Tiana", "Tiffani", "Tiffany", "Tina", "Tippins", "Toby", "Tomi", "Tonya", "Tova", "Tracey", "Tracy", "Trany", "Trinity", "Tryphena", "Tzipora", "Tziporah", "Tzippy", "Tzivia", "Unice", "Unity", "Ursula", "Valentina", "Valerie", "Vanessa", "Velma", "Vera", "Veronica", "Veronika", "Vicki", "Vickie", "Victoria", "Viola", "Violet", "Violeta", "Virginia", "Vivian", "Vivienne", "Wanda", "Wealthy", "Wendy", "Whitney", "Wilhelmina", "Willa", "Willie", "Wilma", "Winona", "Yachet", "Yael", "Yara", "Yasmin", "Yasmina", "Yasmine", "Yehudis", "Yides", "Yitta", "Yitty", "Yocheved", "Zelda", "Zilpha", "Zissy", "Zoe", "Zoey"]>>
 <<set setup.whiteAmericanSlaveSurnames = ["Aaron", "Abbott", "Abel", "Abell", "Abernathy", "Abney", "Abraham", "Abrams", "Acker", "Ackerman", "Ackley", "Acosta", "Adair", "Adam", "Adams", "Adamson", "Adcock", "Addison", "Adkins", "Adler", "Agee", "Agnew", "Aguilar", "Ahern", "Ahrens", "Aiello", "Aiken", "Ainsworth", "Akers", "Akin", "Akins", "Albanese", "Albers", "Albert", "Albertson", "Albrecht", "Albright", "Alcorn", "Alderman", "Aldrich", "Aldridge", "Alexander", "Alford", "Allan", "Allard", "Allen", "Alley", "Allison", "Allman", "Allred", "Almeida", "Almodovar", "Altman", "Alvarez", "Alves", "Amaral", "Amato", "Amber", "Ambrose", "Ames", "Ammons", "Amos", "Amundson", "Anders", "Andersen", "Anderson", "Andrade", "Andrew", "Andrews", "Andrus", "Angel", "Angell", "Angelo", "Anglin", "Anthony", "Appel", "Apple", "Applegate", "Archer", "Archibald", "Ard", "Armstrong", "Arndt", "Arnett", "Arnold", "Arrington", "Arsenault", "Arthur", "Asay", "Asbury", "Ash", "Ashby", "Ashcraft", "Asher", "Ashley", "Ashton", "Ashworth", "Askew", "Atchison", "Atchley", "Atherton", "Atkins", "Atkinson", "Atwell", "Atwood", "Augustine", "Ault", "Austin", "Autry", "Avery", "Ayers", "Ayres", "Babb", "Babcock", "Bach", "Bachman", "Back", "Backus", "Bacon", "Bader", "Badger", "Baer", "Baggett", "Bagley", "Bagwell", "Bahr", "Bailey", "Bain", "Bair", "Baird", "Baker", "Baldwin", "Bale", "Bales", "Ball", "Ballard", "Ballew", "Ballinger", "Bandy", "Bane", "Banks", "Bannon", "Barbee", "Barber", "Barbour", "Barclay", "Bare", "Barfield", "Barger", "Barker", "Barkley", "Barlow", "Barnard", "Barnes", "Barnett", "Barnette", "Barney", "Barnhart", "Barnhill", "Baron", "Barone", "Barr", "Barrett", "Barron", "Barrow", "Barrows", "Barry", "Barrymore", "Bartels", "Barth", "Bartholomew", "Bartlett", "Bartley", "Barton", "Basham", "Basile", "Bass", "Bassett", "Batchelor", "Bateman", "Bates", "Batson", "Battaglia", "Batten", "Bauer", "Baugh", "Baughman", "Baum", "Bauman", "Baumann", "Baumgartner", "Baxley", "Baxter", "Bayer", "Bays", "Beach", "Beal", "Beall", "Beals", "Beam", "Bean", "Bear", "Beard", "Bearden", "Beardsley", "Beasley", "Beattie", "Beatty", "Beaty", "Beauchamp", "Beaudoin", "Beaulieu", "Beaver", "Beavers", "Bechtel", "Beck", "Becker", "Beckett", "Beckham", "Beckman", "Beckstead", "Beckwith", "Beebe", "Beeler", "Beers", "Beeson", "Begley", "Behrens", "Belanger", "Belcher", "Bell", "Bellamy", "Belt", "Bender", "Benedict", "Benes", "Benjamin", "Benner", "Bennett", "Bennion", "Benoit", "Benson", "Bentley", "Benton", "Berg", "Berger", "Bergeron", "Bergman", "Bergstrom", "Berkowitz", "Berlin", "Berman", "Bernard", "Berndt", "Bernhardt", "Bernier", "Bernstein", "Berry", "Berryman", "Bertram", "Bertrand", "Best", "Bettencourt", "Betts", "Betz", "Beverly", "Beyer", "Bianchi", "Bianco", "Bice", "Bickel", "Bickford", "Biddle", "Biden", "Bigelow", "Biggs", "Billings", "Billingsley", "Bills", "Binder", "Bingham", "Binkley", "Birch", "Bird", "Bischoff", "Bishop", "Bittner", "Bivens", "Black", "Blackburn", "Blackman", "Blackmon", "Blackwell", "Blackwood", "Blair", "Blake", "Blakely", "Blalock", "Blanchard", "Blanchette", "Bland", "Blank", "Blankenship", "Blanton", "Blaylock", "Bledsoe", "Blevins", "Bliss", "Block", "Blodgett", "Bloom", "Blount", "Blue", "Blum", "Blythe", "Bock", "Boehm", "Boettcher", "Bogart", "Boggs", "Bohannon", "Bohn", "Boland", "Bolen", "Boles", "Bolhuis", "Bolin", "Boling", "Bollinger", "Bolt", "Bolton", "Bond", "Bonds", "Bone", "Bonner", "Bontrager", "Booher", "Booker", "Boone", "Booth", "Boothe", "Bordelon", "Borden", "Borders", "Boren", "Borges", "Born", "Boss", "Bostic", "Boston", "Boswell", "Bouchard", "Boucher", "Boudreau", "Boudreaux", "Bounds", "Bourgeois", "Bourne", "Bourque", "Bowden", "Bowen", "Bower", "Bowers", "Bowles", "Bowlin", "Bowling", "Bowman", "Bowser", "Box", "Boyce", "Boyd", "Boyer", "Boykin", "Boylan", "Boyle", "Boyles", "Bracken", "Brackett", "Bradbury", "Braden", "Bradford", "Bradley", "Bradshaw", "Brady", "Bragg", "Bramble", "Branch", "Brand", "Brandenburg", "Brandon", "Brandt", "Branham", "Brannan", "Brannon", "Branson", "Brant", "Brantley", "Braswell", "Bratcher", "Bratton", "Braun", "Bray", "Breaux", "Breeden", "Breedlove", "Breen", "Breitbart", "Bremer", "Brennan", "Brenner", "Brewer", "Brewster", "Bricker", "Bridges", "Briggs", "Bright", "Brill", "Brink", "Brinkley", "Brinkman", "Brinson", "Briscoe", "Bristow", "Britt", "Brittain", "Britton", "Brock", "Brockman", "Broderick", "Brody", "Brogan", "Bronson", "Brooks", "Broome", "Brophy", "Brothers", "Broughton", "Broussard", "Brower", "Brown", "Browne", "Brownell", "Browning", "Brownlee", "Broyles", "Brubaker", "Bruce", "Brumfield", "Brumley", "Bruner", "Brunner", "Bruno", "Bruns", "Brunson", "Brush", "Bryan", "Bryant", "Bryson", "Buchanan", "Bucher", "Buchholz", "Buck", "Buckingham", "Buckley", "Buckner", "Budd", "Buehler", "Buell", "Buffington", "Bull", "Bullard", "Bullock", "Bunch", "Bundy", "Bunker", "Bunn", "Bunting", "Burc", "Burch", "Burchett", "Burchfield", "Burden", "Burdette", "Burdick", "Burge", "Burger", "Burgess", "Burk", "Burke", "Burkett", "Burkhardt", "Burkhart", "Burkholder", "Burks", "Burleson", "Burnett", "Burnette", "Burnham", "Burns", "Burnside", "Burr", "Burrell", "Burris", "Burroughs", "Burrow", "Burrows", "Burt", "Burton", "Busby", "Busch", "Bush", "Buss", "Butcher", "Butler", "Butterfield", "Button", "Butts", "Buxton", "Byers", "Byler", "Bynum", "Byrd", "Byrne", "Byrnes", "Cable", "Cabral", "Cady", "Cagle", "Cahill", "Cain", "Calabrese", "Caldwell", "Calhoun", "Calkins", "Call", "Callahan", "Callaway", "Calloway", "Calvert", "Cameron", "Camp", "Campbell", "Canfield", "Cannon", "Cantrell", "Cantwell", "Capps", "Caputo", "Carbone", "Card", "Carden", "Cardwell", "Carey", "Carl", "Carlin", "Carlisle", "Carlson", "Carlton", "Carman", "Carmichael", "Carnahan", "Carnes", "Carney", "Caron", "Carpenter", "Carr", "Carrier", "Carroll", "Carson", "Carter", "Cartwright", "Caruso", "Carvalho", "Carver", "Cary", "Case", "Casey", "Cash", "Cason", "Casper", "Cass", "Cassell", "Cassidy", "Casteel", "Castillo", "Castle", "Castleberry", "Casto", "Castro", "Caswell", "Catalano", "Cates", "Cathey", "Caudill", "Caudle", "Caulfield", "Causey", "Cavanaugh", "Cave", "Cecil", "Chadwick", "Chaffin", "Chamberlain", "Chamberlin", "Chambers", "Champagne", "Champion", "Chance", "Chandler", "Chaney", "Chapin", "Chapman", "Chappell", "Charles", "Charlton", "Chase", "Chastain", "Chavez", "Cheatham", "Cheek", "Cheney", "Cherry", "Chester", "Childers", "Childress", "Childs", "Chisholm", "Chitwood", "Choate", "Chrisman", "Christ", "Christensen", "Christenson", "Christian", "Christiansen", "Christianson", "Christie", "Christman", "Christopher", "Christy", "Church", "Churchill", "Claire", "Clancy", "Clapp", "Clark", "Clarke", "Clarkson", "Clary", "Clausen", "Clawson", "Clay", "Clayton", "Cleary", "Clegg", "Clem", "Clemens", "Clement", "Clements", "Clemons", "Cleveland", "Clevenger", "Clifford", "Clifton", "Cline", "Clinton", "Clooney", "Close", "Cloud", "Clough", "Clouse", "Cloutier", "Coates", "Coats", "Cobb", "Coble", "Coburn", "Cochran", "Cochrane", "Cockrell", "Cody", "Coe", "Coffey", "Coffin", "Coffman", "Coggins", "Cohen", "Cohn", "Coker", "Colbert", "Colburn", "Colby", "Cole", "Coleman", "Coles", "Coley", "Collett", "Colley", "Collier", "Collins", "Colmes", "Colson", "Colvin", "Colwell", "Combs", "Comer", "Compton", "Comstock", "Conaway", "Condon", "Cone", "Conger", "Conklin", "Conley", "Conlon", "Conn", "Connell", "Connelly", "Conner", "Connolly", "Connor", "Connors", "Conover", "Conrad", "Conroy", "Conte", "Conti", "Conway", "Cook", "Cooke", "Cooley", "Coolidge", "Coombs", "Coon", "Cooney", "Coons", "Cooper", "Cope", "Copeland", "Copley", "Coppola", "Corbett", "Corbin", "Corcoran", "Cordell", "Corder", "Corduroy", "Corey", "Corley", "Cormier", "Corn", "Cornelius", "Cornell", "Cornett", "Cornwell", "Correia", "Correll", "Corrigan", "Corwin", "Cosgrove", "Costa", "Costello", "Cote", "Cotter", "Cotton", "Cottrell", "Couch", "Coughlin", "Coulter", "Counts", "Courtney", "Cousins", "Couture", "Covert", "Covey", "Covington", "Cowan", "Cowart", "Cox", "Coy", "Coyle", "Coyne", "Crabtree", "Craddock", "Craft", "Craig", "Crain", "Cramer", "Crandall", "Crane", "Cranford", "Craven", "Crawford", "Crawley", "Creamer", "Creech", "Creel", "Creighton", "Crenshaw", "Crest", "Crews", "Crider", "Crisp", "Crist", "Criswell", "Crites", "Crocker", "Crockett", "Croft", "Cromer", "Cronin", "Crook", "Crooks", "Crosby", "Cross", "Crouch", "Crouse", "Crow", "Crowder", "Crowe", "Crowell", "Crowley", "Cruise", "Crum", "Crumb", "Crump", "Cruse", "Cruz", "Crystal", "Culbertson", "Cullen", "Culp", "Culpepper", "Culver", "Cummings", "Cummins", "Cunningham", "Cupp", "Curley", "Curran", "Currie", "Currier", "Curry", "Curtin", "Curtis", "Cushing", "Cushman", "Custer", "Cutler", "Cyr", "Dagostino", "Dahl", "Daigle", "Dailey", "Daily", "Dale", "Daley", "Dalrymple", "Dalton", "Daly", "Damato", "Damico", "Damron", "Dangelo", "Daniel", "Daniels", "Danielson", "Danner", "Darby", "Dark", "Darling", "Darnell", "Darr", "Dasilva", "Daugherty", "Davenport", "Davey", "David", "Davidson", "Davies", "Davis", "Davison", "Dawkins", "Dawson", "Day", "Dayton", "De Santa", "Deal", "Dean", "Deangelis", "Deaton", "Deboer", "Decker", "Dees", "Dehart", "Delaney", "Delany", "Delgado", "Dell", "Dellinger", "Deloach", "Delong", "Deluca", "DeLuca", "Demarco", "Demers", "DeMille", "Dempsey", "Denham", "Denison", "Denney", "Denning", "Dennis", "Dennison", "Denny", "Dent", "Denton", "Derosa", "Derr", "Derrick", "Desantis", "Desimone", "Desmond", "Destefano", "Deutsch", "Devine", "Devito", "Devlin", "Devore", "Devries", "Dewey", "Dewitt", "DeWitt", "Dexter", "Deyoung", "Dial", "Diamond", "Dias", "Diaz", "Dick", "Dickens", "Dickerson", "Dickey", "Dickinson", "Dickson", "Diehl", "Dietrich", "Dietz", "Dill", "Dillard", "Dillon", "Dinkley", "Dion", "Dionne", "Dix", "Dixon", "Doan", "Doane", "Dobbins", "Dobbs", "Dobson", "Dockery", "Dodd", "Dodds", "Dodge", "Dodson", "Doe", "Doherty", "Dolan", "Doll", "Dombrowski", "Donahue", "Donald", "Donaldson", "Donley", "Donnelly", "Donohue", "Donovan", "Dooley", "Doolittle", "Doran", "Dorman", "Dorn", "Dorsey", "Doss", "Dotson", "Doty", "Doucette", "Dougherty", "Doughty", "Douglas", "Douglass", "Dove", "Dover", "Dow", "Dowd", "Dowdy", "Dowell", "Dowling", "Downey", "Downing", "Downs", "Doyle", "Dozier", "Drake", "Draper", "Drew", "Dreyer", "Driggers", "Driscoll", "Driver", "Drummond", "Drury", "Dube", "Dubois", "Dubose", "Duckworth", "Duda", "Dudley", "Duff", "Duffy", "Dugan", "Duggan", "Dugger", "Dukakis", "Duke", "Dukes", "Dumas", "Dunaway", "Dunbar", "Duncan", "Dunham", "Dunlap", "Dunn", "Dunne", "Dunning", "Dupont", "Dupre", "Dupree", "Dupuis", "Duran", "Durand", "Durant", "Durbin", "Durham", "Durkin", "Dutton", "Duval", "Duvall", "Dvorak", "Dwyer", "Dye", "Dyer", "Dykes", "Dykstra", "Dyson", "Eads", "Eagle", "Earl", "Earle", "Earley", "Early", "Earnest", "Easley", "Eason", "East", "Easter", "Eastman", "Easton", "Eaton", "Eaves", "Ebert", "Eby", "Echols", "Eck", "Eckert", "Eddy", "Eden", "Edgar", "Edge", "Edmonds", "Edmondson", "Edwards", "Egan", "Egbert", "Eggers", "Eggleston", "Egielski", "Ehlers", "Eisenberg", "Eisenhower", "Elam", "Elder", "Eldridge", "Elias", "Elkins", "Eller", "Ellington", "Elliot", "Elliott", "Ellis", "Ellison", "Ellsworth", "Elmore", "Elrod", "Ely", "Embry", "Emerson", "Emery", "Emmons", "Engel", "England", "Engle", "English", "Engstrom", "Ennis", "Enos", "Enright", "Epperson", "Epps", "Epstein", "Erb", "Erdman", "Erickson", "Ernst", "Ervin", "Erwin", "Esposito", "Estep", "Estes", "Etheridge", "Ethridge", "Eubanks", "Evans", "Evenson", "Everett", "Everhart", "Evers", "Everson", "Ewing", "Ezell", "Faber", "Fabian", "Fagan", "Fahey", "Fain", "Fair", "Fairbanks", "Fairchild", "Faircloth", "Falcone", "Falk", "Fallon", "Fanning", "Farber", "Farkas", "Farley", "Farmer", "Farnsworth", "Farr", "Farrar", "Farrell", "Farrington", "Farris", "Farrow", "Faulk", "Faulkner", "Faust", "Fay", "Fazio", "Fee", "Feeney", "Feldman", "Feldsted", "Felix", "Feller", "Fellows", "Felton", "Felts", "Fennell", "Fenton", "Ferguson", "Fernandes", "Fernandez", "Ferrante", "Ferrara", "Ferrari", "Ferraro", "Ferreira", "Ferrell", "Ferris", "Ferry", "Fiedler", "Field", "Fields", "Fike", "Finch", "Fincher", "Findley", "Fine", "Fink", "Finley", "Finn", "Finnegan", "Finney", "Fiore", "Fischer", "Fish", "Fisher", "Fishman", "Fisk", "Fitch", "Fitzgerald", "FitzGerald", "Fitzpatrick", "Fitzsimmons", "Flaherty", "Flanagan", "Flanders", "Flanigan", "Flannery", "Fleck", "Fleming", "Fletcher", "Flick", "Flint", "Flood", "Flora", "Flores", "Flowers", "Floyd", "Fluke", "Flynn", "Fogarty", "Fogle", "Foley", "Folsom", "Foltz", "Fontaine", "Fontana", "Fontenot", "Foote", "Forbes", "Forbush", "Ford", "Foreman", "Forman", "Forrest", "Forrester", "Forster", "Forsyth", "Forsythe", "Forte", "Fortier", "Fortin", "Fortner", "Fortune", "Foss", "Foster", "Fountain", "Fournier", "Foust", "Fowler", "Fox", "Foy", "Fraley", "Frame", "France", "Francis", "Francisco", "Franco", "Frank", "Franke", "Frankel", "Franklin", "Franks", "Frantz", "Franz", "Fraser", "Frazer", "Frazier", "Frederick", "Fredericks", "Fredrickson", "Free", "Freed", "Freedman", "Freeland", "Freeman", "Freitas", "French", "Freund", "Frey", "Frick", "Fried", "Friedman", "Friedrich", "Friend", "Fries", "Friesen", "Fritz", "Frost", "Fry", "Frye", "Fryer", "Fuchs", "Fugate", "Fuller", "Fullerton", "Fulmer", "Fulton", "Fultz", "Funk", "Fuqua", "Furlong", "Furman", "Furr", "Fusco", "Gabel", "Gable", "Gabriel", "Gaddis", "Gaffney", "Gage", "Gagne", "Gagnon", "Gaines", "Gaither", "Galbraith", "Gale", "Gall", "Gallagher", "Gallant", "Gallo", "Galloway", "Galvin", "Gamble", "Gandy", "Gann", "Gannon", "Gant", "Garber", "Garcia", "Gardiner", "Gardner", "Garfield", "Garland", "Garman", "Garner", "Garrett", "Garrison", "Garrity", "Garvey", "Garvin", "Gary", "Garza", "Gaskins", "Gass", "Gaston", "Gates", "Gatlin", "Gauthier", "Gavin", "Gay", "Gearhart", "Geary", "Gee", "Geer", "Geiger", "Geller", "Gentile", "Gentry", "George", "Gerard", "Gerber", "Gerlach", "German", "Getz", "Geyer", "Gibbons", "Gibbs", "Gibson", "Giddings", "Giese", "Gifford", "Gilbert", "Gilbertson", "Gilchrist", "Giles", "Gill", "Gillen", "Gillespie", "Gillette", "Gilley", "Gilliam", "Gilliland", "Gillis", "Gilman", "Gilmore", "Gilson", "Gingerich", "Gingrich", "Ginn", "Giordano", "Gipson", "Girard", "Givens", "Glaser", "Glasgow", "Glass", "Gleason", "Glenn", "Glick", "Glover", "Glynn", "Goad", "Goble", "Goddard", "Godfrey", "Godwin", "Goebel", "Goetz", "Goff", "Goforth", "Goins", "Gold", "Goldberg", "Golden", "Goldman", "Goldsmith", "Goldstein", "Gomes", "Gomez", "Gonzales", "Gonzalez", "Gooch", "Good", "Goode", "Goodin", "Goodman", "Goodrich", "Goodson", "Goodwin", "Gordon", "Gore", "Gorham", "Gorman", "Gorrell", "Gorski", "Gosnell", "Goss", "Gossett", "Gottlieb", "Gough", "Gould", "Gower", "Graber", "Grabowski", "Grace", "Grady", "Graf", "Graff", "Graham", "Granger", "Grant", "Grantham", "Grasso", "Graves", "Gray", "Grayson", "Graziano", "Greathouse", "Greco", "Green", "Greenberg", "Greene", "Greenfield", "Greenlee", "Greenwald", "Greenwell", "Greenwood", "Greer", "Gregg", "Gregory", "Greiner", "Grenier", "Gresham", "Grey", "Grider", "Griffin", "Griffis", "Griffith", "Griffiths", "Griggs", "Grigsby", "Grim", "Grimes", "Grimm", "Grisham", "Grissom", "Griswold", "Groening", "Groff", "Grogan", "Grooms", "Gross", "Grossman", "Groth", "Grove", "Grover", "Groves", "Grubb", "Grubbs", "Gruber", "Guarino", "Gubler", "Guenther", "Guerra", "Guest", "Guffey", "Guidry", "Guillory", "Guinn", "Gulley", "Gunderson", "Gunn", "Gunter", "Gunther", "Gurley", "Gustafson", "Guthrie", "Gutierrez", "Guy", "Haag", "Haas", "Haase", "Hacker", "Hackett", "Hackney", "Haddad", "Haddock", "Hadley", "Hagan", "Hagen", "Hager", "Haggard", "Haggerty", "Hahn", "Haight", "Haines", "Hair", "Hale", "Hales", "Haley", "Hall", "Haller", "Hallman", "Halsey", "Halstead", "Halverson", "Halvorson", "Ham", "Hamblin", "Hamby", "Hamel", "Hamilton", "Hamlin", "Hamm", "Hammer", "Hammett", "Hammock", "Hammond", "Hammonds", "Hammons", "Hampden", "Hampton", "Hamrick", "Hancock", "Hand", "Handley", "Handy", "Hanes", "Haney", "Hankins", "Hanks", "Hanley", "Hanlon", "Hanna", "Hannah", "Hannity", "Hannon", "Hansen", "Hanson", "Harbin", "Harden", "Harder", "Hardesty", "Hardin", "Harding", "Hardman", "Hardward", "Hardwick", "Hardy", "Hare", "Hargis", "Hargrove", "Harkins", "Harlan", "Harless", "Harley", "Harlow", "Harman", "Harmon", "Harms", "Harp", "Harper", "Harrell", "Harrelson", "Harrington", "Harris", "Harrison", "Hart", "Harter", "Hartley", "Hartman", "Hartmann", "Hartnett", "Hartvigsen", "Hartzell", "Harvey", "Harwell", "Harwood", "Haskell", "Haskins", "Hass", "Hastings", "Hatch", "Hatcher", "Hatfield", "Hathaway", "Hatton", "Hauck", "Haugen", "Hauser", "Havens", "Hawes", "Hawk", "Hawkins", "Hawks", "Hawley", "Hawthorne", "Hay", "Hayden", "Hayes", "Haynes", "Hays", "Hayward", "Haywood", "Hazen", "Head", "Headley", "Healey", "Healy", "Heard", "Hearn", "Heath", "Heaton", "Hebert", "Hecht", "Heck", "Heckman", "Hedges", "Hedrick", "Heffernan", "Heffner", "Heflin", "Hefner", "Heil", "Heilman", "Heim", "Hein", "Heinrich", "Heinz", "Heiser", "Held", "Heller", "Helm", "Helms", "Helton", "Hembree", "Hemphill", "Henderson", "Hendrick", "Hendricks", "Hendrickson", "Hendrix", "Henke", "Henkes", "Henley", "Hennessey", "Hennessy", "Henning", "Henry", "Hensley", "Henson", "Herbert", "Herbst", "Herman", "Hermann", "Hernandez", "Herndon", "Herr", "Herrera", "Herrick", "Herrin", "Herring", "Herrington", "Herrmann", "Herron", "Hershberger", "Herzog", "Hess", "Hester", "Hetrick", "Hewitt", "Hiatt", "Hibbard", "Hickey", "Hickman", "Hicks", "Higdon", "Higginbotham", "Higgins", "Higgs", "High", "Hightower", "Hildebrand", "Hildreth", "Hill", "Hiller", "Hilliard", "Hillman", "Hills", "Hilton", "Himes", "Hinckley", "Hinds", "Hines", "Hinkle", "Hinson", "Hinton", "Hintz", "Hirsch", "Hitchcock", "Hitchens", "Hite", "Hitt", "Hoag", "Hobbs", "Hobson", "Hoch", "Hodge", "Hodges", "Hodgson", "Hofer", "Hoff", "Hoffman", "Hoffmann", "Hofmann", "Hogan", "Hogg", "Hogue", "Hoke", "Holbrook", "Holcomb", "Holcombe", "Holden", "Holder", "Holland", "Holley", "Holliday", "Hollingsworth", "Hollis", "Holloway", "Holly", "Holm", "Holman", "Holmes", "Holt", "Holton", "Holtz", "Homan", "Honeycutt", "Hood", "Hook", "Hooker", "Hooks", "Hooper", "Hoover", "Hope", "Hopkins", "Hoppe", "Hopper", "Hopson", "Horan", "Horn", "Horne", "Horner", "Horning", "Hornsby", "Horowitz", "Horst", "Horton", "Horvath", "Hoskins", "Hostetler", "Houck", "Hough", "Houghton", "Houle", "House", "Houser", "Houston", "Howard", "Howe", "Howell", "Howes", "Howland", "Hoy", "Hoyle", "Hoyt", "Hubbard", "Huber", "Hubert", "Huddleston", "Hudgins", "Hudson", "Huebner", "Huey", "Huff", "Huffman", "Huggins", "Hughes", "Hull", "Hulse", "Hulsey", "Hume", "Hummel", "Humphrey", "Humphreys", "Humphries", "Hundley", "Hunt", "Hunter", "Huntington", "Huntley", "Hurd", "Hurley", "Hurst", "Hurt", "Huskey", "Huss", "Hussey", "Hussie", "Huston", "Hutchens", "Hutcheson", "Hutchings", "Hutchins", "Hutchinson", "Hutchison", "Hutson", "Hutto", "Hutton", "Hyatt", "Hyde", "Hyland", "Hyman", "Hymas", "Hynes", "Ingalls", "Ingersoll", "Ingle", "Ingram", "Inman", "Irby", "Ireland", "Irish", "Irvin", "Irvine", "Irving", "Irwin", "Isaac", "Isaacs", "Isaacson", "Isbell", "Isley", "Israel", "Iverson", "Ives", "Ivey", "Ivy", "Izatt", "Jablonski", "Jack", "Jackman", "Jackson", "Jacob", "Jacobs", "Jacobsen", "Jacobson", "Jacoby", "Jacques", "Jaeger", "James", "Jameson", "Jamieson", "Jamison", "Janes", "Jankowski", "Jansen", "Janssen", "Jarrell", "Jarrett", "Jarvis", "Jasper", "Jay", "Jeffers", "Jefferson", "Jeffery", "Jeffrey", "Jeffries", "Jenkins", "Jenks", "Jennings", "Jensen", "Jenson", "Jernigan", "Jerome", "Jessup", "Jester", "Jett", "Jewell", "Jewett", "Jimenez", "Jobe", "Jobs", "Johansen", "John", "Johns", "Johnsen", "Johnson", "Johnston", "Johnstone", "Joiner", "Jolley", "Jolly", "Jonas", "Jones", "Joosten", "Jordan", "Jorgensen", "Jorgenson", "Joseph", "Joslin", "Joy", "Joyce", "Joyner", "Judd", "Judge", "Judy", "Julian", "Jung", "Justice", "Justus", "Kahn", "Kaiser", "Kaminski", "Kane", "Kanker", "Kaplan", "Karamazov", "Karr", "Kasper", "Katz", "Kauffman", "Kaufman", "Kaufmann", "Kay", "Kaye", "Keane", "Kearney", "Kearns", "Keating", "Keaton", "Keck", "Keefe", "Keefer", "Keegan", "Keel", "Keeler", "Keeling", "Keen", "Keenan", "Keene", "Keener", "Keeney", "Keeton", "Kehoe", "Keim", "Keiser", "Keith", "Kelleher", "Keller", "Kelley", "Kellogg", "Kelly", "Kelsey", "Kelso", "Kemp", "Kemper", "Kempf", "Kendall", "Kendrick", "Kennedy", "Kenney", "Kenny", "Kensington", "Kent", "Kenyon", "Kern", "Kerns", "Kerr", "Kersey", "Kessler", "Kester", "Ketchum", "Key", "Keyes", "Keys", "Keyser", "Kidd", "Kidder", "Kidwell", "Kiefer", "Kieffer", "Kilgore", "Killian", "Kilpatrick", "Kimball", "Kimble", "Kimmel", "Kincaid", "Kinder", "King", "Kingsley", "Kinney", "Kinsey", "Kirby", "Kirchner", "Kirk", "Kirkland", "Kirkpatrick", "Kirsch", "Kiser", "Kish", "Kitchen", "Kitchens", "Klein", "Kline", "Kling", "Klinger", "Knapp", "Knight", "Knoll", "Knott", "Knotts", "Knowles", "Knowlton", "Knox", "Knudsen", "Knudson", "Knutson", "Koch", "Koehler", "Koehn", "Koenig", "Koester", "Kohl", "Kohler", "Kohn", "Kolb", "Koonce", "Koontz", "Kopp", "Koss", "Koster", "Kovach", "Kovacs", "Kowalski", "Kozak", "Kozlowski", "Kraemer", "Kraft", "Kramer", "Kraus", "Krause", "Krauss", "Krebs", "Kremer", "Kress", "Krieger", "Kroll", "Krueger", "Krug", "Kruger", "Krugman", "Kruse", "Kuehn", "Kuhn", "Kuhns", "Kunkel", "Kuntz", "Kunz", "Kurtz", "Kushner", "Kuykendall", "Kwiatkowski", "Kyle", "Lacey", "Lackey", "Lacroix", "Lacy", "Ladd", "Ladner", "Lafferty", "Lafleur", "Lahren", "Laird", "Lake", "Lalonde", "Lamar", "Lamb", "Lambert", "Lancaster", "Lance", "Land", "Landers", "Landis", "Landon", "Landrum", "Landry", "Lane", "Laney", "Lang", "Langdon", "Lange", "Langer", "Langford", "Langley", "Langlois", "Langston", "Lanham", "Lanier", "Lankford", "Lanning", "Lantz", "Laplante", "Lapointe", "Laporte", "Lapp", "Large", "Larkin", "Larose", "Larsen", "Larson", "Larue", "Lash", "Lassiter", "Latham", "Lathrop", "Latimer", "Lauer", "Laughlin", "Lauritzen", "Lavigne", "Lavoie", "Law", "Lawler", "Lawless", "Lawrence", "Laws", "Lawson", "Lawton", "Lay", "Layman", "Layne", "Layton", "Lea", "Leach", "Leahy", "Lear", "Leary", "Leavitt", "Leblanc", "Leclair", "Ledbetter", "Ledford", "Lee", "Leger", "Legg", "Leggett", "Lehman", "Lehmann", "Lehr", "Leigh", "Leighton", "Lemaster", "Lemay", "Lemieux", "Lemke", "Lemon", "Lemons", "Lennon", "Lentz", "Lenz", "Leo", "Leon", "Leonard", "Leone", "Lerner", "Leroy", "Leslie", "Lester", "Levesque", "Levin", "Levine", "Levy", "Lewandowski", "Lewinsky", "Lewis", "Lexington", "Libby", "Lieberman", "Light", "Liles", "Lilley", "Lilly", "Lima", "Lincoln", "Lind", "Lindberg", "Linder", "Lindgren", "Lindley", "Lindner", "Lindquist", "Lindsay", "Lindsey", "Lindstrom", "Link", "Linn", "Linton", "Linville", "Lipscomb", "Lister", "Little", "Littlefield", "Littleton", "Lively", "Livingston", "Lloyd", "Locke", "Lockhart", "Locklear", "Lockwood", "Loftus", "Logan", "Logsdon", "Logue", "Lohr", "Lombardi", "Lombardo", "London", "Long", "Longo", "Loomis", "Looney", "Loper", "Lopes", "Lopez", "Lord", "Lorenz", "Lott", "Love", "Lovejoy", "Lovelace", "Loveless", "Lovell", "Lovett", "Low", "Lowe", "Lowell", "Lowery", "Lowman", "Lowry", "Loy", "Loyd", "Lucas", "Luce", "Ludwig", "Luke", "Luna", "Lund", "Lundberg", "Lundgren", "Lundquist", "Lundy", "Lunsford", "Lusk", "Luther", "Luthor", "Luttrell", "Lutz", "Lyle", "Lyles", "Lyman", "Lynch", "Lynn", "Lyon", "Lyons", "Lytle", "Maas", "Mabe", "Mabry", "MacDonald", "Mace", "Machado", "Mack", "MacKay", "MacKenzie", "Mackey", "MacLean", "MacLeod", "MacReady", "Madden", "Maddow", "Maddox", "Madison", "Madsen", "Magee", "Maggard", "Magnuson", "Maguire", "Mahaffey", "Mahan", "Maher", "Mahon", "Mahoney", "Maier", "Main", "Major", "Majors", "Maki", "Malcolm", "Mallory", "Malloy", "Malone", "Maloney", "Mancini", "Mancuso", "Mandel", "Maness", "Mangum", "Manley", "Mann", "Manning", "Mansfield", "Manson", "Manuel", "Maples", "March", "Marchese", "Marcum", "Marcus", "Marek", "Marino", "Marion", "Mark", "Markham", "Markley", "Marks", "Marler", "Marlow", "Marquardt", "Marquis", "Marr", "Marsh", "Marshall", "Martel", "Martell", "Martens", "Martin", "Martindale", "Martinez", "Martini", "Martino", "Martins", "Martinson", "Martz", "Marvin", "Marx", "Mashburn", "Mason", "Massey", "Massie", "Mast", "Masters", "Masterson", "Matheny", "Mather", "Mathers", "Matheson", "Mathews", "Mathias", "Mathis", "Matlock", "Matson", "Matteson", "Matthews", "Mattingly", "Mattox", "Mattson", "Mauldin", "Maurer", "Mauro", "Maxey", "Maxson", "Maxwell", "May", "Mayberry", "Mayer", "Mayes", "Mayfair", "Mayfield", "Mayhew", "Maynard", "Mayo", "Mays", "Mazur", "Mazza", "McAdams", "McAfee", "McAlister", "McAllister", "McArthur", "McBee", "McBride", "McCabe", "McCaffrey", "McCain", "McCall", "McCallister", "McCallum", "McCann", "McCarter", "McCarthy", "McCartney", "McCarty", "McCauley", "McClain", "McClanahan", "McClellan", "McClelland", "McClendon", "McClintock", "McCloskey", "McCloud", "McClung", "McClure", "McCluskey", "McCollum", "McCombs", "McConnell", "McCool", "McCord", "McCorkle", "McCormack", "McCormick", "McCoy", "McCracken", "McCrary", "McCray", "McCreary", "McCree", "McCue", "McCulloch", "McCullough", "McCune", "McCurdy", "McCurry", "McCutcheon", "McDaniel", "McDermott", "McDevitt", "McDonald", "McDonnell", "McDonough", "McDowell", "McElroy", "McEwen", "McFadden", "McFall", "McFarland", "McGarry", "McGee", "McGhee", "McGill", "McGinley", "McGinnis", "McGovern", "McGowan", "McGrath", "McGraw", "McGregor", "McGrew", "McGuire", "McHale", "McHenry", "McHugh", "McIntire", "McIntosh", "McIntyre", "McKay", "McKee", "McKeever", "McKelvey", "McKenna", "McKenzie", "McKeon", "McKeown", "McKinley", "McKinney", "McKinnon", "McKnight", "McLain", "McLaughlin", "McLean", "McLemore", "McLeod", "McMahan", "McMahon", "McManus", "McMaster", "McMichael", "McMillan", "McMillen", "McMullen", "McMurray", "McNabb", "McNair", "McNally", "McNamara", "McNeal", "McNeely", "McNeil", "McNeill", "McNulty", "McNutt", "McPherson", "McQueen", "McRae", "McReynolds", "McVay", "McVey", "McWhorter", "McWilliams", "Mead", "Meade", "Meador", "Meadows", "Means", "Mears", "Mecham", "Medeiros", "Medici", "Medina", "Medley", "Medlin", "Meehan", "Meek", "Meeker", "Meeks", "Meier", "Meister", "Mello", "Melton", "Melvin", "Menard", "Mendenhall", "Mendez", "Mendoza", "Mercer", "Merchant", "Mercier", "Meredith", "Merkel", "Merrell", "Merrick", "Merrill", "Merriman", "Merritt", "Mertz", "Messer", "Messick", "Messina", "Metcalf", "Metz", "Metzger", "Metzler", "Meyer", "Meyers", "Michael", "Michaels", "Michalski", "Michaud", "Michel", "Michels", "Mickelson", "Middleton", "Milam", "Milburn", "Miles", "Millard", "Miller", "Milligan", "Mills", "Milner", "Milton", "Mims", "Miner", "Minnick", "Minor", "Minter", "Minton", "Miranda", "Mitchell", "Mixon", "Mize", "Mobley", "Mock", "Moe", "Moeller", "Moen", "Moffett", "Moffitt", "Mohler", "Mohr", "Moll", "Molloy", "Molnar", "Monaco", "Monaghan", "Monahan", "Monk", "Monroe", "Monson", "Montague", "Montgomery", "Montrose", "Moody", "Moon", "Mooney", "Moore", "Morales", "Moran", "Moreau", "Morehead", "Moreland", "Morelli", "Moreno", "Morey", "Morgan", "Moriarty", "Morin", "Moritz", "Morley", "Morrell", "Morrill", "Morris", "Morrison", "Morrissey", "Morrow", "Morse", "Mortensen", "Morton", "Moseley", "Moser", "Moses", "Mosher", "Mosier", "Mosley", "Moss", "Mott", "Moulton", "Mount", "Mowery", "Moyer", "Mueller", "Muir", "Mulcahy", "Mulder", "Mull", "Mullen", "Muller", "Mulligan", "Mullin", "Mullins", "Mullis", "Mundy", "Munn", "Munoz", "Munro", "Munroe", "Munsen", "Munson", "Murdock", "Murphy", "Murray", "Murrell", "Muse", "Musick", "Musselman", "Musser", "Myer", "Myers", "Myrick", "Nadeau", "Naegle", "Nagel", "Nagle", "Nagy", "Nall", "Nance", "Napier", "Napolitano", "Nash", "Naylor", "Neal", "Needham", "Neel", "Neeley", "Neely", "Neff", "Neil", "Neill", "Neilson", "Nelsen", "Nelson", "Nemeth", "Nesbitt", "Ness", "Nettles", "Neuman", "Neumann", "Neville", "New", "Newberry", "Newby", "Newcomb", "Newell", "Newkirk", "Newland", "Newman", "Newsom", "Newsome", "Newton", "Nicholas", "Nichols", "Nicholson", "Nickel", "Nickerson", "Nielsen", "Nielson", "Niles", "Nix", "Nixon", "Noble", "Nobles", "Noe", "Noel", "Nolan", "Noland", "Nolen", "Noll", "Nolte", "Noonan", "Norman", "Norris", "North", "Norton", "Norwood", "Novak", "Novotny", "Nowak", "Noyes", "Nugent", "Null", "Nunes", "Nunley", "Nunn", "Nutt", "Nutter", "Nye", "O'Brien", "O'Bryant", "O'Connell", "O'Connor", "O'Dell", "O'Donnell", "O'Grady", "O'Hara", "O'Keefe", "O'Leary", "O'Malley", "O'Neal", "O'Neil", "O'Neill", "O'Reilly", "O'Rourke", "O'Shea", "O'Sullivan", "O'Toole", "Oakes", "Oakley", "Oaks", "Oates", "Odell", "Odom", "Ogden", "Ogilvie", "Ogle", "Oglesby", "Oldham", "Oliveira", "Oliver", "Olmstead", "Olsen", "Olson", "Oneal", "Oneil", "Oneill", "Oreilly", "Orlando", "Orourke", "Orr", "Orth", "Ortiz", "Orwell", "Osborn", "Osborne", "Osburn", "Osmond", "Ostrander", "Ostrowski", "Oswald", "Ott", "Otto", "Ouellette", "Overstreet", "Overton", "Owen", "Owens", "Pace", "Pacheco", "Pack", "Packard", "Packer", "Padgett", "Pagano", "Page", "Paige", "Paine", "Painter", "Palermo", "Palin", "Palm", "Palmer", "Palmieri", "Palomino", "Palumbo", "Pape", "Pappas", "Paquette", "Parent", "Parham", "Paris", "Parish", "Parisi", "Park", "Parker", "Parkinson", "Parks", "Parnell", "Parr", "Parris", "Parrish", "Parrott", "Parry", "Parsley", "Parson", "Parsons", "Partin", "Parton", "Partridge", "Pate", "Patrick", "Patten", "Patterson", "Patton", "Paul", "Pauley", "Paulsen", "Paulson", "Paxton", "Payne", "Payton", "Peace", "Peacock", "Peak", "Pearce", "Pearl", "Pearson", "Pease", "Peck", "Pedersen", "Pederson", "Peebles", "Peek", "Pellegrino", "Pelletier", "Pelosi", "Pemberton", "Pence", "Penderghast", "Pendergrass", "Pendleton", "Penn", "Pennington", "Penny", "Penrod", "Peoples", "Pepper", "Perdue", "Pereira", "Perez", "Perkins", "Perrin", "Perry", "Person", "Peter", "Peterman", "Peters", "Petersen", "Peterson", "Petrie", "Pettit", "Petty", "Peyton", "Pfaff", "Pfeifer", "Pfeiffer", "Phelan", "Phelps", "Phillips", "Phipps", "Piazza", "Picard", "Pickard", "Pickens", "Pickering", "Pickett", "Pieper", "Pierce", "Pierson", "Pike", "Pilkey", "Pines", "Pinkerton", "Pinto", "Piper", "Pippin", "Pitman", "Pitt", "Pittman", "Pitts", "Place", "Plank", "Plante", "Platt", "Plummer", "Plunkett", "Poe", "Pogue", "Pohler", "Poindexter", "Poirier", "Poland", "Poling", "Polk", "Pollack", "Pollard", "Pollock", "Pomeroy", "Pond", "Ponder", "Pool", "Poole", "Poore", "Pope", "Popp", "Porter", "Posey", "Post", "Poston", "Potter", "Potts", "Poulin", "Powell", "Power", "Powers", "Prater", "Prather", "Pratt", "Prenderghast", "Prentice", "Prescott", "Presley", "Pressley", "Preston", "Prewitt", "Price", "Priebus", "Priest", "Prince", "Pringle", "Pritchard", "Pritchett", "Proctor", "Proffitt", "Prosser", "Provost", "Pruett", "Pruitt", "Pryor", "Pucino", "Puckett", "Pugh", "Pullen", "Pulliam", "Pulsipher", "Purcell", "Purdy", "Purvis", "Putman", "Putnam", "Pyle", "Pyles", "Qualls", "Queen", "Quick", "Quigley", "Quinlan", "Quinn", "Rader", "Radford", "Radtke", "Rafferty", "Ragan", "Ragland", "Ragsdale", "Raines", "Rainey", "Rains", "Rainwater", "Raley", "Ralph", "Ralston", "Ramey", "Ramirez", "Ramos", "Ramsay", "Ramsey", "Rand", "Randall", "Randazzo", "Randolph", "Raney", "Rankin", "Ransom", "Rapp", "Rash", "Rasmussen", "Ratcliff", "Rathbun", "Ratliff", "Rau", "Rauch", "Rausch", "Rawlings", "Rawls", "Rawson", "Ray", "Rayburn", "Raymond", "Raynor", "Rea", "Read", "Reagan", "Reardon", "Reaves", "Rector", "Redd", "Redden", "Redding", "Redfield", "Redman", "Redmon", "Redmond", "Reece", "Reed", "Reeder", "Reedy", "Rees", "Reese", "Reeves", "Regan", "Register", "Reich", "Reichert", "Reid", "Reilly", "Reimer", "Reinhardt", "Reinhart", "Reinke", "Reis", "Reiss", "Reiter", "Reitz", "Renfro", "Renner", "Reno", "Reuter", "Reyes", "Reynolds", "Rhea", "Rhoades", "Rhoads", "Rhodes", "Ricci", "Rice", "Rich", "Richard", "Richards", "Richardson", "Richey", "Richman", "Richmond", "Richter", "Rickard", "Ricker", "Ricketts", "Ricks", "Riddle", "Ridenour", "Rider", "Ridge", "Ridgeway", "Ridley", "Riedel", "Riedell", "Ries", "Rife", "Rigby", "Riggins", "Riggs", "Rigsby", "Riley", "Rinaldi", "Rinehart", "Ring", "Riordan", "Ripley", "Ritchey", "Ritchie", "Ritter", "Ritz", "Rivera", "Rivers", "Rizzo", "Roach", "Roark", "Robb", "Robbins", "Roberson", "Robert", "Roberts", "Robertson", "Robinette", "Robins", "Robinson", "Robison", "Robson", "Roby", "Rocco", "Rocha", "Roche", "Rock", "Rockwell", "Roderick", "Rodgers", "Rodrigues", "Rodriguez", "Roe", "Roeder", "Rogers", "Rohde", "Rohr", "Rohrer", "Roland", "Roller", "Rollins", "Roman", "Romano", "Romeo", "Romero", "Romine", "Romney", "Rood", "Rooney", "Roosevelt", "Root", "Roper", "Rosa", "Rose", "Rosen", "Rosenbaum", "Rosenberg", "Rosenberger", "Rosenthal", "Ross", "Rossi", "Roth", "Rouse", "Roush", "Rousseau", "Rowan", "Rowe", "Rowell", "Rowland", "Rowley", "Roy", "Royal", "Royer", "Rubin", "Rubino", "Ruble", "Ruby", "Rucker", "Rudd", "Rudolph", "Rudy", "Ruff", "Ruggiero", "Ruiz", "Runyan", "Runyon", "Rupert", "Rupp", "Rush", "Rushing", "Russ", "Russell", "Russo", "Rust", "Ruth", "Rutherford", "Rutkowski", "Rutledge", "Rutter", "Ryan", "Ryder", "Sabo", "Sacco", "Sachs", "Sadler", "Sadowski", "Sage", "Sager", "Salazar", "Salerno", "Salisbury", "Salmon", "Salter", "Salyer", "Sammons", "Sample", "Samples", "Sampson", "Sams", "Samson", "Samuels", "Samuelson", "Sanborn", "Sanchez", "Sandberg", "Sander", "Sanders", "Sanderson", "Sandlin", "Sands", "Sanford", "Santoro", "Santos", "Sapp", "Sargent", "Sarver", "Sasse", "Sasser", "Satterfield", "Sauer", "Saunders", "Savage", "Sawyer", "Saxton", "Sayers", "Saylor", "Sayre", "Scanlon", "Scarborough", "Scarbrough", "Scarvo", "Schaefer", "Schaeffer", "Schafer", "Schaffer", "Schatz", "Schell", "Schenk", "Scherer", "Schiller", "Schilling", "Schindler", "Schlegel", "Schlosser", "Schmid", "Schmidt", "Schmitt", "Schmitz", "Schneider", "Schnell", "Schoen", "Schofield", "Scholl", "Schoonover", "Schott", "Schrader", "Schramm", "Schreiber", "Schreiner", "Schrock", "Schroeder", "Schubert", "Schuler", "Schulman", "Schulte", "Schultz", "Schulz", "Schulze", "Schumacher", "Schumann", "Schuster", "Schwab", "Schwartz", "Schwarz", "Schweitzer", "Scoggins", "Scott", "Scroggins", "Scruggs", "Scully", "Seal", "Seals", "Seaman", "Searcy", "Sears", "Seaton", "Seay", "Sebastian", "See", "Seeley", "Segal", "Seibert", "Seidel", "Seifert", "Seiler", "Seitz", "Selby", "Self", "Sell", "Sellers", "Sells", "Sessions", "Settle", "Severson", "Seward", "Sewell", "Sexton", "Seymour", "Shackelford", "Shafer", "Shaffer", "Shanahan", "Shane", "Shank", "Shanks", "Shannon", "Shapiro", "Sharkey", "Sharp", "Sharpe", "Shaughnessy", "Shaver", "Shaw", "Shay", "Shea", "Shearer", "Sheehan", "Sheets", "Sheffield", "Shelby", "Sheldon", "Shell", "Shelley", "Shelton", "Shepard", "Shepherd", "Sheppard", "Sheridan", "Sherman", "Sherrill", "Sherry", "Sherwood", "Shields", "Shifflett", "Shinn", "Shipley", "Shipman", "Shipp", "Shirk", "Shirley", "Shively", "Shockley", "Shoemaker", "Shook", "Shore", "Shores", "Short", "Showalter", "Shrader", "Shreve", "Shuler", "Shull", "Shultz", "Shumaker", "Shuman", "Shumate", "Shumway", "Sibley", "Sides", "Siebert", "Siegel", "Sigler", "Sikes", "Siler", "Silva", "Silver", "Silverman", "Silvers", "Silverstein", "Simmons", "Simms", "Simon", "Simone", "Simons", "Simonson", "Simpkins", "Simpson", "Sims", "Sinclair", "Singer", "Singletary", "Singleton", "Sipes", "Sisco", "Sisk", "Sisson", "Sizemore", "Skaggs", "Skelton", "Skidmore", "Skinner", "Skipper", "Slack", "Slade", "Slagle", "Slater", "Slattery", "Slaughter", "Sloan", "Slocum", "Slone", "Small", "Smalley", "Smallwood", "Smart", "Smiley", "Smith", "Smithson", "Smoot", "Smyth", "Snead", "Sneed", "Snell", "Snider", "Snodgrass", "Snook", "Snow", "Snowden", "Snyder", "Soares", "Solomon", "Somers", "Sommer", "Sommers", "Soper", "Sorensen", "Sorenson", "Sorrell", "Soto", "Sousa", "South", "Southard", "Southerland", "Southern", "Souza", "Sowell", "Sowers", "Spacey", "Spain", "Spalding", "Spangler", "Sparkman", "Sparks", "Spaulding", "Spear", "Spears", "Speck", "Speer", "Spence", "Spencer", "Spendlove", "Sperry", "Spicer", "Spiegel", "Spires", "Spitzer", "Spivey", "Spooner", "Spradlin", "Sprague", "Spring", "Springer", "Sprouse", "Spurgeon", "Spurlock", "Squires", "St. Clair", "St. James", "St. John", "St. Pierre", "Stacey", "Stack", "Stacy", "Stafford", "Staggs", "Stahl", "Staley", "Stallings", "Stamper", "Stanfield", "Stanford", "Stanley", "Stantis", "Stanton", "Staples", "Stapleton", "Stark", "Starkey", "Starks", "Starling", "Starnes", "Starr", "Staton", "Stauffer", "Steadman", "Stearns", "Stebbins", "Steed", "Steele", "Steen", "Steffen", "Stegall", "Stein", "Steinberg", "Steiner", "Steinmetz", "Stephan", "Stephen", "Stephens", "Stephenson", "Stepp", "Sterling", "Stern", "Stevens", "Stevenson", "Steward", "Stewart", "Stidham", "Stiles", "Still", "Stillwell", "Stine", "Stinnett", "Stinson", "Stock", "Stocker", "Stockton", "Stockwell", "Stoddard", "Stokes", "Stoll", "Stoltzfus", "Stone", "Stoner", "Storey", "Storm", "Story", "Stout", "Stovall", "Stover", "Stowe", "Strain", "Straits", "Strand", "Strange", "Stratton", "Straub", "Strauss", "Street", "Streeter", "Strickland", "Strider", "Stringer", "Strode", "Strom", "Strong", "Stroud", "Stroup", "Strunk", "Stuart", "Stubblefield", "Stubbs", "Stuckey", "Stull", "Stump", "Stumpf", "Sturgeon", "Sturgill", "Sturm", "Stutzman", "Sugar", "Suggs", "Sullivan", "Summers", "Sumner", "Sutherland", "Sutter", "Sutton", "Swafford", "Swain", "Swan", "Swank", "Swann", "Swanson", "Swartz", "Swearingen", "Sweat", "Sweeney", "Sweet", "Swenson", "Swift", "Swisher", "Switzer", "Swope", "Sykes", "Sylvester", "Szabo", "Szymanski", "Taber", "Tabor", "Tackett", "Taft", "Taggart", "Talbert", "Talbot", "Talbott", "Talley", "Tallman", "Tanner", "Tarr", "Tate", "Tatum", "Taylor", "Teague", "Teal", "Teel", "Temple", "Templeton", "Tennant", "Tenney", "Terrell", "Terry", "Testa", "Thacker", "Tharp", "Thatcher", "Thayer", "Theis", "Thibodeau", "Thibodeaux", "Thiel", "Thomas", "Thomason", "Thompson", "Thomsen", "Thomson", "Thorn", "Thornburg", "Thorne", "Thornton", "Thorpe", "Thorson", "Thrasher", "Thurman", "Thurston", "Tibbetts", "Tice", "Tidwell", "Tierney", "Tillerson", "Tilley", "Tillman", "Tilton", "Timberlake", "Timm", "Timmerman", "Timmons", "Tinsley", "Tipton", "Titus", "Tobias", "Tobin", "Todd", "Tolbert", "Toler", "Tomlin", "Tomlinson", "Tompkins", "Toney", "Toomey", "Torres", "Toth", "Towne", "Townley", "Townsend", "Tracey", "Tracy", "Trahan", "Trainor", "Trammell", "Trapp", "Travers", "Travis", "Traylor", "Treadway", "Tremblay", "Trent", "Trimble", "Triplett", "Tripp", "Trombley", "Trotter", "Trout", "Troutman", "Trowbridge", "Troy", "Troyer", "True", "Truitt", "Truman", "Trump", "Tubbs", "Tuck", "Tucker", "Tully", "Turk", "Turley", "Turnbull", "Turner", "Turney", "Turpin", "Tuttle", "Tyler", "Tyree", "Tyson", "Ulmer", "Ulrich", "Underhill", "Underwood", "Unger", "Unruh", "Upchurch", "Upton", "Urban", "Vaccaro", "Vail", "Valdez", "Valenti", "Valentine", "Valentino", "Van Damme", "Van de Kamp", "Van Dyke", "Van Horn", "Van", "Vance", "Vandenberg", "Vandervelde", "Vandyke", "Vanhorn", "Vanmeter", "Vann", "Vanover", "Vanwinkle", "Vargas", "Vargo", "Varner", "Varney", "Vasquez", "Vaughan", "Vaughn", "Vaught", "Venable", "Vendome", "Ventura", "Vernon", "Vest", "Vetter", "Vick", "Vickers", "Vickery", "Vieira", "Vincent", "Vines", "Vinson", "Vitale", "Vogel", "Vogt", "Voigt", "Volk", "Vollmer", "Volpe", "Voorhees", "Voss", "Waddell", "Wade", "Wadsworth", "Waggoner", "Wagner", "Wagoner", "Wahl", "Waite", "Wakefield", "Walden", "Waldron", "Waldrop", "Walker", "Wall", "Wallace", "Wallen", "Waller", "Wallin", "Walling", "Wallis", "Walls", "Walsh", "Walter", "Walters", "Walton", "Waltz", "Walz", "Wampler", "Ward", "Warden", "Ware", "Warner", "Warren", "Warrington", "Washburn", "Washington", "Wasserman", "Wasson", "Waterman", "Waters", "Watkins", "Watson", "Watt", "Watters", "Watts", "Waugh", "Way", "Wayne", "Weatherford", "Weathers", "Weaver", "Webb", "Webber", "Weber", "Webster", "Weed", "Weeks", "Weems", "Wegner", "Weidner", "Weigel", "Weil", "Weiland", "Weiler", "Weimer", "Weinberg", "Weiner", "Weinstein", "Weir", "Weis", "Weiss", "Welborn", "Welch", "Weldon", "Welker", "Weller", "Wellman", "Wells", "Welsh", "Wendt", "Wenger", "Wentworth", "Wentz", "Wenzel", "Werner", "Wertz", "Wesley", "Wessel", "West", "Westbrook", "Westfall", "Westmoreland", "Weston", "Westphal", "Wetzel", "Whalen", "Whaley", "Wharton", "Whatley", "Wheat", "Wheatley", "Wheaton", "Wheeler", "Whelan", "Whipple", "Whitaker", "Whitcomb", "White", "Whited", "Whitehead", "Whiteman", "Whiteside", "Whitfield", "Whiting", "Whitley", "Whitlock", "Whitlow", "Whitman", "Whitmire", "Whitmore", "Whitney", "Whitson", "Whitt", "Whittaker", "Whitten", "Whittington", "Whittle", "Whitworth", "Wick", "Wicker", "Wickham", "Wicks", "Wiese", "Wiggins", "Wilbanks", "Wilbur", "Wilburn", "Wilcox", "Wild", "Wilde", "Wilder", "Wiles", "Wiley", "Wilhelm", "Wilhite", "Wilke", "Wilkerson", "Wilkes", "Wilkie", "Wilkins", "Wilkinson", "Will", "Willard", "Willem", "Willett", "Willey", "Williams", "Williamson", "Williford", "Willingham", "Willis", "Willoughby", "Wills", "Willson", "Wilson", "Wilt", "Wimmer", "Winchester", "Windham", "Windsor", "Wing", "Wingate", "Winkler", "Winn", "Winslow", "Winstead", "Winston", "Winter", "Winters", "Winthrop", "Wirth", "Wise", "Wiseman", "Wisniewski", "Withers", "Withrow", "Witmer", "Witt", "Witte", "Wojcik", "Wolf", "Wolfe", "Wolff", "Wolford", "Womack", "Wood", "Woodall", "Woodard", "Woodcock", "Woodruff", "Woods", "Woodson", "Woodward", "Woodworth", "Woody", "Wooldridge", "Woolley", "Woolsey", "Wooten", "Worden", "Workman", "Worley", "Worrell", "Worth", "Worthington", "Wozniak", "Wray", "Wren", "Wright", "Wyant", "Wyatt", "Wylie", "Wyman", "Wynn", "Wynne", "Xavier", "Yager", "Yancey", "Yarbrough", "Yard", "Yates", "Yeager", "Yocum", "Yoder", "Yorgensen", "York", "Yost", "Young", "Youngblood", "Younger", "Yount", "Zabriskie", "Zaret", "Zeigler", "Zeller", "Ziegler", "Zielinski", "Zimmer", "Zimmerman", "Zimmermann", "Zink", "Zollinger", "Zook"]>>
 
 <<set setup.africanAmericanSlaveNames = ["Aaisha", "Aaliyah", "Abigail", "Abrielle", "Adasha", "Addison", "Adjoua", "Adrianna", "Aicha", "Aireona", "Aisha", "Aissata", "Aissatou", "Aiyana", "Aizza", "Aja", "Ajaysia", "Akeiyla", "Akita", "Alana", "Alani", "Alexa", "Alexandra", "Alexandria", "Alexis", "Alexus", "Alfre", "Algenea", "Alice", "Alicia", "Aliyah", "Almesha", "Alora", "Alyssa", "Alyx", "Amanda", "Amani", "Amara", "Amaya", "Amber", "Amelia", "Amia", "Amina", "Aminata", "Amira", "Amirah", "Amiya", "Amiyah", "Anaya", "Aneisha", "Angel", "Angela", "Angelie", "Angelina", "Angie", "Anita", "Aniya", "Aniyah", "Annabelle", "Anquaneshi", "Antisha", "Applice", "Aranza", "Aretha", "Aria", "Ariana", "Arianna", "Ariel", "Arielle", "Ariessa", "Armetris", "Ashley", "Asia", "Atalaya", "Atasha", "Aubree", "Aubrey", "Aumnee", "Aushanique", "Autherine", "Autumn", "Ava", "Avery", "Avondelee", "Awa", "Aya", "Ayana", "Ayanna", "Ayesha", "Azaline", "Azaria", "Barbarasha", "Bella", "Beneatha", "Berline", "Betty", "Beulah", "Bintou", "Birdia", "Blessing", "Bopha", "Brandi", "Brandy", "Brenda", "Bria", "Brianna", "Brielle", "Brinesha", "Brishella", "Brooke", "Brooklyn", "Bupe", "Cali", "Cambrea", "Camika", "Camille", "Carla", "Carneisha", "Carolshay", "Catherlean", "Ceola", "Chabris", "Chamika", "Chanel", "Chanelle", "Chantal", "Chante", "Chaquasha", "Chardai", "Charlotte", "Charmaine", "Charmee", "Charmesha", "Charmian", "Chatoya", "Chelsea", "Chenita", "Chequettalin", "Chevay", "Cheyenne", "Chihiqua", "Chiniqua", "Chloe", "Christina", "Chukwuma", "Claire", "Clairkita", "Claudette", "Claya", "Clementine", "Cokeeshia", "Condoleeza", "Constance", "Coretta", "Crystal", "Cyana", "Cyniqua", "D'aiyaa", "D'Andra", "D'arci", "D'Tarnika", "Daejanae", "Daeshandra", "Daija", "Dakeirra", "Dakota", "Dana", "Danielle", "Daraphonee", "Darnetta", "Darrenisha", "Dashawna", "Dashay", "Davera", "De Yanira", "Deandra", "Deborah", "Deeba", "Deequa", "Dega", "Deja", "Dejanelle", "Dejuna", "Delicia", "Delronda", "Demeka", "Denali", "Denisha", "Denkia", "Dequandra", "Desana", "Desha", "Destiny", "Dhola", "Diahann", "Donesha", "Donna", "Doretha", "Dramikha", "Drayzhsha", "Dvonne", "Dylan", "Dysis", "Dywonda", "Ebonique", "Ebony", "Eden", "Egypt", "Eliana", "Elise", "Elizabeth", "Ella", "Emani", "Emily", "Emma", "Erakwanda", "Erin", "Esharia", "Eshita", "Essence", "Esther", "Eulissa", "Eurethra", "Eva", "Exenia", "Faafia", "Faith", "Fanta", "Farrusha", "Fatima", "Fatou", "Fatoumata", "Faulishina", "Felneetra", "Flirtisha", "Fredniqua", "Gabriella", "Gabrielle", "Genesis", "Gianna", "Giselle", "Gloriyae", "Glynitra", "Grace", "Gwendolyn", "Hailey", "Hannah", "Harmony", "Harriett", "Hawa", "Heaven", "Helen", "Hidalia", "Hope", "I'aunia", "I'vaughna", "Ieisha", "Iesha", "Ieshia", "Ijanae", "Ilunga", "Imani", "Indraneela", "Isabella", "Isabelle", "Isis", "Ivory", "Iyeshia", "Jabriona", "Jada", "Jade", "Jakeisha", "Jaleesa", "Jalisa", "Jaliyah", "Jamaica", "Jameeka", "Jamesha", "Jamila", "Jamillah", "Jamiyla", "Janae", "Janaelle", "Jane", "Janelle", "Janet", "Janiya", "Janiyah", "Jarica", "Jasmine", "Jatara", "Jatherine", "Javonna", "Jawana", "JaWanda", "Jawarza", "Jayauna", "Jayda", "Jayla", "Jayne", "Jayonna", "Jazmine", "Jazzlynn", "Jelona", "Jelsey", "Jemima", "Jeniece", "Jennifer", "Jesoya", "Jessica", "Jhannaya", "Johnnaisha", "Jon'Nae", "Joneita", "Jonqueesha", "Jonzelle", "JoRaye", "Jordan", "Jordyn", "Journee", "Journey", "Joy", "Joycelyn", "Jubiia", "Julia", "Jyakita", "Jyneeshia", "Jyqueshia", "Jyvondra", "Jyvonne", "Kadiatou", "Kahlita", "Kai", "Kaitlyn", "Kali", "Kalisa", "Kaliyah", "Kamalis", "Kamisha", "Kamiyah", "Kaneesha", "Kanisha", "Karen", "Kay", "Kayla", "Kaylee", "Kaylin", "Kazzandra", "Keesha", "Kefira", "Keisha", "Keishauna", "Keita", "Keitra", "Kelsey", "Kemoshia", "Kendra", "Kenesha", "Kenia", "Kenisha", "Kennedy", "Kenshayla", "Kenya", "Kenyatae", "Kenyatta", "Kenyon", "Keshia", "Keveronique", "Keyala", "Keyanna", "Keyasia", "Keyauna", "Keyera", "Keyna", "Kha'sheena", "Khadijah", "Khena", "Khloe", "Kia", "Kiana", "Kiandre", "Kiante", "Kiara", "Kieantae", "Kierra", "Kimani", "Kimbery", "Kimora", "Kitiara", "Kizzy", "Kmara", "Kourtney", "Kreata", "Kristen", "Kusella", "Kwabena", "Kwanisha", "Kwantazha", "Kwatazia", "Kwina", "Kyaisha", "Kyana", "Kyanua", "Kyesha", "Kyla", "Kylee", "Kylie", "Kynedra", "La Netta", "LaBebe", "Lachelle", "LaChrystal", "Lacretia", "Ladaisha", "Ladasha", "Ladawn", "Ladonna", "LaFefe", "Lafondra", "Lagisolia", "Laila", "Lailah", "Lakeisha", "Lakendra", "Lakenya", "Lakeshia", "Lakia", "Lakisha", "Lakita", "Lakitu", "Lakresha", "Lamesha", "LaMonica", "Lanautica", "Laneisha", "Lanette", "LaQuain", "Laquanda", "Laqueefa", "Laqueena", "Laqueisha", "Laquinta", "Laquisha", "Laquita", "LaRhonda", "Larissa", "Lashauna", "Lashaunia", "Lashaunta", "Lashawna", "LaShawndre", "Lashay", "Lasheree", "Lashonda", "Lashondra", "Lasquweesha", "LaTaijah", "Latanya", "Latara", "Latasha", "Latavia", "LaTeasha", "Lateisha", "Latia", "Latifah", "Latisha", "Latonya", "Latoria", "Latosha", "Latoya", "Latrice", "Latricia", "Lauren", "Lauryn", "LaVena", "Lawanda", "Layla", "LaYvonne", "Le Ethel", "Le'Tania", "Leah", "Leenisha", "Leila", "Leilani", "Leleejah", "Lequita", "Leshicqua", "Leslie", "Letonya", "Ligaya", "Lillian", "Lily", "Lisa", "Llaila", "Logan", "London", "Londyn", "Lonice", "Loren", "Lorraine", "Loverine", "Luevonnia", "Lula", "Luvenia", "Lyric", "Mackenzie", "Madison", "Madisyn", "Mae", "Mahalia", "Mahogany", "Maiami", "Makayla", "Makenzie", "Malaysia", "Malekwa", "Malia", "Maliequa", "Maliyah", "Mandy", "Mariah", "Mariam", "Mariama", "Marie", "Mariha", "Markisha", "Marquashia", "Marquesia", "Marquette", "Marquisha", "Marquita", "Mary", "Maryam", "Matrika", "Mattie", "Mavis", "Maya", "Mckenzie", "Mdalasini", "Meaisha", "Megan", "Melanie", "Melody", "Mercedes", "Mia", "Miata", "Michelle", "Michonne", "Miesha", "Mikalyn", "Mikayla", "Mila", "Milan", "Miracle", "Mishayla", "Moesha", "Moeshia", "Molysha", "Monica", "Monique", "Montanette", "Moraya", "Morgan", "Mya", "Myisha", "Mytalesha", "Nadia", "Nahla", "Naja", "Najwa", "Nakaela", "Nakia", "Nakili", "Nakisha", "Nana", "Naomi", "Nashawna", "Natalia", "Natalie", "Natisha", "Natosha", "Nefertite", "Neice", "Neola", "Nesha", "Neshia", "Nevaeh", "Ngizunzigu", "Nia", "Nicole", "Niesha", "Nikeisha", "Nisha", "Nova", "Nyasia", "Nykeila", "Nyla", "Nylah", "Nytangia", "Oakleigh", "Olivia", "Oluwasegun", "Omarara", "Oneika", "Onyeisha", "Onzilee", "Orienta", "Orlesha", "Oumou", "Oveita", "Paige", "Pamela", "Paniga", "Paris", "Pashiya", "Patricia", "Payton", "Peaches", "Penelope", "Perzavia", "Peyton", "Phalopia", "Phillis", "Phoenix", "Phrstephynie", "Phyllis", "Pia", "Precious", "Presleysia", "Princess", "Qayshanta", "Qiana", "Qiarra", "Quaasia", "Quadezia", "Quan Shay", "Quaniesha", "Quanika", "Quanisha", "Quantaya", "Quashaniqua", "QuaYein", "Quiara", "Quiniah", "Quinstanisha", "Quintasha", "Quyannah", "Qwshanda", "Qyleshia", "Ra Yanda", "Rachel", "Rahnisha", "Rashanda", "Rashann", "Rashauna", "Raven", "Rebecca", "Reeshemah", "Rehema", "Reka", "Rekeisha", "Renée", "Rhoshand", "Rhoshanda", "Rhoshaun", "Ricielle", "Riley", "Roneisha", "Rosa", "Rose", "Roshawna", "Ruby", "Ruqia", "Ruth", "Rysheema", "Sabeqwa", "Sabrielle", "Sade", "Saige", "Saisha", "Salesha", "Salisha", "Saludae", "Samantha", "Samara", "Samisha", "Samiya", "Samiyah", "Sanaa", "Sanai", "Saniya", "Saniyah", "Sanjua", "Sanjukta", "Santana", "Sanura", "Sara", "Sarah", "Sarai", "Sariah", "Sarisa", "Saronda", "Sasha", "Savannah", "Scarlett", "Seneka", "Serenity", "Sh'Quita", "Sha'Vaughn", "Shajuana", "Shakeema", "Shakeisha", "Shakeria", "Shakia", "Shakina", "Shakita", "Shalanda", "Shalaun", "Shalinda", "Shalisa", "Shalona", "Shalonde", "Shameka", "Shamica", "Shamika", "Shamiqua", "Shanautica", "Shanay", "Shanaynay", "Shandy", "Shanethis", "Shania", "Shanice", "Shanika", "Shaniqua", "Shanita", "Shanitra", "Shaniya", "Shaquanda", "Shaquira", "Shaquisha", "Shaquita", "Shaqwasha", "Sharelle", "Sharice", "Sharika", "Sharonda", "Shatesha", "Shauntrice", "Shawa", "Shawanna", "Shay", "Shayla", "Shaynell", "Shebubu", "Shelawn", "Shelinda", "Shemaia", "Shenequa", "Sheneque", "Sherika", "Sherita", "Shianti", "Shiloh", "Shimika", "Shiquan", "Shontia", "Shylonda", "Sigma", "Skye", "Skyla", "Skylah", "Skylar", "Skyler", "Sofia", "Soheila", "Sojourner", "Solare", "Sophia", "Soraya", "Stephanie", "Steveanna", "Stevetta", "Summer", "Susan", "Sybrell", "Sydney", "Sylvania", "Symphony", "Syreeta", "T'keyah", "Tabitha", "Tachine", "Tahani", "Tahara", "Taisha", "TaiWanda", "Takeira", "Takeisha", "Takenya", "Takia", "Takira", "Talia", "Taliena", "Talisa", "Talisha", "Tambry", "Tamesha", "Tameshia", "Tamia", "Tamika", "Tamila", "Tamisha", "Tanaquil", "Taneisha", "Taneka", "Tanequa", "Tanesha", "Tangerine", "Tangia", "Tangie", "Tangier", "Tanielle", "Tanika", "Taniqua", "Tanisha", "Taniya", "Taniyah", "Tanqueray", "Taquanna", "Taraji", "Tarena", "Tareva", "Tasha", "Tashana", "Tashelle", "Taura", "Taushae", "Tavahna", "Tawanna", "Tawatha", "Taylor", "Tazhan", "Teaira", "Teeairia", "Tenayah", "Tenea", "Tenee", "Tenelle", "Teniqua", "Tenisha", "Tennille", "Tessa", "Thandeka", "Tia", "Tiana", "Tianna", "Tiffany", "Tilneshia", "Tinesha", "Tisha", "Tolani", "Tori", "Tosha", "Toya", "Tralena", "Tranashia", "Tranesha", "Trinity", "Tuleda", "Tyeanna", "Tyesha", "Tyisha", "Tykeedra", "Tylishia", "TyQuasia", "Ukiesha", "VaJabra", "Valeshia", "Valetta", "Vanessa", "Vanita", "Varah", "Vatasha", "Victoria", "Violet", "Voneil", "Vonesha", "Vontrice", "Wakeena", "Wakeisha", "Wanya", "Wanzina", "Waynia", "Wenday", "Winter", "Wonder", "Wynter", "Xernona", "Xhosa", "Xjenai", "Xkeona", "Yajaiva", "Yushekia", "Yvetteen", "Yvonne", "Zackulyn", "Zahara", "Zakiyyah", "Zanette", "Zaniyah", "Zanquandria", "Zanta", "Zara", "Zaria", "Zariah", "Zendaya", "Zhonya", "Zoe", "Zoey", "Zoya", "Zuleika", "Zuri", "Zwaanette", "Zykeetria"]>>
@@ -355,7 +355,7 @@
 <<set setup.latinaSlaveSurnames = ["Abad", "Abalos", "Abarca", "Abbott", "Abel", "Abella", "Abeyta", "Abila", "Aboytes", "Abraham", "Abrams", "Abrego", "Abreu", "Abril", "Abundis", "Abundiz", "Aburto", "Acebedo", "Acedo", "Aceituno", "Acero", "Acevedo", "Aceves", "Acosta", "Acuna", "Adam", "Adame", "Adames", "Adams", "Adan", "Adkins", "Adorno", "Adrian", "Afanador", "Agostini", "Agosto", "Agramonte", "Agredano", "Aguado", "Aguas", "Aguayo", "Agudelo", "Agudo", "Aguero", "Aguiar", "Aguila", "Aguilar", "Aguilera", "Aguillar", "Aguillon", "Aguinaga", "Aguiniga", "Aguirre", "Agundez", "Agustin", "Ahumada", "Aispuro", "Alameda", "Alamilla", "Alamillo", "Alamo", "Alanis", "Alaniz", "Alarcon", "Alarid", "Alas", "Alatorre", "Alba", "Alban", "Albarado", "Albarez", "Albarran", "Albert", "Alberto", "Albino", "Albor", "Alcala", "Alcantar", "Alcantara", "Alcaraz", "Alcazar", "Alcocer", "Alcon", "Alcorta", "Alcoser", "Aldaba", "Aldaco", "Aldama", "Aldana", "Aldape", "Alday", "Aldaz", "Alderete", "Aldrete", "Alegre", "Alegria", "Alejandre", "Alejandro", "Alejo", "Alejos", "Aleman", "Alers", "Alexander", "Alfaro", "Alferez", "Alfonso", "Alford", "Algarin", "Ali", "Aliaga", "Alicea", "Alire", "Allen", "Allende", "Allison", "Almada", "Almaguer", "Almanza", "Almanzar", "Almaraz", "Almazan", "Almeda", "Almeida", "Almendarez", "Almodovar", "Almonte", "Alonso", "Alonzo", "Alpizar", "Altamirano", "Alva", "Alvarado", "Alvardo", "Alvarenga", "Alvares", "Alvarez", "Alvear", "Alvelo", "Alverio", "Alves", "Alviar", "Alvidrez", "Alvillar", "Alvira", "Alviso", "Alvizo", "Alzate", "Amado", "Amador", "Amaral", "Amarillas", "Amaro", "Amato", "Amaya", "Ambriz", "Ambrocio", "Ambrosio", "Ames", "Amescua", "Amesquita", "Amezcua", "Amezola", "Amezquita", "Amigon", "Amos", "Amparan", "Amparo", "Anaya", "Anchondo", "Ancira", "Andalon", "Andazola", "Andersen", "Anderson", "Andino", "Andrade", "Andrades", "Andres", "Andrew", "Andrews", "Andujar", "Andujo", "Angel", "Angeles", "Angelo", "Anguiano", "Angulo", "Anthony", "Antigua", "Antillon", "Anton", "Antonio", "Antuna", "Antunez", "Anzaldo", "Anzaldua", "Anzures", "Aparicio", "Apodaca", "Apolinar", "Aponte", "Aquilar", "Aquino", "Aracena", "Aragon", "Araiza", "Arambula", "Aramburo", "Arana", "Aranda", "Arango", "Araujo", "Arauz", "Araya", "Arballo", "Arbelaez", "Arboleda", "Arce", "Arceo", "Archer", "Archibeque", "Archila", "Archuleta", "Archuletta", "Arcia", "Arciga", "Arcila", "Arciniega", "Arcos", "Ardila", "Ardon", "Arebalo", "Arechiga", "Arellanes", "Arellano", "Arenas", "Arencibia", "Arenivas", "Ares", "Arevalo", "Arevalos", "Arguelles", "Arguello", "Argueta", "Arguijo", "Argumedo", "Arias", "Arismendez", "Arispe", "Arista", "Aristizabal", "Arita", "Ariza", "Arizaga", "Arizmendi", "Arizola", "Arizpe", "Arjona", "Armas", "Armendarez", "Armendariz", "Armenta", "Armijo", "Armstrong", "Arnold", "Arocha", "Arocho", "Aros", "Arrambide", "Arrazola", "Arreaga", "Arredondo", "Arreguin", "Arrellano", "Arreola", "Arriaga", "Arriaza", "Arrieta", "Arriola", "Arroyave", "Arroyo", "Arroyos", "Arteaga", "Artiaga", "Artiga", "Artiles", "Arvelo", "Arviso", "Arvizo", "Arvizu", "Arzaga", "Arzate", "Arzola", "Arzu", "Arzuaga", "Ascencio", "Asencio", "Ashley", "Astacio", "Astorga", "Astudillo", "Asuncion", "Atencio", "Atilano", "Atkins", "Atkinson", "Austin", "Avalos", "Avelar", "Avelino", "Avellaneda", "Avena", "Avendano", "Avery", "Avila", "Aviles", "Avilez", "Avilla", "Avina", "Avitia", "Ayala", "Aybar", "Ayers", "Ayon", "Azcona", "Azevedo", "Azpeitia", "Azua", "Baca", "Bachicha", "Badilla", "Badillo", "Baena", "Baerga", "Baez", "Baeza", "Bahena", "Bailey", "Bailon", "Baird", "Baires", "Baiza", "Baker", "Balandran", "Balboa", "Balbuena", "Balcazar", "Baldenegro", "Balderas", "Balderrama", "Baldonado", "Baldwin", "Ball", "Balladares", "Ballard", "Ballester", "Ballesteros", "Balleza", "Balli", "Balmaceda", "Baltazar", "Baltierra", "Baltodano", "Banales", "Banda", "Banderas", "Banegas", "Banks", "Banos", "Banuelos", "Baquero", "Bara", "Barahona", "Barajas", "Barba", "Barber", "Barberena", "Barbosa", "Barboza", "Barcelo", "Barcena", "Barcenas", "Barcia", "Barco", "Bardales", "Barela", "Bargas", "Barillas", "Barker", "Barnes", "Barnett", "Barocio", "Baron", "Barona", "Baros", "Barquero", "Barr", "Barra", "Barragan", "Barrales", "Barranco", "Barrantes", "Barraza", "Barreda", "Barreiro", "Barrera", "Barreras", "Barrero", "Barreto", "Barrett", "Barrientes", "Barrientez", "Barrientos", "Barriga", "Barrio", "Barrios", "Barron", "Barros", "Barroso", "Barry", "Bartlett", "Bartolo", "Barton", "Basaldua", "Basilio", "Basquez", "Bass", "Bastida", "Bastidas", "Basulto", "Basurto", "Batalla", "Bates", "Batista", "Batres", "Batrez", "Battle", "Bauer", "Bautista", "Bauza", "Baxter", "Bayardo", "Bayona", "Baza", "Bazaldua", "Bazan", "Beach", "Bean", "Beard", "Beas", "Beasley", "Beato", "Beauchamp", "Becerra", "Becerril", "Beck", "Becker", "Bedolla", "Bedoy", "Bedoya", "Bega", "Bejar", "Bejarano", "Belen", "Bell", "Bello", "Belloso", "Belman", "Belmares", "Belmonte", "Belmontes", "Beltran", "Beltre", "Benavente", "Benavides", "Benavidez", "Bencomo", "Bencosme", "Bender", "Benites", "Benitez", "Benito", "Benjamin", "Bennett", "Benson", "Bentley", "Benton", "Berber", "Berg", "Berger", "Berlanga", "Bermea", "Bermejo", "Bermeo", "Bermudes", "Bermudez", "Bernabe", "Bernal", "Bernard", "Bernardino", "Bernardo", "Berrio", "Berrios", "Berroa", "Berrones", "Berry", "Berumen", "Best", "Betances", "Betancourt", "Betancur", "Bianchi", "Bianco", "Bibian", "Bird", "Bishop", "Black", "Blackburn", "Blackwell", "Blair", "Blake", "Blancarte", "Blancas", "Blanchard", "Blanco", "Blandon", "Blankenship", "Blas", "Blea", "Bobadilla", "Bocanegra", "Bodden", "Bohorquez", "Bojorquez", "Bolanos", "Bolivar", "Bolton", "Bond", "Bonet", "Bonifacio", "Bonilla", "Bonillas", "Bonner", "Booker", "Boone", "Booth", "Borboa", "Borbon", "Borda", "Borges", "Borja", "Borjas", "Borjon", "Borquez", "Borrayo", "Borrego", "Borrero", "Borunda", "Bosch", "Bosque", "Bosquez", "Botello", "Botero", "Bowen", "Bowers", "Bowman", "Boyd", "Boyer", "Boyle", "Boza", "Bracamonte", "Bracamontes", "Bracero", "Bradford", "Bradley", "Bradshaw", "Brady", "Brambila", "Bran", "Branch", "Brand", "Brandon", "Brandt", "Braud", "Braun", "Bravo", "Bray", "Brea", "Breceda", "Brenes", "Brennan", "Bretado", "Breton", "Brewer", "Brewster", "Bribiesca", "Briceno", "Bridges", "Briggs", "Bright", "Bringas", "Briones", "Briseno", "Brito", "Britton", "Brizuela", "Brock", "Brooks", "Brown", "Browne", "Browning", "Bruce", "Bruno", "Bryan", "Bryant", "Buchanan", "Bucio", "Buck", "Buckley", "Buelna", "Buendia", "Bueno", "Buenrostro", "Buentello", "Bugarin", "Buitrago", "Buitron", "Bullock", "Burbano", "Burch", "Burciaga", "Burgess", "Burgos", "Burgueno", "Burke", "Burnett", "Burns", "Burrell", "Burrola", "Burruel", "Burton", "Bush", "Bustamante", "Bustillo", "Bustillos", "Bustos", "Butler", "Byrd", "Byrne", "Caamano", "Caba", "Cabada", "Caballero", "Caban", "Cabanas", "Cabanillas", "Cabello", "Cabeza", "Cabezas", "Cabral", "Cabrales", "Cabreja", "Cabrera", "Cabriales", "Caceres", "Cacho", "Cadavid", "Cadena", "Cadenas", "Cadiz", "Cahue", "Caicedo", "Cain", "Cajigas", "Cajina", "Caldera", "Calderon", "Caldwell", "Calero", "Calhoun", "Calix", "Calixto", "Callahan", "Calle", "Calleja", "Callejas", "Calleros", "Calles", "Calo", "Calva", "Calvario", "Calvillo", "Calvo", "Calzada", "Calzadilla", "Camacho", "Camara", "Camarena", "Camargo", "Camarillo", "Camberos", "Cambron", "Camejo", "Camero", "Cameron", "Camilo", "Camp", "Campa", "Campana", "Campas", "Campbell", "Campillo", "Campo", "Campos", "Campoverde", "Campusano", "Campuzano", "Canada", "Canal", "Canales", "Canas", "Cancel", "Canchola", "Cancino", "Candela", "Candelaria", "Candelario", "Candelas", "Candia", "Candido", "Canedo", "Canela", "Canez", "Canizales", "Canizalez", "Cannon", "Cano", "Canseco", "Cansino", "Cantero", "Cantillo", "Canto", "Canton", "Cantor", "Cantrell", "Cantu", "Canty", "Capellan", "Capetillo", "Capistran", "Capo", "Capote", "Carabajal", "Caraballo", "Carachure", "Carapia", "Caraveo", "Carbajal", "Carballo", "Carbonell", "Carcamo", "Card", "Cardenas", "Cardiel", "Cardona", "Cardosa", "Cardoso", "Cardoza", "Cardozo", "Careaga", "Carey", "Carias", "Carillo", "Carino", "Carlin", "Carlo", "Carlos", "Carlson", "Carmen", "Carmona", "Carnero", "Carney", "Caro", "Carpenter", "Carpio", "Carr", "Carranco", "Carranza", "Carrasco", "Carrasquillo", "Carrazco", "Carreno", "Carreon", "Carrera", "Carreras", "Carrero", "Carretero", "Carreto", "Carrillo", "Carrion", "Carrizal", "Carrizales", "Carrizosa", "Carroll", "Carson", "Cartagena", "Carter", "Caruso", "Carvajal", "Carvalho", "Carver", "Casado", "Casados", "Casanas", "Casanova", "Casares", "Casarez", "Casarrubias", "Casas", "Casasola", "Casaus", "Casco", "Case", "Caseres", "Casey", "Cash", "Casiano", "Casias", "Casillas", "Casimiro", "Casique", "Cassidy", "Casso", "Castaneda", "Castano", "Castanon", "Castelan", "Castellano", "Castellanos", "Castello", "Castellon", "Castelo", "Casteneda", "Castilla", "Castilleja", "Castillo", "Castillon", "Castor", "Castorena", "Castrejon", "Castrellon", "Castrillo", "Castrillon", "Castro", "Castruita", "Catala", "Catalan", "Catano", "Caudillo", "Cavazos", "Cayetano", "Cazares", "Cazarez", "Cdebaca", "Cea", "Ceballos", "Cebreros", "Cecena", "Cedano", "Cedeno", "Cedillo", "Cedillos", "Ceja", "Celaya", "Celedon", "Celestino", "Celis", "Cendejas", "Ceniceros", "Centeno", "Cepeda", "Cepero", "Cera", "Cerda", "Cereceres", "Cerezo", "Cerna", "Ceron", "Cerrato", "Cerrillo", "Cerritos", "Cerros", "Cervantes", "Cervantez", "Cervera", "Cesar", "Cesena", "Cespedes", "Cevallos", "Chacon", "Chagolla", "Chagoya", "Chaidez", "Chaires", "Chairez", "Chamberlain", "Chambers", "Chamorro", "Champion", "Chan", "Chandler", "Chang", "Chao", "Chapa", "Chaparro", "Chapman", "Charles", "Chase", "Chavana", "Chavarin", "Chavarria", "Chavera", "Chavero", "Chaves", "Chavez", "Chavira", "Chavis", "Chavoya", "Checo", "Chen", "Cherry", "Chevalier", "Chevere", "Chevez", "Chica", "Chicas", "Chico", "Childers", "Chin", "Chinchilla", "Chino", "Chiriboga", "Chirino", "Chirinos", "Chong", "Chow", "Christensen", "Christian", "Christopher", "Church", "Cibrian", "Cid", "Cienfuegos", "Cifuentes", "Cintron", "Ciprian", "Cipriano", "Cirilo", "Cirino", "Cisnero", "Cisneros", "Clara", "Clark", "Clarke", "Claro", "Claros", "Class", "Claudio", "Clavel", "Clavijo", "Clay", "Clayton", "Clement", "Clemente", "Clements", "Cline", "Cobarrubias", "Cobb", "Cobian", "Cobo", "Cobos", "Coca", "Cochran", "Coello", "Coffey", "Cohen", "Cole", "Coleman", "Colin", "Colina", "Colindres", "Coll", "Collado", "Collazo", "Collazos", "Collier", "Collins", "Colmenares", "Colmenero", "Colocho", "Colon", "Colorado", "Colunga", "Comacho", "Comas", "Combs", "Compean", "Compton", "Concepcion", "Concha", "Conchas", "Conde", "Conejo", "Conley", "Conner", "Connor", "Conrad", "Constancio", "Constante", "Constantino", "Constanza", "Consuegra", "Contrera", "Contreras", "Conway", "Cook", "Cooke", "Cooper", "Copado", "Copeland", "Cora", "Corado", "Coral", "Corchado", "Cordero", "Cordoba", "Cordon", "Cordova", "Corea", "Coreas", "Corella", "Coria", "Cornejo", "Cornelio", "Corniel", "Cornier", "Corona", "Coronado", "Coronel", "Corpus", "Corral", "Corrales", "Correa", "Corredor", "Corro", "Cortes", "Cortez", "Cortina", "Cortinas", "Corvera", "Corzo", "Cosio", "Cosme", "Coss", "Cossio", "Costa", "Costales", "Costello", "Costilla", "Cota", "Coto", "Cotto", "Cotton", "Courtney", "Covarrubias", "Cowan", "Cox", "Coy", "Craig", "Crane", "Crawford", "Crespin", "Crespo", "Criado", "Criollo", "Crisanto", "Crisostomo", "Crispin", "Cristobal", "Crosby", "Cross", "Cruz", "Cruzado", "Cuadra", "Cuadrado", "Cuadros", "Cuartas", "Cuba", "Cubas", "Cubero", "Cubias", "Cubillos", "Cuebas", "Cuellar", "Cuello", "Cuen", "Cuenca", "Cuervo", "Cuesta", "Cuestas", "Cueto", "Cueva", "Cuevas", "Cummings", "Cunningham", "Curbelo", "Curet", "Curiel", "Curry", "Curtis", "Custodio", "Dacosta", "Dailey", "Dale", "Dalton", "Daly", "Damian", "Daniel", "Daniels", "Dasilva", "Daugherty", "Davalos", "Davenport", "David", "Davidson", "Davies", "Davila", "Davilla", "Davis", "Dawson", "Day", "Daza", "Dealba", "Dean", "Deanda", "Dearmas", "Deavila", "Decasas", "Decastro", "Decker", "Dedios", "Degante", "Degollado", "Deharo", "Deherrera", "Dehoyos", "Dejesus", "Delacerda", "Delacruz", "Delafuente", "Delagarza", "Delaguila", "Delahoya", "Delahoz", "Delaluz", "Delamora", "Delaney", "Delangel", "Delao", "Delapaz", "Delapena", "Delara", "Delariva", "Delarocha", "Delarosa", "Delatorre", "Delavega", "Delbosque", "Delcampo", "Delcarmen", "Delcastillo", "Delcid", "Deleon", "Delfin", "Delgadillo", "Delgado", "Delira", "Delmoral", "Deloera", "Delosangeles", "Delosreyes", "Delosrios", "Delossantos", "Delpino", "Delpozo", "Delreal", "Delrio", "Delrosario", "Deltoro", "Deluna", "Delvalle", "Delvillar", "Dena", "Denis", "Deniz", "Dennis", "Denton", "Depaz", "Depena", "Deras", "Desantiago", "Desantos", "Desoto", "Desouza", "Devora", "Dial", "Dias", "Diaz", "Diazdeleon", "Dickerson", "Dickinson", "Dickson", "Diego", "Dieguez", "Diez", "Dillard", "Dillon", "Dilone", "Dimas", "Diosdado", "Disla", "Dixon", "Dodd", "Dodson", "Doe", "Dolores", "Domenech", "Domingo", "Domingues", "Dominguez", "Dominquez", "Donado", "Donahue", "Donaldson", "Donato", "Dones", "Donis", "Donjuan", "Donnelly", "Donoso", "Donovan", "Dorado", "Dorame", "Doran", "Dorantes", "Doria", "Dorsey", "Dorta", "Dossantos", "Dougherty", "Douglas", "Downey", "Downing", "Downs", "Doyle", "Dozal", "Drake", "Duarte", "Dubois", "Dubon", "Dudley", "Duenas", "Duenes", "Duenez", "Duffy", "Duke", "Dumas", "Duncan", "Dunlap", "Dunn", "Duprey", "Duque", "Duran", "Durand", "Durant", "Durazo", "Durham", "Duron", "Dutan", "Dye", "Dyer", "Eaton", "Echavarria", "Echevarria", "Echeverri", "Echeverria", "Echeverry", "Edwards", "Eguia", "Elenes", "Elias", "Elizalde", "Elizarraras", "Elizarraraz", "Elizondo", "Elliott", "Ellis", "Ellison", "Elvira", "Emerson", "Enamorado", "Encalada", "Encarnacion", "Encinas", "Encinias", "Enciso", "England", "English", "Enrique", "Enriques", "Enriquez", "Equihua", "Erazo", "Erickson", "Erives", "Ernandez", "Escajeda", "Escalante", "Escalera", "Escalona", "Escamilla", "Escandon", "Escarcega", "Escareno", "Escatel", "Escobar", "Escobedo", "Escorcia", "Escoto", "Escudero", "Escutia", "Espada", "Espaillat", "Espana", "Esparza", "Espejo", "Esperanza", "Espericueta", "Espin", "Espinal", "Espindola", "Espino", "Espinola", "Espinosa", "Espinoza", "Espiritu", "Espitia", "Esposito", "Esqueda", "Esquer", "Esquibel", "Esquilin", "Esquivel", "Esquivias", "Esteban", "Estela", "Estes", "Esteves", "Estevez", "Estrada", "Estrella", "Estremera", "Estupinan", "Euceda", "Eusebio", "Evangelista", "Evans", "Everett", "Ewing", "Fabela", "Fabian", "Facio", "Facundo", "Fajardo", "Falcon", "Fallon", "Familia", "Farfan", "Faria", "Farias", "Farinas", "Farley", "Farmer", "Farrell", "Farris", "Faulkner", "Fausto", "Favela", "Favila", "Faz", "Febles", "Febres", "Febus", "Federico", "Felan", "Feliciano", "Felipe", "Felix", "Feliz", "Ferguson", "Feria", "Ferman", "Fermin", "Fernandes", "Fernandez", "Fernando", "Ferrari", "Ferreira", "Ferreiro", "Ferrel", "Ferrell", "Ferrer", "Ferrera", "Ferreras", "Ferreyra", "Ferro", "Ferrufino", "Fiallo", "Fiallos", "Field", "Fields", "Fierro", "Fierros", "Figeroa", "Figueras", "Figueredo", "Figuereo", "Figueroa", "Fimbres", "Finch", "Finley", "Fischer", "Fisher", "Fitzgerald", "Fitzpatrick", "Flamenco", "Flecha", "Fleitas", "Fleites", "Fleming", "Fletcher", "Fletes", "Florencio", "Florentino", "Flores", "Florez", "Florian", "Flowers", "Floyd", "Flynn", "Foley", "Fong", "Fonseca", "Font", "Fontanez", "Fontes", "Forbes", "Ford", "Forero", "Forte", "Fortuna", "Foster", "Fournier", "Fowler", "Fox", "Fraga", "Fragoso", "Fraijo", "Fraire", "Franceschi", "Francis", "Francisco", "Franco", "Frank", "Franklin", "Franqui", "Fraser", "Fraticelli", "Frausto", "Frayre", "Frazier", "Fred", "Frederick", "Freeman", "Fregoso", "Freire", "Freitas", "French", "Fresquez", "Freyre", "Frias", "Friedman", "Fritz", "Frost", "Frutos", "Fry", "Frye", "Fuente", "Fuentes", "Fuentez", "Fuerte", "Fuertes", "Fulgencio", "Fuller", "Fulton", "Fundora", "Funes", "Funez", "Gabaldon", "Gabriel", "Gaeta", "Gaines", "Gaitan", "Galan", "Galarza", "Galaviz", "Galaz", "Galban", "Galdamez", "Galeana", "Galeano", "Galeas", "Galeno", "Galicia", "Galindez", "Galindo", "Gallagher", "Gallardo", "Gallego", "Gallegos", "Gallo", "Galloway", "Galo", "Galvan", "Galvez", "Galvin", "Galvis", "Gama", "Gamarra", "Gamble", "Gamboa", "Gamero", "Games", "Gamez", "Gamino", "Gandara", "Gandarilla", "Gaona", "Garate", "Garay", "Garces", "Garcia", "Garciagarcia", "Garcialopez", "Garciaperez", "Garcilazo", "Gardea", "Gardner", "Garduno", "Garfias", "Garibaldi", "Garibay", "Garica", "Garner", "Garnica", "Garrett", "Garrido", "Garriga", "Garrison", "Garsia", "Garza", "Garzon", "Gasca", "Gascon", "Gaspar", "Gastelum", "Gaston", "Gates", "Gatica", "Gaucin", "Gauna", "Gautier", "Gavidia", "Gavilanes", "Gavina", "Gaviria", "Gaxiola", "Gay", "Gaytan", "Gayton", "Genao", "Gentry", "George", "Gerardo", "Gerena", "German", "Germosen", "Geronimo", "Gervacio", "Gibbons", "Gibbs", "Gibson", "Gil", "Gilbert", "Giles", "Gill", "Gillespie", "Gilmore", "Gimenez", "Gines", "Giordano", "Giraldo", "Giron", "Glass", "Glenn", "Gloria", "Glover", "Godina", "Godines", "Godinez", "Godoy", "Goff", "Golden", "Goldstein", "Gomes", "Gomez", "Gongora", "Gonsales", "Gonsalez", "Gonsalves", "Gonzaga", "Gonzales", "Gonzalez", "Good", "Goodman", "Goodwin", "Gordillo", "Gordon", "Goris", "Gorman", "Gotay", "Goto", "Gould", "Govea", "Goytia", "Grace", "Gracia", "Graciano", "Gradilla", "Grado", "Graham", "Grajales", "Grajeda", "Gramajo", "Granada", "Granado", "Granados", "Granda", "Grande", "Granillo", "Grant", "Grau", "Graves", "Gray", "Graziano", "Greco", "Green", "Greene", "Greer", "Gregorio", "Gregory", "Griego", "Griffin", "Griffith", "Grijalva", "Grillo", "Grimaldo", "Grimes", "Grisales", "Gross", "Grullon", "Guadalupe", "Guadamuz", "Guadarrama", "Guadiana", "Guajardo", "Guaman", "Guandique", "Guardado", "Guardiola", "Gudiel", "Gudino", "Guebara", "Guel", "Guereca", "Guerra", "Guerrero", "Guevara", "Guido", "Guijarro", "Guijosa", "Guillen", "Guillermo", "Guitron", "Guity", "Guizar", "Gurrola", "Gurule", "Gusman", "Guthrie", "Gutierres", "Gutierrez", "Guy", "Guzman", "Haas", "Hahn", "Hale", "Haley", "Hall", "Hamilton", "Hammond", "Hampton", "Hancock", "Hanna", "Hansen", "Hanson", "Hard", "Hardin", "Harding", "Hardy", "Harmon", "Haro", "Haros", "Harper", "Harrell", "Harrington", "Harris", "Harrison", "Hart", "Hartman", "Harvey", "Hastings", "Hawkins", "Hayden", "Hayes", "Haynes", "Hays", "Heath", "Hebert", "Henandez", "Henao", "Henderson", "Hendricks", "Hendrickson", "Hendrix", "Henriquez", "Henry", "Hensley", "Henson", "Herandez", "Heras", "Herbert", "Hercules", "Heredia", "Herman", "Hermida", "Hermosillo", "Hernandes", "Hernandez", "Herrada", "Herrejon", "Herrera", "Herrero", "Herring", "Herron", "Hess", "Hewitt", "Hickey", "Hickman", "Hicks", "Hidalgo", "Hidrogo", "Higareda", "Higgins", "Higuera", "Hilario", "Hill", "Hilton", "Hincapie", "Hines", "Hinojos", "Hinojosa", "Hipolito", "Hobbs", "Hodge", "Hodges", "Hodgson", "Hoffman", "Hogan", "Holden", "Holder", "Holguin", "Holland", "Holloway", "Holman", "Holmes", "Holt", "Hood", "Hooper", "Hoover", "Hopkins", "Hopper", "Horn", "Horne", "Horta", "Horton", "House", "Houston", "Howard", "Howe", "Howell", "Hoyos", "Huaman", "Huante", "Hubbard", "Huber", "Hudson", "Huerta", "Huertas", "Huesca", "Huezo", "Huff", "Huffman", "Hughes", "Hugo", "Huitron", "Huizar", "Hull", "Humphrey", "Hunt", "Hunter", "Hurley", "Huron", "Hurst", "Hurtado", "Hutchinson", "Hyde", "Ibanez", "Ibarra", "Iglesias", "Ignacio", "Illescas", "Inda", "Infante", "Ingram", "Iniguez", "Inoa", "Inocencio", "Interiano", "Inzunza", "Ipina", "Iracheta", "Iraheta", "Iriarte", "Irias", "Iribe", "Irigoyen", "Irizarry", "Irwin", "Isaac", "Isais", "Isaza", "Isidoro", "Isidro", "Islas", "Iturralde", "Izaguirre", "Izquierdo", "Jacinto", "Jackson", "Jacob", "Jacobo", "Jacobs", "Jacobson", "Jacome", "Jacques", "Jacquez", "Jaime", "Jaimes", "Jaimez", "Jalomo", "James", "Jaques", "Jaquez", "Jara", "Jaramillo", "Jarquin", "Jarvis", "Jaso", "Jasso", "Jauregui", "Javier", "Jefferson", "Jenkins", "Jennings", "Jensen", "Jerez", "Jeronimo", "Jesus", "Jimenes", "Jimenez", "Jiminez", "Jiron", "Joaquin", "John", "Johns", "Johnson", "Johnston", "Jojola", "Jones", "Jordan", "Jorge", "Jose", "Joseph", "Jovel", "Joya", "Juan", "Juarbe", "Juarez", "Julian", "Junco", "Jurado", "Jusino", "Justiniano", "Justo", "Kaiser", "Kane", "Kaplan", "Katz", "Kaufman", "Keith", "Keller", "Kelley", "Kelly", "Kemp", "Kennedy", "Kent", "Kerr", "Key", "Keyes", "Khan", "Kim", "King", "Kinney", "Kirby", "Kirk", "Klein", "Kline", "Knapp", "Knight", "Knowles", "Knox", "Koch", "Kramer", "Krause", "Laboy", "Labra", "Labrada", "Labrador", "Lacayo", "Lafuente", "Lago", "Lagos", "Laguna", "Lagunas", "Lagunes", "Lainez", "Lajara", "Lake", "Lam", "Lamadrid", "Lamar", "Lamas", "Lamb", "Lambert", "Lamboy", "Lancaster", "Landa", "Landaverde", "Landeros", "Landin", "Landry", "Lane", "Lang", "Langarica", "Lange", "Lantigua", "Lanuza", "Lanza", "Lao", "Laporte", "Lara", "Laracuente", "Laredo", "Lares", "Larez", "Larin", "Larios", "Larosa", "Larranaga", "Larrea", "Larsen", "Larson", "Lasalle", "Lascano", "Lasso", "Lastra", "Latorre", "Lau", "Laureano", "Laurel", "Lavin", "Lawrence", "Lawson", "Lay", "Lazalde", "Lazaro", "Lazcano", "Lazo", "Lazos", "Leach", "Leal", "Leandro", "Leanos", "Leblanc", "Lebron", "Lechuga", "Ledesma", "Ledezma", "Lee", "Legaspi", "Leger", "Leguizamo", "Leija", "Leiva", "Lema", "Lemon", "Lemos", "Lemus", "Leo", "Leon", "Leonard", "Leonardo", "Leos", "Lepe", "Lerma", "Leslie", "Lester", "Levario", "Levine", "Levy", "Lewis", "Ley", "Leyba", "Leyva", "Lezama", "Lezcano", "Licea", "Licon", "Licona", "Liendo", "Liera", "Lima", "Limas", "Limon", "Limones", "Linan", "Linares", "Linarez", "Lind", "Lindo", "Lindsay", "Lindsey", "Lino", "Lira", "Liranzo", "Liriano", "Liscano", "Little", "Livingston", "Liz", "Lizama", "Lizaola", "Lizardi", "Lizardo", "Lizarraga", "Lizcano", "Llamas", "Llanas", "Llanes", "Llano", "Llanos", "Llerena", "Llorens", "Lloyd", "Loa", "Loaiza", "Loayza", "Lobato", "Lobo", "Lobos", "Lockhart", "Loera", "Loeza", "Logan", "Loja", "Lomas", "Lombardo", "Lombera", "Lomeli", "Lona", "Londono", "Long", "Longoria", "Loor", "Lopera", "Lopes", "Lopez", "Lopezgarcia", "Lopezhernandez", "Lopezlopez", "Lopezmartinez", "Lora", "Lord", "Loredo", "Lorenzana", "Lorenzo", "Loreto", "Losada", "Losano", "Losoya", "Louis", "Lovato", "Love", "Lowe", "Lowery", "Loya", "Loyola", "Loza", "Lozada", "Lozano", "Lozoya", "Lua", "Lucas", "Lucatero", "Lucena", "Lucero", "Luciano", "Lucio", "Luera", "Lueras", "Luevano", "Luevanos", "Lugo", "Luis", "Lujan", "Lujano", "Lule", "Lumbreras", "Luna", "Lund", "Lung", "Lupercio", "Lupian", "Luque", "Luquin", "Lutz", "Luviano", "Luz", "Lynch", "Lynn", "Lyons", "Macareno", "Macario", "MacDonald", "Macedo", "Machado", "Machin", "Machuca", "Macias", "Maciel", "Mack", "Mackey", "Madden", "Madera", "Madero", "Madrid", "Madrigal", "Madril", "Madriz", "Madueno", "Maes", "Maese", "Maestas", "Maestre", "Maez", "Magallan", "Magallanes", "Magallanez", "Magallon", "Magana", "Magdaleno", "Mahoney", "Mairena", "Maisonet", "Majano", "Malacara", "Malagon", "Malave", "Maldonado", "Malone", "Malpica", "Maltez", "Maltos", "Mancera", "Mancha", "Mancia", "Mancias", "Mancilla", "Mancillas", "Mancinas", "Mandujano", "Mangual", "Manjarrez", "Mann", "Manning", "Manon", "Manrique", "Manriquez", "Mansilla", "Manso", "Mantilla", "Manuel", "Manzanares", "Manzanarez", "Manzano", "Manzo", "Mar", "Maradiaga", "Maravilla", "Marban", "Marcano", "Marcelino", "Marcelo", "Marchan", "Marchena", "Marcia", "Marcial", "Marcos", "Marcus", "Marenco", "Marentes", "Mares", "Marez", "Maria", "Mariano", "Marin", "Marine", "Marines", "Marinez", "Marino", "Mariscal", "Marks", "Marmol", "Marmolejo", "Marmolejos", "Marques", "Marquez", "Marquina", "Marrero", "Marron", "Marroquin", "Marrufo", "Marrujo", "Marsh", "Marshall", "Marta", "Marte", "Martel", "Martell", "Martes", "Marti", "Martin", "Martindelcampo", "Martines", "Martinez", "Martino", "Martins", "Martir", "Marty", "Marzan", "Mas", "Mascarenas", "Mascorro", "Masias", "Mason", "Massa", "Massey", "Mata", "Matamoros", "Mateo", "Mateos", "Mathews", "Mathis", "Matias", "Matos", "Matta", "Matthews", "Mattos", "Maturino", "Matus", "Matute", "Mauricio", "Maxwell", "May", "Maya", "Mayen", "Mayer", "Mayes", "Maynard", "Maynes", "Maynez", "Mayo", "Mayor", "Mayoral", "Mayorga", "Mayorquin", "Mays", "Maysonet", "Maza", "Mazariego", "Mazariegos", "Mazon", "McAllister", "McBride", "McCabe", "McCall", "McCann", "McCarthy", "McCarty", "McClain", "McClure", "McConnell", "McCormick", "McCoy", "McCullough", "McDaniel", "McDermott", "McDonald", "McDowell", "McFarland", "McGee", "McGrath", "McGuire", "McIntosh", "McIntyre", "McKay", "McKee", "McKenna", "McKenzie", "McKinney", "McLaughlin", "McLean", "McLeod", "McMahon", "McMillan", "McNeil", "McPherson", "Meadows", "Medeiros", "Medel", "Medellin", "Medero", "Mederos", "Medina", "Medrano", "Mejia", "Mejias", "Mejorado", "Melara", "Melchor", "Melecio", "Melena", "Melendes", "Melendez", "Melendrez", "Melero", "Melgar", "Melgarejo", "Melgoza", "Mellado", "Mello", "Melo", "Melton", "Membreno", "Mena", "Menchaca", "Mendes", "Mendez", "Mendieta", "Mendiola", "Mendivil", "Mendizabal", "Mendosa", "Mendoza", "Menendez", "Meneses", "Menjivar", "Mera", "Meraz", "Mercado", "Merced", "Mercedes", "Mercer", "Merchan", "Merida", "Merino", "Merlo", "Merlos", "Mero", "Merrill", "Merritt", "Mesa", "Mesta", "Mestas", "Mestre", "Meyer", "Meyers", "Meza", "Michael", "Michel", "Middleton", "Mier", "Miera", "Miguel", "Mijangos", "Mijares", "Milan", "Milanes", "Miles", "Milian", "Milla", "Millan", "Miller", "Milligan", "Mills", "Mina", "Minaya", "Minero", "Minjares", "Minjarez", "Minor", "Mira", "Mirabal", "Miramontes", "Miranda", "Mireles", "Mirelez", "Miron", "Mitchell", "Moctezuma", "Modesto", "Mojarro", "Mojica", "Molano", "Molina", "Molinar", "Monarrez", "Moncada", "Moncayo", "Moncivais", "Mondragon", "Monegro", "Monge", "Monjaras", "Monjaraz", "Monje", "Monreal", "Monroe", "Monroy", "Monrreal", "Monrroy", "Monsalve", "Monserrate", "Monsivais", "Montalbo", "Montalvan", "Montalvo", "Montana", "Montanez", "Montano", "Montas", "Monte", "Monteagudo", "Montealegre", "Montejano", "Montejo", "Montellano", "Montelongo", "Montemayor", "Montenegro", "Monteon", "Montero", "Monterrosa", "Monterroso", "Monterroza", "Montes", "Montesdeoca", "Montesino", "Montesinos", "Montez", "Montgomery", "Montiel", "Montijo", "Montilla", "Montoya", "Montufar", "Monzon", "Moody", "Moon", "Moore", "Mora", "Morado", "Moraga", "Morales", "Moralez", "Moran", "Morano", "Morataya", "Moreira", "Morejon", "Morel", "Morell", "Morelos", "Morena", "Moreno", "Morera", "Moreta", "Morfin", "Morga", "Morgado", "Morgan", "Mori", "Morillo", "Morin", "Moro", "Morocho", "Moron", "Morones", "Moronta", "Morquecho", "Morris", "Morrison", "Morrow", "Morse", "Morton", "Morua", "Moscoso", "Moses", "Mosley", "Mosqueda", "Mosquera", "Moss", "Mota", "Motta", "Moya", "Muela", "Mueller", "Mujica", "Mulero", "Mullen", "Muller", "Mullins", "Mundo", "Muneton", "Mungia", "Munguia", "Muniz", "Munos", "Munoz", "Muralles", "Muratalla", "Murcia", "Murga", "Murguia", "Muriel", "Murillo", "Muro", "Murphy", "Murray", "Murrieta", "Murrietta", "Muzquiz", "Myers", "Nadal", "Najar", "Najarro", "Najera", "Nambo", "Nanez", "Napoles", "Naranjo", "Narez", "Narvaez", "Narvaiz", "Nash", "Natal", "Natera", "Natividad", "Nava", "Navar", "Navarette", "Navarrete", "Navarrette", "Navarro", "Navas", "Navedo", "Navejar", "Navejas", "Navia", "Nazario", "Neal", "Negrete", "Negrin", "Negron", "Neira", "Nelson", "Neri", "Neria", "Nerio", "Nevares", "Nevarez", "Newell", "Newman", "Newton", "Neyra", "Nguyen", "Nicasio", "Nicholas", "Nichols", "Nicholson", "Nicolas", "Niebla", "Nieblas", "Nielsen", "Nieto", "Nieves", "Nila", "Nino", "Nixon", "Noa", "Noble", "Noboa", "Nodal", "Nodarse", "Noel", "Nogales", "Noguera", "Nogueras", "Noguez", "Nolan", "Nolasco", "Noriega", "Norman", "Norris", "Norton", "Nova", "Novak", "Novello", "Novelo", "Novo", "Novoa", "Noyola", "Nuncio", "Nunes", "Nunez", "Nungaray", "Nuno", "O'Brien", "O'Connell", "O'Connor", "O'Dell", "O'Donnell", "O'Hara", "O'Neal", "O'Neil", "O'Neill", "Obando", "Obeso", "Obregon", "Ocampo", "Ocana", "Ocanas", "Ocasio", "Ocegueda", "Oceguera", "Ochoa", "Ocon", "Odell", "Ogando", "Ogas", "Ojeda", "Olague", "Olalde", "Olan", "Olarte", "Olavarria", "Olaya", "Olea", "Olgin", "Olguin", "Oliva", "Olivar", "Olivares", "Olivarez", "Olivarria", "Olivas", "Oliveira", "Olivencia", "Oliver", "Olivera", "Oliveras", "Olivero", "Oliveros", "Olivieri", "Olivo", "Olivos", "Olmeda", "Olmedo", "Olmo", "Olmos", "Olsen", "Olson", "Olveda", "Olvera", "Onate", "Onofre", "Ontiveros", "Oquendo", "Orantes", "Ordaz", "Ordones", "Ordonez", "Orduna", "Orduno", "Orea", "Oregel", "Oregon", "Orejel", "Orellana", "Orellano", "Orengo", "Orihuela", "Orlando", "Ornelas", "Orona", "Oropeza", "Oros", "Orosco", "Orozco", "Orr", "Orrego", "Orta", "Ortega", "Ortegon", "Ortez", "Ortis", "Ortiz", "Ortuno", "Osborn", "Osborne", "Osegueda", "Oseguera", "Osoria", "Osorio", "Osornio", "Osorno", "Ospina", "Osuna", "Otano", "Otero", "Ovalle", "Ovalles", "Ovando", "Oviedo", "Owen", "Owens", "Oyervides", "Oyola", "Ozuna", "Pablo", "Pabon", "Pace", "Pacheco", "Padilla", "Padin", "Padro", "Padron", "Padua", "Paez", "Pagan", "Page", "Paiz", "Palacio", "Palacios", "Palafox", "Palencia", "Palermo", "Pallares", "Palma", "Palmer", "Palmerin", "Palomar", "Palomares", "Palomarez", "Palomera", "Palomino", "Palomo", "Palos", "Panameno", "Pando", "Panduro", "Paniagua", "Pantaleon", "Pantoja", "Panuco", "Parada", "Paramo", "Pardo", "Paredes", "Paredez", "Pareja", "Parga", "Pargas", "Paris", "Park", "Parker", "Parks", "Parra", "Parrales", "Parras", "Parrilla", "Parrish", "Parsons", "Partida", "Pascual", "Pasillas", "Pastor", "Pastrana", "Patel", "Patino", "Patlan", "Patricio", "Patrick", "Patron", "Patterson", "Patton", "Paucar", "Paul", "Paula", "Paulin", "Paulino", "Pavia", "Pavon", "Payan", "Payano", "Payne", "Paz", "Pazmino", "Pazos", "Pearce", "Pearson", "Pech", "Pecina", "Peck", "Pedraza", "Pedregon", "Pedro", "Pedrosa", "Pedroso", "Pedroza", "Peguero", "Peinado", "Pelaez", "Pelayo", "Pellot", "Pena", "Penafiel", "Penaloza", "Penaranda", "Penate", "Peng", "Penn", "Pennington", "Penuelas", "Pequeno", "Pera", "Perales", "Peralez", "Peralta", "Peraza", "Perdomo", "Perea", "Pereda", "Peregrino", "Pereida", "Pereira", "Perera", "Peres", "Pereyra", "Perez", "Perezgarcia", "Perkins", "Perla", "Perry", "Person", "Peru", "Pescador", "Pesina", "Pesqueira", "Peters", "Petersen", "Peterson", "Petty", "Phelps", "Phillips", "Picado", "Picasso", "Picazo", "Piceno", "Pichardo", "Pico", "Picon", "Piedra", "Piedrahita", "Pierce", "Pierre", "Pierson", "Pimentel", "Pimienta", "Pina", "Pinal", "Pinales", "Pineda", "Pinedo", "Pineiro", "Pinela", "Pinero", "Pinilla", "Pino", "Pinon", "Pintado", "Pinto", "Pintor", "Pinzon", "Pita", "Pitre", "Pittman", "Pitts", "Pizana", "Pizano", "Pizarro", "Pla", "Placencia", "Placido", "Planas", "Plancarte", "Plascencia", "Plasencia", "Plata", "Platero", "Plaza", "Plazola", "Pleitez", "Pliego", "Poblano", "Polanco", "Pollard", "Pollock", "Polo", "Pomales", "Pompa", "Ponce", "Poncedeleon", "Ponciano", "Pons", "Pool", "Poole", "Pope", "Popoca", "Porras", "Portal", "Portalatin", "Portales", "Portela", "Porter", "Portilla", "Portillo", "Porto", "Portugal", "Posada", "Posadas", "Potter", "Potts", "Poveda", "Powell", "Powers", "Pozo", "Pozos", "Prada", "Prado", "Prats", "Pratt", "Pratts", "Preciado", "Presas", "Preston", "Price", "Priego", "Prieto", "Prince", "Proano", "Proctor", "Provencio", "Prudencio", "Pruitt", "Pruneda", "Puebla", "Puello", "Puente", "Puentes", "Puerta", "Puerto", "Puga", "Pugh", "Puig", "Pujol", "Pujols", "Pulgarin", "Pulido", "Puma", "Pupo", "Quesada", "Quevedo", "Quezada", "Quijada", "Quijano", "Quijas", "Quiles", "Quinn", "Quinones", "Quinonez", "Quintana", "Quintanar", "Quintanilla", "Quintela", "Quintero", "Quinteros", "Quinto", "Quirarte", "Quirino", "Quiroa", "Quiroga", "Quiros", "Quiroz", "Quispe", "Quito", "Quizhpi", "Rabadan", "Rabago", "Rada", "Radillo", "Rael", "Rafael", "Raigoza", "Ramales", "Ramires", "Ramirez", "Ramon", "Ramos", "Ramsey", "Randall", "Randolph", "Rangel", "Rankin", "Rascon", "Rasmussen", "Rauda", "Ravelo", "Ray", "Raya", "Rayas", "Raygoza", "Raymond", "Raymundo", "Rayo", "Rayos", "Razo", "Rea", "Read", "Real", "Rebollar", "Rebolledo", "Rebollo", "Recendez", "Recendiz", "Recinos", "Recio", "Redondo", "Reed", "Reese", "Reeves", "Regalado", "Regino", "Rego", "Reid", "Reilly", "Reina", "Reinoso", "Remigio", "Renderos", "Rendon", "Rengifo", "Renovato", "Rentas", "Renteria", "Requena", "Resendez", "Resendiz", "Resto", "Restrepo", "Reta", "Retana", "Reveles", "Revilla", "Revuelta", "Rey", "Reyes", "Reyez", "Reyna", "Reynaga", "Reynolds", "Reynosa", "Reynoso", "Reza", "Rhodes", "Ribas", "Ribera", "Ricardo", "Rice", "Rich", "Richard", "Richards", "Richardson", "Richmond", "Richter", "Rico", "Riddle", "Riera", "Riggs", "Rijo", "Riley", "Rincon", "Rincones", "Riojas", "Rios", "Riquelme", "Ritchie", "Rivadeneira", "Rivas", "Rivera", "Rivero", "Riveron", "Riveros", "Rivers", "Riviera", "Rizo", "Rizzo", "Roa", "Roach", "Robaina", "Robbins", "Roberson", "Robert", "Roberto", "Roberts", "Robertson", "Robinson", "Robledo", "Roblero", "Robles", "Roca", "Rocha", "Roche", "Rochin", "Rodarte", "Rodas", "Rodela", "Rodgers", "Rodriges", "Rodrigue", "Rodrigues", "Rodriguez", "Rodriques", "Rodriquez", "Rogel", "Rogers", "Rogue", "Roig", "Rojas", "Rojo", "Roldan", "Rollins", "Rolon", "Roman", "Romano", "Romeo", "Romero", "Romo", "Ron", "Rondon", "Ronquillo", "Roque", "Rosa", "Rosado", "Rosales", "Rosalez", "Rosario", "Rosas", "Rose", "Rosell", "Rosendo", "Rosero", "Rosete", "Rosiles", "Rosillo", "Ross", "Rossi", "Rostro", "Roth", "Rovira", "Rowe", "Rowland", "Roy", "Roybal", "Rua", "Ruacho", "Ruan", "Ruano", "Rubalcaba", "Rubalcava", "Rubi", "Rubin", "Rubio", "Ruby", "Rueda", "Ruedas", "Ruelas", "Rufino", "Ruis", "Ruiz", "Rush", "Russell", "Russo", "Rutz", "Ruvalcaba", "Ruybal", "Ryan", "Saavedra", "Sabala", "Sabater", "Sabedra", "Sabillon", "Sabino", "Sada", "Saenz", "Saez", "Sagastume", "Sahagun", "Sainz", "Sais", "Saiz", "Sala", "Salado", "Salais", "Salaiz", "Salamanca", "Salas", "Salasar", "Salaz", "Salazar", "Salce", "Salceda", "Salcedo", "Salcido", "Saldana", "Saldarriaga", "Saldierna", "Saldivar", "Sales", "Salgado", "Salguero", "Salinas", "Salmeron", "Salmon", "Salomon", "Salto", "Salvador", "Salvatierra", "Samaniego", "Samano", "Samayoa", "Sambrano", "Samora", "Sampson", "Samudio", "Samuel", "Sanabria", "Sanches", "Sanchez", "Sancho", "Sandate", "Sanders", "Sandobal", "Sandoval", "Sanford", "Sanjuan", "Sanmartin", "Sanmiguel", "Sanroman", "Santa", "Santacruz", "Santamaria", "Santana", "Santander", "Santayana", "Santiago", "Santibanez", "Santiesteban", "Santillan", "Santillana", "Santillanes", "Santillano", "Santini", "Santistevan", "Santizo", "Santo", "Santos", "Santoya", "Santoyo", "Sanz", "Sapien", "Sarabia", "Saragosa", "Sarate", "Saravia", "Sardina", "Sardinas", "Sargent", "Sarinana", "Sarmiento", "Sarria", "Sauceda", "Saucedo", "Saunders", "Sauseda", "Sausedo", "Savage", "Savala", "Savedra", "Sawyer", "Schaefer", "Schmidt", "Schmitt", "Schneider", "Schroeder", "Schultz", "Schwartz", "Scott", "Sears", "Sebastian", "Seda", "Sedano", "Sedillo", "Segarra", "Segovia", "Segoviano", "Segui", "Segundo", "Segura", "Sellers", "Selva", "Semidey", "Sena", "Sencion", "Sendejas", "Sendejo", "Sepeda", "Sepulveda", "Sequeira", "Serafin", "Serano", "Serda", "Sermeno", "Serna", "Serpa", "Serpas", "Serra", "Serrano", "Serrata", "Serrato", "Serratos", "Servantes", "Servellon", "Servin", "Sesma", "Severino", "Sevilla", "Sexton", "Shaffer", "Shannon", "Sharp", "Shaw", "Shea", "Shelton", "Shepard", "Shepherd", "Sheppard", "Sherman", "Sherwood", "Shields", "Short", "Sias", "Sibrian", "Sicairos", "Sida", "Sierra", "Sifuentes", "Sigala", "Siguenza", "Silguero", "Sillas", "Siller", "Silva", "Silvas", "Silveira", "Silver", "Silvera", "Silverio", "Silvestre", "Simental", "Simmons", "Simon", "Simons", "Simpson", "Sims", "Sinclair", "Singh", "Singleton", "Siordia", "Siqueiros", "Sisneros", "Sixtos", "Skinner", "Slater", "Sloan", "Small", "Smith", "Snow", "Snyder", "Soares", "Soberanes", "Soberanis", "Socarras", "Sola", "Solache", "Solano", "Solares", "Soler", "Solis", "Solivan", "Soliz", "Solomon", "Solorio", "Solorzano", "Soltero", "Somarriba", "Somoza", "Sorensen", "Soria", "Soriano", "Sorto", "Sosa", "Sostre", "Sotello", "Sotelo", "Soto", "Sotolongo", "Sotomayor", "Sousa", "Souza", "Soza", "Sparks", "Spears", "Spence", "Spencer", "Springer", "Stafford", "Stanley", "Stanton", "Stark", "Starr", "Steele", "Stein", "Stephens", "Stephenson", "Sterling", "Stevens", "Stevenson", "Stewart", "Stokes", "Stone", "Stout", "Strickland", "Strong", "Stuart", "Suares", "Suarez", "Suazo", "Subia", "Suero", "Sullivan", "Summers", "Suniga", "Suriel", "Surita", "Sustaita", "Sutherland", "Sutton", "Swanson", "Sweeney", "Sweet", "Sylva", "Tabares", "Tabarez", "Taboada", "Tabora", "Taborda", "Tadeo", "Tafolla", "Tafoya", "Tagle", "Talamante", "Talamantes", "Talamantez", "Talavera", "Tamayo", "Tamez", "Tanguma", "Tanner", "Tapanes", "Tapia", "Tarango", "Tarin", "Tate", "Tatum", "Tavares", "Tavarez", "Tavera", "Taveras", "Taylor", "Tejada", "Tejeda", "Tejera", "Telles", "Tellez", "Tello", "Tena", "Teniente", "Tenorio", "Teran", "Tercero", "Terrazas", "Terrell", "Terrero", "Terriquez", "Terrones", "Terry", "Texidor", "Then", "Thomas", "Thompson", "Thornton", "Thurman", "Tiburcio", "Ticas", "Tienda", "Tijerina", "Tinajero", "Tineo", "Tinoco", "Tirado", "Tiscareno", "Tlatelpa", "Tobar", "Tobias", "Tobin", "Tobon", "Todd", "Toledo", "Tolentino", "Tomas", "Tomlinson", "Tonche", "Topete", "Toral", "Toribio", "Toro", "Torralba", "Torre", "Torres", "Torrez", "Torrico", "Toscano", "Tostado", "Tovar", "Townsend", "Tracy", "Tran", "Travieso", "Travis", "Trejo", "Trejos", "Treto", "Trevino", "Trevizo", "Triana", "Trigo", "Trigueros", "Trillo", "Trinidad", "Tristan", "Trivino", "Troche", "Trochez", "Troncoso", "Trujillo", "Tucker", "Turcios", "Turner", "Turrubiartes", "Turrubiates", "Tyler", "Ugalde", "Ugarte", "Ulibarri", "Ulloa", "Umana", "Umanzor", "Underwood", "Unzueta", "Uranga", "Urban", "Urbano", "Urbina", "Urdiales", "Urena", "Urenda", "Ureno", "Ureste", "Uresti", "Urgiles", "Uriarte", "Urias", "Uribe", "Uriegas", "Urieta", "Urioste", "Uriostegui", "Urizar", "Urquidez", "Urquidi", "Urquilla", "Urquiza", "Urquizo", "Urrea", "Urrutia", "Urzua", "Uvalle", "Vaca", "Valadez", "Valcarcel", "Valderas", "Valderrama", "Valdes", "Valdespino", "Valdez", "Valdivia", "Valdivieso", "Valdiviezo", "Valdovinos", "Vale", "Valencia", "Valenciano", "Valente", "Valentin", "Valentine", "Valenzuela", "Valera", "Valeriano", "Valerio", "Valero", "Valiente", "Valladares", "Valladolid", "Valle", "Vallecillo", "Vallejo", "Vallejos", "Valles", "Vallez", "Vallin", "Valtierra", "Valverde", "Vance", "Vanegas", "Vaquera", "Vaquero", "Vara", "Varela", "Vargas", "Varona", "Vasallo", "Vasques", "Vasquez", "Vaughan", "Vaughn", "Vazguez", "Vazques", "Vazquez", "Vega", "Vegas", "Vejar", "Vela", "Velaquez", "Velarde", "Velasco", "Velasques", "Velasquez", "Velazco", "Velazquez", "Velez", "Veliz", "Veloz", "Vences", "Venegas", "Vento", "Ventura", "Venzor", "Vera", "Veras", "Verastegui", "Verde", "Verdejo", "Verdin", "Verdugo", "Verdusco", "Verduzco", "Vergara", "Vialpando", "Viana", "Vicario", "Vicencio", "Vicente", "Victor", "Victoria", "Victoriano", "Victorino", "Victorio", "Vicuna", "Vidal", "Vidales", "Vidana", "Vidaurri", "Vides", "Vidrio", "Vieira", "Vielma", "Viera", "Vierra", "Vieyra", "Vigil", "Vigo", "Vila", "Vilches", "Vilchez", "Vilchis", "Villa", "Villacis", "Villacorta", "Villada", "Villafan", "Villafana", "Villafane", "Villafranca", "Villafranco", "Villafuerte", "Villagomez", "Villagran", "Villagrana", "Villalba", "Villalobos", "Villalon", "Villalona", "Villalovos", "Villalpando", "Villalta", "Villalva", "Villalvazo", "Villamar", "Villamil", "Villaneda", "Villanueva", "Villar", "Villareal", "Villarreal", "Villarroel", "Villarruel", "Villasana", "Villasenor", "Villatoro", "Villaverde", "Villavicencio", "Villeda", "Villegas", "Villela", "Villescas", "Villicana", "Viloria", "Vinas", "Vincent", "Viramontes", "Virella", "Virgen", "Viruet", "Viscarra", "Vital", "Vitela", "Viteri", "Vivanco", "Vivar", "Vivas", "Vivero", "Viveros", "Vives", "Vizcaino", "Vizcarra", "Vizcarrondo", "Vogel", "Wade", "Wagner", "Walker", "Wall", "Wallace", "Walls", "Walsh", "Walter", "Walters", "Walton", "Ward", "Ware", "Warner", "Warren", "Washington", "Waters", "Watkins", "Watson", "Watts", "Weaver", "Webb", "Webber", "Weber", "Webster", "Weeks", "Weiss", "Welch", "Wells", "Welsh", "Wences", "Werner", "West", "Wheeler", "Whitaker", "White", "Whitehead", "Whitney", "Wiggins", "Wilcox", "Wilder", "Wiley", "Wilkerson", "Wilkins", "Wilkinson", "Williams", "Williamson", "Willis", "Wills", "Wilson", "Winter", "Winters", "Wise", "Witt", "Wolf", "Wolfe", "Wong", "Wood", "Woodard", "Woods", "Woodward", "Workman", "Wright", "Wyatt", "Yanes", "Yanez", "Yates", "Ybanez", "Ybarra", "Yebra", "Yee", "Yepes", "Yepez", "Yepiz", "Yerena", "Yescas", "Yniguez", "York", "Young", "Yslas", "Yzaguirre", "Zabala", "Zacarias", "Zagal", "Zalazar", "Zaldana", "Zaldivar", "Zamarripa", "Zamarron", "Zambrana", "Zambrano", "Zamora", "Zamorano", "Zamudio", "Zapata", "Zapien", "Zaragosa", "Zaragoza", "Zarate", "Zarazua", "Zarco", "Zatarain", "Zavala", "Zavaleta", "Zavalza", "Zayas", "Zazueta", "Zea", "Zegarra", "Zelada", "Zelaya", "Zeledon", "Zendejas", "Zenteno", "Zepeda", "Zermeno", "Zertuche", "Zetina", "Zetino", "Zevallos", "Zimmerman", "Zorrilla", "Zubia", "Zubiate", "Zuleta", "Zuluaga", "Zuniga", "Zuno", "Zurita"]>>
 
 /* Removed all short-cute forms of russian names, they are not real names, can't be used in passports for example. They are names (nicknames) for family and close friends usage - with only positive and close relationships. On slaves it's looked weird and idiotic. Do not re-add them! Removed the same names but with wrong transliteration, and archaic forms not used today, but some alternate trasliteration leaved - if name have historic variations. Also - who added Nymphadora as russian name? LoL.*/
-<<set setup.russianSlaveNames = ["Ada", "Adelaida", "Afanasiya", "Agata", "Agnessa", "Ala", "Albina", "Aleksandra", "Alena", "Alexandra", "Alina", "Alisa", "Alisya", "Alla", "Alyona", "Anastasia", "Anastasiya", "Anfisa", "Angela", "Angelica", "Angelika", "Angelina", "Anna", "Antonina", "Arina", "Avgustina", "Avrora", "Bronislava", "Clara", "Clavdia", "Daria", "Dariya", "Darya", "Daryna", "Dasha", "Diana", "Dina", "Edita", "Ekaterina", "Ekatherina", "Elen", "Elena", "Eleonora", "Elisaveta", "Ella", "Elvira", "Emma", "Eugenia", "Eva", "Evdokiya", "Evelina", "Evgenia", "Evgeniya", "Evdokia", "Faina",  "Fayina", "Feodosya", "Galina", "Galya", "Helena", "Ida", "Ilona", "Inessa", "Inga", "Inna", "Irina", "Irma", "Janna", "Jenya", "Julia", "Juliya",  "Kapitolina", "Karina", "Karolina", "Katerina", "Katya", "Kima", "Kira", "Klara", "Klavdiya", "Kristina", "Ksenia", "Kseniya", "Lada", "Lana", "Lara",  "Larisa", "Laura", "Lena", "Lenora", "Lera", "Lidia", "Lidiya", "Lila", "Lilia", "Liza", "Lola", "Lora", "Ludmila", "Ludmilla", "Luiza", "Lyubov", "Lyudmila", "Magdalena", "Maiya", "Marfa", "Margarita", "Maria", "Marianna", "Marina", "Mariya", "Marta", "Marusia", "Masha", "Maya", "Mila", "Milana",  "Mira", "Nadeschda", "Nastasia", "Nastasya", "Natalia", "Natalya", "Nelly", "Nika", "Nina", "Nonna", "Oksana", "Olena", "Olesya", "Olga", "Oxana",  "Polina", "Rada", "Radmila", "Raisa", "Renata", "Rimma", "Roksana", "Rosa", "Ruslana", "Serafima", "Snejana", "Sofia", "Sofya", "Sonia", "Stanislava",  "Stella", "Suzanna", "Svetlana", "Taisija", "Taissia", "Tamara", "Tanya", "Tasiya", "Tatiana", "Teresa", "Uliana", "Ulyana", "Ursula", "Valentina", "Valeria", "Valeriya", "Varvara", "Vasilisa", "Vera", "Veronika", "Victoria", "Vika", "Viktoria", "Vilena", "Viola", "Violetta", "Vlada", "Xenia",  "Yana", "Yaroslava", "Yulia", "Zinaida", "Zinovia", "Zinoviya", "Zoya"]>>
+<<set setup.russianSlaveNames = ["Ada", "Adelaida", "Afanasiya", "Agata", "Agnessa", "Ala", "Albina", "Aleksandra", "Alena", "Alexandra", "Alina", "Alisa", "Alisya", "Alla", "Alyona", "Anastasia", "Anastasiya", "Anfisa", "Angela", "Angelica", "Angelika", "Angelina", "Anna", "Antonina", "Arina", "Avgustina", "Avrora", "Bronislava", "Clara", "Clavdia", "Daria", "Dariya", "Darya", "Daryna", "Dasha", "Diana", "Dina", "Edita", "Ekaterina", "Ekatherina", "Elen", "Elena", "Eleonora", "Elisaveta", "Ella", "Elvira", "Emma", "Eugenia", "Eva", "Evdokiya", "Evelina", "Evgenia", "Evgeniya", "Evdokia", "Faina", "Fayina", "Feodosya", "Galina", "Galya", "Helena", "Ida", "Ilona", "Inessa", "Inga", "Inna", "Irina", "Irma", "Janna", "Jenya", "Julia", "Juliya", "Kapitolina", "Karina", "Karolina", "Katerina", "Katya", "Kima", "Kira", "Klara", "Klavdiya", "Kristina", "Ksenia", "Kseniya", "Lada", "Lana", "Lara", "Larisa", "Laura", "Lena", "Lenora", "Lera", "Lidia", "Lidiya", "Lila", "Lilia", "Liza", "Lola", "Lora", "Ludmila", "Ludmilla", "Luiza", "Lyubov", "Lyudmila", "Magdalena", "Maiya", "Marfa", "Margarita", "Maria", "Marianna", "Marina", "Mariya", "Marta", "Marusia", "Masha", "Maya", "Mila", "Milana", "Mira", "Nadeschda", "Nastasia", "Nastasya", "Natalia", "Natalya", "Nelly", "Nika", "Nina", "Nonna", "Oksana", "Olena", "Olesya", "Olga", "Oxana", "Polina", "Rada", "Radmila", "Raisa", "Renata", "Rimma", "Roksana", "Rosa", "Ruslana", "Serafima", "Snejana", "Sofia", "Sofya", "Sonia", "Stanislava", "Stella", "Suzanna", "Svetlana", "Taisija", "Taissia", "Tamara", "Tanya", "Tasiya", "Tatiana", "Teresa", "Uliana", "Ulyana", "Ursula", "Valentina", "Valeria", "Valeriya", "Varvara", "Vasilisa", "Vera", "Veronika", "Victoria", "Vika", "Viktoria", "Vilena", "Viola", "Violetta", "Vlada", "Xenia", "Yana", "Yaroslava", "Yulia", "Zinaida", "Zinovia", "Zinoviya", "Zoya"]>>
 <<set setup.russianSlaveSurnames = ["Abarinova", "Abashova", "Abramova", "Agaltsova", "Agapova", "Agureeva", "Akhaimova", "Akimova", "Akinshina", "Aleksandrova", "Aleksandrovich", "Aleksandrovna", "Alekseeva", "Alieva", "Alliluyeva", "Altayskaya", "Ananina", "Andreeva", "Andrejchenko", "Antonenko", "Antonova", "Arbatova", "Aroseva", "Arshinova", "Asmus", "Astafieva", "Avdeyeva", "Baclanova", "Bajenova", "Baranova", "Batalova", "Belova", "Belyaeva", "Belyakova", "Berg", "Berseneva", "Blokhina", "Bogdanova", "Bogomolova", "Bogucharskaia", "Bondarenko", "Borisova", "Borissova", "Borodina", "Bosch", "Boyarskaya", "Boyko", "Brik", "Budina", "Budnitskaya", "Burina", "Burnasheva", "Buzova", "Cgernyavskaya", "Charskaya", "Chekhova", "Chemezova", "Chepeleva", "Cherepanova", "Chernova", "Chipovskaya", "Churilova", "Danilova", "Davydova", "Demekhina", "Dementieva", "Denisova", "Deulina", "Dmitrieva", "Doronina", "Dronina", "Dyupina", "Efimova", "Efremova", "Egorova", "Ekamasova", "Eremina", "Ermakova", "Ezhova", "Falileeva", "Farkhullina", "Fedorova", "Fedotova", "Fetisova", "Filatova", "Filippova", "Fomina", "Frank", "Freindlich", "Friske", "Frolova", "Fyodorova", "Gagarina", "Galkina", "Gavrilova", "Gerasimova", "Germanova", "Geva", "Girfanova", "Glazova", "Glebova", "Glinka", "Goldman", "Golovko", "Golub", "Golubeva", "Goncharova", "Gorbacheva", "Gorshkova", "Gracheva", "Grigoreva", "Grigorieva", "Grinenko", "Gromova", "Grosheva", "Gubanova", "Guseva", "Gzovskaya", "Ilchenko", "Ilina", "Inshina", "Isaeva", "Isinbayeva", "Isoeva", "Istomina", "Ivanova", "Jovovich", "Kabo", "Kachalina", "Kadirova", "Kahnovich", "Kalashnikova", "Kalinina", "Kamenkova", "Kaptsova", "Kapustina", "Karpova", "Kasatkina", "Katina", "Kazakova", "Kazanova", "Kedrova", "Khamatova", "Khityaeva", "Khlynina", "Khodchenkova", "Khomich", "Khovanskaya", "Khrushcheva", "Kibalo", "Kim", "Kirilenko", "Kirsanova", "Kiseleva", "Klimova", "Klishina", "Klopakova", "Kochina", "Kochneva", "Kolesnikova", "Kolosova", "Komarova", "Kondratyeva", "Konovalova", "Kopylova", "Korikova", "Koroleva", "Kotova", "Kouklina", "Kournikova", "Kovalenko", "Kovaleva", "Kovylina", "Kozlova", "Krajt", "Kravchenko", "Krivosheeva", "Krivozub", "Krupskaya", "Krylova", "Kulikova", "Kunskaya", "Kuptsova", "Kusakina", "Kuskova", "Kutepova", "Kuzmina", "Kuznetsova", "Landik", "Lavrova", "Lazareva", "Lebedeva", "Lekshina", "Leonova", "Levanova", "Levieva", "Levina", "Lezhnina", "Likhina", "Linskaya", "Lipovskaya", "Lisovskaia", "Lopyreva", "Lubkova", "Lukanina", "Luss", "Magomedova", "Makarenko", "Makarova", "Makeyeva", "Makhalina", "Maksimova", "Malinskaja", "Malova", "Maltseva", "Malysheva", "Manaseina", "Maretskaya", "Markova", "Martinovska", "Maslova", "Matveeva", "Matviyenko", "Maximova", "Mazura", "Medvedeva", "Melnikova", "Metkina", "Mikhaylova", "Mironova", "Mityushina", "Mizulina", "Morozova", "Moskalkova", "Mukhina", "Myasnikova", "Nabokina", "Nadezhda", "Narusova", "Naumova", "Nazarova", "Nekrasova", "Nescher", "Neyolova", "Nijinska", "Nikiforova", "Nikitina", "Nikolaeva", "Nosova", "Novikova", "Novoselova", "Olerinskaya", "Onolbayeva", "Orlova", "Osintseva", "Osipenko", "Osipova", "Ouliankina", "Oznobkina", "Pamfilova", "Panaeva", "Panina", "Panova", "Panteleeva", "Pantyukhina", "Pavlenko", "Pavlova", "Penkina", "Perepyolkina", "Pereverzeva", "Perova", "Petrenko", "Petrova", "Philippova", "Piletskaya", "Pilnitskaya", "Pivovarova", "Pletneva", "Pletnyova", "Podkaminskaya", "Polevshchikova", "Polina", "Polishchuk", "Polozkova", "Polunina", "Polyakova", "Ponaroshku", "Ponarovskaya", "Ponizova", "Popova", "Poverennova", "Pozdeeva", "Pozharskaya", "Poznyak", "Prohorova", "Proklova", "Prugova", "Putina", "Radchenko", "Razumovskaya", "Redina", "Romanova", "Roslyakova", "Rozhkova", "Rudenko", "Rudova", "Rumyanova", "Ryzhkina", "Samburskaya", "Samoilova", "Samsova", "Sarasova", "Savchenko", "Schachova", "Scherbakova", "Schirman", "Scripchenko", "Selezneva", "Seleznyova", "Semenova", "Semenovich", "Semyonova", "Senchenko", "Senchina", "Sergeeva", "Sergeevich", "Sergeevna", "Sergeyeva", "Sergina", "Serova", "Serpova", "Shabanova", "Shagalova", "Shakinskaya", "Shalagina", "Shalayeva", "Sharapova", "Sharipova", "Shayk", "Shchekina", "Shekhovtsova", "Shestova", "Shevchenko", "Shirshina", "Shiskova", "Shmeleva", "Shoygu", "Shukina", "Shulgina", "Sidorkina", "Sidorova", "Silina", "Simonovich", "Siriskina", "Sizova", "Skobtseva", "Skobtsova", "Slabunova", "Smirnova", "Snigir", "Sokolova", "Sokova", "Sorokina", "Sosina", "Sosnova", "Sotnikova", "Stalina", "Stefanenko", "Stepanova", "Strokous", "Struchkova", "Studilina", "Sudakevich", "Sukhinova", "Suslova", "Sutulova", "Svetikova", "Takshina", "Talyzina", "Tarakanova", "Tarasova", "Tarkovskaya", "Temnikova", "Tereshkina", "Tikhonova", "Timofeeva", "Timofeyeva", "Titova", "Tkachenko", "Tkacheva", "Trefilova", "Trofimova", "Trykina", "Tsesarskaya", "Tsyganenko", "Tsygankova", "Tutayeva", "Tyrkova", "Ufimtseva", "Ulanova", "Urajevskaya", "Usova", "Vafina", "Vaganova", "Valeeva", "Varlamova", "Vasileva", "Vasilyeva", "Velikanova", "Vernadskaya", "Vinogradova", "Vishneva", "Vishnevskaya", "Vladimirovich", "Vlasova", "Vodianova", "Vodonaeva", "Volkova", "Volochkova", "Volodina", "Volskaya", "Vorobyeva", "Voronina", "Vyalitsyna", "Vyroubova", "Yakovleva", "Yaroshevskaya", "Yudina", "Yurchenko", "Yurlova", "Zabolotnikova", "Zagorskaya", "Zagoruychenko", "Zakharova", "Zaryanova", "Zaytseva", "Zelyaeva", "Zherebtsova", "Zhiznyeva", "Zhukova", "Ziganshina", "Zubova", "Zudina", "Zuyeva", "Zvarych"]>>
 /*Actually russian and ukrainian names and surnames can be safely merged in one array, and used for both nations. Through very high cultural interchange, they are very common on both territories, many of them can't be specifed as russian or ukrainian now.*/
 
diff --git a/src/uncategorized/club.tw b/src/uncategorized/club.tw
index a396d61ccc7..522e0a6a79e 100644
--- a/src/uncategorized/club.tw
+++ b/src/uncategorized/club.tw
@@ -15,7 +15,7 @@ $clubNameCaps
 <<case "Egyptian Revivalist">>
 	is decorated like a room in an ancient Egyptian palace. There are columns of warm stone and pools of clear water full of aquatic plants.
 <<case "Edo Revivalist">>
-	is furnished as an Edo period theatre. Performances of the traditional Japanese arts can be seen here, though more modern dancing happens in the evenings. In either case, geisha girls are present and willing.
+	is furnished as an Edo period theater. Performances of the traditional Japanese arts can be seen here, though more modern dancing happens in the evenings. In either case, geisha girls are present and willing.
 <<case "Arabian Revivalist">>
 	is designed like an open plaza in an Arabian palace, with a raised stage in the center for erotic dancing. Diaphanous, flowing curtains billow across the space, dispersing the narcotic smoke billowing from a score of hookahs.
 <<case "Chinese Revivalist">>
diff --git a/src/uncategorized/clubAdvertisement.tw b/src/uncategorized/clubAdvertisement.tw
index 369531a9676..f4fab05a2de 100644
--- a/src/uncategorized/clubAdvertisement.tw
+++ b/src/uncategorized/clubAdvertisement.tw
@@ -10,7 +10,7 @@
 <<case "Egyptian Revivalist">>
 	$clubNameCaps is decorated like a room in an ancient Egyptian palace. There are columns of warm stone and pools of clear water full of aquatic plants.
 <<case "Edo Revivalist">>
-	$clubNameCaps is furnished as an Edo period theatre. Performances of the traditional Japanese arts can be seen here, though more modern dancing happens in the evenings. In either case, geisha girls are present and willing.
+	$clubNameCaps is furnished as an Edo period theater. Performances of the traditional Japanese arts can be seen here, though more modern dancing happens in the evenings. In either case, geisha girls are present and willing.
 <<case "Arabian Revivalist">>
 	$clubNameCaps is designed like an open plaza in an Arabian palace, with a raised stage in the center for erotic dancing. Diaphanous, flowing curtains billow across the space, dispersing the narcotic smoke billowing from a score of hookahs.
 <<case "Chinese Revivalist">>
-- 
GitLab


From 23c83d6031c7ecb69a9aabd43e1c707913b15f21 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 25 Jul 2018 01:02:24 -0400
Subject: [PATCH 114/189] fixes and tweaks

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |   9 ++
 src/pregmod/saPorn.tw                        | 156 ++++++++++---------
 src/uncategorized/slaveInteract.tw           |   2 +-
 src/utility/descriptionWidgetsFlesh.tw       |   2 +-
 4 files changed, 91 insertions(+), 78 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 913bf6133bb..ec53860d33c 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,15 @@
 
 0.10.7.1-0.5.x
 
+7/25/2018
+
+	2
+	-lowered requirement for pornFocus
+	-pornFocus is no longer disabled once .pornPrestige is earned (allows undermining)
+	-fixed bugs
+
+7/24/2018
+
 	1
 	-porn system overhaul
 	-added ability to track true virgins
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index e1f91fddacf..6b0b98be995 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -4,10 +4,10 @@
 	<<set $HackingSkillMultiplier = HSM()>>
 	
 	/* rate of decay*/
-	<<if $slaves[$i].pornPrestige > 1>> /* 20k */
+	<<if $slaves[$i].pornPrestige > 1>> /* 25k */
 		<<set _decayRate = 5000>>
 		<<set _viewership = ((500/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending)+($slaves[$i].face*2)+($slaves[$i].prestige*10)-(_decayRate))>>
-	<<elseif $slaves[$i].pornPrestige > 0>> /* 5k */
+	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
 		<<set _decayRate = 500>>
 		<<set _viewership = ((200/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/10)+($slaves[$i].face)+($slaves[$i].prestige*50)-(_decayRate))>>
 	<<else>>
@@ -16,7 +16,11 @@
 	<</if>>
 	<<set _viewerSoaking = 1>>
 	<<set _viewership = Math.trunc(_viewership)>>
+	<<set _adjustedViewership = _viewership>>
 	<<set _oldFame = $slaves[$i].pornFame>>
+	<<if $PC.hacking < 0>>
+		<<set $PC.hacking += 0.1>>
+	<</if>>
 	
 	The studio regularly releases clips of $possessive daily affairs.
 	
@@ -998,8 +1002,8 @@
 		Overall, $possessive online fame @@.red;dropped@@ this week.
 	<<elseif _oldFame < $slaves[$i].pornFame>>
 		Overall, $possessive online fame @@.green;rose@@ this week.
-		<<if _oldFame < 1000 && $slaves[$i].pornFame >= 1000 && $studioFeed == 1>>
-			$pronounCap @@.yellow;has accrued enough views to warrant specialization.@@
+		<<if _oldFame < 100 && $slaves[$i].pornFame >= 100 && $studioFeed == 1>>
+			$pronounCap @@.yellow;has accrued enough views to determine prospective porn genres.@@
 		<</if>>
 	<<elseif $slaves[$i].pornFame != 0>>
 		Surprisingly, $possessive online fame @@.yellow;remained consistant@@ this week despite how fickle watchers can be.
@@ -1018,47 +1022,47 @@
 	
 	/* prestige gen */
 	
-	<<if $slaves[$i].pornPrestige == 0 && $slaves[$i].pornFame >= 5000>>
+	<<if $slaves[$i].pornPrestige == 0 && $slaves[$i].pornFame >= 10000>>
 		<<set _pornFameGrabBag = []>>
-		<<if $slaves[$i].pornTypeGeneral >= 5000>><<set _pornFameGrabBag.push("generic")>><</if>>
-		<<if $slaves[$i].pornTypeFuckdoll >= 5000>><<set _pornFameGrabBag.push("fuckdoll")>><</if>>
-		<<if $slaves[$i].pornTypeRape >= 5000>><<set _pornFameGrabBag.push("rape")>><</if>>
-		<<if $slaves[$i].pornTypePreggo >= 5000>><<set _pornFameGrabBag.push("preggo")>><</if>>
-		<<if $slaves[$i].pornTypeBBW >= 5000>><<set _pornFameGrabBag.push("BBW")>><</if>>
-		<<if $slaves[$i].pornTypeGainer >= 5000>><<set _pornFameGrabBag.push("weight gain")>><</if>>
-		<<if $slaves[$i].pornTypeStud >= 5000>><<set _pornFameGrabBag.push("big dick")>><</if>>
-		<<if $slaves[$i].pornTypeLoli >= 5000>><<set _pornFameGrabBag.push("underage")>><</if>>
-		<<if $slaves[$i].pornTypeDeepThroat >= 5000>><<set _pornFameGrabBag.push("deepthroat")>><</if>>
-		<<if $slaves[$i].pornTypeStruggleFuck >= 5000>><<set _pornFameGrabBag.push("unwilling")>><</if>>
-		<<if $slaves[$i].pornTypePainal >= 5000>><<set _pornFameGrabBag.push("hardcore anal")>><</if>>
-		<<if $slaves[$i].pornTypeTease >= 5000>><<set _pornFameGrabBag.push("softcore")>><</if>>
-		<<if $slaves[$i].pornTypeRomantic >= 5000>><<set _pornFameGrabBag.push("romantic")>><</if>>
-		<<if $slaves[$i].pornTypePervert >= 5000>><<set _pornFameGrabBag.push("really perverted")>><</if>>
-		<<if $slaves[$i].pornTypeCaring >= 5000>><<set _pornFameGrabBag.push("voyeur")>><</if>>
-		<<if $slaves[$i].pornTypeUnflinching >= 5000>><<set _pornFameGrabBag.push("unspeakable")>><</if>>
-		<<if $slaves[$i].pornTypeSizeQueen >= 5000>><<set _pornFameGrabBag.push("huge insertion")>><</if>>
-		<<if $slaves[$i].pornTypeNeglectful >= 5000>><<set _pornFameGrabBag.push("orgasm denial")>><</if>>
-		<<if $slaves[$i].pornTypeCumAddict >= 5000>><<set _pornFameGrabBag.push("cum addiction")>><</if>>
-		<<if $slaves[$i].pornTypeAnalAddict >= 5000>><<set _pornFameGrabBag.push("anal addiction")>><</if>>
-		<<if $slaves[$i].pornTypeAttentionWhore >= 5000>><<set _pornFameGrabBag.push("exhibition")>><</if>>
-		<<if $slaves[$i].pornTypeBreastGrowth >= 5000>><<set _pornFameGrabBag.push("breast expansion")>><</if>>
-		<<if $slaves[$i].pornTypeAbusive >= 5000>><<set _pornFameGrabBag.push("abuse")>><</if>>
-		<<if $slaves[$i].pornTypeMalicious >= 5000>><<set _pornFameGrabBag.push("sexual torture")>><</if>>
-		<<if $slaves[$i].pornTypeSelfHating >= 5000>><<set _pornFameGrabBag.push("self hating")>><</if>>
-		<<if $slaves[$i].pornTypeBreeder >= 5000>><<set _pornFameGrabBag.push("breeder")>><</if>>
-		<<if $slaves[$i].pornTypeSub >= 5000>><<set _pornFameGrabBag.push("submissive")>><</if>>
-		<<if $slaves[$i].pornTypeCumSlut >= 5000>><<set _pornFameGrabBag.push("cum")>><</if>>
-		<<if $slaves[$i].pornTypeAnal >= 5000>><<set _pornFameGrabBag.push("buttslut")>><</if>>
-		<<if $slaves[$i].pornTypeHumiliation >= 5000>><<set _pornFameGrabBag.push("humiliating")>><</if>>
-		<<if $slaves[$i].pornTypeBoobs >= 5000>><<set _pornFameGrabBag.push("breast")>><</if>>
-		<<if $slaves[$i].pornTypeDom >= 5000>><<set _pornFameGrabBag.push("dominant")>><</if>>
-		<<if $slaves[$i].pornTypeSadist >= 5000>><<set _pornFameGrabBag.push("sadistic")>><</if>>
-		<<if $slaves[$i].pornTypeMasochist >= 5000>><<set _pornFameGrabBag.push("masochistic")>><</if>>
-		<<if $slaves[$i].pornTypePregnancy >= 5000>><<set _pornFameGrabBag.push("pregnancy fetish")>><</if>>
+		<<if $slaves[$i].pornTypeGeneral >= 10000>><<set _pornFameGrabBag.push("generic")>><</if>>
+		<<if $slaves[$i].pornTypeFuckdoll >= 10000>><<set _pornFameGrabBag.push("fuckdoll")>><</if>>
+		<<if $slaves[$i].pornTypeRape >= 10000>><<set _pornFameGrabBag.push("rape")>><</if>>
+		<<if $slaves[$i].pornTypePreggo >= 10000>><<set _pornFameGrabBag.push("preggo")>><</if>>
+		<<if $slaves[$i].pornTypeBBW >= 10000>><<set _pornFameGrabBag.push("BBW")>><</if>>
+		<<if $slaves[$i].pornTypeGainer >= 10000>><<set _pornFameGrabBag.push("weight gain")>><</if>>
+		<<if $slaves[$i].pornTypeStud >= 10000>><<set _pornFameGrabBag.push("big dick")>><</if>>
+		<<if $slaves[$i].pornTypeLoli >= 10000>><<set _pornFameGrabBag.push("underage")>><</if>>
+		<<if $slaves[$i].pornTypeDeepThroat >= 10000>><<set _pornFameGrabBag.push("deepthroat")>><</if>>
+		<<if $slaves[$i].pornTypeStruggleFuck >= 10000>><<set _pornFameGrabBag.push("unwilling")>><</if>>
+		<<if $slaves[$i].pornTypePainal >= 10000>><<set _pornFameGrabBag.push("hardcore anal")>><</if>>
+		<<if $slaves[$i].pornTypeTease >= 10000>><<set _pornFameGrabBag.push("softcore")>><</if>>
+		<<if $slaves[$i].pornTypeRomantic >= 10000>><<set _pornFameGrabBag.push("romantic")>><</if>>
+		<<if $slaves[$i].pornTypePervert >= 10000>><<set _pornFameGrabBag.push("really perverted")>><</if>>
+		<<if $slaves[$i].pornTypeCaring >= 10000>><<set _pornFameGrabBag.push("voyeur")>><</if>>
+		<<if $slaves[$i].pornTypeUnflinching >= 10000>><<set _pornFameGrabBag.push("unspeakable")>><</if>>
+		<<if $slaves[$i].pornTypeSizeQueen >= 10000>><<set _pornFameGrabBag.push("huge insertion")>><</if>>
+		<<if $slaves[$i].pornTypeNeglectful >= 10000>><<set _pornFameGrabBag.push("orgasm denial")>><</if>>
+		<<if $slaves[$i].pornTypeCumAddict >= 10000>><<set _pornFameGrabBag.push("cum addiction")>><</if>>
+		<<if $slaves[$i].pornTypeAnalAddict >= 10000>><<set _pornFameGrabBag.push("anal addiction")>><</if>>
+		<<if $slaves[$i].pornTypeAttentionWhore >= 10000>><<set _pornFameGrabBag.push("exhibition")>><</if>>
+		<<if $slaves[$i].pornTypeBreastGrowth >= 10000>><<set _pornFameGrabBag.push("breast expansion")>><</if>>
+		<<if $slaves[$i].pornTypeAbusive >= 10000>><<set _pornFameGrabBag.push("abuse")>><</if>>
+		<<if $slaves[$i].pornTypeMalicious >= 10000>><<set _pornFameGrabBag.push("sexual torture")>><</if>>
+		<<if $slaves[$i].pornTypeSelfHating >= 10000>><<set _pornFameGrabBag.push("self hating")>><</if>>
+		<<if $slaves[$i].pornTypeBreeder >= 10000>><<set _pornFameGrabBag.push("breeder")>><</if>>
+		<<if $slaves[$i].pornTypeSub >= 10000>><<set _pornFameGrabBag.push("submissive")>><</if>>
+		<<if $slaves[$i].pornTypeCumSlut >= 10000>><<set _pornFameGrabBag.push("cum")>><</if>>
+		<<if $slaves[$i].pornTypeAnal >= 10000>><<set _pornFameGrabBag.push("buttslut")>><</if>>
+		<<if $slaves[$i].pornTypeHumiliation >= 10000>><<set _pornFameGrabBag.push("humiliating")>><</if>>
+		<<if $slaves[$i].pornTypeBoobs >= 10000>><<set _pornFameGrabBag.push("breast")>><</if>>
+		<<if $slaves[$i].pornTypeDom >= 10000>><<set _pornFameGrabBag.push("dominant")>><</if>>
+		<<if $slaves[$i].pornTypeSadist >= 10000>><<set _pornFameGrabBag.push("sadistic")>><</if>>
+		<<if $slaves[$i].pornTypeMasochist >= 10000>><<set _pornFameGrabBag.push("masochistic")>><</if>>
+		<<if $slaves[$i].pornTypePregnancy >= 10000>><<set _pornFameGrabBag.push("pregnancy fetish")>><</if>>
 		
 		<<if _pornFameGrabBag.length > 0>>
 			<<set $slaves[$i].pornFameType = _pornFameGrabBag.random()>>
-			<<set $slaves[$i].pornPrestige = 1, $slaves[$i].pornFocus = "none">>
+			<<set $slaves[$i].pornPrestige = 1>>
 			
 			@@.green;$pronounCap has gained a following in $slaves[$i].pornFameType pornography!@@ Thousands have enjoyed
 			
@@ -1177,7 +1181,7 @@
 
 		<<switch $slaves[$i].pornFameType>>
 		<<case "generic">>
-			<<if $slaves[$i].pornTypeGeneral >= 20000>>
+			<<if $slaves[$i].pornTypeGeneral >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from her career in slave pornography. Her many fans relish the sight of her being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
@@ -1187,7 +1191,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "fuckdoll">>
-			<<if $slaves[$i].pornTypeFuckdoll >= 20000>>
+			<<if $slaves[$i].pornTypeFuckdoll >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "It is well known from its career in slave pornography. Its many fans relish the sight of it being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
@@ -1197,7 +1201,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "rape">>
-			<<if $slaves[$i].pornTypeRape >= 20000>>
+			<<if $slaves[$i].pornTypeRape >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her being raped.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being raped, so it is now prestigious to own $object.
@@ -1207,7 +1211,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "preggo">>
-			<<if $slaves[$i].pornTypePreggo >= 20000>>
+			<<if $slaves[$i].pornTypePreggo >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her swollen with child.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object swollen with child, so $pronoun is now prestigious to own $object.
@@ -1217,7 +1221,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "BBW">>
-			<<if $slaves[$i].pornTypeBBW >= 20000>>
+			<<if $slaves[$i].pornTypeBBW >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her thick, soft body.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive thick and soft body, so $pronoun is now prestigious to own $object.
@@ -1227,7 +1231,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "underage">>
-			<<if $slaves[$i].pornTypeLoli >= 20000>>
+			<<if $slaves[$i].pornTypeLoli >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her immature body.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive immature body, so $pronoun is now prestigious to own $object.
@@ -1237,7 +1241,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "weight gain">>
-			<<if $slaves[$i].pornTypeGainer >= 20000>>
+			<<if $slaves[$i].pornTypeGainer >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how curvy she's gotten.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how curvy <<print $pronoun>>'s gotten, so $pronoun is now prestigious to own $object.
@@ -1247,7 +1251,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "big dick">>
-			<<if $slaves[$i].pornTypeStud >= 20000>>
+			<<if $slaves[$i].pornTypeStud >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her heavy dick.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive heavy dick, so $pronoun is now prestigious to own $object.
@@ -1257,7 +1261,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "deepthroat">>
-			<<if $slaves[$i].pornTypeDeepThroat >= 20000>>
+			<<if $slaves[$i].pornTypeDeepThroat >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sounds $pronoun makes when being throatfucked, so $pronoun is now prestigious to own $object.
@@ -1267,7 +1271,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unwilling">>
-			<<if $slaves[$i].pornTypeStruggleFuck >= 20000>>
+			<<if $slaves[$i].pornTypeStruggleFuck >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how perfectly she struggles during sex.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how perfectly $pronoun struggles during sex, so $pronoun is now prestigious to own $object.
@@ -1277,7 +1281,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "hardcore anal">>
-			<<if $slaves[$i].pornTypePainal >= 20000>>
+			<<if $slaves[$i].pornTypePainal >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish watching her asshole pushed to its limit.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish watching $possessive asshole pushed to its limit, so $pronoun is now prestigious to own $object.
@@ -1287,7 +1291,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "softcore">>
-			<<if $slaves[$i].pornTypeTease >= 20000>>
+			<<if $slaves[$i].pornTypeTease >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her lewd striptease.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive lewd striptease, so $pronoun is now prestigious to own $object.
@@ -1297,7 +1301,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "romantic">>
-			<<if $slaves[$i].pornTypeRomantic >= 20000>>
+			<<if $slaves[$i].pornTypeRomantic >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the deep bond she shares with her partners.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners, so $pronoun is now prestigious to own $object.
@@ -1307,7 +1311,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "really perverted">>
-			<<if $slaves[$i].pornTypePervert >= 20000>>
+			<<if $slaves[$i].pornTypePervert >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the depths of her pervesions.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions, so $pronoun is now prestigious to own $object.
@@ -1317,7 +1321,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "voyeur">>
-			<<if $slaves[$i].pornTypeCaring >= 20000>>
+			<<if $slaves[$i].pornTypeCaring >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure, so $pronoun is now prestigious to own $object.
@@ -1327,7 +1331,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unspeakable">>
-			<<if $slaves[$i].pornTypeUnflinching >= 20000>>
+			<<if $slaves[$i].pornTypeUnflinching >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her willingness to do anything and everything.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything, so $pronoun is now prestigious to own $object.
@@ -1337,7 +1341,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "huge insertion">>
-			<<if $slaves[$i].pornTypeSizeQueen >= 20000>>
+			<<if $slaves[$i].pornTypeSizeQueen >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her holes filled to their limits.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits, so $pronoun is now prestigious to own $object.
@@ -1347,7 +1351,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "orgasm denial">>
-			<<if $slaves[$i].pornTypeNeglectful >= 20000>>
+			<<if $slaves[$i].pornTypeNeglectful >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her denying herself pleasure.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object denying <<print $object>>self pleasure, so $pronoun is now prestigious to own $object.
@@ -1357,7 +1361,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum addiction">>
-			<<if $slaves[$i].pornTypeCumAddict >= 20000>>
+			<<if $slaves[$i].pornTypeCumAddict >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for cum.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for cum, so $pronoun is now prestigious to own $object.
@@ -1367,7 +1371,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "anal addiction">>
-			<<if $slaves[$i].pornTypeAnalAddict >= 20000>>
+			<<if $slaves[$i].pornTypeAnalAddict >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for a dick up her ass.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for a dick up $possessive ass, so $pronoun is now prestigious to own $object.
@@ -1377,7 +1381,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "exhibition">>
-			<<if $slaves[$i].pornTypeAttentionWhore >= 20000>>
+			<<if $slaves[$i].pornTypeAttentionWhore >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for attention.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for attention, so $pronoun is now prestigious to own $object.
@@ -1387,7 +1391,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast expansion">>
-			<<if $slaves[$i].pornTypeBreastGrowth >= 20000>>
+			<<if $slaves[$i].pornTypeBreastGrowth >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her expanding bust.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive expanding bust, so $pronoun is now prestigious to own $object.
@@ -1397,7 +1401,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "abuse">>
-			<<if $slaves[$i].pornTypeAbusive >= 20000>>
+			<<if $slaves[$i].pornTypeAbusive >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her abusing others.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object abusing others, so $pronoun is now prestigious to own $object.
@@ -1407,7 +1411,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sexual torture">>
-			<<if $slaves[$i].pornTypeMalicious >= 20000>>
+			<<if $slaves[$i].pornTypeMalicious >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her getting off from the suffering she caused.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object getting off from the suffering $pronoun caused, so $pronoun is now prestigious to own $object.
@@ -1417,7 +1421,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "self hating">>
-			<<if $slaves[$i].pornTypeSelfHating >= 20000>>
+			<<if $slaves[$i].pornTypeSelfHating >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her suffering.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive suffering, so $pronoun is now prestigious to own $object.
@@ -1427,7 +1431,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breeder">>
-			<<if $slaves[$i].pornTypeBreeder >= 20000>>
+			<<if $slaves[$i].pornTypeBreeder >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her obsession with having children.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive obsession with having children, so $pronoun is now prestigious to own $object.
@@ -1437,7 +1441,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "submissive">>
-			<<if $slaves[$i].pornTypeSub >= 20000>>
+			<<if $slaves[$i].pornTypeSub >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her submissiveness.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive submissiveness, so $pronoun is now prestigious to own $object.
@@ -1447,7 +1451,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum">>
-			<<if $slaves[$i].pornTypeCumSlut >= 20000>>
+			<<if $slaves[$i].pornTypeCumSlut >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her desire for cum.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive desire for cum, so $pronoun is now prestigious to own $object.
@@ -1457,7 +1461,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "buttslut">>
-			<<if $slaves[$i].pornTypeAnal >= 20000>>
+			<<if $slaves[$i].pornTypeAnal >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her rear.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive rear, so $pronoun is now prestigious to own $object.
@@ -1467,7 +1471,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "humiliating">>
-			<<if $slaves[$i].pornTypeHumiliation >= 20000>>
+			<<if $slaves[$i].pornTypeHumiliation >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her frequent humiliation.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive frequent humiliation, so $pronoun is now prestigious to own $object.
@@ -1477,7 +1481,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast">>
-			<<if $slaves[$i].pornTypeBoobs >= 20000>>
+			<<if $slaves[$i].pornTypeBoobs >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her breasts.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive breasts, so $pronoun is now prestigious to own $object.
@@ -1487,7 +1491,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "dominant">>
-			<<if $slaves[$i].pornTypeDom >= 20000>>
+			<<if $slaves[$i].pornTypeDom >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her dominance.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive dominance, so $pronoun is now prestigious to own $object.
@@ -1497,7 +1501,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sadistic">>
-			<<if $slaves[$i].pornTypeSadist >= 20000>>
+			<<if $slaves[$i].pornTypeSadist >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her sadism.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive sadism, so $pronoun is now prestigious to own $object.
@@ -1507,7 +1511,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "masochistic">>
-			<<if $slaves[$i].pornTypeMasochist >= 20000>>
+			<<if $slaves[$i].pornTypeMasochist >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her masochism.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive masochism, so $pronoun is now prestigious to own $object.
@@ -1517,7 +1521,7 @@
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "pregnancy fetish">>
-			<<if $slaves[$i].pornTypePregnancy >= 20000>>
+			<<if $slaves[$i].pornTypePregnancy >= 25000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her fondness for pregnancy.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive fondness for pregnancy, so $pronoun is now prestigious to own $object.
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 7c32ec1dcee..2dfbed79325 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1365,7 +1365,7 @@ Relationship rules: ''<span id="relationshipRules">$activeSlave.relationshipRule
 			<br>
 			<<if $activeSlave.pornPrestige > 0>>
 				$He is known for $activeSlave.pornFameType porn<<if $activeSlave.pornPrestige > 1>> and viewers have grown to expect it from $him<</if>>.
-			<<elseif $activeSlave.pornFame < 1000>>
+			<<elseif $activeSlave.pornFame < 100>>
 				$He lacks the fame in porn needed to discern what $his feed is getting tagged as.
 			<<else>>
 				<<if $activeSlave.pornFocus == "none">>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index ce8ea648266..cd133037e14 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -13048,7 +13048,7 @@ $He has
 		$He has spent so much time in the Free Cities that their statelessness is effectively $his nationality; ethnically, $he's
 	<<elseif $activeSlave.nationality == "Zimbabwean" && $activeSlave.race == "white">>
 		$He's originally @@.tan;Rhodesian@@; ethnically, $he's
-	<<elseif  $activeSlave.nationality == "Vatican">>
+	<<elseif $activeSlave.nationality == "Vatican">>
 		$He's originally @@.tan;from Vatican City@@; ethnically, $he's
 	<<else>>
 		$He's originally @@.tan;<<print $activeSlave.nationality>>@@; ethnically, $he's
-- 
GitLab


From 9e1f51001245f2529c28341f0d6eaef51432588b Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 25 Jul 2018 01:13:44 -0400
Subject: [PATCH 115/189] .pornFocus now actually accessible once pornPrestige
 is gained

---
 src/uncategorized/slaveInteract.tw | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 2dfbed79325..33ed865451a 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1363,11 +1363,12 @@ Relationship rules: ''<span id="relationshipRules">$activeSlave.relationshipRule
 		
 		<<if $studioFeed == 1>>
 			<br>
-			<<if $activeSlave.pornPrestige > 0>>
-				$He is known for $activeSlave.pornFameType porn<<if $activeSlave.pornPrestige > 1>> and viewers have grown to expect it from $him<</if>>.
-			<<elseif $activeSlave.pornFame < 100>>
+			<<if $activeSlave.pornFame < 100>>
 				$He lacks the fame in porn needed to discern what $his feed is getting tagged as.
 			<<else>>
+				<<if $activeSlave.pornPrestige > 0>>
+					$He is known for $activeSlave.pornFameType porn<<if $activeSlave.pornPrestige > 1>> and viewers have grown to expect it from $him<</if>>.
+				<</if>>
 				<<if $activeSlave.pornFocus == "none">>
 					You are allowing $his viewers to guide the direction of $his content.
 				<<else>>
-- 
GitLab


From 5fd5a0b84b3dedef6467e90b38d729f9c28edb00 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 25 Jul 2018 03:25:43 -0400
Subject: [PATCH 116/189] balancing

---
 src/pregmod/saPorn.tw | 44 +++++++++++++++++++++----------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index 6b0b98be995..094be0816ac 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -6,13 +6,13 @@
 	/* rate of decay*/
 	<<if $slaves[$i].pornPrestige > 1>> /* 25k */
 		<<set _decayRate = 5000>>
-		<<set _viewership = ((500/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending)+($slaves[$i].face*2)+($slaves[$i].prestige*10)-(_decayRate))>>
-	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
+		<<set _viewership = ((500/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending)+($slaves[$i].face*4)+($slaves[$i].prestige*10)-(_decayRate))>>
+	<<elseif $slaves[$i].pornPrestige > 0>> /* 20k */
 		<<set _decayRate = 500>>
-		<<set _viewership = ((200/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/10)+($slaves[$i].face)+($slaves[$i].prestige*50)-(_decayRate))>>
+		<<set _viewership = ((1000/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/10)+($slaves[$i].face*2)+($slaves[$i].prestige*500)-(_decayRate))>>
 	<<else>>
 		<<set _decayRate = 30>>
-		<<set _viewership = ((50/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/1000)+($slaves[$i].face/20)+($slaves[$i].prestige*10)-(_decayRate))>>
+		<<set _viewership = ((300/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending > 0 ? ($slaves[$i].pornFameSpending+($slaves[$i].pornFameSpending/100)) : 200)+($slaves[$i].face/20)+($slaves[$i].prestige*20)-(_decayRate))>>
 	<</if>>
 	<<set _viewerSoaking = 1>>
 	<<set _viewership = Math.trunc(_viewership)>>
@@ -69,7 +69,7 @@
 	/*Paraphilias have the highest take of viewers*/
 	<<if $slaves[$i].sexualFlaw == "neglectful">>
 		<<if $slaves[$i].pornFocus == "neglectful" || $slaves[$i].pornFameType == "orgasm denial">> /*perhaps split these? */
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -96,7 +96,7 @@
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "cum addict">>
 		<<if $slaves[$i].pornFocus == "cum addict" || $slaves[$i].pornFameType == "cum addiction">>
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -123,7 +123,7 @@
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "anal addict" && canDoAnal($slaves[$i])>>
 		<<if $slaves[$i].pornFocus == "anal addict" || $slaves[$i].pornFameType == "anal addiction">>
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -150,7 +150,7 @@
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "attention whore">>
 		<<if $slaves[$i].pornFocus == "attention whore" || $slaves[$i].pornFameType == "exhibition">>
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -177,7 +177,7 @@
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "breast growth">>
 		<<if $slaves[$i].pornFocus == "breast growth" || $slaves[$i].pornFameType == "breast expansion">>
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -204,7 +204,7 @@
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "abusive">>
 		<<if $slaves[$i].pornFocus == "abusive" || $slaves[$i].pornFameType == "abuse">>
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -231,7 +231,7 @@
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "malicious">>
 		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "sexual torture">>
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -258,7 +258,7 @@
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "self hating">>
 		<<if $slaves[$i].pornFocus == "self hating" || $slaves[$i].pornFameType == "self hating">>
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -285,7 +285,7 @@
 	<</if>>
 	<<if $slaves[$i].sexualFlaw == "breeder">>
 		<<if $slaves[$i].pornFocus == "breeder" || $slaves[$i].pornFameType == "breeder">>
-			<<set _adjustedViewership = _viewership*2>>
+			<<set _adjustedViewership = _viewership*1.5>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -314,7 +314,7 @@
 	/*fetish*/
 	<<if $slaves[$i].fetish == "submissive">>
 		<<if $slaves[$i].pornFocus == "submissive" || $slaves[$i].pornFameType == "submissive">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -341,7 +341,7 @@
 	<</if>>
 	<<if $slaves[$i].fetish == "cumslut">>
 		<<if $slaves[$i].pornFocus == "cumslut" || $slaves[$i].pornFameType == "cum">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -368,7 +368,7 @@
 	<</if>>
 	<<if $slaves[$i].fetish == "buttslut">>
 		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "buttslut">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -395,7 +395,7 @@
 	<</if>>
 	<<if $slaves[$i].fetish == "humiliation">>
 		<<if $slaves[$i].pornFocus == "humiliation" || $slaves[$i].pornFameType == "humiliating">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -422,7 +422,7 @@
 	<</if>>
 	<<if $slaves[$i].fetish == "boobs">>
 		<<if $slaves[$i].pornFocus == "boobs" || $slaves[$i].pornFameType == "breast">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -449,7 +449,7 @@
 	<</if>>
 	<<if $slaves[$i].fetish == "dom">>
 		<<if $slaves[$i].pornFocus == "dom" || $slaves[$i].pornFameType == "dominant">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -476,7 +476,7 @@
 	<</if>>
 	<<if $slaves[$i].fetish == "sadist">>
 		<<if $slaves[$i].pornFocus == "sadist" || $slaves[$i].pornFameType == "sadistic">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -503,7 +503,7 @@
 	<</if>>
 	<<if $slaves[$i].fetish == "masochist">>
 		<<if $slaves[$i].pornFocus == "masochist" || $slaves[$i].pornFameType == "masochistic">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
@@ -530,7 +530,7 @@
 	<</if>>
 	<<if $slaves[$i].fetish == "pregnancy">>
 		<<if $slaves[$i].pornFocus == "pregnancy" || $slaves[$i].pornFameType == "pregnancy fetish">>
-			<<set _adjustedViewership = _viewership*2.5>>
+			<<set _adjustedViewership = _viewership*2.0>>
 		<<elseif $slaves[$i].pornFocus != "none">>
 			<<set _adjustedViewership = _viewership*.5>>
 		<</if>>
-- 
GitLab


From a32f264775353c1e425ad680bc16b102c7f0cac9 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 25 Jul 2018 15:13:47 -0400
Subject: [PATCH 117/189] tweaks and fixes

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |   7 +
 devNotes/twine JS.txt                        |   2 +
 src/pregmod/saPorn.tw                        | 426 +++++++++----------
 src/uncategorized/sellSlave.tw               |   2 +-
 src/utility/descriptionWidgetsFlesh.tw       |  20 +-
 5 files changed, 233 insertions(+), 224 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index ec53860d33c..b6b4cd3f7b9 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -4,6 +4,13 @@
 
 7/25/2018
 
+	4
+	-more porn balance tweaks
+	-fixes and edits
+
+	3
+	-tweaked gain rates for pornPrestige 0 and 1
+
 	2
 	-lowered requirement for pornFocus
 	-pornFocus is no longer disabled once .pornPrestige is earned (allows undermining)
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 4290eed261e..3f24d236b3f 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -37,6 +37,8 @@ if (typeof interpolate == "undefined") {
 	window.interpolate = interpolate;
 }
 
+config.history.maxStates = 1;
+
 window.isFullyPotent = function(slave) {
 	if (!slave) {
 		return null;
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index 094be0816ac..7cd57d88c6a 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -4,12 +4,12 @@
 	<<set $HackingSkillMultiplier = HSM()>>
 	
 	/* rate of decay*/
-	<<if $slaves[$i].pornPrestige > 1>> /* 25k */
+	<<if $slaves[$i].pornPrestige > 1>> /* 50k */
 		<<set _decayRate = 5000>>
 		<<set _viewership = ((500/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending)+($slaves[$i].face*4)+($slaves[$i].prestige*10)-(_decayRate))>>
-	<<elseif $slaves[$i].pornPrestige > 0>> /* 20k */
+	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
 		<<set _decayRate = 500>>
-		<<set _viewership = ((1000/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/10)+($slaves[$i].face*2)+($slaves[$i].prestige*500)-(_decayRate))>>
+		<<set _viewership = ((900/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/15)+($slaves[$i].face*2)+($slaves[$i].prestige*250)-(_decayRate))>>
 	<<else>>
 		<<set _decayRate = 30>>
 		<<set _viewership = ((300/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending > 0 ? ($slaves[$i].pornFameSpending+($slaves[$i].pornFameSpending/100)) : 200)+($slaves[$i].face/20)+($slaves[$i].prestige*20)-(_decayRate))>>
@@ -1181,353 +1181,353 @@
 
 		<<switch $slaves[$i].pornFameType>>
 		<<case "generic">>
-			<<if $slaves[$i].pornTypeGeneral >= 25000>>
+			<<if $slaves[$i].pornTypeGeneral >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from her career in slave pornography. Her many fans relish the sight of her being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeGeneral*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeGeneral < 100>>
+			<<elseif $slaves[$i].pornTypeGeneral < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "fuckdoll">>
-			<<if $slaves[$i].pornTypeFuckdoll >= 25000>>
+			<<if $slaves[$i].pornTypeFuckdoll >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "It is well known from its career in slave pornography. Its many fans relish the sight of it being used.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being used, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeFuckdoll*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeFuckdoll < 100>>
+			<<elseif $slaves[$i].pornTypeFuckdoll < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "rape">>
-			<<if $slaves[$i].pornTypeRape >= 25000>>
+			<<if $slaves[$i].pornTypeRape >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her being raped.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object being raped, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeRape*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeRape < 100>>
+			<<elseif $slaves[$i].pornTypeRape < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "preggo">>
-			<<if $slaves[$i].pornTypePreggo >= 25000>>
+			<<if $slaves[$i].pornTypePreggo >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her swollen with child.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object swollen with child, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypePreggo*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypePreggo < 100>>
+			<<elseif $slaves[$i].pornTypePreggo < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "BBW">>
-			<<if $slaves[$i].pornTypeBBW >= 25000>>
+			<<if $slaves[$i].pornTypeBBW >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her thick, soft body.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive thick and soft body, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeBBW*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeBBW < 100>>
+			<<elseif $slaves[$i].pornTypeBBW < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "underage">>
-			<<if $slaves[$i].pornTypeLoli >= 25000>>
+			<<if $slaves[$i].pornTypeLoli >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her immature body.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive immature body, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeLoli*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeLoli < 100>>
+			<<elseif $slaves[$i].pornTypeLoli < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "weight gain">>
-			<<if $slaves[$i].pornTypeGainer >= 25000>>
+			<<if $slaves[$i].pornTypeGainer >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how curvy she's gotten.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how curvy <<print $pronoun>>'s gotten, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeGainer*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeGainer < 100>>
+			<<elseif $slaves[$i].pornTypeGainer < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "big dick">>
-			<<if $slaves[$i].pornTypeStud >= 25000>>
+			<<if $slaves[$i].pornTypeStud >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her heavy dick.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive heavy dick, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeStud*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeStud < 100>>
+			<<elseif $slaves[$i].pornTypeStud < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "deepthroat">>
-			<<if $slaves[$i].pornTypeDeepThroat >= 25000>>
+			<<if $slaves[$i].pornTypeDeepThroat >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sounds $pronoun makes when being throatfucked, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeDeepThroat*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeDeepThroat < 100>>
+			<<elseif $slaves[$i].pornTypeDeepThroat < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unwilling">>
-			<<if $slaves[$i].pornTypeStruggleFuck >= 25000>>
+			<<if $slaves[$i].pornTypeStruggleFuck >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how perfectly she struggles during sex.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how perfectly $pronoun struggles during sex, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeStruggleFuck*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeStruggleFuck < 100>>
+			<<elseif $slaves[$i].pornTypeStruggleFuck < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "hardcore anal">>
-			<<if $slaves[$i].pornTypePainal >= 25000>>
+			<<if $slaves[$i].pornTypePainal >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish watching her asshole pushed to its limit.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish watching $possessive asshole pushed to its limit, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypePainal*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypePainal < 100>>
+			<<elseif $slaves[$i].pornTypePainal < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "softcore">>
-			<<if $slaves[$i].pornTypeTease >= 25000>>
+			<<if $slaves[$i].pornTypeTease >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her lewd striptease.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive lewd striptease, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeTease*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeTease < 100>>
+			<<elseif $slaves[$i].pornTypeTease < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "romantic">>
-			<<if $slaves[$i].pornTypeRomantic >= 25000>>
+			<<if $slaves[$i].pornTypeRomantic >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the deep bond she shares with her partners.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeRomantic*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeRomantic < 100>>
+			<<elseif $slaves[$i].pornTypeRomantic < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "really perverted">>
-			<<if $slaves[$i].pornTypePervert >= 25000>>
+			<<if $slaves[$i].pornTypePervert >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the depths of her pervesions.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypePervert*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypePervert < 100>>
+			<<elseif $slaves[$i].pornTypePervert < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "voyeur">>
-			<<if $slaves[$i].pornTypeCaring >= 25000>>
+			<<if $slaves[$i].pornTypeCaring >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeCaring*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeCaring < 100>>
+			<<elseif $slaves[$i].pornTypeCaring < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unspeakable">>
-			<<if $slaves[$i].pornTypeUnflinching >= 25000>>
+			<<if $slaves[$i].pornTypeUnflinching >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her willingness to do anything and everything.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeUnflinching*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeUnflinching < 100>>
+			<<elseif $slaves[$i].pornTypeUnflinching < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "huge insertion">>
-			<<if $slaves[$i].pornTypeSizeQueen >= 25000>>
+			<<if $slaves[$i].pornTypeSizeQueen >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her holes filled to their limits.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeSizeQueen*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeSizeQueen < 100>>
+			<<elseif $slaves[$i].pornTypeSizeQueen < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "orgasm denial">>
-			<<if $slaves[$i].pornTypeNeglectful >= 25000>>
+			<<if $slaves[$i].pornTypeNeglectful >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her denying herself pleasure.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object denying <<print $object>>self pleasure, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeNeglectful*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeNeglectful < 100>>
+			<<elseif $slaves[$i].pornTypeNeglectful < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum addiction">>
-			<<if $slaves[$i].pornTypeCumAddict >= 25000>>
+			<<if $slaves[$i].pornTypeCumAddict >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for cum.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for cum, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeCumAddict*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeCumAddict < 100>>
+			<<elseif $slaves[$i].pornTypeCumAddict < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "anal addiction">>
-			<<if $slaves[$i].pornTypeAnalAddict >= 25000>>
+			<<if $slaves[$i].pornTypeAnalAddict >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for a dick up her ass.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for a dick up $possessive ass, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeAnalAddict*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeAnalAddict < 100>>
+			<<elseif $slaves[$i].pornTypeAnalAddict < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "exhibition">>
-			<<if $slaves[$i].pornTypeAttentionWhore >= 25000>>
+			<<if $slaves[$i].pornTypeAttentionWhore >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for attention.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for attention, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeAttentionWhore*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeAttentionWhore < 100>>
+			<<elseif $slaves[$i].pornTypeAttentionWhore < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast expansion">>
-			<<if $slaves[$i].pornTypeBreastGrowth >= 25000>>
+			<<if $slaves[$i].pornTypeBreastGrowth >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her expanding bust.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive expanding bust, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeBreastGrowth*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeBreastGrowth < 100>>
+			<<elseif $slaves[$i].pornTypeBreastGrowth < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "abuse">>
-			<<if $slaves[$i].pornTypeAbusive >= 25000>>
+			<<if $slaves[$i].pornTypeAbusive >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her abusing others.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object abusing others, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeAbusive*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeAbusive < 100>>
+			<<elseif $slaves[$i].pornTypeAbusive < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sexual torture">>
-			<<if $slaves[$i].pornTypeMalicious >= 25000>>
+			<<if $slaves[$i].pornTypeMalicious >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her getting off from the suffering she caused.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object getting off from the suffering $pronoun caused, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeMalicious*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeMalicious < 100>>
+			<<elseif $slaves[$i].pornTypeMalicious < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "self hating">>
-			<<if $slaves[$i].pornTypeSelfHating >= 25000>>
+			<<if $slaves[$i].pornTypeSelfHating >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her suffering.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive suffering, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeSelfHating*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeSelfHating < 100>>
+			<<elseif $slaves[$i].pornTypeSelfHating < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breeder">>
-			<<if $slaves[$i].pornTypeBreeder >= 25000>>
+			<<if $slaves[$i].pornTypeBreeder >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her obsession with having children.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive obsession with having children, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeBreeder*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeBreeder < 100>>
+			<<elseif $slaves[$i].pornTypeBreeder < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "submissive">>
-			<<if $slaves[$i].pornTypeSub >= 25000>>
+			<<if $slaves[$i].pornTypeSub >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her submissiveness.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive submissiveness, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeSub*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeSub < 100>>
+			<<elseif $slaves[$i].pornTypeSub < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum">>
-			<<if $slaves[$i].pornTypeCumSlut >= 25000>>
+			<<if $slaves[$i].pornTypeCumSlut >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her desire for cum.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive desire for cum, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeCumSlut*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeCumSlut < 100>>
+			<<elseif $slaves[$i].pornTypeCumSlut < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "buttslut">>
-			<<if $slaves[$i].pornTypeAnal >= 25000>>
+			<<if $slaves[$i].pornTypeAnal >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her rear.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive rear, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeAnal*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeAnal < 100>>
+			<<elseif $slaves[$i].pornTypeAnal < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "humiliating">>
-			<<if $slaves[$i].pornTypeHumiliation >= 25000>>
+			<<if $slaves[$i].pornTypeHumiliation >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her frequent humiliation.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive frequent humiliation, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeHumiliation*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeHumiliation < 100>>
+			<<elseif $slaves[$i].pornTypeHumiliation < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast">>
-			<<if $slaves[$i].pornTypeBoobs >= 25000>>
+			<<if $slaves[$i].pornTypeBoobs >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her breasts.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive breasts, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeBoobs*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeBoobs < 100>>
+			<<elseif $slaves[$i].pornTypeBoobs < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "dominant">>
-			<<if $slaves[$i].pornTypeDom >= 25000>>
+			<<if $slaves[$i].pornTypeDom >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her dominance.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive dominance, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeDom*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeDom < 100>>
+			<<elseif $slaves[$i].pornTypeDom < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sadistic">>
-			<<if $slaves[$i].pornTypeSadist >= 25000>>
+			<<if $slaves[$i].pornTypeSadist >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her sadism.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive sadism, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeSadist*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeSadist < 100>>
+			<<elseif $slaves[$i].pornTypeSadist < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "masochistic">>
-			<<if $slaves[$i].pornTypeMasochist >= 25000>>
+			<<if $slaves[$i].pornTypeMasochist >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her masochism.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive masochism, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeMasochist*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypeMasochist < 100>>
+			<<elseif $slaves[$i].pornTypeMasochist < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "pregnancy fetish">>
-			<<if $slaves[$i].pornTypePregnancy >= 25000>>
+			<<if $slaves[$i].pornTypePregnancy >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her fondness for pregnancy.">>
 				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive fondness for pregnancy, so $pronoun is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypePregnancy*_swapPoint>>
 				<<set _fameSwap = 1>>
-			<<elseif $slaves[$i].pornTypePregnancy < 100>>
+			<<elseif $slaves[$i].pornTypePregnancy < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<default>>
@@ -1621,257 +1621,257 @@
 
 		<<switch $slaves[$i].pornFameType>>
 		<<case "generic">>
-			<<if $slaves[$i].pornTypeGeneral >= 75000 && $pornStarID == 0>>
+			<<if $slaves[$i].pornTypeGeneral >= 150000 && $pornStarID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeGeneral = 250000, $pornStarID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her mid-coitus.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object mid-coitus, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her mid-coitus">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeGeneral < 5000>>
+			<<elseif $slaves[$i].pornTypeGeneral < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "fuckdoll">>
-			<<if $slaves[$i].pornTypeFuckdoll >= 75000 && $pornStarFuckdollID == 0>>
+			<<if $slaves[$i].pornTypeFuckdoll >= 150000 && $pornStarFuckdollID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeFuckdoll = 250000, $pornStarFuckdollID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "It is world famous for its career in slave pornography. Millions are intimately familiar with the sight of it being used.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object being used, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing it offering itself">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeFuckdoll < 5000>>
+			<<elseif $slaves[$i].pornTypeFuckdoll < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "rape">>
-			<<if $slaves[$i].pornTypeRape >= 75000 && $pornStarRapeID == 0>>
+			<<if $slaves[$i].pornTypeRape >= 150000 && $pornStarRapeID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeRape = 250000, $pornStarRapeID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being raped.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object being raped, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her rape">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeRape < 5000>>
+			<<elseif $slaves[$i].pornTypeRape < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "preggo">>
-			<<if $slaves[$i].pornTypePreggo >= 75000 && $pornStarPreggoID == 0>>
+			<<if $slaves[$i].pornTypePreggo >= 150000 && $pornStarPreggoID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePreggo = 250000, $pornStarPreggoID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her swollen with child.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object swollen with child, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her cradling her middle">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypePreggo < 5000>>
+			<<elseif $slaves[$i].pornTypePreggo < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "BBW">>
-			<<if $slaves[$i].pornTypeBBW >= 75000 && $pornStarBBWID == 0>>
+			<<if $slaves[$i].pornTypeBBW >= 150000 && $pornStarBBWID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBBW = 250000, $pornStarBBWID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her thick, soft body.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive thick and soft body, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her giving a bellyjob">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypePreggo < 5000>>
+			<<elseif $slaves[$i].pornTypePreggo < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "underage">>
-			<<if $slaves[$i].pornTypeLoli >= 75000 && $pornStarLoliID == 0>>
+			<<if $slaves[$i].pornTypeLoli >= 150000 && $pornStarLoliID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeLoli = 250000, $pornStarLoliID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her immature body.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive immature body, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her 'innocence'">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeLoli < 5000>>
+			<<elseif $slaves[$i].pornTypeLoli < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "weight gain">>
-			<<if $slaves[$i].pornTypeGainer >= 75000 && $pornStarGainerID == 0>>
+			<<if $slaves[$i].pornTypeGainer >= 150000 && $pornStarGainerID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeGainer = 250000, $pornStarGainerID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with how with how much weight she has gained.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with how much weight<<print $pronoun>>'s put on, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her trying on her old clothes">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeGainer < 5000>>
+			<<elseif $slaves[$i].pornTypeGainer < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "big dick">>
-			<<if $slaves[$i].pornTypeStud >= 75000 && $pornStarStudID == 0>>
+			<<if $slaves[$i].pornTypeStud >= 150000 && $pornStarStudID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeStud = 250000, $pornStarStudID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her erect dick.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive erect dick, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her money shot">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeStud < 5000>>
+			<<elseif $slaves[$i].pornTypeStud < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "deepthroat">>
-			<<if $slaves[$i].pornTypeDeepThroat >= 75000 && $pornStarDeepThroatID == 0>>
+			<<if $slaves[$i].pornTypeDeepThroat >= 150000 && $pornStarDeepThroatID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeDeepThroat = 250000, $pornStarDeepThroatID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds she makes when being throatfucked.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sounds $pronoun makes when being throatfucked, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting facefucked">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeDeepThroat < 5000>>
+			<<elseif $slaves[$i].pornTypeDeepThroat < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unwilling">>
-			<<if $slaves[$i].pornTypeStruggleFuck >= 75000 && $pornStarStruggleFuckID == 0>>
+			<<if $slaves[$i].pornTypeStruggleFuck >= 150000 && $pornStarStruggleFuckID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeStruggleFuck = 250000, $pornStarStruggleFuckID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with how perfectly she struggles during sex.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with how perfectly $pronoun struggles during sex, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her struggling">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeStruggleFuck < 5000>>
+			<<elseif $slaves[$i].pornTypeStruggleFuck < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "hardcore anal">>
-			<<if $slaves[$i].pornTypePainal >= 75000 && $pornStarPainalID == 0>>
+			<<if $slaves[$i].pornTypePainal >= 150000 && $pornStarPainalID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePainal = 250000, $pornStarPainalID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with seeing her asshole pushed to its limit.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with seeing $possessive asshole pushed to its limit, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking an enormous dick up her ass">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypePainal < 5000>>
+			<<elseif $slaves[$i].pornTypePainal < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "softcore">>
-			<<if $slaves[$i].pornTypeTease >= 75000 && $pornStarTeaseID == 0>>
+			<<if $slaves[$i].pornTypeTease >= 150000 && $pornStarTeaseID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeTease = 250000, $pornStarTeaseID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her lewd striptease.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive lewd striptease, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stripping">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeTease < 5000>>
+			<<elseif $slaves[$i].pornTypeTease < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "romantic">>
-			<<if $slaves[$i].pornTypeRomantic >= 75000 && $pornStarRomanticID == 0>>
+			<<if $slaves[$i].pornTypeRomantic >= 150000 && $pornStarRomanticID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeRomantic = 250000, $pornStarRomanticID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the deep bond she shares with her partners.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the deep bond $pronoun shares with her partners, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her sharing an orgasm with her partner">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeRomantic < 5000>>
+			<<elseif $slaves[$i].pornTypeRomantic < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "really perverted">>
-			<<if $slaves[$i].pornTypePervert >= 75000 && $pornStarPervertID == 0>>
+			<<if $slaves[$i].pornTypePervert >= 150000 && $pornStarPervertID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePervert = 250000, $pornStarPervertID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the depths of her pervesions.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the depths of $possessive pervesions, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something perverted">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypePervert < 5000>>
+			<<elseif $slaves[$i].pornTypePervert < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "voyeur">>
-			<<if $slaves[$i].pornTypeCaring >= 75000 && $pornStarCaringID == 0>>
+			<<if $slaves[$i].pornTypeCaring >= 150000 && $pornStarCaringID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCaring = 250000, $pornStarCaringID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her devotion to her partners' pleasure.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive devotion to $possessive partners' pleasure, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bringing her partner to orgasm">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeCaring < 5000>>
+			<<elseif $slaves[$i].pornTypeCaring < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unspeakable">>
-			<<if $slaves[$i].pornTypeUnflinching >= 75000 && $pornStarUnflinchingID == 0>>
+			<<if $slaves[$i].pornTypeUnflinching >= 150000 && $pornStarUnflinchingID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeUnflinching = 250000, $pornStarUnflinchingID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her willingness to do things not repeated in polite company.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive willingness to do things not repeated in polite company, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something unmentionable">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeUnflinching < 5000>>
+			<<elseif $slaves[$i].pornTypeUnflinching < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "huge insertion">>
-			<<if $slaves[$i].pornTypeSizeQueen >= 75000 && $pornStarSizeQueenID == 0>>
+			<<if $slaves[$i].pornTypeSizeQueen >= 150000 && $pornStarSizeQueenID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSizeQueen = 250000, $pornStarSizeQueenID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her holes filled to their limits.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive holes filled to their limits, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her belly bulging from within">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeSizeQueen < 5000>>
+			<<elseif $slaves[$i].pornTypeSizeQueen < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "orgasm denial">>
-			<<if $slaves[$i].pornTypeNeglectful >= 75000 && $pornStarNeglectfulID == 0>>
+			<<if $slaves[$i].pornTypeNeglectful >= 150000 && $pornStarNeglectfulID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeNeglectful = 250000, $pornStarNeglectfulID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her denying herself pleasure.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object denying <<print $object>>self pleasure, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pleasing a line of partners without cuming once">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeNeglectful < 5000>>
+			<<elseif $slaves[$i].pornTypeNeglectful < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum addiction">>
-			<<if $slaves[$i].pornTypeCumAddict >= 75000 && $pornStarCumAddictID == 0>>
+			<<if $slaves[$i].pornTypeCumAddict >= 150000 && $pornStarCumAddictID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCumAddict = 250000, $pornStarCumAddictID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her doing anything for cum.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object doing anything for cum, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bathing in a tub of cum">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeCumAddict < 5000>>
+			<<elseif $slaves[$i].pornTypeCumAddict < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "anal addiction">>
-			<<if $slaves[$i].pornTypeAnalAddict >= 75000 && $pornStarAnalAddictID == 0>>
+			<<if $slaves[$i].pornTypeAnalAddict >= 150000 && $pornStarAnalAddictID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAnalAddict = 250000, $pornStarAnalAddictID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her well-versed anus.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object doing anything for a dick up $possessive ass, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking a series of huge cocks up her ass">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeAnalAddict < 5000>>
+			<<elseif $slaves[$i].pornTypeAnalAddict < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "exhibition">>
-			<<if $slaves[$i].pornTypeAttentionWhore >= 75000 && $pornStarAttentionWhoreID == 0>>
+			<<if $slaves[$i].pornTypeAttentionWhore >= 150000 && $pornStarAttentionWhoreID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAttentionWhore = 250000, $pornStarAttentionWhoreID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her doing anything for attention.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object going to any length for attention, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her flashing strangers">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeAttentionWhore < 5000>>
+			<<elseif $slaves[$i].pornTypeAttentionWhore < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast expansion">>
-			<<if $slaves[$i].pornTypeBreastGrowth >= 75000 && $pornStarBreastGrowthID == 0>>
+			<<if $slaves[$i].pornTypeBreastGrowth >= 150000 && $pornStarBreastGrowthID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBreastGrowth = 250000, $pornStarBreastGrowthID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the history of her growing bust.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with history of her growing bust, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her having her tits measured">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeBreastGrowth < 5000>>
+			<<elseif $slaves[$i].pornTypeBreastGrowth < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "abuse">>
-			<<if $slaves[$i].pornTypeAbusive >= 75000 && $pornStarAbusiveID == 0>>
+			<<if $slaves[$i].pornTypeAbusive >= 150000 && $pornStarAbusiveID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAbusive = 250000, $pornStarAbusiveID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her abusive tendencies.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive abusive tendencies, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " taking what she wants by force">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeAbusive < 5000>>
+			<<elseif $slaves[$i].pornTypeAbusive < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sexual torture">>
-			<<if $slaves[$i].pornTypeMalicious >= 75000 && $pornStarMaliciousID == 0>>
+			<<if $slaves[$i].pornTypeMalicious >= 150000 && $pornStarMaliciousID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeMalicious = 250000, $pornStarMaliciousID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her hunger for making others suffer.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive torturing others, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her tormenting her prey">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeMalicious < 5000>>
+			<<elseif $slaves[$i].pornTypeMalicious < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "self hating">>
-			<<if $slaves[$i].pornTypeSelfHating >= 75000 && $pornStarSelfHatingID == 0>>
+			<<if $slaves[$i].pornTypeSelfHating >= 150000 && $pornStarSelfHatingID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSelfHating = 250000, $pornStarSelfHatingID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her suffering.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object suffering, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her orgasming from pain">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeSelfHating < 5000>>
+			<<elseif $slaves[$i].pornTypeSelfHating < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breeder">>
-			<<if $slaves[$i].pornTypeBreeder >= 75000 && $pornStarBreederID == 0>>
+			<<if $slaves[$i].pornTypeBreeder >= 150000 && $pornStarBreederID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBreeder = 250000, $pornStarBreederID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her obsession with being pregnant.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive obsession with having children, so it is now extremely prestigious to own $object.
@@ -1881,91 +1881,91 @@
 					<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her being bred">>
 				<</if>>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeBreeder < 5000>>
+			<<elseif $slaves[$i].pornTypeBreeder < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "submissive">>
-			<<if $slaves[$i].pornTypeSub >= 75000 && $pornStarSubID == 0>>
+			<<if $slaves[$i].pornTypeSub >= 150000 && $pornStarSubID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSub = 250000, $pornStarSubID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her submissiveness.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive submissiveness, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her sumbmission">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeSub < 5000>>
+			<<elseif $slaves[$i].pornTypeSub < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum">>
-			<<if $slaves[$i].pornTypeCumSlut >= 75000 && $pornStarCumSlutID == 0>>
+			<<if $slaves[$i].pornTypeCumSlut >= 150000 && $pornStarCumSlutID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCumSlut = 250000, $pornStarCumSlutID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her taste for cum.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive taste for cum, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her drinking a glass of cum">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeCumSlut < 5000>>
+			<<elseif $slaves[$i].pornTypeCumSlut < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "buttslut">>
-			<<if $slaves[$i].pornTypeAnal >= 75000 && $pornStarAnalID == 0>>
+			<<if $slaves[$i].pornTypeAnal >= 150000 && $pornStarAnalID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAnal = 250000, $pornStarAnalID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her rear.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive rear, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her shaking her booty">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeAnal < 5000>>
+			<<elseif $slaves[$i].pornTypeAnal < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "humiliating">>
-			<<if $slaves[$i].pornTypeHumiliation >= 75000 && $pornStarHumiliationID == 0>>
+			<<if $slaves[$i].pornTypeHumiliation >= 150000 && $pornStarHumiliationID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeHumiliation = 250000, $pornStarHumiliationID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her frequent humiliation.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive frequent humiliation, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her humiliated in public">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeHumiliation < 5000>>
+			<<elseif $slaves[$i].pornTypeHumiliation < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast">>
-			<<if $slaves[$i].pornTypeBoobs >= 75000 && $pornStarBoobsID == 0>>
+			<<if $slaves[$i].pornTypeBoobs >= 150000 && $pornStarBoobsID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBoobs = 250000, $pornStarBoobsID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her breasts.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive breasts, so it is now extremely prestigious to own $object, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bare chest">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeBoobs < 5000>>
+			<<elseif $slaves[$i].pornTypeBoobs < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "dominant">>
-			<<if $slaves[$i].pornTypeDom >= 75000 && $pornStarDomID == 0>>
+			<<if $slaves[$i].pornTypeDom >= 150000 && $pornStarDomID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeDom = 250000, $pornStarDomID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her dominant streak.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive dominant streak, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her seated upon her obediant toy">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeDom < 5000>>
+			<<elseif $slaves[$i].pornTypeDom < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sadistic">>
-			<<if $slaves[$i].pornTypeSadist >= 75000 && $pornStarSadistID == 0>>
+			<<if $slaves[$i].pornTypeSadist >= 150000 && $pornStarSadistID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSadist = 250000, $pornStarSadistID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her sadistic streak.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive sadistic streak, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her whipping her lover">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeSadist < 5000>>
+			<<elseif $slaves[$i].pornTypeSadist < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "masochistic">>
-			<<if $slaves[$i].pornTypeMasochist >= 75000 && $pornStarMasochistID == 0>>
+			<<if $slaves[$i].pornTypeMasochist >= 150000 && $pornStarMasochistID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeMasochist = 250000, $pornStarMasochistID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her masochistic streak.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive masochistic streak, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her being whipped">>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypeMasochist < 5000>>
+			<<elseif $slaves[$i].pornTypeMasochist < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "pregnancy fetish">>
-			<<if $slaves[$i].pornTypePregnancy >= 75000 && $pornStarPregnancyID == 0>>
+			<<if $slaves[$i].pornTypePregnancy >= 150000 && $pornStarPregnancyID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePregnancy = 250000, $pornStarPregnancyID = $slaves[$i].ID>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her pregnancy kink.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive pregnancy kink, so it is now extremely prestigious to own $object.
@@ -1977,7 +1977,7 @@
 					<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pretending to be pregnant">>
 				<</if>>
 				<<set $trinkets.push(_desc)>>
-			<<elseif $slaves[$i].pornTypePregnancy < 5000>>
+			<<elseif $slaves[$i].pornTypePregnancy < 40000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<default>>
@@ -2265,213 +2265,213 @@
 
 		<<switch $slaves[$i].pornFameType>>
 		<<case "generic">>
-			<<if $slaves[$i].pornTypeGeneral < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeGeneral < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeGeneral < 100>>
+			<<elseif $slaves[$i].pornTypeGeneral < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "fuckdoll">>
-			<<if $slaves[$i].pornTypeFuckdoll < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeFuckdoll < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeFuckdoll < 100>>
+			<<elseif $slaves[$i].pornTypeFuckdoll < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "rape">>
-			<<if $slaves[$i].pornTypeRape < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeRape < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeRape < 100>>
+			<<elseif $slaves[$i].pornTypeRape < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "preggo">>
-			<<if $slaves[$i].pornTypePreggo < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypePreggo < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypePreggo < 100>>
+			<<elseif $slaves[$i].pornTypePreggo < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "BBW">>
-			<<if $slaves[$i].pornTypePreggo < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypePreggo < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypePreggo < 100>>
+			<<elseif $slaves[$i].pornTypePreggo < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "underage">>
-			<<if $slaves[$i].pornTypeLoli < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeLoli < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeLoli < 100>>
+			<<elseif $slaves[$i].pornTypeLoli < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "weight gain">>
-			<<if $slaves[$i].pornTypeGainer < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeGainer < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeGainer < 100>>
+			<<elseif $slaves[$i].pornTypeGainer < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "big dick">>
-			<<if $slaves[$i].pornTypeStud < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeStud < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeStud < 100>>
+			<<elseif $slaves[$i].pornTypeStud < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "deepthroat">>
-			<<if $slaves[$i].pornTypeDeepThroat < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeDeepThroat < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeDeepThroat < 100>>
+			<<elseif $slaves[$i].pornTypeDeepThroat < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unwilling">>
-			<<if $slaves[$i].pornTypeStruggleFuck < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeStruggleFuck < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeStruggleFuck < 100>>
+			<<elseif $slaves[$i].pornTypeStruggleFuck < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "hardcore anal">>
-			<<if $slaves[$i].pornTypePainal < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypePainal < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypePainal < 100>>
+			<<elseif $slaves[$i].pornTypePainal < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "softcore">>
-			<<if $slaves[$i].pornTypeTease < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeTease < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeTease < 100>>
+			<<elseif $slaves[$i].pornTypeTease < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "romantic">>
-			<<if $slaves[$i].pornTypeRomantic < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeRomantic < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeRomantic < 100>>
+			<<elseif $slaves[$i].pornTypeRomantic < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "really perverted">>
-			<<if $slaves[$i].pornTypePervert < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypePervert < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypePervert < 100>>
+			<<elseif $slaves[$i].pornTypePervert < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "voyeur">>
-			<<if $slaves[$i].pornTypeCaring < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeCaring < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeCaring < 100>>
+			<<elseif $slaves[$i].pornTypeCaring < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "unspeakable">>
-			<<if $slaves[$i].pornTypeUnflinching < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeUnflinching < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeUnflinching < 100>>
+			<<elseif $slaves[$i].pornTypeUnflinching < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "huge insertion">>
-			<<if $slaves[$i].pornTypeSizeQueen < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeSizeQueen < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeSizeQueen < 100>>
+			<<elseif $slaves[$i].pornTypeSizeQueen < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "orgasm denial">>
-			<<if $slaves[$i].pornTypeNeglectful < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeNeglectful < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeNeglectful < 100>>
+			<<elseif $slaves[$i].pornTypeNeglectful < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum addiction">>
-			<<if $slaves[$i].pornTypeCumAddict < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeCumAddict < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeCumAddict < 100>>
+			<<elseif $slaves[$i].pornTypeCumAddict < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "anal addiction">>
-			<<if $slaves[$i].pornTypeAnalAddict < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeAnalAddict < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeAnalAddict < 100>>
+			<<elseif $slaves[$i].pornTypeAnalAddict < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "exhibition">>
-			<<if $slaves[$i].pornTypeAttentionWhore < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeAttentionWhore < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeAttentionWhore < 100>>
+			<<elseif $slaves[$i].pornTypeAttentionWhore < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast expansion">>
-			<<if $slaves[$i].pornTypeBreastGrowth < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeBreastGrowth < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeBreastGrowth < 100>>
+			<<elseif $slaves[$i].pornTypeBreastGrowth < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "abuse">>
-			<<if $slaves[$i].pornTypeAbusive < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeAbusive < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeAbusive < 100>>
+			<<elseif $slaves[$i].pornTypeAbusive < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sexual torture">>
-			<<if $slaves[$i].pornTypeMalicious < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeMalicious < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeMalicious < 100>>
+			<<elseif $slaves[$i].pornTypeMalicious < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "self hating">>
-			<<if $slaves[$i].pornTypeSelfHating < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeSelfHating < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeSelfHating < 100>>
+			<<elseif $slaves[$i].pornTypeSelfHating < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breeder">>
-			<<if $slaves[$i].pornTypeBreeder < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeBreeder < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeBreeder < 100>>
+			<<elseif $slaves[$i].pornTypeBreeder < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "submissive">>
-			<<if $slaves[$i].pornTypeSub < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeSub < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeSub < 100>>
+			<<elseif $slaves[$i].pornTypeSub < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "cum">>
-			<<if $slaves[$i].pornTypeCumSlut < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeCumSlut < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeCumSlut < 100>>
+			<<elseif $slaves[$i].pornTypeCumSlut < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "buttslut">>
-			<<if $slaves[$i].pornTypeAnal < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeAnal < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeAnal < 100>>
+			<<elseif $slaves[$i].pornTypeAnal < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "humiliating">>
-			<<if $slaves[$i].pornTypeHumiliation < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeHumiliation < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeHumiliation < 100>>
+			<<elseif $slaves[$i].pornTypeHumiliation < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "breast">>
-			<<if $slaves[$i].pornTypeBoobs < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeBoobs < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeBoobs < 100>>
+			<<elseif $slaves[$i].pornTypeBoobs < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "dominant">>
-			<<if $slaves[$i].pornTypeDom < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeDom < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeDom < 100>>
+			<<elseif $slaves[$i].pornTypeDom < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "sadistic">>
-			<<if $slaves[$i].pornTypeSadist < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeSadist < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeSadist < 100>>
+			<<elseif $slaves[$i].pornTypeSadist < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "masochistic">>
-			<<if $slaves[$i].pornTypeMasochist < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypeMasochist < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypeMasochist < 100>>
+			<<elseif $slaves[$i].pornTypeMasochist < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<case "pregnancy fetish">>
-			<<if $slaves[$i].pornTypePregnancy < 5000 && $slaves[$i].pornPrestige == 2>>
+			<<if $slaves[$i].pornTypePregnancy < 40000 && $slaves[$i].pornPrestige == 2>>
 				<<set _failedStar = 2>>
-			<<elseif $slaves[$i].pornTypePregnancy < 100>>
+			<<elseif $slaves[$i].pornTypePregnancy < 5000>>
 				<<set _failedStar = 1>>
 			<</if>>
 		<<default>>
diff --git a/src/uncategorized/sellSlave.tw b/src/uncategorized/sellSlave.tw
index d91a0543a5c..b0c28eea13b 100644
--- a/src/uncategorized/sellSlave.tw
+++ b/src/uncategorized/sellSlave.tw
@@ -194,7 +194,7 @@ A reputable slave appraiser arrives promptly to inspect her and certify her qual
 <<elseif $appraiser == "Elite">>
 	a member of the Societal Elite you are familiar with greets you respectfully and <<if $PC.dick == 1>>tosses you a wink as she pats her rounded belly. "He's doing well.<<else>>calms her kicking child so she can continue. "Think he'll look as good as his father?<</if>> Anyway, as I'm sure you know, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title == 1>>sir<<else>>madam<</if>>," she says as she uses curt instructions to direct $activeSlave.slaveName, "appraisals are based on a slave's potential worth as a toy, with modifiers for special characteristics." She scrolls down the list. "I'll just mention the interesting ones.
 <<elseif $appraiser == "futa">>
-	a curvy, middle aged, and quite attractive woman wearing a tank top and yoga pants, greets you cheerfully and turns to the slave. As she does, you can't help but notice that the yoga pants make it obvious she has a penis almost as long as one of her forearms. She makes notes on a tablet, flipping through videos that display the slave in action as she works. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title == 1>>Sir<<else>>Madame<</if>>, I'm, like, sorry to have to say this to you since I know you know it better than I do, but it's the script, you know? Anyway appraisals are based on a slave's potential performance as a public slut, with modifiers for special characteristics." She makes notes. "I'll just mention the significant ones.
+	a curvy, middle aged, and quite attractive woman wearing a tank top and yoga pants, greets you cheerfully and turns to the slave. As she does, you can't help but notice that the yoga pants make it obvious she has a penis almost as long as one of her forearms. She makes notes on a tablet, flipping through videos that display the slave in action as she works. "<<if def $PC.customTitle>><<print $PC.customTitle>><<elseif $PC.title == 1>>Sir<<else>>Madame<</if>>, I'm, like, sorry to have to say this to you since I know you know it better than I do, but it's the script, you know? Anyway appraisals are based on a slave's potential performance as a public slut, with modifiers for special characteristics." She makes notes. "I'll just mention the significant ones.
 	<<set $appraiserGender = 0>>
 <<elseif $appraiser == "businesswoman">>
 	an older businesswoman with a reputation for correctness, gives you a prim nod before turning to the nude slave without wasting further time. She deftly makes notes on a haptic wrist interface, flipping through videos of the slave in action as she works. "As I'm sure you know, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title == 1>>sir<<else>>madam<</if>>," she says as she uses curt instructions to direct $activeSlave.slaveName, "appraisals are based on a slave's potential income as a prostitute, with modifiers for special characteristics." Her fingers fly across the interface. "I'll just mention the significant ones.
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index cd133037e14..e989341faca 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -12921,9 +12921,9 @@ $He has
 		<<if $activeSlave.belly >= 750000>>
 			$His _belly belly grotesquely bulges around $his waist.<<if $activeSlave.preg > 3>> $His waist is horribly distended by $his bursting womb in a last ditch effort to find more room for $his children, leaving $his original waistline barely visible from behind.<</if>>
 		<<elseif $activeSlave.belly < 10000>>
-			$His _belly belly is hidden by $his waist.
+			From behind, $his figure hides $his _belly belly.
 		<<elseif $activeSlave.belly < 200000>>
-			$His _belly belly is barely hidden by $his waist.
+			From behind, $his figure barely hides $his _belly belly.
 		<<elseif $activeSlave.belly < 300000>>
 			$His _belly belly can be seen around $his waist.
 		<<elseif $activeSlave.belly < 450000>>
@@ -12940,9 +12940,9 @@ $He has
 		<<if $activeSlave.belly >= 750000>>
 			$His _belly belly grotesquely bulges around $his waist.<<if $activeSlave.preg > 3>> $His waist is horribly distended by $his bursting womb in a last ditch effort to find more room for $his children, leaving $his original waistline barely visible from behind.<</if>>
 		<<elseif $activeSlave.belly < 10000>>
-			$His _belly belly is hidden by $his waist.
+			From behind, $his figure hides $his _belly belly.
 		<<elseif $activeSlave.belly < 200000>>
-			$His _belly belly is barely hidden by $his waist.
+			From behind, $his figure barely hides $his _belly belly.
 		<<elseif $activeSlave.belly < 300000>>
 			$His _belly belly can be seen around $his waist.
 		<<elseif $activeSlave.belly < 450000>>
@@ -12959,9 +12959,9 @@ $He has
 		<<if $activeSlave.belly >= 750000>>
 			$His _belly belly grotesquely bulges around $his waist.<<if $activeSlave.preg > 3>> $His waist is horribly distended by $his bursting womb in a last ditch effort to find more room for $his children, leaving $his original waistline barely visible from behind.<</if>>
 		<<elseif $activeSlave.belly < 10000>>
-			$His _belly belly is hidden by $his waist.
+			From behind, $his figure hides $his _belly belly.
 		<<elseif $activeSlave.belly < 100000>>
-			$His _belly belly is barely hidden by $his waist.
+			From behind, $his figure barely hides $his _belly belly.
 		<<elseif $activeSlave.belly < 300000>>
 			$His _belly belly can be seen around $his waist.
 		<<elseif $activeSlave.belly < 450000>>
@@ -12978,9 +12978,9 @@ $He has
 		<<if $activeSlave.belly >= 750000>>
 			$His _belly belly grotesquely bulges around $his narrow waist and continues over half a meter farther to either side.<<if $activeSlave.preg > 3>> $His waist is horribly distended by $his bursting womb in a last ditch effort to find more room for $his children, leaving $his original waistline barely visible from behind.<</if>>
 		<<elseif $activeSlave.belly < 5000>>
-			$His _belly belly is hidden by $his narrow waist.
+			From behind, $his narrow figure hides $his _belly belly.
 		<<elseif $activeSlave.belly < 80000>>
-			$His _belly belly is barely hidden by $his narrow waist.
+			From behind, $his narrow figure barely hides $his _belly belly.
 		<<elseif $activeSlave.belly < 100000>>
 			$His _belly belly can be seen around $his narrow waist.
 		<<elseif $activeSlave.belly < 450000>>
@@ -12997,9 +12997,9 @@ $He has
 		<<if $activeSlave.belly >= 750000>>
 			$His _belly belly grotesquely bulges around $his narrow waist and continues over half a meter farther to either side.<<if $activeSlave.preg > 3>> $His waist is horribly distended by $his bursting womb in a last ditch effort to find more room for $his children, leaving $his original waistline barely visible from behind.<</if>>
 		<<elseif $activeSlave.belly < 2000>>
-			$His _belly belly is hidden by $his narrow waist.
+			From behind, $his narrow figure hides $his _belly belly.
 		<<elseif $activeSlave.belly < 5000>>
-			$His _belly belly is barely hidden by $his narrow waist.
+			From behind, $his narrow figure barely hides $his _belly belly.
 		<<elseif $activeSlave.belly < 8000>>
 			$His _belly belly can be seen around $his narrow waist.
 		<<elseif $activeSlave.belly < 15000>>
-- 
GitLab


From 775ae0ea90dcc0a01bdcc9a7b11238807934009e Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Wed, 25 Jul 2018 22:22:11 -0400
Subject: [PATCH 118/189] JSify rendered art code

---
 devNotes/twine JS.txt                         | 118 +++++++++++++++++-
 src/art/artWidgets.tw                         | 102 +--------------
 src/js/artJS.tw                               | 115 +++++++++++++++++
 src/pregmod/assistantAppearancePackTwo.tw     |   2 +-
 src/uncategorized/RESS.tw                     |   2 +-
 src/uncategorized/assistantEvents.tw          |   2 +-
 src/uncategorized/personalAssistantOptions.tw |   2 +-
 7 files changed, 237 insertions(+), 106 deletions(-)
 create mode 100644 src/js/artJS.tw

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 3f24d236b3f..f52c99e75f5 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -23157,4 +23157,120 @@ window.getHighestPorn = function(slave) {
 	}
 	
 	return max;
-}
\ No newline at end of file
+}
+
+/*:: Art JS [script]*/
+
+/*
+Displays assistant images. Currently passage-based.
+sizePlacement: Image size/center.
+	3: Large, right. Example: description.
+	2: Medium, right. Example: random events.
+*/
+window.AssistantArtRendered = function AssistantArtRendered(sizePlacement) {
+	const V = State.variables;
+	let fileName = "";
+
+	if (V.imageChoice === 0) {
+		switch (V.assistantAppearance) {
+			case "monstergirl":
+				fileName = "'resources/renders/assistant monstergirl.png'";;
+				break;
+			case "shemale":
+				fileName = "'resources/renders/assistant shemale.png'";
+				break;
+			case "amazon":
+				fileName = "'resources/renders/assistant amazon.png'";
+				break;
+			case "businesswoman":
+				fileName = "'resources/renders/assistant businesswoman.png'";
+				break;
+			case "goddess":
+				fileName = "'resources/renders/assistant goddess.png'";
+				break;
+			case "schoolgirl":
+				fileName = "'resources/renders/assistant schoolgirl.png'";
+				break;
+			default:
+				fileName = "'resources/renders/assistant default.png'";
+		}
+		if (sizePlacement === 3) {
+			fileName = `<img src=${fileName} style='float:right; border:3px hidden'/>`;
+		} else {
+			fileName = `<img src=${fileName} style='float:right; border:3px hidden' width='300' height='300'/>`;
+		}
+	}
+	return fileName;
+};
+
+window.ArtControlRendered = function ArtControlRendered(slave, sizePlacement) {
+	const V = State.variables;
+	let fileName = "";
+	let r = "";
+
+	if (slave.vagina > -1) {
+		if (slave.dick > 0) {
+			if (slave.balls > 0) {
+				fileName = "futanari";
+			} else {
+				fileName = "herm";
+			}
+		} else {
+			fileName = "female";
+		}
+	} else {
+		if (slave.balls > 0) {
+			fileName = "shemale";
+		} else {
+			fileName = "gelding";
+		}
+	}
+	if (slave.belly > 1500) {
+		fileName = `preg ${fileName}`;
+	}
+	if (slave.boobs < 400) {
+		fileName = `${fileName} small`;
+	} else if (slave.boobs < 800) {
+		fileName = `${fileName} big`;
+	} else if (slave.boobs < 6000) {
+		fileName = `${fileName} huge`;
+	} else {
+		fileName = `${fileName} hyper`;
+	}
+	if (slave.muscles > 30) {
+		fileName = `${fileName} muscle`;
+	} else {
+		fileName = `${fileName} soft`;
+	}
+	if (slave.fuckdoll > 0) {
+		fileName = `${fileName} rebellious`;
+	} else if (slave.devotion <= 20) {
+		if (slave.trust < -20) {
+			fileName = `${fileName} reluctant`;
+		} else {
+			fileName = `${fileName} rebellious`;
+		}
+	} else if (slave.fetish === "mindbroken") {
+		fileName = `${fileName} reluctant`;
+	} else if (slave.devotion <= 50 || slave.fetishKnown !== 1 || V.seeMainFetishes === 0 && sizePlacement < 2) {
+		fileName = `${fileName} obedient`;
+	} else {
+		if (slave.fetish === "none") {
+			fileName = `${fileName} obedient`;
+		} else {
+			fileName = `${fileName} ${slave.fetish}`;
+		}
+	}
+
+	fileName = `'resources/renders/${fileName}.png'`;
+	if (sizePlacement === 3) {
+		r = `<img src=${fileName} style='float:right; border:3px hidden'>`;
+	} else if (sizePlacement === 2) {
+		r = `<img src=${fileName} style='float:right; border:3px hidden' width='300' height='300'>`;
+	} else if (sizePlacement === 1) {
+		r = `<img src=${fileName} style='float:left; border:3px hidden' width='150' height='150'>`;
+	} else {
+		r = `<img src=${fileName} style='float:left; border:3px hidden' width='120' height='120'>`;
+	}
+	return r;
+};
diff --git a/src/art/artWidgets.tw b/src/art/artWidgets.tw
index 27a152a7f6a..acddbd12af6 100644
--- a/src/art/artWidgets.tw
+++ b/src/art/artWidgets.tw
@@ -1,42 +1,5 @@
 :: art widgets [nobr widget]
 
-/%
-Call as <<AssistantArt>>
-Displays assistant images. Currently passage-based.
-$args[0]: Image size/center.
-	3: Large, right. Example: description.
-	2: Medium, right. Example: random events.
-%/
-<<widget "AssistantArt">>
-
-<<if $imageChoice == 0>> /* RENDERED IMAGES BY SHOKUSHU */
-
-<<switch $assistantAppearance>>
-<<case "monstergirl">>
-	<<set _fileName = "'resources/renders/assistant monstergirl.png' ">>
-<<case "shemale">>
-	<<set _fileName = "'resources/renders/assistant shemale.png' ">>
-<<case "amazon">>
-	<<set _fileName = "'resources/renders/assistant amazon.png' ">>
-<<case "businesswoman">>
-	<<set _fileName = "'resources/renders/assistant businesswoman.png' ">>
-<<case "goddess">>
-	<<set _fileName = "'resources/renders/assistant goddess.png' ">>
-<<case "schoolgirl">>
-	<<set _fileName = "'resources/renders/assistant schoolgirl.png' ">>
-<<default>>
-	<<set _fileName = "'resources/renders/assistant default.png' ">>
-<</switch>>
-<<if $args[1] == 3>>
-	<<print "<img src=" + _fileName + "style='float:right; border:3px hidden'/>">>
-<<else>>
-	<<print "<img src=" + _fileName + "style='float:right; border:3px hidden' width='300' height='300'/>">>
-<</if>>
-
-<</if>> /* CLOSES IMAGE CHOICE */
-
-<</widget>>
-
 /%
 Call as <<SlaveArt>>
 Displays slave images. Currently passage-based.
@@ -598,70 +561,7 @@ vector art added later is drawn over previously added art
 	<<include Art_Vector_Revamped_Control_>> 
 <<else>> /* RENDERED IMAGES BY SHOKUSHU */
 
-<<if $args[0].vagina > -1>>
-	<<if $args[0].dick > 0>>
-		<<if $args[0].balls > 0>>
-			<<set _fileName = "futanari">>
-		<<else>>
-			<<set _fileName = "herm">>
-		<</if>>
-	<<else>>
-		<<set _fileName = "female">>
-	<</if>>
-<<else>>
-	<<if $args[0].balls > 0>>
-		<<set _fileName = "shemale">>
-	<<else>>
-		<<set _fileName = "gelding">>
-	<</if>>
-<</if>>
-<<if $args[0].belly > 1500>>
-	<<set _fileName = "preg " + _fileName>>
-<</if>>
-<<if $args[0].boobs < 400>>
-	<<set _fileName = _fileName + " small">>
-<<elseif $args[0].boobs < 800>>
-	<<set _fileName = _fileName + " big">>
-<<elseif $args[0].boobs < 6000>>
-	<<set _fileName = _fileName + " huge">>
-<<else>>
-	<<set _fileName = _fileName + " hyper">>
-<</if>>
-<<if $args[0].muscles > 30>>
-	<<set _fileName = _fileName + " muscle">>
-<<else>>
-	<<set _fileName = _fileName + " soft">>
-<</if>>
-<<if $args[0].fuckdoll > 0>>
-	<<set _fileName = _fileName + " rebellious">>
-<<elseif $args[0].devotion <= 20>>
-	<<if $args[0].trust < -20>>
-		<<set _fileName = _fileName + " reluctant">>
-	<<else>>
-		<<set _fileName = _fileName + " rebellious">>
-	<</if>>
-<<elseif $args[0].fetish == "mindbroken">>
-	<<set _fileName = _fileName + " reluctant">>
-<<elseif $args[0].devotion <= 50 || $args[0].fetishKnown != 1 || ($seeMainFetishes == 0 && $args[1] < 2)>>
-	<<set _fileName = _fileName + " obedient">>
-<<else>>
-	<<if $args[0].fetish == "none">>
-		<<set _fileName = _fileName + " obedient">>
-	<<else>>
-		<<set _fileName = _fileName + " " + $args[0].fetish>>
-	<</if>>
-<</if>>
-
-<<set _fileName = "'resources/renders/" + _fileName + ".png' ">>
-<<if $args[1] == 3>>
-	<<print "<img src=" + _fileName + "style='float:right; border:3px hidden'/>">>
-<<elseif $args[1] == 2>>
-	<<print "<img src=" + _fileName + "style='float:right; border:3px hidden' width='300' height='300'/>">>
-<<elseif $args[1] == 1>>
-	<<print "<img src=" + _fileName + "style='float:left; border:3px hidden' width='150' height='150'/>">>
-<<else>>
-	<<print "<img src=" + _fileName + "style='float:left; border:3px hidden' width='120' height='120'/>">>
-<</if>>
+	<<= ArtControlRendered($args[0], $args[1])>>
 
 <</if>> /* CLOSES IMAGE CHOICE */
 
diff --git a/src/js/artJS.tw b/src/js/artJS.tw
new file mode 100644
index 00000000000..3405c98d0c1
--- /dev/null
+++ b/src/js/artJS.tw
@@ -0,0 +1,115 @@
+:: Art JS [script]
+
+/*
+Displays assistant images. Currently passage-based.
+sizePlacement: Image size/center.
+	3: Large, right. Example: description.
+	2: Medium, right. Example: random events.
+*/
+window.AssistantArtRendered = function AssistantArtRendered(sizePlacement) {
+	const V = State.variables;
+	let fileName = "";
+
+	if (V.imageChoice === 0) {
+		switch (V.assistantAppearance) {
+			case "monstergirl":
+				fileName = "'resources/renders/assistant monstergirl.png'";;
+				break;
+			case "shemale":
+				fileName = "'resources/renders/assistant shemale.png'";
+				break;
+			case "amazon":
+				fileName = "'resources/renders/assistant amazon.png'";
+				break;
+			case "businesswoman":
+				fileName = "'resources/renders/assistant businesswoman.png'";
+				break;
+			case "goddess":
+				fileName = "'resources/renders/assistant goddess.png'";
+				break;
+			case "schoolgirl":
+				fileName = "'resources/renders/assistant schoolgirl.png'";
+				break;
+			default:
+				fileName = "'resources/renders/assistant default.png'";
+		}
+		if (sizePlacement === 3) {
+			fileName = `<img src=${fileName} style='float:right; border:3px hidden'/>`;
+		} else {
+			fileName = `<img src=${fileName} style='float:right; border:3px hidden' width='300' height='300'/>`;
+		}
+	}
+	return fileName;
+};
+
+window.ArtControlRendered = function ArtControlRendered(slave, sizePlacement) {
+	const V = State.variables;
+	let fileName = "";
+	let r = "";
+
+	if (slave.vagina > -1) {
+		if (slave.dick > 0) {
+			if (slave.balls > 0) {
+				fileName = "futanari";
+			} else {
+				fileName = "herm";
+			}
+		} else {
+			fileName = "female";
+		}
+	} else {
+		if (slave.balls > 0) {
+			fileName = "shemale";
+		} else {
+			fileName = "gelding";
+		}
+	}
+	if (slave.belly > 1500) {
+		fileName = `preg ${fileName}`;
+	}
+	if (slave.boobs < 400) {
+		fileName = `${fileName} small`;
+	} else if (slave.boobs < 800) {
+		fileName = `${fileName} big`;
+	} else if (slave.boobs < 6000) {
+		fileName = `${fileName} huge`;
+	} else {
+		fileName = `${fileName} hyper`;
+	}
+	if (slave.muscles > 30) {
+		fileName = `${fileName} muscle`;
+	} else {
+		fileName = `${fileName} soft`;
+	}
+	if (slave.fuckdoll > 0) {
+		fileName = `${fileName} rebellious`;
+	} else if (slave.devotion <= 20) {
+		if (slave.trust < -20) {
+			fileName = `${fileName} reluctant`;
+		} else {
+			fileName = `${fileName} rebellious`;
+		}
+	} else if (slave.fetish === "mindbroken") {
+		fileName = `${fileName} reluctant`;
+	} else if (slave.devotion <= 50 || slave.fetishKnown !== 1 || V.seeMainFetishes === 0 && sizePlacement < 2) {
+		fileName = `${fileName} obedient`;
+	} else {
+		if (slave.fetish === "none") {
+			fileName = `${fileName} obedient`;
+		} else {
+			fileName = `${fileName} ${slave.fetish}`;
+		}
+	}
+
+	fileName = `'resources/renders/${fileName}.png'`;
+	if (sizePlacement === 3) {
+		r = `<img src=${fileName} style='float:right; border:3px hidden'>`;
+	} else if (sizePlacement === 2) {
+		r = `<img src=${fileName} style='float:right; border:3px hidden' width='300' height='300'>`;
+	} else if (sizePlacement === 1) {
+		r = `<img src=${fileName} style='float:left; border:3px hidden' width='150' height='150'>`;
+	} else {
+		r = `<img src=${fileName} style='float:left; border:3px hidden' width='120' height='120'>`;
+	}
+	return r;
+};
diff --git a/src/pregmod/assistantAppearancePackTwo.tw b/src/pregmod/assistantAppearancePackTwo.tw
index a8cb264ecbd..7be9a3cb85a 100644
--- a/src/pregmod/assistantAppearancePackTwo.tw
+++ b/src/pregmod/assistantAppearancePackTwo.tw
@@ -1,6 +1,6 @@
 :: Assistant Appearance Pack Two [nobr]
 
-<<if $seeImages == 1>><<AssistantArt 3>><</if>>
+<<if $seeImages == 1>><<= AssistantArtRendered(3)>><</if>>
 
 "Cool! New appearances to play around with!" Your assistant happily chimes. "Let's see what's inside! This looks heavenly..." She hunches forward as a large pair of white feathered wings extend from her upper back. She takes several experimental flaps before taking to the sky. "I feel positively radiant! Maybe a smaller version will be more to your liking?" She loses both height and wingspan until she stands roughly equivalent to <<= heightToEitherUnit(120)>>. She flutters around cutely. "This is neat, I'm like cupid. Want me to hook you up with anyone?" She winks as her wings become bat-like and a pair of cute little nubs appears on her head. "Or maybe you'd just like to play with me instead." The impish figure flirts, before landing and blossoming into a stunning woman. "You know a succubus can take her lover's ideal form." She runs her hands down her sides and to her crotch. <<if $seeDicks != 0>>She begins rubbing her clit as it steadily grows into a meaty cock. "Or an incubus, for the ladies." She returns to her previous form. <</if>>"Says here it comes with 'bonus novice witch' too. Neat. What's this though? It looks like an appeara"
 
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 883921dd3a7..53383d3a988 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -2526,7 +2526,7 @@ running her tongue over her<<if $activeSlave.lips > 40>> whorish<<elseif $active
 
 <<case "PA flirting">>
 
-<<if $seeImages == 1>><<AssistantArt 2>><</if>>
+<<if $seeImages == 1>><<= AssistantArtRendered(2)>><</if>>
 
 Partway through <<EventNameLink $activeSlave>>'s weekly inspection, you have to leave for a moment to deal with a minor matter. Inspecting such a devoted slave is a pleasure, but you tear yourself away. Such sacrifices must be made.
 <br><br>
diff --git a/src/uncategorized/assistantEvents.tw b/src/uncategorized/assistantEvents.tw
index 4440b557e22..4b6873329a5 100644
--- a/src/uncategorized/assistantEvents.tw
+++ b/src/uncategorized/assistantEvents.tw
@@ -4,7 +4,7 @@
 
 <<set $nextButton = "Continue", $nextLink = "Random Nonindividual Event">>
 
-<<if $seeImages == 1>><<AssistantArt 3>><</if>>
+<<if $seeImages == 1>><<= AssistantArtRendered(3)>><</if>>
 
 <<switch $Event>>
 <<case "assistant">>
diff --git a/src/uncategorized/personalAssistantOptions.tw b/src/uncategorized/personalAssistantOptions.tw
index 51d1502d6b9..6c64aecee43 100644
--- a/src/uncategorized/personalAssistantOptions.tw
+++ b/src/uncategorized/personalAssistantOptions.tw
@@ -5,7 +5,7 @@
 
 <<if $marketAssistantLimit>><<set $marketAssistantLimit to Math.clamp($marketAssistantLimit, 10000, 10000000)>><</if>>
 
-<<if $seeImages == 1>><<AssistantArt 3>><</if>>
+<<if $seeImages == 1>><<= AssistantArtRendered(3)>><</if>>
 
 Seated at your desk, you glance at the visual representation of $assistantName, down in one corner of your desk's glass top.
 
-- 
GitLab


From 920d61ade725650ce0fe12d69546c2a9f54e7aa1 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Wed, 25 Jul 2018 21:39:58 -0500
Subject: [PATCH 119/189] Fixing

---
 src/init/setupVars.tw                       |    5 +-
 src/uncategorized/arcadeReport.tw           |    2 +
 src/uncategorized/brothelReport.tw          |    2 +
 src/uncategorized/clinicReport.tw           |    2 +
 src/uncategorized/clubReport.tw             |    2 +
 src/uncategorized/dairyReport.tw            |    2 +
 src/uncategorized/endWeek.tw                |    2 +
 src/uncategorized/masterSuiteReport.tw      |    2 +
 src/uncategorized/newSlaveIntro.tw          |   40 +-
 src/uncategorized/penthouseReport.tw        |    6 +-
 src/uncategorized/saBeYourHeadGirl.tw       |    6 +-
 src/uncategorized/saDevotion.tw             |  240 +--
 src/uncategorized/saDiet.tw                 |    2 +
 src/uncategorized/saGetMilked.tw            |    2 +
 src/uncategorized/saGuardsYou.tw            |    2 +
 src/uncategorized/saHormoneEffects.tw       |    2 +
 src/uncategorized/saLiveWithHG.tw           |    4 +-
 src/uncategorized/saLongTermEffects.tw      | 1767 ++++++++-----------
 src/uncategorized/saPleaseYou.tw            |    9 +-
 src/uncategorized/saRecruitGirls.tw         |    9 +-
 src/uncategorized/saRelationships.tw        |    2 +
 src/uncategorized/saRivalries.tw            |    2 +
 src/uncategorized/saRules.tw                |    2 +
 src/uncategorized/saServeThePublic.tw       |   18 +-
 src/uncategorized/saServeYourOtherSlaves.tw |    4 +-
 src/uncategorized/saWhore.tw                |  914 +++++-----
 src/uncategorized/saWorkAGloryHole.tw       |    2 +
 src/uncategorized/schoolroomReport.tw       |    2 +
 src/uncategorized/servantsQuartersReport.tw |    2 +
 src/uncategorized/spaReport.tw              |    2 +
 src/uncategorized/useGuard.tw               |    1 -
 src/utility/miscWidgets.tw                  |   31 -
 32 files changed, 1388 insertions(+), 1702 deletions(-)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index db22ac58e77..648abf6c856 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -446,12 +446,11 @@
 /* NOTE: Names ending in "-iia" aren't data errors, but simply how the official romanization of "-ія" looks like. */
 <<set setup.ukrainianSlaveNames = ["Ada", "Al'bina", "Alex", "Alexandra", "Alina", "Alisa", "Alla", "Alyona", "Amaliia", "Anastasia", "Anastasiia", "Anastasiya", "Angela", "Angelina", "Anita", "Ann", "Anna", "Anzhela", "Arina", "Ayya", "Biliana", "Bohdanna", "Bohuslava", "Bozhena", "Danna", "Daria", "Darina", "Darya", "Daryna", "Dasha", "Diana", "Draha", "Edyta", "Elena", "Elisabeta", "Emiliia", "Erika", "Eva", "Halina", "Hanna", "Hordana", "Ilona", "Ira", "Irena", "Irene", "Irina", "Iryna", "Julia", "Juliva", "Kamilla", "Karina", "Karolina", "Kasia", "Kate", "Kateryna", "Katia", "Katya", "Khrystyna", "Klavdiia", "Kristina", "Larisa", "Laura", "Lena", "Lida", "Liia", "Liliia", "Liliya", "Liubomyra", "Liubov", "Liudmyla", "Liza", "Luba", "Mahda", "Mahdalyna", "Mar'iana", "Margaryta", "Maria", "Mariia", "Marina", "Mariya", "Marta", "Marusia", "Mary", "Maryna", "Masha", "Miiana", "Milena", "Mykhailyna", "Myroslava", "Nadiia", "Nastia", "Nastya", "Natalia", "Nataliia", "Nataliya", "Natalya", "Natasha", "Nina", "Odarka", "Oksana", "Okseniia", "Ol'ha", "Oleksandra", "Olena", "Olga", "Olha", "Olya", "Oryna", "Orysia", "Pavlyna", "Polina", "Priska", "Pylypyna", "Rakhil", "Reveka", "Roksolana", "Romana", "Rozaliia", "Ruslana", "Santa", "Sara", "Sasha", "Sesiliia", "Snejana", "Snizhana", "Sofiya", "Solomiia", "Sonya", "Sophie", "Sophiia", "Stepaniia", "Sveta", "Sviatoslava", "Svitlana", "Tania", "Tanya", "Tatiana", "Taya", "Tereza", "Tetiana", "Tetyana", "Tina", "Valentyna", "Valeria", "Valeriya", "Varvara", "Vasylyna", "Velana", "Vesna", "Victoria", "Vika", "Viktoriia", "Viktoriya", "Violetta", "Vira", "Volodymyra", "Yana", "Yara", "Yaroslava", "Yaryna", "Yasna", "Yelyzaveta", "Yulia", "Yuliia", "Yuliya", "Yustyna", "Zlata", "Zlatoslava", "Zoriana"]>>
 /* NOTE: Ukrainian surnames have different forms depending on the gender of the person AND the area (they are more common in Eastern Ukraine). This list uses the female form where it's common overall. */
-<<<<<<< HEAD
-=======
+
 <<set setup.russianSlaveNames = setup.russianSlaveNames.concat(setup.ukrainianSlaveNames)>>
 <<set setup.ukrainianSlaveNames = setup.russianSlaveNames >>
 /* Now we have bigger pool for russian and ukrainian names in game. Russian and ukrainian first names become so common on both territories thorugh USSR time and later, that it's IRL just one list. */
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+
 <<set setup.ukrainianSlaveSurnames = ["Aleksandrova", "Andreeva", "Antonyuk", "Astafieva", "Avramenko", "Azanova", "Babenko", "Babich", "Baikova", "Belous", "Belova", "Bets", "Beznosyuk", "Bilous", "Bodnar", "Boiko", "Bondar", "Bondarchuk", "Bondarenko", "Borisenko", "Boychuk", "Boyko", "Chernenko", "Chorna", "Chumak", "Danilyuk", "Demchenko", "Denisenko", "Dereviankina", "Derkach", "Diachenko", "Didenko", "Dimopoulos", "Dmitrenko", "Doroshenko", "Dyachenko", "Fedorenko", "Fedorova", "Fomenko", "Frolova", "Gavrilyuk", "Gerasimenko", "Golovko", "Golub", "Gonchar", "Goncharenko", "Goncharova", "Goncharuk", "Gordienko", "Gorelova", "Gotsiy", "Grischenko", "Gritsenko", "Grytsay", "Gumenyuk", "Havryiuk", "Honcharenko", "Honcharova", "Hotlib", "Iaryn", "Ischenko", "Ishchenko", "Ivanchenko", "Ivanenko", "Ivanova", "Ivanyuk", "Ivaschenko", "Karlenko", "Karol", "Karpenko", "Kharchenko", "Khmidan", "Khomenko", "Kirichenko", "Klimenko", "Klymenko", "Koblenko", "Kolesnik", "Kolesnyk", "Kolomiets", "Kolomiiets", "Kondratyuk", "Kononenko", "Kornienko", "Korol", "Kostenko", "Kostiuk", "Kostyuk", "Kot", "Kotova", "Kots-Hotlib", "Kots", "Koval'chuk", "Koval'ova", "Koval", "Kovalchuk", "Kovalenko", "Kovtun", "Kozak", "Kozlova", "Kravchenko", "Kravchuk", "Kravets", "Kristal", "Kucher", "Kucherenko", "Kuiek", "Kulik", "Kulizhka", "Kulyk", "Kunis", "Kurovska", "Kurylenko", "Kushnir", "Kuz'menko", "Kuzmenko", "Kuznetsova", "Kyrychenko", "Lauta", "Lebedeva", "Levchenko", "Litvina", "Litvinenko", "Litvinova", "Luczenko", "Lutsenko", "Lyashenko", "Lysenko", "Lytvynenko", "Makarenko", "Makarova", "Maliouk", "Marchenko", "Marchuk", "Martynenko", "Martyniuk", "Matvienko", "Mazur", "Mel'nychuk", "Mel'nyk", "Melnichenko", "Melnichuk", "Melnik", "Mikhaylenko", "Mikhaylova", "Mironenko", "Mironova", "Miroshnichenko", "Mischenko", "Moroz", "Morozova", "Moskalenko", "Mykhailova", "Myshchenko", "Naumenko", "Nazarenko", "Nesterenko", "Nikitina", "Nikolaenko", "Nikolaeva", "Novikova", "Oleynik", "Oliinyk", "Oliynik", "Olyenik", "Omelchenko", "Onischenko", "Onopka", "Orlova", "Osmanova", "Ostapenko", "Ovcharenko", "Palamarchuk", "Panchenko", "Parkhomenko", "Pavlenko", "Pavliuk", "Pavlova", "Pavlyuk", "Petrenko", "Petrova", "Pilipenko", "Piro", "Piskun", "Poliakova", "Polischuk", "Polishchuk", "Polyakova", "Ponomarenko", "Popova", "Popovich", "Popovych", "Poslavska", "Prikhodko", "Prokopenko", "Prykhod'ko", "Pylypenko", "Radchenko", "Remez", "Romanenko", "Romaniuk", "Romanova", "Romanyuk", "Romonova", "Rudenko", "Safroncik", "Samoylenko", "Savchenko", "Savchuk", "Scherbina", "Sedokova", "Semeniuk", "Semenyuk", "Senchylo", "Serdyuk", "Sergeeva", "Sergienko", "Shapoval", "Shevchenko", "Shevchuk", "Shorokhova", "Shulga", "Shumeyko", "Shvets", "Sidorchuk", "Sidorenko", "Smerechevskaya", "Smirnova", "Sokolova", "Soroka", "Stepanenko", "Stepanova", "Stotskaya", "Svets", "Sydorenko", "Taran", "Tarasenko", "Tereschenko", "Tereshchenko", "Timchenko", "Timoshenko", "Tischenko", "Tkach", "Tkachenko", "Tkachuk", "Toksik", "Turenko", "Tymoshenko", "Tyshchenko", "Vasilenko", "Vasileva", "Vasyl'ieva", "Vasylenko", "Velchinskaya", "Velichko", "Veryovkina", "Vlasenko", "Volkova", "Voloshina", "Voloshyn", "Vovk", "Yakovenko", "Yatsenko", "Yurchenko", "Zaitseva", "Zaytseva", "Zhiuk", "Zhuk", "Zhuravska", "Zinchenko"]>>
 
 <<set setup.canadianSlaveNames = ["Abigail", "Addison", "Adrienne", "Agnes", "Aileen", "Alexandra", "Alexis", "Alice", "Alyssa", "Amanda", "Amelia", "Amy", "Andrea", "Ann", "Ànna", "Anne-Marie", "Anne", "Annie", "Ashley", "Audrey", "Autumn", "Ava", "Avery", "Barbara", "Beatrice", "Béatrice", "Bette", "Bianca", "Brenda", "Brooklyn", "Caitlin", "Camille", "Caroline", "Catherine", "Charlotte", "Chelsea", "Chloe", "Chloé", "Dianne", "Donna", "Elinor", "Élise", "Elizabeth", "Ellen", "Emilia", "Émilie", "Emily", "Emma", "Eva", "Evelyn", "Florence", "France", "Frances", "Frédérique", "Gabrielle", "Geneviève", "Gillian", "Grace", "Hannah", "Harper", "Helen", "Hélène", "Indira", "Isabella", "Jade", "Jeanne", "Jenna", "Jennifer", "Jessica", "Joan", "Joyce", "Julia", "Julie", "Juliette", "Justine", "Karen", "Kate", "Kathleen", "Kathryn", "Kayla", "Kim", "Laura", "Lauren", "Laurence", "Laurie", "Lea", "Léa", "Leona", "Lily", "Linda", "Lisa", "Madelyn", "Madison", "Margaret", "Maria", "Marie-France", "Marie", "Marilyn", "Maryse", "Maud", "Maude", "Megan", "Mélissa", "Mia", "Michaëlle", "Michèle", "Morgan", "Nathalie", "Nora", "Norah", "Olivia", "Rachel", "Rebecca", "Rosalie", "Roxanne", "Sabrina", "Samantha", "Sarah", "Scarlett", "Sharon", "Sheila", "Shelley", "Shirley", "Sonia", "Sophia", "Sophie", "Stephanie", "Sydney", "Sylvia", "Taylor", "Vanessa", "Victoria", "Yvonne", "Zoe", "Zoé"]>>
diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw
index bf65638ef1c..8a13eea6107 100644
--- a/src/uncategorized/arcadeReport.tw
+++ b/src/uncategorized/arcadeReport.tw
@@ -1,5 +1,7 @@
 :: Arcade Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <span id="arcadestats">
 </span>
 
diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw
index ee6d56c7d9e..075a64fcfa3 100644
--- a/src/uncategorized/brothelReport.tw
+++ b/src/uncategorized/brothelReport.tw
@@ -1,5 +1,7 @@
 :: Brothel Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <span id="brothelstats">
 </span>
 
diff --git a/src/uncategorized/clinicReport.tw b/src/uncategorized/clinicReport.tw
index b0b8e8e5ffd..cdd74b315c1 100644
--- a/src/uncategorized/clinicReport.tw
+++ b/src/uncategorized/clinicReport.tw
@@ -1,5 +1,7 @@
 :: Clinic Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<SlaveSort $CliniciIDs>>
 <<set _DL = $CliniciIDs.length, $clinicSlaves = _DL, _SL = $slaves.length, _healthBonus = 0, _idleBonus = 0, _FLsFetish = 0, _restedSlaves = 0>>
 
diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw
index 8dbdffa6dd9..3087032d979 100644
--- a/src/uncategorized/clubReport.tw
+++ b/src/uncategorized/clubReport.tw
@@ -1,5 +1,7 @@
 :: Club Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <span id="clubstats">
 </span>
 
diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw
index ed33c55cd44..0437d425c4b 100644
--- a/src/uncategorized/dairyReport.tw
+++ b/src/uncategorized/dairyReport.tw
@@ -1,5 +1,7 @@
 :: Dairy Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <span id="dairystats">
 </span>
 
diff --git a/src/uncategorized/endWeek.tw b/src/uncategorized/endWeek.tw
index 7b1662a96ae..3ef296ce538 100644
--- a/src/uncategorized/endWeek.tw
+++ b/src/uncategorized/endWeek.tw
@@ -1,5 +1,7 @@
 :: End Week [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<set State.expired.length = 0>>
 
 <<set $gingering = 0, $oralUseWeight = 5, $vaginalUseWeight = 5, $analUseWeight = 5, $mammaryUseWeight = 1, $penetrativeUseWeight = 1, $inflatedSlavesMilk = 0, $inflatedSlavesCum = 0, $subSlaves = 0>>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index 6e3bbc38f1a..4d3ddf5b49f 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -1,5 +1,7 @@
 :: Master Suite Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<SlaveSort $MastSiIDs>>
 <<set _DL = $MastSiIDs.length, $masterSuiteSlaves = _DL, _SL = $slaves.length, $legendaryAbolitionistID = 0, $masterSuiteAverageEnergy = 0, _masterSuiteAverageCum = 0, _masterSuiteAverageDick = 0, _masterSuiteAverageDom = 0, _masterSuiteAverageMilk = 0, _masterSuiteAveragePreg = 0, _masterSuiteAverageSadism = 0, _masterSuitePregnantSlaves = 0, _masterSuitePregnantSlavesMultiple = 0>>
 <<if $Concubine != 0>>
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index d01776c7ab5..9bb08fc34f7 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -1221,16 +1221,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Tie $him up and take $his virginity">>
 		<<replace "#introResult">>
-<<<<<<< HEAD
-			You cuff $his wrists and ankles and secure $his struggling, screeching body to the couch next to your desk with $his legs spread. $He wriggles and protests as you take $his virginity. $He's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;$His tight little pussy has been broken in.@@
-=======
 			<<if $activeSlave.amp == 1>>
-				You secure her struggling, screeching body to the couch next to your desk with her vagina exposed.
+				You secure $his struggling, screeching body to the couch next to your desk with $his vagina exposed.
 			<<else>>
-				You cuff her wrists and ankles and secure her struggling, screeching body to the couch next to your desk with her legs spread.
+				You cuff $his wrists and ankles and secure $his struggling, screeching body to the couch next to your desk with $his legs spread.
 			<</if>>
-			She wriggles and protests as you take her virginity. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;Her tight little pussy has been broken in.@@
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+			She wriggles and protests as you take $his virginity. She's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;$His tight little pussy has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1241,16 +1237,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Tie $him up and take $his virginity">>
 		<<replace "#introResult">>
-<<<<<<< HEAD
-			You cuff $his wrists and ankles and secure $his unresisting body to the couch next to your desk with $his legs spread. $He writhes and moans as you enter $his virgin pussy. You might not have even had to restrain $him for this, but being tied up and deflowered sends $him a message. $He's certainly entered your service in a way that colors $his impression of you @@.hotpink;with pain@@ and @@.gold;fear.@@ @@.lime;$His tight little pussy has been broken in.@@
-=======
 			<<if $activeSlave.amp == 1>>
-				You secure her unresisting body to the couch next to your desk with her vagina exposed.
+				You secure $his unresisting body to the couch next to your desk with $his vagina exposed.
 			<<else>>
-				You cuff her wrists and ankles and secure her unresisting body to the couch next to your desk with her legs spread.
+				You cuff $his wrists and ankles and secure $his unresisting body to the couch next to your desk with $his legs spread.
 			<</if>>
-			She writhes and moans as you enter her virgin pussy. You might not have even had to restrain her for this, but being tied up and deflowered sends her a message. She's certainly entered your service in a way that colors her impression of you @@.hotpink;with pain@@ and @@.gold;fear.@@ @@.lime;Her tight little pussy has been broken in.@@
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+			$He writhes and moans as you enter $his virgin pussy. You might not have even had to restrain $him for this, but being tied up and deflowered sends $him a message. $He's certainly entered your service in a way that colors $his impression of you @@.hotpink;with pain@@ and @@.gold;fear.@@ @@.lime;$His tight little pussy has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion += 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1264,16 +1256,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Tie $him up and rape $his virgin ass">>
 		<<replace "#introResult">>
-<<<<<<< HEAD
-			You cuff $his wrists and ankles and secure $his struggling, screeching body to the couch next to your desk so that $he's straddling the back of the couch with $his butt sticking out. $He wriggles and protests until $he feels the lubricated head of <<if $PC.dick == 1>>your dick<<else>>a strap-on<</if>> pushing against $his virgin butthole, at which point $he desperately tries to break free. $He fails, but $he never stops writhing and begging you to take <<if $PC.dick == 1>>your cock<<else>>the phallus<</if>> out of $his asshole. $He's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;$His tight little ass has been broken in.@@
-=======
 			<<if $activeSlave.amp == 1>>
-				You secure her struggling, screeching body to the couch next to your desk with her butt sticking out.
+				You secure $his struggling, screeching body to the couch next to your desk with $his butt sticking out.
 			<<else>>
-				You cuff her wrists and ankles and secure her struggling, screeching body to the couch next to your desk so that she's straddling the back of the couch with her butt sticking out.
+				You cuff $his wrists and ankles and secure $his struggling, screeching body to the couch next to your desk so that $he's straddling the back of the couch with $his butt sticking out.
 			<</if>>
-			She wriggles and protests until she feels the lubricated head of <<if $PC.dick == 1>>your dick<<else>>a strap-on<</if>> pushing against her virgin butthole, at which point she desperately tries to break free. She fails, but she never stops writhing and begging you to take <<if $PC.dick == 1>>your cock<<else>>the phallus<</if>> out of her asshole. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;Her tight little ass has been broken in.@@
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+			$He wriggles and protests until $he feels the lubricated head of <<if $PC.dick == 1>>your dick<<else>>a strap-on<</if>> pushing against $his virgin butthole, at which point $he desperately tries to break free. $He fails, but $he never stops writhing and begging you to take <<if $PC.dick == 1>>your cock<<else>>the phallus<</if>> out of $his asshole. $He's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with hatred@@ and @@.gold;fear.@@ @@.lime;$His tight little ass has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
@@ -1284,16 +1272,12 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<link "Tie $him up and break $his ass in">>
 		<<replace "#introResult">>
-<<<<<<< HEAD
-			You cuff $his wrists and ankles and secure $his unresisting body to the couch next to your desk so that $he's straddling the back of the couch with $his butt sticking out. $He lies obediently still until $he feels the lubricated head of your cock pushing against $his virgin butthole, at which point $he starts in surprise. When the pain of the buttfuck gets to be too much $he begs you to use $his <<if $activeSlave.dick == 0>>pussy<<else>>mouth<</if>> instead. $He gasps and cries as you slowly push your cock all the way up $his tight little butt, and in no time you fill $his rectum with cum. $He's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with pain@@ and @@.gold;fear.@@ @@.lime;$His tight little ass has been broken in.@@
-=======
 			<<if $activeSlave.amp == 1>>
-				You secure her unresisting body to the couch next to your desk with her butt sticking out.
+				You secure $his unresisting body to the couch next to your desk with $his butt sticking out.
 			<<else>>
-				You cuff her wrists and ankles and secure her unresisting body to the couch next to your desk so that she's straddling the back of the couch with her butt sticking out.
+				You cuff $his wrists and ankles and secure $his unresisting body to the couch next to your desk so that $he's straddling the back of the couch with $his butt sticking out.
 			<</if>>
-			She lies obediently still until she feels the lubricated head of your cock pushing against her virgin butthole, at which point she starts in surprise. When the pain of the buttfuck gets to be too much she begs you to use her <<if $activeSlave.dick == 0>>pussy<<else>>mouth<</if>> instead. She gasps and cries as you slowly push your cock all the way up her tight little butt, and in no time you fill her rectum with cum. She's certainly entered your service in a way that colors her impression of you @@.mediumorchid;with pain@@ and @@.gold;fear.@@ @@.lime;Her tight little ass has been broken in.@@
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+			$He lies obediently still until $he feels the lubricated head of your cock pushing against $his virgin butthole, at which point $he starts in surprise. When the pain of the buttfuck gets to be too much $he begs you to use $his <<if $activeSlave.dick == 0>>pussy<<else>>mouth<</if>> instead. $He gasps and cries as you slowly push your cock all the way up $his tight little butt, and in no time you fill $his rectum with cum. $He's certainly entered your service in a way that colors $his impression of you @@.mediumorchid;with pain@@ and @@.gold;fear.@@ @@.lime;$His tight little ass has been broken in.@@
 		<</replace>>
 		<<set $activeSlave.devotion -= 5>>
 		<<set $activeSlave.trust -= 10>>
diff --git a/src/uncategorized/penthouseReport.tw b/src/uncategorized/penthouseReport.tw
index 16b326270af..dd22921d620 100644
--- a/src/uncategorized/penthouseReport.tw
+++ b/src/uncategorized/penthouseReport.tw
@@ -8,7 +8,7 @@
 		<div>''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 		<<if $slaves[$i].choosesOwnAssignment == 2>>
 			<<include "SA chooses own job">>
-			$pronounCap
+			$He
 		<</if>>
 		<<include "Full Report">>
 		<br><br>
@@ -19,13 +19,13 @@
 			<<set _ID = $HGSuiteiIDs[0], $i = $slaveIndices[_ID]>>
 
 			<<if $slaves[$i].assignment != "live with your Head Girl">>
-				<br>@@.red;$slaves[$i].slaveName had been assigned to live with your Head Girl, but this week she was assigned to $slaves[$i].assignment. She has been released to your penthouse for reassignment.@@
+				<br>@@.red;$slaves[$i].slaveName had been assigned to live with your Head Girl, but this week $he was assigned to $slaves[$i].assignment. $He has been released to your penthouse for reassignment.@@
 				<<= removeJob($slaves[$i], "live with your Head Girl")>>
 			<<else>>
 				''__@@.pink;<<= SlaveFullName($slaves[$i])>>@@__''
 				<<if $slaves[$i].choosesOwnAssignment == 2>>
 					<<include "SA chooses own job">>
-					$pronounCap
+					$He
 				<</if>>
 				<<include "SA live with HG">>
 				<br><br>
diff --git a/src/uncategorized/saBeYourHeadGirl.tw b/src/uncategorized/saBeYourHeadGirl.tw
index 24747489f9c..948b611343f 100644
--- a/src/uncategorized/saBeYourHeadGirl.tw
+++ b/src/uncategorized/saBeYourHeadGirl.tw
@@ -1,5 +1,7 @@
 :: SA be your Head Girl [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<set $HGTimeInGrade += 1>>
 
 <<if $HGSuite == 1>>
@@ -7,9 +9,9 @@
 <</if>>
 
 <<if $arcologies[0].FSEgyptianRevivalistLaw == 0>>
-	helps manage your other slaves. She helps them when they try and fail, and punishes them when they fail to try.
+	helps manage your other slaves. $He helps them when they try and fail, and punishes them when they fail to try.
 <<else>>
-	serves as your Consort. Though she is still your slave, her status is scarcely below that of a citizen. She @@.green;contributes to your reputation@@ just like a Concubine, and she is @@.hotpink;conscious@@ of the @@.mediumaquamarine;trust@@ you place in her.
+	serves as your Consort. Though $he is still your slave, $his status is scarcely below that of a citizen. $He @@.green;contributes to your reputation@@ just like a Concubine, and $he is @@.hotpink;conscious@@ of the @@.mediumaquamarine;trust@@ you place in $him.
 	<<set $slaves[$i].devotion += 1, $slaves[$i].trust += 1>>
 	<<silently>>
 	<<include "SA please you">>
diff --git a/src/uncategorized/saDevotion.tw b/src/uncategorized/saDevotion.tw
index 1ab9c7f97a1..ea669595c51 100644
--- a/src/uncategorized/saDevotion.tw
+++ b/src/uncategorized/saDevotion.tw
@@ -1,5 +1,7 @@
 :: SA devotion [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 &nbsp;&nbsp;&nbsp;&nbsp;
 
 <<if $slaves[$i].fetish == "mindbroken">>
@@ -9,7 +11,7 @@
 
 <<set $energyPlus = 0>>
 
-<<if $slaves[$i].origin == "You were acquainted with her before you were an arcology owner; your rival tried to use her to manipulate you, but you rescued her.">>
+<<if $slaves[$i].origin == "You were acquainted with her before you were an arcology owner; your rival tried to use $him to manipulate you, but you rescued her.">>
 	<<if ($rivalryDuration <= 10 || $rivalryFS == "Racial Supremacism" || $rivalryFS == "Paternalism")>>
 		You @@.mediumaquamarine;saved $slaves[$i].slaveName from a living nightmare@@ under your rival's rule. $He @@.hotpink;tries $his best to adapt to $his savior's wishes.@@
 		<<set $slaves[$i].devotion += 10>>
@@ -20,7 +22,7 @@
 		<<set $slaves[$i].trust += 5>>
 	<<elseif $rivalryDuration > 20 && $slaves[$i].devotion < 5>>
 		<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-			You took everything from $slaves[$i].slaveName and @@.mediumorchid;$he hates you for it.@@ Since you won't give her what $he wants, $he @@.gold;refuses to trust you.@@ Since you are putting such a personal touch into her care, $he can't find it in her to rebel as strongly.
+			You took everything from $slaves[$i].slaveName and @@.mediumorchid;$he hates you for it.@@ Since you won't give $him what $he wants, $he @@.gold;refuses to trust you.@@ Since you are putting such a personal touch into $his care, $he can't find it in $him to rebel as strongly.
 			<<set $slaves[$i].devotion -= 5>>
 			<<set $slaves[$i].trust -= 5>>
 		<<else>>
@@ -30,7 +32,7 @@
 		<</if>>
 	<<elseif $rivalryDuration > 10 && $slaves[$i].devotion < 5>>
 		<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-			$He is @@.gold;horrified by you.@@ Your rival taught her a great deal about slave life in your arcology and indulged her deepest fantasies. $slaves[$i].slaveName considers being your pet @@.mediumorchid;a fate worse than death.@@ Since you are putting such a personal touch into her care, maybe you aren't the monster $he thought you were. $He can't find it in her to hate and fear you as much.
+			$He is @@.gold;horrified by you.@@ Your rival taught $him a great deal about slave life in your arcology and indulged $his deepest fantasies. $slaves[$i].slaveName considers being your pet @@.mediumorchid;a fate worse than death.@@ Since you are putting such a personal touch into $his care, maybe you aren't the monster $he thought you were. $He can't find it in $him to hate and fear you as much.
 			<<set $slaves[$i].devotion -= 3>>
 			<<set $slaves[$i].trust -= 3>>
 		<<else>>
@@ -44,21 +46,21 @@
 <<if $PC.preg >= 20 || ($PC.preg >= 16 && $PC.career == "escort")>>
 	<<if $slaves[$i].devotion > 60>>
 		<<if $PC.pregMood == 2>>
-			$He is devoted to you and does her best to satisfy your demanding, hormone driven libido, no matter what you want from $him. $His efforts to give herself you to @@.hotpink;further her submission@@ to you.
+			$He is devoted to you and does $his best to satisfy your demanding, hormone driven libido, no matter what you want from $him. $His efforts to give $himself you to @@.hotpink;further $his submission@@ to you.
 			<<set $slaves[$i].devotion += 2>>
 		<<elseif $PC.pregMood == 1>>
-			$He is devoted to you and tries her best to accommodate your needs and desires. Your hormonal mothering @@.mediumaquamarine;leaves her slightly more trusting@@ of you.
+			$He is devoted to you and tries $his best to accommodate your needs and desires. Your hormonal mothering @@.mediumaquamarine;leaves $him slightly more trusting@@ of you.
 			<<set $slaves[$i].trust += 2>>
 		<<else>>
-			$He is devoted to you and tries her best to accommodate your needs and desires.
+			$He is devoted to you and tries $his best to accommodate your needs and desires.
 		<</if>>
 	<<else>>
 		<<if $PC.pregMood == 2>>
-			$He is @@.gold;horrified@@ of your aggressive sexual advances, forcing her @@.hotpink;bend to your will@@ or face punishment at the hands of a hormonal pregnant woman.
+			$He is @@.gold;horrified@@ of your aggressive sexual advances, forcing $him to @@.hotpink;bend to your will@@ or face punishment at the hands of a hormonal pregnant woman.
 			<<set $slaves[$i].devotion += 4>>
 			<<set $slaves[$i].trust -= 4>>
 		<<elseif $PC.pregMood == 1>>
-			$He happily @@.mediumorchid;takes advantage@@ of your hormone induced kindness, though your care @@.mediumaquamarine;builds her trust in you.@@
+			$He happily @@.mediumorchid;takes advantage@@ of your hormone induced kindness, though your care @@.mediumaquamarine;builds $his trust in you.@@
 			<<set $slaves[$i].devotion -= 4>>
 			<<set $slaves[$i].trust += 4>>
 		<<else>>
@@ -77,10 +79,10 @@
 
 <<if $slaves[$i].PCKnockedUp > 0 && $slaves[$i].fetish != "mindbroken" && $slaves[$i].fuckdoll == 0 && $slaves[$i].devotion < -20>>
 	<<set _pregCountFactor = $slaves[$i].PCKnockedUp*5>>
-	$He got you pregnant<<if $slaves[$i].PCKnockedUp > 1>> more than once<</if>> and $he knows it. This is a @@.mediumorchid;huge boost@@ to her ego and gives her a slight edge on you.
+	$He got you pregnant<<if $slaves[$i].PCKnockedUp > 1>> more than once<</if>> and $he knows it. This is a @@.mediumorchid;huge boost@@ to $his ego and gives $him a slight edge on you.
 	<<set $slaves[$i].devotion -= _pregCountFactor>>
 	<<if $slaves[$i].PCChildrenFathered > 0>>
-		Even better; you gave birth to her child<<if $slaves[$i].PCChildrenFathered > 1>>ren<</if>>. To her, $he is the dominant force and you are just a bitch to be bred. $He could create a scandal if $he started running her mouth, something $he lords over you every chance $he gets under the assumption that @@.mediumaquamarine;you'll try to appease her to keep her quiet.@@
+		Even better; you gave birth to $his child<<if $slaves[$i].PCChildrenFathered > 1>>ren<</if>>. To $him, $he is the dominant force and you are just a bitch to be bred. $He could create a scandal if $he started running $his mouth, something $he lords over you every chance $he gets under the assumption that @@.mediumaquamarine;you'll try to appease $him to keep $him quiet.@@
 		<<set $slaves[$i].devotion -= 5+_pregCountFactor, $slaves[$i].trust += 5+_pregCountFactor>>
 	<</if>>
 <</if>>
@@ -89,10 +91,10 @@
 
 <<if $slaves[$i].devotion <= 20 && $slaves[$i].devotion >= -50>>
 	<<if $slaves[$i].trust > 20>>
-		$slaves[$i].slaveName does not like you and believes that you will not punish her severely, and her @@.mediumorchid;regard for you is severely reduced@@ by this lack of respect.
+		$slaves[$i].slaveName does not like you and believes that you will not punish $him severely, and $his @@.mediumorchid;regard for you is severely reduced@@ by this lack of respect.
 		<<set $slaves[$i].devotion -= 4>>
 	<<elseif $slaves[$i].trust >= -20>>
-		$slaves[$i].slaveName neither likes nor fears you, and her @@.mediumorchid;regard for you is reduced@@ by this lack of respect.
+		$slaves[$i].slaveName neither likes nor fears you, and $his @@.mediumorchid;regard for you is reduced@@ by this lack of respect.
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <</if>>
@@ -100,34 +102,34 @@
 <<if $slaves[$i].intelligence != 0>>
 <<if $slaves[$i].intelligence >= 3>>
 	<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-		$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly resists slavery, but since you are giving her personal attention you are able to compensate for her genius.
+		$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly resists slavery, but since you are giving $him personal attention you are able to compensate for $his genius.
 	<<else>>
 		<<if $slaves[$i].trust < -20>>
-			$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly resists slavery, but $he fears you deeply enough that $he consciously forces herself to obey out of self-preservation.
+			$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly resists slavery, but $he fears you deeply enough that $he consciously forces $himself to obey out of self-preservation.
 		<<else>>
-			$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly @@.mediumorchid;resists@@ slavery and encourages her to @@.gold;fear you.@@
+			$slaves[$i].slaveName's @@.deepskyblue;brilliant mind@@ strongly @@.mediumorchid;resists@@ slavery and encourages $him to @@.gold;fear you.@@
 			<<set $slaves[$i].devotion -= 2>>
 			<<set $slaves[$i].trust -= 2>>
 		<</if>>
 	<</if>>
 <<elseif $slaves[$i].intelligence >= 2>>
 	<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-		$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally resists slavery, but since you are giving her personal attention you are able to compensate for her intelligence.
+		$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally resists slavery, but since you are giving $him personal attention you are able to compensate for $his intelligence.
 	<<else>>
 		<<if $slaves[$i].trust < -20>>
-			$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally resists slavery, but $he fears you deeply enough that $he consciously forces herself to obey out of self-preservation.
+			$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally resists slavery, but $he fears you deeply enough that $he consciously forces $himself to obey out of self-preservation.
 		<<else>>
-			$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally @@.mediumorchid;resists@@ slavery and encourages her to @@.gold;fear you.@@
+			$slaves[$i].slaveName's @@.deepskyblue;highly acute mind@@ naturally @@.mediumorchid;resists@@ slavery and encourages $him to @@.gold;fear you.@@
 			<<set $slaves[$i].devotion -= 2>>
 			<<set $slaves[$i].trust -= 2>>
 		<</if>>
 	<</if>>
 <<elseif $slaves[$i].intelligence >= 1>>
 	<<if Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-		$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally resists slavery, but since you are giving her personal attention you are able to compensate for her cleverness.
+		$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally resists slavery, but since you are giving $him personal attention you are able to compensate for $his cleverness.
 	<<else>>
 		<<if $slaves[$i].trust < -20>>
-			$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally resists slavery, but $he fears you deeply enough that $he consciously forces herself to obey out of self-preservation.
+			$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally resists slavery, but $he fears you deeply enough that $he consciously forces $himself to obey out of self-preservation.
 		<<else>>
 			$slaves[$i].slaveName's @@.deepskyblue;intelligent mind@@ naturally @@.mediumorchid;resists@@ slavery.
 			<<set $slaves[$i].devotion -= 2>>
@@ -148,25 +150,25 @@
 <</if>>
 
 <<if ($arcologies[0].FSPaternalistLaw == 1)>>
-	The totally paternalistic society of your arcology encourages her to @@.mediumaquamarine;trust you.@@
+	The totally paternalistic society of your arcology encourages $him to @@.mediumaquamarine;trust you.@@
 	<<set $slaves[$i].trust += 1>>
 <<elseif ($arcologies[0].FSPaternalist >= random(1,120))>>
-	The paternalistic culture of your arcology encourages her to @@.mediumaquamarine;trust you.@@
+	The paternalistic culture of your arcology encourages $him to @@.mediumaquamarine;trust you.@@
 	<<set $slaves[$i].trust += 1>>
 <</if>>
 <<if ($arcologies[0].FSChattelReligionistLaw == 1)>>
-	Your status as the prophet of your theocratic arcology encourages her to @@.mediumaquamarine;trust you.@@
+	Your status as the prophet of your theocratic arcology encourages $him to @@.mediumaquamarine;trust you.@@
 	<<set $slaves[$i].trust += 1>>
 <<elseif ($arcologies[0].FSChattelReligionist >= random(1,120))>>
-	Your arcology's omnipresent religion encourages her to @@.mediumaquamarine;trust you.@@
+	Your arcology's omnipresent religion encourages $him to @@.mediumaquamarine;trust you.@@
 	<<set $slaves[$i].trust += 1>>
 <</if>>
 <<if ($arcologies[0].FSRestart != "unset")>>
 	<<if $slaves[$i].bellyPreg >= 1500 && $slaves[$i].devotion < 20>>
-		Being visibly pregnant in a society that loathes slave breeding fills her with @@.gold;fear@@ for herself and her unborn child. 
+		Being visibly pregnant in a society that loathes slave breeding fills $him with @@.gold;fear@@ for $himself and $his unborn child. 
 		<<set $slaves[$i].trust -= 10>>
 	<<elseif $slaves[$i].pregKnown == 1 && $slaves[$i].devotion < 20>>
-		Being pregnant in a society that loathes slave breeding fills her with @@.gold;worry@@ that you'll harm her or her unborn child. 
+		Being pregnant in a society that loathes slave breeding fills $him with @@.gold;worry@@ that you'll harm $him or $his unborn child. 
 		<<set $slaves[$i].trust -= 5>>
 	<</if>>
 <</if>>
@@ -184,12 +186,12 @@
 		<<set $slaves[$i].origBodyOwnerID = 0>>
 		<<if $slaves[$i].fetish != "mindbroken" && $slaves[$i].fuckdoll == 0>>
 			<<if $slaves[$i].devotion > 20>>
-				$slaves[$i].slaveName is somewhat saddened to see her body leave forever.
+				$slaves[$i].slaveName is somewhat saddened to see $his body leave forever.
 			<<elseif  $slaves[$i].devotion >= -50>>
-				$slaves[$i].slaveName is @@.mediumorchid;disturbed@@ to find her body is gone for good, damaging her @@.gold;ability to trust you.@@
+				$slaves[$i].slaveName is @@.mediumorchid;disturbed@@ to find $his body is gone for good, damaging $his @@.gold;ability to trust you.@@
 				<<set $slaves[$i].devotion -= 30, $slaves[$i].trust -= 30>>
 			<<else>>
-				$slaves[$i].slaveName is @@.mediumorchid;deeply upset@@ that $he'll never see her body again. With so little left, $he finds it easy to take vengeance by @@.orangered;completely rejecting your ownership of her.@@
+				$slaves[$i].slaveName is @@.mediumorchid;deeply upset@@ that $he'll never see $his body again. With so little left, $he finds it easy to take vengeance by @@.orangered;completely rejecting your ownership of $him.@@
 				<<set $slaves[$i].devotion -= 50, $slaves[$i].trust = 100>>
 			<</if>>
 		<</if>>
@@ -200,23 +202,23 @@
 
 <<if ($slaves[$i].indenture > -1)>>
 	<<if $slaves[$i].indenture <= 52>>
-	$He knows that it's less than a year until her indenture ends.
+	$He knows that it's less than a year until $his indenture ends.
 	<<if $slaves[$i].devotion > 95>>
 		Since $he loves you, $he has mixed feelings about the prospect.
 	<<elseif $slaves[$i].devotion >= -20>>
-		The prospect of freedom @@.hotpink;encourages her to submit to your orders@@ and @@.mediumaquamarine;encourages her to be optimistic.@@
+		The prospect of freedom @@.hotpink;encourages $him to submit to your orders@@ and @@.mediumaquamarine;encourages $him to be optimistic.@@
 		<<set $slaves[$i].devotion += 2>>
 		<<set $slaves[$i].trust += 2>>
 	<<else>>
-		The prospect of freedom encourages her to @@.mediumaquamarine;tolerate anything.@@
+		The prospect of freedom encourages $him to @@.mediumaquamarine;tolerate anything.@@
 		<<set $slaves[$i].trust += 2>>
 	<</if>>
 	<<else>>
-	The fact that $he is an indentured servant, not a permanent slave, is never truly far from her mind.
+	The fact that $he is an indentured servant, not a permanent slave, is never truly far from $his mind.
 	<<if $slaves[$i].devotion > 95>>
 		Since $he loves you, $he has mixed feelings about eventual freedom.
 	<<elseif $slaves[$i].devotion >= -20>>
-		The prospect of eventual freedom @@.hotpink;cheers her up@@ and @@.mediumaquamarine;makes her optimistic.@@
+		The prospect of eventual freedom @@.hotpink;cheers $him up@@ and @@.mediumaquamarine;makes $him optimistic.@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
@@ -226,10 +228,10 @@
 	<</if>>
 	<<if $slaves[$i].devotion <= 20>>
 	<<if $slaves[$i].indentureRestrictions >= 2>>
-		$He's also @@.mediumaquamarine;able to rely on the protection@@ of her indenture.
+		$He's also @@.mediumaquamarine;able to rely on the protection@@ of $his indenture.
 		<<set $slaves[$i].trust += 1>>
 	<<elseif $slaves[$i].indentureRestrictions > 1>>
-		$He's also @@.mediumaquamarine;able to trust the restrictions@@ that her indenture places on her treatment.
+		$He's also @@.mediumaquamarine;able to trust the restrictions@@ that $his indenture places on $his treatment.
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 	<</if>>
@@ -239,9 +241,9 @@
 <<if $slaves[$i].actualAge >= $retirementAge-5 && $PhysicalRetirementAgePolicy != 1>>
 <<if ($CitizenRetirement == 1)>>
 	<<if $slaves[$i].actualAge >= $retirementAge-1>>
-	$He knows that it's less than a year until her retirement from sexual slavery into citizenship.
+	$He knows that it's less than a year until $his retirement from sexual slavery into citizenship.
 	<<if $slaves[$i].devotion > 95>>
-		Since $he loves you, $he has mixed feelings about the prospect, but $he prefers to think of it as your way of looking after $him. It's her favorite subject, and her strong feelings about it
+		Since $he loves you, $he has mixed feelings about the prospect, but $he prefers to think of it as your way of looking after $him. It's $his favorite subject, and $his strong feelings about it
 		<<if $arcologies[0].FSPaternalist != "unset">>
 			advances paternalistic ideals and @@.green;improves your reputation.@@
 			<<FSChange "Paternalist" 2>>
@@ -250,11 +252,11 @@
 			<<set $repGain += $FSSingleSlaveRep*2>>
 		<</if>>
 	<<elseif $slaves[$i].devotion >= -20>>
-		The prospect of manumission @@.hotpink;encourages her to submit to slavery@@ and @@.mediumaquamarine;encourages her to be optimistic.@@
+		The prospect of manumission @@.hotpink;encourages $him to submit to slavery@@ and @@.mediumaquamarine;encourages $him to be optimistic.@@
 		<<set $slaves[$i].devotion += 2>>
 		<<set $slaves[$i].trust += 2>>
 	<<else>>
-		The prospect of manumission encourages her to @@.mediumaquamarine;tolerate anything.@@
+		The prospect of manumission encourages $him to @@.mediumaquamarine;tolerate anything.@@
 		<<set $slaves[$i].trust += 2>>
 	<</if>>
 	<<else>>
@@ -269,7 +271,7 @@
 			<<set $repGain += $FSSingleSlaveRep>>
 		<</if>>
 	<<elseif $slaves[$i].devotion >= -20>>
-		The prospect of manumission @@.hotpink;cheers her up@@ and @@.mediumaquamarine;makes her optimistic.@@
+		The prospect of manumission @@.hotpink;cheers $him up@@ and @@.mediumaquamarine;makes $him optimistic.@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
@@ -279,7 +281,7 @@
 	<</if>>
 <<elseif ($BioreactorRetirement == 1)>>
 	<<if $slaves[$i].actualAge >= $retirementAge-1>>
-	$He knows that it's less than a year until her permanent inclusion in the arcology's milk production systems.
+	$He knows that it's less than a year until $his permanent inclusion in the arcology's milk production systems.
 	<<if $slaves[$i].devotion > 95>>
 		Since $he loves you, $he desperately tries not to think about it, though $he occasionally bursts into tears without provocation.
 	<<elseif $slaves[$i].devotion > 20>>
@@ -291,14 +293,14 @@
 		<<set $slaves[$i].trust -= 3>>
 	<</if>>
 	<<else>>
-	$He knows that her permanent inclusion in the arcology's milk production systems is not far off.
+	$He knows that $his permanent inclusion in the arcology's milk production systems is not far off.
 	<<if $slaves[$i].devotion > 95>>
 		Since $he loves you, $he tries not to think about it, though $he occasionally seems preoccupied.
 	<<elseif $slaves[$i].devotion > 20>>
-		The prospect @@.gold;scares her.@@
+		The prospect @@.gold;scares $him.@@
 		<<set $slaves[$i].trust -= 2>>
 	<<else>>
-		The prospect @@.gold;scares@@ and @@.mediumorchid;disgusts her.@@
+		The prospect @@.gold;scares@@ and @@.mediumorchid;disgusts $him.@@
 		<<set $slaves[$i].devotion -= 2>>
 		<<set $slaves[$i].trust -= 2>>
 	<</if>>
@@ -317,14 +319,14 @@
 		<<set $slaves[$i].trust -= 3>>
 	<</if>>
 	<<else>>
-	$He knows that her ultimate fate as a Fuckdoll is not far off.
+	$He knows that $his ultimate fate as a Fuckdoll is not far off.
 	<<if $slaves[$i].devotion > 95>>
 		Since $he loves you, $he tries not to think about it, though $he occasionally seems preoccupied.
 	<<elseif $slaves[$i].devotion > 20>>
-		The prospect @@.gold;scares her.@@
+		The prospect @@.gold;scares $him.@@
 		<<set $slaves[$i].trust -= 2>>
 	<<else>>
-		The prospect @@.gold;scares@@ and @@.mediumorchid;disgusts her.@@
+		The prospect @@.gold;scares@@ and @@.mediumorchid;disgusts $him.@@
 		<<set $slaves[$i].devotion -= 2>>
 		<<set $slaves[$i].trust -= 2>>
 	<</if>>
@@ -333,9 +335,9 @@
 <<elseif $slaves[$i].physicalAge >= $retirementAge-5 && $PhysicalRetirementAgePolicy == 1>>
 <<if ($CitizenRetirement == 1)>>
 	<<if $slaves[$i].physicalAge >= $retirementAge-1>>
-	$He knows that it's less than a year until her retirement from sexual slavery into citizenship.
+	$He knows that it's less than a year until $his retirement from sexual slavery into citizenship.
 	<<if $slaves[$i].devotion > 95>>
-		Since $he loves you, $he has mixed feelings about the prospect, but $he prefers to think of it as your way of looking after $him. It's her favorite subject, and her strong feelings about it
+		Since $he loves you, $he has mixed feelings about the prospect, but $he prefers to think of it as your way of looking after $him. It's $his favorite subject, and $his strong feelings about it
 		<<if $arcologies[0].FSPaternalist != "unset">>
 			advances paternalistic ideals and @@.green;improves your reputation.@@
 			<<FSChange "Paternalist" 2>>
@@ -344,11 +346,11 @@
 			<<set $repGain += $FSSingleSlaveRep*2>>
 		<</if>>
 	<<elseif $slaves[$i].devotion >= -20>>
-		The prospect of manumission @@.hotpink;encourages her to submit to slavery@@ and @@.mediumaquamarine;encourages her to be optimistic.@@
+		The prospect of manumission @@.hotpink;encourages $him to submit to slavery@@ and @@.mediumaquamarine;encourages $him to be optimistic.@@
 		<<set $slaves[$i].devotion += 2>>
 		<<set $slaves[$i].trust += 2>>
 	<<else>>
-		The prospect of manumission encourages her to @@.mediumaquamarine;tolerate anything.@@
+		The prospect of manumission encourages $him to @@.mediumaquamarine;tolerate anything.@@
 		<<set $slaves[$i].trust += 2>>
 	<</if>>
 	<<else>>
@@ -363,7 +365,7 @@
 			<<set $repGain += $FSSingleSlaveRep>>
 		<</if>>
 	<<elseif $slaves[$i].devotion >= -20>>
-		The prospect of manumission @@.hotpink;cheers her up@@ and @@.mediumaquamarine;makes her optimistic.@@
+		The prospect of manumission @@.hotpink;cheers $him up@@ and @@.mediumaquamarine;makes $him optimistic.@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
@@ -373,7 +375,7 @@
 	<</if>>
 <<elseif ($BioreactorRetirement == 1)>>
 	<<if $slaves[$i].physicalAge >= $retirementAge-1>>
-	$He knows that it's less than a year until her permanent inclusion in the arcology's milk production systems.
+	$He knows that it's less than a year until $his permanent inclusion in the arcology's milk production systems.
 	<<if $slaves[$i].devotion > 95>>
 		Since $he loves you, $he desperately tries not to think about it, though $he occasionally bursts into tears without provocation.
 	<<elseif $slaves[$i].devotion > 20>>
@@ -385,14 +387,14 @@
 		<<set $slaves[$i].trust -= 3>>
 	<</if>>
 	<<else>>
-	$He knows that her permanent inclusion in the arcology's milk production systems is not far off.
+	$He knows that $his permanent inclusion in the arcology's milk production systems is not far off.
 	<<if $slaves[$i].devotion > 95>>
 		Since $he loves you, $he tries not to think about it, though $he occasionally seems preoccupied.
 	<<elseif $slaves[$i].devotion > 20>>
-		The prospect @@.gold;scares her.@@
+		The prospect @@.gold;scares $him.@@
 		<<set $slaves[$i].trust -= 2>>
 	<<else>>
-		The prospect @@.gold;scares@@ and @@.mediumorchid;disgusts her.@@
+		The prospect @@.gold;scares@@ and @@.mediumorchid;disgusts $him.@@
 		<<set $slaves[$i].devotion -= 2>>
 		<<set $slaves[$i].trust -= 2>>
 	<</if>>
@@ -411,14 +413,14 @@
 		<<set $slaves[$i].trust -= 3>>
 	<</if>>
 	<<else>>
-	$He knows that her ultimate fate as a Fuckdoll is not far off.
+	$He knows that $his ultimate fate as a Fuckdoll is not far off.
 	<<if $slaves[$i].devotion > 95>>
 		Since $he loves you, $he tries not to think about it, though $he occasionally seems preoccupied.
 	<<elseif $slaves[$i].devotion > 20>>
-		The prospect @@.gold;scares her.@@
+		The prospect @@.gold;scares $him.@@
 		<<set $slaves[$i].trust -= 2>>
 	<<else>>
-		The prospect @@.gold;scares@@ and @@.mediumorchid;disgusts her.@@
+		The prospect @@.gold;scares@@ and @@.mediumorchid;disgusts $him.@@
 		<<set $slaves[$i].devotion -= 2>>
 		<<set $slaves[$i].trust -= 2>>
 	<</if>>
@@ -435,10 +437,10 @@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		$He does her best to @@.mediumaquamarine;stay strong,@@
+		$He does $his best to @@.mediumaquamarine;stay strong,@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
-	since $he knows that her freedom is only a few thousand dicks away.
+	since $he knows that $his freedom is only a few thousand dicks away.
 	<</if>>
 <</if>>
 <<if $MilkMilestoneRetirement == 1>>
@@ -448,10 +450,10 @@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		$He does her best to @@.mediumaquamarine;stay strong,@@
+		$He does $his best to @@.mediumaquamarine;stay strong,@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
-	since $he knows $he will be free if her udders can gush just a bit more cream.
+	since $he knows $he will be free if $his udders can gush just a bit more cream.
 	<</if>>
 <</if>>
 <<if $BirthsMilestoneRetirement == 1>>
@@ -461,7 +463,7 @@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		$He does her best to @@.mediumaquamarine;stay strong,@@
+		$He does $his best to @@.mediumaquamarine;stay strong,@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 	since $he knows $he only has to successfully breed a little more to be free.
@@ -474,10 +476,10 @@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust += 1>>
 	<<else>>
-		$He does her best to @@.mediumaquamarine;stay strong,@@
+		$He does $his best to @@.mediumaquamarine;stay strong,@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
-	since $he knows just a bit more murder in the pit will win her freedom.
+	since $he knows just a bit more murder in the pit will win $his freedom.
 	<</if>>
 <</if>>
 <</if>>
@@ -489,11 +491,11 @@
 <<if $personalAttention == "sex">>
 <<if $freeSexualEnergy > 0>>
 	<<if $freeSexualEnergy == 3>>
-		$He gets a lot of sexual attention from you, since you don't have nearly enough dedicated fucktoys to sate your libido, and this @@.hotpink;<<if $slaves[$i].devotion > 50>>intensifies her love for you<<else>>forces her to get used to sex slavery<</if>>.@@
+		$He gets a lot of sexual attention from you, since you don't have nearly enough dedicated fucktoys to sate your libido, and this @@.hotpink;<<if $slaves[$i].devotion > 50>>intensifies $his love for you<<else>>forces $him to get used to sex slavery<</if>>.@@
 	<<elseif $freeSexualEnergy == 2>>
-		$He receives some sexual attention from you, since you don't have enough dedicated fucktoys to sate your libido, and this @@.hotpink;<<if $slaves[$i].devotion > 50>>builds her closeness to you<<else>>gets her used to being your sex slave<</if>>.@@
+		$He receives some sexual attention from you, since you don't have enough dedicated fucktoys to sate your libido, and this @@.hotpink;<<if $slaves[$i].devotion > 50>>builds $his closeness to you<<else>>gets $him used to being your sex slave<</if>>.@@
 	<<else>>
-		$He receives occasional sexual attention from you, since you barely have enough dedicated fucktoys to sate your libido, @@.hotpink;<<if $slaves[$i].devotion > 50>>making her feel closer to you<<else>>keeping her aware $he's your sex slave<</if>>.@@
+		$He receives occasional sexual attention from you, since you barely have enough dedicated fucktoys to sate your libido, @@.hotpink;<<if $slaves[$i].devotion > 50>>making $him feel closer to you<<else>>keeping $him aware $he's your sex slave<</if>>.@@
 	<</if>>
 	<<set $slaves[$i].devotion += $freeSexualEnergy>>
 	<<set $slaves[$i].oralCount += $freeSexualEnergy>>
@@ -557,25 +559,25 @@
 <</if>>
 <<if _collectiveDevotionEffect == 1>>
 	<<if _collectiveTrustEffect == 1>>
-		Since $he's ambivalent and fearful, the @@.hotpink;collective devotion@@ @@.mediumaquamarine;and trust@@ of your slaves affect her slightly.
+		Since $he's ambivalent and fearful, the @@.hotpink;collective devotion@@ @@.mediumaquamarine;and trust@@ of your slaves affect $him slightly.
 	<<elseif _collectiveTrustEffect == 0>>
-		Since $he's ambivalent about you, the @@.hotpink;collective devotion@@ your slaves feel for you affects her slightly.
+		Since $he's ambivalent about you, the @@.hotpink;collective devotion@@ your slaves feel for you affects $him slightly.
 	<<else>>
-		Since $he's ambivalent about you, the @@.hotpink;collective devotion@@ your slaves feel for you affects her slightly, but their @@.gold;general fear@@ affects her too.
+		Since $he's ambivalent about you, the @@.hotpink;collective devotion@@ your slaves feel for you affects $him slightly, but their @@.gold;general fear@@ affects $him too.
 	<</if>>
 <<elseif _collectiveDevotionEffect == 0>>
 	<<if _collectiveTrustEffect == 1>>
-		Since $he's fearful of you, the @@.mediumaquamarine;collective trust@@ your slaves place in you affects her slightly.
+		Since $he's fearful of you, the @@.mediumaquamarine;collective trust@@ your slaves place in you affects $him slightly.
 	<<elseif _collectiveTrustEffect == -1>>
-		Since $he doesn't trust you, the @@.gold;collective fear@@ your slaves feel for you affects her slightly.
+		Since $he doesn't trust you, the @@.gold;collective fear@@ your slaves feel for you affects $him slightly.
 	<</if>>
 <<else>>
 	<<if _collectiveTrustEffect == 1>>
-		The @@.mediumorchid;collective anger@@ your slaves feel reinforces her own feelings, but their @@.mediumaquamarine;collective trust@@ also affects her slightly.
+		The @@.mediumorchid;collective anger@@ your slaves feel reinforces $his own feelings, but their @@.mediumaquamarine;collective trust@@ also affects $him slightly.
 	<<elseif _collectiveTrustEffect == 0>>
-		The @@.mediumorchid;collective anger@@ your slaves feel reinforces her own feelings.
+		The @@.mediumorchid;collective anger@@ your slaves feel reinforces $his own feelings.
 	<<else>>
-		The @@.mediumorchid;collective anger@@ @@.gold;and fear@@ your slaves feel reinforce her own feelings.
+		The @@.mediumorchid;collective anger@@ @@.gold;and fear@@ your slaves feel reinforce $his own feelings.
 	<</if>>
 <</if>>
 <</if>>
@@ -583,7 +585,7 @@
 <<if $slaves[$i].assignmentVisible == 1>>
 <<if ($arcade != 0) || (($dairy != 0) && ($dairyRestraintsSetting >= 2))>>
 	<<if $slaves[$i].devotion <= 95>>
-		$He knows about <<if $arcade != 0>>$arcadeName<<if ($dairy != 0) && ($dairyRestraintsSetting >= 2)>> and $dairyName<</if>><<else>>$dairyName<</if>>, and @@.gold;fears@@ that you might send her there.
+		$He knows about <<if $arcade != 0>>$arcadeName<<if ($dairy != 0) && ($dairyRestraintsSetting >= 2)>> and $dairyName<</if>><<else>>$dairyName<</if>>, and @@.gold;fears@@ that you might send $him there.
 		<<set $slaves[$i].trust -= 1>>
 	<<else>>
 		$He knows some of your other slaves meet terrible, industrial fates, but $he loves you so much that $he tries not to think about it.
@@ -596,44 +598,44 @@
 <<if $slaves[$i].trust >= -20>>
 <<if $slaves[$i].devotion > 95>>
 	<<if $slaves[$i].trust <= 20>>
-		$slaves[$i].slaveName loves you, so $he finds herself @@.mediumaquamarine;fearing you a little less.@@
+		$slaves[$i].slaveName loves you, so $he finds $himself @@.mediumaquamarine;fearing you a little less.@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif $slaves[$i].trust <= 50>>
-		$slaves[$i].slaveName loves you, so $he finds herself @@.mediumaquamarine;trusting you a little more.@@
+		$slaves[$i].slaveName loves you, so $he finds $himself @@.mediumaquamarine;trusting you a little more.@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 <<elseif $slaves[$i].devotion > 60>>
 	<<if $slaves[$i].trust <= 20>>
-		$slaves[$i].slaveName is devoted to you, so $he finds herself @@.mediumaquamarine;fearing you a little less.@@
+		$slaves[$i].slaveName is devoted to you, so $he finds $himself @@.mediumaquamarine;fearing you a little less.@@
 		<<set $slaves[$i].trust += 1>>
 	<</if>>
 <<elseif $slaves[$i].devotion < -50>>
 	<<if $slaves[$i].trust > 20>>
-		$slaves[$i].slaveName hates you, but also doesn't fear you, @@.orangered;bolstering her disobedience.@@
+		$slaves[$i].slaveName hates you, but also doesn't fear you, @@.orangered;bolstering $his disobedience.@@
 		<<set $slaves[$i].trust += 5>>
 	<<else>>
-		$slaves[$i].slaveName hates you, so $he finds herself @@.gold;trusting you a little less.@@
+		$slaves[$i].slaveName hates you, so $he finds $himself @@.gold;trusting you a little less.@@
 		<<set $slaves[$i].trust -= 2>>
 	<</if>>
 <</if>>
 <</if>>
 <<if $slaves[$i].trust > 95>>
 	<<if $slaves[$i].devotion <= -20>>
-		$slaves[$i].slaveName feels no threat from you, so $he finds it easy to @@.mediumorchid;express her hatred of you.@@
+		$slaves[$i].slaveName feels no threat from you, so $he finds it easy to @@.mediumorchid;express $his hatred of you.@@
 		<<set $slaves[$i].devotion -= 10>>
 	<<elseif $slaves[$i].devotion <= 20>>
-		$slaves[$i].slaveName trusts you implicitly, so $he finds herself @@.hotpink;hating you a little less.@@
+		$slaves[$i].slaveName trusts you implicitly, so $he finds $himself @@.hotpink;hating you a little less.@@
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif $slaves[$i].devotion <= 50>>
-		$slaves[$i].slaveName trusts you implicitly, so $he finds herself @@.hotpink;liking you a little more.@@
+		$slaves[$i].slaveName trusts you implicitly, so $he finds $himself @@.hotpink;liking you a little more.@@
 		<<set $slaves[$i].devotion += 1>>
 	<</if>>
 <<elseif $slaves[$i].trust > 50>>
 	<<if $slaves[$i].devotion <= -20>>
-		$slaves[$i].slaveName finds you non-threatening, so it's easy for her to @@.mediumorchid;defy you.@@
+		$slaves[$i].slaveName finds you non-threatening, so it's easy for $him to @@.mediumorchid;defy you.@@
 		<<set $slaves[$i].devotion -= 5>>
 	<<elseif $slaves[$i].devotion <= 20>>
-		$slaves[$i].slaveName trusts you, so $he finds herself @@.hotpink;hating you a little less.@@
+		$slaves[$i].slaveName trusts you, so $he finds $himself @@.hotpink;hating you a little less.@@
 		<<set $slaves[$i].devotion += 1>>
 	<</if>>
 <<elseif $slaves[$i].trust < -50>>
@@ -654,14 +656,14 @@
 
 <<if ($slaves[$i].tankBaby > 0)>>
 	<<if ($slaves[$i].devotion <= 95)>>
-		The tank's imprinting systems left a @@.hotpink;deep, subconscious <<if $activeSlave.tankBaby == 2>>need<<else>>desire<</if>>@@ to serve her owner.
+		The tank's imprinting systems left a @@.hotpink;deep, subconscious <<if $activeSlave.tankBaby == 2>>need<<else>>desire<</if>>@@ to serve $his owner.
 	<</if>>
 <</if>>
 
 <<if ($slaves[$i].sexualQuirk == "unflinching")>>
 	<<if ($slaves[$i].devotion <= 95)>>
 	<<if ($slaves[$i].devotion < $slaves[$i].oldDevotion)>>
-	$His unflinching nature leads her to forget some of the unpleasant things $he's experienced this week, @@.hotpink;reducing their impact on her feelings about you.@@
+	$His unflinching nature leads $him to forget some of the unpleasant things $he's experienced this week, @@.hotpink;reducing their impact on $his feelings about you.@@
 	<<set $slaves[$i].devotion += ($slaves[$i].oldDevotion - $slaves[$i].devotion)/2>>
 	<</if>>
 	<</if>>
@@ -670,37 +672,37 @@
 /* CAPS ON DEVOTION GAIN */
 
 <<if $slaves[$i].tankBaby == 1>>
-	The incubation facility conditioned her mind for total subservience to her owner; $he cannot resist her progress.
+	The incubation facility conditioned $his mind for total subservience to $his owner; $he cannot resist $his progress.
 <<elseif $slaves[$i].tankBaby == 2>>
-	The incubation facility conditioned her mind for total reverence of her owner; $he cannot resist her progress.
+	The incubation facility conditioned $his mind for total reverence of $his owner; $he cannot resist $his progress.
 <<elseif $slaves[$i].devotion >= -20>>
 	<<if $slaves[$i].devotion >= ($slaves[$i].oldDevotion+5)>>
 		<<if $slaves[$i].tankBaby == 1>>
-			The incubation facility conditioned her mind for total subservience to her owner; $he cannot resist her progress.
+			The incubation facility conditioned $his mind for total subservience to $his owner; $he cannot resist $his progress.
 		<<elseif $arcologies[0].FSChattelReligionist >= random(1,100)>>
-			The natural resilience of her mind is overcome by the omnipresent combination of faith and servitude in $arcologies[0].name, and $he does not resist her progress down the path towards total subservience.
+			The natural resilience of $his mind is overcome by the omnipresent combination of faith and servitude in $arcologies[0].name, and $he does not resist $his progress down the path towards total subservience.
 		<<elseif Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-			$He gained so much regard for you this week that her natural reaction is to rebound a little, but since you're giving her personal attention, your charismatic presence prevents this.
+			$He gained so much regard for you this week that $his natural reaction is to rebound a little, but since you're giving $him personal attention, your charismatic presence prevents this.
 		<<elseif $slaves[$i].devotion < 95>>
-			So many things served to drive her into subservience this week that her mind @@.mediumorchid;rebounds a little.@@
+			So many things served to drive $him into subservience this week that $his mind @@.mediumorchid;rebounds a little.@@
 			<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 		<</if>>
 	<</if>>
 <<else>>
 	<<if $slaves[$i].devotion >= ($slaves[$i].oldDevotion+5)>>
 	<<if $slaves[$i].tankBaby == 1>>
-		The incubation facility conditioned her mind for total subservience to her owner; $he cannot resist her progress.
+		The incubation facility conditioned $his mind for total subservience to $his owner; $he cannot resist $his progress.
 	<<elseif $slaves[$i].behavioralFlaw == "arrogant">>
-		Though $he made progress this week, @@.mediumorchid;it is limited by her arrogance.@@
+		Though $he made progress this week, @@.mediumorchid;it is limited by $his arrogance.@@
 		<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 	<<elseif ($slaves[$i].behavioralFlaw == "bitchy") && canTalk($slaves[$i])>>
 		Though $he made progress this week, @@.mediumorchid;it is limited by the independence $he regains by making snide comments.@@
 		<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 	<<elseif $slaves[$i].behavioralFlaw == "devout">>
-		Though $he made progress this week, @@.mediumorchid;it is limited by the independence $he regains through reliance on her faith.@@
+		Though $he made progress this week, @@.mediumorchid;it is limited by the independence $he regains through reliance on $his faith.@@
 		<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 	<<elseif $slaves[$i].behavioralFlaw == "liberated">>
-		Though $he made progress this week, @@.mediumorchid;it is limited by the independence $he retains due to her moral convictions that this is wrong.@@
+		Though $he made progress this week, @@.mediumorchid;it is limited by the independence $he retains due to $his moral convictions that this is wrong.@@
 		<<set $slaves[$i].devotion = ($slaves[$i].oldDevotion+5)>>
 	<</if>>
 	<</if>>
@@ -711,11 +713,11 @@
 <<if $slaves[$i].trust > -20>>
 	<<if $slaves[$i].trust >= ($slaves[$i].oldTrust+5)>>
 		<<if $slaves[$i].tankBaby == 1>>
-			Any natural doubts $he has are overcome by her conditioning in the incubation facility; $he cannot resist trusting her owner.
+			Any natural doubts $he has are overcome by $his conditioning in the incubation facility; $he cannot resist trusting $his owner.
 		<<elseif $arcologies[0].FSChattelReligionist >= random(1,100)>>
-			Any natural doubts $he harbors are overcome by her belief in Chattel Religionism, and $he does not resist her progress down the path towards total trust in you.
+			Any natural doubts $he harbors are overcome by $his belief in Chattel Religionism, and $he does not resist $his progress down the path towards total trust in you.
 		<<elseif Array.isArray($personalAttention) && $personalAttention.findIndex(function(s) { return s.ID == $slaves[$i].ID; }) != -1>>
-			$He gained so much trust in you this week that her natural reaction is to doubt herself, but since you're giving her personal attention, $he decides to trust her understanding of your will.
+			$He gained so much trust in you this week that $his natural reaction is to doubt $himself, but since you're giving $him personal attention, $he decides to trust $his understanding of your will.
 		<<elseif $slaves[$i].trust < 95>>
 			$He gained so much trust in you this week that $he @@.gold;draws back a little@@ out of self-doubt.
 			<<set $slaves[$i].trust = ($slaves[$i].oldTrust+5)>>
@@ -724,9 +726,9 @@
 <<else>>
 	<<if $slaves[$i].trust >= ($slaves[$i].oldTrust+5)>>
 	<<if $slaves[$i].tankBaby == 1>>
-		Any natural doubts $he has are overcome by her conditioning in the incubation facility; $he cannot resist trusting her owner.
+		Any natural doubts $he has are overcome by $his conditioning in the incubation facility; $he cannot resist trusting $his owner.
 	<<elseif ($slaves[$i].behavioralFlaw == "odd") && ($slaves[$i].collar != "shock punishment")>>
-		Though $he made progress this week, @@.gold;it is limited by her preoccupation with her own oddities.@@
+		Though $he made progress this week, @@.gold;it is limited by $his preoccupation with $his own oddities.@@
 		<<set $slaves[$i].trust = ($slaves[$i].oldTrust+5)>>
 	<</if>>
 	<</if>>
@@ -774,30 +776,30 @@
 	<</if>>
 <</if>>
 <<if ($energyPlus > 0)>>
-	$His confidence in her sexuality @@.green;improved her low sex drive.@@
+	$His confidence in $his sexuality @@.green;improved $his low sex drive.@@
 	<<set $slaves[$i].energy += $energyPlus>>
 <</if>>
 
 <<if ($slaves[$i].devotion > 95)>>
-	$slaves[$i].slaveName's @@.magenta;worshipfulness is beyond improvement,@@ and her
+	$slaves[$i].slaveName's @@.magenta;worshipfulness is beyond improvement,@@ and $his
 <<elseif ($slaves[$i].devotion > 50) && ($slaves[$i].devotion > $slaves[$i].oldDevotion)>>
-	$slaves[$i].slaveName's @@.hotpink;devotion increased@@ and her
+	$slaves[$i].slaveName's @@.hotpink;devotion increased@@ and $his
 <<elseif ($slaves[$i].devotion > 50) && ($slaves[$i].devotion == $slaves[$i].oldDevotion)>>
-	$slaves[$i].slaveName's @@.yellow;devotion did not change@@ and her
+	$slaves[$i].slaveName's @@.yellow;devotion did not change@@ and $his
 <<elseif ($slaves[$i].devotion > 50)>>
-	$slaves[$i].slaveName's @@.mediumorchid;devotion dropped@@ and her
+	$slaves[$i].slaveName's @@.mediumorchid;devotion dropped@@ and $his
 <<elseif ($slaves[$i].devotion >= -20) && ($slaves[$i].devotion > $slaves[$i].oldDevotion)>>
-	$slaves[$i].slaveName's @@.hotpink;regard for you increased@@ and her
+	$slaves[$i].slaveName's @@.hotpink;regard for you increased@@ and $his
 <<elseif ($slaves[$i].devotion >= -20) && ($slaves[$i].devotion == $slaves[$i].oldDevotion)>>
-	$slaves[$i].slaveName's @@.yellow;regard for you did not change@@ and her
+	$slaves[$i].slaveName's @@.yellow;regard for you did not change@@ and $his
 <<elseif ($slaves[$i].devotion >= -20)>>
-	$slaves[$i].slaveName's @@.mediumorchid;regard for you dropped@@ and her
+	$slaves[$i].slaveName's @@.mediumorchid;regard for you dropped@@ and $his
 <<elseif ($slaves[$i].devotion > $slaves[$i].oldDevotion)>>
-	$slaves[$i].slaveName's @@.hotpink;resistance dropped@@ and her
+	$slaves[$i].slaveName's @@.hotpink;resistance dropped@@ and $his
 <<elseif ($slaves[$i].devotion == $slaves[$i].oldDevotion)>>
-	$slaves[$i].slaveName's @@.yellow;resistance did not change@@ and her
+	$slaves[$i].slaveName's @@.yellow;resistance did not change@@ and $his
 <<else>>
-	$slaves[$i].slaveName's @@.mediumorchid;resistance increased@@ and her
+	$slaves[$i].slaveName's @@.mediumorchid;resistance increased@@ and $his
 <</if>>
 
 <<if $slaves[$i].devotion < -20>>
@@ -835,10 +837,10 @@
 <</if>>
 
 <<if ($slaves[$i].devotion > 50) && ($slaves[$i].oldDevotion <= 50)>>
-	@@.green;$He has gone from accepting her position to being devoted to you!@@
+	@@.green;$He has gone from accepting $his position to being devoted to you!@@
 	<<set $slaves[$i].devotion += 1>>
 <<elseif ($slaves[$i].devotion > 20) && ($slaves[$i].oldDevotion <= 20)>>
-	@@.green;$He has gone from being ambivalent toward you to accepting your ownership of her!@@
+	@@.green;$He has gone from being ambivalent toward you to accepting your ownership of $him!@@
 	<<set $slaves[$i].devotion += 1>>
 <<elseif ($slaves[$i].devotion >= -20) && ($slaves[$i].oldDevotion < -20)>>
 	@@.green;$He has gone from disliking you to being ambivalent about you!@@
diff --git a/src/uncategorized/saDiet.tw b/src/uncategorized/saDiet.tw
index 0f52135aeda..cf5c111b065 100644
--- a/src/uncategorized/saDiet.tw
+++ b/src/uncategorized/saDiet.tw
@@ -1,5 +1,7 @@
 :: SA diet [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<if $slaves[$i].fuckdoll == 0>>
 
 <<if $feeder == 1>>
diff --git a/src/uncategorized/saGetMilked.tw b/src/uncategorized/saGetMilked.tw
index 6762e5a4eb8..af07ea574a6 100644
--- a/src/uncategorized/saGetMilked.tw
+++ b/src/uncategorized/saGetMilked.tw
@@ -1,5 +1,7 @@
 :: SA get milked [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <!-- Statistics gathering -->
 <<set _incomeStats = getSlaveStatisticData($slaves[$i], $slaves[$i].assignment === Job.DAIRY ? $facility.dairy : undefined)>>
 <<set _incomeStats.milk = 0; _incomeStats.cum = 0; _incomeStats.fluid = 0>>
diff --git a/src/uncategorized/saGuardsYou.tw b/src/uncategorized/saGuardsYou.tw
index 50dc26d0cda..39853b9da8c 100644
--- a/src/uncategorized/saGuardsYou.tw
+++ b/src/uncategorized/saGuardsYou.tw
@@ -1,5 +1,7 @@
 :: SA guard you [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 carries arms in your defense.
 
 <<if $dojo > 1>>
diff --git a/src/uncategorized/saHormoneEffects.tw b/src/uncategorized/saHormoneEffects.tw
index 072eff184d0..32b284e1449 100644
--- a/src/uncategorized/saHormoneEffects.tw
+++ b/src/uncategorized/saHormoneEffects.tw
@@ -1,5 +1,7 @@
 :: SA hormone effects [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<if $slaves[$i].hormoneBalance <= -400>>
 	$His hormone balance is overwhelmingly masculine.
 <<elseif $slaves[$i].hormoneBalance <= -300>>
diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw
index b9cc5f13edc..b5c7974b4fe 100644
--- a/src/uncategorized/saLiveWithHG.tw
+++ b/src/uncategorized/saLiveWithHG.tw
@@ -1,5 +1,7 @@
 :: SA live with HG [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<set $HeadGirl = $slaves[_iTemp]>>
 <<set _oralUse = 0, _analUse = 0, _vaginalUse = 0, _mammaryUse = 0, _penetrativeUse = 0>>
 
@@ -26,7 +28,7 @@
 <<if ($HeadGirl.fetish == "sadist") && ($HeadGirl.fetishStrength > 60) && ($HeadGirl.fetishKnown == 1)>>
 	Since $HeadGirl.slaveName is a sadist, poor $slaves[$i].slaveName lives a life of fear and pain.
 	<<if ($slaves[$i].energy > 95)>>
-		Though it's hard, she manages to find @@.hotpink;sexual satisfaction@@ being a pain slave.
+		Though it's hard, $he manages to find @@.hotpink;sexual satisfaction@@ being a pain slave.
 		<<set $slaves[$i].devotion += 4>>
 		<<set $slaves[$i].need = 0>>
 	<<elseif ($slaves[$i].fetish == "masochist")>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index a37dc8ddd49..21f1070be6f 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -1,5 +1,7 @@
 :: SA long term effects [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<set _fetishChangeChance = fetishChangeChance($slaves[$i])>>
 <<set $bellyAccessory = $slaves[$i].bellyAccessory>>
 <<set _para = 0>>
@@ -7,23 +9,23 @@
 
 <<if $slaves[$i].fuckdoll > 0>>
 <<if $slaves[$i].fuckdoll >= 100>>
-	It is perfectly adapted to life in a Fuckdoll suit.
+	$He is perfectly adapted to life in a Fuckdoll suit.
 <<else>>
 	<<if $slaves[$i].fuckdoll <= 5>>
-		This is its first week as a living sex toy. It is @@.mediumorchid;utterly terrified@@ by the prospect of spending the rest of its life like this. It is @@.green;forced to adapt@@ to life as a Fuckdoll. It must remain still, and do its best to cooperate with anyone who guides it by touch. When it obeys commands relayed by its suit, it is rewarded with orgasms; when it does not, it is punished with pain.
+		This is its first week as a living sex toy. $He is @@.mediumorchid;utterly terrified@@ by the prospect of spending the rest of its life like this. It is @@.green;forced to adapt@@ to life as a Fuckdoll. It must remain still, and do its best to cooperate with anyone who guides it by touch. When $he obeys commands relayed by its suit, it is rewarded with orgasms; when it does not, it is punished with pain.
 		<<set $slaves[$i].trust -= 10>>
 		<<if $slaves[$i].entertainSkill > 50>>
 			It @@.red;begins to forget its entertainment skills@@ under the terrible stress of total confinement.
 			<<set $slaves[$i].entertainSkill = 50>>
 		<</if>>
 	<<elseif $slaves[$i].fuckdoll <= 15>>
-		This is its second week as a living sex toy. Its suit continues its training as a living sex toy, @@.green;forcing it to accept any treatment@@ it is subjected to. Though the suit is capable of resisting unacceptable movement to a degree, and it includes integral shackles to secure the toy in any position desired, the Fuckdoll is now severely punished if it attempts any resistance at all.
+		This is $his second week as a living sex toy. Its suit continues its training as a living sex toy, @@.green;forcing it to accept any treatment@@ it is subjected to. Though the suit is capable of resisting unacceptable movement to a degree, and it includes integral shackles to secure the toy in any position desired, the Fuckdoll is now severely punished if it attempts any resistance at all.
 		<<if $slaves[$i].whoreSkill > 50>>
 			It @@.red;loses its refined courtesanship,@@ since all it has to remember now is how to be used.
 			<<set $slaves[$i].whoreSkill = 50>>
 		<</if>>
 	<<elseif $slaves[$i].fuckdoll <= 25>>
-		This week it @@.green;learns the most basic commands@@ its suit can pass, those for simple postures. <<if $slaves[$i].amp == 1>>These are very simple, since it lacks limbs.<<else>>One command directs it to remain standing, but cock its hips to offer its rear hole. Another requires it to get instantly down on all fours and arch its back, offering both its face hole and <<if $slaves[$i].vagina > -1>>lower holes<<else>>rear hole<</if>>.<</if>>
+		This week $he @@.green;learns the most basic commands@@ $his suit can pass, those for simple postures. <<if $slaves[$i].amp == 1>>These are very simple, since it lacks limbs.<<else>>One command directs it to remain standing, but cock its hips to offer its rear hole. Another requires it to get instantly down on all fours and arch its back, offering both its face hole and <<if $slaves[$i].vagina > -1>>lower holes<<else>>rear hole<</if>>.<</if>>
 		<<if $slaves[$i].behavioralQuirk != "none">>
 			With no stimulation other than use, it @@.red;quickly forgets what used to make its behavior special.@@
 			<<set $slaves[$i].behavioralQuirk = "none">>
@@ -75,7 +77,7 @@
 			<<set $slaves[$i].fetish = "none", $slaves[$i].fetishStrength = 0>>
 		<</if>>
 		<<if $slaves[$i].intelligence > 1>>
-			It was once highly intelligent, but total concentration of all its mental abilities on simple tonal commands @@.red;dulls its intelligence.@@
+			$He was once highly intelligent, but total concentration of all $his mental abilities on simple tonal commands @@.red;dulls $his intelligence.@@
 			<<set $slaves[$i].intelligence = 1>>
 		<</if>>
 	<<elseif $slaves[$i].fuckdoll <= 85>>
@@ -116,13 +118,13 @@
 <<case "no clothing">>
 <<if $slaves[$i].devotion >= -20>>
 	<<if ($slaves[$i].fetish == "humiliation") && ($slaves[$i].fetishKnown == 0)>>
-		$He pretends to be embarrassed by her nudity but seems to get off on it. @@.lightcoral;$He's into humiliation.@@
+		$He pretends to be embarrassed by $his nudity but seems to get off on it. @@.lightcoral;$He's into humiliation.@@
 		<<set $slaves[$i].fetishKnown = 1>>
 	<<elseif ($slaves[$i].fetish == "humiliation") && ($slaves[$i].fetishStrength > 60)>>
-		$He pretends to be embarrassed by her nudity but @@.hotpink;openly gets off on it.@@
+		$He pretends to be embarrassed by $his nudity but @@.hotpink;openly gets off on it.@@
 		<<set $slaves[$i].devotion += 2>>
 	<<elseif ($slaves[$i].fetish == "humiliation")>>
-		$He pretends to be embarrassed by her nudity but @@.hotpink;secretly gets off on it.@@
+		$He pretends to be embarrassed by $his nudity but @@.hotpink;secretly gets off on it.@@
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif ($slaves[$i].energy > 95)>>
 		$His libido is so strong that $he @@.hotpink;enjoys being naked and available.@@
@@ -130,7 +132,7 @@
 	<</if>>
 <</if>>
 <<case "a penitent nuns habit">>
-	The mortification of the flesh $he endures from wearing her sackcloth habit slowly and painfully @@.hotpink;purifies her mind@@ of any but devoted, @@.gold;fearful@@ thoughts. It's also @@.red;unhealthy.@@
+	The mortification of the flesh $he endures from wearing $his sackcloth habit slowly and painfully @@.hotpink;purifies $his mind@@ of any but devoted, @@.gold;fearful@@ thoughts. It's also @@.red;unhealthy.@@
 	<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 2, $slaves[$i].health -= 3>>
 	<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
 		$His chafed skin makes sex an agonizing prospect. $He seems to get off on the pain; $he's a @@.lightcoral;natural masochist.@@
@@ -143,54 +145,54 @@
 	<</if>>
 <<case "uncomfortable straps">>
 	<<if ($slaves[$i].devotion >= -20) && ($slaves[$i].fetish == "masochist") && $slaves[$i].fetishKnown == 1>>
-		The uncomfortable straps $he's wearing constantly give her little twinges of pain, @@.hotpink;titillating her.@@
+		The uncomfortable straps $he's wearing constantly give $him little twinges of pain, @@.hotpink;titillating $him.@@
 		<<set $slaves[$i].devotion += 2>>
 	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -50)>>
-		The uncomfortable straps $he's wearing keep her @@.hotpink;servile@@ and @@.gold;afraid.@@
+		The uncomfortable straps $he's wearing keep $him @@.hotpink;servile@@ and @@.gold;afraid.@@
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 1>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-			The straps pinch and constrict her whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
+			The straps pinch and constrict $him whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				The straps pinch and constrict her whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
+				The straps pinch and constrict $him whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
 				<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-			$His straps pinch and constrict her whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
+			$His straps pinch and constrict $him whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				$His straps pinch and constrict her whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
+				$His straps pinch and constrict $him whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
 				<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
 	<</if>>
 <<case "chains">>
 	<<if ($slaves[$i].devotion >= -20) && ($slaves[$i].fetish == "masochist") && $slaves[$i].fetishKnown == 1>>
-		The chains $he's wearing constantly give her little twinges of pain, @@.hotpink;titillating her.@@
+		The chains $he's wearing constantly give $him little twinges of pain, @@.hotpink;titillating $him.@@
 		<<set $slaves[$i].devotion += 2>>
 	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -50)>>
-		The chains $he's wearing keep her @@.hotpink;servile@@ and @@.gold;afraid.@@
+		The chains $he's wearing keep $him @@.hotpink;servile@@ and @@.gold;afraid.@@
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 1>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-			$His chains pinch and constrict her whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
+			$His chains pinch and constrict $him whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				$His chains pinch and constrict her whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
+				$His chains pinch and constrict $him whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
 				<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 0)>>
-			$His chains pinch and constrict her whenever $he's used.  $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
+			$His chains pinch and constrict $him whenever $he's used. $He seems to get off on the discomfort; $he's a @@.lightcoral;natural masochist.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				$His chains pinch and constrict her whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
+				$His chains pinch and constrict $him whenever $he's used. $He learns to come in spite of, and then @@.lightcoral;because of the discomfort.@@
 				<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
@@ -198,33 +200,33 @@
 <<case "restrictive latex">>
 	<<if ($slaves[$i].devotion >= 20) && ($slaves[$i].trust >= -50) && ($slaves[$i].fetish == "submissive")>>
 		<<if $slaves[$i].fetishKnown == 0>>
-			The latex $he's wearing limits her world to your input and control. $He seems to get off on the lack of control; $he's a @@.lightcoral;total submissive.@@
+			The latex $he's wearing limits $his world to your input and control. $He seems to get off on the lack of control; $he's a @@.lightcoral;total submissive.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetishStrength > 60)>>
 			As a submissive $he @@.hotpink;openly enjoys being immured in latex.@@
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			$His submissive tendencies help her @@.hotpink;enjoy being immured in latex.@@
+			$His submissive tendencies help $him @@.hotpink;enjoy being immured in latex.@@
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].devotion < -20)>>
-		The latex $he's wearing limits her world to @@.hotpink;your input and control@@ and @@.gold;fear@@ of unexpected pain.
+		The latex $he's wearing limits $his world to @@.hotpink;your input and control@@ and @@.gold;fear@@ of unexpected pain.
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 1>>
 	<</if>>
 <<case "shibari ropes">>
 	<<if ($slaves[$i].devotion >= 20) && ($slaves[$i].trust >= -50) && ($slaves[$i].fetish == "submissive")>>
 		<<if $slaves[$i].fetishKnown == 0>>
-			The ropes $he's wearing restrict her and leave her completely helpless. $He seems to get off on the lack of control; $he's a @@.lightcoral;natural submissive.@@
+			The ropes $he's wearing restrict $him and leave $him completely helpless. $He seems to get off on the lack of control; $he's a @@.lightcoral;natural submissive.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetishStrength > 60)>>
 			As a submissive $he @@.hotpink;openly enjoys wearing binding ropes as clothing.@@
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			$His submissive tendencies help her @@.hotpink;enjoy wearing binding ropes as clothing.@@
+			$His submissive tendencies help $him @@.hotpink;enjoy wearing binding ropes as clothing.@@
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].devotion < -20)>>
-		The ropes $he's wearing restrict her without pain, rendering her @@.hotpink;susceptible to control@@ and @@.gold;afraid.@@
+		The ropes $he's wearing restrict $him without pain, rendering $him @@.hotpink;susceptible to control@@ and @@.gold;afraid.@@
 		<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 1>>
 	<</if>>
 <<case "an apron">>
@@ -406,67 +408,67 @@
 <<if $slaves[$i].collar == "preg biometrics">>
 	<<if $slaves[$i].fetish == "pregnancy" && $slaves[$i].fetishKnown == 1>>
 		<<if $slaves[$i].preg < -1>>
-			$His collar's display reveals all sorts of personal information about her womb, which as an infertile pregnancy fetishist, is @@.mediumorchid;crippling@@ to $him.
+			$His collar's display reveals all sorts of personal information about $his womb, which as an infertile pregnancy fetishist, is @@.mediumorchid;crippling@@ to $him.
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His collar's display reveals all sorts of personal information about her womb, which as a pregnancy fetishist, is @@.hotpink;pleasing@@ to $him.
+			$His collar's display reveals all sorts of personal information about $his womb, which as a pregnancy fetishist, is @@.hotpink;pleasing@@ to $him.
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif $slaves[$i].fetish == "pregnancy" && $slaves[$i].fetishKnown == 0>>
 		<<if $slaves[$i].preg < -1>>
-		$His collar's display reveals all sorts of personal information about her womb, which nearly causes her to have a @@.mediumorchid;mental breakdown@@, painting her as an infertile @@.lightcoral;pregnancy fetishist.@@
+		$His collar's display reveals all sorts of personal information about $his womb, which nearly causes $him to have a @@.mediumorchid;mental breakdown@@, painting $him as an infertile @@.lightcoral;pregnancy fetishist.@@
 		<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-		$His collar's display reveals all sorts of personal information about her womb, @@.hotpink;oddly exciting@@ $him. It would seem $he has a @@.lightcoral;pregnancy fetish!@@
+		$His collar's display reveals all sorts of personal information about $his womb, @@.hotpink;oddly exciting@@ $him. It would seem $he has a @@.lightcoral;pregnancy fetish!@@
 		<<set $slaves[$i].devotion += 1>>
 		<</if>>
 		<<set $slaves[$i].fetishKnown = 1>>
 	<<elseif  $slaves[$i].fetish == "humiliation" && $slaves[$i].fetishKnown == 1>>
-		$His collar's display reveals all sorts of personal information about her womb, which is completely humiliating, and @@.hotpink;pleasing@@ to $him.
+		$His collar's display reveals all sorts of personal information about $his womb, which is completely humiliating, and @@.hotpink;pleasing@@ to $him.
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif  $slaves[$i].fetish == "humiliation" && $slaves[$i].fetishKnown == 0>>
-		$His collar's display reveals all sorts of personal information about her womb, which is completely humiliating, and @@.hotpink;oddly pleasing@@ to $him. $He seems to have a @@.lightcoral;humiliation fetish!@@
+		$His collar's display reveals all sorts of personal information about $his womb, which is completely humiliating, and @@.hotpink;oddly pleasing@@ to $him. $He seems to have a @@.lightcoral;humiliation fetish!@@
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].fetishKnown = 1>>
 	<<elseif $slaves[$i].devotion <= -20>>
-		$His collar's display reveals all sorts of personal information about her fertility, filling her @@.mediumorchid;with disgust@@ that you that you consider her womb little more than property, as well as @@.gold;fear@@ that it will soon be swelling with an unwelcome child.
+		$His collar's display reveals all sorts of personal information about $his fertility, filling $him @@.mediumorchid;with disgust@@ that you that you consider $his womb little more than property, as well as @@.gold;fear@@ that it will soon be swelling with an unwelcome child.
 		<<set $slaves[$i].devotion -= 2>>
 		<<set $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].devotion <= 20)>>
-		$His collar's display reveals all sorts of personal information about her womb, completely @@.hotpink;degrading her@@ and making her @@.gold;fear@@ her new life.
+		$His collar's display reveals all sorts of personal information about $his womb, completely @@.hotpink;degrading $him@@ and making $him @@.gold;fear@@ $his new life.
 		<<set $slaves[$i].devotion += 1>>
 		<<set $slaves[$i].trust -= 2>>
 	<<elseif $slaves[$i].devotion >= 20>>
-		$His collar's display reveals all sorts of personal information about her womb, filling her @@.hotpink;with pride@@ that you think her womb is worth attention.
+		$His collar's display reveals all sorts of personal information about $his womb, filling $him @@.hotpink;with pride@@ that you think $his womb is worth attention.
 		<<set $slaves[$i].devotion += 1>>
 	<</if>>
 <<elseif ($slaves[$i].devotion <= 20)>>
 	<<if ($slaves[$i].devotion <= 20) && (($slaves[$i].collar == "tight steel") || ($slaves[$i].collar == "cruel retirement counter"))>>
-		The tight metal collar $he's wearing @@.gold;reminds her to be afraid@@ every time $he takes a breath.
+		The tight metal collar $he's wearing @@.gold;reminds $him to be afraid@@ every time $he takes a breath.
 		<<set $slaves[$i].trust -= 1>>
 	<<elseif ($slaves[$i].collar == "uncomfortable leather") || ($slaves[$i].collar == "neck corset")>>
-		The uncomfortable leather collar $he's wearing @@.gold;reminds her to be afraid@@ every time $he turns her head.
+		The uncomfortable leather collar $he's wearing @@.gold;reminds $him to be afraid@@ every time $he turns $his head.
 		<<set $slaves[$i].trust -= 1>>
 	<<elseif ($slaves[$i].collar == "dildo gag")>>
-		The dildo gag $he's wearing @@.gold;reminds her to be afraid@@ with every breath $he must carefully take through her nose.
+		The dildo gag $he's wearing @@.gold;reminds $him to be afraid@@ with every breath $he must carefully take through $his nose.
 		<<set $slaves[$i].trust -= 1>>
 	<<elseif ($slaves[$i].collar == "ball gag")>>
-		The ball gag $he's wearing keeps her mouth filled and, since $he can't speak out, forces her @@.hotpink;to submit@@ to your will. $He @@.gold;fears@@ for her safety with every suppressed word.
+		The ball gag $he's wearing keeps $his mouth filled and, since $he can't speak out, forces $him @@.hotpink;to submit@@ to your will. $He @@.gold;fears@@ for $his safety with every suppressed word.
 		<<set $slaves[$i].devotion++, $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].collar == "bit gag")>>
-		The uncomfortable bit gag $he's wearing keeps her mouth locked and, since $he can't speak out, forces her @@.hotpink;to submit@@ to your will. $He @@.gold;fears@@ for her safety with every suppressed word.
+		The uncomfortable bit gag $he's wearing keeps $his mouth locked and, since $he can't speak out, forces $him @@.hotpink;to submit@@ to your will. $He @@.gold;fears@@ for $his safety with every suppressed word.
 		<<set $slaves[$i].devotion++, $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].collar == "porcelain mask")>>
-		The beautiful porcelain mask $he's wearing slowly erodes her identity, forcing her @@.hotpink;to submit@@ to your will. $He @@.gold;questions@@ who $he is.
+		The beautiful porcelain mask $he's wearing slowly erodes $his identity, forcing $him @@.hotpink;to submit@@ to your will. $He @@.gold;questions@@ who $he is.
 		<<set $slaves[$i].devotion++, $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].collar == "massive dildo gag")>>
-		The enormous dildo gag $he's wearing @@.gold;terrifies her@@ that $he will soon be choking down cocks of similar size. $He can feel her throat stretching around the giant dildo, and @@.mediumorchid;resents you@@ for tormenting her this way.
+		The enormous dildo gag $he's wearing @@.gold;terrifies $him@@ that $he will soon be choking down cocks of similar size. $He can feel $his throat stretching around the giant dildo, and @@.mediumorchid;resents you@@ for tormenting $him this way.
 		<<set $slaves[$i].devotion -= 1, $slaves[$i].trust -= 2>>
 	<<elseif ($slaves[$i].collar == "shock punishment")>>
-		The shock collar $he's wearing makes her frequent, deserved punishments @@.gold;immediate, inescapable,@@ and @@.mediumorchid;awful.@@
+		The shock collar $he's wearing makes $his frequent, deserved punishments @@.gold;immediate, inescapable,@@ and @@.mediumorchid;awful.@@
 		<<set $slaves[$i].devotion -= 2, $slaves[$i].trust -= 5>>
 		<<if ($slaves[$i].devotion < -20) && ($slaves[$i].behavioralFlaw != "odd")>>
-			Since $he's rebellious her life is near-constant electroshock torture. $His resistance is @@.hotpink;worn down by the agony@@ and $he is @@.gold;thoroughly cowed,@@ but $he has been @@.red;emotionally damaged@@ by the experience to the extent that further shock torture is not likely to affect her as greatly.
+			Since $he's rebellious $his life is near-constant electroshock torture. $His resistance is @@.hotpink;worn down by the agony@@ and $he is @@.gold;thoroughly cowed,@@ but $he has been @@.red;emotionally damaged@@ by the experience to the extent that further shock torture is not likely to affect $him as greatly.
 			<<set $slaves[$i].devotion += 10>>
 			<<set $slaves[$i].trust -= 10>>
 			<<set $slaves[$i].behavioralFlaw = "odd">>
@@ -477,49 +479,49 @@
 	<</if>>
 <<else>>
 	<<if (($slaves[$i].collar == "heavy gold") || ($slaves[$i].collar == "ancient Egyptian"))>>
-		$He bears the burden of her heavy gold collar with @@.mediumaquamarine;confidence.@@
+		$He bears the burden of $his heavy gold collar with @@.mediumaquamarine;confidence.@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].collar == "bowtie")>>
-		The bowtie and shirt collar $he wears fill her with @@.mediumaquamarine;confidence,@@ since although they conceal a more traditional slave collar that can be used to restrain her, they don't look like it.
+		The bowtie and shirt collar $he wears fill $him with @@.mediumaquamarine;confidence,@@ since although they conceal a more traditional slave collar that can be used to restrain $him, they don't look like it.
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].collar == "pretty jewelry") || ($slaves[$i].collar == "nice retirement counter") || ($slaves[$i].collar == "satin choker") || ($slaves[$i].collar == "nice retirement counter") || ($slaves[$i].collar == "stylish leather") || ($slaves[$i].collar == "silk ribbon")>>
-		The lovely collar $he wears fills her with @@.mediumaquamarine;confidence.@@
+		The lovely collar $he wears fills $him with @@.mediumaquamarine;confidence.@@
 		<<set $slaves[$i].trust += 1>>
 	<<elseif ($slaves[$i].collar == "leather with cowbell")>>
 		<<if ($slaves[$i].fetish == "boobs") && ($slaves[$i].fetishStrength > 95)>>
-		  $He @@.hotpink;loves@@ how her cow collar encourages everyone to fuck her udders.
+		  $He @@.hotpink;loves@@ how $his cow collar encourages everyone to fuck $his udders.
 		  <<set $slaves[$i].devotion += 1>>
 		<<elseif ($slaves[$i].fetish == "boobs") || ($slaves[$i].energy > 95)>>
-		  $He @@.hotpink;likes@@ how her cow collar encourages everyone to touch her udders.
+		  $He @@.hotpink;likes@@ how $his cow collar encourages everyone to touch $his udders.
 		  <<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].collar == "ball gag" || $slaves[$i].collar == "bit gag")>>
 		<<if ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishStrength > 95)>>
-		  $He @@.hotpink;loves@@ how her gag forces her to keep silent.
+		  $He @@.hotpink;loves@@ how $his gag forces $him to keep silent.
 		  <<set $slaves[$i].devotion += 1>>
 		<<elseif ($slaves[$i].fetish == "submissive") || ($slaves[$i].energy > 95)>>
-		  $He @@.hotpink;likes@@ how her gag forces her to keep silent.
+		  $He @@.hotpink;likes@@ how $his gag forces $him to keep silent.
 		  <<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<<elseif ($slaves[$i].collar == "porcelain mask")>>
 		<<if ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishStrength > 95)>>
-		  $He @@.hotpink;loves@@ how her mask makes her beautiful enough for you.
+		  $He @@.hotpink;loves@@ how $his mask makes $him beautiful enough for you.
 		  <<set $slaves[$i].devotion += 1>>
 		<<elseif ($slaves[$i].fetish == "submissive") || ($slaves[$i].energy > 95)>>
-		  $He @@.hotpink;likes@@ how her mask makes her beautiful enough for you.
+		  $He @@.hotpink;likes@@ how $his mask makes $him beautiful enough for you.
 		  <<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].collar == "dildo gag")>>
   <<if $slaves[$i].oralSkill <= 10>>
-	Living gagged by a dildo, $he can't help but get better at having things down her throat.
+	Living gagged by a dildo, $he can't help but get better at having things down $his throat.
 	<<set $skillIncrease = 5>><<OralSkillIncrease $slaves[$i]>>
   <</if>>
 <</if>>
 <<if ($slaves[$i].collar == "massive dildo gag")>>
 	<<if $slaves[$i].oralSkill < 75>>
-	Living gagged by such an immense dildo, $he can't help but get even better at having giant things rammed down her throat.
+	Living gagged by such an immense dildo, $he can't help but get even better at having giant things rammed down $his throat.
 	<<set $skillIncrease = 5>><<OralSkillIncrease $slaves[$i]>>
 	<</if>>
 <</if>>
@@ -531,10 +533,10 @@
 <<if $slaves[$i].bellyAccessory != "none">>
 <<if $slaves[$i].bellyAccessory == "an extreme corset">>
 	<<if $slaves[$i].belly >= 100000>>
-		$His straining corset finally gives in to her giant stomach and bursts, freeing her belly.
+		$His straining corset finally gives in to $his giant stomach and bursts, freeing $his belly.
 		<<set $slaves[$i].bellyAccessory = "none">>
 	<<elseif $slaves[$i].bellyPreg >= 1500>>
-		The tight corseting has @@.orange;caused her to miscarry,@@ which @@.red;damages her health.@@
+		The tight corseting has @@.orange;caused $him to miscarry,@@ which @@.red;damages $his health.@@
 		<<set $slaves[$i].health -= 20>>
 		<<if lastPregRule($slaves[$i],$defaultRules)>><<set $slaves[$i].preg = -1>><<else>><<set $slaves[$i].preg = 0>><</if>>
 		<<set $slaves[$i].pregType = 0, WombFlush($slaves[$i]), $slaves[$i].pregKnown = 0, $slaves[$i].pregWeek = -4>>
@@ -542,13 +544,13 @@
 		<<if $slaves[$i].reservedChildren > 0>><<set $reservedChildren -= $slaves[$i].reservedChildren>><<set $slaves[$i].reservedChildren = 0>><</if>>
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 			<<if $slaves[$i].devotion < -50>>
-				$He is @@.mediumorchid;filled with violent, consuming hatred@@ and @@.gold;fear.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it and views you as its killer.
+				$He is @@.mediumorchid;filled with violent, consuming hatred@@ and @@.gold;fear.@@ Even though $he knew $his baby was destined for a slave orphanage, it seems $he cared for it and views you as its killer.
 				<<set $slaves[$i].devotion -= 25, $slaves[$i].trust -= 25>>
 			<<elseif $slaves[$i].devotion < -20>>
-				$He is @@.mediumorchid;afflicted by desperate, inconsolable grief@@ and @@.gold;horror.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it.
+				$He is @@.mediumorchid;afflicted by desperate, inconsolable grief@@ and @@.gold;horror.@@ Even though $he knew $his baby was destined for a slave orphanage, it seems $he cared for it.
 				<<set $slaves[$i].devotion -= 10, $slaves[$i].trust -= 20>>
 			<<elseif $slaves[$i].devotion <= 20>>
-				$He is @@.mediumorchid;consumed by enduring sorrow@@ and @@.gold;horror.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it.
+				$He is @@.mediumorchid;consumed by enduring sorrow@@ and @@.gold;horror.@@ Even though $he knew $his baby was destined for a slave orphanage, it seems $he cared for it.
 				<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<elseif $slaves[$i].devotion <= 50>>
 				$He is dully obedient. $He has been broken to slave life so thoroughly that even this is neither surprising nor affecting.
@@ -559,9 +561,9 @@
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].waist <= -95>>
-			$His waist is so absurd that her extreme corsetage does not affect her further.
+			$His waist is so absurd that $his extreme corsetage does not affect $him further.
 		<<else>>
-			@@.lime;The extreme corseting narrows her waist.@@
+			@@.lime;The extreme corseting narrows $his waist.@@
 			<<set $slaves[$i].waist -= 5>>
 			<<if $slaves[$i].waist < -95>> /*can only get here if waist was previously > -95 */
 				<<set $slaves[$i].waist = -95>>
@@ -580,10 +582,10 @@
 							Despite this, $he seems to get off on the pain; $he's a @@.lightcoral;natural masochist.@@
 							<<set $slaves[$i].fetishKnown = 1>>
 						<<else>>
-							It only adds to her pleasure, much to her @@.hotpink;enjoyment.@@
+							It only adds to $his pleasure, much to $his @@.hotpink;enjoyment.@@
 							<<set $slaves[$i].devotion += 1>>
 							<<if ($slaves[$i].fetishStrength <= 95)>>
-								Such constant suffering @@.lightcoral;deepens her masochism.@@
+								Such constant suffering @@.lightcoral;deepens $his masochism.@@
 								<<set $slaves[$i].fetishStrength += 2>>
 							<</if>>
 						<</if>>
@@ -599,14 +601,14 @@
 	<</if>>
 <<elseif $slaves[$i].bellyAccessory == "a corset">>
 	<<if $slaves[$i].bellyPreg >= 1500>>
-		$His corset lets her growing belly protrude comfortably, preventing any danger to her pregnancy but preventing any effect on her waist.
+		$His corset lets $his growing belly protrude comfortably, preventing any danger to $his pregnancy but preventing any effect on $his waist.
 	<<elseif $slaves[$i].belly >= 1500>>
-		$His corset lets her rounded belly protrude comfortably but prevents any effect on her waist.
+		$His corset lets $his rounded belly protrude comfortably but prevents any effect on $his waist.
 	<<else>>
 		<<if $slaves[$i].waist < -40>>
-			$His waist is so narrow that her corsetage does not affect it.
+			$His waist is so narrow that $his corsetage does not affect it.
 		<<else>>
-			@@.lime;The corseting narrows her waist.@@
+			@@.lime;The corseting narrows $his waist.@@
 			<<set $slaves[$i].waist -= 3>>
 		<</if>>
 	<</if>>
@@ -621,20 +623,20 @@
 				<<set $slaves[$i].devotion -= 5>>
 			<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust >= -50) && ($slaves[$i].fetish == "pregnancy")>>
 				<<if ($slaves[$i].fetishStrength > 60)>>
-					As a pregnancy fetishist, $he @@.hotpink;openly enjoys@@ wearing her fake belly around.
+					As a pregnancy fetishist, $he @@.hotpink;openly enjoys@@ wearing $his fake belly around.
 					<<set $slaves[$i].devotion += 2>>
 				<<else>>
-					$His interest in pregnancy helps her @@.hotpink;enjoy@@ wearing a fake belly.
+					$His interest in pregnancy helps $him @@.hotpink;enjoy@@ wearing a fake belly.
 					<<set $slaves[$i].devotion += 1>>
 				<</if>>
 			<<elseif ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].devotion > 50)>>
-				$He carries her fake belly @@.hotpink;with pride@@, eager for the day you give her one of her own.
+				$He carries $his fake belly @@.hotpink;with pride@@, eager for the day you give $him one of $his own.
 				<<set $slaves[$i].devotion += 1>>
 			<<elseif ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].pregKnown == 0) && ($slaves[$i].ovaries ==1 || $slaves[$i].mpreg == 1)>>
-				The fake belly $he wears @@.mediumorchid;reminds her@@ that $he isn't pregnant with a child.
+				The fake belly $he wears @@.mediumorchid;reminds $him@@ that $he isn't pregnant with a child.
 				<<set $slaves[$i].devotion -= 1>>
 			<<elseif ($slaves[$i].vagina == 0) && isFertile($slaves[$i]) && $arcologies[0].FSRepopulationFocus == "unset" && $slaves[$i].devotion <= 20>>
-				The fake belly $he wears @@.gold;worries@@ her that you will soon put a real baby in $him.
+				The fake belly $he wears @@.gold;worries@@ $him that you will soon put a real baby in $him.
 				<<set $slaves[$i].trust -= 1>>
 			<</if>>
 			<<if $slaves[$i].bellyAccessory == "a huge empathy belly" && $slaves[$i].fetish != "pregnancy">>
@@ -648,10 +650,10 @@
 			<</if>>
 			<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishStrength <= 95)>>
 				<<if random(1,100) >= 20>>
-					Pretending to be pregnant has @@.lightcoral;furthered her interest in pregnancy.@@
+					Pretending to be pregnant has @@.lightcoral;furthered $his interest in pregnancy.@@
 					<<set $slaves[$i].fetishStrength += 4>>
 				<<elseif ($slaves[$i].fetishStrength <= 40)>>
-					Lugging around a fake pregnancy for the week has shown her $he @@.coral;isn't as into pregnancy as $he thought.@@
+					Lugging around a fake pregnancy for the week has shown $him $he @@.coral;isn't as into pregnancy as $he thought.@@
 					<<set $slaves[$i].fetish = "none", $slaves[$i].fetishStrength = 10>>
 				<</if>>
 			<</if>>
@@ -687,20 +689,20 @@
 			<<set $slaves[$i].devotion -= 2>>
 			<<set $slaves[$i].trust -= 2>>
 		<<elseif ($slaves[$i].fetish == "masochist")>>
-			It is difficult to walk in her extreme heels, but $he
+			It is difficult to walk in $his extreme heels, but $he
 			<<if ($slaves[$i].fetishKnown == 0)>>
 				seems to enjoy every painful step; $he's a @@.lightcoral;natural masochist.@@
 				<<set $slaves[$i].fetishKnown = 1>>
 			<<else>>
-				@@.hotpink;appreciates@@ every painful step you make her take.
+				@@.hotpink;appreciates@@ every painful step you make $him take.
 				<<set $slaves[$i].devotion += 1>>
 			<</if>>
 		<<else>>
-			$He is kept @@.hotpink;mindful@@ and @@.gold;fearful@@ by the difficulty of walking in her extreme heels.
+			$He is kept @@.hotpink;mindful@@ and @@.gold;fearful@@ by the difficulty of walking in $his extreme heels.
 			<<set $slaves[$i].devotion += 1>>
 			<<set $slaves[$i].trust -= 1>>
 		<</if>>
-		They're so high they're a bit @@.red;unhealthy@@ for her legs.
+		They're so high they're a bit @@.red;unhealthy@@ for $his legs.
 		<<set $slaves[$i].health -= 2>>
 	<</if>>
 <<else>>
@@ -711,7 +713,7 @@
 		<<elseif $slaves[$i].devotion > 50>>
 			$He accepts being forced to crawl around on all fours.
 		<<else>>
-			$He @@.mediumorchid;resents being forced@@ to crawl around like some kind of animal, but it keeps her properly @@.gold;afraid.@@
+			$He @@.mediumorchid;resents being forced@@ to crawl around like some kind of animal, but it keeps $him properly @@.gold;afraid.@@
 			<<set $slaves[$i].devotion -= 2,  $slaves[$i].trust -= 4>>
 		<</if>>
 	<</if>>
@@ -720,20 +722,20 @@
 <<if ($slaves[$i].vaginalAccessory != "none")>>
 <<if ($slaves[$i].vaginalAccessory == "dildo")>>
 	<<if ($slaves[$i].vagina < 1) && (random(1,100) > 50)>>
-		Constantly wearing a dildo in her virgin pussy @@.lime;gets it used to penetration.@@
+		Constantly wearing a dildo in $his virgin pussy @@.lime;gets it used to penetration.@@
 		<<set $slaves[$i].vagina += 1>>
 	<<else>>
 		$His pussy easily accommodates the dildo $he's required to wear.
 	<</if>>
 	<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 		<<if ($slaves[$i].sexualFlaw == "hates penetration") && (random(1,100) > 50)>>
-			The habit @@.green;reduces her dislike of having her pussy filled.@@
+			The habit @@.green;reduces $his dislike of having $his pussy filled.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<</if>>
 	<</if>>
 <<elseif ($slaves[$i].vaginalAccessory == "long dildo")>>
 	<<if ($slaves[$i].vagina < 1) && (random(1,100) > 50)>>
-	Constantly wearing a dildo in her virgin pussy @@.lime;gets it used to penetration.@@
+	Constantly wearing a dildo in $his virgin pussy @@.lime;gets it used to penetration.@@
 	<<set $slaves[$i].vagina += 1>>
 	<<else>>
 		$His pussy easily accommodates the dildo $he's required to wear.
@@ -748,7 +750,7 @@
 		Being able to hold such a long dildo is a @@.hotpink;point of pride@@ for the ostentatious size queen.
 		<<set $slaves[$i].devotion += 2>>
 	<<else>>
-		It penetrates her cervix causing her tremendous discomfort, making her a little @@.gold;less trusting@@ of you.
+		It penetrates $his cervix causing $him tremendous discomfort, making $him a little @@.gold;less trusting@@ of you.
 		<<set $slaves[$i].trust -= 1>>
 	<</if>>
 	<</if>>
@@ -756,10 +758,10 @@
 <<elseif ($slaves[$i].vaginalAccessory == "large dildo")>>
 	<<if $slaves[$i].vagina < 3>>
 		<<if random(1,4) == 1>>
-			Constantly wearing a large dildo in her pussy @@.lime;stretches it out.@@
+			Constantly wearing a large dildo in $his pussy @@.lime;stretches it out.@@
 			<<set $slaves[$i].vagina += 1>>
 		<<else>>
-			The large dildo $he's required to wear is a stretch for her cunt, but pussies are resilient and hers isn't seriously affected.
+			The large dildo $he's required to wear is a stretch for $his cunt, but pussies are resilient and $hers isn't seriously affected.
 		<</if>>
 	<<else>>
 		$His pussy accommodates the large dildo $he's required to wear.
@@ -767,16 +769,16 @@
 	<<if $slaves[$i].fuckdoll == 0>>
 	<<if $slaves[$i].fetish != "mindbroken">>
 	<<if ($slaves[$i].vagina < 2)>>
-		The big dildo in her tight cunt
+		The big dildo in $his tight cunt
 		<<if ($slaves[$i].sexualQuirk == "size queen")>>
 			is a @@.hotpink;point of pride@@ for the ostentatious size queen.
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			@@.hotpink;breaks her to sexual slavery@@ slightly.
+			@@.hotpink;breaks $him to sexual slavery@@ slightly.
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 		<<if ($slaves[$i].vagina == 1)>>
-			It stretches her tight cunt to soreness by the end of every day, so it also makes her a little @@.gold;less trusting@@ of you.
+			It stretches $his tight cunt to soreness by the end of every day, so it also makes $him a little @@.gold;less trusting@@ of you.
 			<<set $slaves[$i].trust -= 1>>
 		<</if>>
 	<</if>>
@@ -785,10 +787,10 @@
 <<elseif ($slaves[$i].vaginalAccessory == "long, large dildo")>>
 	<<if ($slaves[$i].vagina < 3)>>
 		<<if random(1,4) == 1>>
-			Constantly wearing a large dildo in her pussy @@.lime;stretches it out.@@
+			Constantly wearing a large dildo in $his pussy @@.lime;stretches it out.@@
 			<<set $slaves[$i].vagina += 1>>
 		<<else>>
-			The large dildo $he's required to wear is a stretch for her cunt, but pussies are resilient and hers isn't seriously affected.
+			The large dildo $he's required to wear is a stretch for $his cunt, but pussies are resilient and $hers isn't seriously affected.
 		<</if>>
 	<<else>>
 		$His pussy accommodates the large dildo $he's required to wear.
@@ -796,17 +798,17 @@
 	<<if ($slaves[$i].vagina < 2)>>
 	<<if $slaves[$i].fuckdoll == 0>>
 	<<if $slaves[$i].fetish != "mindbroken">>
-		The big, long dildo in her tight cunt
+		The big, long dildo in $his tight cunt
 		<<if ($slaves[$i].sexualQuirk == "size queen")>>
 			is a @@.hotpink;point of pride@@ for the ostentatious size queen.
 			<<set $slaves[$i].devotion += 2>>
 		<<else>>
-			@@.hotpink;breaks her to sexual slavery@@ slightly. It also penetrates her cervix causing her tremendous discomfort, making her a little @@.gold;less trusting@@ of you.
+			@@.hotpink;breaks $him to sexual slavery@@ slightly. It also penetrates $his cervix causing $him tremendous discomfort, making $him a little @@.gold;less trusting@@ of you.
 			<<set $slaves[$i].devotion += 1>>
 			<<set $slaves[$i].trust -= 1>>
 		<</if>>
 		<<if ($slaves[$i].vagina == 1)>>
-			It stretches her tight cunt to soreness by the end of every day, so it also makes her a little @@.gold;less trusting@@ of you.
+			It stretches $his tight cunt to soreness by the end of every day, so it also makes $him a little @@.gold;less trusting@@ of you.
 			<<set $slaves[$i].trust -= 1>>
 		<</if>>
 	<</if>>
@@ -817,16 +819,16 @@
 		<<if $slaves[$i].fuckdoll == 0>>
 		<<if $slaves[$i].fetish != "mindbroken">>
 		<<if ($slaves[$i].sexualQuirk == "size queen")>>
-			$He thinks of the massive dildo stretching out her womanhood as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, truly anything, inside her newly capacious cunt.
+			$He thinks of the massive dildo stretching out $his womanhood as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, truly anything, inside $his newly capacious cunt.
 			<<set $slaves[$i].devotion += 4>>
 		<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			$He gets off on the agony of having her cunt @@.lime;permanently stretched@@ by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+			$He gets off on the agony of having $his cunt @@.lime;permanently stretched@@ by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks $his will@@ but fills $him with @@.gold;fear.@@
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 		<<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			$He submits to the agony of having her cunt @@.lime;permanently stretched@@ by a huge dildo. Having her hole ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+			$He submits to the agony of having $his cunt @@.lime;permanently stretched@@ by a huge dildo. Having $his hole ruined at your whim @@.hotpink;breaks $his will@@ but fills $him with @@.gold;fear.@@
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 		<<else>>
-			The agony of having her cunt @@.lime;permanently stretched@@ by a huge dildo fills her with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
+			The agony of having $his cunt @@.lime;permanently stretched@@ by a huge dildo fills $him with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
 			<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 		<</if>>
 		<</if>>
@@ -840,16 +842,16 @@
 		<<if $slaves[$i].fuckdoll == 0>>
 		<<if $slaves[$i].fetish != "mindbroken">>
 		<<if ($slaves[$i].sexualQuirk == "size queen")>>
-			$He thinks of the massive dildo stretching out her womanhood and stomach as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, arms, truly anything, inside her newly capacious cunt.
+			$He thinks of the massive dildo stretching out $his womanhood and stomach as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to take anything, dicks, hands, arms, truly anything, inside $his newly capacious cunt.
 			<<set $slaves[$i].devotion += 4>>
 		<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			$He gets off on the agony of having her cunt @@.lime;permanently stretched@@ and her cervix penetrated by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+			$He gets off on the agony of having $his cunt @@.lime;permanently stretched@@ and $his cervix penetrated by a huge dildo. The terrible combination of pain and pleasure @@.hotpink;breaks $his will@@ but fills $him with @@.gold;fear.@@
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 		<<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			$He submits to the agony of having her cunt @@.lime;permanently stretched@@ and her cervix penetrated by a huge dildo. Having her hole and cervix ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+			$He submits to the agony of having $his cunt @@.lime;permanently stretched@@ and $his cervix penetrated by a huge dildo. Having $his hole and cervix ruined at your whim @@.hotpink;breaks $his will@@ but fills $him with @@.gold;fear.@@
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 		<<else>>
-			The agony of having her cunt @@.lime;permanently stretched@@ and her cervix penetrated by a huge dildo fills her with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
+			The agony of having $his cunt @@.lime;permanently stretched@@ and $his cervix penetrated by a huge dildo fills $him with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
 			<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 		<</if>>
 		<</if>>
@@ -862,20 +864,20 @@
 <<if ($slaves[$i].vaginalAccessory == "long, huge dildo") || ($slaves[$i].vaginalAccessory == "long, large dildo") || ($slaves[$i].vaginalAccessory == "long dildo")>>
 	<<if ($slaves[$i].preg > 4) && $slaves[$i].pregKnown == 1>>
 	  <<if (random(1,100) > 50)>>
-		The dildo penetrating her womb @@.orange;caused her to miscarry,@@ which @@.red;damages her health.@@
+		The dildo penetrating $his womb @@.orange;caused $him to miscarry,@@ which @@.red;damages $his health.@@
 		<<set  $slaves[$i].health -= 20>>
 		<<if lastPregRule($slaves[$i],$defaultRules)>><<set $slaves[$i].preg = -1>><<else>><<set $slaves[$i].preg = 0>><</if>>
 		<<set $slaves[$i].pregType = 0, WombFlush($slaves[$i]), $slaves[$i].pregKnown = 0, $slaves[$i].pregWeek = -4>>
 		<<run SetBellySize($slaves[$i])>>
 		$He is
 		<<if $slaves[$i].devotion < -50>>
-		  @@.mediumorchid;filled with violent, consuming hatred@@ and @@.gold;fear.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it and views you as its killer.
+		  @@.mediumorchid;filled with violent, consuming hatred@@ and @@.gold;fear.@@ Even though $he knew $his baby was destined for a slave orphanage, it seems $he cared for it and views you as its killer.
 		  <<set  $slaves[$i].devotion -= 25,  $slaves[$i].trust -= 25>>
 		<<elseif $slaves[$i].devotion < -20>>
-		  @@.mediumorchid;afflicted by desperate, inconsolable grief@@ and @@.gold;horror.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it.
+		  @@.mediumorchid;afflicted by desperate, inconsolable grief@@ and @@.gold;horror.@@ Even though $he knew $his baby was destined for a slave orphanage, it seems $he cared for it.
 		  <<set  $slaves[$i].devotion -= 10,  $slaves[$i].trust -= 20>>
 		<<elseif $slaves[$i].devotion <= 20>>
-		  @@.mediumorchid;consumed by enduring sorrow@@ and @@.gold;horror.@@ Even though $he knew her baby was destined for a slave orphanage, it seems $he cared for it.
+		  @@.mediumorchid;consumed by enduring sorrow@@ and @@.gold;horror.@@ Even though $he knew $his baby was destined for a slave orphanage, it seems $he cared for it.
 		  <<set  $slaves[$i].devotion -= 5,  $slaves[$i].trust -= 5>>
 		<<elseif $slaves[$i].devotion <= 50>>
 		  dully obedient. $He has been broken to slave life so thoroughly that even this is neither surprising nor affecting.
@@ -894,36 +896,36 @@
 	<<if ($slaves[$i].buttplugAttachment == "tail")>>
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 			<<if $slaves[$i].anus < 1>>
-				Constantly wearing a tail plug in her virgin butthole @@.lime;stretches it out@@ and @@.gold;is a constant degrading reminder of her submission.@@
+				Constantly wearing a tail plug in $his virgin butthole @@.lime;stretches it out@@ and @@.gold;is a constant degrading reminder of $his submission.@@
 				<<set $slaves[$i].anus += 1>>
 				<<set $slaves[$i].trust -= 2>>
 			<<else>>
-				$His asshole is used to being penetrated and wearing her tailed buttplug doesn't affect it, though it still serves as @@.gold;a constant degrading reminder of her submission.@@
+				$His asshole is used to being penetrated and wearing $his tailed buttplug doesn't affect it, though it still serves as @@.gold;a constant degrading reminder of $his submission.@@
 				<<set $slaves[$i].trust -= 2>>
 			<</if>>
 			<<if ($slaves[$i].sexualFlaw == "hates anal") && (random(1,100) > 50)>>
-				It @@.green;gets her habituated to having her asshole filled.@@
+				It @@.green;gets $him habituated to having $his asshole filled.@@
 				<<set $slaves[$i].sexualFlaw = "none">>
 			<</if>>
 			<<if ($slaves[$i].sexualQuirk == "size queen") && ($slaves[$i].buttplug == "long plug")>>
-			The overly long plug delving the depths of her rear @@.hotpink;gets her off,@@ since $he's a size queen.
+			The overly long plug delving the depths of $his rear @@.hotpink;gets $him off,@@ since $he's a size queen.
 				<<set $slaves[$i].devotion += 2>>
 			<</if>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 			<<if $slaves[$i].anus < 1>>
-				Constantly wearing a plug in her virgin butthole @@.lime;stretches it out.@@
+				Constantly wearing a plug in $his virgin butthole @@.lime;stretches it out.@@
 				<<set $slaves[$i].anus += 1>>
 			<<else>>
-				$His asshole is used to being penetrated and wearing her buttplug doesn't affect it.
+				$His asshole is used to being penetrated and wearing $his buttplug doesn't affect it.
 			<</if>>
 			<<if ($slaves[$i].sexualFlaw == "hates anal") && (random(1,100) > 50)>>
-				It @@.green;gets her habituated to having her asshole filled.@@
+				It @@.green;gets $him habituated to having $his asshole filled.@@
 				<<set $slaves[$i].sexualFlaw = "none">>
 			<</if>>
 			<<if ($slaves[$i].sexualQuirk == "size queen") && ($slaves[$i].buttplug == "long plug")>>
-			The overly long plug delving the depths of her rear @@.hotpink;gets her off,@@ since $he's a size queen.
+			The overly long plug delving the depths of $his rear @@.hotpink;gets $him off,@@ since $he's a size queen.
 				<<set $slaves[$i].devotion += 2>>
 			<</if>>
 		<</if>>
@@ -932,31 +934,31 @@
 	<<if ($slaves[$i].buttplugAttachment == "tail")>>
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 			<<if ($slaves[$i].anus < 2)>>
-				The uncomfortable tailed plug in her asshole
+				The uncomfortable tailed plug in $his asshole
 				<<if ($slaves[$i].sexualQuirk == "size queen")>>
-					@@.hotpink;gets her off,@@ since $he's a size queen, while serving as @@.gold;a constant degrading reminder of her submission.@@
+					@@.hotpink;gets $him off,@@ since $he's a size queen, while serving as @@.gold;a constant degrading reminder of $his submission.@@
 					<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 2>>
 				<<else>>
-					@@.hotpink;breaks her to anal slavery@@ slightly, while serving as a @@.gold;a constant degrading reminder of her submission.@@
+					@@.hotpink;breaks $him to anal slavery@@ slightly, while serving as a @@.gold;a constant degrading reminder of $his submission.@@
 					<<set $slaves[$i].devotion += 1, $slaves[$i].trust -= 2>>
 				<</if>>
 				<<if ($slaves[$i].anus < 1)>>
-					It stretches her tight rosebud painfully, making her somewhat @@.gold;less trusting@@ of you.
+					It stretches $his tight rosebud painfully, making $him somewhat @@.gold;less trusting@@ of you.
 					<<set $slaves[$i].trust -= 1>>
 				<</if>>
 			<</if>>
 		<</if>>
 		<<if $slaves[$i].anus < 3>>
 			<<if ($slaves[$i].anus < 1) || (random(1,2) == 1)>>
-				Constantly wearing a large tailed plug up her ass @@.lime;loosens her sphincter.@@
+				Constantly wearing a large tailed plug up $his ass @@.lime;loosens $his sphincter.@@
 				<<set $slaves[$i].anus += 1>>
 			<<else>>
-				The large tailed plug $he's required to wear up her ass stretches it to the limit, but on the rare occasions when the plug is removed, her rear hole still tightens up.
+				The large tailed plug $he's required to wear up $his ass stretches it to the limit, but on the rare occasions when the plug is removed, $his rear hole still tightens up.
 			<</if>>
 		<<else>>
 			$His anus accommodates the large plug $he's required to wear.
 			<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
+				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ $his rear-end.
 				<<set $slaves[$i].devotion += 1>>
 				<<set $slaves[$i].energy += 1>>
 			<</if>>
@@ -964,31 +966,31 @@
 	<<else>>
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 			<<if ($slaves[$i].anus < 2)>>
-				The uncomfortable plug in her asshole
+				The uncomfortable plug in $his asshole
 				<<if ($slaves[$i].sexualQuirk == "size queen")>>
-					@@.hotpink;gets her off,@@ since $he's a size queen.
+					@@.hotpink;gets $him off,@@ since $he's a size queen.
 					<<set $slaves[$i].devotion += 2>>
 				<<else>>
-					@@.hotpink;breaks her to anal slavery@@ slightly.
+					@@.hotpink;breaks $him to anal slavery@@ slightly.
 					<<set $slaves[$i].devotion += 1>>
 				<</if>>
 				<<if ($slaves[$i].anus < 1)>>
-					It stretches her tight rosebud painfully, making her somewhat @@.gold;less trusting@@ of you.
+					It stretches $his tight rosebud painfully, making $him somewhat @@.gold;less trusting@@ of you.
 					<<set $slaves[$i].trust -= 1>>
 				<</if>>
 			<</if>>
 		<</if>>
 		<<if $slaves[$i].anus < 3>>
 			<<if ($slaves[$i].anus < 1) || (random(1,2) == 1)>>
-				Constantly wearing a large plug up her ass @@.lime;loosens her sphincter.@@
+				Constantly wearing a large plug up $his ass @@.lime;loosens $his sphincter.@@
 				<<set $slaves[$i].anus += 1>>
 			<<else>>
-				The large plug $he's required to wear up her ass stretches it to the limit, but on the rare occasions when the plug is removed, her rear hole still tightens up.
+				The large plug $he's required to wear up $his ass stretches it to the limit, but on the rare occasions when the plug is removed, $his rear hole still tightens up.
 			<</if>>
 		<<else>>
 			$His anus accommodates the large plug $he's required to wear.
 			<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
+				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ $his rear-end.
 				<<set $slaves[$i].devotion += 1>>
 				<<set $slaves[$i].energy += 1>>
 			<</if>>
@@ -999,24 +1001,24 @@
 		<<if ($slaves[$i].anus < 4)>>
 			<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 				<<if ($slaves[$i].sexualQuirk == "size queen")>>
-					$He thinks of the horribly huge tailed plug $he has wear in her butt as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to being able to safely take unlubricated anal from them. Even so, the tail hanging from her rear is @@.gold;a constant degrading reminder of her submission.@@
+					$He thinks of the horribly huge tailed plug $he has wear in $his butt as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to being able to safely take unlubricated anal from them. Even so, the tail hanging from $his rear is @@.gold;a constant degrading reminder of $his submission.@@
 					<<set $slaves[$i].devotion += 4, $slaves[$i].trust -= 5>>
 				<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					$He gets off on the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug, but can't ignore the tail hanging from the back of the plug. The terrible combination of anal pleasure and degradation @@.hotpink;breaks her will@@ and fills her with @@.gold;humiliation.@@
+					$He gets off on the agony of having $his anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug, but can't ignore the tail hanging from the back of the plug. The terrible combination of anal pleasure and degradation @@.hotpink;breaks $his will@@ and fills $him with @@.gold;humiliation.@@
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 7>>
 				<<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					$He submits to the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug and the shame of having a tail dangle from the back of the plug. Having her hole ruined at your whim and in such a degrading fashion @@.hotpink;breaks her will@@ and fills her with @@.gold;humiliation.@@
+					$He submits to the agony of having $his anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug and the shame of having a tail dangle from the back of the plug. Having $his hole ruined at your whim and in such a degrading fashion @@.hotpink;breaks $his will@@ and fills $him with @@.gold;humiliation.@@
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 7>>
 				<<else>>
-					The agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug fills her with @@.mediumorchid;resentment@@ and @@.gold;humiliation.@@
+					The agony of having $his anal sphincter @@.lime;permanently gaped@@ by a huge tailed buttplug fills $him with @@.mediumorchid;resentment@@ and @@.gold;humiliation.@@
 					<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 				<</if>>
 			<</if>>
 			<<set $slaves[$i].anus += 1>>
 		<<else>>
-			$His gaping anus accommodates the huge tailed plug $he's required to wear, serving little purpose other than to remind her of her @@.gold;humiliation.@@
+			$His gaping anus accommodates the huge tailed plug $he's required to wear, serving little purpose other than to remind $him of $his @@.gold;humiliation.@@
 			<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
+				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ $his rear-end.
 				<<set $slaves[$i].devotion += 1>>
 				<<set $slaves[$i].energy += 1>>
 			<</if>>
@@ -1025,16 +1027,16 @@
 		<<if ($slaves[$i].anus < 4)>>
 			<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 				<<if ($slaves[$i].sexualQuirk == "size queen")>>
-					$He thinks of the horribly huge plug $he has wear in her butt as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to being able to safely take unlubricated anal from them.
+					$He thinks of the horribly huge plug $he has wear in $his butt as @@.lime;preparation for the biggest cocks,@@ and @@.hotpink;looks forward@@ to being able to safely take unlubricated anal from them.
 					<<set $slaves[$i].devotion += 4>>
 				<<elseif ($slaves[$i].fetish == "masochist") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					$He gets off on the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge buttplug. The terrible combination of pain and pleasure @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+					$He gets off on the agony of having $his anal sphincter @@.lime;permanently gaped@@ by a huge buttplug. The terrible combination of pain and pleasure @@.hotpink;breaks $his will@@ but fills $him with @@.gold;fear.@@
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 				<<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					$He submits to the agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge buttplug. Having her hole ruined at your whim @@.hotpink;breaks her will@@ but fills her with @@.gold;fear.@@
+					$He submits to the agony of having $his anal sphincter @@.lime;permanently gaped@@ by a huge buttplug. Having $his hole ruined at your whim @@.hotpink;breaks $his will@@ but fills $him with @@.gold;fear.@@
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 5>>
 				<<else>>
-					The agony of having her anal sphincter @@.lime;permanently gaped@@ by a huge buttplug fills her with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
+					The agony of having $his anal sphincter @@.lime;permanently gaped@@ by a huge buttplug fills $him with @@.mediumorchid;resentment@@ and @@.gold;fear.@@
 					<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 				<</if>>
 			<</if>>
@@ -1042,7 +1044,7 @@
 		<<else>>
 			$His gaping anus accommodates the huge plug $he's required to wear.
 			<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ her rear-end.
+				In fact, $he @@.hotpink;regularly orgasms@@ even in non-sexual situations as the plug is @@.green;constantly stimulating@@ $his rear-end.
 				<<set $slaves[$i].devotion += 1>>
 				<<set $slaves[$i].energy += 1>>
 			<</if>>
@@ -1052,21 +1054,21 @@
 <<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
 	<<if ($slaves[$i].buttplugAttachment == "tail")>>
 		<<if ($slaves[$i].fetish == "humiliation") && ($slaves[$i].fetishKnown == 0)>>
-			$He shows a surprising lack of resistance to the routine of having a tail inserted in her ass each morning; $he seems to @@.lightcoral;naturally enjoy the humiliation.@@
+			$He shows a surprising lack of resistance to the routine of having a tail inserted in $his ass each morning; $he seems to @@.lightcoral;naturally enjoy the humiliation.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 			<<if _fetishChangeChance > random(0,100)>>
-				Slowly, her shame at having a tail inserted in her ass each morning turns to secret enjoyment and finally to @@.lightcoral;open arousal at the humiliating accessory.@@
+				Slowly, $his shame at having a tail inserted in $his ass each morning turns to secret enjoyment and finally to @@.lightcoral;open arousal at the humiliating accessory.@@
 				<<set $slaves[$i].fetish = "humiliation", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 			<</if>>
 		<</if>>
 	<<elseif ($slaves[$i].buttplug == "plug") || ($slaves[$i].buttplug == "large plug") || ($slaves[$i].buttplug == "long, large plug") || ($slaves[$i].buttplug == "long plug")>>
 		<<if ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishKnown == 0)>>
-			$He shows a surprising lack of resistance to the routine of getting the plug up her butt in the morning; $he seems to @@.lightcoral;naturally enjoy anal stimulation.@@
+			$He shows a surprising lack of resistance to the routine of getting the plug up $his butt in the morning; $he seems to @@.lightcoral;naturally enjoy anal stimulation.@@
 			<<set $slaves[$i].fetishKnown = 1>>
 		<<elseif ($slaves[$i].fetish == "none") || ($slaves[$i].fetishKnown == 0)>>
 		<<if _fetishChangeChance > random(0,100)>>
-			Slowly, her anguish at getting the plug up her butt in the morning turns to secret enjoyment and finally to @@.lightcoral;open arousal at having her anus filled.@@
+			Slowly, $his anguish at getting the plug up $his butt in the morning turns to secret enjoyment and finally to @@.lightcoral;open arousal at having $his anus filled.@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<</if>>
 		<</if>>
@@ -1091,7 +1093,7 @@
 				Recently, $he's been fantasizing about submitting to big strong men. $His revulsion at the idea of sex with a man @@.green;mellows.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "buttslut")>>
-				Recently, $he's been reconsidering her reluctance to be sodomized by a man. $His revulsion at the idea of sex with a man @@.green;mellows.@@
+				Recently, $he's been reconsidering $his reluctance to be sodomized by a man. $His revulsion at the idea of sex with a man @@.green;mellows.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "pregnancy")>>
 				Recently, $he's been fantasizing about getting knocked up. $His revulsion at the idea of sex with a man @@.green;mellows.@@
@@ -1099,23 +1101,23 @@
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].sexualQuirk == "adores men")>>
-				$He enjoys spending time with men, and starts to @@.green;reconsider her unwillingness to be fucked by men.@@
+				$He enjoys spending time with men, and starts to @@.green;reconsider $his unwillingness to be fucked by men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<<if ($slaves[$i].dick > 0)>>
 			<<if ($slaves[$i].energy >= 40)>>
 			<<if ($slaves[$i].analCount > 0) && canDoAnal($slaves[$i])>>
-				Every time $he cums with a dick up her ass, her @@.green;resistance to sex with men is worn away.@@
+				Every time $he cums with a dick up $his ass, $his @@.green;resistance to sex with men is worn away.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 			<</if>>
 			<</if>>
 			<<if ($slaves[$i].devotion > random(1,100))>>
-				The atmosphere in your arcology is so ubiquitously sexual that $he @@.green;reconsiders her unwillingness to have sex with men.@@
+				The atmosphere in your arcology is so ubiquitously sexual that $he @@.green;reconsiders $his unwillingness to have sex with men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 		<<else>>
-			$His weak libido limits natural development of her sexuality.
+			$His weak libido limits natural development of $his sexuality.
 		<</if>>
 		<<if $slaves[$i].devotion >= -20>>
 		<<if $slaves[$i].genes == "XY">>
@@ -1123,27 +1125,27 @@
 			<<switch _roll>>
 			<<case 1>>
 				<<if $slaves[$i].nosePiercing>>
-					$He's fascinated by her <<if $slaves[$i].nosePiercing > 1>>slutty nose piercings, and unconsciously thinks of herself as @@.green;prettier and more suited to take dick.@@<<else>>nice little nasal piercing, and feels like @@.green;more of a girly girl.@@<</if>>
+					$He's fascinated by $his <<if $slaves[$i].nosePiercing > 1>>slutty nose piercings, and unconsciously thinks of $himself as @@.green;prettier and more suited to take dick.@@<<else>>nice little nasal piercing, and feels like @@.green;more of a girly girl.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<<case 2>>
 				<<if $slaves[$i].eyebrowPiercing>>
-					$His <<if $slaves[$i].eyebrowPiercing > 1>>degrading eyebrow piercings make her feel @@.green;a little less disinclined to accept being on the bottom.@@<<else>>cute eyebrow piercing makes her feel @@.green;a little girlier.@@<</if>>
+					$His <<if $slaves[$i].eyebrowPiercing > 1>>degrading eyebrow piercings make $him feel @@.green;a little less disinclined to accept being on the bottom.@@<<else>>cute eyebrow piercing makes $him feel @@.green;a little girlier.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<<case 3>>
 				<<if $slaves[$i].lipsPiercing>>
-					$He kind of likes her <<if $slaves[$i].lipsPiercing > 1>>whorish lip ring, and seems @@.green;less disturbed by the idea of her mouth as a fuckhole.@@<<else>>pretty little lip piercing, and feels like @@.green;$he has a nice mouth.@@<</if>>
+					$He kind of likes $his <<if $slaves[$i].lipsPiercing > 1>>whorish lip ring, and seems @@.green;less disturbed by the idea of $his mouth as a fuckhole.@@<<else>>pretty little lip piercing, and feels like @@.green;$he has a nice mouth.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<<case 4>>
 				<<if $slaves[$i].navelPiercing>>
-					$He sometimes stares at her <<if $slaves[$i].navelPiercing > 1>>navel chain, turning this way and that to make it move, unconsciously @@.green;getting used to her fuckable body.@@<<else>>little feminine navel piercing, and seems to think @@.green;her lower half is kind of pretty.@@<</if>>
+					$He sometimes stares at $his <<if $slaves[$i].navelPiercing > 1>>navel chain, turning this way and that to make it move, unconsciously @@.green;getting used to $his fuckable body.@@<<else>>little feminine navel piercing, and seems to think @@.green;$his lower half is kind of pretty.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<<case 5>>
 				<<if $slaves[$i].earPiercing>>
-					Every morning, $he's greeted by her girly reflection in the mirror, <<if $slaves[$i].earPiercing > 1>>whose slutty ear piercings make her @@.green;feel more fuckable.@@<<else>>complete with pretty pierced ears @@.green;like a good slave girl.@@<</if>>
+					Every morning, $he's greeted by $his girly reflection in the mirror, <<if $slaves[$i].earPiercing > 1>>whose slutty ear piercings make $him @@.green;feel more fuckable.@@<<else>>complete with pretty pierced ears @@.green;like a good slave girl.@@<</if>>
 					<<set $slaves[$i].attrXY += 1>>
 				<</if>>
 			<</switch>>
@@ -1153,7 +1155,7 @@
 		<<if ($slaves[$i].energy >= 40)>>
 			<<if ($slaves[$i].fetishKnown == 1)>>
 			<<if ($slaves[$i].fetish == "submissive")>>
-				$He's found herself enjoying watching big strong men use other slaves recently. $He's now @@.green;more attracted to men.@@
+				$He's found $himself enjoying watching big strong men use other slaves recently. $He's now @@.green;more attracted to men.@@
 				<<set $slaves[$i].attrXY += 3>>
 			<<elseif ($slaves[$i].fetish == "buttslut")>>
 				$He's started fantasizing about cocks being shoved up $his butt even when there are no cocks being shoved up $his butt. $He's now @@.green;more attracted to men.@@
@@ -1180,7 +1182,7 @@
 				<<set $slaves[$i].attrXY += 3>>
 			<</if>>
 		<<else>>
-			$His poor sex drive limits natural development of her sexuality.
+			$His poor sex drive limits natural development of $his sexuality.
 		<</if>>
 	<<elseif ($slaves[$i].attrXY <= 85)>>
 		<<if ($slaves[$i].energy >= 60)>>
@@ -1254,7 +1256,7 @@
 		<<if ($slaves[$i].energy >= 40)>>
 			<<if ($slaves[$i].fetishKnown == 1)>>
 			<<if ($slaves[$i].fetish == "dom")>>
-				$He's found herself enjoying the sight of female slaves being forced to fuck recently. $He's now @@.green;more attracted to women.@@
+				$He's found $himself enjoying the sight of female slaves being forced to fuck recently. $He's now @@.green;more attracted to women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif ($slaves[$i].fetish == "sadist")>>
 				$He's started fantasizing about how a girl might feel, struggling to get away from $him. $He's now @@.green;more attracted to women.@@
@@ -1293,10 +1295,10 @@
 				$He can't see a woman without doing $his best to find a way the rules will allow $his to abuse the poor girl. $He's now @@.green;more aroused by women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif ($slaves[$i].fetish == "boobs")>>
-				$He can't see a woman without doing $his best to get $his hands on her breasts. $He's now @@.green;more aroused by women.@@
+				$He can't see a woman without doing $his best to get $his hands on $his breasts. $He's now @@.green;more aroused by women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<<elseif $slaves[$i].fetish == "pregnancy" && canAchieveErection($slaves[$i])>>
-				$He can't see a woman without plotting to plant $his seed in her womb. $He's now @@.green;more aroused by women.@@
+				$He can't see a woman without plotting to plant $his seed in $his womb. $He's now @@.green;more aroused by women.@@
 				<<set $slaves[$i].attrXX += 3>>
 			<</if>>
 			<</if>>
@@ -1433,17 +1435,17 @@
 		<<switch $slaves[$i].behavioralQuirk>>
 		<<case "confident">>
 			<<if ($slaves[$i].fetish != "dom")>>
-			$His confidence and poise affect her sexual outlook. @@.lightcoral;$He's now a dom!@@
+			$His confidence and poise affect $his sexual outlook. @@.lightcoral;$He's now a dom!@@
 			<<set $slaves[$i].fetish = "dom", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "cutting">>
 			<<if ($slaves[$i].fetish != "dom")>>
-			$His willingness to cut a partner down makes her more dominant in bed. @@.lightcoral;$He's now a dom!@@
+			$His willingness to cut a partner down makes $him more dominant in bed. @@.lightcoral;$He's now a dom!@@
 			<<set $slaves[$i].fetish = "dom", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "funny">>
 			<<if ($slaves[$i].fetish != "masochist")>>
-			Pain becomes an outlet for all the mental troubles lurking behind her funny facade. @@.lightcoral;$He's now a masochist!@@
+			Pain becomes an outlet for all the mental troubles lurking behind $his funny facade. @@.lightcoral;$He's now a masochist!@@
 			<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "adores men">>
@@ -1468,7 +1470,7 @@
 			<</if>>
 		<<case "advocate">>
 			<<if ($slaves[$i].fetish != "submissive")>>
-			$His conviction that slavery is right seeps into her sexuality. @@.lightcoral;$He's now a submissive!@@
+			$His conviction that slavery is right seeps into $his sexuality. @@.lightcoral;$He's now a submissive!@@
 			<<set $slaves[$i].fetish = "submissive", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<</switch>>
@@ -1521,51 +1523,51 @@
 		<<switch $slaves[$i].sexualQuirk>>
 		<<case "gagfuck queen">>
 			<<if $slaves[$i].fetish == "cumslut">>
-			$His eagerness to get roughly throatfucked has @@.lightcoral;advanced her oral fixation.@@
+			$His eagerness to get roughly throatfucked has @@.lightcoral;advanced $his oral fixation.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "painal queen">>
 			<<if $slaves[$i].fetish == "buttslut">>
-			$His eagerness to get roughly assfucked has @@.lightcoral;advanced her anal fixation.@@
+			$His eagerness to get roughly assfucked has @@.lightcoral;advanced $his anal fixation.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "strugglefuck queen">>
 			<<if $slaves[$i].fetish == "masochist">>
-			$His eagerness to get roughly fucked has @@.lightcoral;advanced her masochism.@@
+			$His eagerness to get roughly fucked has @@.lightcoral;advanced $his masochism.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "tease">>
 			<<if $slaves[$i].fetish == "humiliation">>
-			The rush $he feels when $he shows herself off has @@.lightcoral;advanced her humiliation fetish.@@
+			The rush $he feels when $he shows $himself off has @@.lightcoral;advanced $his humiliation fetish.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "romantic">>
 			<<if $slaves[$i].fetish == "pregnancy">>
-			$His romanticism has @@.lightcoral;advanced her reproduction fetish.@@
+			$His romanticism has @@.lightcoral;advanced $his reproduction fetish.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "perverted">>
 			<<if $slaves[$i].fetish == "humiliation">>
-			$His desire to be seen doing the forbidden has @@.lightcoral;advanced her humiliation fetish.@@
+			$His desire to be seen doing the forbidden has @@.lightcoral;advanced $his humiliation fetish.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 			<<if ($slaves[$i].energy < 94)>>
-			$He's such a pervert that the depravity all around her @@.green;improves her sex drive.@@
+			$He's such a pervert that the depravity all around $him @@.green;improves $his sex drive.@@
 			<<set $slaves[$i].energy += 1>>
 			<</if>>
 		<<case "caring">>
 			<<if $slaves[$i].fetish == "submissive">>
-			$His caring nature has @@.lightcoral;advanced her submissiveness.@@
+			$His caring nature has @@.lightcoral;advanced $his submissiveness.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "unflinching">>
 			<<if $slaves[$i].fetish == "masochist">>
-			$His unflinching nature has @@.lightcoral;advanced her masochism.@@
+			$His unflinching nature has @@.lightcoral;advanced $his masochism.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<<case "size queen">>
 			<<if $slaves[$i].fetish == "buttslut">>
-			$His size queen tendencies have @@.lightcoral;advanced her devotion to being an anal slut.@@
+			$His size queen tendencies have @@.lightcoral;advanced $his devotion to being an anal slut.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 		<</switch>>
@@ -1589,7 +1591,7 @@
 			<</if>>
 		<<case "tease">>
 			<<if $slaves[$i].fetish != "humiliation">>
-			The rush $he feels when $he shows herself off has deepened into a fetish for being publicly fucked. @@.lightcoral;$He's a humiliation fetishist!@@
+			The rush $he feels when $he shows $himself off has deepened into a fetish for being publicly fucked. @@.lightcoral;$He's a humiliation fetishist!@@
 			<<set $slaves[$i].fetish = "humiliation", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<<case "romantic">>
@@ -1628,30 +1630,30 @@
 	<<if $slaves[$i].fetishStrength <= 75>>
 		<<if $slaves[$i].devotion > 50>>
 		<<if $slaves[$i].trust > 50>>
-			$He has the confidence to pursue what pleases her, @@.lightcoral;increasing her kinkiness.@@
+			$He has the confidence to pursue what pleases $him, @@.lightcoral;increasing $his kinkiness.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].fetishStrength > 10>>
 		<<if $slaves[$i].trust < -20>>
-			$He's too afraid to pursue what pleases her, @@.coral;reducing her sexual distinctiveness.@@
+			$He's too afraid to pursue what pleases $him, @@.coral;reducing $his sexual distinctiveness.@@
 			<<set $slaves[$i].fetishStrength -= 4>>
 		<<elseif $slaves[$i].devotion < -20>>
-			$He's so unhappy with her life as a sex slave that @@.coral;her interest in unusual sex decreases.@@
+			$He's so unhappy with $his life as a sex slave that @@.coral;$his interest in unusual sex decreases.@@
 			<<set $slaves[$i].fetishStrength -= 4>>
 		<<elseif $slaves[$i].trust <= 50>>
-			$He lacks the confidence to pursue what pleases her, @@.coral;reducing her kinkiness.@@
+			$He lacks the confidence to pursue what pleases $him, @@.coral;reducing $his kinkiness.@@
 			<<set $slaves[$i].fetishStrength -= 2>>
 		<<elseif $slaves[$i].devotion <= 50>>
-			$He's not fully comfortable being a sex slave, @@.coral;reducing her interest in kinky sex.@@
+			$He's not fully comfortable being a sex slave, @@.coral;reducing $his interest in kinky sex.@@
 			<<set $slaves[$i].fetishStrength -= 2>>
 		<</if>>
 		<<if $slaves[$i].fetish == "buttslut">>
 		<<if $slaves[$i].prostate == 0>>
 		<<if $slaves[$i].vagina == -1>>
 		<<if $slaves[$i].trust >= -20>>
-			$He thinks of her anus as her primary sexual organ, but $he lacks prostate or a g-spot to be internally stimulated by a cock inside her rear hole, @@.coral;reducing her ability to appreciate anal.@@
+			$He thinks of $his anus as $his primary sexual organ, but $he lacks prostate or a g-spot to be internally stimulated by a cock inside $his rear hole, @@.coral;reducing $his ability to appreciate anal.@@
 			<<set $slaves[$i].fetishStrength -= 4>>
 		<</if>>
 		<</if>>
@@ -1659,7 +1661,7 @@
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].fetishStrength <= 5>>
-		@@.coral;$He has lost all interest in her fetishes and is now sexually vanilla.@@
+		@@.coral;$He has lost all interest in $his fetishes and is now sexually vanilla.@@
 		<<set $slaves[$i].fetish = "none", $slaves[$i].fetishStrength = 0>>
 	<</if>>
 <</if>>
@@ -1670,7 +1672,7 @@
 	<<if ($slaves[$i].behavioralFlaw == "devout") && ($arcologies[0].FSChattelReligionist != "unset")>>
 	<<if ($slaves[$i].devotion <= 20)>>
 		<<if ($slaves[$i].trust < -20)>>
-		$He is inwardly @@.gold;terrified@@ by living in what $he sees as a powerful theocratic society inimical to her old world faith.
+		$He is inwardly @@.gold;terrified@@ by living in what $he sees as a powerful theocratic society inimical to $his old world faith.
 		<<set $slaves[$i].trust -= 1*Math.trunc($arcologies[0].FSChattelReligionist/25)>>
 		<<else>>
 		$He is filled with @@.mediumorchid;hatred and disgust@@ by Chattel Religionism, which $he believes to be heretical and wrong.
@@ -1678,15 +1680,15 @@
 		<</if>>
 	<<elseif ($slaves[$i].devotion <= 50)>>
 		<<if ($slaves[$i].trust > 20)>>
-		$He is experiencing considerable spiritual anguish as $he is torn between obedience and conviction that Chattel Religionism is heretical and wrong. This @@.gold;hinders her acceptance of her place@@ in slave society.
+		$He is experiencing considerable spiritual anguish as $he is torn between obedience and conviction that Chattel Religionism is heretical and wrong. This @@.gold;hinders $his acceptance of $his place@@ in slave society.
 		<<set $slaves[$i].trust -= 1*Math.trunc($arcologies[0].FSChattelReligionist/25)>>
 		<<else>>
-		$He is badly torn between Chattel Religionism and her old world faith, but $he is doing her best to defer these spiritual issues for now.
+		$He is badly torn between Chattel Religionism and $his old world faith, but $he is doing $his best to defer these spiritual issues for now.
 		<</if>>
 	<<else>>
-		$He has experienced a religious epiphany, and now accepts Chattel Religionism in her mind, her heart, and her <<if $slaves[$i].vagina > -1>>womanhood<<else>>anus<</if>>. @@.green;$He has become sinful,@@ maliciously eager to transgress against the faith $he has abandoned.
+		$He has experienced a religious epiphany, and now accepts Chattel Religionism in $his mind, $his heart, and $his <<if $slaves[$i].vagina > -1>>womanhood<<else>>anus<</if>>. @@.green;$He has become sinful,@@ maliciously eager to transgress against the faith $he has abandoned.
 		<<set $slaves[$i].behavioralQuirk = "sinful", $slaves[$i].behavioralFlaw = "none">>
-		$He now sees that everything $he has suffered up to now has been a necessary and divinely ordained trial to bring her into the true faith as a holy sex slave, @@.mediumaquamarine;enormously boosting her trust in you.@@
+		$He now sees that everything $he has suffered up to now has been a necessary and divinely ordained trial to bring $him into the true faith as a holy sex slave, @@.mediumaquamarine;enormously boosting $his trust in you.@@
 		<<if ($slaves[$i].trust < -30)>>
 		<<set $slaves[$i].trust = -10>>
 		<<else>>
@@ -1697,91 +1699,52 @@
 	<<if $slaves[$i].fetishStrength+$slaves[$i].devotion+$slaves[$i].trust > random(1,500)>>
 		<<if ($slaves[$i].behavioralFlaw == "arrogant")>>
 		<<if ($slaves[$i].fetish == "submissive")>>
-<<<<<<< HEAD
-			$His need to submit has @@.green;softened her arrogance into confidence.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
-		<</if>>
-		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
-		<<if ($slaves[$i].fetish == "humiliation")>>
-			$His need to be humiliated has @@.green;softened her bitchiness into a penchant for repartee.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
-=======
-			Her need to submit has @@.green;softened her arrogance into confidence.@@
+			$His need to submit has @@.green;softened $his arrogance into confidence.@@
 			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
 		<<if ($slaves[$i].fetish == "humiliation")>>
-			Her need to be humiliated has @@.green;softened her bitchiness into a penchant for repartee.@@
+			$His need to be humiliated has @@.green;softened $his bitchiness into a penchant for repartee.@@
 			<<run SoftenBehavioralFlaw($slaves[$i])>>
->>>>>>> c547d50929b37f22d65ea192fed560be624b963d
 		<</if>>
+
 		<<elseif ($slaves[$i].behavioralFlaw == "hates men")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
-			$He dislikes men, but fetishizes pregnancy; $he comes around, and decides that @@.green;$he needs a man to knock her up.@@
+			$He dislikes men, but fetishizes pregnancy; $he comes around, and decides that @@.green;$he needs a man to knock $him up.@@
 			<<set $slaves[$i].behavioralQuirk = "adores men", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "boobs")>>
-<<<<<<< HEAD
-			$He dislikes men and adores boobs, which @@.green;softens her hatred of men into a love of women.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
-=======
-			She dislikes men and adores boobs, which @@.green;softens her hatred of men into a love of women.@@
+			$He dislikes men and adores boobs, which @@.green;softens $his hatred of men into a love of women.@@
 			<<run SoftenBehavioralFlaw($slaves[$i])>>
->>>>>>> c547d50929b37f22d65ea192fed560be624b963d
 		<<elseif ($slaves[$i].attrXY > 85)>>
 			$He dislikes the company of men but likes their cocks; $he learns to @@.green;enjoy the male presence that comes with taking the dick.@@
 			<<set $slaves[$i].behavioralQuirk = "adores men", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-<<<<<<< HEAD
-			$He dislikes men and has constant needs; women are the obvious answer, which @@.green;softens her hatred of men into a love of feminine company.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
-=======
-			She dislikes men and has constant needs; women are the obvious answer, which @@.green;softens her hatred of men into a love of feminine company.@@
+			$He dislikes men and has constant needs; women are the obvious answer, which @@.green;softens $his hatred of men into a love of feminine company.@@
 			<<run SoftenBehavioralFlaw($slaves[$i])>>
->>>>>>> c547d50929b37f22d65ea192fed560be624b963d
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates women")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
 			$He dislikes women, but fetishizes pregnancy; $he comes around, and decides that @@.green;$he loves pregnant girls.@@
 			<<set $slaves[$i].behavioralQuirk = "adores women", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
-<<<<<<< HEAD
-			$He dislikes women and has a real oral fixation; eating dick is the obvious answer, which @@.green;softens her hatred of women into a love of men.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
-=======
-			She dislikes women and has a real oral fixation; eating dick is the obvious answer, which @@.green;softens her hatred of women into a love of men.@@
+			$He dislikes women and has a real oral fixation; eating dick is the obvious answer, which @@.green;softens $his hatred of women into a love of men.@@
 			<<run SoftenBehavioralFlaw($slaves[$i])>>
->>>>>>> c547d50929b37f22d65ea192fed560be624b963d
 		<<elseif ($slaves[$i].attrXX > 85)>>
 			$He dislikes the company of women but likes fucking them; $he learns to @@.green;enjoy the feminine presence that comes with getting some pussy.@@
 			<<set $slaves[$i].behavioralQuirk = "adores women", $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-<<<<<<< HEAD
-			$He dislikes women and has constant needs; men are the obvious answer, which @@.green;softens her hatred of women into a love of maleness.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
-		<</if>>
-		<<elseif ($slaves[$i].behavioralFlaw == "devout")>>
-		<<if ($slaves[$i].energy > 95)>>
-			$His need for constant sex has @@.green;softened her devoutness into an appetite for sacrilege.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
-		<</if>>
-		<<elseif ($slaves[$i].behavioralFlaw == "liberated")>>
-		<<if ($slaves[$i].fetish == "masochist")>>
-			$His subconscious need to be abused has@@.green;converted her liberated philosophy into an ability to advocate for slavery.@@
-			<<SoftenBehavioralFlaw $slaves[$i]>>
-=======
-			She dislikes women and has constant needs; men are the obvious answer, which @@.green;softens her hatred of women into a love of maleness.@@
+			$He dislikes women and has constant needs; men are the obvious answer, which @@.green;softens $his hatred of women into a love of maleness.@@
 			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "devout")>>
 		<<if ($slaves[$i].energy > 95)>>
-			Her need for constant sex has @@.green;softened her devoutness into an appetite for sacrilege.@@
+			$His need for constant sex has @@.green;softened $his devoutness into an appetite for sacrilege.@@
 			<<run SoftenBehavioralFlaw($slaves[$i])>>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "liberated")>>
 		<<if ($slaves[$i].fetish == "masochist")>>
-			Her subconscious need to be abused has@@.green;converted her liberated philosophy into an ability to advocate for slavery.@@
+			$His subconscious need to be abused has@@.green;converted $his liberated philosophy into an ability to advocate for slavery.@@
 			<<run SoftenBehavioralFlaw($slaves[$i])>>
->>>>>>> c547d50929b37f22d65ea192fed560be624b963d
 		<</if>>
 		<</if>>
 	<</if>>
@@ -1789,50 +1752,50 @@
 	<<if $slaves[$i].fetishStrength+$slaves[$i].devotion+$slaves[$i].trust > random(1,500)>>
 		<<if ($slaves[$i].behavioralFlaw == "arrogant")>>
 		<<if ($slaves[$i].fetish == "submissive")>>
-			$His arrogance was probably a reflection of her subconscious need to submit, which is so satisfied by sexual slavery that @@.green;$he no longer needs to act arrogant.@@
+			$His arrogance was probably a reflection of $his subconscious need to submit, which is so satisfied by sexual slavery that @@.green;$he no longer needs to act arrogant.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
 		<<if ($slaves[$i].fetish == "humiliation")>>
-			$His bitchiness was probably a reflection of her sexual need to be publicly humiliated, which is so satisfied by sexual slavery that @@.green;$he no longer needs to be insulting@@ to get the degradation $he subconsciously needs.
+			$His bitchiness was probably a reflection of $his sexual need to be publicly humiliated, which is so satisfied by sexual slavery that @@.green;$he no longer needs to be insulting@@ to get the degradation $he subconsciously needs.
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates men")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
-			$He dislikes the company of men, but fetishizes pregnancy; $he decides that men, those hunky impregnators, can't be //that// bad, and @@.green;gets over her hatred.@@
+			$He dislikes the company of men, but fetishizes pregnancy; $he decides that men, those hunky impregnators, can't be //that// bad, and @@.green;gets over $his hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "boobs")>>
-			$He dislikes the company of men and adores boobs; $he finds that $he doesn't mind ogling titties with the boys, and @@.green;gets over her hatred.@@
+			$He dislikes the company of men and adores boobs; $he finds that $he doesn't mind ogling titties with the boys, and @@.green;gets over $his hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].attrXY > 85)>>
-			$He dislikes the company of men but likes their cocks; $he gets used to putting up with maleness if it gets her the dick, and @@.green;gets over her hatred.@@
+			$He dislikes the company of men but likes their cocks; $he gets used to putting up with maleness if it gets $him the dick, and @@.green;gets over $his hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			$He dislikes the company of men and has constant needs; $he can't afford to narrow the playing field, and @@.green;gets over her hatred.@@
+			$He dislikes the company of men and has constant needs; $he can't afford to narrow the playing field, and @@.green;gets over $his hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "hates women")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
-			$He dislikes the company of women, but fetishizes pregnancy; that women, with their motherly hips and fertile cunts, can't be //that// bad, and @@.green;gets over her hatred.@@
+			$He dislikes the company of women, but fetishizes pregnancy; that women, with their motherly hips and fertile cunts, can't be //that// bad, and @@.green;gets over $his hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
-			$He dislikes the company of women and has a real oral fixation; $he decides that women, with their soft, kissable lips can't be //that// bad, and @@.green;gets over her hatred.@@
+			$He dislikes the company of women and has a real oral fixation; $he decides that women, with their soft, kissable lips can't be //that// bad, and @@.green;gets over $his hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].attrXX > 85)>>
-			$He dislikes the company of women but likes fucking them; $he gets used to putting up with girls to get into their pants, and @@.green;gets over her hatred.@@
+			$He dislikes the company of women but likes fucking them; $he gets used to putting up with girls to get into their pants, and @@.green;gets over $his hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			$He dislikes the company of women and has constant needs; $he can't afford to narrow the playing field, and @@.green;gets over her hatred.@@
+			$He dislikes the company of women and has constant needs; $he can't afford to narrow the playing field, and @@.green;gets over $his hatred.@@
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "devout")>>
 		<<if ($slaves[$i].energy > 95)>>
-			$He finally resolves her internal dilemma between the faith $he was brought up in and her all-consuming need to be a slut by deciding that $he prefers being a sinner. @@.green;$He is no longer devoutly faithful@@ to her old religion.
+			$He finally resolves $his internal dilemma between the faith $he was brought up in and $his all-consuming need to be a slut by deciding that $he prefers being a sinner. @@.green;$He is no longer devoutly faithful@@ to $his old religion.
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<<elseif ($slaves[$i].behavioralFlaw == "liberated")>>
 		<<if ($slaves[$i].fetish == "masochist")>>
-			$His pre-enslavement belief that $he deserves rights and respect fades in light of how much $he likes being beaten and abused. @@.green;$He is no longer a modern, liberated girl,@@ and accepts her place as a sex slave as natural.
+			$His pre-enslavement belief that $he deserves rights and respect fades in light of how much $he likes being beaten and abused. @@.green;$He is no longer a modern, liberated girl,@@ and accepts $his place as a sex slave as natural.
 			<<set $slaves[$i].behavioralFlaw = "none">>
 		<</if>>
 		<</if>>
@@ -1847,205 +1810,121 @@
 <<if ($slaves[$i].sexualQuirk == "none")>>
 	<<if ($slaves[$i].sexualFlaw == "hates anal")>>
 		<<if $slaves[$i].anusPiercing>>
-<<<<<<< HEAD
-			The constant stimulation her guiche piercings give her most intimate areas helps her with her anal hangups, @@.green;softening her hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			$His sexual fascination with things entering her asshole @@.green;softens her hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<<elseif ($slaves[$i].energy > 95)>>
-			As a nymphomaniac $he appreciates kinky sex, so $he @@.green;softens her hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<</if>>
-	<<elseif ($slaves[$i].sexualFlaw == "hates oral")>>
-		<<if $slaves[$i].tonguePiercing>>
-			$He can't stop sucking on her tongue piercings, and $he gets over her oral hangups, @@.green;softening her hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<<elseif ($slaves[$i].fetish == "cumslut")>>
-			$He can't get her beloved cum without choking down dick, so $he @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<<elseif ($slaves[$i].energy > 95)>>
-			$He needs sex so much $he often has to encourage her partners orally, so $he @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<</if>>
-	<<elseif ($slaves[$i].sexualFlaw == "hates penetration")>>
-		<<if $slaves[$i].vaginaPiercing>>
-			$His pussy piercings get her used to the idea that it's a fuckhole, not her precious womanhood, @@.green;softening her hatred of penetration into an appetite for abusive sex.@@ $He still cries, but $he climaxes as $he cries.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			$His sexual fascination with anal penetration @@.green;softens her hatred of penetration into an appetite for abusive sex.@@ $He still cries, but $he climaxes as $he cries.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<<elseif ($slaves[$i].energy > 95)>>
-			As a nymphomaniac $he appreciates kinky sex, so $he @@.green;softens her hatred of penetration into an appetite for abusive intercourse.@@ $He still cries, but $he climaxes as $he cries.
-			<<SoftenSexualFlaw $slaves[$i]>>
-		<</if>>
-	<<elseif ($slaves[$i].sexualFlaw == "apathetic")>>
-	<<if ($slaves[$i].fetish == "submissive")>>
-		$His subconscious drive to submit @@.green;softens her sexual apathy into constant care for her partners' wants.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<<elseif ($slaves[$i].energy > 95)>>
-		$He needs sex so badly that $he can no longer be apathetic in bed, and @@.green;softens her sexual apathy into care for what keeps her partners aroused.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<</if>>
-	<<elseif ($slaves[$i].sexualFlaw == "crude")>>
-	<<if ($slaves[$i].fetish == "buttslut")>>
-		$He needs to avoid making unsexy noises during buttsex to be an appealing enough anal partner to satisfy her backdoor needs, @@.green;softening her crudeness into a willingness to do anything.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<<elseif ($slaves[$i].energy > 95)>>
-		$He needs sex so badly that $he can no longer afford to disgust partners, and @@.green;softens her sexual crudeness into a willingness to do anything.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<</if>>
-	<<elseif ($slaves[$i].sexualFlaw == "judgemental")>>
-	<<if ($slaves[$i].fetish == "submissive")>>
-		$His subconscious belief that $he's worthless @@.green;softens her judgemental behavior into eagerness to be fucked by the biggest cocks.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<<elseif ($slaves[$i].energy > 95)>>
-		$He needs sex so badly that $he can no longer be selective, and @@.green;softens her judgemental behavior into a love of big dicks, though $he now loves them all.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<</if>>
-	<<elseif ($slaves[$i].sexualFlaw == "shamefast")>>
-	<<if ($slaves[$i].fetish == "humiliation")>>
-		$He decides that hiding won't get her the humiliation $he craves, and @@.green;softens her shamefastness into a willingness to tease.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<<elseif ($slaves[$i].energy > 95)>>
-		$He decides that hiding isn't getting her enough sex, and @@.green;softens her shamefastness into a willingness to tease.@@
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<</if>>
-	<<elseif ($slaves[$i].sexualFlaw == "idealistic")>>
-	<<if ($slaves[$i].fetish == "submissive")>>
-		$His appetite for submission has @@.green;softened her innocent ideas about sex into an ability to find romance@@ in the life of a sex slave.
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<<elseif ($slaves[$i].energy > 95)>>
-		$His appetite for sex has @@.green;softened her innocent ideas about sex into an ability to find something romantic@@ in a constant whirl of intercourse.
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<</if>>
-	<<elseif ($slaves[$i].sexualFlaw == "repressed")>>
-	<<if ($slaves[$i].fetish == "buttslut")>>
-		$He grew up being taught that good girls do not take cock up their good girl anuses, but $he's just now decided $he prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@  of dicks up her behind.
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<<elseif ($slaves[$i].fetish == "cumslut")>>
-		$He grew up being taught that good girls do not put their good girl mouths on boys' private parts, but $he's just now decided $he prefers being a bad girl and has @@.green;softened her repression into arousal at the perverted@@ idea of dicks down her throat.
-		<<SoftenSexualFlaw $slaves[$i]>>
-	<<elseif ($slaves[$i].energy > 95)>>
-		$He grew up being taught that good girls do not happily fuck anything that moves, but $he's just now decided $he prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@ of revelling in sexual addiction.
-		<<SoftenSexualFlaw $slaves[$i]>>
-=======
-			The constant stimulation her guiche piercings give her most intimate areas helps her with her anal hangups, @@.green;softening her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
+			The constant stimulation $his guiche piercings give $him most intimate areas helps $him with $his anal hangups, @@.green;softening $his hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			Her sexual fascination with things entering her asshole @@.green;softens her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
+			$His sexual fascination with things entering $his asshole @@.green;softens $his hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].energy > 95)>>
-			As a nymphomaniac she appreciates kinky sex, so she @@.green;softens her hatred of anal into an appetite for anal pain.@@ She still struggles if she's fucked in the ass, but she gets off on it anyway.
+			As a nymphomaniac $he appreciates kinky sex, so $he @@.green;softens $his hatred of anal into an appetite for anal pain.@@ $He still struggles if $he's fucked in the ass, but $he gets off on it anyway.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates oral")>>
 		<<if $slaves[$i].tonguePiercing>>
-			She can't stop sucking on her tongue piercings, and she gets over her oral hangups, @@.green;softening her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
+			$He can't stop sucking on $his tongue piercings, and $he gets over $his oral hangups, @@.green;softening $his hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
-			She can't get her beloved cum without choking down dick, so she @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
+			$He can't get $his beloved cum without choking down dick, so $he @@.green;softens $his hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].energy > 95)>>
-			She needs sex so much she often has to encourage her partners orally, so she @@.green;softens her hatred of oral into a willingness to be roughly throatfucked.@@ She still gags, but it's a good gagging, now.
+			$He needs sex so much $he often has to encourage $his partners orally, so $he @@.green;softens $his hatred of oral into a willingness to be roughly throatfucked.@@ $He still gags, but it's a good gagging, now.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates penetration")>>
 		<<if $slaves[$i].vaginaPiercing>>
-			Her pussy piercings get her used to the idea that it's a fuckhole, not her precious womanhood, @@.green;softening her hatred of penetration into an appetite for abusive sex.@@ She still cries, but she climaxes as she cries.
+			$His pussy piercings get $him used to the idea that it's a fuckhole, not $his precious womanhood, @@.green;softening $his hatred of penetration into an appetite for abusive sex.@@ $He still cries, but $he climaxes as $he cries.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			Her sexual fascination with anal penetration @@.green;softens her hatred of penetration into an appetite for abusive sex.@@ She still cries, but she climaxes as she cries.
+			$His sexual fascination with anal penetration @@.green;softens $his hatred of penetration into an appetite for abusive sex.@@ $He still cries, but $he climaxes as $he cries.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<<elseif ($slaves[$i].energy > 95)>>
-			As a nymphomaniac she appreciates kinky sex, so she @@.green;softens her hatred of penetration into an appetite for abusive intercourse.@@ She still cries, but she climaxes as she cries.
+			As a nymphomaniac $he appreciates kinky sex, so $he @@.green;softens $his hatred of penetration into an appetite for abusive intercourse.@@ $He still cries, but $he climaxes as $he cries.
 			<<run SoftenSexualFlaw($slaves[$i])>>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "apathetic")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
-		Her subconscious drive to submit @@.green;softens her sexual apathy into constant care for her partners' wants.@@
+		$His subconscious drive to submit @@.green;softens $his sexual apathy into constant care for $his partners' wants.@@
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She needs sex so badly that she can no longer be apathetic in bed, and @@.green;softens her sexual apathy into care for what keeps her partners aroused.@@
+		$He needs sex so badly that $he can no longer be apathetic in bed, and @@.green;softens $his sexual apathy into care for what keeps $his partners aroused.@@
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "crude")>>
 	<<if ($slaves[$i].fetish == "buttslut")>>
-		She needs to avoid making unsexy noises during buttsex to be an appealing enough anal partner to satisfy her backdoor needs, @@.green;softening her crudeness into a willingness to do anything.@@
+		$He needs to avoid making unsexy noises during buttsex to be an appealing enough anal partner to satisfy $his backdoor needs, @@.green;softening $his crudeness into a willingness to do anything.@@
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She needs sex so badly that she can no longer afford to disgust partners, and @@.green;softens her sexual crudeness into a willingness to do anything.@@
+		$He needs sex so badly that $he can no longer afford to disgust partners, and @@.green;softens $his sexual crudeness into a willingness to do anything.@@
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "judgemental")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
-		Her subconscious belief that she's worthless @@.green;softens her judgemental behavior into eagerness to be fucked by the biggest cocks.@@
+		$His subconscious belief that $he's worthless @@.green;softens $his judgemental behavior into eagerness to be fucked by the biggest cocks.@@
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She needs sex so badly that she can no longer be selective, and @@.green;softens her judgemental behavior into a love of big dicks, though she now loves them all.@@
+		$He needs sex so badly that $he can no longer be selective, and @@.green;softens $his judgemental behavior into a love of big dicks, though $he now loves them all.@@
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "shamefast")>>
 	<<if ($slaves[$i].fetish == "humiliation")>>
-		She decides that hiding won't get her the humiliation she craves, and @@.green;softens her shamefastness into a willingness to tease.@@
+		$He decides that hiding won't get $him the humiliation $he craves, and @@.green;softens $his shamefastness into a willingness to tease.@@
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She decides that hiding isn't getting her enough sex, and @@.green;softens her shamefastness into a willingness to tease.@@
+		$He decides that hiding isn't getting $him enough sex, and @@.green;softens $his shamefastness into a willingness to tease.@@
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "idealistic")>>
 	<<if ($slaves[$i].fetish == "submissive")>>
-		Her appetite for submission has @@.green;softened her innocent ideas about sex into an ability to find romance@@ in the life of a sex slave.
+		$His appetite for submission has @@.green;softened $his innocent ideas about sex into an ability to find romance@@ in the life of a sex slave.
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		Her appetite for sex has @@.green;softened her innocent ideas about sex into an ability to find something romantic@@ in a constant whirl of intercourse.
+		$His appetite for sex has @@.green;softened $his innocent ideas about sex into an ability to find something romantic@@ in a constant whirl of intercourse.
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "repressed")>>
 	<<if ($slaves[$i].fetish == "buttslut")>>
-		She grew up being taught that good girls do not take cock up their good girl anuses, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@  of dicks up her behind.
+		$He grew up being taught that good girls do not take cock up their good girl anuses, but $he's just now decided $he prefers being a bad girl and has @@.green;softened $his repression into arousal at the perversion@@ of dicks up $his behind.
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].fetish == "cumslut")>>
-		She grew up being taught that good girls do not put their good girl mouths on boys' private parts, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perverted@@ idea of dicks down her throat.
+		$He grew up being taught that good girls do not put their good girl mouths on boys' private parts, but $he's just now decided $he prefers being a bad girl and has @@.green;softened $his repression into arousal at the perverted@@ idea of dicks down $his throat.
 		<<run SoftenSexualFlaw($slaves[$i])>>
 	<<elseif ($slaves[$i].energy > 95)>>
-		She grew up being taught that good girls do not happily fuck anything that moves, but she's just now decided she prefers being a bad girl and has @@.green;softened her repression into arousal at the perversion@@ of revelling in sexual addiction.
+		$He grew up being taught that good girls do not happily fuck anything that moves, but $he's just now decided $he prefers being a bad girl and has @@.green;softened $his repression into arousal at the perversion@@ of revelling in sexual addiction.
 		<<run SoftenSexualFlaw($slaves[$i])>>
->>>>>>> c547d50929b37f22d65ea192fed560be624b963d
 	<</if>>
 	<</if>>
 <<else>>
 	<<if ($slaves[$i].sexualFlaw == "hates anal")>>
 		<<if $slaves[$i].anusPiercing>>
-			The constant stimulation her guiche piercings give her most intimate areas helps her with her anal hangups, so @@.green;her previous hesitations about buttsex vanish.@@
+			The constant stimulation $his guiche piercings give $him most intimate areas helps $him with $his anal hangups, so @@.green;$his previous hesitations about buttsex vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			$His sexual fascination with things entering her asshole overcomes her professed hatred of anal, so @@.green;her previous hesitations about buttsex vanish.@@
+			$His sexual fascination with things entering $his asshole overcomes $his professed hatred of anal, so @@.green;$his previous hesitations about buttsex vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			As a nymphomaniac $he doesn't really care which hole $he's getting fucked in, so @@.green;her previous hesitations about buttsex vanish.@@
+			As a nymphomaniac $he doesn't really care which hole $he's getting fucked in, so @@.green;$his previous hesitations about buttsex vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates oral")>>
 		<<if $slaves[$i].tonguePiercing>>
-			$He can't stop sucking on her tongue piercings, so @@.green;$he gets over her oral hangups.@@
+			$He can't stop sucking on $his tongue piercings, so @@.green;$he gets over $his oral hangups.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "cumslut")>>
-			$He can't get her beloved cum without sucking, so @@.green;$he forcibly overcomes her strong gag reflex.@@
+			$He can't get $his beloved cum without sucking, so @@.green;$he forcibly overcomes $his strong gag reflex.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			$He needs sex so much $he often has to encourage her partners orally, so @@.green;$he forcibly overcomes her strong gag reflex.@@
+			$He needs sex so much $he often has to encourage $his partners orally, so @@.green;$he forcibly overcomes $his strong gag reflex.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "hates penetration")>>
 		<<if $slaves[$i].vaginaPiercing>>
-			$His pussy piercings get her used to the idea that it's a fuckhole, not her precious womanhood, so @@.green;her previous hesitations about getting fucked vanish.@@
+			$His pussy piercings get $him used to the idea that it's a fuckhole, not $his precious womanhood, so @@.green;$his previous hesitations about getting fucked vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			$He's fascinated with the perversity of being anally penetrated, so @@.green;her previous hesitations about getting fucked vanish.@@
+			$He's fascinated with the perversity of being anally penetrated, so @@.green;$his previous hesitations about getting fucked vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<<elseif ($slaves[$i].energy > 95)>>
-			$He needs sex like $he needs air, so @@.green;her previous hesitations about getting fucked vanish.@@
+			$He needs sex like $he needs air, so @@.green;$his previous hesitations about getting fucked vanish.@@
 			<<set $slaves[$i].sexualFlaw = "none">>
 		<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "apathetic")>>
@@ -2053,7 +1932,7 @@
 		$He likes being on top so much @@.green;$he can no longer bear being lazy in bed.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<<elseif ($slaves[$i].energy > 95)>>
-		$He needs sex so badly that @@.green;$he can no longer afford to wait apathetically for others to fuck her.@@
+		$He needs sex so badly that @@.green;$he can no longer afford to wait apathetically for others to fuck $him.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "crude")>>
@@ -2079,7 +1958,7 @@
 		$He always expected to be able to turn down sex, but @@.green;$he's finally realized that $he doesn't want to be asked.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<<elseif ($slaves[$i].energy > 95)>>
-		Hard as it is for her to admit, $he recognizes her own willingness to take sex from other slaves if it isn't forthcoming, and @@.green;accepts that a slave nympho can't worry about trifles like consent.@@
+		Hard as it is for $him to admit, $he recognizes $his own willingness to take sex from other slaves if it isn't forthcoming, and @@.green;accepts that a slave nympho can't worry about trifles like consent.@@
 		<<set $slaves[$i].sexualFlaw = "none">>
 	<</if>>
 	<<elseif ($slaves[$i].sexualFlaw == "repressed")>>
@@ -2104,16 +1983,16 @@
 <<case "cum addict">>
 	<<if $slaves[$i].fetish != "cumslut">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			$His cum addiction @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His cum addiction @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His cum addiction @@.lightcoral;forces her back towards oral fixation.@@
+			$His cum addiction @@.lightcoral;forces $him back towards oral fixation.@@
 			<<set $slaves[$i].fetish = "cumslut">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His cum addiction @@.lightcoral;forces her back towards her past life as an abject cumslut.@@
+			$His cum addiction @@.lightcoral;forces $him back towards $his past life as an abject cumslut.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
@@ -2125,13 +2004,13 @@
 		$His paraphilia is satisfied by constant oral sex with you.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].inflation != 0 && $slaves[$i].inflationType == "cum">>
-		$His paraphilia is satisfied by swelling her body with cum.
+		$His paraphilia is satisfied by swelling $his body with cum.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].dietCum == 1>>
 		$His paraphilia is satisfied by what $he gets to eat.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].dietCum == 2>>
-		Other slaves in your penthouse are disturbed by her insatiable appetite for human ejaculate, which her heavy cum-diet encourages.
+		Other slaves in your penthouse are disturbed by $his insatiable appetite for human ejaculate, which $his heavy cum-diet encourages.
 		<<set _para = 1>>
 	<<elseif $feeder != 0>>
 		$His paraphilia is satisfied by the way $he gets to eat.
@@ -2145,22 +2024,22 @@
 <<case "anal addict">>
 	<<if $slaves[$i].fetish != "buttslut">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			$His anal addiction @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His anal addiction @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His anal addiction @@.lightcoral;forces her back towards an intense preference for buttsex.@@
+			$His anal addiction @@.lightcoral;forces $him back towards an intense preference for buttsex.@@
 			<<set $slaves[$i].fetish = "buttslut">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His anal addiction @@.lightcoral;forces her back towards her past life as an abject buttslut.@@
+			$His anal addiction @@.lightcoral;forces $him back towards $his past life as an abject buttslut.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ["whore", "serve the public", "work in the brothel", "serve in the club", "work a glory hole", "be confined in the arcade"].includes($slaves[$i].assignment)>>
-		$His paraphilia is satisfied by how many dicks get shoved up her butt at work.
+		$His paraphilia is satisfied by how many dicks get shoved up $his butt at work.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].toyHole == "ass") && ["please you", "serve in the master suite", "be your Concubine"].includes($slaves[$i].assignment)>>
 		$His paraphilia is satisfied by constant anal sex with you.
@@ -2169,7 +2048,7 @@
 		$His paraphilia is satisfied by the way $he gets to take medication.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].buttplug == "huge plug" || $slaves[$i].buttplug == "long, huge plug">>
-		$His paraphilia is satisfied by the enormous plug $he wears in her ass.
+		$His paraphilia is satisfied by the enormous plug $he wears in $his ass.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "work in the dairy") && ($dairyStimulatorsSetting > 0)>>
 	<<else>>
@@ -2180,7 +2059,7 @@
 	<<if $slaves[$i].prostate == 0>>
 	<<if $slaves[$i].vagina == -1>>
 	<<if random(1,5) == 1>>
-		Since $he lacks a prostate or a g-spot to be stimulated by cocks up her butt, her @@.green;purely psychological addiction to asshole sex resolves itself,@@ and $he @@.coral;starts to consider other sexual pursuits.@@
+		Since $he lacks a prostate or a g-spot to be stimulated by cocks up $his butt, $his @@.green;purely psychological addiction to asshole sex resolves itself,@@ and $he @@.coral;starts to consider other sexual pursuits.@@
 		<<set $slaves[$i].sexualQuirk = "none">>
 		<<set $slaves[$i].fetishStrength -= 20>>
 	<</if>>
@@ -2189,16 +2068,16 @@
 <<case "attention whore">>
 	<<if $slaves[$i].fetish != "humiliation">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Being an attention whore @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			Being an attention whore @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His addiction to exposure @@.lightcoral;forces her back towards a humiliation fetish.@@
+			$His addiction to exposure @@.lightcoral;forces $him back towards a humiliation fetish.@@
 			<<set $slaves[$i].fetish = "humiliation">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His addiction to exposure @@.lightcoral;forces her back towards her past life as an abject humiliation whore.@@
+			$His addiction to exposure @@.lightcoral;forces $him back towards $his past life as an abject humiliation whore.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
@@ -2207,7 +2086,7 @@
 		$His paraphilia is satisfied by how often $he gets publicly fucked at work.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].clothes == "none">>
-		$His paraphilia is satisfied by her total nudity.
+		$His paraphilia is satisfied by $his total nudity.
 		<<set _para = 1>>
 	<<else>>
 		$He doesn't seem to feel $he's getting fucked in public enough, leaving the attention whore @@.mediumorchid;depressed and anxious.@@
@@ -2217,125 +2096,125 @@
 <<case "breast growth">>
 	<<if $slaves[$i].fetish != "boobs">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Being a breast expansion fanatic @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			Being a breast expansion fanatic @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His addiction to breast growth @@.lightcoral;forces her back towards a boob fetish.@@
+			$His addiction to breast growth @@.lightcoral;forces $him back towards a boob fetish.@@
 			<<set $slaves[$i].fetish = "boobs">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His addiction to breast growth @@.lightcoral;forces her back towards her past life as an abject slut for mammary intercourse.@@
+			$His addiction to breast growth @@.lightcoral;forces $him back towards $his past life as an abject slut for mammary intercourse.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ["get milked", "work in the dairy"].includes($slaves[$i].assignment) && $slaves[$i].lactation > 0>>
-		$His paraphilia is satisfied by her work as a cow; $he can feel her udders swelling with milk.
+		$His paraphilia is satisfied by $his work as a cow; $he can feel $his udders swelling with milk.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].health < 0>>
-		$His paraphilia is ameliorated by her poor health; $he knows $he can't take expansion right now.
+		$His paraphilia is ameliorated by $his poor health; $he knows $he can't take expansion right now.
 	<<elseif $slaves[$i].drugs == "intensive breast injections">>
-		$His paraphilia makes her feel @@.mediumaquamarine;fulfilled to be a sex slave@@ if it means breast expansion like this.
+		$His paraphilia makes $him feel @@.mediumaquamarine;fulfilled to be a sex slave@@ if it means breast expansion like this.
 		<<set $slaves[$i].trust += 2>>
 		<<set _para = 1>>
 	<<elseif $slaves[$i].drugs == "breast injections">>
 		$His paraphilia makes breast injections very satisfying for $him.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].drugs == "hyper breast injections">>
-		$His paraphilia makes her feel @@.mediumaquamarine;fulfilled to be a sex slave@@ if it means breast expansion like this.
+		$His paraphilia makes $him feel @@.mediumaquamarine;fulfilled to be a sex slave@@ if it means breast expansion like this.
 		<<set $slaves[$i].trust += 2>>
 		<<set _para = 1>>
 	<<else>>
-		$He feels her breasts are shrinking horribly, leaving the growth addict @@.mediumorchid;depressed and anxious.@@
+		$He feels $his breasts are shrinking horribly, leaving the growth addict @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "abusive">>
 	<<if $slaves[$i].fetish != "dom">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Being addicted to sexually abusing others @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			Being addicted to sexually abusing others @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His addiction to sexual force @@.lightcoral;forces her back towards sexual dominance.@@
+			$His addiction to sexual force @@.lightcoral;forces $him back towards sexual dominance.@@
 			<<set $slaves[$i].fetish = "dom">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His need to force others to pleasure her @@.lightcoral;forces her back towards her past life as a total dom.@@
+			$His need to force others to pleasure $him @@.lightcoral;forces $him back towards $his past life as a total dom.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].assignment == "be your Head Girl")>>
-		$His paraphilia is satisfied by her work as your Head Girl.
+		$His paraphilia is satisfied by $his work as your Head Girl.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "be the Wardeness")>>
-		$His paraphilia is satisfied by her work as your Wardeness.
+		$His paraphilia is satisfied by $his work as your Wardeness.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "be the Stewardess")>>
-		$His paraphilia is satisfied by her work as the Stewardess.
+		$His paraphilia is satisfied by $his work as the Stewardess.
 		<<set _para = 1>>
 	<<else>>
-		$He gets few chances to indulge her need to hold others down as $he fucks them, leaving her @@.mediumorchid;depressed and anxious.@@
+		$He gets few chances to indulge $his need to hold others down as $he fucks them, leaving $him @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "malicious">>
 	<<if $slaves[$i].fetish != "sadist">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			Being addicted to others' sexual anguish @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			Being addicted to others' sexual anguish @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His addiction to tormenting others sexually @@.lightcoral;forces her back towards sadism.@@
+			$His addiction to tormenting others sexually @@.lightcoral;forces $him back towards sadism.@@
 			<<set $slaves[$i].fetish = "sadist">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His need to be the only one enjoying sex @@.lightcoral;forces her back towards her past life as a complete sexual sadist.@@
+			$His need to be the only one enjoying sex @@.lightcoral;forces $him back towards $his past life as a complete sexual sadist.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].assignment == "be your Head Girl")>>
-		$His paraphilia is satisfied by her work as your Head Girl.
+		$His paraphilia is satisfied by $his work as your Head Girl.
 		<<set _para = 1>>
 	<<elseif ($slaves[$i].assignment == "be the Wardeness")>>
-		$His paraphilia is satisfied by her work as your Wardeness.
+		$His paraphilia is satisfied by $his work as your Wardeness.
 		<<set _para = 1>>
 	<<else>>
-		$He gets few chances to indulge her need to subject others to sexual anguish, leaving her @@.mediumorchid;depressed and anxious.@@
+		$He gets few chances to indulge $his need to subject others to sexual anguish, leaving $him @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "self hating">>
 	<<if $slaves[$i].fetish != "masochist">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			$His sexual self hatred @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His sexual self hatred @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His sexual self hatred @@.lightcoral;forces her back towards masochism.@@
+			$His sexual self hatred @@.lightcoral;forces $him back towards masochism.@@
 			<<set $slaves[$i].fetish = "masochist">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His sexual self hatred @@.lightcoral;forces her back towards her past life as a total masochist.@@
+			$His sexual self hatred @@.lightcoral;forces $him back towards $his past life as a total masochist.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if ($slaves[$i].assignment == "work in the dairy") && ($dairyRestraintsSetting >= 2)>>
-		$His paraphilia is satisfied by her horrible life as a producer of useful fluids and a receptacle for machine rape.
+		$His paraphilia is satisfied by $his horrible life as a producer of useful fluids and a receptacle for machine rape.
 		<<set _para = 1>>
 	<<elseif ["work a glory hole", "be confined in the arcade"].includes($slaves[$i].assignment)>>
-		$His paraphilia is satisfied by her horrible life as a helpless hole for an infinite bag of dicks.
+		$His paraphilia is satisfied by $his horrible life as a helpless hole for an infinite bag of dicks.
 		<<set _para = 1>>
 	<<elseif $slaves[$i].trust < -50>>
-		$His paraphilia is satisfied by her constant terror.
+		$His paraphilia is satisfied by $his constant terror.
 		<<set _para = 1>>
 	<<else>>
 		$He doesn't seem to feel $he's treated poorly enough, leaving the self hating slut @@.mediumorchid;depressed and anxious.@@
@@ -2345,16 +2224,16 @@
 <<case "neglectful">>
 	<<if $slaves[$i].fetish != "submissive">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			$His sexual self neglect @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His sexual self neglect @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His sexual self neglect @@.lightcoral;forces her back towards submissiveness.@@
+			$His sexual self neglect @@.lightcoral;forces $him back towards submissiveness.@@
 			<<set $slaves[$i].fetish = "submissive">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His sexual self neglect @@.lightcoral;forces her back towards her past life as a total submissive.@@
+			$His sexual self neglect @@.lightcoral;forces $him back towards $his past life as a total submissive.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
@@ -2369,50 +2248,50 @@
 		$His paraphilia is satisfied by how $he's expected to serve other slaves' sexual needs.
 		<<set _para = 1>>
 	<<else>>
-		$He doesn't seem to feel $he's serving others' sexual needs enough, leaving her @@.mediumorchid;depressed and anxious.@@
+		$He doesn't seem to feel $he's serving others' sexual needs enough, leaving $him @@.mediumorchid;depressed and anxious.@@
 		<<set _para = -1>>
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "breeder">>
 	<<if $slaves[$i].fetish != "pregnancy">>
 		<<if $slaves[$i].fetishStrength > 60>>
-			$His breeding obsession @@.coral;disinterests her in her current fetish,@@ and the conflict of sexual identity causes her @@.mediumorchid;some anguish.@@
+			$His breeding obsession @@.coral;disinterests $him in $his current fetish,@@ and the conflict of sexual identity causes $him @@.mediumorchid;some anguish.@@
 			<<set $slaves[$i].fetishStrength -= 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<<else>>
-			$His breeding obsession @@.lightcoral;forces her back towards appreciation for impregnation.@@
+			$His breeding obsession @@.lightcoral;forces $him back towards appreciation for impregnation.@@
 			<<set $slaves[$i].fetish = "pregnancy">>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			$His breeding obsession @@.lightcoral;forces her back towards her past life as an abject impregnation whore.@@
+			$His breeding obsession @@.lightcoral;forces $him back towards $his past life as an abject impregnation whore.@@
 			<<set $slaves[$i].fetishStrength += 5>>
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
 	<<if $arcologies[0].FSRestart != "unset">>
-		Living in a society that rejects her paraphilia
+		Living in a society that rejects $his paraphilia
 		<<if $slaves[$i].breedingMark == 1>>
-			would have mentally and emotionally crippled her; but as a designated breeder , $he can't help but @@.hotpink;love her role@@ in society.
+			would have mentally and emotionally crippled $him; but as a designated breeder , $he can't help but @@.hotpink;love $his role@@ in society.
 			<<set $slaves[$i].devotion++>>
 		<<else>>
 			@@.mediumorchid;mentally and emotionally cripples@@ $him.
 			<<set $slaves[$i].devotion -= 10>>
 		<</if>>
 	<<elseif $arcologies[0].FSRepopulationFocus != "unset">>
-		Living in a society that glorifies her paraphilia @@.hotpink;leaves her in perpetual ecstasy.@@
+		Living in a society that glorifies $his paraphilia @@.hotpink;leaves $him in perpetual ecstasy.@@
 		<<set $slaves[$i].devotion += 5>>
 	<</if>>
 	<<if $slaves[$i].broodmother > 0 && $slaves[$i].pregKnown == 1>>
-		$He knows $he will be pregnant until her body gives out, and @@.hotpink;$he couldn't be happier.@@
+		$He knows $he will be pregnant until $his body gives out, and @@.hotpink;$he couldn't be happier.@@
 		<<set _para = 1>>
 		<<set $slaves[$i].devotion += 5>>
 	<<elseif $slaves[$i].pregControl == "labor supressors" && $slaves[$i].preg >= 40>>
-		Under the effects of labor suppression drugs, $he knows $he will be pregnant until you decided to allow her birth. @@.hotpink;$He couldn't be happier.@@
+		Under the effects of labor suppression drugs, $he knows $he will be pregnant until you decided to allow $his birth. @@.hotpink;$He couldn't be happier.@@
 		<<set _para = 1>>
 		<<set $slaves[$i].devotion += 5>>
 	<<elseif $slaves[$i].pregType >= 10 && $slaves[$i].pregKnown == 1>>
-		$His growing hyperpregnancy feeds her paraphilia and @@.hotpink;fulfills her deepest fantasies.@@
+		$His growing hyperpregnancy feeds $his paraphilia and @@.hotpink;fulfills $his deepest fantasies.@@
 		<<set _para = 1>>
 		<<set $slaves[$i].devotion += 3>>
 	<<elseif $slaves[$i].pregKnown == 1>>
@@ -2462,12 +2341,12 @@
 	<<if $slaves[$i].fetishStrength <= 95>>
 	<<if $slaves[$i].fetish != "buttslut">>
 		<<if _fetishChangeChance > random(0,100)>>
-			Since $he has had her prostate constantly stimulated to encourage her to give cum, @@.lightcoral;$he begins to look forward to anal penetration.@@
+			Since $he has had $his prostate constantly stimulated to encourage $him to give cum, @@.lightcoral;$he begins to look forward to anal penetration.@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<</if>>
 	<<else>>
 		<<if $slaves[$i].fetishStrength <= 95>>
-			Since $he has had her prostate constantly stimulated to encourage her to give cum, @@.lightcoral;$he sinks deeper into sexual reliance on penetration of her butthole.@@
+			Since $he has had $his prostate constantly stimulated to encourage $him to give cum, @@.lightcoral;$he sinks deeper into sexual reliance on penetration of $his butthole.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 	<</if>>
@@ -2479,10 +2358,10 @@
 <<if $slaves[$i].energy > 95>>
 <<if $slaves[$i].attrKnown == 1>>
 <<if ($slaves[$i].devotion < -20)>>
-	$He's having trouble accepting it, but the sex surrounding her @@.hotpink;is intriguing to a nymphomaniac.@@
+	$He's having trouble accepting it, but the sex surrounding $him @@.hotpink;is intriguing to a nymphomaniac.@@
 	<<set $slaves[$i].devotion += 2>>
 <<elseif ($slaves[$i].devotion <= 50)>>
-	@@.hotpink;$His acceptance of her life as a sex slave is driven faster@@ by how satisfied $he is by the availability of her favorite activity.
+	@@.hotpink;$His acceptance of $his life as a sex slave is driven faster@@ by how satisfied $he is by the availability of $his favorite activity.
 	<<set $slaves[$i].devotion += 2>>
 <<else>>
 	@@.hotpink;$He loves being your nympho slut.@@
@@ -2495,15 +2374,15 @@
 <<if !["heels", "pumps", "boots", "extreme heels"].includes($slaves[$i].shoes)>>
 <<if $slaves[$i].fetish != "submissive">>
 <<if $slaves[$i].career == "a dairy cow" || $slaves[$i].career == "a breeding bull">>
-	Since $he sees herself as an animal, $he is perfectly content walking on all fours.
+	Since $he sees $himself as an animal, $he is perfectly content walking on all fours.
 <<else>>
 <<if _fetishChangeChance > random(0,100)>>
-	Living as a sex slave on all fours @@.lightcoral;turns her into a sexual submissive.@@
+	Living as a sex slave on all fours @@.lightcoral;turns $him into a sexual submissive.@@
 	<<set $slaves[$i].fetish = "submissive", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 <</if>>
 <</if>>
 <<elseif ($slaves[$i].fetish == "submissive") && ($slaves[$i].fetishStrength <= 95)>>
-	Living as a sex slave on all fours @@.lightcoral;pushes her deeper into submission.@@
+	Living as a sex slave on all fours @@.lightcoral;pushes $him deeper into submission.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <</if>>
@@ -2512,39 +2391,39 @@
 
 <<switch $slaves[$i].career>>
 <<case "a slave">>
-	$He has been a slave so long that $he can barely remember making decisions for herself, and @@.hotpink;feels naturally drawn@@ to her <<= WrittenMaster($slaves[$i])>>.
+	$He has been a slave so long that $he can barely remember making decisions for $himself, and @@.hotpink;feels naturally drawn@@ to $his <<= WrittenMaster($slaves[$i])>>.
 	<<set $slaves[$i].devotion += 1>>
 <<case "a dairy slave">>
-	$He is @@.hotpink;thankful@@ that you saved her from becoming a mindless cow<<if $slaves[$i].trust < 50>>, though $he still has her doubts<</if>>.
+	$He is @@.hotpink;thankful@@ that you saved $him from becoming a mindless cow<<if $slaves[$i].trust < 50>>, though $he still has $his doubts<</if>>.
 	<<set $slaves[$i].devotion += 2>>
 <<case "a Fuckdoll">>
-	$He was once a Fuckdoll, leaving her @@.hotpink;willing to obey on an instinctual level.@@
+	$He was once a Fuckdoll, leaving $him @@.hotpink;willing to obey on an instinctual level.@@
 	<<set $slaves[$i].devotion += 5>>
 <<case "a cum dump" "a meat toilet">>
-	$He was trained to be nothing more than a warm hole to fuck, leaving her @@.hotpink;obedient@@ and @@.mediumaquamarine;willing.@@
+	$He was trained to be nothing more than a warm hole to fuck, leaving $him @@.hotpink;obedient@@ and @@.mediumaquamarine;willing.@@
 	<<set $slaves[$i].devotion += 2, $slaves[$i].trust += 1>>
 <<case "a dairy cow">>
-	$His mental conditioning @@.hotpink;leaves her mellow@@ and @@.mediumaquamarine;trusting.@@
+	$His mental conditioning @@.hotpink;leaves $him mellow@@ and @@.mediumaquamarine;trusting.@@
 	<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 	<<if $slaves[$i].lactation == 0>>
-		However, $he is @@.gold;reduced to a state of sheer panic@@ over her dried up breasts.
+		However, $he is @@.gold;reduced to a state of sheer panic@@ over $his dried up breasts.
 		<<set $slaves[$i].trust -= 10>>
 	<<elseif $slaves[$i].pregKnown == 0 && $slaves[$i].bellyImplant < 1500>>
-		However, $he is @@.gold;reduced to a state of panic@@ that her milk will dry up if $he doesn't get pregnant again soon.
+		However, $he is @@.gold;reduced to a state of panic@@ that $his milk will dry up if $he doesn't get pregnant again soon.
 		<<set $slaves[$i].trust -= 2>>
 	<</if>>
 <<case "a breeding bull">>
-	$His mental conditioning @@.hotpink;leaves her mellow@@ and @@.mediumaquamarine;trusting.@@
+	$His mental conditioning @@.hotpink;leaves $him mellow@@ and @@.mediumaquamarine;trusting.@@
 	<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 	<<if !canAchieveErection($slaves[$i])>>
-		However, $he is @@.gold;reduced to a state of sheer panic@@ over her inability to get hard.
+		However, $he is @@.gold;reduced to a state of sheer panic@@ over $his inability to get hard.
 		<<set $slaves[$i].trust -= 10>>
 	<<elseif !canPenetrate($slaves[$i])>>
 		However, $he is @@.mediumorchid;disappointed@@ that $he is unable to mount and fuck others any more.
 		<<set $slaves[$i].devotion -= 2>>
 	<</if>>
 <<case "a slave since birth">>
-	The tank's imprinting left a lasting impression on her; deep down $he
+	The tank's imprinting left a lasting impression on $him; deep down $he
 	<<if $slaves[$i].tankBaby == 2>>
 		@@.hotpink;knows you are to be obeyed@@ or @@.gold;bad things will happen,@@
 		<<set $slaves[$i].devotion += 3, $slaves[$i].trust -= 3>>
@@ -2555,16 +2434,16 @@
 	even if $he can't understand why.
 <<case "a breeder">>
 	<<if $slaves[$i].pregKnown == 1 && $arcologies[0].FSRepopulation != "unset">>
-		$His life used to revolve around being pregnant all the time and nothing has changed. However, being surrounded with happy, heavily pregnant women leaves her @@.hotpink;slightly more accepting@@ of her fate and @@.mediumaquamarine;hopeful@@ that her trained body will be useful to you.
+		$His life used to revolve around being pregnant all the time and nothing has changed. However, being surrounded with happy, heavily pregnant women leaves $him @@.hotpink;slightly more accepting@@ of $his fate and @@.mediumaquamarine;hopeful@@ that $his trained body will be useful to you.
 		<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 	<<elseif $slaves[$i].pregControl == "speed up">>
-		$His life used to revolve around being pregnant all the time and nothing has changed. $He @@.gold;watches in horror@@ as her middle visibly swells before her eyes. $He @@.hotpink;slips more into submission@@ as the pressure in her womb increases.
+		$His life used to revolve around being pregnant all the time and nothing has changed. $He @@.gold;watches in horror@@ as $his middle visibly swells before $his eyes. $He @@.hotpink;slips more into submission@@ as the pressure in $his womb increases.
 		<<set $slaves[$i].trust -= 10, $slaves[$i].devotion += 5>>
 	<<elseif $slaves[$i].pregKnown == 1 || $slaves[$i].pregWeek < 0>>
-		$His life used to revolve around being pregnant all the time and nothing has changed. $He @@.gold;fears@@ that her entire life will revolve around pregnancy and @@.hotpink;slips more into submission@@ of her fate.
+		$His life used to revolve around being pregnant all the time and nothing has changed. $He @@.gold;fears@@ that $his entire life will revolve around pregnancy and @@.hotpink;slips more into submission@@ of $his fate.
 		<<set $slaves[$i].trust -= 1, $slaves[$i].devotion += 1>>
 	<<else>>
-		$He remembers how her womb used to be swollen with children as often as possible, and is @@.hotpink;thankful@@ and @@.mediumaquamarine;grateful@@ that $he isn't just meat to fuck pregnant anymore.
+		$He remembers how $his womb used to be swollen with children as often as possible, and is @@.hotpink;thankful@@ and @@.mediumaquamarine;grateful@@ that $he isn't just meat to fuck pregnant anymore.
 		<<set $slaves[$i].trust += 1, $slaves[$i].devotion += 1>>
 	<</if>>
 <<case "a bioreactor">>
@@ -2573,10 +2452,10 @@
 <<case "a Futanari Sister">>
 	<<if $masterSuiteUpgradeLuxury == 2>>
 		<<if $slaves[$i].assignment == "serve in the master suite">>
-			As a former Futanari Sister, the fuckpit in $masterSuiteName feels like home to her, and $he has @@.mediumaquamarine;no desire to ever leave.@@
+			As a former Futanari Sister, the fuckpit in $masterSuiteName feels like home to $him, and $he has @@.mediumaquamarine;no desire to ever leave.@@
 			<<set $slaves[$i].trust += 1>>
 		<<else>>
-			$He knows that $masterSuiteName features a fuckpit much like the one $he spent years enjoying as a Futanari Sister, and @@.hotpink;does her best@@ to be a good girl in the hope you'll send her there someday.
+			$He knows that $masterSuiteName features a fuckpit much like the one $he spent years enjoying as a Futanari Sister, and @@.hotpink;does $his best@@ to be a good girl in the hope you'll send $him there someday.
 			<<set $slaves[$i].devotion += 1>>
 		<</if>>
 	<</if>>
@@ -2584,7 +2463,7 @@
 	<<if $slaves[$i].trust >= -50>>
 		<<if setup.gratefulCareers.includes($slaves[$i].career)>>
 			<<set $slaves[$i].trust += 1>>
-			$He remembers how hard her life was before $he was a slave, and
+			$He remembers how hard $his life was before $he was a slave, and
 			<<if $slaves[$i].trust > 50>>
 				@@.mediumaquamarine;trusts you a bit more@@ for improving it.
 			<<elseif $slaves[$i].trust > -20>>
@@ -2632,11 +2511,11 @@
 <<if $slaves[$i].fuckdoll > 0>>
 	Its smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing is slaved to its stimulation systems.
 <<elseif $slaves[$i].fetish == "mindbroken">>
-	The effects of her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing cannot reach her shattered mind.
+	The effects of $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing cannot reach $his shattered mind.
 <<else>>
 <<switch $slaves[$i].clitSetting>>
 <<case "none">>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing disrupts arousal, @@.red;reducing her sex drive@@ and @@.mediumorchid;infuriating her.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing disrupts arousal, @@.red;reducing $his sex drive@@ and @@.mediumorchid;infuriating $him.@@
 	<<set $slaves[$i].devotion -= 2>>
 	<<if $slaves[$i].energy > 5>>
 	<<set $slaves[$i].energy -= 10>>
@@ -2645,165 +2524,165 @@
 	<</if>>
 <<case "all">>
 	<<if $slaves[$i].energy <= 95>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages sex of all kinds, @@.green;increasing her sex drive.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages sex of all kinds, @@.green;increasing $his sex drive.@@
 	<<set $slaves[$i].energy += 3>>
 	<</if>>
 <<case "women">>
 	<<if $slaves[$i].attrXX < 95>>
-		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;increases her attraction to girls@@ by pleasuring her when $he's around them.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;increases $his attraction to girls@@ by pleasuring $him when $he's around them.
 		<<set $slaves[$i].attrXX += 4+$assistant+$assistant>>
 		<<if $slaves[$i].energy < 80>>
-			This has the secondary effect of slightly @@.green;enhancing her libido.@@
+			This has the secondary effect of slightly @@.green;enhancing $his libido.@@
 			<<set $slaves[$i].energy++>>
 		<</if>>
 	<</if>>
 <<case "anti-women">>
 	<<if $slaves[$i].attrXX > 0>>
-		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;suppresses her attraction to girls@@ by making her private parts very uncomfortable when $he's around them.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;suppresses $his attraction to girls@@ by making $his private parts very uncomfortable when $he's around them.
 		<<set $slaves[$i].attrXX -= Math.clamp($slaves[$i].attrXX-(4+$assistant+$assistant),0,100)>>
 		<<if $slaves[$i].energy > 0>>
-			This has the secondary effect of slightly @@.red;reducing her libido.@@
+			This has the secondary effect of slightly @@.red;reducing $his libido.@@
 			<<set $slaves[$i].energy-->>
 		<</if>>
 	<</if>>
 <<case "men">>
 	<<if $slaves[$i].attrXY < 95>>
-		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;increases her attraction to guys@@ by pleasuring her when $he's around cocks.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;increases $his attraction to guys@@ by pleasuring $him when $he's around cocks.
 		<<set $slaves[$i].attrXY += 4+$assistant+$assistant>>
 		<<if $slaves[$i].energy < 80>>
-			This has the secondary effect of slightly @@.green;enhancing her libido.@@
+			This has the secondary effect of slightly @@.green;enhancing $his libido.@@
 			<<set $slaves[$i].energy++>>
 		<</if>>
 	<</if>>
 <<case "anti-men">>
 	<<if $slaves[$i].attrXY > 0>>
-		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;suppresses her attraction to guys@@ by making her private parts very uncomfortable when $he's around them.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing successfully @@.green;suppresses $his attraction to guys@@ by making $his private parts very uncomfortable when $he's around them.
 		<<set $slaves[$i].attrXY -= Math.clamp($slaves[$i].attrXY-(4+$assistant+$assistant),0,100)>>
 		<<if $slaves[$i].energy > 0>>
-			This has the secondary effect of slightly @@.red;reducing her libido.@@
+			This has the secondary effect of slightly @@.red;reducing $his libido.@@
 			<<set $slaves[$i].energy-->>
 		<</if>>
 	<</if>>
 <<case "vanilla">>
 	<<if ($slaves[$i].fetish != "none") && (_fetishChangeChance > random(0,100)-20*$assistant)>>
-		After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms during straightforward sex, @@.coral;her sexuality returns to normal.@@
+		After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms during straightforward sex, @@.coral;$his sexuality returns to normal.@@
 		<<set $slaves[$i].fetish = "none", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 	<</if>>
 <<case "oral">>
 	<<if ($slaves[$i].fetish != "cumslut")>>
 	<<if $slaves[$i].fetishStrength >= 10>>
-		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he's using her mouth.
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when $he's using $his mouth.
 		<<set $slaves[$i].fetishStrength -= 20>>
 	<<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-		After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms as $he performs oral sex, @@.lightcoral;$he develops a fetish for cum.@@
+		After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms as $he performs oral sex, @@.lightcoral;$he develops a fetish for cum.@@
 		<<set $slaves[$i].fetish = "cumslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 	<</if>>
 	<<elseif ($slaves[$i].fetishStrength <= 95)>>
-		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her oral fetish.@@
+		$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his oral fetish.@@
 		<<set $slaves[$i].fetishStrength += 4>>
 	<</if>>
 <<case "anal">>
 <<if ($slaves[$i].fetish != "buttslut")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when her rear hole is being fucked.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when $his rear hole is being fucked.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when her ass is being stimulated, @@.lightcoral;$he develops a fetish for being an anal bottom.@@
+	After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when $his ass is being stimulated, @@.lightcoral;$he develops a fetish for being an anal bottom.@@
 	<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her anal fetish.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his anal fetish.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "boobs">>
 <<if ($slaves[$i].fetish != "boobs")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when her tits are being touched.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when $his tits are being touched.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when her nipples are being stimulated, @@.lightcoral;$he develops a fetish for her tits.@@
+	After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when $his nipples are being stimulated, @@.lightcoral;$he develops a fetish for $his tits.@@
 	<<set $slaves[$i].fetish = "boobs", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her boob fetish.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his boob fetish.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "submissive">>
 <<if ($slaves[$i].fetish != "submissive")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he's being held down and used.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when $he's being held down and used.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when $he is restrained, @@.lightcoral;$he develops a fetish for submission.@@
+	After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when $he is restrained, @@.lightcoral;$he develops a fetish for submission.@@
 	<<set $slaves[$i].fetish = "submissive", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her submission.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his submission.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "humiliation">>
 <<if ($slaves[$i].fetish != "humiliation")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he's got an audience.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when $he's got an audience.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when $he is being humiliated, @@.lightcoral;$he develops a fetish for humiliation.@@
+	After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms when $he is being humiliated, @@.lightcoral;$he develops a fetish for humiliation.@@
 	<<set $slaves[$i].fetish = "humiliation", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her humiliation fetish.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his humiliation fetish.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "pregnancy">>
 <<if ($slaves[$i].fetish != "pregnancy")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he feels like $he's being bred.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when $he feels like $he's being bred.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms during <<if $PC.dick == 1>>unprotected sex<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>loving contact with the female anatomy<</if>>, @@.lightcoral;$he begins to fantasize about pregnancy.@@
+	After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms during <<if $PC.dick == 1>>unprotected sex<<if $PC.vagina == 1>> and <</if>><</if>><<if $PC.vagina == 1>>loving contact with the female anatomy<</if>>, @@.lightcoral;$he begins to fantasize about pregnancy.@@
 	<<set $slaves[$i].fetish = "pregnancy", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her pregnancy fetish.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his pregnancy fetish.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "dom">>
 <<if ($slaves[$i].fetish != "dom")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when another slave is servicing $him.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when another slave is servicing $him.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's taking an active, dominant sexual role, @@.lightcoral;$he begins to enjoy dominance.@@
+	After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's taking an active, dominant sexual role, @@.lightcoral;$he begins to enjoy dominance.@@
 	<<set $slaves[$i].fetish = "dom", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her dominance.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his dominance.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "masochist">>
 <<if ($slaves[$i].fetish != "masochist")>>
 <<if $slaves[$i].fetishStrength >= 10>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he's being hurt.
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when $he's being hurt.
 	<<set $slaves[$i].fetishStrength -= 20>>
 <<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-	After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's being beaten, @@.lightcoral;$he begins to enjoy pain.@@
+	After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's being beaten, @@.lightcoral;$he begins to enjoy pain.@@
 	<<set $slaves[$i].fetish = "masochist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 <</if>>
 <<elseif ($slaves[$i].fetishStrength <= 95)>>
-	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her masochism.@@
+	$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his masochism.@@
 	<<set $slaves[$i].fetishStrength += 4>>
 <</if>>
 <<case "sadist">>
 	<<if ($slaves[$i].fetish != "sadist")>>
 		<<if $slaves[$i].fetishStrength >= 10>>
-			$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress her current fetish,@@ encouraging her to orgasm when $he witnesses or even takes part in another slave's pain.
+			$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> acts to @@.coral;suppress $his current fetish,@@ encouraging $him to orgasm when $he witnesses or even takes part in another slave's pain.
 			<<set $slaves[$i].fetishStrength -= 20>>
 		<<elseif (_fetishChangeChance > random(0,100)-20*$assistant)>>
-			After her smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's involved in the abuse of other slaves, @@.lightcoral;$he begins to develop a sadistic streak.@@
+			After $his smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing encourages many orgasms while $he's involved in the abuse of other slaves, @@.lightcoral;$he begins to develop a sadistic streak.@@
 			<<set $slaves[$i].fetish = "sadist", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<</if>>
 	<<elseif ($slaves[$i].fetishStrength <= 95)>>
-			$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances her sadism.@@
+			$His smart <<if $slaves[$i].vagina > -1>>clit<<else>>frenulum<</if>> piercing @@.lightcoral;advances $his sadism.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 	<</if>>
 <</switch>>
@@ -2822,18 +2701,18 @@
 	<<if _fetishChangeChance > random(0,100)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "serve in the club")>>
 		<<if $slaves[$i].fetish != "buttslut">>
-			With so much sexual attention focused on her anus, @@.lightcoral;$he comes to view buttsex as the centerpiece of her sexuality.@@
+			With so much sexual attention focused on $his anus, @@.lightcoral;$he comes to view buttsex as the centerpiece of $his sexuality.@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength <= 95)>>
-			With so much sexual attention focused on her anus, @@.lightcoral;her love of anal increases.@@
+			With so much sexual attention focused on $his anus, @@.lightcoral;$his love of anal increases.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 	<<elseif ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel")>>
 		<<if $slaves[$i].fetish != "buttslut">>
-			With her anus constantly sold for use, @@.lightcoral;$he comes to view buttsex as the centerpiece of her sexuality.@@
+			With $his anus constantly sold for use, @@.lightcoral;$he comes to view buttsex as the centerpiece of $his sexuality.@@
 			<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "buttslut")>>
-			With her anus constantly sold for use, @@.lightcoral;her love of anal increases.@@
+			With $his anus constantly sold for use, @@.lightcoral;$his love of anal increases.@@
 			<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 	<</if>>
@@ -2845,18 +2724,18 @@
 	<<if _fetishChangeChance > random(0,90)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "serve in the club")>>
 		<<if $slaves[$i].fetish != "buttslut">>
-		Since most of her orgasms are caused by prostate stimulation from anal sex with citizens, @@.lightcoral;$he comes to view her asshole as her primary sexual organ.@@
+		Since most of $his orgasms are caused by prostate stimulation from anal sex with citizens, @@.lightcoral;$he comes to view $his asshole as $his primary sexual organ.@@
 		<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength <= 95)>>
-		After many, many prostate orgasms with a citizen's cock up her butt, @@.lightcoral;her love of anal increases.@@
+		After many, many prostate orgasms with a citizen's cock up $his butt, @@.lightcoral;$his love of anal increases.@@
 		<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 	<<elseif ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel")>>
 		<<if $slaves[$i].fetish != "buttslut">>
-		Since most of her orgasms are caused by prostate stimulation from anal sex with customers, @@.lightcoral;$he comes to view her asshole as her primary sexual organ.@@
+		Since most of $his orgasms are caused by prostate stimulation from anal sex with customers, @@.lightcoral;$he comes to view $his asshole as $his primary sexual organ.@@
 		<<set $slaves[$i].fetish = "buttslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "buttslut") && ($slaves[$i].fetishStrength <= 95)>>
-		After many, many prostate orgasms with a customer's cock up her butt, @@.lightcoral;her love of anal increases.@@
+		After many, many prostate orgasms with a customer's cock up $his butt, @@.lightcoral;$his love of anal increases.@@
 		<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 	<</if>>
@@ -2872,10 +2751,10 @@
 	<<if ($slaves[$i].fetishStrength <= 95)>>
 	<<if _fetishChangeChance > random(0,100)>>
 		<<if $slaves[$i].fetish != "cumslut">>
-		While masturbating, $he's at first surprised but then aroused by her drug-enhanced ejaculation. After repeatedly covering herself in the stuff, @@.lightcoral;$he's become a cum fetishist.@@
+		While masturbating, $he's at first surprised but then aroused by $his drug-enhanced ejaculation. After repeatedly covering $himself in the stuff, @@.lightcoral;$he's become a cum fetishist.@@
 		<<set $slaves[$i].fetish = "cumslut", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 10>>
 		<<elseif ($slaves[$i].fetish == "cumslut") && ($slaves[$i].fetishStrength <= 95)>>
-		$His masturbation sessions have come to consist mainly of her blowing massive loads of cum into her own mouth. @@.lightcoral;$His ejaculate addiction increases.@@
+		$His masturbation sessions have come to consist mainly of $him blowing massive loads of cum into $his own mouth. @@.lightcoral;$His ejaculate addiction increases.@@
 		<<set $slaves[$i].fetishStrength += 4>>
 		<</if>>
 	<</if>>
@@ -2901,11 +2780,11 @@
 	<<if $slaves[$i].sexualFlaw != "neglectful">>
 		<<if $slaves[$i].energy < 80>>
 		<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade")>>
-			Serving as a sex worker drives her deeper and deeper into submission, and $he pays less and less attention to her own pleasure. @@.yellow;$He's become sexually self neglectful,@@ and only cares about getting others off.
+			Serving as a sex worker drives $him deeper and deeper into submission, and $he pays less and less attention to $his own pleasure. @@.yellow;$He's become sexually self neglectful,@@ and only cares about getting others off.
 			<<set $slaves[$i].sexualFlaw = "neglectful">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -2914,11 +2793,11 @@
 	<<if $slaves[$i].sexualFlaw != "neglectful">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			$His aphrodisiac addiction makes her dependent on submission. @@.yellow;$He's become sexually self neglectful,@@ and only cares about getting others off.
+			$His aphrodisiac addiction makes $him dependent on submission. @@.yellow;$He's become sexually self neglectful,@@ and only cares about getting others off.
 			<<set $slaves[$i].sexualFlaw = "neglectful">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -2927,19 +2806,19 @@
 <<case "cumslut">>
 	<<if $slaves[$i].sexualFlaw != "cum addict">>
 		<<if $slaves[$i].dietCum > 0>>
-			In addition to being an orally fixated cumslut, $he eats ejaculate in her food, making the taste omnipresent for $him. @@.yellow;$He's become psychologically addicted to cum.@@
+			In addition to being an orally fixated cumslut, $he eats ejaculate in $his food, making the taste omnipresent for $him. @@.yellow;$He's become psychologically addicted to cum.@@
 			<<set $slaves[$i].sexualFlaw = "cum addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].inflation != 0 && $slaves[$i].inflationType == "cum">>
-			In addition to being an orally fixated cumslut, $he is required to keep her belly bloated with cum at all times, making her life revolve around being full of cum. @@.yellow;$He's become psychologically addicted to cum.@@
+			In addition to being an orally fixated cumslut, $he is required to keep $his belly bloated with cum at all times, making $his life revolve around being full of cum. @@.yellow;$He's become psychologically addicted to cum.@@
 			<<set $slaves[$i].sexualFlaw = "cum addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $cockFeeder != 0>>
@@ -2947,7 +2826,7 @@
 			<<set $slaves[$i].sexualFlaw = "cum addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -2955,11 +2834,11 @@
 	<<if $slaves[$i].sexualFlaw != "cum addict">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			$His aphrodisiac addiction makes her dependent on oral stimulation. @@.yellow;$He's become psychologically addicted to cum.@@
+			$His aphrodisiac addiction makes $him dependent on oral stimulation. @@.yellow;$He's become psychologically addicted to cum.@@
 			<<set $slaves[$i].sexualFlaw = "cum addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -2970,19 +2849,19 @@
 		<<if $slaves[$i].energy > 80>>
 		<<if $slaves[$i].anus > 0>>
 		<<if $slaves[$i].prostate > 0>>
-			$He has a powerful sex drive, and constantly coming to prostate stimulation drives her ever deeper into her identity as a helpless anal slut. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
+			$He has a powerful sex drive, and constantly coming to prostate stimulation drives $him ever deeper into $his identity as a helpless anal slut. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
 			<<set $slaves[$i].sexualFlaw = "anal addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].vaginalAccessory == "chastity belt">>
-			$He has a powerful sex drive, and since her pussy's off limits, $he sinks ever deeper into her identity as a helpless anal slut. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
+			$He has a powerful sex drive, and since $his pussy's off limits, $he sinks ever deeper into $his identity as a helpless anal slut. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
 			<<set $slaves[$i].sexualFlaw = "anal addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -2992,11 +2871,11 @@
 	<<if $slaves[$i].sexualFlaw != "anal addict">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			$His aphrodisiac addiction makes her dependent on constant buttsex. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
+			$His aphrodisiac addiction makes $him dependent on constant buttsex. @@.yellow;$He's become psychologically addicted to getting assfucked.@@
 			<<set $slaves[$i].sexualFlaw = "anal addict">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3005,11 +2884,11 @@
 <<case "humiliation">>
 	<<if $slaves[$i].sexualFlaw != "attention whore">>
 		<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club")>>
-			Serving as a public sex worker gives her plenty of delicious humiliation, and $he cares less and less about sex itself and more about making people blush. @@.yellow;$He's become an attention whore.@@
+			Serving as a public sex worker gives $him plenty of delicious humiliation, and $he cares less and less about sex itself and more about making people blush. @@.yellow;$He's become an attention whore.@@
 			<<set $slaves[$i].sexualFlaw = "attention whore">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3017,11 +2896,11 @@
 	<<if $slaves[$i].sexualFlaw != "attention whore">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			$His aphrodisiac addiction makes her dependent on stares to get off. @@.yellow;$He's become an attention whore.@@
+			$His aphrodisiac addiction makes $him dependent on stares to get off. @@.yellow;$He's become an attention whore.@@
 			<<set $slaves[$i].sexualFlaw = "attention whore">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3030,27 +2909,27 @@
 <<case "boobs">>
 	<<if $slaves[$i].sexualFlaw != "breast growth">>
 		<<if $slaves[$i].drugs == "breast injections" || $slaves[$i].drugs == "intensive breast injections">>
-			$He loves her tits, and feeling them respond to drug injections starts to hold more fascination for her than mere sex. @@.yellow;$His sexual identity is now dominated by her swelling boobs.@@
+			$He loves $his tits, and feeling them respond to drug injections starts to hold more fascination for $him than mere sex. @@.yellow;$His sexual identity is now dominated by $his swelling boobs.@@
 			<<set $slaves[$i].sexualFlaw = "breast growth">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].drugs == "hyper breast injections">>
-			$He loves her tits, and watching them steadily swell from the hyper injections starts to hold more fascination for her than mere sex. @@.yellow;$His sexual identity is now dominated by her swelling boobs.@@
+			$He loves $his tits, and watching them steadily swell from the hyper injections starts to hold more fascination for $him than mere sex. @@.yellow;$His sexual identity is now dominated by $his swelling boobs.@@
 			<<set $slaves[$i].sexualFlaw = "breast growth">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif ($slaves[$i].hormoneBalance >= 100) && ($slaves[$i].boobs < 1000)>>
-			$He loves her tits, and feeling them grow under female hormone treatments starts to hold more fascination for her than mere sex. @@.yellow;$His sexual identity is now dominated by her swelling boobs.@@
+			$He loves $his tits, and feeling them grow under female hormone treatments starts to hold more fascination for $him than mere sex. @@.yellow;$His sexual identity is now dominated by $his swelling boobs.@@
 			<<set $slaves[$i].sexualFlaw = "breast growth">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3058,11 +2937,11 @@
 	<<if $slaves[$i].sexualFlaw != "breast growth">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			$His aphrodisiac addiction makes her dependent on her tits for relief. @@.yellow;$His sexual identity is now dominated by her swelling boobs.@@
+			$His aphrodisiac addiction makes $him dependent on $his tits for relief. @@.yellow;$His sexual identity is now dominated by $his swelling boobs.@@
 			<<set $slaves[$i].sexualFlaw = "breast growth">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3076,7 +2955,7 @@
 			<<set $slaves[$i].sexualFlaw = "malicious">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3085,11 +2964,11 @@
 	<<if $slaves[$i].sexualFlaw != "malicious">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			$His aphrodisiac addiction makes her dependent on degradation in other slaves to get off. $He becomes @@.yellow;sexually addicted to inflicting pain and anguish.@@
+			$His aphrodisiac addiction makes $him dependent on degradation in other slaves to get off. $He becomes @@.yellow;sexually addicted to inflicting pain and anguish.@@
 			<<set $slaves[$i].sexualFlaw = "malicious">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3100,11 +2979,11 @@
 		<<if $HeadGirl != 0>>
 		<<if $HGSeverity >= 0>>
 		<<if $slaves[$i].ID == $HeadGirl.ID>>
-			As Head Girl, $he's plentifully provided with misbehaving slaves to dominate sexually. $He becomes more and more eager until $he's actively @@.yellow;sexually abusive, getting off on the thrill of forcing herself on other slaves.@@
+			As Head Girl, $he's plentifully provided with misbehaving slaves to dominate sexually. $He becomes more and more eager until $he's actively @@.yellow;sexually abusive, getting off on the thrill of forcing $himself on other slaves.@@
 			<<set $slaves[$i].sexualFlaw = "abusive">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3114,11 +2993,11 @@
 	<<if $slaves[$i].sexualFlaw != "abusive">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			$His aphrodisiac addiction makes her dependent on pain in others to get off. $He's become @@.yellow;sexually abusive, getting off on the thrill of forcing herself on other slaves.@@
+			$His aphrodisiac addiction makes $him dependent on pain in others to get off. $He's become @@.yellow;sexually abusive, getting off on the thrill of forcing $himself on other slaves.@@
 			<<set $slaves[$i].sexualFlaw = "abusive">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3127,19 +3006,19 @@
 <<case "masochist">>
 	<<if $slaves[$i].sexualFlaw != "self hating">>
 		<<if ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade")>>
-			Condemned to serve as a public fuckhole, her masochistic tendencies darken into sexual appreciation for her life as a human sex toy. @@.yellow;$He's descended into true self hatred.@@
+			Condemned to serve as a public fuckhole, $his masochistic tendencies darken into sexual appreciation for $his life as a human sex toy. @@.yellow;$He's descended into true self hatred.@@
 			<<set $slaves[$i].sexualFlaw = "self hating">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif ($slaves[$i].assignment == "work in the dairy") && ($dairyRestraintsSetting >= 2)>>
-			Strapped into a milking machine's tender, penetrative embrace, her masochistic tendencies darken into sexual appreciation for her life as a human factory. @@.yellow;$He's descended into true self hatred.@@
+			Strapped into a milking machine's tender, penetrative embrace, $his masochistic tendencies darken into sexual appreciation for $his life as a human factory. @@.yellow;$He's descended into true self hatred.@@
 			<<set $slaves[$i].sexualFlaw = "self hating">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3147,11 +3026,11 @@
 	<<if $slaves[$i].sexualFlaw != "self hating">>
 		<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
 		<<if $slaves[$i].addict > 2>>
-			$His aphrodisiac addiction makes her dependent on sexual self harm. @@.yellow;$He's descended into true self hatred.@@
+			$His aphrodisiac addiction makes $him dependent on sexual self harm. @@.yellow;$He's descended into true self hatred.@@
 			<<set $slaves[$i].sexualFlaw = "self hating">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -3165,11 +3044,11 @@
 			<<else>>
 				$He's stuffed full of child and brings a new life into the world each week, with or without a good fucking,
 			<</if>>
-			causing her to pay more sexual attention to pregnancy than to impregnation. @@.yellow;$He's become obsessed with breeding.@@
+			causing $him to pay more sexual attention to pregnancy than to impregnation. @@.yellow;$He's become obsessed with breeding.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $slaves[$i].devotion > 75>>
@@ -3177,7 +3056,7 @@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].bellyPreg >= 120000>>
@@ -3185,7 +3064,7 @@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif $slaves[$i].births > 10>>
@@ -3193,15 +3072,15 @@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<<elseif ($slaves[$i].assignment == "work in the dairy") && ($dairyPregSetting >= 2) && ($slaves[$i].pregKnown == 1)>>
-			With her womanhood fucked full of cum and fertility drugs, her pregnancy fetish deepens into true perversity. @@.yellow;$He's become obsessed with breeding.@@
+			With $his womanhood fucked full of cum and fertility drugs, $his pregnancy fetish deepens into true perversity. @@.yellow;$He's become obsessed with breeding.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
+				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
 		<</if>>
@@ -4031,7 +3910,7 @@
 	<</if>>
 	<<if $slaves[$i].bellyFluid > 2000>>
 		<<if $slaves[$i].inflation > 1>>
-			$He finds herself only capable of handling @@.yellow;two liters of $slaves[$i].inflationType inside $his body at once,@@ far less than $his required bloating.
+			$He finds $himself only capable of handling @@.yellow;two liters of $slaves[$i].inflationType inside $his body at once,@@ far less than $his required bloating.
 		<<else>>
 			$His body cannot handle having so much $slaves[$i].inflationType inside it, forcing $him to release $his contents until $he feels better.
 		<</if>>
@@ -4044,78 +3923,78 @@
 	<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 		<<if ($slaves[$i].fetish == "pregnancy")>>
 			<<if $slaves[$i].preg >= 40>>
-				$He's full-term and has never been hornier. $His pregnancy fetish combined with her ripe belly confers a @@.green;huge improvement in her sexual appetite.@@
+				$He's full-term and has never been hornier. $His pregnancy fetish combined with $his ripe belly confers a @@.green;huge improvement in $his sexual appetite.@@
 				<<set $slaves[$i].energy += 5>>
 			<<elseif $slaves[$i].preg > 30>>
-				Being a pregnancy fetishist and hugely pregnant confers an @@.green;improvement in her sexual appetite.@@
+				Being a pregnancy fetishist and hugely pregnant confers an @@.green;improvement in $his sexual appetite.@@
 				<<set $slaves[$i].energy += 3>>
 			<<elseif $slaves[$i].preg > 20>>
-				Being a pregnancy fetishist and pregnant confers a @@.green;slow improvement in her sexual appetite.@@
+				Being a pregnancy fetishist and pregnant confers a @@.green;slow improvement in $his sexual appetite.@@
 				<<set $slaves[$i].energy += 2>>
 			<<elseif $slaves[$i].preg > 10>>
-				$His new pregnancy excites her and produces @@.green;very slow improvement in her sexual appetite.@@
+				$His new pregnancy excites $him and produces @@.green;very slow improvement in $his sexual appetite.@@
 				<<set $slaves[$i].energy += 1>>
 			<<elseif $slaves[$i].preg <= 10 && $slaves[$i].preg > 3>>
-				The rigors of early pregnancy do not seem to decrease her sex drive. If anything, it seems to be exciting $him.
+				The rigors of early pregnancy do not seem to decrease $his sex drive. If anything, it seems to be exciting $him.
 			<</if>>
 			<<if $slaves[$i].fetishKnown == 0>>
-				Given her enthusiasm, $he appears to have a @@.lightcoral;pregnancy fetish.@@
+				Given $his enthusiasm, $he appears to have a @@.lightcoral;pregnancy fetish.@@
 				<<set $slaves[$i].fetishKnown = 1>>
 			<</if>>
 		<<else>> /* not pregnancy fetish */
 			<<if ($slaves[$i].energy < 41)>>
 				<<if ($slaves[$i].preg <= 10) && $slaves[$i].preg > 3>>
-					The rigors of early pregnancy @@.red;reduce her sexual appetite.@@
+					The rigors of early pregnancy @@.red;reduce $his sexual appetite.@@
 					<<set $slaves[$i].energy -= 3>>
 				<<elseif ($slaves[$i].preg >= 40)>>
-					$He is full-term and feels massively unattractive, @@.red;greatly suppressing her sexual appetite.@@
+					$He is full-term and feels massively unattractive, @@.red;greatly suppressing $his sexual appetite.@@
 					<<set $slaves[$i].energy -= 4>>
 				<<elseif ($slaves[$i].preg > 30)>>
-					$His advanced pregnancy @@.red;greatly suppresses her sexual appetite.@@
+					$His advanced pregnancy @@.red;greatly suppresses $his sexual appetite.@@
 					<<set $slaves[$i].energy -= 3>>
 				<<elseif ($slaves[$i].preg > 20)>>
-					$His growing pregnancy @@.red;suppresses her sexual appetite.@@
+					$His growing pregnancy @@.red;suppresses $his sexual appetite.@@
 					<<set $slaves[$i].energy -= 2>>
 				<<elseif ($slaves[$i].bellyPreg >= 1500)>>
-					$His visible pregnancy causes her to feel unattractive, @@.red;reducing her sex drive.@@
+					$His visible pregnancy causes $him to feel unattractive, @@.red;reducing $his sex drive.@@
 					<<set $slaves[$i].energy -= 1>>
 				<</if>>
 			<<elseif ($slaves[$i].energy < 61)>>
 				<<if $slaves[$i].preg <= 10 && $slaves[$i].preg > 3>>
-					The rigors of early pregnancy @@.red;slightly reduce her sexual appetite.@@
+					The rigors of early pregnancy @@.red;slightly reduce $his sexual appetite.@@
 					<<set $slaves[$i].energy -= 1>>
 				<<elseif ($slaves[$i].preg >= 40)>>
 					$He is full-term and @@.green;hornier than ever.@@
 					<<set $slaves[$i].energy += 2>>
 				<<elseif ($slaves[$i].preg > 30)>>
-					$His advanced pregnancy @@.green;increases her libido.@@
+					$His advanced pregnancy @@.green;increases $his libido.@@
 					<<set $slaves[$i].energy += 1>>
 				<</if>>
 			<<elseif $slaves[$i].energy < 90>>
 				<<if ($slaves[$i].preg <= 10) && $slaves[$i].preg > 3>>
-					The rigors of early pregnancy @@.red;reduce her sexual appetite.@@
+					The rigors of early pregnancy @@.red;reduce $his sexual appetite.@@
 					<<set $slaves[$i].energy -= 3>>
 				<<elseif ($slaves[$i].preg >= 40)>>
 					$He is full-term and suffering from an @@.green;unquenchable need for sex.@@
 					<<set $slaves[$i].energy += 4>>
 				<<elseif $slaves[$i].preg > 30>>
-					$His advanced pregnancy comes with a hugely increased libido, @@.green;greatly increasing her sexual drive.@@
+					$His advanced pregnancy comes with a hugely increased libido, @@.green;greatly increasing $his sexual drive.@@
 					<<set $slaves[$i].energy += 3>>
 				<<elseif $slaves[$i].preg > 20>>
-					$His growing pregnancy comes with an increased libido, @@.green;spurring her sexual appetite.@@
+					$His growing pregnancy comes with an increased libido, @@.green;spurring $his sexual appetite.@@
 					<<set $slaves[$i].energy += 2>>
 				<</if>>
 			<<else>>
 				<<if $slaves[$i].preg <= 10 && $slaves[$i].preg > 3>>
-					The rigors of early pregnancy @@.red;reduce her sexual appetite.@@
+					The rigors of early pregnancy @@.red;reduce $his sexual appetite.@@
 					<<set $slaves[$i].energy -= 3>>
 				<<elseif ($slaves[$i].preg >= 40)>>
-					$He is full-term and horny as hell. $His hormones and already high libido have her acting like $he hasn't had a good fuck in nine months.
+					$He is full-term and horny as hell. $His hormones and already high libido have $him acting like $he hasn't had a good fuck in nine months.
 					<<set $slaves[$i].energy += 2>>
 				<<elseif $slaves[$i].preg > 30>>
-					$His advanced pregnancy, combined with her already high libido, has her practically begging for sex whenever $he has a spare moment.
+					$His advanced pregnancy, combined with $his already high libido, has $him practically begging for sex whenever $he has a spare moment.
 				<<elseif $slaves[$i].preg > 20>>
-					$His growing pregnancy, combined with her already high libido, has her always itching for some sex.
+					$His growing pregnancy, combined with $his already high libido, has $him always itching for some sex.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -4124,34 +4003,34 @@
 	<<if ($slaves[$i].preg >= 10)>>
 		<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 			<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 50)>>
-				$He @@.mediumaquamarine;feels right@@ to be growing heavy with child. To her, a growing baby means better milk.
+				$He @@.mediumaquamarine;feels right@@ to be growing heavy with child. To $him, a growing baby means better milk.
 				<<set $slaves[$i].devotion += 1>>
 			<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].pregSource == -1)>>
-				$He is filled with a feeling of @@.mediumorchid;revulsion@@ that your child is growing within her body.
+				$He is filled with a feeling of @@.mediumorchid;revulsion@@ that your child is growing within $his body.
 				<<set $slaves[$i].devotion -= 1>>
 				<<if $slaves[$i].relationship == -3>>
-					This is compounded by the fact that you @@.gold;forced her to marry you@@ and @@.mediumorchid;raped her pregnant.@@
+					This is compounded by the fact that you @@.gold;forced $him to marry you@@ and @@.mediumorchid;raped $him pregnant.@@
 					<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= -5>>
 				<</if>>
 			<<elseif ($slaves[$i].devotion > 50) && ($slaves[$i].pregSource == -1)>>
 				$He @@.hotpink;loves@@ that your child is growing within $him.
 				<<set $slaves[$i].devotion += 1>>
 				<<if $slaves[$i].relationship == -3>>
-					This is compounded by the fact that $he is your @@.hotpink;devoted wife@@ and @@.mediumaquamarine;feels it is her duty@@ to bear your children.
+					This is compounded by the fact that $he is your @@.hotpink;devoted wife@@ and @@.mediumaquamarine;feels it is $his duty@@ to bear your children.
 					<<set $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 				<</if>>
 			<</if>>
 			<<if ($slaves[$i].pregSource == $slaves[$i].relationshipTarget) && ($slaves[$i].relationship > 2)>>
-				$He can't help but feel @@.mediumaquamarine;satisfaction@@ in carrying her lover's child.
+				$He can't help but feel @@.mediumaquamarine;satisfaction@@ in carrying $his lover's child.
 				<<set $slaves[$i].trust += 1>>
 			<</if>>
 			/* pregmod start */
 			<<if $slaves[$i].pregSource == $slaves[$i].ID>>
 				<<if $slaves[$i].sexualQuirk == "perverted">>
-					$He's @@.hotpink;aroused@@ at the mere concept that the baby growing inside her was conceived by her own sperm.
+					$He's @@.hotpink;aroused@@ at the mere concept that the baby growing inside $him was conceived by $his own sperm.
 					<<set $slaves[$i].devotion += 1>>
 				<<else>>
-					$He often becomes preoccupied with @@.gold;worry@@ that her self-conceived child will be born unhealthy.
+					$He often becomes preoccupied with @@.gold;worry@@ that $his self-conceived child will be born unhealthy.
 					<<set $slaves[$i].trust -= 1>>
 				<</if>>
 			<</if>>
@@ -4160,15 +4039,15 @@
 				<<if $Nurse == 0 && $slaves[$i].assignment != "get treatment in the clinic">>
 					<<if $slaves[$i].pregType >= 20 && $slaves[$i].devotion <= 20 && $slaves[$i].trust <= 50>>
 						<<if $slaves[$i].sexualFlaw == "self hating">>
-							$He is @@.hotpink;delirious with joy@@ over her straining womb. Every week $he gets bigger, fuller and tighter; in her mind, it won't be long until $he bursts, bringing her children into the world.
+							$He is @@.hotpink;delirious with joy@@ over $his straining womb. Every week $he gets bigger, fuller and tighter; in $his mind, it won't be long until $he bursts, bringing $his children into the world.
 							<<set $slaves[$i].devotion += 10>>
 						<<else>>
-							$He is @@.gold;utterly terrified@@ by her straining womb. Every week $he gets bigger, fuller and tighter; in her mind, it won't be long until $he bursts, bringing her children into @@.mediumorchid;this wretched world.@@<<if $slaves[$i].bellyPreg >= 600000>> $He is absolutely huge, her stretchmark streaked orb of a belly keeps her painfully immobilized. $He counts every second, hoping that $he can make it to the next. $His mind @@.red;can't handle it and shatters,@@ leaving her nothing more than an overfilled broodmother.<<set $slaves[$i].fetish = "mindbroken">><</if>>
+							$He is @@.gold;utterly terrified@@ by $his straining womb. Every week $he gets bigger, fuller and tighter; in $his mind, it won't be long until $he bursts, bringing $his children into @@.mediumorchid;this wretched world.@@<<if $slaves[$i].bellyPreg >= 600000>> $He is absolutely huge, $his stretchmark streaked orb of a belly keeps $him painfully immobilized. $He counts every second, hoping that $he can make it to the next. $His mind @@.red;can't handle it and shatters,@@ leaving $him nothing more than an overfilled broodmother.<<set $slaves[$i].fetish = "mindbroken">><</if>>
 							<<set $slaves[$i].devotion -= 10>>
 							<<set $slaves[$i].trust -= 10>>
 						<</if>>
 					<<elseif $slaves[$i].devotion <= 20 && $slaves[$i].trust <= 20>>
-						$He is @@.gold;utterly terrified@@ by her straining womb and filled @@.mediumorchid;with disgust@@ that you've turned her into nothing more than a rapid breeding vessel.
+						$He is @@.gold;utterly terrified@@ by $his straining womb and filled @@.mediumorchid;with disgust@@ that you've turned $him into nothing more than a rapid breeding vessel.
 						<<set $slaves[$i].devotion -= 10>>
 						<<set $slaves[$i].trust -= 10>>
 					<<elseif $slaves[$i].devotion <= 80 && $slaves[$i].trust <= 80>>
@@ -4178,34 +4057,34 @@
 				<</if>>
 			<<case "labor supressors">>
 				<<if $slaves[$i].devotion <= 20 && ($slaves[$i].pregSource == -1)>>
-					$He is filled with @@.mediumorchid;hate@@ that you're forcing her to continue carrying your child.
+					$He is filled with @@.mediumorchid;hate@@ that you're forcing $him to continue carrying your child.
 					<<set $slaves[$i].devotion -= 5>>
 				<</if>>
 			<<case "slow gestation">>
 				<<if $slaves[$i].devotion <= 20 && ($slaves[$i].pregSource == -1)>>
-					$He is filled with @@.mediumorchid;hate@@ that you're tormenting her by prolonging her pregnancy.
+					$He is filled with @@.mediumorchid;hate@@ that you're tormenting $him by prolonging $his pregnancy.
 					<<set $slaves[$i].devotion -= 5>>
 				<</if>>
 			<</switch>>
 			<<if $slaves[$i].induce == 1>>
-				$His child<<if $slaves[$i].pregType > 1>>ren visibly shift<<else>> visibly shifts<</if>> within her womb as <<if $slaves[$i].pregType > 1>>they prepare<<else>>it prepares<</if>> to enter the world. $He experiences several contractions, but not enough to deter her from her work.
+				$His child<<if $slaves[$i].pregType > 1>>ren visibly shift<<else>> visibly shifts<</if>> within $his womb as <<if $slaves[$i].pregType > 1>>they prepare<<else>>it prepares<</if>> to enter the world. $He experiences several contractions, but not enough to deter $him from $his work.
 			<<elseif $slaves[$i].pregControl == "labor supressors">>
 				$His child<<if $slaves[$i].pregType > 1>>ren are<<else>> is<</if>> oddly calm; it is unlikely $he will give birth soon, despite being overdue.
 			<<elseif $slaves[$i].broodmother == 0>>
 				<<if $slaves[$i].preg > 41>>
-					$He is constantly beset by her squirming child<<if $slaves[$i].pregType > 1>>ren<</if>>. They're overdue, so $he's likely to go into labor at any moment, but they aren't quite ready to leave their home.
+					$He is constantly beset by $his squirming child<<if $slaves[$i].pregType > 1>>ren<</if>>. They're overdue, so $he's likely to go into labor at any moment, but they aren't quite ready to leave their home.
 				<<elseif $slaves[$i].preg > 39>>
-					$He is constantly beset by her squirming child<<if $slaves[$i].pregType > 1>>ren<</if>>. Given their liveliness, and how long $he has been pregnant, it is likely that $he will go into labor at any time now.
+					$He is constantly beset by $his squirming child<<if $slaves[$i].pregType > 1>>ren<</if>>. Given their liveliness, and how long $he has been pregnant, it is likely that $he will go into labor at any time now.
 				<<elseif $slaves[$i].preg > 38>>
-					$He often has to stop for breaks to soothe her kicking child<<if $slaves[$i].pregType > 1>>ren<</if>> and to catch her breath. $He is far enough along that $he may go into labor any day now.
+					$He often has to stop for breaks to soothe $his kicking child<<if $slaves[$i].pregType > 1>>ren<</if>> and to catch $his breath. $He is far enough along that $he may go into labor any day now.
 				<<elseif $slaves[$i].preg > 37>>
-					$He often has to stop for breaks to soothe her kicking child<<if $slaves[$i].pregType > 1>>ren<</if>>. $He is far enough along that $he may go into early labor.
+					$He often has to stop for breaks to soothe $his kicking child<<if $slaves[$i].pregType > 1>>ren<</if>>. $He is far enough along that $he may go into early labor.
 				<</if>>
 			<<elseif $slaves[$i].broodmother > 0 && $slaves[$i].preg > 37>>
 				<<if $slaves[$i].broodmother == 1>>
-					$He often has to stop for breaks to soothe her kicking children and to catch her breath. It's only a matter of time until the next one drops into position to be born.
+					$He often has to stop for breaks to soothe $his kicking children and to catch $his breath. It's only a matter of time until the next one drops into position to be born.
 				<<else>>
-					$He is constantly beset by her squirming children and often has to stop to handle labor pains. $He is never quite sure when the next one will drop into position to be born.
+					$He is constantly beset by $his squirming children and often has to stop to handle labor pains. $He is never quite sure when the next one will drop into position to be born.
 				<</if>>
 			<</if>>
 			/* pregmod end */
@@ -4214,48 +4093,48 @@
 					<<switch random(1,4)>>
 					<<case 1>>
 						<<set $slaves[$i].behavioralFlaw = "odd">>
-						The stress of her growing pregnancy leads her to begin @@.red;acting oddly.@@
+						The stress of $his growing pregnancy leads $him to begin @@.red;acting oddly.@@
 					<<case 2>>
 						<<set $slaves[$i].behavioralFlaw = "hates men">>
-						The stress of her growing pregnancy leads her to begin @@.red;disliking the company of men.@@
+						The stress of $his growing pregnancy leads $him to begin @@.red;disliking the company of men.@@
 					<<case 3>>
 						<<set $slaves[$i].behavioralFlaw = "hates women">>
-						The stress of her growing pregnancy leads her to begin @@.red;disliking the company of women.@@
+						The stress of $his growing pregnancy leads $him to begin @@.red;disliking the company of women.@@
 					<<case 4>>
 						<<set $slaves[$i].behavioralFlaw = "gluttonous">>
-						The stress of her growing pregnancy leads her to begin @@.red;taking solace in overeating.@@
+						The stress of $his growing pregnancy leads $him to begin @@.red;taking solace in overeating.@@
 					<</switch>>
 				<<elseif ($slaves[$i].sexualFlaw == "none") && ($slaves[$i].sexualQuirk == "none")>>
 					<<switch random(1,8)>>
 					<<case 1>>
 						<<set $slaves[$i].sexualFlaw = "hates oral">>
-						The stress of her growing pregnancy leads her to begin @@.red;rejecting oral sex.@@
+						The stress of $his growing pregnancy leads $him to begin @@.red;rejecting oral sex.@@
 					<<case 2>>
 						<<set $slaves[$i].sexualFlaw = "hates anal">>
-						The stress of her growing pregnancy leads her to begin @@.red;rejecting anal sex.@@
+						The stress of $his growing pregnancy leads $him to begin @@.red;rejecting anal sex.@@
 					<<case 3>>
 						<<set $slaves[$i].sexualFlaw = "hates penetration">>
-						The stress of her growing pregnancy leads her to begin @@.red;rejecting penetrative sex.@@
+						The stress of $his growing pregnancy leads $him to begin @@.red;rejecting penetrative sex.@@
 					<<case 4>>
 						<<set $slaves[$i].sexualFlaw = "shamefast">>
-						The stress of her growing pregnancy leads her to become @@.red;paranoid about her naked body.@@
+						The stress of $his growing pregnancy leads $him to become @@.red;paranoid about $his naked body.@@
 					<<case 5>>
 						<<set $slaves[$i].sexualFlaw = "repressed">>
-						The stress of her growing pregnancy leads her to begin @@.red;rejecting sex.@@
+						The stress of $his growing pregnancy leads $him to begin @@.red;rejecting sex.@@
 					<<case 6>>
 						<<set $slaves[$i].sexualFlaw = "apathetic">>
-						The stress of her growing pregnancy causes her to become @@.red;inert during sex.@@
+						The stress of $his growing pregnancy causes $him to become @@.red;inert during sex.@@
 					<<case 7>>
 						<<set $slaves[$i].sexualFlaw = "crude">>
-						The stress of her growing pregnancy leads her to @@.red;become quite crude.@@
+						The stress of $his growing pregnancy leads $him to @@.red;become quite crude.@@
 					<<case 8>>
 						<<set $slaves[$i].sexualFlaw = "judgemental">>
-						The stress of her growing pregnancy causes her to become overly @@.red;judgemental of her partners.@@
+						The stress of $his growing pregnancy causes $him to become overly @@.red;judgemental of $his partners.@@
 					<</switch>>
 				<</if>>
 			<</if>>
 			<<if ($slaves[$i].fetishStrength <= 95) && (_fetishChangeChance > random(0,100)) && ($slaves[$i].oralCount+$slaves[$i].vaginalCount+$slaves[$i].analCount > 200) && ($slaves[$i].fetish != "pregnancy")>>
-				The combination of pregnancy and constant sex has @@.lightcoral;sexualized pregnancy for her.@@
+				The combination of pregnancy and constant sex has @@.lightcoral;sexualized pregnancy for $him.@@
 				<<set $slaves[$i].fetish = "pregnancy", $slaves[$i].fetishKnown = 1, $slaves[$i].fetishStrength = 65>>
 			<</if>>
 		<</if>> /* closes not fuckdoll or mindbroken check; still .preg >= 10 */
@@ -4306,7 +4185,7 @@
                 <<if ($slaves[$i].inducedNCS == 0)>>
                         <<if ($slaves[$i].pregType >= 30) && ((($slaves[$i].assignment == "be your Concubine" || $slaves[$i].assignment == "serve in the master suite") && $masterSuitePregnancySlaveLuxuries == 1) || ($slaves[$i].diet == "high caloric"))>>
                                 <<if ($slaves[$i].weight <= 65)>>
-                                        $He has @@.lime;gained weight@@ in order to better sustain <<print $his>>self and $his children.
+                                        $He has @@.lime;gained weight@@ in order to better sustain $himself and $his children.
                                         <<set $slaves[$i].weight += 1>>
                                 <</if>>
                                 <<if (random(1,100) > 60)>>
@@ -4365,7 +4244,7 @@
 			<</if>>
 		<<elseif $slaves[$i].bellyPreg >= 1500>>
 			<<if setup.fakeBellies.includes($bellyAccessory)>>
-				$His growing pregnancy renders her fake belly moot.
+				$His growing pregnancy renders $his fake belly moot.
 				<<set $slaves[$i].bellyAccessory = "none">>
 			<</if>>
 			<<if ($slaves[$i].preg > 20) && ($slaves[$i].lactation == 0)>>
@@ -4411,10 +4290,10 @@
 	$slaves[$i].slaveName is ripe for breeding, so you ejaculate inside $him often. When you bore of $his fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>cunt<</if>>, you keep $him around as you fuck other slaves so you can pull out of them, shove your cock into $him, and fill $him with your seed anyway.
 	<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 		<<if ($slaves[$i].devotion <= 20) && ($slaves[$i].trust > -20)>>
-			$He attempts to resist this treatment, and spends most of her days bound securely, with your cum dripping out of her <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. This regimen fills $him with @@.mediumorchid;hatred,@@ @@.gold;fear,@@ and @@.lime;a pregnancy.@@
+			$He attempts to resist this treatment, and spends most of $his days bound securely, with your cum dripping out of $his <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. This regimen fills $him with @@.mediumorchid;hatred,@@ @@.gold;fear,@@ and @@.lime;a pregnancy.@@
 			<<set $slaves[$i].devotion -= 5, $slaves[$i].trust -= 5>>
 			<<if ($slaves[$i].sexualFlaw == "none")>>
-				This unpleasant interlude leaves her @@.red;hating penetration@@ of her now-pregnant <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>.
+				This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his now-pregnant <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>.
 				<<if $slaves[$i].mpreg == 1>>
 					<<set $slaves[$i].sexualFlaw = "hates anal">>
 				<<else>>
@@ -4422,12 +4301,12 @@
 				<</if>>
 			<</if>>
 		<<elseif ($slaves[$i].devotion <= 20)>>
-			$He complies fearfully with your use of her body.
+			$He complies fearfully with your use of $his body.
 		<<elseif ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-			$He is @@.hotpink;absurdly pleased@@ by this treatment, @@.mediumaquamarine;trustingly@@ serving as your breeding bitch until $he @@.lime;conceives.@@ $He's so aroused by the constant insemination that having your dick, wet from another slave, pushed inside her to climax is often enough to bring $him to orgasm in turn.
+			$He is @@.hotpink;absurdly pleased@@ by this treatment, @@.mediumaquamarine;trustingly@@ serving as your breeding bitch until $he @@.lime;conceives.@@ $He's so aroused by the constant insemination that having your dick, wet from another slave, pushed inside $him to climax is often enough to bring $him to orgasm in turn.
 			<<set $slaves[$i].devotion += 5, $slaves[$i].trust += 5>>
 			<<if ($slaves[$i].fetishStrength <= 95)>>
-				Such total satisfaction of her pregnancy fantasies @@.lightcoral;strengthens her fetish.@@
+				Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
 				<<set $slaves[$i].fetishStrength += 4>>
 			<</if>>
 			<<set $slaves[$i].need = 0>>
@@ -4448,18 +4327,18 @@
 	<<elseif $HGCum == 0>>
 		It's $HeadGirl.slaveName's responsibility to impregnate fertile slaves, but your Head Girl can only fuck a limited number of slaves enough to ensure impregnation each week.
 	<<elseif !canBreed($slaves[$i], $HeadGirl)>>
-		It's $HeadGirl.slaveName's responsibility to impregnate fertile slaves, but $HeadGirl.slaveName's sperm is unable to fertilize $slaves[$i].slaveName's ova, so $he doesn't waste her seed trying.
+		It's $HeadGirl.slaveName's responsibility to impregnate fertile slaves, but $HeadGirl.slaveName's sperm is unable to fertilize $slaves[$i].slaveName's ova, so she doesn't waste her seed trying.
 	<<else>>
 		It's $HeadGirl.slaveName's responsibility to get $him pregnant, a task your
 		<<if ($HeadGirl.fetish == "pregnancy") && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
 			pregnancy fetishist Head Girl is @@.hotpink;extremely pleased@@ to take on.
 			<<set $HeadGirl.devotion += 2>>
 			<<if ($HeadGirl.fetishStrength <= 95)>>
-				The opportunity @@.lightcoral;strengthens her pregnancy fetish@@ by indulgence.
+				The opportunity @@.lightcoral;strengthens $his pregnancy fetish@@ by indulgence.
 				<<set $HeadGirl.fetishStrength += 4>>
 			<</if>>
 		<<elseif $HeadGirl.career == "a breeding bull">>
-			Head Girl feels @@.hotpink;$he was meant for.@@
+			Head Girl feels @@.hotpink;she was meant for.@@
 			<<set $HeadGirl.devotion += 1>>
 		<<elseif ($HeadGirl.attrXX > 65) && ($HeadGirl.attrKnown == 1)>>
 			<<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>-hungry Head Girl is @@.hotpink;happy@@ to take on.
@@ -4470,17 +4349,17 @@
 
 		<<if ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 			<<if $slaves[$i].career == "a dairy cow" && ($slaves[$i].devotion <= 20)>>
-				$slaves[$i].slaveName feels a need to be bred by the Head Girl, and submits herself to her superior's virile cock until @@.lime;conception@@ is verified.
+				$slaves[$i].slaveName feels a need to be bred by the Head Girl, and submits $himself to $his superior's virile cock until @@.lime;conception@@ is verified.
 			<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].trust > -20)>>
 				<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
-					$His interest is piqued, however, when $slaves[$i].slaveName shows signs of resistance. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ @@.mediumorchid;rapes the poor girl@@ pregnant, ejaculating inside her victim more often than is really necessary for @@.lime;conception.@@
+					Her interest is piqued, however, when $slaves[$i].slaveName shows signs of resistance. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ @@.mediumorchid;rapes the poor girl@@ pregnant, ejaculating inside her victim more often than is really necessary for @@.lime;conception.@@
 					<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 5>>
 				<<else>>
-					$slaves[$i].slaveName tries to resist her, so $HeadGirl.slaveName is forced to @@.mediumorchid;rape the poor girl@@ pregnant, regularly ejaculating inside her until @@.lime;conception@@ is confirmed.
+					$slaves[$i].slaveName tries to resist her, so $HeadGirl.slaveName is forced to @@.mediumorchid;rape the poor girl@@ pregnant, regularly ejaculating inside $him until @@.lime;conception@@ is confirmed.
 					<<set $slaves[$i].devotion -= 4>>
 				<</if>>
 				<<if ($slaves[$i].sexualFlaw == "none")>>
-					This unpleasant interlude leaves her @@.red;hating penetration@@ of her violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
+					This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
 					<<if $slaves[$i].mpreg == 1>>
 						<<set $slaves[$i].sexualFlaw = "hates anal">>
 					<<else>>
@@ -4489,14 +4368,14 @@
 				<</if>>
 			<<elseif ($slaves[$i].devotion <= 20)>>
 				<<if (($HeadGirl.fetish == "sadist") || ($HeadGirl.fetish == "dom")) && ($HeadGirl.fetishKnown == 1) && ($HeadGirl.fetishStrength > 60)>>
-					$His interest is piqued, however, when it becomes clear that $slaves[$i].slaveName, though fearfully obedient, is not happy with being bred. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ ensures that her victim @@.mediumorchid;does not enjoy@@ a week of being @@.lime;raped pregnant.@@
+					Her interest is piqued, however, when it becomes clear that $slaves[$i].slaveName, though fearfully obedient, is not happy with being bred. $HeadGirl.slaveName @@.hotpink;enthusiastically@@ ensures that her victim @@.mediumorchid;does not enjoy@@ a week of being @@.lime;raped pregnant.@@
 					<<set $HeadGirl.devotion += 2, $slaves[$i].devotion -= 3>>
 				<<else>>
-					$slaves[$i].slaveName, though fearfully obedient, is not happy with being bred, but $HeadGirl.slaveName @@.mediumorchid;rapes the poor girl@@ pregnant anyway, regularly ejaculating inside her until @@.lime;conception@@ is confirmed.
+					$slaves[$i].slaveName, though fearfully obedient, is not happy with being bred, but $HeadGirl.slaveName @@.mediumorchid;rapes the poor girl@@ pregnant anyway, regularly ejaculating inside $him until @@.lime;conception@@ is confirmed.
 					<<set $slaves[$i].devotion -= 2>>
 				<</if>>
 				<<if ($slaves[$i].sexualFlaw == "none")>>
-					This unpleasant interlude leaves her @@.red;hating penetration@@ of her violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
+					This unpleasant interlude leaves $him @@.red;hating penetration@@ of $his violated <<if $slaves[$i].mpreg == 1>>anus<<else>>pussy<</if>>.
 					<<if $slaves[$i].mpreg == 1>>
 						<<set $slaves[$i].sexualFlaw = "hates anal">>
 					<<else>>
@@ -4505,27 +4384,27 @@
 				<</if>>
 			<<elseif ($slaves[$i].devotion < 75)>>
 				<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
-					$slaves[$i].slaveName, a pregnancy fetishist, is @@.hotpink;very willing to be bred@@ by your Head Girl, and eagerly takes her superior's cock bareback until @@.lime;conception@@ is verified.
+					$slaves[$i].slaveName, a pregnancy fetishist, is @@.hotpink;very willing to be bred@@ by your Head Girl, and eagerly takes $his superior's cock bareback until @@.lime;conception@@ is verified.
 					<<set $slaves[$i].devotion += 2>>
 					<<if ($slaves[$i].fetishStrength <= 95)>>
-						Such total satisfaction of her pregnancy fantasies @@.lightcoral;strengthens her fetish.@@
+						Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
 						<<set $slaves[$i].fetishStrength += 4>>
 					<</if>>
 					<<set $slaves[$i].need = 0>>
 				<<else>>
-					$slaves[$i].slaveName is willing to be bred by the Head Girl, and takes her superior's cock bareback until @@.lime;conception@@ is verified.
+					$slaves[$i].slaveName is willing to be bred by the Head Girl, and takes $his superior's cock bareback until @@.lime;conception@@ is verified.
 				<</if>>
 			<<else>>
 				<<if ($slaves[$i].fetish == "pregnancy") && ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
 					$slaves[$i].slaveName, a pregnancy fetishist, considers getting bred by your Head Girl @@.hotpink;a dream come true,@@ and gets fucked bareback daily until @@.lime;conception@@ is verified.
 					<<set $slaves[$i].devotion += 2>>
 					<<if ($slaves[$i].fetishStrength <= 95)>>
-						Such total satisfaction of her pregnancy fantasies @@.lightcoral;strengthens her fetish.@@
+						Such total satisfaction of $his pregnancy fantasies @@.lightcoral;strengthens $his fetish.@@
 						<<set $slaves[$i].fetishStrength += 4>>
 					<</if>>
 					<<set $slaves[$i].need = 0>>
 				<<else>>
-					$slaves[$i].slaveName is @@.hotpink;quite willing to be bred@@ by the Head Girl, whom $he respects, and submissively takes her superior's cock bareback until @@.lime;conception@@ is verified.
+					$slaves[$i].slaveName is @@.hotpink;quite willing to be bred@@ by the Head Girl, whom $he respects, and submissively takes $his superior's cock bareback until @@.lime;conception@@ is verified.
 					<<set $slaves[$i].devotion += 1>>
 				<</if>>
 			<</if>>
@@ -4548,14 +4427,14 @@
 
 	<<case "be your Concubine">>
 		<<if ($PC.dick == 1) && ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken") && ($slaves[$i].eggType == "human")>>
-			As your concubine, $he takes care to only share her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>> with you. $His efforts paid off; @@.lime;$he has become pregnant with your child.@@
+			As your concubine, $he takes care to only share $his fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>> with you. $His efforts paid off; @@.lime;$he has become pregnant with your child.@@
 			<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = -1, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -1, 1)>>
 		<</if>>
 
 	<<case "serve in the master suite">>
 		<<if ($PC.dick == 1) && ($slaves[$i].eggType == "human") && (($slaves[$i].toyHole == "all her holes" && $slaves[$i].mpreg != 1 && $slaves[$i].vagina > 0) || ($slaves[$i].toyHole == "all her holes" && $slaves[$i].mpreg == 1 && $slaves[$i].anus > 0) || ($slaves[$i].toyHole == "pussy" && $slaves[$i].mpreg != 1) || ($slaves[$i].mpreg == 1 && $slaves[$i].toyHole == "ass"))>>
-			You frequently avail yourself to her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. It's no surprise when @@.lime;$he ends up pregnant with your child.@@
+			You frequently avail yourself to $his fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. It's no surprise when @@.lime;$he ends up pregnant with your child.@@
 			<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = -1, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -1, 1)>>
 
@@ -4581,7 +4460,7 @@
 
 	<<case "please you">>
 		<<if ($PC.dick == 1) && ($slaves[$i].eggType == "human") && (($slaves[$i].toyHole == "all her holes" && $slaves[$i].mpreg != 1 && $slaves[$i].vagina > 0) || ($slaves[$i].toyHole == "all her holes" && $slaves[$i].mpreg == 1 && $slaves[$i].anus > 0) || ($slaves[$i].toyHole == "pussy" && $slaves[$i].mpreg != 1) || ($slaves[$i].mpreg == 1 && $slaves[$i].toyHole == "ass"))>>
-			You frequently avail yourself to her fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. It's no surprise when @@.lime;$he ends up pregnant with your child.@@
+			You frequently avail yourself to $his fertile <<if $slaves[$i].mpreg == 1>>ass<<else>>pussy<</if>>. It's no surprise when @@.lime;$he ends up pregnant with your child.@@
 			<<set $slaves[$i].preg = 1, $slaves[$i].pregSource = -1, $slaves[$i].pregWeek = 1, $slaves[$i].pregKnown = 1>><<set $slaves[$i].pregType = setPregType($slaves[$i])>>
 			<<set WombImpregnate($slaves[$i], $slaves[$i].pregType, -1, 1)>>
 		<</if>>
@@ -4677,7 +4556,7 @@
 	<<include "SA inflation">>
 
 	<<if setup.fakeBellies.includes($bellyAccessory)>>
-		$He has trouble keeping <<print $him>>self full of
+		$He has trouble keeping $himself full of
 		<<switch $slaves[$i].inflationType>>
 			<<case "cum" "milk" "water" "food">>
 				$slaves[$i].inflationType
@@ -4749,10 +4628,10 @@
 			<</if>>
 		<<case "food">>
 			<<if $slaves[$i].behavioralFlaw == "none" && $slaves[$i].behavioralQuirk != "fitness" && random(1,100) > 70>>
-				Stuffing her face with food all week @@.red;drives $him to gluttony.@@
+				Stuffing $his face with food all week @@.red;drives $him to gluttony.@@
 				<<set $slaves[$i].behavioralFlaw = "gluttonous">>
 			<<elseif $slaves[$i].behavioralFlaw == "none" && $slaves[$i].behavioralQuirk != "fitness" && random(1,100) > 70>>
-				Stuffing her face with food all week @@.red;drives $him to hate eating.@@
+				Stuffing $his face with food all week @@.red;drives $him to hate eating.@@
 				<<set $slaves[$i].behavioralFlaw = "anorexic">>
 			<</if>>
 		<</switch>>
@@ -4931,14 +4810,14 @@
 	<<if $slaves[$i].fuckdoll == 0>>
 	<<if $slaves[$i].fetish != "mindbroken">>
 	<<if ($slaves[$i].fetish == "none" || $slaves[$i].fetishStrength <= 10) && $slaves[$i].devotion > 20 && random(1,100) > 85>>
-		Having an implant simulating pregnancy drives her to @@.lightcoral;begin fantasizing about being actually pregnant.@@
+		Having an implant simulating pregnancy drives $him to @@.lightcoral;begin fantasizing about being actually pregnant.@@
 		<<set $slaves[$i].fetish = "pregnancy", $slaves[$i].fetishStrength = 10, $slaves[$i].fetishKnown = 1>>
 	<</if>>
 	<</if>>
 	<</if>>
 <<elseif $slaves[$i].bellyImplant >= 1500>>
 	<<if setup.fakeBellies.includes($bellyAccessory)>>
-		$His implant rounded belly renders her fake one moot.
+		$His implant rounded belly renders $his fake one moot.
 		<<set $slaves[$i].bellyAccessory = "none">>
 	<</if>>
 <</if>>
@@ -4954,20 +4833,20 @@
 		<<set $slaves[$i].fetish = "mindbroken", $slaves[$i].sexualFlaw = "none", $slaves[$i].behavioralFlaw = "none">>
 	<<else>>
 		<<if random(1,5) == 1>>
-			$He has been used as a sexual slave for so long, and is so hopeless that her future as a slave will be anything but torment, that her mind finally slips. @@.red;$He has been irretrievably broken.@@
+			$He has been used as a sexual slave for so long, and is so hopeless that $his future as a slave will be anything but torment, that $his mind finally slips. @@.red;$He has been irretrievably broken.@@
 			<<set $slaves[$i].fetish = "mindbroken", $slaves[$i].sexualFlaw = "none", $slaves[$i].behavioralFlaw = "none">>
 		<<else>>
-			$He's so unhappy and terrified that the effects of the extreme stress on her mind and body are unpredictable. This week,
+			$He's so unhappy and terrified that the effects of the extreme stress on $his mind and body are unpredictable. This week,
 			<<set _stressEffect = random(1,4)>>
 			<<switch _stressEffect>>
 			<<case 1>>
-				@@.mediumorchid;her hatred of sexual slavery was self-reinforcing.@@
+				@@.mediumorchid;$his hatred of sexual slavery was self-reinforcing.@@
 				<<set $slaves[$i].devotion -= 5>>
 			<<case 2>>
-				@@.mediumorchid;her mental state was bad for her health.@@
+				@@.mediumorchid;$his mental state was bad for $his health.@@
 				<<set $slaves[$i].health -= 5>>
 			<<case 3>>
-				@@.orange;her face grew a little more haggard.@@
+				@@.orange;$his face grew a little more haggard.@@
 				<<set $slaves[$i].face -= 2>>
 			<<default>>
 				$he managed to bear it without lasting harm.
@@ -4983,7 +4862,7 @@
 		<<if ($slaves[$i].devotion <= 50)>>
 		<<if (random(1,100) > 100+$slaves[$i].trust)>>
 			<<set _effect = random(1,4)>>
-			Being so afraid so constantly drives her to find solace in
+			Being so afraid so constantly drives $him to find solace in
 			<<if _effect == 1>>
 			self-denial. @@.red;$He has developed anorexia.@@
 			<<set $slaves[$i].behavioralFlaw = "anorexic">>
@@ -4991,10 +4870,10 @@
 			stress eating. @@.red;$He's now a nervous glutton.@@
 			<<set $slaves[$i].behavioralFlaw = "gluttonous">>
 			<<elseif _effect == 3>>
-			the scraps of prayer and superstition $he can remember from her life before $he was a slave. @@.red;$He's now religious.@@
+			the scraps of prayer and superstition $he can remember from $his life before $he was a slave. @@.red;$He's now religious.@@
 			<<set $slaves[$i].behavioralFlaw = "devout">>
 			<<else>>
-			the remnants of modern philosophy and education $he can remember from her life before $he was a slave. @@.red;$He feels mentally liberated.@@
+			the remnants of modern philosophy and education $he can remember from $his life before $he was a slave. @@.red;$He feels mentally liberated.@@
 			<<set $slaves[$i].behavioralFlaw = "liberated">>
 			<</if>>
 		<</if>>
@@ -5005,24 +4884,24 @@
 		<<if ($slaves[$i].devotion < -20)>>
 		<<if (random(1,500) > 500+$slaves[$i].devotion)>>
 			<<set _effect = random(1,6)>>
-			Being so angry at her life as a sex slave has
+			Being so angry at $his life as a sex slave has
 			<<if _effect == 1>>
-                                driven her into @@.red;sexual apathy.@@
+                                driven $him into @@.red;sexual apathy.@@
                                 <<set $slaves[$i].sexualFlaw = "apathetic">>
 			<<elseif _effect == 2>>
-                                convinced her that the conservative parts of her upbringing were right: sex is evil. @@.red;$He's now repressed.@@
+                                convinced $him that the conservative parts of $his upbringing were right: sex is evil. @@.red;$He's now repressed.@@
                                 <<set $slaves[$i].sexualFlaw = "repressed">>
 			<<elseif _effect == 3>>
-                                given her a dread of being nude. @@.red;$He's now shamefast.@@
+                                given $him a dread of being nude. @@.red;$He's now shamefast.@@
                                 <<set $slaves[$i].sexualFlaw = "shamefast">>
 			<<elseif _effect == 4>>
-                                deprived her of any motivation to keep sex appealing or even clean. @@.red;$He's now crude.@@
+                                deprived $him of any motivation to keep sex appealing or even clean. @@.red;$He's now crude.@@
                                 <<set $slaves[$i].sexualFlaw = "crude">>
 			<<elseif _effect == 5>>
-                                driven her to find refuge in high standards. @@.red;$He's now judgemental.@@
+                                driven $him to find refuge in high standards. @@.red;$He's now judgemental.@@
                                 <<set $slaves[$i].sexualFlaw = "judgemental">>
 			<<else>>
-                                convinced her that sex is only this way here. Convinced that sexual slavery is wrong, @@.red;$He's become sexually idealistic.@@
+                                convinced $him that sex is only this way here. Convinced that sexual slavery is wrong, @@.red;$He's become sexually idealistic.@@
                                 <<set $slaves[$i].sexualFlaw = "idealistic">>
 			<</if>>
 		<</if>>
@@ -5042,17 +4921,17 @@
 
 <<if ($slaves[$i].breedingMark == 1) && ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 	<<if ($slaves[$i].devotion <= -20)>>
-		$He views the mark of the Societal Elite @@.mediumorchid;with disgust@@ as it brands her as nothing more than your breeding bitch.
+		$He views the mark of the Societal Elite @@.mediumorchid;with disgust@@ as it brands $him as nothing more than your breeding bitch.
 		<<set $slaves[$i].devotion -= 10>>
 	<<elseif ($slaves[$i].devotion <= 50)>>
-		$He bears the mark of the Societal Elite as a sign of her superiority. As such, $he @@.mediumorchid;behaves like a spoiled child@@ and tries to have everything her way.
+		$He bears the mark of the Societal Elite as a sign of $his superiority. As such, $he @@.mediumorchid;behaves like a spoiled child@@ and tries to have everything $his way.
 		<<set $slaves[$i].devotion -= 5>>
 		<<if ($slaves[$i].behavioralFlaw == "none") && ($slaves[$i].behavioralQuirk != "confident")>>
 			$He has become @@.red;quite arrogant.@@
 			<<set $slaves[$i].behavioralFlaw = "arrogant">>
 		<</if>>
 	<<else>>
-		$He bears the mark of the Societal Elite @@.hotpink;with pride.@@ It signals that $he is yours, and yours alone, drawing her ever closer to her beloved <<= WrittenMaster($slaves[$i])>>.
+		$He bears the mark of the Societal Elite @@.hotpink;with pride.@@ It signals that $he is yours, and yours alone, drawing $him ever closer to $his beloved <<= WrittenMaster($slaves[$i])>>.
 		<<set $slaves[$i].devotion += 10>>
 	<</if>>
 <</if>>
@@ -5063,16 +4942,16 @@
 			<<if $arcologies[0].FSDegradationist == "unset">>
 				<<if $slaves[$i].onDiet != 1>>
 					<<if $slaves[$i].behavioralQuirk == "insecure">>
-						$He can't stop herself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. $He knows they are fattening and @@.gold;starts obsessing@@ even more about her weight, appearance and how others view $him.
+						$He can't stop $himself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. $He knows they are fattening and @@.gold;starts obsessing@@ even more about $his weight, appearance and how others view $him.
 						<<set $slaves[$i].trust -= 3>>
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
 							<<set $slaves[$i].weight++>>
 						<</if>>
 						<<set $slaves[$i].devotion++>>
 					<<elseif $slaves[$i].behavioralQuirk == "fitness">>
-						$He hates the availability of the tasty slave treats and how they tempt her away from a fit lifestyle, but often @@.hotpink;finds herself absentmindedly snacking on them.@@
+						$He hates the availability of the tasty slave treats and how they tempt $him away from a fit lifestyle, but often @@.hotpink;finds $himself absentmindedly snacking on them.@@
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-							The more her @@.lime;waistline grows,@@ the @@.gold;less $he finds herself trusting you.@@
+							The more $his @@.lime;waistline grows,@@ the @@.gold;less $he finds $himself trusting you.@@
 							<<set $slaves[$i].trust--, $slaves[$i].devotion++>>
 							<<set $slaves[$i].weight++>>
 						<<else>>
@@ -5080,23 +4959,23 @@
 							<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 						<</if>>
 					<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-						$He @@.hotpink;loves@@ the availability of the tasty slave treats and how $he can keep her mouth filled at @@.hotpink;nearly all times.@@
+						$He @@.hotpink;loves@@ the availability of the tasty slave treats and how $he can keep $his mouth filled at @@.hotpink;nearly all times.@@
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-							Since her belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep her sated,@@ though her constant gorging has a @@.lime;huge impact on her waistline.@@
+							Since $his belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep $him sated,@@ though $his constant gorging has a @@.lime;huge impact on $his waistline.@@
 							<<set $slaves[$i].trust++, $slaves[$i].devotion += 3>>
 							<<set $slaves[$i].weight += 3>>
 						<<else>>
-							Since her belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep her sated.@@ Since the food is fat free, her waistline is spared her bad habits.
+							Since $his belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep $him sated.@@ Since the food is fat free, $his waistline is spared $his bad habits.
 							<<set $slaves[$i].trust++, $slaves[$i].devotion += 3>>
 						<</if>>
 					<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
 						$He hates the availability of the tasty slave treats and how $he @@.hotpink;can't stop eating them.@@
 						<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-							The @@.lime;more her waistline grows,@@ the @@.gold;more horrifying her body becomes to her.@@
+							The @@.lime;more $his waistline grows,@@ the @@.gold;more horrifying $his body becomes to $him.@@
 							<<set $slaves[$i].trust -= 5, $slaves[$i].devotion++>>
 							<<set $slaves[$i].weight++>>
 						<<else>>
-							$He finds that no matter how many $he eats, $he never gains weight, a detail $he is @@.mediumaquamarine;thankful@@ for, even if $he is disgusted by her actions.
+							$He finds that no matter how many $he eats, $he never gains weight, a detail $he is @@.mediumaquamarine;thankful@@ for, even if $he is disgusted by $his actions.
 							<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 						<</if>>
 					<<else>>
@@ -5109,40 +4988,40 @@
 					<</if>>
 				<<else>> /* no treats for you */
 					<<if $slaves[$i].behavioralQuirk == "insecure">>
-						$He is @@.mediumaquamarine;relieved@@ $he doesn't have to fret over eating the treats and gaining weight as her <<= WrittenMaster($slaves[$i])>> is carefully directing $him.
+						$He is @@.mediumaquamarine;relieved@@ $he doesn't have to fret over eating the treats and gaining weight as $his <<= WrittenMaster($slaves[$i])>> is carefully directing $him.
 						<<set $slaves[$i].trust++>>
 					<<elseif $slaves[$i].behavioralQuirk == "fitness">>
 						$He is @@.mediumaquamarine;thankful@@ that $he isn't permitted to eat the treats. $He's seen others try one, only to start shoveling them down.
 						<<set $slaves[$i].trust++>>
 					<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-						$He @@.mediumorchid;resents@@ not being allowed to stuff her face with the tempting treats like the other slaves $he sees.
+						$He @@.mediumorchid;resents@@ not being allowed to stuff $his face with the tempting treats like the other slaves $he sees.
 						<<set $slaves[$i].devotion -= 2>>
 					<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
 						$He @@.hotpink;is relieved@@ that $he doesn't have to eat the treats and is @@.mediumaquamarine;thankful@@ for your apparent consideration.
 						<<set $slaves[$i].trust++, $slaves[$i].devotion += 2>>
 					<<else>>
-						$He <<if canSee($slaves[$i])>>sees<<else>>knows<</if>> how much the other slaves enjoy the delicious treats and @@.mediumorchid;resents@@ not being allowed to enjoy them, feeling you are doing this to @@.gold;spite her.@@
+						$He <<if canSee($slaves[$i])>>sees<<else>>knows<</if>> how much the other slaves enjoy the delicious treats and @@.mediumorchid;resents@@ not being allowed to enjoy them, feeling you are doing this to @@.gold;spite $him.@@
 						<<set $slaves[$i].devotion--, $slaves[$i].trust-->>
 					<</if>>
 				<</if>>
 			<<else>>
 				<<if $slaves[$i].onDiet != 1>>
-					The treats are designed to cause stomach cramps alongside being extremely addictive. $He cannot stop herself from eating them, but $he can @@.gold;fear@@ your cruelty as her @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in her food.
+					The treats are designed to cause stomach cramps alongside being extremely addictive. $He cannot stop $himself from eating them, but $he can @@.gold;fear@@ your cruelty as $his @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in $his food.
 					<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 3>>
 				<<else>>
-					The treats are designed to cause stomach cramps alongside being extremely addictive. Since $he is not permitted to eat them, @@.mediumaquamarine;$he breathes a sigh of relief,@@ though $he is fully aware of what happens to those not as fortunate as $him. $He @@.hotpink;tries her best to be obedient@@ hoping to not undergo the agony, but her efforts pale in comparison to the effects of the food based aphrodisiacs.
+					The treats are designed to cause stomach cramps alongside being extremely addictive. Since $he is not permitted to eat them, @@.mediumaquamarine;$he breathes a sigh of relief,@@ though $he is fully aware of what happens to those not as fortunate as $him. $He @@.hotpink;tries $his best to be obedient@@ hoping to not undergo the agony, but $his efforts pale in comparison to the effects of the food based aphrodisiacs.
 					<<set $slaves[$i].devotion++, $slaves[$i].trust++>>
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if $slaves[$i].behavioralQuirk == "insecure">>
-				Watching citizens sculpt their slaves to their ideals fills her with @@.mediumaquamarine;relief@@ that someone will find her attractive; that or make her so.
+				Watching citizens sculpt their slaves to their ideals fills $him with @@.mediumaquamarine;relief@@ that someone will find $him attractive; that or make $him so.
 				<<set $slaves[$i].trust++>>
 			<<elseif $slaves[$i].behavioralQuirk == "fitness">>
 				Watching both citizens and other slaves lie around and shirk exercise disappoints $him. $He @@.gold;fears@@ that $he'll be prevented from exercising and grow soft too.
 				<<set $slaves[$i].trust -= 2>>
 			<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-				Being part of a society that welcomes gluttony makes her @@.mediumaquamarine;feel right at home.@@
+				Being part of a society that welcomes gluttony makes $him @@.mediumaquamarine;feel right at home.@@
 				<<set $slaves[$i].trust += 2>>
 			<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
 				$He feels fat just watching your society gorge itself. $He @@.gold;fears@@ that $he'll be a bloated hog soon too.
@@ -5153,16 +5032,16 @@
 		<<if $arcologies[0].FSDegradationist == "unset">>
 			<<if $slaves[$i].onDiet != 1>>
 				<<if $slaves[$i].behavioralQuirk == "insecure">>
-					$He can't stop herself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. $He knows they are fattening and @@.gold;starts obsessing@@ even more about her weight, appearance and how others view $him.
+					$He can't stop $himself from eating the @@.hotpink;addictive, delicious@@ slave treats available throughout the arcology. $He knows they are fattening and @@.gold;starts obsessing@@ even more about $his weight, appearance and how others view $him.
 					<<set $slaves[$i].trust -= 3>>
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
 						<<set $slaves[$i].weight++>>
 					<</if>>
 					<<set $slaves[$i].devotion++>>
 				<<elseif $slaves[$i].behavioralQuirk == "fitness">>
-					$He hates the availability of the tasty slave treats and how they tempt her away from a fit lifestyle, but often @@.hotpink;finds herself absentmindedly snacking on them.@@
+					$He hates the availability of the tasty slave treats and how they tempt $him away from a fit lifestyle, but often @@.hotpink;finds $himself absentmindedly snacking on them.@@
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-						The more her @@.lime;waistline grows,@@ the @@.gold;less $he finds herself trusting you.@@
+						The more $his @@.lime;waistline grows,@@ the @@.gold;less $he finds $himself trusting you.@@
 						<<set $slaves[$i].trust--, $slaves[$i].devotion++>>
 						<<set $slaves[$i].weight++>>
 					<<else>>
@@ -5170,23 +5049,23 @@
 						<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 					<</if>>
 				<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-					$He @@.hotpink;loves@@ the availability of the tasty slave treats and how $he can keep her mouth filled at @@.hotpink;nearly all times.@@
+					$He @@.hotpink;loves@@ the availability of the tasty slave treats and how $he can keep $his mouth filled at @@.hotpink;nearly all times.@@
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-						Since her belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep her sated,@@ though her constant gorging has a @@.lime;huge impact on her waistline.@@
+						Since $his belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep $him sated,@@ though $his constant gorging has a @@.lime;huge impact on $his waistline.@@
 						<<set $slaves[$i].trust++, $slaves[$i].devotion += 3>>
 						<<set $slaves[$i].weight += 3>>
 					<<else>>
-						Since her belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep her sated.@@ Since the food is fat free, her waistline is spared her bad habits.
+						Since $his belly is always full thanks to your food supplies, $he @@.mediumaquamarine;trusts you to keep $him sated.@@ Since the food is fat free, $his waistline is spared $his bad habits.
 						<<set $slaves[$i].trust++, $slaves[$i].devotion += 3>>
 					<</if>>
 				<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
 					$He hates the availability of the tasty slave treats and how $he @@.hotpink;can't stop eating them.@@
 					<<if $arcologies[0].FSHedonisticDecadenceDietResearch == 0>>
-						The @@.lime;more her waistline grows,@@ the @@.gold;more horrifying her body becomes to her.@@
+						The @@.lime;more $his waistline grows,@@ the @@.gold;more horrifying $his body becomes to $him.@@
 						<<set $slaves[$i].trust -= 5, $slaves[$i].devotion++>>
 						<<set $slaves[$i].weight++>>
 					<<else>>
-						$He finds that no matter how many $he eats, $he never gains weight, a detail $he is @@.mediumaquamarine;thankful@@ for, even if $he is disgusted by her actions.
+						$He finds that no matter how many $he eats, $he never gains weight, a detail $he is @@.mediumaquamarine;thankful@@ for, even if $he is disgusted by $his actions.
 						<<set $slaves[$i].trust++, $slaves[$i].devotion++>>
 					<</if>>
 				<<else>>
@@ -5199,28 +5078,28 @@
 				<</if>>
 			<<else>> /* no treats for you */
 				<<if $slaves[$i].behavioralQuirk == "insecure">>
-					$He is @@.mediumaquamarine;relieved@@ $he doesn't have to fret over eating the treats and gaining weight as her <<= WrittenMaster($slaves[$i])>> is carefully directing $him.
+					$He is @@.mediumaquamarine;relieved@@ $he doesn't have to fret over eating the treats and gaining weight as $his <<= WrittenMaster($slaves[$i])>> is carefully directing $him.
 					<<set $slaves[$i].trust++>>
 				<<elseif $slaves[$i].behavioralQuirk == "fitness">>
 					$He is @@.mediumaquamarine;thankful@@ that $he isn't permitted to eat the treats. $He's seen others try one, only to start shoveling them down.
 					<<set $slaves[$i].trust++>>
 				<<elseif $slaves[$i].behavioralFlaw == "gluttonous">>
-					$He @@.mediumorchid;resents@@ not being allowed to stuff her face with the tempting treats like the other slaves $he sees.
+					$He @@.mediumorchid;resents@@ not being allowed to stuff $his face with the tempting treats like the other slaves $he sees.
 					<<set $slaves[$i].devotion -= 2>>
 				<<elseif $slaves[$i].behavioralFlaw == "anorexic">>
 					$He @@.hotpink;is relieved@@ that $he doesn't have to eat the treat and is @@.mediumaquamarine;thankful@@ for your apparent consideration.
 					<<set $slaves[$i].trust++, $slaves[$i].devotion += 2>>
 				<<else>>
-					$He <<if canSee($slaves[$i])>>sees<<else>>knows<</if>> how much the other slaves enjoy the delicious treats and @@.mediumorchid;resents@@ not being allowed to enjoy them, feeling you are doing this to @@.gold;spite her.@@
+					$He <<if canSee($slaves[$i])>>sees<<else>>knows<</if>> how much the other slaves enjoy the delicious treats and @@.mediumorchid;resents@@ not being allowed to enjoy them, feeling you are doing this to @@.gold;spite $him.@@
 					<<set $slaves[$i].devotion--, $slaves[$i].trust-->>
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if $slaves[$i].onDiet != 1>>
-				The treats are designed to cause stomach cramps alongside being extremely addictive. $He cannot stop herself from eating them, but $he can @@.gold;fear@@ your cruelty as her @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in her food.
+				The treats are designed to cause stomach cramps alongside being extremely addictive. $He cannot stop $himself from eating them, but $he can @@.gold;fear@@ your cruelty as $his @@.hotpink;will steadily erodes@@ from the concentrated aphrodisiacs in $his food.
 				<<set $slaves[$i].devotion += 2, $slaves[$i].trust -= 3>>
 			<<else>>
-				The treats are designed to cause stomach cramps alongside being extremely addictive. Since $he is not permitted to eat them, @@.mediumaquamarine;$he breathes a sigh of relief,@@ though $he is fully aware of what happens to those not as fortunate as $him. $He @@.hotpink;tries her best to be obedient@@ hoping to not undergo the agony, but her efforts pale in comparison to the effects of the food based aphrodisiacs.
+				The treats are designed to cause stomach cramps alongside being extremely addictive. Since $he is not permitted to eat them, @@.mediumaquamarine;$he breathes a sigh of relief,@@ though $he is fully aware of what happens to those not as fortunate as $him. $He @@.hotpink;tries $his best to be obedient@@ hoping to not undergo the agony, but $his efforts pale in comparison to the effects of the food based aphrodisiacs.
 				<<set $slaves[$i].devotion++, $slaves[$i].trust++>>
 			<</if>>
 		<</if>>
@@ -5231,21 +5110,12 @@
 
 <<set $pornFameBonus = 1>>
 <<if $studio == 1>>
-<<<<<<< HEAD
-<<if $slaves[$i].pornFameSpending > 0>>
-	<<set $pornFameBonus += 0.2 + (($slaves[$i].pornFameSpending/10000)/$HackingSkillMultiplier)>>
-	<<if ($slaves[$i].pornFameSpending >= 4000)>>
-		$His near-ubiquitous presence in arcology pornography greatly increases $his impact on society.
-	<<elseif ($slaves[$i].pornFameSpending >= 2000)>>
-		$His presence in arcology pornography increases $his impact on society.
-=======
 <<if $slaves[$i].pornFame > 0>>
 	<<set $pornFameBonus += (Math.ceil($slaves[$i].pornFame/100000))>>
 	<<if ($slaves[$i].pornFame >= 100000)>>
-		$possessiveCap near-ubiquitous presence in arcology pornography greatly increases $possessive impact on society.
+		$His near-ubiquitous presence in arcology pornography greatly increases $his impact on society.
 	<<elseif ($slaves[$i].pornFame >= 10000)>>
-		$possessiveCap presence in arcology pornography increases $possessive impact on society.
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+		$His presence in arcology pornography increases $his impact on society.
 	<<else>>
 		$His occasional presence in arcology pornography slightly increases $his impact on society.
 	<</if>>
@@ -5410,7 +5280,7 @@
 	<<elseif $slaves[$i].weight > 130>>
 		$slaves[$i].slaveName is so fat, society just assumes there is a baby somewhere in there, though they wish it was more obvious.
 		<<if $slaves[$i].pregWeek < 0>>
-			But fortunately for her, word of her recent birth has gotten around @@.green;reassuring the masses@@ that $he can still bear children.
+			But fortunately for $him, word of $his recent birth has gotten around @@.green;reassuring the masses@@ that $he can still bear children.
 			<<FSChangePorn "Repopulationist" 2>>
 		<<elseif $slaves[$i].collar == "preg biometrics">>
 			<<if $slaves[$i].preg > 0>>
@@ -5506,13 +5376,13 @@
 	<</if>>
 	<</if>>
 	<<if $slaves[$i].balls > 0 && $slaves[$i].vasectomy == 0>>
-		Society @@.red;disapproves@@ of her working testicles.
+		Society @@.red;disapproves@@ of $his working testicles.
 		<<FSChangePorn "Eugenics" $slaves[$i].balls>>
 	<<elseif $slaves[$i].dick > 0 && $slaves[$i].balls > 0 && $slaves[$i].vasectomy == 1>>
-		Society @@.green;approves@@ of her vasectomy.
+		Society @@.green;approves@@ of $his vasectomy.
 		<<FSChangePorn "Eugenics" 1>>
 	<<elseif $slaves[$i].dick > 0 && $slaves[$i].balls == 0>>
-		Society @@.green;approves@@ of her lack of testicles.
+		Society @@.green;approves@@ of $his lack of testicles.
 		<<FSChangePorn "Eugenics" 2>>
 	<</if>>
 <</if>>
@@ -5913,9 +5783,9 @@
 		<</switch>>
 	<</if>>
 	<<if $rep > 10000>>
-		$His brand is considered a minor enhancement to her beauty since you are very well liked.
+		$His brand is considered a minor enhancement to $his beauty since you are very well liked.
 	<<elseif $rep < 5000>>
-		$His brand is considered a minor blemish on her beauty since you are not well liked.
+		$His brand is considered a minor blemish on $his beauty since you are not well liked.
 	<</if>>
 <</if>>
 <</if>>
@@ -5925,47 +5795,47 @@
 <<if $slaves[$i].eyes != 0>>
 <<if $slaves[$i].eyes == -2>>
 	<<if $slaves[$i].devotion > 50>>
-		Even though $he is blind, $he is devoted enough to you to allow herself to lower her guard. $He becomes @@.mediumaquamarine;trusting@@ of your ability to keep her safe.
+		Even though $he is blind, $he is devoted enough to you to allow $himself to lower $his guard. $He becomes @@.mediumaquamarine;trusting@@ of your ability to keep $him safe.
 		<<set $slaves[$i].trust += 3>>
 	<<elseif $slaves[$i].devotion > 20>>
 		Since $he's blind and on the cusp of devotion, $he becomes slightly @@.hotpink;more reliant@@, but also begins to be @@.mediumaquamarine;less fearful@@ of what $he can't see.
 		<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 1>>
 	<<elseif ["please you", "be your Concubine", "serve in the master suite"].includes($slaves[$i].assignment)>>
-		$He may be blind, but $he knows nobody would dare harm her under your watch, @@.mediumaquamarine;building her trust@@ in you.
+		$He may be blind, but $he knows nobody would dare harm $him under your watch, @@.mediumaquamarine;building $his trust@@ in you.
 		<<set $slaves[$i].trust += 2>>
 	<<elseif $slaves[$i].devotion > -20>>
-		$His blindness forces her to @@.hotpink;rely@@ on your mercy. However, it only @@.gold;amplifies her fear@@ as $he has severely limited capabilities to defend herself.
+		$His blindness forces $him to @@.hotpink;rely@@ on your mercy. However, it only @@.gold;amplifies $his fear@@ as $he has severely limited capabilities to defend $himself.
 		<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 10>>
 	<<else>>
-		Being blind forces her to @@.hotpink;completely rely@@ on your mercy. It does nothing to stem @@.gold;the terror@@ $he faces constantly being unable to tell what will happen to $him.
+		Being blind forces $him to @@.hotpink;completely rely@@ on your mercy. It does nothing to stem @@.gold;the terror@@ $he faces constantly being unable to tell what will happen to $him.
 		<<set $slaves[$i].devotion += 10, $slaves[$i].trust -= 25>>
 	<</if>>
 <<elseif $slaves[$i].eyes == -1>>
 	<<if ($slaves[$i].eyewear != "corrective glasses") && ($slaves[$i].eyewear != "corrective contacts")>>
 		<<if $slaves[$i].devotion > 50>>
 	        <<elseif $slaves[$i].devotion > 20>>
-                        Since $he's on the cusp of devotion, her blurred vision makes her @@.hotpink;slightly more submissive,@@ since $he can't always see what's happening to $him.
+                        Since $he's on the cusp of devotion, $his blurred vision makes $him @@.hotpink;slightly more submissive,@@ since $he can't always see what's happening to $him.
                         <<set $slaves[$i].devotion += 1>>
                 <<elseif ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel")>>
-                        $His blurred vision @@.hotpink;reduces her distaste for her life slightly,@@ since her fuzzy vision allows her to ignore the details of everyone $he's expected to fuck.
+                        $His blurred vision @@.hotpink;reduces $his distaste for $his life slightly,@@ since $his fuzzy vision allows $him to ignore the details of everyone $he's expected to fuck.
                         <<set $slaves[$i].devotion += 1>>
                 <<else>>
-                        $His blurred vision tends to make her @@.mediumorchid;a little more fearful,@@ since $he can never tell what's about to happen to $him.
+                        $His blurred vision tends to make $him @@.mediumorchid;a little more fearful,@@ since $he can never tell what's about to happen to $him.
                         <<set $slaves[$i].trust -= 1>>
                 <</if>>
 	<</if>>
 <<elseif $slaves[$i].eyes == 2>>
 	<<if ($slaves[$i].eyewear == "blurring glasses") || ($slaves[$i].eyewear == "blurring contacts")>>
 	<<if $slaves[$i].devotion > 50>>
-		$He tolerates the annoyance of blurred vision induced by her eyewear.
+		$He tolerates the annoyance of blurred vision induced by $his eyewear.
 	<<elseif $slaves[$i].devotion > 20>>
-		Since $he's on the cusp of devotion, the blurred vision induced by her eyewear actually makes her @@.hotpink;slightly more submissive.@@
+		Since $he's on the cusp of devotion, the blurred vision induced by $his eyewear actually makes $him @@.hotpink;slightly more submissive.@@
 		<<set $slaves[$i].devotion += 1>>
 	<<elseif ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel")>>
-		The blurred vision induced by her eyewear actually @@.hotpink;reduces her distaste for her life slightly,@@ since her fuzzy vision allows her to ignore the details of everyone $he's expected to fuck.
+		The blurred vision induced by $his eyewear actually @@.hotpink;reduces $his distaste for $his life slightly,@@ since $his fuzzy vision allows $him to ignore the details of everyone $he's expected to fuck.
 		<<set $slaves[$i].devotion += 1>>
 	<<else>>
-		The blurred vision induced by her eyewear actually @@.mediumorchid;infuriates her.@@
+		The blurred vision induced by $his eyewear actually @@.mediumorchid;infuriates $him.@@
 		<<set $slaves[$i].devotion -= 1>>
 	<</if>>
 	<</if>>
@@ -5976,19 +5846,19 @@
 
 <<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken" && $slaves[$i].muscles < -95>>
 	<<if $slaves[$i].devotion > 50>>
-		$He knows $he is near helpless but is devoted enough to you to allow herself to lower her guard. $He becomes @@.mediumaquamarine;trusting@@ of your ability to keep her safe.
+		$He knows $he is near helpless but is devoted enough to you to allow $himself to lower $his guard. $He becomes @@.mediumaquamarine;trusting@@ of your ability to keep $him safe.
 		<<set $slaves[$i].trust += 3>>
 	<<elseif $slaves[$i].devotion > 20>>
 		Since $he's near helpless and on the cusp of devotion, $he becomes slightly @@.hotpink;more reliant@@, but also begins to be @@.mediumaquamarine;less fearful@@ of what $he can't see.
 		<<set $slaves[$i].devotion += 3, $slaves[$i].trust += 1>>
 	<<elseif ["please you", "be your Concubine", "serve in the master suite"].includes($slaves[$i].assignment)>>
-		$He may be physically frail and vulnerable, but $he knows nobody would dare harm her under your watch, @@.mediumaquamarine;building her trust@@ in you.
+		$He may be physically frail and vulnerable, but $he knows nobody would dare harm $him under your watch, @@.mediumaquamarine;building $his trust@@ in you.
 		<<set $slaves[$i].trust += 2>>
 	<<elseif $slaves[$i].devotion > -20>>
-		$His frailty forces her to @@.hotpink;rely@@ on your mercy. However, it only @@.gold;amplifies her fear@@ as $he has no chance of defending herself.
+		$His frailty forces $him to @@.hotpink;rely@@ on your mercy. However, it only @@.gold;amplifies $his fear@@ as $he has no chance of defending $himself.
 		<<set $slaves[$i].devotion += 5, $slaves[$i].trust -= 10>>
 	<<else>>
-		Being frail and near helpless forces her to @@.hotpink;heavily rely@@ on your mercy. It does nothing to stem @@.gold;the terror@@ $he faces constantly knowing that whatever anyone wants to do to her, there is nothing $he can do to stop it.
+		Being frail and near helpless forces $him to @@.hotpink;heavily rely@@ on your mercy. It does nothing to stem @@.gold;the terror@@ $he faces constantly knowing that whatever anyone wants to do to $him, there is nothing $he can do to stop it.
 		<<set $slaves[$i].devotion += 10, $slaves[$i].trust -= 25>>
 	<</if>>
 <</if>>
@@ -5999,18 +5869,18 @@
 		<<if $slaves[$i].devotion <= 20>>
 		$His mouth full of orthodontia is quite uncomfortable,
 		<<if $slaves[$i].intelligence > 0>>
-			but $he has the presence of mind to know that it's for her own good, and $he doesn't blame you for it.
+			but $he has the presence of mind to know that it's for $his own good, and $he doesn't blame you for it.
 		<<else>>
 			and $he's stupid enough to @@.mediumorchid;blame you@@ for the discomfort.
 			<<set $slaves[$i].devotion -= 1>>
 		<</if>>
 		<<else>>
-		$He puts up with the discomfort produced by her orthodontia for your sake.
+		$He puts up with the discomfort produced by $his orthodontia for your sake.
 		<</if>>
 	<</if>>
 	<</if>>
 	<<if random(1,10) == 1>>
-	$His braces @@.lime;straighten her teeth.@@ They can now be removed to leave her with a beautiful smile, or left on.
+	$His braces @@.lime;straighten $his teeth.@@ They can now be removed to leave $him with a beautiful smile, or left on.
 	<<set $slaves[$i].teeth = "cosmetic braces">>
 	<</if>>
 <</if>>
@@ -6187,7 +6057,7 @@
 			<<set $slaves[$i].energy -= 2>>
 		<</if>>
 	<<else>>
-		$He's so addicted to sex that $his lack of natural sex hormones doesn't affect her sex drive.
+		$He's so addicted to sex that $his lack of natural sex hormones doesn't affect $his sex drive.
 	<</if>>
 	<</if>>
 <</if>>
@@ -6202,7 +6072,7 @@
 			<<if $slaves[$i].prostate != 0>>
 				<<if $slaves[$i].fetish == "buttslut">>
 					<<if $slaves[$i].fetishStrength > 60>>
-						is such a buttslut that $his's null status doesn't affect $his libido at all; $he's got her prostate and that's all $he cares about.
+						is such a buttslut that $his's null status doesn't affect $his libido at all; $he's got $his prostate and that's all $he cares about.
 					<<else>>
 						is a buttslut, but not enough of one that $his lack of<<if $seeDicks > 0>> a dick or<</if>> a pussy isn't frustrating.
 						<<set _frustration = 1>>
@@ -6231,7 +6101,7 @@
 		<</if>>
 	<</if>>
 	<<if _frustration > 0>>
-		This @@.red;affects her libido@@ and is
+		This @@.red;affects $his libido@@ and is
 		<<if $slaves[$i].devotion > 50>>
 			annoying, but $he puts up with it for your sake.
 		<<else>>
@@ -6247,35 +6117,35 @@
 <<if $slaves[$i].fetish != "mindbroken">>
 <<if ($slaves[$i].devotion > 95)>>
 	<<if ($slaves[$i].energy <= 50)>>
-		$He's so worshipful of you that $he derives erotic satisfaction simply from being your slave, giving her @@.green;more of an appetite for sex.@@
+		$He's so worshipful of you that $he derives erotic satisfaction simply from being your slave, giving $him @@.green;more of an appetite for sex.@@
 		<<set $slaves[$i].energy += 1>>
 	<</if>>
 <<elseif ($slaves[$i].devotion > 50)>>
-	$He's so devoted to you that her appetite for sex isn't affected by the unpleasant parts of slave life.
+	$He's so devoted to you that $his appetite for sex isn't affected by the unpleasant parts of slave life.
 <<elseif ($slaves[$i].energy > 95)>>
 <<elseif ($slaves[$i].energy <= 5)>>
 <<elseif ($slaves[$i].devotion > 20)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade") || ($slaves[$i].assignment == "please you") || ($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be a subordinate slave")>>
-		$His assignment constantly requires her to fuck. $He obeys, but @@.red;her appetite for sex is reduced.@@
+		$His assignment constantly requires $him to fuck. $He obeys, but @@.red;$his appetite for sex is reduced.@@
 		<<set $slaves[$i].energy -= 2>>
 	<<else>>
-		Sometimes, $he wishes $he weren't a sex slave, @@.red;reducing her appetite for sex,@@ though less than if her assignment required her to fuck constantly.
+		Sometimes, $he wishes $he weren't a sex slave, @@.red;reducing $his appetite for sex,@@ though less than if $his assignment required $him to fuck constantly.
 		<<set $slaves[$i].energy -= 1>>
 	<</if>>
 <<elseif ($slaves[$i].devotion >= -20)>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade") || ($slaves[$i].assignment == "please you") || ($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be a subordinate slave")>>
-		$His assignment forces her to let herself get fucked constantly, @@.red;reducing her appetite for sex.@@
+		$His assignment forces $him to let $himself get fucked constantly, @@.red;reducing $his appetite for sex.@@
 		<<set $slaves[$i].energy -= 3>>
 	<<else>>
-		$He isn't used to life as a sex slave, and the constant sexual anxiety @@.red;reduces her appetite for sex,@@ though less than if her assignment forced her to let herself get fucked constantly.
+		$He isn't used to life as a sex slave, and the constant sexual anxiety @@.red;reduces $his appetite for sex,@@ though less than if $his assignment forced $him to let $himself get fucked constantly.
 		<<set $slaves[$i].energy -= 2>>
 	<</if>>
 <<else>>
 	<<if ($slaves[$i].assignment == "serve the public") || ($slaves[$i].assignment == "whore") || ($slaves[$i].assignment == "work in the brothel") || ($slaves[$i].assignment == "serve in the club") || ($slaves[$i].assignment == "work a glory hole") || ($slaves[$i].assignment == "be confined in the arcade") || ($slaves[$i].assignment == "please you") || ($slaves[$i].assignment == "serve in the master suite") || ($slaves[$i].assignment == "be a subordinate slave")>>
-		$His assignment subjects her to constant rape, @@.red;rapidly reducing her appetite for sex.@@
+		$His assignment subjects $him to constant rape, @@.red;rapidly reducing $his appetite for sex.@@
 		<<set $slaves[$i].energy -= 5>>
 	<<else>>
-		$He hates being a sex slave, @@.red;reducing her appetite for sex,@@ though less than if her assignment subjected her to constant rape.
+		$He hates being a sex slave, @@.red;reducing $his appetite for sex,@@ though less than if $his assignment subjected $him to constant rape.
 		<<set $slaves[$i].energy -= 3>>
 	<</if>>
 <</if>>
@@ -6319,17 +6189,17 @@
 <<if $slaves[$i].need>>
 <<if $slaves[$i].need > $slaves[$i].energy/2>>
 	<<if $slaves[$i].aphrodisiacs > 0 || $slaves[$i].inflationType == "aphrodisiac">>
-		$He is not allowed to get off as frequently as her aphrodisiac fueled sex drive demands, and the constant frustration
+		$He is not allowed to get off as frequently as $his aphrodisiac fueled sex drive demands, and the constant frustration
 		<<if $slaves[$i].fuckdoll == 0 && $slaves[$i].fetish != "mindbroken">>
-			@@.red;stresses her body considerably.@@
+			@@.red;stresses $his body considerably.@@
 			<<set $slaves[$i].health -= 1+Math.trunc($slaves[$i].need/20)>>
 		<<else>>
-			drives her mad with lust. $He @@.mediumorchid;blames you@@ for this @@.gold;cruelty.@@
+			drives $him mad with lust. $He @@.mediumorchid;blames you@@ for this @@.gold;cruelty.@@
 			<<set _decay = 1+Math.trunc($slaves[$i].need/20)>>
 			<<set $slaves[$i].devotion -= _decay, $slaves[$i].trust -= _decay>>
 		<</if>>
 	<<else>>
-		$He is not allowed to get off as frequently as her healthy sex drive demands, and the constant frustration @@.red;wears away at her libido.@@
+		$He is not allowed to get off as frequently as $his healthy sex drive demands, and the constant frustration @@.red;wears away at $his libido.@@
 		<<set $slaves[$i].energy -= 1+Math.trunc($slaves[$i].need/20)>>
 	<</if>>
 <</if>>
@@ -6345,7 +6215,7 @@
 	<<if $slaves[$i].face > 80>>
 	<<if $slaves[$i].face <= 95>>
 	<<if $slaves[$i].trust > 95>>
-		$He is so healthy and trusting that @@.lime;the minute flaws in her facial appearance seem to be smoothed away@@ every time $he sleeps.
+		$He is so healthy and trusting that @@.lime;the minute flaws in $his facial appearance seem to be smoothed away@@ every time $he sleeps.
 		<<FaceIncrease $slaves[$i] 5>>
 	<</if>>
 	<</if>>
@@ -6355,7 +6225,7 @@
 	<<if $slaves[$i].visualAge > 20 && $slaves[$i].physicalAge > 20>>
 	<<if $slaves[$i].trust > 95 && $slaves[$i].devotion > 95>>
 		<<if $slaves[$i].ageAdjust == 40>>
-			$He has been living a happy, healthy and trusting life under you for so long that you swear @@.lime;$he looks a little younger@@ than a girl her age should.
+			$He has been living a happy, healthy and trusting life under you for so long that you swear @@.lime;$he looks a little younger@@ than a girl $his age should.
 			<<set $slaves[$i].visualAge-->>
 			<<set $slaves[$i].ageAdjust = 0>>
 		<<elseif random(1,100) > 60>>
@@ -6396,7 +6266,7 @@
 	<<if $slaves[$i].visualAge > 15 && $slaves[$i].physicalAge > 15>>
 	<<if $slaves[$i].trust < -20 && $slaves[$i].devotion < -20>>
 		<<if $slaves[$i].ageAdjust == -40>>
-			$He has been living a miserable life under your feet for so long that you swear @@.orange;$he looks a little older@@ than a girl her age should.
+			$He has been living a miserable life under your feet for so long that you swear @@.orange;$he looks a little older@@ than a girl $his age should.
 			<<set $slaves[$i].visualAge++>>
 			<<set $slaves[$i].ageAdjust = 0>>
 		<<elseif random(1,100) > 40>>
@@ -6412,10 +6282,10 @@
 	<<set _countNCS = 0>>
 	/*
 	**      To prevent the NCS from firing on every attribute in one year, this variable counts the
-	**      number of NCS affects that fire.  Most affects will only trigger if one or two other
-	**      have already fired, but won't fire beyond.  There are two exceptions to that, first,
+	**      number of NCS affects that fire. Most affects will only trigger if one or two other
+	**      have already fired, but won't fire beyond. There are two exceptions to that, first,
 	**      massively oversized growth assets, which will fire always, e.g. boobs > 5000, dick > 10,
-	**      etc.  Second, Body structure, hips/shoulders may fire any time, (decreasing random).
+	**      etc. Second, Body structure, hips/shoulders may fire any time, (decreasing random).
 	**
 	**      Youthening (visual age year number reduction)
 	**      Happens on a sliding scale, the older a slave is, the faster the de-aging goes.
@@ -6466,7 +6336,7 @@
 		<<elseif _heightDelta > -15>><<set _shrinkage = 2>>
 		<<else>><<set _shrinkage = 1>>
 		<</if>>
-		$His @@.orange;NCS@@ is actively @@.orange;reducing $his stature, leaving her shorter.@@
+		$His @@.orange;NCS@@ is actively @@.orange;reducing $his stature, leaving $him shorter.@@
 		<<set $slaves[$i].height -= _shrinkage, _countNCS++>>
 	<</if>>
 	/*
@@ -6589,7 +6459,7 @@
 	<</if>>
 	/*
 	*       Pussy/Ass-Pussy rejuvination.
-	*       10% chance of either one rejuvinating per week.  (The Child Whore's delight!)
+	*       10% chance of either one rejuvinating per week. (The Child Whore's delight!)
 	*/
 	<<if ((_countNCS < 2) && ($slaves[$i].vagina > 1) && (random(1,100) < ($slaves[$i].vagina * 10)))>>
 		$His @@.orange;NCS@@ manages to @@.lime;reverse the stretching in $his vagina, $his pussy now looks more childlike.@@
@@ -6608,7 +6478,7 @@
 
 <<if $slaves[$i].fuckdoll == 0>>
 	<<if !canWalk($slaves[$i])>>
-		$He is immobilized by her
+		$He is immobilized by $his
 		<<set $anchors = []>>
 		<<if tooBigBreasts($slaves[$i])>>
 			<<set $anchors.push("tits")>>
@@ -6643,9 +6513,9 @@
 				<<print $anchors[0]>>,
 			<</if>>
 			<<if ($slaves[$i].amp == 1)>>
-				<<if $anchors.length > 1>>but ultimately her limblessness<<else>>or would be if $he had limbs<</if>>,
+				<<if $anchors.length > 1>>but ultimately $his limblessness<<else>>or would be if $he had limbs<</if>>,
 			<<elseif $slaves[$i].heels == 1 && !["heels", "pumps", "boots", "extreme heels"].includes($slaves[$i].shoes)>>
-				<<if $anchors.length > 1>>but ultimately her heels having been clipped<<else>>or would be if her heels weren't clipped<</if>>,
+				<<if $anchors.length > 1>>but ultimately $his heels having been clipped<<else>>or would be if $his heels weren't clipped<</if>>,
 			<</if>>
 		<<else>>
 			<<if ($slaves[$i].amp == 1)>>
@@ -6671,7 +6541,7 @@
 			heels having been clipped,
 		<</if>>
 		*/
-		making her life more difficult. Other slaves have to help her at times, which
+		making $his life more difficult. Other slaves have to help $him at times, which
 		<<if $slaves[$i].fetish != "mindbroken">>
 			<<if $slaves[$i].devotion > 50>>
 				the devoted slave bears with equanimity.
@@ -6687,7 +6557,7 @@
 			<</if>>
 			<<if $slaves[$i].devotion < 10>>
 			<<if $slaves[$i].trust > -20>>
-				$He's @@.gold;aware of her total vulnerability@@ to punishment.
+				$He's @@.gold;aware of $his total vulnerability@@ to punishment.
 				<<set $slaves[$i].trust -= 1>>
 			<</if>>
 			<</if>>
@@ -6700,20 +6570,20 @@
 				<<if $slaves[$i].muscles > 5>>
 					$he @@.orange;loses some muscle definition.@@
 				<<else>>
-					her @@.orange;muscles steadily atrophy.@@
+					$his @@.orange;muscles steadily atrophy.@@
 				<</if>>
 				<<set $slaves[$i].muscles -= 3>>
 			<</if>>
 		<<elseif !canWalk($slaves[$i]) && ($slaves[$i].diet != "muscle building")>>
 			<<if $slaves[$i].muscles > -80>>
-				Since $he is incapable of moving herself,
+				Since $he is incapable of moving $himself,
 				<<if $universalRulesImmobileSlavesMaintainMuscles == 1 && $slaves[$i].muscles >= 0>>
-					and is required to maintain her musculature, $he regularly lifts weights to stave off muscular atrophy.
+					and is required to maintain $his musculature, $he regularly lifts weights to stave off muscular atrophy.
 				<<elseif $slaves[$i].muscles >= -5>>
 					$he steadily @@.orange;loses muscle definition.@@
 					<<set $slaves[$i].muscles-->>
 				<<else>>
-					her @@.orange;muscles steadily atrophy.@@
+					$his @@.orange;muscles steadily atrophy.@@
 					<<set $slaves[$i].muscles-->>
 				<</if>>
 			<</if>>
@@ -6740,7 +6610,7 @@
 			<</if>>
 		<</if>>
 		<<if ($slaves[$i].boobs > 40000)>>
-			$His immense breasts are so big they pin her to the floor, taking the weight off her body.
+			$His immense breasts are so big they pin $him to the floor, taking the weight off $his body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
 				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
@@ -6752,26 +6622,26 @@
 		<<elseif ($slaves[$i].boobs > 25000)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					$His giant tits are debilitatingly big and a constant reminder of her progress. No amount of discomfort or pain could dissuade her from going bigger.
+					$His giant tits are debilitatingly big and a constant reminder of $his progress. No amount of discomfort or pain could dissuade $him from going bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					$His giant tits are debilitatingly big. They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her body.
+					$His giant tits are debilitatingly big. They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for $his body.
 					<<set $slaves[$i].devotion -= 3>>
 					<<set $slaves[$i].health -= 5>>
 				<<else>>
-					$His giant tits are debilitatingly big, but $he takes measures to keep comfortable and pain free as to not concern you with her troubles.
+					$His giant tits are debilitatingly big, but $he takes measures to keep comfortable and pain free as to not concern you with $his troubles.
 				<</if>>
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 10000)>>
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					$His huge breasts are becoming troublesome for her slight form, but that only drives her desire to go even bigger.
+					$His huge breasts are becoming troublesome for $his slight form, but that only drives $his desire to go even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					Dragging her huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for her slight form.
+					Dragging $his huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for $his slight form.
 					<<set $slaves[$i].devotion -= 2>>
 					<<set $slaves[$i].health -= 2>>
 				<<else>>
-					$He finds her breasts uncomfortably large, but $he grins and bears it for you.
+					$He finds $his breasts uncomfortably large, but $he grins and bears it for you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6779,12 +6649,12 @@
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					The weight of her big boobs serves as a reminder that $he needs to get even bigger.
+					The weight of $his big boobs serves as a reminder that $he needs to get even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					The weight of her big boobs is @@.mediumorchid;uncomfortable@@ for her slight form.
+					The weight of $his big boobs is @@.mediumorchid;uncomfortable@@ for $his slight form.
 					<<set $slaves[$i].devotion -= 2>>
 				<<else>>
-					The weight of her big boobs is uncomfortable for her slight form, but $he bears it out of devotion to you.
+					The weight of $his big boobs is uncomfortable for $his slight form, but $he bears it out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6810,19 +6680,19 @@
 			<</if>>
 		<</if>>
 		<<if ($slaves[$i].boobs > 40000)>>
-			$His titanic breasts are so massive they dwarf her body. $He <<if $slaves[$i].sexualFlaw == "breast growth">>happily embraces<<else>>has no choice but to accept<</if>> immobility.
+			$His titanic breasts are so massive they dwarf $his body. $He <<if $slaves[$i].sexualFlaw == "breast growth">>happily embraces<<else>>has no choice but to accept<</if>> immobility.
 		<<elseif ($slaves[$i].boobs > 20000)>>
-			$His immense breasts are so huge they rest upon the floor even when $he tries to stand, taking the weight off her tiny body.
+			$His immense breasts are so huge they rest upon the floor even when $he tries to stand, taking the weight off $his tiny body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
 				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
 				$He finds pulling them along @@.mediumorchid;mildly annoying.@@
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
-				$He finds pulling them along a big burden, but her devotion to you is far stronger than her discomfort.
+				$He finds pulling them along a big burden, but $his devotion to you is far stronger than $his discomfort.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 6000)>>
-			$His giant breasts are so big they pin her to the floor, taking the weight off her tiny body.
+			$His giant breasts are so big they pin $him to the floor, taking the weight off $his tiny body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
 				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
@@ -6834,9 +6704,9 @@
 		<<elseif ($slaves[$i].boobs > 5000)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					$His giant tits are debilitatingly big and a constant reminder of her progress. No amount of discomfort or pain could dissuade her from going bigger.
+					$His giant tits are debilitatingly big and a constant reminder of $his progress. No amount of discomfort or pain could dissuade $him from going bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					$His giant tits are debilitatingly big. They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her childish form.
+					$His giant tits are debilitatingly big. They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for $his childish form.
 					<<set $slaves[$i].devotion -= 3>>
 					<<set $slaves[$i].health -= 4>>
 				<<else>>
@@ -6847,12 +6717,12 @@
 			<<if ($slaves[$i].muscles <= 80)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					$His huge breasts are troublesome for her childish form, but that only drives her desire to go even bigger.
+					$His huge breasts are troublesome for $his childish form, but that only drives $his desire to go even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					Hauling her huge tits around is @@.mediumorchid;uncomfortable@@ for her childish form.
+					Hauling $his huge tits around is @@.mediumorchid;uncomfortable@@ for $his childish form.
 					<<set $slaves[$i].devotion -= 2>>
 				<<else>>
-					$He finds her breasts uncomfortably large for her tiny body, but $he grins and bears it for you.
+					$He finds $his breasts uncomfortably large for $his tiny body, but $he grins and bears it for you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6860,12 +6730,12 @@
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					The weight of her big boobs serves as a reminder that $he needs to get even bigger.
+					The weight of $his big boobs serves as a reminder that $he needs to get even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					The weight of her big boobs is @@.mediumorchid;uncomfortable@@ for her slight form.
+					The weight of $his big boobs is @@.mediumorchid;uncomfortable@@ for $his slight form.
 					<<set $slaves[$i].devotion -= 2>>
 				<<else>>
-					The weight of her big boobs is uncomfortable for her slight form, but $he bears it out of devotion to you.
+					The weight of $his big boobs is uncomfortable for $his slight form, but $he bears it out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6891,17 +6761,17 @@
 			<</if>>
 		<</if>>
 		<<if ($slaves[$i].boobs > 40000)>>
-			$His immense breasts are so huge they rest upon the floor even when $he tries to stand, taking the weight off her small body.
+			$His immense breasts are so huge they rest upon the floor even when $he tries to stand, taking the weight off $his small body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
 				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
 				$He finds pulling them along @@.mediumorchid;mildly annoying.@@
 				<<set $slaves[$i].devotion -= 1>>
 			<<else>>
-				$He finds pulling them along a burden, but her devotion to you is far stronger than her discomfort.
+				$He finds pulling them along a burden, but $his devotion to you is far stronger than $his discomfort.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 12000)>>
-			$His giant breasts are so big they pin her to the floor, taking the weight off her young body.
+			$His giant breasts are so big they pin $him to the floor, taking the weight off $his young body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
 				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
@@ -6914,26 +6784,26 @@
 			<<if canWalk($slaves[$i])>>
 				$His giant tits are debilitatingly big.
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					No amount of discomfort or pain could dissuade her from going bigger.
+					No amount of discomfort or pain could dissuade $him from going bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her childish form.
+					They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for $his childish form.
 					<<set $slaves[$i].devotion -= 3>>
 					<<set $slaves[$i].health -= 5>>
 				<<else>>
-					$He does her best to not let them get the better of her youthful body.
+					$He does $his best to not let them get the better of $his youthful body.
 				<</if>>
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 5000)>>
 			<<if ($slaves[$i].muscles <= 80)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					$His huge breasts are troublesome for her childish form, but that only drives her desire to go even bigger.
+					$His huge breasts are troublesome for $his childish form, but that only drives $his desire to go even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					Dragging her huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for her childish form.
+					Dragging $his huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for $his childish form.
 					<<set $slaves[$i].devotion -= 2>>
 					<<set $slaves[$i].health -= 4>>
 				<<else>>
-					$His huge tits are uncomfortably big for her childish form, but $he keeps it to herself out of devotion to you.
+					$His huge tits are uncomfortably big for $his childish form, but $he keeps it to $himself out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6941,12 +6811,12 @@
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					The weight of her big boobs serves as a reminder that $he needs to get even bigger.
+					The weight of $his big boobs serves as a reminder that $he needs to get even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					The weight of her big boobs is @@.mediumorchid;uncomfortable@@ for her slight form.
+					The weight of $his big boobs is @@.mediumorchid;uncomfortable@@ for $his slight form.
 					<<set $slaves[$i].devotion -= 1>>
 				<<else>>
-					The weight of her big boobs is uncomfortable for her slight form, but $he bears it out of devotion to you.
+					The weight of $his big boobs is uncomfortable for $his slight form, but $he bears it out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -6972,7 +6842,7 @@
 			<</if>>
 		<</if>>
 		<<if ($slaves[$i].boobs > 25000)>>
-			$His immense breasts are so big they pin her to the floor, taking the weight off her youthful body.
+			$His immense breasts are so big they pin $him to the floor, taking the weight off $his youthful body.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
 				$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
 			<<elseif $slaves[$i].devotion <= 50>>
@@ -6984,23 +6854,23 @@
 		<<elseif ($slaves[$i].boobs > 17000)>>
 			$His giant tits are debilitatingly big.
 			<<if $slaves[$i].sexualFlaw == "breast growth">>
-				No amount of discomfort or pain could dissuade her from going bigger.
+				No amount of discomfort or pain could dissuade $him from going bigger.
 			<<elseif $slaves[$i].devotion <= 50>>
-				They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for her youthful form.
+				They are @@.mediumorchid;very uncomfortable@@ and @@.red;painful@@ for $his youthful form.
 				<<set $slaves[$i].devotion -= 3, $slaves[$i].health -= 10>>
 			<<else>>
-				$He finds them painfully uncomfortable, but finds ways to mitigate it to not distract you with her worries.
+				$He finds them painfully uncomfortable, but finds ways to mitigate it to not distract you with $his worries.
 			<</if>>
 		<<elseif ($slaves[$i].boobs > 10000)>>
 			<<if ($slaves[$i].muscles <= 30)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					$His huge breasts are troublesome for her slight form, but that only drives her desire to go even bigger.
+					$His huge breasts are troublesome for $his slight form, but that only drives $his desire to go even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					Dragging her huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for her slight form.
+					Dragging $his huge tits around is @@.mediumorchid;uncomfortable@@ and @@.red;painful@@ for $his slight form.
 					<<set $slaves[$i].devotion -= 2, $slaves[$i].health -= 3>>
 				<<else>>
-					$His huge tits are uncomfortably big for her slight form, but $he keeps it to herself out of devotion to you.
+					$His huge tits are uncomfortably big for $his slight form, but $he keeps it to $himself out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -7008,12 +6878,12 @@
 			<<if ($slaves[$i].muscles <= 5)>>
 			<<if canWalk($slaves[$i])>>
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					The weight of her big boobs serves as a reminder that $he needs to get even bigger.
+					The weight of $his big boobs serves as a reminder that $he needs to get even bigger.
 				<<elseif $slaves[$i].devotion <= 50>>
-					The weight of her big boobs is @@.mediumorchid;uncomfortable@@ for her slight form.
+					The weight of $his big boobs is @@.mediumorchid;uncomfortable@@ for $his slight form.
 					<<set $slaves[$i].devotion -= 1>>
 				<<else>>
-					The weight of her big boobs is uncomfortable for her slight form, but $he bears it out of devotion to you.
+					The weight of $his big boobs is uncomfortable for $his slight form, but $he bears it out of devotion to you.
 				<</if>>
 			<</if>>
 			<</if>>
@@ -7025,9 +6895,9 @@
 	<<if ($slaves[$i].preg > 30)>>
 		<<if ($slaves[$i].physicalAge < 4)>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				$His womb takes up most of her body and puts tremendous pressure on her skin and organs. This is @@.mediumorchid;very worrying@@ to $him. $He is in @@.red;constant pain@@ and each movement within her straining womb causes additional discomfort. $He is @@.gold;terrified@@ that at any moment $he could burst.
+				$His womb takes up most of $his body and puts tremendous pressure on $his skin and organs. This is @@.mediumorchid;very worrying@@ to $him. $He is in @@.red;constant pain@@ and each movement within $his straining womb causes additional discomfort. $He is @@.gold;terrified@@ that at any moment $he could burst.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives $his body more time to adapt to $his hyper gravidity, easing some of $his worries.
 					<<set $slaves[$i].devotion -= 1>>
  					<<set $slaves[$i].trust -= 4>>
  				<<else>>
@@ -7036,23 +6906,23 @@
  				<</if>>
 				<<set $slaves[$i].health -= 20>>
 			<<elseif ($slaves[$i].pregType >= 10)>>
-				$His womb greatly fills her body and compresses her internal organs. $He is in constant @@.mediumorchid;discomfort@@ and @@.red;pain@@ and can't wait for these children to be born.
+				$His womb greatly fills $his body and compresses $his internal organs. $He is in constant @@.mediumorchid;discomfort@@ and @@.red;pain@@ and can't wait for these children to be born.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives $his body more time to adapt to $his hyper gravidity, easing some of $his worries.
 					<<set $slaves[$i].devotion -= 1>>
  				<<else>>
 					<<set $slaves[$i].devotion -= 2>>
  				<</if>>
 				<<set $slaves[$i].health -= 10>>
 			<<else>>
-				$His full womb puts pressure on her organs. It is quite @@.mediumorchid;uncomfortable@@ to $him.
+				$His full womb puts pressure on $his organs. It is quite @@.mediumorchid;uncomfortable@@ to $him.
 				<<set $slaves[$i].devotion -= 2>>
 			<</if>>
 		<<elseif ($slaves[$i].physicalAge < 13)>>
 			<<if ($slaves[$i].pregType >= 20)>>
 				$His bloated womb is constantly straining to hold together. This is @@.mediumorchid;very worrying@@ to $him. $He moans @@.red;painfully@@ with each movement within $him.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives $his body more time to adapt to $his hyper gravidity, easing some of $his worries.
 					<<set $slaves[$i].devotion -= 1>>
  				<<else>>
 					<<set $slaves[$i].devotion -= 2>>
@@ -7061,7 +6931,7 @@
 			<<elseif ($slaves[$i].pregType >= 10)>>
 				<<if ($slaves[$i].muscles <= 30)>>
 				<<if canWalk($slaves[$i])>>
-					$His belly is very heavy and juts out quite far from her body. Between constantly getting in the way and the discomfort of being so full, her belly is @@.mediumorchid;very annoying@@ to $him.
+					$His belly is very heavy and juts out quite far from $his body. Between constantly getting in the way and the discomfort of being so full, $his belly is @@.mediumorchid;very annoying@@ to $him.
 					<<set $slaves[$i].devotion -= 2>>
 				<</if>>
 				<<else>>
@@ -7073,16 +6943,16 @@
 			<<else>>
 				<<if ($slaves[$i].muscles <= 5)>>
 				<<if canWalk($slaves[$i])>>
-					$His pregnant belly is quite tiring to carry around, leading her to be @@.mediumorchid;somewhat annoyed.@@
+					$His pregnant belly is quite tiring to carry around, leading $him to be @@.mediumorchid;somewhat annoyed.@@
 					<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 				<</if>>
 			<</if>>
 		<<else>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				$His straining womb is @@.mediumorchid;very worrying@@ to $him. $He @@.red;moans with pain@@ every time one of her brood moves within $him.
+				$His straining womb is @@.mediumorchid;very worrying@@ to $him. $He @@.red;moans with pain@@ every time one of $his brood moves within $him.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives $his body more time to adapt to $his hyper gravidity, easing some of $his worries.
 					<<set $slaves[$i].devotion -= 1>>
  				<<else>>
 					<<set $slaves[$i].devotion -= 3>>
@@ -7091,7 +6961,7 @@
 		<<elseif ($slaves[$i].pregType >= 10)>>
 				<<if ($slaves[$i].muscles <= 30)>>
 				<<if canWalk($slaves[$i])>>
-					$His belly is very heavy and juts out quite far from her body. Between constantly getting in the way and the discomfort of being so full, her belly is @@.mediumorchid;very annoying@@ to $him.
+					$His belly is very heavy and juts out quite far from $his body. Between constantly getting in the way and the discomfort of being so full, $his belly is @@.mediumorchid;very annoying@@ to $him.
 					<<set $slaves[$i].devotion -= 2>>
 				<</if>>
 				<</if>>
@@ -7100,9 +6970,9 @@
 	<<elseif ($slaves[$i].preg > 20)>>
 		<<if ($slaves[$i].physicalAge < 4)>>
 			<<if ($slaves[$i].pregType >= 20)>>
-				$His womb is becoming @@.mediumorchid;distressing@@ to $him. $He is in @@.red;pain@@ with each motion within her straining womb. $He is @@.gold;terrified@@ of what awaits her at the end of this pregnancy.
+				$His womb is becoming @@.mediumorchid;distressing@@ to $him. $He is in @@.red;pain@@ with each motion within $his straining womb. $He is @@.gold;terrified@@ of what awaits $him at the end of this pregnancy.
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives $his body more time to adapt to $his hyper gravidity, easing some of $his worries.
 					<<set $slaves[$i].devotion -= 1>>
 					<<set $slaves[$i].trust -= 2>>
  				<<else>>
@@ -7111,11 +6981,11 @@
  				<</if>>
 				<<set $slaves[$i].health -= 20>>
 			<<elseif ($slaves[$i].pregType >= 10)>>
-				$His womb is becoming quite full causing her some @@.mediumorchid;discomfort@@. $He is eager to be free of this burden.
+				$His womb is becoming quite full causing $him some @@.mediumorchid;discomfort@@. $He is eager to be free of this burden.
 				<<set $slaves[$i].devotion -= 2>>
 			<<else>>
 				<<if canWalk($slaves[$i])>>
-				$His big belly on her small body keeps getting in her way, @@.mediumorchid;annoying her.@@
+				$His big belly on $his small body keeps getting in $his way, @@.mediumorchid;annoying $him.@@
 				<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 			<</if>>
@@ -7124,7 +6994,7 @@
 				$His bloated womb is beginning to get too crowded, @@.mediumorchid;worrying@@ $him. $He moans with @@.red;discomfort@@ with each movement within $him.
 				<<set $slaves[$i].devotion -= 2>>
 				<<if $slaves[$i].pregControl == "slow gestation" && $slaves[$i].intelligence > -2>>
- 					$His slowed gestation rate gives her body more time to adapt to her hyper gravidity, easing some of her worries.
+ 					$His slowed gestation rate gives $his body more time to adapt to $his hyper gravidity, easing some of $his worries.
 					<<set $slaves[$i].devotion -= 1>>
  				<<else>>
 					<<set $slaves[$i].devotion -= 2>>
@@ -7133,7 +7003,7 @@
 			<<elseif ($slaves[$i].pregType >= 10)>>
 				<<if ($slaves[$i].muscles <= 30)>>
 				<<if canWalk($slaves[$i])>>
-					$His belly is getting heavy and starting to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to $him.
+					$His belly is getting heavy and starting to get in $his way. Between constantly bumping things and the discomfort of being full, $his belly is @@.mediumorchid;annoying@@ to $him.
 					<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 				<</if>>
@@ -7145,7 +7015,7 @@
 			<<elseif ($slaves[$i].pregType >= 10)>>
 				<<if ($slaves[$i].muscles <= 30)>>
 				<<if canWalk($slaves[$i])>>
-					$His belly is getting heavy and starting to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to $him.
+					$His belly is getting heavy and starting to get in $his way. Between constantly bumping things and the discomfort of being full, $his belly is @@.mediumorchid;annoying@@ to $him.
 					<<set $slaves[$i].devotion -= 1>>
 				<</if>>
 				<</if>>
@@ -7155,15 +7025,15 @@
 <<else>> /* FUCKDOLL PHYSICAL EFFECTS */
 	<<if $slaves[$i].eyes > 0>>
 	<<if $slaves[$i].fuckdoll > random(20,100)>>
-		Its suit blinds it, and its @@.mediumorchid;vision worsens@@ from long disuse.
+		$His suit blinds $him, and $his @@.mediumorchid;vision worsens@@ from long disuse.
 		<<set $slaves[$i].eyes = -1>>
 	<</if>>
 	<</if>>
 	<<if $slaves[$i].curatives == 0 && $slaves[$i].inflationType != "curative">>
-		The extreme physical stress of living in the suit @@.red;damages its health.@@
+		The extreme physical stress of living in the suit @@.red;damages $his health.@@
 		<<set $slaves[$i].health = -10>>
 	<<else>>
-		The <<if $slaves[$i].curatives == 1>>preventatives<<elseif $slaves[$i].inflationType == "curative">>rectal curatives<<else>>curatives<</if>> protect it from the extreme physical stress of living in the suit.
+		The <<if $slaves[$i].curatives == 1>>preventatives<<elseif $slaves[$i].inflationType == "curative">>rectal curatives<<else>>curatives<</if>> protect $him from the extreme physical stress of living in the suit.
 	<</if>>
 <</if>>
 
@@ -7178,14 +7048,14 @@
 			<<else>>
 				$His gigantic boobs make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $ballsAccessibility == 1>>$he has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					Every little inconvenience just feeds her breast growth obsession, so $he's more bothered that they aren't an even bigger problem for her daily life.
+					Every little inconvenience just feeds $his breast growth obsession, so $he's more bothered that they aren't an even bigger problem for $his daily life.
 				<<elseif ($slaves[$i].devotion > 50)>>
-					Since $he's devoted to you, $he just does her best.
+					Since $he's devoted to you, $he just does $his best.
 				<<elseif ($slaves[$i].trust > -20)>>
-					This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
+					This torment makes $him @@.gold;less trusting@@ of your willingness to look after $him.
 					<<set $slaves[$i].trust -= 2>>
 				<<else>>
-					$He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+					$He already believes you capable of tormenting $him, so this proof of your indifference @@.mediumorchid;angers $him@@ daily.
 					<<set $slaves[$i].devotion -= 2>>
 				<</if>>
 			<</if>>
@@ -7229,13 +7099,13 @@
 <<if $slaves[$i].fetish != "mindbroken">>
 <<if canWalk($slaves[$i])>>
 <<if $slaves[$i].bellyImplant >= 600000>>
-	$His belly implant takes up most of her body cavity, is tremendously heavy, and protrudes massively from her abdomen. Between constantly bumping things and the discomfort of being so extremely full, her belly is @@.mediumorchid;really frustrating@@ to $him.
+	$His belly implant takes up most of $his body cavity, is tremendously heavy, and protrudes massively from $his abdomen. Between constantly bumping things and the discomfort of being so extremely full, $his belly is @@.mediumorchid;really frustrating@@ to $him.
 	<<set $slaves[$i].devotion -= 3>>
 <<elseif $slaves[$i].bellyImplant >= 150000>>
-	$His belly implant takes up a good deal of her body cavity, is extremely heavy, and protrudes greatly from her abdomen. Between constantly bumping things and the discomfort of being so very full, her belly is @@.mediumorchid;very annoying@@ to $him.
+	$His belly implant takes up a good deal of $his body cavity, is extremely heavy, and protrudes greatly from $his abdomen. Between constantly bumping things and the discomfort of being so very full, $his belly is @@.mediumorchid;very annoying@@ to $him.
 	<<set $slaves[$i].devotion -= 2>>
 <<elseif $slaves[$i].bellyImplant >= 10000>>
-	$His belly implant is quite heavy and tends to get in her way. Between constantly bumping things and the discomfort of being full, her belly is @@.mediumorchid;annoying@@ to $him.
+	$His belly implant is quite heavy and tends to get in $his way. Between constantly bumping things and the discomfort of being full, $his belly is @@.mediumorchid;annoying@@ to $him.
 	<<set $slaves[$i].devotion -= 1>>
 <</if>>
 <</if>>
@@ -7257,18 +7127,18 @@
 <<if $masterSuitePregnancySlaveLuxuries == 1 && $slaves[$i].broodmother == 2 && ($slaves[$i].assignment == "serve in the master suite" || $slaves[$i].assignment == "be your Concubine")>>
 <<if $slaves[$i].diet != "high caloric">>
 <<if $slaves[$i].preg > 20>>
-	The pregnancy generator places heavy strain on her as her body @@.red;consumes itself@@ to keep releasing eggs and maintain her many developing babies.
+	The pregnancy generator places heavy strain on $him as $his body @@.red;consumes itself@@ to keep releasing eggs and maintain $his many developing babies.
 	<<set $slaves[$i].health -= 1>>
 	<<if $slaves[$i].weight lt -2>>
 		<<set $slaves[$i].health -= 1>>
 	<</if>>
 	<<set $slaves[$i].chem += 2>>
 	<<if $slaves[$i].weight lt -2>>
-		$He is @@.mediumorchid;gravely concerned@@ over her withered body and @@.gold;terrified@@ of what will happen next.
+		$He is @@.mediumorchid;gravely concerned@@ over $his withered body and @@.gold;terrified@@ of what will happen next.
 	  	<<set $slaves[$i].devotion -= 4.0>>
 		<<set $slaves[$i].trust -= 4.0>>
 	<<else>>
-		$He is @@.mediumorchid;concerned@@ by her withering body and @@.gold;fears@@ her future.
+		$He is @@.mediumorchid;concerned@@ by $his withering body and @@.gold;fears@@ $his future.
 	  	<<set $slaves[$i].devotion -= 1.0>>
 		<<set $slaves[$i].trust -= 1.0>>
 	<</if>>
@@ -7284,7 +7154,7 @@
 		<</if>>
 		<<if random(2,10) gt $slaves[$i].health and $slaves[$i].boobs gt 0>>
 			<<if $slaves[$i].weight lte -3>>
-			  With nothing else to draw from, her body @@.red;rapidly consumes her breasts@@.
+			  With nothing else to draw from, $his body @@.red;rapidly consumes $his breasts@@.
 				<<set $slaves[$i].boobs -= 5000>>
 			<<else>>
 			  $He has @@.red;lost breast tissue@@.
@@ -7296,7 +7166,7 @@
 		<</if>>
 		<<if random(2,10) gt $slaves[$i].health and $slaves[$i].butt gt 0>>
 			<<if $slaves[$i].weight lte -3>>
-			  With nothing else to draw from, her body @@.red;rapidly consumes her ass fat@@.
+			  With nothing else to draw from, $his body @@.red;rapidly consumes $his ass fat@@.
 				<<set $slaves[$i].butt -= 4>>
 			<<else>>
 			  $He has @@.red;lost some ass fat@@.
@@ -7318,7 +7188,7 @@
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].boobs gt 0>>
 			<<if $slaves[$i].weight lte -3>>
-			  With nothing else to draw from, her body @@.red;rapidly consumes her breasts@@.
+			  With nothing else to draw from, $his body @@.red;rapidly consumes $his breasts@@.
 				<<set $slaves[$i].boobs -= 2000>>
 			<<else>>
 			  $He has @@.red;lost breast tissue@@.
@@ -7330,7 +7200,7 @@
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].butt gt 0>>
 			<<if $slaves[$i].weight lte -3>>
-			  With nothing else to draw from, her body @@.red;rapidly consumes her ass fat@@.
+			  With nothing else to draw from, $his body @@.red;rapidly consumes $his ass fat@@.
 				<<set $slaves[$i].butt -= 3>>
 			<<else>>
 			  $He has @@.red;lost some ass fat@@.
@@ -7352,7 +7222,7 @@
 		<</if>>
 		<<if random(1,6) gt $slaves[$i].health and $slaves[$i].boobs gt 0>>
 			<<if $slaves[$i].weight lte -3>>
-			  With nothing else to draw from, her body @@.red;rapidly consumes her breasts@@.
+			  With nothing else to draw from, $his body @@.red;rapidly consumes $his breasts@@.
 				<<set $slaves[$i].boobs -= 1000>>
 			<<else>>
 			  $He has @@.red;lost breast tissue@@.
@@ -7364,7 +7234,7 @@
 		<</if>>
 		<<if random(1,6) gt $slaves[$i].health and $slaves[$i].butt gt 0>>
 			<<if $slaves[$i].weight lte -3>>
-			  With nothing else to draw from, her body @@.red;rapidly consumes her ass fat@@.
+			  With nothing else to draw from, $his body @@.red;rapidly consumes $his ass fat@@.
 				<<set $slaves[$i].butt -= 2>>
 			<<else>>
 			  $He has @@.red;lost some ass fat@@.
@@ -7385,7 +7255,7 @@
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].boobs gt 0>>
 			<<if $slaves[$i].weight lte -3>>
-			  With nothing else to draw from, her body @@.red;rapidly consumes her breasts@@.
+			  With nothing else to draw from, $his body @@.red;rapidly consumes $his breasts@@.
 				<<set $slaves[$i].boobs -= 1000>>
 			<<else>>
 			  $He has @@.red;lost breast tissue@@.
@@ -7397,7 +7267,7 @@
 		<</if>>
 		<<if random(1,8) gt $slaves[$i].health and $slaves[$i].butt gt 0>>
 			<<if $slaves[$i].weight lte -3>>
-			  With nothing else to draw from, her body @@.red;rapidly consumes her ass fat@@.
+			  With nothing else to draw from, $his body @@.red;rapidly consumes $his ass fat@@.
 				<<set $slaves[$i].butt -= 2>>
 			<<else>>
 			  $He has @@.red;lost some ass fat@@.
@@ -7412,40 +7282,40 @@
 <<if $slaves[$i].preg gt 30>>
 	<<if $slaves[$i].amp isnot 1>>
 	<<if $slaves[$i].devotion lt -4 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  When $he isn't laboring or performing her duties $he can be seen pressing down on her grotesque belly desperately trying to coax the device out of her body.  $He is  @@.gold;mortified@@ by her body and @@.mediumorchid;loathes you@@ for doing this to $him.
+	  When $he isn't laboring or performing $his duties $he can be seen pressing down on $his grotesque belly desperately trying to coax the device out of $his body. $He is @@.gold;mortified@@ by $his body and @@.mediumorchid;loathes you@@ for doing this to $him.
 	  	<<set $slaves[$i].devotion -= 4.0>>
 		<<set $slaves[$i].trust -= 4.0>>
 	<<elseif $slaves[$i].devotion lt 5 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  $He runs her hands across her bulging belly, feeling the life within threatening to burst $him.  $He is  @@.gold;disgusted@@ by her body and @@.mediumorchid;hates you@@ for doing this to $him.
+	  $He runs $his hands across $his bulging belly, feeling the life within threatening to burst $him. $He is @@.gold;disgusted@@ by $his body and @@.mediumorchid;hates you@@ for doing this to $him.
 	  	<<set $slaves[$i].devotion -= 3.0>>
 		<<set $slaves[$i].trust -= 3.0>>
 	<<elseif $slaves[$i].devotion lt 20 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  $He runs her hands across her bulging belly, feeling the life within growing larger.  $He is  @@.gold;concerned@@ by her body and @@.mediumorchid;is uncertain@@ on her situation.
+	  $He runs $his hands across $his bulging belly, feeling the life within growing larger. $He is @@.gold;concerned@@ by $his body and @@.mediumorchid;is uncertain@@ on $his situation.
 	  	<<set $slaves[$i].devotion -= 2.0>>
 		<<set $slaves[$i].trust -= 2.0>>
 	<</if>>
 	<<else>>
 	<<if $slaves[$i].devotion lt -4 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  When $he isn't laboring or performing her duties $he can be seen desperately thrashing trying to coax the device out of her body.  $He is  @@.gold;mortified@@ by her body and @@.mediumorchid;loathes you@@ for doing this to $him.
+	  When $he isn't laboring or performing $his duties $he can be seen desperately thrashing trying to coax the device out of $his body. $He is @@.gold;mortified@@ by $his body and @@.mediumorchid;loathes you@@ for doing this to $him.
 	  	<<set $slaves[$i].devotion -= 4.0>>
 		<<set $slaves[$i].trust -= 4.0>>
 	<<elseif $slaves[$i].devotion lt 5 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  $He attempts to shift beneath her bulging belly, feeling the life within threatening to burst $him.  $He is  @@.gold;disgusted@@ by her body and @@.mediumorchid;hates you@@ for doing this to $him.
+	  $He attempts to shift beneath $his bulging belly, feeling the life within threatening to burst $him. $He is @@.gold;disgusted@@ by $his body and @@.mediumorchid;hates you@@ for doing this to $him.
 	  	<<set $slaves[$i].devotion -= 3.0>>
 		<<set $slaves[$i].trust -= 3.0>>
 	<<elseif $slaves[$i].devotion lt 20 and ($slaves[$i].fetish isnot "mindbroken")>>
-	  $He pushes her bulging belly out, feeling the life within growing larger.  $He is  @@.gold;concerned@@ by her body and @@.mediumorchid;is uncertain@@ on her situation.
+	  $He pushes $his bulging belly out, feeling the life within growing larger. $He is @@.gold;concerned@@ by $his body and @@.mediumorchid;is uncertain@@ on $his situation.
 	  	<<set $slaves[$i].devotion -= 2.0>>
 		<<set $slaves[$i].trust -= 2.0>>
 	<</if>>
 	<</if>>
 	<<if ($slaves[$i].births gt 100) and ($slaves[$i].devotion lt 0) and ($slaves[$i].trust lt 0) and ($slaves[$i].fetish isnot "mindbroken")>>
-	  Being constantly pregnant and giving birth to over a hundred offspring has taken its toll on $slaves[$i].slaveName's mind.  Feeling that $he is nothing more than a breeder has destroyed any hopes that $he had. $slaves[$i].slaveName has become completely broken, leaving her nothing more than a baby filled sack.
+	  Being constantly pregnant and giving birth to over a hundred offspring has taken its toll on $slaves[$i].slaveName's mind. Feeling that $he is nothing more than a breeder has destroyed any hopes that $he had. $slaves[$i].slaveName has become completely broken, leaving $him nothing more than a baby filled sack.
 	  <<set $slaves[$i].fetish = "mindbroken">>
 	  <<set $slaves[$i].sexualFlaw = "none">>
 	  <<set $slaves[$i].behavioralFlaw = "none">>
 	<<elseif ($slaves[$i].weight lt -2) and ($slaves[$i].boobs lt 100) and ($slaves[$i].butt lt 1) and ($slaves[$i].muscles lt 1) and ($slaves[$i].fetish isnot "mindbroken")>>
-	  Watching her body sacrifice itself for a pregnancy $he hates takes its toll on $slaves[$i].slaveName's mind.  Feeling that $he is nothing more than a host for her brood has destroyed any hopes $he had left.  $slaves[$i].slaveName has become completely broken.
+	  Watching $his body sacrifice itself for a pregnancy $he hates takes its toll on $slaves[$i].slaveName's mind. Feeling that $he is nothing more than a host for $his brood has destroyed any hopes $he had left. $slaves[$i].slaveName has become completely broken.
 	  <<set $slaves[$i].fetish = "mindbroken">>
 	  <<set $slaves[$i].sexualFlaw = "none">>
 	  <<set $slaves[$i].behavioralFlaw = "none">>
@@ -7460,7 +7330,7 @@
 	<</if>>
 <</if>>
 <<else>>
-	$His high-calorie and nutrient filled diet allows her body to handle its demanding pregnancy, though being stuffed only compounds the pressure within her abdomen. $He @@.mediumorchid;resents@@ needing to have her stomach bloated with food at all times, but @@.mediumaquamarine;appreciates@@ the effort you are putting into keeping her healthy.
+	$His high-calorie and nutrient filled diet allows $his body to handle its demanding pregnancy, though being stuffed only compounds the pressure within $his abdomen. $He @@.mediumorchid;resents@@ needing to have $his stomach bloated with food at all times, but @@.mediumaquamarine;appreciates@@ the effort you are putting into keeping $him healthy.
 	<<set $slaves[$i].devotion -= 0.2>>
 	<<set $slaves[$i].trust += 0.3>>
 <</if>>
@@ -7481,12 +7351,12 @@
   <<else>>
     $His giant pregnancy makes life a struggle: <<if $buttAccessibility == 1 || $boobAccessibility == 1 || $ballsAccessibility == 1>>$he has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
     <<if ($slaves[$i].devotion > 50)>>
-      Since $he's devoted to you, $he just does her best.
+      Since $he's devoted to you, $he just does $his best.
     <<elseif ($slaves[$i].trust > -20)>>
-      This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
+      This torment makes $him @@.gold;less trusting@@ of your willingness to look after $him.
       <<set $slaves[$i].trust -= 2>>
     <<else>>
-      $He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+      $He already believes you capable of tormenting $him, so this proof of your indifference @@.mediumorchid;angers $him@@ daily.
      <<set $slaves[$i].devotion -= 2>>
 	<</if>>
   <</if>>
@@ -7500,12 +7370,12 @@
   <<else>>
     $His giant belly makes life a struggle: <<if $buttAccessibility == 1 || $boobAccessibility == 1 || $ballsAccessibility == 1>>$he has trouble using appliances and furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and constantly bumps into things<</if>>.
     <<if ($slaves[$i].devotion > 40)>>
-      Since $he's devoted to you, $he just does her best.
+      Since $he's devoted to you, $he just does $his best.
     <<elseif ($slaves[$i].trust > -20)>>
-      This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
+      This torment makes $him @@.gold;less trusting@@ of your willingness to look after $him.
       <<set $slaves[$i].trust -= 2>>
     <<else>>
-      $He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+      $He already believes you capable of tormenting $him, so this proof of your indifference @@.mediumorchid;angers $him@@ daily.
       <<set $slaves[$i].devotion -= 2>>
 	<</if>>
   <</if>>
@@ -7514,25 +7384,25 @@
 <<if canWalk($slaves[$i])>>
         <<if ($slaves[$i].dick >= 30)>>
                 <<if ($slaves[$i].devotion <= 50)>>
-                        $His titanic penis rests upon the floor even when $he stands. $He finds moving @@.mediumorchid;terrifying@@ since $he drags her cock along.
+                        $His titanic penis rests upon the floor even when $he stands. $He finds moving @@.mediumorchid;terrifying@@ since $he drags $his cock along.
                         <<set $slaves[$i].devotion -= 3>>
                 <<else>>
                         $His titanic penis rests upon the floor even when $he stands. $He pays close attention as $he moves to keep it pristine for you.
                 <</if>>
         <<elseif ($slaves[$i].dick > 20)>>
                 <<if ($slaves[$i].devotion <= 50)>>
-                        $His enormous cock is @@.mediumorchid;very uncomfortable@@ for her to drag around.
+                        $His enormous cock is @@.mediumorchid;very uncomfortable@@ for $him to drag around.
                         <<set $slaves[$i].devotion -= 2>>
                 <<else>>
-                        $His enormous cock is uncomfortable for her to move with, but $he bears its weight out of devotion to you.
+                        $His enormous cock is uncomfortable for $him to move with, but $he bears its weight out of devotion to you.
                 <</if>>
         <<elseif ($slaves[$i].dick >= 10)>>
                 <<if canWalk($slaves[$i])>>
                         <<if ($slaves[$i].devotion <= 50)>>
-                                $His giant dick is @@.mediumorchid;uncomfortable@@ for her body.
+                                $His giant dick is @@.mediumorchid;uncomfortable@@ for $his body.
                                 <<set $slaves[$i].devotion -= 1>>
                         <<else>>
-                                $He can't seem to get comfortable with her giant dick, but $he keeps it to herself out of devotion.
+                                $He can't seem to get comfortable with $his giant dick, but $he keeps it to $himself out of devotion.
                         <</if>>
                 <</if>>
         <</if>>
@@ -7545,14 +7415,14 @@
 			<<set $slaves[$i].trust += 1>>
 		<</if>>
 	<<else>>
-		$His giant penis make life a struggle: $he has to drag it along as $he moves, has trouble fitting into beds and sitting in chairs, and constantly has to make sure to not get her dick caught in doors.
+		$His giant penis make life a struggle: $he has to drag it along as $he moves, has trouble fitting into beds and sitting in chairs, and constantly has to make sure to not get $his dick caught in doors.
 		<<if ($slaves[$i].devotion > 50)>>
-			 Since $he's devoted to you, $he just does her best.
+			 Since $he's devoted to you, $he just does $his best.
 		<<elseif ($slaves[$i].trust > -20)>>
-			This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
+			This torment makes $him @@.gold;less trusting@@ of your willingness to look after $him.
 			<<set $slaves[$i].trust -= 2>>
 		<<else>>
-			$He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+			$He already believes you capable of tormenting $him, so this proof of your indifference @@.mediumorchid;angers $him@@ daily.
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
@@ -7569,17 +7439,17 @@
 		<</if>>
 	<<elseif ($slaves[$i].balls > 50)>>
 		<<if ($slaves[$i].devotion <= 50)>>
-			$His enormous balls are @@.mediumorchid;very uncomfortable@@ for her to carry.
+			$His enormous balls are @@.mediumorchid;very uncomfortable@@ for $him to carry.
 			<<set $slaves[$i].devotion -= 2>>
 		<<else>>
-			$He finds her enormous balls a little uncomfortable, but $he bears their weight out of devotion to you.
+			$He finds $his enormous balls a little uncomfortable, but $he bears their weight out of devotion to you.
 		<</if>>
 	<<elseif ($slaves[$i].balls > 25)>>
 		<<if ($slaves[$i].devotion <= 50)>>
-			$His huge balls are @@.mediumorchid;uncomfortable@@ for her body.
+			$His huge balls are @@.mediumorchid;uncomfortable@@ for $his body.
 			<<set $slaves[$i].devotion -= 1>>
 		<<else>>
-			$He can't seem to get comfortable with her huge balls, but $he keeps it to herself out of devotion.
+			$He can't seem to get comfortable with $his huge balls, but $he keeps it to $himself out of devotion.
 		<</if>>
 	<</if>>
 <</if>>
@@ -7591,14 +7461,14 @@
 			<<set $slaves[$i].trust += 1>>
 		<</if>>
 	<<else>>
-		$His giant balls make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $boobAccessibility == 1>>$he has trouble using appliances and furniture, and has to be constantly mindful of things striking her oversensitive testicles, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and has to be constantly mindful of things striking her oversensitive testicles<</if>>.
+		$His giant balls make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $boobAccessibility == 1>>$he has trouble using appliances and furniture, and has to be constantly mindful of things striking $his oversensitive testicles, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using appliances and furniture, and has to be constantly mindful of things striking $his oversensitive testicles<</if>>.
 		<<if ($slaves[$i].devotion > 50)>>
-			Since $he's devoted to you, $he just does her best.
+			Since $he's devoted to you, $he just does $his best.
 		<<elseif ($slaves[$i].trust > -20)>>
-			This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
+			This torment makes $him @@.gold;less trusting@@ of your willingness to look after $him.
 			<<set $slaves[$i].trust -= 2>>
 		<<else>>
-			$He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+			$He already believes you capable of tormenting $him, so this proof of your indifference @@.mediumorchid;angers $him@@ daily.
 			<<set $slaves[$i].devotion -= 3>>
 		<</if>>
 	<</if>>
@@ -7607,9 +7477,9 @@
 <<if ($slaves[$i].hips > 2)>>
 	$His inhumanly wide hips make walking difficult. $He can barely move without swinging them side to side seductively, and $he keeps bumping things with them.
 	<<if ($slaves[$i].devotion > 50)>>
-		Since $he's devoted to you, $he embraces her wide body and does everything $he can to show it off for you.
+		Since $he's devoted to you, $he embraces $his wide body and does everything $he can to show it off for you.
 	<<elseif ($slaves[$i].devotion > -20)>>
-		This gait makes her feel like a huge whore, @@.hotpink;increasing her submissiveness.@@
+		This gait makes $him feel like a huge whore, @@.hotpink;increasing $his submissiveness.@@
 		<<set $slaves[$i].devotion += 2>>
 	<<else>>
 		$He hates that $he is forced to bear such freakish hips and @@.mediumorchid;blames you@@ for every trip, bumped object, and hip checked slave.
@@ -7621,15 +7491,15 @@
 <<if ($slaves[$i].butt > 15)>>
 	$His butt is a massive burden to $him. $He dreads walking down narrow hallways and getting dressed in the morning.
 	<<if ($slaves[$i].devotion <= 50)>>
-		$He lives a life of @@.mediumorchid;annoyance@@ over knocking things over, bumping people, and getting stuck in chairs with her godly ass.
+		$He lives a life of @@.mediumorchid;annoyance@@ over knocking things over, bumping people, and getting stuck in chairs with $his godly ass.
 		<<set $slaves[$i].devotion -= 2>>
 	<<else>>
-		$He lives a life of minor annoyances knocking things over, bumping people and getting stuck in chairs with her godly ass, but bears them with pride out of devotion.
+		$He lives a life of minor annoyances knocking things over, bumping people and getting stuck in chairs with $his godly ass, but bears them with pride out of devotion.
 	<</if>>
 <<elseif ($slaves[$i].butt > 10)>>
 	$His butt has gotten absolutely enormous.
 	<<if ($slaves[$i].devotion <= 50)>>
-		$He finds it a  @@.mediumorchid;massive nuisance@@ to live with.
+		$He finds it a @@.mediumorchid;massive nuisance@@ to live with.
 		<<set $slaves[$i].devotion -= 1>>
 	<<else>>
 		$He finds it a massive nuisance to live with, but does anyway out of devotion to you.
@@ -7646,12 +7516,12 @@
 	<<else>>
 		$His giant butt make life a struggle: <<if $buttAccessibility == 1 || $pregAccessibility == 1 || $boobAccessibility == 1>>$he has trouble using furniture, and constantly bumps into things, but at least the doors have already been widened for your other slaves<<else>>$he barely fits through doors, has trouble using furniture, and constantly bumps into things<</if>>.
 		<<if ($slaves[$i].devotion > 50)>>
-			Since $he's devoted to you, $he just does her best.
+			Since $he's devoted to you, $he just does $his best.
 		<<elseif ($slaves[$i].trust > -20)>>
-			This torment makes her @@.gold;less trusting@@ of your willingness to look after $him.
+			This torment makes $him @@.gold;less trusting@@ of your willingness to look after $him.
 			<<set $slaves[$i].trust -= 1>>
 		<<else>>
-			$He already believes you capable of tormenting her, so this proof of your indifference @@.mediumorchid;angers her@@ daily.
+			$He already believes you capable of tormenting $him, so this proof of your indifference @@.mediumorchid;angers $him@@ daily.
 			<<set $slaves[$i].devotion -= 2>>
 		<</if>>
 	<</if>>
@@ -7771,7 +7641,7 @@
 			<<if $slaves[$i].voice == 0 || $slaves[$i].lips > 95>>
 				$He has managed to pick up enough $language that @@.green;$he's now able to understand most of what $he hears.@@
 			<<else>>
-				$He has managed to pick up enough $language that @@.green;$he's now reasonably fluent in the language.@@ $His accent is quite heavy, but $he can make <<print $him>>self understood.
+				$He has managed to pick up enough $language that @@.green;$he's now reasonably fluent in the language.@@ $His accent is quite heavy, but $he can make $himself understood.
 			<</if>>
 		<</if>>
 	<<elseif canTalk($slaves[$i])>>
@@ -7784,7 +7654,7 @@
 			<<if ($week - $slaves[$i].weekAcquired) > (10 + _minweeks)>>
 
 				<<set $slaves[$i].accent -= 1>>
-				$He does her best to speak proper, unaccented $language, as encouraged by the rules. @@.green;$His accent has diminished to imperceptibility.@@
+				$He does $his best to speak proper, unaccented $language, as encouraged by the rules. @@.green;$His accent has diminished to imperceptibility.@@
 			<</if>>
 		<</if>>
 	<</if>>
@@ -7797,184 +7667,17 @@
 	<<set $repGain += (10*$slaves[$i].prestige)>>
 <</if>>
 
-<<<<<<< HEAD
-<<if $studio == 1>>
-<<if $slaves[$i].pornFameSpending > 0>>
-	<<set _oldFame = $slaves[$i].pornFame>>
-	<<if ($slaves[$i].pornFame < 35) && ($slaves[$i].prestige > 1)>>
-		Interest in porn of $him is very high, since $he's already quite prestigious.
-                <<set $slaves[$i].pornFame += 1*$HackingSkillMultiplier>>
-	<<elseif ($slaves[$i].pornFame < 10) && ($slaves[$i].prestige > 0)>>
-		Interest in porn of $him is high, since $he's already prestigious.
-                <<set $slaves[$i].pornFame += 1*$HackingSkillMultiplier>>
-	<</if>>
-	<<set $slaves[$i].pornFame += (($slaves[$i].pornFameSpending/1000)/$HackingSkillMultiplier)>>
-	<<if ($slaves[$i].prestige < 3) && ($slaves[$i].pornFame >= 100) && (_oldFame < 100)>>
-		<<set $slaves[$i].prestige = 3>>
-		@@.green;$He has become world famous for $his career in slave pornography!@@ Millions are now intimately familiar with
-		<<if $slaves[$i].fuckdoll > 0>>
-			<<set $slaves[$i].prestigeDesc = "It is world famous for its career in slave pornography. Millions are intimately familiar with the sight of it being used.">>
-			the sight of it being used,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing it offering itself">>
-		<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being raped.">>
-			the sight of her being raped,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her crying">>
-		<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds $he makes when being throatfucked.">>
-			the sounds $he makes when being throatfucked,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting facefucked">>
-		<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her screams of anal pain.">>
-			her screams of anal pain,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking a brutal assfuck">>
-		<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being gagfucked.">>
-			how $he struggles when taking a fuck,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her screaming and struggling">>
-		<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her lewd striptease.">>
-			her lewd striptease,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stripping">>
-		<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her authentic pleasure.">>
-			her authentic pleasure,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her in ecstasy">>
-		<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her most perverted tendencies.">>
-			her most perverted tendencies,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something perverted">>
-		<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her devotion to her partners' pleasure.">>
-			her devotion to her partners' pleasure,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her smiling genuinely">>
-		<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her willingness to do things not repeated in polite company.">>
-			her willingness to do things not repeated in polite company,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something extreme">>
-		<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her holes stretched to their limits.">>
-			the sight of her holes stretched to their limits,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stuffed to her limit">>
-		<<elseif $slaves[$i].bellyPreg >= 1500>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the growth of her belly and her pregnant pussy.">>
-			the sight of her rounded belly and pregnant pussy,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pregnant pussy getting pounded">>
-		<<else>>
-			<<set $slaves[$i].prestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being fucked.">>
-			the sight of $him being fucked,
-			<<set $desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting fucked">>
-		<</if>>
-		<<set $trinkets.push($desc)>>
-		so it is now extremely prestigious to own $him.
-	<<elseif ($slaves[$i].prestige < 2) && ($slaves[$i].pornFame >= 35) && (_oldFame < 35)>>
-	<<set $slaves[$i].prestige = 2>>
-	@@.green;$He has become famous for $his recurring role in slave pornography!@@ $His many fans relish
-	<<if $slaves[$i].fuckdoll > 0>>
-		<<set $slaves[$i].prestigeDesc = "It is famous for her recurring role in slave pornography. Its many fans relish the sight of it being used.">>
-		the sight of it being used,
-	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being raped.">>
-		the sight of her being raped,
-	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sounds $he makes when being throatfucked.">>
-		the sounds $he makes when being throatfucked,
-	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her screams of anal pain.">>
-		her screams of anal pain,
-	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being gagfucked.">>
-		how $he struggles when taking a fuck,
-	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her lewd striptease.">>
-		$his lewd striptease,
-	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her authentic pleasure.">>
-		her authentic pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her most perverted tendencies.">>
-		her most perverted tendencies,
-	<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
-		her devotion to her partners' pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring in slave pornography. Her many fans relish her willingness to do things not repeated in polite company.">>
-		her willingness to do things not repeated in polite company,
-	<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring in slave pornography. Her many fans relish the sight of her holes stretched to their limits.">>
-		the sight of her holes stretched to their limits,
-	<<elseif $slaves[$i].bellyPreg >= 1500>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish her rounded belly and pregnant pussy.">>
-		the sight of her rounded belly and pregnant pussy,
-	<<else>>
-		<<set $slaves[$i].prestigeDesc = "She is famous for her recurring role in slave pornography. Her many fans relish the sight of her being fucked.">>
-		the sight of her being fucked,
-	<</if>>
-	so it is now very prestigious to own $him.
-	<<elseif ($slaves[$i].prestige < 1) && ($slaves[$i].pornFame >= 10) && (_oldFame < 10)>>
-	<<set $slaves[$i].prestige = 1>>
-	@@.green;$He has become well known from slave pornography!@@ Thousands have enjoyed
-	<<if $slaves[$i].fuckdoll > 0>>
-		<<set $slaves[$i].prestigeDesc = "It is well known from slave pornography. Its many fans relish the sight of it being used.">>
-		the sight of it being used,
-	<<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].analCount + $slaves[$i].vaginalCount > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being raped.">>
-		the sight of $him being raped,
-	<<elseif ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sounds she makes when being throatfucked.">>
-		the sounds $he makes when being throatfucked,
-	<<elseif ($slaves[$i].sexualQuirk == "painal queen") && ($slaves[$i].voice > 0)>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her screams of anal pain.">>
-		$his screams of anal pain,
-	<<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being gagfucked.">>
-		how $he struggles when taking a fuck,
-	<<elseif ($slaves[$i].sexualQuirk == "tease")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her lewd striptease.">>
-		her lewd striptease,
-	<<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her authentic pleasure.">>
-		her authentic pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her most perverted tendencies.">>
-		her most perverted tendencies,
-	<<elseif ($slaves[$i].sexualQuirk == "caring")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her devotion to her partners' pleasure.">>
-		her devotion to her partners' pleasure,
-	<<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed her willingness to do things not repeated in polite company.">>
-		her willingness to do things not repeated in polite company,
-	<<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her holes stretched to their limits.">>
-		the sight of her holes stretched to their limits,
-	<<elseif $slaves[$i].bellyPreg >= 1500>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her rounded belly and pregnant pussy.">>
-		the sight of her rounded belly and pregnant pussy,
-	<<else>>
-		<<set $slaves[$i].prestigeDesc = "She is well known from slave pornography. Thousands have enjoyed the sight of her being fucked.">>
-		the sight of $him being fucked,
-	<</if>>
-	so it is now prestigious to own $him.
-	<</if>>
-	<<if ($slaves[$i].prestige >= 3)>>
-		Further paid publicity cannot increase $his fame, so subsidy of porn featuring $him has stopped.
-		<<set $slaves[$i].pornFameSpending = 0>>
-	<</if>>
-	<<set $slaves[$i].pornFame = Math.trunc($slaves[$i].pornFame)>>
-<</if>>
-=======
 /* saPorn */
 <<if $slaves[$i].pornPrestige == 3>>
-	$pronounCap is the whore people envision of when they think of $slaves[$i].pornFameType porn. $possessiveCap ever presence on the internet @@.green;boosts $possessive owner's reputation.@@
+	$He is the whore people envision of when they think of $slaves[$i].pornFameType porn. $His ever presence on the internet @@.green;boosts $possessive owner's reputation.@@
 	<<set $repGain += (100*$slaves[$i].pornPrestige)>>
 	<<set _donations = Math.floor($slaves[$i].pornFame/(random(13,20)))+(random(-5000,5000))>>
 	<<if _donations > 0>>
-		A number of gifts and donations totalling @@.yellowgreen;<<print cashFormat(_donations)>>@@ were also sent to $object, among other things.
+		A number of gifts and donations totalling @@.yellowgreen;<<print cashFormat(_donations)>>@@ were also sent to $him, among other things.
 		<<set $cash += _donations>>
 	<</if>>
 <<elseif $slaves[$i].pornFeed > 0>>
 	<<include "SA Porn">>
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
 <</if>>
 
 <<if $seeAge != 0>>
@@ -8108,5 +7811,5 @@
 	<</if>>
 <</if>>
 
-<<if $slaves[$i].aphrodisiacs === -1 && $slaves[$i].energy - _oldEnergy > _maxEnergyGain>>Anaphrodisiacs @@.red;limit her sex drive.@@<<set $slaves[$i].energy = _oldEnergy + _maxEnergyGain>><</if>>
+<<if $slaves[$i].aphrodisiacs === -1 && $slaves[$i].energy - _oldEnergy > _maxEnergyGain>>Anaphrodisiacs @@.red;limit $his sex drive.@@<<set $slaves[$i].energy = _oldEnergy + _maxEnergyGain>><</if>>
 
diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw
index 28ab9247f42..c8ec90ae3c7 100644
--- a/src/uncategorized/saPleaseYou.tw
+++ b/src/uncategorized/saPleaseYou.tw
@@ -1,5 +1,7 @@
 :: SA please you [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 serves you this week.
 
 <<set _trainingEfficiency = 5+Math.trunc($slaves[$i].devotion/30)+$slaves[$i].intelligence>>
@@ -793,13 +795,8 @@ serves you this week.
 				obediently serving you in the classical way, driving into your womanhood.
 			<<elseif ($slaves[$i].devotion <= 50)>>
 				week obediently serving you by driving into your backdoor.
-<<<<<<< HEAD
-			<<elseif $PC.vagina == 1 || $slaves[$i].career == "a breeding bull" || ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetish == "pregnancy")>>
-				eagerly driving $his cock into your pussy, thoroughly enjoying fucking pussy bareback and cumming deep inside.
-=======
 			<<elseif $PC.vagina == 1 && ($slaves[$i].career == "a breeding bull" || ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetish == "pregnancy"))>>
-				eagerly driving $possessive cock into your pussy, thoroughly enjoying fucking pussy bareback and cumming deep inside.
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+				eagerly driving $his cock into your pussy, thoroughly enjoying fucking pussy bareback and cumming deep inside.
 			<<elseif $PC.vagina == 1>>
 				serving you in the classical way, warming your bed and lovingly driving $his shaft into your womanhood.
 			<<else>>
diff --git a/src/uncategorized/saRecruitGirls.tw b/src/uncategorized/saRecruitGirls.tw
index c245bb07742..73412ffbefb 100644
--- a/src/uncategorized/saRecruitGirls.tw
+++ b/src/uncategorized/saRecruitGirls.tw
@@ -1,5 +1,7 @@
 :: SA recruit girls [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<set $bellyAccessory = $slaves[$i].bellyAccessory>>
 
 /* Note on target sum: HG and Recruiter are the initial 2 counted (no facility req'd), while HGSuite counts the HG's girl, other facilities count associated leader */
@@ -691,13 +693,8 @@
 		<<else>>
 			$He lacks the intelligence to compose thoughtful remarks; a lot the time $he merely +1s what others have said.
 		<</if>>
-<<<<<<< HEAD
-		<<if $studio && $slaves[$i].pornFame >= 10>>
-			$His fan base from arcology porn significantly drives up $his followers count.
-=======
 		<<if $studio && $slaves[$i].pornFame >= 1000 && $slaves[$i].pornPrestige > 0>>
-			Her fan base from arcology porn significantly drives up her followers count.
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+			$His fan base from arcology porn significantly drives up $his followers count.
 		<</if>>
 	<</if>> /*temp close EWM so next two lines always show */
 	<<if _FSmatch > 0>>
diff --git a/src/uncategorized/saRelationships.tw b/src/uncategorized/saRelationships.tw
index 28704893b91..0e2a6e391cb 100644
--- a/src/uncategorized/saRelationships.tw
+++ b/src/uncategorized/saRelationships.tw
@@ -1,5 +1,7 @@
 :: SA relationships [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<if $slaves[$i].fuckdoll == 0>>
 	<<set _SL = $slaves.length, _SlaveI = $slaves[$i], _SlaveJ = null, _drop = 0>>
 	<<if _SlaveI.relationship == 0 && _SlaveI.fetish != "mindbroken">>
diff --git a/src/uncategorized/saRivalries.tw b/src/uncategorized/saRivalries.tw
index 5aaecc3d0b6..3f47a4b7c8b 100644
--- a/src/uncategorized/saRivalries.tw
+++ b/src/uncategorized/saRivalries.tw
@@ -1,5 +1,7 @@
 :: SA rivalries [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<set _SL = $slaves.length>>
 
 <<if $slaves[$i].rivalry == 0>>
diff --git a/src/uncategorized/saRules.tw b/src/uncategorized/saRules.tw
index aae869cb0b8..d7b285125d3 100644
--- a/src/uncategorized/saRules.tw
+++ b/src/uncategorized/saRules.tw
@@ -1,5 +1,7 @@
 :: SA rules [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<if $slaves[$i].fuckdoll == 0>>
 	$He
 	<<if $slaves[$i].fetish == "mindbroken">>
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index a1b205bc846..8fda43e908b 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -1,5 +1,7 @@
 :: SA serve the public [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <!-- Statistics gathering -->
 <<set _incomeStats = getSlaveStatisticData($slaves[$i], $slaves[$i].assignment === Job.CLUB ? $facility.club : undefined)>>
 
@@ -430,23 +432,13 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 		<</if>>
 		charms are only for the @@.green;most prominent citizens.@@ When $he's not
 		<<if canDoVaginal($slaves[$i]) && (random(1,4) == 1)>>
-<<<<<<< HEAD
-			pleasing high society with $his <<if $slaves[$i].prestige > 0>>prestigious<<else>>popular<</if>> pussy,
-		<<elseif ($beauty > 70) && (random(1,3) == 1)>>
-			getting gangbanged,
-		<<elseif (random(1,2) == 1)>>
-			giving away one of $his <<if $slaves[$i].prestige > 0>>famous<<else>>top-tier<</if>> blowjobs,
-		<<else>>
-			providing free access to $his <<if $slaves[$i].prestige > 0>>legendary<<else>>notorious<</if>> anus,
-=======
-			pleasing high society with her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>prestigious<<else>>popular<</if>> pussy,
+			pleasing high society with $his <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>prestigious<<else>>popular<</if>> pussy,
 		<<elseif ($beauty > 70) && (random(1,3) == 1)>>
 			getting gangbanged,
 		<<elseif (random(1,2) == 1)>>
-			giving away one of her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>famous<<else>>top-tier<</if>> blowjobs,
+			giving away one of $his <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>famous<<else>>top-tier<</if>> blowjobs,
 		<<else>>
-			providing free access to her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>legendary<<else>>notorious<</if>> anus,
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
+			providing free access to $his <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>legendary<<else>>notorious<</if>> anus,
 		<</if>>
 		$he offers personal training and sexual therapy.
 	<<else>>
diff --git a/src/uncategorized/saServeYourOtherSlaves.tw b/src/uncategorized/saServeYourOtherSlaves.tw
index d17fdc320b9..c245941b415 100644
--- a/src/uncategorized/saServeYourOtherSlaves.tw
+++ b/src/uncategorized/saServeYourOtherSlaves.tw
@@ -1,5 +1,7 @@
 :: SA serve your other slaves [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<set _oralUse = 0, _analUse = 0, _vaginalUse = 0, _mammaryUse = 0, _penetrativeUse = 0>>
 
 <<set _dom = $slaveIndices[$slaves[$i].subTarget]>>
@@ -8,7 +10,7 @@
 
 <<if $slaves[$i].devotion <= 20>>
 	<<if $slaves[$i].trust >= -20>>
-		is forced to serve your other slaves' sexual needs by constant punishment. Being castigated and raped @@.gold;frightens her into obedience.@@
+		is forced to serve your other slaves' sexual needs by constant punishment. Being castigated and raped @@.gold;frightens $him into obedience.@@
 		<<set $slaves[$i].trust -= 5>>
 		<<if $slaves[$i].sexualQuirk == "strugglefuck queen">>
 			She secretly likes being raped @@.hotpink;and wants more.@@
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index b2617f65b2e..ce2e73ec409 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -1,5 +1,7 @@
 :: SA whore [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <!-- Statistics gathering -->
 <<set _incomeStats = getSlaveStatisticData($slaves[$i], $slaves[$i].assignment === Job.BROTHEL ? $facility.brothel : undefined)>>
 
@@ -50,13 +52,13 @@
 <<else>>
 	is forced to sell
 <</if>>
-her body.
+$his body.
 
 <<set $beautyMultiplier = 1>>
 <<if $brothel > 0>>
 	<<if (($universalRulesFacilityWork == 1) && ($slaves[$i].assignment == "whore") && ($brothelSpots > 0)) || ($slaves[$i].assignment == "work in the brothel")>>
 	<<if ($slaves[$i].assignment == "whore")>>
-		Since there's extra space in $brothelName, she sells herself there.
+		Since there's extra space in $brothelName, $he sells $himself there.
 		<<set $brothelSpots -= 1>>
 	<</if>>
 	<<if $brothelAdsSpending != 0>>
@@ -64,7 +66,7 @@ her body.
 		<<if ($slaves[$i].butt > 4)>>
 		<<if ($slaves[$i].boobs > 800)>>
 			<<set $beautyMultiplier += 0.05>>
-			Her stacked body fits $brothelName's ad campaign, getting her more business.
+			$His stacked body fits $brothelName's ad campaign, getting $him more business.
 		<</if>>
 		<</if>>
 		<<elseif $brothelAdsStacked == -1>>
@@ -73,7 +75,7 @@ her body.
 		<<if ($slaves[$i].weight <= 10)>>
 		<<if ($slaves[$i].muscles <= 30)>>
 			<<set $beautyMultiplier += 0.05>>
-			Her slim body fits $brothelName's ad campaign, getting her more business.
+			$His slim body fits $brothelName's ad campaign, getting $him more business.
 		<</if>>
 		<</if>>
 		<</if>>
@@ -82,12 +84,12 @@ her body.
 		<<if $brothelAdsPreg == 1>>
 		<<if ($slaves[$i].bellyPreg >= 5000) || ($slaves[$i].bellyImplant >= 5000)>>
 			<<set $beautyMultiplier += 0.05>>
-			Her gravid body fits $brothelName's ad campaign, getting her more attention.
+			$His gravid body fits $brothelName's ad campaign, getting $him more attention.
 		<</if>>
 		<<elseif $brothelAdsPreg == -1>>
 		<<if ($slaves[$i].belly < 100) && ($slaves[$i].weight < 30) && (!setup.fakeBellies.includes($bellyAccessory)) && ($slaves[$i].bellyImplant <= 0)>>
 			<<set $beautyMultiplier += 0.05>>
-			Her flat belly fits $brothelName's ad campaign, getting her more attention.
+			$His flat belly fits $brothelName's ad campaign, getting $him more attention.
 		<</if>>
 		<</if>>
 		<<if $brothelAdsModded == 1>>
@@ -98,7 +100,7 @@ her body.
 		<<elseif $brothelAdsModded == -1>>
 		<<if $slaves[$i].corsetPiercing == 0 && $piercingScore < 3 && $tatScore < 2>>
 			<<set $beautyMultiplier += 0.05>>
-			Very clean bodies like hers are a major draw.
+			Very clean bodies like $hers are a major draw.
 		<</if>>
 		<</if>>
 		<<if $brothelAdsImplanted == 1>>
@@ -108,7 +110,7 @@ her body.
 		<<if ($slaves[$i].waist < -10)>>
 		<<if ($slaves[$i].lipsImplant > 0)>>
 			<<set $beautyMultiplier += 0.05>>
-			Many citizens come to the brothel looking to rent a plastic slut like her.
+			Many citizens come to the brothel looking to rent a plastic slut like $him.
 		<</if>>
 		<</if>>
 		<</if>>
@@ -122,7 +124,7 @@ her body.
 		<<if ($slaves[$i].bellyImplant == -1)>>
 		<<if ($slaves[$i].faceImplant < 30)>>
 			<<set $beautyMultiplier += 0.05>>
-			Many citizens come to the brothel looking to play with a natural girl like her.
+			Many citizens come to the brothel looking to play with a natural girl like $him.
 		<</if>>
 		<</if>>
 		<</if>>
@@ -133,28 +135,28 @@ her body.
 		<<if $brothelAdsOld == 1>>
 		<<if ($slaves[$i].physicalAge >= 30)>>
 			<<set $beautyMultiplier += 0.05>>
-			She's perfect for $brothelName, whose brand is mature slaves.
+			$He's perfect for $brothelName, whose brand is mature slaves.
 		<</if>>
 		<<elseif $brothelAdsOld == -1>>
 		<<if ($slaves[$i].physicalAge < 30 && $slaves[$i].physicalAge >= 18)>>
 			<<set $beautyMultiplier += 0.05>>
-			She's perfect for $brothelName, whose brand is young slaves.
+			$He's perfect for $brothelName, whose brand is young slaves.
 		<</if>>
 		<<elseif $brothelAdsOld == -2>>
 		<<if ($slaves[$i].physicalAge <= 18 && $slaves[$i].physicalAge >= 13)>>
 			<<set $beautyMultiplier += 0.05>>
-			She's perfect for $brothelName, whose brand is teenage slaves.
+			$He's perfect for $brothelName, whose brand is teenage slaves.
 		<</if>>
 		<<elseif $brothelAdsOld == -3>>
 		<<if ($slaves[$i].physicalAge < 13)>>
 			<<set $beautyMultiplier += 0.05>>
-			She's perfect for $brothelName, whose brand is loli slaves.
+			$He's perfect for $brothelName, whose brand is loli slaves.
 		<</if>>
 		<</if>>
 		<<if $brothelAdsXX == 1>>
 		<<if ($slaves[$i].dick == 0)>>
 			<<set $beautyMultiplier += 0.05>>
-			Almost everyone who comes to $brothelName is looking to fuck a girl like her.
+			Almost everyone who comes to $brothelName is looking to fuck a girl like $him.
 		<</if>>
 		<<elseif $brothelAdsXX == -1>>
 		<<if ($slaves[$i].dick > 0)>>
@@ -171,7 +173,7 @@ her body.
 		<<else>>
 			Living and working
 		<</if>>
-		out of the brothel, she comes under <<= SlaveFullName($Madam)>>'s
+		out of the brothel, $he comes under <<= SlaveFullName($Madam)>>'s
 		<<if $madamCashBonus < 0.1>>
 			completely inept
 		<<elseif $madamCashBonus < 0.2>>
@@ -184,17 +186,17 @@ her body.
 		leadership.
 		<<if ($Madam.dick > 2) && canAchieveErection($Madam)>>
 			<<if ($slaves[$i].devotion <= 20)>>
-			The Madam rapes her when she fails to meet standards.
+			The Madam rapes $him when $he fails to meet standards.
 			<<else>>
-			The Madam uses her dick to reward her when she does well and needs some loving.
+			The Madam uses her dick to reward $him when $he does well and needs some loving.
 			<</if>>
 		<</if>>
 		<<if $MadamIgnoresFlaws != 1>>
 			<<if !["none", "neglectful", "cum addict", "anal addict", "attention whore", "breast growth", "abusive", "malicious", "self hating", "breeder"].includes($slaves[$i].sexualFlaw) && (random(1,100) > 90)>>
-				<<= SlaveFullName($Madam)>> manages to @@.green;break@@ $slaves[$i].slaveName of her sexual flaws.
+				<<= SlaveFullName($Madam)>> manages to @@.green;break@@ $slaves[$i].slaveName of $his sexual flaws.
 				<<set $slaves[$i].sexualFlaw = "none">>
 			<<elseif ($slaves[$i].behavioralFlaw != "none") && (random(1,100) > 90)>>
-				<<= SlaveFullName($Madam)>> manages to @@.green;break@@ $slaves[$i].slaveName of her flaws.
+				<<= SlaveFullName($Madam)>> manages to @@.green;break@@ $slaves[$i].slaveName of $his flaws.
 				<<set $slaves[$i].behavioralFlaw = "none">>
 			<</if>>
 		<</if>>
@@ -204,69 +206,69 @@ her body.
 <</if>>
 <<set $beauty = Math.trunc($beauty*$beautyMultiplier)>>
 
-Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a day)<<if $beauty > 160>>, so many that <<if canDoVaginal($slaves[$i]) && canDoAnal($slaves[$i])>>each of her holes were<<elseif canDoVaginal($slaves[$i]) || canDoAnal($slaves[$i])>>each of her available holes were<<else>>her mouth and anywhere else a cock could fit were<</if>> often filled by more than one cock<<elseif $beauty > 140>>, so many that she spent much of her time getting gangbanged<<elseif $beauty > 120>>, so many that customers often <<if canDoAnal($slaves[$i]) || canDoVaginal($slaves[$i])>>spitroasted<<else>>double-teamed<</if>> the slut<<elseif $beauty > 100>>, so many that she frequently had sex with multiple customers at once<<elseif $beauty > 70>>, so many that she occasionally had sex with multiple customers at once<</if>>. They paid <<print cashFormat($FResult)>> on average.
+$His appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a day)<<if $beauty > 160>>, so many that <<if canDoVaginal($slaves[$i]) && canDoAnal($slaves[$i])>>each of $his holes were<<elseif canDoVaginal($slaves[$i]) || canDoAnal($slaves[$i])>>each of $his available holes were<<else>>$his mouth and anywhere else a cock could fit were<</if>> often filled by more than one cock<<elseif $beauty > 140>>, so many that $he spent much of $his time getting gangbanged<<elseif $beauty > 120>>, so many that customers often <<if canDoAnal($slaves[$i]) || canDoVaginal($slaves[$i])>>spitroasted<<else>>double-teamed<</if>> the slut<<elseif $beauty > 100>>, so many that $he frequently had sex with multiple customers at once<<elseif $beauty > 70>>, so many that $he occasionally had sex with multiple customers at once<</if>>. They paid <<print cashFormat($FResult)>> on average.
 <<set _incomeStats.customers = $beauty>>
 
 <<if $seeAge == 1>>
 <<if $slaves[$i].physicalAge == $minimumSlaveAge && $slaves[$i].physicalAge == $fertilityAge && canGetPregnant($slaves[$i]) && ($arcologies[0].FSRepopulationFocus != "unset" || $arcologies[0].FSGenderFundamentalist != "unset") && $arcologies[0].FSRestart == "unset">>
 	<<if $slaves[$i].birthWeek == 0>>
-		She just turned $minimumSlaveAge this week, giving her an immense boost to both popularity and price. She is also expected to become fertile soon, giving her an additional boost as customers clamor to claim her fresh womb.
+		$He just turned $minimumSlaveAge this week, giving $him an immense boost to both popularity and price. $He is also expected to become fertile soon, giving $him an additional boost as customers clamor to claim $his fresh womb.
 	<<elseif $slaves[$i].birthWeek < 4>>
-		This is still the first month in which it's legal to pay to fuck her, giving her a boost to both popularity and price. She was also anticipated to become fertile this month, and her womb is still unoccupied, giving her an additional boost.
+		This is still the first month in which it's legal to pay to fuck $him, giving $him a boost to both popularity and price. $He was also anticipated to become fertile this month, and $his womb is still unoccupied, giving $him an additional boost.
 	<</if>>
 <<elseif $slaves[$i].physicalAge == $minimumSlaveAge>>
 	<<if $slaves[$i].birthWeek == 0>>
-		She just turned $minimumSlaveAge this week, giving her an immense boost to both popularity and price.
+		$He just turned $minimumSlaveAge this week, giving $him an immense boost to both popularity and price.
 	<<elseif $slaves[$i].birthWeek < 4>>
-		This is still the first month in which it's legal to pay to fuck her, giving her a boost to both popularity and price.
+		This is still the first month in which it's legal to pay to fuck $him, giving $him a boost to both popularity and price.
 	<</if>>
 <<elseif $slaves[$i].physicalAge == $fertilityAge && canGetPregnant($slaves[$i]) && ($arcologies[0].FSRepopulationFocus != "unset" || $arcologies[0].FSGenderFundamentalist != "unset")>>
 	<<if $slaves[$i].birthWeek == 0>>
-		She is expected to become fertile soon, giving her an immense boost to both popularity and price as customers clamor to claim her fresh womb.
+		$He is expected to become fertile soon, giving $him an immense boost to both popularity and price as customers clamor to claim $his fresh womb.
 	<<elseif $slaves[$i].birthWeek < 4 && $slaves[$i].pregKnown == 0>>
-		This is still the first month in which she was anticipated to become fertile, and her womb is still unoccupied, giving her a boost to both popularity and price.
+		This is still the first month in which $he was anticipated to become fertile, and $his womb is still unoccupied, giving $him a boost to both popularity and price.
 	<</if>>
 <</if>>
 <</if>>
 
 <<if ($slaves[$i].behavioralQuirk == "sinful")>>
-	$slaves[$i].slaveName @@.hotpink;secretly enjoys@@ how utterly sinful and depraved it is for her to sell her body.
+	$slaves[$i].slaveName @@.hotpink;secretly enjoys@@ how utterly sinful and depraved it is for $him to sell $his body.
 	<<set $slaves[$i].devotion += 1>>
 <<elseif ($slaves[$i].behavioralQuirk == "cutting")>>
-	$slaves[$i].slaveName @@.hotpink;openly enjoys@@ the direct, frank language of prostitution, and delights customers with cutting remarks even as they fuck her.
+	$slaves[$i].slaveName @@.hotpink;openly enjoys@@ the direct, frank language of prostitution, and delights customers with cutting remarks even as they fuck $him.
 	<<set $slaves[$i].devotion += 1>>
 <</if>>
 <<if ($slaves[$i].sexualQuirk == "caring")>>
-	$slaves[$i].slaveName sees her role as helping people with their sexual needs, and she @@.mediumaquamarine;trusts that her place@@ in society is an important one.
+	$slaves[$i].slaveName sees $his role as helping people with their sexual needs, and $he @@.mediumaquamarine;trusts that $his place@@ in society is an important one.
 	<<set $slaves[$i].trust += 1>>
 <</if>>
 
 <<set $injury = 0>>
 <<if $slaves[$i].assignment == "work in the brothel">>
 <<elseif ($slaves[$i].curatives > 0) || $slaves[$i].inflationType == "curative">>
-	The drugs <<if $slaves[$i].inflationType == "curative">>she holds inside her belly<<else>>she's on<</if>> protect her from the wear of whoring.
+	The drugs <<if $slaves[$i].inflationType == "curative">>$he holds inside $his belly<<else>>$he's on<</if>> protect $him from the wear of whoring.
 <<elseif ($slaves[$i].health < -50)>>
-	The stress of whoring while ill is @@.red;very hard on her.@@
+	The stress of whoring while ill is @@.red;very hard on $him.@@
 	<<set $slaves[$i].health -= 10>>
 	<<set $injury = 1>>
 <<elseif ($slaves[$i].health < -20) && (random(1,100) > 50)>>
-	The stress of whoring while ill is @@.red;hard on her.@@
+	The stress of whoring while ill is @@.red;hard on $him.@@
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 <<elseif ($slaves[$i].vagina < 0)>>
 	<<set $desc = SlaveTitle($slaves[$i])>>
 	<<if (($slaves[$i].analSkill + $slaves[$i].oralSkill) >= 200)>>
-	She's such an expert whore that she copes with the stress of being a $desc prostitute.
+	$He's such an expert whore that $he copes with the stress of being a $desc prostitute.
 	<<elseif random(1,100) > 40+(10*($slaves[$i].analSkill + $slaves[$i].oralSkill))>>
-	The stress of being a $desc prostitute is @@.red;hard on her.@@
+	The stress of being a $desc prostitute is @@.red;hard on $him.@@
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 	<</if>>
 <<elseif ($slaves[$i].vaginalAccessory == "chastity belt") && canDoAnal($slaves[$i])>>
 	<<if (($slaves[$i].analSkill + $slaves[$i].oralSkill) >= 200)>>
-	She's such an expert whore that she copes with the stress of being limited to buttsex and oral.
+	$He's such an expert whore that $he copes with the stress of being limited to buttsex and oral.
 	<<elseif random(1,100) > 40+(10*($slaves[$i].analSkill + $slaves[$i].oralSkill))>>
-	The stress of being limited to buttsex and oral is @@.red;hard on her.@@
+	The stress of being limited to buttsex and oral is @@.red;hard on $him.@@
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 	<</if>>
@@ -284,40 +286,40 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 	<</if>>
 	<<if ($seed > 80)>>
 	<<set $slaves[$i].minorInjury = "sore ass">>
-	Rough anal with a careless customer left her with a @@.red;$slaves[$i].minorInjury.@@
+	Rough anal with a careless customer left $him with a @@.red;$slaves[$i].minorInjury.@@
 	<<include "minor injury response">>
 	<<elseif ($seed > 60)>>
 	<<set $slaves[$i].minorInjury = "black eye">>
-	A violent customer left her with a @@.red;$slaves[$i].minorInjury.@@
+	A violent customer left $him with a @@.red;$slaves[$i].minorInjury.@@
 	<<include "minor injury response">>
 	<<elseif ($seed > 40)>>
 	<<set $slaves[$i].minorInjury = "split lip">>
-	An abusive customer left her with a @@.red;$slaves[$i].minorInjury.@@
+	An abusive customer left $him with a @@.red;$slaves[$i].minorInjury.@@
 	<<include "minor injury response">>
 	<<elseif ($seed > 20)>>
 	<<set $slaves[$i].minorInjury = "bad bruise">>
-	A rough customer left her with a @@.red;$slaves[$i].minorInjury.@@
+	A rough customer left $him with a @@.red;$slaves[$i].minorInjury.@@
 	<<include "minor injury response">>
 	<<else>>
 	<<set $slaves[$i].minorInjury = "sore muscle">>
-	The hard labor of constant sex left her with a @@.red;$slaves[$i].minorInjury.@@
+	The hard labor of constant sex left $him with a @@.red;$slaves[$i].minorInjury.@@
 	<</if>>
 <</if>>
 
 <<if canDoVaginal($slaves[$i])>>
 	<<if ($slaves[$i].vagina == 0)>>
 		<<if ($slaves[$i].aphrodisiacs > 1) || ($slaves[$i].inflationType == "aphrodisiac")>>
-		Her virginity goes to the highest bidder, earning <<print cashFormat(($beauty*10))>>. She's so full of aphrodisiacs that she @@.hotpink;enjoys the experience.@@ @@.lime;Her pussy is now broken in.@@
+		$His virginity goes to the highest bidder, earning <<print cashFormat(($beauty*10))>>. $He's so full of aphrodisiacs that $he @@.hotpink;enjoys the experience.@@ @@.lime;$His pussy is now broken in.@@
 		<<set $slaves[$i].devotion += 4>>
 		<<set $slaves[$i].vagina = 1>>
 		<<set $FResult += 10>>
 		<<elseif ($slaves[$i].devotion > 20)>>
-		Her virginity goes to the highest bidder, earning <<print cashFormat(($beauty*10))>>. Losing her virginity in this way @@.hotpink;confirms her submission to you.@@ @@.lime;Her pussy is now broken in.@@
+		$His virginity goes to the highest bidder, earning <<print cashFormat(($beauty*10))>>. Losing $his virginity in this way @@.hotpink;confirms $his submission to you.@@ @@.lime;$His pussy is now broken in.@@
 		<<set $slaves[$i].devotion += 4>>
 		<<set $slaves[$i].vagina = 1>>
 		<<set $FResult += 10>>
 		<<else>>
-		Her virginity goes to the highest bidder, earning <<print cashFormat(($beauty*10))>>. She tries to resist, and losing her virginity to a rape makes her @@.mediumorchid;hate@@ and @@.gold;fear@@ you a great deal. @@.lime;Her pussy is now broken in.@@
+		$His virginity goes to the highest bidder, earning <<print cashFormat(($beauty*10))>>. $He tries to resist, and losing $his virginity to a rape makes $him @@.mediumorchid;hate@@ and @@.gold;fear@@ you a great deal. @@.lime;$His pussy is now broken in.@@
 		<<set $slaves[$i].devotion -= 10>>
 		<<set $slaves[$i].trust -= 10>>
 		<<set $slaves[$i].vagina = 1>>
@@ -325,7 +327,7 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 		<</if>>
 	<<elseif ($slaves[$i].vagina < 3)>>
 		<<if (random(1,100) > ((170-$beauty)+($slaves[$i].vagina*10)+($slaves[$i].vaginalSkill/3)))>>
-		@@.lime;Her pussy gets loosened by the intense use.@@
+		@@.lime;$His pussy gets loosened by the intense use.@@
 		<<set $slaves[$i].vagina += 1>>
 		<</if>>
 	<</if>>
@@ -334,17 +336,17 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <<if canDoAnal($slaves[$i])>>
 <<if ($slaves[$i].anus == 0)>>
 	<<if ($slaves[$i].aphrodisiacs > 1) || ($slaves[$i].inflationType == "aphrodisiac")>>
-	Her tight little anus goes to the highest bidder, earning <<print cashFormat(($beauty*5))>>. She's so full of aphrodisiacs that she @@.hotpink;enjoys the experience.@@ Her fresh asshole is fucked all week, and by the end of it @@.lime;she won't sit down.@@
+	$His tight little anus goes to the highest bidder, earning <<print cashFormat(($beauty*5))>>. $He's so full of aphrodisiacs that $he @@.hotpink;enjoys the experience.@@ $His fresh asshole is fucked all week, and by the end of it @@.lime;$he won't sit down.@@
 	<<set $slaves[$i].devotion += 4>>
 	<<set $slaves[$i].anus = 2>>
 	<<set $FResult += 5>>
 	<<elseif ($slaves[$i].devotion > 20)>>
-	Her tight little anus goes to the highest bidder, earning <<print cashFormat(($beauty*5))>>. The pain and humiliation @@.hotpink;confirm her submission to you.@@ Her fresh asshole is fucked all week, and by the end of it @@.lime;she won't sit down.@@
+	$His tight little anus goes to the highest bidder, earning <<print cashFormat(($beauty*5))>>. The pain and humiliation @@.hotpink;confirm $his submission to you.@@ $His fresh asshole is fucked all week, and by the end of it @@.lime;$he won't sit down.@@
 	<<set $slaves[$i].devotion += 4>>
 	<<set $slaves[$i].anus = 2>>
 	<<set $FResult += 5>>
 	<<else>>
-	Her tight little anus goes to the highest bidder, earning <<print cashFormat(($beauty*5))>>. The pain and humiliation increases her @@.mediumorchid;hatred@@ and @@.gold;fear@@ for you. Her fresh asshole is fucked all week, and by the end of it @@.lime;she won't sit down.@@
+	$His tight little anus goes to the highest bidder, earning <<print cashFormat(($beauty*5))>>. The pain and humiliation increases $his @@.mediumorchid;hatred@@ and @@.gold;fear@@ for you. $His fresh asshole is fucked all week, and by the end of it @@.lime;$he won't sit down.@@
 	<<set $slaves[$i].devotion -= 5>>
 	<<set $slaves[$i].trust -= 5>>
 	<<set $slaves[$i].anus = 2>>
@@ -353,17 +355,17 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <<elseif ($slaves[$i].anus < 3)>>
 	<<if ($slaves[$i].vagina < 0)>>
 	<<if ((random(1,100) > ((150-$beauty)+($slaves[$i].anus*10)+($slaves[$i].analSkill/6))))>>
-		@@.lime;Her asshole sees constant use in place of a pussy and loosens.@@
+		@@.lime;$His asshole sees constant use in place of a pussy and loosens.@@
 		<<set $slaves[$i].anus += 1>>
 	<</if>>
 	<<elseif ($slaves[$i].vaginalAccessory == "chastity belt")>>
 	<<if ((random(1,100) > ((150-$beauty)+($slaves[$i].anus*10)+($slaves[$i].analSkill/6))))>>
-		@@.lime;Her asshole sees constant use in place of her protected pussy and loosens.@@
+		@@.lime;$His asshole sees constant use in place of $his protected pussy and loosens.@@
 		<<set $slaves[$i].anus += 1>>
 	<</if>>
 	<<else>>
 	<<if ((random(1,100) > ((160-$beauty)+($slaves[$i].anus*10)+($slaves[$i].analSkill/6))))>>
-		@@.lime;Her asshole loosens with constant use.@@
+		@@.lime;$His asshole loosens with constant use.@@
 		<<set $slaves[$i].anus += 1>>
 	<</if>>
 	<</if>>
@@ -374,27 +376,27 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 	<<set $slaves[$i].skillS += random(1,($slaves[$i].intelligence+4)*2)>>
 <</if>>
 <<if setup.whoreCareers.includes($slaves[$i].career)>>
-	She has sex work experience from her life before she was a slave, making her more effective.
+	$He has sex work experience from $his life before $he was a slave, making $him more effective.
 <<elseif $slaves[$i].skillS >= $masteredXP>>
-	She has experience as a prostitute from working for you, making her more effective.
+	$He has experience as a prostitute from working for you, making $him more effective.
 <</if>>
 
 <<if ($slaves[$i].devotion > 20)>>
 <<elseif !canWalk($slaves[$i])>>
-	Since she can't walk, she spends all of her time in her own room in the brothel. Customers come in, fuck her, and leave.
+	Since $he can't walk, $he spends all of $his time in $his own room in the brothel. Customers come in, fuck $him, and leave.
 <<if ($slaves[$i].whoreSkill <= 10)>>
 <<elseif ($slaves[$i].whoreSkill <= 30)>>
-	As a skilled prostitute, she gets a little more money out of customers.
+	As a skilled prostitute, $he gets a little more money out of customers.
 <<elseif ($slaves[$i].whoreSkill <= 60)>>
-	As an expert prostitute, she gets more money out of customers.
+	As an expert prostitute, $he gets more money out of customers.
 <<elseif ($slaves[$i].whoreSkill >= 100)>>
-	As a masterful prostitute, she makes more money.
+	As a masterful prostitute, $he makes more money.
 <</if>>
 <</if>>
 <<if ($slaves[$i].amp != 1)>>
 <<if ($slaves[$i].whoreSkill < 100)>>
 	<<set $slaves[$i].whoreSkill += 10+$slaves[$i].intelligence>>
-	She @@.green;gains experience as a public slut,@@ and gets better at
+	$He @@.green;gains experience as a public slut,@@ and gets better at
 	<<if ($slaves[$i].whoreSkill <= 30)>>
 		basic street smarts.
 	<<elseif ($slaves[$i].whoreSkill <= 60)>>
@@ -406,40 +408,40 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <</if>>
 
 <<if $slaves[$i].aphrodisiacs > 1 || ($slaves[$i].inflationType == "aphrodisiac")>>
-	The aphrodisiac cocktail has her so desperately horny that regardless of her personal feelings, she @@.hotpink;gets off with customers all week.@@ In her drug-addled state she doesn't remember enough to learn sexual skills.
+	The aphrodisiac cocktail has $him so desperately horny that regardless of $his personal feelings, $he @@.hotpink;gets off with customers all week.@@ In $his drug-addled state $he doesn't remember enough to learn sexual skills.
 	<<set $slaves[$i].devotion += 4>>
 <<elseif ($slaves[$i].devotion <= 20) && ($slaves[$i].energy <= 95)>>
 	<<if $slaves[$i].trust >= -20>>
-		She tries to refuse being sold as a whore, so she is restrained for sale. She loses a bit of herself to a week of rape, but remembers enough to know @@.mediumorchid;you're responsible,@@ and @@.gold;can force her if necessary.@@
+		$He tries to refuse being sold as a whore, so $he is restrained for sale. $He loses a bit of $himself to a week of rape, but remembers enough to know @@.mediumorchid;you're responsible,@@ and @@.gold;can force $him if necessary.@@
 		<<set $slaves[$i].devotion -= 5>>
 		<<set $slaves[$i].trust -= 5>>
 	<<else>>
-		She doesn't show much enthusiasm, but the habit of slave prostitution @@.hotpink;wears away at her will.@@
+		$He doesn't show much enthusiasm, but the habit of slave prostitution @@.hotpink;wears away at $his will.@@
 		<<set $slaves[$i].devotion += 4>>
 	<</if>>
 <<else>>
 	<<if ($slaves[$i].oralSkill + $slaves[$i].analSkill >= 200) && (($slaves[$i].vaginalSkill >= 100) || !canDoVaginal($slaves[$i]))>>
-		She's a @@.aquamarine;sexual master@@
+		$He's a @@.aquamarine;sexual master@@
 		<<if canDoVaginal($slaves[$i])>>
 			whose
 		<<else>>
-			and despite <<if $slaves[$i].vagina < 0>>her lack of a<<else>>the inaccessibility of her<</if>> front hole, her
+			and despite <<if $slaves[$i].vagina < 0>>$his lack of a<<else>>the inaccessibility of $his<</if>> front hole, $his
 		<</if>>
-		body commands @@.yellowgreen;a high price.@@ When she's not
+		body commands @@.yellowgreen;a high price.@@ When $he's not
 		<<if canDoVaginal($slaves[$i]) && (random(1,4) == 1)>>
-			pleasing the rich with her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>prestigious<<else>>popular<</if>> pussy,
+			pleasing the rich with $his <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>prestigious<<else>>popular<</if>> pussy,
 		<<elseif ($beauty > 70) && (random(1,3) == 1)>>
 			getting gangbanged,
 		<<elseif (random(1,2) == 1)>>
-			performing one of her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>famous<<else>>top-tier<</if>> blowjobs,
+			performing one of $his <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>famous<<else>>top-tier<</if>> blowjobs,
 		<<elseif canDoAnal($slaves[$i])>>
-			selling access to her <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>legendary<<else>>notorious<</if>> anus,
+			selling access to $his <<if $slaves[$i].prestige > 1 || $slaves[$i].pornPrestige > 2>>legendary<<else>>notorious<</if>> anus,
 		<<else>>
-			pleasing the masses with her chest,
+			pleasing the masses with $his chest,
 		<</if>>
-		she works social gatherings and high society.
+		$he works social gatherings and high society.
 	<<else>>
-		She shows diligence, and her sexual skills improve, according to what the customers demand<<if !canDoVaginal($slaves[$i])>> and what's possible for her<</if>>.
+		$He shows diligence, and $his sexual skills improve, according to what the customers demand<<if !canDoVaginal($slaves[$i])>> and what's possible for $him<</if>>.
 		<<set $skillIncrease = 5+$slaves[$i].intelligence+$oralUseWeight>>
 		<<OralSkillIncrease $slaves[$i]>>
 		<<if canDoAnal($slaves[$i])>>
@@ -453,7 +455,7 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 	<</if>>
 	<<if ($slaves[$i].amp != 1)>>
 	<<if ($slaves[$i].whoreSkill < 100)>>
-		She gains experience as a prostitute.
+		$He gains experience as a prostitute.
 		<<set $skillIncrease = 10+$slaves[$i].intelligence>>
 		<<WhoreSkillIncrease $slaves[$i]>>
 	<</if>>
@@ -461,25 +463,25 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <</if>>
 
 <<if $slaves[$i].minorInjury != 0>>
-	She attracts fewer people due to her minor injury.
+	$He attracts fewer people due to $his minor injury.
 	<<set $beauty -= 1>>
 <</if>>
 
 <<if $slaves[$i].assignment == "work in the brothel" && $slaves[$i].devotion >= 50>>
-	Being so far from your presence @@.mediumorchid;weakens her intense devotion to you.@@
+	Being so far from your presence @@.mediumorchid;weakens $his intense devotion to you.@@
 <</if>>
 
 <<if $showEWM == 1>>
 
 <<if ($slaves[$i].releaseRules == "restrictive") && ($slaves[$i].standardReward !== "orgasm")>>
-	She's a better whore because prostitution is her main sexual outlet.
+	$He's a better whore because prostitution is $his main sexual outlet.
 <</if>>
 
 <<if $familyTesting == 1>>
 	<<if totalRelatives($slaves[$i]) > 0>>
 		<<set _children = $slaves.filter(function(s) { return ($slaves[$i].ID == s.father || $slaves[$i].ID == s.mother || s.ID == $slaves[$i].father || s.ID == $slaves[$i].mother || areSisters($slaves[$i], s) > 0) && s.assignment == "whore"; })>>
 		<<if _children.length > 2>>
-			Since her relatives,
+			Since $his relatives,
 			<<for _sw = 0; _sw < _children.length; _sw++>>
 				<<if _sw < _children.length-1>>
 					_children[_sw].slaveName,
@@ -487,21 +489,21 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 					and _children[_sw].slaveName,
 				<</if>>
 			<</for>>
-			are selling themselves too, she earns extra ¤ by working with them.
+			are selling themselves too, $he earns extra ¤ by working with them.
 			<<if $arcologies[0].FSEgyptianRevivalist > 20>>
 				Customers are very enthusiastic about being able to participate in incestuous sex like the ancient Egyptians.
 			<<elseif $arcologies[0].FSEgyptianRevivalistIncestPolicy == 1>>
 				Customers are very enthusiastic about being able to participate in incestuous sex.
 			<</if>>
 		<<elseif _children.length > 1>>
-			Since her relatives, _children[0].slaveName and _children[1].slaveName, are selling themselves too, she earns extra ¤ by working with them.
+			Since $his relatives, _children[0].slaveName and _children[1].slaveName, are selling themselves too, $he earns extra ¤ by working with them.
 			<<if $arcologies[0].FSEgyptianRevivalist > 20>>
 				Customers are very enthusiastic about being able to participate in incestuous sex like the ancient Egyptians.
 			<<elseif $arcologies[0].FSEgyptianRevivalistIncestPolicy == 1>>
 				Customers are very enthusiastic about being able to participate in incestuous sex.
 			<</if>>
 		<<elseif _children.length > 0>>
-			Since her relative, _children[0].slaveName, is selling herself too, she earns extra ¤ by working with her.
+			Since $his relative, _children[0].slaveName, is selling herself too, $he earns extra ¤ by working with $him.
 			<<if $arcologies[0].FSEgyptianRevivalist > 20>>
 				Customers are very enthusiastic about being able to participate in incestuous sex like the ancient Egyptians.
 			<<elseif $arcologies[0].FSEgyptianRevivalistIncestPolicy == 1>>
@@ -513,7 +515,7 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 	<<if $slaves[$i].relation != 0>>
 		<<set $j = $slaveIndices[$slaves[$i].relationTarget]>>
 		<<if def $j && $slaves[$j].assignment == $slaves[$i].assignment>>
-			Since her $slaves[$j].relation $slaves[$j].slaveName is selling herself too, she earns extra ¤ by working with her.
+			Since $his $slaves[$j].relation $slaves[$j].slaveName is selling herself too, $he earns extra ¤ by working with $him.
 			<<if $arcologies[0].FSEgyptianRevivalist > 20>>
 				Customers are very enthusiastic about being able to participate in incestuous sex like the ancient Egyptians.
 			<<elseif $arcologies[0].FSEgyptianRevivalistIncestPolicy == 1>>
@@ -525,7 +527,7 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <<if $slaves[$i].relationship > 0>>
 	<<set $j = $slaveIndices[$slaves[$i].relationshipTarget]>>
 	<<if def $j && $slaves[$j].assignment == $slaves[$i].assignment>>
-		Her
+		$His
 		<<if $slaves[$j].relationship <= 1>>
 			friend
 		<<elseif $slaves[$j].relationship <= 2>>
@@ -537,27 +539,27 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 		<<elseif $slaves[$j].relationship > 4>>
 			slave wife
 		<</if>>
-		$slaves[$j].slaveName is also whoring, so she earns a bit more.
+		$slaves[$j].slaveName is also whoring, so $he earns a bit more.
 	<</if>>
 <<elseif $slaves[$i].relationship == -1>>
-	She relies on customers' desire to fuck her for emotional support, making her an excellent, if occasionally disturbing, whore.
+	$He relies on customers' desire to fuck $him for emotional support, making $him an excellent, if occasionally disturbing, whore.
 <</if>>
 <<if $slaves[$i].rivalry != 0>>
 	<<set $j = $slaveIndices[$slaves[$i].rivalryTarget]>>
 	<<if def $j && $slaves[$j].assignment == $slaves[$i].assignment>>
-		She earns a little less ¤ due to bickering with $slaves[$j].slaveName.
+		$He earns a little less ¤ due to bickering with $slaves[$j].slaveName.
 	<</if>>
 <</if>>
 
 <<if canTalk($slaves[$i])>>
 	<<if $slaves[$i].voice > 2>>
 		<<if $slaves[$i].voiceImplant > 0>>
-			Her high-pitched bimbo voice makes it easier for her to entice potential customers.
+			$His high-pitched bimbo voice makes it easier for $him to entice potential customers.
 		<<else>>
-			Her high, girly voice makes it easier for her to entice potential customers.
+			$His high, girly voice makes it easier for $him to entice potential customers.
 		<</if>>
 	<<elseif $slaves[$i].voice == 1>>
-		Most potential customers find her deep voice unattractive, making it harder for her to entice them.
+		Most potential customers find $his deep voice unattractive, making it harder for $him to entice them.
 	<</if>>
 <</if>>
 
@@ -569,140 +571,140 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 	<</if>>
 <<elseif ($arcologies[0].FSBodyPurist > 20) || ($arcologies[0].FSPaternalist > 20)>>
 	<<if $modScore <= 7>>
-		Most customers disapprove of excessive body ornamentation and are pleased that she's unspoiled in that regard.
+		Most customers disapprove of excessive body ornamentation and are pleased that $he's unspoiled in that regard.
 	<<else>>
 		Most customers disapprove of body mods and consider hers unappealing.
 	<</if>>
 <<else>>
 	<<if $modScore > 15 || ($piercingScore > 8 && $tatScore > 5)>>
-		She has so much body art that most customers don't think she needs any more.
+		$He has so much body art that most customers don't think $he needs any more.
 	<<elseif !($slaves[$i].corsetPiercing == 0 && $piercingScore < 3 && $tatScore < 2)>>
-		Her body art helps attract customers.
+		$His body art helps attract customers.
 	<</if>>
 <</if>>
 
 <<if $slaves[$i].aphrodisiacs > 1 || ($slaves[$i].inflationType == "aphrodisiac" && $slaves[$i].inflation > 1)>>
-	On such a heavy aphrodisiac dose, she can't wait for each customer to fuck her.<<if $slaves[$i].inflationType == "aphrodisiac" && canDoAnal($slaves[$i])>> Which is practically nonstop, as anyone that fucks her ass gets a hit of the aphrodisiacs within her belly.<</if>>
+	On such a heavy aphrodisiac dose, $he can't wait for each customer to fuck $him.<<if $slaves[$i].inflationType == "aphrodisiac" && canDoAnal($slaves[$i])>> Which is practically nonstop, as anyone that fucks $his ass gets a hit of the aphrodisiacs within $his belly.<</if>>
 <<elseif $slaves[$i].aphrodisiacs > 0 || ($slaves[$i].inflationType == "aphrodisiac")>>
-	On aphrodisiacs, she climaxes with every customer.<<if $slaves[$i].inflationType == "aphrodisiac" && canDoAnal($slaves[$i])>> Which happens often, as anyone that fucks her ass gets a tiny hit of the aphrodisiacs within her belly.<</if>>
+	On aphrodisiacs, $he climaxes with every customer.<<if $slaves[$i].inflationType == "aphrodisiac" && canDoAnal($slaves[$i])>> Which happens often, as anyone that fucks $his ass gets a tiny hit of the aphrodisiacs within $his belly.<</if>>
 <<elseif $slaves[$i].devotion > 95>>
-	She's so devoted that she does her best and pleases every customer.
+	$He's so devoted that $he does $his best and pleases every customer.
 <<elseif $slaves[$i].devotion > 50>>
-	She's so devoted that she works hard to please customers.
+	$He's so devoted that $he works hard to please customers.
 <<elseif $slaves[$i].trust < -20>>
-	She's afraid of you, so she works hard to please customers.
+	$He's afraid of you, so $he works hard to please customers.
 <<else>>
-	She neither loves nor fears you enough to work hard, and makes a poor whore.
+	$He neither loves nor fears you enough to work hard, and makes a poor whore.
 <</if>>
 
 <<if ($slaves[$i].butt > 4) && ($slaves[$i].boobs > 800)>>
 	<<if $arcologies[0].FSAssetExpansionist != "unset">>
-		She makes a river of ¤ with her huge, fashionable assets.
+		$He makes a river of ¤ with $his huge, fashionable assets.
 		<<if canTalk($slaves[$i])>>
 			<<if $slaves[$i].voice > 2>>
-				Her high voice contributes to her bimbo image, so she does even better.
+				$His high voice contributes to $his bimbo image, so $he does even better.
 			<</if>>
 		<</if>>
 	<<elseif $arcologies[0].FSSlimnessEnthusiast >= 20>>
-		She makes no extra ¤ with her large assets since many citizens consider them disgusting.
+		$He makes no extra ¤ with $his large assets since many citizens consider them disgusting.
 	<<else>>
-		She receives extra ¤ for having huge assets.
+		$He receives extra ¤ for having huge assets.
 	<</if>>
 	<<if $slaves[$i].dick > 0>>
 		<<if $arcologies[0].FSGenderRadicalist != "unset">>
-			Society's appetite for stacked whores with dicks makes her especially profitable.
+			Society's appetite for stacked whores with dicks makes $him especially profitable.
 		<</if>>
 	<</if>>
 <</if>>
 
 <<if ($slaves[$i].visualAge >= 30)>>
 	<<if $arcologies[0].FSMaturityPreferentialist != "unset">>
-		Her mature body is very fashionable.
+		$His mature body is very fashionable.
 	<<elseif $arcologies[0].FSYouthPreferentialist != "unset">>
-		Her old body is badly out of fashion.
+		$His old body is badly out of fashion.
 	<</if>>
 <<else>>
 	<<if $arcologies[0].FSYouthPreferentialist != "unset">>
-		Her youthful body is very fashionable.
+		$His youthful body is very fashionable.
 	<<elseif $arcologies[0].FSMaturityPreferentialist != "unset">>
-		Her young body is out of fashion.
+		$His young body is out of fashion.
 	<</if>>
 <</if>>
 
 <<if $arcologies[0].FSGenderFundamentalistLawBeauty + $arcologies[0].FSGenderRadicalistLawBeauty > 0>>
 	<<if $genderLawPass == 1>>
 		<<if $arcologies[0].FSAssetExpansionist != "unset">>
-			She makes extra ¤ due to her fashionably feminine body.
+			$He makes extra ¤ due to $his fashionably feminine body.
 		<<else>>
-			She receives extra ¤ for having a sleek, girlish figure.
+			$He receives extra ¤ for having a sleek, girlish figure.
 		<</if>>
 		<<if canTalk($slaves[$i]) && $slaves[$i].voice > 2>>
-			Her high voice contributes to her girlish image, so she does even better.
+			$His high voice contributes to $his girlish image, so $he does even better.
 		<</if>>
 	<</if>>
 <<elseif $arcologies[0].FSSlimnessEnthusiastLaw == 1>>
 	<<if slimPass($slaves[$i]) == 1>>
-		She makes extra ¤ due to her fashionably sleek little body.
+		$He makes extra ¤ due to $his fashionably sleek little body.
 		<<if canTalk($slaves[$i]) && $slaves[$i].voice > 2>>
-			Her high voice contributes to her girlish image, so she does even better.
+			$His high voice contributes to $his girlish image, so $he does even better.
 		<</if>>
 	<</if>>
 <<elseif $arcologies[0].FSHedonisticDecadenceLaw2 == 1>>
 	<<if ($slaves[$i].boobs >= 2000) && ($slaves[$i].butt >= 5) && ($slaves[$i].weight > 95)>>
-		She makes extra ¤ due to her fashionably plump body.
+		$He makes extra ¤ due to $his fashionably plump body.
 		<<if canTalk($slaves[$i])&& $slaves[$i].voice > 2>>
-			Her high voice contributes to her feminine image, so she does even better.
+			$His high voice contributes to $his feminine image, so $he does even better.
 		<</if>>
 	<</if>>
 <<else>>
 	<<if ($slaves[$i].boobs < 500) && ($slaves[$i].butt < 3)>>
 		<<if ($slaves[$i].muscles <= 30) && $arcologies[0].FSPhysicalIdealist == "unset" && ($slaves[$i].weight <= 10) && $arcologies[0].FSHedonisticDecadence == "unset">>
 			<<if $arcologies[0].FSSlimnessEnthusiast > 20>>
-				She makes extra ¤ due to her fashionably sleek little body.
+				$He makes extra ¤ due to $his fashionably sleek little body.
 			<<else>>
-				She receives extra ¤ for having a sleek, girlish figure.
+				$He receives extra ¤ for having a sleek, girlish figure.
 			<</if>>
 			<<if canTalk($slaves[$i]) && $slaves[$i].voice > 2>>
-				Her high voice contributes to her girlish image, so she does even better.
+				$His high voice contributes to $his girlish image, so $he does even better.
 			<</if>>
 		<<elseif $arcologies[0].FSPhysicalIdealist != "unset">> /* no muscle malus for muscle loving societies */
 			<<if $arcologies[0].FSPhysicalIdealistStrongFat == 1 && ($slaves[$i].weight <= 30)>> /* reduced weight malus for fat loving societies */
 				<<if $arcologies[0].FSSlimnessEnthusiast > 20>>
-					She makes extra ¤ due to her fashionably sleek little body.
+					$He makes extra ¤ due to $his fashionably sleek little body.
 				<<else>>
-					She receives extra ¤ for having a sleek, girlish figure.
+					$He receives extra ¤ for having a sleek, girlish figure.
 				<</if>>
 				<<if canTalk($slaves[$i]) && $slaves[$i].voice > 2>>
-					Her high voice contributes to her girlish image, so she does even better.
+					$His high voice contributes to $his girlish image, so $he does even better.
 				<</if>>
 			<<elseif ($slaves[$i].weight <= 10)>>
 				<<if $arcologies[0].FSSlimnessEnthusiast > 20>>
-					She makes extra ¤ due to her fashionably sleek little body.
+					$He makes extra ¤ due to $his fashionably sleek little body.
 				<<else>>
-					She receives extra ¤ for having a sleek, girlish figure.
+					$He receives extra ¤ for having a sleek, girlish figure.
 				<</if>>
 				<<if canTalk($slaves[$i]) && $slaves[$i].voice > 2>>
-					Her high voice contributes to her girlish image, so she does even better.
+					$His high voice contributes to $his girlish image, so $he does even better.
 				<</if>>
 			<</if>>
 		<<elseif $arcologies[0].FSHedonisticDecadence != "unset" && ($slaves[$i].weight <= 30)>> /* reduced weight malus for fat loving societies */
 			<<if $arcologies[0].FSHedonisticDecadenceStrongFat == 1>> /* no muscle malus for muscle loving societies */
 				<<if $arcologies[0].FSSlimnessEnthusiast > 20>>
-					She makes extra ¤ due to her fashionably sleek little body.
+					$He makes extra ¤ due to $his fashionably sleek little body.
 				<<else>>
-					She receives extra ¤ for having a sleek, girlish figure.
+					$He receives extra ¤ for having a sleek, girlish figure.
 				<</if>>
 				<<if canTalk($slaves[$i]) && $slaves[$i].voice > 2>>
-					Her high voice contributes to her girlish image, so she does even better.
+					$His high voice contributes to $his girlish image, so $he does even better.
 				<</if>>
 			<<elseif ($slaves[$i].muscles <= 30)>>
 				<<if $arcologies[0].FSSlimnessEnthusiast > 20>>
-					She makes extra ¤ due to her fashionably sleek little body.
+					$He makes extra ¤ due to $his fashionably sleek little body.
 				<<else>>
-					She receives extra ¤ for having a sleek, girlish figure.
+					$He receives extra ¤ for having a sleek, girlish figure.
 				<</if>>
 				<<if canTalk($slaves[$i]) && $slaves[$i].voice > 2>>
-					Her high voice contributes to her girlish image, so she does even better.
+					$His high voice contributes to $his girlish image, so $he does even better.
 				<</if>>
 			<</if>>
 		<</if>>
@@ -711,53 +713,53 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 
 <<if ($slaves[$i].boobsImplant == 0) && ($slaves[$i].buttImplant == 0) && ($slaves[$i].waist >= -95) && ($slaves[$i].lipsImplant == 0) && ($slaves[$i].bellyImplant == -1) && ($slaves[$i].faceImplant < 30)>>
 	<<if $arcologies[0].FSBodyPurist != "unset">>
-		With her all-natural, implant free appearance, she's very profitable.
+		With $his all-natural, implant free appearance, $he's very profitable.
 	<<elseif $arcologies[0].FSTransformationFetishist >= 20>>
-		Customers are disappointed by her all-natural, implant free appearance.
+		Customers are disappointed by $his all-natural, implant free appearance.
 	<<else>>
-		Some discerning customers appreciate her all-natural, implant free appearance.
+		Some discerning customers appreciate $his all-natural, implant free appearance.
 	<</if>>
 <<else>>
 	<<if $arcologies[0].FSTransformationFetishist != "unset">>
-		The public is willing to pay more for her augmented body.
+		The public is willing to pay more for $his augmented body.
 	<</if>>
 <</if>>
 
 <<if $slaves[$i].nipples == "fuckable">>
 	<<if $arcologies[0].FSTransformationFetishist != "unset">>
-		Her fuckable nipples give her a profitable edge over those without such body modifications.
+		$His fuckable nipples give $him a profitable edge over those without such body modifications.
 	<<else>>
-		Her fuckable nipples entice some of the more adventurous customers.
+		$His fuckable nipples entice some of the more adventurous customers.
 	<</if>>
 <</if>>
 
 <<if ($slaves[$i].clitPiercing > 2) && ($slaves[$i].devotion >= -20)>>
-	Almost everyone loves her enthusiasm for sex encouraged by her smart piercing.
+	Almost everyone loves $his enthusiasm for sex encouraged by $his smart piercing.
 <<elseif ($slaves[$i].clitPiercing > 2)>>
-	Almost everyone appreciates her reduced reluctance towards sex encouraged by her smart piercing.
+	Almost everyone appreciates $his reduced reluctance towards sex encouraged by $his smart piercing.
 <</if>>
 
 <<if $slaves[$i].teeth == "removable">>
-	The extra attention she receives from her ability to give toothless sucks is balanced out by the customers who are disgusted by it.
+	The extra attention $he receives from $his ability to give toothless sucks is balanced out by the customers who are disgusted by it.
 <<elseif $slaves[$i].teeth == "pointy">>
-	The extra attention she receives from her terrifying mouth of sharp teeth is balanced out by the customers who are scared off by them.
+	The extra attention $he receives from $his terrifying mouth of sharp teeth is balanced out by the customers who are scared off by them.
 <</if>>
 
 <<if $slaves[$i].dick != 0>>
 	<<if $arcologies[0].FSGenderRadicalist == "unset">>
-		She sees fewer customers because many prefer whores without cocks.
+		$He sees fewer customers because many prefer whores without cocks.
 	<<elseif $arcologies[0].FSGenderRadicalist < 50>>
-		Her cock entices some customers and disappoints others; it has little effect on her popularity.
+		$His cock entices some customers and disappoints others; it has little effect on $his popularity.
 	<<else>>
-		The overwhelming majority of potential customers consider her cock an attraction.
+		The overwhelming majority of potential customers consider $his cock an attraction.
 	<</if>>
 <</if>>
 
 <<if $slaves[$i].muscles > 95>>
 	<<if $arcologies[0].FSPhysicalIdealist != "unset">>
-		In the new culture of $arcologies[0].name her muscles make her a very profitable whore.
+		In the new culture of $arcologies[0].name $his muscles make $him a very profitable whore.
 	<<else>>
-		Her muscles scare off some customers, but some pay well to enjoy a muscular whore.
+		$His muscles scare off some customers, but some pay well to enjoy a muscular whore.
 	<</if>>
 <</if>>
 
@@ -766,14 +768,14 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <</if>>
 
 <<if $slaves[$i].lactation > 0>>
-	She appeals to customers who like lactation play, or just want a whore they can drink milk from.
+	$He appeals to customers who like lactation play, or just want a whore they can drink milk from.
 <</if>>
 
 <<if $slaves[$i].bellyPreg >= 1500 || setup.fakeBellies.includes($bellyAccessory) || $slaves[$i].bellyImplant >= 1500>>
 	<<if $arcologies[0].FSRepopulationFocus != "unset">>
-		In the new culture of $arcologies[0].name, her pregnancy makes her a profitable whore<<if setup.fakeBellies.includes($bellyAccessory) || $slaves[$i].bellyImplant >= 1500>>, even if it's not real<</if>>.
+		In the new culture of $arcologies[0].name, $his pregnancy makes $him a profitable whore<<if setup.fakeBellies.includes($bellyAccessory) || $slaves[$i].bellyImplant >= 1500>>, even if it's not real<</if>>.
 	<<elseif $arcologies[0].FSRestart != "unset">>
-		In the new culture of $arcologies[0].name, her<<if setup.fakeBellies.includes($bellyAccessory) || $slaves[$i].bellyImplant >= 1500>> apparent<</if>> pregnancy is a massive turn off to potential customers.
+		In the new culture of $arcologies[0].name, $his<<if setup.fakeBellies.includes($bellyAccessory) || $slaves[$i].bellyImplant >= 1500>> apparent<</if>> pregnancy is a massive turn off to potential customers.
 	<<elseif $arcologies[0].FSGenderFundamentalist != "unset">>
 		The new respect for traditional gender roles has given many citizens a taste for pregnant whores<<if setup.fakeBellies.includes($bellyAccessory) || $slaves[$i].bellyImplant >= 1500>>, even if they only look pregnant<</if>>.
 	<<else>>
@@ -798,226 +800,226 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <</if>>
 <<if $arcologies[0].FSEdoRevivalist != "unset">>
 	<<if ($slaves[$i].nationality == "Japanese") || ($slaves[$i].nationality == "Edo Revivalist")>>
-		As a proper Japanese girl, she is considered extremely desirable.
+		As a proper Japanese girl, $he is considered extremely desirable.
 	<</if>>
 <<elseif $arcologies[0].FSChineseRevivalist != "unset">>
 	<<if ($slaves[$i].nationality == "Chinese") || ($slaves[$i].nationality == "Chinese Revivalist")>>
-		As a proper Chinese girl, she is considered extremely desirable.
+		As a proper Chinese girl, $he is considered extremely desirable.
 	<</if>>
 <</if>>
 
 <<if $slaves[$i].intelligence > 0>>
-	Her intelligence gives her an advantage at the business of selling her body.
+	$His intelligence gives $him an advantage at the business of selling $his body.
 <<elseif $slaves[$i].intelligence < 0>>
-	Her stupidity gives her a handicap at the business of selling her body.
+	$His stupidity gives $him a handicap at the business of selling $his body.
 <</if>>
 
 <<if $slaves[$i].prestige > 0>>
-	She attracts more attention because it's prestigious to fuck her.
+	$He attracts more attention because it's prestigious to fuck $him.
 <</if>>
 
 <<if $slaves[$i].pornPrestige > 2>>
 	Customers line up for the chance to buy time with the face of $slaves[$i].pornType porn.
 <<elseif $slaves[$i].pornPrestige > 1>>
-	She has a sizable fanbase, one that is eager to buy time with her.
+	$He has a sizable fanbase, one that is eager to buy time with $him.
 <<elseif $slaves[$i].pornPrestige > 0>>
-	A few of her fans recognize her and eagerly patronize her.
+	A few of $his fans recognize $him and eagerly patronize $him.
 <</if>>
 
 <<if ($slaves[$i].fetishKnown == 1)>>
 <<if ($slaves[$i].fetishStrength > 60)>>
 <<switch $slaves[$i].fetish>>
 <<case "submissive">>
-	She gets more ¤ for her eagerness to submit.
+	$He gets more ¤ for $his eagerness to submit.
 <<case "cumslut">>
-	She gets more ¤ for her enjoyment of cum.
+	$He gets more ¤ for $his enjoyment of cum.
 <<case "humiliation">>
-	She gets more ¤ for her eagerness to be humiliated by citizens.
+	$He gets more ¤ for $his eagerness to be humiliated by citizens.
 <<case "buttslut">>
 	<<if canDoAnal($slaves[$i])>>
-		She gets more ¤ for her obvious enjoyment of buttsex.
+		$He gets more ¤ for $his obvious enjoyment of buttsex.
 	<</if>>
 <<case "dom">>
-	She gets some more ¤ for her enthusiasm dominating other slaves in group sex.
+	$He gets some more ¤ for $his enthusiasm dominating other slaves in group sex.
 <<case "boobs">>
-	She receives more ¤ for her eagerness to get some hands on her chest.
+	$He receives more ¤ for $his eagerness to get some hands on $his chest.
 <<case "masochist">>
-	She gets more ¤ for her obvious enjoyment of pain.
+	$He gets more ¤ for $his obvious enjoyment of pain.
 <<case "sadist">>
-	She gets some more ¤ for her willingness to abuse other slaves.
+	$He gets some more ¤ for $his willingness to abuse other slaves.
 <<case "pregnancy">>
 	<<if $slaves[$i].mpreg == 0>>
 	<<if canDoVaginal($slaves[$i])>>
-		As an impregnation fetishist she's very enthusiastic about vaginal sex.
+		As an impregnation fetishist $he's very enthusiastic about vaginal sex.
 	<</if>>
 	<<else>>
 		<<if canDoAnal($slaves[$i])>>
-			As an impregnation fetishist she's very enthusiastic about anal sex.
+			As an impregnation fetishist $he's very enthusiastic about anal sex.
 		<</if>>
 	<</if>>
 <<case "mindbroken">>
-	She gets less ¤ because she just lies there, mind broken.
+	$He gets less ¤ because $he just lies there, mind broken.
 <</switch>>
 <</if>>
 <</if>>
 
 <<if ($slaves[$i].attrKnown == 1)>>
 <<if ($slaves[$i].energy > 95)>>
-	As a nymphomaniac she gets sexual release from every transaction and is wildly successful.
+	As a nymphomaniac $he gets sexual release from every transaction and is wildly successful.
 	<<set $slaves[$i].need -= $beauty>>
 <<elseif ($slaves[$i].energy > 80)>>
-	With her powerful sex drive she rarely has to fake an orgasm.
+	With $his powerful sex drive $he rarely has to fake an orgasm.
 	<<set $slaves[$i].need -= $beauty*.9>>
 <<elseif $slaves[$i].aphrodisiacs > 0 || ($slaves[$i].inflationType == "aphrodisiac")>>
-	With her aphrodisiac boosted libido, it's barely possible to discern her from a natural nymphomaniac.
+	With $his aphrodisiac boosted libido, it's barely possible to discern $him from a natural nymphomaniac.
 	<<set $slaves[$i].need -= $beauty*.9>>
 <<elseif ($slaves[$i].energy > 60)>>
-	With her good sex drive she often orgasms with customers.
+	With $his good sex drive $he often orgasms with customers.
 	<<set $slaves[$i].need -= $beauty*.8>>
 <<elseif ($slaves[$i].energy > 40)>>
-	With her average sex drive she occasionally orgasms with customers.
+	With $his average sex drive $he occasionally orgasms with customers.
 	<<set $slaves[$i].need -= $beauty*.5>>
 <<elseif ($slaves[$i].energy > 20)>>
-	With her poor sex drive she almost never orgasms with customers.
+	With $his poor sex drive $he almost never orgasms with customers.
 	<<set $slaves[$i].need -= $beauty*.1>>
 <<else>>
-	Since she's frigid, she rarely experiences authentic arousal at work.
+	Since $he's frigid, $he rarely experiences authentic arousal at work.
 <</if>>
 <<if ($slaves[$i].attrXY <= 15)>>
 	<<if ($slaves[$i].attrXX <= 15)>>
-		Her general disgust with sex makes her a very poor whore.
+		$His general disgust with sex makes $him a very poor whore.
 	<<elseif ($slaves[$i].attrXX <= 85)>>
-		Her sexual disgust with men makes her a poor whore.
+		$His sexual disgust with men makes $him a poor whore.
 	<<elseif ($slaves[$i].attrXX <= 95)>>
-		Her sexual disgust with men hinders her, though she is more enthusiastic with female customers.
+		$His sexual disgust with men hinders $him, though $he is more enthusiastic with female customers.
 	<<else>>
-		Her sexual disgust with men hinders her, though she makes up for it with female customers.
+		$His sexual disgust with men hinders $him, though $he makes up for it with female customers.
 	<</if>>
 <<elseif ($slaves[$i].attrXY <= 85)>>
 	<<if ($slaves[$i].attrXX <= 15)>>
-		Her sexual disgust with men makes her a poor whore.
+		$His sexual disgust with men makes $him a poor whore.
 	<<elseif ($slaves[$i].attrXX <= 85)>>
-		Her indifference to men and women makes her a poor whore.
+		$His indifference to men and women makes $him a poor whore.
 	<<elseif ($slaves[$i].attrXX <= 95)>>
-		Her sexual indifference to men hinders her, though she is more enthusiastic with female customers.
+		$His sexual indifference to men hinders $him, though $he is more enthusiastic with female customers.
 	<<else>>
-		Her sexual indifference to men hinders her, though she makes up for it with female customers.
+		$His sexual indifference to men hinders $him, though $he makes up for it with female customers.
 	<</if>>
 <<elseif ($slaves[$i].attrXY <= 95)>>
 	<<if ($slaves[$i].attrXX <= 15)>>
-		Her sexual disgust with women hinders her, though she makes up for it with male customers.
+		$His sexual disgust with women hinders $him, though $he makes up for it with male customers.
 	<<elseif ($slaves[$i].attrXX <= 85)>>
-		Her sexual indifference to women hinders her, though she makes up for it with male customers.
+		$His sexual indifference to women hinders $him, though $he makes up for it with male customers.
 	<<elseif ($slaves[$i].attrXX <= 95)>>
-		She has the advantage of sexual sincerity with both men and women.
+		$He has the advantage of sexual sincerity with both men and women.
 	<<else>>
-		She's a good whore with male customers, and truly enthusiastic with women.
+		$He's a good whore with male customers, and truly enthusiastic with women.
 	<</if>>
 <<else>>
 	<<if ($slaves[$i].attrXX <= 15)>>
-		Her sexual disgust with women hinders her, though she is enthusiastic with male customers.
+		$His sexual disgust with women hinders $him, though $he is enthusiastic with male customers.
 	<<elseif ($slaves[$i].attrXX <= 85)>>
-		Her sexual indifference to women hinders her, though she is enthusiastic with male customers.
+		$His sexual indifference to women hinders $him, though $he is enthusiastic with male customers.
 	<<elseif ($slaves[$i].attrXX <= 95)>>
-		She's a good whore with female customers, and truly enthusiastic with men.
+		$He's a good whore with female customers, and truly enthusiastic with men.
 	<<else>>
-		She's openly lustful towards all customers, men and women.
+		$He's openly lustful towards all customers, men and women.
 	<</if>>
 <</if>>
 <</if>>
 
 <<if ($slaves[$i].behavioralQuirk == "confident")>>
-	She's better at her job because she's such a confident whore.
+	$He's better at $his job because $he's such a confident whore.
 <<elseif ($slaves[$i].behavioralQuirk == "cutting")>>
-	She gets a lot of attention for her ability to joke at a customer's expense.
+	$He gets a lot of attention for $his ability to joke at a customer's expense.
 <<elseif ($slaves[$i].behavioralQuirk == "funny")>>
-	She brings unintentional comic relief to the hard work  of prostitution.
+	$He brings unintentional comic relief to the hard work  of prostitution.
 <<elseif ($slaves[$i].behavioralQuirk == "adores women")>>
-	She's a favorite among female customers, whom she greets with real enthusiasm.
+	$He's a favorite among female customers, whom $he greets with real enthusiasm.
 <<elseif ($slaves[$i].behavioralQuirk == "adores men")>>
-	She's a favorite among male customers, whom she greets with frank and open lust.
+	$He's a favorite among male customers, whom $he greets with frank and open lust.
 <<elseif ($slaves[$i].behavioralQuirk == "fitness")>>
-	She's eager to please customers because she finds validation in their willingness to pay for sex with her.
+	$He's eager to please customers because $he finds validation in their willingness to pay for sex with $him.
 <<elseif ($slaves[$i].behavioralQuirk == "insecure")>>
-	She thinks of herself as really beautiful, despite the occasional harshness of sex work.
+	$He thinks of $himself as really beautiful, despite the occasional harshness of sex work.
 <<elseif ($slaves[$i].behavioralQuirk == "sinful")>>
-	She identifies with prostitutes from the holy books, and scandalizes customers with her explicit scriptural references.
+	$He identifies with prostitutes from the holy books, and scandalizes customers with $his explicit scriptural references.
 <<elseif ($slaves[$i].behavioralQuirk == "advocate")>>
-	She reassures uncomfortable customers that prostitution isn't bad for her at all.
+	$He reassures uncomfortable customers that prostitution isn't bad for $him at all.
 <</if>>
 <<if ($slaves[$i].sexualQuirk == "gagfuck queen")>>
-	She's a favorite among customers who like to throatfuck a retching whore.
+	$He's a favorite among customers who like to throatfuck a retching whore.
 <<elseif ($slaves[$i].sexualQuirk == "painal queen")>>
-	She's a favorite among customers who like to assrape a struggling whore.
+	$He's a favorite among customers who like to assrape a struggling whore.
 <<elseif ($slaves[$i].sexualQuirk == "strugglefuck queen")>>
-	She's a favorite among customers who like to wrestle with a struggling whore.
+	$He's a favorite among customers who like to wrestle with a struggling whore.
 <<elseif ($slaves[$i].sexualQuirk == "tease")>>
-	Despite being a whore, she somehow retains the ability to blush enticingly at nudity.
+	Despite being a whore, $he somehow retains the ability to blush enticingly at nudity.
 <<elseif ($slaves[$i].sexualQuirk == "romantic")>>
-	Despite being a whore, she somehow retains the ability to make her customers feel special.
+	Despite being a whore, $he somehow retains the ability to make $his customers feel special.
 <<elseif ($slaves[$i].sexualQuirk == "perverted")>>
-	She enjoys unexpected, perverted requests from customers.
+	$He enjoys unexpected, perverted requests from customers.
 <<elseif ($slaves[$i].sexualQuirk == "unflinching")>>
-	She's impossible to disgust or surprise, pleasing customers with odd tastes.
+	$He's impossible to disgust or surprise, pleasing customers with odd tastes.
 <<elseif ($slaves[$i].sexualQuirk == "size queen")>>
-	She's very eager to spend quality time with big cocks, making her a favorite among the well-endowed.
+	$He's very eager to spend quality time with big cocks, making $him a favorite among the well-endowed.
 <<elseif ($slaves[$i].sexualQuirk == "caring")>>
-	She's a relaxing whore to patronize, doing everything she can to make her customers comfortable.
+	$He's a relaxing whore to patronize, doing everything $he can to make $his customers comfortable.
 <</if>>
 
 <<switch $slaves[$i].behavioralFlaw>>
 <<case "arrogant">>
-	She receives less ¤ because she treats clients like they are beneath her dignity.
+	$He receives less ¤ because $he treats clients like they are beneath $his dignity.
 <<case "bitchy">>
-	She receives less ¤ because she makes cutting remarks to clients.
+	$He receives less ¤ because $he makes cutting remarks to clients.
 <<case "odd">>
-	She receives less ¤ because clients are annoyed by her odd behavior.
+	$He receives less ¤ because clients are annoyed by $his odd behavior.
 <<case "hates men">>
-	She receives less ¤ because she can't conceal her distaste for the company of men.
+	$He receives less ¤ because $he can't conceal $his distaste for the company of men.
 <<case "hates women">>
-	She receives less ¤ because she can't conceal her distaste for the company of women.
+	$He receives less ¤ because $he can't conceal $his distaste for the company of women.
 <<case "devout">>
-	She receives less ¤ because people are annoyed by her habit of praying for forgiveness during sex.
+	$He receives less ¤ because people are annoyed by $his habit of praying for forgiveness during sex.
 <<case "liberated">>
-	She receives less ¤ because people are annoyed by her obvious belief that being forced to serve them is wrong.
+	$He receives less ¤ because people are annoyed by $his obvious belief that being forced to serve them is wrong.
 <</switch>>
 <<switch $slaves[$i].sexualFlaw>>
 <<case "hates oral">>
-	She receives less ¤ because she tries to avoid sucking cock.
+	$He receives less ¤ because $he tries to avoid sucking cock.
 <<case "hates anal">>
-	She receives less ¤ because she tries to avoid taking it up the ass.
+	$He receives less ¤ because $he tries to avoid taking it up the ass.
 <<case "hates penetration">>
-	She receives less ¤ because she tries to avoid getting fucked.
+	$He receives less ¤ because $he tries to avoid getting fucked.
 <<case "repressed">>
-	She receives less ¤ because customers who don't feel like forcing her sometimes have to cajole her past her repressed sexuality.
+	$He receives less ¤ because customers who don't feel like forcing $him sometimes have to cajole $him past $his repressed sexuality.
 <<case "idealistic">>
-	She receives less ¤ because customers who don't feel like forcing her sometimes have to convince her to have sex with them.
+	$He receives less ¤ because customers who don't feel like forcing $him sometimes have to convince $him to have sex with them.
 <<case "apathetic">>
-	She receives less ¤ because she often just lies there taking dick.
+	$He receives less ¤ because $he often just lies there taking dick.
 <<case "crude">>
-	She receives less ¤ because she isn't exactly the most elegant sexual partner.
+	$He receives less ¤ because $he isn't exactly the most elegant sexual partner.
 <<case "judgemental">>
-	She receives less ¤ because she openly disdains unattractive customers.
+	$He receives less ¤ because $he openly disdains unattractive customers.
 <<case "shamefast">>
-	She receives less ¤ because she sometimes hesitates to take her clothes off and get to work.
+	$He receives less ¤ because $he sometimes hesitates to take $his clothes off and get to work.
 <<case "cum addict">>
-	Her abject begging for cum annoys customers who aren't looking for oral, but this is more than outweighed by how much it delights those who are.
+	$His abject begging for cum annoys customers who aren't looking for oral, but this is more than outweighed by how much it delights those who are.
 <<case "anal addict">>
-	Her abject begging for buttsex annoys customers who aren't interested in fucking her ass, but this is more than outweighed by how much it delights those who are.
+	$His abject begging for buttsex annoys customers who aren't interested in fucking $his ass, but this is more than outweighed by how much it delights those who are.
 <<case "attention whore">>
-	She loses customers by her constant attention seeking.
+	$He loses customers by $his constant attention seeking.
 <<case "breast growth">>
-	Her excessive obsession with her own breasts, to the detriment of most sexual intercourse, loses customers.
+	$His excessive obsession with $his own breasts, to the detriment of most sexual intercourse, loses customers.
 <<case "abusive">>
-	She loses customers whenever her sexual abusiveness becomes apparent.
+	$He loses customers whenever $his sexual abusiveness becomes apparent.
 <<case "malicious">>
-	She loses customers whenever her sexual maliciousness becomes apparent.
+	$He loses customers whenever $his sexual maliciousness becomes apparent.
 <<case "self hating">>
-	She loses customers during the crying jags brought on by her self hatred.
+	$He loses customers during the crying jags brought on by $his self hatred.
 <<case "neglectful">>
-	The occasional customer who likes a whore to climax authentically and can tell the difference is disappointed by her neglect of her own pleasure, but they're rare. Most are thrilled by her.
+	The occasional customer who likes a whore to climax authentically and can tell the difference is disappointed by $his neglect of $his own pleasure, but they're rare. Most are thrilled by $him.
 <<case "breeder">>
-	Her obsession with pregnancy loses customers who aren't interested in that.
+	$His obsession with pregnancy loses customers who aren't interested in that.
 <</switch>>
 
 <</if>> /* CLOSES EWM */
@@ -1026,13 +1028,13 @@ Her appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a da
 <<if $slaves[$i].devotion < 10>>
 <<if random(1,100) > 70>>
 <<if ($slaves[$i].vaginalSkill <= 30) && canDoVaginal($slaves[$i])>>
-	After being fucked too hard too often, she now @@.red;dislikes being penetrated.@@
+	After being fucked too hard too often, $he now @@.red;dislikes being penetrated.@@
 	<<set $slaves[$i].sexualFlaw = "hates penetration">>
 <<elseif ($slaves[$i].analSkill <= 30) && canDoAnal($slaves[$i])>>
-	After so much anal pain, she now @@.red;dislikes being buttfucked.@@
+	After so much anal pain, $he now @@.red;dislikes being buttfucked.@@
 	<<set $slaves[$i].sexualFlaw = "hates anal">>
 <<elseif ($slaves[$i].oralSkill <= 30)>>
-	After one too many facials, she now @@.red;dislikes sucking cock.@@
+	After one too many facials, $he now @@.red;dislikes sucking cock.@@
 	<<set $slaves[$i].sexualFlaw = "hates oral">>
 <</if>>
 <</if>>
@@ -1146,43 +1148,43 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 <<switch $slaves[$i].fetish>>
 <<case "submissive" "masochist">>
 	<<if _analUse+_vaginalUse > 0>>
-		She enjoys being fucked, and got sexual satisfaction from the <<print _analUse+_vaginalUse>> dicks stuck inside her this week.
+		$He enjoys being fucked, and got sexual satisfaction from the <<print _analUse+_vaginalUse>> dicks stuck inside $him this week.
 		<<set $slaves[$i].need -= _analUse+_vaginalUse>>
 	<</if>>
 <<case "dom" "sadist">>
 	<<if _penetrativeUse > 0>>
-		She enjoys being on top, and got special sexual satisfaction from the _penetrativeUse times she got to fuck someone this week.
+		$He enjoys being on top, and got special sexual satisfaction from the _penetrativeUse times $he got to fuck someone this week.
 		<<set $slaves[$i].need -= 2*_penetrativeUse>>
 	<</if>>
 <<case "cumslut">>
 	<<if _oralUse > 0>>
-		She enjoys sucking, and got sexual satisfaction from the _oralUse blowjobs she gave this week.
+		$He enjoys sucking, and got sexual satisfaction from the _oralUse blowjobs $he gave this week.
 		<<set $slaves[$i].need -= _oralUse>>
 	<</if>>
 <<case "buttslut">>
 	<<if _analUse > 0>>
-		She enjoys getting buttfucked, and got sexual satisfaction from the _analUse times she was sodomized this week.
+		$He enjoys getting buttfucked, and got sexual satisfaction from the _analUse times $he was sodomized this week.
 		<<set $slaves[$i].need -= _analUse>>
 	<</if>>
 <<case "boobs">>
 	<<if _mammaryUse > 0>>
-		She enjoys <<if $slaves[$i].nipples == "fuckable">>having her tits fucked<<else>>giving a good titfuck<</if>>, and got sexual satisfaction from the _mammaryUse times they were used this week.
+		$He enjoys <<if $slaves[$i].nipples == "fuckable">>having $his tits fucked<<else>>giving a good titfuck<</if>>, and got sexual satisfaction from the _mammaryUse times they were used this week.
 		<<set $slaves[$i].need -= _mammaryUse>>
 	<</if>>
 <<case "pregnancy">>
 	<<if $slaves[$i].mpreg == 0>>
 	<<if _vaginalUse > 0>>
-		She enjoys having her pussy fucked, and got sexual satisfaction from the _vaginalUse times she got dick this week.
+		$He enjoys having $his pussy fucked, and got sexual satisfaction from the _vaginalUse times $he got dick this week.
 		<<set $slaves[$i].need -= _vaginalUse>>
 	<</if>>
 	<<else>>
 		<<if _analUse > 0>>
-			She enjoys having her ass fucked, and got sexual satisfaction from the _analUse times she got dick this week.
+			$He enjoys having $his ass fucked, and got sexual satisfaction from the _analUse times $he got dick this week.
 			<<set $slaves[$i].need -= _analUse>>
 		<</if>>
 	<</if>>
 <<case "humiliation">>
-	She enjoys the humiliation of being a public slut, and got a bit of sexual satisfaction from every sex act she performed this week.
+	$He enjoys the humiliation of being a public slut, and got a bit of sexual satisfaction from every sex act $he performed this week.
 	<<set $slaves[$i].need -= $beauty>>
 <</switch>>
 <</if>>
@@ -1196,392 +1198,392 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 <<set $seed = random(1,10)>>
 <<switch $seed>>
 <<case 1>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that she witnessed a domestic dispute over another whore,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he witnessed a domestic dispute over another whore,", type: "rep", effect: 0})>>
 <<case 2>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that she saw a free whore finally sink into slavery,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw a free whore finally sink into slavery,", type: "rep", effect: 0})>>
 <<case 3>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that construction forced her to move from her usual spot,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that construction forced $him to move from $his usual spot,", type: "rep", effect: 0})>>
 <<case 4>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that a customer used a new and improved sex toy on her,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that a customer used a new and improved sex toy on $him,", type: "rep", effect: 0})>>
 <<case 5>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was an appointment with an unusually perverted family,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was an appointment with an unusually perverted family,", type: "rep", effect: 0})>>
 <<case 6>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that she saw a man sell his wife into slavery,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw a man sell his wife into slavery,", type: "rep", effect: 0})>>
 <<case 7>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that she saw a woman sell her daughters into slavery,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw a woman sell her daughters into slavery,", type: "rep", effect: 0})>>
 <<case 8>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that she watched a citizen descend into aphrodisiac addiction,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he watched a citizen descend into aphrodisiac addiction,", type: "rep", effect: 0})>>
 <<case 9>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that she watched a citizen develop the beginnings of sex addiction,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he watched a citizen develop the beginnings of sex addiction,", type: "rep", effect: 0})>>
 <<default>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to her at work was that she witnessed a citizen administering a brutal public punishment to one of his slaves,", type: "rep", effect: 0})>>
+	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he witnessed a citizen administering a brutal public punishment to one of his slaves,", type: "rep", effect: 0})>>
 <</switch>>
 <<set $seed = random(1,5)>>
 <<switch $seed>>
 <<case 1>>
-	<<set _vignettes.push({text: "a citizen punished one of his slaves by tying her up in public near where $slaves[$i].slaveName was working. This cut into her business that day,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a citizen punished one of his slaves by tying her up in public near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
 <<case 2>>
-	<<set _vignettes.push({text: "a citizen shared one of his slaves with the public near where $slaves[$i].slaveName was working. This cut into her business that day,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a citizen shared one of his slaves with the public near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
 <<case 3>>
-	<<set _vignettes.push({text: "a private brothel offered a promotion near where $slaves[$i].slaveName was working. This cut into her business that day,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a private brothel offered a promotion near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
 <<case 4>>
-	<<set _vignettes.push({text: "some free sluts threw an aphrodisiac street party near where $slaves[$i].slaveName was working. This cut into her business that day,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "some free sluts threw an aphrodisiac street party near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
 <<default>>
-	<<set _vignettes.push({text: "a contract breaker was punished with the pillory near where $slaves[$i].slaveName was working. This cut into her business that day,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a contract breaker was punished with the pillory near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
 <</switch>>
 <<set $seed = random(1,5)>>
 <<switch $seed>>
 <<case 1>>
-	<<set _vignettes.push({text: "one of her regular customers got a divorce and came to her for repeated consolation,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "one of $his regular customers got a divorce and came to $him for repeated consolation,", type: "cash", effect: 1})>>
 <<case 2>>
 	<<set _vignettes.push({text: "a brothel near where $slaves[$i].slaveName usually works had business trouble,", type: "cash", effect: 1})>>
 <<case 3>>
-	<<set _vignettes.push({text: "a competing whore that looks like her fell ill, driving a customer to look for an alternative,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a competing whore that looks like $him fell ill, driving a customer to look for an alternative,", type: "cash", effect: 1})>>
 <<case 4>>
-	<<set _vignettes.push({text: "a street whore that works near her was badly beaten by an abusive customer and had to take time off. The reduced competition got her more business,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a street whore that works near $him was badly beaten by an abusive customer and had to take time off. The reduced competition got $him more business,", type: "cash", effect: 1})>>
 <<default>>
-	<<set _vignettes.push({text: "an influx of tourists came into her part of the arcology, earning her more business for a day,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "an influx of tourists came into $his part of the arcology, earning $him more business for a day,", type: "cash", effect: 1})>>
 <</switch>>
 
 <<if ($slaves[$i].fetishKnown == 1)>>
 <<switch $slaves[$i].fetish>>
 <<case "submissive">>
-	<<set _vignettes.push({text: "she deeply impressed a customer with her sincere submission to him,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "she lost a customer who secretly wanted her to show a little initiative,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he deeply impressed a customer with $his sincere submission to him,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he lost a customer who secretly wanted $him to show a little initiative,", type: "cash", effect: -1})>>
 <<case "cumslut">>
-	<<set _vignettes.push({text: "she deeply impressed a customer with her hunger for his cum,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "she disgusted a customer who didn't know how much cum fetishes revolted him until she displayed hers,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he deeply impressed a customer with $his hunger for his cum,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much cum fetishes revolted him until $he displayed hers,", type: "rep", effect: -1})>>
 <<case "humiliation">>
-	<<set _vignettes.push({text: "she earned repeat business from a customer who didn't know how much he liked public sex until she got him to try it,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "she disgusted a customer who didn't know how much exhibitionism turned him off until he tried public sex with her,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he earned repeat business from a customer who didn't know how much he liked public sex until $he got him to try it,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much exhibitionism turned him off until he tried public sex with $him,", type: "rep", effect: -1})>>
 <<case "buttslut">>
 	<<if canDoAnal($slaves[$i])>>
-		<<set _vignettes.push({text: "she earned repeat business from a customer who didn't know how much he liked fucking buttholes until she got him to try fucking hers,", type: "cash", effect: 1})>>
-		<<set _vignettes.push({text: "she disgusted a customer who didn't know how much buttsex turned him off until she got him to try fucking her ass,", type: "rep", effect: -1})>>
+		<<set _vignettes.push({text: "$he earned repeat business from a customer who didn't know how much he liked fucking buttholes until $he got him to try fucking hers,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much buttsex turned him off until $he got him to try fucking $his ass,", type: "rep", effect: -1})>>
 	<</if>>
 	<<if $slaves[$i].butt >= 3>>
-		<<set _vignettes.push({text: "she earned repeat business from a customer who didn't know how much he liked big butts until she gave him a lap dance he'll never forget,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he earned repeat business from a customer who didn't know how much he liked big butts until $he gave him a lap dance he'll never forget,", type: "cash", effect: 1})>>
 	<</if>>
-	<<set _vignettes.push({text: "she earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "she disgusted a customer who didn't know how much butts turned him off until he put her hands on hers,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much butts turned him off until he put $his hands on $hers,", type: "rep", effect: -1})>>
 <<case "boobs">>
-	<<set _vignettes.push({text: "she deeply impressed a customer by orgasming to nothing but the feeling of her sucking her nipples,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "she disappointed a female customer who didn't know how uninterested she was in nipple play before trying it,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he deeply impressed a customer by orgasming to nothing but the feeling of her sucking $his nipples,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he disappointed a female customer who didn't know how uninterested $he was in nipple play before trying it,", type: "rep", effect: -1})>>
 	<<if $slaves[$i].nipples == "fuckable">>
-		<<set _vignettes.push({text: "she left a lasting impression on a pair of customer after nearly passing out from a series of intense orgasms from getting her nipples fucked,", type: "cash", effect: 2})>>
+		<<set _vignettes.push({text: "$he left a lasting impression on a pair of customer after nearly passing out from a series of intense orgasms from getting $his nipples fucked,", type: "cash", effect: 2})>>
 	<</if>>
 <<case "sadist">>
-	<<set _vignettes.push({text: "she deeply impressed a customer who brought his own slave to her for abuse with her sadism,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a customer brought her his own slave to abuse, but the sight proved to be a turn off for him,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he deeply impressed a customer who brought his own slave to $him for abuse with $his sadism,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "a customer brought $him his own slave to abuse, but the sight proved to be a turn off for him,", type: "rep", effect: -1})>>
 <<case "masochist">>
-	<<set _vignettes.push({text: "she helped a customer discover a new fetish by orgasming when he accidentally hurt her,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "she disturbed a customer who accidentally hurt her by orgasming,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he helped a customer discover a new fetish by orgasming when he accidentally hurt $him,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he disturbed a customer who accidentally hurt $him by orgasming,", type: "rep", effect: -1})>>
 <<case "dom">>
-	<<set _vignettes.push({text: "she made a female customer her bitch: fortunately, the customer wanted to be her bitch and came back for more", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "she accidentally overwhelmed a customer with her sexual dominance,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he made a female customer $his bitch: fortunately, the customer wanted to be $his bitch and came back for more", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he accidentally overwhelmed a customer with $his sexual dominance,", type: "rep", effect: -1})>>
 <<case "pregnancy">>
-	<<set _vignettes.push({text: "she earned repeat business from a customer who didn't know how much he liked pregnancy play until she begged him to knock her up,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "she disgusted a customer who didn't know how much pregnancy play turned him off until she begged him to knock her up,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he earned repeat business from a customer who didn't know how much he liked pregnancy play until $he begged him to knock $him up,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much pregnancy play turned him off until $he begged him to knock $him up,", type: "rep", effect: -1})>>
 <</switch>>
 <</if>>
 <<switch $slaves[$i].behavioralFlaw>>
 <<case "arrogant">>
-	<<set _vignettes.push({text: "she manages to give a citizen the impression she thinks herself better than him,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he manages to give a citizen the impression $he thinks $himself better than him,", type: "rep", effect: -1})>>
 <<case "bitchy">>
-	<<set _vignettes.push({text: "she makes an emasculating remark to a customer right after he fucks her,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he makes an emasculating remark to a customer right after he fucks $him,", type: "rep", effect: -1})>>
 <<case "odd">>
-	<<set _vignettes.push({text: "she infuriates a potential customer with her nervous tics,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he infuriates a potential customer with $his nervous tics,", type: "cash", effect: -1})>>
 <<case "hates men">>
-	<<set _vignettes.push({text: "her disgust towards men surfaces at a bad time, losing her a male customer,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$his disgust towards men surfaces at a bad time, losing $him a male customer,", type: "cash", effect: -1})>>
 <<case "hates women">>
-	<<set _vignettes.push({text: "her disgust towards women surfaces at a bad time, losing her a female customer,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$his disgust towards women surfaces at a bad time, losing $him a female customer,", type: "cash", effect: -1})>>
 <<case "gluttonous">>
-	<<set _vignettes.push({text: "she accidentally lingers at a meal, missing a customer appointment,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he accidentally lingers at a meal, missing a customer appointment,", type: "cash", effect: -1})>>
 <<case "anorexic">>
-	<<set _vignettes.push({text: "her bulimia surfaces at an extremely inopportune moment, turning a customer off,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$his bulimia surfaces at an extremely inopportune moment, turning a customer off,", type: "cash", effect: -1})>>
 <<case "devout">>
-	<<set _vignettes.push({text: "a customer catches her praying to herself as he inserts himself into her, turning him off,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a customer catches $him praying to $himself as he inserts himself into $him, turning him off,", type: "cash", effect: -1})>>
 <<case "liberated">>
-	<<set _vignettes.push({text: "she treats a rude potential customer impolitely, because she thinks that's fair,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he treats a rude potential customer impolitely, because $he thinks that's fair,", type: "cash", effect: -1})>>
 <</switch>>
 <<switch $slaves[$i].sexualFlaw>>
 <<case "hates oral">>
-	<<set _vignettes.push({text: "she vomits while trying to deepthroat a customer,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he vomits while trying to deepthroat a customer,", type: "rep", effect: -1})>>
 <<case "hates anal">>
-	<<set _vignettes.push({text: "she cries while taking anal from a customer who isn't into painal,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he cries while taking anal from a customer who isn't into painal,", type: "rep", effect: -1})>>
 <<case "hates penetration">>
-	<<set _vignettes.push({text: "she cries while taking a pounding from a customer who likes his sex consensual,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he cries while taking a pounding from a customer who likes his sex consensual,", type: "rep", effect: -1})>>
 <<case "shamefast">>
-	<<set _vignettes.push({text: "she cries while a potential customer looks her over,", type: "cash", effect: -1})>>
-	<<set _vignettes.push({text: "she disrobed so slowly that a potential customer gave up on her,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he cries while a potential customer looks $him over,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he disrobed so slowly that a potential customer gave up on $him,", type: "cash", effect: -1})>>
 <<case "idealistic">>
-	<<set _vignettes.push({text: "she cries when explaining the price of her body to a potential customer,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he cries when explaining the price of $his body to a potential customer,", type: "cash", effect: -1})>>
 <<case "repressed">>
-	<<set _vignettes.push({text: "she misunderstands a potential customer's lewd requests, turning her off,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he misunderstands a potential customer's lewd requests, turning her off,", type: "cash", effect: -1})>>
 <<case "apathetic">>
-	<<set _vignettes.push({text: "she fails to notice when a customer achieves orgasm,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he fails to notice when a customer achieves orgasm,", type: "rep", effect: -1})>>
 <<case "neglectful">>
-	<<set _vignettes.push({text: "she brings a denial fetishist to orgasm three times without cumming herself, earning their repeat business,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he brings a denial fetishist to orgasm three times without cumming $himself, earning their repeat business,", type: "cash", effect: 3})>>
 <<case "cum addict">>
-	<<set _vignettes.push({text: "she's so focused on sucking down a customer's cum that she managed to drive him to repeated orgasm, earning his repeated business once he got the feeling back in his legs,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he's so focused on sucking down a customer's cum that $he managed to drive him to repeated orgasm, earning his repeated business once he got the feeling back in his legs,", type: "cash", effect: 3})>>
 <<case "anal addict">>
-	<<set _vignettes.push({text: "she takes a trio of dicks in her ass without hesitation, earning repeat business from one of them thoroughly impressed by her anal addiction,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he takes a trio of dicks in $his ass without hesitation, earning repeat business from one of them thoroughly impressed by $his anal addiction,", type: "cash", effect: 3})>>
 <<case "attention whore">>
-	<<set _vignettes.push({text: "she got repeat business from a man who loves fucking her in the middle of crowded rooms,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he got repeat business from a man who loves fucking $him in the middle of crowded rooms,", type: "cash", effect: 3})>>
 <<case "breast growth">>
-	<<set _vignettes.push({text: "she got repeat business from a woman with huge breasts who enjoys roleplaying her breast expansion fetishes with her,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he got repeat business from a woman with huge breasts who enjoys roleplaying her breast expansion fetishes with $him,", type: "cash", effect: 3})>>
 <<case "abusive">>
-	<<set _vignettes.push({text: "she got repeat business from a man who loves physically abusive sex, though his testicles could only take so much in one week,", type: "cash", effect: 2})>>
+	<<set _vignettes.push({text: "$he got repeat business from a man who loves physically abusive sex, though his testicles could only take so much in one week,", type: "cash", effect: 2})>>
 <<case "malicious">>
-	<<set _vignettes.push({text: "she got repeat business from a masochistic woman who enjoys being whipped and degraded,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he got repeat business from a masochistic woman who enjoys being whipped and degraded,", type: "cash", effect: 3})>>
 <<case "self hating">>
-	<<set _vignettes.push({text: "she got repeat business from an abusive man who thoroughly enjoyed how diligently she took it,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he got repeat business from an abusive man who thoroughly enjoyed how diligently $he took it,", type: "cash", effect: 3})>>
 <<case "breeder">>
-	<<set _vignettes.push({text: "she got repeat business from a pregnancy fetishist nearly driven mad with lust over her pregnancy obsession,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he got repeat business from a pregnancy fetishist nearly driven mad with lust over her pregnancy obsession,", type: "cash", effect: 3})>>
 <</switch>>
 <<switch $slaves[$i].behavioralQuirk>>
 <<case "confident">>
-	<<set _vignettes.push({text: "she confidently presses forward with a wavering potential customer, and makes the sale,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he confidently presses forward with a wavering potential customer, and makes the sale,", type: "cash", effect: 1})>>
 <<case "cutting">>
-	<<set _vignettes.push({text: "she makes such a gloriously cutting remark to a male customer that a female bystander comes to her for repeat business,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he makes such a gloriously cutting remark to a male customer that a female bystander comes to $him for repeat business,", type: "cash", effect: 1})>>
 <<case "funny">>
-	<<set _vignettes.push({text: "she makes a group of citizens laugh so hard, one of them comes to her for repeat business,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he makes a group of citizens laugh so hard, one of them comes to $him for repeat business,", type: "cash", effect: 1})>>
 <<case "fitness">>
-	<<set _vignettes.push({text: "she continues a marathon gangbang past the point where most would have passed out,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he continues a marathon gangbang past the point where most would have passed out,", type: "cash", effect: 1})>>
 <<case "adores women">>
-	<<set _vignettes.push({text: "she strikes up a personal friendship with a regular female customer,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he strikes up a personal friendship with a regular female customer,", type: "rep", effect: 1})>>
 <<case "adores men">>
-	<<set _vignettes.push({text: "she strikes up a personal friendship with a regular male customer,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he strikes up a personal friendship with a regular male customer,", type: "rep", effect: 1})>>
 <<case "insecure">>
-	<<set _vignettes.push({text: "she successfully convinces a regular customer that she's reliant on him emotionally,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he successfully convinces a regular customer that $he's reliant on him emotionally,", type: "cash", effect: 1})>>
 <<case "sinful">>
-	<<set _vignettes.push({text: "she helps a customer get past her religious hangups through sex with her friendly neighborhood whore,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he helps a customer get past her religious hangups through sex with her friendly neighborhood whore,", type: "rep", effect: 1})>>
 <<case "advocate">>
-	<<set _vignettes.push({text: "she successfully convinces a wavering potential customer that there's nothing wrong with banging a whore,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he successfully convinces a wavering potential customer that there's nothing wrong with banging a whore,", type: "cash", effect: 1})>>
 <</switch>>
 <<switch $slaves[$i].sexualQuirk>>
 <<case "gagfuck queen">>
-	<<set _vignettes.push({text: "she earns repeat business from a citizen who's obsessed with gagfucks,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he earns repeat business from a citizen who's obsessed with gagfucks,", type: "cash", effect: 1})>>
 <<case "painal queen">>
-	<<set _vignettes.push({text: "she earns repeat business from a citizen who's obsessed with painal,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he earns repeat business from a citizen who's obsessed with painal,", type: "cash", effect: 1})>>
 <<case "strugglefuck queen">>
-	<<set _vignettes.push({text: "she earns repeat business from a citizen who's obsessed with strugglefucking,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he earns repeat business from a citizen who's obsessed with strugglefucking,", type: "cash", effect: 1})>>
 <<case "tease">>
-	<<set _vignettes.push({text: "she convinces a citizen who's never had sex with a prostitute to patronize her with some truly inspired flirting,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "a few partiers were so impressed with her provocative teasing that they repeated her wit to friends,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he convinces a citizen who's never had sex with a prostitute to patronize $him with some truly inspired flirting,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a few partiers were so impressed with $his provocative teasing that they repeated $his wit to friends,", type: "rep", effect: 1})>>
 <<case "romantic">>
-	<<set _vignettes.push({text: "a citizen becomes infatuated with her, since he's convinced she's infatuated with him,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a citizen becomes infatuated with $him, since he's convinced $he's infatuated with him,", type: "cash", effect: 1})>>
 <<case "perverted">>
-	<<set _vignettes.push({text: "she earns some momentary notoriety by engaging in a previously unheard-of sex act,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he earns some momentary notoriety by engaging in a previously unheard-of sex act,", type: "rep", effect: 1})>>
 <<case "caring">>
-	<<set _vignettes.push({text: "she serves as an impromptu sounding board for a customer having marital trouble,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was so enamored with her kind and caring manner than he proposed to her and offered to take her away, and when she refused, he left a sizable tip,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he serves as an impromptu sounding board for a customer having marital trouble,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "a customer was so enamored with $his kind and caring manner than he proposed to $him and offered to take $him away, and when $he refused, he left a sizable tip,", type: "cash", effect: 1})>>
 <</switch>>
 <<if ($slaves[$i].pitKills > 0)>>
-	<<set _vignettes.push({text: "she earns repeat business from a customer obsessed with the fact that she's a killer,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he earns repeat business from a customer obsessed with the fact that $he's a killer,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].oralCount > 500)>>
-	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving her oral mileage as high as possible,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving $his oral mileage as high as possible,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].analCount > 500) && ($slaves[$i].anus > 0)>>
-	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving her anal mileage as high as possible,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving $his anal mileage as high as possible,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].vaginalCount > 500) && ($slaves[$i].vagina > 0)>>
-	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving her pussy mileage as high as possible,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving $his pussy mileage as high as possible,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].devotion > 95)>>
-	<<set _vignettes.push({text: "she really pushed herself to please a customer with tastes that disgusted her,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he really pushed $himself to please a customer with tastes that disgusted $him,", type: "cash", effect: 1})>>
 <<elseif ($slaves[$i].devotion < -50)>>
-	<<set _vignettes.push({text: "her fury at being sold for sex turned a customer off before he could fuck her,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$his fury at being sold for sex turned a customer off before he could fuck $him,", type: "cash", effect: -1})>>
 <<elseif ($slaves[$i].devotion <= 20)>>
-	<<set _vignettes.push({text: "she treasured a love token given to her by a customer she fooled into thinking her affection was real,", type: "devotion", effect: -1})>>
+	<<set _vignettes.push({text: "$he treasured a love token given to $him by a customer $he fooled into thinking $his affection was real,", type: "devotion", effect: -1})>>
 <</if>>
 <<if ($slaves[$i].trust > 95)>>
-	<<set _vignettes.push({text: "she really pushed herself to accept a customer with tastes that frightened her,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he really pushed $himself to accept a customer with tastes that frightened $him,", type: "cash", effect: 1})>>
 <<elseif ($slaves[$i].trust < -50)>>
-	<<set _vignettes.push({text: "her tearful terror at being forced to sell herself for sex turned a customer off before he could fuck her,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$his tearful terror at being forced to sell $himself for sex turned a customer off before he could fuck $him,", type: "cash", effect: -1})>>
 <</if>>
 <<if $slaves[$i].livingRules == "luxurious">>
-	<<set _vignettes.push({text: "she got a truly perfect night's sleep, which put her in the right frame of mind for the whole day,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he got a truly perfect night's sleep, which put $him in the right frame of mind for the whole day,", type: "rep", effect: 1})>>
 <<elseif $slaves[$i].livingRules == "spare">>
-	<<set _vignettes.push({text: "she got a poor night's sleep in the noisy dormitory, which took the shine off her efforts for the whole day", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he got a poor night's sleep in the noisy dormitory, which took the shine off $his efforts for the whole day", type: "rep", effect: -1})>>
 <</if>>
 <<if $slaves[$i].releaseRules == "permissive" || $slaves[$i].releaseRules == "masturbation">>
-	<<set _vignettes.push({text: "a customer asked if she masturbates, and then spent an hour jerking off as she described how,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a customer asked if $he masturbates, and then spent an hour jerking off as $he described how,", type: "cash", effect: 1})>>
 <<elseif $slaves[$i].releaseRules == "restrictive">>
-	<<set _vignettes.push({text: "a customer asked if she masturbates, and seemed disappointed when she answered honestly,", type: "cash", effect: 0})>>
+	<<set _vignettes.push({text: "a customer asked if $he masturbates, and seemed disappointed when $he answered honestly,", type: "cash", effect: 0})>>
 <<else>>
-	<<set _vignettes.push({text: "a closeted female customer asked about her sex life with other slaves, and was enthralled by her answer,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "a closeted female customer asked about $his sex life with other slaves, and was enthralled by $his answer,", type: "rep", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].health > 80)>>
-	<<set _vignettes.push({text: "a potential customer in the medical field was fascinated by her health, and spent almost as much time examining her as he did having sex with her,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a potential customer in the medical field was fascinated by $his health, and spent almost as much time examining $him as he did having sex with $him,", type: "cash", effect: 1})>>
 <</if>>
 <<if $arcologies[0].FSHedonisticDecadence != "unset">>
 	<<if ($slaves[$i].weight < 10)>>
-		<<set _vignettes.push({text: "she earned extra gratitude from a customer who misses girls without a spare tire around their middle,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he earned extra gratitude from a customer who misses girls without a spare tire around their middle,", type: "cash", effect: 1})>>
 	<<elseif ($slaves[$i].weight < 95)>>
-		<<set _vignettes.push({text: "a potential customer told her that he's looking forward to patronizing her once she gains a lot more weight,", type: "cash", effect: 0})>>
+		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he gains a lot more weight,", type: "cash", effect: 0})>>
 	<<else>>
-		<<set _vignettes.push({text: "she earned extra gratitude from a customer who loves them big and soft", type: "cash", effect: 0})>>
+		<<set _vignettes.push({text: "$he earned extra gratitude from a customer who loves them big and soft", type: "cash", effect: 0})>>
 	<</if>>
 	<<if ($slaves[$i].weight > 30)>>
-		<<set _vignettes.push({text: "she earned extra gratitude from a customer who enjoyed the way her middle jiggled as he fucked her,", type: "cash", effect: 0})>>
+		<<set _vignettes.push({text: "$he earned extra gratitude from a customer who enjoyed the way $his middle jiggled as he fucked $him,", type: "cash", effect: 0})>>
 	<</if>>
 <<else>>
 	<<if ($slaves[$i].weight > 95)>>
-		<<set _vignettes.push({text: "a potential customer told her that he's looking forward to patronizing her once she loses a lot of weight.", type: "cash", effect: 0})>>
+		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he loses a lot of weight.", type: "cash", effect: 0})>>
 	<<elseif ($slaves[$i].weight > 30)>>
-		<<set _vignettes.push({text: "a potential customer told her that he's looking forward to patronizing her once she loses some weight.", type: "cash", effect: 0})>>
+		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he loses some weight.", type: "cash", effect: 0})>>
 	<<elseif ($slaves[$i].weight <= -30)>>
-		<<set _vignettes.push({text: "a potential customer told her that he's looking forward to patronizing her once she gains some weight.", type: "cash", effect: 0})>>
+		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he gains some weight.", type: "cash", effect: 0})>>
 	<<elseif ($slaves[$i].weight < -95)>>
-		<<set _vignettes.push({text: "a potential customer told her that he's looking forward to patronizing her once she gains a lot of weight.", type: "cash", effect: 0})>>
+		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he gains a lot of weight.", type: "cash", effect: 0})>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].drugs == "testicle enhancement")>>
-	<<set _vignettes.push({text: "she took it in public, with her copious ejaculation getting her another customer right away,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he took it in public, with $his copious ejaculation getting $him another customer right away,", type: "cash", effect: 1})>>
 <<elseif ($slaves[$i].drugs == "hyper testicle enhancement")>>
-	<<set _vignettes.push({text: "she bloated a female customer's belly with her copious ejaculate, leading her to say she is looking forward to come back and get filled again,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he bloated a female customer's belly with $his copious ejaculate, leading $him to say $he is looking forward to come back and get filled again,", type: "rep", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].aphrodisiacs > 1) || ($slaves[$i].inflationType == "aphrodisiac")>>
-	<<set _vignettes.push({text: "her piteous begging for sex due to her extreme aphrodisiac dosage turned a potential customer off,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$his piteous begging for sex due to $his extreme aphrodisiac dosage turned a potential customer off,", type: "cash", effect: -1})>>
 <</if>>
 <<if ($slaves[$i].inflationType == "aphrodisiac")>>
-	<<set _vignettes.push({text: "her piteous begging for sex coupled with her bloated belly pleased a customer who loves desperate girls,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "her piteous begging for sex coupled with her bloated belly horrified a customer who didn't realize how low a girl could stoop,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$his piteous begging for sex coupled with $his bloated belly pleased a customer who loves desperate girls,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$his piteous begging for sex coupled with $his bloated belly horrified a customer who didn't realize how low a girl could stoop,", type: "rep", effect: -1})>>
 <</if>>
 <<if ($slaves[$i].addict > 50)>>
-	<<set _vignettes.push({text: "she zoned out badly due to a low point between aphrodisiac doses, disappointing a customer,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he zoned out badly due to a low point between aphrodisiac doses, disappointing a customer,", type: "rep", effect: -1})>>
 <</if>>
 <<if ($slaves[$i].bellyPreg >= 10000) || ($slaves[$i].bellyImplant >= 10000)>>
-	<<set _vignettes.push({text: "she earned repeat business from a customer who likes to do nothing more than cuddle with her swollen belly,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "a night with guy who likes rough, hard sex with heavily pregnant girls took its toll on her", type: "health", effect: -1})>>
+	<<set _vignettes.push({text: "$he earned repeat business from a customer who likes to do nothing more than cuddle with $his swollen belly,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a night with guy who likes rough, hard sex with heavily pregnant girls took its toll on $him", type: "health", effect: -1})>>
 <</if>>
 <<if ($slaves[$i].bellyFluid >= 5000)>>
-	<<set _vignettes.push({text: "she earned repeat business from a customer who loved the way her belly moved as he fucked her,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "she disgusted a customer when his forceful fucking caused her to release her contained $slaves[$i].inflationType all over him,", type: "rep", effect: -2})>>
+	<<set _vignettes.push({text: "$he earned repeat business from a customer who loved the way $his belly moved as he fucked $him,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he disgusted a customer when his forceful fucking caused $him to release $his contained $slaves[$i].inflationType all over him,", type: "rep", effect: -2})>>
 <</if>>
 <<if ($slaves[$i].hormoneBalance >= 100) && !canAchieveErection($slaves[$i])>>
 	<<if ($slaves[$i].dick > 0)>>
-		<<set _vignettes.push({text: "she disappointed a customer who was sure she could get $slaves[$i].slaveName's cock erect,", type: "rep", effect: -1})>>
-		<<set _vignettes.push({text: "she earned repeat business from a customer who seems unthreatened by her soft dick,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he disappointed a customer who was sure $he could get $slaves[$i].slaveName's cock erect,", type: "rep", effect: -1})>>
+		<<set _vignettes.push({text: "$he earned repeat business from a customer who seems unthreatened by $his soft dick,", type: "cash", effect: 1})>>
 	<</if>>
 <<elseif ($slaves[$i].hormoneBalance <= -100)>>
 	<<if ($slaves[$i].dick == 0)>>
-		<<set _vignettes.push({text: "she earned repeat business from a female customer who adores the masculinity produced by $slaves[$i].slaveName's hormone regime,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he earned repeat business from a female customer who adores the masculinity produced by $slaves[$i].slaveName's hormone regime,", type: "cash", effect: 1})>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].dick > 0) && canPenetrate($slaves[$i])>>
-	<<set _vignettes.push({text: "she earned repeat business from a customer who likes to see his wife get fucked by a dickgirl whore,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he earned repeat business from a customer who likes to see his wife get fucked by a dickgirl whore,", type: "cash", effect: 1})>>
 	<<if ($slaves[$i].dick > 3)>>
-		<<set _vignettes.push({text: "she earned repeat business from a female customer who likes big stiff cocks, and cannot lie,", type: "cash", effect: 1})>>
-		<<set _vignettes.push({text: "she irritated a male customer who brought his girlfriend with him by accidentally showing him up,", type: "rep", effect: -1})>>
+		<<set _vignettes.push({text: "$he earned repeat business from a female customer who likes big stiff cocks, and cannot lie,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he irritated a male customer who brought his girlfriend with him by accidentally showing him up,", type: "rep", effect: -1})>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].balls > 3)>>
-	<<set _vignettes.push({text: "she loses a customer who wants her to look like a natural girl, since her balls are too big to be hidden,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he loses a customer who wants $him to look like a natural girl, since $his balls are too big to be hidden,", type: "cash", effect: -1})>>
 <</if>>
 <<if canDoVaginal($slaves[$i])>>
 	<<if ($slaves[$i].vagina == 1)>>
-		<<set _vignettes.push({text: "she got extra business from a customer who really likes her, and wants to fuck her pussy as much as possible while it's still tight,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he got extra business from a customer who really likes $him, and wants to fuck $his pussy as much as possible while it's still tight,", type: "cash", effect: 1})>>
 	<<elseif ($slaves[$i].vagina > 2)>>
-		<<set _vignettes.push({text: "she disappointed a customer whose cock is just too small for her big cunt,", type: "rep", effect: -1})>>
+		<<set _vignettes.push({text: "$he disappointed a customer whose cock is just too small for $his big cunt,", type: "rep", effect: -1})>>
 		<<if ($slaves[$i].behavioralQuirk == "cutting") && ($slaves[$i].intelligence >= 2)>>
-			<<set _vignettes.push({text: "she helped a customer discover a new fetish by making cutting remarks when his cock was too small for her big cunt,", type: "rep", effect: 1})>>
+			<<set _vignettes.push({text: "$he helped a customer discover a new fetish by making cutting remarks when his cock was too small for $his big cunt,", type: "rep", effect: 1})>>
 		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
-			<<set _vignettes.push({text: "she irritated a male customer with her complaints that he was too small to please her,", type: "rep", effect: -2})>>
+			<<set _vignettes.push({text: "$he irritated a male customer with $his complaints that he was too small to please $him,", type: "rep", effect: -2})>>
 		<</if>>
 	<</if>>
 <</if>>
 <<if canDoAnal($slaves[$i])>>
 	<<if ($slaves[$i].anus == 1)>>
-		<<set _vignettes.push({text: "she got extra business from a customer who really likes her butthole, and wants to fuck it as much as possible while it's still tight,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he got extra business from a customer who really likes $his butthole, and wants to fuck it as much as possible while it's still tight,", type: "cash", effect: 1})>>
 	<<elseif ($slaves[$i].anus > 2)>>
-		<<set _vignettes.push({text: "she disappointed a customer whose cock is just too small for her loose butthole,", type: "rep", effect: -1})>>
+		<<set _vignettes.push({text: "$he disappointed a customer whose cock is just too small for $his loose butthole,", type: "rep", effect: -1})>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].face > 40)>>
-	<<set _vignettes.push({text: "she lost a potential customer who was so intimidated by her great beauty that he decided to find a homelier whore,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he lost a potential customer who was so intimidated by $his great beauty that he decided to find a homelier whore,", type: "cash", effect: -1})>>
 <<elseif ($slaves[$i].face < -10)>>
-	<<set _vignettes.push({text: "she earned repeat business from a customer who lacks self-confidence, and is more comfortable with homely whores,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he earned repeat business from a customer who lacks self-confidence, and is more comfortable with homely whores,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].visualAge > 40)>>
-	<<set _vignettes.push({text: "she earned repeat business from a customer with serious mommy issues,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he earned repeat business from a customer with serious mommy issues,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].lips > 70)>>
-	<<set _vignettes.push({text: "she earned repeat business from a customer who likes to play with her lips nonsexually (don't ask),", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he earned repeat business from a customer who likes to play with $his lips nonsexually (don't ask),", type: "cash", effect: 1})>>
 <</if>>
 <<if !canTalk($slaves[$i])>>
-	<<set _vignettes.push({text: "she impressed a customer who didn't know how relaxing a girl who can't talk could be,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he impressed a customer who didn't know how relaxing a girl who can't talk could be,", type: "rep", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].muscles > 95)>>
-	<<set _vignettes.push({text: "she impressed a customer who was so eager to share workout plans with her that he almost forgot to have sex with her,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "she gained repeat business from a female customer who likes a girl who can bench-press her before and after they fuck,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "she disappointed a customer by accidentally revealing that she's considerably stronger than him,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he impressed a customer who was so eager to share workout plans with $him that he almost forgot to have sex with $him,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he gained repeat business from a female customer who likes a girl who can bench-press $him before and after they fuck,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he disappointed a customer by accidentally revealing that $he's considerably stronger than him,", type: "rep", effect: -1})>>
 <</if>>
 <<if ($slaves[$i].lactation > 0)>>
-	<<set _vignettes.push({text: "she was well compensated for providing fresh milk for the coffee served at a customer's business meeting", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "she served as a conveniently lactating whore near a trendy arcology coffeehouse,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he was well compensated for providing fresh milk for the coffee served at a customer's business meeting", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he served as a conveniently lactating whore near a trendy arcology coffeehouse,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].amp == 1)>>
-	<<set _vignettes.push({text: "she disappointed a customer who thought he'd enjoy fucking an amputee, but found it revolting,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he disappointed a customer who thought he'd enjoy fucking an amputee, but found it revolting,", type: "rep", effect: -1})>>
 <<elseif ($slaves[$i].amp == -1)>>
-	<<set _vignettes.push({text: "a strange customer was excited by the sight of her prosthetic limbs,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was disgusted at the thought of her basic prosthetic limbs,", type: "rep", effect: -1})>>
-	<<set _vignettes.push({text: "a customer was put off by her prosthetic limbs,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "a strange customer was excited by the sight of $his prosthetic limbs,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "a customer was disgusted at the thought of $his basic prosthetic limbs,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "a customer was put off by $his prosthetic limbs,", type: "rep", effect: -1})>>
 <<elseif ($slaves[$i].amp == -2)>>
-	<<set _vignettes.push({text: "a customer was excited by her vibrating fingertips,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "a customer was excited by $his vibrating fingertips,", type: "rep", effect: 1})>>
 	<<set _vignettes.push({text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,", type: "cash", effect: 0})>>
-	<<set _vignettes.push({text: "a customer was put off by her crude artificial limbs,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "a customer was put off by $his crude artificial limbs,", type: "rep", effect: -1})>>
 <<elseif ($slaves[$i].amp == -3)>>
-	<<set _vignettes.push({text: "a strange customer was excited by the sight of her artificial limbs,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "a strange customer was excited by the sight of $his artificial limbs,", type: "rep", effect: 1})>>
 	<<set _vignettes.push({text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,", type: "cash", effect: 0})>>
-	<<set _vignettes.push({text: "a customer was put off by the sight of her prosthetic limbs,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "a customer was put off by the sight of $his prosthetic limbs,", type: "rep", effect: -1})>>
 <<elseif ($slaves[$i].amp == -4)>>
-	<<set _vignettes.push({text: "a customer was excited by the thought of having sex with a slave with p-limbs, but was scared off by her combat p-limbs,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a customer was excited by the thought of having sex with a slave with p-limbs, but was scared off by $his combat p-limbs,", type: "cash", effect: -1})>>
 	<<set _vignettes.push({text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,", type: "cash", effect: 0})>>
-	<<set _vignettes.push({text: "a customer was greatly intimidated by her combat p-limbs,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a customer was greatly intimidated by $his combat p-limbs,", type: "cash", effect: -1})>>
 <<elseif ($slaves[$i].amp == -5)>>
-	<<set _vignettes.push({text: "a customer was fascinated by her cybernetic limbs, and spent almost as much time examining them as he did having sex with her,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a customer was fascinated by $his cybernetic limbs, and spent almost as much time examining them as he did having sex with $him,", type: "cash", effect: 1})>>
 	<<set _vignettes.push({text: "a customer was excited by the thought of having sex with a cybernetically enhanced slave,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was greatly intimidated by the sight of her cybernetic limbs and was frightened away,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a customer was greatly intimidated by the sight of $his cybernetic limbs and was frightened away,", type: "cash", effect: -1})>>
 <<else>>
 	<<if ($slaves[$i].heels == 1)>>
 	<<if ($slaves[$i].shoes != "heels") && ($slaves[$i].shoes != "pumps") && ($slaves[$i].shoes != "extreme heels") && ($slaves[$i].shoes != "boots")>>
-		<<set _vignettes.push({text: "she enticed a new customer who had never really considered buttsex before he saw her crawling along with her asshole vulnerable,", type: "cash", effect: 1})>>
+		<<set _vignettes.push({text: "$he enticed a new customer who had never really considered buttsex before he saw $him crawling along with $his asshole vulnerable,", type: "cash", effect: 1})>>
 	<</if>>
 	<</if>>
 	<<if ($slaves[$i].boobs > 1500)>>
 	<<if ($slaves[$i].boobsImplant == 0)>>
-	<<set _vignettes.push({text: "a young customer hired her to jump rope so he could watch her massive natural breasts flop around,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a young customer hired $him to jump rope so he could watch $his massive natural breasts flop around,", type: "cash", effect: 1})>>
 	<</if>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].vaginalAccessory == "chastity belt")>>
-	<<set _vignettes.push({text: "a wavering customer who was disappointed that her pussy is unavailable decided to try her ass instead,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a wavering customer who was disappointed that $his pussy is unavailable decided to try $his ass instead,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].fetish == "mindbroken")>>
-	<<set _vignettes.push({text: "a customer really enjoyed being able to treat her however he liked without eliciting a reaction,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "a customer really enjoyed being able to treat $him however he liked without eliciting a reaction,", type: "cash", effect: 1})>>
 <</if>>
 <<if ($slaves[$i].intelligence <= -2)>>
-	<<set _vignettes.push({text: "a customer managed to trick her into fucking him without payment,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "a customer managed to trick $him into fucking him without payment,", type: "cash", effect: -1})>>
 <</if>>
 <<if ($slaves[$i].face > 10)>>
 <</if>>
 <<if ($slaves[$i].face > 10)>>
 	<<if ($slaves[$i].dick > 0)>>
 	<<if ($slaves[$i].fetish == "buttslut")>>
-		<<set _vignettes.push({text: "a customer was surprised by her penis, so she hid it and enjoyed the buttsex without touching it,", type: "rep", effect: 1})>>
+		<<set _vignettes.push({text: "a customer was surprised by $his penis, so $he hid it and enjoyed the buttsex without touching it,", type: "rep", effect: 1})>>
 	<<elseif ($slaves[$i].analSkill >= 100)>>
-		<<set _vignettes.push({text: "a customer was surprised by her penis, so she hid it and skillfully pretended to be a real girl,", type: "rep", effect: 1})>>
+		<<set _vignettes.push({text: "a customer was surprised by $his penis, so $he hid it and skillfully pretended to be a real girl,", type: "rep", effect: 1})>>
 	<<elseif ($slaves[$i].fetish == "buttslut")>>
-		<<set _vignettes.push({text: "a customer was surprised by her penis, so she hid it, but could barely tolerate anal without touching it", type: "rep", effect: -1})>>
+		<<set _vignettes.push({text: "a customer was surprised by $his penis, so $he hid it, but could barely tolerate anal without touching it", type: "rep", effect: -1})>>
 	<</if>>
 	<</if>>
 	<<if canDoAnal($slaves[$i])>>
 		<<if ($slaves[$i].analSkill < 100)>>
 			<<if ($slaves[$i].anus > 2)>>
-				<<set _vignettes.push({text: "a pair of customers enticed by her beauty but disappointed by her loose butthole doubled up on her poor anus without mercy,", type: "health", effect: -1})>>
+				<<set _vignettes.push({text: "a pair of customers enticed by $his beauty but disappointed by $his loose butthole doubled up on $his poor anus without mercy,", type: "health", effect: -1})>>
 			<</if>>
 		<</if>>
 	<</if>>
@@ -1589,146 +1591,146 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 <<if ($slaves[$i].fetishKnown == 1)>>
 <<if ($slaves[$i].fetishStrength > 95)>>
 	<<if ($slaves[$i].fetish == "buttslut") || ($slaves[$i].fetish == "dom")>>
-	<<set _vignettes.push({text: "she advertised herself by forcing a slave in the stocks to eat her ass, drumming up business,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he advertised $himself by forcing a slave in the stocks to eat $his ass, drumming up business,", type: "cash", effect: 1})>>
 	<<elseif ($slaves[$i].fetish == "masochist")>>
-	<<set _vignettes.push({text: "she cooperated with a citizen who wanted to whip her tits black and blue", type: "health", effect: -1})>>
+	<<set _vignettes.push({text: "$he cooperated with a citizen who wanted to whip $his tits black and blue", type: "health", effect: -1})>>
 	<</if>>
 <</if>>
 <</if>>
 <<if ($slaves[$i].health < 20)>>
-	<<set _vignettes.push({text: "she attracted the attention of a slaveowner alarmed by her poor health, and thought he seemed kind,", type: "devotion", effect: -1})>>
+	<<set _vignettes.push({text: "$he attracted the attention of a slaveowner alarmed by $his poor health, and thought he seemed kind,", type: "devotion", effect: -1})>>
 <</if>>
 <<if ($slaves[$i].vaginalSkill >= 100)>>
-	<<set _vignettes.push({text: "she was hired to apply her skills to a customer's virgin son,", type: "devotion", effect: 0})>>
+	<<set _vignettes.push({text: "$he was hired to apply $his skills to a customer's virgin son,", type: "devotion", effect: 0})>>
 <</if>>
 <<if canDoAnal($slaves[$i])>>
 	<<if ($slaves[$i].analSkill < 100)>>
 		<<if ($slaves[$i].anus < 2)>>
-			<<set _vignettes.push({text: "a guy with a huge cock paid for the right to fuck her in her tight ass all night,", type: "health", effect: -1})>>
+			<<set _vignettes.push({text: "a guy with a huge cock paid for the right to fuck $him in $his tight ass all night,", type: "health", effect: -1})>>
 		<</if>>
 	<</if>>
 <</if>>
 <<if ($slaves[$i].relationship <= -2)>>
 <<if ($slaves[$i].intelligence < 1)>>
-	<<set _vignettes.push({text: "she accidentally mentions how much she loves you during intercourse with a customer who doesn't like to share,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he accidentally mentions how much $he loves you during intercourse with a customer who doesn't like to share,", type: "rep", effect: -1})>>
 <</if>>
 <</if>>
 <<if ($slaves[$i].prestige > 0)>>
-	<<set _vignettes.push({text: "a college fraternity visiting the arcology for rush week hired her for a gangbang,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "a college fraternity visiting the arcology for rush week hired $him for a gangbang,", type: "cash", effect: 3})>>
 <</if>>
 
 <<if $arcologies[0].FSSupremacist != "unset">>
 	<<if ($slaves[$i].race == $arcologies[0].FSSupremacistRace)>>
-	<<set _vignettes.push({text: "she lost a customer who couldn't bear to see a beautiful $arcologies[0].FSSupremacistRace be a whore,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he lost a customer who couldn't bear to see a beautiful $arcologies[0].FSSupremacistRace be a whore,", type: "cash", effect: -1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSSubjugationist != "unset">>
 	<<if ($slaves[$i].race == $arcologies[0].FSSubjugationistRace)>>
-	<<set _vignettes.push({text: "she had a bad time in general, since most of her customers didn't care about a $arcologies[0].FSSubjugationistRace prostitute's health or well-being,", type: "health", effect: -1})>>
+	<<set _vignettes.push({text: "$he had a bad time in general, since most of $his customers didn't care about a $arcologies[0].FSSubjugationistRace prostitute's health or well-being,", type: "health", effect: -1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSYouthPreferentialist != "unset">>
 	<<if ($slaves[$i].visualAge > 35)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who wants to keep his MILF fetish in the closet,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his MILF fetish in the closet,", type: "cash", effect: 1})>>
 	<</if>>
 <<elseif $arcologies[0].FSMaturityPreferentialist != "unset">>
 	<<if ($slaves[$i].visualAge <= 20)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who wants to keep his fetish for young girls in the closet,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his fetish for young girls in the closet,", type: "cash", effect: 1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSGenderRadicalist != "unset">>
 	<<if ($slaves[$i].dick > 0)>>
 	<<if ($slaves[$i].dick < 3)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who is coming to terms with Gender Radicalism, and is unthreatened by her little penis,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who is coming to terms with Gender Radicalism, and is unthreatened by $his little penis,", type: "cash", effect: 1})>>
 	<</if>>
 	<</if>>
 <<elseif $arcologies[0].FSGenderFundamentalist != "unset">>
 	<<if ($slaves[$i].visualAge > 25)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who thinks she resembles his ex-wife, who would never let him fuck her butt,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who thinks $he resembles his ex-wife, who would never let him fuck her butt,", type: "cash", effect: 1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSRepopulationFocus != "unset">>
 	<<if ($slaves[$i].pregType > 1) && ($slaves[$i].pregKnown > 1) && ($slaves[$i].belly >= 10000)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who loves fucking girls with wombs filled by more than a single child,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who loves fucking girls with wombs filled by more than a single child,", type: "cash", effect: 1})>>
 	<</if>>
 <<elseif $arcologies[0].FSRestart != "unset">>
 	<<if canGetPregnant($slaves[$i])>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who misses the risk of getting a girl pregnant,", type: "cash", effect: 3})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who misses the risk of getting a girl pregnant,", type: "cash", effect: 3})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSPaternalist != "unset">>
 	<<if ($slaves[$i].intelligence > 1)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who likes to chat with intelligent prostitutes as they fuck her,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who likes to chat with intelligent prostitutes as they fuck $him,", type: "cash", effect: 1})>>
 	<</if>>
 <<elseif $arcologies[0].FSDegradationist != "unset">>
 	<<if canTalk($slaves[$i])>>
 	<<if ($slaves[$i].voice > 2)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who prefers girls with high-pitched screams,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who prefers girls with high-pitched screams,", type: "cash", effect: 1})>>
 	<</if>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSBodyPurist != "unset">>
 	<<if ($slaves[$i].boobsImplant > 0)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who wants to keep his fetish for breast implants in the closet,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his fetish for breast implants in the closet,", type: "cash", effect: 1})>>
 	<</if>>
 <<elseif $arcologies[0].FSTransformationFetishist != "unset">>
 	<<if ($slaves[$i].boobsImplant == 0)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who wants to keep his fetish for natural breasts in the closet,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his fetish for natural breasts in the closet,", type: "cash", effect: 1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
 	<<if canTalk($slaves[$i])>>
 	<<if ($slaves[$i].voice > 2)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who loves her high-pitched squeals of pleasure,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who loves $his high-pitched squeals of pleasure,", type: "cash", effect: 1})>>
 	<</if>>
 	<</if>>
 	<<if ($slaves[$i].boobs > 800)>>
-	<<set _vignettes.push({text: "she was publicly mocked as an ugly fat cow with dangling udders,", type: "rep", effect: -1})>>
+	<<set _vignettes.push({text: "$he was publicly mocked as an ugly fat cow with dangling udders,", type: "rep", effect: -1})>>
 	<</if>>
 <<elseif $arcologies[0].FSAssetExpansionist != "unset">>
 	<<if ($slaves[$i].boobs < 300)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who wants to keep his fetish for flat chested girls in the closet,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his fetish for flat chested girls in the closet,", type: "cash", effect: 1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSPastoralist != "unset">>
 	<<if ($slaves[$i].lactation == 0)>>
-		<<set _vignettes.push({text: "she lost a customer who could not understand why nothing was coming out of her nipples when he sucked on them,", type: "cash", effect: -1})>>
+		<<set _vignettes.push({text: "$he lost a customer who could not understand why nothing was coming out of $his nipples when he sucked on them,", type: "cash", effect: -1})>>
 	<</if>>
 	<<if $slaves[$i].nipples == "fuckable">>
-		<<set _vignettes.push({text: "she lost a customer who refused she could possibly be a proper cow with nipples like hers,", type: "cash", effect: -1})>>
+		<<set _vignettes.push({text: "$he lost a customer who refused $he could possibly be a proper cow with nipples like hers,", type: "cash", effect: -1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSPhysicalIdealist != "unset">>
 	<<if ($slaves[$i].muscles <= 95)>>
-	<<set _vignettes.push({text: "she lost a customer who could barely believe that she wasn't capable of holding herself in a handstand,", type: "cash", effect: -1})>>
+	<<set _vignettes.push({text: "$he lost a customer who could barely believe that $he wasn't capable of holding $himself in a handstand,", type: "cash", effect: -1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSChattelReligionist != "unset">>
 	<<if ($slaves[$i].behavioralFlaw == "devout")>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who desperately wants his cock to be the one that converts her,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who desperately wants his cock to be the one that converts $him,", type: "cash", effect: 1})>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSRomanRevivalist != "unset">>
 	<<if ($slaves[$i].race == "white")>>
 	<<if ($slaves[$i].height >= 185)>>
-	<<set _vignettes.push({text: "she attracted a customer who thought her appearance worthy of a lusty northern barbarian,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he attracted a customer who thought $his appearance worthy of a lusty northern barbarian,", type: "cash", effect: 1})>>
 	<</if>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSAztecRevivalist != "unset">>
 	<<if ($slaves[$i].devotion > 75)>>
 	<<if ($slaves[$i].intelligence >= 2)>>
-	<<set _vignettes.push({text: "she indulged a citizen by following a fertility ritual completely,", type: "rep", effect: 1})>>
+	<<set _vignettes.push({text: "$he indulged a citizen by following a fertility ritual completely,", type: "rep", effect: 1})>>
 	<</if>>
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSEgyptianRevivalist != "unset">>
-	<<set _vignettes.push({text: "she got extra business from a group of citizens competing to get off with whores of each of the arcology's ethnic groups in the least time,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got extra business from a group of citizens competing to get off with whores of each of the arcology's ethnic groups in the least time,", type: "cash", effect: 1})>>
 <</if>>
 <<if $arcologies[0].FSEdoRevivalist != "unset">>
 	<<if ($slaves[$i].face > 40)>>
 	<<if ($slaves[$i].intelligence > 1)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent girl,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent girl,", type: "cash", effect: 1})>>
 	<</if>>
 	<</if>>
 <</if>>
@@ -1737,20 +1739,20 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 	<<if canTalk($slaves[$i])>>
 	<<if ($slaves[$i].voice > 0)>>
 	<<if ($slaves[$i].accent < 2)>>
-	<<set _vignettes.push({text: "she got repeat business from a customer who prefers prostitutes who can tell lovely stories,", type: "cash", effect: 1})>>
+	<<set _vignettes.push({text: "$he got repeat business from a customer who prefers prostitutes who can tell lovely stories,", type: "cash", effect: 1})>>
 	<</if>>
 	<</if>>
 	<</if>>
 	<</if>>
 <</if>>
 
-<<set _vignettes.push({text: "one of the companies with an office in your arcology retained her for a team-building bukkake party for its employees,", type: "rep", effect: 1})>>
-<<set _vignettes.push({text: "a man dragged his crying wife along so she could watch him fuck a whore,", type: "rep", effect: 0})>>
+<<set _vignettes.push({text: "one of the companies with an office in your arcology retained $him for a team-building bukkake party for its employees,", type: "rep", effect: 1})>>
+<<set _vignettes.push({text: "a man dragged his crying wife along so $he could watch him fuck a whore,", type: "rep", effect: 0})>>
 <<set _vignettes.push({text: "a woman dragged her angry husband along so he could watch her get eaten out by a whore,", type: "rep", effect: 0})>>
-<<set _vignettes.push({text: "she went to sleep after being sold for sex all day, and had a dream about you loving her,", type: "devotion", effect: 1})>>
-<<set _vignettes.push({text: "she went to sleep after being sold for sex all day, and had a dream about you letting a customer hurt her,", type: "devotion", effect: -1})>>
-<<set _vignettes.push({text: "she went to sleep after being sold for sex all day, and had a dream about you protecting her from a mean customer,", type: "trust", effect: 1})>>
-<<set _vignettes.push({text: "she went to sleep after being sold for sex all day, and had a dream about you selling her for good,", type: "trust", effect: -1})>>
+<<set _vignettes.push({text: "$he went to sleep after being sold for sex all day, and had a dream about you loving $him,", type: "devotion", effect: 1})>>
+<<set _vignettes.push({text: "$he went to sleep after being sold for sex all day, and had a dream about you letting a customer hurt $him,", type: "devotion", effect: -1})>>
+<<set _vignettes.push({text: "$he went to sleep after being sold for sex all day, and had a dream about you protecting $him from a mean customer,", type: "trust", effect: 1})>>
+<<set _vignettes.push({text: "$he went to sleep after being sold for sex all day, and had a dream about you selling $him for good,", type: "trust", effect: -1})>>
 
 <<set _vignette = _vignettes.random()>>
 __This week__ _vignette.text
@@ -1767,23 +1769,23 @@ __This week__ _vignette.text
 <<elseif (_vignette.type == "devotion")>>
 	<<if (_vignette.effect > 0)>>
 		<<if $slaves[$i].devotion > 50>>
-		@@.hotpink;increasing her devotion to you.@@
+		@@.hotpink;increasing $his devotion to you.@@
 		<<elseif $slaves[$i].devotion >= -20>>
-		@@.hotpink;increasing her acceptance of you.@@
+		@@.hotpink;increasing $his acceptance of you.@@
 		<<elseif $slaves[$i].devotion > -10>>
-		@@.hotpink;reducing her dislike of you.@@
+		@@.hotpink;reducing $his dislike of you.@@
 		<<else>>
-		@@.hotpink;reducing her hatred of you.@@
+		@@.hotpink;reducing $his hatred of you.@@
 		<</if>>
 	<<elseif (_vignette.effect < 0)>>
 		<<if $slaves[$i].devotion > 50>>
-		@@.mediumorchid;reducing her devotion to you.@@
+		@@.mediumorchid;reducing $his devotion to you.@@
 		<<elseif $slaves[$i].devotion >= -20>>
-		@@.mediumorchid;reducing her acceptance of you.@@
+		@@.mediumorchid;reducing $his acceptance of you.@@
 		<<elseif $slaves[$i].devotion > -10>>
-		@@.mediumorchid;increasing her dislike of you.@@
+		@@.mediumorchid;increasing $his dislike of you.@@
 		<<else>>
-		@@.mediumorchid;increasing her hatred of you.@@
+		@@.mediumorchid;increasing $his hatred of you.@@
 		<</if>>
 	<<else>>
 		an incident without lasting effect.
@@ -1792,19 +1794,19 @@ __This week__ _vignette.text
 <<elseif (_vignette.type == "trust")>>
 	<<if (_vignette.effect > 0)>>
 		<<if $slaves[$i].trust > 20>>
-		@@.mediumaquamarine;increasing her trust in you.@@
+		@@.mediumaquamarine;increasing $his trust in you.@@
 		<<elseif $slaves[$i].trust > -10>>
-		@@.mediumaquamarine;reducing her fear of you.@@
+		@@.mediumaquamarine;reducing $his fear of you.@@
 		<<else>>
-		@@.mediumaquamarine;reducing her terror of you.@@
+		@@.mediumaquamarine;reducing $his terror of you.@@
 		<</if>>
 	<<elseif (_vignette.effect < 0)>>
 		<<if $slaves[$i].trust > 20>>
-		@@.gold;reducing her trust in you.@@
+		@@.gold;reducing $his trust in you.@@
 		<<elseif $slaves[$i].trust > -20>>
-		@@.gold;increasing her fear of you.@@
+		@@.gold;increasing $his fear of you.@@
 		<<else>>
-		@@.gold;increasing her terror of you.@@
+		@@.gold;increasing $his terror of you.@@
 		<</if>>
 	<<else>>
 		an incident without lasting effect.
@@ -1812,9 +1814,9 @@ __This week__ _vignette.text
 	<<set $slaves[$i].trust += 1*_vignette.effect>>
 <<elseif (_vignette.type == "health")>>
 	<<if (_vignette.effect > 0)>>
-		@@.green;improving her health.@@
+		@@.green;improving $his health.@@
 	<<elseif (_vignette.effect < 0)>>
-		@@.red;affecting her health.@@
+		@@.red;affecting $his health.@@
 	<<else>>
 		an incident without lasting effect.
 	<</if>>
@@ -1834,11 +1836,11 @@ __This week__ _vignette.text
 <</if>> /* CLOSES VIGNETTES */
 
 <<if $slaves[$i].energy > 40 && $slaves[$i].energy < 95>>
-	Being used sexually all week @@.lime;increases her sex drive.@@
+	Being used sexually all week @@.lime;increases $his sex drive.@@
 	<<set $slaves[$i].energy++>>
 <</if>>
 
 <<if $slaves[$i].cervixImplant == 1 && _cervixPump > 0 && canDoVaginal($slaves[$i])>>
-	She notices her @@.lime;belly has grown@@ from vaginal sex throughout week.
+	$He notices $his @@.lime;belly has grown@@ from vaginal sex throughout week.
 	<<set $slaves[$i].bellyImplant += _cervixPump*20>>
 <</if>>
diff --git a/src/uncategorized/saWorkAGloryHole.tw b/src/uncategorized/saWorkAGloryHole.tw
index c8df2bc5078..f6724c40d5a 100644
--- a/src/uncategorized/saWorkAGloryHole.tw
+++ b/src/uncategorized/saWorkAGloryHole.tw
@@ -1,5 +1,7 @@
 :: SA work a glory hole [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <!-- Statistics gathering -->
 <<set _incomeStats = getSlaveStatisticData($slaves[$i], $slaves[$i].assignment === Job.ARCADE ? $facility.arcade : undefined)>>
 
diff --git a/src/uncategorized/schoolroomReport.tw b/src/uncategorized/schoolroomReport.tw
index c4323975fd6..517af9c248a 100644
--- a/src/uncategorized/schoolroomReport.tw
+++ b/src/uncategorized/schoolroomReport.tw
@@ -1,5 +1,7 @@
 :: Schoolroom Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<SlaveSort $SchlRiIDs>>
 <<set _DL = $SchlRiIDs.length, $schoolroomSlaves = _DL, _SL = $slaves.length, _idleBonus = 0, _FLsFetish = 0>>
 
diff --git a/src/uncategorized/servantsQuartersReport.tw b/src/uncategorized/servantsQuartersReport.tw
index c82db200d59..daf1e2e7f71 100644
--- a/src/uncategorized/servantsQuartersReport.tw
+++ b/src/uncategorized/servantsQuartersReport.tw
@@ -1,5 +1,7 @@
 :: Servants' Quarters Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<SlaveSort $ServQiIDs>>
 <<set _DL = $ServQiIDs.length, $servantsQuartersSlaves = _DL, _SL = $slaves.length, _FLsFetish = 0, $stewardessBonus = 0>>
 
diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw
index c4d91e2d3f4..6d30bb1deed 100644
--- a/src/uncategorized/spaReport.tw
+++ b/src/uncategorized/spaReport.tw
@@ -1,5 +1,7 @@
 :: Spa Report [nobr]
 
+<<run SlavePronouns($slaves[$i])>>
+
 <<SlaveSort $SpaiIDs>>
 <<set _DL = $SpaiIDs.length, $spaSlaves = _DL, _SL = $slaves.length, _bonusToggle = 0, _healthBonus = 0, _idleBonus = 0, _restedSlaves = 0, _trustBonus = 0>>
 
diff --git a/src/uncategorized/useGuard.tw b/src/uncategorized/useGuard.tw
index ca41245dd98..350c56961f9 100644
--- a/src/uncategorized/useGuard.tw
+++ b/src/uncategorized/useGuard.tw
@@ -132,4 +132,3 @@ $slaves[$i].slaveName is standing behind your left shoulder, guarding your perso
 <</switch>>
 
 //
-
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index e09e96ec500..081c9e0172e 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -661,38 +661,7 @@
  $args[1]: Amount of increase.
 %/
 <<widget "FaceIncrease">>
-<<<<<<< HEAD
-
-<<run SlavePronouns($args[0])>>
-<<if $args[0].face <= -95>>
-	@@.green;$His face is no longer horrifying,@@ and is now merely ugly.
-<<elseif $args[0].face <= -40>>
-	<<if $args[0].face+$args[1] > -40>>
-		@@.green;$His face is no longer ugly,@@ and is now merely unattractive.
-	<</if>>
-<<elseif $args[0].face <= -10>>
-	<<if $args[0].face+$args[1] > -10>>
-		@@.green;$His face is no longer unattractive,@@ and is now somewhat tolerable.
-	<</if>>
-<<elseif $args[0].face <= 10>>
-	<<if $args[0].face+$args[1] > 10>>
-		@@.green;$His face is now decently attractive,@@ rather than merely tolerable.
-	<</if>>
-<<elseif $args[0].face <= 40>>
-	<<if $args[0].face+$args[1] > 40>>
-		@@.green;$His face is now quite beautiful,@@ rather than merely pretty.
-	<</if>>
-<<elseif $args[0].face <= 95>>
-	<<if $args[0].face+$args[1] > 95>>
-		@@.green;$His face is now perfect.@@ It's difficult to imagine how it could be any more beautiful.
-	<</if>>
-<</if>>
-<<set $args[0].face = Math.clamp($args[0].face+$args[1],-100,100)>>
-<<if $args[0].face > 95>><<set $args[0].face = 100>><</if>>
-
-=======
 	<<= faceIncrease($args[0], $args[1]) >>
->>>>>>> 6e45118c01af6ccf28b6f1acf0dfc1e26ee960ac
 <</widget>>
 
 /%
-- 
GitLab


From 0ae4ab72e7b25c2c879de5e624e7bd739253e703 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 25 Jul 2018 23:50:38 -0400
Subject: [PATCH 120/189] breeding mark only matters when appropriate

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |  5 ++
 devNotes/twine JS.txt                        | 56 ++++++++++----------
 src/js/DefaultRules.tw                       | 52 +++++++++---------
 src/js/assayJS.tw                            |  2 +-
 src/js/fresult.tw                            |  2 +-
 src/npc/descriptions/fFuckdollWidgets.tw     |  4 +-
 src/npc/fPCImpreg.tw                         |  2 +-
 src/npc/fRelation.tw                         |  2 +-
 src/npc/fSlaveImpregConsummate.tw            |  2 +-
 src/pregmod/csec.tw                          |  4 +-
 src/pregmod/fSlaveSelfImpreg.tw              |  2 +-
 src/pregmod/huskSlaveSwapWorkaround.tw       |  2 +-
 src/pregmod/newChildIntro.tw                 |  8 +--
 src/pregmod/widgets/seBirthWidgets.tw        |  6 +--
 src/uncategorized/bodyModification.tw        |  5 ++
 src/uncategorized/futureSociety.tw           |  2 +-
 src/uncategorized/matchmaking.tw             |  2 +-
 src/uncategorized/newSlaveIntro.tw           |  2 +-
 src/uncategorized/reNickname.tw              |  2 +-
 src/uncategorized/remoteSurgery.tw           | 26 ++++-----
 src/uncategorized/saHormoneEffects.tw        |  4 +-
 src/uncategorized/saLongTermEffects.tw       | 12 ++---
 src/uncategorized/saPleaseYou.tw             |  4 +-
 src/uncategorized/saRecruitGirls.tw          |  8 +--
 src/uncategorized/seWedding.tw               |  4 +-
 src/uncategorized/sellSlave.tw               |  7 ++-
 src/uncategorized/slaveInteract.tw           | 36 ++++++-------
 src/uncategorized/slaveSold.tw               |  2 +-
 src/uncategorized/slaveSummary.tw            | 34 ++++++------
 src/uncategorized/wardrobeUse.tw             | 14 ++---
 src/utility/assayWidgets.tw                  | 15 +++++-
 src/utility/birthWidgets.tw                  |  2 +-
 src/utility/descriptionWidgetsFlesh.tw       | 33 ++++++++----
 src/utility/miscWidgets.tw                   | 10 ++--
 34 files changed, 203 insertions(+), 170 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index b6b4cd3f7b9..23b0f2a67d6 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -4,6 +4,11 @@
 
 7/25/2018
 
+	5
+	-fixes
+	-marked breeders are now only special in Eugenics societies that have embraced them
+	-tweaked beauty prestige multipliers
+
 	4
 	-more porn balance tweaks
 	-fixes and edits
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 3f24d236b3f..b1f2e1887b0 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -8416,7 +8416,7 @@ window.DegradingName = function DegradingName(slave) {
 		if (slave.labia > 1) {
 			suffixes.push("Curtains", "Flower", "Lips");
 		}
-		if (slave.breedingMark === 1) {
+		if (slave.breedingMark === 1 && V.propOutcome === 1) {
 			suffixes.push("Breeder", "Oven", "Womb");
 		}
 		if (slave.butt > 5) {
@@ -10445,7 +10445,7 @@ window.FResult = (function() {
 			if (slave.preg > 10) V.FResult += 2;
 			else V.FResult -= 2;
 		} else if (V.arcologies[0].FSRestart > 20) {
-			if (slave.bellyPreg >= 500 && slave.breedingMark === 1)
+			if (slave.bellyPreg >= 500 && slave.breedingMark === 1 && V.propResult === 1)
 				V.FResult += 1;
 			else if (slave.preg > 10)
 				V.FResult -= 10;
@@ -11843,7 +11843,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "be confined in the arcade":
-				if ((V.arcadeSlaves < V.arcade && slave.indentureRestrictions <= 0 && slave.breedingMark != 1))
+				if ((V.arcadeSlaves < V.arcade && slave.indentureRestrictions <= 0 && (slave.breedingMark != 1 || V.propOutcome === 0)))
 					break;
 				else {
 					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
@@ -11879,7 +11879,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "work in the brothel":
-				if ((V.brothelSlaves < V.brothel && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && slave.breedingMark != 1))
+				if ((V.brothelSlaves < V.brothel && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && (slave.breedingMark != 1 || V.propOutcome === 0)))
 					break;
 				else {
 					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
@@ -11888,7 +11888,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "serve in the club":
-				if ((V.clubSlaves < V.club && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && slave.breedingMark != 1))
+				if ((V.clubSlaves < V.club && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && (slave.breedingMark != 1 || V.propOutcome === 0)))
 					break;
 				else {
 					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
@@ -11900,7 +11900,7 @@ window.DefaultRules = (function() {
 				if ((V.dairy > V.dairySlaves+V.bioreactorsXY+V.bioreactorsXX+V.bioreactorsHerm+V.bioreactorsBarren)) {
 					if ((slave.indentureRestrictions > 0) && (V.dairyRestraintsSetting > 1))
 						break;
-					else if (((slave.indentureRestrictions > 1) && (V.dairyRestraintsSetting > 0)) || (slave.breedingMark == 1 && V.dairyRestriantsSettings > 0) || ((V.dairyPregSetting > 0) && ((slave.bellyImplant != -1) || (slave.broodmother !== 0))))
+					else if (((slave.indentureRestrictions > 1) && (V.dairyRestraintsSetting > 0)) || (slave.breedingMark == 1 && V.propOutcome == 1 && V.dairyRestriantsSettings > 0) || ((V.dairyPregSetting > 0) && ((slave.bellyImplant != -1) || (slave.broodmother !== 0))))
 						break;
 					else {
 						if ((slave.lactation > 0 || ((V.dairySlimMaintainUpgrade === 0 || V.dairySlimMaintain === 0) && (slave.boobs > 300 || slave.dick === 0 || V.dairyImplantsSetting == 1) && V.dairyImplantsSetting != 2)) || (slave.balls > 0)) {
@@ -11989,7 +11989,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "work a glory hole":
-				if (slave.indentureRestrictions <= 0 && slave.breedingMark != 1)
+				if (slave.indentureRestrictions <= 0 && (slave.breedingMark != 1 || V.propOutcome === 0))
 					break;
 				else
 					delete rule.setAssignment;
@@ -11998,7 +11998,7 @@ window.DefaultRules = (function() {
 			case "whore":
 			case "serve the public":
 			case "stay confined":
-				if ((slave.fuckdoll === 0) && slave.breedingMark != 1)
+				if ((slave.fuckdoll === 0) && (slave.breedingMark != 1 || V.propOutcome === 0))
 					break;
 				else
 					delete rule.setAssignment;
@@ -12216,21 +12216,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length dildo for her pussy.`;
 							slave.vaginalAccessory = "dildo";
 						}
 						break;
 
 					case "long, large dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
 							slave.vaginalAccessory = "large dildo";
 						}
 						break;
 
 					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
 							slave.vaginalAccessory = "huge dildo";
 						} else {
@@ -12273,21 +12273,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length dildo for her pussy.`;
 							slave.vaginalAccessory = "dildo";
 						}
 						break;
 
 					case "long, large dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
 							slave.vaginalAccessory = "large dildo";
 						}
 						break;
 
 					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
 							slave.vaginalAccessory = "huge dildo";
 						} else {
@@ -12330,21 +12330,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length dildo for her pussy.`;
 							slave.vaginalAccessory = "dildo";
 						}
 						break;
 
 					case "long, large dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
 							slave.vaginalAccessory = "large dildo";
 						}
 						break;
 
 					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
 							slave.vaginalAccessory = "huge dildo";
 						} else {
@@ -12460,21 +12460,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length plug for her anus.`;
 							slave.buttplug = "plug";
 						}
 						break;
 
 					case "long, large plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length large plug for her anus.`;
 							slave.buttplug = "large plug";
 						}
 						break;
 
 					case "long, huge plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length huge plug for her anus.`;
 							slave.buttplug = "huge plug";
 						} else {
@@ -12517,21 +12517,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length plug for her anus.`;
 							slave.buttplug = "plug";
 						}
 						break;
 						
 					case "long, large plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length large plug for her anus.`;
 							slave.buttplug = "large plug";
 						}
 						break;
 
 					case "long, huge plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length huge plug for her anus.`;
 							slave.buttplug = "huge plug";
 						} else {
@@ -12874,12 +12874,12 @@ window.DefaultRules = (function() {
 				break;
 
 			case "female hormone injections":
-				if (!(slave.breedingMark != 1 && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0))
+				if (!((slave.breedingMark != 1 || V.propOutcome == 0) && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0))
 					flag = false;
 				break;
 
 			case "male hormone injections":
-				if (!(slave.breedingMark != 1 && slave.balls > 0 && slave.pubertyXY === 0))
+				if (!((slave.breedingMark != 1 || V.propOutcome == 0) && slave.balls > 0 && slave.pubertyXY === 0))
 					flag = false;
 				break;
 				
@@ -12939,7 +12939,7 @@ window.DefaultRules = (function() {
 				break;
 			
 			case "super fertility drugs":
-				if (!(slave.indentureRestrictions < 1 && slave.breedingMark !== 1))
+				if (!(slave.indentureRestrictions < 1 && (slave.breedingMark !== 1 || V.propOutcome == 0)))
 					flag = false;
 				break;
 			
@@ -12989,7 +12989,7 @@ window.DefaultRules = (function() {
 				break;
 				
 			case "female hormone injections":
-				if (!(slave.breedingMark !== 1 && (slave.ovaries === 1 || slave.mpreg === 1) && slave.pubertyXX === 0))
+				if (!((slave.breedingMark !== 1 || V.propOutcome == 0) && (slave.ovaries === 1 || slave.mpreg === 1) && slave.pubertyXX === 0))
 					flag = false;
 				break;
 			
@@ -13273,7 +13273,7 @@ window.DefaultRules = (function() {
 	}
 
 	function ProcessPregnancyDrugs(slave, rule) {
-		if (slave.pregKnown == 1 && rule.pregSpeed != "no default setting" && slave.breedingMark != 1 && slave.indentureRestrictions < 1 && slave.broodmother === 0) {
+		if (slave.pregKnown == 1 && rule.pregSpeed != "no default setting" && (slave.breedingMark != 1 || V.propOutcome == 0) && slave.indentureRestrictions < 1 && slave.broodmother === 0) {
 			if (rule.pregSpeed == "slow" && slave.preg < 35) {
 				slave.pregControl = "slow gestation";
 				r += `<br>${slave.slaveName} is pregnant, so she has been put on the gestation slowing agents.`;
diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 9cfa0ca6aa2..459d6769568 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -87,7 +87,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "be confined in the arcade":
-				if ((V.arcadeSlaves < V.arcade && slave.indentureRestrictions <= 0 && slave.breedingMark != 1))
+				if ((V.arcadeSlaves < V.arcade && slave.indentureRestrictions <= 0 && (slave.breedingMark != 1 || V.propOutcome === 0)))
 					break;
 				else {
 					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
@@ -123,7 +123,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "work in the brothel":
-				if ((V.brothelSlaves < V.brothel && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && slave.breedingMark != 1))
+				if ((V.brothelSlaves < V.brothel && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && (slave.breedingMark != 1 || V.propOutcome === 0)))
 					break;
 				else {
 					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
@@ -132,7 +132,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "serve in the club":
-				if ((V.clubSlaves < V.club && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && slave.breedingMark != 1))
+				if ((V.clubSlaves < V.club && (slave.devotion > 50 || slave.trust > 50 || slave.trust < -50 || (slave.devotion >= -50 && slave.trust < -20)) && (slave.breedingMark != 1 || V.propOutcome === 0)))
 					break;
 				else {
 					RAFacilityRemove(slave, rule); // before deleting rule.setAssignment 
@@ -144,7 +144,7 @@ window.DefaultRules = (function() {
 				if ((V.dairy > V.dairySlaves+V.bioreactorsXY+V.bioreactorsXX+V.bioreactorsHerm+V.bioreactorsBarren)) {
 					if ((slave.indentureRestrictions > 0) && (V.dairyRestraintsSetting > 1))
 						break;
-					else if (((slave.indentureRestrictions > 1) && (V.dairyRestraintsSetting > 0)) || (slave.breedingMark == 1 && V.dairyRestriantsSettings > 0) || ((V.dairyPregSetting > 0) && ((slave.bellyImplant != -1) || (slave.broodmother !== 0))))
+					else if (((slave.indentureRestrictions > 1) && (V.dairyRestraintsSetting > 0)) || (slave.breedingMark == 1 && V.propOutcome == 1 && V.dairyRestriantsSettings > 0) || ((V.dairyPregSetting > 0) && ((slave.bellyImplant != -1) || (slave.broodmother !== 0))))
 						break;
 					else {
 						if ((slave.lactation > 0 || ((V.dairySlimMaintainUpgrade === 0 || V.dairySlimMaintain === 0) && (slave.boobs > 300 || slave.dick === 0 || V.dairyImplantsSetting == 1) && V.dairyImplantsSetting != 2)) || (slave.balls > 0)) {
@@ -233,7 +233,7 @@ window.DefaultRules = (function() {
 				break;
 
 			case "work a glory hole":
-				if (slave.indentureRestrictions <= 0 && slave.breedingMark != 1)
+				if (slave.indentureRestrictions <= 0 && (slave.breedingMark != 1 || V.propOutcome === 0))
 					break;
 				else
 					delete rule.setAssignment;
@@ -242,7 +242,7 @@ window.DefaultRules = (function() {
 			case "whore":
 			case "serve the public":
 			case "stay confined":
-				if ((slave.fuckdoll === 0) && slave.breedingMark != 1)
+				if ((slave.fuckdoll === 0) && (slave.breedingMark != 1 || V.propOutcome === 0))
 					break;
 				else
 					delete rule.setAssignment;
@@ -460,21 +460,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length dildo for her pussy.`;
 							slave.vaginalAccessory = "dildo";
 						}
 						break;
 
 					case "long, large dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
 							slave.vaginalAccessory = "large dildo";
 						}
 						break;
 
 					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
 							slave.vaginalAccessory = "huge dildo";
 						} else {
@@ -517,21 +517,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length dildo for her pussy.`;
 							slave.vaginalAccessory = "dildo";
 						}
 						break;
 
 					case "long, large dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
 							slave.vaginalAccessory = "large dildo";
 						}
 						break;
 
 					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so the virgin ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
 							slave.vaginalAccessory = "huge dildo";
 						} else {
@@ -574,21 +574,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length dildo for her pussy.`;
 							slave.vaginalAccessory = "dildo";
 						}
 						break;
 
 					case "long, large dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length large dildo for her pussy.`;
 							slave.vaginalAccessory = "large dildo";
 						}
 						break;
 
 					case "long, huge dildo":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of cervix penetrating dildos on marked slaves, so ${slave.slaveName} has been given a standard length huge dildo for her pussy.`;
 							slave.vaginalAccessory = "huge dildo";
 						} else {
@@ -704,21 +704,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length plug for her anus.`;
 							slave.buttplug = "plug";
 						}
 						break;
 
 					case "long, large plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length large plug for her anus.`;
 							slave.buttplug = "large plug";
 						}
 						break;
 
 					case "long, huge plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so the anal virgin ${slave.slaveName} has been given a standard length huge plug for her anus.`;
 							slave.buttplug = "huge plug";
 						} else {
@@ -761,21 +761,21 @@ window.DefaultRules = (function() {
 						break;
 
 					case "long plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length plug for her anus.`;
 							slave.buttplug = "plug";
 						}
 						break;
 						
 					case "long, large plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length large plug for her anus.`;
 							slave.buttplug = "large plug";
 						}
 						break;
 
 					case "long, huge plug":
-						if (slave.breedingMark == 1) {
+						if (slave.breedingMark == 1 && V.propOutcome == 1) {
 							r += `<br>Breeding regulations forbid the use of anal plugs that can damage a growing fetus on marked slaves, so ${slave.slaveName} has been given a standard length huge plug for her anus.`;
 							slave.buttplug = "huge plug";
 						} else {
@@ -1118,12 +1118,12 @@ window.DefaultRules = (function() {
 				break;
 
 			case "female hormone injections":
-				if (!(slave.breedingMark != 1 && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0))
+				if (!((slave.breedingMark != 1 || V.propOutcome == 0) && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0))
 					flag = false;
 				break;
 
 			case "male hormone injections":
-				if (!(slave.breedingMark != 1 && slave.balls > 0 && slave.pubertyXY === 0))
+				if (!((slave.breedingMark != 1 || V.propOutcome == 0) && slave.balls > 0 && slave.pubertyXY === 0))
 					flag = false;
 				break;
 				
@@ -1183,7 +1183,7 @@ window.DefaultRules = (function() {
 				break;
 			
 			case "super fertility drugs":
-				if (!(slave.indentureRestrictions < 1 && slave.breedingMark !== 1))
+				if (!(slave.indentureRestrictions < 1 && (slave.breedingMark !== 1 || V.propOutcome == 0)))
 					flag = false;
 				break;
 			
@@ -1233,7 +1233,7 @@ window.DefaultRules = (function() {
 				break;
 				
 			case "female hormone injections":
-				if (!(slave.breedingMark !== 1 && (slave.ovaries === 1 || slave.mpreg === 1) && slave.pubertyXX === 0))
+				if (!((slave.breedingMark !== 1 || V.propOutcome == 0) && (slave.ovaries === 1 || slave.mpreg === 1) && slave.pubertyXX === 0))
 					flag = false;
 				break;
 			
@@ -1517,7 +1517,7 @@ window.DefaultRules = (function() {
 	}
 
 	function ProcessPregnancyDrugs(slave, rule) {
-		if (slave.pregKnown == 1 && rule.pregSpeed != "no default setting" && slave.breedingMark != 1 && slave.indentureRestrictions < 1 && slave.broodmother === 0) {
+		if (slave.pregKnown == 1 && rule.pregSpeed != "no default setting" && (slave.breedingMark != 1 || V.propOutcome == 0) && slave.indentureRestrictions < 1 && slave.broodmother === 0) {
 			if (rule.pregSpeed == "slow" && slave.preg < 35) {
 				slave.pregControl = "slow gestation";
 				r += `<br>${slave.slaveName} is pregnant, so she has been put on the gestation slowing agents.`;
diff --git a/src/js/assayJS.tw b/src/js/assayJS.tw
index b2de9885055..3724e489279 100644
--- a/src/js/assayJS.tw
+++ b/src/js/assayJS.tw
@@ -1791,7 +1791,7 @@ window.DegradingName = function DegradingName(slave) {
 		if (slave.labia > 1) {
 			suffixes.push("Curtains", "Flower", "Lips");
 		}
-		if (slave.breedingMark === 1) {
+		if (slave.breedingMark === 1 && V.propOutcome === 1) {
 			suffixes.push("Breeder", "Oven", "Womb");
 		}
 		if (slave.butt > 5) {
diff --git a/src/js/fresult.tw b/src/js/fresult.tw
index 4341ca791cc..1622e867e4a 100644
--- a/src/js/fresult.tw
+++ b/src/js/fresult.tw
@@ -138,7 +138,7 @@ window.FResult = (function() {
 			if (slave.preg > 10) V.FResult += 2;
 			else V.FResult -= 2;
 		} else if (V.arcologies[0].FSRestart > 20) {
-			if (slave.bellyPreg >= 500 && slave.breedingMark === 1)
+			if (slave.bellyPreg >= 500 && slave.breedingMark === 1 && V.propResult === 1)
 				V.FResult += 1;
 			else if (slave.preg > 10)
 				V.FResult -= 10;
diff --git a/src/npc/descriptions/fFuckdollWidgets.tw b/src/npc/descriptions/fFuckdollWidgets.tw
index 529abb47d15..8d70eb3e701 100644
--- a/src/npc/descriptions/fFuckdollWidgets.tw
+++ b/src/npc/descriptions/fFuckdollWidgets.tw
@@ -167,8 +167,8 @@ You repeat this ritual throughout the week, ensuring that it will be an @@.lime;
 
 <<= knockMeUp($activeSlave, 100, 2, -1, 1)>>
 
-<<if $arcologies[0].FSRestart != "unset">>
-	<<if $activeSlave.breedingMark != 1>>
+<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>>
+	<<if $activeSlave.breedingMark != 1 || $propOutcome == 0>>
 		Rumors spread about you knocking up your playthings; the Societal Elite are @@.red; very displeased@@ by these rumors.
 		<<set $failedElite += 5>>
 	<</if>>
diff --git a/src/npc/fPCImpreg.tw b/src/npc/fPCImpreg.tw
index 62988a633c8..27a735404e8 100644
--- a/src/npc/fPCImpreg.tw
+++ b/src/npc/fPCImpreg.tw
@@ -115,7 +115,7 @@ You repeat this ritual throughout the week, ensuring that $activeSlave.slaveName
 <<= knockMeUp($activeSlave, 100, 2, -1, 1)>>
 
 <<if $arcologies[0].FSRestart != "unset">>
-	<<if $activeSlave.breedingMark != 1>>
+	<<if ($activeSlave.breedingMark != 1 || $propOutcome == 0) && $eugenicsFullControl != 1>>
 		Rumors spread about you fucking your slaves pregnant; the Societal Elite are @@.red; very displeased@@ by these rumors.
 		<<set $failedElite += 5>>
 	<</if>>
diff --git a/src/npc/fRelation.tw b/src/npc/fRelation.tw
index c19e8374bb0..4f5e93c3f78 100644
--- a/src/npc/fRelation.tw
+++ b/src/npc/fRelation.tw
@@ -75,7 +75,7 @@ You call both $activeSlave.slaveName and $slaves[$partner].slaveName to your off
 	<<else>>
 		licking _his2 anus while _he2 humps _himself2 up and down on your cock.
 	<</if>>
-	Your use of $slaves[$partner].slaveName's mature body is the focus. _He2 finds _himself2 caught up in a miasma of sexual pleasure and perversion, moaning and blushing as your <<if ($PC.dick == 0)>>strap-on and fingers<<else>>cock<</if>> and $activeSlave.slaveName's mouth tour _his2 body. When you finish in _his2 <<if ($slaves[$partner].dick > 0)>>asshole, _his2 daughter hastens to lavish attention on $his _partnerRel's well fucked, cum filled butt.<<else>>pussy, _his2 daughter hastens to lavish attention on $his _partnerRel's well fucked, cum filled cunt.<</if>>
+	Your use of $slaves[$partner].slaveName's <<if $slaves[$partner].physicalAge >= 24>>mature<<else>>surprisingly young<</if>> body is the focus. _He2 finds _himself2 caught up in a miasma of sexual pleasure and perversion, moaning and blushing as your <<if ($PC.dick == 0)>>strap-on and fingers<<else>>cock<</if>> and $activeSlave.slaveName's mouth tour _his2 body. When you finish in _his2 <<if ($slaves[$partner].dick > 0)>>asshole, _his2 daughter hastens to lavish attention on $his _partnerRel's well fucked, cum filled butt.<<else>>pussy, _his2 daughter hastens to lavish attention on $his _partnerRel's well fucked, cum filled cunt.<</if>>
 	<<set $activeSlave.oralCount += 2, $slaves[$partner].oralCount += 2, $oralTotal += 2>>
 	<<= PartnerVCheck()>>
 <<elseif canDoVaginal($activeSlave) && canDoVaginal($slaves[$partner]) && canWalk($activeSlave) && canWalk($slaves[$partner]) && ($activeSlave.devotion > 50) && ($slaves[$partner].devotion > 50) && (_activeSlaveRel == "twin")>>
diff --git a/src/npc/fSlaveImpregConsummate.tw b/src/npc/fSlaveImpregConsummate.tw
index 20745093481..c7999ee6f1b 100644
--- a/src/npc/fSlaveImpregConsummate.tw
+++ b/src/npc/fSlaveImpregConsummate.tw
@@ -272,7 +272,7 @@ Next, you see to $activeSlave.slaveName.
 Throughout the week, you keep $activeSlave.slaveName's <<if $activeSlave.mpreg == 1>>ass<<else>>pussy<</if>> intimate with $impregnatrix.slaveName's cock. In the end, you are certain $activeSlave.slaveName is carrying $impregnatrix.slaveName's child.
 
 
-<<if $arcologies[0].FSRestart != "unset">>
+<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>>
 	Rumors spread about you breeding your slaves; the Societal Elite are @@.red;displeased@@ by these rumors.
 	<<set $failedElite += 1>>
 <</if>>
diff --git a/src/pregmod/csec.tw b/src/pregmod/csec.tw
index 13ac02332b8..ffa3170ded9 100644
--- a/src/pregmod/csec.tw
+++ b/src/pregmod/csec.tw
@@ -154,7 +154,7 @@ Performing a cesarean section is trivial for the remote surgery to carry out. $a
 <<if _incubated != 2 && _curBabies > 0 >>
 	<span id="_disposition">
 	<<if _incubated == 1>>the rest<</if>>
-	<<if $arcologies[0].FSRestart != "unset" && $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+	<<if $arcologies[0].FSRestart != "unset" && $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1 && $propOutcome == 1>>
 		<<set _lostBabies = 1>>
 		handed off to the Societal Elite to be raised into upstanding members of the new society.
 	<<elseif $Cash4Babies == 1 && ($activeSlave.relationship != -3) && ($activeSlave.assignment != "serve in the master suite") && ($activeSlave.assignment != "be your Concubine")>>
@@ -285,7 +285,7 @@ Performing a cesarean section is trivial for the remote surgery to carry out. $a
 
 <<if $arcologies[0].FSRestart != "unset" && _curBabies > 0>>
 	<br><br>
-	<<if $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+	<<if $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1 && $propOutcome == 1>>
 		The Societal Elite @@.green;are pleased@@ at the new additions to their class.
 		<<set $failedElite -= 2*_curBabies>>
 	<<else>>
diff --git a/src/pregmod/fSlaveSelfImpreg.tw b/src/pregmod/fSlaveSelfImpreg.tw
index 4e8825fa764..2f233fa468e 100644
--- a/src/pregmod/fSlaveSelfImpreg.tw
+++ b/src/pregmod/fSlaveSelfImpreg.tw
@@ -174,7 +174,7 @@ You repeat this ritual throughout the week, ensuring that $activeSlave.slaveName
 <<= knockMeUp($activeSlave, 100, 2, $activeSlave.ID, 1)>>
 
 <<if $arcologies[0].FSRestart != "unset">>
-	<<if $activeSlave.breedingMark != 1>>
+	<<if ($activeSlave.breedingMark != 1 || $propOutcome == 0) && $eugenicsFullControl != 1>>
 		Rumors spread about you having your slaves breed; the Societal Elite are @@.red; very displeased@@ by these rumors.
 		<<set $failedElite += 5>>
 	<</if>>
diff --git a/src/pregmod/huskSlaveSwapWorkaround.tw b/src/pregmod/huskSlaveSwapWorkaround.tw
index ce39f57a185..09449d87ad2 100644
--- a/src/pregmod/huskSlaveSwapWorkaround.tw
+++ b/src/pregmod/huskSlaveSwapWorkaround.tw
@@ -13,7 +13,7 @@ __Select an eligible slave:__
 	<<if $slaves[_i].fuckdoll == 0>>
 	<<if ($slaves[_i].PLimb == 0) || ($slaves[_i].PLimb == 1 && $slaves[_i].amp == 1)>>
 	<<if ($slaves[_i].indenture == -1)>>
-	<<if ($slaves[_i].breedingMark == 0)>>
+	<<if ($slaves[_i].breedingMark == 0 || $propOutcome == 0)>>
 	<<if ($slaves[_i].reservedChildren == 0)>>
 	<<if ($slaves[_i].ID != $activeSlave.ID)>>
 		<br><<print "[[$slaves[_i].slaveName|Husk Slave Swap][$swappingSlave = $slaves[" + _i + "], $cash -= 10000]]">>
diff --git a/src/pregmod/newChildIntro.tw b/src/pregmod/newChildIntro.tw
index d8279f16a9d..9e984bd8a7b 100644
--- a/src/pregmod/newChildIntro.tw
+++ b/src/pregmod/newChildIntro.tw
@@ -245,7 +245,7 @@ You completed the legalities before heading to $incubatorName, knowing the tank
 	alone, having no family<<if $activeSlave.mother == -1 || $activeSlave.father == -1>>, other than you,<</if>> in your stock.
 <</if>>
 <<if $arcologies[0].FSRestartDecoration == 100 && def _tempMom>>
-	<<if _tempMom.breedingMark == 1>>
+	<<if _tempMom.breedingMark == 1 && $propOutcome == 1>>
 		The Societal Elite are waiting to inspect the child of their eugenics programs.
 		<<if $arcologies[0].FSSupremacist > 20 && $activeSlave.race != $arcologies[0].FSSupremacistRace>>
 			They take one look at the $activeSlave.race <<if $activeSlave.race == "mixed race">>mutt<<else>>dog<</if>> you've sired for them and @@.red;leave in a huff.@@
@@ -646,10 +646,10 @@ You slowly strip down, gauging her reactions to your show, until you are fully n
 		You perform a careful medical examination to verify fertility, and then forcefully take the girl's virginity. Whenever you feel able, you drain your balls into her cunt, only allowing her to wander off when scans verify a fertilized ovum. She didn't properly understand the scans, so she just thought it was sex; she won't realize what happened for some months at least, and in the mean time, will think she is just getting fat. Though once her child starts kicking, she might make the connection between sex and pregnancy.
 	<</if>>
 	<<= VaginalVCheck()>>
-	<<if $arcologies[0].FSRestart != "unset" && $activeSlave.breedingMark == 0>>
+	<<if $arcologies[0].FSRestart != "unset" && $activeSlave.breedingMark == 0 && $eugenicsFullControl != 1>>
 		The Societal Elite @@.red;disapprove@@ of this breach of eugenics.
 		<<set $failedElite += 5>>
-	<<elseif $activeSlave.breedingMark == 1>>
+	<<elseif $activeSlave.breedingMark == 1 && $propOutcome == 1>>
 		The Societal Elite @@.green;are pleased@@ that you are promptly putting a child in her.
 		<<set $failedElite -= 5>>
 	<<elseif $arcologies[0].FSGenderFundamentalist != "unset">>
@@ -995,7 +995,7 @@ You beckon the curious girl to your hefty breasts, having noticed how hungrily s
 
 <<if $arcologies[0].FSRestart >= 10>>
 <<if $activeSlave.preg != -2 && $activeSlave.ovaries > 0>>
-<<if $activeSlave.breedingMark == 0>>
+<<if $activeSlave.breedingMark == 0 || $propOutcome == 0>>
 <br><<link "Sterilize her">>
 	<<set $activeSlave.preg = -2>>
 	<<set $activeSlave.pregType = 0>>
diff --git a/src/pregmod/widgets/seBirthWidgets.tw b/src/pregmod/widgets/seBirthWidgets.tw
index 4a0c0b86720..de8faaa03b4 100644
--- a/src/pregmod/widgets/seBirthWidgets.tw
+++ b/src/pregmod/widgets/seBirthWidgets.tw
@@ -730,8 +730,8 @@ All in all,
 <</if>>
 
 /* ------ Social reactions--------------- */
-<<if $arcologies[0].FSRestart != "unset">>
-	<<if $slaves[$i].breedingMark == 1 && $slaves[$i].pregSource == -1>>
+<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>>
+	<<if $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $slaves[$i].pregSource == -1>>
 		<br><br>
 		The Societal Elite @@.green;are pleased@@ at the new additions to their class.
 		<<set $failedElite -= 2 * _curBabies>>
@@ -813,7 +813,7 @@ All in all,
 <<set _count = _curBabies>>
 	<br><br>
 	<<span $dispositionId>>
-	<<if $arcologies[0].FSRestart != "unset" && $slaves[$i].breedingMark == 1 && $slaves[$i].pregSource == -1>>
+	<<if $arcologies[0].FSRestart != "unset" && $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $slaves[$i].pregSource == -1>>
 		<<set _lostBabies = 1>>
 		$possessiveCap child<<if _curBabies > 1>>ren<</if>> are collected by the Societal Elite to be raised into upstanding members of the new society.
 	<<elseif $Cash4Babies == 1>>
diff --git a/src/uncategorized/bodyModification.tw b/src/uncategorized/bodyModification.tw
index ee6a1c5aba8..78fee7233fb 100644
--- a/src/uncategorized/bodyModification.tw
+++ b/src/uncategorized/bodyModification.tw
@@ -1011,3 +1011,8 @@ Choose a site for branding:
 	<</link>>?
 <</if>>
 //Branding will slightly reduce $possessive beauty but may slowly increase your reputation.//
+
+<<if $activeSlave.breedingMark == 1 && $propOutcome == 0>>
+	<br>&nbsp;&nbsp;&nbsp;&nbsp;
+	$pronounCap has an intricate tattoo on $possessive lower belly that suggests $pronoun was made to be bred. [[Remove it|Body Modification][$activeSlave.breedingMark = 0]]
+<</if>>
diff --git a/src/uncategorized/futureSociety.tw b/src/uncategorized/futureSociety.tw
index 0746dc9f0d2..c2323b79bc9 100644
--- a/src/uncategorized/futureSociety.tw
+++ b/src/uncategorized/futureSociety.tw
@@ -681,7 +681,7 @@ You are spending <<print cashFormat($FSSpending)>> each week to support your soc
 	<<if $eugenicsFullControl != 1>>
 		The Societal Elite will not permit you to abandon Eugenics.
 	<<else>>
-		//<<link [[Abandon|Future Society]]>><<set $arcologies[0].FSRestart = "unset", $arcologies[0].FSRestartDecoration = 2, $arcologies[0].FSRestartSMR = 0, $arcologies[0].FSRestartLaw = 0, $FSCredits += 1>><<if $assistantFSAppearance == "eugenics">><<set $assistantFSAppearance = "default">><</if>><<ClearFacilityDecorations>><</link>>//
+		//<<link [[Abandon|Future Society]]>><<set $arcologies[0].FSRestart = "unset", $arcologies[0].FSRestartDecoration = 2, $arcologies[0].FSRestartSMR = 0, $arcologies[0].FSRestartLaw = 0, $propOutcome = 0, $FSCredits += 1>><<if $assistantFSAppearance == "eugenics">><<set $assistantFSAppearance = "default">><</if>><<ClearFacilityDecorations>><</link>>//
 	<</if>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	<<FSChangeDecoration "FSRestart">>
diff --git a/src/uncategorized/matchmaking.tw b/src/uncategorized/matchmaking.tw
index 493ec1041fb..594683b8747 100644
--- a/src/uncategorized/matchmaking.tw
+++ b/src/uncategorized/matchmaking.tw
@@ -342,7 +342,7 @@ Despite her devotion and trust, she is still a slave, and probably knows that he
 	<<set $cash -= 10000>>
 	<</replace>>
 <</link>>
-<<if ($eventSlave.vagina != 0) && ($eventSlave.anus != 0) && $eventSlave.breedingMark != 1>>
+<<if ($eventSlave.vagina != 0) && ($eventSlave.anus != 0) && ($eventSlave.breedingMark != 1 || $propOutcome == 0)>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Orgiastic ceremony">>
 	<<replace "#result2">>
 	You order $assistantName to invite deserving citizens to an orgiastic ceremony for a slave being married to a slaveowner, and to make the arrangements. The wedding orgy will take place during the upcoming week.
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index c20e6a258dc..ece8c280d22 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -97,7 +97,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 <<if $familyTesting == 0 && ($activeSlave.indenture < 0) && ($activeSlave.relation == 0)>>
 	<<if random(1,100) <= 5>>
 		<<set $activeSlave.recruiter = "twin">>
-	<<elseif ($activeSlave.actualAge > 32) && ($activeSlave.vagina != 0) && (random(1,100) <= 41)>>
+	<<elseif ($activeSlave.actualAge > 32) && ($activeSlave.vagina != 0) && $activeSlave.trueVirgin != 1 && (random(1,100) <= 41)>>
 		<<set $activeSlave.recruiter = "mother">>
 	<<elseif ($activeSlave.actualAge < 24) && (random(1,100) <= 40)>>
 		<<set $activeSlave.recruiter = "daughter">>
diff --git a/src/uncategorized/reNickname.tw b/src/uncategorized/reNickname.tw
index 73c2e056631..7b0c7aece2e 100644
--- a/src/uncategorized/reNickname.tw
+++ b/src/uncategorized/reNickname.tw
@@ -182,7 +182,7 @@
 <<if ($activeSlave.eyes == -2)>>
 	<<set $qualifiedNicknames.push("blind")>>
 <</if>>
-<<if $activeSlave.breedingMark == 1>>
+<<if $activeSlave.breedingMark == 1 && $propOutcome == 1>>
 	<<set $qualifiedNicknames.push("mark")>>
 <</if>>
 <<if ($activeSlave.broodmother > 1) && ($activeSlave.preg >= 37)>>
diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index 044f15a8e62..3cb829a4075 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -361,12 +361,12 @@ Work on her chest:
 	<</if>>
 <</if>>
 <<if ($activeSlave.boobs >= 7000) && ($activeSlave.boobsImplant == 0)>>
-	<<if $activeSlave.indentureRestrictions >= 2 || $activeSlave.breedingMark == 1>>
+	<<if $activeSlave.indentureRestrictions >= 2 || ($activeSlave.breedingMark == 1 && $propOutcome == 1)>>
 	<<else>>
 	 | [[Mastectomy|Surgery Degradation][$activeSlave.boobs = 300, $activeSlave.breastMesh = 0, $activeSlave.health -= 30,$cash -= $surgeryCost, $surgeryType = "mastectomy+"]]
 	<</if>>
 <<elseif ($activeSlave.boobs >= 2000) && ($activeSlave.boobsImplant == 0)>>
-	<<if $activeSlave.indentureRestrictions >= 2 || $activeSlave.breedingMark == 1>>
+	<<if $activeSlave.indentureRestrictions >= 2 || ($activeSlave.breedingMark == 1 && $propOutcome == 1)>>
 	<<else>>
 	 | [[Mastectomy|Surgery Degradation][$activeSlave.boobs = 300, $activeSlave.breastMesh = 0, $activeSlave.health -= 30,$cash -= $surgeryCost, $surgeryType = "mastectomy"]]
 	<</if>>
@@ -520,7 +520,7 @@ waist.
 	<</if>>
 <</if>>
 <<if ($activeSlave.waist >= -95) && ($activeSlave.waist < -75) && ($seeExtreme == 1)>>
-	<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+	<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	[[Remove ribs to severely narrow her waist|Surgery Degradation][$activeSlave.waist = -100,$cash -= $surgeryCost, $activeSlave.health -= 40,$surgeryType = "ribs"]]
 	<</if>>
 <</if>>
@@ -556,7 +556,7 @@ $pronounCap's
 
 <<if $activeSlave.indentureRestrictions >= 2>>
 	//$possessiveCap indenture forbids elective surgery//
-<<elseif $activeSlave.breedingMark == 1>>
+<<elseif $activeSlave.breedingMark == 1 && $porpOutcome == 1>>
 	//You are forbidden from affecting $possessive fertility//
 <<elseif $activeSlave.preg > 0 || $activeSlave.inflation > 0 || $activeSlave.broodmother > 0>>
 	//$pronounCap is unable to support an abdominal implant at this time//
@@ -748,7 +748,7 @@ Work on her sex:
 <</if>>
 
 <<if ($activeSlave.preg > -2) && ($activeSlave.preg < 1) && ($activeSlave.vagina > -1) && ($activeSlave.ovaries != 0)>>
-	<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+	<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	[[Sterilize|Surgery Degradation][$activeSlave.preg = -2,$cash -= $surgeryCost, $activeSlave.health -= 10,$surgeryType = "ster"]]
 	<</if>>
 <<elseif ($activeSlave.preg < 1) && ($activeSlave.vagina > -1) && ($activeSlave.ovaries != 0) && ($activeSlave.preg != -3)>>
@@ -756,7 +756,7 @@ Work on her sex:
 <</if>>
 
 <<if ($activeSlave.ovaries == 1) && ($activeSlave.preg < 1)>>
-	<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+	<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	<<if ($activeSlave.pubertyXX == 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	$pronounCap has ovaries but has not had $possessive first period.
@@ -785,7 +785,7 @@ Work on her sex:
 		<<else>>
 			$possessiveCap body cannot support being a broodmother.
 		<</if>>
-		<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+		<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 			<<if isFertile($activeSlave)>>
 				[[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 $possessive health and mind//
 			<</if>>
@@ -798,7 +798,7 @@ Work on her sex:
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		$possessiveCap anal womb cannot be removed while $pronoun is pregnant.
 	<<else>>
-		<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+		<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
 		[[Remove anal reproductive organs|Surgery Degradation][$activeSlave.mpreg = 0,$cash -= $surgeryCost, $activeSlave.health -= 30,$surgeryType = "mpreg removed"]]
 		<</if>>
@@ -839,13 +839,13 @@ Work on her sex:
 <</if>>
 
 <<if ($activeSlave.vagina > -1) && ($activeSlave.dick > 0)>>
-	<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+	<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	Since $pronoun has both a penis and a vagina, it's possible to remove $possessive pussy and leave $possessive sexually functional.
 	[[Remove pussy|Surgery Degradation][$activeSlave.vagina = -1,$activeSlave.ovaries = 0,$activeSlave.preg = -2,$activeSlave.pregSource = 0,$activeSlave.vaginalSkill = 0,$activeSlave.vaginalAccessory = "none",$cash -= $surgeryCost,$activeSlave.health -= 20,$surgeryType = "vaginaRemoval"]] <<if $activeSlave.ovaries == 1>>//This will remove $possessive ovaries as well//<</if>>
 	<</if>>
 <<elseif $activeSlave.vagina > -1>>
-	<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+	<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	$possessiveCap pussy can be removed at the cost of $possessive sexual functionality, leaving $object a null.
 	[[Remove pussy|Surgery Degradation][$activeSlave.vagina = -1,$activeSlave.ovaries = 0,$activeSlave.preg = -2,$activeSlave.pregSource = 0,$activeSlave.vaginalSkill = 0,$activeSlave.vaginalAccessory = "none",$cash -= $surgeryCost,$activeSlave.health -= 20,$surgeryType = "vaginaRemoval"]] <<if $activeSlave.ovaries == 1>>//This will remove $possessive ovaries as well//<</if>>
@@ -888,7 +888,7 @@ Work on her sex:
 	<</if>>
 <</if>>
 
-<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	<<if ($activeSlave.vagina == -1) && ($activeSlave.dick != 0)>>
 		[[Convert genitalia to female|Surgery Degradation][$activeSlave.dick = 0,$activeSlave.dickAccessory = "none",$activeSlave.dickTat = 0,$activeSlave.foreskin = 0,$activeSlave.scrotum = 0,$activeSlave.balls = 0,$activeSlave.vasectomy = 0,$activeSlave.vagina = 0,$activeSlave.preg = -2,$activeSlave.vaginalSkill = 0,$cash -= $surgeryCost, $activeSlave.health -= 40, $surgeryType = "mtf"]]
 	<</if>>
@@ -1497,7 +1497,7 @@ Work on her structurally:
 <<if $seeExtreme == 1>>
 <<if $activeSlave.fuckdoll == 0>>
 	<br>$pronounCap is a normal sex slave, not a living sex toy.
-	<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+	<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 		[[Encase in a Fuckdoll suit|Surgery Degradation][$activeSlave.subTarget=0, $activeSlave.sentence=0, $activeSlave.training=0, $activeSlave.toyHole="all her holes", $activeSlave.pubicHStyle="waxed", $activeSlave.livingRules="spare", $activeSlave.speechRules="restrictive", $activeSlave.releaseRules="restrictive", $activeSlave.relationshipRules="restrictive", $activeSlave.fuckdoll=1, $activeSlave.choosesOwnClothes=0, $activeSlave.clothes="a Fuckdoll suit", $activeSlave.collar="none", $activeSlave.shoes="heels",$activeSlave.legAccessory="none", $activeSlave.vaginalAccessory="none", $activeSlave.dickAccessory="none", $activeSlave.buttplug="none", $activeSlave.attrKnown=1, $activeSlave.fetishKnown=1, $activeSlave.inflation=0, $activeSlave.inflationType="none", $activeSlave.inflationMethod=0, $activeSlave.milkSource=0, $activeSlave.cumSource=0, $surgeryType = "fuckdoll"]] //This is permanent and will greatly restrict $possessive//
 	<</if>>
 <<else>>
@@ -1512,7 +1512,7 @@ Work on her structurally:
 	<<elseif $activeSlave.fetish == "mindbroken">>
 		<br>$possessiveCap mind is gone; $pronoun has either been chemically lobotomized, or has lost $possessive mind due to extreme abuse.
 	<</if>>
-	<<if $activeSlave.indentureRestrictions < 1 && $activeSlave.breedingMark != 1>>
+	<<if $activeSlave.indentureRestrictions < 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	<<if $activeSlave.fetish != "mindbroken">>
 		[[Chemically lobotomize|Surgery Degradation][$activeSlave.fetish = "mindbroken",$activeSlave.fetishKnown = 1,$cash -= $surgeryCost, $activeSlave.health -= 20,$surgeryType = "mindbreak"]]
 		//Warning: this is permanent and irreversible. It will destroy $possessive will and $possessive ability to remember anything but the simplest skills.//
diff --git a/src/uncategorized/saHormoneEffects.tw b/src/uncategorized/saHormoneEffects.tw
index b7631b69971..d85c4d9705e 100644
--- a/src/uncategorized/saHormoneEffects.tw
+++ b/src/uncategorized/saHormoneEffects.tw
@@ -962,9 +962,9 @@
 <</if>>
 
 <<if $slaves[$i].fetish != "mindbroken" && $slaves[$i].fuckdoll == 0>>
-<<if ($slaves[$i].hormoneBalance <= 20)>>
+<<if ($slaves[$i].hormoneBalance <= 20) && $slaves[$i].hormones < 1>>
 <<if ($slaves[$i].dick > 0)>>
-<<if ($slaves[$i].devotion > 0)>>
+<<if ($slaves[$i].devotion > 20)>>
 <<if ($slaves[$i].boobs < 800 && $slaves[$i].butt < 3) || ($slaves[$i].faceShape == "masculine") || ($slaves[$i].shoulders > $slaves[$i].hips) || ($slaves[$i].balls > 4)>>
 <<if ($slaves[$i].career == "a Futanari Sister")>>
 	$pronounCap wishes $pronoun were more feminine, but isn't unhappy to be off hormones, since $pronoun likes being a stiff dicked futa.
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 9f392bb165a..d0aa38a3c16 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -2268,8 +2268,8 @@
 	<</if>>
 	<<if $arcologies[0].FSRestart != "unset">>
 		Living in a society that rejects her paraphilia
-		<<if $slaves[$i].breedingMark == 1>>
-			would have mentally and emotionally crippled her; but as a designated breeder , she can't help but @@.hotpink;love her role@@ in society.
+		<<if $slaves[$i].breedingMark == 1 && $propOutcome == 1>>
+			would have mentally and emotionally crippled her; but as a designated breeder, she can't help but @@.hotpink;love her role@@ in society.
 			<<set $slaves[$i].devotion++>>
 		<<else>>
 			@@.mediumorchid;mentally and emotionally cripples@@ her.
@@ -3048,7 +3048,7 @@
 				Allowing her to indulge in her fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
-		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $slaves[$i].devotion > 75>>
+		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $slaves[$i].devotion > 75>>
 			She's been marked to be the bearer of your offspring and is growing larger by the day with your child. She is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
@@ -4916,7 +4916,7 @@
 <</if>>
 <</if>>
 
-<<if ($slaves[$i].breedingMark == 1) && ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
+<<if ($slaves[$i].breedingMark == 1 && $propOutcome == 1) && ($slaves[$i].fuckdoll == 0) && ($slaves[$i].fetish != "mindbroken")>>
 	<<if ($slaves[$i].devotion <= -20)>>
 		She views the mark of the Societal Elite @@.mediumorchid;with disgust@@ as it brands her as nothing more than your breeding bitch.
 		<<set $slaves[$i].devotion -= 10>>
@@ -5342,7 +5342,7 @@
 		Society is @@.green;mildly pleased@@ at you keeping $possessive dick in check.
 		<<FSChangePorn "Eugenics" 1>>
 	<</if>>
-	<<if $slaves[$i].breedingMark == 1>>
+	<<if $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $eugenicsFullControl != 1>>
 		<<if $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1>>
 			The Societal Elite @@.green;are pleased@@ your child is growing in within <<print $object>>. The mark covering $possessive lower belly, coupled with $possessive gravidity and blessing, @@.green;enamors@@ your populace.
 			<<set $failedElite -= 5+$slaves[$i].pregType>>
@@ -7721,7 +7721,7 @@
 <</if>>
 <</if>>
 
-<<if $slaves[$i].breedingMark == 1>>
+<<if $slaves[$i].breedingMark == 1 && $propPass == 1 && $eugenicsFullControl != 1>>
 	<<if $slaves[$i].preg > 3 || $slaves[$i].pregKnown == 1>>
 		<<if $slaves[$i].pregSource != -1>>
 			$slaves[$i].slaveName's weekly health checkup revealed she is pregnant with an unacceptable child. @@.red;Its life has been terminated, you have been fined <<print cashFormat(100000)>>, and your rep among the Elite has been severely damaged.@@
diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw
index b3f75c7665b..262ff9cbe93 100644
--- a/src/uncategorized/saPleaseYou.tw
+++ b/src/uncategorized/saPleaseYou.tw
@@ -1187,7 +1187,7 @@ serves you this week.
 <<elseif $slaves[$i].relationship == -3 && $slaves[$i].devotion > 50>>
 	<<set _multiplier += 0.06>>
 <</if>>
-<<if $arcologies[0].FSRestart > 50 && $slaves[$i].breedingMark == 1>>
+<<if $arcologies[0].FSRestart > 50 && $slaves[$i].breedingMark == 1 && $propOutcome == 1>>
 	<<set _multiplier += 0.04>>
 <</if>>
 <<if $arcologies[0].FSRepopulationFocus > 50 && $slaves[$i].bellyPreg >= 5000>>
@@ -1243,7 +1243,7 @@ Keeping $object as nothing but your personal
 	<<elseif $slaves[$i].relationship == -3 && $slaves[$i].devotion > 50>>
 		$possessiveCap satisfaction with $possessive wifely duties is obvious, @@.green;bringing attention@@ to the slave future you're building.
 	<</if>>
-	<<if $arcologies[0].FSRestart > 50 && $slaves[$i].breedingMark == 1>>
+	<<if $arcologies[0].FSRestart > 50 && $slaves[$i].breedingMark == 1 && $propOutcome == 1>>
 		$possessiveCap breeding mark and $possessive place near you as a breeding toy is obvious, @@.green;bringing attention@@ to how beautiful a pairing you make.
 	<</if>>
 	<<if $arcologies[0].FSRepopulationFocus > 50 && $slaves[$i].bellyPreg >= 5000>>
diff --git a/src/uncategorized/saRecruitGirls.tw b/src/uncategorized/saRecruitGirls.tw
index e3f05ef6d4e..6b27f45ec76 100644
--- a/src/uncategorized/saRecruitGirls.tw
+++ b/src/uncategorized/saRecruitGirls.tw
@@ -549,9 +549,9 @@
 			<<set _FSdefend++, $arcologies[0].FSRepopulationFocus += 0.01*$FSSingleSlaveRep>>
 		<</if>>
 	<<elseif $arcologies[0].FSRestart != "unset">>
-		<<if $slaves[$i].bellyPreg >= 1500 && $slaves[$i].breedingMark == 1>>
+		<<if $slaves[$i].bellyPreg >= 1500 && $slaves[$i].breedingMark == 1 && $propOutcome == 1>>
 			<<set _seed += 4, _FSmatch++, $arcologies[0].FSRestart += 0.01*$FSSingleSlaveRep>>
-		<<elseif $slaves[$i].breedingMark == 1>>
+		<<elseif $slaves[$i].breedingMark == 1 && $propOutcome == 1>>
 			<<set _seed += 1>>
 		<<elseif $slaves[$i].bellyPreg < 100>>
 			<<if ($slaves[$i].ovaries == 0 && $slaves[$i].balls == 0)>>
@@ -746,9 +746,9 @@
 				Being both unintelligent and inexperienced, her attempts to emphasize the joys of pregnancy only come off as someone who likes big bellies, no matter their source.
 			<</if>>
 		<<elseif $arcologies[0].FSRestart != "unset">>
-			<<if $slaves[$i].bellyPreg >= 1500 && $slaves[$i].breedingMark == 1>>
+			<<if $slaves[$i].bellyPreg >= 1500 && $slaves[$i].breedingMark == 1 && $propOutcome == 1>>
 				She prominently displays her pregnancy and the mark branded upon it signifying the superior child growing within her. Her audience is enamored by her distinct status.
-			<<elseif $slaves[$i].breedingMark == 1>>
+			<<elseif $slaves[$i].breedingMark == 1 && $propOutcome == 1>>
 				She prominently displays the mark branded over her womb, but without the curve of pregnancy beneath it, it only goes so far.
 			<<elseif $slaves[$i].bellyPreg < 100>>
 				<<if ($slaves[$i].dick > 0 && $slaves[$i].balls == 0)>>
diff --git a/src/uncategorized/seWedding.tw b/src/uncategorized/seWedding.tw
index 7b625b544b6..e03755e6dd4 100644
--- a/src/uncategorized/seWedding.tw
+++ b/src/uncategorized/seWedding.tw
@@ -273,7 +273,7 @@
 <</if>>
 
 <<if $weddingPlanned == 3>>
-	The ceremony to bind <<= SlaveFullName($activeSlave)>> to you as your slave wife, and her womb to you as your private breeding ground, is a polite affair which you host in the lower floor of your penthouse. <<if $arcologies[0].FSRestart != "unset" && $activeSlave.breedingMark == 0>>Barely anyone is there, mostly lower-class citizens, several accompanied by their slaves. Many of your other slaves, that is your slaves who are not being married and fucked pregnant tonight, are present to serve your guests, but are dressed more conservatively than usual. There is a distinct air of unrest in the room, as if the absent Elites' distaste of your actions came in their place.<<else>>All the arcology's most prominent citizens are there, most with a favored slave or two and some even with their slave wives. Many of your other slaves, that is your slaves who are not being married and fucked pregnant tonight, are present to serve your guests, but are dressed more conservatively than usual. When assignations between citizen and slave develop, guests are politely encouraged to perform them in side rooms rather than out in view of the main gathering.<</if>>
+	The ceremony to bind <<= SlaveFullName($activeSlave)>> to you as your slave wife, and her womb to you as your private breeding ground, is a polite affair which you host in the lower floor of your penthouse. <<if $arcologies[0].FSRestart != "unset" && ($activeSlave.breedingMark == 0 || $propOutcome == 0)>>Barely anyone is there, mostly lower-class citizens, several accompanied by their slaves. Many of your other slaves, that is your slaves who are not being married and fucked pregnant tonight, are present to serve your guests, but are dressed more conservatively than usual. There is a distinct air of unrest in the room, as if the absent Elites' distaste of your actions came in their place.<<else>>All the arcology's most prominent citizens are there, most with a favored slave or two and some even with their slave wives. Many of your other slaves, that is your slaves who are not being married and fucked pregnant tonight, are present to serve your guests, but are dressed more conservatively than usual. When assignations between citizen and slave develop, guests are politely encouraged to perform them in side rooms rather than out in view of the main gathering.<</if>>
 	<br><br>
 	$activeSlave.slaveName appears after everyone has had a chance to socialize,<<if ($activeSlave.amp == 1)>> carried by another slave since she's a quadruple amputee and she cannot walk,<</if>> wearing beautiful bridal lingerie in
 	<<if ($activeSlave.vagina == 0)>>
@@ -511,7 +511,7 @@
 		<<set $desc = "a framed shot of you impregnating " + $activeSlave.slaveName + " at your wedding">>
 	<</if>>
 	<<set $trinkets.push($desc)>>
-	<<if $arcologies[0].FSRestart != "unset" && $activeSlave.breedingMark == 0>>
+	<<if $arcologies[0].FSRestart != "unset" && ($activeSlave.breedingMark == 0 || $propOutcome == 0) && $eugenicsFullControl != 1>>
 		You have @@.red;angered@@ the Societal Elite by this public showing of everything they stand against.
 		<<set $failedElite += 250>>
 	<</if>>
diff --git a/src/uncategorized/sellSlave.tw b/src/uncategorized/sellSlave.tw
index b0c28eea13b..6556004ae05 100644
--- a/src/uncategorized/sellSlave.tw
+++ b/src/uncategorized/sellSlave.tw
@@ -1,7 +1,6 @@
 :: Sell Slave [nobr]
 
-<<set $nextButton = "Back">>
-<<set $nextLink = "Slave Interact">>
+<<set $nextButton = "Back", $nextLink = "Slave Interact">>
 
 You prepare her for sale. Her response to being put up for purchase is
 <<if $activeSlave.devotion < -50>>muted; perhaps she hopes a new master will be less hateful than you.
@@ -22,7 +21,7 @@ You prepare her for sale. Her response to being put up for purchase is
 <<slaveCost $activeSlave>>
 <<set $slaveCost = (random(70,80)*Math.trunc($slaveCost/100))>>
 
-<<if $activeSlave.breedingMark == 1>>
+<<if $activeSlave.breedingMark == 1 && $propOutcome == 1>>
 	Since you are selling a breeding slave, she will be sent to auction before other members of the Societal Elite.
 <<else>>
 <<if $showAppraisal == 1>>
@@ -629,7 +628,7 @@ A reputable slave appraiser arrives promptly to inspect her and certify her qual
 
 <br><br>
 
-<<if $activeSlave.breedingMark == 1>>
+<<if $activeSlave.breedingMark == 1 && $propOutcome == 1>>
 <<set $buyer = 0>>
 <<set $seed = 500*Math.trunc(($slaveCost*1.1)/500)>>
 	<br>The current offer for her stands at ''<<print cashFormat($seed)>>''.
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 33ed865451a..4393ed254ff 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -338,7 +338,7 @@
 		<</if>>
 	<</if>>
 <</if>>
-<<if _activeSlaveRepSacrifice > 0 && $arcologies[0].FSPaternalist == "unset" && $activeSlave.breedingMark == 0>>
+<<if _activeSlaveRepSacrifice > 0 && $arcologies[0].FSPaternalist == "unset" && ($activeSlave.breedingMark == 0 || $propOutcome == 0)>>
 	<<set _activeSlaveRepSacrifice = repGainSacrifice()>>
 	| <<link "Sacrifice $him on the altar" "Aztec Slave Sacrifice">><<set $sacrificeType = "life">><</link>>//This will kill $him and gain you _activeSlaveRepSacrifice reputation//
 <</if>>
@@ -472,7 +472,7 @@
 	  <<link "Rest">>                   <<= removeJob($activeSlave, $activeSlave.assignment)>><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
 	| <<link "Fucktoy">>                <<= assignJob($activeSlave, "please you")>><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
 
-	<<if ($activeSlave.indentureRestrictions <= 0) && $activeSlave.breedingMark != 1>>
+	<<if ($activeSlave.indentureRestrictions <= 0) && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Gloryhole">>              <<= assignJob($activeSlave, "work a glory hole")>><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
 	<</if>>
 
@@ -499,7 +499,7 @@
 	/*| //Too resistant to be a servant// */
 	<</if>>
 
-	<<if $activeSlave.breedingMark != 1>>
+	<<if ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Whore">>                  <<= assignJob($activeSlave, "whore")>><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
 	| <<link "Public Servant">>         <<= assignJob($activeSlave, "serve the public")>><<replace "#assign">>$activeSlave.assignment<</replace>><<SlaveInteractFucktoy>><</link>>
 	<</if>>
@@ -523,7 +523,7 @@
 	<br>Transfer to:
 
 	<<if $arcade != 0>>
-		<<if $arcade > $arcadeSlaves && ($activeSlave.indentureRestrictions <= 0) && $activeSlave.breedingMark != 1>>
+		<<if $arcade > $arcadeSlaves && ($activeSlave.indentureRestrictions <= 0) && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 			[[Arcade|Assign][$assignTo = "Arcade", $i = -1]] /* $i = -1 tells Assign to use $activeSlave as-is */
 		<<else>>Arcade<</if>>
 		<<if _numFacilities-- > 1>>|<</if>>
@@ -567,14 +567,14 @@
 	<</if>>
 
 	<<if $brothel != 0>>
-		<<if $brothel > $brothelSlaves && ((($activeSlave.devotion > 50) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50) || ($activeSlave.trust > 50)) && $activeSlave.breedingMark != 1)>>
+		<<if $brothel > $brothelSlaves && ((($activeSlave.devotion > 50) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50) || ($activeSlave.trust > 50)) && ($activeSlave.breedingMark != 1 || $propOutcome == 0))>>
 			[[Brothel|Assign][$assignTo = "Brothel", $i = -1]] /* $i = -1 tells Assign to use $activeSlave as-is */
 		<<else>>Brothel<</if>>
 		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
 
 	<<if $club != 0>>
-		<<if $club > $clubSlaves && ((($activeSlave.devotion > 50) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50) || ($activeSlave.trust > 50)) && $activeSlave.breedingMark != 1)>>
+		<<if $club > $clubSlaves && ((($activeSlave.devotion > 50) || (($activeSlave.devotion >= -50) && ($activeSlave.trust < -20)) || ($activeSlave.trust < -50) || ($activeSlave.trust > 50)) && ($activeSlave.breedingMark != 1 || $propOutcome == 0))>>
 			[[Club|Assign][$assignTo = "Club", $i = -1]] /* $i = -1 tells Assign to use $activeSlave as-is */
 		<<else>>Club<</if>>
 		<<if _numFacilities-- > 1>>|<</if>>
@@ -584,7 +584,7 @@
 		<<set _dairySeed = $bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren>>
 		<<if $dairy <= $dairySlaves+_dairySeed>>
 			Dairy
-		<<elseif((($activeSlave.indentureRestrictions > 0) && ($dairyRestraintsSetting > 1)) || (($activeSlave.indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)) || ($activeSlave.breedingMark == 1 && $dairyRestraintsSetting > 0) || (($dairyPregSetting > 0) && (($activeSlave.bellyImplant != -1) || ($activeSlave.broodmother > 0))))>>
+		<<elseif((($activeSlave.indentureRestrictions > 0) && ($dairyRestraintsSetting > 1)) || (($activeSlave.indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)) || ($activeSlave.breedingMark == 1 && $propOutcome == 1 && $dairyRestraintsSetting > 0) || (($dairyPregSetting > 0) && (($activeSlave.bellyImplant != -1) || ($activeSlave.broodmother > 0))))>>
 			Dairy
 		<<elseif (($activeSlave.lactation > 0) || ($activeSlave.balls > 0)) || (($dairyFeedersUpgrade == 1) && ($dairyFeedersSetting > 0) && ($dairySlimMaintainUpgrade == 0))>>
 			 [[Dairy|Assign][$assignTo = "Dairy", $i = -1]] /* $i = -1 tells Assign to use $activeSlave as-is */
@@ -762,7 +762,7 @@
 	<br>Torso accessory: ''<span id="bellyAccessory">$activeSlave.bellyAccessory</span>.''
 	<<link "None">><<set $activeSlave.bellyAccessory = "none">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
 	| <<link "Tight corset">><<set $activeSlave.bellyAccessory = "a corset">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
-	<<if $activeSlave.breedingMark != 1>>
+	<<if ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Extreme corset">><<set $activeSlave.bellyAccessory = "an extreme corset">><<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>><</link>>
 	<</if>>
 	<<if isItemAccessible("a small empathy belly")>> /* works for all of them */
@@ -779,16 +779,16 @@
 	<br>Anal accessory: ''<span id="buttplug">$activeSlave.buttplug</span>.''
 	<<link "None">><<set $activeSlave.buttplug = "none", $activeSlave.buttplugAttachment = "none">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>>
 	| <<link "Normal">><<set $activeSlave.buttplug = "plug">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>>
-	<<if isItemAccessible("long plug") && $activeSlave.breedingMark != 1>>
+	<<if isItemAccessible("long plug") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Long">><<set $activeSlave.buttplug = "long plug">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>>
 	<</if>>
 	| <<link "Large">><<set $activeSlave.buttplug = "large plug">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>>
-	<<if isItemAccessible("long, large plug") && $activeSlave.breedingMark != 1>>
+	<<if isItemAccessible("long, large plug") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Long and large">><<set $activeSlave.buttplug = "long, large plug">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>>
 	<</if>>
 	<<if $activeSlave.anus >= 2>>| <<link "Huge">><<set $activeSlave.buttplug = "huge plug">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>><</if>>
 	<<if isItemAccessible("long, huge plug")>>
-	<<if $activeSlave.breedingMark != 1 && $activeSlave.anus >= 2>>
+	<<if ($activeSlave.breedingMark != 1 || $propOutcome == 0) && $activeSlave.anus >= 2>>
 	| <<link "Long and huge">><<set $activeSlave.buttplug = "long, huge plug">><<replace "#buttplug">>$activeSlave.buttplug<</replace>><</link>>
 	<</if>>
 	<</if>>
@@ -801,15 +801,15 @@
 	<br>Vaginal accessory: ''<span id="vaginalAccessory">$activeSlave.vaginalAccessory</span>.''
 	<<link "None">><<set $activeSlave.vaginalAccessory = "none">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><<SlaveInteractImpreg>><<SlaveInteractFertility>><<SlaveInteractSexOption>><<SlaveInteractAnalSexOption>><<SlaveInteractGropeOption>><<SlaveInteractDickGropeOption>><<SlaveInteractAnalGropeOption>><</link>>
 	| <<link "Dildo">><<set $activeSlave.vaginalAccessory = "dildo">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><</link>>
-	<<if isItemAccessible("long dildo") && $activeSlave.breedingMark != 1>>
+	<<if isItemAccessible("long dildo") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Long dildo">><<set $activeSlave.vaginalAccessory = "long dildo">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><</link>>
 	<</if>>
 	| <<link "Large dildo">><<set $activeSlave.vaginalAccessory = "large dildo">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><</link>>
-	<<if isItemAccessible("long, large dildo") && $activeSlave.breedingMark != 1>>
+	<<if isItemAccessible("long, large dildo") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Large and long dildo">><<set $activeSlave.vaginalAccessory = "long, large dildo">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><</link>>
 	<</if>>
 	<<if $activeSlave.vagina >= 2>>| <<link "Huge dildo">><<set $activeSlave.vaginalAccessory = "huge dildo">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><</link>><</if>>
-	<<if isItemAccessible("long, huge dildo") && $activeSlave.breedingMark != 1>>
+	<<if isItemAccessible("long, huge dildo") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	<<if $activeSlave.vagina >= 2>>| <<link "Huge and long dildo">><<set $activeSlave.vaginalAccessory = "long, huge dildo">><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><</link>><</if>>
 	<</if>>
 	| <<link "Chastity belt">><<set $activeSlave.vaginalAccessory = "chastity belt",$activeSlave.choosesOwnChastity = 0>><<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>><<SlaveInteractImpreg>><<SlaveInteractFertility>><<SlaveInteractSexOption>><<SlaveInteractAnalSexOption>><<SlaveInteractGropeOption>><<SlaveInteractDickGropeOption>><<SlaveInteractAnalGropeOption>><</link>>
@@ -930,7 +930,7 @@
 			<</if>>
 		<</if>>
 		| <<link "Fertility">><<set $activeSlave.drugs = "fertility drugs">><<SlaveInteractDrugs>><</link>>
-		<<if ($seeHyperPreg == 1) && ($activeSlave.indentureRestrictions < 1) && ($superFertilityDrugs == 1) && $activeSlave.breedingMark != 1>>
+		<<if ($seeHyperPreg == 1) && ($activeSlave.indentureRestrictions < 1) && ($superFertilityDrugs == 1) && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 			| <<link "Fertility+">><<set $activeSlave.drugs = "super fertility drugs">><<SlaveInteractDrugs>><</link>>
 		<</if>>
 		<<if ($activeSlave.dick > 0)>>
@@ -1002,7 +1002,7 @@
 				| Weight loss pills
 			<</if>>
 		<</if>>
-		<<if $precociousPuberty == 1 && $pubertyHormones == 1 && $activeSlave.breedingMark != 1>>
+		<<if $precociousPuberty == 1 && $pubertyHormones == 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 			<<if ($activeSlave.ovaries == 1 || $activeSlave.mpreg == 1) && $activeSlave.pubertyXX == 0>>
 				| <<link "Female hormone injections">><<set $activeSlave.drugs = "female hormone injections">><<SlaveInteractDrugs>><</link>>
 			<</if>>
@@ -1074,14 +1074,14 @@ Aphrodisiacs: <span id="aphrodisiacs"><strong><<if $activeSlave.aphrodisiacs > 1
 			<</if>>
 		<<elseif ($activeSlave.preg > 35)>>
 			| <<link "Give $him a cesarean section" "csec">><</link>>
-		<<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+		<<elseif ($activeSlave.preg > 0) && ($activeSlave.breedingMark != 1 || $propOutcome == 0) && $activeSlave.pregSource == -1>>
 			//You are forbidden from aborting an elite child//
 		<<elseif ($activeSlave.preg > 0)>>
 			<<link "Abort $his pregnancy" "Abort">><</link>>
 		<</if>>
 	<</if>>
 <</if>>
-<<if ($activeSlave.pregKnown == 1) && ($pregSpeedControl == 1) && ($activeSlave.breedingMark != 1) && ($activeSlave.indentureRestrictions < 1) && ($activeSlave.broodmother == 0) && $seePreg != 0>>
+<<if ($activeSlave.pregKnown == 1) && ($pregSpeedControl == 1) && ($activeSlave.breedingMark != 1 || $propOutcome == 0) && ($activeSlave.indentureRestrictions < 1) && ($activeSlave.broodmother == 0) && $seePreg != 0>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
 	__Pregnancy control__: <<if $activeSlave.pregControl == "labor supressors">>Labor is suppressed<<elseif $activeSlave.pregControl == "slow gestation">>Slowed gestation speed<<elseif $activeSlave.pregControl == "speed up">>Faster gestation speed, staffed clinic recommended<<else>>Normal gestation and birth<</if>>.
 	<<if ($activeSlave.preg >= 38)>>
diff --git a/src/uncategorized/slaveSold.tw b/src/uncategorized/slaveSold.tw
index b902b25bc64..44c81e12f65 100644
--- a/src/uncategorized/slaveSold.tw
+++ b/src/uncategorized/slaveSold.tw
@@ -242,7 +242,7 @@
 <<case "elite auction">>
 	$activeSlave.slaveName is quickly escorted out by her new master. She is rarely seen in public anymore, but her records show she is settling well into being her new owner's breeder.
 	<<for _ss = 0; _ss < $slaves.length; _ss++>>
-	<<if ($slaves[_ss].breedingMark != 1)>>
+	<<if ($slaves[_ss].breedingMark != 1 && $propOutcome == 1)>>
 		<<run clearSummaryCache($slaves[_ss])>>
 		<<set $slaves[_ss].devotion -= 5>>
 		<<set $seed = 1>>
diff --git a/src/uncategorized/slaveSummary.tw b/src/uncategorized/slaveSummary.tw
index 06a23e24fcf..7c4b714933c 100644
--- a/src/uncategorized/slaveSummary.tw
+++ b/src/uncategorized/slaveSummary.tw
@@ -3,12 +3,12 @@
 <<set setup.passagePreFilters = setup.passagePreFilters || {
 	"Main":                      s => (s.assignmentVisible == 1),
 	"Personal Attention Select": s => (s.assignmentVisible == 1 && s.fuckdoll <= 0),
-	"Agent Select":              s => (s.fuckdoll == 0 && s.devotion >= 20 && s.intelligence > 0 && s.intelligenceImplant > 0 && canWalk(s) && canSee(s) && canTalk(s) && s.broodmother < 2 && s.breedingMark != 1),
-	"BG Select":                 s => (s.assignmentVisible == 1 && s.fuckdoll == 0 && s.devotion > 50 && s.assignment != "guard you" && canWalk(s) && canSee(s) && s.breedingMark != 1),
+	"Agent Select":              s => (s.fuckdoll == 0 && s.devotion >= 20 && s.intelligence > 0 && s.intelligenceImplant > 0 && canWalk(s) && canSee(s) && canTalk(s) && s.broodmother < 2 && (s.breedingMark != 1 || $propOutcome == 0)),
+	"BG Select":                 s => (s.assignmentVisible == 1 && s.fuckdoll == 0 && s.devotion > 50 && s.assignment != "guard you" && canWalk(s) && canSee(s) && (s.breedingMark != 1 || $propOutcome == 0)),
 	"Recruiter Select":          s => (s.assignmentVisible == 1 && s.fuckdoll == 0 && s.devotion > 50 && s.assignment != "recruit girls" && canWalk(s) && canSee(s) && canTalk(s)),
 	"HG Select":                 s => (s.assignmentVisible == 1 && s.fuckdoll == 0 && s.devotion > 50 && s.assignment != "be your Head Girl" && canWalk(s) && canSee(s) && canTalk(s)),
 	"Head Girl Suite":           s => (s.assignmentVisible == 1 && s.fuckdoll <= 0 && (
-		   ($Flag == 0 && s.assignment != "be your Head Girl" && s.indentureRestrictions <= 0 && s.breedingMark != 1)
+		   ($Flag == 0 && s.assignment != "be your Head Girl" && s.indentureRestrictions <= 0 && (s.breedingMark != 1 || $propOutcome == 0))
 		|| ($Flag != 0 && s.assignment == "live with your Head Girl"))),
 	"Subordinate Targeting":     s => (s.devotion >= -20 && s.fuckdoll == 0 && $activeSlave.ID != s.ID && ($activeSlave.amp != 1 || s.amp != 1)),
 	"Spa":                       s => (s.assignmentVisible == 1 && s.fuckdoll <= 0 && (
@@ -20,12 +20,12 @@
 		   ($Flag == 0 && s.assignment != "work in the brothel")
 		|| ($Flag == 1 && s.assignment == "work in the brothel")
 		|| ($Flag != 0 && $Flag != 1 && s.ID == $Madam.ID))),
-	"Madam Select":              s => (s.assignmentVisible == 1 && s.fuckdoll == 0 && s.devotion > 50 && s.intelligence > -2 && canWalk(s) && canSee(s) && s.breedingMark != 1),
+	"Madam Select":              s => (s.assignmentVisible == 1 && s.fuckdoll == 0 && s.devotion > 50 && s.intelligence > -2 && canWalk(s) && canSee(s) && (s.breedingMark != 1 || $propOutcome == 0)),
 	"Club":                      s => (s.assignmentVisible == 1 && s.fuckdoll <= 0 && (
 		   ($Flag == 0 && s.assignment != "serve in the club")
 		|| ($Flag == 1 && s.assignment == "serve in the club")
 		|| ($Flag != 0 && $Flag != 1 && s.ID == $DJ.ID))),
-	"DJ Select":                 s => (s.assignmentVisible == 1 && s.fuckdoll == 0 && s.devotion > 50 && s.intelligence > -2 && canTalk(s) && canWalk(s) && s.breedingMark != 1),
+	"DJ Select":                 s => (s.assignmentVisible == 1 && s.fuckdoll == 0 && s.devotion > 50 && s.intelligence > -2 && canTalk(s) && canWalk(s) && (s.breedingMark != 1 || $propOutcome == 0)),
 	"Clinic":                    s => (s.assignmentVisible == 1 && s.fuckdoll <= 0 && (
 		   ($Flag == 0 && s.assignment != "get treatment in the clinic")
 		|| ($Flag == 1 && s.assignment == "get treatment in the clinic")
@@ -275,7 +275,7 @@
 <<case "Brothel">>
 <<if $Flag == 0>>
 	<<if $brothel <= $brothelSlaves>><<continue>><</if>>
-	<<if _Slave.breedingMark != 1>>
+	<<if (_Slave.breedingMark != 1 || $propOutcome == 0)>>
 	<<if (_Slave.devotion > 50) || ((_Slave.devotion >= -50) && (_Slave.trust < -20)) || (_Slave.trust < -50) || (_Slave.trust > 50)>>
 		<br style="clear:both" /><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Slave 1>></div><</if>>
 		[[_slaveName|Slave Interact][$activeSlave = $slaves[_ssi]]]
@@ -300,7 +300,7 @@
 <<case "Club">>
 <<if $Flag == 0>>
 	<<if $club <= $clubSlaves>><<continue>><</if>>
-	<<if _Slave.breedingMark != 1>>
+	<<if (_Slave.breedingMark != 1 || $propOutcome == 0)>>
 	<<if (_Slave.devotion > 50) || ((_Slave.devotion >= -50) && (_Slave.trust < -20)) || (_Slave.trust < -50) || (_Slave.trust > 50)>>
 		<br style="clear:both" /><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Slave 1>></div><</if>>
  		[[_slaveName|Slave Interact][$activeSlave = $slaves[_ssi]]]
@@ -378,7 +378,7 @@
 	<<elseif (_Slave.indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)>>
 		<br>//_Slave.slaveName's indenture allows only free range milking.//
 		<<continue>>
-	<<elseif _Slave.breedingMark == 1 && $dairyRestraintsSetting > 0>>
+	<<elseif _Slave.breedingMark == 1 && $propOutcome == 1 && $dairyRestraintsSetting > 0>>
 		<br>//_Slave.slaveName may only be a free range cow//
 		<<continue>>
 	<<elseif ($dairyPregSetting > 0) && ((_Slave.bellyImplant != -1) || (_Slave.broodmother != 0))>>
@@ -486,7 +486,7 @@
 <<if $Flag == 0>>
 	<<if _Slave.assignment == "be confined in the arcade">><<continue>><</if>>
 	<<if $arcade <= $arcadeSlaves && $arcadeUpgradeFuckdolls != 1>><<continue>><</if>>
-	<<if _Slave.breedingMark != 1>>
+	<<if (_Slave.breedingMark != 1 || $propOutcome == 0)>>
 	<<if (_Slave.indentureRestrictions <= 0)>>
 		<br style="clear:both" /><<if $lineSeparations == 0>><br><<else>><hr style="margin:0"><</if>><<if ($seeImages == 1) && ($seeSummaryImages == 1)>><div class="imageRef smlImg"><<SlaveArt _Slave 1>></div><</if>>
 		[[_slaveName|Slave Interact][$activeSlave = $slaves[_ssi]]]
@@ -510,7 +510,7 @@
 	<<elseif (_Slave.indentureRestrictions > 1)>>
 		<br>//_Slave.slaveName's indenture forbids fighting.//
 		<<continue>>
-	<<elseif _Slave.breedingMark == 1>>
+	<<elseif (_Slave.breedingMark != 1 || $propOutcome == 0)>>
 		<br>//_Slave.slaveName may not participate in combat//
 		<<continue>>
 	<<else>>
@@ -582,7 +582,7 @@ will
 	<<else>>
 		| Fucktoy
 	<</if>>
-	<<if _Slave.indentureRestrictions <= 0 && _Slave.breedingMark != 1>>
+	<<if _Slave.indentureRestrictions <= 0 && (_Slave.breedingMark != 1 || $propOutcome == 0)>>
 		<<if _Slave.assignment != "work a glory hole">>
 			| <<link "Gloryhole" "Main">><<= assignJob($slaves[_ssi], "work a glory hole")>><</link>>
 		<<else>>
@@ -604,12 +604,12 @@ will
 		<<else>>
 			| House Servant
 		<</if>>
-		<<if (_Slave.assignment != "whore") && _Slave.breedingMark != 1>>
+		<<if (_Slave.assignment != "whore") && (_Slave.breedingMark != 1 || $propOutcome == 0)>>
 			| <<link "Whore" "Main">><<= assignJob($slaves[_ssi], "whore")>><</link>>
 		<<else>>
 			| Whore
 		<</if>>
-		<<if (_Slave.assignment != "serve the public") && _Slave.breedingMark != 1>>
+		<<if (_Slave.assignment != "serve the public") && (_Slave.breedingMark != 1 || $propOutcome == 0)>>
 			| <<link "Public Servant" "Main">><<= assignJob($slaves[_ssi], "serve the public")>><</link>>
 		<<else>>
 			| Public Servant
@@ -645,7 +645,7 @@ will
 	<</if>>
 
 	<<if $arcade != 0>>
-		<<if $arcade > $arcadeSlaves && (_Slave.indentureRestrictions <= 0) && _Slave.breedingMark != 1>>
+		<<if $arcade > $arcadeSlaves && (_Slave.indentureRestrictions <= 0) && (_Slave.breedingMark != 1 || $propOutcome == 0)>>
 			[[Arcade|Assign][$assignTo = "Arcade", $i = _ssi]] /* $i = -1 tells Assign to use _Slave as-is */
 		<<else>>Arcade<</if>>
 		<<if _numFacilities-- > 1>>|<</if>>
@@ -689,14 +689,14 @@ will
 	<</if>>
 
 	<<if $brothel != 0>>
-		<<if $brothel > $brothelSlaves && (((_Slave.devotion > 50) || ((_Slave.devotion >= -50) && (_Slave.trust < -20)) || (_Slave.trust < -50) || (_Slave.trust > 50)) && _Slave.breedingMark != 1)>>
+		<<if $brothel > $brothelSlaves && (((_Slave.devotion > 50) || ((_Slave.devotion >= -50) && (_Slave.trust < -20)) || (_Slave.trust < -50) || (_Slave.trust > 50)) && (_Slave.breedingMark != 1 || $propOutcome == 0))>>
 			[[Brothel|Assign][$assignTo = "Brothel", $i = _ssi]] /* $i = -1 tells Assign to use _Slave as-is */
 		<<else>>Brothel<</if>>
 		<<if _numFacilities-- > 1>>|<</if>>
 	<</if>>
 
 	<<if $club != 0>>
-		<<if $club > $clubSlaves && (((_Slave.devotion > 50) || ((_Slave.devotion >= -50) && (_Slave.trust < -20)) || (_Slave.trust < -50) || (_Slave.trust > 50)) && _Slave.breedingMark != 1)>>
+		<<if $club > $clubSlaves && (((_Slave.devotion > 50) || ((_Slave.devotion >= -50) && (_Slave.trust < -20)) || (_Slave.trust < -50) || (_Slave.trust > 50)) && (_Slave.breedingMark != 1 || $propOutcome == 0))>>
 			[[Club|Assign][$assignTo = "Club", $i = _ssi]] /* $i = -1 tells Assign to use _Slave as-is */
 		<<else>>Club<</if>>
 		<<if _numFacilities-- > 1>>|<</if>>
@@ -706,7 +706,7 @@ will
 		<<set _dairySeed = $bioreactorsXY+$bioreactorsXX+$bioreactorsHerm+$bioreactorsBarren>>
 		<<if $dairy <= $dairySlaves+_dairySeed>>
 			Dairy
-		<<elseif (((_Slave.indentureRestrictions > 0) && ($dairyRestraintsSetting > 1)) || ((_Slave.indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)) || (_Slave.breedingMark == 1 && $dairyRestraintsSetting > 0) || (($dairyPregSetting > 0) && ((_Slave.bellyImplant != -1) || (_Slave.broodmother > 0))))>>
+		<<elseif (((_Slave.indentureRestrictions > 0) && ($dairyRestraintsSetting > 1)) || ((_Slave.indentureRestrictions > 1) && ($dairyRestraintsSetting > 0)) || (_Slave.breedingMark == 1 && $propOutcome == 1 && $dairyRestraintsSetting > 0) || (($dairyPregSetting > 0) && ((_Slave.bellyImplant != -1) || (_Slave.broodmother > 0))))>>
 			Dairy
 		<<elseif ((_Slave.lactation > 0) || (_Slave.balls > 0)) || (($dairyFeedersUpgrade == 1) && ($dairyFeedersSetting > 0) && ($dairySlimMaintainUpgrade == 0))>>
 			 [[Dairy|Assign][$assignTo = "Dairy", $i = _ssi]] /* $i = -1 tells Assign to use _Slave as-is */
diff --git a/src/uncategorized/wardrobeUse.tw b/src/uncategorized/wardrobeUse.tw
index 12706f252f1..02c874546da 100644
--- a/src/uncategorized/wardrobeUse.tw
+++ b/src/uncategorized/wardrobeUse.tw
@@ -646,7 +646,7 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>>
 	<<replace "#bellyAccessoryDescription">><br>//<<clothingCorsetDescription>><<CorsetPiercingDescription>>//<</replace>>
 <</link>>
-<<if $activeSlave.breedingMark != 1>>
+<<if ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 | <<link "Extreme corset">>
 	<<set $activeSlave.bellyAccessory = "an extreme corset">>
 	<<replace "#bellyAccessory">>$activeSlave.bellyAccessory<</replace>>
@@ -702,7 +702,7 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 		<<replace "#vaginalAccessoryDescription">>//<<vaginalAccessoryDescription>>//<</replace>>
 		<<replace "#buttplugDescription">>//<<buttplugDescription>>//<</replace>>
 	<</link>>
-	<<if isItemAccessible("long dildo") && $activeSlave.breedingMark != 1>>
+	<<if isItemAccessible("long dildo") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 		| <<link "Long dildo">>
 			<<set $activeSlave.vaginalAccessory = "long dildo">>
 			<<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>>
@@ -716,7 +716,7 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 		<<replace "#vaginalAccessoryDescription">>//<<vaginalAccessoryDescription>>//<</replace>>
 		<<replace "#buttplugDescription">>//<<buttplugDescription>>//<</replace>>
 	<</link>>
-	<<if isItemAccessible("long, large dildo") && $activeSlave.breedingMark != 1>>
+	<<if isItemAccessible("long, large dildo") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 		| <<link "Large and long dildo">>
 			<<set $activeSlave.vaginalAccessory = "long, large dildo">>
 			<<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>>
@@ -731,7 +731,7 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 			<<replace "#vaginalAccessoryDescription">>//<<vaginalAccessoryDescription>>//<</replace>>
 			<<replace "#buttplugDescription">>//<<buttplugDescription>>//<</replace>>
 		<</link>>
-		<<if isItemAccessible("long, huge dildo") && $activeSlave.breedingMark != 1>>
+		<<if isItemAccessible("long, huge dildo") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 			| <<link "Huge and long dildo">>
 				<<set $activeSlave.vaginalAccessory = "long, huge dildo">>
 				<<replace "#vaginalAccessory">>$activeSlave.vaginalAccessory<</replace>>
@@ -806,7 +806,7 @@ Anal accessory: ''<span id="buttplug">$activeSlave.buttplug</span>.''
 	<<replace "#buttplug">>$activeSlave.buttplug<</replace>>
 	<<replace "#buttplugDescription">>//<<buttplugDescription>>//<</replace>>
 <</link>>
-<<if isItemAccessible("long plug") && $activeSlave.breedingMark != 1>>
+<<if isItemAccessible("long plug") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Long">>
 		<<set $activeSlave.buttplug = "long plug">>
 		<<replace "#buttplug">>$activeSlave.buttplug<</replace>>
@@ -818,7 +818,7 @@ Anal accessory: ''<span id="buttplug">$activeSlave.buttplug</span>.''
 	<<replace "#buttplug">>$activeSlave.buttplug<</replace>>
 	<<replace "#buttplugDescription">>//<<buttplugDescription>>//<</replace>>
 <</link>>
-<<if isItemAccessible("long, large plug") && $activeSlave.breedingMark != 1>>
+<<if isItemAccessible("long, large plug") && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 	| <<link "Long and large">>
 		<<set $activeSlave.buttplug = "long, large plug">>
 		<<replace "#buttplug">>$activeSlave.buttplug<</replace>>
@@ -831,7 +831,7 @@ Anal accessory: ''<span id="buttplug">$activeSlave.buttplug</span>.''
 	<<replace "#buttplugDescription">>//<<buttplugDescription>>//<</replace>>
 <</link>><</if>>
 <<if isItemAccessible("long, huge plug")>>
-	<<if $activeSlave.breedingMark != 1 && $activeSlave.anus >= 2>>
+	<<if ($activeSlave.breedingMark != 1 || $propOutcome == 0) && $activeSlave.anus >= 2>>
 		| <<link "Long and huge">>
 			<<set $activeSlave.buttplug = "long, huge plug">>
 			<<replace "#buttplug">>$activeSlave.buttplug<</replace>>
diff --git a/src/utility/assayWidgets.tw b/src/utility/assayWidgets.tw
index 8615dd404bb..52b484a0535 100644
--- a/src/utility/assayWidgets.tw
+++ b/src/utility/assayWidgets.tw
@@ -757,7 +757,7 @@
 	<<set $beauty += $args[0].births*($arcologies[0].FSRepopulationFocus/75)>>
 <</if>>
 <<elseif $arcologies[0].FSRestart > 40>>
-<<if $args[0].breedingMark == 1>>
+<<if $args[0].breedingMark == 1 && $propOutcome == 1>>
 	<<if $args[0].preg > 5 && $args[0].pregSource == -1>>
 		<<set $beauty += $arcologies[0].FSRestart>> /*100*/
 	<</if>>
@@ -1075,6 +1075,13 @@
 <<if $args[0].prestige > 0>>
 	<<set $beauty += ($beauty*$args[0].prestige*0.5)>>
 <</if>>
+<<if $args[0].prestige >= 3>>
+	<<set $beauty += ($beauty*.5)>>
+<<elseif $args[0].prestige == 2>>
+	<<set $beauty += ($beauty*0.25)>>
+<<elseif $args[0].prestige == 1>>
+	<<set $beauty += ($beauty*0.1)>>
+<</if>>
 <<if $args[0].pornPrestige == 3>>
 	<<set $beauty += ($beauty*1.0)>>
 <<elseif $args[0].pornPrestige == 2>>
@@ -1084,7 +1091,11 @@
 <</if>>
 
 <<if $args[0].breedingMark == 1>>
-	<<set $beauty = Math.trunc($beauty*2)>>
+	<<if $propOutcome == 1>>
+		<<set $beauty = Math.trunc($beauty*2)>>
+	<<else>>
+		<<set $beauty += 2>>
+	<</if>>
 <</if>>
 
 <<if $beauty < 1>>
diff --git a/src/utility/birthWidgets.tw b/src/utility/birthWidgets.tw
index 3a3a6f19885..01f6b1af2fa 100644
--- a/src/utility/birthWidgets.tw
+++ b/src/utility/birthWidgets.tw
@@ -1186,7 +1186,7 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to her prepared
 
 <</switch>>
 
-<<if $slaves[$i].breedingMark == 1 && $slaves[$i].pregSource == -1>>
+<<if $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $slaves[$i].pregSource == -1 && $eugenicsFullControl != 1>>
 	<br>The Societal Elite @@.red;are furious@@ you would allow an elite child to perish under your watch<<if _curBabies > 1>>, let alone multiple<</if>>.
 	<<set $failedElite += 100>>
 <</if>>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index e989341faca..ae4cfbdbab7 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -11965,25 +11965,25 @@ $He has
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		Your eugenics obsessed society views $his massive pregnant belly as complete degeneracy.
 	<<elseif $activeSlave.bellyPreg >= 15000>>
-		<<if $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+		<<if $activeSlave.breedingMark == 1 && $propOutcome == 1 && $activeSlave.pregSource == -1>>
 			Your eugenics obsessed society is pleased that $he is ripe with your child.
 		<<else>>
 			Your eugenics obsessed society finds $his huge pregnant belly absolutely disgusting.
 		<</if>>
 	<<elseif $activeSlave.bellyPreg >= 10000>>
-		<<if $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+		<<if $activeSlave.breedingMark == 1 && $propOutcome == 1 && $activeSlave.pregSource == -1>>
 			Your eugenics obsessed society is pleased that $he is heavy with your child.
 		<<else>>
 			Your eugenics obsessed society finds $his big pregnant belly absolutely disgusting.
 		<</if>>
 	<<elseif $activeSlave.bellyPreg >= 5000>>
-		<<if $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+		<<if $activeSlave.breedingMark == 1 && $propOutcome == 1 && $activeSlave.pregSource == -1>>
 			Your eugenics obsessed society is pleased that $he is swollen with your child.
 		<<else>>
 			Your eugenics obsessed society finds $his pregnant belly disgusting.
 		<</if>>
 	<<elseif $activeSlave.bellyPreg >= 1500>>
-		<<if $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+		<<if $activeSlave.breedingMark == 1 && $propOutcome == 1 && $activeSlave.pregSource == -1>>
 			Your eugenics obsessed society is pleased that $he is swelling with your child.
 		<<else>>
 			Your eugenics obsessed society finds $his developing pregnancy insulting.
@@ -12082,8 +12082,13 @@ $He has
 				$He has $activeSlave.brand branded into the flesh of $his $activeSlave.brandLocation.
 			<</if>>
 		<</if>>
-		<<if ($activeSlave.breedingMark == 1)>>
-			The Societal Elites' mark designating $his as a breeder is prominently displayed across $his lower belly, beneath $his navel.
+		<<if $activeSlave.breedingMark == 1>>
+			<<if $propOutcome == 1>>
+				The Societal Elites' mark designating $his as a breeder is prominently displayed across $his lower belly, beneath $his navel.
+			<<else>>
+				An alluring tattoo is prominently displayed across $his lower belly, beneath $his navel, urging $him to be bred.
+			<</if>>
+		<</if>>
 		<</if>>
 		<<if _heavyBelly == 1>>
 			<<if canWalk($activeSlave)>>
@@ -14953,8 +14958,12 @@ $He has
 	$He has $activeSlave.brand branded into the flesh of $his $activeSlave.brandLocation.
 <</if>>
 
-<<if ($activeSlave.breedingMark == 1)>>
-	The Societal Elites' mark designating $his as a breeder is prominently displayed across $his lower belly, beneath $his navel.
+<<if $activeSlave.breedingMark == 1>>
+	<<if $propOutcome == 1>>
+		The Societal Elites' mark designating $his as a breeder is prominently displayed across $his lower belly, beneath $his navel.
+	<<else>>
+		An alluring tattoo is prominently displayed across $his lower belly, beneath $his navel, urging $him to be bred.
+	<</if>>
 <</if>>
 
 <<if $activeSlave.physicalAge >= 13>>
@@ -15879,8 +15888,12 @@ $He has
 	$He has $activeSlave.brand branded into the flesh of $his $activeSlave.brandLocation.
 <</if>>
 
-<<if ($activeSlave.breedingMark == 1)>>
-	The Societal Elites' mark designating $his as a breeder is prominently displayed across $his lower belly, beneath $his navel.
+<<if $activeSlave.breedingMark == 1>>
+	<<if $propOutcome == 1>>
+		The Societal Elites' mark designating $his as a breeder is prominently displayed across $his lower belly, beneath $his navel.
+	<<else>>
+		An alluring tattoo is prominently displayed across $his lower belly, beneath $his navel, urging $him to be bred.
+	<</if>>
 <</if>>
 
 <</widget>>
diff --git a/src/utility/miscWidgets.tw b/src/utility/miscWidgets.tw
index ab9f0fe06b8..f37c9d96cea 100644
--- a/src/utility/miscWidgets.tw
+++ b/src/utility/miscWidgets.tw
@@ -200,7 +200,7 @@
 			<</if>>
 		<</if>>
 		| <<link "Fertility">><<set $activeSlave.drugs = "fertility drugs">><<SlaveInteractDrugs>><</link>>
-		<<if ($seeHyperPreg == 1) && ($activeSlave.indentureRestrictions < 1) && ($superFertilityDrugs == 1) && $activeSlave.breedingMark != 1>>
+		<<if ($seeHyperPreg == 1) && ($activeSlave.indentureRestrictions < 1) && ($superFertilityDrugs == 1) && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 			| <<link "Fertility+">><<set $activeSlave.drugs = "super fertility drugs">><<SlaveInteractDrugs>><</link>>
 		<</if>>
 		<<if ($activeSlave.dick > 0)>>
@@ -272,7 +272,7 @@
 				| Weight loss pills
 			<</if>>
 		<</if>>
-		<<if $precociousPuberty == 1 && $pubertyHormones == 1 && $activeSlave.breedingMark != 1>>
+		<<if $precociousPuberty == 1 && $pubertyHormones == 1 && ($activeSlave.breedingMark != 1 || $propOutcome == 0)>>
 			<<if ($activeSlave.ovaries == 1 || $activeSlave.mpreg == 1) && $activeSlave.pubertyXX == 0>>
 				| <<link "Female hormone injections">><<set $activeSlave.drugs = "female hormone injections">><<SlaveInteractDrugs>><</link>>
 			<</if>>
@@ -328,7 +328,7 @@
 			<</if>>
 		<<elseif ($activeSlave.preg > 35)>>
 			[[Give her a cesarean section|csec]]
-		<<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+		<<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $propOutcome == 1 && $activeSlave.pregSource == -1>>
 			//You are forbidden from aborting an elite child//
 		<<elseif ($activeSlave.preg > 0)>>
 			[[Abort her pregnancy|Abort]]
@@ -372,14 +372,14 @@
 			<</if>>
 		<<elseif ($activeSlave.preg > 35)>>
 			[[Give it a cesarean section|csec]]
-		<<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $activeSlave.pregSource == -1>>
+		<<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $propOutcome == 1 && $activeSlave.pregSource == -1>>
 			//You are forbidden from aborting an elite child//
 		<<elseif ($activeSlave.preg > 0)>>
 			[[Abort its pregnancy|Abort]]
 		<</if>>
 	<</if>>
 <</if>>
-<<if ($activeSlave.pregKnown == 1) && ($pregSpeedControl == 1) && ($activeSlave.breedingMark != 1) && ($activeSlave.indentureRestrictions < 1) && ($activeSlave.broodmother == 0) && $seePreg != 0>>
+<<if ($activeSlave.pregKnown == 1) && ($pregSpeedControl == 1) && ($activeSlave.breedingMark != 1 || $propOutcome == 0) && ($activeSlave.indentureRestrictions < 1) && ($activeSlave.broodmother == 0) && $seePreg != 0>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
 	__Pregnancy control__: <<if $activeSlave.pregControl == "labor supressors">>Labor is suppressed<<elseif $activeSlave.pregControl == "slow gestation">>Slowed gestation speed<<elseif $activeSlave.pregControl == "speed up">>Faster gestation speed, staffed clinic recommended<<else>>Normal gestation and birth<</if>>.
 	<<if ($activeSlave.preg >= 38)>>
-- 
GitLab


From f576cbbe166f83cf5ab0d4fb67c1bf0f8d5cb57d Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 25 Jul 2018 23:58:50 -0400
Subject: [PATCH 121/189] corrections

---
 src/uncategorized/remoteSurgery.tw     | 2 +-
 src/uncategorized/saLongTermEffects.tw | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index 3cb829a4075..cd2b63cb3da 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -556,7 +556,7 @@ $pronounCap's
 
 <<if $activeSlave.indentureRestrictions >= 2>>
 	//$possessiveCap indenture forbids elective surgery//
-<<elseif $activeSlave.breedingMark == 1 && $porpOutcome == 1>>
+<<elseif $activeSlave.breedingMark == 1 && $propOutcome == 1>>
 	//You are forbidden from affecting $possessive fertility//
 <<elseif $activeSlave.preg > 0 || $activeSlave.inflation > 0 || $activeSlave.broodmother > 0>>
 	//$pronounCap is unable to support an abdominal implant at this time//
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index d0aa38a3c16..fa107c25097 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -7721,7 +7721,7 @@
 <</if>>
 <</if>>
 
-<<if $slaves[$i].breedingMark == 1 && $propPass == 1 && $eugenicsFullControl != 1>>
+<<if $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $eugenicsFullControl != 1>>
 	<<if $slaves[$i].preg > 3 || $slaves[$i].pregKnown == 1>>
 		<<if $slaves[$i].pregSource != -1>>
 			$slaves[$i].slaveName's weekly health checkup revealed she is pregnant with an unacceptable child. @@.red;Its life has been terminated, you have been fined <<print cashFormat(100000)>>, and your rep among the Elite has been severely damaged.@@
-- 
GitLab


From 111057152eea8b44ddf2fde9b0acd3b1eb763acf Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Thu, 26 Jul 2018 00:43:33 -0400
Subject: [PATCH 122/189] fixes and less elite bitchiness

---
 src/uncategorized/dairyReport.tw            |  2 +-
 src/uncategorized/masterSuiteReport.tw      |  2 +-
 src/uncategorized/saLongTermEffects.tw      |  2 +-
 src/uncategorized/servantsQuartersReport.tw |  2 +-
 src/uncategorized/tfsFarmUpgrade.tw         | 12 ++++++------
 src/utility/descriptionWidgetsFlesh.tw      |  1 -
 6 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw
index ed33c55cd44..4cc33bd32a8 100644
--- a/src/uncategorized/dairyReport.tw
+++ b/src/uncategorized/dairyReport.tw
@@ -970,7 +970,7 @@ $dairyNameCaps produced <<print _milkWeek+_outputMilk>> liters of milk<<if _cumW
 	Additionally, one cow gave birth<<if _births > _birthers>> to a total of _births calves<</if>> this week.
 <</if>>
 
-<<if $arcologies[0].FSRestart != "unset">>
+<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>>
 <<if $dairyPregSetting > 0>>
 	The Societal Elite know what you are doing with your cows. @@.red;They do not approve@@.
 	<<set $failedElite += 5>>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index 6e3bbc38f1a..10b20b7c1ce 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -399,7 +399,7 @@
 
 	<br><br>
 
-	<<if $arcologies[0].FSRestart != "unset" && $propOutcome != 1 && _masterSuitePregnantSlaves > 0>>
+	<<if $arcologies[0].FSRestart != "unset" && $propOutcome != 1 && _masterSuitePregnantSlaves > 0 && $eugenicsFullControl != 1>>
 		The Societal Elite know what you are doing with your bedslaves. @@.red;They do not approve.@@
 		<<set $failedElite += 5*_masterSuitePregnantSlaves>>
 	<</if>>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index fa107c25097..4c61c422d47 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -5367,7 +5367,7 @@
 		Society is @@.green;pleased@@ that $slaves[$i].slaveName is unable to become pregnant.
 		<<FSChangePorn "Eugenics" 2>>
 	<</if>>
-	<<if $slaves[$i].pregKnown == 1>>
+	<<if $slaves[$i].pregKnown == 1 && $eugenicsFullControl != 1>>
 		The Societal Elite @@.red;judge you@@ for keeping pregnant slaves. It falls to the slave owner to deal with subhuman pregnancies and you are failing in your duties as a member of the Elite.
 		<<set $failedElite += 5+$slaves[$i].pregType>>
 	<</if>>
diff --git a/src/uncategorized/servantsQuartersReport.tw b/src/uncategorized/servantsQuartersReport.tw
index c82db200d59..a5dd8b40aba 100644
--- a/src/uncategorized/servantsQuartersReport.tw
+++ b/src/uncategorized/servantsQuartersReport.tw
@@ -189,7 +189,7 @@
 	<</if>>
 <</if>>
 
-<<if $arcologies[0].FSRestart != "unset" && _stewardessImpregnated == 1>>
+<<if $arcologies[0].FSRestart != "unset" && _stewardessImpregnated == 1 && $eugenicsFullControl != 1>>
 	The Societal Elite know you've ordered $Stewardess.slaveName to impregnate your maids. @@.red;They are not amused by your disinterest in eugenics.@@
 	<<set $failedElite += 10>>
 <</if>>
diff --git a/src/uncategorized/tfsFarmUpgrade.tw b/src/uncategorized/tfsFarmUpgrade.tw
index d72bf88dead..cecce182da6 100644
--- a/src/uncategorized/tfsFarmUpgrade.tw
+++ b/src/uncategorized/tfsFarmUpgrade.tw
@@ -37,9 +37,9 @@ whether we will use contraception after we are transformed." She shudders sudden
 <<if $seePreg != 0>>
 	<br><<link "Permit them access, and encourage them to get pregnant">>
 		<<replace "#result">>
-			You signify your assent, telling the Sister that the organ farm will accept seed tissue from any of them for the purpose of fabricating ovaries. To your mild surprise, she responds with cutely inelegant crying. You add that you think the world needs more Futanari Sisters, especially ones as cute and sexy as you're confident her many daughters will be. At that, she breaks down completely, one of her hands going to rub her belly gently. It takes her a long time to manage to thank to properly, and she hurries to end the call before she can embarrass herself further.<<if $arcologies[0].FSRestartDecoration == 100>> The Societal Elite are @@.red;outraged@@ that you would not only allow such a breach of eugenics to occur, but encourage it.<</if>>
+			You signify your assent, telling the Sister that the organ farm will accept seed tissue from any of them for the purpose of fabricating ovaries. To your mild surprise, she responds with cutely inelegant crying. You add that you think the world needs more Futanari Sisters, especially ones as cute and sexy as you're confident her many daughters will be. At that, she breaks down completely, one of her hands going to rub her belly gently. It takes her a long time to manage to thank to properly, and she hurries to end the call before she can embarrass herself further.<<if $arcologies[0].FSRestartDecoration == 100 && $eugenicsFullControl != 1>> The Societal Elite are @@.red;outraged@@ that you would not only allow such a breach of eugenics to occur, but encourage it.<</if>>
 			<<set $TFS.farmUpgrade = 2>>
-			<<if $arcologies[0].FSRestart != "unset">>
+			<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>>
 				<<set $failedElite += 275>>
 			<</if>>
 		<</replace>>
@@ -47,9 +47,9 @@ whether we will use contraception after we are transformed." She shudders sudden
 	<<if $seeHyperPreg == 1>>
 		<br><<link "Permit them access, and encourage them to embrace hyperpregnancy.">>
 			<<replace "#result">>
-				You signify your assent, telling the Sister that the organ farm will accept seed tissue from any of them for the purpose of fabricating ovaries, so long as they are willing to bear as many children as they can handle. To your mild surprise, she responds with cutely inelegant crying. You add that you think the world needs many more Futanari Sisters, especially ones as cute and sexy as you're confident her countless daughters will be. At that, she breaks down completely, one of her hands going to rub her belly gently. It takes her a long time to manage to thank to properly, and she hurries to end the call before she can embarrass herself further.<<if $arcologies[0].FSRestartDecoration == 100>> The Societal Elite are @@.red;outraged@@ that you would not only allow such a breach of eugenics to occur, but encourage it to such an obscene degree.<</if>>
+				You signify your assent, telling the Sister that the organ farm will accept seed tissue from any of them for the purpose of fabricating ovaries, so long as they are willing to bear as many children as they can handle. To your mild surprise, she responds with cutely inelegant crying. You add that you think the world needs many more Futanari Sisters, especially ones as cute and sexy as you're confident her countless daughters will be. At that, she breaks down completely, one of her hands going to rub her belly gently. It takes her a long time to manage to thank to properly, and she hurries to end the call before she can embarrass herself further.<<if $arcologies[0].FSRestartDecoration == 100 && $eugenicsFullControl != 1>> The Societal Elite are @@.red;outraged@@ that you would not only allow such a breach of eugenics to occur, but encourage it to such an obscene degree.<</if>>
 				<<set $TFS.farmUpgrade = 3>>
-				<<if $arcologies[0].FSRestart != "unset">>
+				<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>>
 					<<set $failedElite += 1000>>
 				<</if>>
 			<</replace>>
@@ -58,9 +58,9 @@ whether we will use contraception after we are transformed." She shudders sudden
 	/*
 	<br><<link "Decline, but grant them something more fitting">>
 		<<replace "#result">>
-			You signify your assent, telling the Sister that the organ farm will accept seed tissue from any of them for the purpose of fabricating testicular ovaries, which shou. To your mild surprise, she responds with cutely inelegant crying. You add that you think the world needs more Futanari Sisters, especially ones as cute and sexy as you're confident her many daughters will be. At that, she breaks down completely, one of her hands going to rub her balls gently. It takes her a long time to manage to thank to properly, and she hurries to end the call before she can embarrass herself further.<<if $arcologies[0].FSRestartDecoration == 100>> The Societal Elite are @@.red;outraged@@ that you would not only allow such a breach of eugenics to occur, but encourage it.<</if>>
+			You signify your assent, telling the Sister that the organ farm will accept seed tissue from any of them for the purpose of fabricating testicular ovaries, which shou. To your mild surprise, she responds with cutely inelegant crying. You add that you think the world needs more Futanari Sisters, especially ones as cute and sexy as you're confident her many daughters will be. At that, she breaks down completely, one of her hands going to rub her balls gently. It takes her a long time to manage to thank to properly, and she hurries to end the call before she can embarrass herself further.<<if $arcologies[0].FSRestartDecoration == 100 && $eugenicsFullControl != 1>> The Societal Elite are @@.red;outraged@@ that you would not only allow such a breach of eugenics to occur, but encourage it.<</if>>
 			<<set $TFS.farmUpgrade = 4>>
-			<<if $arcologies[0].FSRestart != "unset">>
+			<<if $arcologies[0].FSRestart != "unset" && $eugenicsFullControl != 1>>
 				<<set $failedElite += 100>>
 			<</if>>
 		<</replace>>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index ae4cfbdbab7..7049173e53f 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -12089,7 +12089,6 @@ $He has
 				An alluring tattoo is prominently displayed across $his lower belly, beneath $his navel, urging $him to be bred.
 			<</if>>
 		<</if>>
-		<</if>>
 		<<if _heavyBelly == 1>>
 			<<if canWalk($activeSlave)>>
 				$His <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>stomach<</if>> is so massive that it is difficult for $his to move.
-- 
GitLab


From dfa7e5af44fa0b5ea4513837617ead2da24cdb60 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Wed, 25 Jul 2018 23:54:49 -0500
Subject: [PATCH 123/189] Fix2

---
 src/uncategorized/arcadeReport.tw           |  6 ++----
 src/uncategorized/brothelReport.tw          |  2 --
 src/uncategorized/cellblockReport.tw        |  2 ++
 src/uncategorized/clinicReport.tw           |  2 --
 src/uncategorized/clubReport.tw             |  2 --
 src/uncategorized/dairyReport.tw            |  2 --
 src/uncategorized/endWeek.tw                |  2 --
 src/uncategorized/fullReport.tw             |  2 +-
 src/uncategorized/masterSuiteReport.tw      |  2 --
 src/uncategorized/saBeYourHeadGirl.tw       |  2 --
 src/uncategorized/saChoosesOwnJob.tw        |  1 -
 src/uncategorized/saDevotion.tw             |  2 --
 src/uncategorized/saDiet.tw                 |  2 --
 src/uncategorized/saDrugs.tw                |  3 ++-
 src/uncategorized/saGetMilked.tw            |  2 --
 src/uncategorized/saGuardsYou.tw            |  2 --
 src/uncategorized/saHormoneEffects.tw       |  2 --
 src/uncategorized/saLiveWithHG.tw           |  2 --
 src/uncategorized/saLongTermEffects.tw      |  2 --
 src/uncategorized/saPleaseYou.tw            |  2 --
 src/uncategorized/saRecruitGirls.tw         |  2 --
 src/uncategorized/saRelationships.tw        |  2 --
 src/uncategorized/saRivalries.tw            |  2 --
 src/uncategorized/saRules.tw                |  2 --
 src/uncategorized/saServeThePublic.tw       |  2 --
 src/uncategorized/saServeYourOtherSlaves.tw |  2 --
 src/uncategorized/saStayConfined.tw         |  2 --
 src/uncategorized/saTakeClasses.tw          |  2 --
 src/uncategorized/saWhore.tw                |  2 --
 src/uncategorized/saWorkAGloryHole.tw       |  2 --
 src/uncategorized/servantsQuartersReport.tw |  2 --
 src/uncategorized/spaReport.tw              |  2 --
 src/utility/descriptionWidgetsFlesh.tw      | 11 +++++------
 33 files changed, 12 insertions(+), 67 deletions(-)

diff --git a/src/uncategorized/arcadeReport.tw b/src/uncategorized/arcadeReport.tw
index 8a13eea6107..4d5cfd632ca 100644
--- a/src/uncategorized/arcadeReport.tw
+++ b/src/uncategorized/arcadeReport.tw
@@ -1,7 +1,5 @@
 :: Arcade Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <span id="arcadestats">
 </span>
 
@@ -77,7 +75,7 @@
 		<<else>>
 			is confined in $arcadeName.
 		<</if>>
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;She <<include "SA work a glory hole">>
+		<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<include "SA work a glory hole">>
 	<<else>>
 		<<silently>>
 			<<include "SA chooses own job">>
@@ -94,7 +92,7 @@
 		<<elseif ($slaves[$i].lactation > 0) || ($slaves[$i].balls > 0)>>
 			<<set _oldCash = $cash>>
 			<<if $showEWD != 0>>
-				<br>&nbsp;&nbsp;&nbsp;&nbsp;She <<include "SA get milked">>
+				<br>&nbsp;&nbsp;&nbsp;&nbsp;$He <<include "SA get milked">>
 			<<else>>
 				<<silently>><<include "SA get milked">><</silently>>
 			<</if>>
diff --git a/src/uncategorized/brothelReport.tw b/src/uncategorized/brothelReport.tw
index 075a64fcfa3..ee6d56c7d9e 100644
--- a/src/uncategorized/brothelReport.tw
+++ b/src/uncategorized/brothelReport.tw
@@ -1,7 +1,5 @@
 :: Brothel Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <span id="brothelstats">
 </span>
 
diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw
index ba8f6917192..772c77ddc3b 100644
--- a/src/uncategorized/cellblockReport.tw
+++ b/src/uncategorized/cellblockReport.tw
@@ -1,5 +1,7 @@
 :: Cellblock Report [nobr]
 
+<<setLocalPronouns $slaves[$i]>>
+
 <<SlaveSort $CellBiIDs>>
 <<set _DL = $CellBiIDs.length, $cellblockSlaves = _DL, _SL = $slaves.length, _brokenSlaves = 0, _idleBonus = 0, _softenedQuirks = 0, _trustMalus = 0, _FLsFetish = 0>>
 
diff --git a/src/uncategorized/clinicReport.tw b/src/uncategorized/clinicReport.tw
index cdd74b315c1..b0b8e8e5ffd 100644
--- a/src/uncategorized/clinicReport.tw
+++ b/src/uncategorized/clinicReport.tw
@@ -1,7 +1,5 @@
 :: Clinic Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<SlaveSort $CliniciIDs>>
 <<set _DL = $CliniciIDs.length, $clinicSlaves = _DL, _SL = $slaves.length, _healthBonus = 0, _idleBonus = 0, _FLsFetish = 0, _restedSlaves = 0>>
 
diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw
index 3087032d979..8dbdffa6dd9 100644
--- a/src/uncategorized/clubReport.tw
+++ b/src/uncategorized/clubReport.tw
@@ -1,7 +1,5 @@
 :: Club Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <span id="clubstats">
 </span>
 
diff --git a/src/uncategorized/dairyReport.tw b/src/uncategorized/dairyReport.tw
index 0437d425c4b..ed33c55cd44 100644
--- a/src/uncategorized/dairyReport.tw
+++ b/src/uncategorized/dairyReport.tw
@@ -1,7 +1,5 @@
 :: Dairy Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <span id="dairystats">
 </span>
 
diff --git a/src/uncategorized/endWeek.tw b/src/uncategorized/endWeek.tw
index 3ef296ce538..7b1662a96ae 100644
--- a/src/uncategorized/endWeek.tw
+++ b/src/uncategorized/endWeek.tw
@@ -1,7 +1,5 @@
 :: End Week [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<set State.expired.length = 0>>
 
 <<set $gingering = 0, $oralUseWeight = 5, $vaginalUseWeight = 5, $analUseWeight = 5, $mammaryUseWeight = 1, $penetrativeUseWeight = 1, $inflatedSlavesMilk = 0, $inflatedSlavesCum = 0, $subSlaves = 0>>
diff --git a/src/uncategorized/fullReport.tw b/src/uncategorized/fullReport.tw
index 2f4faf48581..babafb62142 100644
--- a/src/uncategorized/fullReport.tw
+++ b/src/uncategorized/fullReport.tw
@@ -8,7 +8,7 @@
 <</if>>
 /* 000-250-006 */
 
-<<run SlavePronouns($slaves[$i])>>
+<<setLocalPronouns $slaves[$i]>>
 
 <<switch $slaves[$i].assignment>>
 <<case "rest">>
diff --git a/src/uncategorized/masterSuiteReport.tw b/src/uncategorized/masterSuiteReport.tw
index 4d3ddf5b49f..6e3bbc38f1a 100644
--- a/src/uncategorized/masterSuiteReport.tw
+++ b/src/uncategorized/masterSuiteReport.tw
@@ -1,7 +1,5 @@
 :: Master Suite Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<SlaveSort $MastSiIDs>>
 <<set _DL = $MastSiIDs.length, $masterSuiteSlaves = _DL, _SL = $slaves.length, $legendaryAbolitionistID = 0, $masterSuiteAverageEnergy = 0, _masterSuiteAverageCum = 0, _masterSuiteAverageDick = 0, _masterSuiteAverageDom = 0, _masterSuiteAverageMilk = 0, _masterSuiteAveragePreg = 0, _masterSuiteAverageSadism = 0, _masterSuitePregnantSlaves = 0, _masterSuitePregnantSlavesMultiple = 0>>
 <<if $Concubine != 0>>
diff --git a/src/uncategorized/saBeYourHeadGirl.tw b/src/uncategorized/saBeYourHeadGirl.tw
index 948b611343f..1adb927b066 100644
--- a/src/uncategorized/saBeYourHeadGirl.tw
+++ b/src/uncategorized/saBeYourHeadGirl.tw
@@ -1,7 +1,5 @@
 :: SA be your Head Girl [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<set $HGTimeInGrade += 1>>
 
 <<if $HGSuite == 1>>
diff --git a/src/uncategorized/saChoosesOwnJob.tw b/src/uncategorized/saChoosesOwnJob.tw
index f8087228afa..d26842c7ca2 100644
--- a/src/uncategorized/saChoosesOwnJob.tw
+++ b/src/uncategorized/saChoosesOwnJob.tw
@@ -6,7 +6,6 @@
 <<elseif ($slaves[$i].choosesOwnAssignment == 2)>> /* second pass happens visibly during weekly report for the location where this slave decided to go (or stay) */
 	/* display text but don't change assignment (already done) */
 
-	<<run SlavePronouns($slaves[$i])>>
 	<<set $desc = SlaveTitle($slaves[$i])>>
 	<<print $slaves[$i].choosesOwnAssignmentText>>
 	<<set $slaves[$i].choosesOwnAssignmentText = "", $slaves[$i].choosesOwnAssignment = 1>> /* continue cycle for next week */
diff --git a/src/uncategorized/saDevotion.tw b/src/uncategorized/saDevotion.tw
index ea669595c51..5b9e6b4da1e 100644
--- a/src/uncategorized/saDevotion.tw
+++ b/src/uncategorized/saDevotion.tw
@@ -1,7 +1,5 @@
 :: SA devotion [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 &nbsp;&nbsp;&nbsp;&nbsp;
 
 <<if $slaves[$i].fetish == "mindbroken">>
diff --git a/src/uncategorized/saDiet.tw b/src/uncategorized/saDiet.tw
index cf5c111b065..0f52135aeda 100644
--- a/src/uncategorized/saDiet.tw
+++ b/src/uncategorized/saDiet.tw
@@ -1,7 +1,5 @@
 :: SA diet [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<if $slaves[$i].fuckdoll == 0>>
 
 <<if $feeder == 1>>
diff --git a/src/uncategorized/saDrugs.tw b/src/uncategorized/saDrugs.tw
index 37f3f2e2104..aa5abaaf9d3 100644
--- a/src/uncategorized/saDrugs.tw
+++ b/src/uncategorized/saDrugs.tw
@@ -4,6 +4,7 @@
 *   1/2 the growth, however, boob and butt fat is interpreted as excess fat by NCS and so is converted to slave
 *   sexual energy.
 */
+
 <<if $slaves[$i].drugs == "intensive breast injections" || $slaves[$i].drugs == "intensive butt injections" || $slaves[$i].drugs == "intensive penis enhancement" || $slaves[$i].drugs == "intensive testicle enhancement">>
 	<<set _intensive = 1>>
 <</if>>
@@ -1196,7 +1197,7 @@
 
 <<if $slaves[$i].curatives < 2 && $slaves[$i].inflationType != "curative" && $slaves[$i].assignment != "get treatment in the clinic">>
 <<if $slaves[$i].health < -50>>
-	It's difficult being so ill, and $he @@.mediumorchid;resents you@@ for not treating $his.
+	It's difficult being so ill, and $he @@.mediumorchid;resents you@@ for not treating $him.
 	<<set $slaves[$i].devotion -= 2>>
 <<elseif ($slaves[$i].health > 50)>>
 	<<if $slaves[$i].fuckdoll == 0>>
diff --git a/src/uncategorized/saGetMilked.tw b/src/uncategorized/saGetMilked.tw
index af07ea574a6..6762e5a4eb8 100644
--- a/src/uncategorized/saGetMilked.tw
+++ b/src/uncategorized/saGetMilked.tw
@@ -1,7 +1,5 @@
 :: SA get milked [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <!-- Statistics gathering -->
 <<set _incomeStats = getSlaveStatisticData($slaves[$i], $slaves[$i].assignment === Job.DAIRY ? $facility.dairy : undefined)>>
 <<set _incomeStats.milk = 0; _incomeStats.cum = 0; _incomeStats.fluid = 0>>
diff --git a/src/uncategorized/saGuardsYou.tw b/src/uncategorized/saGuardsYou.tw
index 39853b9da8c..50dc26d0cda 100644
--- a/src/uncategorized/saGuardsYou.tw
+++ b/src/uncategorized/saGuardsYou.tw
@@ -1,7 +1,5 @@
 :: SA guard you [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 carries arms in your defense.
 
 <<if $dojo > 1>>
diff --git a/src/uncategorized/saHormoneEffects.tw b/src/uncategorized/saHormoneEffects.tw
index 32b284e1449..072eff184d0 100644
--- a/src/uncategorized/saHormoneEffects.tw
+++ b/src/uncategorized/saHormoneEffects.tw
@@ -1,7 +1,5 @@
 :: SA hormone effects [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<if $slaves[$i].hormoneBalance <= -400>>
 	$His hormone balance is overwhelmingly masculine.
 <<elseif $slaves[$i].hormoneBalance <= -300>>
diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw
index b5c7974b4fe..17febf6318a 100644
--- a/src/uncategorized/saLiveWithHG.tw
+++ b/src/uncategorized/saLiveWithHG.tw
@@ -1,7 +1,5 @@
 :: SA live with HG [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<set $HeadGirl = $slaves[_iTemp]>>
 <<set _oralUse = 0, _analUse = 0, _vaginalUse = 0, _mammaryUse = 0, _penetrativeUse = 0>>
 
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 21f1070be6f..d398a5a60cd 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -1,7 +1,5 @@
 :: SA long term effects [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<set _fetishChangeChance = fetishChangeChance($slaves[$i])>>
 <<set $bellyAccessory = $slaves[$i].bellyAccessory>>
 <<set _para = 0>>
diff --git a/src/uncategorized/saPleaseYou.tw b/src/uncategorized/saPleaseYou.tw
index c8ec90ae3c7..4c293035f14 100644
--- a/src/uncategorized/saPleaseYou.tw
+++ b/src/uncategorized/saPleaseYou.tw
@@ -1,7 +1,5 @@
 :: SA please you [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 serves you this week.
 
 <<set _trainingEfficiency = 5+Math.trunc($slaves[$i].devotion/30)+$slaves[$i].intelligence>>
diff --git a/src/uncategorized/saRecruitGirls.tw b/src/uncategorized/saRecruitGirls.tw
index 73412ffbefb..7c26e306095 100644
--- a/src/uncategorized/saRecruitGirls.tw
+++ b/src/uncategorized/saRecruitGirls.tw
@@ -1,7 +1,5 @@
 :: SA recruit girls [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<set $bellyAccessory = $slaves[$i].bellyAccessory>>
 
 /* Note on target sum: HG and Recruiter are the initial 2 counted (no facility req'd), while HGSuite counts the HG's girl, other facilities count associated leader */
diff --git a/src/uncategorized/saRelationships.tw b/src/uncategorized/saRelationships.tw
index 0e2a6e391cb..28704893b91 100644
--- a/src/uncategorized/saRelationships.tw
+++ b/src/uncategorized/saRelationships.tw
@@ -1,7 +1,5 @@
 :: SA relationships [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<if $slaves[$i].fuckdoll == 0>>
 	<<set _SL = $slaves.length, _SlaveI = $slaves[$i], _SlaveJ = null, _drop = 0>>
 	<<if _SlaveI.relationship == 0 && _SlaveI.fetish != "mindbroken">>
diff --git a/src/uncategorized/saRivalries.tw b/src/uncategorized/saRivalries.tw
index 3f47a4b7c8b..5aaecc3d0b6 100644
--- a/src/uncategorized/saRivalries.tw
+++ b/src/uncategorized/saRivalries.tw
@@ -1,7 +1,5 @@
 :: SA rivalries [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<set _SL = $slaves.length>>
 
 <<if $slaves[$i].rivalry == 0>>
diff --git a/src/uncategorized/saRules.tw b/src/uncategorized/saRules.tw
index d7b285125d3..aae869cb0b8 100644
--- a/src/uncategorized/saRules.tw
+++ b/src/uncategorized/saRules.tw
@@ -1,7 +1,5 @@
 :: SA rules [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<if $slaves[$i].fuckdoll == 0>>
 	$He
 	<<if $slaves[$i].fetish == "mindbroken">>
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index 8fda43e908b..f3432bd5b0e 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -1,7 +1,5 @@
 :: SA serve the public [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <!-- Statistics gathering -->
 <<set _incomeStats = getSlaveStatisticData($slaves[$i], $slaves[$i].assignment === Job.CLUB ? $facility.club : undefined)>>
 
diff --git a/src/uncategorized/saServeYourOtherSlaves.tw b/src/uncategorized/saServeYourOtherSlaves.tw
index c245941b415..2b32dc4c65c 100644
--- a/src/uncategorized/saServeYourOtherSlaves.tw
+++ b/src/uncategorized/saServeYourOtherSlaves.tw
@@ -1,7 +1,5 @@
 :: SA serve your other slaves [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<set _oralUse = 0, _analUse = 0, _vaginalUse = 0, _mammaryUse = 0, _penetrativeUse = 0>>
 
 <<set _dom = $slaveIndices[$slaves[$i].subTarget]>>
diff --git a/src/uncategorized/saStayConfined.tw b/src/uncategorized/saStayConfined.tw
index 7cb2f6bf72c..d78dbe03f4e 100644
--- a/src/uncategorized/saStayConfined.tw
+++ b/src/uncategorized/saStayConfined.tw
@@ -1,7 +1,5 @@
 :: SA stay confined [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<if $slaves[$i].fetish != "mindbroken">>
 <<if ($slaves[$i].devotion < -50)>>
 	is kept in solitary confinement whenever $he is not being forced to do something else. $He still hates $his place in the world, but being forced to rely on slave life as $his only human contact @@.hotpink;grinds down $his resistance.@@
diff --git a/src/uncategorized/saTakeClasses.tw b/src/uncategorized/saTakeClasses.tw
index 42e9bd55f6c..49be8ee56aa 100644
--- a/src/uncategorized/saTakeClasses.tw
+++ b/src/uncategorized/saTakeClasses.tw
@@ -1,7 +1,5 @@
 :: SA take classes [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<set _learning = 1>>
 
 <<if $slaves[$i].fetish == "mindbroken">>
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index ce2e73ec409..11006fb3481 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -1,7 +1,5 @@
 :: SA whore [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <!-- Statistics gathering -->
 <<set _incomeStats = getSlaveStatisticData($slaves[$i], $slaves[$i].assignment === Job.BROTHEL ? $facility.brothel : undefined)>>
 
diff --git a/src/uncategorized/saWorkAGloryHole.tw b/src/uncategorized/saWorkAGloryHole.tw
index f6724c40d5a..c8df2bc5078 100644
--- a/src/uncategorized/saWorkAGloryHole.tw
+++ b/src/uncategorized/saWorkAGloryHole.tw
@@ -1,7 +1,5 @@
 :: SA work a glory hole [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <!-- Statistics gathering -->
 <<set _incomeStats = getSlaveStatisticData($slaves[$i], $slaves[$i].assignment === Job.ARCADE ? $facility.arcade : undefined)>>
 
diff --git a/src/uncategorized/servantsQuartersReport.tw b/src/uncategorized/servantsQuartersReport.tw
index daf1e2e7f71..c82db200d59 100644
--- a/src/uncategorized/servantsQuartersReport.tw
+++ b/src/uncategorized/servantsQuartersReport.tw
@@ -1,7 +1,5 @@
 :: Servants' Quarters Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<SlaveSort $ServQiIDs>>
 <<set _DL = $ServQiIDs.length, $servantsQuartersSlaves = _DL, _SL = $slaves.length, _FLsFetish = 0, $stewardessBonus = 0>>
 
diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw
index 6d30bb1deed..c4d91e2d3f4 100644
--- a/src/uncategorized/spaReport.tw
+++ b/src/uncategorized/spaReport.tw
@@ -1,7 +1,5 @@
 :: Spa Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<SlaveSort $SpaiIDs>>
 <<set _DL = $SpaiIDs.length, $spaSlaves = _DL, _SL = $slaves.length, _bonusToggle = 0, _healthBonus = 0, _idleBonus = 0, _restedSlaves = 0, _trustBonus = 0>>
 
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 0ffc13469b5..9974e48f0ce 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -1,6 +1,5 @@
 :: flesh description widgets [widget nobr]
 
-
 <<widget "BoobsDescription">>
 
 <<if ($showClothing == 1) && ($saleDescription == 0)>>
@@ -4091,13 +4090,13 @@ $He's got a
 	<<if $activeSlave.dick == 0>>
 		In stark contrast, however, $he's been given a functional prostate gland. It's attached to $his urethra, of course, so despite $his dryness, $he squirts <<if $activeSlave.balls > 0>>semen<<else>>fluid<</if>> when $he orgasms.
 		<<if $activeSlave.prostate > 2>>
-			With the implant embedded in it, that squirt is more like a blast; $he will soak <<print $him>>self and anyone near $him.
+			With the implant embedded in it, that squirt is more like a blast; $he will soak $himself and anyone near $him.
 		<</if>>
 	<</if>>
 	<</if>>
 <<elseif ($activeSlave.vaginaLube < 2)>>
 	<<if ($activeSlave.assignment == "work in the dairy") && ($dairyPregSetting > 1)>>
-		The dildo's ejaculate includes a drug that causes copious, constant vaginal lubrication, allowing it to fuck $his despite its giant size. The excess female fluid drips off $his and into a catchbasin.
+		The dildo's ejaculate includes a drug that causes copious, constant vaginal lubrication, allowing it to fuck $him despite its giant size. The excess female fluid drips off $him and into a catchbasin.
 	<<elseif ($activeSlave.aphrodisiacs > 0) || ($activeSlave.inflationType == "aphrodisiac")>>
 		The aphrodisiacs have them <<if ($activeSlave.aphrodisiacs > 1) || ($activeSlave.inflationType == "aphrodisiac" && $activeSlave.inflation >= 2)>>sopping <</if>>wet.
 	<<elseif ($activeSlave.energy > 95)>>
@@ -4135,7 +4134,7 @@ $He's got a
 	<<if $activeSlave.dick == 0>>
 		Bizarrely, $he's been given a functional prostate gland. It's attached to $his urethra, of course, <<if $activeSlave.balls > 0>>which in combination with $his testicles make $his squirt copious amounts of fluids and semen with each orgasm<<else>>so $he squirts copiously when $he orgasms<</if>>.
 		<<if $activeSlave.prostate > 2>>
-			With the implant embedded in it; that gush is more like a flood. Changes of clothes are a must with $him, as $he can and will soak both you, <<print $him>>self and what $he is getting fucked over.
+			With the implant embedded in it; that gush is more like a flood. Changes of clothes are a must with $him, as $he can and will soak both you, $himself and what $he is getting fucked over.
 		<</if>>
 	<</if>>
 	<</if>>
@@ -11382,7 +11381,7 @@ $He has
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's cheerleader top rests atop $his massive pregnant belly clearly displaying that this cheerleader is a massive slut.
 	<<elseif $activeSlave.weight > 190>>
-		$activeSlave.slaveName's cheerleader top rests atop $his massively fat belly, completely incapable of handling the jiggly, soft mass and clearly displaying that this cheerleader has let <<print $him>>self go.
+		$activeSlave.slaveName's cheerleader top rests atop $his massively fat belly, completely incapable of handling the jiggly, soft mass and clearly displaying that this cheerleader has let $himself go.
 	<<elseif $activeSlave.bellyPreg >= 10000 || ($activeSlave.bellyAccessory == "a huge empathy belly") || ($activeSlave.bellyAccessory == "a large empathy belly")>>
 		$activeSlave.slaveName's cheerleader top rides up $his big pregnant belly, covering only the top of it while leaving the rest on display to show how slutty this cheerleader is.
 	<<elseif $activeSlave.weight > 160>>
@@ -12862,7 +12861,7 @@ $He has
 		<<elseif $activeSlave.pregSource == 0>>
 			Tests are inconclusive on who fathered the <<if $activeSlave.pregType > 1>><<if $activeSlave.pregType > 10>>many <</if>>children <<else>>child <</if>>growing in $his womb.
 		<<elseif $activeSlave.pregSource == $activeSlave.ID>>
-			Tests show $him did this to <<print $him>>self.
+			Tests show $him did this to $himself.
 		<<else>>
 			Tests show $his womb contains <<if $activeSlave.pregType > 1>><<if $activeSlave.pregType > 10>>many of <</if>><<print _daddy>>'s growing children<<else>><<print _daddy>>'s growing child<</if>>.
 		<</if>>
-- 
GitLab


From 5f37769c12e41ab89c9c06b09cf70a512eab34fd Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 26 Jul 2018 01:02:33 -0400
Subject: [PATCH 124/189] Collecting art related JS

---
 devNotes/twine JS.txt                         | 172 ++++++++++--------
 src/{js/artColorToolsJS.tw => art/artJS.tw}   | 130 ++++++++++++-
 src/art/vector/Helper_Functions.tw            |  15 --
 .../vectorRevampedArtControlJS.tw             |   0
 src/js/artJS.tw                               | 115 ------------
 5 files changed, 221 insertions(+), 211 deletions(-)
 rename src/{js/artColorToolsJS.tw => art/artJS.tw} (53%)
 delete mode 100644 src/art/vector/Helper_Functions.tw
 rename src/{js => art/vector_revamp}/vectorRevampedArtControlJS.tw (100%)
 delete mode 100644 src/js/artJS.tw

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 5f11b45370b..57bcbcad9a4 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -11475,86 +11475,6 @@ window.getHeroSlave = function(heroSlave, baseHeroSlave) {
     return newSlave;
 }
 
-/*:: Art Color Tools JS [script]*/
-
-/* 
-This takes a textual hair colour description and tries to guess the appropriate HTML compliant color code.
-
-hColor should be a color name, but can also be a string describing hair colour.
-
-This code's working is described to the user in the Encyclopedia, chapter "Lore", section "Dyes".
-*/
-window.extractHairColor = function(hColor) {
-	/* 
-	these are color names known and used in FreeCities 
-	attributed color names are at the front of the array
-	*/
-	var FCname2HTMLarray = [
-		["blazing red", "#E00E2B"],
-		["neon green", "#25d12b"],
-		["neon blue", "#2284C3"],
-		["neon pink", "#cc26aa"],
-		["strawberry-blonde", "#e5a88c"],
-		["platinum blonde", "#fcf3c1"],
-		["dark brown", "#463325"],
-		["brown", "#8D4F21"],
-		["auburn", "#7e543e"],
-		["black", "#3F4040"],
-		["blonde", "#F4F1A3"],
-		["blue", "#4685C5"],
-		["burgundy", "#5f3946"],
-		["chestnut", "#663622"],
-		["chocolate", "#6e4937"],
-		["copper", "#a16145"],
-		["ginger", "#da822d"],
-		["golden", "#ffdf31"],
-		["green", "#5FBA46"],
-		["grey", "#9e9fa4"],
-		["hazel", "#8d6f1f"],
-		["pink", "#D18CBC"],
-		["red", "#BB2027"],
-		["deep red", "#6D1318"],
-		["blue-violet", "#8790B7"],
-		["silver", "#cdc9c6"],
-		["light olive", "#d4c6bb"],
-		["dark", "#a46237"],
-		/* these are not actually FreeCities canon, but like to appear in custom descriptions */
-		["dark", "#463325"],
-		["brunette", "#8D4F21"]
-	];
-	
-	/* these are HTML color names supported by most browsers */
-	var HTMLstandardColors = ["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgrey","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred ","indigo ","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"];
-	
-	var FCnames = new Map(FCname2HTMLarray);
-	hColor = hColor.toLowerCase(); /* normalization: lowercase color name */
-	var colorCode = FCnames.get(hColor); /* look up in FreeCities color names */
-	if (!colorCode) { /* not a FreeCities color name*/
-		if (HTMLstandardColors.includes(hColor) || hColor.match(/^#([0-9a-f]{3}){1,2}$/) !== null) {
-			colorCode = hColor; /* is a HTML color name or value, use it directly */
-		} else { 
-			/* 
-			is not even a HTML color name. hColor probably is a description.
-			look for anything resembling a valid color name within the description.
-			*/
-			var hColorNoSpaces = hColor.replace(/\s+/g, ''); /* remove all spaces from description */
-			var FCkeys = Array.from(FCnames.keys());
-			var colorCodes = [
-				FCnames.get(FCkeys.find(function (e){return hColor.startsWith(e);})),
-				HTMLstandardColors.find(function (e){return hColorNoSpaces.startsWith(e);}),
-				FCnames.get(FCkeys.find(function (e){return hColor.includes(e);})),
-				HTMLstandardColors.find(function (e){return hColorNoSpaces.includes(e);})
-			];
-			colorCode = colorCodes.find(function (e){return e;}); /* picks the first successful guess */
-		}
-	}
-	if (!colorCode) {
-		console.log("Art Color Tools JS: Unable to determine HTML compliant color code for hair color string '"+hColor+"'.");
-		colorCode = "fuchsia"; /* use fuchsia as error marker */
-	}
-	return colorCode;
-};
-
 /*SFJS [script]*/
 
 window.simpleWorldEconomyCheck = function() {
@@ -23274,3 +23194,95 @@ window.ArtControlRendered = function ArtControlRendered(slave, sizePlacement) {
 	}
 	return r;
 };
+
+/* 
+This takes a textual hair colour description and tries to guess the appropriate HTML compliant color code.
+
+hColor should be a color name, but can also be a string describing hair colour.
+
+This code's working is described to the user in the Encyclopedia, chapter "Lore", section "Dyes".
+*/
+window.extractHairColor = function(hColor) {
+	/* 
+	these are color names known and used in FreeCities 
+	attributed color names are at the front of the array
+	*/
+	var FCname2HTMLarray = [
+		["blazing red", "#E00E2B"],
+		["neon green", "#25d12b"],
+		["neon blue", "#2284C3"],
+		["neon pink", "#cc26aa"],
+		["strawberry-blonde", "#e5a88c"],
+		["platinum blonde", "#fcf3c1"],
+		["dark brown", "#463325"],
+		["brown", "#8D4F21"],
+		["auburn", "#7e543e"],
+		["black", "#3F4040"],
+		["blonde", "#F4F1A3"],
+		["blue", "#4685C5"],
+		["burgundy", "#5f3946"],
+		["chestnut", "#663622"],
+		["chocolate", "#6e4937"],
+		["copper", "#a16145"],
+		["ginger", "#da822d"],
+		["golden", "#ffdf31"],
+		["green", "#5FBA46"],
+		["grey", "#9e9fa4"],
+		["hazel", "#8d6f1f"],
+		["pink", "#D18CBC"],
+		["red", "#BB2027"],
+		["deep red", "#6D1318"],
+		["blue-violet", "#8790B7"],
+		["silver", "#cdc9c6"],
+		["light olive", "#d4c6bb"],
+		["dark", "#a46237"],
+		/* these are not actually FreeCities canon, but like to appear in custom descriptions */
+		["dark", "#463325"],
+		["brunette", "#8D4F21"]
+	];
+	
+	/* these are HTML color names supported by most browsers */
+	var HTMLstandardColors = ["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgrey","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred ","indigo ","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"];
+	
+	var FCnames = new Map(FCname2HTMLarray);
+	hColor = hColor.toLowerCase(); /* normalization: lowercase color name */
+	var colorCode = FCnames.get(hColor); /* look up in FreeCities color names */
+	if (!colorCode) { /* not a FreeCities color name*/
+		if (HTMLstandardColors.includes(hColor) || hColor.match(/^#([0-9a-f]{3}){1,2}$/) !== null) {
+			colorCode = hColor; /* is a HTML color name or value, use it directly */
+		} else { 
+			/* 
+			is not even a HTML color name. hColor probably is a description.
+			look for anything resembling a valid color name within the description.
+			*/
+			var hColorNoSpaces = hColor.replace(/\s+/g, ''); /* remove all spaces from description */
+			var FCkeys = Array.from(FCnames.keys());
+			var colorCodes = [
+				FCnames.get(FCkeys.find(function (e){return hColor.startsWith(e);})),
+				HTMLstandardColors.find(function (e){return hColorNoSpaces.startsWith(e);}),
+				FCnames.get(FCkeys.find(function (e){return hColor.includes(e);})),
+				HTMLstandardColors.find(function (e){return hColorNoSpaces.includes(e);})
+			];
+			colorCode = colorCodes.find(function (e){return e;}); /* picks the first successful guess */
+		}
+	}
+	if (!colorCode) {
+		console.log("Art Color Tools JS: Unable to determine HTML compliant color code for hair color string '"+hColor+"'.");
+		colorCode = "fuchsia"; /* use fuchsia as error marker */
+	}
+	return colorCode;
+};
+
+window.clothing2artSuffix = function(v) {
+  if (v == "restrictive latex") { v = "latex"; } /* universal "special case": latex art is actually "restrictive latex" TODO: align name in vector source */
+  return v.replace(/^a[n]? /,"") /* remove "a" and "an" from the beginning*/
+          .replace(/ ?(outfit|clothing) ?/,"") /* remove "outfit" and "clothing" (redundant) */
+          .replace(/ and .+/,"") /* remove concatenated descriptions */
+          .replace(/\w\S*/g, 
+            function(txt){
+                return txt.charAt(0).toUpperCase() + 
+                       txt.substr(1).toLowerCase();
+            }
+          ) /* CamelCase by whitespace */
+          .replace(/\W/g,""); /* remove remaining whitespace */
+};
diff --git a/src/js/artColorToolsJS.tw b/src/art/artJS.tw
similarity index 53%
rename from src/js/artColorToolsJS.tw
rename to src/art/artJS.tw
index b2aab8762c8..a9df7d82269 100644
--- a/src/js/artColorToolsJS.tw
+++ b/src/art/artJS.tw
@@ -1,4 +1,118 @@
-:: Art Color Tools JS [script]
+:: Art JS [script]
+
+/*
+Displays assistant images. Currently passage-based.
+sizePlacement: Image size/center.
+	3: Large, right. Example: description.
+	2: Medium, right. Example: random events.
+*/
+window.AssistantArtRendered = function AssistantArtRendered(sizePlacement) {
+	const V = State.variables;
+	let fileName = "";
+
+	if (V.imageChoice === 0) {
+		switch (V.assistantAppearance) {
+			case "monstergirl":
+				fileName = "'resources/renders/assistant monstergirl.png'";;
+				break;
+			case "shemale":
+				fileName = "'resources/renders/assistant shemale.png'";
+				break;
+			case "amazon":
+				fileName = "'resources/renders/assistant amazon.png'";
+				break;
+			case "businesswoman":
+				fileName = "'resources/renders/assistant businesswoman.png'";
+				break;
+			case "goddess":
+				fileName = "'resources/renders/assistant goddess.png'";
+				break;
+			case "schoolgirl":
+				fileName = "'resources/renders/assistant schoolgirl.png'";
+				break;
+			default:
+				fileName = "'resources/renders/assistant default.png'";
+		}
+		if (sizePlacement === 3) {
+			fileName = `<img src=${fileName} style='float:right; border:3px hidden'/>`;
+		} else {
+			fileName = `<img src=${fileName} style='float:right; border:3px hidden' width='300' height='300'/>`;
+		}
+	}
+	return fileName;
+};
+
+window.ArtControlRendered = function ArtControlRendered(slave, sizePlacement) {
+	const V = State.variables;
+	let fileName = "";
+	let r = "";
+
+	if (slave.vagina > -1) {
+		if (slave.dick > 0) {
+			if (slave.balls > 0) {
+				fileName = "futanari";
+			} else {
+				fileName = "herm";
+			}
+		} else {
+			fileName = "female";
+		}
+	} else {
+		if (slave.balls > 0) {
+			fileName = "shemale";
+		} else {
+			fileName = "gelding";
+		}
+	}
+	if (slave.belly > 1500) {
+		fileName = `preg ${fileName}`;
+	}
+	if (slave.boobs < 400) {
+		fileName = `${fileName} small`;
+	} else if (slave.boobs < 800) {
+		fileName = `${fileName} big`;
+	} else if (slave.boobs < 6000) {
+		fileName = `${fileName} huge`;
+	} else {
+		fileName = `${fileName} hyper`;
+	}
+	if (slave.muscles > 30) {
+		fileName = `${fileName} muscle`;
+	} else {
+		fileName = `${fileName} soft`;
+	}
+	if (slave.fuckdoll > 0) {
+		fileName = `${fileName} rebellious`;
+	} else if (slave.devotion <= 20) {
+		if (slave.trust < -20) {
+			fileName = `${fileName} reluctant`;
+		} else {
+			fileName = `${fileName} rebellious`;
+		}
+	} else if (slave.fetish === "mindbroken") {
+		fileName = `${fileName} reluctant`;
+	} else if (slave.devotion <= 50 || slave.fetishKnown !== 1 || V.seeMainFetishes === 0 && sizePlacement < 2) {
+		fileName = `${fileName} obedient`;
+	} else {
+		if (slave.fetish === "none") {
+			fileName = `${fileName} obedient`;
+		} else {
+			fileName = `${fileName} ${slave.fetish}`;
+		}
+	}
+
+	fileName = `'resources/renders/${fileName}.png'`;
+	if (sizePlacement === 3) {
+		r = `<img src=${fileName} style='float:right; border:3px hidden'>`;
+	} else if (sizePlacement === 2) {
+		r = `<img src=${fileName} style='float:right; border:3px hidden' width='300' height='300'>`;
+	} else if (sizePlacement === 1) {
+		r = `<img src=${fileName} style='float:left; border:3px hidden' width='150' height='150'>`;
+	} else {
+		r = `<img src=${fileName} style='float:left; border:3px hidden' width='120' height='120'>`;
+	}
+	return r;
+};
 
 /* 
 This takes a textual hair colour description and tries to guess the appropriate HTML compliant color code.
@@ -77,3 +191,17 @@ window.extractHairColor = function(hColor) {
 	}
 	return colorCode;
 };
+
+window.clothing2artSuffix = function(v) {
+  if (v == "restrictive latex") { v = "latex"; } /* universal "special case": latex art is actually "restrictive latex" TODO: align name in vector source */
+  return v.replace(/^a[n]? /,"") /* remove "a" and "an" from the beginning*/
+          .replace(/ ?(outfit|clothing) ?/,"") /* remove "outfit" and "clothing" (redundant) */
+          .replace(/ and .+/,"") /* remove concatenated descriptions */
+          .replace(/\w\S*/g, 
+            function(txt){
+                return txt.charAt(0).toUpperCase() + 
+                       txt.substr(1).toLowerCase();
+            }
+          ) /* CamelCase by whitespace */
+          .replace(/\W/g,""); /* remove remaining whitespace */
+};
diff --git a/src/art/vector/Helper_Functions.tw b/src/art/vector/Helper_Functions.tw
deleted file mode 100644
index b19ee1383b5..00000000000
--- a/src/art/vector/Helper_Functions.tw
+++ /dev/null
@@ -1,15 +0,0 @@
-:: Art_Vector_Helper_Functions_ [script]
-
-window.clothing2artSuffix = function(v) {
-  if (v == "restrictive latex") { v = "latex"; } /* universal "special case": latex art is actually "restrictive latex" TODO: align name in vector source */
-  return v.replace(/^a[n]? /,"") /* remove "a" and "an" from the beginning*/
-          .replace(/ ?(outfit|clothing) ?/,"") /* remove "outfit" and "clothing" (redundant) */
-          .replace(/ and .+/,"") /* remove concatenated descriptions */
-          .replace(/\w\S*/g, 
-            function(txt){
-                return txt.charAt(0).toUpperCase() + 
-                       txt.substr(1).toLowerCase();
-            }
-          ) /* CamelCase by whitespace */
-          .replace(/\W/g,""); /* remove remaining whitespace */
-}
diff --git a/src/js/vectorRevampedArtControlJS.tw b/src/art/vector_revamp/vectorRevampedArtControlJS.tw
similarity index 100%
rename from src/js/vectorRevampedArtControlJS.tw
rename to src/art/vector_revamp/vectorRevampedArtControlJS.tw
diff --git a/src/js/artJS.tw b/src/js/artJS.tw
deleted file mode 100644
index 3405c98d0c1..00000000000
--- a/src/js/artJS.tw
+++ /dev/null
@@ -1,115 +0,0 @@
-:: Art JS [script]
-
-/*
-Displays assistant images. Currently passage-based.
-sizePlacement: Image size/center.
-	3: Large, right. Example: description.
-	2: Medium, right. Example: random events.
-*/
-window.AssistantArtRendered = function AssistantArtRendered(sizePlacement) {
-	const V = State.variables;
-	let fileName = "";
-
-	if (V.imageChoice === 0) {
-		switch (V.assistantAppearance) {
-			case "monstergirl":
-				fileName = "'resources/renders/assistant monstergirl.png'";;
-				break;
-			case "shemale":
-				fileName = "'resources/renders/assistant shemale.png'";
-				break;
-			case "amazon":
-				fileName = "'resources/renders/assistant amazon.png'";
-				break;
-			case "businesswoman":
-				fileName = "'resources/renders/assistant businesswoman.png'";
-				break;
-			case "goddess":
-				fileName = "'resources/renders/assistant goddess.png'";
-				break;
-			case "schoolgirl":
-				fileName = "'resources/renders/assistant schoolgirl.png'";
-				break;
-			default:
-				fileName = "'resources/renders/assistant default.png'";
-		}
-		if (sizePlacement === 3) {
-			fileName = `<img src=${fileName} style='float:right; border:3px hidden'/>`;
-		} else {
-			fileName = `<img src=${fileName} style='float:right; border:3px hidden' width='300' height='300'/>`;
-		}
-	}
-	return fileName;
-};
-
-window.ArtControlRendered = function ArtControlRendered(slave, sizePlacement) {
-	const V = State.variables;
-	let fileName = "";
-	let r = "";
-
-	if (slave.vagina > -1) {
-		if (slave.dick > 0) {
-			if (slave.balls > 0) {
-				fileName = "futanari";
-			} else {
-				fileName = "herm";
-			}
-		} else {
-			fileName = "female";
-		}
-	} else {
-		if (slave.balls > 0) {
-			fileName = "shemale";
-		} else {
-			fileName = "gelding";
-		}
-	}
-	if (slave.belly > 1500) {
-		fileName = `preg ${fileName}`;
-	}
-	if (slave.boobs < 400) {
-		fileName = `${fileName} small`;
-	} else if (slave.boobs < 800) {
-		fileName = `${fileName} big`;
-	} else if (slave.boobs < 6000) {
-		fileName = `${fileName} huge`;
-	} else {
-		fileName = `${fileName} hyper`;
-	}
-	if (slave.muscles > 30) {
-		fileName = `${fileName} muscle`;
-	} else {
-		fileName = `${fileName} soft`;
-	}
-	if (slave.fuckdoll > 0) {
-		fileName = `${fileName} rebellious`;
-	} else if (slave.devotion <= 20) {
-		if (slave.trust < -20) {
-			fileName = `${fileName} reluctant`;
-		} else {
-			fileName = `${fileName} rebellious`;
-		}
-	} else if (slave.fetish === "mindbroken") {
-		fileName = `${fileName} reluctant`;
-	} else if (slave.devotion <= 50 || slave.fetishKnown !== 1 || V.seeMainFetishes === 0 && sizePlacement < 2) {
-		fileName = `${fileName} obedient`;
-	} else {
-		if (slave.fetish === "none") {
-			fileName = `${fileName} obedient`;
-		} else {
-			fileName = `${fileName} ${slave.fetish}`;
-		}
-	}
-
-	fileName = `'resources/renders/${fileName}.png'`;
-	if (sizePlacement === 3) {
-		r = `<img src=${fileName} style='float:right; border:3px hidden'>`;
-	} else if (sizePlacement === 2) {
-		r = `<img src=${fileName} style='float:right; border:3px hidden' width='300' height='300'>`;
-	} else if (sizePlacement === 1) {
-		r = `<img src=${fileName} style='float:left; border:3px hidden' width='150' height='150'>`;
-	} else {
-		r = `<img src=${fileName} style='float:left; border:3px hidden' width='120' height='120'>`;
-	}
-	return r;
-};
-- 
GitLab


From 1524fe5848c30e37068e4357febcf8010141884b Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 26 Jul 2018 12:34:48 -0400
Subject: [PATCH 125/189] Fix

---
 devNotes/twine JS.txt | 2 +-
 src/art/artJS.tw      | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 57bcbcad9a4..12e0224c33d 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -23094,7 +23094,7 @@ window.AssistantArtRendered = function AssistantArtRendered(sizePlacement) {
 	if (V.imageChoice === 0) {
 		switch (V.assistantAppearance) {
 			case "monstergirl":
-				fileName = "'resources/renders/assistant monstergirl.png'";;
+				fileName = "'resources/renders/assistant monstergirl.png'";
 				break;
 			case "shemale":
 				fileName = "'resources/renders/assistant shemale.png'";
diff --git a/src/art/artJS.tw b/src/art/artJS.tw
index a9df7d82269..2f1daf9bf0a 100644
--- a/src/art/artJS.tw
+++ b/src/art/artJS.tw
@@ -13,7 +13,7 @@ window.AssistantArtRendered = function AssistantArtRendered(sizePlacement) {
 	if (V.imageChoice === 0) {
 		switch (V.assistantAppearance) {
 			case "monstergirl":
-				fileName = "'resources/renders/assistant monstergirl.png'";;
+				fileName = "'resources/renders/assistant monstergirl.png'";
 				break;
 			case "shemale":
 				fileName = "'resources/renders/assistant shemale.png'";
-- 
GitLab


From 4d28cda92cf0ba349a33c576bcbbb56bf87cf4e1 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Thu, 26 Jul 2018 15:09:54 -0400
Subject: [PATCH 126/189] notes

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 23b0f2a67d6..e2ef6334bbe 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,12 @@
 
 0.10.7.1-0.5.x
 
+7/26/2018
+
+	6
+	-fixes
+	-broken societal elite now bitch less about your actions
+
 7/25/2018
 
 	5
-- 
GitLab


From bd7b698f5e6e1d97f09bd47a218f0567df9ed652 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 26 Jul 2018 18:42:35 -0400
Subject: [PATCH 127/189] Height tweaks

---
 src/uncategorized/resFailure.tw            | 2 +-
 src/uncategorized/seCustomSlaveDelivery.tw | 4 ++--
 src/utility/slaveCreationWidgets.tw        | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/uncategorized/resFailure.tw b/src/uncategorized/resFailure.tw
index 49d3637fd18..4d34f0b62c2 100644
--- a/src/uncategorized/resFailure.tw
+++ b/src/uncategorized/resFailure.tw
@@ -429,7 +429,7 @@
 		<<set $activeSlave.health = random(60,80)>>
 		<<set $activeSlave.muscles = random(40,60)>>
 		<<set _minHeight = random(170,180)>>
-		<<set $activeSlave.height = Math.trunc(Math.clamp(Height.random($activeSlave, {limitMult: [5, 15]}),_minHeight, 274))>>
+		<<set $activeSlave.height = Math.trunc(Math.clamp(Height.random($activeSlave, {limitMult: [2, 15], spread: .1}),_minHeight, 274))>>
 		<<set $activeSlave.waist = -15>>
 		<<set $activeSlave.shoulders = 0>>
 		<<set $activeSlave.vaginalSkill = 10>>
diff --git a/src/uncategorized/seCustomSlaveDelivery.tw b/src/uncategorized/seCustomSlaveDelivery.tw
index 669a83d9600..08366ac4172 100644
--- a/src/uncategorized/seCustomSlaveDelivery.tw
+++ b/src/uncategorized/seCustomSlaveDelivery.tw
@@ -67,7 +67,7 @@
 
 /* I have no clue what I'm doing here */
 <<if $customSlave.heightMod == "greatly below average">>
-	<<set $activeSlave.height = Math.round(Height.random($activeSlave, {skew: -5, spread: .2, limitMult: [-5, -2]}))>>
+	<<set $activeSlave.height = Math.round(Height.random($activeSlave, {skew: -5, spread: .15, limitMult: [-5, -2]}))>>
 <<elseif $customSlave.heightMod == "below average">>
 	<<set $activeSlave.height = Math.round(Height.random($activeSlave, {skew: -1, limitMult: [-2, 0]}))>>
 <<elseif $customSlave.heightMod == "normal">>
@@ -75,7 +75,7 @@
 <<elseif $customSlave.heightMod == "above average">>
 	<<set $activeSlave.height = Math.round(Height.random($activeSlave, {skew: 1, limitMult: [0, 2]}))>>
 <<else>>
-	<<set $activeSlave.height = Math.round(Height.random($activeSlave, {skew: 5, spread: .2, limitMult: [2, 5]}))>>
+	<<set $activeSlave.height = Math.round(Height.random($activeSlave, {skew: 5, spread: .15, limitMult: [2, 5]}))>>
 <</if>>
 
 <<if $customSlave.analVirgin == 0>>
diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw
index 1f7f39dee48..a60994ab63e 100644
--- a/src/utility/slaveCreationWidgets.tw
+++ b/src/utility/slaveCreationWidgets.tw
@@ -3752,7 +3752,7 @@
 	<<set $activeSlave.health = random(60,80)>>
 	<<set _minHeight = random(170,180)>>
 	<<if $HA.schoolUpgrade == 2>>
-		<<set $activeSlave.height = Math.trunc(Math.clamp(Height.random($activeSlave, {limitMult: [5, 15]}),_minHeight, 274))>>
+		<<set $activeSlave.height = Math.trunc(Math.clamp(Height.random($activeSlave, {limitMult: [2, 15], spread: .1}),_minHeight, 274))>>
 		<<set $activeSlave.muscles = random(40,80)>>
 	<<else>>
 		<<set $activeSlave.height = Math.trunc(Math.clamp(Height.random($activeSlave, {limitMult: [3, 9]}),_minHeight, 274))>>
-- 
GitLab


From 9e704da5caf9bf3e1f7e68c7641e68ee23e92c13 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Thu, 26 Jul 2018 17:54:40 -0500
Subject: [PATCH 128/189] Fixing

---
 src/utility/saRulesWidgets.tw | 362 +++++++++++++++++-----------------
 1 file changed, 181 insertions(+), 181 deletions(-)

diff --git a/src/utility/saRulesWidgets.tw b/src/utility/saRulesWidgets.tw
index 523cd4c01a4..b7335d99a21 100644
--- a/src/utility/saRulesWidgets.tw
+++ b/src/utility/saRulesWidgets.tw
@@ -43,38 +43,38 @@ and
 					<<if ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
 						<<switch $slaves[$i].fetish>>
 						<<case "submissive">>
-							hold her down and fuck her
+							hold $him down and fuck $him
 						<<case "cumslut">>
 							<<if $PC.dick == 1>>
-								cum in her mouth
+								cum in $his mouth
 							<<else>>
-								use your strap-on on her mouth
+								use your strap-on on $his mouth
 							<</if>>
 						<<case "humiliation">>
-							use her in public
+							use $him in public
 						<<case "buttslut">>
-							fuck her butt
+							fuck $his butt
 						<<case "boobs">>
-							fondle her breasts
+							fondle $his breasts
 						<<case "sadist">>
-							let her help you abuse other slaves
+							let $him help you abuse other slaves
 						<<case "masochist">>
-							hurt her
+							hurt $him
 						<<case "dom">>
-							let her help you use other slaves
+							let $him help you use other slaves
 						<<case "pregnancy">>
 							<<if isFertile($slaves[$i]) && $PC.dick == 1>>
-								put a baby in her
+								put a baby in $him
 							<<elseif $slaves[$i].bellyPreg >= 1500 || $slaves[$i].bellyImplant >= 1500>>
-								enjoy her fecund curves
+								enjoy $his fecund curves
 							<<else>>
-								breed her
+								breed $him
 							<</if>>
 						<<default>>
-							fuck her
+							fuck $him
 						<</switch>>
 					<<else>>
-						fuck her
+						fuck $him
 					<</if>>
 
 <</widget>>
@@ -83,25 +83,25 @@ and
 
 						<<if $freeSexualEnergy > 0>>
 							<<if $freeSexualEnergy == 3>>
-								You have surplus sexual energy to burn, even when she doesn't ask, and she
+								You have surplus sexual energy to burn, even when $he doesn't ask, and $he
 								<<if $slaves[$i].devotion <= 20>>
-									@@.hotpink;hates herself@@ for how often she gets off on you relieving your needs with her body.
+									@@.hotpink;hates $himself@@ for how often $he gets off on you relieving your needs with $his body.
 								<<else>>
-									@@.hotpink;gets used to being a sex slave@@ every time she climaxes as you use her.
+									@@.hotpink;gets used to being a sex slave@@ every time $he climaxes as you use $him.
 								<</if>>
 								<<set $slaves[$i].devotion += 2, $slaves[$i].need = 0>>
 								<<= SimpleSexAct($slaves[$i], 10)>>
 							<<elseif $freeSexualEnergy == 2>>
-								You have surplus sexual energy to fuck her whenever she forces herself to ask, and she is @@.hotpink;sexually dependent@@ on you.
+								You have surplus sexual energy to fuck $him whenever $he forces $himself to ask, and $he is @@.hotpink;sexually dependent@@ on you.
 								<<set $slaves[$i].devotion += 1, $slaves[$i].need -= 40>>
 								<<= SimpleSexAct($slaves[$i], 5)>>
 							<<else>>
-								You have little surplus sexual energy, and occasionally, she asks in vain.
+								You have little surplus sexual energy, and occasionally, $he asks in vain.
 								<<set $slaves[$i].need -= 20>>
 								<<= SimpleSexAct($slaves[$i], 2)>>
 							<</if>>
 						<<else>>
-							You have no surplus sexual energy, and she asks in vain, @@.gold;reducing her trust@@ in you.
+							You have no surplus sexual energy, and $he asks in vain, @@.gold;reducing $his trust@@ in you.
 							<<set $slaves[$i].trust -= 1>>
 						<</if>>
 
@@ -113,40 +113,40 @@ and
 						<<if $freeSexualEnergy > 0>>
 							<<if $freeSexualEnergy > random(0,5)>>
 								<<set $slaves[$i].fetishKnown = 1>>
-								You discover that she really likes it when you
+								You discover that $he really likes it when you
 								<<switch $slaves[$i].fetish>>
 								<<case "submissive">>
-									hold her down and fuck her; @@.lightcoral;she's a submissive!@@
+									hold $him down and fuck $him; @@.lightcoral;$he's a submissive!@@
 								<<case "cumslut">>
 									<<if $PC.dick == 1>>
-										cum in her mouth; @@.lightcoral;she's a cumslut!@@
+										cum in $his mouth; @@.lightcoral;$he's a cumslut!@@
 									<<else>>
-										use your strap-on in her mouth; @@.lightcoral;she's a cumslut!@@
+										use your strap-on in $his mouth; @@.lightcoral;$he's a cumslut!@@
 									<</if>>
 								<<case "humiliation">>
-									use her in public; @@.lightcoral;she's a humiliation fetishist!@@
+									use $him in public; @@.lightcoral;$he's a humiliation fetishist!@@
 								<<case "buttslut">>
-									<<if canDoAnal($slaves[$i])>>fuck her butt<<else>>tease her anus<</if>>; @@.lightcoral;she's an anal slut!@@
+									<<if canDoAnal($slaves[$i])>>fuck $his butt<<else>>tease $his anus<</if>>; @@.lightcoral;$he's an anal slut!@@
 								<<case "boobs">>
-									fondle her breasts; @@.lightcoral;she's a boob fetishist!@@
+									fondle $his breasts; @@.lightcoral;$he's a boob fetishist!@@
 								<<case "sadist">>
-									let her help you abuse other slaves; @@.lightcoral;she's a sadist!@@
+									let $him help you abuse other slaves; @@.lightcoral;$he's a sadist!@@
 								<<case "masochist">>
-									hurt her; @@.lightcoral;she's a masochist!@@
+									hurt $him; @@.lightcoral;$he's a masochist!@@
 								<<case "dom">>
-									let her help you use other slaves; @@.lightcoral;she's dominant!@@
+									let $him help you use other slaves; @@.lightcoral;$he's dominant!@@
 								<<case "pregnancy">>
 									<<if $PC.dick == 1>>
 										<<if $slaves[$i].mpreg == 0>>
-											come <<if canDoVaginal($slaves[$i])>>inside<<else>>on<</if>> her; @@.lightcoral;she's a pregnancy fetishist!@@
+											come <<if canDoVaginal($slaves[$i])>>inside<<else>>on<</if>> $him; @@.lightcoral;$he's a pregnancy fetishist!@@
 										<<else>>
-											come <<if canDoAnal($slaves[$i])>>inside<<else>>on<</if>> her; @@.lightcoral;she's a pregnancy fetishist!@@
+											come <<if canDoAnal($slaves[$i])>>inside<<else>>on<</if>> $him; @@.lightcoral;$he's a pregnancy fetishist!@@
 										<</if>>
 									<<else>>
-										talk dirty and call her a mother; @@.lightcoral;she's a pregnancy fetishist!@@
+										talk dirty and call $him a mother; @@.lightcoral;$he's a pregnancy fetishist!@@
 									<</if>>
 								<<default>>
-									fuck her; @@.lightcoral;she's got a normal sexuality.@@
+									fuck $him; @@.lightcoral;$he's got a normal sexuality.@@
 								<</switch>>
 							<</if>>
 						<</if>>
@@ -160,66 +160,66 @@ and
 						<<if ($slaves[$i].drugs == "testicle enhancement" || $slaves[$i].drugs == "intensive testicle enhancement")>>
 							<<if ($slaves[$i].devotion > 20) || ($slaves[$i].trust < -20)>>
 								<<if $slaves[$i].hormoneBalance >= 100>>
-									She can't seem to get enough cum out of her terribly swollen balls in one orgasm to relieve the pressure:
+									$He can't seem to get enough cum out of $his terribly swollen balls in one orgasm to relieve the pressure:
 									<<if $slaves[$i].dick>>
-										her poor soft dick produces slow, anemic ejaculations, no matter how backed up she is.
+										$his poor soft dick produces slow, anemic ejaculations, no matter how backed up $he is.
 									<<else>>
-										her cumhole produces slow, anemic ejaculations, no matter how backed up she is.
+										$his cumhole produces slow, anemic ejaculations, no matter how backed up $he is.
 									<</if>>
-									This forces her to come to you for release many times a day, and she @@.mediumaquamarine;is desperately reliant@@
+									This forces $him to come to you for release many times a day, and $he @@.mediumaquamarine;is desperately reliant@@
 									<<if $slaves[$i].anus > 0 && canDoAnal($slaves[$i]) && $freeSexualEnergy > 0>>
-										on your <<if $PC.dick == 0>>strap-on<<else>>penis<</if>> inside her ass as a source of relief.
+										on your <<if $PC.dick == 0>>strap-on<<else>>penis<</if>> inside $his ass as a source of relief.
 									<<else>>
 										on you for relief.
 									<</if>>
 									<<set $slaves[$i].trust += 2>>
 								<<else>>
-									Her terribly swollen balls force her to come to you for release several times a day, and she @@.mediumaquamarine;learns to rely@@
+									$His terribly swollen balls force $him to come to you for release several times a day, and $he @@.mediumaquamarine;learns to rely@@
 									<<if $slaves[$i].anus > 0 && canDoAnal($slaves[$i]) && $freeSexualEnergy > 0>>
-										on your <<if $PC.dick == 0>>strap-on<<else>>penis<</if>> inside her ass as a source of relief.
+										on your <<if $PC.dick == 0>>strap-on<<else>>penis<</if>> inside $his ass as a source of relief.
 									<<else>>
 										on you for relief.
 									<</if>>
 									<<set $slaves[$i].trust += 1>>
 								<</if>>
 							<<else>>
-								She refuses to come to you for help with her terribly swollen balls, no matter how backed up she becomes. The intense blueballing only @@.mediumorchid;makes her dislike you more.@@
+								$He refuses to come to you for help with $his terribly swollen balls, no matter how backed up $he becomes. The intense blueballing only @@.mediumorchid;makes $him dislike you more.@@
 								<<set $slaves[$i].devotion -= 1>>
 							<</if>>
 						<<elseif $slaves[$i].drugs == "hyper testicle enhancement">>
 							<<if ($slaves[$i].devotion > 20) || ($slaves[$i].trust < -20)>>
 								<<if $slaves[$i].hormonebalance >= 100>>
-									She can't seem to get enough cum out of her grotesquely swollen balls in one orgasm to get relieve the pressure:
+									$He can't seem to get enough cum out of $his grotesquely swollen balls in one orgasm to get relieve the pressure:
 									<<if $slaves[$i].dick>>
-										her poor soft dick produces slow, anemic ejaculations, no matter how backed up she is.
+										$his poor soft dick produces slow, anemic ejaculations, no matter how backed up $he is.
 									<<else>>
-										her cumhole produces slow, anemic ejaculations, no matter how backed up she is.
+										$his cumhole produces slow, anemic ejaculations, no matter how backed up $he is.
 									<</if>>
-									This forces her to come to you for release many times a day, and she @@.mediumaquamarine;is desperately reliant@@
+									This forces $him to come to you for release many times a day, and $he @@.mediumaquamarine;is desperately reliant@@
 									<<if $slaves[$i].anus > 0 && canDoAnal($slaves[$i]) && $freeSexualEnergy > 0>>
-										on your <<if $PC.dick == 0>>strap-on<<else>>penis<</if>> inside her ass as a source of relief.
+										on your <<if $PC.dick == 0>>strap-on<<else>>penis<</if>> inside $his ass as a source of relief.
 									<<else>>
 										on you for relief.
 									<</if>>
 									<<set $slaves[$i].trust += 2>>
 								<<else>>
-									Her grotesquely swollen balls force her to come to you for release dozens of times a day, and she @@.mediumaquamarine;is desperately reliant@@
+									$His grotesquely swollen balls force $him to come to you for release dozens of times a day, and $he @@.mediumaquamarine;is desperately reliant@@
 									<<if $slaves[$i].anus > 0 && canDoAnal($slaves[$i]) && $freeSexualEnergy > 0>>
-										on your <<if $PC.dick == 0>>strap-on<<else>>penis<</if>> inside her ass as a source of relief.
+										on your <<if $PC.dick == 0>>strap-on<<else>>penis<</if>> inside $his ass as a source of relief.
 									<<else>>
 										on you for relief.
 									<</if>>
 									<<set $slaves[$i].trust += 1>>
 								<</if>>
 							<<else>>
-								She refuses to come to you for help with her grotesquely swollen balls, no matter how backed up and sore she becomes. The intense blueballing only @@.mediumorchid;makes her hate you more.@@
+								$He refuses to come to you for help with $his grotesquely swollen balls, no matter how backed up and sore $he becomes. The intense blueballing only @@.mediumorchid;makes $him hate you more.@@
 								<<set $slaves[$i].devotion -= 3>>
 							<</if>>
 						<</if>>
 					<</if>> /* close overactive balls block */
 					<<if $slaves[$i].drugs == "super fertility drugs" && canGetPregnant($slaves[$i]) && $slaves[$i].eggType == "human" && $PC.dick == 1>> 
 						<<if ($slaves[$i].devotion > 20) || ($slaves[$i].trust < -20)>>
-							Her reproductive system is in overdrive leading her to come to you for insemination several times a day; she @@.mediumaquamarine;desperately hopes@@ for the day your seed takes root in her womb.
+							$His reproductive system is in overdrive leading $him to come to you for insemination several times a day; $he @@.mediumaquamarine;desperately hopes@@ for the day your seed takes root in $his womb.
 							<<set $slaves[$i].trust += 1>>
 						<</if>>
 					<</if>>
@@ -232,34 +232,34 @@ and
 								frequently pretends to be getting held down and dominated.
 							<<elseif ($slaves[$i].fetish == "cumslut")>>
 								<<if $slaves[$i].dick > 5>>
-									enjoys giving herself head.
+									enjoys giving $himself head.
 								<<elseif $slaves[$i].dick > 0>>
-									enjoys licking up her own cum.
+									enjoys licking up $his own cum.
 								<<else>>
-									always has a dildo in her mouth.
+									always has a dildo in $his mouth.
 								<</if>>
 							<<elseif ($slaves[$i].fetish == "humiliation")>>
 								usually does it out in the open for all to see.
 							<<elseif ($slaves[$i].fetish == "buttslut")>>
 								<<if ($slaves[$i].anus > 0)>>
-									usually pounds her ass with the largest dildo she can find.
+									usually pounds $his ass with the largest dildo $he can find.
 								<<else>>
-									enjoys fiddling with her virgin asshole.
+									enjoys fiddling with $his virgin asshole.
 								<</if>>
 							<<elseif ($slaves[$i].fetish == "boobs")>>
-								pays extra attention to her breasts and nipples.
+								pays extra attention to $his breasts and nipples.
 							<<elseif ($slaves[$i].fetish == "sadist")>>
-								frequently poses threats at herself.
+								frequently poses threats at $himself.
 							<<elseif ($slaves[$i].fetish == "masochist")>>
 								frequently pretends to be getting held down and forcibly raped.
 							<<elseif ($slaves[$i].fetish == "dom")>>
-								usually pretends to dominate herself.
+								usually pretends to dominate $himself.
 							<<elseif ($slaves[$i].fetish == "pregnancy")>>
 								<<if $slaves[$i].belly > 1500>>
 									<<set _belly = bellyAdjective($activeSlave)>>
-									always rubs and teases her _belly belly while doing so.
+									always rubs and teases $his _belly belly while doing so.
 								<<elseif isItemAccessible("a small empathy belly")>>
-									frequently straps on a fake belly to enhance her fun.
+									frequently straps on a fake belly to enhance $his fun.
 								<<else>>
 									frequently pretends to be
 									<<if $activeSlave.balls > 0>>
@@ -269,12 +269,12 @@ and
 									<</if>>
 								<</if>>
 							<<elseif ($slaves[$i].energy > 95)>>
-								strives to achieve as many orgasms as she can in one session.
+								strives to achieve as many orgasms as $he can in one session.
 							<<else>>
 								quickly gets off and moves on.
 							<</if>>
 						<<elseif ($slaves[$i].energy > 95)>>
-							strives to achieve as many orgasms as she can in one session.
+							strives to achieve as many orgasms as $he can in one session.
 						<<else>>
 							quickly gets off and moves on.
 						<</if>> /* closes ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60) */
@@ -285,31 +285,31 @@ and
 
 						<<if ($slaves[$i].fetishKnown == 0) && (random(1,20) == 1)>>
 							<<set $slaves[$i].fetishKnown = 1>>
-							However, you start to notice a trend in her fantasies,
+							However, you start to notice a trend in $his fantasies,
 							<<if ($slaves[$i].fetish == "submissive")>>
-								she likes to tie herself up and boss herself around; @@.lightcoral;she's a submissive!@@
+								$he likes to tie $himself up and boss $himself around; @@.lightcoral;$he's a submissive!@@
 							<<elseif ($slaves[$i].fetish == "cumslut")>>
 								<<if $slaves[$i].dick > 0>>
-									she often eats her own cum when she's finished; @@.lightcoral;she's a cumslut!@@
+									$he often eats $his own cum when $he's finished; @@.lightcoral;$he's a cumslut!@@
 								<<else>>
-									she likes to have something, anything, in her mouth while she masturbates; @@.lightcoral;she's a cumslut!@@
+									$he likes to have something, anything, in $his mouth while $he masturbates; @@.lightcoral;$he's a cumslut!@@
 								<</if>>
 							<<elseif ($slaves[$i].fetish == "humiliation")>>
-								she tends to masturbate in places where others can walk in on her; @@.lightcoral;she's a humiliation fetishist!@@
+								$he tends to masturbate in places where others can walk in on $him; @@.lightcoral;$he's a humiliation fetishist!@@
 							<<elseif ($slaves[$i].fetish == "buttslut")>>
-								she always pays special attention to her butthole; @@.lightcoral;she's an anal slut!@@
+								$he always pays special attention to $his butthole; @@.lightcoral;$he's an anal slut!@@
 							<<elseif ($slaves[$i].fetish == "boobs")>>
-								she always has a hand to her nipples; @@.lightcoral;she's a boob fetishist!@@
+								$he always has a hand to $his nipples; @@.lightcoral;$he's a boob fetishist!@@
 							<<elseif ($slaves[$i].fetish == "sadist")>>
-								she tends to threaten her toys; @@.lightcoral;she's a sadist!@@
+								$he tends to threaten $his toys; @@.lightcoral;$he's a sadist!@@
 							<<elseif ($slaves[$i].fetish == "masochist")>>
-								she often to abuses herself; @@.lightcoral;she's a masochist!@@
+								$he often to abuses $himself; @@.lightcoral;$he's a masochist!@@
 							<<elseif ($slaves[$i].fetish == "dom")>>
-								she sometimes bosses her toys around; @@.lightcoral;she's dominant!@@
+								$he sometimes bosses $his toys around; @@.lightcoral;$he's dominant!@@
 							<<elseif ($slaves[$i].fetish == "pregnancy")>>
-								she frequently pretends to either get pregnant, be pregnant, or get someone else pregnant; @@.lightcoral;she's a pregnancy fetishist!@@
+								$he frequently pretends to either get pregnant, be pregnant, or get someone else pregnant; @@.lightcoral;$he's a pregnancy fetishist!@@
 							<<elseif ($slaves[$i].energy > 95)>>
-								she's always horny; @@.lightcoral;she's a nympho!@@
+								$he's always horny; @@.lightcoral;$he's a nympho!@@
 							<<else>>
 								@@.lightcoral;they are incredibly mundane.@@
 							<</if>>
@@ -322,63 +322,63 @@ and
 					<<if $slaves[$i].balls > 0>>
 						<<if $slaves[$i].drugs == "testicle enhancement" || $slaves[$i].drugs == "intensive testicle enhancement">>
 							<<if $slaves[$i].hormonebalance >= 100>>
-								She can't seem to get enough cum out of her terribly swollen balls in one orgasm to get relieve the pressure:
+								$He can't seem to get enough cum out of $his terribly swollen balls in one orgasm to get relieve the pressure:
 								<<if $slaves[$i].dick>>
-										her poor soft dick produces slow, anemic ejaculations, no matter how backed up she is.
+										$his poor soft dick produces slow, anemic ejaculations, no matter how backed up $he is.
 									<<else>>
-										her cumhole produces slow, anemic ejaculations, no matter how backed up she is.
+										$his cumhole produces slow, anemic ejaculations, no matter how backed up $he is.
 									<</if>>
-								She masturbates as often as she can, but @@.mediumorchid;can't find relief.@@
+								$He masturbates as often as $he can, but @@.mediumorchid;can't find relief.@@
 								<<set $slaves[$i].devotion-->>
 							<<else>>
-								Her terribly swollen balls force her to masturbate several times a day, cultivating a need for sex that @@.mediumorchid;she can't fulfill.@@
+								$His terribly swollen balls force $him to masturbate several times a day, cultivating a need for sex that @@.mediumorchid;$he can't fulfill.@@
 								<<set $slaves[$i].devotion -= 1>>
 							<</if>>
 						<<elseif $slaves[$i].drugs == "hyper testicle enhancement">>
 							<<if $slaves[$i].hormonebalance >= 100>>
-								She can't seem to get enough cum out of her grotesquely swollen balls in one orgasm to get relieve the pressure:
+								$He can't seem to get enough cum out of $his grotesquely swollen balls in one orgasm to get relieve the pressure:
 								<<if $slaves[$i].dick>>
-										her poor soft dick produces slow, anemic ejaculations, no matter how backed up she is.
+										$his poor soft dick produces slow, anemic ejaculations, no matter how backed up $he is.
 									<<else>>
-										her cumhole produces slow, anemic ejaculations, no matter how backed up she is.
+										$his cumhole produces slow, anemic ejaculations, no matter how backed up $he is.
 									<</if>>
-								She masturbates non-stop, but @@.mediumorchid;can't find relief.@@
+								$He masturbates non-stop, but @@.mediumorchid;can't find relief.@@
 								<<set $slaves[$i].devotion -= 3>>
 							<<else>>
-								Her grotesquely swollen balls force her to masturbate constantly, cultivating a need for sex that @@.mediumorchid;she can't fulfill.@@
+								$His grotesquely swollen balls force $him to masturbate constantly, cultivating a need for sex that @@.mediumorchid;$he can't fulfill.@@
 								<<set $slaves[$i].devotion -= 1>>
 							<</if>>
 							<<if $slaves[$i].energy > 40>>
-								The constant orgasms steadily lose their impact, @@.red;weakening her sex drive.@@
+								The constant orgasms steadily lose their impact, @@.red;weakening $his sex drive.@@
 								<<set $slaves[$i].energy -= 2>>
 							<</if>>
 						<</if>>
 					<</if>>
 					<<if $slaves[$i].drugs == "super fertility drugs" && canGetPregnant($slaves[$i])>>
-						Her reproductive system is in overdrive,
+						$His reproductive system is in overdrive,
 						<<if $slaves[$i].dick > 9>>
-							leaving her @@.mediumorchid;desperately fucking herself@@ in an effort to get pregnant since @@.gold;you won't <<if $PC.dick == 1>>give her<<else>>let her find<</if>> the dick she needs.@@
+							leaving $him @@.mediumorchid;desperately fucking $himself@@ in an effort to get pregnant since @@.gold;you won't <<if $PC.dick == 1>>give $him<<else>>let $him find<</if>> the dick $he needs.@@
 							<<if canImpregnate($slaves[$i], $slaves[$i])>>
 								<<= knockMeUp($slaves[$i], 5, 2, $slaves[$i].ID, 1)>>
 							<</if>>
 							<<if $slaves[$i].mpreg == 1 && $slaves[$i].anus == 0>>
-								@@.lime;She is so baby crazed she takes her own anal virginity.@@
+								@@.lime;$He is so baby crazed $he takes $his own anal virginity.@@
 								<<set $slaves[$i].anus++>>
 							<<elseif $slaves[$i].vagina == 0>>
-								@@.lime;She is so baby crazed she takes her own virginity.@@
+								@@.lime;$He is so baby crazed $he takes $his own virginity.@@
 								<<set $slaves[$i].vagina++>>
 							<</if>>
 							<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 2>>
 						<<elseif ($slaves[$i].devotion > -20)>>
-							leaving her @@.mediumorchid;completely unfulfilled@@ since @@.gold;you won't <<if $PC.dick == 1>>give her<<else>>let her find<</if>> the dick she needs.@@
+							leaving $him @@.mediumorchid;completely unfulfilled@@ since @@.gold;you won't <<if $PC.dick == 1>>give $him<<else>>let $him find<</if>> the dick $he needs.@@
 							<<set $slaves[$i].devotion -= 3, $slaves[$i].trust -= 2>>
 						<<else>>
-							leaving her desperate for a thorough seeding @@.mediumorchid;that you've forbidden her from having.@@
+							leaving $him desperate for a thorough seeding @@.mediumorchid;that you've forbidden $him from having.@@
 							<<set $slaves[$i].devotion -= 3>>
 						<</if>>
 					<</if>>
 					<<if $slaves[$i].energy > 60>>
-						Her chronic masturbation @@.red;steadily dulls@@ her sexual pleasure.
+						$His chronic masturbation @@.red;steadily dulls@@ $his sexual pleasure.
 						<<set $slaves[$i].energy-->>
 					<</if>>
 
@@ -388,11 +388,11 @@ and
 
 							<<if ($slaves[$i].fetishKnown == 1) && ($slaves[$i].fetishStrength > 60)>>
 								<<if ($slaves[$i].fetish == "submissive")>>
-									plead that other slaves fuck her.
+									plead that other slaves fuck $him.
 									<<if $averageDick > 4>>
 										<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*40)-($averageDick*5) < random(1,100)>>
-												@@.lime;Her asshole is loosened@@ during sex with other slaves, since most of the cocks she enticed a dominating buttfuck from are very large.
+												@@.lime;$His asshole is loosened@@ during sex with other slaves, since most of the cocks $he enticed a dominating buttfuck from are very large.
 												<<set $slaves[$i].anus++>>
 												<<set $slaves[$i].analCount += 3, $analTotal += 3>>
 											<</if>>
@@ -400,7 +400,7 @@ and
 											<<if $averageDick > 5>>
 											<<if $slaves[$i].vagina > 0 && $slaves[$i].vagina < 3 && canDoVaginal($slaves[$i])>>
 												<<if ($slaves[$i].vagina*40)-($averageDick*5) < random(1,100)>>
-													Since most of the slaves she enticed a pounding from are extremely hung, @@.lime;her cunt gets stretched out.@@
+													Since most of the slaves $he enticed a pounding from are extremely hung, @@.lime;$his cunt gets stretched out.@@
 													<<set $slaves[$i].vagina++>>
 													<<set $slaves[$i].vaginalCount += 3, $vaginalTotal += 3>>
 												<</if>>
@@ -409,11 +409,11 @@ and
 									<</if>>
 									<<run SimpleSlaveFucking($slaves[$i], 7)>>
 								<<elseif ($slaves[$i].fetish == "cumslut")>>
-									suck or be sucked by any slave she fancies.
+									suck or be sucked by any slave $he fancies.
 									<<set _fuckCount = random(5,15)>>
 									<<set $slaves[$i].oralCount += _fuckCount, $oralTotal += _fuckCount>>
 								<<elseif ($slaves[$i].fetish == "humiliation")>>
-									demand that other slaves let her fuck them in public.
+									demand that other slaves let $him fuck them in public.
 									<<if $slaves[$i].assignmentVisible>>
 									<<if !$slaves[$i].rivalry>>
 										<<SlaveSort $RapeableIDs>>
@@ -423,7 +423,7 @@ and
 											<<if $slaves[_j].assignmentVisible || $slaves[_j].assignment == $slaves[$i].assignment>>
 											<<if $slaves[_j].devotion < 20>>
 											<<if $slaves[_j].trust < -20>>
-												Craving a rush, she repeatedly forces a reluctant <<= SlaveFullName($slaves[_j])>> to have sex with her in public. $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
+												Craving a rush, $he repeatedly forces a reluctant <<= SlaveFullName($slaves[_j])>> to have sex with $him in public. $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
 												<<set $slaves[$i].rivalry = 1, $slaves[_j].rivalry = 1, $slaves[$i].rivalryTarget = $slaves[_j].ID, $slaves[_j].rivalryTarget = $slaves[$i].ID>>
 												<<run SimpleSlaveFucking($slaves[_j], 4)>>
 												<<if canPenetrate($slaves[_j])>>
@@ -444,11 +444,11 @@ and
 										<<set $slaves[$i].penetrativeCount += _fuckCount, $penetrativeTotal += _fuckCount>>
 									<</if>>
 								<<elseif ($slaves[$i].fetish == "buttslut") && canDoAnal($slaves[$i])>>
-									demand that other slaves penetrate her anus.
+									demand that other slaves penetrate $his anus.
 									<<if $averageDick > 4>>
 										<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*30)-($averageDick*5) < random(1,100)>>
-												Since most of the slaves she demands anal sex from are extremely hung, @@.lime;her asshole gets stretched out.@@
+												Since most of the slaves $he demands anal sex from are extremely hung, @@.lime;$his asshole gets stretched out.@@
 												<<set $slaves[$i].anus += 1>>
 											<</if>>
 										<</if>>
@@ -456,11 +456,11 @@ and
 									<<set _fuckCount = random(5,12)>>
 									<<set $slaves[$i].analCount += _fuckCount, $analTotal += _fuckCount>>
 								<<elseif ($slaves[$i].fetish == "boobs")>>
-									demand that other slaves massage her breasts.
+									demand that other slaves massage $his breasts.
 									<<set _fuckCount = random(10,25)>>
 									<<set $slaves[$i].mammaryCount += _fuckCount, $mammaryTotal += _fuckCount>>
 								<<elseif ($slaves[$i].fetish == "sadist")>>
-									force the most reluctant slaves to let her fuck them.
+									force the most reluctant slaves to let $him fuck them.
 									<<if $slaves[$i].assignmentVisible>>
 									<<if !$slaves[$i].rivalry>>
 										<<SlaveSort $RapeableIDs>>
@@ -470,19 +470,19 @@ and
 											<<if $slaves[_j].assignmentVisible || $slaves[_j].assignment == $slaves[$i].assignment>>
 											<<if $slaves[_j].devotion <= 50>>
 											<<if $slaves[_j].sexualFlaw != "none">>
-												She focuses on <<= SlaveFullName($slaves[_j])>>, who has a sexual flaw $slaves[$i].slaveName can exploit. She sadistically
+												$He focuses on <<= SlaveFullName($slaves[_j])>>, who has a sexual flaw $slaves[$i].slaveName can exploit. $He sadistically
 												<<if $slaves[_j].sexualFlaw == "hates oral">>
-													rapes the poor slave's face<<if !canAchieveErection($slaves[$i])>> with her fingers<</if>>. $slaves[_j].slaveName hates oral
+													rapes the poor slave's face<<if !canAchieveErection($slaves[$i])>> with $his fingers<</if>>. $slaves[_j].slaveName hates oral
 												<<elseif $slaves[_j].sexualFlaw == "hates penetration" && canDoVaginal($slaves[_j])>>
-													rapes the poor slave's pussy<<if !canAchieveErection($slaves[$i])>> with her fingers<</if>>. $slaves[_j].slaveName hates penetration
+													rapes the poor slave's pussy<<if !canAchieveErection($slaves[$i])>> with $his fingers<</if>>. $slaves[_j].slaveName hates penetration
 												<<elseif ($slaves[_j].sexualFlaw == "hates anal" || $slaves[_j].sexualFlaw == "hates penetration") && canDoAnal($slaves[_j])>>
-													rapes the poor slave's ass<<if !canAchieveErection($slaves[$i])>> with her fingers<</if>>. $slaves[_j].slaveName hates anal
+													rapes the poor slave's ass<<if !canAchieveErection($slaves[$i])>> with $his fingers<</if>>. $slaves[_j].slaveName hates anal
 												<<elseif $slaves[_j].sexualFlaw == "shamefast">>
 													rapes the poor slave in public. $slaves[_j].slaveName is terribly shamefast
 												<<elseif $slaves[_j].sexualFlaw == "idealistic">>
-													rapes the poor slave every time she catches her being romantic. $slaves[_j].slaveName is still idealistic
+													rapes the poor slave every time $he catches her being romantic. $slaves[_j].slaveName is still idealistic
 												<<else>>
-													rapes the poor slave every chance she gets,
+													rapes the poor slave every chance $he gets,
 												<</if>>
 												and the sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
 												<<set $slaves[$i].rivalry = 1, $slaves[_j].rivalry = 1, $slaves[$i].rivalryTarget = $slaves[_j].ID, $slaves[_j].rivalryTarget = $slaves[$i].ID>>
@@ -505,11 +505,11 @@ and
 										<<set $slaves[$i].penetrativeCount += _fuckCount, $penetrativeTotal += _fuckCount>>
 									<</if>>
 								<<elseif ($slaves[$i].fetish == "masochist")>>
-									demand that other slaves hurt her.
+									demand that other slaves hurt $him.
 									<<if $averageDick > 4>>
 										<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*30)-($averageDick*5) < random(1,100)>>
-												@@.lime;Her asshole is loosened@@ during sex with hung slaves, since she often relies on painal to address her needs.
+												@@.lime;$His asshole is loosened@@ during sex with hung slaves, since $he often relies on painal to address $his needs.
 												<<set $slaves[$i].anus += 1>>
 												<<set $slaves[$i].analCount += 3, $analTotal += 3>>
 											<</if>>
@@ -517,7 +517,7 @@ and
 										<<if $averageDick > 5>>
 											<<if $slaves[$i].vagina > 0 && $slaves[$i].vagina < 3 && canDoVaginal($slaves[$i])>>
 												<<if ($slaves[$i].vagina*30)-($averageDick*5) < random(1,100)>>
-													Since she usually demands that hung slaves fuck her hard enough to make her pussy hurt, @@.lime;her cunt gets stretched out.@@
+													Since $he usually demands that hung slaves fuck $him hard enough to make $his pussy hurt, @@.lime;$his cunt gets stretched out.@@
 													<<set $slaves[$i].vagina += 1>>
 													<<set $slaves[$i].vaginalCount += 3, $vaginalTotal += 3>>
 												<</if>>
@@ -526,7 +526,7 @@ and
 									<</if>>
 									<<run SimpleSlaveFucking($slaves[$i], 12)>>
 								<<elseif ($slaves[$i].fetish == "dom")>>
-									force other slaves to submit to her.
+									force other slaves to submit to $him.
 									<<if $slaves[$i].assignmentVisible>>
 									<<if !$slaves[$i].rivalry>>
 										<<SlaveSort $RapeableIDs>>
@@ -536,7 +536,7 @@ and
 											<<if $slaves[_j].assignmentVisible || $slaves[_j].assignment == $slaves[$i].assignment>>
 											<<if $slaves[_j].devotion < 20>>
 											<<if $slaves[_j].trust < -20>>
-												She repeatedly rapes a reluctant <<= SlaveFullName($slaves[_j])>>; she can't seem to keep her hands off the poor slave, who can't avoid her. Not surprisingly, $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
+												$He repeatedly rapes a reluctant <<= SlaveFullName($slaves[_j])>>; $he can't seem to keep $his hands off the poor slave, who can't avoid $him. Not surprisingly, $slaves[_j].slaveName resents this, and $slaves[$i].slaveName's ongoing sexual abuse @@.lightsalmon;starts a rivalry@@ between them.
 												<<set $slaves[$i].rivalry = 1, $slaves[_j].rivalry = 1, $slaves[$i].rivalryTarget = $slaves[_j].ID, $slaves[_j].rivalryTarget = $slaves[$i].ID>>
 												<<break>>
 												<<run SimpleSlaveFucking($slaves[_j], 4)>>
@@ -553,12 +553,12 @@ and
 										<<set $slaves[$i].penetrativeCount += _fuckCount, $penetrativeTotal += _fuckCount>>
 									<</if>>
 								<<elseif ($slaves[$i].fetish == "pregnancy")>>
-									demand that other slaves indulge her pregnancy fetish.
+									demand that other slaves indulge $his pregnancy fetish.
 									<<if $averageDick > 5>>
 										<<if $slaves[$i].mpreg == 0>>
 											<<if $slaves[$i].vagina > 0 && $slaves[$i].vagina < 3 && canDoVaginal($slaves[$i])>>
 											<<if ($slaves[$i].vagina*40)-($averageDick*5) < random(1,100)>>
-												Since she constantly demands to be fucked deeply to get her womb filled with cum, @@.lime;her cunt gets stretched out.@@
+												Since $he constantly demands to be fucked deeply to get $his womb filled with cum, @@.lime;$his cunt gets stretched out.@@
 												<<set $slaves[$i].vagina += 1>>
 												<<set _fuckCount = random(7,14)>>
 												<<set $slaves[$i].vaginalCount += _fuckCount, $vaginalTotal += _fuckCount>>
@@ -567,7 +567,7 @@ and
 										<<else>>
 											<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*40)-($averageDick*5) < random(1,100)>>
-												Since she constantly demands to be fucked deeply to get her womb filled with cum, @@.lime;her ass gets stretched out.@@
+												Since $he constantly demands to be fucked deeply to get $his womb filled with cum, @@.lime;$his ass gets stretched out.@@
 												<<set $slaves[$i].anus += 1>>
 												<<set _fuckCount = random(7,14)>>
 												<<set $slaves[$i].analCount += _fuckCount, $analTotal += _fuckCount>>
@@ -580,11 +580,11 @@ and
 										<<set $slaves[$i].penetrativeCount += _fuckCount, $penetrativeTotal += _fuckCount>>
 									<</if>>
 								<<elseif ($slaves[$i].energy > 95)>>
-									demand that your other slaves satisfy her formidable appetites.
+									demand that your other slaves satisfy $his formidable appetites.
 									<<if $averageDick > 4>>
 										<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*30)-($averageDick*5) < random(1,100)>>
-												@@.lime;Her asshole is loosened@@ during sex with well endowed slaves, since she's so addicted to sex all her holes see heavy traffic.
+												@@.lime;$His asshole is loosened@@ during sex with well endowed slaves, since $he's so addicted to sex all $his holes see heavy traffic.
 												<<set $slaves[$i].anus += 1>>
 												<<set $slaves[$i].analCount += 3, $analTotal += 3>>
 											<</if>>
@@ -592,7 +592,7 @@ and
 										<<if $averageDick > 5>>
 											<<if $slaves[$i].vagina > 0 && $slaves[$i].vagina < 3 && canDoVaginal($slaves[$i])>>
 												<<if ($slaves[$i].vagina*30)-($averageDick*5) < random(1,100)>>
-													She indulges in non-stop sex with your well endowed slaves, so much so that @@.lime;her cunt gets stretched out.@@
+													$He indulges in non-stop sex with your well endowed slaves, so much so that @@.lime;$his cunt gets stretched out.@@
 													<<set $slaves[$i].vagina += 1>>
 													<<set $slaves[$i].vaginalCount += 3, $vaginalTotal += 3>>
 												<</if>>
@@ -605,7 +605,7 @@ and
 										<<set $slaves[$i].penetrativeCount += _fuckCount, $penetrativeTotal += _fuckCount>>
 									<</if>>
 								<<else>>
-									demand that other slaves have sex with her.
+									demand that other slaves have sex with $him.
 									<<run SimpleSlaveFucking($slaves[$i], 7)>>
 									<<if canPenetrate($slaves[$i])>>
 										<<set _fuckCount = random(3,6)>>
@@ -613,7 +613,7 @@ and
 									<</if>>
 								<</if>>
 							<<else>>
-								demand that other slaves have sex with her.
+								demand that other slaves have sex with $him.
 								<<run SimpleSlaveFucking($slaves[$i], 7)>>
 								<<if canPenetrate($slaves[$i])>>
 									<<set _fuckCount = random(3,6)>>
@@ -631,7 +631,7 @@ and
 									<<if $averageDick > 4>>
 										<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*40)-($averageDick*5) < random(1,100)>>
-												@@.lime;Her asshole is loosened@@ during sex with other slaves, since most of the cocks she lets dominate her backdoor are very large.
+												@@.lime;$His asshole is loosened@@ during sex with other slaves, since most of the cocks $he lets dominate $his backdoor are very large.
 												<<set $slaves[$i].anus += 1>>
 												<<set $slaves[$i].analCount += 3, $analTotal += 3>>
 											<</if>>
@@ -639,7 +639,7 @@ and
 										<<if $averageDick > 5>>
 											<<if $slaves[$i].vagina > 0 && $slaves[$i].vagina < 3 && canDoVaginal($slaves[$i])>>
 												<<if ($slaves[$i].vagina*40)-($averageDick*5) < random(1,100)>>
-													Since most of the slaves she takes a pounding from are extremely hung, @@.lime;her cunt gets stretched out.@@
+													Since most of the slaves $he takes a pounding from are extremely hung, @@.lime;$his cunt gets stretched out.@@
 													<<set $slaves[$i].vagina += 1>>
 													<<set $slaves[$i].vaginalCount += 3, $vaginalTotal += 3>>
 												<</if>>
@@ -648,7 +648,7 @@ and
 									<</if>>
 									<<run SimpleSlaveFucking($slaves[$i], 7)>>
 								<<elseif ($slaves[$i].fetish == "cumslut")>>
-									and is popular for her willingness to give oral.
+									and is popular for $his willingness to give oral.
 									<<set _fuckCount = random(5,15)>>
 									<<set $slaves[$i].oralCount += _fuckCount, $oralTotal += _fuckCount>>
 								<<elseif ($slaves[$i].fetish == "humiliation")>>
@@ -668,25 +668,25 @@ and
 										<<else>>
 											tease
 										<</if>>
-										her ass
+										$his ass
 									<<else>>
-										tease her virgin anus
+										tease $his virgin anus
 									<</if>>
 									in return.
 									<<if $averageDick > 4>>
 										<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*30)-($averageDick*5) < random(1,100)>>
-												Since most of the slaves she enjoys anal sex with are extremely hung, @@.lime;her asshole gets stretched out.@@
+												Since most of the slaves $he enjoys anal sex with are extremely hung, @@.lime;$his asshole gets stretched out.@@
 												<<set $slaves[$i].anus += 1>>
 											<</if>>
 										<</if>>
 									<</if>>
 								<<elseif ($slaves[$i].fetish == "boobs")>>
-									seeing to anyone who will show her breasts some love.
+									seeing to anyone who will show $his breasts some love.
 									<<set _fuckCount = random(10,25)>>
 									<<set $slaves[$i].mammaryCount += _fuckCount, $mammaryTotal += _fuckCount>>
 								<<elseif ($slaves[$i].fetish == "sadist")>>
-									usually pairing off with a masochistic slave willing to accept her abuse.
+									usually pairing off with a masochistic slave willing to accept $his abuse.
 									<<run SimpleSlaveFucking($slaves[$i], 7)>>
 									<<if canPenetrate($slaves[$i])>>
 										<<set _fuckCount = random(1,3)>>
@@ -697,7 +697,7 @@ and
 									<<if $averageDick > 4>>
 										<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*30)-($averageDick*5) < random(1,100)>>
-												@@.lime;Her asshole is loosened@@, since she begs hung slaves to fuck her butt until she cries.
+												@@.lime;$His asshole is loosened@@, since $he begs hung slaves to fuck $his butt until $he cries.
 												<<set $slaves[$i].anus += 1>>
 												<<set $slaves[$i].analCount += 3, $analTotal += 3>>
 											<</if>>
@@ -705,7 +705,7 @@ and
 										<<if $averageDick > 5>>
 											<<if $slaves[$i].vagina > 0 && $slaves[$i].vagina < 3 && canDoVaginal($slaves[$i])>>
 												<<if ($slaves[$i].vagina*30)-($averageDick*5) < random(1,100)>>
-													Since she eagerly begs hung slaves to fuck her until she cries, @@.lime;her cunt gets stretched out.@@
+													Since $he eagerly begs hung slaves to fuck $him until $he cries, @@.lime;$his cunt gets stretched out.@@
 													<<set $slaves[$i].vagina += 1>>
 													<<set $slaves[$i].vaginalCount += 3, $vaginalTotal += 3>>
 												<</if>>
@@ -721,12 +721,12 @@ and
 										<<set $slaves[$i].penetrativeCount += _fuckCount, $penetrativeTotal += _fuckCount>>
 									<</if>>
 								<<elseif ($slaves[$i].fetish == "pregnancy")>>
-									doing her best to pair off with any pregnant slaves.
+									doing $his best to pair off with any pregnant slaves.
 									<<if $slaves[$i].mpreg == 0>>
 										<<if $averageDick > 5>>
 											<<if $slaves[$i].vagina > 0 && $slaves[$i].vagina < 3 && canDoVaginal($slaves[$i])>>
 											<<if ($slaves[$i].vagina*40)-($averageDick*5) < random(1,100)>>
-												She also takes cock whenever she can, begging to be fucked deeply to get her womb filled with cum, so @@.lime;her cunt gets stretched out.@@
+												$He also takes cock whenever $he can, begging to be fucked deeply to get $his womb filled with cum, so @@.lime;$his cunt gets stretched out.@@
 												<<set $slaves[$i].vagina += 1>>
 												<<set $slaves[$i].vaginalCount += 3, $vaginalTotal += 3>>
 											<</if>>
@@ -736,7 +736,7 @@ and
 										<<if $averageDick > 5>>
 											<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*40)-($averageDick*5) < random(1,100)>>
-												She also takes cock whenever she can, begging to be fucked deeply to get her womb filled with cum, so @@.lime;her ass gets stretched out.@@
+												$He also takes cock whenever $he can, begging to be fucked deeply to get $his womb filled with cum, so @@.lime;$his ass gets stretched out.@@
 												<<set $slaves[$i].anus += 1>>
 												<<set $slaves[$i].analCount += 3, $analTotal += 3>>
 											<</if>>
@@ -749,11 +749,11 @@ and
 										<<set $slaves[$i].penetrativeCount += _fuckCount, $penetrativeTotal += _fuckCount>>
 									<</if>>
 								<<elseif ($slaves[$i].energy > 95)>>
-									and has to give out a lot of favors to get enough attention for herself.
+									and has to give out a lot of favors to get enough attention for $himself.
 									<<if $averageDick > 4>>
 										<<if $slaves[$i].anus > 0 && $slaves[$i].anus < 3 && canDoAnal($slaves[$i])>>
 											<<if ($slaves[$i].anus*30)-($averageDick*5) < random(1,100)>>
-												@@.lime;Her asshole is loosened@@ during sex with well endowed slaves, since she's so addicted to sex all her holes see heavy traffic.
+												@@.lime;$His asshole is loosened@@ during sex with well endowed slaves, since $he's so addicted to sex all $his holes see heavy traffic.
 												<<set $slaves[$i].anus += 1>>
 												<<set $slaves[$i].analCount += 3, $analTotal += 3>>
 											<</if>>
@@ -761,7 +761,7 @@ and
 										<<if $averageDick > 5>>
 											<<if $slaves[$i].vagina > 0 && $slaves[$i].vagina < 3 && canDoVaginal($slaves[$i])>>
 												<<if ($slaves[$i].vagina*30)-($averageDick*5) < random(1,100)>>
-													She indulges in non-stop sex with your well endowed slaves, so much so that @@.lime;her cunt gets stretched out.@@
+													$He indulges in non-stop sex with your well endowed slaves, so much so that @@.lime;$his cunt gets stretched out.@@
 													<<set $slaves[$i].vagina += 1>>
 													<<set $slaves[$i].vaginalCount += 3, $vaginalTotal += 3>>
 												<</if>>
@@ -774,7 +774,7 @@ and
 										<<set $slaves[$i].penetrativeCount += _fuckCount, $penetrativeTotal += _fuckCount>>
 									<</if>>
 								<<else>>
-									doing her best to get off and move on.
+									doing $his best to get off and move on.
 									<<run SimpleSlaveFucking($slaves[$i], 7)>>
 									<<if canPenetrate($slaves[$i])>>
 										<<set _fuckCount = random(3,6)>>
@@ -782,7 +782,7 @@ and
 									<</if>>
 								<</if>>
 							<<else>>
-								doing her best to get off and move on.
+								doing $his best to get off and move on.
 								<<run SimpleSlaveFucking($slaves[$i], 7)>>
 								<<if canPenetrate($slaves[$i])>>
 									<<set _fuckCount = random(3,6)>>
@@ -797,34 +797,34 @@ and
 							<<if ($slaves[$i].fetishKnown == 0)>>
 								<<if (random(1,2) == 1)>>
 									<<set $slaves[$i].fetishKnown = 1>>
-									However, one of her partners
+									However, one of $his partners
 									<<if ($slaves[$i].fetish == "submissive")>>
-										holds her down, and she loves it; @@.lightcoral;she's a submissive!@@
+										holds $him down, and $he loves it; @@.lightcoral;$he's a submissive!@@
 									<<elseif ($slaves[$i].fetish == "cumslut")>>
-										finally has to push her away to get her to stop sucking; @@.lightcoral;she's a cumslut!@@
+										finally has to push $him away to get $him to stop sucking; @@.lightcoral;$he's a cumslut!@@
 									<<elseif ($slaves[$i].fetish == "humiliation")>>
-										fucks her in public, and she loves it; @@.lightcoral;she's a humiliation fetishist!@@
+										fucks $him in public, and $he loves it; @@.lightcoral;$he's a humiliation fetishist!@@
 									<<elseif ($slaves[$i].fetish == "buttslut")>>
 										<<if ($slaves[$i].anus > 0)>>
-											<<if canDoAnal($slaves[$i])>>fucks her butt<<else>>teases her anus<</if>>, and she loves it;
+											<<if canDoAnal($slaves[$i])>>fucks $his butt<<else>>teases $his anus<</if>>, and $he loves it;
 										<<else>>
-										teases her virgin anus, and she loves it;
+										teases $his virgin anus, and $he loves it;
 										<</if>>
-										@@.lightcoral;she's an anal slut!@@
+										@@.lightcoral;$he's an anal slut!@@
 									<<elseif ($slaves[$i].fetish == "boobs")>>
-										fondles her breasts, and she loves it; @@.lightcoral;she's a boob fetishist!@@
+										fondles $his breasts, and $he loves it; @@.lightcoral;$he's a boob fetishist!@@
 									<<elseif ($slaves[$i].fetish == "sadist")>>
-										asks $slaves[$i].slaveName to hit her, which $slaves[$i].slaveName enjoys doing; @@.lightcoral;she's a sadist!@@
+										asks $slaves[$i].slaveName to hit $him, which $slaves[$i].slaveName enjoys doing; @@.lightcoral;$he's a sadist!@@
 									<<elseif ($slaves[$i].fetish == "masochist")>>
-										hits $slaves[$i].slaveName while fucking her, which only makes her hornier; @@.lightcoral;she's a masochist!@@
+										hits $slaves[$i].slaveName while fucking $him, which only makes $him hornier; @@.lightcoral;$he's a masochist!@@
 									<<elseif ($slaves[$i].fetish == "dom")>>
-										asks $slaves[$i].slaveName to make her $slaves[$i].slaveName's bitch, which $slaves[$i].slaveName manages like a natural; @@.lightcoral;she's dominant!@@
+										asks $slaves[$i].slaveName to make her $slaves[$i].slaveName's bitch, which $slaves[$i].slaveName manages like a natural; @@.lightcoral;$he's dominant!@@
 									<<elseif ($slaves[$i].fetish == "pregnancy")>>
-										pretends to get her pregnant, which she really enjoys; @@.lightcoral;she's a pregnancy fetishist!@@
+										pretends to get $him pregnant, which $he really enjoys; @@.lightcoral;$he's a pregnancy fetishist!@@
 									<<elseif ($slaves[$i].energy > 95)>>
-										discovers that she cannot be satisfied; @@.lightcoral;she's a nympho!@@
+										discovers that $he cannot be satisfied; @@.lightcoral;$he's a nympho!@@
 									<<else>>
-										discovers that she isn't terribly exciting; @@.lightcoral;she's got a normal sexuality.@@
+										discovers that $he isn't terribly exciting; @@.lightcoral;$he's got a normal sexuality.@@
 									<</if>>
 								<</if>>
 							<</if>>
@@ -836,36 +836,36 @@ and
 							<<if ($slaves[$i].fetishKnown == 0)>>
 								<<if (random(1,2) == 1)>>
 								<<set $slaves[$i].fetishKnown = 1>>
-								You discover that she really likes it when other girls
+								You discover that $he really likes it when other girls
 								<<if ($slaves[$i].fetish == "submissive")>>
-									hold her down and fuck her; @@.lightcoral;she's a submissive!@@
+									hold $him down and fuck $him; @@.lightcoral;$he's a submissive!@@
 								<<elseif ($slaves[$i].fetish == "cumslut")>>
-									cum in her mouth; @@.lightcoral;she's a cumslut!@@
+									cum in $his mouth; @@.lightcoral;$he's a cumslut!@@
 								<<elseif ($slaves[$i].fetish == "humiliation")>>
-									use her in public; @@.lightcoral;she's a humiliation fetishist!@@
+									use $him in public; @@.lightcoral;$he's a humiliation fetishist!@@
 								<<elseif ($slaves[$i].fetish == "buttslut")>>
 									<<if ($slaves[$i].anus > 0)>>
-										<<if canDoAnal($slaves[$i])>>fuck her butt<<else>>tease her anus<</if>>;
+										<<if canDoAnal($slaves[$i])>>fuck $his butt<<else>>tease $his anus<</if>>;
 									<<else>>
-									tease her virgin anus;
+									tease $his virgin anus;
 									<</if>>
-									@@.lightcoral;she's an anal slut!@@
+									@@.lightcoral;$he's an anal slut!@@
 								<<elseif ($slaves[$i].fetish == "boobs")>>
-									fondle her breasts; @@.lightcoral;she's a boob fetishist!@@
+									fondle $his breasts; @@.lightcoral;$he's a boob fetishist!@@
 								<<elseif ($slaves[$i].fetish == "sadist")>>
-									let her abuse them; @@.lightcoral;she's a sadist!@@
+									let $him abuse them; @@.lightcoral;$he's a sadist!@@
 								<<elseif ($slaves[$i].fetish == "masochist")>>
-									hurt her; @@.lightcoral;she's a masochist!@@
+									hurt $him; @@.lightcoral;$he's a masochist!@@
 								<<elseif ($slaves[$i].fetish == "dom")>>
-									let her dominate them; @@.lightcoral;she's dominant!@@
+									let $him dominate them; @@.lightcoral;$he's dominant!@@
 								<<elseif ($slaves[$i].fetish == "pregnancy")>>
 									<<if $slaves[$i].mpreg == 0>>
-										come <<if canDoVaginal($slaves[$i])>>inside<<else>>on<</if>> her; @@.lightcoral;she's a pregnancy fetishist!@@
+										come <<if canDoVaginal($slaves[$i])>>inside<<else>>on<</if>> $him; @@.lightcoral;$he's a pregnancy fetishist!@@
 									<<else>>
-										come <<if canDoAnal($slaves[$i])>>inside<<else>>on<</if>> her; @@.lightcoral;she's a pregnancy fetishist!@@
+										come <<if canDoAnal($slaves[$i])>>inside<<else>>on<</if>> $him; @@.lightcoral;$he's a pregnancy fetishist!@@
 									<</if>>
 								<<else>>
-									fuck her; @@.lightcoral;she's got a normal sexuality.@@
+									fuck $him; @@.lightcoral;$he's got a normal sexuality.@@
 								<</if>>
 								<</if>>
 							<</if>>
@@ -878,43 +878,43 @@ and
 						<<if $slaves[$i].drugs == "testicle enhancement" || $slaves[$i].drugs == "intensive testicle enhancement">>
 							<<if ($slaves[$i].devotion > 20) || ($slaves[$i].trust < -20)>>
 								<<if $slaves[$i].hormonebalance >= 100>>
-									She can't seem to get enough cum out of her terribly swollen balls in one orgasm to relieve the pressure:
+									$He can't seem to get enough cum out of $his terribly swollen balls in one orgasm to relieve the pressure:
 									<<if $slaves[$i].dick>>
-										her poor soft dick produces slow, anemic ejaculations, no matter how backed up she is.
+										$his poor soft dick produces slow, anemic ejaculations, no matter how backed up $he is.
 									<<else>>
-										her cumhole produces slow, anemic ejaculations, no matter how backed up she is.
+										$his cumhole produces slow, anemic ejaculations, no matter how backed up $he is.
 									<</if>>
-									She is very reliant on your other girls to help her, which @@.mediumaquamarine;habituates her@@ to slave sex.
+									$He is very reliant on your other girls to help $him, which @@.mediumaquamarine;habituates $him@@ to slave sex.
 								<<else>>
-									Her terribly swollen balls force her to rely on other slaves for release several times a day, and jetting cum into and onto your other girls @@.mediumaquamarine;habituates her@@ to slave sex.
+									$His terribly swollen balls force $him to rely on other slaves for release several times a day, and jetting cum into and onto your other girls @@.mediumaquamarine;habituates $him@@ to slave sex.
 								<</if>>
 								<<set $slaves[$i].trust += 1>>
 							<<else>>
-								She can't seem to get enough cum out of her terribly swollen balls to relieve the pressure and is either unwilling or unable to get help with it, something she @@.mediumorchid;blames you for.@@
+								$He can't seem to get enough cum out of $his terribly swollen balls to relieve the pressure and is either unwilling or unable to get help with it, something $he @@.mediumorchid;blames you for.@@
 								<<set $slaves[$i].devotion -= 1>>
 							<</if>>
 						<<elseif $slaves[$i].drugs == "hyper testicle enhancement">>
 							<<if ($slaves[$i].devotion > 20) || ($slaves[$i].trust < -20) || !canPenetrate($slaves[$i])>>
 								<<if $slaves[$i].hormonebalance >= 100>>
-									She can't seem to get enough cum out of her grotesquely swollen balls in one orgasm to get relieve the pressure:
+									$He can't seem to get enough cum out of $his grotesquely swollen balls in one orgasm to get relieve the pressure:
 									<<if $slaves[$i].dick>>
-										her poor soft dick produces slow, anemic ejaculations, no matter how backed up she is.
+										$his poor soft dick produces slow, anemic ejaculations, no matter how backed up $he is.
 									<<else>>
-										her cumhole produces slow, anemic ejaculations, no matter how backed up she is.
+										$his cumhole produces slow, anemic ejaculations, no matter how backed up $he is.
 									<</if>>
-									She is completely dependent on your other girls to help her, which @@.mediumaquamarine;habituates her@@ to slave sex.
+									$He is completely dependent on your other girls to help $him, which @@.mediumaquamarine;habituates $him@@ to slave sex.
 								<<else>>
-									Her grotesquely swollen balls force her to rely on other slaves for release throughout times a day, and swelling your other girls with cum @@.mediumaquamarine;habituates her@@ to slave sex, though you have to take precautions so she doesn't knock up your entire stock.
+									$His grotesquely swollen balls force $him to rely on other slaves for release throughout times a day, and swelling your other girls with cum @@.mediumaquamarine;habituates $him@@ to slave sex, though you have to take precautions so $he doesn't knock up your entire stock.
 								<</if>>
 								<<set $slaves[$i].trust += 1>>
 							<<else>>
-								She can't seem to get enough cum out of her grotesquely swollen balls to relieve the pressure and is either unwilling or unable to get help with it, something she @@.mediumorchid;blames you for.@@
+								$He can't seem to get enough cum out of $his grotesquely swollen balls to relieve the pressure and is either unwilling or unable to get help with it, something $he @@.mediumorchid;blames you for.@@
 								<<set $slaves[$i].devotion -= 1>>
 							<</if>>
 						<</if>>
 					<</if>>
 					<<if $slaves[$i].drugs == "super fertility drugs" && canGetPregnant($slaves[$i])>>
-							Her reproductive system is in overdrive leading her to seek out any dicked girl she can find several times a day. She @@.mediumaquamarine;desperately longs@@ for the day her efforts fill her womb with child.
+							$His reproductive system is in overdrive leading $him to seek out any dicked girl $he can find several times a day. $He @@.mediumaquamarine;desperately longs@@ for the day $his efforts fill $his womb with child.
 							<<set $slaves[$i].trust += 1>>
 					<</if>>
 
-- 
GitLab


From 2fdae5404b8dd429274a696ffad66ba75e22cbb0 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Thu, 26 Jul 2018 19:26:54 -0400
Subject: [PATCH 129/189] fixes

---
 devNotes/twine JS.txt              | 2 +-
 src/js/fresult.tw                  | 2 +-
 src/uncategorized/slaveInteract.tw | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 12e0224c33d..c23d2e2ee0d 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -10445,7 +10445,7 @@ window.FResult = (function() {
 			if (slave.preg > 10) V.FResult += 2;
 			else V.FResult -= 2;
 		} else if (V.arcologies[0].FSRestart > 20) {
-			if (slave.bellyPreg >= 500 && slave.breedingMark === 1 && V.propResult === 1)
+			if (slave.bellyPreg >= 500 && slave.breedingMark === 1 && V.propOutcome === 1)
 				V.FResult += 1;
 			else if (slave.preg > 10)
 				V.FResult -= 10;
diff --git a/src/js/fresult.tw b/src/js/fresult.tw
index 1622e867e4a..c0f73efc8e2 100644
--- a/src/js/fresult.tw
+++ b/src/js/fresult.tw
@@ -138,7 +138,7 @@ window.FResult = (function() {
 			if (slave.preg > 10) V.FResult += 2;
 			else V.FResult -= 2;
 		} else if (V.arcologies[0].FSRestart > 20) {
-			if (slave.bellyPreg >= 500 && slave.breedingMark === 1 && V.propResult === 1)
+			if (slave.bellyPreg >= 500 && slave.breedingMark === 1 && V.propOutcome === 1)
 				V.FResult += 1;
 			else if (slave.preg > 10)
 				V.FResult -= 10;
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 4393ed254ff..2febacd2153 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1074,7 +1074,7 @@ Aphrodisiacs: <span id="aphrodisiacs"><strong><<if $activeSlave.aphrodisiacs > 1
 			<</if>>
 		<<elseif ($activeSlave.preg > 35)>>
 			| <<link "Give $him a cesarean section" "csec">><</link>>
-		<<elseif ($activeSlave.preg > 0) && ($activeSlave.breedingMark != 1 || $propOutcome == 0) && $activeSlave.pregSource == -1>>
+		<<elseif ($activeSlave.preg > 0) && $activeSlave.breedingMark == 1 && $propOutcome == 1 && $activeSlave.pregSource == -1>>
 			//You are forbidden from aborting an elite child//
 		<<elseif ($activeSlave.preg > 0)>>
 			<<link "Abort $his pregnancy" "Abort">><</link>>
-- 
GitLab


From 29aed5e4b57115d760e7cca53d59850b82012ecb Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 26 Jul 2018 20:56:30 -0400
Subject: [PATCH 130/189] JSify generateAge, NationalityToName, and
 NationalitytoAccent

---
 devNotes/twine JS.txt                         | 1088 +++++++++++++
 src/SecExp/secExpSmilingMan.tw                |    4 +-
 src/js/slaveGenerationJS.tw                   | 1087 +++++++++++++
 src/npc/acquisition.tw                        |   10 +-
 src/npc/startingGirls/startingGirls.tw        |    6 +-
 src/uncategorized/REroyalblood.tw             |    4 +-
 src/uncategorized/changeLanguage.tw           |   14 +-
 src/uncategorized/completeCatalog.tw          |    2 +-
 src/uncategorized/generateXXSlave.tw          |    6 +-
 src/uncategorized/generateXYSlave.tw          |    6 +-
 src/uncategorized/motherDaughterWorkaround.tw |    4 +-
 src/uncategorized/pRivalryHostage.tw          |    2 +-
 ...EgyptianRevivalistAcquisitionWorkaround.tw |    2 +-
 src/uncategorized/reRecruit.tw                |    4 +-
 src/uncategorized/reRelativeRecruiter.tw      |    4 +-
 src/uncategorized/recETSWorkaround.tw         |    2 +-
 src/uncategorized/siblingsWorkaround.tw       |    4 +-
 src/uncategorized/specialSlave.tw             |    2 +-
 src/uncategorized/twinsWorkaround.tw          |    4 +-
 src/utility/slaveGenerationWidgets.tw         | 1410 -----------------
 20 files changed, 2215 insertions(+), 1450 deletions(-)
 create mode 100644 src/js/slaveGenerationJS.tw

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index c23d2e2ee0d..4437281b79c 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -23286,3 +23286,1091 @@ window.clothing2artSuffix = function(v) {
           ) /* CamelCase by whitespace */
           .replace(/\W/g,""); /* remove remaining whitespace */
 };
+
+/*:: Slave Generation JS [script]*/
+
+window.generateAge = function generateAge(slave) {
+	const V = State.variables;
+
+	if (V.activeSlaveOneTimeMaxAge > 998) {
+		V.activeSlaveOneTimeMaxAge = (V.pedo_mode === 1) ? 18 : 42;
+	} else if (V.pedo_mode === 1 && V.one_time_age_overrides_pedo_mode === 0 && V.activeSlaveOneTimeMaxAge > 18) {
+		V.activeSlaveOneTimeMaxAge = 18;
+	}
+	if (V.retirementAge < V.activeSlaveOneTimeMaxAge) {
+		V.activeSlaveOneTimeMaxAge = (V.retirementAge - 1);
+	}
+	if (V.activeSlaveOneTimeMinAge < V.minimumSlaveAge) {
+		V.activeSlaveOneTimeMinAge = V.minimumSlaveAge;
+	} else if (V.pedo_mode === 1 && V.one_time_age_overrides_pedo_mode === 0) {
+		V.activeSlaveOneTimeMinAge = V.minimumSlaveAge;
+	}
+	if (V.activeSlaveOneTimeMaxAge < V.activeSlaveOneTimeMinAge) {
+		V.activeSlaveOneTimeMaxAge = V.activeSlaveOneTimeMinAge;
+	}
+	if (V.activeSlaveOneTimeMaxAge >= 30 && V.arcologies[0].FSMaturityPreferentialist !== "unset" && V.ageAdjustOverride !== 1) {
+		V.activeSlaveOneTimeMaxAge += 10;
+	}
+	slave.actualAge = jsRandom(V.activeSlaveOneTimeMinAge, V.activeSlaveOneTimeMaxAge);
+	const secondAgeRoll = jsRandom(V.activeSlaveOneTimeMinAge, V.activeSlaveOneTimeMaxAge);
+	if (V.arcologies[0].FSYouthPreferentialist !== "unset" && V.arcologies[0].FSYouthPreferentialist >= jsRandom(1, 100)) {
+		slave.actualAge = Math.min(slave.actualAge, secondAgeRoll);
+	} else if (V.arcologies[0].FSMaturityPreferentialist !== "unset" && V.arcologies[0].FSMaturityPreferentialist >= jsRandom(1, 100)) {
+		slave.actualAge = Math.max(slave.actualAge, secondAgeRoll);
+	}
+	if (slave.actualAge >= V.retirementAge) {
+		slave.actualAge = (V.retirementAge - 2);
+	}
+	V.activeSlaveOneTimeMinAge = 0;
+	V.activeSlaveOneTimeMaxAge = 999;
+	V.one_time_age_overrides_pedo_mode = 0;
+	V.ageAdjustOverride = 0;
+	slave.visualAge = slave.actualAge;
+	slave.physicalAge = slave.actualAge;
+	slave.ovaryAge = slave.actualAge;
+	slave.age = slave.actualAge; /*compatibility*/
+	slave.pubertyAgeXX = V.fertilityAge;
+	slave.pubertyAgeXY = V.potencyAge;
+};
+
+window.nationalityToName = function nationalityToName(slave) {
+	const V = State.variables;
+
+	slave.birthName =
+		jsEither(setup.namePoolSelector[slave.nationality + "." + slave.race] ||
+			setup.namePoolSelector[slave.nationality] ||
+			setup.whiteAmericanSlaveNames);
+	slave.birthSurname =
+		jsEither(setup.surnamePoolSelector[slave.nationality + "." + slave.race] ||
+			setup.surnamePoolSelector[slave.nationality] ||
+			setup.whiteAmericanSlaveSurnames);
+	slave.slaveName = slave.birthName;
+	slave.slaveSurname = slave.birthSurname;
+	if (V.useFSNames === 1) {
+		if (V.arcologies[0].FSChattelReligionist > 20) {
+			slave.slaveName = jsEither(setup.chattelReligionistSlaveNames), slave.slaveSurname = 0;
+		} else if (V.arcologies[0].FSRomanRevivalist > 20) {
+			slave.slaveName = jsEither(setup.romanSlaveNames), slave.slaveSurname = jsEither(setup.romanSlaveSurnames);
+		} else if (V.arcologies[0].FSAztecRevivalist > 20) {
+			slave.slaveName = jsEither(setup.aztecSlaveNames), slave.slaveSurname = 0;
+		} else if (V.arcologies[0].FSEgyptianRevivalist > 20) {
+			slave.slaveName = jsEither(setup.ancientEgyptianSlaveNames), slave.slaveSurname = 0;
+		} else if (V.arcologies[0].FSEdoRevivalist > 20) {
+			slave.slaveName = jsEither(setup.edoSlaveNames), slave.slaveSurname = jsEither(setup.edoSlaveSurnames);
+		} else if (V.arcologies[0].FSDegradationist !== "unset") {
+			DegradingName(slave);
+		}
+	}
+};
+
+window.nationalityToAccent = function nationalityToAccent(slave) {
+	const V = State.variables;
+	const naturalAccent = jsEither([0, 1, 1, 2, 2, 2, 3, 3, 3, 3]);
+
+	switch (slave.nationality) {
+		case "Afghan":
+			slave.accent = (V.language === "Pashto") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Albanian":
+			slave.accent = naturalAccent;
+			break;
+		case "Algerian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "American":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Spanish" && slave.race === "latina") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Chinese" && slave.race === "asian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Arabic" && slave.race === "middle eastern") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Andorran":
+			slave.accent = (V.language === "Catalan") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Angolan":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Antiguan":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Argentinian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Armenian":
+			if (V.language === "Russian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Aruban":
+			if (V.language === "Dutch") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Portuguese") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Australian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Austrian":
+			if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Serbian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Slovene") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Turkish" && slave.race === "middle eastern") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Azerbaijani":
+			slave.accent = naturalAccent;
+			break;
+		case "Bahamian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Bahraini":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Bangladeshi":
+			if (V.language === "Bengali") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Hindi") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Barbadian":
+			slave.accent = naturalAccent;
+			break;
+		case "Belarusian":
+			slave.accent = naturalAccent;
+			break;
+		case "Belgian":
+			if (V.language === "Dutch") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Belizean":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Beninese":
+			slave.accent = (V.language === "French") ? 1 : naturalAccent;
+			break;
+		case "Bermudian":
+			slave.accent = (V.language === "English") ? 1 : naturalAccent;
+			break;
+		case "Bhutanese":
+			slave.accent = (V.language === "Dzongkha") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Bissau-Guinean":
+			slave.accent = (V.language === "Portuguese") ? 1 : naturalAccent;
+			break;
+		case "Bolivian":
+			slave.accent = (V.language === "Spanish") ? 1 : naturalAccent;
+			break;
+		case "Bosnian":
+			slave.accent = naturalAccent;
+			break;
+		case "Brazilian":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "British":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Bruneian":
+			if (V.language === "Malay") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Bulgarian":
+			slave.accent = naturalAccent;
+			break;
+		case "Burkinabé":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Burmese":
+			slave.accent = naturalAccent;
+			break;
+		case "Burundian":
+			slave.accent = (V.language === "Kirundi") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Cambodian":
+			if (V.language === "Khmer") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Cham") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Cameroonian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Canadian":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Cape Verdean":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Catalan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Central African":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Chadian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Chilean":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Chinese":
+			if (V.language === "Tibetan") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Korean") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Kazakh") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Colombian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Comorian":
+			if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Congolese":
+			if (V.language === "Lingala") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Kikongo") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "a Cook Islander":
+			if (V.language === "Cook Islands Māori") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Costa Rican":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Croatian":
+			slave.accent = naturalAccent;
+			break;
+		case "Cuban":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Cypriot":
+			if (V.language === "Greek") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Turkish") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Czech":
+			slave.accent = naturalAccent;
+			break;
+		case "Danish":
+			slave.accent = naturalAccent;
+			break;
+		case "Djiboutian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Dominican":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Dominiquais":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Dutch":
+			slave.accent = naturalAccent;
+			break;
+		case "East Timorese":
+			if (V.language === "Tetum") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Portuguese") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Malay") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Ecuadorian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Egyptian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Emirati":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Equatoguinean":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Eritrean":
+			if (V.language === "Tigrinya") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Estonian":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Ethiopian":
+			if (V.language === "Amharic") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Tigrinya") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Fijian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Filipina":
+			if (V.language === "Filipino") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Tagalog") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Spanish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Finnish":
+			slave.accent = (V.language === "Swedish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "French":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Spanish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Arabic" && slave.race === "middle eastern") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Catalan") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "French Guianan":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "French Polynesian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Gabonese":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Gambian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Georgian":
+			slave.accent = (V.language === "Abkhaz") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "German":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Turkish" && slave.race === "middle eastern") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Ghanan":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Hausa") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Greek":
+			slave.accent = naturalAccent;
+			break;
+		case "Greenlandic":
+			slave.accent = (V.language === "Danish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Grenadian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Guamanian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Guatemalan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Guinean":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Guyanese":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Haitian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Honduran":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Hungarian":
+			slave.accent = naturalAccent;
+			break;
+		case "I-Kiribati":
+			if (V.language === "Gilbertese") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Icelandic":
+			if (V.language === "Danish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Indian":
+			if (V.language === "Hindi") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Indonesian":
+			slave.accent = (V.language === "Malay") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Iranian":
+			if (V.language === "Persian") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Iraqi":
+			if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Kurdish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Irish":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Israeli":
+			if (V.language === "Hebrew") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Italian":
+			slave.accent = naturalAccent;
+			break;
+		case "Ivorian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Jamaican":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Japanese":
+			slave.accent = naturalAccent;
+			break;
+		case "Jordanian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Kazakh":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Kenyan":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Kittitian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Korean":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Kosovan":
+			if (V.language === "Albanian") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Serbian") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Kurdish":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Kuwaiti":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Kyrgyz":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Laotian":
+			if (V.language === "Lao") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Khmu") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Latvian":
+			slave.accent = naturalAccent;
+			break;
+		case "Lebanese":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Liberian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Libyan":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "a Liechtensteiner":
+			slave.accent = (V.language === "German") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Lithuanian":
+			slave.accent = naturalAccent;
+			break;
+		case "Luxembourgian":
+			if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Macedonian":
+			slave.accent = naturalAccent;
+			break;
+		case "Malagasy":
+			slave.accent = naturalAccent;
+			break;
+		case "Malawian":
+			slave.accent = naturalAccent;
+			break;
+		case "Malaysian":
+			slave.accent = (V.language === "Malay") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Maldivian":
+			slave.accent = naturalAccent;
+			break;
+		case "Malian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Maltese":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Italian") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Marshallese":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Mauritanian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Mauritian":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Mexican":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Micronesian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Moldovan":
+			slave.accent = naturalAccent;
+			break;
+		case "Monégasque":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Mongolian":
+			slave.accent = naturalAccent;
+			break;
+		case "Montenegrin":
+			slave.accent = naturalAccent;
+			break;
+		case "Moroccan":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Mosotho":
+			slave.accent = naturalAccent;
+			break;
+		case "Motswana":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Mozambican":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Namibian":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Afrikaans") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Nauruan":
+			slave.accent = naturalAccent;
+			break;
+		case "Nepalese":
+			slave.accent = naturalAccent;
+			break;
+		case "New Caledonian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "a New Zealander":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Ni-Vanuatu":
+			if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Nicaraguan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Nigerian":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Hausa") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Nigerien":
+			if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Hausa") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Niuean":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Norwegian":
+			slave.accent = naturalAccent;
+			break;
+		case "Omani":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Pakistani":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Palauan":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Sonsorolese") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Tobian") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Japanese") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Palestinian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Panamanian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Papua New Guinean":
+			slave.accent = naturalAccent;
+			break;
+		case "Paraguayan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Peruvian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Polish":
+			slave.accent = naturalAccent;
+			break;
+		case "Portuguese":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Puerto Rican":
+			if (V.language === "Spanish") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Qatari":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Romanian":
+			slave.accent = naturalAccent;
+			break;
+		case "Russian":
+			slave.accent = naturalAccent;
+			break;
+		case "Rwandan":
+			slave.accent = (V.language === "Kinyarwanda") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Sahrawi":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Saint Lucian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Salvadoran":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Sammarinese":
+			slave.accent = (V.language === "Italian") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Samoan":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "São Toméan":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Saudi":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Scottish":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Senegalese":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Serbian":
+			slave.accent = naturalAccent;
+			break;
+		case "Seychellois":
+			if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Sierra Leonean":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Singaporean":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Chinese") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Malay") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Tamil") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Slovak":
+			slave.accent = naturalAccent;
+			break;
+		case "Slovene":
+			slave.accent = naturalAccent;
+			break;
+		case "a Solomon Islander":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Somali":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "South African":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Afrikaans") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "South Sudanese":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Spanish":
+			slave.accent = (V.language === "Catalan") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Sri Lankan":
+			if (V.language === "Sinhalese") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Tamil") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Sudanese":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Surinamese":
+			slave.accent = (V.language === "Dutch") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Swazi":
+			slave.accent = naturalAccent;
+			break;
+		case "Swedish":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Finnish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Norwegian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Swiss":
+			if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Italian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Syrian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Taiwanese":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Tajik":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Tanzanian":
+			slave.accent = (V.language === "Swahili") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Thai":
+			if (V.language === "Chinese") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Malay") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Khmer") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Tibetan":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Togolese":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Tongan":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Trinidadian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Tunisian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Turkish":
+			slave.accent = naturalAccent;
+			break;
+		case "Turkmen":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Tuvaluan":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Ugandan":
+			slave.accent = (V.language === "Swahili") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Ukrainian":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Uruguayan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Uzbek":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Vatican":
+			slave.accent = (V.language === "Italian") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Venezuelan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Vietnamese":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Vincentian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Yemeni":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Zairian":
+			if (V.language === "Lingala") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Kikongo") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Swahili") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Zambian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Zimbabwean":
+			slave.accent = (V.language === "English" && slave.race === "white") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Ancient Chinese Revivalist":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Ancient Egyptian Revivalist":
+			slave.accent = (V.language === "Ancient Egyptian") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Arabian Revivalist":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Aztec Revivalist":
+			slave.accent = (V.language === "Nahuatl") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Edo Revivalist":
+			slave.accent = (V.language === "Japanese") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Roman Revivalist":
+			slave.accent = (V.language === "Latin") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		default:
+			slave.accent = naturalAccent;
+			break;
+	}
+
+	if (slave.nationality === V.language) {
+		slave.accent = jsEither([0, 0, 0, 1]);
+	}
+};
diff --git a/src/SecExp/secExpSmilingMan.tw b/src/SecExp/secExpSmilingMan.tw
index 3b5bdc33909..fd847619047 100644
--- a/src/SecExp/secExpSmilingMan.tw
+++ b/src/SecExp/secExpSmilingMan.tw
@@ -322,8 +322,8 @@
 		<<set $activeSlave.nationality = "Japanese">>
 		<<set $activeSlave.intelligence = 3>>
 		<<set $activeSlave.intelligenceImplant = 1>>
-		<<NationalityToName $activeSlave>>
-		<<NationalityToAccent $activeSlave>>
+		<<run nationalityToName($activeSlave)>>
+		<<run nationalityToAccent($activeSlave)>>
 		<<NationalityToRace $activeSlave>>
 		<<set $activeSlave.slaveSurname = "Yamadera">>
 		<<set $activeSlave.birthSurname = "Yamadera">>
diff --git a/src/js/slaveGenerationJS.tw b/src/js/slaveGenerationJS.tw
new file mode 100644
index 00000000000..1b520f2ab5a
--- /dev/null
+++ b/src/js/slaveGenerationJS.tw
@@ -0,0 +1,1087 @@
+:: Slave Generation JS [script]
+
+window.generateAge = function generateAge(slave) {
+	const V = State.variables;
+
+	if (V.activeSlaveOneTimeMaxAge > 998) {
+		V.activeSlaveOneTimeMaxAge = (V.pedo_mode === 1) ? 18 : 42;
+	} else if (V.pedo_mode === 1 && V.one_time_age_overrides_pedo_mode === 0 && V.activeSlaveOneTimeMaxAge > 18) {
+		V.activeSlaveOneTimeMaxAge = 18;
+	}
+	if (V.retirementAge < V.activeSlaveOneTimeMaxAge) {
+		V.activeSlaveOneTimeMaxAge = (V.retirementAge - 1);
+	}
+	if (V.activeSlaveOneTimeMinAge < V.minimumSlaveAge) {
+		V.activeSlaveOneTimeMinAge = V.minimumSlaveAge;
+	} else if (V.pedo_mode === 1 && V.one_time_age_overrides_pedo_mode === 0) {
+		V.activeSlaveOneTimeMinAge = V.minimumSlaveAge;
+	}
+	if (V.activeSlaveOneTimeMaxAge < V.activeSlaveOneTimeMinAge) {
+		V.activeSlaveOneTimeMaxAge = V.activeSlaveOneTimeMinAge;
+	}
+	if (V.activeSlaveOneTimeMaxAge >= 30 && V.arcologies[0].FSMaturityPreferentialist !== "unset" && V.ageAdjustOverride !== 1) {
+		V.activeSlaveOneTimeMaxAge += 10;
+	}
+	slave.actualAge = jsRandom(V.activeSlaveOneTimeMinAge, V.activeSlaveOneTimeMaxAge);
+	const secondAgeRoll = jsRandom(V.activeSlaveOneTimeMinAge, V.activeSlaveOneTimeMaxAge);
+	if (V.arcologies[0].FSYouthPreferentialist !== "unset" && V.arcologies[0].FSYouthPreferentialist >= jsRandom(1, 100)) {
+		slave.actualAge = Math.min(slave.actualAge, secondAgeRoll);
+	} else if (V.arcologies[0].FSMaturityPreferentialist !== "unset" && V.arcologies[0].FSMaturityPreferentialist >= jsRandom(1, 100)) {
+		slave.actualAge = Math.max(slave.actualAge, secondAgeRoll);
+	}
+	if (slave.actualAge >= V.retirementAge) {
+		slave.actualAge = (V.retirementAge - 2);
+	}
+	V.activeSlaveOneTimeMinAge = 0;
+	V.activeSlaveOneTimeMaxAge = 999;
+	V.one_time_age_overrides_pedo_mode = 0;
+	V.ageAdjustOverride = 0;
+	slave.visualAge = slave.actualAge;
+	slave.physicalAge = slave.actualAge;
+	slave.ovaryAge = slave.actualAge;
+	slave.age = slave.actualAge; /*compatibility*/
+	slave.pubertyAgeXX = V.fertilityAge;
+	slave.pubertyAgeXY = V.potencyAge;
+};
+
+window.nationalityToName = function nationalityToName(slave) {
+	const V = State.variables;
+
+	slave.birthName =
+		jsEither(setup.namePoolSelector[slave.nationality + "." + slave.race] ||
+			setup.namePoolSelector[slave.nationality] ||
+			setup.whiteAmericanSlaveNames);
+	slave.birthSurname =
+		jsEither(setup.surnamePoolSelector[slave.nationality + "." + slave.race] ||
+			setup.surnamePoolSelector[slave.nationality] ||
+			setup.whiteAmericanSlaveSurnames);
+	slave.slaveName = slave.birthName;
+	slave.slaveSurname = slave.birthSurname;
+	if (V.useFSNames === 1) {
+		if (V.arcologies[0].FSChattelReligionist > 20) {
+			slave.slaveName = jsEither(setup.chattelReligionistSlaveNames), slave.slaveSurname = 0;
+		} else if (V.arcologies[0].FSRomanRevivalist > 20) {
+			slave.slaveName = jsEither(setup.romanSlaveNames), slave.slaveSurname = jsEither(setup.romanSlaveSurnames);
+		} else if (V.arcologies[0].FSAztecRevivalist > 20) {
+			slave.slaveName = jsEither(setup.aztecSlaveNames), slave.slaveSurname = 0;
+		} else if (V.arcologies[0].FSEgyptianRevivalist > 20) {
+			slave.slaveName = jsEither(setup.ancientEgyptianSlaveNames), slave.slaveSurname = 0;
+		} else if (V.arcologies[0].FSEdoRevivalist > 20) {
+			slave.slaveName = jsEither(setup.edoSlaveNames), slave.slaveSurname = jsEither(setup.edoSlaveSurnames);
+		} else if (V.arcologies[0].FSDegradationist !== "unset") {
+			DegradingName(slave);
+		}
+	}
+};
+
+window.nationalityToAccent = function nationalityToAccent(slave) {
+	const V = State.variables;
+	const naturalAccent = jsEither([0, 1, 1, 2, 2, 2, 3, 3, 3, 3]);
+
+	switch (slave.nationality) {
+		case "Afghan":
+			slave.accent = (V.language === "Pashto") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Albanian":
+			slave.accent = naturalAccent;
+			break;
+		case "Algerian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "American":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Spanish" && slave.race === "latina") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Chinese" && slave.race === "asian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Arabic" && slave.race === "middle eastern") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Andorran":
+			slave.accent = (V.language === "Catalan") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Angolan":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Antiguan":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Argentinian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Armenian":
+			if (V.language === "Russian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Aruban":
+			if (V.language === "Dutch") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Portuguese") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Australian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Austrian":
+			if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Serbian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Slovene") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Turkish" && slave.race === "middle eastern") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Azerbaijani":
+			slave.accent = naturalAccent;
+			break;
+		case "Bahamian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Bahraini":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Bangladeshi":
+			if (V.language === "Bengali") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Hindi") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Barbadian":
+			slave.accent = naturalAccent;
+			break;
+		case "Belarusian":
+			slave.accent = naturalAccent;
+			break;
+		case "Belgian":
+			if (V.language === "Dutch") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Belizean":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Beninese":
+			slave.accent = (V.language === "French") ? 1 : naturalAccent;
+			break;
+		case "Bermudian":
+			slave.accent = (V.language === "English") ? 1 : naturalAccent;
+			break;
+		case "Bhutanese":
+			slave.accent = (V.language === "Dzongkha") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Bissau-Guinean":
+			slave.accent = (V.language === "Portuguese") ? 1 : naturalAccent;
+			break;
+		case "Bolivian":
+			slave.accent = (V.language === "Spanish") ? 1 : naturalAccent;
+			break;
+		case "Bosnian":
+			slave.accent = naturalAccent;
+			break;
+		case "Brazilian":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "British":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Bruneian":
+			if (V.language === "Malay") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Bulgarian":
+			slave.accent = naturalAccent;
+			break;
+		case "Burkinabé":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Burmese":
+			slave.accent = naturalAccent;
+			break;
+		case "Burundian":
+			slave.accent = (V.language === "Kirundi") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Cambodian":
+			if (V.language === "Khmer") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Cham") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Cameroonian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Canadian":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Cape Verdean":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Catalan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Central African":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Chadian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Chilean":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Chinese":
+			if (V.language === "Tibetan") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Korean") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Kazakh") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Colombian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Comorian":
+			if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Congolese":
+			if (V.language === "Lingala") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Kikongo") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "a Cook Islander":
+			if (V.language === "Cook Islands Māori") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Costa Rican":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Croatian":
+			slave.accent = naturalAccent;
+			break;
+		case "Cuban":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Cypriot":
+			if (V.language === "Greek") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Turkish") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Czech":
+			slave.accent = naturalAccent;
+			break;
+		case "Danish":
+			slave.accent = naturalAccent;
+			break;
+		case "Djiboutian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Dominican":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Dominiquais":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Dutch":
+			slave.accent = naturalAccent;
+			break;
+		case "East Timorese":
+			if (V.language === "Tetum") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Portuguese") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Malay") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Ecuadorian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Egyptian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Emirati":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Equatoguinean":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Eritrean":
+			if (V.language === "Tigrinya") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Estonian":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Ethiopian":
+			if (V.language === "Amharic") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Tigrinya") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Fijian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Filipina":
+			if (V.language === "Filipino") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Tagalog") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Spanish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Finnish":
+			slave.accent = (V.language === "Swedish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "French":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Spanish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Arabic" && slave.race === "middle eastern") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Catalan") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "French Guianan":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "French Polynesian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Gabonese":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Gambian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Georgian":
+			slave.accent = (V.language === "Abkhaz") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "German":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Turkish" && slave.race === "middle eastern") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Ghanan":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Hausa") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Greek":
+			slave.accent = naturalAccent;
+			break;
+		case "Greenlandic":
+			slave.accent = (V.language === "Danish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Grenadian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Guamanian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Guatemalan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Guinean":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Guyanese":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Haitian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Honduran":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Hungarian":
+			slave.accent = naturalAccent;
+			break;
+		case "I-Kiribati":
+			if (V.language === "Gilbertese") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Icelandic":
+			if (V.language === "Danish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Indian":
+			if (V.language === "Hindi") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Indonesian":
+			slave.accent = (V.language === "Malay") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Iranian":
+			if (V.language === "Persian") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Iraqi":
+			if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Kurdish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Irish":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Israeli":
+			if (V.language === "Hebrew") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Italian":
+			slave.accent = naturalAccent;
+			break;
+		case "Ivorian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Jamaican":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Japanese":
+			slave.accent = naturalAccent;
+			break;
+		case "Jordanian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Kazakh":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Kenyan":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Kittitian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Korean":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Kosovan":
+			if (V.language === "Albanian") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Serbian") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Kurdish":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Kuwaiti":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Kyrgyz":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Laotian":
+			if (V.language === "Lao") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Khmu") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Latvian":
+			slave.accent = naturalAccent;
+			break;
+		case "Lebanese":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Liberian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Libyan":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "a Liechtensteiner":
+			slave.accent = (V.language === "German") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Lithuanian":
+			slave.accent = naturalAccent;
+			break;
+		case "Luxembourgian":
+			if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Macedonian":
+			slave.accent = naturalAccent;
+			break;
+		case "Malagasy":
+			slave.accent = naturalAccent;
+			break;
+		case "Malawian":
+			slave.accent = naturalAccent;
+			break;
+		case "Malaysian":
+			slave.accent = (V.language === "Malay") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Maldivian":
+			slave.accent = naturalAccent;
+			break;
+		case "Malian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Maltese":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Italian") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Marshallese":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Mauritanian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Mauritian":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Mexican":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Micronesian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Moldovan":
+			slave.accent = naturalAccent;
+			break;
+		case "Monégasque":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Mongolian":
+			slave.accent = naturalAccent;
+			break;
+		case "Montenegrin":
+			slave.accent = naturalAccent;
+			break;
+		case "Moroccan":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Mosotho":
+			slave.accent = naturalAccent;
+			break;
+		case "Motswana":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Mozambican":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Namibian":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Afrikaans") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Nauruan":
+			slave.accent = naturalAccent;
+			break;
+		case "Nepalese":
+			slave.accent = naturalAccent;
+			break;
+		case "New Caledonian":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "a New Zealander":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Ni-Vanuatu":
+			if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Nicaraguan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Nigerian":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Hausa") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Nigerien":
+			if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Hausa") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Arabic") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Niuean":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Norwegian":
+			slave.accent = naturalAccent;
+			break;
+		case "Omani":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Pakistani":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Palauan":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Sonsorolese") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Tobian") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Japanese") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Palestinian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Panamanian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Papua New Guinean":
+			slave.accent = naturalAccent;
+			break;
+		case "Paraguayan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Peruvian":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Polish":
+			slave.accent = naturalAccent;
+			break;
+		case "Portuguese":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Puerto Rican":
+			if (V.language === "Spanish") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Qatari":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Romanian":
+			slave.accent = naturalAccent;
+			break;
+		case "Russian":
+			slave.accent = naturalAccent;
+			break;
+		case "Rwandan":
+			slave.accent = (V.language === "Kinyarwanda") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Sahrawi":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Saint Lucian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Salvadoran":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Sammarinese":
+			slave.accent = (V.language === "Italian") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Samoan":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "São Toméan":
+			slave.accent = (V.language === "Portuguese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Saudi":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Scottish":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Senegalese":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Serbian":
+			slave.accent = naturalAccent;
+			break;
+		case "Seychellois":
+			if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Sierra Leonean":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Singaporean":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Chinese") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Malay") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Tamil") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Slovak":
+			slave.accent = naturalAccent;
+			break;
+		case "Slovene":
+			slave.accent = naturalAccent;
+			break;
+		case "a Solomon Islander":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Somali":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "South African":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Afrikaans") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "South Sudanese":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Spanish":
+			slave.accent = (V.language === "Catalan") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Sri Lankan":
+			if (V.language === "Sinhalese") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Tamil") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Sudanese":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Surinamese":
+			slave.accent = (V.language === "Dutch") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Swazi":
+			slave.accent = naturalAccent;
+			break;
+		case "Swedish":
+			if (V.language === "English") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Finnish") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Norwegian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Swiss":
+			if (V.language === "German") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Italian") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Syrian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Taiwanese":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Tajik":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Tanzanian":
+			slave.accent = (V.language === "Swahili") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Thai":
+			if (V.language === "Chinese") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Malay") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else if (V.language === "Khmer") {
+				slave.accent = jsEither([0, 1, 2, 2, 2, 3, 3]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Tibetan":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Togolese":
+			slave.accent = (V.language === "French") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Tongan":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Trinidadian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Tunisian":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Turkish":
+			slave.accent = naturalAccent;
+			break;
+		case "Turkmen":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Tuvaluan":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Ugandan":
+			slave.accent = (V.language === "Swahili") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Ukrainian":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Uruguayan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Uzbek":
+			slave.accent = (V.language === "Russian") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Vatican":
+			slave.accent = (V.language === "Italian") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Venezuelan":
+			slave.accent = (V.language === "Spanish") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Vietnamese":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 1, 2, 2, 2, 3, 3]) : naturalAccent;
+			break;
+		case "Vincentian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Yemeni":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Zairian":
+			if (V.language === "Lingala") {
+				slave.accent = jsEither([0, 0, 0, 1]);
+			} else if (V.language === "Kikongo") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "Swahili") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else if (V.language === "French") {
+				slave.accent = jsEither([0, 1, 1, 1, 2]);
+			} else {
+				slave.accent = naturalAccent;
+			}
+			break;
+		case "Zambian":
+			slave.accent = (V.language === "English") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Zimbabwean":
+			slave.accent = (V.language === "English" && slave.race === "white") ? jsEither([0, 1, 1, 1, 2]) : naturalAccent;
+			break;
+		case "Ancient Chinese Revivalist":
+			slave.accent = (V.language === "Chinese") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Ancient Egyptian Revivalist":
+			slave.accent = (V.language === "Ancient Egyptian") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Arabian Revivalist":
+			slave.accent = (V.language === "Arabic") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Aztec Revivalist":
+			slave.accent = (V.language === "Nahuatl") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Edo Revivalist":
+			slave.accent = (V.language === "Japanese") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		case "Roman Revivalist":
+			slave.accent = (V.language === "Latin") ? jsEither([0, 0, 0, 1]) : naturalAccent;
+			break;
+		default:
+			slave.accent = naturalAccent;
+			break;
+	}
+
+	if (slave.nationality === V.language) {
+		slave.accent = jsEither([0, 0, 0, 1]);
+	}
+};
diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw
index 9682abffdf1..e1dc5e3bf15 100644
--- a/src/npc/acquisition.tw
+++ b/src/npc/acquisition.tw
@@ -427,7 +427,7 @@ The previous owner seems to have left in something of a hurry.
 	<<case "AztecRevivalist">>
 		<<set $fixedRace = "latina">><<include "Generate New Slave">>
 		<<set $activeSlave.nationality = "Mexican">>
-		<<NationalityToName $activeSlave>>
+		<<run nationalityToName($activeSlave)>>
 		<<set $activeSlave.accent = 0>>
 		<<set $activeSlave.devotion = 75, $activeSlave.trust = 75, $activeSlave.health = random(-20,20)>>
 		<<set $activeSlave.muscles = random(50,75)>>
@@ -451,7 +451,7 @@ The previous owner seems to have left in something of a hurry.
 	<<case "EdoRevivalist">>
 		<<set $fixedRace = "asian">><<include "Generate New Slave">>
 		<<set $activeSlave.nationality = "Japanese">>
-		<<NationalityToName $activeSlave>>
+		<<run nationalityToName($activeSlave)>>
 		<<set $activeSlave.accent = 0>>
 		<<set $activeSlave.devotion = random(25,45), $activeSlave.trust = random(25,45), $activeSlave.health = random(25,45)>>
 		<<set $activeSlave.face = random(15,100)>>
@@ -472,8 +472,8 @@ The previous owner seems to have left in something of a hurry.
 		<<set $one_time_age_overrides_pedo_mode = 1>>
 		<<set $fixedRace = "asian">><<include "Generate New Slave">>
 		<<set $activeSlave.nationality = "Chinese">>
-		<<NationalityToName $activeSlave>>
-		<<NationalityToAccent $activeSlave>>
+		<<run nationalityToName($activeSlave)>>
+		<<run nationalityToAccent($activeSlave)>>
 		<<set $activeSlave.devotion = random(55,65), $activeSlave.trust = random(25,45), $activeSlave.health = random(25,45)>>
 		<<set $activeSlave.face = random(0,55)>>
 		<<set $activeSlave.accent = 0>>
@@ -560,7 +560,7 @@ The previous owner seems to have left in something of a hurry.
 	<<set $dump = $heroSlaves.pluck($j,$j)>>
 	<<slaveCost $activeSlave>>
 	<<if _valueGiven + $slaveCost < _valueOwed*2>>
-		<<NationalityToAccent $activeSlave>>
+		<<run nationalityToAccent($activeSlave)>>
 		<<set $activeSlave.oldDevotion = $activeSlave.devotion>>
 		<<set $activeSlave.oldTrust = $activeSlave.trust>>
 		<<set _valueGiven += $slaveCost>>
diff --git a/src/npc/startingGirls/startingGirls.tw b/src/npc/startingGirls/startingGirls.tw
index e8252453de5..3c2359eb6be 100644
--- a/src/npc/startingGirls/startingGirls.tw
+++ b/src/npc/startingGirls/startingGirls.tw
@@ -116,7 +116,7 @@
 	<<set $activeSlave.visualAge = $activeSlave.actualAge>>
 	<<set $activeSlave.physicalAge = $activeSlave.actualAge>>
 	<<set $activeSlave.ovaryAge = $activeSlave.actualAge>>
-	<<NationalityToName $activeSlave>>
+	<<run nationalityToName($activeSlave)>>
 	<<if _familyName>><<set $activeSlave.slaveSurname = _familyName>><</if>>
 	<<if _familyBirthSurname>><<set $activeSlave.birthSurname = _familyBirthSurname>><</if>>
 	<<set $activeSlave.slaveName = $activeSlave.birthName>>
@@ -131,7 +131,7 @@
 	<</if>>
 	<<set $startingGirlCopied = 0, $startingGirlRelation = 0>>
 <<elseif $archetyped == 1>>
-	<<NationalityToName $activeSlave>>
+	<<run nationalityToName($activeSlave)>>
 	<<set $activeSlave.slaveName = $activeSlave.birthName, $archetyped = 0>>
 <</if>>
 
@@ -392,7 +392,7 @@ __You are customizing this slave:__
 <</link>>
 
 | <<link "Randomize name">>
-<<NationalityToName $activeSlave>>
+<<run nationalityToName($activeSlave)>>
 <<set $activeSlave.slaveName = $activeSlave.birthName>>
 <<SaleDescription>>
 <<StartingGirlsCost>>
diff --git a/src/uncategorized/REroyalblood.tw b/src/uncategorized/REroyalblood.tw
index aa8a46e18b2..894234d263a 100644
--- a/src/uncategorized/REroyalblood.tw
+++ b/src/uncategorized/REroyalblood.tw
@@ -47,7 +47,7 @@
 <<set $activeSlave.physicalAge = $activeSlave.actualAge>>
 <<set $activeSlave.ovaryAge = $activeSlave.actualAge>>
 <<set $activeSlave.genes = "XY">>
-<<NationalityToName $activeSlave>>
+<<run nationalityToName($activeSlave)>>
 <<set $activeSlave.birthSurname = _princess.birthSurname, $activeSlave.slaveSurname = _princess.birthSurname>>
 <<set $activeSlave.career = "a prince">>
 <<set $activeSlave.prestige = 2>>
@@ -99,7 +99,7 @@
 <<set $activeSlave.physicalAge = $activeSlave.actualAge>>
 <<set $activeSlave.ovaryAge = $activeSlave.actualAge>>
 <<set $activeSlave.genes = "XX">>
-<<NationalityToName $activeSlave>>
+<<run nationalityToName($activeSlave)>>
 <<set $activeSlave.birthSurname = _princess.birthSurname, $activeSlave.slaveSurname = _princess.birthSurname>>
 <<set $activeSlave.career = "a Queen">>
 <<set $activeSlave.prestige = 2>>
diff --git a/src/uncategorized/changeLanguage.tw b/src/uncategorized/changeLanguage.tw
index fb6f040dd9a..7b6dd3fd1b4 100644
--- a/src/uncategorized/changeLanguage.tw
+++ b/src/uncategorized/changeLanguage.tw
@@ -49,7 +49,7 @@ Select a custom language to be applied: <<textbox "$seed" $seed "Change Language
 	<<set $arcologies[0].prosperity = Math.trunc(0.9*$arcologies[0].prosperity)>>
 	<<for $i = 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].fetish != "mindbroken">>
-			<<NationalityToAccent $slaves[$i]>>
+			<<run nationalityToAccent($slaves[$i])>>
 			<<if ($slaves[$i].intelligenceImplant == 1)>>
 			<<if ($slaves[$i].accent >= 3)>>
 			<<if (3+$slaves[$i].intelligence) > random(0,6)>>
@@ -71,7 +71,7 @@ Select a custom language to be applied: <<textbox "$seed" $seed "Change Language
 	<<set $arcologies[0].prosperity = Math.trunc(0.9*$arcologies[0].prosperity)>>
 	<<for $i = 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].fetish != "mindbroken">>
-			<<NationalityToAccent $slaves[$i]>>
+			<<run nationalityToAccent($slaves[$i])>>
 			<<if ($slaves[$i].intelligenceImplant == 1)>>
 			<<if ($slaves[$i].accent >= 3)>>
 			<<if (3+$slaves[$i].intelligence) > random(0,6)>>
@@ -93,7 +93,7 @@ Select a custom language to be applied: <<textbox "$seed" $seed "Change Language
 	<<set $arcologies[0].prosperity = Math.trunc(0.9*$arcologies[0].prosperity)>>
 	<<for $i = 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].fetish != "mindbroken">>
-			<<NationalityToAccent $slaves[$i]>>
+			<<run nationalityToAccent($slaves[$i])>>
 			<<if ($slaves[$i].intelligenceImplant == 1)>>
 			<<if ($slaves[$i].accent >= 3)>>
 			<<if (3+$slaves[$i].intelligence) > random(0,6)>>
@@ -115,7 +115,7 @@ Select a custom language to be applied: <<textbox "$seed" $seed "Change Language
 	<<set $arcologies[0].prosperity = Math.trunc(0.9*$arcologies[0].prosperity)>>
 	<<for $i = 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].fetish != "mindbroken">>
-			<<NationalityToAccent $slaves[$i]>>
+			<<run nationalityToAccent($slaves[$i])>>
 			<<if ($slaves[$i].intelligenceImplant == 1)>>
 			<<if ($slaves[$i].accent >= 3)>>
 			<<if (3+$slaves[$i].intelligence) > random(0,6)>>
@@ -137,7 +137,7 @@ Select a custom language to be applied: <<textbox "$seed" $seed "Change Language
 	<<set $arcologies[0].prosperity = Math.trunc(0.9*$arcologies[0].prosperity)>>
 	<<for $i = 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].fetish != "mindbroken">>
-			<<NationalityToAccent $slaves[$i]>>
+			<<run nationalityToAccent($slaves[$i])>>
 			<<if ($slaves[$i].intelligenceImplant == 1)>>
 			<<if ($slaves[$i].accent >= 3)>>
 			<<if (3+$slaves[$i].intelligence) > random(0,6)>>
@@ -159,7 +159,7 @@ Select a custom language to be applied: <<textbox "$seed" $seed "Change Language
 	<<set $arcologies[0].prosperity = Math.trunc(0.9*$arcologies[0].prosperity)>>
 	<<for $i = 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].fetish != "mindbroken">>
-			<<NationalityToAccent $slaves[$i]>>
+			<<run nationalityToAccent($slaves[$i])>>
 			<<if ($slaves[$i].intelligenceImplant == 1)>>
 			<<if ($slaves[$i].accent >= 3)>>
 			<<if (3+$slaves[$i].intelligence) > random(0,6)>>
@@ -181,7 +181,7 @@ Select a custom language to be applied: <<textbox "$seed" $seed "Change Language
 	<<set $arcologies[0].prosperity = Math.trunc(0.9*$arcologies[0].prosperity)>>
 	<<for $i = 0; $i < $slaves.length; $i++>>
 		<<if $slaves[$i].fetish != "mindbroken">>
-			<<NationalityToAccent $slaves[$i]>>
+			<<run nationalityToAccent($slaves[$i])>>
 			<<if ($slaves[$i].intelligenceImplant == 1)>>
 			<<if ($slaves[$i].accent >= 3)>>
 			<<if (3+$slaves[$i].intelligence) > random(0,6)>>
diff --git a/src/uncategorized/completeCatalog.tw b/src/uncategorized/completeCatalog.tw
index e4c3e6123d2..c02fd0e2918 100644
--- a/src/uncategorized/completeCatalog.tw
+++ b/src/uncategorized/completeCatalog.tw
@@ -13,7 +13,7 @@
 
 <<run SetBellySize($activeSlave)>>
 <<set $specialSlavesPriceOverride = 1>>
-<<NationalityToAccent $activeSlave>>
+<<run nationalityToAccent($activeSlave)>>
 <<if $familyTesting == 1>>
 	/* special slaves exceptions to keep siblings sensible */
 	<<if $activeSlave.mother == -9999 && $activeSlave.father == -9998>> /* The twins - Camille & Kennerly */
diff --git a/src/uncategorized/generateXXSlave.tw b/src/uncategorized/generateXXSlave.tw
index bd74499927e..0cebdfeca14 100644
--- a/src/uncategorized/generateXXSlave.tw
+++ b/src/uncategorized/generateXXSlave.tw
@@ -5,7 +5,7 @@
 <<set WombInit($activeSlave)>>
 <<set $activeSlave.vaginaLube = 1, $activeSlave.ovaries = 1, $activeSlave.canRecruit = 1>>
 
-<<GenerateAge $activeSlave>>
+<<run generateAge($activeSlave)>>
 
 <<if $activeSlave.ovaries == 1>>
 	<<if $activeSlave.physicalAge >= $activeSlave.pubertyAgeXX>>
@@ -156,8 +156,8 @@
 	<<set $activeSlave.race = $fixedRace>>
 	<<set $fixedRace = 0>>
 <</if>>
-<<NationalityToName $activeSlave>>
-<<NationalityToAccent $activeSlave>>
+<<run nationalityToName($activeSlave)>>
+<<run nationalityToAccent($activeSlave)>>
 
 <<set $activeSlave.height = Math.round(Height.random($activeSlave))>>
 
diff --git a/src/uncategorized/generateXYSlave.tw b/src/uncategorized/generateXYSlave.tw
index 15665189893..95c8903516a 100644
--- a/src/uncategorized/generateXYSlave.tw
+++ b/src/uncategorized/generateXYSlave.tw
@@ -5,7 +5,7 @@
 <<set WombInit($activeSlave)>>
 <<set $activeSlave.genes = "XY", $activeSlave.hLength = 10, $activeSlave.prostate = 1, $activeSlave.canRecruit = 1>>
 
-<<GenerateAge $activeSlave>>
+<<run generateAge($activeSlave)>>
 
 <<if $activeSlave.ovaries == 1>>
 	<<if $activeSlave.physicalAge >= $activeSlave.pubertyAgeXX>>
@@ -162,8 +162,8 @@
 	<<set $activeSlave.race = $fixedRace>>
 	<<set $fixedRace = 0>>
 <</if>>
-<<NationalityToName $activeSlave>>
-<<NationalityToAccent $activeSlave>>
+<<run nationalityToName($activeSlave)>>
+<<run nationalityToAccent($activeSlave)>>
 
 <<set $activeSlave.height = Math.round(Height.random($activeSlave))>>
 <<if $activeSlave.physicalAge <= 13>>
diff --git a/src/uncategorized/motherDaughterWorkaround.tw b/src/uncategorized/motherDaughterWorkaround.tw
index 61ad947e89d..fea2093b80a 100644
--- a/src/uncategorized/motherDaughterWorkaround.tw
+++ b/src/uncategorized/motherDaughterWorkaround.tw
@@ -8,10 +8,10 @@ Your new pair of slaves look frightened and uncertain, but seem encouraged by ea
 <<unset $activeSlave>>
 <<if _secondSlave.slaveSurname>><<set _familyName = _secondSlave.slaveSurname>><</if>>
 <<set _familyBirthSurname = _secondSlave.birthSurname>>
-<<NationalityToName _secondSlave>>
+<<run nationalityToName(_secondSlave)>>
 <<if _familyName>><<set _secondSlave.slaveSurname = _familyName>><</if>>
 <<set _secondSlave.birthSurname = _familyBirthSurname>>
-<<NationalityToAccent _secondSlave>>
+<<run nationalityToAccent(_secondSlave)>>
 
 <<set _secondSlave.ID = _secondSlave.ID + 1000>>
 <<set _secondSlave.devotion -= random(5,15)>>
diff --git a/src/uncategorized/pRivalryHostage.tw b/src/uncategorized/pRivalryHostage.tw
index cff5a9bba7b..78f65d9b1fb 100644
--- a/src/uncategorized/pRivalryHostage.tw
+++ b/src/uncategorized/pRivalryHostage.tw
@@ -39,7 +39,7 @@
 <<if $activeSlave.voice < 2>><<set $activeSlave.voice = 2>><</if>>
 <<if $activeSlave.faceShape == "masculine">><<set $activeSlave.faceShape = "cute">><</if>>
 <<if $arcologies[0].FSSupremacistRace != 0>><<set $activeSlave.race = $arcologies[0].FSSupremacistRace>><</if>>
-<<NationalityToName $activeSlave>>
+<<run nationalityToName($activeSlave)>>
 <<set $activeSlave.inducedNCS = 0, $activeSlave.NCSyouthening = 0>>
 <<set $activeSlave.slaveName = $activeSlave.birthName>>
 <<set $activeSlave.slaveSurname = $activeSlave.birthSurname>>
diff --git a/src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw b/src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw
index 00954dd45f3..9d8d043b3ba 100644
--- a/src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw
+++ b/src/uncategorized/reFSEgyptianRevivalistAcquisitionWorkaround.tw
@@ -7,7 +7,7 @@ They arrive hand-in-hand and don't let go of each other until the end of the ens
 
 <<set _secondSlave = clone($activeSlave)>>
 
-<<NationalityToName _secondSlave>>
+<<run nationalityToName(_secondSlave)>>
 <<if $activeSlave.slaveSurname>><<set _secondSlave.slaveSurname = $activeSlave.slaveSurname>><</if>>
 <<set _secondSlave.birthSurname = $activeSlave.birthSurname>>
 
diff --git a/src/uncategorized/reRecruit.tw b/src/uncategorized/reRecruit.tw
index c578823ed84..7835c8e8df5 100644
--- a/src/uncategorized/reRecruit.tw
+++ b/src/uncategorized/reRecruit.tw
@@ -1530,8 +1530,8 @@ Knowing what's coming, the teachers in the facility do train their pupils accord
 <<set $activeSlave.behavioralFlaw = "arrogant">>
 <<set $activeSlave.nationality = "American">>
 <<set $activeSlave.race = "white">>
-<<NationalityToName $activeSlave>>
-<<NationalityToAccent $activeSlave>>
+<<run nationalityToName($activeSlave)>>
+<<run nationalityToAccent($activeSlave)>>
 <<set $activeSlave.skin = "light">>
 <<set $activeSlave.voice = 3>>
 <<set $activeSlave.boobShape = "perky">>
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index 8ee02891269..538fdd00fea 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -565,7 +565,7 @@ She waits anxiously for your decision.
 
 <<if $activeSlave.slaveSurname>><<set _familyName = $activeSlave.slaveSurname>><</if>>
 <<set _familyBirthSurname = $activeSlave.birthSurname>>
-<<NationalityToName $activeSlave>>
+<<run nationalityToName($activeSlave)>>
 <<if _familyName>><<set $activeSlave.slaveSurname = _familyName>><</if>>
 <<set $activeSlave.birthSurname = _familyBirthSurname>>
 <<set $activeSlave.inducedNCS = 0, $activeSlave.NCSyouthening = 0>> 
@@ -1039,7 +1039,7 @@ She waits anxiously for your decision.
 
 <<if $activeSlave.slaveSurname>><<set _familyName = $activeSlave.slaveSurname>><</if>>
 <<set _familyBirthSurname = $activeSlave.birthSurname>>
-<<NationalityToName $activeSlave>>
+<<run nationalityToName($activeSlave)>>
 <<if _familyName>><<set $activeSlave.slaveSurname = _familyName>><</if>>
 <<set $activeSlave.birthSurname = _familyBirthSurname>>
 
diff --git a/src/uncategorized/recETSWorkaround.tw b/src/uncategorized/recETSWorkaround.tw
index 330466345b9..e63f66c306f 100644
--- a/src/uncategorized/recETSWorkaround.tw
+++ b/src/uncategorized/recETSWorkaround.tw
@@ -643,7 +643,7 @@ You turn to the child clutching her mother's grotesque belly.
 
 <<if $activeSlave.slaveSurname>><<set _familyName = $activeSlave.slaveSurname>><</if>>
 <<set _familyBirthSurname = $activeSlave.birthSurname>>
-<<NationalityToName $activeSlave>>
+<<run nationalityToName($activeSlave)>>
 <<if _familyName>><<set $activeSlave.slaveSurname = _familyName>><</if>>
 <<set $activeSlave.birthSurname = _familyBirthSurname>>
 
diff --git a/src/uncategorized/siblingsWorkaround.tw b/src/uncategorized/siblingsWorkaround.tw
index aa269913d0c..56ccd02d852 100644
--- a/src/uncategorized/siblingsWorkaround.tw
+++ b/src/uncategorized/siblingsWorkaround.tw
@@ -8,10 +8,10 @@ Your new pair of slaves look frightened and uncertain, but seem encouraged by ea
 <<unset $activeSlave>>
 <<if _secondSlave.slaveSurname>><<set _familyName = _secondSlave.slaveSurname>><</if>>
 <<set _familyBirthSurname = _secondSlave.birthSurname>>
-<<NationalityToName _secondSlave>>
+<<run nationalityToName(_secondSlave)>>
 <<if _familyName>><<set _secondSlave.slaveSurname = _familyName>><</if>>
 <<set _secondSlave.birthSurname = _familyBirthSurname>>
-<<NationalityToAccent _secondSlave>>
+<<run nationalityToAccent(_secondSlave)>>
 
 <<set _secondSlave.ID = _secondSlave.ID + 1000>>
 <<set _secondSlave.devotion -= random(5,-5)>>
diff --git a/src/uncategorized/specialSlave.tw b/src/uncategorized/specialSlave.tw
index 998098059da..444b0d6649c 100644
--- a/src/uncategorized/specialSlave.tw
+++ b/src/uncategorized/specialSlave.tw
@@ -47,7 +47,7 @@
 			<</for>>
 		<</if>>
 	<</if>>
-	<<NationalityToAccent $activeSlave>>
+	<<run nationalityToAccent($activeSlave)>>
 	<<slaveCost $activeSlave>>
 
 	The offered price is <<print cashFormat($slaveCost)>>.
diff --git a/src/uncategorized/twinsWorkaround.tw b/src/uncategorized/twinsWorkaround.tw
index 6c4a433b180..10c27869511 100644
--- a/src/uncategorized/twinsWorkaround.tw
+++ b/src/uncategorized/twinsWorkaround.tw
@@ -8,10 +8,10 @@ Your new pair of slaves look frightened and uncertain, but seem encouraged by ea
 <<unset $activeSlave>>
 <<if _secondSlave.slaveSurname>><<set _familyName = _secondSlave.slaveSurname>><</if>>
 <<set _familyBirthSurname = _secondSlave.birthSurname>>
-<<NationalityToName _secondSlave>>
+<<run nationalityToName(_secondSlave)>>
 <<if _familyName>><<set _secondSlave.slaveSurname = _familyName>><</if>>
 <<set _secondSlave.birthSurname = _familyBirthSurname>>
-<<NationalityToAccent _secondSlave>>
+<<run nationalityToAccent(_secondSlave)>>
 
 <<set _secondSlave.ID = _secondSlave.ID + 1000>>
 <<if $familyTesting == 0>>
diff --git a/src/utility/slaveGenerationWidgets.tw b/src/utility/slaveGenerationWidgets.tw
index 88cfab72271..fc13ba90c21 100644
--- a/src/utility/slaveGenerationWidgets.tw
+++ b/src/utility/slaveGenerationWidgets.tw
@@ -4,1413 +4,3 @@
 <<set $args[0].race
 	= hashChoice(setup.raceSelector[$args[0].nationality] || setup.raceSelector[""])>>
 <</widget>>
-
-<<widget "NationalityToName">>
-<<set $args[0].birthName =
-	(setup.namePoolSelector[$args[0].nationality + "." + $args[0].race]
-		|| setup.namePoolSelector[$args[0].nationality]
-		|| setup.whiteAmericanSlaveNames).random()>>
-<<set $args[0].birthSurname =
-	(setup.surnamePoolSelector[$args[0].nationality + "." + $args[0].race]
-		|| setup.surnamePoolSelector[$args[0].nationality]
-		|| setup.whiteAmericanSlaveSurnames).random()>>
-<<set $args[0].slaveName = $args[0].birthName>>
-<<set $args[0].slaveName = $args[0].birthName, $args[0].slaveSurname = $args[0].birthSurname>>
-<<if $useFSNames == 1>>
-<<if $arcologies[0].FSChattelReligionist > 20>>
-	<<set $args[0].slaveName = setup.chattelReligionistSlaveNames.random(), $args[0].slaveSurname = 0>>
-<<elseif $arcologies[0].FSRomanRevivalist > 20>>
-	<<set $args[0].slaveName = setup.romanSlaveNames.random(), $args[0].slaveSurname = setup.romanSlaveSurnames.random()>>
-<<elseif $arcologies[0].FSAztecRevivalist > 20>>
-	<<set $args[0].slaveName = setup.aztecSlaveNames.random(), $args[0].slaveSurname = 0>>
-<<elseif $arcologies[0].FSEgyptianRevivalist > 20>>
-	<<set $args[0].slaveName = setup.ancientEgyptianSlaveNames.random(), $args[0].slaveSurname = 0>>
-<<elseif $arcologies[0].FSEdoRevivalist > 20>>
-	<<set $args[0].slaveName = setup.edoSlaveNames.random(), $args[0].slaveSurname = setup.edoSlaveSurnames.random()>>
-<<elseif $arcologies[0].FSDegradationist != "unset">>
-	<<run DegradingName($args[0])>>
-<</if>>
-<</if>>
-
-<</widget>>
-
-<<widget "NationalityToAccent">>
-
-<<set _naturalAccent = either(0,1,1,2,2,2,3,3,3,3)>>
-
-<<switch $args[0].nationality>>
-<<case "Afghan">>
-	<<if $language == "Pashto">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Albanian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Algerian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "American">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Spanish" && $args[0].race == "latina">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Chinese" && $args[0].race == "asian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Arabic" && $args[0].race == "middle eastern">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Andorran">>
-	<<if $language == "Catalan">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Angolan">>
-	<<if $language == "Portuguese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Antiguan">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Argentinian">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Armenian">>
-	<<if $language == "Russian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Aruban">>
-	<<if $language == "Dutch">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Portuguese">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Australian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Austrian">>
-	<<if $language == "German">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Serbian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Slovene">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Turkish" && $args[0].race == "middle eastern">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Azerbaijani">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Bahamian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bahraini">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bangladeshi">>
-	<<if $language == "Bengali">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Hindi">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Barbadian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Belarusian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Belgian">>
-	<<if $language == "Dutch">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "German">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Belizean">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Beninese">>
-	<<if $language == "French">>
-		<<set $args[0].accent = 1>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bermudian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = 1>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bhutanese">>
-	<<if $language == "Dzongkha">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bissau-Guinean">>
-	<<if $language == "Portuguese">>
-		<<set $args[0].accent = 1>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bolivian">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = 1>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bosnian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Brazilian">>
-	<<if $language == "Portuguese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "British">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bruneian">>
-	<<if $language == "Malay">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Bulgarian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Burkinabé">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Burmese">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Burundian">>
-	<<if $language == "Kirundi">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Cambodian">>
-	<<if $language == "Khmer">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Cham">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Cameroonian">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Canadian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Cape Verdean">>
-	<<if $language == "Portuguese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Catalan">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Central African">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Chadian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Chilean">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Chinese">>
-	<<if $language == "Tibetan">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Korean">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Kazakh">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Colombian">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Comorian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Congolese">>
-	<<if $language == "Lingala">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Kikongo">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "a Cook Islander">>
-	<<if $language == "Cook Islands Māori">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Costa Rican">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Croatian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Cuban">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Cypriot">>
-	<<if $language == "Greek">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Turkish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Czech">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Danish">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Djiboutian">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Dominican">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Dominiquais">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Dutch">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "East Timorese">>
-	<<if $language == "Tetum">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Portuguese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Malay">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Ecuadorian">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Egyptian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Emirati">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Equatoguinean">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Eritrean">>
-	<<if $language == "Tigrinya">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Estonian">>
-	<<if $language == "Russian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Ethiopian">>
-	<<if $language == "Amharic">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Tigrinya">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Fijian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Filipina">>
-	<<if $language == "Filipino">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Tagalog">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Finnish">>
-	<<if $language == "Swedish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "French">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "German">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Arabic" && $args[0].race == "middle eastern">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Catalan">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "French Guianan">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "French Polynesian">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Gabonese">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Gambian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Georgian">>
-	<<if $language == "Abkhaz">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "German">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Turkish" && $args[0].race == "middle eastern">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Ghanan">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Hausa">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Greek">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Greenlandic">>
-	<<if $language == "Danish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Grenadian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Guamanian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Guatemalan">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Guinean">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Guyanese">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Haitian">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Honduran">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Hungarian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "I-Kiribati">>
-	<<if $language == "Gilbertese">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Icelandic">>
-	<<if $language == "Danish">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Indian">>
-	<<if $language == "Hindi">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Indonesian">>
-	<<if $language == "Malay">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Iranian">>
-	<<if $language == "Persian">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Iraqi">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Kurdish">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Irish">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Israeli">>
-	<<if $language == "Hebrew">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Italian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Ivorian">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Jamaican">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>><<case "Japanese">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Jordanian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Kazakh">>
-	<<if $language == "Russian">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Kenyan">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Kittitian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Korean">>
-	<<if $language == "Chinese">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Kosovan">>
-	<<if $language == "Albanian">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Serbian">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Kurdish">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Kuwaiti">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Kyrgyz">>
-	<<if $language == "Russian">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Laotian">>
-	<<if $language == "Lao">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Khmu">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Latvian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Lebanese">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Liberian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Libyan">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "a Liechtensteiner">>
-	<<if $language == "German">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Lithuanian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Luxembourgian">>
-	<<if $language == "German">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Macedonian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Malagasy">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Malawian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Malaysian">>
-	<<if $language == "Malay">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Maldivian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Malian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Maltese">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Italian">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Marshallese">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Mauritanian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Mauritian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Mexican">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Micronesian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Moldovan">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Monégasque">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Mongolian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Montenegrin">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Moroccan">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Mosotho">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Motswana">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Mozambican">>
-	<<if $language == "Portuguese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Namibian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Afrikaans">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Nauruan">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Nepalese">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "New Caledonian">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "a New Zealander">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Ni-Vanuatu">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Nicaraguan">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Nigerian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Hausa">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Nigerien">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Hausa">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Niuean">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Norwegian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Omani">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Pakistani">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Palauan">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Sonsorolese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Tobian">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Japanese">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Palestinian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Panamanian">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Papua New Guinean">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Paraguayan">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Peruvian">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Polish">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Portuguese">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Puerto Rican">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Qatari">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Romanian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Russian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Rwandan">>
-	<<if $language == "Kinyarwanda">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Sahrawi">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Saint Lucian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Salvadoran">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Sammarinese">>
-	<<if $language == "Italian">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Samoan">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "São Toméan">>
-	<<if $language == "Portuguese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Saudi">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Scottish">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Senegalese">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Serbian">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Seychellois">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Sierra Leonean">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Singaporean">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Chinese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Malay">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Tamil">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Slovak">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Slovene">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "a Solomon Islander">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Somali">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "South African">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Afrikaans">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "South Sudanese">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Spanish">>
-	<<if $language == "Catalan">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Sri Lankan">>
-	<<if $language == "Sinhalese">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Tamil">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Sudanese">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Surinamese">>
-	<<if $language == "Dutch">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Swazi">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Swedish">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Finnish">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Norwegian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "German">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Swiss">>
-	<<if $language == "German">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Italian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Syrian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Taiwanese">>
-	<<if $language == "Chinese">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Tajik">>
-	<<if $language == "Russian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Tanzanian">>
-	<<if $language == "Swahili">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Thai">>
-	<<if $language == "Chinese">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Malay">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<elseif $language == "Khmer">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Tibetan">>
-	<<if $language == "Chinese">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Togolese">>
-	<<if $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Tongan">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Trinidadian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Tunisian">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Turkish">>
-	<<set $args[0].accent = _naturalAccent>>
-<<case "Turkmen">>
-	<<if $language == "Russian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Tuvaluan">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Ugandan">>
-	<<if $language == "Swahili">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Ukrainian">>
-	<<if $language == "Russian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Uruguayan">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Uzbek">>
-	<<if $language == "Russian">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Vatican">>
-	<<if $language == "Italian">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Venezuelan">>
-	<<if $language == "Spanish">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Vietnamese">>
-	<<if $language == "Chinese">>
-		<<set $args[0].accent = either(0,1,2,2,2,3,3)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Vincentian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Yemeni">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Zairian">>
-	<<if $language == "Lingala">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<elseif $language == "Kikongo">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "Swahili">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<elseif $language == "French">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Zambian">>
-	<<if $language == "English">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Zimbabwean">>
-	<<if $language == "English" && $args[0].race == "white">>
-		<<set $args[0].accent = either(0,1,1,1,2)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Ancient Chinese Revivalist">>
-	<<if $language == "Chinese">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Ancient Egyptian Revivalist">>
-	<<if $language == "Ancient Egyptian">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Arabian Revivalist">>
-	<<if $language == "Arabic">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Aztec Revivalist">>
-	<<if $language == "Nahuatl">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Edo Revivalist">>
-	<<if $language == "Japanese">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<case "Roman Revivalist">>
-	<<if $language == "Latin">>
-		<<set $args[0].accent = either(0,0,0,1)>>
-	<<else>>
-		<<set $args[0].accent = _naturalAccent>>
-	<</if>>
-<<default>>
-	<<set $args[0].accent = _naturalAccent>>
-<</switch>>
-
-<<if $args[0].nationality == $language>>
-	<<set $args[0].accent = either(0,0,0,1)>>
-<</if>>
-
-<</widget>>
-
-/* Call as <<GenerateAge slave>> */
-<<widget "GenerateAge">>
-
-<<if $activeSlaveOneTimeMaxAge > 998>>
-	<<if $pedo_mode == 1>>
-		<<set $activeSlaveOneTimeMaxAge = 18>>
-	<<else>>
-		<<set $activeSlaveOneTimeMaxAge = 42>>
-	<</if>>
-<<elseif $pedo_mode == 1 && $one_time_age_overrides_pedo_mode == 0 && $activeSlaveOneTimeMaxAge > 18>>
-	<<set $activeSlaveOneTimeMaxAge = 18>>
-<</if>>
-<<if $retirementAge < $activeSlaveOneTimeMaxAge>>
-	<<set $activeSlaveOneTimeMaxAge = ($retirementAge-1)>>
-<</if>>
-<<if $activeSlaveOneTimeMinAge < $minimumSlaveAge>>
-	<<set $activeSlaveOneTimeMinAge = $minimumSlaveAge>>
-<<elseif $pedo_mode == 1 && $one_time_age_overrides_pedo_mode == 0>>
-	<<set $activeSlaveOneTimeMinAge = $minimumSlaveAge>>
-<</if>>
-<<if $activeSlaveOneTimeMaxAge < $activeSlaveOneTimeMinAge>>
-	<<set $activeSlaveOneTimeMaxAge = $activeSlaveOneTimeMinAge>>
-<</if>>
-<<if ($activeSlaveOneTimeMaxAge >= 30) && ($arcologies[0].FSMaturityPreferentialist != "unset")>>
-	<<if $ageAdjustOverride != 1>>
-		<<set $activeSlaveOneTimeMaxAge = ($activeSlaveOneTimeMaxAge + 10)>>
-	<</if>>
-<</if>>
-<<set $args[0].actualAge = random($activeSlaveOneTimeMinAge,$activeSlaveOneTimeMaxAge)>>
-<<set _secondAgeRoll = random($activeSlaveOneTimeMinAge,$activeSlaveOneTimeMaxAge)>>
-<<if ($arcologies[0].FSYouthPreferentialist != "unset") && ($arcologies[0].FSYouthPreferentialist >= random(1,100))>>
-	<<set $args[0].actualAge = Math.min($args[0].actualAge, _secondAgeRoll)>>
-<<elseif ($arcologies[0].FSMaturityPreferentialist != "unset") && ($arcologies[0].FSMaturityPreferentialist >= random(1,100))>>
-	<<set $args[0].actualAge = Math.max($args[0].actualAge, _secondAgeRoll)>>
-<</if>>
-<<if $args[0].actualAge >= $retirementAge>>
-	<<set $args[0].actualAge = ($retirementAge-2)>>
-<</if>>
-<<set $activeSlaveOneTimeMinAge = 0>>
-<<set $activeSlaveOneTimeMaxAge = 999>>
-<<set $one_time_age_overrides_pedo_mode = 0>>
-<<set $ageAdjustOverride = 0>>
-<<set $args[0].visualAge = $args[0].actualAge>>
-<<set $args[0].physicalAge = $args[0].actualAge>>
-<<set $args[0].ovaryAge = $args[0].actualAge>>
-<<set $args[0].age = $args[0].actualAge>> /*compatibility*/
-<<set $args[0].pubertyAgeXX = $fertilityAge>>
-<<set $args[0].pubertyAgeXY = $potencyAge>>
-
-<</widget>>
-- 
GitLab


From cc18ed35b94771c7326dad6a17895d1d71b3bd73 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Thu, 26 Jul 2018 22:24:15 -0500
Subject: [PATCH 131/189] WIP CheatMode Fix

---
 src/npc/databases/cheatmodeDatabase.tw | 42 +++++++++++++---
 src/uncategorized/bodyModification.tw  | 70 +++++++++++++-------------
 2 files changed, 71 insertions(+), 41 deletions(-)

diff --git a/src/npc/databases/cheatmodeDatabase.tw b/src/npc/databases/cheatmodeDatabase.tw
index 133a0a20310..ccaa206d4b5 100644
--- a/src/npc/databases/cheatmodeDatabase.tw
+++ b/src/npc/databases/cheatmodeDatabase.tw
@@ -2,33 +2,63 @@
 
 <<BaseSlave>>
 <<set _HS = clone($activeSlave)>>
-<<set _HS.slaveName = "Miss Anne", _HS.birthName = "Lindy Anne", _HS.ID = 990000, _HS.relation = "mother", _HS.relationTarget = 990004, _HS.relationship = 4, _HS.relationshipTarget = 990001, _HS.rivalry = 1, _HS.rivalryTarget = 990002, _HS.assignment = "be your Head Girl", _HS.birthWeek = random(0,51), _HS.actualAge = 42, _HS.physicalAge = 42, _HS.visualAge = 42, _HS.ovaryAge = 42, _HS.ageImplant = 1, _HS.health = 50, _HS.devotion = 100, _HS.height = 175, _HS.eyeColor = "green", _HS.hColor = "honey blonde", _HS.skin = "pale", _HS.hStyle = "long", _HS.waist = -55, _HS.boobs = 1000, _HS.boobsImplant = 600, _HS.areolae = 1, _HS.butt = 4, _HS.buttImplant = 2, _HS.face = 55, _HS.lips = 35, _HS.vagina = 2, _HS.anus = 1, _HS.ovaries = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.vaginalSkill = 100, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 100, _HS.clothes = "a slave gown", _HS.intelligence = 3, _HS.energy = 65, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "'Miss Anne' is tattooed in lovely flowing script over her collarbone.", _HS.customDesc = "She speaks with the rich accent of the Old South.">>
+<<set _HS.slaveName = "Miss Anne", _HS.birthName = "Lindy Anne", _HS.ID = 990000, _HS.relation = "mother", _HS.relationTarget = 990004, _HS.relationship = 4, _HS.relationshipTarget = 990001, _HS.rivalry = 1, _HS.rivalryTarget = 990002, _HS.assignment = "be your Head Girl", _HS.birthWeek = random(0,51), _HS.actualAge = 42, _HS.physicalAge = 42, _HS.visualAge = 42, _HS.ovaryAge = 42, _HS.ageImplant = 1, _HS.health = 50, _HS.devotion = 100, _HS.height = 175, _HS.eyeColor = "green", _HS.hColor = "honey blonde", _HS.skin = "pale", _HS.hStyle = "long", _HS.waist = -55, _HS.boobs = 1000, _HS.boobsImplant = 600, _HS.areolae = 1, _HS.butt = 4, _HS.buttImplant = 2, _HS.face = 55, _HS.lips = 35, _HS.anus = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 100, _HS.clothes = "a slave gown", _HS.intelligence = 3, _HS.energy = 65, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "'Miss Anne' is tattooed in lovely flowing script over her collarbone.", _HS.customDesc = "She speaks with the rich accent of the Old South.">>
+<<if $seeDicks != 100>>
+<<set _HS.genes = "XX", _HS.vagina = 2, _HS.ovaries = 1, _HS.vaginalSkill = 100>>
+<<else>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1>>
+<</if>>
 <<AddSlave _HS>>
 <<set $HeadGirl = clone(_HS)>>
 //There are quite a few left; their names are _HS.slaveName,//
 
 <<set _HS = clone($activeSlave)>>
-<<set _HS.slaveName = "Cornelia", _HS.birthName = "Cora", _HS.ID = 990001, _HS.relation = "mother", _HS.relationTarget = 990002, _HS.relationship = 4, _HS.relationshipTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.ageImplant = 1, _HS.health = 10, _HS.devotion = 100, _HS.muscles = 20, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "dark", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1200, _HS.boobsImplant = 1000, _HS.areolae = 2, _HS.butt = 5, _HS.buttImplant = 3, _HS.face = 15, _HS.faceImplant = 65, _HS.lips = 35, _HS.lipsImplant = 10, _HS.vagina = -1, _HS.preg = -2, _HS.dick = 3, _HS.anus = 2, _HS.balls = 1, _HS.ovaries = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 100, _HS.clothes = "a slave gown", _HS.energy = 65, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "A large letter S is branded into the back of her left hand.", _HS.customDesc = "She speaks with the demeaning accent of slaves from the Old South.", _HS.pubertyXY = 1>>
+<<set _HS.slaveName = "Cornelia", _HS.birthName = "Cora", _HS.ID = 990001, _HS.relation = "mother", _HS.relationTarget = 990002, _HS.relationship = 4, _HS.relationshipTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.ageImplant = 1, _HS.health = 10, _HS.devotion = 100, _HS.muscles = 20, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "dark", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1200, _HS.boobsImplant = 1000, _HS.areolae = 2, _HS.butt = 5, _HS.buttImplant = 3, _HS.preg = -2, _HS.face = 15, _HS.faceImplant = 65, _HS.lips = 35, _HS.lipsImplant = 10, _HS.anus = 2, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 100, _HS.clothes = "a slave gown", _HS.energy = 65, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "A large letter S is branded into the back of her left hand.", _HS.customDesc = "She speaks with the demeaning accent of slaves from the Old South.">>
+<<if $seeDicks != 0>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 3, _HS.balls = 1, _HS.prostate = 1>>
+<<else>>
+<<set _HS.genes = "XX", _HS.vagina = 3, _HS.ovaries = 1>>
+<</if>>
 <<AddSlave _HS>>
 //_HS.slaveName,//
 
 <<set _HS = clone($activeSlave)>>
-<<set _HS.slaveName = "Sheba", _HS.birthName = "Shaneequa", _HS.ID = 990002, _HS.relation = "daughter", _HS.relationTarget = 990001, _HS.rivalry = 1, _HS.rivalryTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 10, _HS.devotion = 12, _HS.height = 175, _HS.race = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1600, _HS.boobsImplant = 600, _HS.nipplesPiercing = 1, _HS.areolae = 1, _HS.butt = 6, _HS.buttImplant = 2, _HS.face = 55, _HS.faceImplant = 15, _HS.lips = 55, _HS.lipsImplant = 10, _HS.vagina = 1, _HS.anus = 1, _HS.ovaries = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.vaginalSkill = 35, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.whoreSkill = 35, _HS.entertainSkill = 35, _HS.clothes = "a slave gown", _HS.energy = 100, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "A large letter S is branded into the back of her left hand.", _HS.customDesc = "She speaks with the demeaning accent of slaves from the Old South.", _HS.mother = 990001>>
+<<set _HS.slaveName = "Sheba", _HS.birthName = "Shaneequa", _HS.ID = 990002, _HS.relation = "daughter", _HS.relationTarget = 990001, _HS.rivalry = 1, _HS.rivalryTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 19, _HS.physicalAge = 19, _HS.visualAge = 19, _HS.ovaryAge = 19, _HS.health = 10, _HS.devotion = 12, _HS.height = 175, _HS.race = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1600, _HS.boobsImplant = 600, _HS.nipplesPiercing = 1, _HS.areolae = 1, _HS.butt = 6, _HS.buttImplant = 2, _HS.face = 55, _HS.faceImplant = 15, _HS.lips = 55, _HS.lipsImplant = 10, _HS.anus = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.whoreSkill = 35, _HS.entertainSkill = 35, _HS.clothes = "a slave gown", _HS.energy = 100, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "A large letter S is branded into the back of her left hand.", _HS.customDesc = "She speaks with the demeaning accent of slaves from the Old South.", _HS.mother = 990001>>
+<<if $seeDicks != 100>>
+<<set _HS.genes = "XX", _HS.vagina = 1, _HS.ovaries = 1, _HS.vaginalSkill = 35>>
+<<else>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1>>
+<</if>>
 <<AddSlave _HS>>
 //_HS.slaveName,//
 
 <<set _HS = clone($activeSlave)>>
-<<set _HS.slaveName = "Cornflower", _HS.birthName = "Alysa", _HS.ID = 990003, _HS.relation = "daughter", _HS.relationTarget = 990005, _HS.relationship = 3, _HS.relationshipTarget = 990005, _HS.assignment = "get milked", _HS.birthWeek = random(0,51), _HS.health = 20, _HS.devotion = 12, _HS.muscles = 50, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hLength = 0, _HS.hStyle = "shaved bald", _HS.pubicHStyle = "waxed", _HS.waist = -100, _HS.heels = 1, _HS.voice = 0, _HS.boobs = 6000, _HS.nipples = "huge", _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.butt = 3, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.vagina = 1, _HS.vaginaTat = "bovine patterns", _HS.anus = 3, _HS.dickTat = "bovine patterns", _HS.ovaries = 1, _HS.anusTat = "bovine patterns", _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.vaginalSkill = 15, _HS.oralSkill = 15, _HS.analSkill = 35, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customTat = "A pretty blue cornflower is tattooed on each of her cheeks.", _HS.customDesc = "She once spoke with the demeaning accent of slaves from the Old South.", _HS.mother = 990005>>
+<<set _HS.slaveName = "Cornflower", _HS.birthName = "Alysa", _HS.ID = 990003, _HS.relation = "daughter", _HS.relationTarget = 990005, _HS.relationship = 3, _HS.relationshipTarget = 990005, _HS.assignment = "get milked", _HS.birthWeek = random(0,51), _HS.health = 20, _HS.devotion = 12, _HS.muscles = 50, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hLength = 0, _HS.hStyle = "shaved bald", _HS.pubicHStyle = "waxed", _HS.waist = -100, _HS.heels = 1, _HS.voice = 0, _HS.boobs = 6000, _HS.nipples = "huge", _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.butt = 3, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.anus = 3, _HS.anusTat = "bovine patterns", _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.oralSkill = 15, _HS.analSkill = 35, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customTat = "A pretty blue cornflower is tattooed on each of her cheeks.", _HS.customDesc = "She once spoke with the demeaning accent of slaves from the Old South.", _HS.mother = 990005>>
+<<if $seeDicks != 100>>
+<<set _HS.genes = "XX", _HS.vagina = 1, _HS.vaginaTat = "bovine patterns", _HS.ovaries = 1, _HS.vaginalSkill = 15>>
+<<else>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1, _HS.dickTat = "bovine patterns">>
+<</if>>
 <<AddSlave _HS>>
 //_HS.slaveName,//
 
 <<set _HS = clone($activeSlave)>>
-<<set _HS.slaveName = "Miss Lily", _HS.birthName = "Lillian", _HS.ID = 990004, _HS.relation = "daughter", _HS.relationTarget = 990000, _HS.assignment = "guard you", _HS.birthWeek = random(0,51), _HS.health = 20, _HS.devotion = 30, _HS.muscles = 50, _HS.height = 175, _HS.eyeColor = "green", _HS.hColor = "straw blonde", _HS.skin = "pale", _HS.hLength = 40, _HS.hStyle = "in a short ponytail", _HS.waist = -55, _HS.boobs = 600, _HS.butt = 3, _HS.face = 15, _HS.lips = 35, _HS.preg = -2, _HS.anus = 2, _HS.ovaries = 1, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.analSkill = 35, _HS.combatSkill = 1, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "buttslut", _HS.fetishKnown = 1, _HS.customTat = "'Miss Lily' is tattooed in lovely flowing script over her collarbone.", _HS.customDesc = "She once spoke with the rich accent of the Old South.", _HS.mother = 990000>>
+<<set _HS.slaveName = "Miss Lily", _HS.birthName = "Lillian", _HS.ID = 990004, _HS.relation = "daughter", _HS.relationTarget = 990000, _HS.assignment = "guard you", _HS.birthWeek = random(0,51), _HS.health = 20, _HS.devotion = 30, _HS.muscles = 50, _HS.height = 175, _HS.eyeColor = "green", _HS.hColor = "straw blonde", _HS.skin = "pale", _HS.hLength = 40, _HS.hStyle = "in a short ponytail", _HS.waist = -55, _HS.boobs = 600, _HS.butt = 3, _HS.face = 15, _HS.lips = 35, _HS.preg = -2, _HS.anus = 2, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.analSkill = 35, _HS.combatSkill = 1, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "buttslut", _HS.fetishKnown = 1, _HS.customTat = "'Miss Lily' is tattooed in lovely flowing script over her collarbone.", _HS.customDesc = "She once spoke with the rich accent of the Old South.", _HS.mother = 990000>>
+<<if $seeDicks != 100>>
+<<set _HS.genes = "XX", _HS.ovaries = 1>>
+<<else>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1>>
+<</if>>
 <<AddSlave _HS>>
 <<set $Bodyguard = clone(_HS)>>
 //_HS.slaveName,//
 
 <<set _HS = clone($activeSlave)>>
-<<set _HS.slaveName = "Lilac", _HS.birthName = "Lillian", _HS.ID = 990005, _HS.relation = "mother", _HS.relationTarget = 990003, _HS.relationship = 3, _HS.relationshipTarget = 990003, _HS.assignment = "get milked", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.health = 20, _HS.devotion = 12, _HS.muscles = 50, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hLength = 0, _HS.hStyle = "shaved bald", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.heels = 1, _HS.boobs = 8000, _HS.nipples = "huge", _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.butt = 4, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.vagina = 1, _HS.vaginaTat = "bovine patterns", _HS.anus = 3, _HS.dickTat = "bovine patterns", _HS.ovaries = 1, _HS.anusTat = "bovine patterns", _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.vaginalSkill = 15, _HS.oralSkill = 15, _HS.analSkill = 35, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customTat = "A pretty purple lilac is tattooed on each of her cheeks.", _HS.customDesc = "She once spoke with the demeaning accent of slaves from the Old South.">>
+<<set _HS.slaveName = "Lilac", _HS.birthName = "Lillian", _HS.ID = 990005, _HS.relation = "mother", _HS.relationTarget = 990003, _HS.relationship = 3, _HS.relationshipTarget = 990003, _HS.assignment = "get milked", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.health = 20, _HS.devotion = 12, _HS.muscles = 50, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "brown", _HS.hLength = 0, _HS.hStyle = "shaved bald", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.heels = 1, _HS.boobs = 8000, _HS.nipples = "huge", _HS.areolae = 2, _HS.boobsTat = "bovine patterns", _HS.lactation = 2, _HS.butt = 4, _HS.buttTat = "bovine patterns", _HS.face = 15, _HS.lips = 35, _HS.lipsTat = "bovine patterns", _HS.anus = 3, _HS.anusTat = "bovine patterns", _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.nosePiercing = 2, _HS.shouldersTat = "bovine patterns", _HS.armsTat = "bovine patterns", _HS.legsTat = "bovine patterns", _HS.stampTat = "bovine patterns", _HS.oralSkill = 15, _HS.analSkill = 35, _HS.energy = 65, _HS.attrXY = 40, _HS.fetish = "boobs", _HS.fetishKnown = 1, _HS.customTat = "A pretty purple lilac is tattooed on each of her cheeks.", _HS.customDesc = "She once spoke with the demeaning accent of slaves from the Old South.">>
+<<if $seeDicks != 100>>
+<<set _HS.genes = "XX", _HS.vagina = 1, _HS.vaginaTat = "bovine patterns", _HS.ovaries = 1, _HS.vaginalSkill = 15>>
+<<else>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1, _HS.dickTat = "bovine patterns">>
+<</if>>
 <<AddSlave _HS>>
 //and _HS.slaveName.//
diff --git a/src/uncategorized/bodyModification.tw b/src/uncategorized/bodyModification.tw
index e50cf76dbbd..4ea8ea9a79f 100644
--- a/src/uncategorized/bodyModification.tw
+++ b/src/uncategorized/bodyModification.tw
@@ -144,13 +144,13 @@
 					<<if $activeSlave.anusPiercing > 1>>@@.hotpink;very happy@@ you took the time to personally pierce the entire area around $his whorish asspussy<<else>>@@.hotpink;happy@@ to get a piercing next to $his favorite hole from you personally<</if>>. $He can't wait to find out how the metal will feel against $his butthole when $he moves around.
 					<<set $activeSlave.devotion += ($activeSlave.anusPiercing-_slaveBeforeSession.anusPiercing)*2>>
 				<<elseif $activeSlave.devotion <= 95>>
-					@@.mediumorchid;saddened@@ you decided to take out $his backdoor piercings yourself. $He will miss the constant anal titillation, and $he's worried this means you're becoming less interested in her butthole.
+					@@.mediumorchid;saddened@@ you decided to take out $his backdoor piercings yourself. $He will miss the constant anal titillation, and $he's worried this means you're becoming less interested in $his butthole.
 					<<set $activeSlave.devotion += ($activeSlave.anusPiercing-_slaveBeforeSession.anusPiercing)*2>>
 				<</if>>
 			<</if>>
 			<</if>>
 			<<if $activeSlave.sexualFlaw == "hates anal">>
-				$He has trouble thinking of $his asshole as a sexy, fuckable hole, so $his new piercings will be therapeutic. The constant tickling back there should force her past her hangups.
+				$He has trouble thinking of $his asshole as a sexy, fuckable hole, so $his new piercings will be therapeutic. The constant tickling back there should force $him past $his hangups.
 			<</if>>
 		<</if>>
 	<</if>>
@@ -188,19 +188,19 @@
 			<<set _anus = "tight butthole">>
 		<</if>>
 		<<if $activeSlave.anusTat == "bleached">>
-			$He knew $he was getting $his ass bleached, of course. The stinging sensation was hard to miss. Even so, $he cranes her neck around as soon as possible to look at her _anus in the mirror.
+			$He knew $he was getting $his ass bleached, of course. The stinging sensation was hard to miss. Even so, $he cranes $his neck around as soon as possible to look at $his _anus in the mirror.
 		<<else>>
-			$He knew $he was getting $his asshole tattooed, of course. $He cranes her neck around as soon as possible to look at her _anus in the mirror.
-			<<if $activeSlave.butt > 5>>$His huge buttocks are still held apart by the spreaders used to give the tattooing actuators access to her most intimate area, giving her a good view.<</if>>
+			$He knew $he was getting $his asshole tattooed, of course. $He cranes $his neck around as soon as possible to look at $his _anus in the mirror.
+			<<if $activeSlave.butt > 5>>$His huge buttocks are still held apart by the spreaders used to give the tattooing actuators access to $his most intimate area, giving $him a good view.<</if>>
 		<</if>>
 		<<if $activeSlave.fetishKnown && $activeSlave.fetish == "buttslut">>
 			<<switch $activeSlave.anusTat>>
 			<<case "bleached">>
-				$He giggles at $his crinkled fuckhole's clean, fuckable appearance, and starts squeezing her sphincter muscles experimentally. "Thank you, <<Master>>," $he gasps, flushing.
+				$He giggles at $his crinkled fuckhole's clean, fuckable appearance, and starts squeezing $his sphincter muscles experimentally. "Thank you, <<Master>>," $he gasps, flushing.
 			<<case "flowers" "tribal patterns">>
 				$He gasps at the beautiful design and then suddenly bursts into tears. "T-thank you, <<Master>>," $he blubbers. "I'm <<s>>-<<s>>uch an anal whore."
 			<<case "advertisements">>
-				$He stares, her mouth working as $he spells out
+				$He stares, $his mouth working as $he spells out
 				<<if ($activeSlave.vagina > -1)>>
 					'Second Pussy.' $He smiles naughtily. "<<Master>>, it'<<s>> my //favorite// pu<<ss>>y,"
 				<<else>>
@@ -208,7 +208,7 @@
 				<</if>>
 				$he giggles.
 			<<case "rude words">>
-				$He stares, her mouth working as $he spells out
+				$He stares, $his mouth working as $he spells out
 				<<if ($activeSlave.vagina > -1)>>
 					'Fucktoy's Favorite Fuckhole.' $He smiles naughtily. "<<Master>>, it sure i<<s>>,"
 				<<else>>
@@ -216,11 +216,11 @@
 				<</if>>
 				$he giggles.
 			<<case "sacrilege">>
-				$He stares, her mouth working as $he reads the ring of Aramaic blasphemy around her hole. Getting it, $he smiles naughtily. "<<Master>>, I'm a horrible little butthole <<s>>uccubu<<s>>. Plea<<s>>e, <<Master>>, feed me. I need cum in my a<<ss>> to <<s>>urvive."
+				$He stares, $his mouth working as $he reads the ring of Aramaic blasphemy around $his hole. Getting it, $he smiles naughtily. "<<Master>>, I'm a horrible little butthole <<s>>uccubu<<s>>. Plea<<s>>e, <<Master>>, feed me. I need cum in my a<<ss>> to <<s>>urvive."
 			<<case "sacrament">>
-				$He stares, her mouth working as $he reads the ring of Aramaic around her hole. Getting it, $he smiles beatifically. "<<Master>>, I alway<<s>> knew butt<<s>>e<<x>> was a <<s>>acrament."
+				$He stares, $his mouth working as $he reads the ring of Aramaic around $his hole. Getting it, $he smiles beatifically. "<<Master>>, I alway<<s>> knew butt<<s>>e<<x>> was a <<s>>acrament."
 			<<case "degradation">>
-				$He stares, her mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Made Me An Anal Slut.' $He smiles naughtily. "Oh <<Master>>, you did," $he <<say>>s gratefully. "And I love you for it."
+				$He stares, $his mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Made Me An Anal Slut.' $He smiles naughtily. "Oh <<Master>>, you did," $he <<say>>s gratefully. "And I love you for it."
 			<<case "counting">>
 				$He stares, realizing that the markings denote how many times $he's been sodomized. "<<Master>>, thank you, and, and, I hope I'll have to come back in here a lot," $he <<say>>s. "Um, becau<<s>>e I have to have that updated. Because I'm being fucked in the butt a lot," $he adds, wanting to be completely clear.
 			<<case "bovine patterns">>
@@ -247,9 +247,9 @@
 			<<case "bleached">>
 				horrified, and then shudders convulsively, but can't look away.
 			<<case "flowers" "tribal patterns">>
-				torn between fascination at the intricate design and horror at having her anus permanently tattooed.
+				torn between fascination at the intricate design and horror at having $his anus permanently tattooed.
 			<<case "advertisements" "rude words" "sacrilege" "sacrament" "degradation" "possessive" "paternalist">>
-				her mouth working as $he spells out the words tattooed in a ring around her asshole. $He starts to cry as their meaning sinks in.
+				$his mouth working as $he spells out the words tattooed in a ring around $his asshole. $He starts to cry as their meaning sinks in.
 			<<default>>
 				lower lip quivering.
 			<</switch>>
@@ -260,9 +260,9 @@
 			<<case "bleached">>
 				fascinated. $He doesn't seem sure what to make of this.
 			<<case "flowers" "tribal patterns">>
-				torn between admiration of the pretty design and realization that her anus has been permanently tattooed.
+				torn between admiration of the pretty design and realization that $his anus has been permanently tattooed.
 			<<case "advertisements" "rude words" "sacrilege" "sacrament" "degradation" "possessive" "paternalist">>
-				her mouth working as $he spells out the words tattooed in a ring around her asshole. $He shudders a little as they sink in and $he internalizes what they say about $him and $his asshole.
+				$his mouth working as $he spells out the words tattooed in a ring around $his asshole. $He shudders a little as they sink in and $he internalizes what they say about $him and $his asshole.
 			<<default>>
 				realizing that $his anus has been permanently tattooed. It's yet another proof that $he's permanently a sex slave, and $his anus is for fucking.
 			<</switch>>
@@ -275,11 +275,11 @@
 			<<case "flowers" "tribal patterns">>
 				struggling to process the fact that one of $his most intimate areas has been tattooed. Beautifully tattooed, but still.
 			<<case "advertisements" "rude words" "sacrilege" "sacrament" "degradation" "possessive" "paternalist">>
-				$his mouth working as $he spells out the words tattooed in a ring around $his asshole. $He shudders as $he does her best to conceal $his feelings about such a permanent display of her status as an anal slave.
+				$his mouth working as $he spells out the words tattooed in a ring around $his asshole. $He shudders as $he does $his best to conceal $his feelings about such a permanent display of $his status as an anal slave.
 			<<default>>
-				looking sad as the meaning of a permanent display of her status as an anal slave sinks in.
+				looking sad as the meaning of a permanent display of $his status as an anal slave sinks in.
 			<</switch>>
-			After a short pause $he remembers her duties and stammers, "T-thank you, <<Master>>." After a while longer $he turns her head away, clearly not wanting to dwell on how her anus is obviously being beautified to attract sexual attention.
+			After a short pause $he remembers $his duties and stammers, "T-thank you, <<Master>>." After a while longer $he turns $his head away, clearly not wanting to dwell on how $his anus is obviously being beautified to attract sexual attention.
 		<<else>>
 			<<switch $activeSlave.anusTat>>
 			<<case "bleached">>
@@ -287,23 +287,23 @@
 			<<case "flowers" "tribal patterns">>
 				$He's momentarily surprised by the pretty design, but then $his face darkens. "That'<<s>> permanent!" $he bursts out. "My a<<ss>>hole i<<s>> going to look like that forever!"
 			<<case "advertisements">>
-				$He stares, her mouth working as $he spells out
+				$He stares, $his mouth working as $he spells out
 				<<if ($activeSlave.vagina > -1)>>
 					'Second Pussy.' $His face darkens. "No it'<<s>> not," $he bursts out. "Anal is dirty."
 				<<else>>
 					'Spit First.' $His face darkens. "Gro<<ss>>," $he bursts out. "Gro<<ss>> and wrong!"
 				<</if>>
 			<<case "rude words">>
-				$He stares, her mouth working as $he spells out
+				$He stares, $his mouth working as $he spells out
 				<<if ($activeSlave.vagina > -1)>>
 					'Fucktoy's Favorite Fuckhole.' $His face darkens. "No it'<<s>> not," $he bursts out. "It'<<s>> my a<<ss>>!"
 				<<else>>
 					'Sissy Slut's Sodomy Slit.' $His face darkens. "No it'<<s>> not," $he bursts out. "I'm not a <<s>>i<<ss>>y! Or a <<s>>lut! And it'<<s>> not a slit!" Those are debatable, but they can all change, of course.
 				<</if>>
 			<<case "sacrilege" "sacrament">>
-				$He stares, her mouth working as $he reads the ring of Aramaic around $his hole. $He doesn't understand it, but $he's not happy about having stuff permanently inscribed around $his ass.
+				$He stares, $his mouth working as $he reads the ring of Aramaic around $his hole. $He doesn't understand it, but $he's not happy about having stuff permanently inscribed around $his ass.
 			<<case "degradation">>
-				$He stares, her mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Made Me An Anal Slut.' $His face darkens. "No I'm not," $he bursts out. That remains to be seen.
+				$He stares, $his mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Made Me An Anal Slut.' $His face darkens. "No I'm not," $he bursts out. That remains to be seen.
 			<<case "counting">>
 				$He stares, realizing that the markings denote how many times $he's been sodomized. $His face darkens. "I <<s>>ee there'<<s>> room for more," $he bursts out. "Fucking gro<<ss>>."
 			<<case "bovine patterns">>
@@ -311,7 +311,7 @@
 			<<case "possessive">>
 				$He stares, realizing that the ring of numbers around $his anus give the date $he was enslaved by you. $His face darkens. "Wor<<s>>t day of my life," $he bursts out.
 			<<case "paternalist">>
-				$He stares, her mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Helped Me Love Anal.' "I don't," $he bursts out. "It'<<s>> fucking gro<<ss>>."
+				$He stares, $his mouth working as $he spells out '<<if $PC.title == 1>>Master<<else>>Mistress<</if>> Helped Me Love Anal.' "I don't," $he bursts out. "It'<<s>> fucking gro<<ss>>."
 			<</switch>>
 		<</if>>
 	<</if>>
@@ -772,63 +772,63 @@ Custom Tats:
 
 <<if $activeSlave.lipsTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom face tattoo: <<textbox "$activeSlave.lipsTat" $activeSlave.lipsTat "Slave Interact">>
+	Give $him a custom face tattoo: <<textbox "$activeSlave.lipsTat" $activeSlave.lipsTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.shouldersTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom shoulder tattoo: <<textbox "$activeSlave.shouldersTat" $activeSlave.shouldersTat "Slave Interact">>
+	Give $him a custom shoulder tattoo: <<textbox "$activeSlave.shouldersTat" $activeSlave.shouldersTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.armsTat == 0 && $activeSlave.amp != 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom arm tattoo: <<textbox "$activeSlave.armsTat" $activeSlave.armsTat "Slave Interact">>
+	Give $him a custom arm tattoo: <<textbox "$activeSlave.armsTat" $activeSlave.armsTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.boobsTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom tit tattoo: <<textbox "$activeSlave.boobsTat" $activeSlave.boobsTat "Slave Interact">>
+	Give $him a custom tit tattoo: <<textbox "$activeSlave.boobsTat" $activeSlave.boobsTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.backTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom back tattoo: <<textbox "$activeSlave.backTat" $activeSlave.backTat "Slave Interact">>
+	Give $him a custom back tattoo: <<textbox "$activeSlave.backTat" $activeSlave.backTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.stampTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom tramp stamp (lower back tattoo): <<textbox "$activeSlave.stampTat" $activeSlave.stampTat "Slave Interact">>
+	Give $him a custom tramp stamp (lower back tattoo): <<textbox "$activeSlave.stampTat" $activeSlave.stampTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.buttTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom butt tattoo (lower back tattoo): <<textbox "$activeSlave.buttTat" $activeSlave.buttTat "Slave Interact">>
+	Give $him a custom butt tattoo (lower back tattoo): <<textbox "$activeSlave.buttTat" $activeSlave.buttTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.dickTat == 0 && $activeSlave.dick != 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom dick tattoo: <<textbox "$activeSlave.dickTat" $activeSlave.dickTat "Slave Interact">>
+	Give $him a custom dick tattoo: <<textbox "$activeSlave.dickTat" $activeSlave.dickTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.vaginaTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom pubic tattoo: <<textbox "$activeSlave.vaginaTat" $activeSlave.vaginaTat "Slave Interact">>
+	Give $him a custom pubic tattoo: <<textbox "$activeSlave.vaginaTat" $activeSlave.vaginaTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.anusTat == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom anus tattoo (lower back tattoo): <<textbox "$activeSlave.anusTat" $activeSlave.anusTat "Slave Interact">>
+	Give $him a custom anus tattoo (lower back tattoo): <<textbox "$activeSlave.anusTat" $activeSlave.anusTat "Slave Interact">>
 <</if>>
 
 <<if $activeSlave.legsTat == 0 && $activeSlave.amp != 1>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
-	Give $his a custom leg tattoo: <<textbox "$activeSlave.legsTat" $activeSlave.legsTat "Slave Interact">>
+	Give $him a custom leg tattoo: <<textbox "$activeSlave.legsTat" $activeSlave.legsTat "Slave Interact">>
 <</if>>
 
 <br>&nbsp;&nbsp;&nbsp;&nbsp;
 
 <<if ($activeSlave.customTat == "")>>
-	Give $his a custom tattoo: <<textbox "$activeSlave.customTat" $activeSlave.customTat "Slave Interact">>
+	Give $him a custom tattoo: <<textbox "$activeSlave.customTat" $activeSlave.customTat "Slave Interact">>
 <<else>>
 	$He <<if _hasTat == 1>>also<</if>> has a custom tattoo: $activeSlave.customTat
 	Change it here: <<textbox "$activeSlave.customTat" $activeSlave.customTat "Slave Interact">>
-- 
GitLab


From 76ee410dcfbf43525867471b0d7c87f6a403b480 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Thu, 26 Jul 2018 21:14:44 -0700
Subject: [PATCH 132/189] Hyperpreg Stuck File

---
 src/uncategorized/reHyperpregStuck.tw | 255 ++++++++++++++++++++++++++
 1 file changed, 255 insertions(+)
 create mode 100644 src/uncategorized/reHyperpregStuck.tw

diff --git a/src/uncategorized/reHyperpregStuck.tw b/src/uncategorized/reHyperpregStuck.tw
new file mode 100644
index 00000000000..e1122ccfb3a
--- /dev/null
+++ b/src/uncategorized/reHyperpregStuck.tw
@@ -0,0 +1,255 @@
+:: re hyperpreg stuck [nobr]
+
+
+<<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check", $activeSlave = $eventSlave>>
+
+
+
+You are alerted to an issue regarding your  
+	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
+		hyperbroodmother,
+	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
+		broodmother,
+	<<else>> 
+		debilitatingly pregnant slave, 
+	<</if>>
+<<EventNameLink $activeSlave>>. It seems, 
+	<<if $pregAccessibility == 1>> 
+		despite updating your penthouse to accommodate bellies wider than a standard doorway, 
+	<<else>> 
+		since you have not yet updated your penthouse to accommodate bellies wider than standard doorways, 
+	<</if>> 
+the poor slave has gotten lodged in the doorway exiting 
+
+	<<if ($slaves[$i].livingRules == "luxurious")>> 
+		the dormitory where she sleeps.
+	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
+		her suite.
+	<<else>> 
+		her room.
+	<</if>>
+The menials assigned to care for her have been struggling for several weeks to fit her through this particular doorway, but refrained from informing you, as their ward 
+	<<if $activeSlave.devotion > 95>> 
+		did not wish to worry you. 
+	<<elseif $activeSlave.devotion > 50>> 
+		was concerned you would worry. 
+	<<elseif $activeSlave.devotion > 20>> 
+		was concerned how you would react. 
+	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
+		feared how you would react. 
+	<<elseif ($activeSlave.trust < -50)>> 
+		was terrified of how you might respond. 
+	<<else>> argued you couldn’t be trusted. 
+	<</if>> 
+You make a mental note to punish her caretakers and then set out to see her predicament for yourself. 
+
+<br><br>
+
+The sight that greets you when you arrive is equal parts incredible and amusing. En route to the baths, the slave attempted to exit 
+	<<if ($slaves[$i].livingRules == "luxurious")>> 
+		the dormitory where she sleeps 
+	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
+		her suite
+	<<else>> 
+		her room
+	<</if>>
+backwards and, as a result, you have a glorious view of her 
+	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
+		mind boggling, room filling belly 
+	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
+		massive, brood swollen belly 
+	<<else>> 
+		inhumanly pregnant belly 
+	<</if>> 
+squeezed painfully by the inadequate doorway and framing the attractive rear view of the rest of her body, including her 
+	<<if $activeSlave.butt > 5>>
+		debilitatlingly huge ass cheeks.
+	<<elseif $activeSlave.butt > 2>>
+		plush ass. 
+	<<else>> 
+		cute little ass.
+	<</if>>
+
+<br><br>
+	
+She cranes her neck, glancing over her shoulder to give you a pleading look.
+
+<br><br>
+
+	<span id="result">
+	<<link "Abuse her">>
+		<<replace "#result">>
+You lean against a wall and take a moment to enjoy your slave’s discomfort. Realizing that her <<Master>> is intent to do nothing, she blushes and begins pulling on her belly, attempting to free herself. 
+	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
+		Her innumerable brood are awakened by her exertions and begin to move, testing the thin walls of the womb constraining them and causing her belly to wobble ominously. You count the number of infant feet distinctly outlined against your poor hyperbroodmother’s straining womb. 
+	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
+		With a groan of effort, the broodmother manages to pull her belly slightly further out through the doorway, but, in the effort, only really manages to wedge it more firmly. It bulges ominously. 
+	<<else>> 
+		The massively pregnant slave’s belly clutches in a false contraction and she pulls several inches further out through the doorframe before it expands again, leaving her even more hopelessly stuck
+	<</if>>
+
+<br><br>
+
+	<<if !canTalk($activeSlave)>> 
+		She moans and rubs up and down what little she can reach of her belly while looking back at you with more urgency. It’s clear she is in severe distress.
+	<<else>> 
+		“<<Master>>,” she says through clenched teeth. “Please.”
+	<</if>>
+
+<br><br>
+
+You judge that sufficient time has passed and move forward. 
+	<<if $activeSlave.butt > 5>> 
+		Wading in between her huge ass cheeks
+	<<elseif $activeSlave.butt > 2>> 
+		Grabbing a handful of one generous ass cheek,
+	<<else>> 
+		Slapping a pert ass cheek,
+	<</if>> 
+you hilt yourself in her pregnant pussy and begin pounding. Her belly distorts back and forth under your vigorous ministrations before, with a “pop,” belly, slave, and owner go tumbling through the doorway. She yelps in @@.gold;shock@@ and @@.red;pain@@ as her belly smacks the ground and the sound of her voice, coupled with the feeling of jolting up and down on top of your slave’s abused gut, sends you over the edge. You ejaculate into her fertile, wanting pussy and then slide off of her to instruct your servants to widen the door before they carry her to her duties for the day.
+
+<br>
+
+<<set $activeSlave.health -= 20, $activeSlave.trust -= 20>>
+
+
+		<</replace>>
+	<</link>>
+
+<br>
+
+<<link "Fuck her">>
+		<<replace "#result">>
+You can’t help but be aroused by the sight of your swollen, helpless slave, and you take off your pants, revealing your erection. The slave’s backward glance falls on your dick and she 
+	<<if $activeSlave.devotion > 95>> 
+		licks her lips, 
+			<<if $activeSlave.amp == 1>> 
+				wiggling the stumps of her legs and swiveling her hips to give you a clear angle at her hungry pussy. 
+			<<else>> 
+				spreading her legs and revealing more of her massive underbelly while angling her wanting pussy at the perfect angle for fucking.
+			<</if>> 
+	<<elseif $activeSlave.devotion > 50>> 
+		blushes, swiveling her hips to give you easy access to her pussy. 
+	<<elseif $activeSlave.devotion > 20>> 
+		blushes and leans into her belly, knowing what to expect.
+	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
+		moans nervously. 
+	<<elseif ($activeSlave.trust < -50)>> 
+		yelps, turning away from you and clenching her eyes shut as her 
+		<<if $activeSlave.amp == 1>> 
+			stumps push toward each other, clearly trying (and failing) to conceal her pussy. 
+		<<else>> 
+			legs instinctively clench together to hide her pussy.
+		<</if>>
+. 
+	<<else>> 
+		snorts dersively despite her helplessness. 
+	<</if>>
+
+<br><br>
+
+You step forward and run an appreciative hand over the surface of her belly. Her womb is packed so full that the outline of her squirming children is obvious under her stretched-thin flesh. She groans at your touch, clearly in some distress, and you promise her that you’ll free her once you’ve finished up. 
+	<<if $activeSlave.devotion > 95>> 
+		The slave is clearly too aroused by your touch to hear what you’re saying and leans back into you, stretching against her tortured belly to nibble at your ear.
+	<<elseif $activeSlave.devotion > 50>> 
+		The slave says nothing, but wiggles her ass against your hips, making it clear she’s ready.
+	<<elseif $activeSlave.devotion > 20>> 
+		You can see tears streaming down the slave’s face from the discomfort she’s experiencing, but she nods that she’s ready.
+	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
+		The slave cries and begs you to finish quickly and help her before she bursts. 
+	<<elseif ($activeSlave.trust < -50)>> 
+		The shock of contact with your body causes the terrified slave’s skin to contract, as if she’s trying to pull away despite her current reality, and her only response to your promise is sobbing. 
+	<<else>> 
+		The slave 
+			<<if !canTalk($activeSlave)>> 
+				motions for you to
+			<<else>> 
+				responds by telling you to 
+			<</if>>
+		just fuck her already and let her move on with her day.
+	<</if>>
+You let your hand wander downward and then push down on the base of her clit with finger and thumb, making her whimper, before removing your hand and burying your cock inside her. As you fuck her, her poor, tortured belly wobbles against the constraining door frame and the frame itself groans in protest. 
+She grinds in rhythm to your pistoning until the back and forth movement of her sloshing tummy overpowers her efforts and sends her careening back and forth between its oceanic movements and your less than tender ministrations. The sensation of fucking a woman who is literally a slave to the motion of her own womb drives you over the edge and you pull out, ejaculating all over her 
+	<<if $activeSlave.butt > 5>> 
+		enveloping ass cleavage 
+	<<elseif $activeSlave.butt > 2>> 
+		fat, waiting ass cheeks 
+	<<else>> 
+		pert ass.
+	<</if>>
+
+<br><br>
+
+You step back, taking one last appreciatively look at your trapped slave, then call a team of menials to remove the door from its foundation to free her, instructing them to also continually widen the door as necessary to attempt to prevent future incidents. Though your slave is extracated uninjured, your decision to use her before saving her leaves the slave @@.gold;trusting you less@@.
+
+<br>
+
+<<set $activeSlave.health -= 10, $activeSlave.trust -= 10>>
+
+		<</replace>>
+	<</link>>
+
+<br>
+
+<<link "Try the “Butter Strategy”">>
+		<<replace "#result">>
+You ponder her predicament for a moment before settling on a solution. You procure an industrial sized jar of curative laced moisturizing butter--specially formulated to ease the strain of hypermassive pregnancy--and explain to your slave that, to free her, you’re going to need to completely cover her in it so that she can squeeze through. 
+	<<if $activeSlave.devotion > 95>> 
+		She grins at you and then huffs, pretending to be put off by the idea. 
+	<<elseif $activeSlave.devotion > 50>> 
+		She quirks an eyebrow, then smiles, clearly intrigued.
+	<<elseif $activeSlave.devotion > 20>> 
+		She nods, happy to hear you’ve considered a way to free her without causing her undue harm.
+	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
+		She had seemed uneasy when you first described your idea, but seems to resign herself to it once you finish your description. 
+	<<elseif ($activeSlave.trust < -50)>> 
+		The wide eyed slave nods as you describe your idea, clearly hoping you’ll free her as quickly as possible so that she can get away from you. 
+	<<else>> 
+		She laughs derisively at you after you describe your idea, then motions for you to get on with it.
+	<</if>> 
+You move toward her and slather a generous helping of the stuff over her back and 
+	<<if $activeSlave.butt > 5>> 
+		couch smothering ass,
+	<<elseif $activeSlave.butt > 2>> 
+		fat ass cheeks,
+	<<else>>
+		petite ass,
+	<</if>> 
+for the sake of “being thorough.” You then move forward, covering the parts of her belly you can reach from behind and taking special care to 
+	<<if ($activeSlave.boobs >= 20000)>> 
+		massage the soft butter into every inch of her colossal tits, noting with satisfaction as her distant nipples,stuck on the other side of the doorway with the bulk of her room filling breasts, harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 12000)>> 
+		massage the soft butter into her massive tits as they push up between the arch of the doorway and her bulging belly. You note with satisfaction as her nipples harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 7000)>> 
+		massage the soft butter into her monstrous tits, enjoying the struggle it takes to heft each butterslick, glistening watermelon with both hands. You note with satisfaction as her nipples harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 3000)>> 
+		massage the soft butter into each of her huge, headsized tits. Your slave cranes her head back a bit to avoid being smothered by her own breasts as you work the butter into them, but you can tell she’s aroused by what you’re doing--her nipples have turned hard as rocks. 
+	<<elseif ($activeSlave.boobsImplant > 250)>> 
+		massage the soft butter into her fat, fake titties, noting with satisfaction as her nipples harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 650)>> 
+		massage the soft butter into her big tits, noting with satisfaction as her nipples harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 300)>> 
+		massage the soft butter into her small, girlish chest, noting with satisfaction as her nipples harden with arousal.
+	<</if>>
+
+<br><br>
+
+Satisfied with your covering of your slave’s back half, you then resolve to work on her front. Getting down on your hands and knees, you crawl through the narrow triangle of space between the base of your slave’s massive belly, the floor, and the doorway. It’s a tight squeeze, and you take longer than you need to in order to enjoy the sound of your slave groaning as you squeeze up against her sweaty, buttered up belly, but you eventually make it through. Taking generous handfuls of butter, you slick up the front half of your slave’s stomach, starting at the flattened nub of her pressure obliterated belly button and slowly working your way up to the round oval of baby packed flesh being constricted by the doorway. 
+
+<br><br>
+
+With your slave’s body dripping with the thick moisturizer, you call out to her to start pulling her belly through the doorway, pushing your body up against her stomach to help push. You didn’t bother to strip your clothes while buttering her body and, as you crush up against her and heave, again and again, against the sheer mass of her abdomen, you can’t help but get aroused by the way your greasy clothes rub between your body and hers with each motion. At first, her belly is so firmly lodged that it doesn’t move, but momentum eventually builds up and, with an audible “pop,” the poor baby laden breeder finally breaks free from her containment, falling onto her back and pulling you with her into an absurd, buttery mass of flailing limbs and giggles. You take some time to flip her into a position where she won’t be crushed by the weight of her own womb, and then take some more time to enjoy the fruits of your labors.
+
+<br><br>
+
+ Once finished, you allow your servants to carry your @@.hotpink;thoroughly satisfied slave@@ to the baths and instruct them to continuously expand the doorway, as necessary, to attempt to prevent her getting stuck again.
+
+<br>
+
+<<set $activeSlave.devotion += 10>>
+
+
+		<</replace>>
+	<</link>>
+
+	</span>
\ No newline at end of file
-- 
GitLab


From 471b2e23630a5dfad405ec27ac9caa4c3e7339ec Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Thu, 26 Jul 2018 21:17:10 -0700
Subject: [PATCH 133/189] Update eventSelectionJS.tw

---
 src/js/eventSelectionJS.tw | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/js/eventSelectionJS.tw b/src/js/eventSelectionJS.tw
index cca5ef70bf3..f8b4c4774ad 100644
--- a/src/js/eventSelectionJS.tw
+++ b/src/js/eventSelectionJS.tw
@@ -1753,6 +1753,10 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 	}
 
+	if (eventSlave.bellyPreg >= 300000 || (eventSlave.broodmother >= 1 && eventSlave.bellyPreg >= 14000)) {
+		State.variables.events.push("re hyperpreg stuck");
+	}
+
 	if(eventSlave.prestige == 0) {
 		if(eventSlave.devotion > 50) {
 			if(eventSlave.trust > 50) {
-- 
GitLab


From d1f6b721d889eca2d7f20d50d31ac07a06c091d3 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Thu, 26 Jul 2018 22:55:25 -0700
Subject: [PATCH 134/189] Update eventSelectionJS.tw

---
 src/js/eventSelectionJS.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/js/eventSelectionJS.tw b/src/js/eventSelectionJS.tw
index f8b4c4774ad..cbcd86426d3 100644
--- a/src/js/eventSelectionJS.tw
+++ b/src/js/eventSelectionJS.tw
@@ -1753,7 +1753,7 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 	}
 
-	if (eventSlave.bellyPreg >= 300000 || (eventSlave.broodmother >= 1 && eventSlave.bellyPreg >= 14000)) {
+	if (eventSlave.bellyPreg >= 300000) {
 		State.variables.events.push("re hyperpreg stuck");
 	}
 
-- 
GitLab


From 43694cab596d0f2c0fd44211dac0f43b0ad14b8d Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Thu, 26 Jul 2018 23:01:41 -0700
Subject: [PATCH 135/189] Update reHyperpregStuck.tw

---
 src/uncategorized/reHyperpregStuck.tw | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/uncategorized/reHyperpregStuck.tw b/src/uncategorized/reHyperpregStuck.tw
index e1122ccfb3a..6e494c7d831 100644
--- a/src/uncategorized/reHyperpregStuck.tw
+++ b/src/uncategorized/reHyperpregStuck.tw
@@ -171,9 +171,9 @@ You step forward and run an appreciative hand over the surface of her belly. Her
 You let your hand wander downward and then push down on the base of her clit with finger and thumb, making her whimper, before removing your hand and burying your cock inside her. As you fuck her, her poor, tortured belly wobbles against the constraining door frame and the frame itself groans in protest. 
 She grinds in rhythm to your pistoning until the back and forth movement of her sloshing tummy overpowers her efforts and sends her careening back and forth between its oceanic movements and your less than tender ministrations. The sensation of fucking a woman who is literally a slave to the motion of her own womb drives you over the edge and you pull out, ejaculating all over her 
 	<<if $activeSlave.butt > 5>> 
-		enveloping ass cleavage 
+		enveloping ass cleavage. 
 	<<elseif $activeSlave.butt > 2>> 
-		fat, waiting ass cheeks 
+		fat, waiting ass cheeks. 
 	<<else>> 
 		pert ass.
 	<</if>>
-- 
GitLab


From 1c173831e8cfb16867ebf799dbdd61b7d4302760 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Thu, 26 Jul 2018 23:25:19 -0700
Subject: [PATCH 136/189] Update RESS.tw

---
 src/uncategorized/RESS.tw | 224 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 224 insertions(+)

diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 53383d3a988..34632f3fc40 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -4148,6 +4148,75 @@ i<<s>> ni<<c>>e," she <<if $activeSlave.trust > 95>>allows<<else>>hurries to add
 <</if>>
 May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 
+
+<<case “re hyperpreg stuck”>>
+You are alerted to an issue regarding your  
+	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
+		hyperbroodmother,
+	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
+		broodmother,
+	<<else>> 
+		debilitatingly pregnant slave, 
+	<</if>>
+<<EventNameLink $activeSlave>>. It seems, 
+	<<if $pregAccessibility == 1>> 
+		despite updating your penthouse to accommodate bellies wider than a standard doorway, 
+	<<else>> 
+		since you have not yet updated your penthouse to accommodate bellies wider than standard doorways, 
+	<</if>> 
+the poor slave has gotten lodged in the doorway exiting 
+
+	<<if ($slaves[$i].livingRules == "luxurious")>> 
+		the dormitory where she sleeps.
+	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
+		her suite.
+	<<else>> 
+		her room.
+	<</if>>
+The menials assigned to care for her have been struggling for several weeks to fit her through this particular doorway, but refrained from informing you, as their ward 
+	<<if $activeSlave.devotion > 95>> 
+		did not wish to worry you. 
+	<<elseif $activeSlave.devotion > 50>> 
+		was concerned you would worry. 
+	<<elseif $activeSlave.devotion > 20>> 
+		was concerned how you would react. 
+	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
+		feared how you would react. 
+	<<elseif ($activeSlave.trust < -50)>> 
+		was terrified of how you might respond. 
+	<<else>> argued you couldn’t be trusted. 
+	<</if>> 
+You make a mental note to punish her caretakers and then set out to see her predicament for yourself. 
+<br><br>
+The sight that greets you when you arrive is equal parts incredible and amusing. En route to the baths, the slave attempted to exit 
+	<<if ($slaves[$i].livingRules == "luxurious")>> 
+		the dormitory where she sleeps 
+	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
+		her suite
+	<<else>> 
+		her room
+	<</if>>
+backwards and, as a result, you have a glorious view of her 
+	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
+		mind boggling, room filling belly 
+	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
+		massive, brood swollen belly 
+	<<else>> 
+		inhumanly pregnant belly 
+	<</if>> 
+squeezed painfully by the inadequate doorway and framing the attractive rear view of the rest of her body, including her 
+	<<if $activeSlave.butt > 5>>
+		debilitatlingly huge ass cheeks.
+	<<elseif $activeSlave.butt > 2>>
+		plush ass. 
+	<<else>> 
+		cute little ass.
+	<</if>>
+<br><br>
+She cranes her neck, glancing over her shoulder to give you a pleading look.
+
+
+
 <<default>>
 	<br>ERROR: bad RESS event $RESSevent
 <</switch>>
@@ -19860,6 +19929,161 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<</replace>>
 <</link>>
 
+
+<<case “re hyperpreg stuck”>>
+
+<<link "Abuse her">>
+		<<replace "#result">>
+You lean against a wall and take a moment to enjoy your slave’s discomfort. Realizing that her <<Master>> is intent to do nothing, she blushes and begins pulling on her belly, attempting to free herself. 
+	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
+		Her innumerable brood are awakened by her exertions and begin to move, testing the thin walls of the womb constraining them and causing her belly to wobble ominously. You count the number of infant feet distinctly outlined against your poor hyperbroodmother’s straining womb. 
+	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
+		With a groan of effort, the broodmother manages to pull her belly slightly further out through the doorway, but, in the effort, only really manages to wedge it more firmly. It bulges ominously. 
+	<<else>> 
+		The massively pregnant slave’s belly clutches in a false contraction and she pulls several inches further out through the doorframe before it expands again, leaving her even more hopelessly stuck
+	<</if>>
+<br><br>
+	<<if !canTalk($activeSlave)>> 
+		She moans and rubs up and down what little she can reach of her belly while looking back at you with more urgency. It’s clear she is in severe distress.
+	<<else>> 
+		“<<Master>>,” she says through clenched teeth. “Please.”
+	<</if>>
+<br><br>
+You judge that sufficient time has passed and move forward. 
+	<<if $activeSlave.butt > 5>> 
+		Wading in between her huge ass cheeks
+	<<elseif $activeSlave.butt > 2>> 
+		Grabbing a handful of one generous ass cheek,
+	<<else>> 
+		Slapping a pert ass cheek,
+	<</if>> 
+you hilt yourself in her pregnant pussy and begin pounding. Her belly distorts back and forth under your vigorous ministrations before, with a “pop,” belly, slave, and owner go tumbling through the doorway. She yelps in @@.gold;shock@@ and @@.red;pain@@ as her belly smacks the ground and the sound of her voice, coupled with the feeling of jolting up and down on top of your slave’s abused gut, sends you over the edge. You ejaculate into her fertile, wanting pussy and then slide off of her to instruct your servants to widen the door before they carry her to her duties for the day.
+<br>
+<<set $activeSlave.health -= 20, $activeSlave.trust -= 20>>
+		<</replace>>
+	<</link>>
+<br>
+
+<<link "Fuck her">>
+		<<replace "#result">>
+You can’t help but be aroused by the sight of your swollen, helpless slave, and you take off your pants, revealing your erection. The slave’s backward glance falls on your dick and she 
+	<<if $activeSlave.devotion > 95>> 
+		licks her lips, 
+			<<if $activeSlave.amp == 1>> 
+				wiggling the stumps of her legs and swiveling her hips to give you a clear angle at her hungry pussy. 
+			<<else>> 
+				spreading her legs and revealing more of her massive underbelly while angling her wanting pussy at the perfect angle for fucking.
+			<</if>> 
+	<<elseif $activeSlave.devotion > 50>> 
+		blushes, swiveling her hips to give you easy access to her pussy. 
+	<<elseif $activeSlave.devotion > 20>> 
+		blushes and leans into her belly, knowing what to expect.
+	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
+		moans nervously. 
+	<<elseif ($activeSlave.trust < -50)>> 
+		yelps, turning away from you and clenching her eyes shut as her 
+		<<if $activeSlave.amp == 1>> 
+			stumps push toward each other, clearly trying (and failing) to conceal her pussy. 
+		<<else>> 
+			legs instinctively clench together to hide her pussy.
+		<</if>>
+	<<else>> 
+		snorts dersively despite her helplessness. 
+	<</if>>
+<br><br>
+You step forward and run an appreciative hand over the surface of her belly. Her womb is packed so full that the outline of her squirming children is obvious under her stretched-thin flesh. She groans at your touch, clearly in some distress, and you promise her that you’ll free her once you’ve finished up. 
+	<<if $activeSlave.devotion > 95>> 
+		The slave is clearly too aroused by your touch to hear what you’re saying and leans back into you, stretching against her tortured belly to nibble at your ear.
+	<<elseif $activeSlave.devotion > 50>> 
+		The slave says nothing, but wiggles her ass against your hips, making it clear she’s ready.
+	<<elseif $activeSlave.devotion > 20>> 
+		You can see tears streaming down the slave’s face from the discomfort she’s experiencing, but she nods that she’s ready.
+	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
+		The slave cries and begs you to finish quickly and help her before she bursts. 
+	<<elseif ($activeSlave.trust < -50)>> 
+		The shock of contact with your body causes the terrified slave’s skin to contract, as if she’s trying to pull away despite her current reality, and her only response to your promise is sobbing. 
+	<<else>> 
+		The slave 
+			<<if !canTalk($activeSlave)>> 
+				motions for you to
+			<<else>> 
+				responds by telling you to 
+			<</if>>
+		just fuck her already and let her move on with her day.
+	<</if>>
+You let your hand wander downward and then push down on the base of her clit with finger and thumb, making her whimper, before removing your hand and burying your cock inside her. As you fuck her, her poor, tortured belly wobbles against the constraining door frame and the frame itself groans in protest. 
+She grinds in rhythm to your pistoning until the back and forth movement of her sloshing tummy overpowers her efforts and sends her careening back and forth between its oceanic movements and your less than tender ministrations. The sensation of fucking a woman who is literally a slave to the motion of her own womb drives you over the edge and you pull out, ejaculating all over her 
+	<<if $activeSlave.butt > 5>> 
+		enveloping ass cleavage. 
+	<<elseif $activeSlave.butt > 2>> 
+		fat, waiting ass cheeks. 
+	<<else>> 
+		pert ass.
+	<</if>>
+<br><br>
+You step back, taking one last appreciatively look at your trapped slave, then call a team of menials to remove the door from its foundation to free her, instructing them to also continually widen the door as necessary to attempt to prevent future incidents. Though your slave is extracated uninjured, your decision to use her before saving her leaves the slave @@.gold;trusting you less@@.
+<br>
+<<set $activeSlave.health -= 10, $activeSlave.trust -= 10>>
+		<</replace>>
+
+	<</link>>
+<br>
+<<link "Try the “Butter Strategy”">>
+		<<replace "#result">>
+You ponder her predicament for a moment before settling on a solution. You procure an industrial sized jar of curative laced moisturizing butter--specially formulated to ease the strain of hypermassive pregnancy--and explain to your slave that, to free her, you’re going to need to completely cover her in it so that she can squeeze through. 
+	<<if $activeSlave.devotion > 95>> 
+		She grins at you and then huffs, pretending to be put off by the idea. 
+	<<elseif $activeSlave.devotion > 50>> 
+		She quirks an eyebrow, then smiles, clearly intrigued.
+	<<elseif $activeSlave.devotion > 20>> 
+		She nods, happy to hear you’ve considered a way to free her without causing her undue harm.
+	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
+		She had seemed uneasy when you first described your idea, but seems to resign herself to it once you finish your description. 
+	<<elseif ($activeSlave.trust < -50)>> 
+		The wide eyed slave nods as you describe your idea, clearly hoping you’ll free her as quickly as possible so that she can get away from you. 
+	<<else>> 
+		She laughs derisively at you after you describe your idea, then motions for you to get on with it.
+	<</if>> 
+You move toward her and slather a generous helping of the stuff over her back and 
+	<<if $activeSlave.butt > 5>> 
+		couch smothering ass,
+	<<elseif $activeSlave.butt > 2>> 
+		fat ass cheeks,
+	<<else>>
+		petite ass,
+	<</if>> 
+for the sake of “being thorough.” You then move forward, covering the parts of her belly you can reach from behind and taking special care to 
+	<<if ($activeSlave.boobs >= 20000)>> 
+		massage the soft butter into every inch of her colossal tits, noting with satisfaction as her distant nipples,stuck on the other side of the doorway with the bulk of her room filling breasts, harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 12000)>> 
+		massage the soft butter into her massive tits as they push up between the arch of the doorway and her bulging belly. You note with satisfaction as her nipples harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 7000)>> 
+		massage the soft butter into her monstrous tits, enjoying the struggle it takes to heft each butterslick, glistening watermelon with both hands. You note with satisfaction as her nipples harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 3000)>> 
+		massage the soft butter into each of her huge, headsized tits. Your slave cranes her head back a bit to avoid being smothered by her own breasts as you work the butter into them, but you can tell she’s aroused by what you’re doing--her nipples have turned hard as rocks. 
+	<<elseif ($activeSlave.boobsImplant > 250)>> 
+		massage the soft butter into her fat, fake titties, noting with satisfaction as her nipples harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 650)>> 
+		massage the soft butter into her big tits, noting with satisfaction as her nipples harden with arousal. 
+	<<elseif ($activeSlave.boobs >= 300)>> 
+		massage the soft butter into her small, girlish chest, noting with satisfaction as her nipples harden with arousal.
+	<</if>>
+<br><br>
+Satisfied with your covering of your slave’s back half, you then resolve to work on her front. Getting down on your hands and knees, you crawl through the narrow triangle of space between the base of your slave’s massive belly, the floor, and the doorway. It’s a tight squeeze, and you take longer than you need to in order to enjoy the sound of your slave groaning as you squeeze up against her sweaty, buttered up belly, but you eventually make it through. Taking generous handfuls of butter, you slick up the front half of your slave’s stomach, starting at the flattened nub of her pressure obliterated belly button and slowly working your way up to the round oval of baby packed flesh being constricted by the doorway. 
+<br><br>
+With your slave’s body dripping with the thick moisturizer, you call out to her to start pulling her belly through the doorway, pushing your body up against her stomach to help push. You didn’t bother to strip your clothes while buttering her body and, as you crush up against her and heave, again and again, against the sheer mass of her abdomen, you can’t help but get aroused by the way your greasy clothes rub between your body and hers with each motion. At first, her belly is so firmly lodged that it doesn’t move, but momentum eventually builds up and, with an audible “pop,” the poor baby laden breeder finally breaks free from her containment, falling onto her back and pulling you with her into an absurd, buttery mass of flailing limbs and giggles. You take some time to flip her into a position where she won’t be crushed by the weight of her own womb, and then take some more time to enjoy the fruits of your labors.
+<br><br>
+Once finished, you allow your servants to carry your @@.hotpink;thoroughly satisfied slave@@ to the baths and instruct them to continuously expand the doorway, as necessary, to attempt to prevent her getting stuck again.
+<br>
+<<set $activeSlave.devotion += 10>>
+
+
+		<</replace>>
+	<</link>>
+
+
+
+
 <<default>>
 	<br>ERROR: bad RESS event $RESSevent
 <</switch>>
-- 
GitLab


From 03889a2c70a3b3a1c4d3939a909bda1e87b3902f Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Fri, 27 Jul 2018 00:02:25 -0700
Subject: [PATCH 137/189] Update eventSelectionJS.tw

---
 src/js/eventSelectionJS.tw | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/js/eventSelectionJS.tw b/src/js/eventSelectionJS.tw
index cbcd86426d3..9616c60240a 100644
--- a/src/js/eventSelectionJS.tw
+++ b/src/js/eventSelectionJS.tw
@@ -1753,8 +1753,8 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 	}
 
-	if (eventSlave.bellyPreg >= 300000) {
-		State.variables.events.push("re hyperpreg stuck");
+	if (eventSlave.bellyPreg >= 300000 || (eventSlave.broodmother >= 1 && eventSlave.bellyPreg >= 14000)) {
+		State.variables.RESSevent.push("re hyperpreg stuck");
 	}
 
 	if(eventSlave.prestige == 0) {
-- 
GitLab


From 587d961fd24d1da8ea63476899b763d3c20cf4fd Mon Sep 17 00:00:00 2001
From: lbnesquik <lbnesquik@gmail.com>
Date: Fri, 27 Jul 2018 11:49:38 +0200
Subject: [PATCH 138/189] Corrected a typo.

---
 src/uncategorized/pit.tw | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/uncategorized/pit.tw b/src/uncategorized/pit.tw
index f80f632db38..68894181871 100644
--- a/src/uncategorized/pit.tw
+++ b/src/uncategorized/pit.tw
@@ -54,7 +54,7 @@ $pitNameCaps is clean and ready,
 	Fighters will use their fists and feet, and fights will be to submission. [[Lethal|Pit][$pitLethal = 1]]
 	<br>
 	<<if $pitVirginities == 0>>
-		''No'' viriginities of the loser will be respected.
+		''No'' virginities of the loser will be respected.
 		[[Vaginal|Pit][$pitVirginities = 1]] |
 		[[Anal|Pit][$pitVirginities = 2]] |
 		[[All|Pit][$pitVirginities = 3]]
@@ -69,7 +69,7 @@ $pitNameCaps is clean and ready,
 		[[Vaginal|Pit][$pitVirginities = 1]] |
 		[[All|Pit][$pitVirginities = 3]]
 	<<elseif $pitVirginities == 3>>
-		''All'' viriginities of the loser will be respected.
+		''All'' virginities of the loser will be respected.
 		[[Neither|Pit][$pitVirginities = 0]] |
 		[[Vaginal|Pit][$pitVirginities = 1]] |
 		[[Anal|Pit][$pitVirginities = 2]]
-- 
GitLab


From f786ea905728e22c460eb6b93a255ff583a96a72 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 27 Jul 2018 14:20:49 -0400
Subject: [PATCH 139/189] minor 'nobr'ing

---
 src/uncategorized/bodyModificationReaction.tw |  8 ++------
 src/uncategorized/changeLanguage.tw           | 10 +++-------
 src/uncategorized/clubAdvertisement.tw        | 15 +++++----------
 src/utility/slaveGenerationWidgets.tw         |  3 +--
 4 files changed, 11 insertions(+), 25 deletions(-)

diff --git a/src/uncategorized/bodyModificationReaction.tw b/src/uncategorized/bodyModificationReaction.tw
index ffd95f67514..0599662834f 100644
--- a/src/uncategorized/bodyModificationReaction.tw
+++ b/src/uncategorized/bodyModificationReaction.tw
@@ -1,9 +1,6 @@
-:: Body Modification Reaction
+:: Body Modification Reaction [nobr]
 
-<<nobr>>
-
-<<set $nextButton = "Continue">>
-<<set $nextLink = "Slave Interact">>
+<<set $nextButton = "Continue", $nextLink = "Slave Interact">>
 
 As you cast off $his bindings<<if canSee($activeSlave)>> and <<if ($activeSlave.amp != 1)>>let $him stand<<else>>prop $him up<</if>>, $he catches sight of $himself in the floor length mirror at the foot of the body modification table<<else>>, and <<if ($activeSlave.amp != 1)>>let $him stand<<else>>prop $him up<</if>>, you vividly describe $his new appearance. $His mind hangs on every word that leaves your mouth<</if>>.
 
@@ -45,4 +42,3 @@ As you cast off $his bindings<<if canSee($activeSlave)>> and <<if ($activeSlave.
 <</if>>
 <<set $degradation = 0>>
 
-<</nobr>>\
diff --git a/src/uncategorized/changeLanguage.tw b/src/uncategorized/changeLanguage.tw
index 7b6dd3fd1b4..de8d8907d68 100644
--- a/src/uncategorized/changeLanguage.tw
+++ b/src/uncategorized/changeLanguage.tw
@@ -1,6 +1,4 @@
-:: Change Language
-
-<<nobr>>
+:: Change Language [nobr]
 
 <<set $nextButton = "Confirm changes", $nextLink = "Manage Arcology">>
 
@@ -37,10 +35,9 @@ The lingua franca of the arcology is ''$language''.
 <br><br>
 Select a custom language to be applied: <<textbox "$seed" $seed "Change Language">> //A single capitalized word is recommended.//
 
-<</nobr>>\
-\
+<br><br>
+
 <span id="result">
-<<nobr>>
 
 <<if $language != "English">>
 	<br><<link "English">>
@@ -197,5 +194,4 @@ Select a custom language to be applied: <<textbox "$seed" $seed "Change Language
 	<</link>> //Failing to take this step will retard adoption of Revivalism//
 <</if>>
 
-<</nobr>>
 </span>
diff --git a/src/uncategorized/clubAdvertisement.tw b/src/uncategorized/clubAdvertisement.tw
index f4fab05a2de..888764ad5cd 100644
--- a/src/uncategorized/clubAdvertisement.tw
+++ b/src/uncategorized/clubAdvertisement.tw
@@ -1,6 +1,4 @@
-:: Club Advertisement
-
-<<nobr>>
+:: Club Advertisement [nobr]
 
 <<switch $clubDecoration>>
 <<case "Roman Revivalist">>
@@ -119,9 +117,7 @@
 	$arcologies[0].name has a robust internal media that could be used to bring patrons into the club.
 <</if>>
 
-<</nobr>>
-
-<<nobr>>
+<br><br>
 
 You are spending <<print cashFormat($clubAdsSpending)>> each week to advertise $clubName.
 
@@ -136,10 +132,11 @@ You are spending <<print cashFormat($clubAdsSpending)>> each week to advertise $
 	Increase
 <</if>>
 
-<</nobr>>
+<br><br>
 
 __Design Club Ad Campaign__ //Will replace relevant variety bonuses//
-<<nobr>>
+
+<br><br>
 
 Asset size:
 <<if $clubAdsStacked != 1>><<link "Stacked">><<set $clubAdsStacked = 1>><<goto "Club Advertisement">><</link>> | <<else>>Stacked | <</if>>
@@ -186,5 +183,3 @@ Pregnancy:
 	<<if $clubAdsXX != 0>><<link "Variety">><<set $clubAdsXX = 0>><<goto "Club Advertisement">><</link>> <<else>>Variety<</if>>
 	<br>
 <</if>>
-
-<</nobr>>
diff --git a/src/utility/slaveGenerationWidgets.tw b/src/utility/slaveGenerationWidgets.tw
index fc13ba90c21..00d19cda1b2 100644
--- a/src/utility/slaveGenerationWidgets.tw
+++ b/src/utility/slaveGenerationWidgets.tw
@@ -1,6 +1,5 @@
 :: slave generation widgets [nobr widget]
 
 <<widget "NationalityToRace">>
-<<set $args[0].race
-	= hashChoice(setup.raceSelector[$args[0].nationality] || setup.raceSelector[""])>>
+<<set $args[0].race = hashChoice(setup.raceSelector[$args[0].nationality] || setup.raceSelector[""])>>
 <</widget>>
-- 
GitLab


From e36366f900e48ab9f8085ad2bb53426b9fb9b59e Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Fri, 27 Jul 2018 19:18:22 -0400
Subject: [PATCH 140/189] Update height generation documentation

---
 devNotes/twine JS.txt | 8 ++++----
 src/js/utilJS.tw      | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 4437281b79c..c3ac4749366 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -2849,8 +2849,8 @@ Macro.add('foreach', {
  * Height.mean(nationality, race, genes) - returns the mean adult height for the given combination
  * Height.mean(slave) - returns the mean (expected) height for the given slave
  *
- * Height.random(nationality, race, genes, age) - returns a random height for the given combination,
- *     with Gaussian distribution (mean = 1, standard deviation = 0.05) around the mean height
+ * Height.random(nationality, race, genes, age) - returns a random height using the skew-normal distribution 
+ *                                                around the mean height for the given arguments
  * Height.random(nationality, race, genes) - returns a random height for the given combination of an adult, as above
  * Height.random(slave[, options]) - returns a random height for the given slave, as above.
  *                                   The additional options object can modify how the values are generated
@@ -2889,9 +2889,9 @@ Macro.add('foreach', {
  *
  *Skew, spread, limitMult: These are statistics things. BTW, a gaussian distribution is a normal distribution. Just a naming thing.
  *
- *Skew: See https://brownmath.com/stat/shape.htm#Skewness. Basically a measure of how asymmetrical the curve is. It doesn't change the mean, and can't move the main mass of the distribution far from the mean! The normal distribution can't do that. You can, however, use it to fatten one or the other tail.
+ *Skew: The shape parameter of a skew-normal distribution. See http://azzalini.stat.unipd.it/SN/Intro/intro.html for more details. Basically a measure of how asymmetrical the curve is. It doesn't move the main mass of the distribution. Rather, it's more like it moves mass from one of the tails into the main mass of the distribution.
  *
- *Spread: Changes the average distance from the mean, making the graph wider and shorter. Moves "mass" from the center to the tail. It's basically standard deviation, but named funny because FC codebase.
+ *Spread: Changes the average distance from the mean, making the graph wider and shorter. Moves "mass" from the center to the tail. It's basically standard deviation, but named funny because FC codebase. Changing this can have dramatic effects. It's advised to keep this at or below 0.1 for usual height generation.
  *
  *limitMult: A clamp, expressed in z-score. (z=1 is one standard dev above mean, for ex.) If it excludes too much of the distribution the other parameters describe, you're going to spend lots of CPU making and throwing away heights. Don't worry about this unless you run into it.
  *
diff --git a/src/js/utilJS.tw b/src/js/utilJS.tw
index 9d20cdf8bb3..f00ec3c0d07 100644
--- a/src/js/utilJS.tw
+++ b/src/js/utilJS.tw
@@ -5,8 +5,8 @@
  * Height.mean(nationality, race, genes) - returns the mean adult height for the given combination
  * Height.mean(slave) - returns the mean (expected) height for the given slave
  *
- * Height.random(nationality, race, genes, age) - returns a random height for the given combination,
- *     with Gaussian distribution (mean = 1, standard deviation = 0.05) around the mean height
+ * Height.random(nationality, race, genes, age) - returns a random height using the skew-normal distribution 
+ *                                                around the mean height for the given arguments
  * Height.random(nationality, race, genes) - returns a random height for the given combination of an adult, as above
  * Height.random(slave[, options]) - returns a random height for the given slave, as above.
  *                                   The additional options object can modify how the values are generated
@@ -45,9 +45,9 @@
  *
  *Skew, spread, limitMult: These are statistics things. BTW, a gaussian distribution is a normal distribution. Just a naming thing.
  *
- *Skew: See https://brownmath.com/stat/shape.htm#Skewness. Basically a measure of how asymmetrical the curve is. It doesn't change the mean, and can't move the main mass of the distribution far from the mean! The normal distribution can't do that. You can, however, use it to fatten one or the other tail.
+ *Skew: The shape parameter of a skew-normal distribution. See http://azzalini.stat.unipd.it/SN/Intro/intro.html for more details. Basically a measure of how asymmetrical the curve is. It doesn't move the main mass of the distribution. Rather, it's more like it moves mass from one of the tails into the main mass of the distribution.
  *
- *Spread: Changes the average distance from the mean, making the graph wider and shorter. Moves "mass" from the center to the tail. It's basically standard deviation, but named funny because FC codebase.
+ *Spread: Changes the average distance from the mean, making the graph wider and shorter. Moves "mass" from the center to the tail. It's basically standard deviation, but named funny because FC codebase. Changing this can have dramatic effects. It's advised to keep this at or below 0.1 for usual height generation.
  *
  *limitMult: A clamp, expressed in z-score. (z=1 is one standard dev above mean, for ex.) If it excludes too much of the distribution the other parameters describe, you're going to spend lots of CPU making and throwing away heights. Don't worry about this unless you run into it.
  *
-- 
GitLab


From f911eec53c9cbb0b7d1c5abc03bcdc74290885f3 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Fri, 27 Jul 2018 16:49:19 -0700
Subject: [PATCH 141/189] Update RESS.tw

---
 src/uncategorized/RESS.tw | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 34632f3fc40..37f43f6f95a 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -4149,7 +4149,7 @@ i<<s>> ni<<c>>e," she <<if $activeSlave.trust > 95>>allows<<else>>hurries to add
 May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 
 
-<<case “re hyperpreg stuck”>>
+<<case "re hyperpreg stuck">>
 You are alerted to an issue regarding your  
 	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
 		hyperbroodmother,
@@ -19930,10 +19930,11 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <</link>>
 
 
-<<case “re hyperpreg stuck”>>
+<<case "re hyperpreg stuck">>
 
 <<link "Abuse her">>
-		<<replace "#result">>
+	<<EventNameDelink $activeSlave>>
+	<<replace "#result">>
 You lean against a wall and take a moment to enjoy your slave’s discomfort. Realizing that her <<Master>> is intent to do nothing, she blushes and begins pulling on her belly, attempting to free herself. 
 	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
 		Her innumerable brood are awakened by her exertions and begin to move, testing the thin walls of the womb constraining them and causing her belly to wobble ominously. You count the number of infant feet distinctly outlined against your poor hyperbroodmother’s straining womb. 
@@ -19965,7 +19966,8 @@ you hilt yourself in her pregnant pussy and begin pounding. Her belly distorts b
 <br>
 
 <<link "Fuck her">>
-		<<replace "#result">>
+	<<EventNameDelink $activeSlave>>
+	<<replace "#result">>
 You can’t help but be aroused by the sight of your swollen, helpless slave, and you take off your pants, revealing your erection. The slave’s backward glance falls on your dick and she 
 	<<if $activeSlave.devotion > 95>> 
 		licks her lips, 
@@ -20029,7 +20031,8 @@ You step back, taking one last appreciatively look at your trapped slave, then c
 	<</link>>
 <br>
 <<link "Try the “Butter Strategy”">>
-		<<replace "#result">>
+	<<EventNameDelink $activeSlave>>
+	<<replace "#result">>
 You ponder her predicament for a moment before settling on a solution. You procure an industrial sized jar of curative laced moisturizing butter--specially formulated to ease the strain of hypermassive pregnancy--and explain to your slave that, to free her, you’re going to need to completely cover her in it so that she can squeeze through. 
 	<<if $activeSlave.devotion > 95>> 
 		She grins at you and then huffs, pretending to be put off by the idea. 
-- 
GitLab


From c798006f1da0a70d69fc2a6e90851dab0199d13e Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Fri, 27 Jul 2018 17:57:49 -0700
Subject: [PATCH 142/189] Update RESS.tw

---
 src/uncategorized/RESS.tw | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 37f43f6f95a..595ca2c51ca 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -4166,12 +4166,12 @@ You are alerted to an issue regarding your
 	<</if>> 
 the poor slave has gotten lodged in the doorway exiting 
 
-	<<if ($slaves[$i].livingRules == "luxurious")>> 
-		the dormitory where she sleeps.
+	<<if ($activeSlave.livingRules == "luxurious")>> 
+		her room.
 	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
 		her suite.
 	<<else>> 
-		her room.
+		the dormitory where she sleeps.
 	<</if>>
 The menials assigned to care for her have been struggling for several weeks to fit her through this particular doorway, but refrained from informing you, as their ward 
 	<<if $activeSlave.devotion > 95>> 
@@ -4189,12 +4189,12 @@ The menials assigned to care for her have been struggling for several weeks to f
 You make a mental note to punish her caretakers and then set out to see her predicament for yourself. 
 <br><br>
 The sight that greets you when you arrive is equal parts incredible and amusing. En route to the baths, the slave attempted to exit 
-	<<if ($slaves[$i].livingRules == "luxurious")>> 
-		the dormitory where she sleeps 
+	<<if ($activeSlave.livingRules == "luxurious")>> 
+		her room
 	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
 		her suite
 	<<else>> 
-		her room
+		the dormitory where she sleeps
 	<</if>>
 backwards and, as a result, you have a glorious view of her 
 	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
-- 
GitLab


From d7b38657c24ae5cfa46d82605aeae2b29b73d1d2 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Fri, 27 Jul 2018 18:01:49 -0700
Subject: [PATCH 143/189] Update RESS.tw

---
 src/uncategorized/RESS.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 595ca2c51ca..cf8110bc9c0 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -4194,7 +4194,7 @@ The sight that greets you when you arrive is equal parts incredible and amusing.
 	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
 		her suite
 	<<else>> 
-		the dormitory where she sleeps
+		the dorm
 	<</if>>
 backwards and, as a result, you have a glorious view of her 
 	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
-- 
GitLab


From 3f91ac93b8240cf893336473b421f48d56d1ef26 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 27 Jul 2018 22:26:46 -0400
Subject: [PATCH 144/189] cleanup

---
 devNotes/twine JS.txt                 |   8 +
 src/js/eventSelectionJS.tw            |   8 +-
 src/uncategorized/RESS.tw             |   4 +-
 src/uncategorized/reHyperpregStuck.tw | 255 --------------------------
 4 files changed, 16 insertions(+), 259 deletions(-)
 delete mode 100644 src/uncategorized/reHyperpregStuck.tw

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index c3ac4749366..5b4c6d41a63 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -5414,6 +5414,10 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 	}
 
+	if (eventSlave.bellyPreg >= 300000) {
+		State.variables.RESSevent.push("hyperpreg stuck");
+	}
+
 	if(eventSlave.prestige == 0) {
 		if(eventSlave.devotion > 50) {
 			if(eventSlave.trust > 50) {
@@ -6560,6 +6564,10 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 	}
 
+	if (eventSlave.bellyPreg >= 300000) {
+		State.variables.RESSevent.push("hyperpreg stuck");
+	}
+
 	if(eventSlave.relationship == 4) {
 		if(eventSlave.devotion > 20) {
 			if(eventSlave.trust > 20) {
diff --git a/src/js/eventSelectionJS.tw b/src/js/eventSelectionJS.tw
index 9616c60240a..37fc354db1a 100644
--- a/src/js/eventSelectionJS.tw
+++ b/src/js/eventSelectionJS.tw
@@ -1753,8 +1753,8 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 	}
 
-	if (eventSlave.bellyPreg >= 300000 || (eventSlave.broodmother >= 1 && eventSlave.bellyPreg >= 14000)) {
-		State.variables.RESSevent.push("re hyperpreg stuck");
+	if (eventSlave.bellyPreg >= 300000) {
+		State.variables.RESSevent.push("hyperpreg stuck");
 	}
 
 	if(eventSlave.prestige == 0) {
@@ -2903,6 +2903,10 @@ if(eventSlave.fetish != "mindbroken") {
 		}
 	}
 
+	if (eventSlave.bellyPreg >= 300000) {
+		State.variables.RESSevent.push("hyperpreg stuck");
+	}
+
 	if(eventSlave.relationship == 4) {
 		if(eventSlave.devotion > 20) {
 			if(eventSlave.trust > 20) {
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index cf8110bc9c0..ecdb6256915 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -4149,7 +4149,7 @@ i<<s>> ni<<c>>e," she <<if $activeSlave.trust > 95>>allows<<else>>hurries to add
 May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 
 
-<<case "re hyperpreg stuck">>
+<<case "hyperpreg stuck">>
 You are alerted to an issue regarding your  
 	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
 		hyperbroodmother,
@@ -19930,7 +19930,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <</link>>
 
 
-<<case "re hyperpreg stuck">>
+<<case "hyperpreg stuck">>
 
 <<link "Abuse her">>
 	<<EventNameDelink $activeSlave>>
diff --git a/src/uncategorized/reHyperpregStuck.tw b/src/uncategorized/reHyperpregStuck.tw
deleted file mode 100644
index 6e494c7d831..00000000000
--- a/src/uncategorized/reHyperpregStuck.tw
+++ /dev/null
@@ -1,255 +0,0 @@
-:: re hyperpreg stuck [nobr]
-
-
-<<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check", $activeSlave = $eventSlave>>
-
-
-
-You are alerted to an issue regarding your  
-	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
-		hyperbroodmother,
-	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
-		broodmother,
-	<<else>> 
-		debilitatingly pregnant slave, 
-	<</if>>
-<<EventNameLink $activeSlave>>. It seems, 
-	<<if $pregAccessibility == 1>> 
-		despite updating your penthouse to accommodate bellies wider than a standard doorway, 
-	<<else>> 
-		since you have not yet updated your penthouse to accommodate bellies wider than standard doorways, 
-	<</if>> 
-the poor slave has gotten lodged in the doorway exiting 
-
-	<<if ($slaves[$i].livingRules == "luxurious")>> 
-		the dormitory where she sleeps.
-	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
-		her suite.
-	<<else>> 
-		her room.
-	<</if>>
-The menials assigned to care for her have been struggling for several weeks to fit her through this particular doorway, but refrained from informing you, as their ward 
-	<<if $activeSlave.devotion > 95>> 
-		did not wish to worry you. 
-	<<elseif $activeSlave.devotion > 50>> 
-		was concerned you would worry. 
-	<<elseif $activeSlave.devotion > 20>> 
-		was concerned how you would react. 
-	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
-		feared how you would react. 
-	<<elseif ($activeSlave.trust < -50)>> 
-		was terrified of how you might respond. 
-	<<else>> argued you couldn’t be trusted. 
-	<</if>> 
-You make a mental note to punish her caretakers and then set out to see her predicament for yourself. 
-
-<br><br>
-
-The sight that greets you when you arrive is equal parts incredible and amusing. En route to the baths, the slave attempted to exit 
-	<<if ($slaves[$i].livingRules == "luxurious")>> 
-		the dormitory where she sleeps 
-	<<elseif ($activeSlave.ID == $HeadGirl.ID) && ($HGSuite == 1)>>
-		her suite
-	<<else>> 
-		her room
-	<</if>>
-backwards and, as a result, you have a glorious view of her 
-	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
-		mind boggling, room filling belly 
-	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
-		massive, brood swollen belly 
-	<<else>> 
-		inhumanly pregnant belly 
-	<</if>> 
-squeezed painfully by the inadequate doorway and framing the attractive rear view of the rest of her body, including her 
-	<<if $activeSlave.butt > 5>>
-		debilitatlingly huge ass cheeks.
-	<<elseif $activeSlave.butt > 2>>
-		plush ass. 
-	<<else>> 
-		cute little ass.
-	<</if>>
-
-<br><br>
-	
-She cranes her neck, glancing over her shoulder to give you a pleading look.
-
-<br><br>
-
-	<span id="result">
-	<<link "Abuse her">>
-		<<replace "#result">>
-You lean against a wall and take a moment to enjoy your slave’s discomfort. Realizing that her <<Master>> is intent to do nothing, she blushes and begins pulling on her belly, attempting to free herself. 
-	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
-		Her innumerable brood are awakened by her exertions and begin to move, testing the thin walls of the womb constraining them and causing her belly to wobble ominously. You count the number of infant feet distinctly outlined against your poor hyperbroodmother’s straining womb. 
-	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
-		With a groan of effort, the broodmother manages to pull her belly slightly further out through the doorway, but, in the effort, only really manages to wedge it more firmly. It bulges ominously. 
-	<<else>> 
-		The massively pregnant slave’s belly clutches in a false contraction and she pulls several inches further out through the doorframe before it expands again, leaving her even more hopelessly stuck
-	<</if>>
-
-<br><br>
-
-	<<if !canTalk($activeSlave)>> 
-		She moans and rubs up and down what little she can reach of her belly while looking back at you with more urgency. It’s clear she is in severe distress.
-	<<else>> 
-		“<<Master>>,” she says through clenched teeth. “Please.”
-	<</if>>
-
-<br><br>
-
-You judge that sufficient time has passed and move forward. 
-	<<if $activeSlave.butt > 5>> 
-		Wading in between her huge ass cheeks
-	<<elseif $activeSlave.butt > 2>> 
-		Grabbing a handful of one generous ass cheek,
-	<<else>> 
-		Slapping a pert ass cheek,
-	<</if>> 
-you hilt yourself in her pregnant pussy and begin pounding. Her belly distorts back and forth under your vigorous ministrations before, with a “pop,” belly, slave, and owner go tumbling through the doorway. She yelps in @@.gold;shock@@ and @@.red;pain@@ as her belly smacks the ground and the sound of her voice, coupled with the feeling of jolting up and down on top of your slave’s abused gut, sends you over the edge. You ejaculate into her fertile, wanting pussy and then slide off of her to instruct your servants to widen the door before they carry her to her duties for the day.
-
-<br>
-
-<<set $activeSlave.health -= 20, $activeSlave.trust -= 20>>
-
-
-		<</replace>>
-	<</link>>
-
-<br>
-
-<<link "Fuck her">>
-		<<replace "#result">>
-You can’t help but be aroused by the sight of your swollen, helpless slave, and you take off your pants, revealing your erection. The slave’s backward glance falls on your dick and she 
-	<<if $activeSlave.devotion > 95>> 
-		licks her lips, 
-			<<if $activeSlave.amp == 1>> 
-				wiggling the stumps of her legs and swiveling her hips to give you a clear angle at her hungry pussy. 
-			<<else>> 
-				spreading her legs and revealing more of her massive underbelly while angling her wanting pussy at the perfect angle for fucking.
-			<</if>> 
-	<<elseif $activeSlave.devotion > 50>> 
-		blushes, swiveling her hips to give you easy access to her pussy. 
-	<<elseif $activeSlave.devotion > 20>> 
-		blushes and leans into her belly, knowing what to expect.
-	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
-		moans nervously. 
-	<<elseif ($activeSlave.trust < -50)>> 
-		yelps, turning away from you and clenching her eyes shut as her 
-		<<if $activeSlave.amp == 1>> 
-			stumps push toward each other, clearly trying (and failing) to conceal her pussy. 
-		<<else>> 
-			legs instinctively clench together to hide her pussy.
-		<</if>>
-. 
-	<<else>> 
-		snorts dersively despite her helplessness. 
-	<</if>>
-
-<br><br>
-
-You step forward and run an appreciative hand over the surface of her belly. Her womb is packed so full that the outline of her squirming children is obvious under her stretched-thin flesh. She groans at your touch, clearly in some distress, and you promise her that you’ll free her once you’ve finished up. 
-	<<if $activeSlave.devotion > 95>> 
-		The slave is clearly too aroused by your touch to hear what you’re saying and leans back into you, stretching against her tortured belly to nibble at your ear.
-	<<elseif $activeSlave.devotion > 50>> 
-		The slave says nothing, but wiggles her ass against your hips, making it clear she’s ready.
-	<<elseif $activeSlave.devotion > 20>> 
-		You can see tears streaming down the slave’s face from the discomfort she’s experiencing, but she nods that she’s ready.
-	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
-		The slave cries and begs you to finish quickly and help her before she bursts. 
-	<<elseif ($activeSlave.trust < -50)>> 
-		The shock of contact with your body causes the terrified slave’s skin to contract, as if she’s trying to pull away despite her current reality, and her only response to your promise is sobbing. 
-	<<else>> 
-		The slave 
-			<<if !canTalk($activeSlave)>> 
-				motions for you to
-			<<else>> 
-				responds by telling you to 
-			<</if>>
-		just fuck her already and let her move on with her day.
-	<</if>>
-You let your hand wander downward and then push down on the base of her clit with finger and thumb, making her whimper, before removing your hand and burying your cock inside her. As you fuck her, her poor, tortured belly wobbles against the constraining door frame and the frame itself groans in protest. 
-She grinds in rhythm to your pistoning until the back and forth movement of her sloshing tummy overpowers her efforts and sends her careening back and forth between its oceanic movements and your less than tender ministrations. The sensation of fucking a woman who is literally a slave to the motion of her own womb drives you over the edge and you pull out, ejaculating all over her 
-	<<if $activeSlave.butt > 5>> 
-		enveloping ass cleavage. 
-	<<elseif $activeSlave.butt > 2>> 
-		fat, waiting ass cheeks. 
-	<<else>> 
-		pert ass.
-	<</if>>
-
-<br><br>
-
-You step back, taking one last appreciatively look at your trapped slave, then call a team of menials to remove the door from its foundation to free her, instructing them to also continually widen the door as necessary to attempt to prevent future incidents. Though your slave is extracated uninjured, your decision to use her before saving her leaves the slave @@.gold;trusting you less@@.
-
-<br>
-
-<<set $activeSlave.health -= 10, $activeSlave.trust -= 10>>
-
-		<</replace>>
-	<</link>>
-
-<br>
-
-<<link "Try the “Butter Strategy”">>
-		<<replace "#result">>
-You ponder her predicament for a moment before settling on a solution. You procure an industrial sized jar of curative laced moisturizing butter--specially formulated to ease the strain of hypermassive pregnancy--and explain to your slave that, to free her, you’re going to need to completely cover her in it so that she can squeeze through. 
-	<<if $activeSlave.devotion > 95>> 
-		She grins at you and then huffs, pretending to be put off by the idea. 
-	<<elseif $activeSlave.devotion > 50>> 
-		She quirks an eyebrow, then smiles, clearly intrigued.
-	<<elseif $activeSlave.devotion > 20>> 
-		She nods, happy to hear you’ve considered a way to free her without causing her undue harm.
-	<<elseif ($activeSlave.trust < -20) && ($activeSlave.devotion > -10)>> 
-		She had seemed uneasy when you first described your idea, but seems to resign herself to it once you finish your description. 
-	<<elseif ($activeSlave.trust < -50)>> 
-		The wide eyed slave nods as you describe your idea, clearly hoping you’ll free her as quickly as possible so that she can get away from you. 
-	<<else>> 
-		She laughs derisively at you after you describe your idea, then motions for you to get on with it.
-	<</if>> 
-You move toward her and slather a generous helping of the stuff over her back and 
-	<<if $activeSlave.butt > 5>> 
-		couch smothering ass,
-	<<elseif $activeSlave.butt > 2>> 
-		fat ass cheeks,
-	<<else>>
-		petite ass,
-	<</if>> 
-for the sake of “being thorough.” You then move forward, covering the parts of her belly you can reach from behind and taking special care to 
-	<<if ($activeSlave.boobs >= 20000)>> 
-		massage the soft butter into every inch of her colossal tits, noting with satisfaction as her distant nipples,stuck on the other side of the doorway with the bulk of her room filling breasts, harden with arousal. 
-	<<elseif ($activeSlave.boobs >= 12000)>> 
-		massage the soft butter into her massive tits as they push up between the arch of the doorway and her bulging belly. You note with satisfaction as her nipples harden with arousal. 
-	<<elseif ($activeSlave.boobs >= 7000)>> 
-		massage the soft butter into her monstrous tits, enjoying the struggle it takes to heft each butterslick, glistening watermelon with both hands. You note with satisfaction as her nipples harden with arousal. 
-	<<elseif ($activeSlave.boobs >= 3000)>> 
-		massage the soft butter into each of her huge, headsized tits. Your slave cranes her head back a bit to avoid being smothered by her own breasts as you work the butter into them, but you can tell she’s aroused by what you’re doing--her nipples have turned hard as rocks. 
-	<<elseif ($activeSlave.boobsImplant > 250)>> 
-		massage the soft butter into her fat, fake titties, noting with satisfaction as her nipples harden with arousal. 
-	<<elseif ($activeSlave.boobs >= 650)>> 
-		massage the soft butter into her big tits, noting with satisfaction as her nipples harden with arousal. 
-	<<elseif ($activeSlave.boobs >= 300)>> 
-		massage the soft butter into her small, girlish chest, noting with satisfaction as her nipples harden with arousal.
-	<</if>>
-
-<br><br>
-
-Satisfied with your covering of your slave’s back half, you then resolve to work on her front. Getting down on your hands and knees, you crawl through the narrow triangle of space between the base of your slave’s massive belly, the floor, and the doorway. It’s a tight squeeze, and you take longer than you need to in order to enjoy the sound of your slave groaning as you squeeze up against her sweaty, buttered up belly, but you eventually make it through. Taking generous handfuls of butter, you slick up the front half of your slave’s stomach, starting at the flattened nub of her pressure obliterated belly button and slowly working your way up to the round oval of baby packed flesh being constricted by the doorway. 
-
-<br><br>
-
-With your slave’s body dripping with the thick moisturizer, you call out to her to start pulling her belly through the doorway, pushing your body up against her stomach to help push. You didn’t bother to strip your clothes while buttering her body and, as you crush up against her and heave, again and again, against the sheer mass of her abdomen, you can’t help but get aroused by the way your greasy clothes rub between your body and hers with each motion. At first, her belly is so firmly lodged that it doesn’t move, but momentum eventually builds up and, with an audible “pop,” the poor baby laden breeder finally breaks free from her containment, falling onto her back and pulling you with her into an absurd, buttery mass of flailing limbs and giggles. You take some time to flip her into a position where she won’t be crushed by the weight of her own womb, and then take some more time to enjoy the fruits of your labors.
-
-<br><br>
-
- Once finished, you allow your servants to carry your @@.hotpink;thoroughly satisfied slave@@ to the baths and instruct them to continuously expand the doorway, as necessary, to attempt to prevent her getting stuck again.
-
-<br>
-
-<<set $activeSlave.devotion += 10>>
-
-
-		<</replace>>
-	<</link>>
-
-	</span>
\ No newline at end of file
-- 
GitLab


From c0c2f88896d4d801e803d777d92e9a43fcd5c585 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 27 Jul 2018 22:28:27 -0400
Subject: [PATCH 145/189] notes

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index e2ef6334bbe..9da28d8774b 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,14 @@
 
 0.10.7.1-0.5.x
 
+7/27/2018
+
+	7
+	-fixes
+	-more widget to JS conversion
+	-lots more implementation of pronouns
+	-anon's hpreg event
+
 7/26/2018
 
 	6
-- 
GitLab


From 3440ab6e751b452b40a5ed8cb67290d9f3f2ce8c Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 27 Jul 2018 23:58:36 -0400
Subject: [PATCH 146/189] fix to pit slaves

---
 src/uncategorized/slaveSummary.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/uncategorized/slaveSummary.tw b/src/uncategorized/slaveSummary.tw
index 7c4b714933c..6086e044fde 100644
--- a/src/uncategorized/slaveSummary.tw
+++ b/src/uncategorized/slaveSummary.tw
@@ -510,7 +510,7 @@
 	<<elseif (_Slave.indentureRestrictions > 1)>>
 		<br>//_Slave.slaveName's indenture forbids fighting.//
 		<<continue>>
-	<<elseif (_Slave.breedingMark != 1 || $propOutcome == 0)>>
+	<<elseif _Slave.breedingMark == 1 && $propOutcome == 1>>
 		<br>//_Slave.slaveName may not participate in combat//
 		<<continue>>
 	<<else>>
-- 
GitLab


From 0229c3fad0b50051e9459f930531de96b0917609 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sat, 28 Jul 2018 02:04:14 -0400
Subject: [PATCH 147/189] JSify nationalityToRace

---
 devNotes/twine JS.txt                 | 4 ++++
 src/SecExp/secExpSmilingMan.tw        | 2 +-
 src/js/slaveGenerationJS.tw           | 4 ++++
 src/uncategorized/generateXXSlave.tw  | 2 +-
 src/uncategorized/generateXYSlave.tw  | 2 +-
 src/utility/slaveGenerationWidgets.tw | 5 -----
 6 files changed, 11 insertions(+), 8 deletions(-)
 delete mode 100644 src/utility/slaveGenerationWidgets.tw

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 5b4c6d41a63..616717cbfb9 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -23341,6 +23341,10 @@ window.generateAge = function generateAge(slave) {
 	slave.pubertyAgeXY = V.potencyAge;
 };
 
+window.nationalityToRace = function nationalityToRace(slave) {
+	slave.race = hashChoice(setup.raceSelector[slave.nationality] || setup.raceSelector[""]);
+};
+
 window.nationalityToName = function nationalityToName(slave) {
 	const V = State.variables;
 
diff --git a/src/SecExp/secExpSmilingMan.tw b/src/SecExp/secExpSmilingMan.tw
index fd847619047..c8b619c4b28 100644
--- a/src/SecExp/secExpSmilingMan.tw
+++ b/src/SecExp/secExpSmilingMan.tw
@@ -324,7 +324,7 @@
 		<<set $activeSlave.intelligenceImplant = 1>>
 		<<run nationalityToName($activeSlave)>>
 		<<run nationalityToAccent($activeSlave)>>
-		<<NationalityToRace $activeSlave>>
+		<<run nationalityToRace($activeSlave)>>
 		<<set $activeSlave.slaveSurname = "Yamadera">>
 		<<set $activeSlave.birthSurname = "Yamadera">>
 		<<set $activeSlave.skin = "pale">>
diff --git a/src/js/slaveGenerationJS.tw b/src/js/slaveGenerationJS.tw
index 1b520f2ab5a..e672c692d16 100644
--- a/src/js/slaveGenerationJS.tw
+++ b/src/js/slaveGenerationJS.tw
@@ -44,6 +44,10 @@ window.generateAge = function generateAge(slave) {
 	slave.pubertyAgeXY = V.potencyAge;
 };
 
+window.nationalityToRace = function nationalityToRace(slave) {
+	slave.race = hashChoice(setup.raceSelector[slave.nationality] || setup.raceSelector[""]);
+};
+
 window.nationalityToName = function nationalityToName(slave) {
 	const V = State.variables;
 
diff --git a/src/uncategorized/generateXXSlave.tw b/src/uncategorized/generateXXSlave.tw
index 0cebdfeca14..18694ad202c 100644
--- a/src/uncategorized/generateXXSlave.tw
+++ b/src/uncategorized/generateXXSlave.tw
@@ -101,7 +101,7 @@
 		<<set $activeSlave.nationality = $fixedNationality>>
 		<<set $fixedNationality = 0>>
 	<</if>>
-	<<NationalityToRace $activeSlave>>
+	<<run nationalityToRace($activeSlave)>>
 	/* Corporate slavegen with race selection */
 	<<if passage() == "Corporate Market" && ($captureUpgradeRace != "unselected") && ($captureUpgradeRace != "none")>> 
 		<<if $captureUpgradeRace == "mixed race">>
diff --git a/src/uncategorized/generateXYSlave.tw b/src/uncategorized/generateXYSlave.tw
index 95c8903516a..30a4c243eda 100644
--- a/src/uncategorized/generateXYSlave.tw
+++ b/src/uncategorized/generateXYSlave.tw
@@ -107,7 +107,7 @@
 		<<set $activeSlave.nationality = $fixedNationality>>
 		<<set $fixedNationality = 0>>
 	<</if>>
-	<<NationalityToRace $activeSlave>>
+	<<run nationalityToRace($activeSlave)>>
 	/* Corporate slavegen with race selection */
 	<<if passage() == "Corporate Market" && ($captureUpgradeRace != "unselected") && ($captureUpgradeRace != "none")>>
 		<<if $captureUpgradeRace == "mixed race">>
diff --git a/src/utility/slaveGenerationWidgets.tw b/src/utility/slaveGenerationWidgets.tw
deleted file mode 100644
index 00d19cda1b2..00000000000
--- a/src/utility/slaveGenerationWidgets.tw
+++ /dev/null
@@ -1,5 +0,0 @@
-:: slave generation widgets [nobr widget]
-
-<<widget "NationalityToRace">>
-<<set $args[0].race = hashChoice(setup.raceSelector[$args[0].nationality] || setup.raceSelector[""])>>
-<</widget>>
-- 
GitLab


From e0254c03c781133b76b2faf084d9d90c9db3f50e Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sat, 28 Jul 2018 02:13:08 -0400
Subject: [PATCH 148/189] Sanity check fixes

---
 src/uncategorized/saLongTermEffects.tw | 5 -----
 src/uncategorized/saServeThePublic.tw  | 2 +-
 2 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 67587d15a0f..e7963ff7fe3 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -3049,13 +3049,8 @@
 				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
-<<<<<<< HEAD
 		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $slaves[$i].devotion > 75>>
 			$He's been marked to be the bearer of your offspring and is growing larger by the day with your child. $He is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
-=======
-		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $slaves[$i].devotion > 75>>
-			She's been marked to be the bearer of your offspring and is growing larger by the day with your child. She is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
->>>>>>> 7c151cf7d5f947331cc64a6097fa3db9575ff5df
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index f3432bd5b0e..867ed764ec0 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -533,7 +533,7 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 		<<elseif $slaves[$j].relationship > 4>>
 			slave wife
 		<</if>>
-		$slaves[$j].slaveName is also serving the public and they work well toget$him.
+		$slaves[$j].slaveName is also serving the public and they work well together.
 	<</if>>
 <<elseif $slaves[$i].relationship == -1>>
 	$He relies on citizens' desire to fuck $him for emotional support, making $him an excellent, if occasionally disturbing, slut.
-- 
GitLab


From d12e0a0c7ce1d1d6996c1aa2d0e716a990b59b35 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Sat, 28 Jul 2018 01:45:04 -0500
Subject: [PATCH 149/189] Commiting

---
 src/init/setupVars.tw                  |  86 ++--
 src/npc/databases/cheatmodeDatabase.tw |  12 +-
 src/uncategorized/reNickname.tw        | 562 ++++++++++++-------------
 src/utility/descriptionWidgetsFlesh.tw |   4 +-
 4 files changed, 332 insertions(+), 332 deletions(-)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index 648abf6c856..03b3bd474da 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -1466,60 +1466,60 @@ Then pick _namePool.random(), or display those names as possible choices, or do
 
 
 <<set setup.ArcologyNamesSupremacistWhite = ["Avalon", "Buyan", "Caucasia", "Cockaigne", "Europa", "Hy-Brasil", "The Old Dominion", "Thule", "White Might"]>>
-<<set setup.ArcologyNamesSupremacistAsian = ["Eastern Sun", "Jade Empire", "Kalapa", "Mahoroba", "Penglai", "Shambhala", "Shangri-La", "The Celestial Temple", "Tian"]>>
-<<set setup.ArcologyNamesSupremacistLatina = ["Alcázar de Segovia", "Alhambra", "Aztlan", "Ciudad Blanca", "Hispania", "La Sagrada", "Quivira", "Santa Bárbara", "Sierra de la Plata", "Tayopa", "Tenochtitlan"]>>
-<<set setup.ArcologyNamesSupremacistMiddleEastern = ["Arabia", "Iram", "Mesopotamia", "New Cairo", "The Caliphate", "Ubar", "Wabar", "Wāḳwāḳ", "Zerzura"]>>
-<<set setup.ArcologyNamesSupremacistBlack = ["Azania", "Benin", "Great Zimbabwe", "Houssa", "Liberia", "Nubia", "Pan-Africa", "Rhapta", "The Promised Land", "Timbuktu", "United Africa", "Zazamanc"]>>
-<<set setup.ArcologyNamesSupremacistIndoAryan = ["Alaka", "Āryāvarta", "Dvārakā", "Indus Valley", "New New Delhi", "Saket", "Swarga Loka", "Ujjain", "Vindhya"]>>
-<<set setup.ArcologyNamesSupremacistPacificIslander = ["Burotu", "Hawaiki", "Iolani Palace", "Kibu", "Maui", "Mokoia", "Rapa Nui"]>>
-<<set setup.ArcologyNamesSupremacistMalay = ["Brunei", "Malacca", "Maphilindo", "Melayu Raya", "Patani", "Srivijaya", "Tanah Melayu"]>>
-<<set setup.ArcologyNamesSupremacistAmerindian = ["Akilineq", "Cahokia", "Caral", "Chicora", "Norumbega", "Paititi", "Porcupine", "Saguenay", "The Confederated Tribes"]>>
-<<set setup.ArcologyNamesSupremacistSouthernEuropean = ["Arcadia", "Delphi", "Elysian Fields", "Mediterranea", "New Athens", "New Rome", "Olympus", "Siglo de Oro"]>>
-<<set setup.ArcologyNamesSupremacistSemitic = ["Dilmun", "Garden of Eden", "Israel", "Jericho", "Judah", "Olam Ha-Ba", "Ophir", "Tarshish", "The Fifth Temple", "The Levant", "The Promised Land", "Zion"]>>
-<<set setup.ArcologyNamesSupremacistMixedRace = ["Fusion", "Hybrid Vigor", "Meltingpot", "Mosaic", "The Mixer", "The Swirl"]>>
+<<set setup.ArcologyNamesSupremacistAsian = ["Eastern Sun", "Jade Empire", "Kalapa", "Mahoroba", "Penglai", "Shambhala", "Shangri-La", "Sinosphere", "The Celestial Temple", "Tian", "Zhonghua Minzu"]>>
+<<set setup.ArcologyNamesSupremacistLatina = ["Alcázar de Segovia", "Alhambra", "Aztlan", "Chicanismo", "Ciudad Blanca", "Hispania", "Hispanismo", "La Sagrada", "Quivira", "Santa Bárbara", "Sierra de la Plata", "Tayopa", "Tenochtitlan"]>>
+<<set setup.ArcologyNamesSupremacistMiddleEastern = ["Arabia", "Fertile Crescent", "Iram", "Kerma", "Mesopotamia", "New Cairo", "Pan-Arabia", "Sinai", "The Caliphate", "Ubar", "Wabar", "Wāḳwāḳ", "Zerzura"]>>
+<<set setup.ArcologyNamesSupremacistBlack = ["Azania", "Benin", "Door of Return", "Great Zimbabwe", "Houssa", "Liberia", "Négritude", "Nubia", "Pan-Africa", "Rhapta", "The Promised Land", "Timbuktu", "United Africa", "Zazamanc"]>>
+<<set setup.ArcologyNamesSupremacistIndoAryan = ["Alaka", "Āryāvarta", "Dvārakā", "Indus Valley", "Kuru Kingdom", "Muziris", "New New Delhi", "Saket", "Swadeshi", "Swarga Loka", "Tamralipta", "The Subcontinent", "Ujjain", "Vedic Empire", "Vindhya"]>>
+<<set setup.ArcologyNamesSupremacistPacificIslander = ["Aotearoa", "Austronesia", "Burotu", "Hawai'i", "Hawaiki", "Iolani Palace", "Kibu", "King Country", "Maui", "Melanesia", "Micronesia", "Mokoia", "Oceania", "Polynesia", "Rapa Nui"]>>
+<<set setup.ArcologyNamesSupremacistMalay = ["Austronesia", "Brunei", "Golden Peninsula", "Kebangkitan Nasional", "Ketuanan Melayu", "Malacca", "Malaya", "Maphilindo", "Melayu Raya", "Patani", "Srivijaya", "Suvarnadvipa", "Tanah Melayu"]>>
+<<set setup.ArcologyNamesSupremacistAmerindian = ["Akilineq", "Amerindia", "Aquadoctan", "Cahokia", "Caral", "Chicora", "Cusco", "Indigenismo", "Norumbega", "Paititi", "Porcupine", "Red Power", "Saguenay", "The Confederated Tribes"]>>
+<<set setup.ArcologyNamesSupremacistSouthernEuropean = ["Arcadia", "Delphi", "Elysian Fields", "Mare Nostrum", "Mediterranea", "New Athens", "New Rome", "Olympus", "Papal Supremacy", "Risorgimento", "Siglo de Oro", "Spazio Vitale"]>>
+<<set setup.ArcologyNamesSupremacistSemitic = ["Arimathea", "Dilmun", "Garden of Eden", "Israel", "Jericho", "Judah", "Judea", "Olam Ha-Ba", "Ophir", "Paradisus Judaeorum", "Tarshish", "The Fifth Temple", "The Levant", "The Promised Land", "Zion"]>>
+<<set setup.ArcologyNamesSupremacistMixedRace = ["Desegregation", "Exogamy", "Fusion", "Heterogeneity", "Hybrid Vigor", "Integration", "Kaleidoscope", "Meltingpot", "Mosaic", "Multination", "Plaçage", "Pluralism", "Polychrome", "Salad Bowl", "The Mixer", "The Swirl"]>>
 <<set setup.ArcologyNamesSubjugationistWhite = ["Anticolonialism One", "Decolonization", "Kaffa", "Ladoga", "Mayocide", "Reparations", "Saint-Domingue", "The World Turned Upside Down", "Uffern", "WASP Spray", "White Flight"]>>
-<<set setup.ArcologyNamesSubjugationistAsian = ["Diyu", "Hiroshima", "Opium Den", "Pearl of the Orient", "The East India Company", "Youdu"]>>
+<<set setup.ArcologyNamesSubjugationistAsian = ["Diyu", "Hiroshima", "Opium Den", "Pearl of the Orient", "Shakee", "The East India Company", "Youdu"]>>
 <<set setup.ArcologyNamesSubjugationistLatina = ["Annual", "Banana Republic", "Bisbee", "Border Wall", "Fort Veracruz", "Los Conquistados", "Los Gatos", "Porvenir"]>>
-<<set setup.ArcologyNamesSubjugationistMiddleEastern = ["Constantinople", "La Reconquista", "Shu'ubiyya", "Vlad's Castle"]>>
-<<set setup.ArcologyNamesSubjugationistBlack = ["Dixie", "Hetgwauge", "Middle Passage", "Rubber Farm", "The Plantation", "The Projects"]>>
-<<set setup.ArcologyNamesSubjugationistIndoAryan = ["Naraka", "Sepoy Mutiny", "The East India Company", "Trade Fort", "UCIL Plant"]>>
-<<set setup.ArcologyNamesSubjugationistPacificIslander = ["Cargo Cult", "Castle Bravo", "Great Māhele", "Moro Castle"]>>
-<<set setup.ArcologyNamesSubjugationistMalay = ["Batavia", "Bencoolen", "East Indies", "Eastern Emporium", "Fort Marlborough", "Gimokodan", "Pulo Prabang", "Soerabaja"]>>
-<<set setup.ArcologyNamesSubjugationistAmerindian = ["Adlivun", "Fort Laramie", "Manifest Destiny", "Sand Creek", "Shobari Waka", "The Rez", "Trail of Tears", "Wounded Knee"]>>
-<<set setup.ArcologyNamesSubjugationistSouthernEuropean = ["Al-Andalus", "Black Legend", "Carthage", "Istanbul", "Parish Prison", "The Foibe"]>>
-<<set setup.ArcologyNamesSubjugationistSemitic = ["Auschwitz", "Exodus", "Gehenna", "New Canaan", "Sheol", "Solomon's Lament"]>>
-<<set setup.ArcologyNamesSubjugationistMixedRace = ["Apartheid", "Bloodlines", "Monoculture", "Purity", "Segregation"]>>
-<<set setup.ArcologyNamesGenderRadicalist = ["Bacchanalia", "Dionysia", "Gomorrah", "Liberalia", "Saturnalia", "Sodom", "The Rosebud", "Thebes"]>>
-<<set setup.ArcologyNamesGenderFundamentalist = ["The Arbor", "The Center", "The Core", "The Essence", "The Flower", "The Jewel", "The Pearl", "The Rose", "The Source"]>>
-<<set setup.ArcologyNamesPaternalist = ["Asylum", "Glory", "Haven", "New Springfield", "Paternalis", "Sanctuary", "Sanctum", "The Sanctuary", "Welfare"]>>
-<<set setup.ArcologyNamesDegradationist = ["Damnation", "Golgotha", "Hell", "Hell on Earth", "Misery", "Slaughterhouse", "The Pit", "The Tower"]>>
-<<set setup.ArcologyNamesBodyPurist = ["Au Naturel", "Elysium", "New Eden", "Purity", "The Ark", "The Repository", "Walden"]>>
-<<set setup.ArcologyNamesTransformationFetishist = ["Bimboland", "Implantation Station", "Plasticland", "Silicone Valley", "The Dollhouse", "The Hospital"]>>
-<<set setup.ArcologyNamesYouthPreferentialist = ["Dick U.", "Fuck High", "Sex College", "Sorority Row", "Sunnyside", "Teenage Wasteland", "Youth"]>>
-<<set setup.ArcologyNamesMaturityPreferentialist = ["Cougar Town", "Fine Wine", "Maturity", "MILF Heights", "MILFtown", "Park Avenue Tower", "Shady Acres"]>>
-<<set setup.ArcologyNamesSlimnessEnthusiast = ["Skinny Bop", "Slim City", "The Island", "The Thinning", "Upskirt", "Virginland"]>>
-<<set setup.ArcologyNamesAssetExpansionist = ["Blow-Up", "Boobs Tower", "The Bouncy Castle", "The Expanse", "The Mounds", "Twin Peaks"]>>
-<<set setup.ArcologyNamesPastoralist = ["Abundance", "Bounty", "Cornucopia", "Dairy Farm", "God's Country", "Greener Pastures", "Land of Plenty", "Pasturelands", "Plenty", "The Ranch"]>>
-<<set setup.ArcologyNamesPhysicalIdealist = ["Athletica", "Iron Pumps", "Midgard", "Muscle Beach", "Muscle Shoals", "Skid Row", "The Gymnasium", "Themyscira", "Valhalla"]>>
-<<set setup.ArcologyNamesChattelReligionist = ["City on a Hill", "Eden", "Heaven on Earth", "Heaven", "Holiness", "Pilgrim's Progress", "Salvation", "The Holy City", "The Light"]>>
-<<set setup.ArcologyNamesRomanRevivalist = ["Aquileia", "Byzantium", "Capua", "Carthago Nova", "Eboracum", "Elysian Fields", "Leptis Magna", "Londinium", "Lutetia", "Mediolanum", "Neapolis", "Nicomedia", "Nova Roma", "Ostia", "Ravenna", "Salernum", "Sirmium", "The City of the Seven Hills", "Vindobona"]>>
+<<set setup.ArcologyNamesSubjugationistMiddleEastern = ["Constantinople", "Frontier Wire", "La Reconquista", "Shu'ubiyya", "Vlad's Castle", "Yalova Peninsula"]>>
+<<set setup.ArcologyNamesSubjugationistBlack = ["Crow's Nest", "Dixie", "Hetgwauge", "Middle Passage", "Rubber Farm", "The Plantation", "The Projects"]>>
+<<set setup.ArcologyNamesSubjugationistIndoAryan = ["Jallianwala Bagh", "Naraka", "Qissa Khwani Bazaar", "Sepoy Mutiny", "The East India Company", "Trade Fort", "UCIL Plant"]>>
+<<set setup.ArcologyNamesSubjugationistPacificIslander = ["Cargo Cult", "Castle Bravo", "Great Māhele", "Moro Castle", "Sapwuahfik", "The Leap", "Waterloo Creek"]>>
+<<set setup.ArcologyNamesSubjugationistMalay = ["Batavia", "Bencoolen", "East Indies", "Eastern Emporium", "Fort Marlborough", "Gimokodan", "Pulo Prabang", "Rawagede", "Soerabaja"]>>
+<<set setup.ArcologyNamesSubjugationistAmerindian = ["Adlivun", "Fort Laramie", "Fort Mystic", "Manifest Destiny", "Mazocoba", "Sand Creek", "Shobari Waka", "The Rez", "Trail of Tears", "Wounded Knee"]>>
+<<set setup.ArcologyNamesSubjugationistSouthernEuropean = ["Al-Andalus", "Black Legend", "Carthage", "Istanbul", "Parish Prison", "Smyrna", "The Foibe"]>>
+<<set setup.ArcologyNamesSubjugationistSemitic = ["Auschwitz", "Exodus", "Farhud", "Gehenna", "New Canaan", "Sheol", "Solomon's Lament", "The Ghetto"]>>
+<<set setup.ArcologyNamesSubjugationistMixedRace = ["Apartheid", "Barriers", "Bloodlines", "Endogamy", "Ghetto Benches", "Homogeneity", "Monochrome", "Monoculture", "One-Drop", "Purity", "Redline", "Segregation", "Separate but Equal", "Separation", "The Divide"]>>
+<<set setup.ArcologyNamesGenderRadicalist = ["Bacchanalia", "Brumalia", "Catamitus", "Crete", "Dionysia", "Gomorrah", "Impudicitia", "Liberalia", "Saturnalia", "Sodom", "The Rosebud", "Thebes", "Vine of Sodom"]>>
+<<set setup.ArcologyNamesGenderFundamentalist = ["The Arbor", "The Center", "The Core", "The Essence", "The Flower", "The Fruit", "The Jewel", "The Lily", "The Origin", "The Pearl", "The Petal", "The Rose", "The Sheath", "The Source"]>>
+<<set setup.ArcologyNamesPaternalist = ["Asylum", "Glory", "Haven", "New Springfield", "Paternalis", "Safety", "Sanctuary", "Sanctum", "The Sanctuary", "Welfare"]>>
+<<set setup.ArcologyNamesDegradationist = ["Damnation", "Degradation", "Golgotha", "Hell", "Hell on Earth", "Misery", "Slaughterhouse", "The Pit", "The Tower"]>>
+<<set setup.ArcologyNamesBodyPurist = ["Au Naturel", "Elysium", "Natural State", "New Eden", "Organics", "Pure Shores", "Purity", "Sanctity", "The Ark", "The Repository", "Walden"]>>
+<<set setup.ArcologyNamesTransformationFetishist = ["Bimboland", "Implantation Station", "Plastic Beach", "Plasticland", "Silicone Valley", "Silicone Zone", "Strained Silicone", "Surgeon Generality", "The Dollhouse", "The Hospital", "Transformation Station"]>>
+<<set setup.ArcologyNamesYouthPreferentialist = ["Dick U.", "Fuck High", "Sex College", "Sorority Row", "Sunnyside", "Teen Spirit", "Teenage Wasteland", "Undergrad Pad", "Youngtown", "Youth"]>>
+<<set setup.ArcologyNamesMaturityPreferentialist = ["Cougar Town", "Experience", "Fine Wine", "Maturity", "MILF Haven", "MILF Heights", "MILFtown", "Park Avenue Tower", "Shady Acres"]>>
+<<set setup.ArcologyNamesSlimnessEnthusiast = ["Lean Scene", "Less Is More", "Skinny Bop", "Skinny Dip", "Slim City", "The Island", "The Skinny", "The Thinning", "Underweight Way", "Upskirt", "Virginland"]>>
+<<set setup.ArcologyNamesAssetExpansionist = ["Asset Holdings", "Blow-Up", "Boobs Tower", "Expansion Chamber", "Expansion Pack", "Tangible Assets", "The Bouncy Castle", "The Expanse", "The Mounds", "Twin Peaks"]>>
+<<set setup.ArcologyNamesPastoralist = ["Abundance", "Bounty", "Bucolica", "Cornucopia", "Dairy Farm", "God's Country", "Greener Pastures", "Land of Plenty", "Pastoral Romance", "Pasturelands", "Plenty", "The Dairy", "The Ranch"]>>
+<<set setup.ArcologyNamesPhysicalIdealist = ["Athletica", "Buffton", "Fitness Center", "Iron Pumps", "Midgard", "Muscle Beach", "Muscle Shoals", "Olympia", "Skid Row", "The Gymnasium", "Themyscira", "Valhalla"]>>
+<<set setup.ArcologyNamesChattelReligionist = ["City on a Hill", "Eden", "Heaven on Earth", "Heaven", "Holiness", "New Covenant", "Pilgrim's Progress", "Salvation", "The Holy City", "The Light", "World to Come"]>>
+<<set setup.ArcologyNamesRomanRevivalist = ["Aquileia", "Byzantium", "Capua", "Carthago Nova", "Eboracum", "Elysian Fields", "Leptis Magna", "Londinium", "Longaricum", "Lutetia", "Mediolanum", "Neapolis", "Nicomedia", "Nova Roma", "Ostia", "Ravenna", "Salernum", "Sirmium", "The City of the Seven Hills", "Vindobona"]>>
 <<set setup.ArcologyNamesAztecRevivalist = ["Acolmiztli", "Azcapotzalco", "Aztlan", "Chicomoztoc", "Ecatepec", "Omeyocan", "Otompan", "Tenochtitlan", "Teotihuacan", "Tepetlaoztoc", "Texcoco", "The Halls of Montezuma", "Tlacopan", "Tlatelolco"]>>
-<<set setup.ArcologyNamesEgyptianRevivalist = ["Aaru", "Abydos", "Akhetaten", "Alexandria", "Amarna", "Avaris", "Bubastis", "Dahshur", "Fustat", "Heliopolis", "Itjtawy", "Leontopolis", "Memphis", "Mendes", "Napata", "Philae", "Rosetta", "Sais", "Sebennytos", "Tanis", "Thebes", "Thinis"]>>
+<<set setup.ArcologyNamesEgyptianRevivalist = ["Aaru", "Abydos", "Akhetaten", "Alexandria", "Amarna", "Avaris", "Bubastis", "Dahshur", "Fustat", "Heliopolis", "Itjtawy", "Leontopolis", "Memphis", "Mendes", "Napata", "Philae", "Pi-Sekhemkheperre", "Rosetta", "Sais", "Sebennytos", "Tanis", "Thebes", "Thinis"]>>
 <<set setup.ArcologyNamesEdoRevivalist = ["Amano-Iwato", "Dejima", "Edo", "Ise", "Kasagiyama", "Kokyo", "Nakatsukuni", "New Kyoto", "New Tokyo", "Odawara", "Onogoro", "Osaka", "Ryūgū-jō", "Sekigahara", "Shimonoseki", "Takama-ga-hara", "Tengoku", "The Imperial Palace", "Ujiyamada", "Yawata", "Yoshino"]>>
-<<set setup.ArcologyNamesArabianRevivalist = ["Alhambra", "Baghdad", "Basra", "Bayt al-Hikma", "Damascus", "Jannah", "Karbala", "Kufa", "Madinat al-Hareer", "Madinat al-Salam", "Madinat al-Yasmin", "Madinat al-Zahra", "Mecca", "Medina", "Samarra", "Tarim"]>>
+<<set setup.ArcologyNamesArabianRevivalist = ["Alhambra", "Baghdad", "Basra", "Bayt al-Hikma", "Cairo", "Córdoba", "Damascus", "El-Mansuriya", "Harran", "Jannah", "Karbala", "Kufa", "Madinat al-Hareer", "Madinat al-Salam", "Madinat al-Yasmin", "Madinat al-Zahra", "Mahdia", "Mecca", "Medina", "Mosul", "Raqqa", "Raqqada", "Samarra", "Tarim"]>>
 <<set setup.ArcologyNamesChineseRevivalist = ["Acheng", "Chengdu", "Dadu", "Datong", "Feng Huang", "Fenghao", "Fusang", "Huangquan", "Huokang", "Jiankang", "Jin Shan", "Jiuquan", "Luoyang", "Mingfu", "Mount Tai", "Qi Lin", "Shangjing", "The Forbidden Palace", "The Middle Kingdom", "Xin Hua", "Xuchang", "Yin", "Yinfu", "Youdu", "Youming", "Zhaoge"]>>
 
 /* pregmod FS */
-<<set setup.ArcologyNamesEugenics = ["Ascension", "Eugenica", "Galton City", "Lebensborn", "Perfection", "Quality", "Second Chance"]>>
+<<set setup.ArcologyNamesEugenics = ["Ascension", "Eugenica", "Galton City", "Germinal Choice", "Improvement", "Lebensborn", "Oneida Community", "Perfection", "Quality", "Reprogenetics", "Second Chance", "Stirpiculture"]>>
 <<set setup.ArcologyNamesRepopulationist = ["Future", "Glorious Mother", "Haven of the Pregnant", "Holders of the Future", "Hope", "Motherhood", "Quantity", "Sacred Womb", "The Womb"]>>
-<<set setup.ArcologyNamesHedonisticDecadence = ["All You Can Eat", "Buffet", "Decadence", "Gluttony", "Hedonism Spot", "Indulgence", "New Wisconsin", "Plumpland", "Sloth", "Stuffedtopia"]>>
-<<set setup.ArcologyNamesCummunism = ["Arscrotzka", "Crusty Cummies", "Cumbria", "Cummins", "Cummunist Russwhore", "Cumstantine", "Cumstantinople", "Da Cumrade", "Free Slave Central", "Jizzakh", "Jizzebel", "Jizzington upon Wank", "Mother Cumtry", "Semen Supreme", "Wankara"]>>
-<<set setup.ArcologyNamesIncestFetishist = ["All in the Family", "East Westermarck", "Familial Embrace", "Family Fortunes", "Family Ties", "Incestral Home", "Oedipal City", "Oeditropolis", "Pure Blood", "Sib City", "Wincest"]>>
+<<set setup.ArcologyNamesHedonisticDecadence = ["All You Can Eat", "Buffet", "Decadence", "Gluttony", "Hedonism Spot", "Indulgence", "New Wisconsin", "Plumpland", "Sloth", "Smörgåsbord", "Stuffedtopia"]>>
+<<set setup.ArcologyNamesCummunism = ["Arscrotzka", "Crusty Cummies", "Cumbria", "Cummins", "Cummunist Russwhore", "Cumstantine", "Cumstantinople", "Da Cumrade", "Free Slave Central", "Jizzakh", "Jizzebel", "Jizzington upon Wank", "Mother Cumtry", "Semen Supreme", "Sperm Banks", "Wankara"]>>
+<<set setup.ArcologyNamesIncestFetishist = ["All in the Family", "Consanguinity", "East Westermarck", "Familial Embrace", "Family Fortunes", "Family Ties", "Incestral Home", "Oedipal City", "Oedipus Complex", "Oeditropolis", "Pure Blood", "Sib City", "Wincest"]>>
 
 
-<<set setup.badWords = ["ass", "bitch", "boob", "butt", "cock", "crap", "cum", "cunny", "cunt", "dick", "fuck", "junk", "piss", "prick", "pussy", "shit", "slave", "slut", "tit", "trash", "whore"]>>
+<<set setup.badWords = ["ass", "bitch", "boob", "butt", "cock", "crap", "cum", "cunny", "cunt", "dick", "fuck", "jizz", "junk", "piss", "prick", "pussy", "shit", "slave", "slut", "tit", "trash", "whore"]>>
 
-<<set setup.badNames = ["Ass Kisser", "Ass Licker", "Ass", "Assfucker", "Asshole", "Bitch", "Cocksucker", "Creep", "Cunt", "Despoiler", "Dick", "Dicksucker", "Dipshit", "Douchebag", "Dumbass", "DumbFuck", "Fucker", "Fuckface", "Fuckhead", "Jackass", "Jerk", "Prick", "Pussy", "Rapist", "Retard", "Ruiner", "Slave", "Slaver", "Slut", "Sodomite", "Traitor", "Trash", "Whore"]>>
+<<set setup.badNames = ["Ass Kisser", "Ass Licker", "Ass", "Assfucker", "Asshole", "Bitch", "Cocksucker", "Creep", "Cunt", "Despoiler", "Dick", "Dicksucker", "Dipshit", "Douchebag", "Dumbass", "DumbFuck", "Fucker", "Fuckface", "Fuckhead", "Jackass", "Jerk", "Motherfucker", "Prick", "Pussy", "Rapist", "Retard", "Ruiner", "Slave", "Slaver", "Slut", "Sodomite", "Traitor", "Trash", "Whore"]>>
 
 <<set setup.harshCollars = [
 	{name: "Tight steel", value: "tight steel"},
diff --git a/src/npc/databases/cheatmodeDatabase.tw b/src/npc/databases/cheatmodeDatabase.tw
index ccaa206d4b5..42eb5e623eb 100644
--- a/src/npc/databases/cheatmodeDatabase.tw
+++ b/src/npc/databases/cheatmodeDatabase.tw
@@ -6,7 +6,7 @@
 <<if $seeDicks != 100>>
 <<set _HS.genes = "XX", _HS.vagina = 2, _HS.ovaries = 1, _HS.vaginalSkill = 100>>
 <<else>>
-<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 4, _HS.balls = 4,  _HS.scrotum = 4, _HS.foreskin = 4, _HS.prostate = 1>>
 <</if>>
 <<AddSlave _HS>>
 <<set $HeadGirl = clone(_HS)>>
@@ -15,7 +15,7 @@
 <<set _HS = clone($activeSlave)>>
 <<set _HS.slaveName = "Cornelia", _HS.birthName = "Cora", _HS.ID = 990001, _HS.relation = "mother", _HS.relationTarget = 990002, _HS.relationship = 4, _HS.relationshipTarget = 990000, _HS.assignment = "whore", _HS.birthWeek = random(0,51), _HS.actualAge = 36, _HS.physicalAge = 36, _HS.visualAge = 36, _HS.ovaryAge = 36, _HS.ageImplant = 1, _HS.health = 10, _HS.devotion = 100, _HS.muscles = 20, _HS.height = 190, _HS.race = "black", _HS.hColor = "black", _HS.pubicHColor = "black", _HS.skin = "dark", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 1200, _HS.boobsImplant = 1000, _HS.areolae = 2, _HS.butt = 5, _HS.buttImplant = 3, _HS.preg = -2, _HS.face = 15, _HS.faceImplant = 65, _HS.lips = 35, _HS.lipsImplant = 10, _HS.anus = 2, _HS.makeup = 1, _HS.nails = 1, _HS.earPiercing = 1, _HS.oralSkill = 100, _HS.analSkill = 100, _HS.whoreSkill = 100, _HS.entertainSkill = 100, _HS.clothes = "a slave gown", _HS.energy = 65, _HS.attrXX = 80, _HS.attrXY = 40, _HS.fetishKnown = 1, _HS.customTat = "A large letter S is branded into the back of her left hand.", _HS.customDesc = "She speaks with the demeaning accent of slaves from the Old South.">>
 <<if $seeDicks != 0>>
-<<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 3, _HS.balls = 1, _HS.prostate = 1>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 3, _HS.balls = 3, _HS.scrotum = 3, _HS.foreskin = 3, _HS.prostate = 1>>
 <<else>>
 <<set _HS.genes = "XX", _HS.vagina = 3, _HS.ovaries = 1>>
 <</if>>
@@ -27,7 +27,7 @@
 <<if $seeDicks != 100>>
 <<set _HS.genes = "XX", _HS.vagina = 1, _HS.ovaries = 1, _HS.vaginalSkill = 35>>
 <<else>>
-<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 2, _HS.balls = 2, _HS.scrotum = 2, _HS.foreskin = 2, _HS.prostate = 1>>
 <</if>>
 <<AddSlave _HS>>
 //_HS.slaveName,//
@@ -37,7 +37,7 @@
 <<if $seeDicks != 100>>
 <<set _HS.genes = "XX", _HS.vagina = 1, _HS.vaginaTat = "bovine patterns", _HS.ovaries = 1, _HS.vaginalSkill = 15>>
 <<else>>
-<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1, _HS.dickTat = "bovine patterns">>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 3, _HS.balls = 3,  _HS.scrotum = 3, _HS.foreskin = 3, _HS.prostate = 1, _HS.dickTat = "bovine patterns">>
 <</if>>
 <<AddSlave _HS>>
 //_HS.slaveName,//
@@ -47,7 +47,7 @@
 <<if $seeDicks != 100>>
 <<set _HS.genes = "XX", _HS.ovaries = 1>>
 <<else>>
-<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1>>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 4, _HS.balls = 4, _HS.scrotum = 4, _HS.foreskin = 4, _HS.prostate = 1>>
 <</if>>
 <<AddSlave _HS>>
 <<set $Bodyguard = clone(_HS)>>
@@ -58,7 +58,7 @@
 <<if $seeDicks != 100>>
 <<set _HS.genes = "XX", _HS.vagina = 1, _HS.vaginaTat = "bovine patterns", _HS.ovaries = 1, _HS.vaginalSkill = 15>>
 <<else>>
-<<set _HS.genes = "XY", _HS.vagina = -1, _HS.prostate = 1, _HS.dickTat = "bovine patterns">>
+<<set _HS.genes = "XY", _HS.vagina = -1, _HS.dick = 5, _HS.balls = 5,  _HS.scrotum = 5, _HS.foreskin = 5, _HS.prostate = 1, _HS.dickTat = "bovine patterns">>
 <</if>>
 <<AddSlave _HS>>
 //and _HS.slaveName.//
diff --git a/src/uncategorized/reNickname.tw b/src/uncategorized/reNickname.tw
index 7b0c7aece2e..c38810ca671 100644
--- a/src/uncategorized/reNickname.tw
+++ b/src/uncategorized/reNickname.tw
@@ -247,19 +247,19 @@
 <<case "nationality">>
 	<<switch $activeSlave.nationality>>
 	<<case "Afghan">>
-		<<set $nickname = either("'Afghan'", "'Afghani'", "'Bactrian'", "'Chai Girl'", "'Kabul'", "'Kandahar'", "'Pashtun'", "'Poppy'", "'Taliban'")>>
+		<<set $nickname = either("'Afghan'", "'Afghani'", "'Bactrian'", "'Chai Girl'", "'Kabul'", "'Kandahar'", "'Pashtun'", "'Peshawar'", "'Poppy'", "'Taliban'")>>
 	<<case "Albanian">>
 		<<set $nickname = either("'Albanian'", "'Durrës'", "'Hoxha'", "'Sejdia'", "'Shiptar'", "'Tirana'")>>
 	<<case "Algerian">>
-		<<set $nickname = either("'Algerian'", "'Algiers'", "'Casbah'", "'Corsair'", "'Djamila'", "'Harki'", "'Hassiba'", "'Pied-Noir'", "'Zhora'")>>
+		<<set $nickname = either("'Algerian'", "'Algiers'", "'Casbah'", "'Corsair'", "'Djamila'", "'Harki'", "'Hassiba'", "'Oran'", "'Pied-Noir'", "'Zhora'")>>
 	<<case "American">>
 		<<set $nickname = either("'American'", "'Amerifat'", "'Burger'", "'California'", "'Chicago'", "'Columbia'", "'Hollywood'", "'Lady Liberty'", "'Lone Star'", "'New York'", "'Septic'", "'Stars & Stripes'", "'Trump'", "'Washington'", "'Yank'", "'Yankee'")>>
 	<<case "Andorran">>
-		<<set $nickname = either("'Andorran'", "'La Vella'", "'Ski Trip'", "'Skossyreff'")>>
+		<<set $nickname = either("'Andorran'", "'La Vella'", "'Les Escaldes'", "'Ski Trip'", "'Skossyreff'")>>
 	<<case "Angolan">>
 		<<set $nickname = either("'Angolan'", "'Cabinda'", "'Huambo'", "'Luanda'", "'Ndongo'")>>
 	<<case "Antiguan">>
-		<<set $nickname = either("'Antiguan'", "'Barbuda'", "'Barbudan'", "'Redonda'", "'St. John's'")>>
+		<<set $nickname = either("'All Saints'", "'Antiguan'", "'Barbuda'", "'Barbudan'", "'Redonda'", "'St. John's'")>>
 	<<case "Argentinian">>
 		<<set $nickname = either("'Argentine'", "'Argentinean'", "'Argentinian'", "'Blanca'", "'Buenos Aires'", "'Evita'", "'Gaucha'", "'Macri'", "'Malvinas'", "'Patagonia'", "'Perón'")>>
 	<<case "Armenian">>
@@ -293,7 +293,7 @@
 	<<case "Bhutanese">>
 		<<set $nickname = either("'Bhutanese'", "'Dragon Queen'", "'Druk'", "'Phuntsholing'", "'Punakha'", "'Thimphu'")>>
 	<<case "Bissau-Guinean">>
-		<<set $nickname = either("'Bissau'", "'Bissau-Guinean'", "'Bolama'", "'Kriol'")>>
+		<<set $nickname = either("'Bissau'", "'Bissau-Guinean'", "'Boe'", "'Bolama'", "'Kriol'")>>
 	<<case "Bolivian">>
 		<<set $nickname = either("'Bolivian'", "'Chuquisaca'", "'La Paz'", "'Santa Cruz'", "'Sucre'", "'Titicaca'")>>
 	<<case "Bosnian">>
@@ -309,7 +309,7 @@
 	<<case "Burkinabé">>
 		<<set $nickname = either("'Burkina Fasan'", "'Burkinabé'", "'Ouagadougou'", "'Sankara'", "'Upper Volta'")>>
 	<<case "Burmese">>
-		<<set $nickname = either("'Bamar'", "'Burma Shave'", "'Burmsese'", "'Burmese Python'", "'Golden Triangle'", "'Myanma'", "'Myanmar'", "'Myanmese'", "'Naypyidaw'", "'Pagan'", "'Rangoon'", "'Yangon'")>>
+		<<set $nickname = either("'Bamar'", "'Burma Shave'", "'Burmsese'", "'Burmese Python'", "'Golden Triangle'", "'Mandalay'", "'Myanma'", "'Myanmar'", "'Myanmese'", "'Naypyidaw'", "'Pagan'", "'Rangoon'", "'Yangon'")>>
 	<<case "Burundian">>
 		<<set $nickname = either("'Bagaza'", "'Bujumbura'", "'Burundian'", "'Heha'", "'Umurundi'")>>
 	<<case "Cambodian">>
@@ -317,7 +317,7 @@
 	<<case "Cameroonian">>
 		<<set $nickname = either("'Biya'", "'Cameroonian'", "'Douala'", "'Yaoundé'")>>
 	<<case "Canadian">>
-		<<set $nickname = either("'Canadian'", "'Canadienne'", "'Canuck'", "'Leaf'", "'Loonie'", "'Maple Syrup'", "'Mountie'", "'Ottawa'", "'Poutine'", "'Quebec'", "'Toronto'", "'Vancouver'", "'Yukon'")>>
+		<<set $nickname = either("'Canadian'", "'Canadienne'", "'Canuck'", "'Leaf'", "'Loonie'", "'Maple Syrup'", "'Montreal'", "'Mountie'", "'Ottawa'", "'Poutine'", "'Quebec'", "'Toronto'", "'Vancouver'", "'Yukon'")>>
 	<<case "Cape Verdean">>
 		<<set $nickname = either("'Cabo Verde'", "'Cap-Vert'", "'Cape Verdean'", "'Praia'")>>
 	<<case "Catalan">>
@@ -327,7 +327,7 @@
 	<<case "Chadian">>
 		<<set $nickname = either("'Chad'", "'Chadian'", "'Habré'", "'N'Djamena'", "'Tombalbaye'")>>
 	<<case "Chilean">>
-		<<set $nickname = either("'Chela'", "'Chilean'", "'Chilote'", "'Pinochet'", "'Santiago'", "'Toya'", "'Valparaíso'")>>
+		<<set $nickname = either("'Chela'", "'Chilean'", "'Chilote'", "'Pinochet'", "'Rota'", "'Santiago'", "'Toya'", "'Valparaíso'")>>
 	<<case "Chinese">>
 		<<set $nickname = either("'Beijing'", "'Chankoro'", "'Chinese'", "'Ching Chong'", "'Chink'", "'Cina'", "'Dim Sum'", "'Dragon'", "'Empress'", "'Great Wall'", "'Guangzhou'", "'Hong Kong'", "'Kowloon'", "'Kung Fu'", "'Lead Toys'", "'Lotus'", "'Macau'", "'Made in China'", "'Manchu'", "'Nanking'", "'Renmenbi'", "'Shanghai'", "'Triad'")>>
 	<<case "Colombian">>
@@ -347,7 +347,7 @@
 	<<case "Cypriot">>
 		<<set $nickname = either("'Atilla'", "'Cyprian'", "'Cypriot'", "'Enosis'", "'Nicosia'")>>
 	<<case "Czech">>
-		<<set $nickname = either("'Bohemian'", "'Bohunk'", "'ÄŒechie'", "'Czech'", "'Czechnya'", "'Kunda'", "'Moravian'", "'Prague'", "'Silesian'", "'Velvet'")>>
+		<<set $nickname = either("'Bohemian'", "'Bohunk'", "'ÄŒechie'", "'Czech'", "'Czechia'", "'Czechnya'", "'Kunda'", "'Moravian'", "'Prague'", "'Silesian'", "'Velvet'")>>
 	<<case "Danish">>
 		<<set $nickname = either("'Copenhagen'", "'Dane'", "'Danish'", "'Danske'", "'Ludertæve'", "'Tøs'", "'Viking'")>>
 	<<case "Djiboutian">>
@@ -357,7 +357,7 @@
 	<<case "Dominiquais">>
 		<<set $nickname = either("'Dominican'", "'Dominiquais'", "'Red Dog'", "'Roseau'", "'Sisserou'")>>
 	<<case "Dutch">>
-		<<set $nickname = either("'Amsterdam'", "'Cheesehead'", "'Dutch'", "'Dutchie'", "'Holland'", "'Netherlander'", "'Slaaf'", "'Slet'")>>
+		<<set $nickname = either("'Amsterdam'", "'Cheesehead'", "'Dutch'", "'Dutchie'", "'Holland'", "'Netherlander'", "'Rotterdam'", "'Slaaf'", "'Slet'", "'The Hague'")>>
 	<<case "East Timorese">>
 		<<set $nickname = either("'27th Province'", "'Dili'", "'East Timorese'", "'Lifau'", "'Maubere'", "'Timor Leste'", "'Timorese'")>>
 	<<case "Ecuadorian">>
@@ -375,13 +375,13 @@
 	<<case "Ethiopian">>
 		<<set $nickname = either("'Addis Ababa'", "'Ethiopian'", "'Mengistu'", "'Oromo'", "'Rastafarian'")>>
 	<<case "Fijian">>
-		<<set $nickname = either("'Feejee'", "'Fijian'", "'Itaukei'", "'Levuka'", "'Suva'", "'Viti Levu'")>>
+		<<set $nickname = either("'Feejee'", "'Fijian'", "'Itaukei'", "'Levuka'", "'Nasinu'", "'Suva'", "'Viti Levu'")>>
 	<<case "Filipina">>
-		<<set $nickname = either("'Filipina'", "'Flip'", "'Manila'", "'Marcos'", "'Philippine'", "'Pinay'", "'Pinoy'", "'Tagalog'")>>
+		<<set $nickname = either("'Baguio'", "'Filipina'", "'Flip'", "'Manila'", "'Marcos'", "'Philippine'", "'Pinay'", "'Pinoy'", "'Quezon'", "'Tagalog'")>>
 	<<case "Finnish">>
 		<<set $nickname = either("'China Swede'", "'Chukhna'", "'Finn'", "'Finnic'", "'Finnish'", "'Finnish Maiden'", "'Finnjävel'", "'Helsinki'", "'Mämmi'", "'Perkele'", "'Saunagirl'", "'Suomi'", "'Winter War'")>>
 	<<case "French">>
-		<<set $nickname = either("'Belle'", "'Charlie Hebdo'", "'Crapaud'", "'Fille de Joie'", "'Français'", "'French'", "'Frenchie'", "'Frog'", "'Gabacha'", "'Gaul'", "'Mademoiselle'", "'Marianne'", "'Marseille'", "'Napoleon'", "'Paris'", "'Surrender Monkey'")>>
+		<<set $nickname = either("'Belle'", "'Charlie Hebdo'", "'Crapaud'", "'Fille de Joie'", "'Français'", "'French'", "'Frenchie'", "'Frog'", "'Gabacha'", "'Gaul'", "'Lyon'", "'Mademoiselle'", "'Marianne'", "'Marseille'", "'Napoleon'", "'Paris'", "'Surrender Monkey'")>>
 	<<case "French Guianan">>
 		<<set $nickname = either("'Cayenne'", "'French Guianan'", "'French Guianese'", "'ÃŽle du Diable'", "'Kourou'")>>
 	<<case "French Polynesian">>
@@ -393,7 +393,7 @@
 	<<case "Georgian">>
 		<<set $nickname = either("'Georgian'", "'Kutaisi'", "'Mepe'", "'Tamar'", "'Tbilisi'")>>
 	<<case "German">>
-		<<set $nickname = either("'Bavarian'", "'Berlin'", "'Bratwurst'", "'Cabbage Eater'", "'Deutsche'", "'Dresden'", "'Fraulein'", "'German'", "'Germania'", "'Jerry'", "'Hitler'", "'Hun'", "'Kraut'", "'Nazi'", "'Nuremberg'", "'Oktoberfest'", "'Piefke'", "'Prussian'", "'Saupreiß'", "'Teuton'", "'Valkyrie'")>>
+		<<set $nickname = either("'Bavarian'", "'Berlin'", "'Bonn'", "'Bratwurst'", "'Cabbage Eater'", "'Deutsche'", "'Dresden'", "'Fraulein'", "'German'", "'Germania'", "'Jerry'", "'Hitler'", "'Hun'", "'Kraut'", "'Nazi'", "'Nuremberg'", "'Oktoberfest'", "'Piefke'", "'Prussian'", "'Saupreiß'", "'Teuton'", "'Valkyrie'")>>
 	<<case "Ghanan">>
 		<<set $nickname = either("'Accra'", "'Akan'", "'Ghanan'", "'Gold Coast'", "'Warrior Queen'", "'Shaman Queen'")>>
 	<<case "Greek">>
@@ -401,9 +401,9 @@
 	<<case "Greenlandic">>
 		<<set $nickname = either("'Eskimo'", "'Godthåb'", "'Greenlander'", "'Greenlandic'", "'Inuit'", "'Nuuk'")>>
 	<<case "Grenadian">>
-		<<set $nickname = either("'Grenada Dove'", "'Grenadian'", "'Urgent Fury'", "'Woolie'")>>
+		<<set $nickname = either("'Grenada Dove'", "'Grenadian'", "'St. George's'", "'Urgent Fury'", "'Woolie'")>>
 	<<case "Guamanian">>
-		<<set $nickname = either("'51st State'", "'Arc Light'", "'Chamorro'", "'Dededo'", "'Guamanian'", "'Hagåtña'", "'Military Base'")>>
+		<<set $nickname = either("'51st State'", "'Arc Light'", "'Chamorro'", "'Dededo'", "'Guamanian'", "'Hagåtña'", "'Military Base'", "'Tamuning'")>>
 	<<case "Guatemalan">>
 		<<set $nickname = either("'Carrera'", "'Chapín'", "'Guatemalan'", "'Mayan'")>>
 	<<case "Guinean">>
@@ -413,11 +413,11 @@
 	<<case "Haitian">>
 		<<set $nickname = either("'Ayisyen'", "'Duvalier'", "'Haitian'", "'Maîtresse'", "'Mama Doc'", "'Maman'", "'Port-au-Prince'", "'Tortuga'", "'Voodoo'")>>
 	<<case "Honduran">>
-		<<set $nickname = either("'Anchuria'", "'Catracha'", "'Honduran'", "'Tegucigalpa'")>>
+		<<set $nickname = either("'Anchuria'", "'Catracha'", "'Comayagua'", "'Comayagüela'", "'Honduran'", "'Tegucigalpa'")>>
 	<<case "Hungarian">>
 		<<set $nickname = either("'Bozgor'", "'Budapest'", "'Hungarian'", "'Kádár'", "'Magyar'", "'Szuka'")>>
 	<<case "I-Kiribati">>
-		<<set $nickname = either("'Bairiki'", "'Butaritari'", "'Gilbert'", "'I-Kiribati'", "'Kiribatian'", "'Tarawa'", "'Tungaru'")>>
+		<<set $nickname = either("'Bairiki'", "'Betio'", "'Butaritari'", "'Gilbert'", "'I-Kiribati'", "'Kiribatian'", "'Tarawa'", "'Tungaru'")>>
 	<<case "Icelandic">>
 		<<set $nickname = either("'Bessastaðir'", "'Fjallkona'", "'Icelander'", "'Icelandic'", "'Penis Museum'", "'Reykjavík'", "'Sagas'", "'Þingvellir'")>>
 	<<case "Indian">>
@@ -433,13 +433,13 @@
 	<<case "Israeli">>
 		<<set $nickname = either("'God's Chosen'", "'Hebrew'", "'Israeli'", "'Israelite'", "'Jaffa'", "'Jerusalem'", "'Levantine'", "'Tel Aviv'", "'Merchant'", "'Oven Dodger'", "'Shiksa'", "'Sharmuta'", "'Shekels'", "'Srulik'", "'Tel Aviv'", "'Zio'", "'Zionist'")>>
 	<<case "Italian">>
-		<<set $nickname = either("'Bologna'", "'Eytie'", "'Florence'", "'Greaseball'", "'Italia Turrita'", "'Italian'", "'Latin'", "'Mafia'", "'Mussolini'", "'Napoli'", "'Renaissance'", "'Rome'", "'Salami'", "'Sicilian'", "'Spaghetti'", "'Terrone'", "'Wop'")>>
+		<<set $nickname = either("'Bologna'", "'Eytie'", "'Florence'", "'Greaseball'", "'Italia Turrita'", "'Italian'", "'Latin'", "'Mafia'", "'Milan'", "'Mussolini'", "'Napoli'", "'Renaissance'", "'Rome'", "'Salami'", "'Sicilian'", "'Spaghetti'", "'Terrone'", "'Wop'")>>
 	<<case "Ivorian">>
 		<<set $nickname = either("'Abidjan'", "'Baoulé'", "'Houphouët-Boigny'", "'Ivorian'", "'Ivory'", "'Yamoussoukro'")>>
 	<<case "Jamaican">>
 		<<set $nickname = either("'Arawak'", "'Jamaican'", "'Jamdown'", "'Jamrock'", "'Kingston'", "'Kush'", "'Port Royal'", "'Rasta'", "'Reggae'", "'Rock'", "'West Indies'", "'Xaymaca'", "'Yardie'")>>
 	<<case "Japanese">>
-		<<set $nickname = either("'Anime'", "'Banzai'", "'Bishoujo'", "'Fukushima'", "'Geisha Girl'", "'Hello Kitty'", "'Hirohito'", "'Hiroshima'", "'Hokkaido'", "'Ichiban'", "'Jap'", "'Japanese'", "'Kamikaze'", "'Kawasaki'", "'Kyoto'", "'Kyushu'", "'Nagano'", "'Nagasaki'", "'Nip'", "'Nipponese'", "'Osaka'", "'Sushi'", "'Tempura'", "'Tokyo'", "'Wasabi'", "'Xiao Riben'", "'Yakuza'", "'Yamaha'", "'Yamato Nadeshiko'")>>
+		<<set $nickname = either("'Anime'", "'Banzai'", "'Bishoujo'", "'Fukushima'", "'Geisha Girl'", "'Hello Kitty'", "'Hirohito'", "'Hiroshima'", "'Hokkaido'", "'Ichiban'", "'Jap'", "'Japanese'", "'Kamikaze'", "'Kawasaki'", "'Kyoto'", "'Kyushu'", "'Nagano'", "'Nagasaki'", "'Nip'", "'Nipponese'", "'Osaka'", "'Sushi'", "'Tempura'", "'Tokyo'", "'Wasabi'", "'Xiao Riben'", "'Yakuza'", "'Yamaha'", "'Yamato Nadeshiko'", "'Yokohama'")>>
 	<<case "Jordanian">>
 		<<set $nickname = either("'Amman'", "'Edomite'", "'Hashemite'", "'Jordanian'", "'Mansaf'", "'Moab'", "'Petra'")>>
 	<<case "Kazakh">>
@@ -449,13 +449,13 @@
 	<<case "Kittitian">>
 		<<set $nickname = either("'Basseterre'", "'Kittitian'", "'Liamuiga'", "'Nevis'", "'Nevisian'")>>
 	<<case "Korean">>
-		<<set $nickname = either("'Dokdo'", "'Gangnam'", "'K-Pop'", "'Kimchi'", "'Korean'", "'Nida'", "'Pyongyang'", "'Samsung'", "'Seoul'")>>
+		<<set $nickname = either("'Busan'", "'Dokdo'", "'Gangnam'", "'K-Pop'", "'Kimchi'", "'Korean'", "'Nida'", "'Pyongyang'", "'Samsung'", "'Seoul'")>>
 	<<case "Kosovan">>
 		<<set $nickname = either("'Blackbird'", "'Kosovan'", "'Kosovar'", "'Metohija'", "'Pristina'")>>
 	<<case "Kurdish">>
-		<<set $nickname = either("'Ararat'", "'Iraqi'", "'Kurd'", "'Kurdish'", "'Mahabad'")>>
+		<<set $nickname = either("'Ararat'", "'Hawler'", "'Iraqi'", "'Kurd'", "'Kurdish'", "'Kurdistani'", "'Mahabad'", "'Rojava'", "'Zaza'")>>
 	<<case "Kuwaiti">>
-		<<set $nickname = either("'Burgan'", "'Gulf War'", "'Kuwaiti'", "'Sabah'")>>
+		<<set $nickname = either("'Burgan'", "'Failaka'", "'Gulf War'", "'Kadhima'", "'Kuwaiti'", "'Sabah'")>>
 	<<case "Kyrgyz">>
 		<<set $nickname = either("'Bishkek'", "'Forty'", "'Kyrgyz'", "'Kyrgyzstani'", "'Manas'", "'Osh'")>>
 	<<case "Laotian">>
@@ -471,7 +471,7 @@
 	<<case "a Liechtensteiner">>
 		<<set $nickname = either("'Liechtensteiner'", "'Rhine'", "'Schaan'", "'Vaduz'")>>
 	<<case "Lithuanian">>
-		<<set $nickname = either("'Lithuanian'", "'Lugan'", "'Memel'", "'Mindaugas'", "'Pagan'", "'Vilnus'")>>
+		<<set $nickname = either("'Kaunas'", "'Lithuanian'", "'Lugan'", "'Memel'", "'Mindaugas'", "'Pagan'", "'Vilnus'")>>
 	<<case "Luxembourgian">>
 		<<set $nickname = either("'Bureaucrat'", "'Luxembourger'", "'Luxembourgian'", "'Luxembourgish'", "'Passerelle'")>>
 	<<case "Macedonian">>
@@ -481,15 +481,15 @@
 	<<case "Malawian">>
 		<<set $nickname = either("'Banda'", "'Lilongwe'", "'Malawian'", "'Nyasaland'", "'Warm Heart of Africa'", "'Zomba'")>>
 	<<case "Malaysian">>
-		<<set $nickname = either("'Kuala Lumpur'", "'Malingsia'", "'Malay Girl'", "'Malaya'", "'Malaysian'", "'Pirate'")>>
+		<<set $nickname = either("'Kuala Lumpur'", "'Malingsia'", "'Malay Girl'", "'Malaya'", "'Malaysian'", "'Pirate'", "'Putrajaya'")>>
 	<<case "Maldivian">>
 		<<set $nickname = either("'Dhivehi'", "'Dhoni'", "'Gayoom'", "'Maldivian'", "'Malé'")>>
 	<<case "Malian">>
 		<<set $nickname = either("'Azawad'", "'Bamako'", "'Malian'", "'Mandinka'", "'Mansa Musa'", "'Sahel'", "'Timbuktu'", "'Trans-Sahara'")>>
 	<<case "Maltese">>
-		<<set $nickname = either("'George Cross'", "'Maltese'", "'Maltese Falcon'", "'Melita'", "'Valletta'")>>
+		<<set $nickname = either("'Birkirkara'", "'George Cross'", "'Maltese'", "'Maltese Falcon'", "'Melita'", "'Valletta'")>>
 	<<case "Marshallese">>
-		<<set $nickname = either("'Bikini Atoll'", "'Enewetak'", "'Leroij'", "'Majuro'", "'Marshall'", "'Marshallese'", "'Stick Chart'")>>
+		<<set $nickname = either("'Bikini Atoll'", "'Ebeye'", "'Enewetak'", "'Leroij'", "'Majuro'", "'Marshall'", "'Marshallese'", "'Stick Chart'")>>
 	<<case "Mauritanian">>
 		<<set $nickname = either("'Coppolani'", "'Daddah'", "'Mauritanian'", "'Nouakchott'")>>
 	<<case "Mauritian">>
@@ -497,7 +497,7 @@
 	<<case "Mexican">>
 		<<set $nickname = either("'Azteca'", "'Beaner'", "'Burrito'", "'Cartel'", "'Chiquita'", "'Fence Hopper'", "'Headless'", "'Juarez'", "'Malinche'", "'Mamacita'", "'Mexican'", "'Senorita'", "'Sinaloa'", "'Taco'", "'Tijuana'", "'Wetback'")>>
 	<<case "Micronesian">>
-		<<set $nickname = either("'Hailstone'", "'Micronesian'", "'Palikir'", "'Truk'", "'Weno'", "'Yap'")>>
+		<<set $nickname = either("'Hailstone'", "'Kolonia'", "'Micronesian'", "'Palikir'", "'Truk'", "'Weno'", "'Yap'")>>
 	<<case "Moldovan">>
 		<<set $nickname = either("'Bessarabia'", "'Chișinău'", "'Molda'", "'Moldovan'")>>
 	<<case "Monégasque">>
@@ -505,9 +505,9 @@
 	<<case "Mongolian">>
 		<<set $nickname = either("'Death Worm'", "'Genghis Khan'", "'Mongol'", "'Mongolian'", "'Ulaanbaatar'", "'Yumjaagiin'")>>
 	<<case "Montenegrin">>
-		<<set $nickname = either("'Black Mountain'", "'Crna Gora'", "'Montenegrin'", "'Podgorica'")>>
+		<<set $nickname = either("'Black Mountain'", "'Cetinje'", "'Crna Gora'", "'Montenegrin'", "'Podgorica'")>>
 	<<case "Moroccan">>
-		<<set $nickname = either("'Casablanca'", "'Marrakesh'", "'Moroccan'", "'Rabat'")>>
+		<<set $nickname = either("'Casablanca'", "'Fez'", "'Marrakesh'", "'Moroccan'", "'Rabat'")>>
 	<<case "Mosotho">>
 		<<set $nickname = either("'Basutoland'", "'Maseru'", "'Moshoeshoe'", "'Mosotho'")>>
 	<<case "Motswana">>
@@ -537,15 +537,15 @@
 	<<case "Norwegian">>
 		<<set $nickname = either("'Black Metal'", "'Kuksuger'", "'Ludder'", "'Norse'", "'Norsk'", "'Norwegian'", "'Oil Hog'", "'Ola'", "'Oslo'")>>
 	<<case "Omani">>
-		<<set $nickname = either("'Dhofar'", "'Empty Quarter'", "'Ibadi'", "'Khanjar'", "'Muscat'", "'Omani'")>>
+		<<set $nickname = either("'Dhofar'", "'Empty Quarter'", "'Ibadi'", "'Khanjar'", "'Muscat'", "'Omani'", "'Salalah'")>>
 	<<case "Pakistani">>
-		<<set $nickname = either("'Indus'", "'Islamabad'", "'Karachi'", "'Lahore'", "'Paki'", "'Pakistani'")>>
+		<<set $nickname = either("'Indus'", "'Islamabad'", "'Karachi'", "'Lahore'", "'Pak'", "'Paki'", "'Pakistani'")>>
 	<<case "Palauan">>
 		<<set $nickname = either("'Koror'", "'Ngerulmud'", "'Palauan'", "'Peleliu'")>>
 	<<case "Palestinian">>
-		<<set $nickname = either("'Gaza'", "'Hamas'", "'Intifada'", "'Jerusalem'", "'Palestinian'", "'Pallywood'", "'Ramallah'", "'West Bank'")>>
+		<<set $nickname = either("'Gaza'", "'Hamas'", "'Hebron'", "'Intifada'", "'Jerusalem'", "'Palestinian'", "'Pallywood'", "'Ramallah'", "'West Bank'")>>
 	<<case "Panamanian">>
-		<<set $nickname = either("'Balboa'", "'Canalera'", "'Istmeña'", "'Noriega'", "'Pana'", "'Panama Canal'", "'Panamanian'", "'Zonian'")>>
+		<<set $nickname = either("'Balboa'", "'Canalera'", "'Colón'", "'Istmeña'", "'Noriega'", "'Pana'", "'Panama Canal'", "'Panamanian'", "'Zonian'")>>
 	<<case "Papua New Guinean">>
 		<<set $nickname = either("'Bougainville'", "'Papua'", "'Papua New Guinean'", "'Port Moresby'")>>
 	<<case "Paraguayan">>
@@ -553,21 +553,21 @@
 	<<case "Peruvian">>
 		<<set $nickname = either("'Incan'", "'Lima'", "'Lorcha'", "'Perucha'", "'Peruvian'", "'Trujillo'", "'Zampoña'")>>
 	<<case "Polish">>
-		<<set $nickname = either("'Hussar'", "'Kraków'", "'Kurwa'", "'Polack'", "'Pole'", "'Polish'", "'Polonia'", "'Polski'", "'Pshek'", "'Warsaw'")>>
+		<<set $nickname = either("'Hussar'", "'Kraków'", "'Kurwa'", "'Łódź'", "'Lublin'", "'Polack'", "'Pole'", "'Polish'", "'Polonia'", "'Polski'", "'Pshek'", "'Warsaw'")>>
 	<<case "Portuguese">>
 		<<set $nickname = either("'Bunda'", "'Carnation'", "'Estado Novo'", "'Lisbon'", "'Portagee'", "'Portuguese'", "'Tuga'")>>
 	<<case "Puerto Rican">>
-		<<set $nickname = either("'51st State'", "'Boricua'", "'Nuyorican'", "'P.R.'", "'Puerto Rican'", "'Puertorriqueña'", "'San Juan'", "'West Side Story'")>>
+		<<set $nickname = either("'51st State'", "'Boricua'", "'Nuyorican'", "'P.R.'", "'Ponce'", "'Puerto Rican'", "'Puertorriqueña'", "'San Juan'", "'West Side Story'")>>
 	<<case "Qatari">>
 		<<set $nickname = either("'Al Jazeera'", "'Cadara'", "'Doha'", "'Qatari'")>>
 	<<case "Romanian">>
 		<<set $nickname = either("'Bucharest'", "'Ceaușescu'", "'Dracula'", "'Gypsy'", "'Impaler'", "'Orphan'", "'Roma'", "'Romanian'", "'Transylvanian'", "'Vlad'")>>
 	<<case "Russian">>
-		<<set $nickname = either("'Bolshevik'", "'Cabbage Eater'", "'Commie'", "'Kacap'", "'Katsap'", "'Mafiya'", "'Moscow'", "'Moskal'", "'Red Banner'", "'Russian'", "'Russkie'", "'Saint Petersburg'", "'Shlyukha'", "'Siberian Kitten'", "'Sickle & Hammer'", "'Slav'", "'Soviet'", "'Stalin'", "'Suchka'", "'Suka'", "'Tovarish'", "'Tsaritsa'", "'Vodka'")>>
+		<<set $nickname = either("'Bolshevik'", "'Cabbage Eater'", "'Commie'", "'Kacap'", "'Katsap'", "'Mafiya'", "'Moscow'", "'Moskal'", "'Red Banner'", "'Rosuke'", "'Russian'", "'Russkie'", "'Saint Petersburg'", "'Shlyukha'", "'Siberian Kitten'", "'Sickle & Hammer'", "'Slav'", "'Soviet'", "'Stalin'", "'Suchka'", "'Suka'", "'Tovarish'", "'Tsaritsa'", "'Vodka'")>>
 	<<case "Rwandan">>
 		<<set $nickname = either("'Habyarimana'", "'Hotel Rwanda'", "'Kigali'", "'Rwandan'", "'Rwandese'")>>
 	<<case "Sahrawi">>
-		<<set $nickname = either("'Abdelaziz'", "'El-Aaiún'", "'Moroccan'", "'Sahraouian'", "'Sahrawi'", "'Tifariti'", "'Western Saharan'")>>
+		<<set $nickname = either("'Abdelaziz'", "'El-Aaiún'", "'Laayoune'", "'Moroccan'", "'Sahraouian'", "'Sahrawi'", "'Sahrawian'", "'Tifariti'", "'Western Saharan'")>>
 	<<case "Saint Lucian">>
 		<<set $nickname = either("'Castries'", "'Helen of the West Indies'", "'Saint Lucian'", "'Lucia'")>>
 	<<case "Salvadoran">>
@@ -575,11 +575,11 @@
 	<<case "Sammarinese">>
 		<<set $nickname = either("'Dogana'", "'Most Serene'", "'Saint Marinus'", "'Sammarinese'", "'San Marinese'", "'Three Towers'")>>
 	<<case "Samoan">>
-		<<set $nickname = either("'Apia'", "'Navigator'", "'Samoan'", "'Wrestler'")>>
+		<<set $nickname = either("'Apia'", "'Navigator'", "'Samoan'", "'Vaitele'", "'Wrestler'")>>
 	<<case "São Toméan">>
-		<<set $nickname = either("'Cocoa'", "'Príncipe'", "'Roças'", "'Santomean'", "'São Toméan'")>>
+		<<set $nickname = either("'Cocoa'", "'Príncipe'", "'Roças'", "'Santomean'", "'São Tomé'", "'São Toméan'")>>
 	<<case "Saudi">>
-		<<set $nickname = either("'Al Qaeda'", "'Burqa'", "'Mecca'", "'Riyadh'", "'Sandy'", "'Saudi'", "'Saudi Arabian'")>>
+		<<set $nickname = either("'Al Qaeda'", "'Burqa'", "'Jeddah'", "'Mecca'", "'Riyadh'", "'Sandy'", "'Saudi'", "'Saudi Arabian'")>>
 	<<case "Scottish">>
 		<<set $nickname = either("'Braveheart'", "'Edinburgh'", "'Glasgow'", "'Hadrian'", "'Jock'", "'Lass'", "'Ned'", "'Nessie'", "'Scot'", "'Scotswoman'", "'Scottish'", "'Teuchter'", "'Unicorn'")>>
 	<<case "Senegalese">>
@@ -601,27 +601,27 @@
 	<<case "Somali">>
 		<<set $nickname = either("'Black Hawk Down'", "'Mogadishu'", "'Skinnie'", "'Somali'", "'Somalian'", "'The Captain Now'")>>
 	<<case "South African">>
-		<<set $nickname = either("'Afrikaner'", "'Apartheid'", "'Boer'", "'Cape Town'", "'Johannesburg'", "'Mandela'", "'Saffer'", "'Shaka'", "'South African'", "'Springbok'", "'Vuvuzela'")>>
+		<<set $nickname = either("'Afrikaner'", "'Apartheid'", "'Bloemfontein'", "'Boer'", "'Cape Town'", "'Durban'", "'Johannesburg'", "'Mandela'", "'Pretoria'", "'Saffer'", "'Shaka'", "'South African'", "'Springbok'", "'Vuvuzela'")>>
 	<<case "South Sudanese">>
-		<<set $nickname = either("'Anyanya'", "'Juba'", "'Nilotic'", "'Nuba'", "'South Sudanese'", "'Sudd'")>>
+		<<set $nickname = either("'Anyanya'", "'Juba'", "'Nilotic'", "'Nuba'", "'South Sudanese'", "'Sudd'", "'Yei'")>>
 	<<case "Spanish">>
 		<<set $nickname = either("'Barcelona'", "'Castellana'", "'Castilian'", "'Español'", "'Franco'", "'Gallega'", "'Jamon'", "'Madrid'", "'Monja'", "'Peninsular'", "'Senora'", "'Siesta'", "'Spaniard'", "'Spanish'", "'Toreadora'", "'Xarnega'")>>
 	<<case "Sri Lankan">>
-		<<set $nickname = either("'Ceylon'", "'Colombo'", "'Kotte'", "'Sri Lankan'", "'Tamil'")>>
+		<<set $nickname = either("'Ceylon'", "'Colombo'", "'Kandy'", "'Kotte'", "'Sri Lankan'", "'Tamil'")>>
 	<<case "Sudanese">>
 		<<set $nickname = either("'Darfur'", "'Gordon's Revenge'", "'Khartoum'", "'Nubian'", "'Omdurman'", "'Sudanese'")>>
 	<<case "Surinamese">>
-		<<set $nickname = either("'Bouterse'", "'Paramaribo'", "'Surinam'", "'Surinamese'")>>
+		<<set $nickname = either("'Bouterse'", "'Lelydorp'", "'Paramaribo'", "'Surinam'", "'Surinamese'")>>
 	<<case "Swazi">>
-		<<set $nickname = either("'Eswatini'", "'Lobamba'", "'Mbabane'", "'Swazi'")>>
+		<<set $nickname = either("'Eswatini'", "'Lobamba'", "'Manzini'", "'Mbabane'", "'Swati'", "'Swazi'")>>
 	<<case "Swedish">>
-		<<set $nickname = either("'Ikea'", "'Norse'", "'Stockholm'", "'Swede'", "'Sweden Yes'", "'Swedish'")>>
+		<<set $nickname = either("'Gothenburg'", "'Ikea'", "'Norse'", "'Stockholm'", "'Swede'", "'Sweden Yes'", "'Swedish'")>>
 	<<case "Swiss">>
-		<<set $nickname = either("'Alpine'", "'Banker'", "'Geneva'", "Helvetia'", "'Neutral'", "'Numbered Account'", "'Schlampe'", "'Swiss'", "'Swiss Miss'", "'Zurich'")>>
+		<<set $nickname = either("'Alpine'", "'Banker'", "'Bern'", "'Geneva'", "Helvetia'", "'Neutral'", "'Numbered Account'", "'Schlampe'", "'Swiss'", "'Swiss Miss'", "'Zürich'")>>
 	<<case "Syrian">>
 		<<set $nickname = either("'Aleppo'", "'Assad'", "'Damascus'", "'Syrian'")>>
 	<<case "Taiwanese">>
-		<<set $nickname = either("'Chiang'", "'Formosa'", "'Kuomintang'", "'Taipei'", "'Taiwanese'")>>
+		<<set $nickname = either("'Chiang'", "'Formosa'", "'Kuomintang'", "'Taichung'", "'Taipei'", "'Taiwanese'")>>
 	<<case "Tajik">>
 		<<set $nickname = either("'Dushanbe'", "'Rahmon'", "'Sarazm'", "'Tajik'", "'Tajikistani'")>>
 	<<case "Tanzanian">>
@@ -631,19 +631,19 @@
 	<<case "Tibetan">>
 		<<set $nickname = either("'Chinese'", "'Dalai Lama'", "'Himalayan'", "'Lhasa'", "'Tibetan'")>>
 	<<case "Togolese">>
-		<<set $nickname = either("'Eyadéma'", "'Lomé'", "'Togoland'", "'Togolese'")>>
+		<<set $nickname = either("'Eyadéma'", "'Lomé'", "'Sokodé'", "'Togoland'", "'Togolese'")>>
 	<<case "Tongan">>
-		<<set $nickname = either("'Friendly'", "'Nuku'alofa'", "'Tongan'", "'Tu'i Tonga'")>>
+		<<set $nickname = either("'Friendly'", "'Neiafu'", "'Nuku'alofa'", "'Tongan'", "'Tu'i Tonga'")>>
 	<<case "Trinidadian">>
 		<<set $nickname = either("'Chaguanas'", "'Port of Spain'", "'San Fernando'", "'Tobago'", "'Tobagonian'", "'Trini'", "'Trinbagonian'", "'Trinidadian'")>>
 	<<case "Tunisian">>
-		<<set $nickname = either("'Barbary'", "'Bourguiba'", "'Carthaginian'", "'Ifriqiya'", "'Punic'", "'Tunis'", "'Tunisian'")>>
+		<<set $nickname = either("'Barbary'", "'Bourguiba'", "'Carthaginian'", "'Ifriqiya'", "'Punic'", "'Sfax'", "'Tunis'", "'Tunisian'")>>
 	<<case "Turkish">>
 		<<set $nickname = either("'Ankara'", "'ErdoÄŸan'", "'Harem'", "'Istanbul'", "'Kebab'", "'Ottoman'", "'Turk'", "'Turkette'", "'Turkish'", "'Turksmell'", "'Young Turk'")>>
 	<<case "Turkmen">>
-		<<set $nickname = either("'Ashgabat'", "'Karakum'", "'Merv'", "'Niyazov'", "'Turkmen'")>>
+		<<set $nickname = either("'Ashgabat'", "'Karakum'", "'Merv'", "'Niyazov'", "'Turkmen'", "'Turkmenistani'")>>
 	<<case "Tuvaluan">>
-		<<set $nickname = either("'Ellice'", "'Funafuti'", "'Nui'", "'Tuvaluan'")>>
+		<<set $nickname = either("'Asau'", "'Ellice'", "'Funafuti'", "'Nui'", "'Tuvaluan'")>>
 	<<case "Ugandan">>
 		<<set $nickname = either("'Amin'", "'Buganda'", "'Bushbaby'", "'Cannibal'", "'Kampala'", "'Museveni'", "'Ugandan'")>>
 	<<case "Ukrainian">>
@@ -661,14 +661,14 @@
 	<<case "Vincentian">>
 		<<set $nickname = either("'Grenadine'", "'Kingstown'", "'Vincentian'", "'Vincy'")>>
 	<<case "Yemeni">>
-		<<set $nickname = either("'Khat'", "'Queen of the Desert'", "'Red Sea Pirate'", "'Sana'a'", "'Sheba'", "'Yemeni'")>>
+		<<set $nickname = either("'Aden'", "'Khat'", "'Queen of the Desert'", "'Red Sea Pirate'", "'Sana'a'", "'Sheba'", "'Yemeni'")>>
 	<<case "Zairian">>
 		<<set $nickname = either("'Bongo'", "'Congolese'", "'Diamond'", "'Ebola'", "'Katanga'", "'Kinshasa'", "'Leopold'", "'Zairean'", "'Zairian'")>>
 	<<case "Zambian">>
 		<<set $nickname = either("'Livingstone'", "'Lusaka'", "'Victoria Falls'", "'Zambian'")>>
 	<<case "Zimbabwean">>
 		<<if $activeSlave.race == "white">>
-			<<set $nickname = either("'Altena'", "'Bush War'", "'Rhodesian'", "'Rhodie'", "'Salisbury'", "'Zimbabwean'")>>
+			<<set $nickname = either("'Altena'", "'Bush War'", "'Mabuno'", "'Rhodesian'", "'Rhodie'", "'Salisbury'", "'Zimbabwean'")>>
 		<<else>>
 			<<set $nickname = either("'Bobojan'", "'Chimurenga'", "'Grimmy'", "'Harare'", "'Kaffir'", "'Mugabe'", "'Mujiba'", "'Nyombie'", "'Zimbabwean'", "'Zimbo'")>>
 		<</if>>
@@ -676,350 +676,350 @@
 		<<set $nickname = either("'International'", "'Nomad'", "'Refugee'", "'Stateless'", "'Wanderer'")>>
 	<</switch>>
 	<<set $situationDesc = "is $activeSlave.nationality. The slave trade is truly international, and no nation is unrepresented among the masses of sex slaves passed from hand to hand like the chattel they are. Most of the old nations are struggling, and even those still in great shape often find their citizens emigrating to the Free Cities. Some of these émigrés do well, and others become human livestock.">>
-	<<set $applyDesc = "is a little proud of her national nickname, as a reminder of who she was and a mark that she still has an identity.">>
-	<<set $notApplyDesc = "realizes that her new identity is truly stateless. In the Free Cities, it does not matter where a slave is from, so long as that slave has value. All slaves belong to the singular nation of the owned, the subordinated, the fucked.">>
+	<<set $applyDesc = "is a little proud of $his national nickname, as a reminder of who $he was and a mark that $he still has an identity.">>
+	<<set $notApplyDesc = "realizes that $his new identity is truly stateless. In the Free Cities, it does not matter where a slave is from, so long as that slave has value. All slaves belong to the singular nation of the owned, the subordinated, the fucked.">>
 
 <<case "white">>
 	<<set $nickname = either("'Ang Mo'", "'Casper'", "'Caucasian'", "'Caucasoid'", "'Cracker'", "'Cumskin'", "'Dixie'", "'Down Home'", "'Duchess'", "'Euro Trash'", "'Europa'", "'European'", "'Farang'", "'Grits'", "'Gweilo'", "'Hick'", "'Hillbilly'", "'Hollywood'", "'Honky'", "'Ice Monkey'", "'Ice Queen'", "'Mayo'", "'Memphis'", "'Pale'", "'Paleface'", "'Pasty'", "'Peckerwood'", "'Princess'", "'Snowflake'", "'Top Dollar'", "'Valley Girl'", "'Vanilla'", "'Vegas'", "'White Bread'", "'White Devil'", "'White Trash'", "'White'", "'Whitey'", "'Wigger'", "'Yankee'")>>
 	<<set $situationDesc = "is white, which is not uncommon given the collapse of many erstwhile first world nations into depression and the proximity of many Free Cities to majority white areas. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "asian">>
 	<<set $nickname = either("'3DPD'", "'Almond'", "'Asian'", "'Chinese'", "'Ching Chong'", "'Chink'", "'Chopsticks'", "'Coolie'", "'Dink'", "'E-Sports'", "'Gook'", "'Manila'", "'Me Love You Long Time'", "'Me So Horny'", "'Oriental'", "'Pinoy'", "'Slant'", "'Slanteye'", "'Slope'", "'Squint'", "'Thaigirl'", "'Tokyo'", "'Waifu'", "'Yellow Fever'", "'Yellow'", "'Zip'")>>
 	<<set $situationDesc = "is asian, which is not uncommon given the huge population of Asia and the poverty of many countries there. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "latina">>
 	<<set $nickname = either("'Adorada'", "'Banana Republic'", "'Brown'", "'Cafe'", "'Chica'", "'Chiquita'", "'Chola'", "'Cuzinho'", "'Facil'", "'Hispanic'", "'Latin'", "'Latina'", "'Mestiza'", "'Mexicali'", "'One Peso'", "'Rio Grande'", "'Senora'", "'Senorita'", "'Shakira'", "'South of the Border'", "'Spic'", "'Spicy'", "'Wetback'", "'Yeyo'")>>
 	<<set $situationDesc = "is latina, which is not uncommon given the poor state of many Central and South American countries and the long diaspora of poor natives of those areas. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "black">>
 	<<set $nickname = either("'African'", "'B-Girl'", "'Black'", "'Blackie'", "'Bottom Bitch'", "'Cocoa'", "'Coon'", "'Cotton'", "'Dark'", "'Ebony'", "'Gangsta'", "'His Girl Friday'", "'House Slave'", "'Jungle Bunny'", "'Jungle Fever'", "'Mammy'", "'Miss'", "'Missie'", "'Mulatto'", "'N-Word'", "'Negro'", "'Negroid'", "'Nigga'", "'Nigger'", "'Porch Monkey'", "'Quadroon'", "'Sambo'", "'Sheboon'", "'Spade'", "'Spook'")>>
 	<<set $situationDesc = "is black, which is not uncommon given the urban collapse afflicting the first world and the wars raging in Africa. Slaves casually reference race as much as free citizens. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "indo-aryan">>
 	<<set $nickname = either("'Aryan'", "'Babu'", "'Bhabhi'", "'Bindi'", "'Bollywood'", "'Brown'", "'Chandala'", "'Curry Muncher'", "'Desi'", "'Dothead'", "'Durga'", "'Gyp'", "'Gypsy'", "'Indian'", "'Indo-Aryan'", "'Kali Maa'", "'Kama Sutra'", "'Kaur'", "'Mughal'", "'Sati'", "'Sepoy'", "'Shanti'", "'Sim Sim Salabim'", "'Snake Charmer'", "'Subcontinental'", "'Swami'", "'Tigress'", "'Untouchable'", "'Yoga'", "'Zoroastrian'", "'Zott'")>>
 	<<set $situationDesc = "is indo-aryan, which is not uncommon given the poverty in many majority indo-aryan countries, and the near-submersion of some others due to rising sea levels. Slaves casually reference race as much as free citizens. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "middle eastern">>
 	<<set $nickname = either("'Arab'", "'Arabian'", "'Arabian Nights'", "'Arabush'", "'Bibi'", "'Bougnoule'", "'Caliph'", "'Camel Jockey'", "'Chai Girl'", "'Desert Sun'", "'Dune Coon'", "'Dune'", "'Durka Durka'", "'Flying Carpet'", "'Halal'", "'Harem Girl'", "'Hijabi'", "'Jasmine'", "'Kebab'", "'Middle Eastern'", "'Moromierda'", "'Raghead'", "'Sand Nigger'", "'Sand'", "'Sandy'", "'Scheherazade'", "'Soosmar-Khor'", "'Third Wife'", "'Towelhead'")>>
 	<<set $situationDesc = "is middle eastern, which is not uncommon given the interminable wars and disruptions in that part of the world. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "mixed race">>
 	<<set $nickname = either("'Chola'", "'Colonial'", "'Colored'", "'Creole'", "'Diverse'", "'Diversity'", "'Hāfu'", "'Half and Half'", "'Half-breed'", "'Half-caste'", "'Integration'", "'Interracial'", "'Melting Pot'", "'Melungeon'", "'Mestiza'", "'Miscegenation'", "'Mixed Race'", "'Mixed'", "'Mongrel'", "'Mulatto'", "'Multiracial'", "'Mutt'", "'Octaroon'", "'Pardo'", "'Quadroon'", "'Zambo'")>>
-	<<set $situationDesc = "is mixed race, an ethnic makeup that has always been a target for abuse. Slaves of all races can find something about her to dislike. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $situationDesc = "is mixed race, an ethnic makeup that has always been a target for abuse. Slaves of all races can find something about $him to dislike. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "semitic">>
 	<<set $nickname = either("'Abie'", "'Abrahamic'", "'Baal Worshipper'", "'Biblical'", "'Canaanite'", "'Dead Sea'", "'Golden Calf'", "'Good Samaritan'", "'Hebrew'", "'Heeb'", "'Holy land'", "'Hymie'", "'Inanna'", "'Ishtar'", "'Kike'", "'Kosher'", "'Levantine'", "'Lilith'", "'Lost Ark'", "'Nephilim'", "'Oven Dodger'", "'Oy Vey'", "'Philistine'", "'Qedesha'", "'Red Sea'", "'Salome'", "'Semite'", "'Semitic'", "'Sheeny'", "'Shylock'", "'Sodom and Gomorrah'", "'Whore of Babylon'", "'Yid'")>>
 	<<set $situationDesc = "is semitic, which is not uncommon given the many conflicts in countries with semitic minorities. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "malay">>
-	<<set $nickname = either("'Bumi'", "'Cinnamon'", "'Indon'", "'Island Hopper'", "'Jakun'", "'Keling'", "'Krakatoa'", "'Malay'", "'Malaysian'", "'Melayu'", "'My Lay'", "'Nāga'", "'Nutmeg'", "'Orang'", "'Pinoy'", "'Rani'", "'Samudra Kidul'", "'Sandalwood'", "'Spice Islands'", "'Spice'", "'Trade Winds'")>>
+	<<set $nickname = either("'Bumi'", "'Cinnamon'", "'Indon'", "'Island Hopper'", "'Jakun'", "'Keling'", "'Krakatoa'", "'Malay'", "'Malaysian'", "'Malingsia'", "'Malon'", "'Melayu'", "'My Lay'", "'Nāga'", "'Nutmeg'", "'Orang'", "'Pinoy'", "'Rani'", "'Samudra Kidul'", "'Sandalwood'", "'Spice Islands'", "'Spice'", "'Trade Winds'")>>
 	<<set $situationDesc = "is malay, which is not uncommon given the ongoing poverty in many majority malay countries, and the serious weather patterns savaging that part of the world. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "amerindian">>
 	<<set $nickname = either("'Amerindian'", "'Chug'", "'Deerskin'", "'Eskimo'", "'Eskimo Sister'", "'Firewater'", "'First Nations'", "'Indian'", "'Indio'", "'Injun'", "'Ke-mo Sah-bee'", "'La Malinche'", "'Métis Mother'", "'Moccasins'", "'Native'", "'Nitchie'", "'Peace Pipe'", "'Pocahontas'", "'Red'", "'Redskin'", "'Reservation'", "'Scalper'", "'Smoke Signal'", "'Squaw'", "'Tiger Lily'", "'Tipi Warmer'", "'Totem Pole'", "'Tonto'", "'Tribal'", "'Warpath'", "'Wigwam'")>>
 	<<set $situationDesc = "is amerindian, which is not uncommon given the poverty that still plagues those long-suffering peoples. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "pacific islander">>
-	<<set $nickname = either("'Aloha'", "'Antipodean'", "'Austronesian'", "'Boonga'", "'Breadfruit'", "'Coconut'", "'Conch Blower'", "'Grass Skirt'", "'Hori'", "'Hula Girl'", "'Islander'", "'Kanaka'", "'Melanesian'", "'Micronesian'", "'Longpig'", "'Outrigger'", "'Pacific Islander'", "'Pacific'", "'Paradise'", "'Pineapple'", "'Polynesian'", "'Sea'", "'Seashell'", "'South Pacific'", "'Tiki Torch'")>>
+	<<set $nickname = either("'Aloha'", "'Antipodean'", "'Austronesian'", "'Boonga'", "'Breadfruit'", "'Coconut'", "'Conch Blower'", "'Grass Skirt'", "'Hori'", "'Hula Girl'", "'Islander'", "'Kanaka'", "'Melanesian'", "'Micronesian'", "'Longpig'", "'Oceanian'", "'Outrigger'", "'Pacific Islander'", "'Pacific'", "'Paradise'", "'Pasifika'", "'Pineapple'", "'Polynesian'", "'Sea'", "'Seashell'", "'South Pacific'", "'Tiki Torch'")>>
 	<<set $situationDesc = "is a pacific islander, which is not uncommon given wholesale destruction of many countries in that area by the worsening climate. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "southern european">>
 	<<set $nickname = either("'Aphrodite'", "'Bella'", "'Dago'", "'Doña'", "'Fine Wine'", "'Garlic Breath'", "'Goombah'", "'Greaseball'", "'Greaser'", "'Grecian'", "'Guido'", "'Guinea'", "'Infamis'", "'Lupa'", "'Mediterranean'", "'Meretrix'", "'Odalisque'", "'Olive Oil'", "'Olive'", "'Pizzahead'", "'Riviera'", "'Roman Nose'", "'Southern European'", "'Venus'", "'Wog'", "'Wop'")>>
 	<<set $situationDesc = "is southern european, which is not uncommon given the endemic corruption and political collapse in that part of the world. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
-	<<set $applyDesc = "now has a constant reminder that as a sex slave she is judged on her appearance first.">>
-	<<set $notApplyDesc = "may feel some gratitude due to your preference that she not be defined by her ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
+	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
+	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "vaginalWhiner">>
 	<<set $nickname = either("'Crybaby'", "'Cunt Vise'", "'Pussy Bitch'", "'Pussy Pain'", "'Rape Bait'", "'Shallow'", "'Squealer'", "'Struggles'", "'Tight Cunt'", "'Vaginal Whiner'", "'Whiner'", "'Whiny'")>>
-	<<set $situationDesc = "has a tight pussy and not much skill using it. She still gets fucked, which results in frequent painful situations for her. Her moaning as she takes a big dick earns her the scorn of her fellow slaves.">>
-	<<set $applyDesc = "is embarrassed by her new nickname, and resolves to try harder to address her lack of skill. She hopes she'll get better at sex soon, for her own sake.">>
-	<<set $notApplyDesc = "is a little grateful you've decided to protect her from the other slaves' mockery of her sore little pussy. She still wants to get better at sex, for her own sake.">>
+	<<set $situationDesc = "has a tight pussy and not much skill using it. $He still gets fucked, which results in frequent painful situations for $him. $His moaning as $he takes a big dick earns $him the scorn of $his fellow slaves.">>
+	<<set $applyDesc = "is embarrassed by $his new nickname, and resolves to try harder to address $his lack of skill. $He hopes $he'll get better at sex soon, for $his own sake.">>
+	<<set $notApplyDesc = "is a little grateful you've decided to protect $him from the other slaves' mockery of $his sore little pussy. $He still wants to get better at sex, for $his own sake.">>
 
 <<case "analWhiner">>
 	<<set $nickname = either("'Anal Bitch'", "'Anal Whiner'", "'Ass Pain'", "'Ass Vise'", "'Butt Rape'", "'Crybaby'", "'Painal'", "'Squealer'", "'Struggles'", "'Tight Ass'", "'Whiner'", "'Whiny'")>>
-	<<set $situationDesc = "has a tight asshole and not much skill taking an anal fuck. She still gets buttraped, which causes her a great deal of anal pain. Her sobbing as she takes a big dick up her tight little asspussy earns her the scorn of her fellow slaves.">>
-	<<set $applyDesc = "is embarrassed by her new nickname, and resolves to try harder to address her lack of skill. She hopes she'll get better at buttsex soon, for her own sake.">>
-	<<set $notApplyDesc = "is a little grateful you've decided to protect her from the other slaves' mockery of her sore little asshole. She still wants to get better at buttsex, for her own sake.">>
+	<<set $situationDesc = "has a tight asshole and not much skill taking an anal fuck. $He still gets buttraped, which causes $him a great deal of anal pain. $His sobbing as $he takes a big dick up $his tight little asspussy earns $him the scorn of $his fellow slaves.">>
+	<<set $applyDesc = "is embarrassed by $his new nickname, and resolves to try harder to address $his lack of skill. $He hopes $he'll get better at buttsex soon, for $his own sake.">>
+	<<set $notApplyDesc = "is a little grateful you've decided to protect $him from the other slaves' mockery of $his sore little asshole. $He still wants to get better at buttsex, for $his own sake.">>
 
 <<case "girlish">>
 	<<set $nickname = either("'Ano'", "'Girlish'", "'Girly'", "'Missie'", "'Runway'", "'Slender'", "'Slip'", "'Slim'", "'Supermodel'", "'Thin'", "'Tomboy'", "'Toothpick'", "'Zero'")>>
-	<<set $situationDesc = "has a trim form: her assets are quite modest. The slave society of the Free Cities tends to follow average male desires, which is to say that many slaves find themselves augmented to very large proportions. It's natural that slaves required to carry such burdens should resent her.">>
-	<<set $applyDesc = "is prouder of her lithe form that she was before, and is a little relieved at the added evidence that you don't plan to give her major implants any time soon.">>
-	<<set $notApplyDesc = "realizes that her form isn't necessarily due to some master plan and that you may see fit to change it; she begins to regard the remote surgery with apprehension.">>
+	<<set $situationDesc = "has a trim form: $his assets are quite modest. The slave society of the Free Cities tends to follow average male desires, which is to say that many slaves find themselves augmented to very large proportions. It's natural that slaves required to carry such burdens should resent $him.">>
+	<<set $applyDesc = "is prouder of $his lithe form that $he was before, and is a little relieved at the added evidence that you don't plan to give $him major implants any time soon.">>
+	<<set $notApplyDesc = "realizes that $his form isn't necessarily due to some master plan and that you may see fit to change it; $he begins to regard the remote surgery with apprehension.">>
 	
 <<case "flat">>
 	<<set $nickname = either("'A-Cup'", "'DFC'", "'Flat'", "'Flatty'", "'Ironing Board'", "'Itty Bitty'", "'Mosquito Bites'", "'Pettanko'", "'Plank'", "'Undersized'")>>
-	<<set $situationDesc = "has barely any breasts to speak of, she is completely flat. The slave society of the Free Cities tends to follow average male desires, which is to say that many slaves find themselves carrying comically oversized breasts. It's natural that slaves required to carry such burdens should resent her.">>
-	<<set $applyDesc = "further believes that chests should be deliciously flat, and is a little relieved at the added evidence that you don't plan to give her breasts the size of her head any time soon.">>
-	<<set $notApplyDesc = "realizes that her form isn't necessarily due to some master plan and that you may see fit to change it; she begins to regard the remote surgery with apprehension.">>
+	<<set $situationDesc = "has barely any breasts to speak of, $he is completely flat. The slave society of the Free Cities tends to follow average male desires, which is to say that many slaves find themselves carrying comically oversized breasts. It's natural that slaves required to carry such burdens should resent $him.">>
+	<<set $applyDesc = "further believes that chests should be deliciously flat, and is a little relieved at the added evidence that you don't plan to give $his breasts the size of $his head any time soon.">>
+	<<set $notApplyDesc = "realizes that $his form isn't necessarily due to some master plan and that you may see fit to change it; $he begins to regard the remote surgery with apprehension.">>
 
 <<case "loose">>
 	<<set $nickname = either("'Accommodating'", "'Gaping'", "'Hallway'", "'Loose'", "'Loosey Goosey'", "'Noisy'", "'Open'", "'Relaxed'", "'Size Queen'", "'Slit'", "'Sloppy'", "'Used'", "'Welcoming'", "'Wideopen'")>>
-	<<set $situationDesc = "has taken a lot of dick. Enough dick that her overused holes really show the mileage. She can take the largest cock without a sigh.">>
-	<<set $applyDesc = "is proud of her mileage, now that you've countenanced adding it to your name. Every cock she's taken, she's taken at your command.">>
-	<<set $notApplyDesc = "realizes that she isn't special just because she's been fucked so much, and understands that she'll have to do her best to fuck like a fresh teenager no matter how loose she gets.">>
+	<<set $situationDesc = "has taken a lot of dick. Enough dick that $his overused holes really show the mileage. $He can take the largest cock without a sigh.">>
+	<<set $applyDesc = "is proud of $his mileage, now that you've countenanced adding it to your name. Every cock $he's taken, $he's taken at your command.">>
+	<<set $notApplyDesc = "realizes that $he isn't special just because $he's been fucked so much, and understands that $he'll have to do $his best to fuck like a fresh teenager no matter how loose $he gets.">>
 
 <<case "trap">>
 	<<set $nickname = either("'Chai'", "'Ganymede'", "'Girldick'", "'Ladyboy'", "'Otokonoko'", "'Shemale'", "'Sissy'", "'Spurt'", "'Switch'", "'Thai'", "'Trap'", "'Trappy'")>>
-	<<set $situationDesc = "is a Free Cities sex slave, which makes her female. It makes her female despite several obvious physical issues, such as the fact that she's got an androgynous figure, or the fact that she has a penis. Neither of these makes any real difference when a cock gets shoved down her throat or stuffed up her butt, but they're hard not to notice.">>
-	<<set $applyDesc = "accepts that she's a little piece of shemale property.">>
-	<<set $notApplyDesc = "will do her best to serve as a nice little sex slave without explicit reference to how she's put together, or she'll be punished.">>
+	<<set $situationDesc = "is a Free Cities sex slave, which makes $him female. It makes $him female despite several obvious physical issues, such as the fact that $he's got an androgynous figure, or the fact that $he has a penis. Neither of these makes any real difference when a cock gets shoved down $his throat or stuffed up $his butt, but they're hard not to notice.">>
+	<<set $applyDesc = "accepts that $he's a little piece of shemale property.">>
+	<<set $notApplyDesc = "will do $his best to serve as a nice little sex slave without explicit reference to how $he's put together, or $he'll be punished.">>
 
 <<case "micropenis">>
-	<<set $nickname = either("'Baby Dick'", "'Bitchdick'", "'Boyclit'", "'Gherkin'", "'Inchworm'", "'Little Dick'", "'Micro'", "'Micropenis'", "'Teenie Weenie'", "'Tiny'")>>
-	<<set $situationDesc = "is a Free Cities sex slave, which makes her female. It's not immediately obvious from many angles that she wasn't born that way, since her penis is almost comically small. For her, penetrative sex would be very limited, even if she weren't a Free Cities slave and therefore a perpetual receptacle for dick.">>
+	<<set $nickname = either("'Baby Dick'", "'Bitchdick'", "'Boyclit'", "'Dicklet'", "'Gherkin'", "'Inchworm'", "'Little Dick'", "'Micro'", "'Micropenis'", "'Teenie Weenie'", "'Tiny'")>>
+	<<set $situationDesc = "is a Free Cities sex slave, which makes $him female. It's not immediately obvious from many angles that $he wasn't born that way, since $his penis is almost comically small. For $him, penetrative sex would be very limited, even if $he weren't a Free Cities slave and therefore a perpetual receptacle for dick.">>
 	<<set $applyDesc = "accepts the implicit mockery.">>
-	<<set $notApplyDesc = "is a little relieved to be protected from the mockery, even though her tiny endowment mocks her as it flops around whenever she's used.">>
+	<<set $notApplyDesc = "is a little relieved to be protected from the mockery, even though $his tiny endowment mocks $him as it flops around whenever $he's used.">>
 
 <<case "implants">>
 	<<set $nickname = either("'Balloons'", "'Blowup Doll'", "'Bolted-On'", "'Enhanced'", "'Fake'", "'Implants'", "'Plastic'", "'Plastique'", "'Silicone'")>>
-	<<set $situationDesc = "is full of breast implants. They're so large it's quite obvious they're fake, and the implications are clear: She's a plastic slut, and the other slaves never tire of letting her know it.">>
-	<<set $applyDesc = "accepts the implicit mockery, knowing that her bimbo-esque body is what appeals to <<if def $PC.customTitle>>her $PC.customTitle<<elseif $PC.title != 0>>her master<<else>>her mistress<</if>>.">>
-	<<set $notApplyDesc = "is relieved to be protected from the other slaves' mockery over her implants, though she's also a little sad she can't take them as a kind of trademark.">>
+	<<set $situationDesc = "is full of breast implants. They're so large it's quite obvious they're fake, and the implications are clear: $He's a plastic slut, and the other slaves never tire of letting $him know it.">>
+	<<set $applyDesc = "accepts the implicit mockery, knowing that $his bimbo-esque body is what appeals to <<if def $PC.customTitle>>$his $PC.customTitle<<elseif $PC.title != 0>>$his master<<else>>$his mistress<</if>>.">>
+	<<set $notApplyDesc = "is relieved to be protected from the other slaves' mockery over $his implants, though $he's also a little sad $he can't take them as a kind of trademark.">>
 
 <<case "bimbo">>
 	<<set $nickname = either("'Barbie'", "'Bimbo'", "'Blowup Doll'", "'Brain Dead'", "'Fuck Toy'", "'Fuckmeat'", "'Plastic'", "'Plastique'", "'Sex Doll'", "'Silicone'")>>
-	<<set $situationDesc = "is full of implants, and stupid beyond stupid. It's obvious she's fake, and her idiocy only confirms it: She's a bimbo slut, and the other slaves never tire of mocking her for it, not caring that she doesn't notice.">>
-	<<set $applyDesc = "doesn't notice the mockery, only that she now has a cute little nickname.">>
-	<<set $notApplyDesc = "would be thankful for this protection from the other slaves' mockery if she saw it as such, or was smart enough to notice it.">>
+	<<set $situationDesc = "is full of implants, and stupid beyond stupid. It's obvious $he's fake, and $his idiocy only confirms it: $He's a bimbo slut, and the other slaves never tire of mocking $him for it, not caring that $he doesn't notice.">>
+	<<set $applyDesc = "doesn't notice the mockery, only that $he now has a cute little nickname.">>
+	<<set $notApplyDesc = "would be thankful for this protection from the other slaves' mockery if $he saw it as such, or was smart enough to notice it.">>
 
 <<case "stupid">>
 	<<set $nickname = either("'Brain Dead'", "'Cretin'", "'Dropout'", "'Dumb'", "'Dumbass'", "'Dummy'", "'Idiot'", "'Intellectually Challenged'", "'Retard'", "'Retarded'", "'Short Bus'", "'Straight F Grades'", "'Stupid'")>>
-	<<set $situationDesc = "is, quite simply, an uneducated dullard. Numerous slaves are a bit dumb, which makes it easier to break them, but she takes the cake and throws it in the trash. Some of the other, smarter slaves, see fit to tease her for it.">>
-	<<set $applyDesc = "accepts this mockery happily, as if she doesn't recognize it for what it is.">>
-	<<set $notApplyDesc = "would be thankful for this protection from the other slaves' mockery if she saw it as such, or was smart enough to notice it.">>
+	<<set $situationDesc = "is, quite simply, an uneducated dullard. Numerous slaves are a bit dumb, which makes it easier to break them, but $he takes the cake and throws it in the trash. Some of the other, smarter slaves, see fit to tease $him for it.">>
+	<<set $applyDesc = "accepts this mockery happily, as if $he doesn't recognize it for what it is.">>
+	<<set $notApplyDesc = "would be thankful for this protection from the other slaves' mockery if $he saw it as such, or was smart enough to notice it.">>
 
 <<case "smart">>
 	<<set $nickname = either("'Brainiac'", "'Bright'", "'Clever'", "'Einstein'", "'Geek'", "'Genius'", "'Graduate'", "'Honor Roll'", "'Nerd'", "'Prodigy'", "'Professor'", "'Smart'", "'Smarty'", "'Straight A Grades'", "'Whiz'")>>
-	<<set $situationDesc = "is particularly brainy. A significant number of quality slaves are smart, but she is especially so, and it shows. She learns skills quicker, performs her duties better, and can carry intellectual conversation if allowed. Other slaves deem this enough to mock her.">>
-	<<set $applyDesc = "is proud of her intellect, and pleased that you have made it a part of her identity.">>
-	<<set $notApplyDesc = "accepts that her intellect is merely of slight interest.">>
+	<<set $situationDesc = "is particularly brainy. A significant number of quality slaves are smart, but $he is especially so, and it shows. $He learns skills quicker, performs $his duties better, and can carry intellectual conversation if allowed. Other slaves deem this enough to mock $him.">>
+	<<set $applyDesc = "is proud of $his intellect, and pleased that you have made it a part of $his identity.">>
+	<<set $notApplyDesc = "accepts that $his intellect is merely of slight interest.">>
 
 <<case "chubby">>
 	<<set $nickname = either("'Ample'", "'BBW'", "'Bloated'", "'Chubby'", "'Chubster'", "'Chunky'", "'Double Wide'", "'Fat'", "'Feedee'", "'Hambeast'", "'Jabba'", "'Jiggles'", "'Jiggly'", "'Jumbo'", "'Landwhale'", "'Plump'", "'Plush'", "'Rotund'", "'Rubenesque'", "'Thicc'", "'Tubby'", "'Whale'")>>
-	<<set $situationDesc = "is carrying a little extra weight. The cruelty of life as a slave increases your property's willingness to do cruelty where they can get away with it - what is passed to them, they pass to others - so she finds herself mocked for her size.">>
-	<<set $applyDesc = "knows that being fat makes her less valuable on the market, but she begins to accept that she's going to have to put up with being chubby for now.">>
-	<<set $notApplyDesc = "believes that this means she's going to have to lose weight soon, causing her some trepidation.">>
+	<<set $situationDesc = "is carrying a little extra weight. The cruelty of life as a slave increases your property's willingness to do cruelty where they can get away with it - what is passed to them, they pass to others - so $he finds $himself mocked for $his size.">>
+	<<set $applyDesc = "knows that being fat makes $him less valuable on the market, but $he begins to accept that $he's going to have to put up with being chubby for now.">>
+	<<set $notApplyDesc = "believes that this means $he's going to have to lose weight soon, causing $him some trepidation.">>
 	
 <<case "fat">>
 	<<set $nickname = either("'Baluga'", "'Bed Breaker'", "'Blimp'", "'Bloated'", "'Buffet Closer'", "'Cow'", "'Double Wide'", "'Fat'", "'Fatass'", "'Fatso'", "'Fatty'", "'Feedee'", "'Hambeast'", "'Jabba'", "'Jiggles'", "'Jiggly'", "'Jumbo'", "'Lap Crusher'", "'Lardy'", "'Piggy'", "'Roller'", "'Scale Breaker'", "'Smothers'", "'SSBBW'", "'Thud'", "'Whale'")>>
-	<<set $situationDesc = "is carrying a lot of extra weight. The cruelty of life as a slave increases your property's willingness to do cruelty where they can get away with it - what is passed to them, they pass to others - so she finds herself mocked for her size.">>
-	<<set $applyDesc = "knows that being obese makes her less valuable on the market, but she begins to accept that she's going to have to put up with being fat for now.">>
-	<<set $notApplyDesc = "believes that this means she's going to have to lose a lot of weight soon, causing her some trepidation, though deep down she hopes you'll just have it sucked out instead of making her run.">>
+	<<set $situationDesc = "is carrying a lot of extra weight. The cruelty of life as a slave increases your property's willingness to do cruelty where they can get away with it - what is passed to them, they pass to others - so $he finds $himself mocked for $his size.">>
+	<<set $applyDesc = "knows that being obese makes $him less valuable on the market, but $he begins to accept that $he's going to have to put up with being fat for now.">>
+	<<set $notApplyDesc = "believes that this means $he's going to have to lose a lot of weight soon, causing $him some trepidation, though deep down $he hopes you'll just have it sucked out instead of making $him run.">>
 
 <<case "muscles">>
 	<<set $nickname = either("'Amazon'", "'Gargantua'", "'Giant'", "'Gunshow'", "'Gymrat'", "'Huge'", "'Muscle Barbie'", "'Muscles'", "'Prepare Yourself'", "'Ripped'", "'She-Hulk'", "'Snu-Snu'", "'Strong'", "'Tank'", "'Wonder Woman'")>>
-	<<set $situationDesc = "is a big girl. Her huge muscles aren't to everyone's taste, but they're quite eye-catching, and give her some interesting sexual possibilities that wouldn't work with, for example, a sex slave not capable of supporting her own body weight on one hand for long periods. She has become the object of mixed admiration and envy from your other stock.">>
-	<<set $applyDesc = "is happy with her nickname; any embarrassment she may have felt about looking like statuary becomes a jet of pride. She's confident that this is the way you want her.">>
-	<<set $notApplyDesc = "she is a sex slave first, last, and always, no matter what her one-rep max is.">>
+	<<set $situationDesc = "is a big girl. $His huge muscles aren't to everyone's taste, but they're quite eye-catching, and give $him some interesting sexual possibilities that wouldn't work with, for example, a sex slave not capable of supporting $his own body weight on one hand for long periods. $He has become the object of mixed admiration and envy from your other stock.">>
+	<<set $applyDesc = "is happy with $his nickname; any embarrassment $he may have felt about looking like statuary becomes a jet of pride. $He's confident that this is the way you want $him.">>
+	<<set $notApplyDesc = "is a sex slave first, last, and always, no matter what $his one-rep max is.">>
 
 <<case "buttslut">>
-	<<set $nickname = either("'Anal'", "'Anal Addict'", "'Ass Pussy'", "'Assgasm'", "'Back Door'", "'Bum-Love'", "'Butthole'", "'Buttslut'", "'Cornhole'", "'Greek'", "'Second Pussy'", "'Sodomy'", "'Sphincter'", "'Swedish'")>>
-	<<set $situationDesc = "loves it up the butt, and her tastes in sex are hard to miss. She's a sex slave and takes it however it's given, but honest enjoyment is hard to fake and it's pretty obvious how much fun she has when she's bent over and buttfucked. Her typical come-on is to bend over, reach around to spread her buttocks, and wink her anus by alternately clenching and relaxing her sphincter.">>
-	<<set $applyDesc = "knows that whatever the rest of her slave life holds, it will involve her slave rectum holding a lot of dick.">>
-	<<set $notApplyDesc = "understands that she'll have to take what buttsex she can get.">>
+	<<set $nickname = either("'Anal'", "'Anal Addict'", "'Ass Pussy'", "'Assgasm'", "'Back Door'", "'Bum-Love'", "'Butthole'", "'Buttslut'", "'Cornhole'", "'Greek'", "'Second Pussy'", "'Sodomite'", "'Sodomy'", "'Sphincter'", "'Swedish'")>>
+	<<set $situationDesc = "loves it up the butt, and $his tastes in sex are hard to miss. $He's a sex slave and takes it however it's given, but honest enjoyment is hard to fake and it's pretty obvious how much fun $he has when $he's bent over and buttfucked. $His typical come-on is to bend over, reach around to spread $his buttocks, and wink $his anus by alternately clenching and relaxing $his sphincter.">>
+	<<set $applyDesc = "knows that whatever the rest of $his slave life holds, it will involve $his slave rectum holding a lot of dick.">>
+	<<set $notApplyDesc = "understands that $he'll have to take what buttsex $he can get.">>
 	
 <<case "butt toy">>
-	<<set $nickname = either("'Back Door'", "'Butt Toy'", "'Butthole'", "'Hotdog'", "'Reach Around'", "'Rim Job'", "'Sphincter'", "'Stinky Pinky'")>>
-	<<set $situationDesc = "loves it when attention is lavished on her butt, even though she has never done anal. She's a sex slave and takes it however it's given, but honest enjoyment is hard to fake and it's pretty obvious how much fun she has when a client is roughly groping her rear. Her typical come-on is to 'accidentally' find her client's dick hotdogged betwixt her cheeks.">>
-	<<set $applyDesc = "knows that whatever the rest of her slave life holds, it will involve an ever growing amount of attention to her rear.">>
-	<<set $notApplyDesc = "understands that she'll have to take what butt play she can get.">>
+	<<set $nickname = either("'Assplay'", "'Back Door'", "'Butt Toy'", "'Butthole'", "'Hotdog'", "'Reach Around'", "'Rim Job'", "'Spanky'", "'Sphincter'", "'Stinky Pinky'", "'Tossed Salad'")>>
+	<<set $situationDesc = "loves it when attention is lavished on $his butt, even though $he has never done anal. $He's a sex slave and takes it however it's given, but honest enjoyment is hard to fake and it's pretty obvious how much fun $he has when a client is roughly groping $his rear. $His typical come-on is to 'accidentally' find $his client's dick hotdogged betwixt $his cheeks.">>
+	<<set $applyDesc = "knows that whatever the rest of $his slave life holds, it will involve an ever growing amount of attention to $his rear.">>
+	<<set $notApplyDesc = "understands that $he'll have to take what butt play $he can get.">>
 
 <<case "cumslut">>
 	<<set $nickname = either("'Bukkake'", "'Cocksucker'", "'Cum'", "'Cumfiend'", "'Cumslut'", "'Deep Throat'", "'Dicksuck'", "'Facepussy'", "'Fellatio'", "'Gobbler'", "'Gokkun'", "'Guzzler'", "'Hoover'", "'Lip Service'", "'Meat Smoker'", "'No Gag Reflex'", "'Pearl Necklace'", "'Pole Smoker'", "'Semen Demon'", "'Succubus'", "'Sucker'", "'Swallows'", "'Third Pussy'", "'Throat Meat'", "'Throatclit'", "'Vacuum'", "'Vampire'")>>
-	<<set $situationDesc = "loves her some cum. Most slaves have to put effort into showing enthusiasm when on their knees and presented with the second or third cock in a row. She, on the other hand, maintains such a fetish for the stuff that she'll often suck it out of other slaves' holes, if allowed.">>
-	<<set $applyDesc = "knows that as long as she's your slave, she'll get what she needs.">>
-	<<set $notApplyDesc = "understands that cum is a luxury and she'll have to savor what comes her way naturally.">>
+	<<set $situationDesc = "loves $him some cum. Most slaves have to put effort into showing enthusiasm when on their knees and presented with the second or third cock in a row. $He, on the other hand, maintains such a fetish for the stuff that $he'll often suck it out of other slaves' holes, if allowed.">>
+	<<set $applyDesc = "knows that as long as $he's your slave, $he'll get what $he needs.">>
+	<<set $notApplyDesc = "understands that cum is a luxury and $he'll have to savor what comes $his way naturally.">>
 
 <<case "submissive">>
 	<<set $nickname = either("'Bootlicker'", "'Bottom'", "'Clinger'", "'Doormat'", "'Fuckee'", "'Humble'", "'Meek'", "'Rapebait'", "'Secondary'", "'Sub'", "'Submissive'")>>
-	<<set $situationDesc = "loves sexual submission. Whatever she's doing, she likes to be on the bottom. She'd rather be face-fucked than suck, and would rather take a dick than ride one. Some slaves look down on her willingness to put herself even farther below others, while some envy her ability to enjoy things that they have to work to tolerate.">>
-	<<set $applyDesc = "pretends to accept her new nickname obediently, but is secretly pleased by recognition of her submissive nature.">>
-	<<set $notApplyDesc = "understands that being a submissive sex slave doesn't make her special. All sex slaves must submit.">>
+	<<set $situationDesc = "loves sexual submission. Whatever $he's doing, $he likes to be on the bottom. $He'd rather be face-fucked than suck, and would rather take a dick than ride one. Some slaves look down on $his willingness to put $himself even farther below others, while some envy $his ability to enjoy things that they have to work to tolerate.">>
+	<<set $applyDesc = "pretends to accept $his new nickname obediently, but is secretly pleased by recognition of $his submissive nature.">>
+	<<set $notApplyDesc = "understands that being a submissive sex slave doesn't make $him special. All sex slaves must submit.">>
 
 <<case "humiliation">>
 	<<set $nickname = either("'Attention Whore'", "'Display Model'", "'Exhibitionist'", "'Flasher'", "'Flaunter'", "'Humiliated'", "'Humiliation'", "'Nudist'", "'Pornstar'", "'Public Display'", "'Rape'", "'Rapebait'", "'Shameless'", "'Showboat'", "'Showgirl'", "'Showoff'")>>
-	<<set $situationDesc = "loves to show off. Where other slaves would blush, get embarrassed, and wish they could cover themselves, she blushes, gets aroused, and enjoys the stares. Most other slaves are jealous of her predilections. Not many slaves naturally enjoy being fucked in public, and she can get off on it.">>
-	<<set $applyDesc = "accepts her new nickname without even pretending not to enjoy it. She's proud to fuck in plain view, and she wants everyone to know it. And fuck her in plain view.">>
-	<<set $notApplyDesc = "understands that she's a sex slave first, and must fuck in private like she were fucking in public.">>
+	<<set $situationDesc = "loves to show off. Where other slaves would blush, get embarrassed, and wish they could cover themselves, $he blushes, gets aroused, and enjoys the stares. Most other slaves are jealous of $his predilections. Not many slaves naturally enjoy being fucked in public, and $he can get off on it.">>
+	<<set $applyDesc = "accepts $his new nickname without even pretending not to enjoy it. $He's proud to fuck in plain view, and $he wants everyone to know it. And fuck $him in plain view.">>
+	<<set $notApplyDesc = "understands that $he's a sex slave first, and must fuck in private like $he were fucking in public.">>
 
 <<case "veteran">>
-	<<set $nickname = either("'Cumdump'", "'Dirty'", "'Easy'", "'Experienced'", "'Public Favorite'", "'Tired-Out'", "'Used'", "'Veteran'", "'Village Bicycle'", "'Whore Queen'", "'Worn'")>>
-	<<set $situationDesc = "has been with you for a while, and she's gotten fucked a lot. Hundreds and hundreds of times over many weeks. Though she does her best, at times it can be obvious that there's very little that surprises her any more. She's forgotten more sexual experience than many of your other slaves remember.">>
-	<<set $applyDesc = "knows that you've noticed all her hard work. Getting fucked day in and day out is harder than digging ditches, and she's a veteran ditchdigger.">>
-	<<set $notApplyDesc = "understands that even though she's been fucked so much, she's still just meat; she isn't special.">>
+	<<set $nickname = either("'Cum Dumpster'", "'Cumdump'", "'Dirty'", "'Easy'", "'Experienced'", "'Loose'", "'Public Favorite'", "'Tired-Out'", "'Used'", "'Veteran'", "'Village Bicycle'", "'Whore Queen'", "'Worn'")>>
+	<<set $situationDesc = "has been with you for a while, and $he's gotten fucked a lot. Hundreds and hundreds of times over many weeks. Though $he does $his best, at times it can be obvious that there's very little that surprises $him any more. $He's forgotten more sexual experience than many of your other slaves remember.">>
+	<<set $applyDesc = "knows that you've noticed all $his hard work. Getting fucked day in and day out is harder than digging ditches, and $he's a veteran ditchdigger.">>
+	<<set $notApplyDesc = "understands that even though $he's been fucked so much, $he's still just meat; $he isn't special.">>
 
 <<case "cow">>
 	<<set $nickname = either("'Bessie'", "'Bovine'", "'Cow'", "'Cowbell'", "'Creamy'", "'Dairy Queen'", "'Heifer'", "'Holstein'", "'Milk Cans'", "'Milk Factory'", "'Milk Fountain'", "'Milkmaid'", "'Milky Udders'", "'Udders'")>>
-	<<set $situationDesc = "is a good stock animal. Her body efficiently turns the cheap slave nutrition produced by your arcology into a never-ending river of rich milk.">>
-	<<set $applyDesc = "knows that her future involves many hours having her nipples gently tugged by a milking machine.">>
-	<<set $notApplyDesc = "understands that she must continue to be a good milking slave, but that such duties do not necessarily define her.">>
+	<<set $situationDesc = "is a good stock animal. $His body efficiently turns the cheap slave nutrition produced by your arcology into a never-ending river of rich milk.">>
+	<<set $applyDesc = "knows that $his future involves many hours having $his nipples gently tugged by a milking machine.">>
+	<<set $notApplyDesc = "understands that $he must continue to be a good milking slave, but that such duties do not necessarily define $him.">>
 
 <<case "novice">>
-	<<set $nickname = either("'Calamity'", "'Clumsy'", "'Fresh Meat'", "'Fresh'", "'Fumbles'", "'Innocent'", "'Novice'", "'Slippery'", "'Sorry'")>>
-	<<set $situationDesc = "does her best; she really tries. But she simply hasn't mastered the skills that more experienced sex slaves take for granted. Though this can be annoying and at times even painful, it is a source of occasional slapstick comedy.">>
-	<<set $applyDesc = "has a constant reminder that no matter how skilled a courtesan she becomes, some of her greatest hits will be told as amusing anecdotes for the rest of her service.">>
-	<<set $notApplyDesc = "understands that what matters is not what she did yesterday, or how much they liked it, but what she does today, and how much they like it.">>
+	<<set $nickname = either("'Calamity'", "'Clumsy'", "'Fresh Meat'", "'Fresh'", "'Fumbles'", "'Inexperienced'", "'Innocent'", "'Novice'", "'Slippery'", "'Sorry'")>>
+	<<set $situationDesc = "does $his best; $he really tries. But $he simply hasn't mastered the skills that more experienced sex slaves take for granted. Though this can be annoying and at times even painful, it is a source of occasional slapstick comedy.">>
+	<<set $applyDesc = "has a constant reminder that no matter how skilled a courtesan $he becomes, some of $his greatest hits will be told as amusing anecdotes for the rest of $his service.">>
+	<<set $notApplyDesc = "understands that what matters is not what $he did yesterday, or how much they liked it, but what $he does today, and how much they like it.">>
 
 <<case "head girl">>
 	<<set $nickname = either("'Boss'", "'Bottom Bitch'", "'Chief'", "'Favorite'", "'Head'", "'Head Girl'", "'Mistress'", "'Mrs.'", "'On Your Knees'", "'Perfect'", "'Top'")>>
-	<<set $situationDesc = "occupies a place in the hierarchy of your penthouse that is certainly one which encourages nicknaming. Your other slaves view her with mixed envy, adoration, emulation, and apprehension. She is someone to curry favor with, to offer sexual favors, and at times someone to avoid. To the devoted slave her closeness to you is enviable; to the rebellious slave her alliance with you is traitorous.">>
-	<<set $applyDesc = "was already proud of and happy with her exalted position, but now she is all the more so. She had always nursed the secret fear that this was temporary, but her place at your right hand is now part of her name.">>
-	<<set $notApplyDesc = "begins to fear a little that she may one day be supplanted, since you did not think it right to make her place a part of her name.">>
+	<<set $situationDesc = "occupies a place in the hierarchy of your penthouse that is certainly one which encourages nicknaming. Your other slaves view $him with mixed envy, adoration, emulation, and apprehension. $He is someone to curry favor with, to offer sexual favors, and at times someone to avoid. To the devoted slave $his closeness to you is enviable; to the rebellious slave $his alliance with you is traitorous.">>
+	<<set $applyDesc = "was already proud of and happy with $his exalted position, but now $he is all the more so. $He had always nursed the secret fear that this was temporary, but $his place at your right hand is now part of $his name.">>
+	<<set $notApplyDesc = "begins to fear a little that $he may one day be supplanted, since you did not think it right to make $his place a part of $his name.">>
 
 <<case "Concubine">>
 	<<set $nickname = either("'Beauty'", "'Bed'", "'Concubine'", "'Contessa'", "'Empress'", "'Master'", "'Missus'", "'Mrs.'", "'Princess'", "'Queen'")>>
-	<<set $situationDesc = "occupies a place in the hierarchy of your penthouse that is certainly one which encourages nicknaming. Your other slaves view her with mixed envy and admiration. She has much of the luxury of the Head Girl and none of the responsibility, and all she has to do for this exalted place is keep your sexual satisfaction as her prime goal.">>
-	<<set $applyDesc = "was already proud of and happy with her exalted position, but now she is all the more so. She had always nursed the secret fear that this was temporary, but her place in your bed is now part of her name.">>
-	<<set $notApplyDesc = "begins to fear a little that she may one day be supplanted, since you did not think it right to make her place a part of her name.">>
+	<<set $situationDesc = "occupies a place in the hierarchy of your penthouse that is certainly one which encourages nicknaming. Your other slaves view $him with mixed envy and admiration. $He has much of the luxury of the Head Girl and none of the responsibility, and all $he has to do for this exalted place is keep your sexual satisfaction as $his prime goal.">>
+	<<set $applyDesc = "was already proud of and happy with $his exalted position, but now $he is all the more so. $He had always nursed the secret fear that this was temporary, but $his place in your bed is now part of $his name.">>
+	<<set $notApplyDesc = "begins to fear a little that $he may one day be supplanted, since you did not think it right to make $his place a part of $his name.">>
 
 <<case "Attendant">>
 	<<set $nickname = either("'Attendant'", "'Bath'", "'Bath Girl'", "'Bathing Beauty'", "'Healer'", "'Healing Hand'", "'Helping Hand'", "'Mist Queen'", "'Misty'", "'Saunagirl'", "'Spa'", "'Spa Day'", "'Spa Mother'", "'Steam Queen'", "'Warm Water'")>>
-	<<set $situationDesc = "is loved by almost every slave in your penthouse. Getting a chance to go and spend some time in her spa is a wonderful treat, for which slaves are willing to work very hard. She's very willing to help them find sexual release, but mostly just provides minor care and an understanding ear for their troubles.">>
-	<<set $applyDesc = "enjoys helping your girls, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes helping your girls and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "is loved by almost every slave in your penthouse. Getting a chance to go and spend some time in $his spa is a wonderful treat, for which slaves are willing to work very hard. $He's very willing to help them find sexual release, but mostly just provides minor care and an understanding ear for their troubles.">>
+	<<set $applyDesc = "enjoys helping your girls, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes helping your girls and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "Madam">>
 	<<set $nickname = either("'Boss Bitch'", "'Brothel Queen'", "'Madam'", "'Miss Kitty'", "'Mother'", "'Pimp'", "'Pimp Hand'", "'Pimp Queen'", "'Pimparella'", "'Queen Bitch'", "'Whore Queen'")>>
-	<<set $situationDesc = "is in an unusually responsible and pragmatic position, for a slave. She runs her whores' lives with almost total control, overseeing the sale of their bodies day in, day out. Some resent her, some love her, but all depend on her.">>
-	<<set $applyDesc = "enjoys running a whorehouse, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes running a whorehouse and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "is in an unusually responsible and pragmatic position, for a slave. $He runs $his whores' lives with almost total control, overseeing the sale of their bodies day in, day out. Some resent $him, some love $him, but all depend on $him.">>
+	<<set $applyDesc = "enjoys running a whorehouse, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes running a whorehouse and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "DJ">>
 	<<set $nickname = either("'Arcology Idol'", "'Bass'", "'Bass Slut'", "'Bassgirl'", "'Booth'", "'Celebutante'", "'Club Idol'", "'Club Princess'", "'Club Queen'", "'DJ'", "'DJ Whore'", "'EP'", "'LP'", "'Subwoofers'", "'SuperBass'")>>
-	<<set $situationDesc = "has a leadership role that requires decisiveness and discretion, but has to maintain a role of flirtatiousness and fun, at the same time. Other slaves marvel at how she must give another slut orders one moment, and girlishly giggle at a prominent citizen the next.">>
-	<<set $applyDesc = "enjoys being one of the most idolized girls in the arcology, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes being one of the most idolized girls in the arcology and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "has a leadership role that requires decisiveness and discretion, but has to maintain a role of flirtatiousness and fun, at the same time. Other slaves marvel at how $he must give another slut orders one moment, and girlishly giggle at a prominent citizen the next.">>
+	<<set $applyDesc = "enjoys being one of the most idolized girls in the arcology, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes being one of the most idolized girls in the arcology and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "Recruiter">>
 	<<set $nickname = either("'Cam'", "'Cam Queen'", "'Camgirl'", "'Honeypot'", "'Honeytrap'", "'Recruiter'", "'Slavecatcher'", "'Slaver'", "'Snake'", "'Spider'", "'Trapper'")>>
-	<<set $situationDesc = "is fundamentally a liar, in her role as recruiter. She must constantly lie by omission if not by commission, telling everyone interested in slavery all about everything good about being your slave, while leaving out the fundamental reality of sexual servitude.">>
-	<<set $applyDesc = "enjoys seeing girls go from faces on a screen to fellow fuckslaves, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes making girls go from faces on a screen to fellow fuckslaves and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "is fundamentally a liar, in $his role as recruiter. $He must constantly lie by omission if not by commission, telling everyone interested in slavery all about everything good about being your slave, while leaving out the fundamental reality of sexual servitude.">>
+	<<set $applyDesc = "enjoys seeing girls go from faces on a screen to fellow fuckslaves, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes making girls go from faces on a screen to fellow fuckslaves and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "Wardeness">>
 	<<set $nickname = either("'Chief'", "'Cop'", "'Copper'", "'Inquisitrix'", "'Interrogatrix'", "'Jail'", "'Jailoress'", "'Nightstick'", "'Prison'", "'Rapist'", "'Screw'", "'Snake'", "'Spider'", "'Stoolie'", "'Turnkey'", "'Warden'", "'Wardeness'")>>
-	<<set $situationDesc = "has perhaps the most hated role among your slaves. Her charges hate her, of course. But almost every slave who was once one of her charges hates her too, for they have not forgotten how her whim was once the law to them.">>
-	<<set $applyDesc = "enjoys having a row of cells full of slaves to abuse, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes having a row of cells full of slaves to abuse and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "has perhaps the most hated role among your slaves. $His charges hate $him, of course. But almost every slave who was once one of $his charges hates $him too, for they have not forgotten how $his whim was once the law to them.">>
+	<<set $applyDesc = "enjoys having a row of cells full of slaves to abuse, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes having a row of cells full of slaves to abuse and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "Milkmaid">>
 	<<set $nickname = either("'Cowgirl'", "'Cowhand'", "'Cowpoke'", "'Cream Queen'", "'Dairy'", "'Dairy Queen'", "'Farm'", "'Milker'", "'Milkmaid'", "'Milktugger'", "'Strong Hands'")>>
-	<<set $situationDesc = "has a physically demanding and emotionally rewarding role. It's hard work, hauling milk and shifting cows all day, but her girls love her. It's hard not to love someone when you depend on them so totally.">>
-	<<set $applyDesc = "enjoys being a milkmaid, despite the tough work, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes being a milkmaid, despite the tough work, and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "has a physically demanding and emotionally rewarding role. It's hard work, hauling milk and shifting cows all day, but $his girls love $him. It's hard not to love someone when you depend on them so totally.">>
+	<<set $applyDesc = "enjoys being a milkmaid, despite the tough work, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes being a milkmaid, despite the tough work, and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "Collectrix">>
 	<<set $nickname = either("'Buttfucker'", "'Collectrix'", "'Cum Queen'", "'Extractrix'", "'Fucker'", "'Milker'", "'Orgasmotron'", "'Prostate Poker'", "'Sodomizer'")>>
 	<<set $situationDesc = "is required to fuck more exhaustingly than any other slave in the arcology. It's one thing to take dick all day; it's quite another to be expected to constantly massage prostates to orgasm. Naturally, the other slaves notice.">>
-	<<set $applyDesc = "really enjoys being expected to bone butts constantly, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes being expected to bone butts constantly and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $applyDesc = "really enjoys being expected to bone butts constantly, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes being expected to bone butts constantly and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "Schoolteacher">>
 	<<set $nickname = either("'Classroom'", "'Dean'", "'Headmistress'", "'Principal'", "'Profesora'", "'Professor'", "'Ruler'", "'Schoolmarm'", "'Schoolmistress'", "'Schoolteacher'", "'Sensei'", "'Teach'", "'Teacher'")>>
-	<<set $situationDesc = "might consider her role boring, if she weren't allowed to use sexual abuse as a correction for poor attentiveness. As it is, her sexual aggressiveness draws much open comment and some private infatuation from the students.">>
-	<<set $applyDesc = "likes teaching, especially because she's allowed to use the students, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes teaching, especially because she's allowed to use the students, and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "might consider $his role boring, if $he weren't allowed to use sexual abuse as a correction for poor attentiveness. As it is, $his sexual aggressiveness draws much open comment and some private infatuation from the students.">>
+	<<set $applyDesc = "likes teaching, especially because $he's allowed to use the students, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes teaching, especially because $he's allowed to use the students, and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "Nurse">>
 	<<set $nickname = either("'Candy Striper'", "'Doc'", "'Doctor'", "'Healer'", "'Hospital Hottie'", "'M.D.'", "'Medic'", "'Medicine Woman'", "'Nurse'", "'Pill Peddler'", "'Pill Pusher'", "'Quack'", "'Sawbones'")>>
-	<<set $situationDesc = "might consider her role boring, if she weren't allowed to use sexual abuse as a correction for poor health. As it is, her sexual aggressiveness draws much open comment and some private infatuation from the patients.">>
-	<<set $applyDesc = "likes being a nurse, especially because she's allowed to use the patients, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes being a nurse, especially because she's allowed to use the patients, and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "might consider $his role boring, if $he weren't allowed to use sexual abuse as a correction for poor health. As it is, $his sexual aggressiveness draws much open comment and some private infatuation from the patients.">>
+	<<set $applyDesc = "likes being a nurse, especially because $he's allowed to use the patients, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes being a nurse, especially because $he's allowed to use the patients, and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "Stewardess">>
 	<<set $nickname = either("'Concierge'", "'Head Maid'", "'Head Servant'", "'Housemistress'", "'Inspectrix'", "'Martinent'", "'Perfectionist'", "'Stewardess'", "'Top Mop'")>>
-	<<set $situationDesc = "might consider her role boring, if she weren't allowed to use sexual abuse as a correction for poor work. As it is, her sexual aggressiveness draws much open comment and some private infatuation from the servants.">>
-	<<set $applyDesc = "likes being in charge of household tasks, especially because she's allowed to use the servants, and is happy to learn that the role is part of her name now.">>
-	<<set $notApplyDesc = "is a bit sad that her role isn't part of her name, since she likes being in charge of household tasks, especially because she's allowed to use the servants, and now wonders whether she'll be allowed to keep doing so.">>
+	<<set $situationDesc = "might consider $his role boring, if $he weren't allowed to use sexual abuse as a correction for poor work. As it is, $his sexual aggressiveness draws much open comment and some private infatuation from the servants.">>
+	<<set $applyDesc = "likes being in charge of household tasks, especially because $he's allowed to use the servants, and is happy to learn that the role is part of $his name now.">>
+	<<set $notApplyDesc = "is a bit sad that $his role isn't part of $his name, since $he likes being in charge of household tasks, especially because $he's allowed to use the servants, and now wonders whether $he'll be allowed to keep doing so.">>
 
 <<case "bodyguard">>
 	<<set $nickname = either("'Aegis'", "'Amazon'", "'Athena'", "'Battle'", "'Bloody'", "'Bodyguard'", "'Diana'", "'Guard'", "'Gunsmoke'", "'Hired Gun'", "'Paladin'", "'Terminatrix'", "'Widow'")>>
-	<<set $situationDesc = "divides your other slaves. She is a physically intimidating sight, wearing normal slave attire and obviously sexually available, but also carrying a sword across her back and an automatic weapon at her hip. Some revere her unique position of responsibility, while others mock how far she steps outside the bounds of sexual slavery.">>
-	<<set $applyDesc = "knew a while ago that she was likely to spend some time shadowing your every move. But now, she understands that not only is your life in her hands, it is going to remain so. She is almost awed by the responsibility.">>
-	<<set $notApplyDesc = "realizes to her apprehension that she may someday be a simple sex slave again, respected for her holes rather than her swordswomanship.">>
+	<<set $situationDesc = "divides your other slaves. $He is a physically intimidating sight, wearing normal slave attire and obviously sexually available, but also carrying a sword across $his back and an automatic weapon at $his hip. Some revere $his unique position of responsibility, while others mock how far $he steps outside the bounds of sexual slavery.">>
+	<<set $applyDesc = "knew a while ago that $he was likely to spend some time shadowing your every move. But now, $he understands that not only is your life in $his hands, it is going to remain so. $He is almost awed by the responsibility.">>
+	<<set $notApplyDesc = "realizes to $his apprehension that $he may someday be a simple sex slave again, respected for $his holes rather than $his swordswomanship.">>
 
 <<case "server">>
 	<<set $nickname = either("'Bedwarmer'", "'Bottom'", "'Girltoy'", "'House Slave'", "'Lovergirl'", "'Please No'", "'Server'", "'Slave Slut'", "'Sub'", "'Submissive'")>>
-	<<set $situationDesc = "holds a place in the hierarchy of your penthouse that almost demands a nickname. She is the lowest of the low, below even your other slaves. She is a pitiable creature, living with a large number of sexually charged people, slave and free, all of whom have the right to demand any sexual service they wish of her.">>
-	<<set $applyDesc = "has become almost proud of her strange, exhausting situation. Hers is not the struggle of slaves to know their place, for she knows hers. It is on the bottom.">>
-	<<set $notApplyDesc = "begins to hope a little that maybe she can rise beyond her current station.">>
+	<<set $situationDesc = "holds a place in the hierarchy of your penthouse that almost demands a nickname. $He is the lowest of the low, below even your other slaves. $He is a pitiable creature, living with a large number of sexually charged people, slave and free, all of whom have the right to demand any sexual service they wish of $him.">>
+	<<set $applyDesc = "has become almost proud of $his strange, exhausting situation. Hers is not the struggle of slaves to know their place, for $he knows $hers. It is on the bottom.">>
+	<<set $notApplyDesc = "begins to hope a little that maybe $he can rise beyond $his current station.">>
 
 <<case "nipples">>
-	<<set $nickname = either("'Dicknipples'", "'Eye Hazard'", "'Nipples'", "'Nippy'", "'Nips'", "'Pointy'", "'Puffy'", "'THO'", "'Titclits'")>>
-	<<set $situationDesc = "has a pair of nipples that are hard to ignore. Whenever she's sexually aroused, they jut proudly from her chest. As a result, it's totally impossible for her to conceal arousal. When she's ready for it, her big nipples let the whole world know she's easy.">>
-	<<set $applyDesc = "is proud of the nickname, almost amusingly so. She flaunts her nipples in a way she didn't before.">>
-	<<set $notApplyDesc = "accepts that her nipples are just another part of her, and that if she pokes those who fuck her in the missionary position a little, that's all right.">>
+	<<set $nickname = either("'Dicknipples'", "'Eye Hazard'", "'Nipples'", "'Nippy'", "'Nips'", "'Pointy'", "'Puffy'", "'Teats'", "'THO'", "'Titclits'")>>
+	<<set $situationDesc = "has a pair of nipples that are hard to ignore. Whenever $he's sexually aroused, they jut proudly from $his chest. As a result, it's totally impossible for $him to conceal arousal. When $he's ready for it, $his big nipples let the whole world know $he's easy.">>
+	<<set $applyDesc = "is proud of the nickname, almost amusingly so. $He flaunts $his nipples in a way $he didn't before.">>
+	<<set $notApplyDesc = "accepts that $his nipples are just another part of $him, and that if $he pokes those who fuck $him in the missionary position a little, that's all right.">>
 
 <<case "nippleCunts">>
-	<<set $nickname = either("'Cuntnipples'", "'Nipple Fucked'", "'Nipplejob'", "'Bonus Holes'")>>
-	<<set $situationDesc = "has a pair of unassuming nipples that hide an unusual secret: They can take a dick as well as any other hole can. This previously impossible talent is a source of both envy and disgust, and as such, she often finds herself in the center of any breast based discussion.">>
-	<<set $applyDesc = "is proud of the nickname, almost amusingly so. She flaunts her fuckable nipples in a way she didn't before.">>
-	<<set $notApplyDesc = "accepts that her nipples are just another pair of fuckable holes in her body, nothing more.">>
+	<<set $nickname = either("'Bonus Holes'", "'Cuntnipples'", "'Fuckable Nipples'", "'Milk Ducts'", "'Nip Holes'", "'Nip Slipped'", "'Nipple Cunts'", "'Nipple Fucked'", "'Nipplejob'", "'Nippussy'", "'Titjob'")>>
+	<<set $situationDesc = "has a pair of unassuming nipples that hide an unusual secret: They can take a dick as well as any other hole can. This previously impossible talent is a source of both envy and disgust, and as such, $he often finds $himself in the center of any breast based discussion.">>
+	<<set $applyDesc = "is proud of the nickname, almost amusingly so. $He flaunts $his fuckable nipples in a way $he didn't before.">>
+	<<set $notApplyDesc = "accepts that $his nipples are just another pair of fuckable holes in $his body, nothing more.">>
 
 <<case "areolae">>
 	<<set $nickname = either("'Areolae'", "'Areolas'", "'Broad Based'", "'Cans'", "'Dark Circles'", "'Headlights'", "'Highbeams'")>>
-	<<set $situationDesc = "has areolae broader than many slaves' entire breasts. Some slaves find them unattractive, making them an easy target for mockery; others like them, and playfully torment her by giving her a nickname based on them.">>
-	<<set $applyDesc = "is proud of the nickname, almost amusingly so. She flaunts her lovely broad areolae happily, the nipples in their centers hard.">>
-	<<set $notApplyDesc = "accepts that her broad areolae are just another part of her, just like her big tits.">>
+	<<set $situationDesc = "has areolae broader than many slaves' entire breasts. Some slaves find them unattractive, making them an easy target for mockery; others like them, and playfully torment $him by giving $him a nickname based on them.">>
+	<<set $applyDesc = "is proud of the nickname, almost amusingly so. $He flaunts $his lovely broad areolae happily, the nipples in their centers hard.">>
+	<<set $notApplyDesc = "accepts that $his broad areolae are just another part of $him, just like $his big tits.">>
 
 <<case "lips">>
 	<<set $nickname = either("'Beestung'", "'DSLs'", "'Ducklips'", "'Facepussy'", "'Kissy'", "'Lips'", "'Pillows'", "'Smooches'", "'Soup Coolers'")>>
-	<<set $situationDesc = "has lovely lips. They're so big she can hardly talk straight, and they even hinder her ability to communicate any facial expression other than a desire to be facefucked. This is appropriate, as she spends a lot of time getting facefucked.">>
-	<<set $applyDesc = "accepts that her big lips define her. Even more than before, she presents her mouth for oral sex whenever she flirts, and she views her throat as her primary sexual organ.">>
-	<<set $notApplyDesc = "accepts that her mouth is only one of her holes, and that as a sex slave she'll be taking cock in all of them, even if her lips are huge.">>
+	<<set $situationDesc = "has lovely lips. They're so big $he can hardly talk straight, and they even hinder $his ability to communicate any facial expression other than a desire to be facefucked. This is appropriate, as $he spends a lot of time getting facefucked.">>
+	<<set $applyDesc = "accepts that $his big lips define $him. Even more than before, $he presents $his mouth for oral sex whenever $he flirts, and $he views $his throat as $his primary sexual organ.">>
+	<<set $notApplyDesc = "accepts that $his mouth is only one of $his holes, and that as a sex slave $he'll be taking cock in all of them, even if $his lips are huge.">>
 
 <<case "mark">>
-	<<set $nickname = either("'Ass Kisser'", "'Breeder'", "'Chosen'", "'Connections'", "'Favors'", "'Mark'", "'Marked'", "'Special'")>>
-	<<set $situationDesc = "is an Elite Breeder. She has permanently been marked as the mother of societies children. If she isn't currently swelling with life, she will be soon. However, she is also granted special benefits befitting the mother of future generations of gifted children.">>
-	<<set $applyDesc = "takes pride in her new nickname and the bond it displays between her and her sire. She has to make sure that it doesn't go to her head, though.">>
-	<<set $notApplyDesc = "understands that she is expected to obey and fuck just like any of your other slaves, regardless of her status as a breeder.">>
+	<<set $nickname = either("'Ass Kisser'", "'Breeder'", "'Chosen'", "'Connections'", "'Elite'", "'Favors'", "'Mark'", "'Marked'", "'Special'")>>
+	<<set $situationDesc = "is an Elite Breeder. $He has permanently been marked as the mother of society's children. If $he isn't currently swelling with life, $he will be soon. However, $he is also granted special benefits befitting the mother of future generations of gifted children.">>
+	<<set $applyDesc = "takes pride in $his new nickname and the bond it displays between $him and $his sire. $He has to make sure that it doesn't go to $his head, though.">>
+	<<set $notApplyDesc = "understands that $he is expected to obey and fuck just like any of your other slaves, regardless of $his status as a breeder.">>
 
 <<case "broodmother">>
 	<<set $nickname = either("'Baby Factory'", "'Bakery'", "'Bloated'", "'Breeder'", "'Broodmother'", "'Factory'", "'Naedoko'", "'Nursery'", "'Stuffed'")>>
-	<<set $situationDesc = "is a Broodmother. Her belly is enormous, unavoidable evidence that her life has been dedicated to carrying children. Her taut belly is stuffed with her brood and barely gets smaller with every child born from her.">>
-	<<set $applyDesc = "takes a bit of solace from her new hope in her nickname that she will be kept in good shape and not have to worry about her pregnancy draining her, but also a bit of fear from her suspicion that she'll remain this way until she's out of eggs.">>
-	<<set $notApplyDesc = "understands that she is expected to obey, work, and fuck just like any of your other slaves, regardless of how big her pregnancy is.">>
+	<<set $situationDesc = "is a Broodmother. $His belly is enormous, unavoidable evidence that $his life has been dedicated to carrying children. $His taut belly is stuffed with $his brood and barely gets smaller with every child born from $him.">>
+	<<set $applyDesc = "takes a bit of solace from $his new hope in $his nickname that $he will be kept in good shape and not have to worry about $his pregnancy draining $him, but also a bit of fear from $his suspicion that $he'll remain this way until $he's out of eggs.">>
+	<<set $notApplyDesc = "understands that $he is expected to obey, work, and fuck just like any of your other slaves, regardless of how big $his pregnancy is.">>
 	
 <<case "hyperbroodmother">>
 	<<set $nickname = either("'Baby Factory'", "'Broodmother'", "'Bursting'", "'Factory'", "'Hyperbroodmother'", "'Naedoko'", "'Nursery'", "'Seedbed'", "'Seeded'", "'Tentacle Raped'")>>
-	<<set $situationDesc = "is a Broodmother. Her belly is enormous, unavoidable evidence that her life has been dedicated to carrying children. Her taut belly constantly bulges and squirms from her brood writhing within her and it is a very real possibility that she may pop.">>
-	<<set $applyDesc = "takes a bit of solace from her new hope in her nickname that she will be kept in good shape and not have to worry about her pregnancy draining her, but also a bit of fear from her suspicion that she'll remain this way until she dies or her body is used up.">>
-	<<set $notApplyDesc = "understands that she is expected to obey, work, and fuck just like any of your other slaves, regardless of how big her pregnancy is.">>
+	<<set $situationDesc = "is a Broodmother. $His belly is enormous, unavoidable evidence that $his life has been dedicated to carrying children. $His taut belly constantly bulges and squirms from $his brood writhing within $him and it is a very real possibility that $he may pop.">>
+	<<set $applyDesc = "takes a bit of solace from $his new hope in $his nickname that $he will be kept in good shape and not have to worry about $his pregnancy draining $him, but also a bit of fear from $his suspicion that $he'll remain this way until $he dies or $his body is used up.">>
+	<<set $notApplyDesc = "understands that $he is expected to obey, work, and fuck just like any of your other slaves, regardless of how big $his pregnancy is.">>
 
 <<case "hyperpreg">>
 	<<set $nickname = either("'Balloon'", "'Bulgey'", "'Bulging'", "'Bursting'", "'Clown Car'", "'Hyperbreeder'", "'Hyperfertile'", "'Hyperpreg'", "'Squirming'", "'Squirmy'", "'Waterslide'")>>
-	<<set $situationDesc = "is a breeding slave. Her belly is huge, unavoidable evidence that she's very pregnant. Her taut belly constantly bulges and squirms from her brood writhing within her and it is a very real possibility that she may pop.">>
-	<<set $applyDesc = "takes a bit of solace from her new hope at her nickname that she will be kept in good shape and not have to worry about the size of her pregnancy, and a bit of fear from her suspicion that producing babies is her whole future.">>
-	<<set $notApplyDesc = "understands that she is expected to obey, work, and fuck just like any of your other slaves, regardless of how big her pregnancy is.">>
+	<<set $situationDesc = "is a breeding slave. $His belly is huge, unavoidable evidence that $he's very pregnant. $His taut belly constantly bulges and squirms from $his brood writhing within $him and it is a very real possibility that $he may pop.">>
+	<<set $applyDesc = "takes a bit of solace from $his new hope at $his nickname that $he will be kept in good shape and not have to worry about the size of $his pregnancy, and a bit of fear from $his suspicion that producing babies is $his whole future.">>
+	<<set $notApplyDesc = "understands that $he is expected to obey, work, and fuck just like any of your other slaves, regardless of how big $his pregnancy is.">>
 
 <<case "babymaker">>
 	<<set $nickname = either("'Baby Maker'", "'Babymaker'", "'Baker'", "'Belly Popper'", "'Breeding Boar'", "'Breeding Bull'", "'Breeding Stallion'", "'Breeding Stud'", "'Cannon'", "'Cum Cannon'", "'Daddy'", "'Fire Hose'", "'Popper'", "'Potent'", "'Sirer'", "'Womb Filler'")>>
-	<<set $situationDesc = "is a terror to any fertile girl she fucks. Horrifically potent, she leaves a trail of pregnancies in her wake. A great deal of the babies in your slaves might just be hers.">>
-	<<set $applyDesc = "takes a bit of pride from her new nickname and hopes you'll keep letting her knock bitches up.">>
-	<<set $notApplyDesc = "understands that she is a slave and it is not her place to decide who gets pregnant and who doesn't.">>
+	<<set $situationDesc = "is a terror to any fertile girl $he fucks. Horrifically potent, $he leaves a trail of pregnancies in $his wake. A great deal of the babies in your slaves might just be $hers.">>
+	<<set $applyDesc = "takes a bit of pride from $his new nickname and hopes you'll keep letting $him knock bitches up.">>
+	<<set $notApplyDesc = "understands that $he is a slave and it is not $his place to decide who gets pregnant and who doesn't.">>
 
 <<case "fertilityGoddess">>
 	<<switch $activeSlave.nationality>>
@@ -1062,33 +1062,33 @@
 			<<set $nickname = either("'Gaia'", "'Venus'")>>
 		<</if>>
 	<</switch>>
-	<<set $situationDesc = "is the spitting image of a fertility idol. With her wide hips, heavy bosom and fecund belly, she lives up to the title.">>
-	<<set $applyDesc = "takes pride in her radiant form and hopes that she'll be treated as a goddess for possessing it.">>
-	<<set $notApplyDesc = "accepts that her motherly curves are just the mark of a sex slave and not a goddess.">>
+	<<set $situationDesc = "is the spitting image of a fertility idol. With $his wide hips, heavy bosom and fecund belly, $he lives up to the title.">>
+	<<set $applyDesc = "takes pride in $his radiant form and hopes that $he'll be treated as a goddess for possessing it.">>
+	<<set $notApplyDesc = "accepts that $his motherly curves are just the mark of a sex slave and not a goddess.">>
 
 <<case "superSquirter">>
 	<<set $nickname = either("'Baby'", "'Bedwetter'", "'Fountain'", "'Geyser'", "'Girlcum'", "'Gusher'", "'Needs Diapers'", "'Panty Wetter'", "'Squirter'", "'Super Soaker'", "'Super Squirter'", "'Water Park'", "'Wet'")>>
-	<<set $situationDesc = "completely soaks herself and her partners whenever she cums. Every orgasm from her unleashes a waterfall of girlcum from her pussy.">>
-	<<set $applyDesc = "takes pride in the amount of girlcum she makes, even though it looks like she peed herself when she cums with her clothes on.">>
-	<<set $notApplyDesc = "understands that she must learn to control herself and stop soaking her partners, clothes and bed.">>
+	<<set $situationDesc = "completely soaks $himself and $his partners whenever $he cums. Every orgasm from $him unleashes a waterfall of girlcum from $his pussy.">>
+	<<set $applyDesc = "takes pride in the amount of girlcum $he makes, even though it looks like $he peed $himself when $he cums with $his clothes on.">>
+	<<set $notApplyDesc = "understands that $he must learn to control $himself and stop soaking $his partners, clothes and bed.">>
 
 <<case "labia">>
-	<<set $nickname = either("'Blooming'", "'Curtains'", "'Flaps'", "'Flower'", "'Folds'", "'Labia'", "'Lips'", "'Lower Lips'", "'Meatflaps'", "'Petals'", "'Pussylips'", "'Roastie'")>>
-	<<set $situationDesc = "has pretty pussylips, larger than most girls'. When she's aroused they announce her state to the whole world, becoming engorged with lust. Other slaves can't help but notice, and mock her uniqueness down there.">>
-	<<set $applyDesc = "really starts to see the appearance of her pussy as a trademark. She's prouder of it than she was before, and she enjoys sex a bit more too, really appreciating it when she gets to feel another slave gently nibble her lovely folds.">>
-	<<set $notApplyDesc = "accepts that the most important part of her vagina is the warm, wet interior, not the generously endowed exterior.">>
+	<<set $nickname = either("'Blooming'", "'Curtains'", "'Flaps'", "'Flower'", "'Folds'", "'Labes'", "'Labia'", "'Lips'", "'Lower Lips'", "'Meatflaps'", "'Petals'", "'Pussylips'", "'Roastie'")>>
+	<<set $situationDesc = "has pretty pussylips, larger than most girls'. When $he's aroused they announce $his state to the whole world, becoming engorged with lust. Other slaves can't help but notice, and mock $his uniqueness down there.">>
+	<<set $applyDesc = "really starts to see the appearance of $his pussy as a trademark. $He's prouder of it than $he was before, and $he enjoys sex a bit more too, really appreciating it when $he gets to feel another slave gently nibble $his lovely folds.">>
+	<<set $notApplyDesc = "accepts that the most important part of $his vagina is the warm, wet interior, not the generously endowed exterior.">>
 
 <<case "old">>
 	<<set $nickname = either("'Auntie'", "'Big Sis'", "'Cougar'", "'Cradle Robber'", "'Jukusei'", "'Mama'", "'Mature'", "'MILF'", "'Mom'", "'Momma'", "'Mommy'", "'Mother'", "'Oba-san'", "'Okā-san'", "'Old'", "'Onē-san'", "'Seasoned'")>>
-	<<set $situationDesc = "is older than the average Free Cities slave. It has its downsides; she's worth less at sale and her earning potential as a whore is lower. But, on the other hand, good experience is irreplaceable, and in your experience all slaves feel remarkably similar inside, regardless of age. Nevertheless, some younger slaves resent her.">>
-	<<set $applyDesc = "understands that far from being a mockery, your sanction has turned an intended insult into a reference to the advantages of her years.">>
-	<<set $notApplyDesc = "understands that she must do her best to fuck like the teenager she isn't.">>
+	<<set $situationDesc = "is older than the average Free Cities slave. It has its downsides; $he's worth less at sale and $his earning potential as a whore is lower. But, on the other hand, good experience is irreplaceable, and in your experience all slaves feel remarkably similar inside, regardless of age. Nevertheless, some younger slaves resent $him.">>
+	<<set $applyDesc = "understands that far from being a mockery, your sanction has turned an intended insult into a reference to the advantages of $his years.">>
+	<<set $notApplyDesc = "understands that $he must do $his best to fuck like the teenager $he isn't.">>
 
 <<case "reallyold">>
 	<<set $nickname = either("'Aged'", "'Elder'", "'Elderly'", "'Generation X'", "'Geriatric'", "'GILF'", "'GMILF'", "'Grandma'", "'Grandmother'", "'Granny'", "'Nanna'", "'Obā-chan'", "'Old'", "'Oldie'", "'Really Old'", "'Senior Citizen'", "'Senior'")>>
-	<<set $situationDesc = "is old. Really old. Old enough to be a grandmother. This, naturally, makes her one of the most experienced sluts in the arcology, a desirable quality in and of itself. Many of the younger slaves mock her relentlessly for her age.">>
-	<<set $applyDesc = "accepts her new nickname with pride. This acknowledgement of her age has her ready to show these young sluts a thing or two.">>
-	<<set $notApplyDesc = "understands that she must do her best to fuck like the teenager she once was.	">>
+	<<set $situationDesc = "is old. Really old. Old enough to be a grandmother. This, naturally, makes $him one of the most experienced sluts in the arcology, a desirable quality in and of itself. Many of the younger slaves mock $him relentlessly for $his age.">>
+	<<set $applyDesc = "accepts $his new nickname with pride. This acknowledgement of $his age has $him ready to show these young sluts a thing or two.">>
+	<<set $notApplyDesc = "understands that $he must do $his best to fuck like the teenager $he once was.	">>
 
 <<case "young">>
 	<<set $nickname = either("'Baby'", "'Babycakes'", "'Candydoll'", "'Imouto'", "'Jailbait'", "'Juliet'", "'Kiddie'", "'Kiddo'", "'Loli'", "'Lolita'", "'Party Van'", "'Pedobait'", "'Pocket Pussy'", "'POMF'", "'Precocious'", "'PTHC'", "'Underage'", "'Young'")>>
@@ -1102,79 +1102,79 @@
 			<<set $nickname = either("'Barely Legal'")>>
 		<</if>>
 	<</if>>
-	<<set $situationDesc = "is yet underage by old world standards, and some older slaves do not let her forget that.">>
-	<<set $applyDesc = "understands that far from being a mockery, your sanction has turned an intended insult into a reference to the appeal of her years.">>
-	<<set $notApplyDesc = "understands that despite her young age she must do her best to fuck like the most veteran of whores.">>
+	<<set $situationDesc = "is yet underage by old world standards, and some older slaves do not let $him forget that.">>
+	<<set $applyDesc = "understands that far from being a mockery, your sanction has turned an intended insult into a reference to the appeal of $his years.">>
+	<<set $notApplyDesc = "understands that despite $his young age $he must do $his best to fuck like the most veteran of whores.">>
 
 <<case "trans">>
 	<<set $nickname = either("'Girly'", "'Kathoey'", "'Ladyboy'", "'Legs Crossed'", "'Missie'", "'Queen'", "'Shemale'", "'Surprise'", "'T-Girl'", "'Tranny'", "'Trans'", "'Transgender'", "'Trap'", "'Trick'")>>
-	<<set $situationDesc = "might have looked like a sissy or a trap at some point, but she no longer does. She has the curves and the face to be mistaken for a natural woman if she wears clothes that conceal her cock, which is an ability with all sorts of interesting uses. Mockery always fixes on what's unusual, of course, and some of your other slaves even envy her equipment.">>
-	<<set $applyDesc = "believes that you approve of her as she is now, and that she can treat her dick as an asset.">>
-	<<set $notApplyDesc = "understands that she must do her best to fuck like the natural girl she isn't.">>
+	<<set $situationDesc = "might have looked like a sissy or a trap at some point, but $he no longer does. $He has the curves and the face to be mistaken for a natural woman if $he wears clothes that conceal $his cock, which is an ability with all sorts of interesting uses. Mockery always fixes on what's unusual, of course, and some of your other slaves even envy $his equipment.">>
+	<<set $applyDesc = "believes that you approve of $him as $he is now, and that $he can treat $his dick as an asset.">>
+	<<set $notApplyDesc = "understands that $he must do $his best to fuck like the natural girl $he isn't.">>
 
 <<case "amp">>
 	<<set $nickname = either("'Amp'", "'Amputee'", "'Cocksock'", "'Cripple'", "'Dickholster'", "'Fleshlight'", "'Fucknugget'", "'Fucktoy'", "'Limbless'", "'Nubs'", "'Onahole'", "'Pocket Pussy'", "'Quadruple'", "'Stumps'", "'Stumpy'", "'Torso'")>>
-	<<set $situationDesc = "is a fun little fucktoy, a limbless torso with nice wet holes than can be used regardless of her feelings. Giving a poor quadruple amputee a nickname might seem like stooping to wanton cruelty, but other slaves are willing to call her anything to take their minds off their own status.">>
-	<<set $applyDesc = "takes a tiny bit of solace from her nickname, hoping that by accepting it, you were expressing an enjoyment of her attenuated body.">>
-	<<set $notApplyDesc = "understands that she would be a sex toy even if she still had arms and legs.">>
+	<<set $situationDesc = "is a fun little fucktoy, a limbless torso with nice wet holes than can be used regardless of $his feelings. Giving a poor quadruple amputee a nickname might seem like stooping to wanton cruelty, but other slaves are willing to call $him anything to take their minds off their own status.">>
+	<<set $applyDesc = "takes a tiny bit of solace from $his nickname, hoping that by accepting it, you were expressing an enjoyment of $his attenuated body.">>
+	<<set $notApplyDesc = "understands that $he would be a sex toy even if $he still had arms and legs.">>
 
 <<case "blind">>
 	<<set $nickname = either("'Batty'", "'Blind'", "'Braille'", "'Cataracts'", "'Crash'", "'Deadeye'", "'Eyeless'", "'No-Sight'", "'Sightless'", "'Stares'", "'White Cane'")>>
-	<<set $situationDesc = "is blind. Her dull eyes reveal her condition. She has to feel her way between jobs and is at the mercy of everyone.">>
-	<<set $applyDesc = "accepts that her disability defines her. She keeps her eyes wide open, no longer fearing what others say about them.">>
-	<<set $notApplyDesc = "understands that she is expected to obey, work, and fuck just like any of your other slaves, regardless of her eyesight.">>
+	<<set $situationDesc = "is blind. $His dull eyes reveal $his condition. $He has to feel $his way between jobs and is at the mercy of everyone.">>
+	<<set $applyDesc = "accepts that $his disability defines $him. $He keeps $his eyes wide open, no longer fearing what others say about them.">>
+	<<set $notApplyDesc = "understands that $he is expected to obey, work, and fuck just like any of your other slaves, regardless of $his eyesight.">>
 
 <<case "preg">>
 	<<set $nickname = either("'Breeder'", "'Breeding Bitch'", "'Breeding Cow'", "'Breeding Mare'", "'Breeding Sow'", "'Breeding Stock'", "'Broodmother'", "'Fertile'", "'Mare'", "'Mommy'", "'Mother'", "'Ninpuchan'", "'Preg'", "'Preggers'")>>
-	<<set $situationDesc = "is a breeding slave. Her belly seems to grow daily, unavoidable evidence that she's pregnant. Most men prefer slaves without pregnant stomachs, but those that enjoy them adore her. She occupies a strange place in slave culture, desired and abhorred, hopeful and fearful.">>
-	<<set $applyDesc = "takes a bit of solace from her new hope at her nickname that she will be allowed to complete her pregnancy, and a bit of fear from her suspicion that producing babies is her whole future.">>
-	<<set $notApplyDesc = "understands that she is expected to obey, work, and fuck just like any of your other slaves, regardless of her pregnancy.">>
+	<<set $situationDesc = "is a breeding slave. $His belly seems to grow daily, unavoidable evidence that $he's pregnant. Most men prefer slaves without pregnant stomachs, but those that enjoy them adore $him. $He occupies a strange place in slave culture, desired and abhorred, hopeful and fearful.">>
+	<<set $applyDesc = "takes a bit of solace from $his new hope at $his nickname that $he will be allowed to complete $his pregnancy, and a bit of fear from $his suspicion that producing babies is $his whole future.">>
+	<<set $notApplyDesc = "understands that $he is expected to obey, work, and fuck just like any of your other slaves, regardless of $his pregnancy.">>
 
 <<case "hung">>
 	<<set $nickname = either("'Anaconda'", "'Bitchbreaker'", "'Dangle'", "'Hung'", "'Long Dong'", "'Long'", "'Shaft'", "'Swingin' Dick'", "'Tentpole'", "'Third Arm'", "'Third Leg'", "'Tripod'")>>
-	<<set $situationDesc = "is a Free Cities sex slave, which makes her a girl. The pretension is hard to maintain at times, however, as her massive member swings around, gets in the way, sticks out of clothing, and blows huge loads. Half the fun of using her butt is making her absurd dick slap around. It's an obvious target for a nickname, especially since more than one slave has personal experience with how she feels inside them.">>
-	<<set $applyDesc = "enjoys being nicknamed for her dick. She's special, her dick is special, and now that she's been nicknamed for it, she's confident she and her dick will be allowed to go on being special.">>
-	<<set $notApplyDesc = "realizes that she's just a slave girl behind, no matter what's dangling in front, and does her best to take it like one.">>
+	<<set $situationDesc = "is a Free Cities sex slave, which makes $him a girl. The pretension is hard to maintain at times, however, as $his massive member swings around, gets in the way, sticks out of clothing, and blows huge loads. Half the fun of using $his butt is making $his absurd dick slap around. It's an obvious target for a nickname, especially since more than one slave has personal experience with how $he feels inside them.">>
+	<<set $applyDesc = "enjoys being nicknamed for $his dick. $He's special, $his dick is special, and now that $he's been nicknamed for it, $he's confident $he and $his dick will be allowed to go on being special.">>
+	<<set $notApplyDesc = "realizes that $he's just a slave girl behind, no matter what's dangling in front, and does $his best to take it like one.">>
 
 <<case "gelding">>
-	<<set $nickname = either("'Castrated'", "'Clipped'", "'Empty'", "'Fixed'", "'Gelded'", "'Gelding'", "'Limp'", "'Neutered'", "'Nipped'", "'Sackless'", "'Soft'")>>
-	<<set $situationDesc = "is a Free Cities sex slave, which makes her a girl. This is an easier thing for her to accept since her testicles were removed. The lack of testosterone makes her docile and more accepting of her proper role as a receptacle for hard dick. Naturally, other slaves have taken notice.">>
-	<<set $applyDesc = "naturally viewed her own castration as a subject of revulsion and horror. Now, though, she begins to see herself as filling a right and proper role as a gelded slave.">>
-	<<set $notApplyDesc = "realizes that the process of turning her from what she was into what she is did not make her special.">>
+	<<set $nickname = either("'Ball-Less'", "'Castrated'", "'Clipped'", "'Desexed'", "'Emasculate'", "'Empty'", "'Eunuch'", "'Fixed'", "'Gelded'", "'Gelding'", "'Limp'", "'Neutered'", "'Nipped'", "'Sackless'", "'Soft'", "'Sterilized'")>>
+	<<set $situationDesc = "is a Free Cities sex slave, which makes $him a girl. This is an easier thing for $him to accept since $his testicles were removed. The lack of testosterone makes $him docile and more accepting of $his proper role as a receptacle for hard dick. Naturally, other slaves have taken notice.">>
+	<<set $applyDesc = "naturally viewed $his own castration as a subject of revulsion and horror. Now, though, $he begins to see $himself as filling a right and proper role as a gelded slave.">>
+	<<set $notApplyDesc = "realizes that the process of turning $him from what $he was into what $he is did not make $him special.">>
 
 <<case "short">>
 	<<set $nickname = either("'Cock Sock'", "'Fun Size'", "'Funsize'", "'Midget'", "'Miniature'", "'Napoleon'", "'Petite'", "'Pipsqueak'", "'Pocket Pussy'", "'Short'", "'Shortstack'", "'Shortstuff'", "'Shorty'", "'Shrimp'", "'Stumpy'", "'Tiny'", "'Waif'")>>
-	<<set $situationDesc = "is fairly low to the ground. This makes her a bit different, sexually; she's better for several oral sex positions, but most standing positions turn into a game of how long her partner can hold her at the appropriate height.">>
-	<<set $applyDesc = "is a little proud that her diminutive stature, once nothing but a source of embarrassment, is apparently significant to you.">>
-	<<set $notApplyDesc = "realizes that she'll just have to reach higher to make up for her height, since you don't consider it special.">>
+	<<set $situationDesc = "is fairly low to the ground. This makes $him a bit different, sexually; $he's better for several oral sex positions, but most standing positions turn into a game of how long $his partner can hold $him at the appropriate height.">>
+	<<set $applyDesc = "is a little proud that $his diminutive stature, once nothing but a source of embarrassment, is apparently significant to you.">>
+	<<set $notApplyDesc = "realizes that $he'll just have to reach higher to make up for $his height, since you don't consider it special.">>
 
 <<case "tall">>
 	<<set $nickname = either("'Alpine'", "'B-Baller'", "'Basketballer'", "'Beanpole'", "'Beanstalk'", "'Everest'", "'Giant'", "'Giantess'", "'Giraffe'", "'Jumbo'", "'Lofty'", "'Mountain'", "'Redwood'", "'Skyscraper'", "'Slim'", "'Stretch'", "'Tall'", "'Top'", "'Tower'")>>
-	<<set $situationDesc = "is impressively tall for a girl. This makes her sexually convenient, since her holes are at convenient cock height. She spends many of her sexual encounters bent slightly at the waist to allow herself to be taken from behind.">>
-	<<set $applyDesc = "is quite proud of her impressive height, even more so than before. She resolves to tower over other slaves sexually as well as literally.">>
-	<<set $notApplyDesc = "realizes that being tall doesn't make her special, and understands that it's her holes that make her, not how high they are.">>
+	<<set $situationDesc = "is impressively tall for a girl. This makes $him sexually convenient, since $his holes are at convenient cock height. $He spends many of $his sexual encounters bent slightly at the waist to allow $himself to be taken from behind.">>
+	<<set $applyDesc = "is quite proud of $his impressive height, even more so than before. $He resolves to tower over other slaves sexually as well as literally.">>
+	<<set $notApplyDesc = "realizes that being tall doesn't make $him special, and understands that it's $his holes that make $him, not how high they are.">>
 
 <<case "boobs">>
 	<<set $nickname = either("'Airbags'", "'Bazookas'", "'Boob'", "'Boobs'", "'Bosom'", "'Bouncing'", "'Bouncy'", "'Bristols'", "'Chounyuu'", "'Funbags'", "'Hooters'", "'Jugs'", "'Knockers'", "'Melons'", "'Norks'", "'Oppai'", "'Stacked'", "'Tatas'", "'Titties'", "'Titty'")>>
-	<<set $situationDesc = "has large breasts. Pointing this out is about as observant as describing the sky as blue. When she enters a room, they precede her. When she takes it doggy style, they prop her up. Other slaves are envious of the attention she gets, and happy they don't have to carry such burdens.">>
-	<<set $applyDesc = "was of course proud of her huge breasts before this new nickname. Now, though, she accepts them as a sort of trademark.">>
-	<<set $notApplyDesc = "accepts that having titanic tits does not make her special, since what's important is her holes, not her boobs.">>
+	<<set $situationDesc = "has large breasts. Pointing this out is about as observant as describing the sky as blue. When $he enters a room, they precede $him. When $he takes it doggy style, they prop $him up. Other slaves are envious of the attention $he gets, and happy they don't have to carry such burdens.">>
+	<<set $applyDesc = "was of course proud of $his huge breasts before this new nickname. Now, though, $he accepts them as a sort of trademark.">>
+	<<set $notApplyDesc = "accepts that having titanic tits does not make $him special, since what's important is $his holes, not $his boobs.">>
 
 <<case "butt">>
 	<<set $nickname = either("'Ass'", "'Backside'", "'Badonkadonk'", "'Big Ass'", "'Bootylicious'", "'Bottom'", "'Brazilian'", "'Bunda'", "'Buns'", "'Butt'", "'Buttocks'", "'Heiny'", "'Jiggly'", "'Milkshake'", "'Moneymaker'", "'Rear End'", "'Rump'", "'Thunder Thighs'", "'Tuckus'", "'Tushy'", "'Wide Load'")>>
-	<<set $situationDesc = "has a large ass. Pointing this out is about as observant as describing the sky as blue. (Though impressive for other reasons, for her sexual partners, since they sometimes have difficulty drawing breath for such remarks.) When she enters a room, it follows her. When she takes it doggy style, it pads penetration to an almost inconvenient degree. Other slaves are envious of the attention she gets, and happy they don't have to carry such burdens.">>
-	<<set $applyDesc = "was of course proud of her huge ass before this new nickname. Now, though, she accepts it as a sort of trademark.">>
-	<<set $notApplyDesc = "accepts that having a massive ass does not make her special, since what's important is her holes, not her buttocks.">>
+	<<set $situationDesc = "has a large ass. Pointing this out is about as observant as describing the sky as blue. (Though impressive for other reasons, for $his sexual partners, since they sometimes have difficulty drawing breath for such remarks.) When $he enters a room, it follows $him. When $he takes it doggy style, it pads penetration to an almost inconvenient degree. Other slaves are envious of the attention $he gets, and happy they don't have to carry such burdens.">>
+	<<set $applyDesc = "was of course proud of $his huge ass before this new nickname. Now, though, $he accepts it as a sort of trademark.">>
+	<<set $notApplyDesc = "accepts that having a massive ass does not make $him special, since what's important is $his holes, not $his buttocks.">>
 
 <<case "virgin">>
-	<<set $nickname = either("'Abstinent'", "'Chaste'", "'Chastity'", "'Doomed'", "'Flower'", "'Innocent'", "'Maiden'", "'Pristine'", "'Pure'", "'Unbroken'", "'Unspoilt'", "'Vestal'", "'Virgin'")>>
+	<<set $nickname = either("'Abstinent'", "'Celibate'", "'Chaste'", "'Chastity'", "'Doomed'", "'Flower'", "'Innocent'", "'Maiden'", "'Pristine'", "'Pucelle'", "'Pure'", "'Unbroken'", "'Unicorn Bait'", "'Unspoilt'", "'Vestal'", "'Virgin'", "'Virginal'")>>
 	<<set $situationDesc = "has never had vanilla sex. This is not unusual in the Free Cities, since many slaveowners value and preserve virginity. Virgins form a separate class of sorts among slaves. Some of them even dislike their status, as having a virgin pussy can often result in a tired tongue or a sore butt.">>
-	<<set $applyDesc = "understands that it's her fate to remain unspoiled a while longer, and redoubles her efforts to do better with her other parts.">>
-	<<set $notApplyDesc = "dreads and anticipates the day when she'll lose her pearl of great price and gain another way to please a man.">>
+	<<set $applyDesc = "understands that it's $his fate to remain unspoiled a while longer, and redoubles $his efforts to do better with $his other parts.">>
+	<<set $notApplyDesc = "dreads and anticipates the day when $he'll lose $his pearl of great price and gain another way to please a man.">>
 
 <</switch>>
 
-<<EventNameLink $activeSlave>> $situationDesc You begin to overhear your other slaves refer to her as @@.pink;$nickname $activeSlave.slaveName.@@
+<<EventNameLink $activeSlave>> $situationDesc You begin to overhear your other slaves refer to $him as @@.pink;$nickname $activeSlave.slaveName.@@
 
 <br><br>
 
@@ -1184,7 +1184,7 @@
 <<link "Encourage use of the nickname">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	Whatever $activeSlave.slaveName's feelings about being called $nickname were, she knows they're moot the first time she hears you refer to her that way. @@.hotpink;She has become more submissive to you.@@ $activeSlave.slaveName $applyDesc
+	Whatever $activeSlave.slaveName's feelings about being called $nickname were, $he knows they're moot the first time $he hears you refer to $him that way. @@.hotpink;$He has become more submissive to you.@@ $activeSlave.slaveName $applyDesc
 	<<set $activeSlave.devotion += 4>>
 	<<set $activeSlave.slaveName = ($nickname + " " + $activeSlave.slaveName)>>
 	<</replace>>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 8f097c1aa68..d50361ee901 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -1155,9 +1155,9 @@ $His
 		$His overworked, overfull breasts press its nipples through the holes mercilessly.
 	<<else>>
 		<<if $activeSlave.nipples == "fuckable">>
-			$His fuckable nipples prevent $his from releasing milk spontaneously. The lactation drugs are so powerful that if $he hasn't been milked in the past hour or so, the built-up pressure leaves $his <<if !canTalk($activeSlave)>>weeping<<else>>whining<</if>> piteously; makes for an interesting nipple fuck, however.
+			$His fuckable nipples prevent $him from releasing milk spontaneously. The lactation drugs are so powerful that if $he hasn't been milked in the past hour or so, the built-up pressure leaves $his <<if !canTalk($activeSlave)>>weeping<<else>>whining<</if>> piteously; makes for an interesting nipple fuck, however.
 		<<elseif $activeSlave.nipples == "inverted">>
-			$His inverted nipples prevent $his from releasing milk spontaneously. The lactation drugs are so powerful that if $he hasn't been milked in the past hour or so, the built-up pressure leaves $his <<if !canTalk($activeSlave)>>weeping<<else>>whining<</if>> piteously.
+			$His inverted nipples prevent $him from releasing milk spontaneously. The lactation drugs are so powerful that if $he hasn't been milked in the past hour or so, the built-up pressure leaves $his <<if !canTalk($activeSlave)>>weeping<<else>>whining<</if>> piteously.
 		<<elseif $activeSlave.energy > 95>>
 			The powerful lactation drugs keep $his breasts so full of milk that when $he orgasms <<if $activeSlave.balls > 0>>$he releases three jets of white fluid: a stream of milk from each nipple and a squirt of cum from $his dickhead<<else>>$he cums milk out of $his nipples<</if>>.
 		<<else>>
-- 
GitLab


From 9fd99783afd05ed8dc0baf79972fc4008784f483 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sat, 28 Jul 2018 11:29:09 -0400
Subject: [PATCH 150/189] Deleted the wrong line

---
 src/uncategorized/saLongTermEffects.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index e7963ff7fe3..88b0cafa662 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -3049,7 +3049,7 @@
 				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
-		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $slaves[$i].devotion > 75>>
+		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $slaves[$i].devotion > 75>>
 			$He's been marked to be the bearer of your offspring and is growing larger by the day with your child. $He is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
-- 
GitLab


From 7b571669bc8b9cc6afa88f07508abdbcadc96492 Mon Sep 17 00:00:00 2001
From: Blank <okp57855@psoxs.com>
Date: Sat, 28 Jul 2018 10:20:56 -0700
Subject: [PATCH 151/189] Additional commaNum usage

---
 src/uncategorized/longSlaveDescription.tw | 12 ++--
 src/utility/descriptionWidgetsFlesh.tw    | 82 +++++++++++------------
 2 files changed, 47 insertions(+), 47 deletions(-)

diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index 5df6b8da305..eb7e0080ca5 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -393,23 +393,23 @@ $He comes to you for an inspection
 	<</if>>
 
 	<<if ($activeSlave.oralCount + $activeSlave.vaginalCount + $activeSlave.analCount + $activeSlave.mammaryCount + $activeSlave.penetrativeCount) > 0>>
-		and has been fucked about <<print ($activeSlave.oralCount + $activeSlave.vaginalCount + $activeSlave.analCount + $activeSlave.mammaryCount + $activeSlave.penetrativeCount)>> times, including
+		and has been fucked about <<print commaNum($activeSlave.oralCount + $activeSlave.vaginalCount + $activeSlave.analCount + $activeSlave.mammaryCount + $activeSlave.penetrativeCount)>> times, including
 		<<if $activeSlave.mammaryCount > 0>>
-			$activeSlave.mammaryCount mammary,
+			<<print commaNum($activeSlave.mammaryCount)>> mammary,
 		<</if>>
 		<<if $activeSlave.vaginalCount > 0>>
-			$activeSlave.vaginalCount vanilla,
+			<<print commaNum($activeSlave.vaginalCount)>> vanilla,
 		<</if>>
 		<<if $activeSlave.analCount > 0>>
-			$activeSlave.analCount anal,
+			<<print commaNum($activeSlave.analCount)>> anal,
 		<</if>>
 		<<if $activeSlave.penetrativeCount > 0>>
-			$activeSlave.penetrativeCount penetrating,
+			<<print commaNum($activeSlave.penetrativeCount)>> penetrating,
 		<</if>>
 		<<if ($activeSlave.penetrativeCount+$activeSlave.mammaryCount+$activeSlave.vaginalCount+$activeSlave.analCount) > 0>>
 			 and
 		<</if>>
-		$activeSlave.oralCount oral sexual encounters.
+		<<print commaNum($activeSlave.oralCount)>> oral sexual encounters.
 	<<else>>
 		<<if $week-$activeSlave.weekAcquired >= 1>>
 			and
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 8f097c1aa68..0b81ea3e98b 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -778,66 +778,66 @@ $His
 <<elseif $activeSlave.boobs < 500>><<print either("perky", "small")>> <<print either("tits", "breasts", "boobs", "bosoms")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill B cups.
 <<elseif $activeSlave.boobs < 650>><<print either("healthy", "curved")>> <<print either("tits", "breasts", "boobs", "bosoms")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill C cups.
 <<elseif $activeSlave.boobs < 800>><<print either("big", "sizable")>> <<print either("tits", "breasts", "boobs", "bosoms")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill D cups.
-<<elseif $activeSlave.boobs < 1000>><<print either("large", "big")>> <<print either("tits", "breasts", "boobs", "bosoms")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill DD cups.
-<<elseif $activeSlave.boobs < 1200>><<print either("proud", "hefty")>> <<print either("tits", "breasts", "mammaries", "udders", "boobs")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill F cups.
-<<elseif $activeSlave.boobs < 1400>><<print either("hefty", "huge")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill G cups.
-<<elseif $activeSlave.boobs < 1600>><<print either("massive", "huge")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill H cups.
-<<elseif $activeSlave.boobs < 1800>><<print either("enormous", "massive")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill I cups.
-<<elseif $activeSlave.boobs < 2050>><<print either("titanic", "enormous")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill J cups.
-<<elseif $activeSlave.boobs < 2300>><<print either("stupendous", "titanic")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill K cups.
-<<elseif $activeSlave.boobs < 2600>><<print either("magnificent", "stupendous")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill L cups.
-<<elseif $activeSlave.boobs < 2900>><<print either("impressive", "magnificent")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill M cups.
-<<elseif $activeSlave.boobs < 3250>><<print either("awe-inspiring", "impressive")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill N cups.
-<<elseif $activeSlave.boobs < 3600>><<print either("absurd", "awe-inspiring")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill O cups.
-<<elseif $activeSlave.boobs < 3950>><<print either("disproportionate", "attention-grabbing")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill P cups.
-<<elseif $activeSlave.boobs < 4300>><<print either("shocking", "massive")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill Q cups.
-<<elseif $activeSlave.boobs < 4700>><<print either("striking", "jaw-dropping")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill R cups.
+<<elseif $activeSlave.boobs < 1000>><<print either("large", "big")>> <<print either("tits", "breasts", "boobs", "bosoms")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill DD cups.
+<<elseif $activeSlave.boobs < 1200>><<print either("proud", "hefty")>> <<print either("tits", "breasts", "mammaries", "udders", "boobs")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill F cups.
+<<elseif $activeSlave.boobs < 1400>><<print either("hefty", "huge")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill G cups.
+<<elseif $activeSlave.boobs < 1600>><<print either("massive", "huge")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill H cups.
+<<elseif $activeSlave.boobs < 1800>><<print either("enormous", "massive")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill I cups.
+<<elseif $activeSlave.boobs < 2050>><<print either("titanic", "enormous")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill J cups.
+<<elseif $activeSlave.boobs < 2300>><<print either("stupendous", "titanic")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill K cups.
+<<elseif $activeSlave.boobs < 2600>><<print either("magnificent", "stupendous")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill L cups.
+<<elseif $activeSlave.boobs < 2900>><<print either("impressive", "magnificent")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill M cups.
+<<elseif $activeSlave.boobs < 3250>><<print either("awe-inspiring", "impressive")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill N cups.
+<<elseif $activeSlave.boobs < 3600>><<print either("absurd", "awe-inspiring")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill O cups.
+<<elseif $activeSlave.boobs < 3950>><<print either("disproportionate", "attention-grabbing")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill P cups.
+<<elseif $activeSlave.boobs < 4300>><<print either("shocking", "massive")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill Q cups.
+<<elseif $activeSlave.boobs < 4700>><<print either("striking", "jaw-dropping")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill R cups.
 <<elseif $activeSlave.boobs < 5000+($activeSlave.muscles*10) && $activeSlave.physicalAge <= 3>>
 	<<if ($activeSlave.amp == 1)>>
-		<<print either("tremendous", "astounding")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill S cups and are so large that $he might not be able to walk, if $he still had legs.
+		<<print either("tremendous", "astounding")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill S cups and are so large that $he might not be able to walk, if $he still had legs.
 	<<elseif ($activeSlave.muscles > 5)>>
-		<<print either("tremendous", "astounding")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill S cups and are so large that $his <<if $activeSlave.muscles > 95>>shredded<<elseif $activeSlave.muscles > 30>>rippling<<else>>toned<</if>> back muscles get a workout just from supporting them. If they grow any larger, $he may not be able to walk.
-	<<else>>
-		<<print either("tremendous", "astounding")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill S cups and are so large that $he can barely stand. If they grow any larger, $he may not be able to walk.
-	<</if>>
-<<elseif $activeSlave.boobs < 5100>><<print either("tremendous", "astounding")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill S cups.
-<<elseif $activeSlave.boobs < 5500>><<print either("frightening", "unmissable")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill T cups.
-<<elseif $activeSlave.boobs < 6000>><<print either("unmissable", "attention-grabbing")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill U cups.
-<<elseif $activeSlave.boobs < 6500>><<print either("attention-grabbing", "spectacular")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill V cups.
-<<elseif $activeSlave.boobs < 7000>><<print either("spectacular", "obviously engineered")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill W cups.
-<<elseif $activeSlave.boobs < 7500>><<print either("obviously engineered", "disproportionate")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill X cups.
-<<elseif $activeSlave.boobs < 8000>><<print either("disproportionate", "nearly inhuman")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill Y cups.
-<<elseif $activeSlave.boobs < 8500>><<print either("nearly inhuman", "nearly alien")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> would fill Z cups.
+		<<print either("tremendous", "astounding")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill S cups and are so large that $his <<if $activeSlave.muscles > 95>>shredded<<elseif $activeSlave.muscles > 30>>rippling<<else>>toned<</if>> back muscles get a workout just from supporting them. If they grow any larger, $he may not be able to walk.
+	<<else>>
+		<<print either("tremendous", "astounding")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill S cups and are so large that $he can barely stand. If they grow any larger, $he may not be able to walk.
+	<</if>>
+<<elseif $activeSlave.boobs < 5100>><<print either("tremendous", "astounding")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill S cups.
+<<elseif $activeSlave.boobs < 5500>><<print either("frightening", "unmissable")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill T cups.
+<<elseif $activeSlave.boobs < 6000>><<print either("unmissable", "attention-grabbing")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill U cups.
+<<elseif $activeSlave.boobs < 6500>><<print either("attention-grabbing", "spectacular")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill V cups.
+<<elseif $activeSlave.boobs < 7000>><<print either("spectacular", "obviously engineered")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill W cups.
+<<elseif $activeSlave.boobs < 7500>><<print either("obviously engineered", "disproportionate")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill X cups.
+<<elseif $activeSlave.boobs < 8000>><<print either("disproportionate", "nearly inhuman")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill Y cups.
+<<elseif $activeSlave.boobs < 8500>><<print either("nearly inhuman", "nearly alien")>> <<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> would fill Z cups.
 <<elseif $activeSlave.boobs < 10000+($activeSlave.muscles*20) && $activeSlave.physicalAge <= 12>>
 	<<if ($activeSlave.amp == 1)>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print $activeSlave.boobs>> CCs each, they<<else>> They<</if>> are so large that $he might not be able to walk, if $he still had legs.
+		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print commaNum($activeSlave.boobs)>> CCs each, they<<else>> They<</if>> are so large that $he might not be able to walk, if $he still had legs.
 	<<elseif ($activeSlave.muscles >= 5)>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print $activeSlave.boobs>> CCs each, they<<else>> They<</if>> are so large that $his <<if $activeSlave.muscles > 95>>shredded<<elseif $activeSlave.muscles > 30>>rippling<<else>>toned<</if>> back muscles get a workout just from supporting them. If they grow any larger, $he may not be able to walk.
+		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print commaNum($activeSlave.boobs)>> CCs each, they<<else>> They<</if>> are so large that $his <<if $activeSlave.muscles > 95>>shredded<<elseif $activeSlave.muscles > 30>>rippling<<else>>toned<</if>> back muscles get a workout just from supporting them. If they grow any larger, $he may not be able to walk.
 	<<else>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print $activeSlave.boobs>> CCs each, they<<else>> They<</if>> are so large that $he can barely stand. If they grow any larger, $he may not be able to walk.
+		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print commaNum($activeSlave.boobs)>> CCs each, they<<else>> They<</if>> are so large that $he can barely stand. If they grow any larger, $he may not be able to walk.
 	<</if>>
 <<elseif $activeSlave.boobs < 20000+($activeSlave.muscles*50) && $activeSlave.physicalAge < 18>>
 	<<if ($activeSlave.amp == 1)>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print $activeSlave.boobs>> CCs each, they<<else>> They<</if>> are so large that $he might not be able to walk, if $he still had legs.
+		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print commaNum($activeSlave.boobs)>> CCs each, they<<else>> They<</if>> are so large that $he might not be able to walk, if $he still had legs.
 	<<elseif ($activeSlave.muscles >= 5)>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print $activeSlave.boobs>> CCs each, they<<else>> They<</if>> are so large that $his <<if $activeSlave.muscles > 95>>shredded<<elseif $activeSlave.muscles > 30>>rippling<<else>>toned<</if>> back muscles get a workout just from supporting them. If they grow any larger, $he may not be able to walk.
+		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print commaNum($activeSlave.boobs)>> CCs each, they<<else>> They<</if>> are so large that $his <<if $activeSlave.muscles > 95>>shredded<<elseif $activeSlave.muscles > 30>>rippling<<else>>toned<</if>> back muscles get a workout just from supporting them. If they grow any larger, $he may not be able to walk.
 	<<else>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print $activeSlave.boobs>> CCs each, they<<else>> They<</if>> are so large that $he can barely stand. If they grow any larger, $he may not be able to walk.
+		<<print either("boobs", "breasts", "mammaries", "udders")>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.<<if $showBoobCCs == 1>> At <<print commaNum($activeSlave.boobs)>> CCs each, they<<else>> They<</if>> are so large that $he can barely stand. If they grow any larger, $he may not be able to walk.
 	<</if>>
-<<elseif $activeSlave.boobs < 20000>><<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.
+<<elseif $activeSlave.boobs < 20000>><<print either("tits", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> have <<if $activeSlave.boobsImplant>>been altered<<else>>grown<</if>> past any pretense of proportion.
 <<elseif $activeSlave.boobs < 30000+($activeSlave.muscles*100) && $activeSlave.physicalAge >= 18>>
 	<<if $activeSlave.amp == 1>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> are so large that $he might not be able to walk, if $he still had legs.
+		<<print either("boobs", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> are so large that $he might not be able to walk, if $he still had legs.
 	<<elseif ($activeSlave.muscles > 5)>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> are so large that $his <<if $activeSlave.muscles > 95>>shredded<<elseif $activeSlave.muscles > 30>>rippling<<else>>toned<</if>> back muscles get a workout just from supporting them. If they grow any larger, $he may not be able to walk.
+		<<print either("boobs", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> are so large that $his <<if $activeSlave.muscles > 95>>shredded<<elseif $activeSlave.muscles > 30>>rippling<<else>>toned<</if>> back muscles get a workout just from supporting them. If they grow any larger, $he may not be able to walk.
 	<<else>>
-		<<print either("boobs", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> are so large that $he can barely stand. If they grow any larger, $he may not be able to walk.
+		<<print either("boobs", "breasts", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> are so large that $he can barely stand. If they grow any larger, $he may not be able to walk.
 	<</if>>
 <<else>>
 	<<if $activeSlave.amp == 1>>
-		<<print either("tits", "boobs", "mammaries")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> are so immense it is safer to leave $him resting atop them. $His udders each weigh more than twice the rest of $his body, since $his body consists of nothing but $his head, torso, and breasts.
+		<<print either("tits", "boobs", "mammaries")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> are so immense it is safer to leave $him resting atop them. $His udders each weigh more than twice the rest of $his body, since $his body consists of nothing but $his head, torso, and breasts.
 	<<else>>
-		<<print either("tits", "boobs", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print $activeSlave.boobs>> CCs each,<</if>> are so gargantuan that they effectively immobilize $him. $He's most comfortable lying down.
+		<<print either("tits", "boobs", "mammaries", "udders")>><<if $showBoobCCs == 1>>, <<print commaNum($activeSlave.boobs)>> CCs each,<</if>> are so gargantuan that they effectively immobilize $him. $He's most comfortable lying down.
 	<</if>>
 <</if>>
 
@@ -3970,11 +3970,11 @@ $He's got a
 		<</if>>
 
 	<<else>>
-	
+
 		<<if $activeSlave.prostate > 2>>
 			The area above $his crotch has a slight swell to it from $his prostate implant.
 		<</if>>
-	
+
 	<</if>>
 
 <</if>> /* CLOSES DETAILED DICK DESCRIPTION */
-- 
GitLab


From 4792631457bfd19bec03f14de5112d9bb5d72ba3 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sat, 28 Jul 2018 14:24:37 -0400
Subject: [PATCH 152/189] fixes and surname granting check

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |  6 ++++++
 src/pregmod/fMarry.tw                        |  4 ++--
 src/pregmod/widgets/seBirthWidgets.tw        |  4 ++--
 src/uncategorized/longSlaveDescription.tw    | 20 ++++++++++----------
 src/uncategorized/saTakeClasses.tw           |  1 +
 src/uncategorized/seWedding.tw               |  6 +++---
 6 files changed, 24 insertions(+), 17 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 9da28d8774b..0062bb20a36 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,12 @@
 
 0.10.7.1-0.5.x
 
+7/27/2018
+
+	8
+	-fixes
+	-more widget to JS conversion
+
 7/27/2018
 
 	7
diff --git a/src/pregmod/fMarry.tw b/src/pregmod/fMarry.tw
index 05bc25eb79e..3270017d200 100644
--- a/src/pregmod/fMarry.tw
+++ b/src/pregmod/fMarry.tw
@@ -438,7 +438,7 @@ You tell $activeSlave.slaveName that you're going to marry $him. (A proposal, of
 		<</if>>
 	<</if>>
 	<<set $activeSlave.relationship = -3>>
-	<<if $PC.surname>>
+	<<if $PC.surname && $activeSlave.slaveSurname != $PC.surname>>
 		<br><br><span id="surnaming">
 		<<link "Give $him your surname">>
 			<<replace "#surnaming">>
@@ -679,7 +679,7 @@ You tell $activeSlave.slaveName that you're going to marry $him. (A proposal, of
 		<</if>>
 	<</if>>
 	<<set $activeSlave.relationship = -3>>
-	<<if $PC.surname>>
+	<<if $PC.surname && $activeSlave.slaveSurname != $PC.surname>>
 		<br><br><span id="surnaming">
 		<<link "Give $him your surname">>
 			<<replace "#surnaming">>
diff --git a/src/pregmod/widgets/seBirthWidgets.tw b/src/pregmod/widgets/seBirthWidgets.tw
index 6e7fed05e77..c506be3ec8f 100644
--- a/src/pregmod/widgets/seBirthWidgets.tw
+++ b/src/pregmod/widgets/seBirthWidgets.tw
@@ -468,7 +468,7 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 		<<if $slaves[$i].fetish != "mindbroken">>
 			<br><br>
 			<<if ($slaves[$i].fetish == "masochist")>>
-				Since $he was a virgin, giving birth was a @@.red;terribly painful@@ experience.<<if $slaves[$i].fetishKnown == 0>>$heCap seems to have orgasmed several times during the experience, $he appears to @@.lightcoral;really like pain@@.<<set $slaves[$i].fetishKnown = 1>><<else>> However, due to $his masochistic streak, $he @@.hotpink;greatly enjoyed@@ said experience<</if>>.
+				Since $he was a virgin, giving birth was a @@.red;terribly painful@@ experience.<<if $slaves[$i].fetishKnown == 0>> $He seems to have orgasmed several times during the experience and appears to @@.lightcoral;really like pain@@.<<set $slaves[$i].fetishKnown = 1>><<else>> However, due to $his masochistic streak, $he @@.hotpink;greatly enjoyed@@ said experience<</if>>.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 2>>
 			<<else>>
 				Since $he was a virgin, giving birth was a @@.red;terribly painful@@ experience. $He @@.mediumorchid;despises@@ you for taking $his virginity in such a @@.gold;horrifying@@ way.
@@ -719,7 +719,7 @@ All in all,
 			and a complete turn on to $him. $His humiliation fetish @@.lightcoral;strengthens@@ as $he eagerly fantasizes about giving birth in public again.
 			<<set $slaves[$i].fetishStrength += 4>>
 		<<elseif $slaves[$i].fetish == "none" || $slaves[$i].fetishStrength <= 60>>
-			and a curious experience to $him. <<if random(1,5) == 1>>@@.lightcoral;$heCap has developed a humiliation fetish.@@<<set $slaves[$i].fetish = "humiliation">><<else>>$heCap hopes to never repeat it.<</if>>
+			and a curious experience to $him. <<if random(1,5) == 1>>@@.lightcoral;$He has developed a humiliation fetish.@@<<set $slaves[$i].fetish = "humiliation">><<else>>$He hopes to never repeat it.<</if>>
 		<<elseif $slaves[$i].devotion <= 20>>
 			and completely devastating to $his image of herself. The experience @@.hotpink;habituates $him@@ to cruelties of slavery.
 			<<set $slaves[$i].devotion += 5>>
diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index eb7e0080ca5..d38bdd2b72f 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -471,15 +471,15 @@ $He comes to you for an inspection
 			$he's spent awake.
 		<</if>>
 	<<elseif _sortedCounts[0].type == "mammary">>
-		<<if (_weeksOwned*112)/$activeSlave.oralCount < 4>>
+		<<if (_weeksOwned*112)/$activeSlave.mammaryCount < 4>>
 			Remarkably, this means that $he's put $his tits to work
-			<<if (_weeksOwned*112)/$activeSlave.oralCount < 1>>
+			<<if (_weeksOwned*112)/$activeSlave.mammaryCount < 1>>
 				more than once every hour
-			<<elseif (_weeksOwned*112)/$activeSlave.oralCount < 1.5>>
+			<<elseif (_weeksOwned*112)/$activeSlave.mammaryCount < 1.5>>
 				about once every hour
-			<<elseif (_weeksOwned*112)/$activeSlave.oralCount < 2.5>>
+			<<elseif (_weeksOwned*112)/$activeSlave.mammaryCount < 2.5>>
 				about once every two hours
-			<<elseif (_weeksOwned*112)/$activeSlave.oralCount < 3.5>>
+			<<elseif (_weeksOwned*112)/$activeSlave.mammaryCount < 3.5>>
 				about once every three hours
 			<<else>>
 				about once every four hours
@@ -487,15 +487,15 @@ $He comes to you for an inspection
 			$he's spent awake.
 		<</if>>
 	<<elseif _sortedCounts[0].type == "penetrative">>
-		<<if (_weeksOwned*112)/$activeSlave.oralCount < 4>>
+		<<if (_weeksOwned*112)/$activeSlave.penetrativeCount < 4>>
 			Remarkably, this means that $he's pounded a hole
-			<<if (_weeksOwned*112)/$activeSlave.oralCount < 1>>
+			<<if (_weeksOwned*112)/$activeSlave.penetrativeCount < 1>>
 				more than once every hour
-			<<elseif (_weeksOwned*112)/$activeSlave.oralCount < 1.5>>
+			<<elseif (_weeksOwned*112)/$activeSlave.penetrativeCount < 1.5>>
 				about once every hour
-			<<elseif (_weeksOwned*112)/$activeSlave.oralCount < 2.5>>
+			<<elseif (_weeksOwned*112)/$activeSlave.penetrativeCount < 2.5>>
 				about once every two hours
-			<<elseif (_weeksOwned*112)/$activeSlave.oralCount < 3.5>>
+			<<elseif (_weeksOwned*112)/$activeSlave.penetrativeCount < 3.5>>
 				about once every three hours
 			<<else>>
 				about once every four hours
diff --git a/src/uncategorized/saTakeClasses.tw b/src/uncategorized/saTakeClasses.tw
index 49be8ee56aa..669aa42f412 100644
--- a/src/uncategorized/saTakeClasses.tw
+++ b/src/uncategorized/saTakeClasses.tw
@@ -9,6 +9,7 @@
 	<</if>>
 <<elseif ($slaves[$i].assignment == "learn in the schoolroom")>>
 	<<if ($Schoolteacher != 0)>>
+		<<setLocalPronouns $Schoolteacher 2>>
 		<<set _seed = $Schoolteacher.intelligence+$Schoolteacher.intelligenceImplant>>
 		<<if ($Schoolteacher.visualAge > 35)>>
 			<<set _seed += 1>>
diff --git a/src/uncategorized/seWedding.tw b/src/uncategorized/seWedding.tw
index e03755e6dd4..6e6e48ef8b6 100644
--- a/src/uncategorized/seWedding.tw
+++ b/src/uncategorized/seWedding.tw
@@ -377,7 +377,7 @@
 	<</if>>
 	There is no ring for you, since this marriage does not bind you.
 	<br>
-	<<if $PC.surname>>
+	<<if $PC.surname && $activeSlave.slaveSurname != $PC.surname>>
 		<br><br><span id="surnaming">
 		<<link "Give her your surname too">>
 			<<replace "#surnaming">>
@@ -549,7 +549,7 @@
 		Once the ceremony is complete, you scoop up your new slave wife to carry her back into the master bedroom. She rests her head against you, so tired that she’s grateful for the break from standing. By the time she’s home, she’s fast asleep. You set her gently down on the bed and curl up behind her, feeling the animal warmth of her body as the exhausted slave’s chest rises and falls with her breathing.
 	<</if>>
 	<br>
-	<<if $PC.surname>>
+	<<if $PC.surname && $activeSlave.slaveSurname != $PC.surname>>
 		<br><br><span id="surnaming">
 		<<link "Give her your surname as well">>
 			<<replace "#surnaming">>
@@ -741,7 +741,7 @@
 	<br><br>
 	When she's in front of you, <<if $activeSlave.amp == 1>>the slave carrying her limbless torso sets her down on the floor in front of you and props her up so her head is level with your crotch<<else>>she gets down on her knees so her head is level with your crotch<</if>>. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> reads the short recitation for her, and you place a simple steel ring <<if $activeSlave.amp == 1>>on a cord around her neck, since she lacks fingers to wear it on<<else>>on her finger<</if>>. There is no ring for you, since this marriage does not bind you.
 	<br>
-	<<if $PC.surname>>
+	<<if $PC.surname && $activeSlave.slaveSurname != $PC.surname>>
 		<br><br><span id="surnaming">
 		<<link "Give her your surname">>
 			<<replace "#surnaming">>
-- 
GitLab


From cf99e3dcac6a880975dbf433ad6de31082e65e07 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Sat, 28 Jul 2018 19:17:01 -0500
Subject: [PATCH 153/189] WIP

---
 src/init/setupVars.tw                  |  2 +-
 src/pregmod/widgets/seBirthWidgets.tw  |  4 ++--
 src/uncategorized/reNickname.tw        | 13 +++++++------
 src/uncategorized/saLongTermEffects.tw |  7 +------
 src/uncategorized/saServeThePublic.tw  |  2 +-
 src/uncategorized/saTakeClasses.tw     |  6 +++---
 src/uncategorized/schoolroomReport.tw  |  2 --
 src/utility/descriptionWidgetsFlesh.tw |  4 ++--
 8 files changed, 17 insertions(+), 23 deletions(-)

diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index 03b3bd474da..439231de69d 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -1472,7 +1472,7 @@ Then pick _namePool.random(), or display those names as possible choices, or do
 <<set setup.ArcologyNamesSupremacistBlack = ["Azania", "Benin", "Door of Return", "Great Zimbabwe", "Houssa", "Liberia", "Négritude", "Nubia", "Pan-Africa", "Rhapta", "The Promised Land", "Timbuktu", "United Africa", "Zazamanc"]>>
 <<set setup.ArcologyNamesSupremacistIndoAryan = ["Alaka", "Āryāvarta", "Dvārakā", "Indus Valley", "Kuru Kingdom", "Muziris", "New New Delhi", "Saket", "Swadeshi", "Swarga Loka", "Tamralipta", "The Subcontinent", "Ujjain", "Vedic Empire", "Vindhya"]>>
 <<set setup.ArcologyNamesSupremacistPacificIslander = ["Aotearoa", "Austronesia", "Burotu", "Hawai'i", "Hawaiki", "Iolani Palace", "Kibu", "King Country", "Maui", "Melanesia", "Micronesia", "Mokoia", "Oceania", "Polynesia", "Rapa Nui"]>>
-<<set setup.ArcologyNamesSupremacistMalay = ["Austronesia", "Brunei", "Golden Peninsula", "Kebangkitan Nasional", "Ketuanan Melayu", "Malacca", "Malaya", "Maphilindo", "Melayu Raya", "Patani", "Srivijaya", "Suvarnadvipa", "Tanah Melayu"]>>
+<<set setup.ArcologyNamesSupremacistMalay = ["Austronesia", "Brunei", "Golden Peninsula", "Kebangkitan Nasional", "Ketuanan Melayu", "Malacca", "Malaya", "Maphilindo", "Melayu Raya", "Nusantara", "Patani", "Srivijaya", "Suvarnadvipa", "Tanah Melayu"]>>
 <<set setup.ArcologyNamesSupremacistAmerindian = ["Akilineq", "Amerindia", "Aquadoctan", "Cahokia", "Caral", "Chicora", "Cusco", "Indigenismo", "Norumbega", "Paititi", "Porcupine", "Red Power", "Saguenay", "The Confederated Tribes"]>>
 <<set setup.ArcologyNamesSupremacistSouthernEuropean = ["Arcadia", "Delphi", "Elysian Fields", "Mare Nostrum", "Mediterranea", "New Athens", "New Rome", "Olympus", "Papal Supremacy", "Risorgimento", "Siglo de Oro", "Spazio Vitale"]>>
 <<set setup.ArcologyNamesSupremacistSemitic = ["Arimathea", "Dilmun", "Garden of Eden", "Israel", "Jericho", "Judah", "Judea", "Olam Ha-Ba", "Ophir", "Paradisus Judaeorum", "Tarshish", "The Fifth Temple", "The Levant", "The Promised Land", "Zion"]>>
diff --git a/src/pregmod/widgets/seBirthWidgets.tw b/src/pregmod/widgets/seBirthWidgets.tw
index 6e7fed05e77..9b08b8cc2d6 100644
--- a/src/pregmod/widgets/seBirthWidgets.tw
+++ b/src/pregmod/widgets/seBirthWidgets.tw
@@ -468,7 +468,7 @@ This decriptions can be expanded with more outcomes later. But it's not practica
 		<<if $slaves[$i].fetish != "mindbroken">>
 			<br><br>
 			<<if ($slaves[$i].fetish == "masochist")>>
-				Since $he was a virgin, giving birth was a @@.red;terribly painful@@ experience.<<if $slaves[$i].fetishKnown == 0>>$heCap seems to have orgasmed several times during the experience, $he appears to @@.lightcoral;really like pain@@.<<set $slaves[$i].fetishKnown = 1>><<else>> However, due to $his masochistic streak, $he @@.hotpink;greatly enjoyed@@ said experience<</if>>.
+				Since $he was a virgin, giving birth was a @@.red;terribly painful@@ experience.<<if $slaves[$i].fetishKnown == 0>>$He seems to have orgasmed several times during the experience, $he appears to @@.lightcoral;really like pain@@.<<set $slaves[$i].fetishKnown = 1>><<else>> However, due to $his masochistic streak, $he @@.hotpink;greatly enjoyed@@ said experience<</if>>.
 				<<set $slaves[$i].health -= 10, $slaves[$i].devotion += 2>>
 			<<else>>
 				Since $he was a virgin, giving birth was a @@.red;terribly painful@@ experience. $He @@.mediumorchid;despises@@ you for taking $his virginity in such a @@.gold;horrifying@@ way.
@@ -719,7 +719,7 @@ All in all,
 			and a complete turn on to $him. $His humiliation fetish @@.lightcoral;strengthens@@ as $he eagerly fantasizes about giving birth in public again.
 			<<set $slaves[$i].fetishStrength += 4>>
 		<<elseif $slaves[$i].fetish == "none" || $slaves[$i].fetishStrength <= 60>>
-			and a curious experience to $him. <<if random(1,5) == 1>>@@.lightcoral;$heCap has developed a humiliation fetish.@@<<set $slaves[$i].fetish = "humiliation">><<else>>$heCap hopes to never repeat it.<</if>>
+			and a curious experience to $him. <<if random(1,5) == 1>>@@.lightcoral;$He has developed a humiliation fetish.@@<<set $slaves[$i].fetish = "humiliation">><<else>>$He hopes to never repeat it.<</if>>
 		<<elseif $slaves[$i].devotion <= 20>>
 			and completely devastating to $his image of herself. The experience @@.hotpink;habituates $him@@ to cruelties of slavery.
 			<<set $slaves[$i].devotion += 5>>
diff --git a/src/uncategorized/reNickname.tw b/src/uncategorized/reNickname.tw
index c38810ca671..3235bbdfee4 100644
--- a/src/uncategorized/reNickname.tw
+++ b/src/uncategorized/reNickname.tw
@@ -8,6 +8,7 @@
 <</if>>
 
 <<set $activeSlave = $eventSlave>>
+<<setLocalPronouns $activeSlave>>
 
 /* NICKNAME QUALIFICATION CHECKS */
 
@@ -647,7 +648,7 @@
 	<<case "Ugandan">>
 		<<set $nickname = either("'Amin'", "'Buganda'", "'Bushbaby'", "'Cannibal'", "'Kampala'", "'Museveni'", "'Ugandan'")>>
 	<<case "Ukrainian">>
-		<<set $nickname = either("'Chernobyl'", "'Chiki Briki'", "'Cossack'", "'Crimea'", "'Donbass'", "'Euromaidan'", "'Hohlina'", "'Hohlushka'", "'Khokhol'", "'Kiev'", "'Kyiv'", "'Radioactive'", "'Salo'", "'Stalker'", "'Suchka'", "'Suka'", "'Svoboda'", "'Bandera'", "'Shlyukha'", "'Ukrainian'", "'Ukrop'")>>
+		<<set $nickname = either("'Chernobyl'", "'Chiki Briki'", "'Cossack'", "'Crimea'", "'Donbass'", "'Euromaidan'", "'Hohlina'", "'Hohlushka'", "'Khokhol'", "'Kiev'", "'Kyiv'", "'Radioactive'", "'Salo'", "'Stalker'", "'Suchka'", "'Suka'", "'Svoboda'", "'Bandera'", "'Shlyukha'", "'Uke'", "'Ukrainian'", "'Ukrop'")>>
 	<<case "Uruguayan">>
 		<<set $nickname = either("'Bordaberry'", "'Charrúa'", "'Garra Charrúa'", "'Montevideo'", "'Uruguayan'")>>
 	<<case "Uzbek">>
@@ -686,7 +687,7 @@
 	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "asian">>
-	<<set $nickname = either("'3DPD'", "'Almond'", "'Asian'", "'Chinese'", "'Ching Chong'", "'Chink'", "'Chopsticks'", "'Coolie'", "'Dink'", "'E-Sports'", "'Gook'", "'Manila'", "'Me Love You Long Time'", "'Me So Horny'", "'Oriental'", "'Pinoy'", "'Slant'", "'Slanteye'", "'Slope'", "'Squint'", "'Thaigirl'", "'Tokyo'", "'Waifu'", "'Yellow Fever'", "'Yellow'", "'Zip'")>>
+	<<set $nickname = either("'3DPD'", "'Almond'", "'Asian'", "'Charlie'", "'Chinese'", "'Ching Chong'", "'Chink'", "'Chopsticks'", "'Coolie'", "'Dink'", "'E-Sports'", "'Fortune Cookie'", "'Gook'", "'Manila'", "'Me Love You Long Time'", "'Me So Horny'", "'Oriental'", "'Pancake Face'", "'Pinoy'", "'Sideways'", "'Slant'", "'Slanteye'", "'Slope'", "'Squint'", "'Thaigirl'", "'Ting Tong'", "'Tokyo'", "'Waifu'", "'Yellow Fever'", "'Yellow'", "'Zip'")>>
 	<<set $situationDesc = "is asian, which is not uncommon given the huge population of Asia and the poverty of many countries there. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
 	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
 	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
@@ -698,13 +699,13 @@
 	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "black">>
-	<<set $nickname = either("'African'", "'B-Girl'", "'Black'", "'Blackie'", "'Bottom Bitch'", "'Cocoa'", "'Coon'", "'Cotton'", "'Dark'", "'Ebony'", "'Gangsta'", "'His Girl Friday'", "'House Slave'", "'Jungle Bunny'", "'Jungle Fever'", "'Mammy'", "'Miss'", "'Missie'", "'Mulatto'", "'N-Word'", "'Negro'", "'Negroid'", "'Nigga'", "'Nigger'", "'Porch Monkey'", "'Quadroon'", "'Sambo'", "'Sheboon'", "'Spade'", "'Spook'")>>
+	<<set $nickname = either("'African'", "'B-Girl'", "'Black'", "'Blackie'", "'Bottom Bitch'", "'Burrhead'", "'Cocoa'", "'Coon'", "'Cotton'", "'Dark'", "'Ebony'", "'Gangsta'", "'His Girl Friday'", "'House Slave'", "'Jungle Bunny'", "'Jungle Fever'", "'Mammy'", "'Miss'", "'Missie'", "'Mulatto'", "'N-Word'", "'Negro'", "'Negroid'", "'Nigga'", "'Nigger'", "'Porch Monkey'", "'Quadroon'", "'Sambo'", "'Sheboon'", "'Spade'", "'Spook'")>>
 	<<set $situationDesc = "is black, which is not uncommon given the urban collapse afflicting the first world and the wars raging in Africa. Slaves casually reference race as much as free citizens. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
 	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
 	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "indo-aryan">>
-	<<set $nickname = either("'Aryan'", "'Babu'", "'Bhabhi'", "'Bindi'", "'Bollywood'", "'Brown'", "'Chandala'", "'Curry Muncher'", "'Desi'", "'Dothead'", "'Durga'", "'Gyp'", "'Gypsy'", "'Indian'", "'Indo-Aryan'", "'Kali Maa'", "'Kama Sutra'", "'Kaur'", "'Mughal'", "'Sati'", "'Sepoy'", "'Shanti'", "'Sim Sim Salabim'", "'Snake Charmer'", "'Subcontinental'", "'Swami'", "'Tigress'", "'Untouchable'", "'Yoga'", "'Zoroastrian'", "'Zott'")>>
+	<<set $nickname = either("'Aryan'", "'Babu'", "'Bhabhi'", "'Bindi'", "'Bollywood'", "'Brown'", "'Chandala'", "'Curry Muncher'", "'Desi'", "'Dothead'", "'Durga'", "'Gyp'", "'Gypsy'", "'Hajji'", "'Indian'", "'Indo-Aryan'", "'Kali Maa'", "'Kama Sutra'", "'Kaur'", "'Mughal'", "'Paki'", "'Sati'", "'Sepoy'", "'Shanti'", "'Sim Sim Salabim'", "'Snake Charmer'", "'Subcontinental'", "'Swami'", "'Tigress'", "'Untouchable'", "'Yoga'", "'Zoroastrian'", "'Zott'")>>
 	<<set $situationDesc = "is indo-aryan, which is not uncommon given the poverty in many majority indo-aryan countries, and the near-submersion of some others due to rising sea levels. Slaves casually reference race as much as free citizens. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
 	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
 	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
@@ -728,13 +729,13 @@
 	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "malay">>
-	<<set $nickname = either("'Bumi'", "'Cinnamon'", "'Indon'", "'Island Hopper'", "'Jakun'", "'Keling'", "'Krakatoa'", "'Malay'", "'Malaysian'", "'Malingsia'", "'Malon'", "'Melayu'", "'My Lay'", "'Nāga'", "'Nutmeg'", "'Orang'", "'Pinoy'", "'Rani'", "'Samudra Kidul'", "'Sandalwood'", "'Spice Islands'", "'Spice'", "'Trade Winds'")>>
+	<<set $nickname = either("'Austronesian'", "'Bumi'", "'Bumiputera'", "'Cinnamon'", "'Huan-a'", "'Indon'", "'Island Hopper'", "'Jakun'", "'Keling'", "'Krakatoa'", "'Kunlun'", "'Malay'", "'Malaysian'", "'Malingsia'", "'Malon'", "'Melayu'", "'My Lay'", "'Nāga'", "'Nutmeg'", "'Orang'", "'Pinoy'", "'Pribumi'", "'Rani'", "'Samudra Kidul'", "'Sandalwood'", "'Spice Islands'", "'Spice'", "'Trade Winds'")>>
 	<<set $situationDesc = "is malay, which is not uncommon given the ongoing poverty in many majority malay countries, and the serious weather patterns savaging that part of the world. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
 	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
 	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
 
 <<case "amerindian">>
-	<<set $nickname = either("'Amerindian'", "'Chug'", "'Deerskin'", "'Eskimo'", "'Eskimo Sister'", "'Firewater'", "'First Nations'", "'Indian'", "'Indio'", "'Injun'", "'Ke-mo Sah-bee'", "'La Malinche'", "'Métis Mother'", "'Moccasins'", "'Native'", "'Nitchie'", "'Peace Pipe'", "'Pocahontas'", "'Red'", "'Redskin'", "'Reservation'", "'Scalper'", "'Smoke Signal'", "'Squaw'", "'Tiger Lily'", "'Tipi Warmer'", "'Totem Pole'", "'Tonto'", "'Tribal'", "'Warpath'", "'Wigwam'")>>
+	<<set $nickname = either("'Amerindian'", "'Chug'", "'Deerskin'", "'Eskimo'", "'Eskimo Sister'", "'Firewater'", "'First Nations'", "'Indian'", "'Indio'", "'Injun'", "'Ke-mo Sah-bee'", "'La Malinche'", "'Métis Mother'", "'Moccasins'", "'Native'", "'Nitchie'", "'Peace Pipe'", "'Pocahontas'", "'Red'", "'Redskin'", "'Reservation'", "'Savage'", "'Scalper'", "'Smoke Signal'", "'Squaw'", "'Tiger Lily'", "'Tipi Warmer'", "'Totem Pole'", "'Tonto'", "'Tribal'", "'Warpath'", "'Wigwam'")>>
 	<<set $situationDesc = "is amerindian, which is not uncommon given the poverty that still plagues those long-suffering peoples. Slaves casually reference race as much or more than free citizens. They absorb the racial peccadilloes of their owners, and many of them bring prejudices from the old world into their slave lives.">>
 	<<set $applyDesc = "now has a constant reminder that as a sex slave $he is judged on $his appearance first.">>
 	<<set $notApplyDesc = "may feel some gratitude due to your preference that $he not be defined by $his ethnicity, but this is counterbalanced by the increased independence your kindness inspires.">>
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 67587d15a0f..88b0cafa662 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -3049,13 +3049,8 @@
 				Allowing $him to indulge in $his fetish to the point of obsession advances hedonism and @@.green;bolsters your reputation.@@
 				<<FSChange "Hedonism" 2>>
 			<</if>>
-<<<<<<< HEAD
-		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $slaves[$i].devotion > 75>>
-			$He's been marked to be the bearer of your offspring and is growing larger by the day with your child. $He is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
-=======
 		<<elseif $slaves[$i].bellyPreg > 100 && $slaves[$i].pregKnown == 1 && $slaves[$i].pregSource == -1 && $slaves[$i].breedingMark == 1 && $propOutcome == 1 && $slaves[$i].devotion > 75>>
-			She's been marked to be the bearer of your offspring and is growing larger by the day with your child. She is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
->>>>>>> 7c151cf7d5f947331cc64a6097fa3db9575ff5df
+			$He's been marked to be the bearer of your offspring and is growing larger by the day with your child. $He is to be nothing more than a vessel for your children, and as such @@.yellow;has become obsessed with carrying them.@@
 			<<set $slaves[$i].sexualFlaw = "breeder">>
 			<<set $slaves[$i].fetishStrength = 100>>
 			<<if $arcologies[0].FSHedonisticDecadence != "unset">>
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index f3432bd5b0e..867ed764ec0 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -533,7 +533,7 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 		<<elseif $slaves[$j].relationship > 4>>
 			slave wife
 		<</if>>
-		$slaves[$j].slaveName is also serving the public and they work well toget$him.
+		$slaves[$j].slaveName is also serving the public and they work well together.
 	<</if>>
 <<elseif $slaves[$i].relationship == -1>>
 	$He relies on citizens' desire to fuck $him for emotional support, making $him an excellent, if occasionally disturbing, slut.
diff --git a/src/uncategorized/saTakeClasses.tw b/src/uncategorized/saTakeClasses.tw
index 49be8ee56aa..14b9d2617a7 100644
--- a/src/uncategorized/saTakeClasses.tw
+++ b/src/uncategorized/saTakeClasses.tw
@@ -24,13 +24,13 @@
 		<</if>>
 		takes courses in slavery<<if $schoolroomUpgradeSkills + $schoolroomUpgradeRemedial + $schoolroomUpgradeLanguage != 0>>, using $schoolroomName's improved educational materials, <</if>> under $Schoolteacher.slaveName's supervision;
 		<<if ($slaves[$i].devotion > 20)>>
-			$he is such an obedient slave that _he2 @@.hotpink;encourages $him@@ to be the best slave $he can.
+			$he is such an obedient slave that she @@.hotpink;encourages $him@@ to be the best slave $he can.
 			<<set $slaves[$i].devotion += 2>>
 		<<elseif ($slaves[$i].trust < -20)>>
-			$he obeys out of fear, so _he2 @@.hotpink;encourages $him@@ to be a better slave.
+			$he obeys out of fear, so she @@.hotpink;encourages $him@@ to be a better slave.
 			<<set $slaves[$i].devotion += 1>>
 		<<else>>
-			$he is resistant, so _he2 ends up mostly @@.gold;punishing $him,@@ increasing $his @@.mediumorchid;dislike for slavery.@@
+			$he is resistant, so she ends up mostly @@.gold;punishing $him,@@ increasing $his @@.mediumorchid;dislike for slavery.@@
 			<<set $slaves[$i].devotion -= 2>>
 			<<set $slaves[$i].trust -= 4>>
 		<</if>>
diff --git a/src/uncategorized/schoolroomReport.tw b/src/uncategorized/schoolroomReport.tw
index 517af9c248a..c4323975fd6 100644
--- a/src/uncategorized/schoolroomReport.tw
+++ b/src/uncategorized/schoolroomReport.tw
@@ -1,7 +1,5 @@
 :: Schoolroom Report [nobr]
 
-<<run SlavePronouns($slaves[$i])>>
-
 <<SlaveSort $SchlRiIDs>>
 <<set _DL = $SchlRiIDs.length, $schoolroomSlaves = _DL, _SL = $slaves.length, _idleBonus = 0, _FLsFetish = 0>>
 
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index d50361ee901..1a96e077a7e 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -1155,9 +1155,9 @@ $His
 		$His overworked, overfull breasts press its nipples through the holes mercilessly.
 	<<else>>
 		<<if $activeSlave.nipples == "fuckable">>
-			$His fuckable nipples prevent $him from releasing milk spontaneously. The lactation drugs are so powerful that if $he hasn't been milked in the past hour or so, the built-up pressure leaves $his <<if !canTalk($activeSlave)>>weeping<<else>>whining<</if>> piteously; makes for an interesting nipple fuck, however.
+			$His fuckable nipples prevent $him from releasing milk spontaneously. The lactation drugs are so powerful that if $he hasn't been milked in the past hour or so, the built-up pressure leaves $him <<if !canTalk($activeSlave)>>weeping<<else>>whining<</if>> piteously; makes for an interesting nipple fuck, however.
 		<<elseif $activeSlave.nipples == "inverted">>
-			$His inverted nipples prevent $him from releasing milk spontaneously. The lactation drugs are so powerful that if $he hasn't been milked in the past hour or so, the built-up pressure leaves $his <<if !canTalk($activeSlave)>>weeping<<else>>whining<</if>> piteously.
+			$His inverted nipples prevent $him from releasing milk spontaneously. The lactation drugs are so powerful that if $he hasn't been milked in the past hour or so, the built-up pressure leaves $him <<if !canTalk($activeSlave)>>weeping<<else>>whining<</if>> piteously.
 		<<elseif $activeSlave.energy > 95>>
 			The powerful lactation drugs keep $his breasts so full of milk that when $he orgasms <<if $activeSlave.balls > 0>>$he releases three jets of white fluid: a stream of milk from each nipple and a squirt of cum from $his dickhead<<else>>$he cums milk out of $his nipples<</if>>.
 		<<else>>
-- 
GitLab


From 5ac4c82f49b590dd52dd1eb8fcc301acf31f1021 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sat, 28 Jul 2018 22:44:02 -0400
Subject: [PATCH 154/189] mindbreak tweaks

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |  8 ++++-
 src/pregmod/saPorn.tw                        | 35 ++++++++++++++++++++
 src/uncategorized/RESS.tw                    |  3 ++
 src/uncategorized/spaReport.tw               |  4 +++
 src/utility/descriptionWidgetsFlesh.tw       |  2 +-
 5 files changed, 50 insertions(+), 2 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 0062bb20a36..9321ec1f856 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,7 +2,13 @@
 
 0.10.7.1-0.5.x
 
-7/27/2018
+7/28/2018
+
+	9
+	-fixing mindbreak now brings back original intelligence-1
+	-more arcology names
+	-more nicknames
+	-cheat mode starting slaves now respect $seeDicks
 
 	8
 	-fixes
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index 7cd57d88c6a..a8927bccf0d 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -1623,6 +1623,7 @@
 		<<case "generic">>
 			<<if $slaves[$i].pornTypeGeneral >= 150000 && $pornStarID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeGeneral = 250000, $pornStarID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeGeneral>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her mid-coitus.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object mid-coitus, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her mid-coitus">>
@@ -1633,6 +1634,7 @@
 		<<case "fuckdoll">>
 			<<if $slaves[$i].pornTypeFuckdoll >= 150000 && $pornStarFuckdollID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeFuckdoll = 250000, $pornStarFuckdollID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeFuckdoll>>
 				<<set $slaves[$i].pornPrestigeDesc = "It is world famous for its career in slave pornography. Millions are intimately familiar with the sight of it being used.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object being used, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing it offering itself">>
@@ -1643,6 +1645,7 @@
 		<<case "rape">>
 			<<if $slaves[$i].pornTypeRape >= 150000 && $pornStarRapeID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeRape = 250000, $pornStarRapeID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeRape>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her being raped.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object being raped, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her rape">>
@@ -1653,6 +1656,7 @@
 		<<case "preggo">>
 			<<if $slaves[$i].pornTypePreggo >= 150000 && $pornStarPreggoID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePreggo = 250000, $pornStarPreggoID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypePreggo>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her swollen with child.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object swollen with child, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her cradling her middle">>
@@ -1663,6 +1667,7 @@
 		<<case "BBW">>
 			<<if $slaves[$i].pornTypeBBW >= 150000 && $pornStarBBWID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBBW = 250000, $pornStarBBWID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeBBW>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her thick, soft body.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive thick and soft body, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her giving a bellyjob">>
@@ -1673,6 +1678,7 @@
 		<<case "underage">>
 			<<if $slaves[$i].pornTypeLoli >= 150000 && $pornStarLoliID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeLoli = 250000, $pornStarLoliID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeLoli>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her immature body.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive immature body, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her 'innocence'">>
@@ -1683,6 +1689,7 @@
 		<<case "weight gain">>
 			<<if $slaves[$i].pornTypeGainer >= 150000 && $pornStarGainerID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeGainer = 250000, $pornStarGainerID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeGainer>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with how with how much weight she has gained.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with how much weight<<print $pronoun>>'s put on, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her trying on her old clothes">>
@@ -1693,6 +1700,7 @@
 		<<case "big dick">>
 			<<if $slaves[$i].pornTypeStud >= 150000 && $pornStarStudID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeStud = 250000, $pornStarStudID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeStud>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her erect dick.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive erect dick, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her money shot">>
@@ -1703,6 +1711,7 @@
 		<<case "deepthroat">>
 			<<if $slaves[$i].pornTypeDeepThroat >= 150000 && $pornStarDeepThroatID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeDeepThroat = 250000, $pornStarDeepThroatID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeDeepThroat>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sounds she makes when being throatfucked.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sounds $pronoun makes when being throatfucked, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her getting facefucked">>
@@ -1713,6 +1722,7 @@
 		<<case "unwilling">>
 			<<if $slaves[$i].pornTypeStruggleFuck >= 150000 && $pornStarStruggleFuckID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeStruggleFuck = 250000, $pornStarStruggleFuckID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeStruggleFuck>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with how perfectly she struggles during sex.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with how perfectly $pronoun struggles during sex, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her struggling">>
@@ -1723,6 +1733,7 @@
 		<<case "hardcore anal">>
 			<<if $slaves[$i].pornTypePainal >= 150000 && $pornStarPainalID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePainal = 250000, $pornStarPainalID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypePainal>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with seeing her asshole pushed to its limit.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with seeing $possessive asshole pushed to its limit, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking an enormous dick up her ass">>
@@ -1733,6 +1744,7 @@
 		<<case "softcore">>
 			<<if $slaves[$i].pornTypeTease >= 150000 && $pornStarTeaseID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeTease = 250000, $pornStarTeaseID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeTease>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her lewd striptease.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive lewd striptease, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her stripping">>
@@ -1743,6 +1755,7 @@
 		<<case "romantic">>
 			<<if $slaves[$i].pornTypeRomantic >= 150000 && $pornStarRomanticID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeRomantic = 250000, $pornStarRomanticID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeRomantic>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the deep bond she shares with her partners.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the deep bond $pronoun shares with her partners, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her sharing an orgasm with her partner">>
@@ -1753,6 +1766,7 @@
 		<<case "really perverted">>
 			<<if $slaves[$i].pornTypePervert >= 150000 && $pornStarPervertID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePervert = 250000, $pornStarPervertID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypePervert>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the depths of her pervesions.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the depths of $possessive pervesions, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something perverted">>
@@ -1763,6 +1777,7 @@
 		<<case "voyeur">>
 			<<if $slaves[$i].pornTypeCaring >= 150000 && $pornStarCaringID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCaring = 250000, $pornStarCaringID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeCaring>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her devotion to her partners' pleasure.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive devotion to $possessive partners' pleasure, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bringing her partner to orgasm">>
@@ -1773,6 +1788,7 @@
 		<<case "unspeakable">>
 			<<if $slaves[$i].pornTypeUnflinching >= 150000 && $pornStarUnflinchingID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeUnflinching = 250000, $pornStarUnflinchingID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeUnflinching>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her willingness to do things not repeated in polite company.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive willingness to do things not repeated in polite company, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her doing something unmentionable">>
@@ -1783,6 +1799,7 @@
 		<<case "huge insertion">>
 			<<if $slaves[$i].pornTypeSizeQueen >= 150000 && $pornStarSizeQueenID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSizeQueen = 250000, $pornStarSizeQueenID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeSizeQueen>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her holes filled to their limits.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive holes filled to their limits, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her belly bulging from within">>
@@ -1793,6 +1810,7 @@
 		<<case "orgasm denial">>
 			<<if $slaves[$i].pornTypeNeglectful >= 150000 && $pornStarNeglectfulID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeNeglectful = 250000, $pornStarNeglectfulID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeNeglectful>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her denying herself pleasure.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object denying <<print $object>>self pleasure, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her pleasing a line of partners without cuming once">>
@@ -1803,6 +1821,7 @@
 		<<case "cum addiction">>
 			<<if $slaves[$i].pornTypeCumAddict >= 150000 && $pornStarCumAddictID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCumAddict = 250000, $pornStarCumAddictID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeCumAddict>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her doing anything for cum.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object doing anything for cum, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bathing in a tub of cum">>
@@ -1813,6 +1832,7 @@
 		<<case "anal addiction">>
 			<<if $slaves[$i].pornTypeAnalAddict >= 150000 && $pornStarAnalAddictID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAnalAddict = 250000, $pornStarAnalAddictID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeAnalAddict>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her well-versed anus.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object doing anything for a dick up $possessive ass, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her taking a series of huge cocks up her ass">>
@@ -1823,6 +1843,7 @@
 		<<case "exhibition">>
 			<<if $slaves[$i].pornTypeAttentionWhore >= 150000 && $pornStarAttentionWhoreID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAttentionWhore = 250000, $pornStarAttentionWhoreID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeAttentionWhore>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her doing anything for attention.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object going to any length for attention, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her flashing strangers">>
@@ -1833,6 +1854,7 @@
 		<<case "breast expansion">>
 			<<if $slaves[$i].pornTypeBreastGrowth >= 150000 && $pornStarBreastGrowthID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBreastGrowth = 250000, $pornStarBreastGrowthID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeBreastGrowth>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the history of her growing bust.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with history of her growing bust, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her having her tits measured">>
@@ -1843,6 +1865,7 @@
 		<<case "abuse">>
 			<<if $slaves[$i].pornTypeAbusive >= 150000 && $pornStarAbusiveID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAbusive = 250000, $pornStarAbusiveID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeAbusive>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her abusive tendencies.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive abusive tendencies, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " taking what she wants by force">>
@@ -1853,6 +1876,7 @@
 		<<case "sexual torture">>
 			<<if $slaves[$i].pornTypeMalicious >= 150000 && $pornStarMaliciousID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeMalicious = 250000, $pornStarMaliciousID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeMalicious>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her hunger for making others suffer.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive torturing others, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her tormenting her prey">>
@@ -1863,6 +1887,7 @@
 		<<case "self hating">>
 			<<if $slaves[$i].pornTypeSelfHating >= 150000 && $pornStarSelfHatingID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSelfHating = 250000, $pornStarSelfHatingID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeSelfHating>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her suffering.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $object suffering, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her orgasming from pain">>
@@ -1873,6 +1898,7 @@
 		<<case "breeder">>
 			<<if $slaves[$i].pornTypeBreeder >= 150000 && $pornStarBreederID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBreeder = 250000, $pornStarBreederID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeBreeder>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her obsession with being pregnant.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive obsession with having children, so it is now extremely prestigious to own $object.
 				<<if $slaves[$i].births > 0>>
@@ -1887,6 +1913,7 @@
 		<<case "submissive">>
 			<<if $slaves[$i].pornTypeSub >= 150000 && $pornStarSubID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSub = 250000, $pornStarSubID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeSub>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her submissiveness.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive submissiveness, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her sumbmission">>
@@ -1897,6 +1924,7 @@
 		<<case "cum">>
 			<<if $slaves[$i].pornTypeCumSlut >= 150000 && $pornStarCumSlutID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeCumSlut = 250000, $pornStarCumSlutID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeCumSlut>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her taste for cum.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive taste for cum, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her drinking a glass of cum">>
@@ -1907,6 +1935,7 @@
 		<<case "buttslut">>
 			<<if $slaves[$i].pornTypeAnal >= 150000 && $pornStarAnalID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeAnal = 250000, $pornStarAnalID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeAnal>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with the sight of her rear.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with the sight of $possessive rear, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her shaking her booty">>
@@ -1917,6 +1946,7 @@
 		<<case "humiliating">>
 			<<if $slaves[$i].pornTypeHumiliation >= 150000 && $pornStarHumiliationID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeHumiliation = 250000, $pornStarHumiliationID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeHumiliation>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her frequent humiliation.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive frequent humiliation, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her humiliated in public">>
@@ -1927,6 +1957,7 @@
 		<<case "breast">>
 			<<if $slaves[$i].pornTypeBoobs >= 150000 && $pornStarBoobsID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeBoobs = 250000, $pornStarBoobsID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeBoobs>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her breasts.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive breasts, so it is now extremely prestigious to own $object, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her bare chest">>
@@ -1937,6 +1968,7 @@
 		<<case "dominant">>
 			<<if $slaves[$i].pornTypeDom >= 150000 && $pornStarDomID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeDom = 250000, $pornStarDomID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeDom>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her dominant streak.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive dominant streak, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her seated upon her obediant toy">>
@@ -1947,6 +1979,7 @@
 		<<case "sadistic">>
 			<<if $slaves[$i].pornTypeSadist >= 150000 && $pornStarSadistID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeSadist = 250000, $pornStarSadistID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeSadist>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her sadistic streak.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive sadistic streak, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her whipping her lover">>
@@ -1957,6 +1990,7 @@
 		<<case "masochistic">>
 			<<if $slaves[$i].pornTypeMasochist >= 150000 && $pornStarMasochistID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypeMasochist = 250000, $pornStarMasochistID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypeMasochist>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her masochistic streak.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive masochistic streak, so it is now extremely prestigious to own $object.
 				<<set _desc = "a framed shot from porn starring " + $slaves[$i].slaveName + " showing her being whipped">>
@@ -1967,6 +2001,7 @@
 		<<case "pregnancy fetish">>
 			<<if $slaves[$i].pornTypePregnancy >= 150000 && $pornStarPregnancyID == 0>>
 				<<set $slaves[$i].pornPrestige = 3, $slaves[$i].pornTypePregnancy = 250000, $pornStarPregnancyID = $slaves[$i].ID>>
+				<<set $slaves[$i].pornFame = $slaves[$i].pornTypePregnancy>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is world famous for her career in slave pornography. Millions are intimately familiar with her pregnancy kink.">>
 				@@.green;$pronounCap has become world famous for $possessive career in $slaves[$i].pornFameType pornography!@@ Millions are now intimately familiar with $possessive pregnancy kink, so it is now extremely prestigious to own $object.
 				<<if $slaves[$i].ovaries == 1 || $slaves[$i].mpreg == 1>>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index ecdb6256915..778ab32525d 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -4466,6 +4466,8 @@ She cranes her neck, glancing over her shoulder to give you a pleading look.
 	You can't complain, it feels really good. You don't know where this skill was lurking in her broken mind, but you're glad to see it put to good use. <<if $PC.dick == 1>>Just as your are about to cum, she takes the full length of your dick down her throat, diligently taking in every drop of cum<<else>>Even as you buck with pleasure, she diligently keeps her tongue to your clit and pussy, making sure you don't go a moment without pleasure<</if>>. You don't have an orgasm like that every day, and as she looks at you lovingly, you prod her with your still hard <<if $PC.dick == 1>>cock<<else>>clit<</if>> for round two.
 	She is @@.green;no longer mindbroken@@ and for whatever twisted reasons deeply and sincerely @@.hotpink;loves@@ and @@.mediumaquamarine;trusts@@ you.
 	<<set $activeSlave.devotion = 90, $activeSlave.oldDevotion = 90, $activeSlave.trust = 90, $activeSlave.oldTrust = 90, $activeSlave.sexualQuirk = "caring", $activeSlave.fetish = "none", $activeSlave.fetishKnown = 1>>
+	<<set _ress = $genePool.findIndex(function(s) { return s.ID == $activeSlave.ID; })>>
+	<<set $activeSlave.intelligence = $genePool[_ress].intelligence>>
 	<<if ($arcologies[0].FSPaternalist != "unset")>>
 		Society @@.green;strongly approves@@ of $activeSlave.slaveName being restored to sanity, which advances ideals about enlightened slave ownership.
 		<<set $repGain += 2*$FSSingleSlaveRep*($arcologies[0].FSPaternalist/$FSLockinLevel), $arcologies[0].FSPaternalist += 0.01*$FSSingleSlaveRep>>
@@ -4481,6 +4483,7 @@ She cranes her neck, glancing over her shoulder to give you a pleading look.
 	You gently grab her face and stare deeply into her $activeSlave.eyeColor eyes. <<if canSee($activeSlave)>>They are full of life as opposed to their usual dullness<<else>>They are as dull as always, but that isn't her fault. Her facial expressions at the act tell you all you need to know<</if>>. You pull your wife into a tight embrace, her coming back to you is more than enough a gift, she needn't do anything more for now. You pull the covers over the both of you and begin to doze off, smiling at the warmth cuddling ever closer to you.
 	She is @@.green;no longer mindbroken@@ and thanks to your care deeply and sincerely @@.hotpink;loves@@ and @@.mediumaquamarine;trusts@@ you.
 	<<set $activeSlave.devotion = 100, $activeSlave.oldDevotion = 100, $activeSlave.trust = 100, $activeSlave.oldTrust = 100, $activeSlave.sexualQuirk = "romantic", $activeSlave.fetish = "none", $activeSlave.fetishKnown = 1>>
+	<<set $activeSlave.intelligence = $genePool[_ress].intelligence>>
 	<<if ($arcologies[0].FSPaternalist != "unset")>>
 		Society @@.green;strongly approves@@ of $activeSlave.slaveName being restored to sanity by the power of love, which advances ideals about enlightened slave ownership.
 		<<set $repGain += 2*$FSSingleSlaveRep*($arcologies[0].FSPaternalist/$FSLockinLevel), $arcologies[0].FSPaternalist += 0.01*$FSSingleSlaveRep>>
diff --git a/src/uncategorized/spaReport.tw b/src/uncategorized/spaReport.tw
index c4d91e2d3f4..aef383955eb 100644
--- a/src/uncategorized/spaReport.tw
+++ b/src/uncategorized/spaReport.tw
@@ -88,6 +88,10 @@
 			<<if (random(1,100) > 90-$Attendant.devotion)>>
 				<br>&nbsp;&nbsp;&nbsp;&nbsp;@@.green;Something almost miraculous has happened.@@ $Attendant.slaveName has always refused to believe that $slaves[$i].slaveName could not be reached, and has lavished patient tenderness on her in $spaName. $slaves[$i].slaveName has begun to respond, and is stirring from her mental torpor.
 				<<set $slaves[$i].devotion = -3, $slaves[$i].sexualFlaw = "apathetic", $slaves[$i].behavioralFlaw = either("hates men", "odd"), $slaves[$i].fetish = "none", $slaves[$i].fetishKnown = 1>>
+				<<set _spr = $genePool.findIndex(function(s) { return s.ID == $slaves[$i].ID; })>>
+				<<if $genePool[_spr].intelligence > -3>>
+					<<set $slaves[$i].intelligence = $genePool[_spr].intelligence-1>>
+				<</if>>
 				<<if ($arcologies[0].FSPaternalist > 0)>>
 					Society @@.green;strongly approves@@ of $slaves[$i].slaveName being restored to sanity, which advances ideals about enlightened slave ownership.
 					<<set $repGain += 2*$FSSingleSlaveRep*($arcologies[0].FSPaternalist/$FSLockinLevel), $arcologies[0].FSPaternalist += 0.01*$FSSingleSlaveRep>>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index e24aa0e82b1..29280a6e413 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -13055,7 +13055,7 @@ $He has
 		$He's originally @@.tan;from Vatican City@@; ethnically, $he's
 	<<else>>
 		$He's originally @@.tan;<<print $activeSlave.nationality>>@@; ethnically, $he's
-<</if>>
+	<</if>>
 	@@.tan;<<print $activeSlave.race>>@@, and $his skin is <<print $activeSlave.skin>><<if $activeSlave.markings == "freckles">> and lightly freckled<<if (($activeSlave.skin == "pale") || ($activeSlave.skin == "fair")) && ($activeSlave.hColor != "red")>>, an attractive combination<</if>><<elseif $activeSlave.markings == "heavily freckled">> and heavily freckled<<if (($activeSlave.skin == "pale") || ($activeSlave.skin == "fair")) && ($activeSlave.hColor != "red")>>, an attractive combination<</if>><</if>>.
 <<elseif ($seeRace == 1)>>
 	Ethnically, $he's @@.tan;<<print $activeSlave.race>>@@, and $his skin is <<print $activeSlave.skin>><<if $activeSlave.markings == "freckles">> and lightly freckled<<if (($activeSlave.skin == "pale") || ($activeSlave.skin == "fair")) && ($activeSlave.hColor != "red")>>, an attractive combination<</if>><<elseif $activeSlave.markings == "heavily freckled">> and heavily freckled<<if (($activeSlave.skin == "pale") || ($activeSlave.skin == "fair")) && ($activeSlave.hColor != "red")>>, an attractive combination<</if>><</if>>.
-- 
GitLab


From 4d01c575fc4672b02f311262c3cf6e2768d1ded0 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Sun, 29 Jul 2018 11:52:10 -0500
Subject: [PATCH 155/189] Spacing

---
 src/pregmod/MpregSelf.tw                      |   2 +-
 src/pregmod/incubator.tw                      |  75 ++++----
 src/pregmod/incubatorReport.tw                | 162 +++++++++---------
 src/pregmod/pcPregIntro.tw                    |   1 -
 src/pregmod/reMaleArcologyOwner.tw            |   3 -
 src/pregmod/saInflation.tw                    |   1 -
 src/pregmod/slaveAgeIntro.tw                  |   1 -
 src/pregmod/theBlackMarket.tw                 |  98 +++++------
 src/pregmod/widgets/bodySwapReaction.tw       |   1 -
 src/pregmod/widgets/pregmodWidgets.tw         |  57 +++---
 src/uncategorized/#README-includes.txt        |   2 +-
 src/uncategorized/RESS.tw                     |  84 ++++-----
 src/uncategorized/brothelAdvertisement.tw     |  15 +-
 src/uncategorized/coursingAssociation.tw      |  11 +-
 src/uncategorized/main.tw                     |   1 -
 src/uncategorized/pBombing.tw                 |  10 +-
 src/uncategorized/pCollaborationChoice.tw     |  14 +-
 src/uncategorized/pCorpAnnouncement.tw        |   6 +-
 src/uncategorized/pSlaveMedic.tw              |   2 -
 src/uncategorized/pSnatchAndGrab.tw           |   8 +-
 src/uncategorized/pTraitorMessage.tw          |   8 +-
 src/uncategorized/peCombatTraining.tw         |  14 +-
 src/uncategorized/pePitFight.tw               |  17 +-
 src/uncategorized/pePitFightInvite.tw         |  12 +-
 src/uncategorized/reBoomerang.tw              |   1 -
 src/uncategorized/reBusyBrothel.tw            |   3 +
 src/uncategorized/reBusyClub.tw               |  14 +-
 src/uncategorized/reBusyDairy.tw              |  16 +-
 src/uncategorized/reBusyServantsQuarters.tw   |   8 +-
 .../reFSEgyptianRevivalistAcquisition.tw      |   5 +-
 src/uncategorized/reFSNonconformist.tw        |   2 +-
 src/uncategorized/reFormerAbolitionist.tw     |  16 +-
 src/uncategorized/reHGReplacement.tw          |   1 -
 src/uncategorized/resSale.tw                  |  10 +-
 src/uncategorized/seLethalPit.tw              |  28 +--
 src/uncategorized/securityForceProposal.tw    |   8 +-
 36 files changed, 328 insertions(+), 389 deletions(-)

diff --git a/src/pregmod/MpregSelf.tw b/src/pregmod/MpregSelf.tw
index 8ecbadc963c..5f17ca1f347 100644
--- a/src/pregmod/MpregSelf.tw
+++ b/src/pregmod/MpregSelf.tw
@@ -58,7 +58,7 @@
 		You spread your legs into a wide M shape, as if preparing for a gynecological exam. You can't demean yourself by allowing your slave to penetrate you, so you carefully position the girthy syringe between your massive balls and slowly shove it into your pussy. Adjusting your grip, you keep pushing; you're unable to suppress a moan when you feel the nubby plug-like tip knock at the entrance of your womb. Thoroughly penetrated, you lay back and give your slave instructions. "Fuck me good and hard with the syringe until I cum. When I do, I want you to take both hands and ram that plunger in. Push hard, I want that syringe completely empty when you're done."
 		<br><br>The girl does as she's told, getting a firm grip on the syringe and pushing in slightly before drawing it outward. After a brief pause, she shoves it back inside you. Seeing the undeniable pleasure on your face, she takes it as permission to continue and quickly picks up the pace. Soon she's fucking you hard and fast with the syringe. Thanks to the position caused by your widely-splayed legs, your fertile womb is lined up perfectly for each thrust to slam the pointy enema bulb into the opening of your cervix, forcibly stretching it further open with each piercing impact. The sensation is too much to bear after having cum so recently, and you rapidly moan your way towards another orgasm. 
 		Your fevered thoughts are focused on the perverse pleasure of giving yourself a creampie, intensifying the extreme pleasure you're feeling. Soon you are cumming with a scream of ecstasy, your neglected cock making your orgasm obvious as it sends thick streams of cum spraying all over the place to soak you and your slave. Seeing her cue, the girl grabs the large plunger with both hands and starts shoving it in the direction of your womb. She leans in, using her body weight to help fight the resistance of your richly-thick and fertile semen that's filling the syringe. The pressure forces the whole enema syringe further inside you, causing a blissful stretching sensation as the squirting enema bulb penetrates your cervix to lodge in your womb. 
-		Your orgasm continues unabated, spurred on by the syringe now spraying your cum directly into your womb. You spend a couple minutes that feel like hours cumming as your slave slowly inflates your womb with a seemingly-endless volume of your virile cum.  
+		Your orgasm continues unabated, spurred on by the syringe now spraying your cum directly into your womb. You spend a couple minutes that feel like hours cumming as your slave slowly inflates your womb with a seemingly-endless volume of your virile cum.
 		<br><br>Sometime later when you've recovered your senses, you see your slave standing by while holding the plunger to keep your balloon-like womb from forcing its meal back into the syringe. The nearly 2 liters of cum you have stuffed inside you leaves your stomach looking noticeably distended, prompting you to rub your sloshing belly. You give the waiting girl her orders: "pull it out, and use your mouth to keep the mess to a minimum." She gets on her knees and takes a firm grip on the syringe before peering over your inflated belly to make sure you're ready for her to continue. As soon as you give her a nod she pulls, and with a popping sensation the enema bulb comes free. The sudden lack of resistance causes her to swiftly yank the rest of the syringe out of you, opening the floodgates for the colossal quantity of cum inflating your womb. Your well-trained slave reacts quickly, hefting your massive balls up and out of the way so she can catch the torrent of jizz that's just starting to pour from your cunt. 
 		You hear some wet sounds as she slurps down the cum that already escaped, and then you feel her soft lips pressed to your vulva as she steadfastly works to drink the unending flood of semen. You relax and enjoy the afterglow of your orgasms while she works, proud of your ingenious idea to take advantage of your inhuman sperm production. There's always the tap from $dairyName of course, but why use slave cum when you have such obviously superior material available? 
 	
diff --git a/src/pregmod/incubator.tw b/src/pregmod/incubator.tw
index 1b94a07042e..b055657d3b3 100644
--- a/src/pregmod/incubator.tw
+++ b/src/pregmod/incubator.tw
@@ -32,41 +32,41 @@ $incubatorNameCaps is a clean, cold hall designed to be lined with tanks and the
 <br><br>
 Reserve an eligible mother-to-be's child to be placed in a tank upon birth. Of $incubator tanks, <<print $freeTanks>> <<if $freeTanks == 1>>is<<else>>are<</if>> unoccupied. Of those, $reservedChildren <<if $reservedChildren == 1>>tank is<<else>>tanks are<</if>> reserved.
 /*
-**  With hundreds of slaves, navigating the Incubator room was giving me as much of a headache as other lists.
-**  So, I borrowed the sorting list and dropped a few options here.
+** With hundreds of slaves, navigating the Incubator room was giving me as much of a headache as other lists.
+** So, I borrowed the sorting list and dropped a few options here.
 */
 <<if (0 < _SL)>>
-        <<set $sortIncubatorList = $sortIncubatorList || 'Unsorted'>>
-        <br/>//Sorting:// ''<span id="qlIncubatorSort">$sortIncubatorList</span>.''
-        <<link "Sort by Name">>
-                <<set $sortIncubatorList = 'Name'>>
-                <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>>
-                <<script>>
-                        sortIncubatorPossiblesByName();
-                <</script>>
-        <</link>> |
-        <<link "Sort by Reserved Incubator Spots">>
-                <<set $sortIncubatorList = 'Reserved Incubator Spots'>>
-                <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>>
-                <<script>>
-                        sortIncubatorPossiblesByReservedSpots();
-                <</script>>
-        <</link>> |
-        <<link "Sort by Pregnancy Week">>
-                <<set $sortIncubatorList = 'Pregnancy Week'>>
-                <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>>
-                <<script>>
-                        sortIncubatorPossiblesByPregnancyWeek();
-                <</script>>
-        <</link>> |
-        <<link "Sort by Number of Children">>
-                <<set $sortIncubatorList = 'Number of Children'>>
-                <<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>>
-                <<script>>
-                        sortIncubatorPossiblesByPregnancyCount();
-                <</script>>
-        <</link>>
-        <br/>
+		<<set $sortIncubatorList = $sortIncubatorList || 'Unsorted'>>
+		<br/>//Sorting:// ''<span id="qlIncubatorSort">$sortIncubatorList</span>.''
+		<<link "Sort by Name">>
+				<<set $sortIncubatorList = 'Name'>>
+				<<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>>
+				<<script>>
+						sortIncubatorPossiblesByName();
+				<</script>>
+		<</link>> |
+		<<link "Sort by Reserved Incubator Spots">>
+				<<set $sortIncubatorList = 'Reserved Incubator Spots'>>
+				<<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>>
+				<<script>>
+						sortIncubatorPossiblesByReservedSpots();
+				<</script>>
+		<</link>> |
+		<<link "Sort by Pregnancy Week">>
+				<<set $sortIncubatorList = 'Pregnancy Week'>>
+				<<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>>
+				<<script>>
+						sortIncubatorPossiblesByPregnancyWeek();
+				<</script>>
+		<</link>> |
+		<<link "Sort by Number of Children">>
+				<<set $sortIncubatorList = 'Number of Children'>>
+				<<replace "#qlIncubatorSort">>$sortIncubatorList<</replace>>
+				<<script>>
+						sortIncubatorPossiblesByPregnancyCount();
+				<</script>>
+		<</link>>
+		<br/>
 <</if>>
 <div id="qlIncubator">
 <<for _u = 0; _u < _SL; _u++>>
@@ -92,7 +92,7 @@ Reserve an eligible mother-to-be's child to be placed in a tank upon birth. Of $
 		<<if $slaves[_u].pregType > 1>>$slaves[_u].pregType babies<<else>>baby<</if>>.
 		<<if $slaves[_u].reservedChildren > 0>>
 			<<set _childrenReserved = 1>>
-		    <<if $slaves[_u].pregType == 1>>
+			<<if $slaves[_u].pregType == 1>>
 				Her child will be placed in $incubatorName.
 			<<elseif $slaves[_u].reservedChildren < $slaves[_u].pregType>>
 				$slaves[_u].reservedChildren of her children will be placed in $incubatorName.
@@ -138,7 +138,7 @@ Reserve an eligible mother-to-be's child to be placed in a tank upon birth. Of $
 <</for>>
 </div>
 <<script>>
-        $('div#qlIncubator').ready(sortIncubatorPossiblesByPreviousSort);
+		$('div#qlIncubator').ready(sortIncubatorPossiblesByPreviousSort);
 <</script>>
 <<if _eligibility == 0>>
 	<br>
@@ -298,7 +298,7 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 				very overweight and
 			<<elseif $tanks[$i].weight <= -31 && $tanks[$i].weight >= -95>>
 				quite thin and
-			<<elseif  $tanks[$i].weight <= -96>>
+			<<elseif $tanks[$i].weight <= -96>>
 				very thin and
 			<</if>>
 			<<if $tanks[$i].muscles <= 5 && $tanks[$i].muscles >= -5>>
@@ -358,7 +358,7 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 					and her testicles will reach a monstrous size.
 				<</if>>
 			<</if>>
-			<<if $tanks[$i].pubertyXX == 1 &&  $tanks[$i].ovaries == 1>>
+			<<if $tanks[$i].pubertyXX == 1 && $tanks[$i].ovaries == 1>>
 				Scanners report her womb is fertile.
 			<<else>>
 				Scanners report she is not fertile,
@@ -571,4 +571,3 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 <</if>>
 
 <br><br>Rename $incubatorName: <<textbox "$incubatorName" $incubatorName "Incubator">> //Use a noun or similar short phrase//
-
diff --git a/src/pregmod/incubatorReport.tw b/src/pregmod/incubatorReport.tw
index aedf2e1d11d..313fa93676d 100644
--- a/src/pregmod/incubatorReport.tw
+++ b/src/pregmod/incubatorReport.tw
@@ -142,54 +142,54 @@
 		<br>
 		<<set _heightLimit = Math.trunc(Math.clamp((Height.mean($tanks[_inc].height) * 1.25),0,274))>>
 		<<set _heightLimitAge = Height.forAge($tanks[_inc].height, $tanks[_inc])>>
-                <<if $tanks[_inc].inducedNCS == 1>>
-                        /* 
-                        **  NCS should block physical growth beyond that of a toddler, but some players might like
-                        **  a little more or less.  So using $minimumSlaveAge or 8, whichever is lesser.
-                        */
-                        <<set _limitAge = Math.min(8, $minimumSlaveAge)>>
-                        <<set _heightLimitAge = Height.forAge($tanks[_inc].height, _limitAge, $tanks[_inc].genes)>>
-                        <<set _heightLimit =  _heightLimitAge>>
-                <</if>>
+				<<if $tanks[_inc].inducedNCS == 1>>
+						/* 
+						** NCS should block physical growth beyond that of a toddler, but some players might like
+						** a little more or less. So using $minimumSlaveAge or 8, whichever is lesser.
+						*/
+						<<set _limitAge = Math.min(8, $minimumSlaveAge)>>
+						<<set _heightLimitAge = Height.forAge($tanks[_inc].height, _limitAge, $tanks[_inc].genes)>>
+						<<set _heightLimit = _heightLimitAge>>
+				<</if>>
 		<<if $tanks[_inc].height >= _heightLimit>>
 			The monitoring system detects $his body is not able to support further increases in height, so it carefully regulates stimulant injections to @@.yellow;maintain $his current stature.@@
 			<<set $tanks[_inc].height = _heightLimit>>
 		<<elseif $incubatorGrowthStimsSetting == 2>>
-                        <<if $tanks[_inc].inducedNCS == 1>>
-                                The monitoring system floods $his body with growth stimulants, but $his @@.orange;NCS prevents an increase in $his growth rate.@@
-                                <<set $tanks[_inc].height = _heightLimitAge>>
-                        <<else>>
-                                The monitoring system floods $his body with growth stimulants, causing @@.green;a sharp increase in growth rate.@@
-                                <<if $incubatorWeightSetting >= 1 && $incubatorMusclesSetting <= 1 && $incubatorReproductionSetting <= 1>>
-                                        <<if $incubatorUpgradeSpeed == 52>>
-                                                <<set $tanks[_inc].height += random(3,6)>>
-                                        <<elseif $incubatorUpgradeSpeed == 18>>
-                                                <<set $tanks[_inc].height += random(2,5)>>
-                                        <<elseif $incubatorUpgradeSpeed == 9>>
-                                                <<set $tanks[_inc].height += random(1,4)>>
-                                        <<elseif $incubatorUpgradeSpeed == 6>>
-                                                <<set $tanks[_inc].height += random(1,3)>>
-                                        <<elseif $incubatorUpgradeSpeed == 5>>
-                                                <<set $tanks[_inc].height += random(1,2)>>
-                                        <</if>>
-                                <<else>>
-                                        <<if $incubatorUpgradeSpeed == 52>>
-                                                <<set $tanks[_inc].height += random(2,5)>>
-                                        <<elseif $incubatorUpgradeSpeed == 18>>
-                                                <<set $tanks[_inc].height += random(1,4)>>
-                                        <<elseif $incubatorUpgradeSpeed == 9>>
-                                                <<set $tanks[_inc].height += random(1,3)>>
-                                        <<elseif $incubatorUpgradeSpeed == 6>>
-                                                <<set $tanks[_inc].height += random(1,2)>>
-                                        <<elseif $incubatorUpgradeSpeed == 5>>
-                                                <<set $tanks[_inc].height += random(0,1)>>
-                                        <</if>>
-                                <</if>>
-                        <</if>>
+						<<if $tanks[_inc].inducedNCS == 1>>
+								The monitoring system floods $his body with growth stimulants, but $his @@.orange;NCS prevents an increase in $his growth rate.@@
+								<<set $tanks[_inc].height = _heightLimitAge>>
+						<<else>>
+								The monitoring system floods $his body with growth stimulants, causing @@.green;a sharp increase in growth rate.@@
+								<<if $incubatorWeightSetting >= 1 && $incubatorMusclesSetting <= 1 && $incubatorReproductionSetting <= 1>>
+										<<if $incubatorUpgradeSpeed == 52>>
+												<<set $tanks[_inc].height += random(3,6)>>
+										<<elseif $incubatorUpgradeSpeed == 18>>
+												<<set $tanks[_inc].height += random(2,5)>>
+										<<elseif $incubatorUpgradeSpeed == 9>>
+												<<set $tanks[_inc].height += random(1,4)>>
+										<<elseif $incubatorUpgradeSpeed == 6>>
+												<<set $tanks[_inc].height += random(1,3)>>
+										<<elseif $incubatorUpgradeSpeed == 5>>
+												<<set $tanks[_inc].height += random(1,2)>>
+										<</if>>
+								<<else>>
+										<<if $incubatorUpgradeSpeed == 52>>
+												<<set $tanks[_inc].height += random(2,5)>>
+										<<elseif $incubatorUpgradeSpeed == 18>>
+												<<set $tanks[_inc].height += random(1,4)>>
+										<<elseif $incubatorUpgradeSpeed == 9>>
+												<<set $tanks[_inc].height += random(1,3)>>
+										<<elseif $incubatorUpgradeSpeed == 6>>
+												<<set $tanks[_inc].height += random(1,2)>>
+										<<elseif $incubatorUpgradeSpeed == 5>>
+												<<set $tanks[_inc].height += random(0,1)>>
+										<</if>>
+								<</if>>
+						<</if>>
 		<<elseif $incubatorGrowthStimsSetting == 1>>
-                        <<if $tanks[_inc].inducedNCS == 1>>
+						<<if $tanks[_inc].inducedNCS == 1>>
 				The monitoring system detects $he is near the expected height for $his @@.orange;NCS@@ condition, so it carefully regulates stimulants injections to @@.yellow;maintain $his current stature.@@
-                                <<set $tanks[_inc].height = _heightLimitAge>>
+								<<set $tanks[_inc].height = _heightLimitAge>>
 			<<elseif $tanks[_inc].height > _heightLimitAge>>
 				The monitoring system detects $he is near the expected height, so it carefully regulates stimulants injections to @@.yellow;maintain $his current stature.@@
 				<<if random(1,10) == 10>>
@@ -243,8 +243,8 @@
 						<<set $tanks[_inc].readyOva = random(3,8)>>
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
-                                                /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
+												/* NCS blocks hormonal growth of all secondary sexual characteristics */
+												$His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].boobs < 8000>>
 							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
@@ -317,8 +317,8 @@
 						<<set $tanks[_inc].hormoneBalance -= 100>>
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
-                                                /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
+												/* NCS blocks hormonal growth of all secondary sexual characteristics */
+												$His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].balls < 40>>
 							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
@@ -379,8 +379,8 @@
 						<<set $tanks[_inc].readyOva = random(2,6)>>
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
-                                                /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
+												/* NCS blocks hormonal growth of all secondary sexual characteristics */
+												$His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].boobs < 4000>>
 							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
@@ -453,8 +453,8 @@
 						<<set $tanks[_inc].hormoneBalance -= 100>>
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
-                                                /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
+												/* NCS blocks hormonal growth of all secondary sexual characteristics */
+												$His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].balls < 10>>
 							The excess testosterone-laced growth hormones @@.green;cause $his balls to balloon for extra cum production.@@
@@ -515,8 +515,8 @@
 						<<set $tanks[_inc].readyOva = random(2,4)>>
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
-                                                /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
+												/* NCS blocks hormonal growth of all secondary sexual characteristics */
+												$His @@.orange;NCS blocks all growth@@ despite the excess estrogen-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].boobs < 2000>>
 							The excess estrogen-laced growth hormones @@.green;rapidly balloon $his breasts.@@
@@ -589,8 +589,8 @@
 						<<set $tanks[_inc].hormoneBalance -= 100>>
 					<</if>>
 					<<if $tanks[_inc].inducedNCS == 1>>
-                                                /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                                $His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
+												/* NCS blocks hormonal growth of all secondary sexual characteristics */
+												$His @@.orange;NCS blocks all growth@@ despite the excess testosterone-laced growth hormones flooding $his body.
 					<<elseif $incubatorUpgradeSpeed == 52>>
 						<<if $tanks[_inc].balls < 6>>
 							The excess testosterone-laced growth hormones @@.green;cause $his balls to grow for extra cum production.@@
@@ -644,38 +644,38 @@
 			<<if $tanks[_inc].ovaries == 1>>
 				<<set $tanks[_inc].pubertyXX = 1>>
 				<<set $tanks[_inc].hormoneBalance = 250>>
-                                <<if $tanks[_inc].inducedNCS == 1>>
-                                        /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                        $His @@.orange;NCS blocks growth@@ despite the added estrogen.
-                                <<else>>
-                                        <<if $tanks[_inc].boobs < 400 && random(1,100) > 60>>
-                                                The added estrogen @@.green;causes $his breasts to swell.@@
-                                                <<set $tanks[_inc].boobs += 50>>
-                                        <</if>>
-                                        <<if $tanks[_inc].hips < 2 && random(1,100) > 90>>
-                                                The added estrogen @@.green;causes $his hips to widen.@@
-                                                <<set $tanks[_inc].hips++>>
-                                        <</if>>
-                                        <<if $tanks[_inc].butt < 5 && random(1,100) > 80>>
-                                                The added estrogen @@.green;causes $his butt to grow.@@
-                                                <<set $tanks[_inc].butt++>>
-                                        <</if>>
+								<<if $tanks[_inc].inducedNCS == 1>>
+										/* NCS blocks hormonal growth of all secondary sexual characteristics */
+										$His @@.orange;NCS blocks growth@@ despite the added estrogen.
+								<<else>>
+										<<if $tanks[_inc].boobs < 400 && random(1,100) > 60>>
+												The added estrogen @@.green;causes $his breasts to swell.@@
+												<<set $tanks[_inc].boobs += 50>>
+										<</if>>
+										<<if $tanks[_inc].hips < 2 && random(1,100) > 90>>
+												The added estrogen @@.green;causes $his hips to widen.@@
+												<<set $tanks[_inc].hips++>>
+										<</if>>
+										<<if $tanks[_inc].butt < 5 && random(1,100) > 80>>
+												The added estrogen @@.green;causes $his butt to grow.@@
+												<<set $tanks[_inc].butt++>>
+										<</if>>
 				<</if>>
 			<<elseif $tanks[_inc].balls > 0>>
 				<<set $tanks[_inc].pubertyXY = 1>>
 				<<set $tanks[_inc].hormoneBalance = -250>>
-                                <<if $tanks[_inc].inducedNCS == 1>>
-                                        /* NCS blocks hormonal growth of all secondary sexual characteristics */
-                                        $His @@.orange;NCS blocks all growth@@ despite the added testosterone.
+								<<if $tanks[_inc].inducedNCS == 1>>
+										/* NCS blocks hormonal growth of all secondary sexual characteristics */
+										$His @@.orange;NCS blocks all growth@@ despite the added testosterone.
 				<<else>>
-                                        <<if $tanks[_inc].balls < 3 && random(1,100) > 80>>
-                                                The added testosterone @@.green;causes $his balls to swell.@@
-                                                <<set $tanks[_inc].balls++>>
-                                        <</if>>
-                                        <<if $tanks[_inc].dick < 3 && random(1,100) > 60>>
-                                                The added testosterone @@.green;causes $his penis to grow.@@
-                                                <<set $tanks[_inc].dick++>>
-                                        <</if>>
+										<<if $tanks[_inc].balls < 3 && random(1,100) > 80>>
+												The added testosterone @@.green;causes $his balls to swell.@@
+												<<set $tanks[_inc].balls++>>
+										<</if>>
+										<<if $tanks[_inc].dick < 3 && random(1,100) > 60>>
+												The added testosterone @@.green;causes $his penis to grow.@@
+												<<set $tanks[_inc].dick++>>
+										<</if>>
 				<</if>>
 			<</if>>
 		<<else>>
diff --git a/src/pregmod/pcPregIntro.tw b/src/pregmod/pcPregIntro.tw
index 6c2f4e7cd67..43723712cf0 100644
--- a/src/pregmod/pcPregIntro.tw
+++ b/src/pregmod/pcPregIntro.tw
@@ -37,4 +37,3 @@ You're
 //Hormone induced moods may alter some sex scenes, as well as change slaves' reactions to you.//
 <br><br>
 [[Confirm player character customization|PC Appearance Intro]]
-
diff --git a/src/pregmod/reMaleArcologyOwner.tw b/src/pregmod/reMaleArcologyOwner.tw
index 2c09cee69af..42ae7be465c 100644
--- a/src/pregmod/reMaleArcologyOwner.tw
+++ b/src/pregmod/reMaleArcologyOwner.tw
@@ -1,7 +1,5 @@
 :: RE male arcology owner [nobr]
  
-
-
 <<set $nextButton = "Continue", $nextLink = "RIE Eligibility Check">>
 
 The more reputable you've gotten, the more rarefied your entertainments have become. Parties featuring celebrities, old world national leaders, and Free Cities arcology owners have become a nearly nightly experience for you, an expected part of your routine as one of the Free Cities' leading citizens. According to your whims and predilections, you have the choice of participating all night or just making a brief appearance at the start. The important thing is that they're here, come to pay tribute by their presence.
@@ -42,4 +40,3 @@ He strikes a fine balance in conversation with you, firm enough to not overpower
 <</link>>
 <</if>>
 </span>
-
diff --git a/src/pregmod/saInflation.tw b/src/pregmod/saInflation.tw
index 997cdca04c3..a738f25dc21 100644
--- a/src/pregmod/saInflation.tw
+++ b/src/pregmod/saInflation.tw
@@ -523,4 +523,3 @@
 		<<set $slaves[$i].butt += 1>>
 	<</if>>
 <</if>>
-
diff --git a/src/pregmod/slaveAgeIntro.tw b/src/pregmod/slaveAgeIntro.tw
index 29605afe2e0..f59658006aa 100644
--- a/src/pregmod/slaveAgeIntro.tw
+++ b/src/pregmod/slaveAgeIntro.tw
@@ -8,4 +8,3 @@ Do you want to see content involving girls younger than 18 in this game?
 <br>Yes, I wish to see girls as young as <<textbox "$minimumSlaveAge" $minimumSlaveAge "PC Body Intro">> [[Continue|PC Body Intro][$pedo_mode = 0]]
 <br>[[I just want lots of lolis.|PC Body Intro][$minimumSlaveAge = 3, $pedo_mode = 1]] //Nearly all randomly generated slaves will be under the age of 18, although custom slaves and slaves related to specific events may be older.//
 <br>[[I wish to see them grow up and become fertile.|PC Body Intro][$minimumSlaveAge = 3, $pedo_mode = 0, $precociousPuberty = 1, $loliGrow = 0, $fertilityAge = 10, $potencyAge = 12, $seeAge = 1]] //Preset. Slaves' age will be random from minimal possible age. They can be made fertile younger than normal puberty age (10) in some cases, and grow up naturally.//
-
diff --git a/src/pregmod/theBlackMarket.tw b/src/pregmod/theBlackMarket.tw
index 73577857f86..e592ae23a43 100644
--- a/src/pregmod/theBlackMarket.tw
+++ b/src/pregmod/theBlackMarket.tw
@@ -134,60 +134,60 @@ Of all the wonders present, the thing that catches your eye the most is a shady
 		<br>You appear to already possess all the societal based schematics he has to offer.
 	<</if>>
 
-        /*
-        **      Special gating of NCS behind $minimumSlaveAge<16, this if and handling only is important while there are no other black market goods for sale. -- once we do have more than one, then this can probably be removed.
-        */
-        <<if (($thisWeeksIllegalFSWares.length >= 1) && ($minimumSlaveAge > 15))>>
-            /*
-            **      discard the NCS.
-            */
-            <<set _dump = $thisWeeksIllegalFSWares.delete("childhoodFertilityInducedNCS")>>
-        <</if>>
-
+		/*
+		** Special gating of NCS behind $minimumSlaveAge<16, this if and handling only is important while there are no other black market goods for sale. -- once we do have more than one, then this can probably be removed.
+		*/
+		<<if (($thisWeeksIllegalFSWares.length >= 1) && ($minimumSlaveAge > 15))>>
+			/*
+			** discard the NCS.
+			*/
+			<<set _dump = $thisWeeksIllegalFSWares.delete("childhoodFertilityInducedNCS")>>
+		<</if>>
+	
 	<br><br>
-        He gestures to a door in the back of the stall. "The good shit's back there<<if $thisWeeksIllegalFSWares.length > 1>>, here's a list: <<elseif $thisWeeksIllegalFSWares.length == 1>>, only one this week: <<else>>.<</if>>"
-        <<if $thisWeeksIllegalFSWares.length == 0>>
-                <br>You appear to already possess all the black market schematics he has to offer.
-        <</if>>
+		He gestures to a door in the back of the stall. "The good shit's back there<<if $thisWeeksIllegalFSWares.length > 1>>, here's a list: <<elseif $thisWeeksIllegalFSWares.length == 1>>, only one this week: <<else>>.<</if>>"
+		<<if $thisWeeksIllegalFSWares.length == 0>>
+				<br>You appear to already possess all the black market schematics he has to offer.
+		<</if>>
 	<<if $thisWeeksIllegalFSWares.length >= 1>> 
-                <dl>
+				<dl>
 		<<for _bim = 0; _bim < $thisWeeksIllegalFSWares.length; _bim++>>
 			<<if (($minimumSlaveAge <= 15) && ($thisWeeksIllegalFSWares[_bim] == "childhoodFertilityInducedNCS"))>>
-                                <dt>@@.cyan;Childhood Fertility Induced NCS (Induced Neotenic Complex Syndrome or Syndrome X modified for fertility).@@</dt> 
-                                <dd>
-                                <<if $minimumSlaveAge > 8>>
-                                        Illegal information for the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br>
-                                        "I'm sorry, I can't sell this product to you, even if I wanted to," he says. "I have this technology, which if applied, would make slaves appear younger than the legal age of majority. I picked up from an exotics dealer, who picked it up from some old world government research center. And yes, I know, this is a black market, and I would be happy to sell it to you, except, you see, too many of the wrong people know I have it, and while the knowledge isn't illegal, selling or using it is. See if I sell this to you, you'd start getting younger looking slaves, and those people would try to take us both down, and since I'm not the master of an arcology, I would probably end up enslaved, and I'm not interested in that. If only the laws had a lower minimum age for slaves, I could sell this to anyone interested."
-                                        While the minimum slave age is greater than 8, you cannot purchase this illegal technology for the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br>
-                                        He notices your interest and lets you read the information [[Childhood Fertility @@.orange;Induced NCS@@|Encyclopedia][$encyclopedia = "Childhood Fertility Induced NCS"]].
-                                <<else>>
-                                        <<if $arcologies[0].FSYouthPreferentialist > 0>>
-                                                <<set _match = "Knowing your arcology, I think you could be happy with the results!">>
-                                        <<else>>
-                                                <<set _match = "I'm not sure this is a good match for your arcology's current society at this moment, but I'm sure you could have fun with it.">>
-                                        <</if>>
-                                        <<if ($pedo_mode)>>
-                                                <<set _toydolls = "If you like sexy little toy dolls, I mean biological ''@@.coral;lolis@@'' or ''@@.coral;shotas@@'' for life, then this is the one for you.  I picked it up from an exotics dealer, who picked it up from some old world government research center.", _norefunds = "Remember, though, no money back on this. Technology like this doesn't exist anywhere else, your younger slaves will stay that way forever, and your older ones will slowly begin to regress towards that nice mid-childhood state. If you want to build yourself a cadre of ''@@.coral;preteen@@'' delights for yourself or your customers, then buy now!">>
-                                        <<else>>
-                                                <<set _toydolls = "This might be a little too shady or perverted for you. But, if you want your slaves to last longer, you know, look younger for longer, well this treatment can help. However it comes at a price, this treatment will eventually turn your slave girls younger and younger looking, until the point you might not want to use them as sex slaves because they'll appear as teenagers or even younger.  I'm serious, your slaves treated with this treatment will eventually look like children! They won't be, really, but this is no fountain of perpetual youth, and to be fair, maybe none of this will be up your alley. If that's the case, I guess you could just sell them once they get too young looking, and possibly for a higher price than if they looked older. It's, at best, for possibly more discerning or eclectic tastes then you might have. I picked it up from an exotics dealer, who picked it up from some old world government research center.", _norefunds = "Remember, though, no money back on this. Technology like this doesn't exist anywhere else, your treated slaves will stay and become younger looking forever, and your older ones will slowly begin to regress towards a disturbingly young mid-childhood state. All those caveats asside, if this sounds like something you'd want, then buy now!">>
-                                        <</if>>
-                                        <<if $arcologies[0].childhoodFertilityInducedNCSResearch == 0>>
-                                                <<if $cash >= 135000>>
-                                                        "_toydolls _match _norefunds"<br>
-                                                        [[Purchase childhood fertility induced NCS|The Black Market][$cash -= 135000, $arcologies[0].childhoodFertilityInducedNCSResearch = 1, _dump = $merchantFSWares.delete("childFertilityInducedSyndromeX")]] //@@.yellowgreen;<<print cashFormat(135000)>>.@@//<br>
-                                                <<else>>
-                                                        "_toydolls _match _norefunds Or, you know, come back with money."<br>
-                                                        You cannot afford the asking price of @@.red;<<print cashFormat(135000)>>@@ for the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br>
-                                                <</if>>
-                                                He notices your interest and lets you read the information [[Childhood Fertility Induced NCS|Encyclopedia][$encyclopedia = "Childhood Fertility Induced NCS"]].
-                                        <<else>>
-                                                You already possess the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br>
-                                                <<set _dump = $merchantIllegalWares.delete("childhoodFertilityInducedNCS")>>
-                                        <</if>>
-                                <</if>>
-                                </dd>
+								<dt>@@.cyan;Childhood Fertility Induced NCS (Induced Neotenic Complex Syndrome or Syndrome X modified for fertility).@@</dt> 
+								<dd>
+								<<if $minimumSlaveAge > 8>>
+										Illegal information for the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br>
+										"I'm sorry, I can't sell this product to you, even if I wanted to," he says. "I have this technology, which if applied, would make slaves appear younger than the legal age of majority. I picked up from an exotics dealer, who picked it up from some old world government research center. And yes, I know, this is a black market, and I would be happy to sell it to you, except, you see, too many of the wrong people know I have it, and while the knowledge isn't illegal, selling or using it is. See if I sell this to you, you'd start getting younger looking slaves, and those people would try to take us both down, and since I'm not the master of an arcology, I would probably end up enslaved, and I'm not interested in that. If only the laws had a lower minimum age for slaves, I could sell this to anyone interested."
+										While the minimum slave age is greater than 8, you cannot purchase this illegal technology for the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br>
+										He notices your interest and lets you read the information [[Childhood Fertility @@.orange;Induced NCS@@|Encyclopedia][$encyclopedia = "Childhood Fertility Induced NCS"]].
+								<<else>>
+										<<if $arcologies[0].FSYouthPreferentialist > 0>>
+												<<set _match = "Knowing your arcology, I think you could be happy with the results!">>
+											<<else>>
+												<<set _match = "I'm not sure this is a good match for your arcology's current society at this moment, but I'm sure you could have fun with it.">>
+										<</if>>
+										<<if ($pedo_mode)>>
+												<<set _toydolls = "If you like sexy little toy dolls, I mean biological ''@@.coral;lolis@@'' or ''@@.coral;shotas@@'' for life, then this is the one for you. I picked it up from an exotics dealer, who picked it up from some old world government research center.", _norefunds = "Remember, though, no money back on this. Technology like this doesn't exist anywhere else, your younger slaves will stay that way forever, and your older ones will slowly begin to regress towards that nice mid-childhood state. If you want to build yourself a cadre of ''@@.coral;preteen@@'' delights for yourself or your customers, then buy now!">>
+										<<else>>
+												<<set _toydolls = "This might be a little too shady or perverted for you. But, if you want your slaves to last longer, you know, look younger for longer, well this treatment can help. However it comes at a price, this treatment will eventually turn your slave girls younger and younger looking, until the point you might not want to use them as sex slaves because they'll appear as teenagers or even younger. I'm serious, your slaves treated with this treatment will eventually look like children! They won't be, really, but this is no fountain of perpetual youth, and to be fair, maybe none of this will be up your alley. If that's the case, I guess you could just sell them once they get too young looking, and possibly for a higher price than if they looked older. It's, at best, for possibly more discerning or eclectic tastes then you might have. I picked it up from an exotics dealer, who picked it up from some old world government research center.", _norefunds = "Remember, though, no money back on this. Technology like this doesn't exist anywhere else, your treated slaves will stay and become younger looking forever, and your older ones will slowly begin to regress towards a disturbingly young mid-childhood state. All those caveats asside, if this sounds like something you'd want, then buy now!">>
+										<</if>>
+										<<if $arcologies[0].childhoodFertilityInducedNCSResearch == 0>>
+												<<if $cash >= 135000>>
+														"_toydolls _match _norefunds"<br>
+														[[Purchase childhood fertility induced NCS|The Black Market][$cash -= 135000, $arcologies[0].childhoodFertilityInducedNCSResearch = 1, _dump = $merchantFSWares.delete("childFertilityInducedSyndromeX")]] //@@.yellowgreen;<<print cashFormat(135000)>>.@@//<br>
+												<<else>>
+														"_toydolls _match _norefunds Or, you know, come back with money."<br>
+														You cannot afford the asking price of @@.red;<<print cashFormat(135000)>>@@ for the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br>
+												<</if>>
+												He notices your interest and lets you read the information [[Childhood Fertility Induced NCS|Encyclopedia][$encyclopedia = "Childhood Fertility Induced NCS"]].
+										<<else>>
+												You already possess the Childhood Fertility @@.orange;Induced NCS@@ (genetic engineering and hormonal blend) research recipe.<br>
+												<<set _dump = $merchantIllegalWares.delete("childhoodFertilityInducedNCS")>>
+										<</if>>
+								<</if>>
+								</dd>
 			<</if>>
 		<</for>>
-                </dl>
+				</dl>
 	<</if>>
 <</if>>
diff --git a/src/pregmod/widgets/bodySwapReaction.tw b/src/pregmod/widgets/bodySwapReaction.tw
index 6b0dc099636..c1226937c58 100644
--- a/src/pregmod/widgets/bodySwapReaction.tw
+++ b/src/pregmod/widgets/bodySwapReaction.tw
@@ -15,7 +15,6 @@
 <</if>>
 <<set _end = 0>>
 
-
 <<if $args[0].health >= $args[1].health+10>>
 	The monitors indicate that $his @@.green;health has improved@@ from $his previous body. Whatever else happens, $he will likely appreciate this.
 <<elseif $args[0].health <= $args[1].health-10>>
diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw
index bced579f00c..39987f8dba0 100644
--- a/src/pregmod/widgets/pregmodWidgets.tw
+++ b/src/pregmod/widgets/pregmodWidgets.tw
@@ -27,55 +27,55 @@
 	<<set $args[0].age = $args[0].actualAge>>
 <</if>>
 <<if ndef $args[0].boobsImplantType>>
-  <<set $args[0].boobsImplantType = 0>>
+	<<set $args[0].boobsImplantType = 0>>
 <</if>>
 <<if ndef $args[0].buttImplantType>>
-  <<set $args[0].buttImplantType = 0>>
+	<<set $args[0].buttImplantType = 0>>
 <</if>>
 <<if ndef $args[0].bellyTat>>
-  <<set $args[0].bellyTat = 0>>
+	<<set $args[0].bellyTat = 0>>
 <</if>>
 <<if ndef $args[0].cSec>>
-  <<set $args[0].cSec = 0>>
+	<<set $args[0].cSec = 0>>
 <</if>>
 <<if ndef $args[0].labor>>
-  <<set $args[0].labor = 0>>
+	<<set $args[0].labor = 0>>
 <</if>>
 <<if ndef $args[0].induce>>
-  <<set $args[0].induce = 0>>
+	<<set $args[0].induce = 0>>
 <</if>>
 <<if ndef $args[0].mpreg>>
-  <<set $args[0].mpreg = 0>>
+	<<set $args[0].mpreg = 0>>
 <</if>>
 <<if ndef $args[0].inflation>>
-  <<set $args[0].inflation = 0>>
+	<<set $args[0].inflation = 0>>
 <</if>>
 <<if ndef $args[0].inflationType>>
-  <<set $args[0].inflationType = "none">>
+	<<set $args[0].inflationType = "none">>
 <</if>>
 <<if ndef $args[0].inflationMethod>>
-  <<set $args[0].inflationMethod = 0>>
+	<<set $args[0].inflationMethod = 0>>
 <</if>>
 <<if ndef $args[0].milkSource>>
-  <<set $args[0].milkSource = 0>>
+	<<set $args[0].milkSource = 0>>
 <</if>>
 <<if ndef $args[0].cumSource>>
-  <<set $args[0].cumSource = 0>>
+	<<set $args[0].cumSource = 0>>
 <</if>>
 <<if ndef $args[0].burst>>
-  <<set $args[0].burst = 0>>
+	<<set $args[0].burst = 0>>
 <</if>>
 <<if ndef $args[0].bellyImplant>>
-  <<set $args[0].bellyImplant = -1>>
+	<<set $args[0].bellyImplant = -1>>
 <</if>>
 <<if ndef $args[0].bellySag>>
-  <<set $args[0].bellySag = 0>>
+	<<set $args[0].bellySag = 0>>
 <</if>>
 <<if ndef $args[0].birthsTotal>>
-  <<set $args[0].birthsTotal = $args[0].births>>
+	<<set $args[0].birthsTotal = $args[0].births>>
 <</if>>
 <<if ndef $args[0].pubertyAgeXX>>
-  <<set $args[0].pubertyAgeXX = $fertilityAge>>
+	<<set $args[0].pubertyAgeXX = $fertilityAge>>
 <</if>>
 <<if ndef $args[0].bellyPain>>
 	<<set $args[0].bellyPain = 0>>
@@ -250,7 +250,7 @@
 	<</if>>
 <</if>>
 <<if ndef $args[0].pubertyAgeXY>>
-  <<set $args[0].pubertyAgeXY = $potencyAge>>
+	<<set $args[0].pubertyAgeXY = $potencyAge>>
 <</if>>
 <<if ndef $args[0].pubertyAgeXY>>
 	<<if $args[0].physicalAge >= $args[0].pubertyAgeXY>>
@@ -302,10 +302,10 @@
 	<<set $args[0].skillW = 0>>
 <</if>>
 <<if ndef $args[0].inducedNCS>>
-        <<set $args[0].inducedNCS = 0>>
+	<<set $args[0].inducedNCS = 0>>
 <</if>>
 <<if ndef $args[0].NCSyouthening>>
-        <<set $args[0].NCSyouthening = 0>>
+	<<set $args[0].NCSyouthening = 0>>
 <</if>>
 
 <<if ndef $args[0].pornFeed>>
@@ -359,17 +359,16 @@
 
 <</widget>>
 
-
 <<widget "setLocalPronouns">>
 /*
 	"He has a camera. The camera belongs to him. It is his camera. The camera is his."
 	"She has a diamond ring. The diamond ring belongs to her. It is her diamond ring. The diamond ring is hers."
 
-	Pronouns are tricky to get right, and this widget should make it easier to use variables naturally in writing.  There are two problems in english pronouns that matter here:
+	Pronouns are tricky to get right, and this widget should make it easier to use variables naturally in writing. There are two problems in english pronouns that matter here:
 
-	1. Her/her vs his/him.  To solve this ambiguity, variables use male pronouns thoughout, although players will of course see the contents of the variable.  "$He glared" can be printed as "She glared."
+	1. Her/her vs his/him. To solve this ambiguity, variables use male pronouns thoughout, although players will of course see the contents of the variable. "$He glared" can be printed as "She glared."
 
-	2. Her/hers vs his/his.  Here, the opposite problem.  In this one case and this alone, where you would use "hers," (the posessive pronoun) the variable is female, since the distinction is only important there.  I am very sorry for English.
+	2. Her/hers vs his/his. Here, the opposite problem. In this one case and this alone, where you would use "hers," (the posessive pronoun) the variable is female, since the distinction is only important there. I am very sorry for English.
 */
 
 	<<if $args[1] == 2>>
@@ -875,7 +874,7 @@ $activeSlave.slaveName is up for review:
 <<widget "BodyguardWeapon">>
 
 <<if ($activeSlave.muscles+$activeSlave.height-100)/25 > 5>>
-    She has a long ceramic sword strapped to her back,
+	She has a long ceramic sword strapped to her back,
 	<<switch $activeSlave.nationality>>
 	<<case "American">>
 		and, in keeping with her heritage, a US Ordnance Mk43 Mod.1 GPMG
@@ -948,7 +947,7 @@ $activeSlave.slaveName is up for review:
 	<</switch>>
 	slung crosswise on her chest.
 <<elseif ($activeSlave.muscles+$activeSlave.height-100)/25 > 4>>
-    She has a ceramic sword strapped to her back
+	She has a ceramic sword strapped to her back
 	<<switch $activeSlave.nationality>>
 	<<case "American">>
 		and, in keeping with her heritage, a Colt M16A4 assault rifle
@@ -1043,7 +1042,7 @@ $activeSlave.slaveName is up for review:
 	<</switch>>
 	slung across her chest.
 <<elseif ($activeSlave.muscles+$activeSlave.height-100)/25 > 3>>
-    She has a straight ceramic sword strapped to her back
+	She has a straight ceramic sword strapped to her back
 	<<switch $activeSlave.nationality>>
 	<<case "American">>
 		and, in keeping with her heritage, a KRISS Vector SMG
@@ -1116,7 +1115,7 @@ $activeSlave.slaveName is up for review:
 	<</switch>>
 	slung across her chest.
 <<else>>
-    She has a short ceramic sword strapped to her back
+	She has a short ceramic sword strapped to her back
 	<<switch $activeSlave.nationality>>
 	<<case "American">>
 		and, in keeping with her heritage, a MAC-10 machine pistol
@@ -1354,7 +1353,7 @@ extremely pale -5
 <<case 13>>
 	<<set $AgeTrainingLowerBoundPC = 8, $AgeTrainingUpperBoundPC = 10, $AgeEffectOnTrainerPricingPC = 1.03, $AgeEffectOnTrainerEffectivenessPC = 1.03>>
 <<case 14>>
-	<<set  $AgeTrainingLowerBoundPC = 7, $AgeTrainingUpperBoundPC = 9, $AgeEffectOnTrainerPricingPC = 1.04, $AgeEffectOnTrainerEffectivenessPC = 1.04>>
+	<<set $AgeTrainingLowerBoundPC = 7, $AgeTrainingUpperBoundPC = 9, $AgeEffectOnTrainerPricingPC = 1.04, $AgeEffectOnTrainerEffectivenessPC = 1.04>>
 <<case 15>>
 	<<set $AgeTrainingLowerBoundPC = 6, $AgeTrainingUpperBoundPC = 8, $AgeEffectOnTrainerPricingPC = 1.05, $AgeEffectOnTrainerEffectivenessPC = 1.05>>
 <<case 16>>
diff --git a/src/uncategorized/#README-includes.txt b/src/uncategorized/#README-includes.txt
index a907ef30a41..85641a32493 100644
--- a/src/uncategorized/#README-includes.txt
+++ b/src/uncategorized/#README-includes.txt
@@ -4,7 +4,6 @@ for these included passages, it is not safe to assume that a temporary variable
 
 when passages are included by other passages, any variables that they set will override variables in the calling passage, so extra care should be taken in these passages if they use $i, _i, _j or other common variable names to ensure that callers are not expecting those variables to be unchanged after the include
 
-
 all sa... passages
 
 arcologyDescription
@@ -50,6 +49,7 @@ economics
 	marketsReport
 
 npc
+
 	degradingName
 	fAbuse
 	fFeelings
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index ecdb6256915..d77e49bfba6 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -3743,24 +3743,18 @@ $activeSlave.slaveName is doing her job, standing in an area of the arcology tha
 		maid outfit
 	<<case "a slutty maid outfit">>
 		skimpy maid outfit
-	<<case "a halter top dress" "a mini dress" "a maternity dress">>
+	<<case "a biyelgee costume" "a dirndl" "a halter top dress" "a mini dress" "a maternity dress">>
 		dress
 	<<case "a latex catsuit">>
 		latex catsuit
-	<<case "a military uniform" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
+	<<case "a military uniform" "a mounty outfit" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
 		uniform
 	<<case "a long qipao">>
 		qipao
 	<<case "battlearmor">>
 		battlearmor
-	<<case "a mounty outfit">>
-		uniform
-	<<case "a dirndl">>
-		dress
 	<<case "lederhosen">>
 		lederhosen
-	<<case "a biyelgee costume">>
-		dress
 	<<case "spats and a tank top">>
 		spats
 	<<case "monokini">>
@@ -4463,7 +4457,7 @@ She cranes her neck, glancing over her shoulder to give you a pleading look.
 <<link "Permit her to continue">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You can't complain, it feels really good. You don't know where this skill was lurking in her broken mind, but you're glad to see it put to good use. <<if $PC.dick == 1>>Just as your are about to cum, she takes the full length of your dick down her throat, diligently taking in every drop of cum<<else>>Even as you buck with pleasure, she diligently keeps her tongue to your clit and pussy, making sure you don't go a moment without pleasure<</if>>. You don't have an orgasm like that every day, and as she looks at you lovingly, you prod her with your still hard <<if $PC.dick == 1>>cock<<else>>clit<</if>> for round two.
+	You can't complain, it feels really good. You don't know where this skill was lurking in her broken mind, but you're glad to see it put to good use. <<if $PC.dick == 1>>Just as you are about to cum, she takes the full length of your dick down her throat, diligently taking in every drop of cum<<else>>Even as you buck with pleasure, she diligently keeps her tongue to your clit and pussy, making sure you don't go a moment without pleasure<</if>>. You don't have an orgasm like that every day, and as she looks at you lovingly, you prod her with your still hard <<if $PC.dick == 1>>cock<<else>>clit<</if>> for round two.
 	She is @@.green;no longer mindbroken@@ and for whatever twisted reasons deeply and sincerely @@.hotpink;loves@@ and @@.mediumaquamarine;trusts@@ you.
 	<<set $activeSlave.devotion = 90, $activeSlave.oldDevotion = 90, $activeSlave.trust = 90, $activeSlave.oldTrust = 90, $activeSlave.sexualQuirk = "caring", $activeSlave.fetish = "none", $activeSlave.fetishKnown = 1>>
 	<<if ($arcologies[0].FSPaternalist != "unset")>>
@@ -19750,57 +19744,69 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	She returns quickly, in her proper
 	<<switch $activeSlave.clothes>>
 	<<case "a toga">>
-		toga.
+		toga
 	<<case "a huipil">>
-		huipil.
+		huipil
 	<<case "a slutty qipao">>
-		slutty qipao.
+		slutty qipao
 	<<case "a penitent nuns habit">>
-		habit.
+		habit
 	<<case "a slave gown" "a ball gown">>
-		gown.
+		gown
 	<<case "a comfortable bodysuit">>
-		bodysuit.
+		bodysuit
 	<<case "a leotard">>
-		leotard.
+		leotard
 	<<case "a bunny outfit">>
-		bunny outfit.
+		bunny outfit
 	<<case "a nice nurse outfit">>
-		nurse outfit.
+		nurse outfit
 	<<case "a slutty nurse outfit">>
-		slutty nurse outfit.
+		slutty nurse outfit
 	<<case "a schoolgirl outfit">>
-		school clothes.
+		school clothes
 	<<case "a hijab and abaya">>
-		hijab and abaya.
+		hijab and abaya
 	<<case "a kimono">>
-		kimono.
+		kimono
 	<<case "a nice maid outfit">>
-		maid outfit.
+		maid outfit
 	<<case "a slutty maid outfit">>
-		skimpy maid outfit.
-	<<case "a halter top dress" "a mini dress" "a maternity dress">>
-		dress.
+		skimpy maid outfit
+	<<case "a biyelgee costume" "a dirndl" "a halter top dress" "a mini dress" "a maternity dress">>
+		dress
 	<<case "a latex catsuit">>
-		latex catsuit.
-	<<case "a military uniform" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
-		uniform.
+		latex catsuit
+	<<case "a military uniform" "a mounty outfit" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
+		uniform
 	<<case "a long qipao">>
 		qipao
 	<<case "battlearmor">>
 		battlearmor
-	<<case "a mounty outfit">>
-		uniform
-	<<case "a dirndl">>
-		dress
 	<<case "lederhosen">>
 		lederhosen
-	<<case "a biyelgee costume">>
-		dress
 	<<case "spats and a tank top">>
-		spats.
+		spats
+	<<case "monokini">>
+		monokini
+	<<case "a chattel habit" "a fallen nuns habit">>
+		slutty habit
+	<<case "a cheerleader outfit">>
+		cheerleader outfit
+	<<case "a cybersuit">>
+		cybersuit
+	<<case "an apron">>
+		apron
+	<<case "a scalemail bikini">>
+		scalemail bikini
+	<<case "a slutty outfit">>
+		slutty outfit
+	<<case "a string bikini">>
+		string bikini
+	<<case "a succubus outfit">>
+		succubus getup
 	<<default>>
-		$activeSlave.clothes.
+		$activeSlave.clothes
 	<</switch>>
 	You tell her that you like how she looks, and that she's pretty. She wasn't expecting such a blunt compliment, and <<if canSee($activeSlave)>>her $activeSlave.eyeColor eyes flick down to<<else>>she faces<</if>> the ground for a moment as she blushes. "T-thank you, <<Master>>," she stutters.
 	<br><br>
@@ -20080,13 +20086,9 @@ Once finished, you allow your servants to carry your @@.hotpink;thoroughly satis
 <br>
 <<set $activeSlave.devotion += 10>>
 
-
 		<</replace>>
 	<</link>>
 
-
-
-
 <<default>>
 	<br>ERROR: bad RESS event $RESSevent
 <</switch>>
diff --git a/src/uncategorized/brothelAdvertisement.tw b/src/uncategorized/brothelAdvertisement.tw
index 0efe9b4fb09..aabc4ad4a3e 100644
--- a/src/uncategorized/brothelAdvertisement.tw
+++ b/src/uncategorized/brothelAdvertisement.tw
@@ -1,6 +1,4 @@
-:: Brothel Advertisement
-
-<<nobr>>
+:: Brothel Advertisement [nobr]
 
 <<switch $brothelDecoration>>
 <<case "Roman Revivalist">>
@@ -119,9 +117,7 @@
 	$arcologies[0].name has a robust internal media that could be used to bring customers into the brothel.
 <</if>>
 
-<</nobr>>
-
-<<nobr>>
+<br><br>
 
 You are spending <<print cashFormat($brothelAdsSpending)>> each week to advertise the brothel.
 
@@ -136,10 +132,11 @@ You are spending <<print cashFormat($brothelAdsSpending)>> each week to advertis
 	Increase
 <</if>>
 
-<</nobr>>
+<br><br>
 
 __Design Brothel Ad Campaign__ //Will replace relevant variety bonuses//
-<<nobr>>
+
+<br><br>
 
 Asset size:
 <<if $brothelAdsStacked != 1>><<link "Stacked">><<set $brothelAdsStacked = 1>><<goto "Brothel Advertisement">><</link>> | <<else>>Stacked | <</if>>
@@ -186,5 +183,3 @@ Age:
 	<<if $brothelAdsXX != 0>><<link "Variety">><<set $brothelAdsXX = 0>><<goto "Brothel Advertisement">><</link>> <<else>>Variety<</if>>
 	<br>
 <</if>>
-
-<</nobr>>
diff --git a/src/uncategorized/coursingAssociation.tw b/src/uncategorized/coursingAssociation.tw
index 52c1eaa1976..68f8eecd94f 100644
--- a/src/uncategorized/coursingAssociation.tw
+++ b/src/uncategorized/coursingAssociation.tw
@@ -1,18 +1,21 @@
-:: Coursing Association
+:: Coursing Association [nobr]
 
-<<nobr>>
 <<set $nextButton = "Back to Main">>
 <<set $nextLink = "Main">>
 <<set $returnTo = "Coursing Association">>
 <<showallAssignmentFilter>>
+
 You are a member of $arcologies[0].name's Coursing Association. Coursing is a Free Cities revival of the old sport of hunting rabbits and hares with sighthounds, with the typically Free Cities amendments that the hares are replaced by newly enslaved people, the sighthounds are replaced by trained slaves, and the killing of the hare is replaced by rape. Truly, a sport of gentlemen.
-<br><br>The chasing slaves are known as lurchers, the term once used for the sighthounds. They require speed most of all, but must also be able to tackle their quarry; lurchers with the ability and willingness to make a spectacle of molesting the hares can improve their owners' reputations.
+<br><br>
+The chasing slaves are known as lurchers, the term once used for the sighthounds. They require speed most of all, but must also be able to tackle their quarry; lurchers with the ability and willingness to make a spectacle of molesting the hares can improve their owners' reputations.
+
 <<showallAssignmentFilter>>
 <<if $Lurcher != 0>>
 	<<= SlaveFullName($Lurcher)>> is assigned to compete as your lurcher.
 <<else>>
 	You have not selected a lurcher, meaning that you will not participate in coursing events.
 <</if>>
+
 //<br><<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Sir<<else>>Ma'am<</if>>, slaves assigned here can continue their usual duties.//
 
 <<if $Lurcher != 0>>
@@ -30,5 +33,3 @@ You are a member of $arcologies[0].name's Coursing Association. Coursing is a Fr
 	<<include "Slave Summary">>
 	<<resetAssignmentFilter>>
 </span>
-
-<</nobr>>
diff --git a/src/uncategorized/main.tw b/src/uncategorized/main.tw
index 77f90dd8787..ba16352d230 100644
--- a/src/uncategorized/main.tw
+++ b/src/uncategorized/main.tw
@@ -54,7 +54,6 @@
 <<if ($HGSuiteSlaves > 0)>><<set $slavesVisible++>><</if>>
 <<if (def _BG && $dojo > 1)>><<set $slavesVisible++>><</if>>
 
-
 <<set $nextButton = "END WEEK", $nextLink = "End Week", $showEncyclopedia = 1, $encyclopedia = "How to Play">>
 <<set $costs = getCost($slaves)>>
 
diff --git a/src/uncategorized/pBombing.tw b/src/uncategorized/pBombing.tw
index 6dd4616ebf8..02c6975dc5e 100644
--- a/src/uncategorized/pBombing.tw
+++ b/src/uncategorized/pBombing.tw
@@ -1,19 +1,15 @@
-:: P bombing
-
-<<nobr>>
+:: P bombing [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "Random Nonindividual Event">>
 
-<</nobr>>\
-\
 One fine day, you're strolling down the main promenade, making your usual combined inspection and public rounds. These walks are triply useful, since they allow you to keep a finger on the pulse of your demesne, identify any problems, and display yourself to the population. <<if $Bodyguard != 0>>$Bodyguard.slaveName is walking with you, of course, her presence protection, intimidation, and ostentation, all in one.<</if>>
 
 <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> suddenly relays a silent alarm, highlighting a scruffy individual twenty meters ahead. This person is hooded and acting oddly. You catch a glance from beneath the hood in your direction: and the figure obviously decides that it can get no closer to you. Your assistant's scanning detects the presence of an implanted bomb moments before the suicide bomber detonates themselves.
 
 The implant is small, and went off too far ahead to do anything more than stun. <<if $Bodyguard != 0>>Since she was behind you, $Bodyguard.slaveName is in much better shape than you, her ears clear and her senses sharp. <</if>>Three other assailants run at you from where they were waiting in the confusion, wielding improvised weapons that apparently did not set off the security scanners.
 
-<<nobr>>
+<br><br>
 
 <<if $Bodyguard != 0>>
 <<if $Bodyguard.amp <= -4>>
@@ -80,5 +76,3 @@ The implant is small, and went off too far ahead to do anything more than stun.
 <</if>>
 
 Hours later, you receive another message from the Daughters of Liberty. This one is even briefer than the first. "Next time, '<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>,'" it reads.
-
-<</nobr>>
diff --git a/src/uncategorized/pCollaborationChoice.tw b/src/uncategorized/pCollaborationChoice.tw
index 2aaa9fb7477..b6d82f684d9 100644
--- a/src/uncategorized/pCollaborationChoice.tw
+++ b/src/uncategorized/pCollaborationChoice.tw
@@ -1,16 +1,16 @@
-:: P collaboration choice
-
-<<nobr>>
+:: P collaboration choice [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "Random Nonindividual Event">>
 
-<</nobr>>\
-\
 Your next communication from the Daughters of Liberty is a request for a live video call. You accept and are surprised to be confronted by $traitor.slaveName's face. She looks very different, without visible modifications of any kind and dressed in utilitarian clothes, but it's her.
 
+<br><br>
+
 "Hello, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>," she says simply. "It's happening soon. The Daughters asked me to call you to ask you for your help. All they need is the access codes to your security systems. They'll let you live, <<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>, they'll even let you take your money. But the arcology and the slaves, those will have to go free." She hesitates a little. "<<if def $PC.customTitle>>$PC.customTitle<<elseif $PC.title != 0>>Master<<else>>Mistress<</if>>, I like being free. But I don't want to see you killed. Please, please agree."
-\
+
+<br><br>
+
 <span id="result">
 <<link "Transmit the codes">>
 	<<replace "#result">>
@@ -18,7 +18,7 @@ Your next communication from the Daughters of Liberty is a request for a live vi
 	<<set $collaboration = 1>>
 	<</replace>>
 <</link>>
-<<link "Refuse">>
+<br><<link "Refuse">>
 	<<replace "#result">>
 	You close the video call without a word. From your desk, you have access to thousands of video feeds from all across the arcology; they show men and women working, sleeping, eating, chatting, fucking. You wonder how many of them have plans, and what those plans are.
 	<</replace>>
diff --git a/src/uncategorized/pCorpAnnouncement.tw b/src/uncategorized/pCorpAnnouncement.tw
index 9f6d5ff38af..a1bf4241824 100644
--- a/src/uncategorized/pCorpAnnouncement.tw
+++ b/src/uncategorized/pCorpAnnouncement.tw
@@ -1,14 +1,10 @@
-:: P Corp Announcement
-
-<<nobr>>
+:: P Corp Announcement [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "Random Nonindividual Event">>
 
 <<set $corpAnnounced = 1>>
 
-<</nobr>>\
-\
 You never understood the power of money until accumulating so much of it yourself. If you were to try to explain it to someone without that power, you would emphasize the access it buys you. You can speak to anyone, about anything; propose anything, to anyone. And recently, you have begun to encounter the trouble of being too powerful.
 
 Good investment opportunities are hard to come by in the uncertain world of today. The days of government bonds providing steady yields are ending. Markets are volatile, and under attack by forces they cannot begin to control or anticipate. In places, the very consensus on modern capitalism that has held for nearly fifty years is under siege. There's one reliable growth market in the Free Cities: slaves. And there's too much capital chasing too few investment opportunities in that market.
diff --git a/src/uncategorized/pSlaveMedic.tw b/src/uncategorized/pSlaveMedic.tw
index 15140ec8d95..89f366f6ea7 100644
--- a/src/uncategorized/pSlaveMedic.tw
+++ b/src/uncategorized/pSlaveMedic.tw
@@ -53,8 +53,6 @@ When you enter the lounge of their <<if $barracks>>barracks<<else>>main living a
 
 <<else>>
 
-
-
 <<set $activeSlaveOneTimeMinAge = 25>>
 <<set $activeSlaveOneTimeMaxAge = 42>>
 <<include "Generate XX Slave">>
diff --git a/src/uncategorized/pSnatchAndGrab.tw b/src/uncategorized/pSnatchAndGrab.tw
index 17506aeb699..8c5dba402ca 100644
--- a/src/uncategorized/pSnatchAndGrab.tw
+++ b/src/uncategorized/pSnatchAndGrab.tw
@@ -1,6 +1,4 @@
-:: P snatch and grab
-
-<<nobr>>
+:: P snatch and grab [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "Random Nonindividual Event">>
@@ -53,7 +51,7 @@
 	<</switch>>
 <</if>>
 
-<</nobr>>\
+<br><br>
 
 <span id="result">
 <<link "Bankroll the snatch and grab">>
@@ -63,7 +61,7 @@
 	<<set $PSnatch = 1>>
 	<</replace>>
 <</link>>
-<<link "Politely decline">>
+<br><<link "Politely decline">>
 	<<replace "#result">>
 	You receive no response whatsoever. That's how it is with professionals: the offer was never made, you never declined, and no further discussion is necessary or desired.
 	<</replace>>
diff --git a/src/uncategorized/pTraitorMessage.tw b/src/uncategorized/pTraitorMessage.tw
index faadf759586..5769db4e381 100644
--- a/src/uncategorized/pTraitorMessage.tw
+++ b/src/uncategorized/pTraitorMessage.tw
@@ -1,12 +1,10 @@
-:: P traitor message
-
-<<nobr>>
+:: P traitor message [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "Random Nonindividual Event">>
 
-<</nobr>>\
-\
 The month after freeing $traitor.slaveName, you receive another message from the Daughters of Liberty. This one contains a video. It shows $traitor.slaveName sitting quietly at a table, wearing comfortable clothes and eating a nice meal. She looks a little bewildered, but there's an obvious happiness to her, it's impossible to deny. She seems unaware she's being recorded.
 
+<br><br>
+
 A voice cuts in, calm but filled with unmistakable rage: "I hope you don't think this fixes everything, scum. We're still coming for you, and for all your slaveowning friends. All you've bought with this is the chance to maybe come out alive at the end. We'll be in touch."
diff --git a/src/uncategorized/peCombatTraining.tw b/src/uncategorized/peCombatTraining.tw
index de8d34e7669..efe7816d5dd 100644
--- a/src/uncategorized/peCombatTraining.tw
+++ b/src/uncategorized/peCombatTraining.tw
@@ -1,17 +1,15 @@
-:: PE combat training
-
-<<nobr>>
+:: PE combat training [nobr]
 
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "RIE Eligibility Check">>
 
 <<set $activeSlave = $Bodyguard>>
 
-<</nobr>>\
-\
 <<EventNameLink $activeSlave>> has many duties as a bodyguard, and her schedule is carefully built to allow her to complete them. When you're at your desk in your penthouse and there are no guests to intimidate, her services are least needed, so she typically uses these lulls to catch up on sleep or train.
-
+<br><br>
 The feed from the small armory next door shows her doing the latter. She has finished working with a heavy practice sword, and has moved to the tiny, one-shooter range. She seems frustrated, hurrying her shots and missing unnecessarily.
-\
+
+<br><br>
+
 <span id="result">
 <<link "Instruct her">>
 	<<replace "#result">>
@@ -20,7 +18,7 @@ The feed from the small armory next door shows her doing the latter. She has fin
 	<<set $activeSlave.combatSkill = 1>>
 	<</replace>>
 <</link>>
-<<link "Promise her a sexual reward if she improves">>
+<br><<link "Promise her a sexual reward if she improves">>
 	<<replace "#result">>
 	Over the feed, you tell $activeSlave.slaveName that she can have her choice of sexual release if she scores well on the next set of targets. She concentrates desperately, trying to ignore her mounting arousal as she imagines enjoying <<if $activeSlave.fetish == "none">>passionate sexual<<elseif $activeSlave.fetish == "boobs">>breast<<else>>$activeSlave.fetish<</if>> play. She barely makes the stated score, and hurries smiling in for her reward. She feels @@.hotpink;closer to you,@@ but is distracted from any real learning and does not become a better fighter.
 	<<set $activeSlave.devotion += 4>>
diff --git a/src/uncategorized/pePitFight.tw b/src/uncategorized/pePitFight.tw
index 65fddffc849..5c6b243043e 100644
--- a/src/uncategorized/pePitFight.tw
+++ b/src/uncategorized/pePitFight.tw
@@ -1,5 +1,4 @@
-:: PE pit fight
-<<nobr>>
+:: PE pit fight [nobr]
 
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "Random Nonindividual Event">>
 
@@ -9,15 +8,9 @@
 
 <<set $PPit = 0>>
 
-<</nobr>>\
-\
-<<nobr>>
-
 It's time for the fight. It will take place in a back room of a well respected club. There is a ring set into the floor, and space for a handful of spectators, but the setup is quite Spartan. The sport is just getting off the ground. <<EventNameLink $activeSlave>> is first to walk into the ring. She's stark naked and is carrying a simple single-edged straight sword, identical to the one her opponent will be using. The fight will be fair.
 
-<</nobr>>
-
-<<nobr>>
+<br><br>
 
 Across the ring, her opponent's owner nods civilly to you and examines $activeSlave.slaveName.
 
@@ -152,9 +145,7 @@ Finally, her opponent enters as well.
 
 The umpire announces gravely that the fight is to the death and rings a bell.
 
-<</nobr>>
-
-<<nobr>>
+<br><br>
 
 <<if $deadliness > ($opponent + 1)>>
 	$activeSlave.slaveName senses that she is greatly superior, and decides to make a quick end before her opponent can try something foolish. She feints high and stabs low; her enemy just manages to parry the low stab, but is so much weaker that $activeSlave.slaveName simply overpowers her, so that she falls onto her back with the force of the clash. $activeSlave.slaveName takes one step forward and runs her sword through the prostrate slave's heart. This victory has @@.green;won you some renown@@ and @@.yellowgreen;a sum of money@@ from each of the spectators.
@@ -180,5 +171,3 @@ The umpire announces gravely that the fight is to the death and rings a bell.
 <<if $activeSlave.health < -90>>
 	<<include "Remove activeSlave">>
 <</if>>
-
-<</nobr>>\
diff --git a/src/uncategorized/pePitFightInvite.tw b/src/uncategorized/pePitFightInvite.tw
index 75fd59e0c81..a61a42bb951 100644
--- a/src/uncategorized/pePitFightInvite.tw
+++ b/src/uncategorized/pePitFightInvite.tw
@@ -1,16 +1,14 @@
-:: PE pit fight invite
-
-<<nobr>>
+:: PE pit fight invite [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "RIE Eligibility Check">>
 
 <<set $PPit = 0>>
 
-<</nobr>>\
-\
 Gladiatorial combat between slaves has not yet reached the level of social acceptability it once enjoyed in Rome, but it's growing in popularity. For now, most fights are discreet affairs limited to select guests. Displaying a slave bodyguard is an excellent way to get yourself invited to participate, and $assistantName has just passed on an invitation to a private fight next week, should you be willing to hazard a bodyguard.
-\
+
+<br><br>
+
 <span id="result">
 <<link "Enter your bodyguard as a gladiatrix">>
 	<<replace "#result">>
@@ -18,7 +16,7 @@ Gladiatorial combat between slaves has not yet reached the level of social accep
 	<<set $PPit = 1>>
 	<</replace>>
 <</link>>
-<<link "Politely decline">>
+<br><<link "Politely decline">>
 	<<replace "#result">>
 	You decline the invitation.
 	<</replace>>
diff --git a/src/uncategorized/reBoomerang.tw b/src/uncategorized/reBoomerang.tw
index 3c4df721bf4..3574b07fdd7 100644
--- a/src/uncategorized/reBoomerang.tw
+++ b/src/uncategorized/reBoomerang.tw
@@ -53,7 +53,6 @@ brings up the relevant feeds. There's a naked body crumpled pathetically against
 	As no broodmother cases in code below, it's no need to setup every case of impregnation through new system. Backup mechanic will do it for normal pregnancies.
 */
 
-
 <<if ($activeSlave.hStyle != "shaved" && $activeSlave.bald != 1)>>
 	<<if ($activeSlave.hLength < 150)>>
 		<<set $activeSlave.hLength += _weeks>>
diff --git a/src/uncategorized/reBusyBrothel.tw b/src/uncategorized/reBusyBrothel.tw
index 01af906754f..ca1318b0905 100644
--- a/src/uncategorized/reBusyBrothel.tw
+++ b/src/uncategorized/reBusyBrothel.tw
@@ -5,9 +5,12 @@
 
 $brothelNameCaps is well staffed, and does a busy trade in flesh 24 hours a day. With so many sex slaves in the Free Cities, brothels occupy a functional, nearly mechanical part of the sexual landscape. Free citizens and sometimes even favored slaves visit the brothel, select from the available merchandise, relieve their sexual needs, and leave. Affection, companionship, and emotional needs are available elsewhere.
 
+<br><br>
+
 Of course, $brothelName is the best establishment of its kind in the arcology. Citizens who patronize it can expect themselves to be very well looked after by skilled slaves. The quality of the merchandise, the efficiency with which it is delivered, and the cleanliness and reputation of the premises @@.green;reflect well on you,@@<<set $rep += 100>> so much so that you could leverage this bustling sexual commerce in many ways.
 
 <br><br>
+
 <span id="result">
 <<link "Surprise the hardworking whores with a day of rest">>
 	<<replace "#result">>
diff --git a/src/uncategorized/reBusyClub.tw b/src/uncategorized/reBusyClub.tw
index 9b2ab664a71..283ae4f8fa1 100644
--- a/src/uncategorized/reBusyClub.tw
+++ b/src/uncategorized/reBusyClub.tw
@@ -1,16 +1,16 @@
-:: RE busy club
-
-<<nobr>>
+:: RE busy club [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "RIE Eligibility Check">>
 
-<</nobr>>\
-\
 The original designers of the modern arcology did not realize how inseparable from slavery their work would become. The club at the social heart of $arcologies[0].name was not meant as a center of the more friendly kind of sexual slavery, but that is what it has become. Free whores of the highest quality work there, and they are accompanied by a flock of your slaves who have simple orders to dance, add cheer, and perform sexual favors wherever they can.
 
+<br><br>
+
 Offering slaves for free sex would become unmanageable if the club where your public servants work was open to the unwashed masses, but it is not. The arcology is already selective, and only good citizens can party, dance, and fuck the night away in $clubName. The upper classes @@.green;recognize your contributions@@<<set $rep += 100>> to arcology culture, which you could probably parlay into an even greater benefit.
-\
+
+<br><br>
+
 <span id="result">
 <<link "Sponsor a special event in the club">>
 	<<replace "#result">>
@@ -19,7 +19,7 @@ Offering slaves for free sex would become unmanageable if the club where your pu
 	<<set $rep += 500>>
 	<</replace>>
 <</link>> //This will cost <<print cashFormat(2000)>>//
-<<link "Host a business exposition">>
+<br><<link "Host a business exposition">>
 	<<replace "#result">>
 	With the world economy in a perilous state, the Free Cities are one of the few remaining areas where innovation and new business opportunities still appear. The novel markets associated with the slave trade only reinforce this trend, offering a cornucopia of opportunities for the clear-eyed investor with liquid assets. Every other week there is news of a new fortune being made from smart investments in leather, in human growth hormones, or in psychoactive drugs. You host an exposition for slave services centered on the club, with your slaves serving as greeters who are eager to ensure that all the little wants of visiting notables are thoroughly satisfied. The optimistic outlook projected by this event @@.green;improves $arcologies[0].name's business prospects@@ and even @@.green;reflects well on you personally.@@
 	<<set $cash -= 5000>>
diff --git a/src/uncategorized/reBusyDairy.tw b/src/uncategorized/reBusyDairy.tw
index aa7c514b414..49963844407 100644
--- a/src/uncategorized/reBusyDairy.tw
+++ b/src/uncategorized/reBusyDairy.tw
@@ -1,16 +1,16 @@
-:: RE busy dairy
-
-<<nobr>>
+:: RE busy dairy [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "RIE Eligibility Check">>
 
-<</nobr>>\
-\
 $dairyNameCaps is working away steadily. Its high-quality product @@.green;reflects well on you,@@<<set $rep += 100>> you muse one day as you inspect the premises. The gentle pneumatic sounds of the milkers and the whimpers of the cows being milked are a pleasant background for the thought.
 
+<br><br>
+
 Even with high doses of modern drugs, human cows simply do not produce a very high volume of milk. This isn't much of a business problem, since it just means that the product can be sold at a high price. However, some of the more grandiose ideas about how to use milk have had to wait until you have enough cows producing enough milk to make them possible.
-\
+
+<br><br>
+
 <span id="result">
 <<link "Share a milk bath with the cows">>
 	<<replace "#result">>
@@ -32,7 +32,7 @@ Even with high doses of modern drugs, human cows simply do not produce a very hi
 	<</replace>>
 <</link>> //This will cost <<print cashFormat(1000)>>//
 <<if $club != 0>>\
-<<link "Add fresh milk to the club for a day to advertise">>
+<br><<link "Add fresh milk to the club for a day to advertise">>
 	<<replace "#result">>
 	Sexual sights and sounds are all over the arcology. Nevertheless, passersby on the club are surprised to find one morning that a previously normal screen advertising your brand of milk has a luscious pair of breasts protruding through it at head height. The advertisement encourages anyone to try a free sample. The slaves constantly rotate, pressing fresh tits through the gap for public suckling. It is @@.green;generally agreed that your product is of the finest quality@@ and you even have enquiries about how it might be exported outside the arcology, should you manage to increase production.
 	<<set $cash -= 2000>>
@@ -41,7 +41,7 @@ Even with high doses of modern drugs, human cows simply do not produce a very hi
 <</link>> //This will cost <<print cashFormat(2000)>>//
 <</if>>\
 <<if ($cumSlaves >= 5) && ($activeSlave.fetish != "cumslut")>>
-	<<link "Cum in, milk out">>
+	<br><<link "Cum in, milk out">>
 		<<replace "#result">>
 		As a promotional gimmick, you announce with considerable fanfare a special, experimental brand of milk, available at the normal price for a short time only. The milk will be unique in that it will be from cows fed mostly on slaves' cum; the cockmilked slaves will in turn be given as much milk as possible to produce a 'pure slave product,' recursively. The sad realities of nutrition stop it from being much more than a marketing ploy, but it's certainly a @@.green;successful@@ attempt to spark discussion.
 	<<set $rep += 1000>>
diff --git a/src/uncategorized/reBusyServantsQuarters.tw b/src/uncategorized/reBusyServantsQuarters.tw
index c1b619f94c6..092d633fb6e 100644
--- a/src/uncategorized/reBusyServantsQuarters.tw
+++ b/src/uncategorized/reBusyServantsQuarters.tw
@@ -5,10 +5,14 @@
 
 Your penthouse is very well staffed with servants. The trend in modern buildings is to design around automatic cleaning systems. Dusting, mopping, and polishing are no longer really necessary when machines that do them more cheaply and thoroughly than any human are readily available. Keeping slaves to clean is an ostentation, and visitors to your quarters are often @@.green;surprised and gratified@@ to see a sex slave working away in the old way.<<set $rep += 100>>
 
-<br><br>The busy servants' quarters are a reservoir of slaves that can be used for almost any whim that occurs to you.
+<br><br>
+
+The busy servants' quarters are a reservoir of slaves that can be used for almost any whim that occurs to you.
+
+<br><br>
 
 <span id="result">
-<br><br><<link "Share the servants' quarters with your more favored slaves">>
+<<link "Share the servants' quarters with your more favored slaves">>
 	<<replace "#result">>
 	<br><br>
 	The poor slaves in the servants' quarters are lower than almost any others, and they know it. Unfortunately for them, they're about to spend a long weekend knowing it unusually well. Sleeping time is usually nearly inviolate; you are the only person in the penthouse who is permitted to wake a sleeping slave for any but emergency reasons. Not now. You haunt the servants' quarters, using and abusing at will, and encourage your better slaves to follow your example. They quickly take the opportunity to be better than someone for once, and compete with each other in sexual harassment of the servants. They @@.hotpink;appreciate@@ having @@.mediumorchid;targets@@ for their frustrations.
diff --git a/src/uncategorized/reFSEgyptianRevivalistAcquisition.tw b/src/uncategorized/reFSEgyptianRevivalistAcquisition.tw
index b7a499e96d5..7c2e12a287d 100644
--- a/src/uncategorized/reFSEgyptianRevivalistAcquisition.tw
+++ b/src/uncategorized/reFSEgyptianRevivalistAcquisition.tw
@@ -1,6 +1,5 @@
-:: RE FSEgyptianRevivalist acquisition
+:: RE FSEgyptianRevivalist acquisition [nobr]
 /* Written and coded by Boney M */
-<<nobr>>
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "RIE Eligibility Check">>
@@ -34,8 +33,6 @@
 
 <<if ($activeSlave.dick > 0) && ($activeSlave.balls == 0)>><<set $activeSlave.balls = random(1,5)>><</if>>
 
-<</nobr>>\
-\
 You receive so many messages, as a noted titan of the new Free Cities world, that $assistantName has to be quite draconian in culling them. She lets only the most important through to you. One category of message that always gets through regardless of content, though, is requests for voluntary enslavement. As the new world takes shape, they've become less rare than they once were.
 
 This call is coming from a public kiosk, which is usually an indication that the person on the other end is a transient individual who has decided to take slavery over homelessness. In this case, however, the story is more unusual - the callers seem stressed, but otherwise normal. They haltingly and quietly explain, with many nervous glances off-camera to ensure they are not overheard, that they are both siblings and lovers, and their attempts to keep the truth of the nature of their relationship from their friends, family, and society at large have failed. They had heard of $arcologies[0].name's reverence for incestuous relationships, and have managed to talk themselves into the questionable conclusion that their only chance to be together was for them to sell themselves to someone who would not just accept but encourage their incest - namely, you.
diff --git a/src/uncategorized/reFSNonconformist.tw b/src/uncategorized/reFSNonconformist.tw
index 137e952d8cf..da3ff388274 100644
--- a/src/uncategorized/reFSNonconformist.tw
+++ b/src/uncategorized/reFSNonconformist.tw
@@ -228,7 +228,7 @@ The nonconformist is far too prominent and prosperous to make this an easy dilem
 	<<elseif $FSNonconformist == "Subjugationist">>
 		is intent on publicly flogging the unfortunate non-$arcologies[0].FSSubjugationistRace slave, but quickly finds that you've manipulated their contracts with you to forbid such displays. Frustrated, they subside for now.
 	<<elseif $FSNonconformist == "Repopulation Efforts">>
-		publishes their information about pregnancy, but it has little effect thanks to a preemptive campaign leveraging your dominance over the arcology's media.  Your reputation is protected by the promises of a large stock of future slaves, securing both money and ensuring a stable population in case of disaster. You also pointed out all the other slave owners also partaking in the pleasures of a pregnant woman. Plus, what could a flock of heavily pregnant slaves do to overthrow their masters?
+		publishes their information about pregnancy, but it has little effect thanks to a preemptive campaign leveraging your dominance over the arcology's media. Your reputation is protected by the promises of a large stock of future slaves, securing both money and ensuring a stable population in case of disaster. You also pointed out all the other slave owners also partaking in the pleasures of a pregnant woman. Plus, what could a flock of heavily pregnant slaves do to overthrow their masters?
 	<<elseif $FSNonconformist == "Eugenics">>
 		is ejected from the elite class following a leak of evidence proving he wasn't fit to be a member of the Societal Elite. Evidence tailored by you. Unfortunately, he was ready for this move; he and his wife had already fled the arcology. You did your job adequately, and managed to suppress any possible outrage in the city.
 	<<elseif $FSNonconformist == "Gender Radicalist">>
diff --git a/src/uncategorized/reFormerAbolitionist.tw b/src/uncategorized/reFormerAbolitionist.tw
index 44b1ede9b3f..ac3c546bd4b 100644
--- a/src/uncategorized/reFormerAbolitionist.tw
+++ b/src/uncategorized/reFormerAbolitionist.tw
@@ -1,6 +1,4 @@
-:: RE former abolitionist
-
-<<nobr>>
+:: RE former abolitionist [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "AS Dump">>
@@ -12,14 +10,14 @@
 	<<set $activeSlave = $eventSlave>>
 <</if>>
 
-<</nobr>>\
-\
 Crime is extremely rare in $arcologies[0].name, and some would say justice rarer still, but if there's one thing that unites the citizens of $arcologies[0].name, it's a mutual outrage towards attempted abolitionists. Slave ownership is the cornerstone of the society that protects and enriches them, and they see those who would attempt to unlawfully free slaves not just as thieves of property but as anarchists trying to bring down everything they have worked to build.
 
 While a brutal flogging or surgical mutilation soothes their outrage, nothing warms the collective heart of $arcologies[0].name's mob like the sight of a former abolitionist well and truly broken. <<EventNameLink $activeSlave>> is one such shining example, and her borderline worship of you is doing wonders for your reputation lately as she becomes a local celebrity and a popular topic of discussion.
 
 This is a rare opportunity. While the mob is quick to pat itself on the back for withstanding attacks from abolitionists, before long they will tire of remembering those dangers and turn their attention elsewhere. It might be possible, with a serious investment of funds in publicity, to really fix her in the public mind as a shining example of your slave-breaking prowess.
 
+<br><br>
+
 <span id="result">
 <<link "Just capitalize on her popularity to increase your reputation">>
 	<<replace "#name">>\
@@ -31,7 +29,7 @@ You spend the week parading $activeSlave.slaveName around in public, letting eve
 	<</replace>>
 <</link>>
 <span id="result">
-<<link "Just capitalize on her popularity by renting out her mouth">>
+<br><<link "Just capitalize on her popularity by renting out her mouth">>
 	<<replace "#name">>\
 	$activeSlave.slaveName\
 	<</replace>>\
@@ -42,7 +40,7 @@ You fasten $activeSlave.slaveName in a kneeling position in the center of your c
 	<<set $cash += 2000>>
 	<</replace>>
 <</link>>
-<<link "Invest <<print cashFormat(5000)>> in making her locally famous">>
+<br><<link "Invest <<print cashFormat(5000)>> in making her locally famous">>
 	<<replace "#name">>\
 	$activeSlave.slaveName\
 	<</replace>>\
@@ -62,7 +60,7 @@ You buy media coverage of her, invest in an ad campaign, and even arrange for he
 		<</replace>>
 	<</if>>
 <</link>>
-<<link "Lavish <<print cashFormat(10000)>> on her locally famous">>
+<br><<link "Lavish <<print cashFormat(10000)>> on her locally famous">>
 	<<replace "#name">>\
 	$activeSlave.slaveName\
 	<</replace>>\
@@ -83,7 +81,7 @@ You buy prime media coverage of her, invest in a lavish ad campaign, and even ar
 	<</if>>
 <</link>>
 </span>
-<<link "Spend <<print cashFormat(25000)>> on an attempt to make her world famous">>
+<br><<link "Spend <<print cashFormat(25000)>> on an attempt to make her world famous">>
 	<<replace "#name">>\
 	$activeSlave.slaveName\
 	<</replace>>\
diff --git a/src/uncategorized/reHGReplacement.tw b/src/uncategorized/reHGReplacement.tw
index 69e05b86cf4..682d50e3fa8 100644
--- a/src/uncategorized/reHGReplacement.tw
+++ b/src/uncategorized/reHGReplacement.tw
@@ -1,6 +1,5 @@
 :: RE HG replacement [nobr]
 
-
 <<set $nextButton = "Continue", $nextLink = "AS Dump", $returnTo = "Next Week", $activeSlave = $eventSlave>>
 <<run Enunciate($activeSlave)>>
 
diff --git a/src/uncategorized/resSale.tw b/src/uncategorized/resSale.tw
index a80677c2c92..c4389f360f6 100644
--- a/src/uncategorized/resSale.tw
+++ b/src/uncategorized/resSale.tw
@@ -1,6 +1,4 @@
-:: RES Sale
-
-<<nobr>>
+:: RES Sale [nobr]
 
 <<set $nextButton = "Continue">>
 <<set $nextLink = "RIE Eligibility Check">>
@@ -48,7 +46,9 @@ You receive a personal call from
 	You pause for a moment, and he plunges on: "<<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>, @@.yellow;your first cow purchase from us this week is half price.@@ And, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>, this milky beauty is up for grabs. Keep her by your desk for fresh squeezed milk, knock on wood and she'll suck you right off, grab her by the hips and she'll take anything in her rear; she's plenty of fun! Come on down and get yourself a young, affectionate little cowgirl!"
 <<else>>
 It's from a piece of merchandise, not leadership, and she's offering herself for sale. Before you can hang up on her and reprimand $assistantName for allowing this Free Cities version of telemarketing to get through to you, the slave hurriedly says, "<<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>, I'm half off!"
+
 <br><br>
+
 You pause for a moment, and she plunges on: "<<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>, @@.yellow;your first slave purchase from us this week is half price.@@ And, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>, I'm one of the slaves for sale.
 <<if $RESSale == "TSS">>
 	I've got the very best skills I could learn as a virgin. I'm healthy, obedient, and educated. And I'm fresh, and willing, and really eager." She rips her white schoolgirl blouse open to show off a fresh pair of tits, and shakes them for you. "I would love to be your sex slave, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>," she says, doing her very best to sound appealing, like she's been trained.
@@ -74,7 +74,9 @@ You pause for a moment, and she plunges on: "<<if $PC.title == 1>>Sir<<else>>Ma'
 	<</if>>
 <</if>>
 <</if>> /* closes Cattle Ranch exception */
+
 <br><br>
+
 <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>>'s $assistantAppearance avatar appears on the screen next to the video call.
 <<if $assistant == 0>>
 	"I have stored the confirmation code, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>," it notes. "If you wish to take advantage of this promotion, use the slave buying menu to navigate to the appropriate school next week. I have appended a note to that school's entry to remind you."
@@ -321,5 +323,3 @@ You pause for a moment, and she plunges on: "<<if $PC.title == 1>>Sir<<else>>Ma'
 	<</if>>
 	"Ahem. I have stored the confirmation code, <<if $PC.title == 1>>Sir<<else>>Ma'am<</if>>," she notes. "If you wish to take advantage of this promotion, use the slave buying menu to navigate to the appropriate school next week. I have appended a note to that school's entry to remind you."
 <</if>>
-
-<</nobr>>\
diff --git a/src/uncategorized/seLethalPit.tw b/src/uncategorized/seLethalPit.tw
index 0882b86b1fb..5fba0df6f60 100644
--- a/src/uncategorized/seLethalPit.tw
+++ b/src/uncategorized/seLethalPit.tw
@@ -1,6 +1,4 @@
-:: SE lethal pit
-
-<<nobr>>
+:: SE lethal pit [nobr]
 
 <<set $nextButton = "Continue", $nextLink = "Scheduled Event", $returnTo = "Scheduled Event", $pitFought = 1, _fighterOne = 0, _fighterTwo = 0>>
 
@@ -16,10 +14,6 @@
 	<<goto "Nonrandom Event">>
 <</if>>
 
-<</nobr>>\
-\
-<<nobr>>
-
 This week's pit fight is between _fighterOne.slaveName and _fighterTwo.slaveName. <<if $pitAudience == "none">>You are alone above the pit, left to watch them kill and die in private.<<elseif $pitAudience == "free">>Your guests line the rim of the pit, joking and betting, nervous and excited by the close prospect of watching a girl die.<<else>>The attendees line the rim of the pit, betting and arguing, nervous and excited by the close prospect of watching a girl die.<</if>>
 
 <<if $arcologies[0].FSRomanRevivalist != "unset">>
@@ -33,9 +27,7 @@ This week's pit fight is between _fighterOne.slaveName and _fighterTwo.slaveName
 <</if>>
 You review the rules - the combatants will use their choice of swords, and the fight will be to the death, with both combatants executed if no decision is reached. The winner will earn two complete days of rest, not to mention continued life. You take a moment to look over your girls before giving the word. After all, it's the last time you'll be seeing one of them alive.
 
-<</nobr>>
-
-<<nobr>>
+<br><br>
 
 <<Deadliness _fighterOne>>
 <<set _fighterOneDeadliness = $deadliness>>
@@ -182,9 +174,7 @@ You review the rules - the combatants will use their choice of swords, and the f
 	<</if>>
 <</if>>
 
-<</nobr>>
-
-<<nobr>>
+<br><br>
 
 <<Deadliness _fighterTwo>>
 <<set _fighterTwoDeadliness = $deadliness>>
@@ -333,9 +323,7 @@ You review the rules - the combatants will use their choice of swords, and the f
 
 In any case, both of the slaves have been dosed with aggression enhancers and inhibition blockers; they'll fight to kill.
 
-<</nobr>>
-
-<<nobr>>
+<br><br>
 
 <<if _fighterTwoDeadliness > _fighterOneDeadliness>>
 	<<set _winner = _fighterTwo>>
@@ -458,7 +446,7 @@ In any case, both of the slaves have been dosed with aggression enhancers and in
 		<<set $rep += 50>>
 	<</if>>
 <<elseif (_loser.belly >= 300000)>>
-	_winner.slaveName wants to live badly enough that she takes and extremely brutal shortcut to victory. The instant the fight starts, she quickly slices right across _loser.slaveName's massive belly, which is far too large to possibly defend.  _loser.slaveName's belly ruptures like a popped water balloon, showering _winner.slaveName with
+	_winner.slaveName wants to live badly enough that she takes and extremely brutal shortcut to victory. The instant the fight starts, she quickly slices right across _loser.slaveName's massive belly, which is far too large to possibly defend. _loser.slaveName's belly ruptures like a popped water balloon, showering _winner.slaveName with
 	<<if _loser.pregType > 0>>
 		blood. _loser.slaveName collapses into the pile of organs and babies released from her body.
 	<<elseif _loser.bellyImplant > 0>>
@@ -503,9 +491,7 @@ In any case, both of the slaves have been dosed with aggression enhancers and in
 	<</if>>
 <</if>>
 
-<</nobr>>
-
-<<nobr>>
+<br><br>
 
 You let the winner _winner.slaveName, shaking as she comes off the adrenaline, drugs, and the fear, exit the pit.
 
@@ -630,5 +616,3 @@ You let the winner _winner.slaveName, shaking as she comes off the adrenaline, d
 <</if>>
 <<set $activeSlave = getSlave(_loser.ID)>>
 <<include "Remove activeSlave">>
-
-<</nobr>>\
\ No newline at end of file
diff --git a/src/uncategorized/securityForceProposal.tw b/src/uncategorized/securityForceProposal.tw
index dec9bd3ad52..2e79b89018d 100644
--- a/src/uncategorized/securityForceProposal.tw
+++ b/src/uncategorized/securityForceProposal.tw
@@ -1,11 +1,8 @@
-:: Security Force Proposal
+:: Security Force Proposal [nobr]
 
-<<nobr>>
 <<set $nextLink = "Next Week">>
 <<set $nextButton = "Continue">>
 
-<</nobr>>\
-\
 The Free Cities were founded on the principles of unrestrained anarcho-capitalism. To those with such beliefs, the very idea of possessing an armed force, a key tool of government control, or weapons at all, was anathema.
 
 In the period since, however, your citizens have seen the value in weaponry. They watched on their news-feed as some Free Cities were sacked by the armies and mobs of the Old World, driven by their hatred of the citizens' luxurious lifestyles. They've seen other Cities toppled from within, by slave conspiracies or infighting among citizen groupings with differing beliefs. They've witnessed the distressingly rapid rise of fanatical anti-slavery organizations, who would like nothing more than to see them slowly bled by their own chattel. They are learned people, and they know what happens to slaveowners who lose their power.
@@ -24,6 +21,7 @@ Such a force would solve many problems. More soldiers would mean more control, w
 <<else>>
 	<<set _price = 20000>>
 <</if>>
+
 <span id="result">
 <<link "Prepare for an announcement">>
 	<<replace "#result">>
@@ -33,7 +31,7 @@ Such a force would solve many problems. More soldiers would mean more control, w
 	<<set $nextButton = "Continue">>
 	<</replace>>
 <</link>> //Initial costs are <<print cashFormat(_price)>>, and upon establishment the force will have significant support costs until it is self-sufficient.//
-<<link "The mercenaries are enough">>
+<br><<link "The mercenaries are enough">>
 	<<replace "#result">>
 	On second thought, such a force is not needed. Your methods have served well so far - why should there be any change going forward?
 	<<set $nextButton = "Continue">>
-- 
GitLab


From bd1c2b8b1b4cdb097ecca3dc887929b6456ff778 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Sun, 29 Jul 2018 12:14:04 -0500
Subject: [PATCH 156/189] Spacing2

---
 src/art/artWidgets.tw                         |   2 +-
 src/gui/Encyclopedia/encyclopedia.tw          |  14 +--
 src/init/setupVars.tw                         |   1 -
 src/interaction/researchLab.tw                |   3 +-
 .../SecForceEX/SpecialForceUpgradeDec.tw      |   4 +-
 src/pregmod/assistantAppearancePackTwo.tw     |   6 +-
 src/pregmod/csec.tw                           |   6 +-
 src/societies/aztec/slaveSacrifice.tw         |   2 +-
 src/uncategorized/REFI.tw                     |  84 ++++++-------
 src/uncategorized/RESS.tw                     | 111 +++++++++---------
 src/uncategorized/pMercenaries.tw             |   1 -
 src/uncategorized/pRivalryVictory.tw          |   4 +-
 src/utility/descriptionWidgetsFlesh.tw        |  52 ++++----
 src/utility/optionsWidgets.tw                 |  44 +++----
 14 files changed, 165 insertions(+), 169 deletions(-)

diff --git a/src/art/artWidgets.tw b/src/art/artWidgets.tw
index acddbd12af6..529ab0b0b66 100644
--- a/src/art/artWidgets.tw
+++ b/src/art/artWidgets.tw
@@ -305,7 +305,7 @@ vector art added later is drawn over previously added art
 
 <<if $args[0].amp != 1>>
 	<<if $args[0].fuckdoll == 0 && $args[0].clothes != "restrictive latex" && $args[0].clothes != "a latex catsuit">>
-		<<if  _leftArmType == "high">>
+		<<if _leftArmType == "high">>
 			<<print "<img class='paperdoll' src=" + _imgSkinLoc + "/arm left " + _leftArmType + ".svg'" + " style='"+ _skinFilter + "'>">>
 			<<if $args[0].underArmHStyle == "bushy">>
 				<<= "<img class='paperdoll' src=" + _folderLoc + "/hair/underArm " + _underArmHStyle + " left.svg'" + " style='" + _underArmFilter + "'/>">>
diff --git a/src/gui/Encyclopedia/encyclopedia.tw b/src/gui/Encyclopedia/encyclopedia.tw
index 0900270de98..85dab59f7c3 100644
--- a/src/gui/Encyclopedia/encyclopedia.tw
+++ b/src/gui/Encyclopedia/encyclopedia.tw
@@ -1322,7 +1322,7 @@ SLAVE BEHAVIORAL FLAWS
 SLAVE SEXUAL FLAWS
 **********/
 <<case "Apathetic">>
- ''Apathetic '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[caring|Encyclopedia][$encyclopedia = "Caring"]]  [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[submissive|Encyclopedia][$encyclopedia = "Humiliation Submissive"]] fetish. It can also be removed by the [[dom|Encyclopedia][$encyclopedia = "Doms"]] fetish.
+ ''Apathetic '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[caring|Encyclopedia][$encyclopedia = "Caring"]] [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[submissive|Encyclopedia][$encyclopedia = "Humiliation Submissive"]] fetish. It can also be removed by the [[dom|Encyclopedia][$encyclopedia = "Doms"]] fetish.
 
 
 <<case "Crude">>
@@ -1330,11 +1330,11 @@ SLAVE SEXUAL FLAWS
 
 
 <<case "Hates anal">>
- ''Hates anal '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[painal queen|Encyclopedia][$encyclopedia = "Painal Queen"]]  [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[buttslut|Encyclopedia][$encyclopedia = "Buttsluts"]] fetish. This flaw can also be removed by serving the player character.
+ ''Hates anal '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[painal queen|Encyclopedia][$encyclopedia = "Painal Queen"]] [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[buttslut|Encyclopedia][$encyclopedia = "Buttsluts"]] fetish. This flaw can also be removed by serving the player character.
 
 
 <<case "Hates oral">>
- ''Hates oral '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[gagfuck queen|Encyclopedia][$encyclopedia = "Gagfuck Queen"]]  [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[cumslut|Encyclopedia][$encyclopedia = "Cumsluts"]] fetish. This flaw can also be removed by serving the player character.
+ ''Hates oral '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[gagfuck queen|Encyclopedia][$encyclopedia = "Gagfuck Queen"]] [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[cumslut|Encyclopedia][$encyclopedia = "Cumsluts"]] fetish. This flaw can also be removed by serving the player character.
 
 
 <<case "Hates penetration">>
@@ -1342,7 +1342,7 @@ SLAVE SEXUAL FLAWS
 
 
 <<case "Idealistic">>
- ''Idealistic '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[romantic|Encyclopedia][$encyclopedia = "Romantic"]]  [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[submissive|Encyclopedia][$encyclopedia = "Submissives"]] fetish.
+ ''Idealistic '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[romantic|Encyclopedia][$encyclopedia = "Romantic"]] [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[submissive|Encyclopedia][$encyclopedia = "Submissives"]] fetish.
 
 
 <<case "Judgemental">>
@@ -1350,11 +1350,11 @@ SLAVE SEXUAL FLAWS
 
 
 <<case "Repressed">>
- ''Repressed '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[perverted|Encyclopedia][$encyclopedia = "Perverted"]]  [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, the [[cumslut|Encyclopedia][$encyclopedia = "Cumsluts"]] fetish, or the [[buttslut|Encyclopedia][$encyclopedia = "Buttsluts"]] fetish.
+ ''Repressed '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[perverted|Encyclopedia][$encyclopedia = "Perverted"]] [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, the [[cumslut|Encyclopedia][$encyclopedia = "Cumsluts"]] fetish, or the [[buttslut|Encyclopedia][$encyclopedia = "Buttsluts"]] fetish.
 
 
 <<case "Shamefast">>
- ''Shamefast '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[tease|Encyclopedia][$encyclopedia = "Tease"]]  [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[humiliation|Encyclopedia][$encyclopedia = "Humiliation Fetishists"]] fetish.
+ ''Shamefast '' is a sexual [[flaw|Encyclopedia][$encyclopedia = "Flaws"]] that can be softened into the [[tease|Encyclopedia][$encyclopedia = "Tease"]] [[quirk|Encyclopedia][$encyclopedia = "Quirks"]] by training, a good [[Attendant|Encyclopedia][$encyclopedia = "Attendant"]], a powerful sex drive, or the [[humiliation|Encyclopedia][$encyclopedia = "Humiliation Fetishists"]] fetish.
 
 /**********
 SLAVE PARAPHILIAS
@@ -2820,7 +2820,7 @@ LORE: INTERVIEWS
 
 <<case "The Black Market">>
 	<h4>The Black Market</h4>
-	You may be the ruler of your arcology, but you don't exist in a vacuum. You can do all kinds of thing and get lots of things that regular citizens can't. So the Black Market, is a chance for less prominent citizens to do or get stuff like an arcology leader might experience. But for a ruler like yourself, it's a chance to avoid the severe scrutiny you're subject to on a regular basis, and to get a hold of bleeding edge or illegal research and technologies.  The market itself is always moving from place to place, but if you're reputable enough, you can find it when you need it.
+	You may be the ruler of your arcology, but you don't exist in a vacuum. You can do all kinds of thing and get lots of things that regular citizens can't. So the Black Market, is a chance for less prominent citizens to do or get stuff like an arcology leader might experience. But for a ruler like yourself, it's a chance to avoid the severe scrutiny you're subject to on a regular basis, and to get a hold of bleeding edge or illegal research and technologies. The market itself is always moving from place to place, but if you're reputable enough, you can find it when you need it.
 	<br><br>
 	You will be able to find all manner of Future Society technologies which are not exactly illegal, but difficult to get through regular channels. Every week, the dealers will have a few for you to purchase, but for the truly illegal or unethical items, your only choice is to go to the Black Market.
 	<br><br>
diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index 439231de69d..cea5a5bbe40 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -4,7 +4,6 @@
 * This passage is tagged as widget, so it will be loaded whenever any passage is loaded. The global setup object seems to reset itself to {} (empty object): until we figure out why, this is where we set properties for it.
 */
 
-
 /*** pregmod exclusive start ***/
 
 <<set setup.filterRaces = ["Amerindian", "Asian", "Black", "Indo-Aryan", "Latina", "Malay", "Middle Eastern", "Pacific Islander", "Semitic", "Southern European", "White"]>>
diff --git a/src/interaction/researchLab.tw b/src/interaction/researchLab.tw
index 0dbe006a9fb..4da68401160 100644
--- a/src/interaction/researchLab.tw
+++ b/src/interaction/researchLab.tw
@@ -81,7 +81,7 @@
 			<<if ($researchLab.maxSpace - ($researchLab.hired + $researchLab.menials)) >= 10 && $helots >= 10>>
 				| [[x10|Research Lab][$researchLab.menials += 10,$helots -= 10]]
 			<</if>>
-			  menial slaves to lab.<br>
+			menial slaves to lab.<br>
 		<<else>>You do not own any <<if $researchLab.menials != 0>>unassigned <</if>>menial slaves.<br>
 		<</if>>
 		&nbsp;&nbsp;&nbsp;//Using menial slaves is much cheaper than hiring scientists, but they are less effective. <<print cashFormat(100)>> per slave each week.//<br>
@@ -232,5 +232,4 @@
 	[[Erectile implant|Research Lab][$temp = 1, $cash -= 95000, $researchLab.erectileImplant = 1]] //Costs <<print cashFormat(95000)>>.//
 	<</if>>*/
 
-
 <</switch>>
\ No newline at end of file
diff --git a/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw b/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
index 63b2416556b..8d399a0b529 100644
--- a/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
+++ b/src/pregmod/SecForceEX/SpecialForceUpgradeDec.tw
@@ -192,7 +192,7 @@
 <<case 0>>
 	Primarily consists of light transport VTOL's equipped with non-lethal weaponry.
 <<case 1>>
-	Upgraded light transport VTOL's  with additional fire-power and lethal weaponry.
+	Upgraded light transport VTOL's with additional fire-power and lethal weaponry.
 <<case 2>>
 	The VTOL's have been upgraded to higher-capacity variants with heavier weaponry.
 <<case 3>>
@@ -289,7 +289,7 @@
 <<if $securityForceArcologyUpgrades >= 2>>
 <br><br>
 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ''Drone Bay:''
-<<switch  $securityForceDronePower>>
+<<switch $securityForceDronePower>>
 <<case 0>>
 	 Contains a small number of 're-purposed' non-military drones from the arcology's original contingent.
 <<case 1>>
diff --git a/src/pregmod/assistantAppearancePackTwo.tw b/src/pregmod/assistantAppearancePackTwo.tw
index 7be9a3cb85a..a7a7420956c 100644
--- a/src/pregmod/assistantAppearancePackTwo.tw
+++ b/src/pregmod/assistantAppearancePackTwo.tw
@@ -20,17 +20,15 @@ __Personal assistant appearances:__
 <</link>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Cherub">>
 	<<replace "#app">>
-	<<nobr>>
 	At your order, she installs the cherub appearance. She returns to her youthful figure and sprouts her wings. "This is awesome, little embarrassing though..." She says, covering her shame. "You can always customize me from the arcology management menu," she adds.
 	<<set $assistantAppearance = "cherub">>
-	<</nobr>><</replace>>
+	<</replace>>
 <</link>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Imp">>
 	<<replace "#app">>
-	<<nobr>>
 	At your order, she installs the imp appearance. She returns to her youthful figure and sprouts her wings. "This is awesome! So, wanna fool around? Maybe go torment some slaves?" She says, pulling out a pitchfork. "You can always customize me from the arcology management menu," she adds.
 	<<set $assistantAppearance = "imp">>
-	<</nobr>><</replace>>
+	<</replace>>
 <</link>>
 <br>&nbsp;&nbsp;&nbsp;&nbsp;<<link "Succubus">>
 	<<replace "#app">>
diff --git a/src/pregmod/csec.tw b/src/pregmod/csec.tw
index ffa3170ded9..056be879938 100644
--- a/src/pregmod/csec.tw
+++ b/src/pregmod/csec.tw
@@ -33,7 +33,7 @@
 	<<set $PC.slavesFathered += _curBabies>>
 <</if>>
 
-<<if $activeSlave.broodmother < 1>>  /* broodmothers can't lose fetuses, or it's abortion procedure, not c'sec.*/
+<<if $activeSlave.broodmother < 1>> /* broodmothers can't lose fetuses, or it's abortion procedure, not c'sec.*/
 	<<if $safePartialBirthTech == 1 >>
 		/* nothing right now. For partial birthers, who can do it. For future use.*/
 	<<else>>
@@ -53,7 +53,7 @@
 	<<if _curBabies >= _origReserve >>
 		/*adding normal*/
 		<<set _cToIncub = _origReserve >>
-	<<elseif _curBabies <  _origReserve && $activeSlave.womb.length > 0>>
+	<<elseif _curBabies < _origReserve && $activeSlave.womb.length > 0>>
 		/*broodmother or partial birth, we will wait for next time to get remaining children*/
 		<<set $activeSlave.reservedChildren -= _curBabies, _cToIncub = _curBabies>>
 	<<else>>
@@ -271,7 +271,7 @@ Performing a cesarean section is trivial for the remote surgery to carry out. $a
 		She's a little disappointed she didn't get to give birth, but can't wait to get pregnant again.
 	<<elseif ($activeSlave.devotion > 50)>>
 		She is @@.hotpink;pleased by this stark development@@, since she is so attentive to your will. She also expects she'll be able to fuck better now.
-		<<set  $activeSlave.devotion += 4>>
+		<<set $activeSlave.devotion += 4>>
 	<<elseif ($activeSlave.devotion > 20)>>
 		She is broken enough to accept your control of her pregnancies.
 	<<elseif ($activeSlave.devotion >= -20)>>
diff --git a/src/societies/aztec/slaveSacrifice.tw b/src/societies/aztec/slaveSacrifice.tw
index c256a9f18bf..d6b7c6d1b25 100644
--- a/src/societies/aztec/slaveSacrifice.tw
+++ b/src/societies/aztec/slaveSacrifice.tw
@@ -239,7 +239,7 @@
 	<</if>>
 
 	Once the penance time is over $he is carried out of the cage due to being so weak that $he cannot longer support $his own weight. After a short ceremony, $he is taken back to the penthouse to rest.
-        <<if $activeSlave.inducedNCS == 1>>
+		<<if $activeSlave.inducedNCS == 1>>
 	<<elseif $activeSlave.lactation > 1>>
 		$His breasts are grotesquely bloated, super sensitive and leaking milk from a week of neglected hyper-lactation.
 		<<set $activeSlave.boobs += 500>>
diff --git a/src/uncategorized/REFI.tw b/src/uncategorized/REFI.tw
index 1b6b60fe1ec..9be475fcb47 100644
--- a/src/uncategorized/REFI.tw
+++ b/src/uncategorized/REFI.tw
@@ -87,12 +87,12 @@
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
-    <div class="imageRef medImg">
-        <<SlaveArt $subSlave 2 0>>
-    </div>
-    <div class="imageRef medImg">
-        <<SlaveArt $activeSlave 2 0>>
-    </div>
+	<div class="imageRef medImg">
+		<<SlaveArt $subSlave 2 0>>
+	</div>
+	<div class="imageRef medImg">
+		<<SlaveArt $activeSlave 2 0>>
+	</div>
 <</if>>
 /* 000-250-006 */
 
@@ -182,12 +182,12 @@ It seems she passed by while you were beating $subSlave.slaveName and found the
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
-    <div class="imageRef medImg">
-        <<SlaveArt $subSlave 2 0>>
-    </div>
-    <div class="imageRef medImg">
-        <<SlaveArt $activeSlave 2 0>>
-    </div>
+	<div class="imageRef medImg">
+		<<SlaveArt $subSlave 2 0>>
+	</div>
+	<div class="imageRef medImg">
+		<<SlaveArt $activeSlave 2 0>>
+	</div>
 <</if>>
 /* 000-250-006 */
 
@@ -336,12 +336,12 @@ It seems she passed by while you were enjoying the heavily pregnant $subSlave.sl
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
-    <div class="imageRef medImg">
-        <<SlaveArt $subSlave 2 0>>
-    </div>
-    <div class="imageRef medImg">
-        <<SlaveArt $activeSlave 2 0>>
-    </div>
+	<div class="imageRef medImg">
+		<<SlaveArt $subSlave 2 0>>
+	</div>
+	<div class="imageRef medImg">
+		<<SlaveArt $activeSlave 2 0>>
+	</div>
 <</if>>
 /* 000-250-006 */
 
@@ -408,12 +408,12 @@ It seems she passed by while you were drinking from $subSlave.slaveName and foun
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
-    <div class="imageRef medImg">
-        <<SlaveArt $subSlave 2 0>>
-    </div>
-    <div class="imageRef medImg">
-        <<SlaveArt $activeSlave 2 0>>
-    </div>
+	<div class="imageRef medImg">
+		<<SlaveArt $subSlave 2 0>>
+	</div>
+	<div class="imageRef medImg">
+		<<SlaveArt $activeSlave 2 0>>
+	</div>
 <</if>>
 /* 000-250-006 */
 
@@ -469,12 +469,12 @@ It seems she passed by while you were dominating $subSlave.slaveName. <<if $acti
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
-    <div class="imageRef medImg">
-        <<SlaveArt $subSlave 2 0>>
-    </div>
-    <div class="imageRef medImg">
-        <<SlaveArt $activeSlave 2 0>>
-    </div>
+	<div class="imageRef medImg">
+		<<SlaveArt $subSlave 2 0>>
+	</div>
+	<div class="imageRef medImg">
+		<<SlaveArt $activeSlave 2 0>>
+	</div>
 <</if>>
 /* 000-250-006 */
 
@@ -519,12 +519,12 @@ It seems she passed by while you were buttfucking $subSlave.slaveName and found
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
-    <div class="imageRef medImg">
-        <<SlaveArt $subSlave 2 0>>
-    </div>
-    <div class="imageRef medImg">
-        <<SlaveArt $activeSlave 2 0>>
-    </div>
+	<div class="imageRef medImg">
+		<<SlaveArt $subSlave 2 0>>
+	</div>
+	<div class="imageRef medImg">
+		<<SlaveArt $activeSlave 2 0>>
+	</div>
 <</if>>
 /* 000-250-006 */
 
@@ -575,12 +575,12 @@ It seems she passed by while $subSlave.slaveName was blowing you. She swallows p
 
 /* 000-250-006 */
 <<if $seeImages == 1>>
-    <div class="imageRef medImg">
-        <<SlaveArt $subSlave 2 0>>
-    </div>
-    <div class="imageRef medImg">
-        <<SlaveArt $activeSlave 2 0>>
-    </div>
+	<div class="imageRef medImg">
+		<<SlaveArt $subSlave 2 0>>
+	</div>
+	<div class="imageRef medImg">
+		<<SlaveArt $activeSlave 2 0>>
+	</div>
 <</if>>
 /* 000-250-006 */
 
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index df16e5d13b7..ac974ab833a 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -1282,7 +1282,7 @@ During a routine inspection, <<EventNameLink $activeSlave>> respectfully asks a
 <<if !canTalk($activeSlave)>>
 	She uses trembling gestures to pour out dissatisfaction with life as an aphrodisiac addict. She is emotionally unsatisfied with the mechanical orgasms she gets on the drugs, but craves them intensely.
 <<else>>
-	She  <<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisps through huge, quivering lips,<<else>>mutters,<</if>> "<<Master>>, I hate thi<<s>> <<sh>>it. I come and come and come but it'<<s>> ju<<s>>t phy<<s>>ical. I haven't felt clo<<s>>e to anyone ever <<s>>in<<c>>e I've been on the<<s>>e fucking aphrodi<<s>>iac<<s>>." She shrugs bitterly. "<<S>>till crave them though."
+	She <<if SlaveStatsChecker.checkForLisp($activeSlave)>>lisps through huge, quivering lips,<<else>>mutters,<</if>> "<<Master>>, I hate thi<<s>> <<sh>>it. I come and come and come but it'<<s>> ju<<s>>t phy<<s>>ical. I haven't felt clo<<s>>e to anyone ever <<s>>in<<c>>e I've been on the<<s>>e fucking aphrodi<<s>>iac<<s>>." She shrugs bitterly. "<<S>>till crave them though."
 <</if>>
 
 <<case "impregnation please">>
@@ -2840,7 +2840,7 @@ Coming to a stop, she <<if $activeSlave.height > 190>>bends the long, long way d
 
 <<case "bad dream">>
 
-Passing near the slave dormitory late at night, you hear a quiet cry within. This is strange; most slaves housed there are not inclined or not allowed to have sex in the middle of the night, and in any case, the noise wasn't one of pleasure. Looking in, you see a jerky movement near the door. It's <<EventNameLink $activeSlave>>, and she's obviously having a bad dream. She raises an arm to fend off some imagined danger, and in doing so, pushes the sheet down around her waist. She sleeps naked, like all your slaves, and the movement bares her <<if $activeSlave.boobs > 2000>>udders<<elseif $activeSlave.boobs > 1000>>heavy breasts<<elseif $activeSlave.boobs > 400>>boobs<<else>>little tits<</if>><<if $activeSlave.belly >= 5000>> and _belly  <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>belly<</if>> to the cool night air. The low blue light outlines her nipples as they <<if $activeSlave.nipples != "fuckable">>stiffen<<else>>swell<</if>> at the sudden change of temperature,
+Passing near the slave dormitory late at night, you hear a quiet cry within. This is strange; most slaves housed there are not inclined or not allowed to have sex in the middle of the night, and in any case, the noise wasn't one of pleasure. Looking in, you see a jerky movement near the door. It's <<EventNameLink $activeSlave>>, and she's obviously having a bad dream. She raises an arm to fend off some imagined danger, and in doing so, pushes the sheet down around her waist. She sleeps naked, like all your slaves, and the movement bares her <<if $activeSlave.boobs > 2000>>udders<<elseif $activeSlave.boobs > 1000>>heavy breasts<<elseif $activeSlave.boobs > 400>>boobs<<else>>little tits<</if>><<if $activeSlave.belly >= 5000>> and _belly <<if $activeSlave.bellyPreg >= 3000>>pregnant <</if>>belly<</if>> to the cool night air. The low blue light outlines her nipples as they <<if $activeSlave.nipples != "fuckable">>stiffen<<else>>swell<</if>> at the sudden change of temperature,
 <<switch $activeSlave.nipples>>
 <<case "tiny">>
 	pricking up into little buds.
@@ -3147,7 +3147,7 @@ It's been <<print $week-$activeSlave.weekAcquired>> week<<if $week-$activeSlave.
 <<case "too thin for cum diet">>
 
 You are in your office, tending to the tedious business of requisition orders for your penthouse when you see <<EventNameLink $activeSlave>> appear outside your door. She hovers outside in the hall, peeking her head around the entry-way, looking very unsure about disturbing you. You stop what you're doing and call her in. She's reticent at first, but then she obediently steps into your office. She is
-<<if $activeSlave.clothes  == "no clothing">>
+<<if $activeSlave.clothes == "no clothing">>
 	forced to remain naked at all times, and the most striking thing about her body is how
 	<<if $activeSlave.belly >= 100000>>
 		her _belly <<if $activeSlave.bellyPreg >= 3000>>pregnancy<<else>>distended belly<</if>> utterly dwarfs her skinny body.
@@ -3345,7 +3345,7 @@ As you manage your empire from your office, a constant traffic of slaves passes
 	and is getting such excellent modern medical care that despite her age, she has the energy of a teenager.
 <<elseif $activeSlave.physicalAge > 19>>
 	is full of youth and vigor, and is in truly perfect health due to the miracles of modern medicine.
-<<elseif  $activeSlave.physicalAge > 12>>
+<<elseif $activeSlave.physicalAge > 12>>
 	and is a teenager, not to mention the perfect health she owes to the miracles of modern medicine.
 <<else>>
 	and is a little girl, not to mention the perfect health she owes to the miracles of modern medicine.
@@ -4144,7 +4144,7 @@ May I plea<<s>>e try out <<s>>omething <<s>>kimpier today?"
 
 
 <<case "hyperpreg stuck">>
-You are alerted to an issue regarding your  
+You are alerted to an issue regarding your 
 	<<if ($activeSlave.broodmother === 2) && ($activeSlave.preg >= 30)>> 
 		hyperbroodmother,
 	<<elseif ($activeSlave.broodmother == 1) && ($activeSlave.preg >= 30)>> 
@@ -6004,7 +6004,7 @@ She cranes her neck, glancing over her shoulder to give you a pleading look.
 	<<else>>
 		going limp and slumping down onto
 	<</if>>
-	the sheets beneath her. When you climax soon after, she expects you to get off her so she can clean up, but instead, the <<if $PC.dick == 1>>cock up her butt returns to rock hardness<<if $PC.vagina == 1>> as you use a little manual stimulation of your own cunt to get your cock stiff again<</if>> and<<else>>strap-on up her butt<</if>> goes back to pumping in and out of her. She slides a hand under herself to <<if  $activeSlave.vagina == -1>>jerk off<<else>>rub herself<</if>> this time. When you finally finish, a long time later, the exhausted slave is lying on a bed wet with lube, <<if ($PC.dick == 1) || ($activeSlave.dick > 0)>> ejaculate,<</if>><<if ($PC.dick == 0) || ($activeSlave.vagina > -1)>> girlcum,<</if>> drool, and sweat. She doesn't care, and you let her curl up in her sex-soaked nest. As you leave, you think she's asleep already, but <<if !canSee($activeSlave)>>as you go<<else>>her $activeSlave.eyeColor eyes open a slit as you go and<</if>> she murmurs, @@.hotpink;Thank<<s>>,@@ <<Master>>."
+	the sheets beneath her. When you climax soon after, she expects you to get off her so she can clean up, but instead, the <<if $PC.dick == 1>>cock up her butt returns to rock hardness<<if $PC.vagina == 1>> as you use a little manual stimulation of your own cunt to get your cock stiff again<</if>> and<<else>>strap-on up her butt<</if>> goes back to pumping in and out of her. She slides a hand under herself to <<if $activeSlave.vagina == -1>>jerk off<<else>>rub herself<</if>> this time. When you finally finish, a long time later, the exhausted slave is lying on a bed wet with lube, <<if ($PC.dick == 1) || ($activeSlave.dick > 0)>> ejaculate,<</if>><<if ($PC.dick == 0) || ($activeSlave.vagina > -1)>> girlcum,<</if>> drool, and sweat. She doesn't care, and you let her curl up in her sex-soaked nest. As you leave, you think she's asleep already, but <<if !canSee($activeSlave)>>as you go<<else>>her $activeSlave.eyeColor eyes open a slit as you go and<</if>> she murmurs, @@.hotpink;Thank<<s>>,@@ <<Master>>."
 	<<set $activeSlave.devotion += 5>>
 	<<= AnalVCheck(5)>>
 	<</replace>>
@@ -6196,7 +6196,7 @@ She cranes her neck, glancing over her shoulder to give you a pleading look.
 <br><<link "Let her out yourself">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You're not close to the penthouse kitchen area, so it takes you some time to make your way there. By the time you get there, the poor girl is pounding weakly against the refrigerator door to try to get someone's attention. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> was right, she must be too cold to think straight; if she weren't she might <<if canSee($activeSlave)>>notice the<<else>>have thought to feel around for the<</if>> prominent release button right next to where she's striking the door. Her desperate $activeSlave.skin face is visible in the window. You hit the exterior release and the door swings open quickly, dumping her into your arms. Despite not being devoted to you, she clings to you like a long lost love, her <<if ($activeSlave.height >= 185)>>big cold<<elseif  ($activeSlave.height >= 160)>>cold<<else>>cold little<</if>> <<if $activeSlave.belly >= 1500>>_belly <<if $activeSlave.bellyPreg >= 1500>>pregnant <</if>><</if>>body shaking convulsively. She tries to burrow even <<if ($PC.boobs > 0)>>deeper between your breasts<<else>>closer to you<</if>>, soaking up your warmth.
+	You're not close to the penthouse kitchen area, so it takes you some time to make your way there. By the time you get there, the poor girl is pounding weakly against the refrigerator door to try to get someone's attention. <<if $assistantName == "your personal assistant">>Your personal assistant<<else>>$assistantName<</if>> was right, she must be too cold to think straight; if she weren't she might <<if canSee($activeSlave)>>notice the<<else>>have thought to feel around for the<</if>> prominent release button right next to where she's striking the door. Her desperate $activeSlave.skin face is visible in the window. You hit the exterior release and the door swings open quickly, dumping her into your arms. Despite not being devoted to you, she clings to you like a long lost love, her <<if ($activeSlave.height >= 185)>>big cold<<elseif ($activeSlave.height >= 160)>>cold<<else>>cold little<</if>> <<if $activeSlave.belly >= 1500>>_belly <<if $activeSlave.bellyPreg >= 1500>>pregnant <</if>><</if>>body shaking convulsively. She tries to burrow even <<if ($PC.boobs > 0)>>deeper between your breasts<<else>>closer to you<</if>>, soaking up your warmth.
 	<<if !canTalk($activeSlave)>>
 		She gestures her thanks shakily.
 	<<else>>
@@ -6216,14 +6216,14 @@ She cranes her neck, glancing over her shoulder to give you a pleading look.
 	<<else>>
 		soft
 	<</if>>
-	back, helping her get warm. You point out the release handle and she apologizes hastily for forgetting. Once she's warm you gently tell her to get back to it, and give her a gentle shove on her <<if ($activeSlave.butt > 5)>>massive ass<<elseif  ($activeSlave.butt > 2)>>big butt<<else>>nice little butt<</if>>. She @@.mediumaquamarine;smiles gratefully@@ at you before heading back to get those drinks.
+	back, helping her get warm. You point out the release handle and she apologizes hastily for forgetting. Once she's warm you gently tell her to get back to it, and give her a gentle shove on her <<if ($activeSlave.butt > 5)>>massive ass<<elseif ($activeSlave.butt > 2)>>big butt<<else>>nice little butt<</if>>. She @@.mediumaquamarine;smiles gratefully@@ at you before heading back to get those drinks.
 	<<set $activeSlave.trust += 4>>
 	<</replace>>
 <</link>>
 <br><<link "Punish her for her forgetfulness">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You're not close to the penthouse kitchen area, so it takes you some time to make your way there. By the time you<<if $PC.dick == 0>> don a strap-on and<</if>> get there, the poor <<if $activeSlave.pregKnown == 1>>pregnant <</if>>girl is pounding weakly against the refrigerator door to try to get someone's attention. She looks relieved when you open the door, but her relief turns to ashes when you shut the door behind you. She shivers with cold and fear as you sternly point out the release, high up on the door, and then demand her hands. You bind them together and loop them over the release before hoisting her legs off the ground so that her back is against the cold metal door and all her weight is hanging off the release by her arms. She doesn't struggle until you tell her she can leave - if she can get the release open like this. She tries, but she can't get enough leverage; her spastic efforts get weaker as you pull her <<if ($activeSlave.butt > 5)>>massive ass<<elseif  ($activeSlave.butt > 2)>>big butt<<else>>nice little butt<</if>> away from the door and line <<if $PC.dick == 0>>the strap-on<<else>>your cock<</if>> up with her <<if ($activeSlave.anus > 2)>>loose asspussy<<elseif  ($activeSlave.anus > 1)>>asshole<<else>>tight little asshole<</if>>. Teeth chattering, legs shaking with cold, she takes a buttfuck in the cold cooler, hanging from what she should have used to let herself out. When you finish, you hit it yourself and drop her legs, letting her unhook herself and flee to the warmth outside. She @@.gold;begs your pardon@@ abjectly as she rubs her <<if $activeSlave.belly >= 5000>> _belly $activeSlave.skin belly <<else>>$activeSlave.skin shoulders <</if>>to warm herself up<<if $PC.dick == 0>><<else>>, ignoring the cum <<if ($activeSlave.anus > 2)>>leaking out of her fucked-out anus<<elseif  ($activeSlave.anus > 1)>>leaking out of her now-gaped backdoor<<else>>filling her still-tight anus<</if>><</if>>.
+	You're not close to the penthouse kitchen area, so it takes you some time to make your way there. By the time you<<if $PC.dick == 0>> don a strap-on and<</if>> get there, the poor <<if $activeSlave.pregKnown == 1>>pregnant <</if>>girl is pounding weakly against the refrigerator door to try to get someone's attention. She looks relieved when you open the door, but her relief turns to ashes when you shut the door behind you. She shivers with cold and fear as you sternly point out the release, high up on the door, and then demand her hands. You bind them together and loop them over the release before hoisting her legs off the ground so that her back is against the cold metal door and all her weight is hanging off the release by her arms. She doesn't struggle until you tell her she can leave - if she can get the release open like this. She tries, but she can't get enough leverage; her spastic efforts get weaker as you pull her <<if ($activeSlave.butt > 5)>>massive ass<<elseif ($activeSlave.butt > 2)>>big butt<<else>>nice little butt<</if>> away from the door and line <<if $PC.dick == 0>>the strap-on<<else>>your cock<</if>> up with her <<if ($activeSlave.anus > 2)>>loose asspussy<<elseif ($activeSlave.anus > 1)>>asshole<<else>>tight little asshole<</if>>. Teeth chattering, legs shaking with cold, she takes a buttfuck in the cold cooler, hanging from what she should have used to let herself out. When you finish, you hit it yourself and drop her legs, letting her unhook herself and flee to the warmth outside. She @@.gold;begs your pardon@@ abjectly as she rubs her <<if $activeSlave.belly >= 5000>> _belly $activeSlave.skin belly <<else>>$activeSlave.skin shoulders <</if>>to warm herself up<<if $PC.dick == 0>><<else>>, ignoring the cum <<if ($activeSlave.anus > 2)>>leaking out of her fucked-out anus<<elseif ($activeSlave.anus > 1)>>leaking out of her now-gaped backdoor<<else>>filling her still-tight anus<</if>><</if>>.
 	<<set $activeSlave.trust -= 5>>
 	<<= AnalVCheck()>>
 	<</replace>>
@@ -7076,7 +7076,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<elseif canDoVaginal($activeSlave)>>
 		<<= VaginalVCheck()>>
 	<<elseif canDoAnal($activeSlave)>>
-  		<<= AnalVCheck()>>
+		<<= AnalVCheck()>>
 	<<else>>
 		<<set $activeSlave.oralCount++, $oralTotal++>>
 	<</if>>
@@ -8604,7 +8604,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 			@@.lime;This breaks in $activeSlave.slaveName's virgin ass.@@
 			<<set $activeSlave.anus = 1>>
 			@@.hotpink;She enjoys losing her butt cherry to you.@@
-			<<set  $activeSlave.devotion += 4>>
+			<<set $activeSlave.devotion += 4>>
 		<</if>>
 		<<= AnalVCheck()>>
 	<</if>>
@@ -9075,9 +9075,9 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	You pass her the pill, and she continues to weep inconsolably, apologizing all the while, until the drug takes away her ability to care about anything but getting fucked. When you finish and extract <<if $PC.dick == 0>>yourself from between her legs<<else>>your cock from her well-used hole<</if>>, though, you think you can detect a deep sadness in her eyes that it cannot reach.
 	<<set $activeSlave.devotion += 4>>
 	<<if canDoVaginal($activeSlave)>>
-  		<<= VaginalVCheck()>>
+		<<= VaginalVCheck()>>
 	<<else>>
-  		<<= AnalVCheck()>>
+		<<= AnalVCheck()>>
 	<</if>>
 	<</replace>>
 <</link>><<if ($activeSlave.anus == 0 && canDoAnal($activeSlave)) || ($activeSlave.vagina == 0 && canDoVaginal($activeSlave))>> //This option will take virginity//<</if>>
@@ -12027,7 +12027,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		@@.lime;cock has grown,@@ delighting her.
 		<<set $activeSlave.dick++>>
 		<<if $activeSlave.balls < 5 && random(1,100) > 70>>
-		  	As a side effect, her @@.lime;balls have also swelled,@@ which she sees as an added benefit.
+			As a side effect, her @@.lime;balls have also swelled,@@ which she sees as an added benefit.
 			<<set $activeSlave.balls++>>
 		<</if>>
 		The dose of growth hormones and male hormone treatment necessary to cause such rapid change left her feeling @@.red;rather ill,@@ but she is recovering normally.
@@ -12039,7 +12039,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 			<<set $activeSlave.dick-->>
 		<</if>>
 		<<if $activeSlave.balls > 1 && random(1,100) > 70>>
-		  	As a side effect, her @@orange:lime;balls have also atrophied,@@ which she sees as an added benefit.
+			As a side effect, her @@orange:lime;balls have also atrophied,@@ which she sees as an added benefit.
 			<<set $activeSlave.balls-->>
 			<<if (($activeSlave.inducedNCS == 1) && ($activeSlave.balls > 1) && (random(1,100) > 50))>>
 				<<set $activeSlave.balls-->>
@@ -12465,7 +12465,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 			<</if>>
 			and does her best to relax.
 			<br><br>
-			She screws her eyes shut tight and her mouth tighter as you prod at her face with your member. Tiring of her reluctance, you give her a brusque order to open her eyes and gaze upon the dick she will soon be deepthroating. She obeys, but unwillingly, and steadies herself to take its length. You tell her to do her best to watch, and begin thrusting. She groans from the  internal fullness and sexual confusion. She stares as best she can at your penis, transfixed by the sight of it thrusting into her mouth and the feeling of her lips around its girth.
+			She screws her eyes shut tight and her mouth tighter as you prod at her face with your member. Tiring of her reluctance, you give her a brusque order to open her eyes and gaze upon the dick she will soon be deepthroating. She obeys, but unwillingly, and steadies herself to take its length. You tell her to do her best to watch, and begin thrusting. She groans from the internal fullness and sexual confusion. She stares as best she can at your penis, transfixed by the sight of it thrusting into her mouth and the feeling of her lips around its girth.
 			<br><br>
 			She slips a hand to her crotch, her arousal overwhelming her preferences. She whimpers pathetically, seeing and feeling herself build towards an inevitable orgasm. You manage her skillfully, holding back to her point of climax before shooting your cum deep inside her. The internal sensation of heat, the tightening and twitching of your member inside her mouth, and your obvious pleasure force her over the edge, and she comes so hard that she chokes on your cock. You pull out of her, and she struggles to catch her breath, the action sending a blob of her owner's semen running down her chin.
 			<<set $activeSlave.oralCount += 7, $oralTotal += 7>>
@@ -13105,11 +13105,11 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<</if>>
 	leaving her open for use from behind.
 	<<if canDoVaginal($activeSlave) && canDoAnal($activeSlave)>>
-  		<<= BothVCheck(3, 3)>>
+		<<= BothVCheck(3, 3)>>
 	<<elseif canDoVaginal($activeSlave)>>
 		<<= VaginalVCheck(6)>>
 	<<elseif canDoAnal($activeSlave)>>
-  		<<= AnalVCheck(6)>>
+		<<= AnalVCheck(6)>>
 	<</if>>
 	You're careful to avoid associating pleasure with misbehavior by taking her cruelly every time she eats, pinching her nipples, and slapping her <<if $seeRace == 1>>$activeSlave.race <</if>> ass as you ride her. This is so effective that @@.gold;she learns to obey@@ and @@.orange;loses weight@@ both.
 	<<set $activeSlave.trust -= 5, $activeSlave.weight -= 10, $activeSlave.diet = "healthy">>
@@ -14416,7 +14416,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		stand
 	<</if>>
 	with her arms over her head and her legs splayed, and tell her that if she moves or resists her punishment will begin again from the start.
-	<<if ["chastity belt", "combined chastity"].includes($activeSlave.vaginalAccessory) ||  ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>>
+	<<if ["chastity belt", "combined chastity"].includes($activeSlave.vaginalAccessory) || ["chastity", "combined chastity"].includes($activeSlave.dickAccessory)>>
 		She was touching her nipples and ass, so you flick and torture her nipples and give her a severe spanking.
 	<<elseif !canAchieveErection($activeSlave) && ($activeSlave.dick > 6)>>
 		She was playing with her oversized cock, so you kick and swat at the swollen monster, enjoying the way it spasms.
@@ -14424,7 +14424,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		She was touching her limp dick and ass, so you slap and torture her offending dick and give her a severe spanking.
 	<<elseif ($activeSlave.vagina == -1) && ($activeSlave.dick == 0)>>
 		She was desperately rubbing her perineum and anus, the most sensitive parts she has left, so you slap that part of her repeatedly, enjoying the way it spasms.
-	<<elseif $activeSlave.vagina == -1 ||  $activeSlave.clit >= 3>>
+	<<elseif $activeSlave.vagina == -1 || $activeSlave.clit >= 3>>
 		She was jacking it, so you force her to get herself hard for punishment and then deliver a series of agonizing slaps and flicks to her offending member.
 	<<elseif $activeSlave.labia > 1>>
 		Her generous pussylips bear a sheen of incriminating moisture, so you slap and flick them, causing her intense agony.
@@ -16977,15 +16977,15 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <<link "Have mercy on the poor girl and take her off her cum diet for now">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-    You see how $activeSlave.slaveName is suffering and you decide to reconsider her dietary prescription. You instruct $assistantName to change <<print $activeSlave.slaveName>>'s diet to exclude cum for now. Slaves who can't eat are unhealthy, and unhealthy slaves are unprofitable slaves. She is now @@.mediumorchid;more confident that she can resist you and get her way@@, she also @@.mediumaquamarine;trusts you a little more@@ to look after her well being.
-    <<set $activeSlave.trust += 5, $activeSlave.devotion -= 5, $activeSlave.dietCum = 0>>
+	You see how $activeSlave.slaveName is suffering and you decide to reconsider her dietary prescription. You instruct $assistantName to change <<print $activeSlave.slaveName>>'s diet to exclude cum for now. Slaves who can't eat are unhealthy, and unhealthy slaves are unprofitable slaves. She is now @@.mediumorchid;more confident that she can resist you and get her way@@, she also @@.mediumaquamarine;trusts you a little more@@ to look after her well being.
+	<<set $activeSlave.trust += 5, $activeSlave.devotion -= 5, $activeSlave.dietCum = 0>>
 	<</replace>>
 <</link>>
 <<if $activeSlave.dietCum == 1>>
 	<br><<link "Force her onto a heavy cum diet, and double up on her ejaculate intake">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You instruct $assistantName to double down on <<print $activeSlave.slaveName>>'s cum diet.  Ungrateful little sluts who retch up their expensive food sometimes need tough love. Making her cum-food thicker and more concentrated might help her to learn that no matter how bad things seem, you can always make them worse. Initially her new heavy cum diet makes no difference in her ability to keep it down, but you tell her to give it some time. Eventually she will learn to appreciate cum as the primary ingredient in everything she ingests. All of your future cumsluts do, sooner or later. Her pathetic tears reveal how @@.gold;helpless she feels@@, but they don't hide the @@.mediumorchid;streak of rebelliousness@@ that remains burning inside her.
+	You instruct $assistantName to double down on <<print $activeSlave.slaveName>>'s cum diet. Ungrateful little sluts who retch up their expensive food sometimes need tough love. Making her cum-food thicker and more concentrated might help her to learn that no matter how bad things seem, you can always make them worse. Initially her new heavy cum diet makes no difference in her ability to keep it down, but you tell her to give it some time. Eventually she will learn to appreciate cum as the primary ingredient in everything she ingests. All of your future cumsluts do, sooner or later. Her pathetic tears reveal how @@.gold;helpless she feels@@, but they don't hide the @@.mediumorchid;streak of rebelliousness@@ that remains burning inside her.
 	<<set $activeSlave.devotion -= 3, $activeSlave.trust -= 3, $activeSlave.dietCum = 2>>
 	<</replace>>
 <</link>>
@@ -17000,8 +17000,8 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <br><<link "Suppress her gag reflex and double her cum intake for a week">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-    She is already on a very heavy cum-based diet, and there's only so much ejaculate you can force a slut to ingest before it negatively affects her health. However, as a temporary measure, you still have options. You instruct $assistantName to re-double the amount of ejaculate in <<print $activeSlave.slaveName>>'s diet for the week. You also have her closely monitored and injected with anti-nausea drugs to help her hold down her food. Although the idea of being forced to eat large amounts of human reproductive fluid still disgusts her, the week of having a super-concentrated cum-diet, along with the suppressed reflex to purge it has its effect. Knowing that you monitor and control every aspect of her life @@.hotpink;breaks down her resistance to your will@@, and by the end of the week, she is grateful that you return her to a more nutritionally viable regimen--even if its cum content is still overwhelmingly high. <<if $activeSlave.fetishKnown == 1>>@@.lightcoral;Her brain has now begun to accept the sexual perversity of her food as a turn on.@@<<else>>She is now able to eat and digest her prescribed diet without pharmacological assistance.<</if>>
-    <<set $activeSlave.devotion += 5, $activeSlave.fetish = "cumslut">>
+	She is already on a very heavy cum-based diet, and there's only so much ejaculate you can force a slut to ingest before it negatively affects her health. However, as a temporary measure, you still have options. You instruct $assistantName to re-double the amount of ejaculate in <<print $activeSlave.slaveName>>'s diet for the week. You also have her closely monitored and injected with anti-nausea drugs to help her hold down her food. Although the idea of being forced to eat large amounts of human reproductive fluid still disgusts her, the week of having a super-concentrated cum-diet, along with the suppressed reflex to purge it has its effect. Knowing that you monitor and control every aspect of her life @@.hotpink;breaks down her resistance to your will@@, and by the end of the week, she is grateful that you return her to a more nutritionally viable regimen--even if its cum content is still overwhelmingly high. <<if $activeSlave.fetishKnown == 1>>@@.lightcoral;Her brain has now begun to accept the sexual perversity of her food as a turn on.@@<<else>>She is now able to eat and digest her prescribed diet without pharmacological assistance.<</if>>
+	<<set $activeSlave.devotion += 5, $activeSlave.fetish = "cumslut">>
 	<<if $activeSlave.fetishKnown == 1>>
 		<<set $activeSlave.fetishStrength = 10>>
 	<</if>>
@@ -17012,8 +17012,8 @@ You tell her kindly that you understand, and that she'll be trained to address t
   <br><<link "Sentence her to a day in $arcadeName for cum injection therapy">>
   <<EventNameDelink $activeSlave>>
   <<replace "#result">>
-    You have $assistantName inform $activeSlave.slaveName of her unacceptable behavior and sentence her to a day in $arcadeName. She cries and pleads for mercy, and even begs to be allowed to suck a cock, any cock, so she can prove her newfound enthusiasm for cum, but you are unmerciful as two other slaves drag her off to serve her sentence. She is forced to wear a<<if $activeSlave.vagina != -1>> combined vaginal and<<else>>n<</if>> anal chastity belt so that the only hole available is her mouth, and is then confined in $arcadeName with her mouth spread open by a ring gag and her head sticking through the hole in the wall. A sign below her mouth proclaims her to be a "cum extraction tube" and she is used that way for the duration of her stay--a gruelling, 18-hour marathon of relentless throat fucking. <<if $activeSlave.sexualFlaw != "hates oral">>Her ordeal is so extreme that she now @@.red;hates oral sex@@<<else>>Her hatred of oral sex makes her ordeal that much more horrific<</if>>, but it @@.hotpink;breaks down her resistance@@. She now @@.gold;better understands the terrifying power you have over her@@, and the sheer amount of cum she is forced to ingest @@.red;negatively effects her health@@. Your other cum-fed slaves take note of what you do to girls who can't hold down their assigned diet.
-    <<set $activeSlave.devotion += 5, $activeSlave.trust -= 5, $activeSlave.health -= 5, $activeSlave.oralCount += 55, $activeSlave.publicCount += 55, $activeSlave.oralTotal += 55, $activeSlave.sexualFlaw = "hates oral", $activeSlave.fetish = "masochist">>
+	You have $assistantName inform $activeSlave.slaveName of her unacceptable behavior and sentence her to a day in $arcadeName. She cries and pleads for mercy, and even begs to be allowed to suck a cock, any cock, so she can prove her newfound enthusiasm for cum, but you are unmerciful as two other slaves drag her off to serve her sentence. She is forced to wear a<<if $activeSlave.vagina != -1>> combined vaginal and<<else>>n<</if>> anal chastity belt so that the only hole available is her mouth, and is then confined in $arcadeName with her mouth spread open by a ring gag and her head sticking through the hole in the wall. A sign below her mouth proclaims her to be a "cum extraction tube" and she is used that way for the duration of her stay--a gruelling, 18-hour marathon of relentless throat fucking. <<if $activeSlave.sexualFlaw != "hates oral">>Her ordeal is so extreme that she now @@.red;hates oral sex@@<<else>>Her hatred of oral sex makes her ordeal that much more horrific<</if>>, but it @@.hotpink;breaks down her resistance@@. She now @@.gold;better understands the terrifying power you have over her@@, and the sheer amount of cum she is forced to ingest @@.red;negatively effects her health@@. Your other cum-fed slaves take note of what you do to girls who can't hold down their assigned diet.
+	<<set $activeSlave.devotion += 5, $activeSlave.trust -= 5, $activeSlave.health -= 5, $activeSlave.oralCount += 55, $activeSlave.publicCount += 55, $activeSlave.oralTotal += 55, $activeSlave.sexualFlaw = "hates oral", $activeSlave.fetish = "masochist">>
   <</replace>>
 <</link>>
 <</if>>
@@ -17038,24 +17038,24 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	and she whimpers and begs for you to reconsider even as she's strapped onto the operating table.
 	<br><br>
 	By the time she wakes up from the anesthesia, you've already made the necessary alterations to her permanent records, which now clearly indicate that she was born <<print $arcologies[0].FSSubjugationistRace>>, and as such, can be rightfully regarded as the racially inferior fuck-animal she now is. Of course, your fellow slave owners and the slave market will be savvy enough to see through the alterations you've forced upon her, but when you make her available for a day of use in the public square, all your average citizen knows is that the girl they are fucking is simply a worthless $arcologies[0].FSSubjugationistRace slut who doesn't deserve much more than a stomach full of cum. The surgery @@.red;negatively effects her health@@, but by the end of a long day she'll likely never forget, she has gotten a crash course in what it means to be a $arcologies[0].FSSubjugationistRace slave in your arcology, and any evidence that she was born $activeSlave.race has been efficiently expunged from her records. <<if ($activeSlave.vagina == 0 || $activeSlave.anus == 0)>>@@.lime;All vestiges of her virginity have been unceremoniously stripped away@@.<</if>> The experience has @@.hotpink;broken down her resistance@@, and your willingness to go to such extremes to subjugate her @@.gold;greatly increases her fear of you@@.
-    <<set $activeSlave.devotion += 5, $activeSlave.trust -= 10, $activeSlave.analCount += 25, $activeSlave.oralCount += 35, $analTotal += 25, $oralTotal += 35, $activeSlave.anus++, $activeSlave.publicCount += 60>>
+	<<set $activeSlave.devotion += 5, $activeSlave.trust -= 10, $activeSlave.analCount += 25, $activeSlave.oralCount += 35, $analTotal += 25, $oralTotal += 35, $activeSlave.anus++, $activeSlave.publicCount += 60>>
 	<<if $activeSlave.vagina > -1>>
 		<<set $activeSlave.vagina++, $activeSlave.vaginalCount += 20, $vaginalTotal += 20, $activeSlave.publicCount += 20>>
 	<</if>>
 	<<= knockMeUp($activeSlave, 100, 2, -2, 1)>>
-    <<set $cash -= $surgeryCost>>
-    <<set $activeSlave.health -= 20>>
-    <<if ($arcologies[0].FSSubjugationistRace == "white")>>
+	<<set $cash -= $surgeryCost>>
+	<<set $activeSlave.health -= 20>>
+	<<if ($arcologies[0].FSSubjugationistRace == "white")>>
         <<set $activeSlave.race = "surgically altered to look white">>
         <<set $activeSlave.skin = either("pale", "light", "fair")>>
         <<set $activeSlave.eyeColor = either("blue", "brown", "green")>>
         <<set $activeSlave.hColor = either("black", "blonde", "red", "brown")>>
-    <<elseif ($arcologies[0].FSSubjugationistRace == "latina")>>
-        <<set $activeSlave.race = "surgically altered to look latina">>
-        <<set $activeSlave.skin = either("light olive", "brown", "dark brown", "tanned", "dark olive")>>
-        <<set $activeSlave.hColor = either("black", "black", "brown", "brown")>>
+	<<elseif ($arcologies[0].FSSubjugationistRace == "latina")>>
+		<<set $activeSlave.race = "surgically altered to look latina">>
+		<<set $activeSlave.skin = either("light olive", "brown", "dark brown", "tanned", "dark olive")>>
+		<<set $activeSlave.hColor = either("black", "black", "brown", "brown")>>
 	<<elseif ($arcologies[0].FSSubjugationistRace == "black")>>
-        <<set $activeSlave.race = "surgically altered to look black">>
+		<<set $activeSlave.race = "surgically altered to look black">>
 		<<set $activeSlave.skin = either("black", "brown", "dark brown")>>
 		<<set $activeSlave.hColor = either("black", "black", "black", "brown")>>
 	<<elseif ($arcologies[0].FSSubjugationistRace == "asian")>>
@@ -17095,12 +17095,13 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		<<set $activeSlave.skin = either("brown", "dark")>>
 		<<set $activeSlave.hColor = either("black")>>
 	<</if>>
-    <</replace>>
+	<</replace>>
 <</link>><<if ($activeSlave.anus == 0) || ($activeSlave.vagina == 0)>> //This option will take virginity and ignore chastity//<</if>>
 <br><<link "No surgery today, but give her something to think about">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You stroke <<print $activeSlave.slaveName>>'s $activeSlave.skin cheek and tell her that she has much more to lose than she realizes. You decide to give her a tour of the arcology to show her what you mean. You make sure to <<if canSee($activeSlave)>>point out<<else>>explain<</if>> everything that makes living in your arcology as a $arcologies[0].FSSubjugationistRace slut special.  <<if $dairy > 0>>
+	You stroke <<print $activeSlave.slaveName>>'s $activeSlave.skin cheek and tell her that she has much more to lose than she realizes. You decide to give her a tour of the arcology to show her what you mean. You make sure to <<if canSee($activeSlave)>>point out<<else>>explain<</if>> everything that makes living in your arcology as a $arcologies[0].FSSubjugationistRace slut special.
+	<<if $dairy > 0>>
 		There are the specially calibrated "<<print $arcologies[0].FSSubjugationistRace>> only" industrial human milking machines in $dairyName which have been set for maximum milking efficiency, disregarding any need for slave comfort.
 	<<else>>
 		There are the segregated milking stalls, where only the dirtiest and most dilapidated machines are reserved for filthy $arcologies[0].FSSubjugationistRace sluts.
@@ -17129,7 +17130,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<</if>>
 	<br><br>
 	At first $activeSlave.slaveName is confused as to why you are showing her these things, but you soon make your point clear. You explain that if she doesn't start accepting her role, you can easily alter her appearance and force her to accept a much different role instead. You see her <<if $activeSlave.intelligence < 0>> stupid <<if canSee($activeSlave)>>eyes<<else>>face<</if>> finally start to show signs of understanding<<else>>intelligent <<if canSee($activeSlave)>>eyes<<else>>face<</if>> quickly realize what you are talking about<</if>> and she starts to whimper helplessly, begging you not to turn her into a $arcologies[0].FSSubjugationistRace sub-human. By the end of the tour she better realizes exactly what it means to be a slave. She is starting to understand the @@.hotpink;power you have over her@@, and @@.gold;she fears you even more because of it.@@
-    <<set $activeSlave.devotion += 5, $activeSlave.trust -= 10>>
+	<<set $activeSlave.devotion += 5, $activeSlave.trust -= 10>>
 	<</replace>>
 <</link>>
 <br><<link "Discipline her normally. Artificial racial subjugation is going too far">>
@@ -17149,7 +17150,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<else>>
 		under a less forgiving owner.
 	<</if>>
-    <<set $activeSlave.devotion += 5, $activeSlave.trust -= 5>>
+	<<set $activeSlave.devotion += 5, $activeSlave.trust -= 5>>
   <</replace>>
 <</link>>
 
@@ -17158,21 +17159,21 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <<link "Give the poor girl a break and take her off her cum diet so she can safely get to a healthier weight">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-    You silently appraise <<print $activeSlave.slaveName>>'s desperate face and lean forward in your chair to check your terminal. You confirm that
+	You silently appraise <<print $activeSlave.slaveName>>'s desperate face and lean forward in your chair to check your terminal. You confirm that
 	<<if $activeSlave.dietCum == 1>>
 		her food is supplemented with cum for flavor.
 	<<else>>
 		she is being fed significant amounts of ejaculate.
 	<</if>>
 	While her <<if $activeSlave.dietCum == 2>>extreme <</if>>diet is still engineered to <<if $activeSlave.dietCum == 2>>barely <</if>> provide the nutrition she needs, if she can't hold the stuff down, she can't gain weight<<if $activeSlave.pregKnown == 1 && $activeSlave.preg > 10>>, even more so with her growing child<<if $activeSlave.pregType > 1>>ren<</if>> taking whatever nutrients <<if $activeSlave.pregType > 1>>they<<else>>it<</if>> can<</if>>. With a few taps on the keyboard you change her orders so that she will be fed a much more nutritionally rich diet that is free of ejaculate. However, you make sure to warn her that $assistantName will be monitoring her, and you may change your mind once she reaches a more attractive weight. She thanks you profusely, <<if $activeSlave.vagina != 0>>even attempting to offer her body for use in gratitude,<</if>> but you simply send her away. You find yourself concerned that you are becoming soft by allowing slaves to dictate what they will and won't eat, but your benevolent decision has already had a @@.hotpink;positive effect on her attitude@@. She @@.mediumaquamarine;trusts you a little more@@ too.
-    <<set $activeSlave.trust += 2, $activeSlave.devotion += 2, $activeSlave.dietCum = 0>>
+	<<set $activeSlave.trust += 2, $activeSlave.devotion += 2, $activeSlave.dietCum = 0>>
 	<</replace>>
 <</link>>
 <<if canDoAnal($activeSlave)>>
 <br><<link "Give the emaciated slut your answer in the form of a rough butt-fuck">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-    You stand up behind your desk. She flinches, but holds her ground, her lip quivering slightly. You slowly walk toward her, appraising her <<if $activeSlave.belly >= 100>>bloated<<else>>smooth<</if>>, skinny body, touching her shoulder as you disappear behind her. She starts to cry as you
+	You stand up behind your desk. She flinches, but holds her ground, her lip quivering slightly. You slowly walk toward her, appraising her <<if $activeSlave.belly >= 100>>bloated<<else>>smooth<</if>>, skinny body, touching her shoulder as you disappear behind her. She starts to cry as you
 	<<if $PC.dick == 0>>
 		pull a massive rubber dong attachment off the wall and hook it to your strap-on.
 	<<else>>
@@ -17199,7 +17200,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	proceeding to her next assignment.
 	<br><br>
 	She's learned a valuable lesson about what it truly means to be a slave today, and it's one she @@.orchid;won't soon forget@@.
-    <<set $activeSlave.devotion -= 5, $activeSlave.trust -= 5>>
+	<<set $activeSlave.devotion -= 5, $activeSlave.trust -= 5>>
 	<<if ($activeSlave.anus == 0)>>
 		<<set $activeSlave.anus += 1>>
 	<</if>>
@@ -17207,13 +17208,13 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<if $activeSlave.dietCum == 1>>
 		<<set $activeSlave.dietCum = 2, $activeSlave.dietMilk = 0>>
 	<</if>>
-    <</replace>>
+	<</replace>>
 <</link>><<if ($activeSlave.anus == 0) || ($activeSlave.dietMilk == 1)>> //This option will//<<if $activeSlave.anus == 0>> //take anal virginity//<<if $activeSlave.dietMilk == 1>>// and//<</if>><</if>><<if $activeSlave.dietMilk == 1>>// remove milk from her diet//<</if>><</if>>
 <</if>>
 <br><<link "Use aphrodisiacs and positive reinforcement to make her cum diet more palatable">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-    You do a quick check at your terminal. She is indeed being fed <<if $activeSlave.dietCum == 1>> food that is supplemented with cum for flavor.<<else>>large amounts of human ejaculate.<</if>>  You tell her that it can't be helped. When you assign a slave her diet, it's for a reason, and in <<print $activeSlave.slaveName>>'s case, you are using her diet to make her into a better whore. By the look on her distressed face, you can tell she doesn't understand or appreciate your perspective, but you tell her you have just the thing to help change her outlook.
+	You do a quick check at your terminal. She is indeed being fed <<if $activeSlave.dietCum == 1>> food that is supplemented with cum for flavor.<<else>>large amounts of human ejaculate.<</if>> You tell her that it can't be helped. When you assign a slave her diet, it's for a reason, and in <<print $activeSlave.slaveName>>'s case, you are using her diet to make her into a better whore. By the look on her distressed face, you can tell she doesn't understand or appreciate your perspective, but you tell her you have just the thing to help change her outlook.
 	<br><br>
 	You pull out a heavy dose of aphrodisiacs from the drawer in your desk. They are expensive, but powerful drugs that can be used in a brute force way to manipulate the sexual urges and tastes of even the most frigid sluts. The mild dose included in every slave's food is usually enough to affect a slow, inevitable change in attitude for resistant slaves, but sometimes a more acute dose can be an amusing way to turn disgust into dependence. $activeSlave.slaveName shivers as you reassure her and inject her <<if $activeSlave.weight < -80>>bony <<else>>tiny <</if>>body with the powerful drugs. You know they are working when she begins to perspire a little, and
 	<<if $activeSlave.vagina > -1>>
@@ -17224,8 +17225,8 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		her dick starts to come to attention.
 	<</if>>
 	You then book her to be the main attraction at a corporate office party that afternoon, where she will be the target of a blow-bang and bukkake. You see that she's dosed heavily with the drugs every day this week, and then book the rest of her afternoons for similar duties, making sure she still tends to her regular assignments as well. In the meantime, you also instruct the kitchen that she is to eat as much cum-based food from the dispensers as she can suck down in order to fuel up for these exhausting escapades. By the end of the week, the aphrodisiacs and her slide into an inescapable routine of cum immersion have done their job, and she has begun to @@.lightcoral;view cum as an inevitable component of her daily life@@. She also manages to @@.green;gain a little weight@@. Thanks to your manipulation of her Pavlovian responses through extreme drug therapy, her @@.red;health has suffered a bit@@, but she is also @@.hotpink;more dependent on you@@ thanks to her <<if $activeSlave.addict == 0>>@@.cyan;new@@<<else>>@@.cyan;developing@@<</if>> @@.cyan;addiction to aphrodisiacs.@@
-    <<set $activeSlave.devotion += 5, $activeSlave.health -= 10, $activeSlave.weight += 10, $activeSlave.fetish = "cumslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 10, $activeSlave.oralCount += 50, $oralTotal += 50, $activeSlave.publicCount += 50, $activeSlave.addict += 1>>
-    <</replace>>
+	<<set $activeSlave.devotion += 5, $activeSlave.health -= 10, $activeSlave.weight += 10, $activeSlave.fetish = "cumslut", $activeSlave.fetishKnown = 1, $activeSlave.fetishStrength = 10, $activeSlave.oralCount += 50, $oralTotal += 50, $activeSlave.publicCount += 50, $activeSlave.addict += 1>>
+	<</replace>>
 <</link>>
 
 <<case "transition anxiety">>
@@ -17648,10 +17649,10 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		<</if>>
 		You talk through the $activeSlave.slaveName's medical condition with her, and give her a <<if $PC.medicine >= 100>>personal examination with the speed and accuracy of years of general practice<<else>>thorough exam<</if>>. Once this is done, you give $assistantName technical directions to make minor changes to $activeSlave.slaveName's drug regime, designed to make her @@.lime;breasts grow just slightly faster.@@ The effect is minimal, but the point is made. She's still not happy to be transformed into a big-breasted sex slave, but she's relieved that was her only punishment for expressing her unhappiness about it.
 		<<if $activeSlave.inducedNCS == 0>>
-                        <<set $activeSlave.boobs += 100>>
-                <<else>>
-                        <<set $activeSlave.boobs += 50>>
-                <</if>>
+						<<set $activeSlave.boobs += 100>>
+				<<else>>
+						<<set $activeSlave.boobs += 50>>
+				<</if>>
 	<</replace>>
 <</link>>
 <<if $activeSlave.lactation < 2>>
@@ -19185,7 +19186,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 <br><<link "Show her that short girls are easier to abuse">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	You inform her that you find shorter slaves easier to abuse, smiling widely as an expression of horror spreads across her face. This expression soon changes to one of shock and pain as you slap her open-handed across the face, the sheer force of the strike sending her reeling. A few slaps later and you have $activeSlave.slaveName on all fours begging for mercy as you punish the cheeks of her ass with spank after spank.  When you suddenly shove <<if $PC.dick == 0>>a dildo<<else>>your cock<</if>> up her ass she spasms so harshly from the pain that she reflexively tries to get away, only to be subdued by the weight and strength of your larger, more powerful form. For the next ten minutes, she gets beaten and choked if she offers even token resistance to the brutal anal rape. Soon, tears run down the short length of her body as she shakes from the force of each excessive thrust into her anus. The next time you decide to buttfuck her, she's @@.gold;terrified into compliance@@ by the knowledge of how little physical resistance she can muster against you.
+	You inform her that you find shorter slaves easier to abuse, smiling widely as an expression of horror spreads across her face. This expression soon changes to one of shock and pain as you slap her open-handed across the face, the sheer force of the strike sending her reeling. A few slaps later and you have $activeSlave.slaveName on all fours begging for mercy as you punish the cheeks of her ass with spank after spank. When you suddenly shove <<if $PC.dick == 0>>a dildo<<else>>your cock<</if>> up her ass she spasms so harshly from the pain that she reflexively tries to get away, only to be subdued by the weight and strength of your larger, more powerful form. For the next ten minutes, she gets beaten and choked if she offers even token resistance to the brutal anal rape. Soon, tears run down the short length of her body as she shakes from the force of each excessive thrust into her anus. The next time you decide to buttfuck her, she's @@.gold;terrified into compliance@@ by the knowledge of how little physical resistance she can muster against you.
 	<<set $activeSlave.trust -= 5>>
 	<<= AnalVCheck()>>
 	<</replace>>
@@ -19195,7 +19196,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<br><<link "Show her that short girls are amusing in the arcade">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-		You inform $activeSlave.slaveName that short girls like her are delightfully amusing when immured in the arcade. Magnanimous as you are, you have two other slaves drag her off to be installed in the arcade for a day, so that she too may see the humor in having short girls serve in the arcade. Though $arcadeName has arcade pens to match any height of slave, you have $activeSlave.slaveName confined in a pen built for a much taller slave. Although her head and neck protrude from one side of the pen without issue, she is too short for her ass to fill the other opening. As a result, she must use the tips of her toes maintain an unsteady grip on the rear opening, forcing her to maintain an extremely taxing stretch just to keep her body held aloft within the pen. Costumers are unable to fuck her holes but readily delight in watching her squirm to keep her body extended and horizontal, even with hard cocks brutally fucking her face. Somewhere in the gruelling, 18-hour marathon of relentless throat fucking, her precarious position slips and her lower half tumbles into the interior of the pen proper. Until an attendant rescues her, her neck is held crooked at an unnatural angle by her restraints, as the rest of her body dangles beneath it. Her ordeal forces her to accept that a short girl's place is as an @@.hotpink;amusing arcade hole@@.  Though she can't find the humor@@.gold;in such a terrible plight@@. Furthermore, her intense exertions during her stay @@.red;negatively effects her health@@. Your other slaves take note of what you do to short girls who ask questions about their place in your penthouse.
+		You inform $activeSlave.slaveName that short girls like her are delightfully amusing when immured in the arcade. Magnanimous as you are, you have two other slaves drag her off to be installed in the arcade for a day, so that she too may see the humor in having short girls serve in the arcade. Though $arcadeName has arcade pens to match any height of slave, you have $activeSlave.slaveName confined in a pen built for a much taller slave. Although her head and neck protrude from one side of the pen without issue, she is too short for her ass to fill the other opening. As a result, she must use the tips of her toes maintain an unsteady grip on the rear opening, forcing her to maintain an extremely taxing stretch just to keep her body held aloft within the pen. Costumers are unable to fuck her holes but readily delight in watching her squirm to keep her body extended and horizontal, even with hard cocks brutally fucking her face. Somewhere in the gruelling, 18-hour marathon of relentless throat fucking, her precarious position slips and her lower half tumbles into the interior of the pen proper. Until an attendant rescues her, her neck is held crooked at an unnatural angle by her restraints, as the rest of her body dangles beneath it. Her ordeal forces her to accept that a short girl's place is as an @@.hotpink;amusing arcade hole@@. Though she can't find the humor@@.gold;in such a terrible plight@@. Furthermore, her intense exertions during her stay @@.red;negatively effects her health@@. Your other slaves take note of what you do to short girls who ask questions about their place in your penthouse.
 		<<set $activeSlave.devotion += 5, $activeSlave.trust -= 5, $activeSlave.health -= 5, $activeSlave.oralCount += 55, $activeSlave.oralTotal += 55>>
 		<<set $activeSlave.publicCount += 55>>
 	<</replace>>
@@ -19390,7 +19391,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		<<set $activeSlave.devotion += 2, $activeSlave.trust -= 2>>
 	<</if>>
 	<</replace>>
-<</link>><<if $activeSlave.belly < 300000 && canDoVaginal($activeSlave) && ($activeSlave.vagina == 0)>>//This option will take virginity//<<elseif $activeSlave.belly < 300000 &&  !canDoVaginal($activeSlave) && ($activeSlave.anus == 0)>> //This option will take anal virginity//<</if>>
+<</link>><<if $activeSlave.belly < 300000 && canDoVaginal($activeSlave) && ($activeSlave.vagina == 0)>>//This option will take virginity//<<elseif $activeSlave.belly < 300000 && !canDoVaginal($activeSlave) && ($activeSlave.anus == 0)>> //This option will take anal virginity//<</if>>
 <</if>>
 
 <<case "implant inspection">>
diff --git a/src/uncategorized/pMercenaries.tw b/src/uncategorized/pMercenaries.tw
index 64900f48b82..b66ed740baa 100644
--- a/src/uncategorized/pMercenaries.tw
+++ b/src/uncategorized/pMercenaries.tw
@@ -50,4 +50,3 @@ The budgetary difficulty many old world countries are in has resulted in unemplo
 	<</replace>>
 <</link>>
 </span>
-
diff --git a/src/uncategorized/pRivalryVictory.tw b/src/uncategorized/pRivalryVictory.tw
index bcffa64a1fc..71a7954aaa3 100644
--- a/src/uncategorized/pRivalryVictory.tw
+++ b/src/uncategorized/pRivalryVictory.tw
@@ -1,6 +1,6 @@
 :: P rivalry victory [nobr]
 
-<<set $nextButton = " ", $nextLink = "Random Nonindividual Event",  $rivalOwner = 0, $rivalryPower = 0, _num = random(1,99)>> /* hide button until user makes a selection */
+<<set $nextButton = " ", $nextLink = "Random Nonindividual Event", $rivalOwner = 0, $rivalryPower = 0, _num = random(1,99)>> /* hide button until user makes a selection */
 <<set $rivalRace = 0>>
 
 For the first time, you receive a direct call from your rival. You pictured the moment as feeling grander than this, sitting at your desk as usual looking into <<if _num < $seeDicks>>his<<else>>her<</if>> downcast face. You're the victor in a new form of warfare in which bankruptcy has replaced surrender. If the world survives in its present state, you may one day be remembered as an innovator in the evolution of (nearly) bloodless war. Today, your reputation has @@.green;greatly improved.@@ But today all you have that's tangible is a view of a still-dignified arcology owner, self-possessed despite the situation.
@@ -90,7 +90,7 @@ For the first time, you receive a direct call from your rival. You pictured the
 			<<break>>
 		<</if>>
 	<</for>>
-    <</replace>>
+	<</replace>>
 <</link>>
 <</if>>
 <br><<link "Refuse, and place a bounty of <<print cashFormat(50000)>> on your rival's enslavement">>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 29280a6e413..664f382aa0c 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -13191,34 +13191,34 @@ $He has
 	<</if>>
 <</if>>
 /*
-**      This section replaces the age/therapy texts, giving more details for the NCS condition.
+** This section replaces the age/therapy texts, giving more details for the NCS condition.
 */
 <<if $activeSlave.inducedNCS == 1>>
-        <<if ($activeSlave.vagina < 0) && ($activeSlave.dick <= 0)>><<set _bodyNCS = 'childlike'>>
-        <<elseif ($activeSlave.vagina < 0) && ($activeSlave.dick > 0)>><<set _bodyNCS = 'shota'>>
-        <<elseif ($activeSlave.vagina > 0) && ($activeSlave.dick <= 0)>><<set _bodyNCS = 'loli'>>
-        <<else>><<set _bodyNCS = 'loli/shota'>>
-        <</if>>
-
-        $He appears to be $activeSlave.visualAge years old
-        <<if $activeSlave.visualAge <= 8>>
-                and $he has induced @@.orange;NCS,@@ and will alway have a <<= _bodyNCS>> body, no matter how long $he lives.
-        <<elseif ($activeSlave.visualAge < 13)>>
-                and $he has induced @@.orange;NCS@@ and will have a <<= _bodyNCS>> body for the rest of $his life.
-        <<elseif ($activeSlave.visualAge < 20)>>
-                and $he still has a teen body for now, but with $his @@.orange;NCS,@@ $he will eventually regress in age to look like a little girl again.
-        <<else>>
-                and $he still has the body of an adult, but $his @@.orange;NCS@@ has
-                <<if ($activeSlave.physicalAge - $activeSlave.visualAge  <= 5)>>
-                        not really begun to youthen $his appearance yet.
-                <<elseif ($activeSlave.physicalAge - $activeSlave.visualAge  <= 10)>>
-                        clearly been at work on $him, making $his appear younger.
-                <<elseif ($activeSlave.physicalAge -$activeSlave.visualAge  <= 20)>>
-                        obviously helped take more than a decade off of $his age.
-                <<else>>
-                        intensely youthened $him.
-                <</if>>
-        <</if>>
+		<<if ($activeSlave.vagina < 0) && ($activeSlave.dick <= 0)>><<set _bodyNCS = 'childlike'>>
+		<<elseif ($activeSlave.vagina < 0) && ($activeSlave.dick > 0)>><<set _bodyNCS = 'shota'>>
+		<<elseif ($activeSlave.vagina > 0) && ($activeSlave.dick <= 0)>><<set _bodyNCS = 'loli'>>
+		<<else>><<set _bodyNCS = 'loli/shota'>>
+		<</if>>
+	
+		$He appears to be $activeSlave.visualAge years old
+		<<if $activeSlave.visualAge <= 8>>
+				and $he has induced @@.orange;NCS,@@ and will alway have a <<= _bodyNCS>> body, no matter how long $he lives.
+		<<elseif ($activeSlave.visualAge < 13)>>
+				and $he has induced @@.orange;NCS@@ and will have a <<= _bodyNCS>> body for the rest of $his life.
+		<<elseif ($activeSlave.visualAge < 20)>>
+				and $he still has a teen body for now, but with $his @@.orange;NCS,@@ $he will eventually regress in age to look like a little girl again.
+		<<else>>
+				and $he still has the body of an adult, but $his @@.orange;NCS@@ has
+				<<if ($activeSlave.physicalAge - $activeSlave.visualAge  <= 5)>>
+						not really begun to youthen $his appearance yet.
+				<<elseif ($activeSlave.physicalAge - $activeSlave.visualAge  <= 10)>>
+						clearly been at work on $him, making $his appear younger.
+				<<elseif ($activeSlave.physicalAge -$activeSlave.visualAge  <= 20)>>
+						obviously helped take more than a decade off of $his age.
+				<<else>>
+						intensely youthened $him.
+				<</if>>
+		<</if>>
 <<elseif $activeSlave.physicalAge != $activeSlave.visualAge>>
 	<<if $activeSlave.visualAge <= $activeSlave.physicalAge-20 || $activeSlave.visualAge >= $activeSlave.physicalAge+20>>
 		$He has undergone radical age therapy that makes $him look
diff --git a/src/utility/optionsWidgets.tw b/src/utility/optionsWidgets.tw
index 1286b36e399..90832985afe 100644
--- a/src/utility/optionsWidgets.tw
+++ b/src/utility/optionsWidgets.tw
@@ -2,7 +2,7 @@
 
 /%
   Call as <<OptionLineSeparations>>
-    Should be placed in a <span> with id = "OptionLineSeparations"
+	Should be placed in a <span> with id = "OptionLineSeparations"
 %/
 <<widget "OptionLineSeparations">>
 Line separations are 
@@ -28,7 +28,7 @@ Line separations are
 
 /%
   Call as <<OptionSortBy>>
-    Should be placed in a <span> with id = "OptionSortBy"
+	Should be placed in a <span> with id = "OptionSortBy"
 %/
 <<widget "OptionSortBy">>
 <<if $sortSlavesBy == "name">>
@@ -100,7 +100,7 @@ Line separations are
 
 /%
   Call as <<OptionSortOrder>>
-    Should be placed in a <span> with id = "OptionSortOrder"
+	Should be placed in a <span> with id = "OptionSortOrder"
 %/
 <<widget "OptionSortOrder">>
 <<if $sortSlavesOrder == "ascending">>
@@ -124,7 +124,7 @@ Line separations are
 
 /%
   Call as <<OptionSortMain>>
-    Should be placed in a <span> with id = "OptionSortMain"
+	Should be placed in a <span> with id = "OptionSortMain"
 %/
 <<widget "OptionSortMain">>
 <<if $sortSlavesMain == 0>>
@@ -166,7 +166,7 @@ Line separations are
 
 /%
   Call as <<OptionRulesAssistantMain>>
-    Should be placed in a <span> with id = "OptionRulesAssistantMain"
+	Should be placed in a <span> with id = "OptionRulesAssistantMain"
 %/
 <<widget "OptionRulesAssistantMain">>
 <<if $rulesAssistantMain == 0>>
@@ -191,7 +191,7 @@ Line separations are
 
 /%
   Call as <<OptionDisplayAssignments>>
-    Should be placed in a <span> with id = "OptionDisplayAssignments"
+	Should be placed in a <span> with id = "OptionDisplayAssignments"
 %/
 <<widget "OptionDisplayAssignments">>
 Main menu assignment shortcuts are
@@ -217,7 +217,7 @@ Main menu assignment shortcuts are
 
 /%
   Call as <<OptionSummaryStats>>
-    Should be placed in a <span> with id = "OptionSummaryStats"
+	Should be placed in a <span> with id = "OptionSummaryStats"
 %/
 <<widget "OptionSummaryStats">>
 Granular slave stat numbers are
@@ -242,7 +242,7 @@ Granular slave stat numbers are
 
 /%
   Call as <<OptionAbbreviateDevotion>>
-    Should be placed in a <span> with id = "OptionAbbreviateDevotion"
+	Should be placed in a <span> with id = "OptionAbbreviateDevotion"
 %/
 <<widget "OptionAbbreviateDevotion">>
 Mental stats are
@@ -283,7 +283,7 @@ Mental stats are
 
 /%
   Call as <<OptionAbbreviateRules>>
-    Should be placed in a <span> with id = "OptionAbbreviateRules"
+	Should be placed in a <span> with id = "OptionAbbreviateRules"
 %/
 <<widget "OptionAbbreviateRules">>
 Rules are
@@ -324,7 +324,7 @@ Rules are
 
 /%
   Call as <<OptionAbbreviateHealth>>
-    Should be placed in a <span> with id = "OptionAbbreviateHealth"
+	Should be placed in a <span> with id = "OptionAbbreviateHealth"
 %/
 <<widget "OptionAbbreviateHealth">>
 Health is
@@ -365,7 +365,7 @@ Health is
 
 /%
   Call as <<OptionAbbreviateDiet>>
-    Should be placed in a <span> with id = "OptionAbbreviateDiet"
+	Should be placed in a <span> with id = "OptionAbbreviateDiet"
 %/
 <<widget "OptionAbbreviateDiet">>
 Diet and weight are
@@ -406,7 +406,7 @@ Diet and weight are
 
 /%
   Call as <<OptionAbbreviateDrugs>>
-    Should be placed in a <span> with id = "OptionAbbreviateDrugs"
+	Should be placed in a <span> with id = "OptionAbbreviateDrugs"
 %/
 <<widget "OptionAbbreviateDrugs">>
 Drugs and addiction are
@@ -447,7 +447,7 @@ Drugs and addiction are
 
 /%
   Call as <<OptionAbbreviateGenitalia>>
-    Should be placed in a <span> with id = "OptionAbbreviateGenitalia"
+	Should be placed in a <span> with id = "OptionAbbreviateGenitalia"
 %/
 <<widget "OptionAbbreviateGenitalia">>
 Genitalia are
@@ -488,7 +488,7 @@ Genitalia are
 
 /%
   Call as <<OptionAbbreviatePhysicals>>
-    Should be placed in a <span> with id = "OptionAbbreviatePhysicals"
+	Should be placed in a <span> with id = "OptionAbbreviatePhysicals"
 %/
 <<widget "OptionAbbreviatePhysicals">>
 Physical traits are
@@ -529,7 +529,7 @@ Physical traits are
 
 /%
   Call as <<OptionAbbreviateSkills>>
-    Should be placed in a <span> with id = "OptionAbbreviateSkills"
+	Should be placed in a <span> with id = "OptionAbbreviateSkills"
 %/
 <<widget "OptionAbbreviateSkills">>
 Skills are
@@ -570,7 +570,7 @@ Skills are
 
 /%
   Call as <<OptionAbbreviateMental>>
-    Should be placed in a <span> with id = "OptionAbbreviateMental"
+	Should be placed in a <span> with id = "OptionAbbreviateMental"
 %/
 <<widget "OptionAbbreviateMental">>
 Mental attributes are
@@ -611,7 +611,7 @@ Mental attributes are
 
 /%
   Call as <<OptionAbbreviateNationality>>
-    Should be placed in a <span> with id = "OptionAbbreviateNationality"
+	Should be placed in a <span> with id = "OptionAbbreviateNationality"
 %/
 <<widget "OptionAbbreviateNationality">>
 Nationality is
@@ -652,7 +652,7 @@ Nationality is
 
 /%
   Call as <<OptionAbbreviateRace>>
-    Should be placed in a <span> with id = "OptionAbbreviateRace"
+	Should be placed in a <span> with id = "OptionAbbreviateRace"
 %/
 <<widget "OptionAbbreviateRace">>
 Race is
@@ -693,7 +693,7 @@ Race is
 
 /%
   Call as <<OptionAbbreviateClothes>>
-    Should be placed in a <span> with id = "OptionAbbreviateClothes"
+	Should be placed in a <span> with id = "OptionAbbreviateClothes"
 %/
 <<widget "OptionAbbreviateClothes">>
 Clothes are
@@ -718,7 +718,7 @@ Clothes are
 
 /%
   Call as <<OptionAbbreviateOrigins>>
-    Should be placed in a <span> with id = "OptionAbbreviateOrigins"
+	Should be placed in a <span> with id = "OptionAbbreviateOrigins"
 %/
 <<widget "OptionAbbreviateOrigins">>
 Origins are
@@ -743,7 +743,7 @@ Origins are
 
 /%
   Call as <<OptionAbbreviateRulesets>>
-    Should be placed in a <span> with id = "OptionAbbreviateRulesets"
+	Should be placed in a <span> with id = "OptionAbbreviateRulesets"
 %/
 <<widget "OptionAbbreviateRulesets">>
 Rules Assistant rulesets are
@@ -768,7 +768,7 @@ Rules Assistant rulesets are
 
 /%
   Call as <<OptionAbbreviateSidebar>>
-    Should be placed in a <span> with id = "OptionAbbreviateSidebar"
+	Should be placed in a <span> with id = "OptionAbbreviateSidebar"
 %/
 <<widget "OptionAbbreviateSidebar">>
 Facilities in the sidebar are
-- 
GitLab


From e5692c058e43daca385be5864c0749f98669960e Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sun, 29 Jul 2018 19:21:41 -0400
Subject: [PATCH 157/189] fixes

---
 src/pregmod/saPorn.tw | 210 +++++++++++++++++++++---------------------
 1 file changed, 105 insertions(+), 105 deletions(-)

diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index a8927bccf0d..281415ae38b 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -81,11 +81,11 @@
 		<<if $slaves[$i].pornFocus == "neglectful" || $slaves[$i].pornFameType == "orgasm denial">>
 			$possessiveCap lack of interest in getting off <<print $object>>self, even when at the verge of climax, makes $object a hit with viewers that enjoy orgasm denial.
 			<<if $slaves[$i].pornTypeNeglectful > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeNeglectful < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
@@ -108,11 +108,11 @@
 		<<if $slaves[$i].pornFocus == "cum addict" || $slaves[$i].pornFameType == "bukkake">>
 			$possessiveCap complete obsession with cum makes $object a hit with viewers that enjoy bukkake and cum drinking.
 			<<if $slaves[$i].pornTypeCumAddict > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCumAddict < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
@@ -135,11 +135,11 @@
 		<<if $slaves[$i].sexualFlaw == "anal addict" || $slaves[$i].pornFameType == "anal addiction">>
 			$possessiveCap complete obsession with taking things up $possessive ass makes $object a hit with viewers that enjoy hardcore anal.
 			<<if $slaves[$i].pornTypeAnalAddict > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAnalAddict < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
@@ -162,11 +162,11 @@
 		<<if $slaves[$i].pornFocus == "attention whore" || $slaves[$i].pornFameType == "exhibition">>
 			$possessiveCap complete obsession with being the center of attention makes $object a hit with viewers that savor $possessive frequent exhibitionism.
 			<<if $slaves[$i].pornTypeAttentionWhore > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAttentionWhore < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
@@ -189,11 +189,11 @@
 		<<if $slaves[$i].pornFocus == "breast growth" || $slaves[$i].pornFameType == "breast expansion">>
 			$possessiveCap complete obsession with the ever increasing size of $possessive tits makes $object a hit with viewers that enjoy enormous knockers and breast expansion.
 			<<if $slaves[$i].pornTypeBreastGrowth > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBreastGrowth < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
@@ -216,11 +216,11 @@
 		<<if $slaves[$i].pornFocus == "abusive" || $slaves[$i].pornFameType == "abuse">>
 			$possessiveCap wanton enjoyment of pleasure through force amuses viewers that enjoy rape and abuse.
 			<<if $slaves[$i].pornTypeAbusive > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAbusive < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
@@ -243,11 +243,11 @@
 		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "sexual torture">>
 			$possessiveCap sexual appetite of other's suffering makes $object a hit with viewers that enjoy sadism and violence.
 			<<if $slaves[$i].pornTypeMalicious > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeMalicious < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
@@ -270,11 +270,11 @@
 		<<if $slaves[$i].pornFocus == "self hating" || $slaves[$i].pornFameType == "self hating">>
 			$possessiveCap complete disregard for $possessive own wellbeing makes $object a hit with viewers that enjoy watching $object suffer.
 			<<if $slaves[$i].pornTypeSelfHating > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSelfHating < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
@@ -297,11 +297,11 @@
 		<<if $slaves[$i].pornFocus == "breeder" || $slaves[$i].pornFameType == "breeder">>
 			$possessiveCap complete obsession with getting and staying pregnant makes $object a hit with viewers with all manner of pregnancy fetish, but particularly resonates with those as focused on it as $pronoun is.
 			<<if $slaves[$i].pornTypeBreeder > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBreeder < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
@@ -326,11 +326,11 @@
 		<<if $slaves[$i].pornFocus == "submissive" || $slaves[$i].pornFameType == "submissive">>
 			With $possessive submissive streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeSub > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSub < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
@@ -353,11 +353,11 @@
 		<<if $slaves[$i].pornFocus == "cumslut" || $slaves[$i].pornFameType == "cum">>
 			With $possessive taste for cum, $pronoun has a clear advantage when it comes to ejaculate-based smut.
 			<<if $slaves[$i].pornTypeCumSlut > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCumSlut < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
@@ -380,11 +380,11 @@
 		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "buttslut">>
 			With $possessive fetish for asses, $pronoun finds in the company of viewers that love rear ends.
 			<<if $slaves[$i].pornTypeAnal > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAnal < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Buttslut: (_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
@@ -407,11 +407,11 @@
 		<<if $slaves[$i].pornFocus == "humiliation" || $slaves[$i].pornFameType == "humiliating">>
 			With $possessive fetish for humiliation, $pronoun has a clear advantage when it comes to demeaning smut.
 			<<if $slaves[$i].pornTypeHumiliation > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeHumiliation < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
@@ -434,11 +434,11 @@
 		<<if $slaves[$i].pornFocus == "boobs" || $slaves[$i].pornFameType == "breast">>
 			With $possessive fetish for tits, $pronoun has a clear advantage when it comes to breast focused smut.
 			<<if $slaves[$i].pornTypeBoobs > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBoobs < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
@@ -461,11 +461,11 @@
 		<<if $slaves[$i].pornFocus == "dom" || $slaves[$i].pornFameType == "dominant">>
 			With $possessive dominant streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeDom > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeDom < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
@@ -488,11 +488,11 @@
 		<<if $slaves[$i].pornFocus == "sadist" || $slaves[$i].pornFameType == "sadistic">>
 			With $possessive sadistic streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeSadist > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSadist < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
@@ -515,11 +515,11 @@
 		<<if $slaves[$i].pornFocus == "masochist" || $slaves[$i].pornFameType == "masochistic">>
 			With $possessive masochistic streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeMasochist > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeMasochist < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
@@ -542,11 +542,11 @@
 		<<if $slaves[$i].pornFocus == "pregnancy" || $slaves[$i].pornFameType == "pregnancy fetish">>
 			With $possessive fetish for all things pregnancy, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypePregnancy > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePregnancy < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
@@ -572,11 +572,11 @@
 		<<if $slaves[$i].pornFocus == "fuckdoll" || $slaves[$i].pornFameType == "fuckdoll">>
 			$possessiveCap latex encased body attracts a variety of viewers with tastes ranging from bondage to dolls.
 			<<if $slaves[$i].pornTypeFuckdoll > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeFuckdoll < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
@@ -599,11 +599,11 @@
 		<<if $slaves[$i].pornFocus == "rape" || $slaves[$i].pornFameType == "rape">>
 			$pronounCap is too unbroken for consensual sex, but $possessive viewers wouldn't want it any other way.
 			<<if $slaves[$i].pornTypeRape > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeRape < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
@@ -626,11 +626,11 @@
 		<<if $slaves[$i].pornFocus == "preggo" || $slaves[$i].pornFameType == "preggo">>
 			$possessiveCap gravid swell may be a turn off to some, but the maiesiophiliacs love it.
 			<<if $slaves[$i].pornTypePreggo > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePreggo < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
@@ -653,11 +653,11 @@
 		<<if $slaves[$i].pornFocus == "BBW" || $slaves[$i].pornFameType == "BBW">>
 			$possessiveCap weight gives $object a heavy allure to the chubby chasers and BBS lovers out there.
 			<<if $slaves[$i].pornTypeBBW > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBBW < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
@@ -680,11 +680,11 @@
 		<<if $slaves[$i].pornFocus == "loli" || $slaves[$i].pornFameType == "underage">>
 			$possessiveCap young age gives $object a dangerous edge and a number of careful viewers.
 			<<if $slaves[$i].pornTypeLoli > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeLoli < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
@@ -707,11 +707,11 @@
 		<<if $slaves[$i].pornFocus == "gainer" || $slaves[$i].pornFameType == "weight gain">>
 			$possessiveCap expanding waistline attracts those who enjoy seeing a girl pack on the pounds while stuffing $possessive face.
 			<<if $slaves[$i].pornTypeGainer > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeGainer < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
@@ -734,11 +734,11 @@
 		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "big dick">>
 			$possessiveCap powerful erection excites those who see it, especially when it is put to good use.
 			<<if $slaves[$i].pornTypeStud > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeStud < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
@@ -769,13 +769,13 @@
 		<<set $slaves[$i].pornTypeDeepThroat = Math.clamp($slaves[$i].pornTypeDeepThroat, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "gagfuck queen" || $slaves[$i].pornFameType == "deepthroat">>
-			$possessiveCap impresses with just how much dick can slip down $possessive throat.
+			$pronounCap impresses with just how much dick can slip down $possessive throat.
 			<<if $slaves[$i].pornTypeDeepThroat > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeDeepThroat < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
@@ -795,13 +795,13 @@
 		<<set $slaves[$i].pornTypeStruggleFuck = Math.clamp($slaves[$i].pornTypeStruggleFuck, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "strugglefuck queen" || $slaves[$i].pornFameType == "unwilling">>
-			$possessiveCap impresses with $possessive ability to put up just the right amount of fight during sex.
+			$pronounCap impresses with $possessive ability to put up just the right amount of fight during sex.
 			<<if $slaves[$i].pornTypeStruggleFuck > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeStruggleFuck < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
@@ -821,13 +821,13 @@
 		<<set $slaves[$i].pornTypePainal = Math.clamp($slaves[$i].pornTypePainal, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "painal queen" || $slaves[$i].pornFameType == "hardcore anal">>
-			$possessiveCap impresses with $possessive ability to push $possessive anus to its limit.
+			$pronounCap impresses with $possessive ability to push $possessive anus to its limit.
 			<<if $slaves[$i].pornTypePainal > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePainal < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Painal Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
@@ -849,11 +849,11 @@
 		<<if $slaves[$i].pornFocus == "tease" || $slaves[$i].pornFameType == "softcore">>
 			$possessiveCap tantalizes viewers with $possessive suggestive moves.
 			<<if $slaves[$i].pornTypeTease > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeTease < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
@@ -875,11 +875,11 @@
 		<<if $slaves[$i].pornFocus == "romantic" || $slaves[$i].pornFameType == "romantic">>
 			$possessiveCap draws viewers in with $possessive genuine pleasure.
 			<<if $slaves[$i].pornTypeRomantic > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeRomantic < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
@@ -901,11 +901,11 @@
 		<<if $slaves[$i].pornFocus == "perverted" || $slaves[$i].pornFameType == "really perverted">>
 			$possessiveCap perverted tastes shocks and allures viewers in ways they didn't even realize.
 			<<if $slaves[$i].pornTypePervert > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePervert < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
@@ -927,11 +927,11 @@
 		<<if $slaves[$i].pornFocus == "caring" || $slaves[$i].pornFameType == "voyeur">>
 			$possessiveCap sincere devotion to $possessive partner's pleasure draws in viewers with an interest in watching couples fuck.
 			<<if $slaves[$i].pornTypeCaring > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCaring < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
@@ -953,11 +953,11 @@
 		<<if $slaves[$i].pornFocus == "unflinching" || $slaves[$i].pornFameType == "unspeakable">>
 			$possessiveCap willingness to do anything catches the attention of those who enjoy acts that should never be mentioned to others.
 			<<if $slaves[$i].pornTypeUnflinching > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeUnflinching < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
@@ -979,11 +979,11 @@
 		<<if $slaves[$i].pornFocus == "size queen" || $slaves[$i].pornFameType == "huge insertion">>
 			$possessiveCap intent on taking the largest things possible into her holes draws in viewers with an interest for huge insertions.
 			<<if $slaves[$i].pornTypeSizeQueen > _oldPorn>>
-				Viewship @@.green;increased@@ this week.
+				viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSizeQueen < _oldPorn>>
-				Viewship @@.red;declined@@ this week.
+				viewership @@.red;declined@@ this week.
 			<<else>>
-				Viewship @@.yellow;was stable@@ this week.
+				viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
-- 
GitLab


From 0714b43940587f5bf170b486dd60d0017b04267b Mon Sep 17 00:00:00 2001
From: Blank <okp57855@psoxs.com>
Date: Sun, 29 Jul 2018 16:43:04 -0700
Subject: [PATCH 158/189] JSVignettes2.0

---
 devNotes/twine JS.txt                 | 2701 +++++++++++++++++++++++++
 src/js/vignettes.tw                   | 2700 ++++++++++++++++++++++++
 src/uncategorized/saServeThePublic.tw |  678 +------
 src/uncategorized/saWhore.tw          |  706 +------
 4 files changed, 5541 insertions(+), 1244 deletions(-)
 create mode 100644 src/js/vignettes.tw

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 616717cbfb9..bfe5ea3750f 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -23295,6 +23295,2707 @@ window.clothing2artSuffix = function(v) {
           .replace(/\W/g,""); /* remove remaining whitespace */
 };
 
+/*::VignettesJS[script]*/
+
+window.GetVignette = function GetVignette(slave) {
+	const V = State.variables;
+	let vignettes = [];
+
+	const pronouns = getPronouns(slave);
+	const he = pronouns.pronoun;
+	const him = pronouns.object;
+	const his = pronouns.possessive;
+	const hers = pronouns.posessivePronoun;
+	const himself = pronouns.objectReflexive;
+	const boy = pronouns.noun;
+
+
+	if (slave.assignment === "whore" || slave.assignment === "work in the brothel") {
+		let seed = jsRandom(1, 10);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} witnessed a domestic dispute over another whore,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a free whore finally sink into slavery,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that construction forced ${him} to move from ${his} usual spot,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that a customer used a new and improved sex toy on ${him},`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 5:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was an appointment with an unusually perverted family,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 6:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a man sell his wife into slavery,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 7:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a woman sell her daughters into slavery,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 8:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} watched a citizen descend into aphrodisiac addiction,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 9:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} watched a citizen develop the beginnings of sex addiction,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} witnessed a citizen administering a brutal public punishment to one of their slaves,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+		}
+		seed = jsRandom(1, 5);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `a citizen punished one of his slaves by tying ${his} up in public near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `a citizen shared one of his slaves with the public near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `a private brothel offered a promotion near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `some free sluts threw an aphrodisiac street party near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `a contract breaker was punished with the pillory near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+		}
+		seed = jsRandom(1, 5);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `one of ${his} regular customers got a divorce and came to ${him} for repeated consolation,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `a brothel near where ${slave.slaveName} usually works had business trouble,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `a competing whore that looks like ${him} fell ill, driving a customer to look for an alternative,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `a street whore that works near ${him} was badly beaten by an abusive customer and had to take time off. The reduced competition got ${him} more business,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `an influx of tourists came into ${his} part of the arcology, earning ${him} more business for a day,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+		}
+
+		if (slave.fetishKnown === 1) {
+			switch (slave.fetish) {
+				case "submissive":
+					vignettes.push({
+						text: `${he} deeply impressed a customer with ${his} sincere submission to them,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} lost a customer who secretly wanted ${him} to show a little initiative,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "cumslut":
+					vignettes.push({
+						text: `${he} deeply impressed a customer with ${his} hunger for their cum,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a customer who didn't know how much cum fetishes revolted them until ${he} displayed ${his},`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "humiliation":
+					vignettes.push({
+						text: `${he} earned repeat business from a customer who didn't know how much they liked public sex until ${he} got them to try it,`,
+						type: "cash",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a customer who didn't know how much exhibitionism turned them off until they tried public sex with ${him},`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "buttslut":
+					if (canDoAnal(slave)) {
+						vignettes.push({
+							text: `${he} earned repeat business from a customer who didn't know how much they liked fucking buttholes until ${he} got them to try fucking ${his},`,
+							type: "cash",
+							effect: 1,
+						});
+						vignettes.push({
+							text: `${he} disgusted a customer who didn't know how much buttsex turned them off until ${he} got them to try fucking ${his} ass,`,
+							type: "rep",
+							effect: -1,
+						});
+					}
+					if (slave.butt >= 3) {
+						vignettes.push({
+							text: `${he} earned repeat business from a customer who didn't know how much they liked big butts until ${he} gave them a lap dance they'll never forget,`,
+							type: "cash",
+							effect: 1,
+						});
+					}
+					vignettes.push({
+						text: `${he} earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,`,
+						type: "rep",
+						effect: 1,
+					}); ;
+					vignettes.push({
+						text: `${he} disgusted a customer who didn't know how much butts turned them off until ${he} put ${his} hands on theirs,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "boobs":
+					vignettes.push({
+						text: `${he} deeply impressed a customer by orgasming to nothing but the feeling of them sucking ${his} nipples,`,
+						type: "rep",
+						effect: 1,
+					}); ;
+					vignettes.push({
+						text: `${he} disappointed a female customer who didn't know how uninterested she was in nipple play before trying it,`,
+						type: "rep",
+						effect: -1,
+					});
+					if (slave.nipples === "fuckable") {
+						vignettes.push({
+							text: `${he} left a lasting impression on a pair of customers after nearly passing out from a series of intense orgasms from getting ${his} nipples fucked,`,
+							type: "cash",
+							effect: 2,
+						});
+					}
+					break;
+				case "sadist":
+					vignettes.push({
+						text: `${he} deeply impressed a customer who brought their own slave to ${him} for abuse with ${his} sadism,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `a customer brought ${him} their own slave to abuse, but the sight proved to be a turn off,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "masochist":
+					vignettes.push({
+						text: `${he} helped a customer discover a new fetish by orgasming when they accidentally hurt ${him},`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disturbed a customer who accidentally hurt ${him} by orgasming,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "dom":
+					vignettes.push({
+						text: `${he} made a female customer ${his} bitch: fortunately, the customer wanted to be ${his} bitch and came back for more,`,
+						type: "cash",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} accidentally overwhelmed a customer with ${his} sexual dominance,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "pregnancy":
+					vignettes.push({
+						text: `${he} earned repeat business from a customer who didn't know how much they liked pregnancy play until ${he} begged them to knock ${him} up,`,
+						type: "cash",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a customer who didn't know how much pregnancy play turned them off until ${he} begged them to knock ${him} up,`,
+						type: "rep",
+						effect: -1,
+					});
+			}
+		}
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				vignettes.push({
+					text: `${he} manages to give a citizen the impression ${he} thinks ${himself} better than them,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "bitchy":
+				vignettes.push({
+					text: `${he} makes an emasculating remark to a customer right after they fuck ${him},`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "odd":
+				vignettes.push({
+					text: `${he} infuriates a potential customer with ${his} nervous tics,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "hates men":
+				vignettes.push({
+					text: `${his} disgust towards men surfaces at a bad time, losing ${him} a male customer,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "hates women":
+				vignettes.push({
+					text: `${his} disgust towards women surfaces at a bad time, losing ${him} a female customer,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "gluttonous":
+				vignettes.push({
+					text: `${he} accidentally lingers at a meal, missing a customer appointment,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "anorexic":
+				vignettes.push({
+					text: `${his} bulimia surfaces at an extremely inopportune moment, turning a customer off,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "devout":
+				vignettes.push({
+					text: `a customer catches ${him} praying to ${himself} as they inserts themselves into ${him}, turning them off,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "liberated":
+				vignettes.push({
+					text: `${he} treats a rude potential customer impolitely, because ${he} thinks that's fair,`,
+					type: "cash",
+					effect: -1,
+				});
+		}
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				vignettes.push({
+					text: `${he} vomits while trying to deepthroat a customer,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates anal":
+				vignettes.push({
+					text: `${he} cries while taking anal from a customer who isn't into painal,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates penetration":
+				vignettes.push({
+					text: `${he} cries while taking a pounding from a customer who likes their sex consensual,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "shamefast":
+				vignettes.push({
+					text: `${he} cries while a potential customer looks ${him} over,`,
+					type: "cash",
+					effect: -1,
+				});
+				vignettes.push({
+					text: `${he} disrobed so slowly that a potential customer gave up on ${him},`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "idealistic":
+				vignettes.push({
+					text: `${he} cries when explaining the price of ${his} body to a potential customer,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "repressed":
+				vignettes.push({
+					text: `${he} misunderstands a potential customer's lewd requests, turning them off,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "apathetic":
+				vignettes.push({
+					text: `${he} fails to notice when a customer achieves orgasm,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "neglectful":
+				vignettes.push({
+					text: `${he} brings a denial fetishist to orgasm three times without cumming ${himself}, earning their repeat business,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "cum addict":
+				vignettes.push({
+					text: `${he}'s so focused on sucking down a customer's cum that ${he} managed to drive them to repeated orgasm, earning their repeated business once they got the feeling back in their legs,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "anal addict":
+				vignettes.push({
+					text: `${he} takes a trio of dicks in ${his} ass without hesitation, earning repeat business from one of them thoroughly impressed by ${his} anal addiction,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "attention whore":
+				vignettes.push({
+					text: `${he} got repeat business from a man who loves fucking ${him} in the middle of crowded rooms,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "breast growth":
+				vignettes.push({
+					text: `${he} got repeat business from a woman with huge breasts who enjoys roleplaying her breast expansion fetishes with ${him},`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "abusive":
+				vignettes.push({
+					text: `${he} got repeat business from a man who loves physically abusive sex, though his testicles could only take so much in one week,`,
+					type: "cash",
+					effect: 2,
+				});
+				break;
+			case "malicious":
+				vignettes.push({
+					text: `${he} got repeat business from a masochistic woman who enjoys being whipped and degraded,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "self hating":
+				vignettes.push({
+					text: `${he} got repeat business from an abusive man who thoroughly enjoyed how diligently ${he} took it,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "breeder":
+				vignettes.push({
+					text: `${he} got repeat business from a pregnancy fetishist nearly driven mad with lust over ${his} pregnancy obsession,`,
+					type: "cash",
+					effect: 3,
+				});
+		}
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				vignettes.push({
+					text: `${he} confidently presses forward with a wavering potential customer, and makes the sale,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "cutting":
+				vignettes.push({
+					text: `${he} makes such a gloriously cutting remark to a male customer that a female bystander comes to ${him} for repeat business,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "funny":
+				vignettes.push({
+					text: `${he} makes a group of citizens laugh so hard, one of them comes to ${him} for repeat business,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "fitness":
+				vignettes.push({
+					text: `${he} continues a marathon gangbang past the point where most would have passed out,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "adores women":
+				vignettes.push({
+					text: `${he} strikes up a personal friendship with a regular female customer,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "adores men":
+				vignettes.push({
+					text: `${he} strikes up a personal friendship with a regular male customer,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "insecure":
+				vignettes.push({
+					text: `${he} successfully convinces a regular customer that ${he}'s reliant on them emotionally,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "sinful":
+				vignettes.push({
+					text: `${he} helps a customer get past their religious hangups through sex with the friendly neighborhood whore,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "advocate":
+				vignettes.push({
+					text: `${he} successfully convinces a wavering potential customer that there's nothing wrong with banging a whore,`,
+					type: "cash",
+					effect: 1,
+				});
+		}
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				vignettes.push({
+					text: `${he} earns repeat business from a citizen who's obsessed with gagfucks,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "painal queen":
+				vignettes.push({
+					text: `${he} earns repeat business from a citizen who's obsessed with painal,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "strugglefuck queen":
+				vignettes.push({
+					text: `${he} earns repeat business from a citizen who's obsessed with strugglefucking,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "tease":
+				vignettes.push({
+					text: `${he} convinces a citizen who's never had sex with a prostitute to patronize ${him} with some truly inspired flirting,`,
+					type: "cash",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `a few partiers were so impressed with ${his} provocative teasing that they repeated ${his} wit to friends,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "romantic":
+				vignettes.push({
+					text: `a citizen becomes infatuated with ${him}, since they are convinced ${he}'s infatuated with them,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "perverted":
+				vignettes.push({
+					text: `${he} earns some momentary notoriety by engaging in a previously unheard-of sex act,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "caring":
+				vignettes.push({
+					text: `${he} serves as an impromptu sounding board for a customer having marital trouble,`,
+					type: "cash",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `a customer was so enamored with ${his} kind and caring manner than they proposed to ${him} and offered to take ${him} away, and when ${he} refused, they left a sizable tip,`,
+					type: "cash",
+					effect: 1,
+				});
+		}
+
+		if (slave.pitKills > 0) {
+			vignettes.push({
+				text: `${he} earns repeat business from a customer obsessed with the fact that ${he}'s a killer,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.oralCount > 500) {
+			vignettes.push({
+				text: `a customer into degradation becomes obsessed with driving ${his} oral mileage as high as possible,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.analCount > 500 && slave.anus > 0) {
+			vignettes.push({
+				text: `a customer into degradation becomes obsessed with driving ${his} anal mileage as high as possible,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.vaginalCount > 500 && slave.vagina > 0) {
+			vignettes.push({
+				text: `a customer into degradation becomes obsessed with driving ${his} pussy mileage as high as possible,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.devotion > 95) {
+			vignettes.push({
+				text: `${he} really pushed ${himself} to please a customer with tastes that disgusted ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+		} else if (slave.devotion < -50) {
+			vignettes.push({
+				text: `${his} fury at being sold for sex turned a customer off before they could fuck ${him},`,
+				type: "cash",
+				effect: -1,
+			});
+		} else if (slave.devotion <= 20) {
+			vignettes.push({
+				text: `${he} treasured a love token given to ${him} by a customer ${he} fooled into thinking ${his} affection was real,`,
+				type: "devotion",
+				effect: -1,
+			});
+		}
+		if (slave.trust > 95) {
+			vignettes.push({
+				text: `${he} really pushed ${himself} to accept a customer with tastes that frightened ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+		} else if (slave.trust < -50) {
+			vignettes.push({
+				text: `${his} tearful terror at being forced to sell ${himself} for sex turned a customer off before they could fuck ${him},`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (slave.livingRules === "luxurious") {
+			vignettes.push({
+				text: `${he} got a truly perfect night's sleep, which put ${him} in the right frame of mind for the whole day,`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.livingRules === "spare") {
+			vignettes.push({
+				text: `${he} got a poor night's sleep in the noisy dormitory, which took the shine off ${his} efforts for the whole day,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.releaseRules === "permissive" || slave.releaseRules === "masturbation") {
+			vignettes.push({
+				text: `a customer asked if ${he} masturbates, and then spent an hour jerking off as ${he} described how,`,
+				type: "cash",
+				effect: 1,
+			});
+		} else if (slave.releaseRules === "restrictive") {
+			vignettes.push({
+				text: `a customer asked if ${he} masturbates, and seemed disappointed when ${he} answered honestly,`,
+				type: "cash",
+				effect: 0,
+			});
+		} else {
+			vignettes.push({
+				text: `a closeted female customer asked about ${his} sex life with ot${his} slaves, and was enthralled by ${his} answer,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.health > 80) {
+			vignettes.push({
+				text: `a potential customer in the medical field was fascinated by ${his} health, and spent almost as much time examining ${him} as they did having sex with ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.weight < 10) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a customer who misses ${boy}s without a spare tire around their middle,`,
+					type: "cash",
+					effect: 1,
+				});
+			} else if (slave.weight < 95) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} gains a lot more weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			} else {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a customer who loves them big and soft`,
+					type: "cash",
+					effect: 0,
+				});
+			}
+			if (slave.weight > 30) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a customer who enjoyed the way ${his} middle jiggled as they fucked ${him},`,
+					type: "cash",
+					effect: 0,
+				});
+			}
+		} else {
+			if (slave.weight > 95) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} loses a lot of weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			} else if (slave.weight > 30) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} loses some weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			} else if (slave.weight <= -30) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} gains some weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			} else if (slave.weight < -95) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} gains a lot of weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			}
+		}
+		if (slave.drugs === "testicle enhancement") {
+			vignettes.push({
+				text: `${he} took it in public, with ${his} copious ejaculation getting ${him} another customer right away,`,
+				type: "cash",
+				effect: 1,
+			});
+		} else if (slave.drugs === "hyper testicle enhancement") {
+			vignettes.push({
+				text: `${he} bloated a female customer's belly with ${his} copious ejaculate, leading her to say she is looking forward to come back and get filled again,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.aphrodisiacs > 1 || slave.inflationType === "aphrodisiac") {
+			vignettes.push({
+				text: `${his} piteous begging for sex due to ${his} extreme aphrodisiac dosage turned a potential customer off,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (slave.inflationType === "aphrodisiac") {
+			vignettes.push({
+				text: `${his} piteous begging for sex coupled with ${his} bloated belly pleased a customer who loves desperate ${boy}s,`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${his} piteous begging for sex coupled with ${his} bloated belly horrified a customer who didn't realize how low a ${boy} could stoop,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.addict > 50) {
+			vignettes.push({
+				text: `${he} zoned out badly due to a low point between aphrodisiac doses, disappointing a customer,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.bellyPreg >= 10000 || slave.bellyImplant >= 10000) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who likes to do nothing more than cuddle with ${his} swollen belly,`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `a night with guy who likes rough, hard sex with heavily pregnant ${boy}s took its toll on ${him},`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (slave.bellyFluid >= 5000) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who loved the way ${his} belly moved as they fucked ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} disgusted a customer when their forceful fucking caused ${him} to release ${his} contained ${slave.inflationType} all over them,`,
+				type: "rep",
+				effect: -2,
+			});
+		}
+		if (slave.hormoneBalance >= 100 && !canAchieveErection(slave)) {
+			if (slave.dick > 0) {
+				vignettes.push({
+					text: `${he} disappointed a customer who was sure they could get ${slave.slaveName}'s cock erect,`,
+					type: "rep",
+					effect: -1,
+				});
+				vignettes.push({
+					text: `${he} earned repeat business from a customer who seems unthreatened by ${his} soft dick,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (slave.hormoneBalance <= -100 && slave.dick === 0) {
+			vignettes.push({
+				text: `${he} earned repeat business from a female customer who adores the masculinity produced by ${slave.slaveName}'s hormone regime,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.dick > 0 && canPenetrate(slave)) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who likes to see his wife get fucked by a dick${boy} whore,`,
+				type: "cash",
+				effect: 1,
+			});
+			if (slave.dick > 3) {
+				vignettes.push({
+					text: `${he} earned repeat business from a female customer who likes big stiff cocks, and cannot lie,`,
+					type: "cash",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `${he} irritated a male customer who brought his girlfriend with him by accidentally showing him up,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.balls > 3) {
+			vignettes.push({
+				text: `${he} loses a customer who wants ${him} to look like a natural girl, since ${his} balls are too big to be hidden,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (canDoVaginal(slave)) {
+			if (slave.vagina === 1) {
+				vignettes.push({
+					text: `${he} got extra business from a customer who really likes ${him}, and wants to fuck ${his} pussy as much as possible while it's still tight,`,
+					type: "cash",
+					effect: 1,
+				});
+			} else if (slave.vagina > 2) {
+				vignettes.push({
+					text: `${he} disappointed a customer whose cock is just too small for ${his} big cunt,`,
+					type: "rep",
+					effect: -1,
+				});
+				if (slave.behavioralQuirk === "cutting" && slave.intelligence >= 2) {
+					vignettes.push({
+						text: `${he} helped a customer discover a new fetish by making cutting remarks when their cock was too small for ${his} big cunt,`,
+						type: "rep",
+						effect: 1,
+					});
+				} else if (slave.behavioralFlaw === "bitchy") {
+					vignettes.push({
+						text: `${he} irritated a male customer with ${his} complaints that they were too small to please ${him},`,
+						type: "rep",
+						effect: -2,
+					});
+				}
+			}
+		}
+		if (canDoAnal(slave)) {
+			if (slave.anus === 1) {
+				vignettes.push({
+					text: `${he} got extra business from a customer who really likes ${his} butthole, and wants to fuck it as much as possible while it's still tight,`,
+					type: "cash",
+					effect: 1,
+				});
+			} else if (slave.anus > 2) {
+				vignettes.push({
+					text: `${he} disappointed a customer whose cock is just too small for ${his} loose butthole,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.face > 40) {
+			vignettes.push({
+				text: `${he} lost a potential customer who was so intimidated by ${his} great beauty that they decided to find a homelier whore,`,
+				type: "cash",
+				effect: -1,
+			});
+		} else if (slave.face < -10) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who lacks self-confidence, and is more comfortable with homely whores,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.visualAge > 40) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer with serious mommy issues,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.lips > 70) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who likes to play with ${his} lips nonsexually (don't ask),`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (!canTalk(slave)) {
+			vignettes.push({
+				text: `${he} impressed a customer who didn't know how relaxing a ${boy} who can't talk could be,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.muscles > 95) {
+			vignettes.push({
+				text: `${he} impressed a customer who was so eager to share workout plans with ${him} that they almost forgot to have sex with ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} gained repeat business from a female customer who likes a ${boy} who can bench-press her before and after they fuck,`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} disappointed a customer by accidentally revealing that ${he}'s considerably stronger than them,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.lactation > 0) {
+			vignettes.push({
+				text: `${he} was well compensated for providing fresh milk for the coffee served at a customer's business meeting,`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} served as a conveniently lactating whore near a trendy arcology coffeehouse,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.amp === 1) {
+			vignettes.push({
+				text: `${he} disappointed a customer who thought they would enjoy fucking an amputee, but found it revolting,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.amp === -1) {
+			vignettes.push({
+				text: `a strange customer was excited by the sight of ${his} prosthetic limbs,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `a customer was disgusted at the thought of ${his} basic prosthetic limbs,`,
+				type: "rep",
+				effect: -1,
+			});
+			vignettes.push({
+				text: `a customer was put off by ${his} prosthetic limbs,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.amp === -2) {
+			vignettes.push({
+				text: `a customer was excited by ${his} vibrating fingertips,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,",
+				type: "cash",
+				effect: 0,
+			});
+			vignettes.push({
+				text: `a customer was put off by ${his} crude artificial limbs,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.amp === -3) {
+			vignettes.push({
+				text: `a strange customer was excited by the sight of ${his} artificial limbs,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,",
+				type: "cash",
+				effect: 0,
+			});
+			vignettes.push({
+				text: `a customer was put off by the sight of ${his} prosthetic limbs,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.amp === -4) {
+			vignettes.push({
+				text: `a customer was excited by the thought of having sex with a slave with p-limbs, but was scared off by ${his} combat p-limbs,`,
+				type: "cash",
+				effect: -1,
+			});
+			vignettes.push({
+				text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,",
+				type: "cash",
+				effect: 0,
+			});
+			vignettes.push({
+				text: `a customer was greatly intimidated by ${his} combat p-limbs,`,
+				type: "cash",
+				effect: -1,
+			});
+		} else if (slave.amp === -5) {
+			vignettes.push({
+				text: `a customer was fascinated by ${his} cybernetic limbs, and spent almost as much time examining them as they did having sex with ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: "a customer was excited by the thought of having sex with a cybernetically enhanced slave,",
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `a customer was greatly intimidated by the sight of ${his} cybernetic limbs and was frightened away,`,
+				type: "cash",
+				effect: -1,
+			});
+		} else {
+			if (slave.heels === 1 && !(["heels", "pumps", "extreme heels", "boots"].includes(slave.shoes))) {
+				vignettes.push({
+					text: `${he} enticed a new customer who had never really considered buttsex before they saw ${him} crawling along with ${his} asshole vulnerable,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+			if (slave.boobs > 1500 && slave.boobsImplant === 0) {
+				vignettes.push({
+					text: `a young customer hired ${him} to jump rope so they could watch ${his} massive natural breasts flop around,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		}
+		if (slave.vaginalAccessory === "chastity belt") {
+			vignettes.push({
+				text: `a wavering customer who was disappointed that ${his} pussy is unavailable decided to try ${his} ass instead,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.fetish === "mindbroken") {
+			vignettes.push({
+				text: `a customer really enjoyed being able to treat ${him} however they liked without eliciting a reaction,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.intelligence <= -2) {
+			vignettes.push({
+				text: `a customer managed to trick ${him} into fucking him without payment,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (slave.face > 10 && canDoAnal(slave)) {
+			if (slave.dick > 0) {
+				if (slave.fetish === "buttslut" && jsRandom(0, 100) < 50) {
+					vignettes.push({
+						text: `a customer was surprised by ${his} penis, so ${he} hid it and enjoyed the buttsex without touching it,`,
+						type: "rep",
+						effect: 1,
+					});
+				} else if (slave.fetish === "buttslut") {
+					vignettes.push({
+						text: `a customer was surprised by ${his} penis, so ${he} hid it, but could barely tolerate anal without touching it,`,
+						type: "rep",
+						effect: -1,
+					});
+				} else if (slave.analSkill >= 100) {
+					vignettes.push({
+						text: `a customer was surprised by ${his} penis, so ${he} hid it and skillfully pretended to be a real girl,`,
+						type: "rep",
+						effect: 1,
+					});
+				}
+			}
+			if (slave.analSkill < 100 && slave.anus > 2) {
+				vignettes.push({
+					text: `a pair of customers enticed by ${his} beauty but disappointed by ${his} loose butthole doubled up on ${his} poor anus without mercy,`,
+					type: "health",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.fetishKnown === 1 && slave.fetishStrength > 95) {
+			if (slave.fetish === "buttslut" || slave.fetish === "dom") {
+				vignettes.push({
+					text: `${he} advertised ${himself} by forcing a slave in the stocks to eat ${his} ass, drumming up business,`,
+					type: "cash",
+					effect: 1,
+				});
+			} else if (slave.fetish === "masochist") {
+				vignettes.push({
+					text: `${he} cooperated with a citizen who wanted to whip ${his} tits black and blue,`,
+					type: "health",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.health < 20) {
+			vignettes.push({
+				text: `${he} attracted the attention of a slaveowner alarmed by ${his} poor health, and thought they seemed kind,`,
+				type: "devotion",
+				effect: -1,
+			});
+		}
+		if (slave.vaginalSkill >= 100) {
+			vignettes.push({
+				text: `${he} was hired to apply ${his} skills to a customer's virgin son,`,
+				type: "devotion",
+				effect: 0,
+			});
+		}
+		if (canDoAnal(slave) && slave.analSkill < 100 && slave.anus < 2) {
+			vignettes.push({
+				text: `a guy with a huge cock paid for the right to fuck ${him} in ${his} tight ass all night,`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (slave.relationship <= -2 && slave.intelligence < 1) {
+			vignettes.push({
+				text: `${he} accidentally mentions how much ${he} loves you during intercourse with a customer who doesn't like to share,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.prestige > 0) {
+			vignettes.push({
+				text: `a college fraternity visiting the arcology for rush week hired ${him} for a gangbang,`,
+				type: "cash",
+				effect: 3,
+			});
+		}
+
+		if (V.arcologies[0].FSSupremacist !== "unset" && slave.race === V.arcologies[0].FSSupremacistRace) {
+			vignettes.push({
+				text: `${he} lost a customer who couldn't bear to see a beautiful ${V.arcologies[0].FSSupremacistRace} be a whore,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSSubjugationist !== "unset" && slave.race === V.arcologies[0].FSSubjugationistRace) {
+			vignettes.push({
+				text: `${he} had a bad time in general, since most of ${his} customers didn't care about a ${V.arcologies[0].FSSubjugationistRace} prostitute's health or well-being,`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSYouthPreferentialist !== "unset") {
+			if (slave.visualAge > 35) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who wants to keep their MILF fetish in the closet,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSMaturityPreferentialist !== "unset") {
+			if (slave.visualAge <= 20) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who wants to keep their fetish for young ${boy}s in the closet,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		}
+		if (V.arcologies[0].FSGenderRadicalist !== "unset") {
+			if (slave.dick > 0 && slave.dick < 3) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who is coming to terms with Gender Radicalism, and is unthreatened by ${his} little penis,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSGenderFundamentalist !== "unset" && slave.visualAge > 25) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who thinks ${he} resembles their ex-wife, who would never let them fuck her butt,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSRepopulationFocus !== "unset") {
+			if (slave.pregType > 1 && slave.pregKnown > 1 && slave.belly >= 10000) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who loves fucking ${boy}s with wombs filled by more than a single child,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSRestart !== "unset" && canGetPregnant(slave)) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who misses the risk of getting a ${boy} pregnant,`,
+				type: "cash",
+				effect: 3,
+			});
+		}
+		if (V.arcologies[0].FSPaternalist !== "unset") {
+			if (slave.intelligence > 1) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who likes to chat with intelligent prostitutes while fucking,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSDegradationist !== "unset" && canTalk(slave) && slave.voice > 2) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who prefers ${boy}s with high-pitched screams,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSBodyPurist !== "unset") {
+			if (slave.boobsImplant > 0) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who wants to keep their fetish for breast implants in the closet,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSTransformationFetishist !== "unset" && slave.boobsImplant === 0) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who wants to keep their fetish for natural breasts in the closet,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") {
+			if (canTalk(slave) && slave.voice > 2) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who loves ${his} high-pitched squeals of pleasure,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+			if (slave.boobs > 800) {
+				vignettes.push({
+					text: `${he} was publicly mocked as an ugly fat cow with dangling udders,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		} else if (V.arcologies[0].FSAssetExpansionist !== "unset" && slave.boobs < 300) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who wants to keep their fetish for flat chested ${boy}s in the closet,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSPastoralist !== "unset") {
+			if (slave.lactation === 0) {
+				vignettes.push({
+					text: `${he} lost a customer who could not understand why nothing was coming out of ${his} nipples when they sucked on them,`,
+					type: "cash",
+					effect: -1,
+				});
+			}
+			if (slave.nipples === "fuckable") {
+				vignettes.push({
+					text: `${he} lost a customer who refused ${he} could possibly be a proper cow with nipples like ${his},`,
+					type: "cash",
+					effect: -1,
+				});
+			}
+		}
+		if (V.arcologies[0].FSPhysicalIdealist !== "unset" && slave.muscles <= 95) {
+			vignettes.push({
+				text: `${he} lost a customer who could barely believe that ${he} wasn't capable of holding ${himself} in a handstand,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSChattelReligionist !== "unset" && slave.behavioralFlaw === "devout") {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who desperately wants their cock to be the one that converts ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSRomanRevivalist !== "unset" && slave.race === "white" && slave.height >= 185) {
+			vignettes.push({
+				text: `${he} attracted a customer who thought ${his} appearance worthy of a lusty northern barbarian,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSAztecRevivalist !== "unset" && slave.devotion > 75 && slave.intelligence >= 2) {
+			vignettes.push({
+				text: `${he} indulged a citizen by following a fertility ritual completely,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSEgyptianRevivalist !== "unset") {
+			vignettes.push({
+				text: `${he} got extra business from a group of citizens competing to get off with whores of each of the arcology's ethnic groups in the least time,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSEdoRevivalist !== "unset" && slave.face > 40 && slave.intelligence > 1) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent ${boy},`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSArabianRevivalist !== "unset" && slave.entertainSkill >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who prefers prostitutes who can tell lovely stories,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+
+		vignettes.push({
+			text: `one of the companies with an office in your arcology retained ${him} for a team-building bukkake party for its employees,`,
+			type: "rep",
+			effect: 1,
+		});
+		vignettes.push({
+			text: "a man dragged his crying wife along so she could watch him fuck a whore,",
+			type: "rep",
+			effect: 0,
+		});
+		vignettes.push({
+			text: "a woman dragged her angry husband along so he could watch her get eaten out by a whore,",
+			type: "rep",
+			effect: 0,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after being sold for sex all day, and had a dream about you loving ${him},`,
+			type: "devotion",
+			effect: 1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after being sold for sex all day, and had a dream about you letting a customer hurt ${him},`,
+			type: "devotion",
+			effect: -1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after being sold for sex all day, and had a dream about you protecting ${him} from a mean customer,`,
+			type: "trust",
+			effect: 1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after being sold for sex all day, and had a dream about you selling ${him} for good,`,
+			type: "trust",
+			effect: -1,
+		});
+	} else if (slave.assignment === "serve the public" || slave.assignment === "serve in the club") {
+		let seed = jsRandom(1, 10);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} witnessed a domestic dispute over another slut,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw an aphrodisiac addict ${he} knew sell herself into slavery,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} had to move to follow the <span class="green">most prominent citizens</span> to a newly fashionable hall,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that a citizen used a new and improved sex toy on ${him},`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 5:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was being used in public by an incestuous pair of citizens,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 6:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a notorious slut come of age and start swapping anal for aphrodisiacs,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 7:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a citizen experiment with lesbian sex for the first time, in public,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 8:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} watched a citizen descend into aphrodisiac addiction,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 9:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} watched a citizen develop the beginnings of sex addiction,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} witnessed a citizen using a public slut so brutally that they had to pay compensation afterward,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+		}
+		seed = jsRandom(1, 5);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `a citizen punished one of his slaves by tying her up in public near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `a citizen shared one of his slaves with the public near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `a private brothel offered a promotion near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `some free sluts threw an aphrodisiac street party near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `a contract breaker was punished with the pillory near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+		}
+		seed = jsRandom(1, 5);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `one of ${his} regular patrons got a divorce and came to ${him} for repeated consolation,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `a club near where ${slave.slaveName} usually works had business trouble,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `a competing slut that looks like ${him} fell ill, driving a patron to look for an alternative,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `a street slut that works near ${him} was badly beaten by an abusive citizen and had to take time off. The reduced competition got ${his} more attention,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `an influx of tourists came into ${his} part of the arcology, earning ${him} more business for a day,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+		}
+
+		if (slave.fetishKnown === 1) {
+			switch (slave.fetish) {
+				case "submissive":
+					vignettes.push({
+						text: `${he} deeply impressed a citizen with ${his} sincere submission to them,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} lost a patron who secretly wanted ${him} to show a little initiative,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "cumslut":
+					vignettes.push({
+						text: `${he} deeply impressed a citizen with ${his} hunger for their cum,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a citizen who didn't know how much cum fetishes revolted them until ${he} displayed ${hers},`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "humiliation":
+					vignettes.push({
+						text: `${he} earned extra gratitude from a citizen who didn't know how much they liked public sex until ${he} got them to try it,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a citizen who didn't know how much exhibitionism turned them off until they tried public sex with ${him},`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "buttslut":
+					if (canDoAnal(slave)) {
+						vignettes.push({
+							text: `${he} earned extra gratitude from a citizen who didn't know how much they liked fucking buttholes until ${he} got them to try fucking ${hers},`,
+							type: "rep",
+							effect: 1,
+						});
+						vignettes.push({
+							text: `${he} disgusted a citizen who didn't know how much buttsex turned them off until ${he} got them to try fucking ${his} ass,`,
+							type: "rep",
+							effect: -1,
+						});
+					}
+					if (slave.butt >= 3) {
+						vignettes.push({
+							text: `${he} earned extra gratitude from a citizen who didn't know how much they liked big butts until ${he} gave them a lap dance they'll never forget,`,
+							type: "rep",
+							effect: 1,
+						});
+					}
+					vignettes.push({
+						text: `${he} earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,`,
+						type: "rep",
+						effect: 1,
+					}); ;
+					vignettes.push({
+						text: `${he} disgusted a citizen who didn't know how much butts turned them off until ${he} put ${his} hands on theirs,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "boobs":
+					vignettes.push({
+						text: `${he} deeply impressed a citizen by orgasming to nothing but the feeling of them sucking ${his} nipples,`,
+						type: "rep",
+						effect: 1,
+					}); ;
+					vignettes.push({
+						text: `${he} disappointed a female citizen who didn't know how uninterested she was in nipple play before trying it,`,
+						type: "rep",
+						effect: -1,
+					});
+					if (slave.nipples === "fuckable") {
+						vignettes.push({
+							text: `${he} left lasting impression on a pair of citizens after nearly passing out from a series of intense orgasms from getting ${his} nipples fucked,`,
+							type: "rep",
+							effect: 2,
+						});
+					}
+					break;
+				case "sadist":
+					vignettes.push({
+						text: `${he} deeply impressed a citizen who brought their own slave to ${his} for abuse with ${his} sadism,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `a citizen brought ${him} their own slave to abuse, but the sight proved to be a turn off,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "masochist":
+					vignettes.push({
+						text: `${he} helped a citizen discover a new fetish by orgasming when they accidentally hurt ${him},`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disturbed a citizen who accidentally hurt ${him} by orgasming,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "dom":
+					vignettes.push({
+						text: `${he} made a female citizen ${his} bitch: fortunately, the citizen wanted to be ${his} bitch and came back for more`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} accidentally overwhelmed a citizen with ${his} sexual dominance,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "pregnancy":
+					vignettes.push({
+						text: `${he} earned extra gratitude from a citizen who didn't know how much they liked pregnancy play until ${he} begged them to knock ${him} up,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a citizen who didn't know how much pregnancy play turned them off until ${he} begged them to knock ${him} up,`,
+						type: "rep",
+						effect: -1,
+					});
+			}
+		}
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				vignettes.push({
+					text: `${he} manages to give a citizen the impression ${he} thinks ${himself} better than them,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "bitchy":
+				vignettes.push({
+					text: `${he} makes an emasculating remark to a citizen right after they fuck ${him},`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "odd":
+				vignettes.push({
+					text: `${he} infuriates a potential citizen with ${his} nervous tics,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates men":
+				vignettes.push({
+					text: `${his} disgust towards men surfaces at a bad time, angering a male citizen,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates women":
+				vignettes.push({
+					text: `${his} disgust towards women surfaces at a bad time, angering a female citizen,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "gluttonous":
+				vignettes.push({
+					text: `${he} accidentally lingers at a meal, missing an appointment with a citizen,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "anorexic":
+				vignettes.push({
+					text: `${his} bulimia surfaces at an extremely inopportune moment, turning a citizen off,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "devout":
+				vignettes.push({
+					text: `a citizen catches ${him} praying to ${himself} as they inserts themsleves into ${him}, turning them off,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "liberated":
+				vignettes.push({
+					text: `${he} treats a rude citizen impolitely, because ${he} thinks that's fair,`,
+					type: "rep",
+					effect: -1,
+				});
+		}
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				vignettes.push({
+					text: `${he} vomits while trying to deepthroat a citizen,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates anal":
+				vignettes.push({
+					text: `${he} cries while taking anal from a citizen who isn't into painal,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates penetration":
+				vignettes.push({
+					text: `${he} cries while taking a pounding from a citizen who likes their sex consensual,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "shamefast":
+				vignettes.push({
+					text: `${he} cries while a citizen looks ${him} over,`,
+					type: "rep",
+					effect: -1,
+				});
+				vignettes.push({
+					text: `${he} disrobed so slowly that a horny citizen gave up on ${him},`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "idealistic":
+				vignettes.push({
+					text: `${he} cries when explaining to a citizen that sex with ${him} is free,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "repressed":
+				vignettes.push({
+					text: `${he} misunderstands a citizen's lewd requests, turning them off,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "apathetic":
+				vignettes.push({
+					text: `${he} fails to notice when a citizen achieves orgasm,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "neglectful":
+				vignettes.push({
+					text: `${he} brings a denial fetishest to orgasm three times without cumming ${himself}, impressing them completely,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "cum addict":
+				vignettes.push({
+					text: `${he}'s so focused on sucking down a client's cum that ${he} managed to drive them to repeated orgasm, earning their admiration once the feeling returns to their legs,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "anal addict":
+				vignettes.push({
+					text: `${he} takes an awe inspiring train of dicks in ${his} ass, well past the point where most would have passed out from pain,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "attention whore":
+				vignettes.push({
+					text: `${he} earned extra gratitude by drawing attention to a savvy businessman from their superiors,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "breast growth":
+				vignettes.push({
+					text: `${he} earns extra gratitude from a citizen who never realized breast growth turned them on so much,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "abusive":
+				vignettes.push({
+					text: `${he} abuses a rival public servant so viciously that an catfight lover takes ${him} right there,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "malicious":
+				vignettes.push({
+					text: `${he} earned extra gratitude from a masochist who loved the way ${he} traced ${his} scars, and added some new ones,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "self hating":
+				vignettes.push({
+					text: `the way ${he} takes everything thrown at ${him} like nothing disturbs group of citizens, though one of them enjoys it more than they let on and comes to ${him} for sex later,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "breeder":
+				vignettes.push({
+					text: `${his} pregnancy obsession earns ${his} extra gratitude from a man with an intense pregnancy fetish,`,
+					type: "rep",
+					effect: 3,
+				});
+		}
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				vignettes.push({
+					text: `${he} confidently presses forward with a wavering citizen, and gets them to fuck ${him},`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "cutting":
+				vignettes.push({
+					text: `${he} makes such a gloriously cutting remark to a male citizen that a female bystander takes ${him} right there,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "funny":
+				vignettes.push({
+					text: `${he} makes a group of citizens laugh so hard, one of them comes to ${him} for sex later,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "fitness":
+				vignettes.push({
+					text: `${he} continues a marathon gangbang past the point where most would have passed out,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "adores women":
+				vignettes.push({
+					text: `${he} strikes up a personal friendship with a regular female patron,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "adores men":
+				vignettes.push({
+					text: `${he} strikes up a personal friendship with a regular male patron,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "insecure":
+				vignettes.push({
+					text: `${he} successfully convinces a regular patron that they are reliant on ${him} emotionally,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "sinful":
+				vignettes.push({
+					text: `${he} helps a citizen get past their religious hangups through sex with the friendly neighborhood slut,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "advocate":
+				vignettes.push({
+					text: `${he} successfully convinces a wavering potential citizen that there's nothing wrong with banging a public slut,`,
+					type: "rep",
+					effect: 1,
+				});
+		}
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				vignettes.push({
+					text: `${he} earns extra gratitude from a citizen who's obsessed with gagfucks,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "painal queen":
+				vignettes.push({
+					text: `${he} earns extra gratitude from a citizen who's obsessed with painal,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "strugglefuck queen":
+				vignettes.push({
+					text: `${he} earns extra gratitude from a citizen who's obsessed with strugglefucking,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "tease":
+				vignettes.push({
+					text: `${he} convinces a citizen who's never had sex with a street slut to patronize ${his} with some truly inspired flirting,`,
+					type: "rep",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `a few partygoers were so impressed with ${his} provocative teasing that they left ${his} sizeable tip,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "romantic":
+				vignettes.push({
+					text: `a citizen becomes infatuated with ${him}, since they are convinced ${he}'s infatuated with them,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "perverted":
+				vignettes.push({
+					text: `${he} earns some momentary notoriety by engaging in a previously unheard-of sex act,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "caring":
+				vignettes.push({
+					text: `${he} serves as an impromptu sounding board for a citizen having marital trouble,`,
+					type: "rep",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `a citizen was so enamored with ${his} kind and caring manner than they proposed to ${him} and offered to take ${him} away, and when ${he} refused, they urged a sizable tip on ${him},`,
+					type: "cash",
+					effect: 1,
+				});
+		}
+
+		if (slave.pitKills > 0) {
+			vignettes.push({
+				text: `${he} earns extra gratitude from a citizen obsessed with the fact that ${he}'s a killer,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.oralCount > 500) {
+			vignettes.push({
+				text: `a citizen into degradation becomes obsessed with driving ${his} oral mileage as high as possible,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.analCount > 500 && slave.anus > 0) {
+			vignettes.push({
+				text: `a citizen into degradation becomes obsessed with driving ${his} anal mileage as high as possible,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.vaginalCount > 500 && slave.vagina > 0) {
+			vignettes.push({
+				text: `a citizen into degradation becomes obsessed with driving ${his} pussy mileage as high as possible,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.devotion > 95) {
+			vignettes.push({
+				text: `${he} really pushed ${himself} to please a citizen with tastes that disgusted ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.devotion < -50) {
+			vignettes.push({
+				text: `${his} fury at being sold for sex turned a citizen off before they could fuck ${him},`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.devotion <= 20) {
+			vignettes.push({
+				text: `${he} treasured a love token given to ${his} by a citizen ${he} fooled into thinking ${his} affection was real,`,
+				type: "devotion",
+				effect: -1,
+			});
+		}
+		if (slave.trust > 95) {
+			vignettes.push({
+				text: `${he} really pushed ${himself} to accept a citizen with tastes that frightened ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.trust < -50) {
+			vignettes.push({
+				text: `${his} tearful terror at being forced to offer ${himself} for sex turned a citizen off before they could fuck ${him},`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.livingRules === "luxurious") {
+			vignettes.push({
+				text: `${he} got a truly perfect night's sleep, which put ${his} in the right frame of mind for the whole day,`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.livingRules === "spare") {
+			vignettes.push({
+				text: `${he} got a poor night's sleep in the noisy dormitory, which took the shine off ${his} efforts for the whole day`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.releaseRules === "permissive" || slave.releaseRules === "masturbation") {
+			vignettes.push({
+				text: `a citizen asked if ${he} masturbates, and then spent an hour jerking off as ${he} described how,`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.releaseRules === "restrictive") {
+			vignettes.push({
+				text: `a citizen asked if ${he} masturbates, and seemed disappointed when ${he} answered honestly,`,
+				type: "rep",
+				effect: 0,
+			});
+		} else {
+			vignettes.push({
+				text: `a closeted female citizen asked about ${his} sex life with other slaves, and was enthralled by ${his} answer,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.health > 80) {
+			vignettes.push({
+				text: `a potential citizen in the medical field was fascinated by ${his} health, and spent almost as much time examining ${him} as they did having sex with ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.weight < 10) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a citizen who misses ${boy}s without a spare tire around their middle,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else if (slave.weight < 95) {
+				vignettes.push({
+					text: `a potential citizen told ${his} that they are looking forward to patronizing ${his} once ${he} gains a lot more weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a citizen who loves them big and soft`,
+					type: "rep",
+					effect: 0,
+				});
+			}
+			if (slave.weight > 30) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a citizen who enjoyed the way ${his} middle jiggled as they fucked ${him},`,
+					type: "rep",
+					effect: 0,
+				});
+			}
+		} else {
+			if (slave.weight > 95) {
+				vignettes.push({
+					text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} loses a lot of weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else if (slave.weight > 30) {
+				vignettes.push({
+					text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} loses some weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else if (slave.weight <= -30) {
+				vignettes.push({
+					text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} gains some weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else if (slave.weight < -95) {
+				vignettes.push({
+					text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} gains a lot of weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			}
+		}
+		if (slave.drugs === "testicle enhancement") {
+			vignettes.push({
+				text: `${he} took it in public, with ${his} copious ejaculation attracting more citizens,`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.drugs === "hyper testicle enhancement") {
+			vignettes.push({
+				text: `${he} bloated a female citizen's belly with ${his} copious ejaculate, leading her to recommend your slaves for girls that want to look pregnant without actually getting pregnant,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.aphrodisiacs > 1 || slave.inflationType === "aphrodisiac") {
+			vignettes.push({
+				text: `${his} piteous begging for sex due to ${his} extreme aphrodisiac dosage turned a citizen off,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.inflationType === "aphrodisiac") {
+			vignettes.push({
+				text: `${his} piteous begging for sex coupled with ${his} bloated belly pleased a citizen who loves desperate sluts,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${his} piteous begging for sex coupled with ${his} bloated belly horrified a citizen who didn't realize how low a ${boy} could stoop,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.addict > 50) {
+			vignettes.push({
+				text: `${he} zoned out badly due to a low point between aphrodisiac doses, disappointing a citizen,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.bellyPreg >= 10000 || slave.bellyImplant >= 10000) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who likes to do nothing more than cuddle with ${his} swollen belly,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `a night with guy who likes rough, hard sex with heavily pregnant ${boy}s took its toll on ${him}`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (slave.bellyFluid >= 5000) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who loved the way ${his} belly sloshed and moved to their teasing,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} disgusted a citizen when his forceful fucking caused ${him} to release ${his} contained ${slave.inflationType} all over them,`,
+				type: "rep",
+				effect: -2,
+			});
+		}
+		if (slave.hormoneBalance >= 100 && !canAchieveErection(slave)) {
+			if (slave.dick > 0) {
+				vignettes.push({
+					text: `${he} disappointed a citizen who was sure they could get ${slave.slaveName}'s cock erect,`,
+					type: "rep",
+					effect: -1,
+				});
+				vignettes.push({
+					text: `${he} earned extra gratitude from a citizen who seems unthreatened by ${his} soft dick,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (slave.hormoneBalance <= -100 && slave.dick === 0) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a female citizen who adores the masculinity produced by ${slave.slaveName}'s hormone regime,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.dick > 0 && canPenetrate(slave)) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who likes to see his wife get fucked by a dick${boy} whore,`,
+				type: "rep",
+				effect: 1,
+			});
+			if (slave.dick > 3) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a female citizen who likes big stiff cocks, and cannot lie,`,
+					type: "rep",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `${he} irritated a male citizen who brought his girlfriend with him by accidentally showing him up,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.balls > 3) {
+			vignettes.push({
+				text: `${he} disappoints a citizen who wants ${him} to look like a natural girl, since ${his} balls are too big to be hidden,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (canDoVaginal(slave)) {
+			if (slave.vagina === 1) {
+				vignettes.push({
+					text: `${he} got extra attention from a citizen who really likes ${him}, and wants to fuck ${his} pussy as much as possible while it's still tight,`,
+					type: "rep",
+					effect: 1,
+				});
+			} else if (slave.vagina > 2) {
+				vignettes.push({
+					text: `${he} disappointed a citizen whose cock is just too small for ${his} big cunt,`,
+					type: "rep",
+					effect: -1,
+				});
+				if (slave.behavioralQuirk === "cutting" && slave.intelligence >= 2) {
+					vignettes.push({
+						text: `${he} helped a citizen discover a new fetish by making cutting remarks when their cock was too small for ${his} big cunt,`,
+						type: "rep",
+						effect: 1,
+					});
+				} else if (slave.behavioralFlaw === "bitchy") {
+					vignettes.push({
+						text: `${he} irritated a male citizen with ${his} complaints that they were too small to please ${him},`,
+						type: "rep",
+						effect: -3,
+					});
+				}
+			}
+		}
+		if (canDoAnal(slave)) {
+			if (slave.anus === 1) {
+				vignettes.push({
+					text: `${he} got extra attention from a citizen who really likes ${his} butthole, and wants to fuck it as much as possible while it's still tight,`,
+					type: "rep",
+					effect: 1,
+				});
+			} else if (slave.anus > 2) {
+				vignettes.push({
+					text: `${he} disappointed a citizen whose cock is just too small for ${his} loose butthole,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.face > 40) {
+			vignettes.push({
+				text: `${he} lost a potential citizen who was so intimidated by ${his} great beauty that they decided to find a homelier whore,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.face < -10) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who lacks self-confidence, and is more comfortable with homely whores,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.visualAge > 40) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen with serious mommy issues,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.lips > 70) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who likes to play with ${his} lips nonsexually (don't ask),`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (!canTalk(slave)) {
+			vignettes.push({
+				text: `${he} impressed a citizen who didn't know how relaxing a ${boy} who can't talk could be,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.muscles > 95) {
+			vignettes.push({
+				text: `${he} impressed a citizen who was so eager to share workout plans with ${him} that they almost forgot to have sex with ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} gained extra gratitude from a female citizen who likes a ${boy} who can bench-press her before and after they fuck,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} disappointed a citizen by accidentally revealing that ${he}'s considerably stronger than him,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.lactation > 0) {
+			vignettes.push({
+				text: `${he} provided fresh milk for the coffee served at a citizen's business meeting,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} provided fresh milk at a trendy arcology coffeehouse,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.amp === 1) {
+			vignettes.push({
+				text: `${he} disappointed a citizen who thought they would enjoy fucking an amputee, but found it revolting,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else {
+			if (slave.heels === 1 && !(["heels", "pumps", "extreme heels", "boots"].includes(slave.shoes))) {
+				vignettes.push({
+					text: `${he} enticed a new patron who had never really considered buttsex before they saw ${him} crawling along with ${his} asshole vulnerable,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+			if (slave.boobs > 1500 && slave.boobsImplant === 0) {
+				vignettes.push({
+					text: `a young citizen convinced ${him} to jump rope so they could watch ${his} massive natural breasts flop around,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		}
+		if (slave.vaginalAccessory === "chastity belt") {
+			vignettes.push({
+				text: `a wavering citizen who was disappointed that ${his} pussy is unavailable decided to try ${his} ass instead,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.fetish === "mindbroken") {
+			vignettes.push({
+				text: `a citizen really enjoyed being able to treat ${him} however they liked without eliciting a reaction,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.intelligence <= -2) {
+			vignettes.push({
+				text: `a low-class citizen who had no business fucking ${him} managed to trick ${him} into fucking him anyway,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.face > 10 && canDoAnal(slave)) {
+			if (slave.dick > 0) {
+				if (slave.fetish === "buttslut" && jsRandom(0, 100) < 50) {
+					vignettes.push({
+						text: `a citizen was surprised by ${his} penis, so ${he} hid it and enjoyed the buttsex without touching it,`,
+						type: "rep",
+						effect: 1,
+					});
+				} else if (slave.fetish === "buttslut") {
+					vignettes.push({
+						text: `a citizen was surprised by ${his} penis, so ${he} hid it and skillfully pretended to be a real girl,`,
+						type: "rep",
+						effect: -1,
+					});
+				} else if (slave.analSkill >= 100) {
+					vignettes.push({
+						text: `a citizen was surprised by ${his} penis, so ${he} hid it, but could barely tolerate anal without touching it`,
+						type: "rep",
+						effect: 1,
+					});
+				}
+			}
+			if (slave.analSkill < 100 && slave.anus > 2) {
+				vignettes.push({
+					text: `a pair of customers enticed by ${his} beauty but disappointed by ${his} loose butthole doubled up on ${his} poor anus without mercy,`,
+					type: "health",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.fetishKnown === 1 && slave.fetishStrength > 95) {
+			if (slave.fetish === "buttslut" || slave.fetish === "dom") {
+				vignettes.push({
+					text: `${he} showed off by forcing a slave in the stocks to eat ${his} ass`,
+					type: "rep",
+					effect: 1,
+				});
+			} else if (slave.fetish === "masochist") {
+				vignettes.push({
+					text: `${he} cooperated with a customer who wanted to whip ${his} tits black and blue`,
+					type: "health",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.health < 20) {
+			vignettes.push({
+				text: `${he} attracted the attention of a slaveowner alarmed by ${his} poor health, and thought he seemed kind,`,
+				type: "devotion",
+				effect: -1,
+			});
+		}
+		if (slave.vaginalSkill >= 100) {
+			vignettes.push({
+				text: `${he} was brought in to apply ${his} skills to a prominent citizen's virgin son,`,
+				type: "devotion",
+				effect: 0,
+			});
+		}
+		if (canDoAnal(slave) && slave.analSkill < 100 && slave.anus < 2) {
+			vignettes.push({
+				text: `a guy with a huge cock insisted on fucking ${him} in ${his} tight ass all night,`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (slave.relationship <= -2 && slave.intelligence < 1) {
+			vignettes.push({
+				text: `${he} accidentally mentions how much ${he} loves you during intercourse with a citizen who doesn't like to share,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.prestige > 0) {
+			vignettes.push({
+				text: `a college fraternity visiting the arcology for rush week invited ${him} to a gangbang,`,
+				type: "rep",
+				effect: 3,
+			});
+		}
+
+		if (V.arcologies[0].FSSupremacist !== "unset" && slave.race === V.arcologies[0].FSSupremacistRace) {
+			vignettes.push({
+				text: `${he} disappointed a citizen who couldn't bear to see a beautiful ${V.arcologies[0].FSSupremacistRace} be a public slut,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSSubjugationist !== "unset" && slave.race === V.arcologies[0].FSSubjugationistRace) {
+			vignettes.push({
+				text: `${he} had a bad time in general, since most of the citizens who used ${him} didn't care about a ${V.arcologies[0].FSSubjugationistRace} prostitute's health or well-being,`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSYouthPreferentialist !== "unset") {
+			if (slave.visualAge > 35) {
+				vignettes.push({
+					text: `${he} gratified a citizen who wants to keep his MILF fetish in the closet,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSMaturityPreferentialist !== "unset") {
+			if (slave.visualAge <= 20) {
+				vignettes.push({
+					text: `${he} gratified a citizen who wants to keep his fetish for young ${boy} in the closet,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		}
+		if (V.arcologies[0].FSGenderRadicalist !== "unset") {
+			if (slave.dick > 0 && slave.dick < 3) {
+				vignettes.push({
+					text: `${he} gratified a citizen who is coming to terms with Gender Radicalism, and is unthreatened by ${his} little penis,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSGenderFundamentalist !== "unset" && slave.visualAge > 25) {
+			vignettes.push({
+				text: `${he} gratified a citizen who thinks ${he} resembles his ex-wife, who would never let him fuck her butt,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSRepopulationFocus !== "unset") {
+			if (slave.pregType > 1 && slave.pregKnown > 1 && slave.belly >= 10000) {
+				vignettes.push({
+					text: `${he} gratified a citizen who enjoys the feeling of a womb filled with more than a single child,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSRestart !== "unset" && canGetPregnant(slave)) {
+			vignettes.push({
+				text: `${he} gratified a citizen who misses the risk of getting a ${boy} pregnant,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSPaternalist !== "unset") {
+			if (slave.intelligence > 1) {
+				vignettes.push({
+					text: `${he} gratified a citizen who likes to chat with intelligent prostitutes as they fuck ${him},`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSDegradationist !== "unset" && canTalk(slave) && slave.voice > 2) {
+			vignettes.push({
+				text: `${he} gratified a citizen who prefers ${boy} with high-pitched screams,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSBodyPurist !== "unset") {
+			if (slave.boobsImplant > 0) {
+				vignettes.push({
+					text: `${he} gratified a citizen who wants to keep his fetish for breast implants in the closet,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSTransformationFetishist !== "unset" && slave.boobsImplant === 0) {
+			vignettes.push({
+				text: `${he} gratified a citizen who wants to keep his fetish for natural breasts in the closet,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") {
+			if (canTalk(slave) && slave.voice > 2) {
+				vignettes.push({
+					text: `${he} gratified a citizen who loves ${his} high-pitched squeals of pleasure,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+			if (slave.boobs > 800) {
+				vignettes.push({
+					text: `${he} was publicly mocked as an ugly fat cow with dangling udders,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		} else if (V.arcologies[0].FSAssetExpansionist !== "unset" && slave.boobs < 300) {
+			vignettes.push({
+				text: `${he} gratified a citizen who wants to keep his fetish for flat chested ${boy}s in the closet,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSPastoralist !== "unset") {
+			if (slave.lactation === 0) {
+				vignettes.push({
+					text: `${he} disappointed a citizen who could not understand why nothing was coming out of ${his} nipples when he sucked on them,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+			if (slave.nipples === "fuckable") {
+				vignettes.push({
+					text: `${he} left a citizen deeply confused over how ${he} could possibly be a proper cow without suitable teats,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (V.arcologies[0].FSPhysicalIdealist !== "unset" && slave.muscles <= 95) {
+			vignettes.push({
+				text: `${he} disappointed a citizen who could barely believe that ${he} wasn't capable of holding ${himself} in a handstand,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSChattelReligionist !== "unset" && slave.behavioralFlaw === "devout") {
+			vignettes.push({
+				text: `${he} gratified a citizen who desperately wants his cock to be the one that converts ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSRomanRevivalist !== "unset" && slave.race === "white" && slave.height >= 185) {
+			vignettes.push({
+				text: `${he} gratified a citizen who thought ${his} appearance worthy of a lusty northern barbarian,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSAztecRevivalist !== "unset" && slave.devotion > 75 && slave.intelligence >= 2) {
+			vignettes.push({
+				text: `${he} indulged a citizen by following a fertility ritual completely,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSEgyptianRevivalist !== "unset") {
+			vignettes.push({
+				text: `${he} got extra attention from a group of citizens competing to get off with whores of each of the arcology's ethnic groups in the least time,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSEdoRevivalist !== "unset" && slave.face > 40 && slave.intelligence > 1) {
+			vignettes.push({
+				text: `${he} gratified a citizen who wished to do nothing more than converse with a beautiful and intelligent ${boy},`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSArabianRevivalist !== "unset" && slave.entertainSkill >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) {
+			vignettes.push({
+				text: `${he} gratified a citizen who prefers prostitutes who can tell lovely stories,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+
+		vignettes.push({
+			text: `one of the companies with an office in your arcology brought ${him} in for a team-building bukkake party for its employees,`,
+			type: "rep",
+			effect: 1,
+		});
+		vignettes.push({
+			text: "a man dragged his crying wife along so she could watch him fuck a public slut,",
+			type: "rep",
+			effect: 0,
+		});
+		vignettes.push({
+			text: "a woman dragged her angry husband along so he could watch his wife get eaten out by a public slut,",
+			type: "rep",
+			effect: 0,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after having sex with strangers all day, and had a dream about you loving ${him},`,
+			type: "devotion",
+			effect: 1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after having sex with strangers all day, and had a dream about you letting a citizen hurt ${him},`,
+			type: "devotion",
+			effect: -1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after having sex with strangers all day, and had a dream about you protecting ${him} from a mean citizen,`,
+			type: "trust",
+			effect: 1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after having sex with strangers all day, and had a dream about you selling ${him} for good,`,
+			type: "trust",
+			effect: -1,
+		});
+	}
+	return jsEither(vignettes);
+};
+=======
 /*:: Slave Generation JS [script]*/
 
 window.generateAge = function generateAge(slave) {
diff --git a/src/js/vignettes.tw b/src/js/vignettes.tw
new file mode 100644
index 00000000000..001962099e7
--- /dev/null
+++ b/src/js/vignettes.tw
@@ -0,0 +1,2700 @@
+::VignettesJS[script]
+
+window.GetVignette = function GetVignette(slave) {
+	const V = State.variables;
+	let vignettes = [];
+
+	const pronouns = getPronouns(slave);
+	const he = pronouns.pronoun;
+	const him = pronouns.object;
+	const his = pronouns.possessive;
+	const hers = pronouns.posessivePronoun;
+	const himself = pronouns.objectReflexive;
+	const boy = pronouns.noun;
+
+
+	if (slave.assignment === "whore" || slave.assignment === "work in the brothel") {
+		let seed = jsRandom(1, 10);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} witnessed a domestic dispute over another whore,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a free whore finally sink into slavery,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that construction forced ${him} to move from ${his} usual spot,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that a customer used a new and improved sex toy on ${him},`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 5:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was an appointment with an unusually perverted family,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 6:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a man sell his wife into slavery,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 7:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a woman sell her daughters into slavery,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 8:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} watched a citizen descend into aphrodisiac addiction,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 9:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} watched a citizen develop the beginnings of sex addiction,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} witnessed a citizen administering a brutal public punishment to one of their slaves,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+		}
+		seed = jsRandom(1, 5);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `a citizen punished one of his slaves by tying ${his} up in public near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `a citizen shared one of his slaves with the public near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `a private brothel offered a promotion near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `some free sluts threw an aphrodisiac street party near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `a contract breaker was punished with the pillory near where ${slave.slaveName} was working. This cut into ${his} business that day,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+		}
+		seed = jsRandom(1, 5);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `one of ${his} regular customers got a divorce and came to ${him} for repeated consolation,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `a brothel near where ${slave.slaveName} usually works had business trouble,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `a competing whore that looks like ${him} fell ill, driving a customer to look for an alternative,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `a street whore that works near ${him} was badly beaten by an abusive customer and had to take time off. The reduced competition got ${him} more business,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `an influx of tourists came into ${his} part of the arcology, earning ${him} more business for a day,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+		}
+
+		if (slave.fetishKnown === 1) {
+			switch (slave.fetish) {
+				case "submissive":
+					vignettes.push({
+						text: `${he} deeply impressed a customer with ${his} sincere submission to them,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} lost a customer who secretly wanted ${him} to show a little initiative,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "cumslut":
+					vignettes.push({
+						text: `${he} deeply impressed a customer with ${his} hunger for their cum,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a customer who didn't know how much cum fetishes revolted them until ${he} displayed ${his},`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "humiliation":
+					vignettes.push({
+						text: `${he} earned repeat business from a customer who didn't know how much they liked public sex until ${he} got them to try it,`,
+						type: "cash",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a customer who didn't know how much exhibitionism turned them off until they tried public sex with ${him},`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "buttslut":
+					if (canDoAnal(slave)) {
+						vignettes.push({
+							text: `${he} earned repeat business from a customer who didn't know how much they liked fucking buttholes until ${he} got them to try fucking ${his},`,
+							type: "cash",
+							effect: 1,
+						});
+						vignettes.push({
+							text: `${he} disgusted a customer who didn't know how much buttsex turned them off until ${he} got them to try fucking ${his} ass,`,
+							type: "rep",
+							effect: -1,
+						});
+					}
+					if (slave.butt >= 3) {
+						vignettes.push({
+							text: `${he} earned repeat business from a customer who didn't know how much they liked big butts until ${he} gave them a lap dance they'll never forget,`,
+							type: "cash",
+							effect: 1,
+						});
+					}
+					vignettes.push({
+						text: `${he} earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,`,
+						type: "rep",
+						effect: 1,
+					}); ;
+					vignettes.push({
+						text: `${he} disgusted a customer who didn't know how much butts turned them off until ${he} put ${his} hands on theirs,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "boobs":
+					vignettes.push({
+						text: `${he} deeply impressed a customer by orgasming to nothing but the feeling of them sucking ${his} nipples,`,
+						type: "rep",
+						effect: 1,
+					}); ;
+					vignettes.push({
+						text: `${he} disappointed a female customer who didn't know how uninterested she was in nipple play before trying it,`,
+						type: "rep",
+						effect: -1,
+					});
+					if (slave.nipples === "fuckable") {
+						vignettes.push({
+							text: `${he} left a lasting impression on a pair of customers after nearly passing out from a series of intense orgasms from getting ${his} nipples fucked,`,
+							type: "cash",
+							effect: 2,
+						});
+					}
+					break;
+				case "sadist":
+					vignettes.push({
+						text: `${he} deeply impressed a customer who brought their own slave to ${him} for abuse with ${his} sadism,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `a customer brought ${him} their own slave to abuse, but the sight proved to be a turn off,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "masochist":
+					vignettes.push({
+						text: `${he} helped a customer discover a new fetish by orgasming when they accidentally hurt ${him},`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disturbed a customer who accidentally hurt ${him} by orgasming,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "dom":
+					vignettes.push({
+						text: `${he} made a female customer ${his} bitch: fortunately, the customer wanted to be ${his} bitch and came back for more,`,
+						type: "cash",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} accidentally overwhelmed a customer with ${his} sexual dominance,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "pregnancy":
+					vignettes.push({
+						text: `${he} earned repeat business from a customer who didn't know how much they liked pregnancy play until ${he} begged them to knock ${him} up,`,
+						type: "cash",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a customer who didn't know how much pregnancy play turned them off until ${he} begged them to knock ${him} up,`,
+						type: "rep",
+						effect: -1,
+					});
+			}
+		}
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				vignettes.push({
+					text: `${he} manages to give a citizen the impression ${he} thinks ${himself} better than them,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "bitchy":
+				vignettes.push({
+					text: `${he} makes an emasculating remark to a customer right after they fuck ${him},`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "odd":
+				vignettes.push({
+					text: `${he} infuriates a potential customer with ${his} nervous tics,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "hates men":
+				vignettes.push({
+					text: `${his} disgust towards men surfaces at a bad time, losing ${him} a male customer,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "hates women":
+				vignettes.push({
+					text: `${his} disgust towards women surfaces at a bad time, losing ${him} a female customer,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "gluttonous":
+				vignettes.push({
+					text: `${he} accidentally lingers at a meal, missing a customer appointment,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "anorexic":
+				vignettes.push({
+					text: `${his} bulimia surfaces at an extremely inopportune moment, turning a customer off,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "devout":
+				vignettes.push({
+					text: `a customer catches ${him} praying to ${himself} as they inserts themselves into ${him}, turning them off,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "liberated":
+				vignettes.push({
+					text: `${he} treats a rude potential customer impolitely, because ${he} thinks that's fair,`,
+					type: "cash",
+					effect: -1,
+				});
+		}
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				vignettes.push({
+					text: `${he} vomits while trying to deepthroat a customer,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates anal":
+				vignettes.push({
+					text: `${he} cries while taking anal from a customer who isn't into painal,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates penetration":
+				vignettes.push({
+					text: `${he} cries while taking a pounding from a customer who likes their sex consensual,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "shamefast":
+				vignettes.push({
+					text: `${he} cries while a potential customer looks ${him} over,`,
+					type: "cash",
+					effect: -1,
+				});
+				vignettes.push({
+					text: `${he} disrobed so slowly that a potential customer gave up on ${him},`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "idealistic":
+				vignettes.push({
+					text: `${he} cries when explaining the price of ${his} body to a potential customer,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "repressed":
+				vignettes.push({
+					text: `${he} misunderstands a potential customer's lewd requests, turning them off,`,
+					type: "cash",
+					effect: -1,
+				});
+				break;
+			case "apathetic":
+				vignettes.push({
+					text: `${he} fails to notice when a customer achieves orgasm,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "neglectful":
+				vignettes.push({
+					text: `${he} brings a denial fetishist to orgasm three times without cumming ${himself}, earning their repeat business,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "cum addict":
+				vignettes.push({
+					text: `${he}'s so focused on sucking down a customer's cum that ${he} managed to drive them to repeated orgasm, earning their repeated business once they got the feeling back in their legs,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "anal addict":
+				vignettes.push({
+					text: `${he} takes a trio of dicks in ${his} ass without hesitation, earning repeat business from one of them thoroughly impressed by ${his} anal addiction,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "attention whore":
+				vignettes.push({
+					text: `${he} got repeat business from a man who loves fucking ${him} in the middle of crowded rooms,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "breast growth":
+				vignettes.push({
+					text: `${he} got repeat business from a woman with huge breasts who enjoys roleplaying her breast expansion fetishes with ${him},`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "abusive":
+				vignettes.push({
+					text: `${he} got repeat business from a man who loves physically abusive sex, though his testicles could only take so much in one week,`,
+					type: "cash",
+					effect: 2,
+				});
+				break;
+			case "malicious":
+				vignettes.push({
+					text: `${he} got repeat business from a masochistic woman who enjoys being whipped and degraded,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "self hating":
+				vignettes.push({
+					text: `${he} got repeat business from an abusive man who thoroughly enjoyed how diligently ${he} took it,`,
+					type: "cash",
+					effect: 3,
+				});
+				break;
+			case "breeder":
+				vignettes.push({
+					text: `${he} got repeat business from a pregnancy fetishist nearly driven mad with lust over ${his} pregnancy obsession,`,
+					type: "cash",
+					effect: 3,
+				});
+		}
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				vignettes.push({
+					text: `${he} confidently presses forward with a wavering potential customer, and makes the sale,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "cutting":
+				vignettes.push({
+					text: `${he} makes such a gloriously cutting remark to a male customer that a female bystander comes to ${him} for repeat business,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "funny":
+				vignettes.push({
+					text: `${he} makes a group of citizens laugh so hard, one of them comes to ${him} for repeat business,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "fitness":
+				vignettes.push({
+					text: `${he} continues a marathon gangbang past the point where most would have passed out,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "adores women":
+				vignettes.push({
+					text: `${he} strikes up a personal friendship with a regular female customer,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "adores men":
+				vignettes.push({
+					text: `${he} strikes up a personal friendship with a regular male customer,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "insecure":
+				vignettes.push({
+					text: `${he} successfully convinces a regular customer that ${he}'s reliant on them emotionally,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "sinful":
+				vignettes.push({
+					text: `${he} helps a customer get past their religious hangups through sex with the friendly neighborhood whore,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "advocate":
+				vignettes.push({
+					text: `${he} successfully convinces a wavering potential customer that there's nothing wrong with banging a whore,`,
+					type: "cash",
+					effect: 1,
+				});
+		}
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				vignettes.push({
+					text: `${he} earns repeat business from a citizen who's obsessed with gagfucks,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "painal queen":
+				vignettes.push({
+					text: `${he} earns repeat business from a citizen who's obsessed with painal,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "strugglefuck queen":
+				vignettes.push({
+					text: `${he} earns repeat business from a citizen who's obsessed with strugglefucking,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "tease":
+				vignettes.push({
+					text: `${he} convinces a citizen who's never had sex with a prostitute to patronize ${him} with some truly inspired flirting,`,
+					type: "cash",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `a few partiers were so impressed with ${his} provocative teasing that they repeated ${his} wit to friends,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "romantic":
+				vignettes.push({
+					text: `a citizen becomes infatuated with ${him}, since they are convinced ${he}'s infatuated with them,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "perverted":
+				vignettes.push({
+					text: `${he} earns some momentary notoriety by engaging in a previously unheard-of sex act,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "caring":
+				vignettes.push({
+					text: `${he} serves as an impromptu sounding board for a customer having marital trouble,`,
+					type: "cash",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `a customer was so enamored with ${his} kind and caring manner than they proposed to ${him} and offered to take ${him} away, and when ${he} refused, they left a sizable tip,`,
+					type: "cash",
+					effect: 1,
+				});
+		}
+
+		if (slave.pitKills > 0) {
+			vignettes.push({
+				text: `${he} earns repeat business from a customer obsessed with the fact that ${he}'s a killer,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.oralCount > 500) {
+			vignettes.push({
+				text: `a customer into degradation becomes obsessed with driving ${his} oral mileage as high as possible,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.analCount > 500 && slave.anus > 0) {
+			vignettes.push({
+				text: `a customer into degradation becomes obsessed with driving ${his} anal mileage as high as possible,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.vaginalCount > 500 && slave.vagina > 0) {
+			vignettes.push({
+				text: `a customer into degradation becomes obsessed with driving ${his} pussy mileage as high as possible,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.devotion > 95) {
+			vignettes.push({
+				text: `${he} really pushed ${himself} to please a customer with tastes that disgusted ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+		} else if (slave.devotion < -50) {
+			vignettes.push({
+				text: `${his} fury at being sold for sex turned a customer off before they could fuck ${him},`,
+				type: "cash",
+				effect: -1,
+			});
+		} else if (slave.devotion <= 20) {
+			vignettes.push({
+				text: `${he} treasured a love token given to ${him} by a customer ${he} fooled into thinking ${his} affection was real,`,
+				type: "devotion",
+				effect: -1,
+			});
+		}
+		if (slave.trust > 95) {
+			vignettes.push({
+				text: `${he} really pushed ${himself} to accept a customer with tastes that frightened ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+		} else if (slave.trust < -50) {
+			vignettes.push({
+				text: `${his} tearful terror at being forced to sell ${himself} for sex turned a customer off before they could fuck ${him},`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (slave.livingRules === "luxurious") {
+			vignettes.push({
+				text: `${he} got a truly perfect night's sleep, which put ${him} in the right frame of mind for the whole day,`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.livingRules === "spare") {
+			vignettes.push({
+				text: `${he} got a poor night's sleep in the noisy dormitory, which took the shine off ${his} efforts for the whole day,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.releaseRules === "permissive" || slave.releaseRules === "masturbation") {
+			vignettes.push({
+				text: `a customer asked if ${he} masturbates, and then spent an hour jerking off as ${he} described how,`,
+				type: "cash",
+				effect: 1,
+			});
+		} else if (slave.releaseRules === "restrictive") {
+			vignettes.push({
+				text: `a customer asked if ${he} masturbates, and seemed disappointed when ${he} answered honestly,`,
+				type: "cash",
+				effect: 0,
+			});
+		} else {
+			vignettes.push({
+				text: `a closeted female customer asked about ${his} sex life with ot${his} slaves, and was enthralled by ${his} answer,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.health > 80) {
+			vignettes.push({
+				text: `a potential customer in the medical field was fascinated by ${his} health, and spent almost as much time examining ${him} as they did having sex with ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.weight < 10) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a customer who misses ${boy}s without a spare tire around their middle,`,
+					type: "cash",
+					effect: 1,
+				});
+			} else if (slave.weight < 95) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} gains a lot more weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			} else {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a customer who loves them big and soft`,
+					type: "cash",
+					effect: 0,
+				});
+			}
+			if (slave.weight > 30) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a customer who enjoyed the way ${his} middle jiggled as they fucked ${him},`,
+					type: "cash",
+					effect: 0,
+				});
+			}
+		} else {
+			if (slave.weight > 95) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} loses a lot of weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			} else if (slave.weight > 30) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} loses some weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			} else if (slave.weight <= -30) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} gains some weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			} else if (slave.weight < -95) {
+				vignettes.push({
+					text: `a potential customer told ${him} that they are looking forward to patronizing ${him} once ${he} gains a lot of weight,`,
+					type: "cash",
+					effect: 0,
+				});
+			}
+		}
+		if (slave.drugs === "testicle enhancement") {
+			vignettes.push({
+				text: `${he} took it in public, with ${his} copious ejaculation getting ${him} another customer right away,`,
+				type: "cash",
+				effect: 1,
+			});
+		} else if (slave.drugs === "hyper testicle enhancement") {
+			vignettes.push({
+				text: `${he} bloated a female customer's belly with ${his} copious ejaculate, leading her to say she is looking forward to come back and get filled again,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.aphrodisiacs > 1 || slave.inflationType === "aphrodisiac") {
+			vignettes.push({
+				text: `${his} piteous begging for sex due to ${his} extreme aphrodisiac dosage turned a potential customer off,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (slave.inflationType === "aphrodisiac") {
+			vignettes.push({
+				text: `${his} piteous begging for sex coupled with ${his} bloated belly pleased a customer who loves desperate ${boy}s,`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${his} piteous begging for sex coupled with ${his} bloated belly horrified a customer who didn't realize how low a ${boy} could stoop,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.addict > 50) {
+			vignettes.push({
+				text: `${he} zoned out badly due to a low point between aphrodisiac doses, disappointing a customer,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.bellyPreg >= 10000 || slave.bellyImplant >= 10000) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who likes to do nothing more than cuddle with ${his} swollen belly,`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `a night with guy who likes rough, hard sex with heavily pregnant ${boy}s took its toll on ${him},`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (slave.bellyFluid >= 5000) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who loved the way ${his} belly moved as they fucked ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} disgusted a customer when their forceful fucking caused ${him} to release ${his} contained ${slave.inflationType} all over them,`,
+				type: "rep",
+				effect: -2,
+			});
+		}
+		if (slave.hormoneBalance >= 100 && !canAchieveErection(slave)) {
+			if (slave.dick > 0) {
+				vignettes.push({
+					text: `${he} disappointed a customer who was sure they could get ${slave.slaveName}'s cock erect,`,
+					type: "rep",
+					effect: -1,
+				});
+				vignettes.push({
+					text: `${he} earned repeat business from a customer who seems unthreatened by ${his} soft dick,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (slave.hormoneBalance <= -100 && slave.dick === 0) {
+			vignettes.push({
+				text: `${he} earned repeat business from a female customer who adores the masculinity produced by ${slave.slaveName}'s hormone regime,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.dick > 0 && canPenetrate(slave)) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who likes to see his wife get fucked by a dick${boy} whore,`,
+				type: "cash",
+				effect: 1,
+			});
+			if (slave.dick > 3) {
+				vignettes.push({
+					text: `${he} earned repeat business from a female customer who likes big stiff cocks, and cannot lie,`,
+					type: "cash",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `${he} irritated a male customer who brought his girlfriend with him by accidentally showing him up,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.balls > 3) {
+			vignettes.push({
+				text: `${he} loses a customer who wants ${him} to look like a natural girl, since ${his} balls are too big to be hidden,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (canDoVaginal(slave)) {
+			if (slave.vagina === 1) {
+				vignettes.push({
+					text: `${he} got extra business from a customer who really likes ${him}, and wants to fuck ${his} pussy as much as possible while it's still tight,`,
+					type: "cash",
+					effect: 1,
+				});
+			} else if (slave.vagina > 2) {
+				vignettes.push({
+					text: `${he} disappointed a customer whose cock is just too small for ${his} big cunt,`,
+					type: "rep",
+					effect: -1,
+				});
+				if (slave.behavioralQuirk === "cutting" && slave.intelligence >= 2) {
+					vignettes.push({
+						text: `${he} helped a customer discover a new fetish by making cutting remarks when their cock was too small for ${his} big cunt,`,
+						type: "rep",
+						effect: 1,
+					});
+				} else if (slave.behavioralFlaw === "bitchy") {
+					vignettes.push({
+						text: `${he} irritated a male customer with ${his} complaints that they were too small to please ${him},`,
+						type: "rep",
+						effect: -2,
+					});
+				}
+			}
+		}
+		if (canDoAnal(slave)) {
+			if (slave.anus === 1) {
+				vignettes.push({
+					text: `${he} got extra business from a customer who really likes ${his} butthole, and wants to fuck it as much as possible while it's still tight,`,
+					type: "cash",
+					effect: 1,
+				});
+			} else if (slave.anus > 2) {
+				vignettes.push({
+					text: `${he} disappointed a customer whose cock is just too small for ${his} loose butthole,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.face > 40) {
+			vignettes.push({
+				text: `${he} lost a potential customer who was so intimidated by ${his} great beauty that they decided to find a homelier whore,`,
+				type: "cash",
+				effect: -1,
+			});
+		} else if (slave.face < -10) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who lacks self-confidence, and is more comfortable with homely whores,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.visualAge > 40) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer with serious mommy issues,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.lips > 70) {
+			vignettes.push({
+				text: `${he} earned repeat business from a customer who likes to play with ${his} lips nonsexually (don't ask),`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (!canTalk(slave)) {
+			vignettes.push({
+				text: `${he} impressed a customer who didn't know how relaxing a ${boy} who can't talk could be,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.muscles > 95) {
+			vignettes.push({
+				text: `${he} impressed a customer who was so eager to share workout plans with ${him} that they almost forgot to have sex with ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} gained repeat business from a female customer who likes a ${boy} who can bench-press her before and after they fuck,`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} disappointed a customer by accidentally revealing that ${he}'s considerably stronger than them,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.lactation > 0) {
+			vignettes.push({
+				text: `${he} was well compensated for providing fresh milk for the coffee served at a customer's business meeting,`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} served as a conveniently lactating whore near a trendy arcology coffeehouse,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.amp === 1) {
+			vignettes.push({
+				text: `${he} disappointed a customer who thought they would enjoy fucking an amputee, but found it revolting,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.amp === -1) {
+			vignettes.push({
+				text: `a strange customer was excited by the sight of ${his} prosthetic limbs,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `a customer was disgusted at the thought of ${his} basic prosthetic limbs,`,
+				type: "rep",
+				effect: -1,
+			});
+			vignettes.push({
+				text: `a customer was put off by ${his} prosthetic limbs,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.amp === -2) {
+			vignettes.push({
+				text: `a customer was excited by ${his} vibrating fingertips,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,",
+				type: "cash",
+				effect: 0,
+			});
+			vignettes.push({
+				text: `a customer was put off by ${his} crude artificial limbs,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.amp === -3) {
+			vignettes.push({
+				text: `a strange customer was excited by the sight of ${his} artificial limbs,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,",
+				type: "cash",
+				effect: 0,
+			});
+			vignettes.push({
+				text: `a customer was put off by the sight of ${his} prosthetic limbs,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.amp === -4) {
+			vignettes.push({
+				text: `a customer was excited by the thought of having sex with a slave with p-limbs, but was scared off by ${his} combat p-limbs,`,
+				type: "cash",
+				effect: -1,
+			});
+			vignettes.push({
+				text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,",
+				type: "cash",
+				effect: 0,
+			});
+			vignettes.push({
+				text: `a customer was greatly intimidated by ${his} combat p-limbs,`,
+				type: "cash",
+				effect: -1,
+			});
+		} else if (slave.amp === -5) {
+			vignettes.push({
+				text: `a customer was fascinated by ${his} cybernetic limbs, and spent almost as much time examining them as they did having sex with ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+			vignettes.push({
+				text: "a customer was excited by the thought of having sex with a cybernetically enhanced slave,",
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `a customer was greatly intimidated by the sight of ${his} cybernetic limbs and was frightened away,`,
+				type: "cash",
+				effect: -1,
+			});
+		} else {
+			if (slave.heels === 1 && !(["heels", "pumps", "extreme heels", "boots"].includes(slave.shoes))) {
+				vignettes.push({
+					text: `${he} enticed a new customer who had never really considered buttsex before they saw ${him} crawling along with ${his} asshole vulnerable,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+			if (slave.boobs > 1500 && slave.boobsImplant === 0) {
+				vignettes.push({
+					text: `a young customer hired ${him} to jump rope so they could watch ${his} massive natural breasts flop around,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		}
+		if (slave.vaginalAccessory === "chastity belt") {
+			vignettes.push({
+				text: `a wavering customer who was disappointed that ${his} pussy is unavailable decided to try ${his} ass instead,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.fetish === "mindbroken") {
+			vignettes.push({
+				text: `a customer really enjoyed being able to treat ${him} however they liked without eliciting a reaction,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (slave.intelligence <= -2) {
+			vignettes.push({
+				text: `a customer managed to trick ${him} into fucking him without payment,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (slave.face > 10 && canDoAnal(slave)) {
+			if (slave.dick > 0) {
+				if (slave.fetish === "buttslut" && jsRandom(0, 100) < 50) {
+					vignettes.push({
+						text: `a customer was surprised by ${his} penis, so ${he} hid it and enjoyed the buttsex without touching it,`,
+						type: "rep",
+						effect: 1,
+					});
+				} else if (slave.fetish === "buttslut") {
+					vignettes.push({
+						text: `a customer was surprised by ${his} penis, so ${he} hid it, but could barely tolerate anal without touching it,`,
+						type: "rep",
+						effect: -1,
+					});
+				} else if (slave.analSkill >= 100) {
+					vignettes.push({
+						text: `a customer was surprised by ${his} penis, so ${he} hid it and skillfully pretended to be a real girl,`,
+						type: "rep",
+						effect: 1,
+					});
+				}
+			}
+			if (slave.analSkill < 100 && slave.anus > 2) {
+				vignettes.push({
+					text: `a pair of customers enticed by ${his} beauty but disappointed by ${his} loose butthole doubled up on ${his} poor anus without mercy,`,
+					type: "health",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.fetishKnown === 1 && slave.fetishStrength > 95) {
+			if (slave.fetish === "buttslut" || slave.fetish === "dom") {
+				vignettes.push({
+					text: `${he} advertised ${himself} by forcing a slave in the stocks to eat ${his} ass, drumming up business,`,
+					type: "cash",
+					effect: 1,
+				});
+			} else if (slave.fetish === "masochist") {
+				vignettes.push({
+					text: `${he} cooperated with a citizen who wanted to whip ${his} tits black and blue,`,
+					type: "health",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.health < 20) {
+			vignettes.push({
+				text: `${he} attracted the attention of a slaveowner alarmed by ${his} poor health, and thought they seemed kind,`,
+				type: "devotion",
+				effect: -1,
+			});
+		}
+		if (slave.vaginalSkill >= 100) {
+			vignettes.push({
+				text: `${he} was hired to apply ${his} skills to a customer's virgin son,`,
+				type: "devotion",
+				effect: 0,
+			});
+		}
+		if (canDoAnal(slave) && slave.analSkill < 100 && slave.anus < 2) {
+			vignettes.push({
+				text: `a guy with a huge cock paid for the right to fuck ${him} in ${his} tight ass all night,`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (slave.relationship <= -2 && slave.intelligence < 1) {
+			vignettes.push({
+				text: `${he} accidentally mentions how much ${he} loves you during intercourse with a customer who doesn't like to share,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.prestige > 0) {
+			vignettes.push({
+				text: `a college fraternity visiting the arcology for rush week hired ${him} for a gangbang,`,
+				type: "cash",
+				effect: 3,
+			});
+		}
+
+		if (V.arcologies[0].FSSupremacist !== "unset" && slave.race === V.arcologies[0].FSSupremacistRace) {
+			vignettes.push({
+				text: `${he} lost a customer who couldn't bear to see a beautiful ${V.arcologies[0].FSSupremacistRace} be a whore,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSSubjugationist !== "unset" && slave.race === V.arcologies[0].FSSubjugationistRace) {
+			vignettes.push({
+				text: `${he} had a bad time in general, since most of ${his} customers didn't care about a ${V.arcologies[0].FSSubjugationistRace} prostitute's health or well-being,`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSYouthPreferentialist !== "unset") {
+			if (slave.visualAge > 35) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who wants to keep their MILF fetish in the closet,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSMaturityPreferentialist !== "unset") {
+			if (slave.visualAge <= 20) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who wants to keep their fetish for young ${boy}s in the closet,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		}
+		if (V.arcologies[0].FSGenderRadicalist !== "unset") {
+			if (slave.dick > 0 && slave.dick < 3) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who is coming to terms with Gender Radicalism, and is unthreatened by ${his} little penis,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSGenderFundamentalist !== "unset" && slave.visualAge > 25) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who thinks ${he} resembles their ex-wife, who would never let them fuck her butt,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSRepopulationFocus !== "unset") {
+			if (slave.pregType > 1 && slave.pregKnown > 1 && slave.belly >= 10000) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who loves fucking ${boy}s with wombs filled by more than a single child,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSRestart !== "unset" && canGetPregnant(slave)) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who misses the risk of getting a ${boy} pregnant,`,
+				type: "cash",
+				effect: 3,
+			});
+		}
+		if (V.arcologies[0].FSPaternalist !== "unset") {
+			if (slave.intelligence > 1) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who likes to chat with intelligent prostitutes while fucking,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSDegradationist !== "unset" && canTalk(slave) && slave.voice > 2) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who prefers ${boy}s with high-pitched screams,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSBodyPurist !== "unset") {
+			if (slave.boobsImplant > 0) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who wants to keep their fetish for breast implants in the closet,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSTransformationFetishist !== "unset" && slave.boobsImplant === 0) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who wants to keep their fetish for natural breasts in the closet,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") {
+			if (canTalk(slave) && slave.voice > 2) {
+				vignettes.push({
+					text: `${he} got repeat business from a customer who loves ${his} high-pitched squeals of pleasure,`,
+					type: "cash",
+					effect: 1,
+				});
+			}
+			if (slave.boobs > 800) {
+				vignettes.push({
+					text: `${he} was publicly mocked as an ugly fat cow with dangling udders,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		} else if (V.arcologies[0].FSAssetExpansionist !== "unset" && slave.boobs < 300) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who wants to keep their fetish for flat chested ${boy}s in the closet,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSPastoralist !== "unset") {
+			if (slave.lactation === 0) {
+				vignettes.push({
+					text: `${he} lost a customer who could not understand why nothing was coming out of ${his} nipples when they sucked on them,`,
+					type: "cash",
+					effect: -1,
+				});
+			}
+			if (slave.nipples === "fuckable") {
+				vignettes.push({
+					text: `${he} lost a customer who refused ${he} could possibly be a proper cow with nipples like ${his},`,
+					type: "cash",
+					effect: -1,
+				});
+			}
+		}
+		if (V.arcologies[0].FSPhysicalIdealist !== "unset" && slave.muscles <= 95) {
+			vignettes.push({
+				text: `${he} lost a customer who could barely believe that ${he} wasn't capable of holding ${himself} in a handstand,`,
+				type: "cash",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSChattelReligionist !== "unset" && slave.behavioralFlaw === "devout") {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who desperately wants their cock to be the one that converts ${him},`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSRomanRevivalist !== "unset" && slave.race === "white" && slave.height >= 185) {
+			vignettes.push({
+				text: `${he} attracted a customer who thought ${his} appearance worthy of a lusty northern barbarian,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSAztecRevivalist !== "unset" && slave.devotion > 75 && slave.intelligence >= 2) {
+			vignettes.push({
+				text: `${he} indulged a citizen by following a fertility ritual completely,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSEgyptianRevivalist !== "unset") {
+			vignettes.push({
+				text: `${he} got extra business from a group of citizens competing to get off with whores of each of the arcology's ethnic groups in the least time,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSEdoRevivalist !== "unset" && slave.face > 40 && slave.intelligence > 1) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent ${boy},`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSArabianRevivalist !== "unset" && slave.entertainSkill >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) {
+			vignettes.push({
+				text: `${he} got repeat business from a customer who prefers prostitutes who can tell lovely stories,`,
+				type: "cash",
+				effect: 1,
+			});
+		}
+
+		vignettes.push({
+			text: `one of the companies with an office in your arcology retained ${him} for a team-building bukkake party for its employees,`,
+			type: "rep",
+			effect: 1,
+		});
+		vignettes.push({
+			text: "a man dragged his crying wife along so she could watch him fuck a whore,",
+			type: "rep",
+			effect: 0,
+		});
+		vignettes.push({
+			text: "a woman dragged her angry husband along so he could watch her get eaten out by a whore,",
+			type: "rep",
+			effect: 0,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after being sold for sex all day, and had a dream about you loving ${him},`,
+			type: "devotion",
+			effect: 1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after being sold for sex all day, and had a dream about you letting a customer hurt ${him},`,
+			type: "devotion",
+			effect: -1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after being sold for sex all day, and had a dream about you protecting ${him} from a mean customer,`,
+			type: "trust",
+			effect: 1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after being sold for sex all day, and had a dream about you selling ${him} for good,`,
+			type: "trust",
+			effect: -1,
+		});
+	} else if (slave.assignment === "serve the public" || slave.assignment === "serve in the club") {
+		let seed = jsRandom(1, 10);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} witnessed a domestic dispute over another slut,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw an aphrodisiac addict ${he} knew sell herself into slavery,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} had to move to follow the <span class="green">most prominent citizens</span> to a newly fashionable hall,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that a citizen used a new and improved sex toy on ${him},`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 5:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was being used in public by an incestuous pair of citizens,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 6:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a notorious slut come of age and start swapping anal for aphrodisiacs,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 7:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} saw a citizen experiment with lesbian sex for the first time, in public,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 8:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} watched a citizen descend into aphrodisiac addiction,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			case 9:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} watched a citizen develop the beginnings of sex addiction,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `the most interesting thing that happened to ${him} at work was that ${he} witnessed a citizen using a public slut so brutally that they had to pay compensation afterward,`,
+					type: "rep",
+					effect: 0,
+				});
+				break;
+		}
+		seed = jsRandom(1, 5);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `a citizen punished one of his slaves by tying her up in public near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `a citizen shared one of his slaves with the public near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `a private brothel offered a promotion near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `some free sluts threw an aphrodisiac street party near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `a contract breaker was punished with the pillory near where ${slave.slaveName} was serving as a public slut. This made ${him} less popular that day,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+		}
+		seed = jsRandom(1, 5);
+		switch (seed) {
+			case 1:
+				vignettes.push({
+					text: `one of ${his} regular patrons got a divorce and came to ${him} for repeated consolation,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case 2:
+				vignettes.push({
+					text: `a club near where ${slave.slaveName} usually works had business trouble,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case 3:
+				vignettes.push({
+					text: `a competing slut that looks like ${him} fell ill, driving a patron to look for an alternative,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case 4:
+				vignettes.push({
+					text: `a street slut that works near ${him} was badly beaten by an abusive citizen and had to take time off. The reduced competition got ${his} more attention,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			default:
+				vignettes.push({
+					text: `an influx of tourists came into ${his} part of the arcology, earning ${him} more business for a day,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+		}
+
+		if (slave.fetishKnown === 1) {
+			switch (slave.fetish) {
+				case "submissive":
+					vignettes.push({
+						text: `${he} deeply impressed a citizen with ${his} sincere submission to them,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} lost a patron who secretly wanted ${him} to show a little initiative,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "cumslut":
+					vignettes.push({
+						text: `${he} deeply impressed a citizen with ${his} hunger for their cum,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a citizen who didn't know how much cum fetishes revolted them until ${he} displayed ${hers},`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "humiliation":
+					vignettes.push({
+						text: `${he} earned extra gratitude from a citizen who didn't know how much they liked public sex until ${he} got them to try it,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a citizen who didn't know how much exhibitionism turned them off until they tried public sex with ${him},`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "buttslut":
+					if (canDoAnal(slave)) {
+						vignettes.push({
+							text: `${he} earned extra gratitude from a citizen who didn't know how much they liked fucking buttholes until ${he} got them to try fucking ${hers},`,
+							type: "rep",
+							effect: 1,
+						});
+						vignettes.push({
+							text: `${he} disgusted a citizen who didn't know how much buttsex turned them off until ${he} got them to try fucking ${his} ass,`,
+							type: "rep",
+							effect: -1,
+						});
+					}
+					if (slave.butt >= 3) {
+						vignettes.push({
+							text: `${he} earned extra gratitude from a citizen who didn't know how much they liked big butts until ${he} gave them a lap dance they'll never forget,`,
+							type: "rep",
+							effect: 1,
+						});
+					}
+					vignettes.push({
+						text: `${he} earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,`,
+						type: "rep",
+						effect: 1,
+					}); ;
+					vignettes.push({
+						text: `${he} disgusted a citizen who didn't know how much butts turned them off until ${he} put ${his} hands on theirs,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "boobs":
+					vignettes.push({
+						text: `${he} deeply impressed a citizen by orgasming to nothing but the feeling of them sucking ${his} nipples,`,
+						type: "rep",
+						effect: 1,
+					}); ;
+					vignettes.push({
+						text: `${he} disappointed a female citizen who didn't know how uninterested she was in nipple play before trying it,`,
+						type: "rep",
+						effect: -1,
+					});
+					if (slave.nipples === "fuckable") {
+						vignettes.push({
+							text: `${he} left lasting impression on a pair of citizens after nearly passing out from a series of intense orgasms from getting ${his} nipples fucked,`,
+							type: "rep",
+							effect: 2,
+						});
+					}
+					break;
+				case "sadist":
+					vignettes.push({
+						text: `${he} deeply impressed a citizen who brought their own slave to ${his} for abuse with ${his} sadism,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `a citizen brought ${him} their own slave to abuse, but the sight proved to be a turn off,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "masochist":
+					vignettes.push({
+						text: `${he} helped a citizen discover a new fetish by orgasming when they accidentally hurt ${him},`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disturbed a citizen who accidentally hurt ${him} by orgasming,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "dom":
+					vignettes.push({
+						text: `${he} made a female citizen ${his} bitch: fortunately, the citizen wanted to be ${his} bitch and came back for more`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} accidentally overwhelmed a citizen with ${his} sexual dominance,`,
+						type: "rep",
+						effect: -1,
+					});
+					break;
+				case "pregnancy":
+					vignettes.push({
+						text: `${he} earned extra gratitude from a citizen who didn't know how much they liked pregnancy play until ${he} begged them to knock ${him} up,`,
+						type: "rep",
+						effect: 1,
+					});
+					vignettes.push({
+						text: `${he} disgusted a citizen who didn't know how much pregnancy play turned them off until ${he} begged them to knock ${him} up,`,
+						type: "rep",
+						effect: -1,
+					});
+			}
+		}
+		switch (slave.behavioralFlaw) {
+			case "arrogant":
+				vignettes.push({
+					text: `${he} manages to give a citizen the impression ${he} thinks ${himself} better than them,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "bitchy":
+				vignettes.push({
+					text: `${he} makes an emasculating remark to a citizen right after they fuck ${him},`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "odd":
+				vignettes.push({
+					text: `${he} infuriates a potential citizen with ${his} nervous tics,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates men":
+				vignettes.push({
+					text: `${his} disgust towards men surfaces at a bad time, angering a male citizen,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates women":
+				vignettes.push({
+					text: `${his} disgust towards women surfaces at a bad time, angering a female citizen,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "gluttonous":
+				vignettes.push({
+					text: `${he} accidentally lingers at a meal, missing an appointment with a citizen,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "anorexic":
+				vignettes.push({
+					text: `${his} bulimia surfaces at an extremely inopportune moment, turning a citizen off,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "devout":
+				vignettes.push({
+					text: `a citizen catches ${him} praying to ${himself} as they inserts themsleves into ${him}, turning them off,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "liberated":
+				vignettes.push({
+					text: `${he} treats a rude citizen impolitely, because ${he} thinks that's fair,`,
+					type: "rep",
+					effect: -1,
+				});
+		}
+		switch (slave.sexualFlaw) {
+			case "hates oral":
+				vignettes.push({
+					text: `${he} vomits while trying to deepthroat a citizen,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates anal":
+				vignettes.push({
+					text: `${he} cries while taking anal from a citizen who isn't into painal,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "hates penetration":
+				vignettes.push({
+					text: `${he} cries while taking a pounding from a citizen who likes their sex consensual,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "shamefast":
+				vignettes.push({
+					text: `${he} cries while a citizen looks ${him} over,`,
+					type: "rep",
+					effect: -1,
+				});
+				vignettes.push({
+					text: `${he} disrobed so slowly that a horny citizen gave up on ${him},`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "idealistic":
+				vignettes.push({
+					text: `${he} cries when explaining to a citizen that sex with ${him} is free,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "repressed":
+				vignettes.push({
+					text: `${he} misunderstands a citizen's lewd requests, turning them off,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "apathetic":
+				vignettes.push({
+					text: `${he} fails to notice when a citizen achieves orgasm,`,
+					type: "rep",
+					effect: -1,
+				});
+				break;
+			case "neglectful":
+				vignettes.push({
+					text: `${he} brings a denial fetishest to orgasm three times without cumming ${himself}, impressing them completely,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "cum addict":
+				vignettes.push({
+					text: `${he}'s so focused on sucking down a client's cum that ${he} managed to drive them to repeated orgasm, earning their admiration once the feeling returns to their legs,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "anal addict":
+				vignettes.push({
+					text: `${he} takes an awe inspiring train of dicks in ${his} ass, well past the point where most would have passed out from pain,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "attention whore":
+				vignettes.push({
+					text: `${he} earned extra gratitude by drawing attention to a savvy businessman from their superiors,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "breast growth":
+				vignettes.push({
+					text: `${he} earns extra gratitude from a citizen who never realized breast growth turned them on so much,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "abusive":
+				vignettes.push({
+					text: `${he} abuses a rival public servant so viciously that an catfight lover takes ${him} right there,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "malicious":
+				vignettes.push({
+					text: `${he} earned extra gratitude from a masochist who loved the way ${he} traced ${his} scars, and added some new ones,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "self hating":
+				vignettes.push({
+					text: `the way ${he} takes everything thrown at ${him} like nothing disturbs group of citizens, though one of them enjoys it more than they let on and comes to ${him} for sex later,`,
+					type: "rep",
+					effect: 3,
+				});
+				break;
+			case "breeder":
+				vignettes.push({
+					text: `${his} pregnancy obsession earns ${his} extra gratitude from a man with an intense pregnancy fetish,`,
+					type: "rep",
+					effect: 3,
+				});
+		}
+		switch (slave.behavioralQuirk) {
+			case "confident":
+				vignettes.push({
+					text: `${he} confidently presses forward with a wavering citizen, and gets them to fuck ${him},`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "cutting":
+				vignettes.push({
+					text: `${he} makes such a gloriously cutting remark to a male citizen that a female bystander takes ${him} right there,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "funny":
+				vignettes.push({
+					text: `${he} makes a group of citizens laugh so hard, one of them comes to ${him} for sex later,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "fitness":
+				vignettes.push({
+					text: `${he} continues a marathon gangbang past the point where most would have passed out,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "adores women":
+				vignettes.push({
+					text: `${he} strikes up a personal friendship with a regular female patron,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "adores men":
+				vignettes.push({
+					text: `${he} strikes up a personal friendship with a regular male patron,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "insecure":
+				vignettes.push({
+					text: `${he} successfully convinces a regular patron that they are reliant on ${him} emotionally,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "sinful":
+				vignettes.push({
+					text: `${he} helps a citizen get past their religious hangups through sex with the friendly neighborhood slut,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "advocate":
+				vignettes.push({
+					text: `${he} successfully convinces a wavering potential citizen that there's nothing wrong with banging a public slut,`,
+					type: "rep",
+					effect: 1,
+				});
+		}
+		switch (slave.sexualQuirk) {
+			case "gagfuck queen":
+				vignettes.push({
+					text: `${he} earns extra gratitude from a citizen who's obsessed with gagfucks,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "painal queen":
+				vignettes.push({
+					text: `${he} earns extra gratitude from a citizen who's obsessed with painal,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "strugglefuck queen":
+				vignettes.push({
+					text: `${he} earns extra gratitude from a citizen who's obsessed with strugglefucking,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "tease":
+				vignettes.push({
+					text: `${he} convinces a citizen who's never had sex with a street slut to patronize ${his} with some truly inspired flirting,`,
+					type: "rep",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `a few partygoers were so impressed with ${his} provocative teasing that they left ${his} sizeable tip,`,
+					type: "cash",
+					effect: 1,
+				});
+				break;
+			case "romantic":
+				vignettes.push({
+					text: `a citizen becomes infatuated with ${him}, since they are convinced ${he}'s infatuated with them,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "perverted":
+				vignettes.push({
+					text: `${he} earns some momentary notoriety by engaging in a previously unheard-of sex act,`,
+					type: "rep",
+					effect: 1,
+				});
+				break;
+			case "caring":
+				vignettes.push({
+					text: `${he} serves as an impromptu sounding board for a citizen having marital trouble,`,
+					type: "rep",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `a citizen was so enamored with ${his} kind and caring manner than they proposed to ${him} and offered to take ${him} away, and when ${he} refused, they urged a sizable tip on ${him},`,
+					type: "cash",
+					effect: 1,
+				});
+		}
+
+		if (slave.pitKills > 0) {
+			vignettes.push({
+				text: `${he} earns extra gratitude from a citizen obsessed with the fact that ${he}'s a killer,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.oralCount > 500) {
+			vignettes.push({
+				text: `a citizen into degradation becomes obsessed with driving ${his} oral mileage as high as possible,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.analCount > 500 && slave.anus > 0) {
+			vignettes.push({
+				text: `a citizen into degradation becomes obsessed with driving ${his} anal mileage as high as possible,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.vaginalCount > 500 && slave.vagina > 0) {
+			vignettes.push({
+				text: `a citizen into degradation becomes obsessed with driving ${his} pussy mileage as high as possible,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.devotion > 95) {
+			vignettes.push({
+				text: `${he} really pushed ${himself} to please a citizen with tastes that disgusted ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.devotion < -50) {
+			vignettes.push({
+				text: `${his} fury at being sold for sex turned a citizen off before they could fuck ${him},`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.devotion <= 20) {
+			vignettes.push({
+				text: `${he} treasured a love token given to ${his} by a citizen ${he} fooled into thinking ${his} affection was real,`,
+				type: "devotion",
+				effect: -1,
+			});
+		}
+		if (slave.trust > 95) {
+			vignettes.push({
+				text: `${he} really pushed ${himself} to accept a citizen with tastes that frightened ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.trust < -50) {
+			vignettes.push({
+				text: `${his} tearful terror at being forced to offer ${himself} for sex turned a citizen off before they could fuck ${him},`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.livingRules === "luxurious") {
+			vignettes.push({
+				text: `${he} got a truly perfect night's sleep, which put ${his} in the right frame of mind for the whole day,`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.livingRules === "spare") {
+			vignettes.push({
+				text: `${he} got a poor night's sleep in the noisy dormitory, which took the shine off ${his} efforts for the whole day`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.releaseRules === "permissive" || slave.releaseRules === "masturbation") {
+			vignettes.push({
+				text: `a citizen asked if ${he} masturbates, and then spent an hour jerking off as ${he} described how,`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.releaseRules === "restrictive") {
+			vignettes.push({
+				text: `a citizen asked if ${he} masturbates, and seemed disappointed when ${he} answered honestly,`,
+				type: "rep",
+				effect: 0,
+			});
+		} else {
+			vignettes.push({
+				text: `a closeted female citizen asked about ${his} sex life with other slaves, and was enthralled by ${his} answer,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.health > 80) {
+			vignettes.push({
+				text: `a potential citizen in the medical field was fascinated by ${his} health, and spent almost as much time examining ${him} as they did having sex with ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSHedonisticDecadence !== "unset") {
+			if (slave.weight < 10) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a citizen who misses ${boy}s without a spare tire around their middle,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else if (slave.weight < 95) {
+				vignettes.push({
+					text: `a potential citizen told ${his} that they are looking forward to patronizing ${his} once ${he} gains a lot more weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a citizen who loves them big and soft`,
+					type: "rep",
+					effect: 0,
+				});
+			}
+			if (slave.weight > 30) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a citizen who enjoyed the way ${his} middle jiggled as they fucked ${him},`,
+					type: "rep",
+					effect: 0,
+				});
+			}
+		} else {
+			if (slave.weight > 95) {
+				vignettes.push({
+					text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} loses a lot of weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else if (slave.weight > 30) {
+				vignettes.push({
+					text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} loses some weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else if (slave.weight <= -30) {
+				vignettes.push({
+					text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} gains some weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			} else if (slave.weight < -95) {
+				vignettes.push({
+					text: `a potential citizen told ${him} that they are looking forward to patronizing ${him} once ${he} gains a lot of weight,`,
+					type: "rep",
+					effect: 0,
+				});
+			}
+		}
+		if (slave.drugs === "testicle enhancement") {
+			vignettes.push({
+				text: `${he} took it in public, with ${his} copious ejaculation attracting more citizens,`,
+				type: "rep",
+				effect: 1,
+			});
+		} else if (slave.drugs === "hyper testicle enhancement") {
+			vignettes.push({
+				text: `${he} bloated a female citizen's belly with ${his} copious ejaculate, leading her to recommend your slaves for girls that want to look pregnant without actually getting pregnant,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.aphrodisiacs > 1 || slave.inflationType === "aphrodisiac") {
+			vignettes.push({
+				text: `${his} piteous begging for sex due to ${his} extreme aphrodisiac dosage turned a citizen off,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.inflationType === "aphrodisiac") {
+			vignettes.push({
+				text: `${his} piteous begging for sex coupled with ${his} bloated belly pleased a citizen who loves desperate sluts,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${his} piteous begging for sex coupled with ${his} bloated belly horrified a citizen who didn't realize how low a ${boy} could stoop,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.addict > 50) {
+			vignettes.push({
+				text: `${he} zoned out badly due to a low point between aphrodisiac doses, disappointing a citizen,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.bellyPreg >= 10000 || slave.bellyImplant >= 10000) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who likes to do nothing more than cuddle with ${his} swollen belly,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `a night with guy who likes rough, hard sex with heavily pregnant ${boy}s took its toll on ${him}`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (slave.bellyFluid >= 5000) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who loved the way ${his} belly sloshed and moved to their teasing,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} disgusted a citizen when his forceful fucking caused ${him} to release ${his} contained ${slave.inflationType} all over them,`,
+				type: "rep",
+				effect: -2,
+			});
+		}
+		if (slave.hormoneBalance >= 100 && !canAchieveErection(slave)) {
+			if (slave.dick > 0) {
+				vignettes.push({
+					text: `${he} disappointed a citizen who was sure they could get ${slave.slaveName}'s cock erect,`,
+					type: "rep",
+					effect: -1,
+				});
+				vignettes.push({
+					text: `${he} earned extra gratitude from a citizen who seems unthreatened by ${his} soft dick,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (slave.hormoneBalance <= -100 && slave.dick === 0) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a female citizen who adores the masculinity produced by ${slave.slaveName}'s hormone regime,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.dick > 0 && canPenetrate(slave)) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who likes to see his wife get fucked by a dick${boy} whore,`,
+				type: "rep",
+				effect: 1,
+			});
+			if (slave.dick > 3) {
+				vignettes.push({
+					text: `${he} earned extra gratitude from a female citizen who likes big stiff cocks, and cannot lie,`,
+					type: "rep",
+					effect: 1,
+				});
+				vignettes.push({
+					text: `${he} irritated a male citizen who brought his girlfriend with him by accidentally showing him up,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.balls > 3) {
+			vignettes.push({
+				text: `${he} disappoints a citizen who wants ${him} to look like a natural girl, since ${his} balls are too big to be hidden,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (canDoVaginal(slave)) {
+			if (slave.vagina === 1) {
+				vignettes.push({
+					text: `${he} got extra attention from a citizen who really likes ${him}, and wants to fuck ${his} pussy as much as possible while it's still tight,`,
+					type: "rep",
+					effect: 1,
+				});
+			} else if (slave.vagina > 2) {
+				vignettes.push({
+					text: `${he} disappointed a citizen whose cock is just too small for ${his} big cunt,`,
+					type: "rep",
+					effect: -1,
+				});
+				if (slave.behavioralQuirk === "cutting" && slave.intelligence >= 2) {
+					vignettes.push({
+						text: `${he} helped a citizen discover a new fetish by making cutting remarks when their cock was too small for ${his} big cunt,`,
+						type: "rep",
+						effect: 1,
+					});
+				} else if (slave.behavioralFlaw === "bitchy") {
+					vignettes.push({
+						text: `${he} irritated a male citizen with ${his} complaints that they were too small to please ${him},`,
+						type: "rep",
+						effect: -3,
+					});
+				}
+			}
+		}
+		if (canDoAnal(slave)) {
+			if (slave.anus === 1) {
+				vignettes.push({
+					text: `${he} got extra attention from a citizen who really likes ${his} butthole, and wants to fuck it as much as possible while it's still tight,`,
+					type: "rep",
+					effect: 1,
+				});
+			} else if (slave.anus > 2) {
+				vignettes.push({
+					text: `${he} disappointed a citizen whose cock is just too small for ${his} loose butthole,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.face > 40) {
+			vignettes.push({
+				text: `${he} lost a potential citizen who was so intimidated by ${his} great beauty that they decided to find a homelier whore,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else if (slave.face < -10) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who lacks self-confidence, and is more comfortable with homely whores,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.visualAge > 40) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen with serious mommy issues,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.lips > 70) {
+			vignettes.push({
+				text: `${he} earned extra gratitude from a citizen who likes to play with ${his} lips nonsexually (don't ask),`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (!canTalk(slave)) {
+			vignettes.push({
+				text: `${he} impressed a citizen who didn't know how relaxing a ${boy} who can't talk could be,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.muscles > 95) {
+			vignettes.push({
+				text: `${he} impressed a citizen who was so eager to share workout plans with ${him} that they almost forgot to have sex with ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} gained extra gratitude from a female citizen who likes a ${boy} who can bench-press her before and after they fuck,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} disappointed a citizen by accidentally revealing that ${he}'s considerably stronger than him,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.lactation > 0) {
+			vignettes.push({
+				text: `${he} provided fresh milk for the coffee served at a citizen's business meeting,`,
+				type: "rep",
+				effect: 1,
+			});
+			vignettes.push({
+				text: `${he} provided fresh milk at a trendy arcology coffeehouse,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.amp === 1) {
+			vignettes.push({
+				text: `${he} disappointed a citizen who thought they would enjoy fucking an amputee, but found it revolting,`,
+				type: "rep",
+				effect: -1,
+			});
+		} else {
+			if (slave.heels === 1 && !(["heels", "pumps", "extreme heels", "boots"].includes(slave.shoes))) {
+				vignettes.push({
+					text: `${he} enticed a new patron who had never really considered buttsex before they saw ${him} crawling along with ${his} asshole vulnerable,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+			if (slave.boobs > 1500 && slave.boobsImplant === 0) {
+				vignettes.push({
+					text: `a young citizen convinced ${him} to jump rope so they could watch ${his} massive natural breasts flop around,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		}
+		if (slave.vaginalAccessory === "chastity belt") {
+			vignettes.push({
+				text: `a wavering citizen who was disappointed that ${his} pussy is unavailable decided to try ${his} ass instead,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.fetish === "mindbroken") {
+			vignettes.push({
+				text: `a citizen really enjoyed being able to treat ${him} however they liked without eliciting a reaction,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (slave.intelligence <= -2) {
+			vignettes.push({
+				text: `a low-class citizen who had no business fucking ${him} managed to trick ${him} into fucking him anyway,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.face > 10 && canDoAnal(slave)) {
+			if (slave.dick > 0) {
+				if (slave.fetish === "buttslut" && jsRandom(0, 100) < 50) {
+					vignettes.push({
+						text: `a citizen was surprised by ${his} penis, so ${he} hid it and enjoyed the buttsex without touching it,`,
+						type: "rep",
+						effect: 1,
+					});
+				} else if (slave.fetish === "buttslut") {
+					vignettes.push({
+						text: `a citizen was surprised by ${his} penis, so ${he} hid it and skillfully pretended to be a real girl,`,
+						type: "rep",
+						effect: -1,
+					});
+				} else if (slave.analSkill >= 100) {
+					vignettes.push({
+						text: `a citizen was surprised by ${his} penis, so ${he} hid it, but could barely tolerate anal without touching it`,
+						type: "rep",
+						effect: 1,
+					});
+				}
+			}
+			if (slave.analSkill < 100 && slave.anus > 2) {
+				vignettes.push({
+					text: `a pair of customers enticed by ${his} beauty but disappointed by ${his} loose butthole doubled up on ${his} poor anus without mercy,`,
+					type: "health",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.fetishKnown === 1 && slave.fetishStrength > 95) {
+			if (slave.fetish === "buttslut" || slave.fetish === "dom") {
+				vignettes.push({
+					text: `${he} showed off by forcing a slave in the stocks to eat ${his} ass`,
+					type: "rep",
+					effect: 1,
+				});
+			} else if (slave.fetish === "masochist") {
+				vignettes.push({
+					text: `${he} cooperated with a customer who wanted to whip ${his} tits black and blue`,
+					type: "health",
+					effect: -1,
+				});
+			}
+		}
+		if (slave.health < 20) {
+			vignettes.push({
+				text: `${he} attracted the attention of a slaveowner alarmed by ${his} poor health, and thought he seemed kind,`,
+				type: "devotion",
+				effect: -1,
+			});
+		}
+		if (slave.vaginalSkill >= 100) {
+			vignettes.push({
+				text: `${he} was brought in to apply ${his} skills to a prominent citizen's virgin son,`,
+				type: "devotion",
+				effect: 0,
+			});
+		}
+		if (canDoAnal(slave) && slave.analSkill < 100 && slave.anus < 2) {
+			vignettes.push({
+				text: `a guy with a huge cock insisted on fucking ${him} in ${his} tight ass all night,`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (slave.relationship <= -2 && slave.intelligence < 1) {
+			vignettes.push({
+				text: `${he} accidentally mentions how much ${he} loves you during intercourse with a citizen who doesn't like to share,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (slave.prestige > 0) {
+			vignettes.push({
+				text: `a college fraternity visiting the arcology for rush week invited ${him} to a gangbang,`,
+				type: "rep",
+				effect: 3,
+			});
+		}
+
+		if (V.arcologies[0].FSSupremacist !== "unset" && slave.race === V.arcologies[0].FSSupremacistRace) {
+			vignettes.push({
+				text: `${he} disappointed a citizen who couldn't bear to see a beautiful ${V.arcologies[0].FSSupremacistRace} be a public slut,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSSubjugationist !== "unset" && slave.race === V.arcologies[0].FSSubjugationistRace) {
+			vignettes.push({
+				text: `${he} had a bad time in general, since most of the citizens who used ${him} didn't care about a ${V.arcologies[0].FSSubjugationistRace} prostitute's health or well-being,`,
+				type: "health",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSYouthPreferentialist !== "unset") {
+			if (slave.visualAge > 35) {
+				vignettes.push({
+					text: `${he} gratified a citizen who wants to keep his MILF fetish in the closet,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSMaturityPreferentialist !== "unset") {
+			if (slave.visualAge <= 20) {
+				vignettes.push({
+					text: `${he} gratified a citizen who wants to keep his fetish for young ${boy} in the closet,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		}
+		if (V.arcologies[0].FSGenderRadicalist !== "unset") {
+			if (slave.dick > 0 && slave.dick < 3) {
+				vignettes.push({
+					text: `${he} gratified a citizen who is coming to terms with Gender Radicalism, and is unthreatened by ${his} little penis,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSGenderFundamentalist !== "unset" && slave.visualAge > 25) {
+			vignettes.push({
+				text: `${he} gratified a citizen who thinks ${he} resembles his ex-wife, who would never let him fuck her butt,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSRepopulationFocus !== "unset") {
+			if (slave.pregType > 1 && slave.pregKnown > 1 && slave.belly >= 10000) {
+				vignettes.push({
+					text: `${he} gratified a citizen who enjoys the feeling of a womb filled with more than a single child,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSRestart !== "unset" && canGetPregnant(slave)) {
+			vignettes.push({
+				text: `${he} gratified a citizen who misses the risk of getting a ${boy} pregnant,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSPaternalist !== "unset") {
+			if (slave.intelligence > 1) {
+				vignettes.push({
+					text: `${he} gratified a citizen who likes to chat with intelligent prostitutes as they fuck ${him},`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSDegradationist !== "unset" && canTalk(slave) && slave.voice > 2) {
+			vignettes.push({
+				text: `${he} gratified a citizen who prefers ${boy} with high-pitched screams,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSBodyPurist !== "unset") {
+			if (slave.boobsImplant > 0) {
+				vignettes.push({
+					text: `${he} gratified a citizen who wants to keep his fetish for breast implants in the closet,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+		} else if (V.arcologies[0].FSTransformationFetishist !== "unset" && slave.boobsImplant === 0) {
+			vignettes.push({
+				text: `${he} gratified a citizen who wants to keep his fetish for natural breasts in the closet,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSSlimnessEnthusiast !== "unset") {
+			if (canTalk(slave) && slave.voice > 2) {
+				vignettes.push({
+					text: `${he} gratified a citizen who loves ${his} high-pitched squeals of pleasure,`,
+					type: "rep",
+					effect: 1,
+				});
+			}
+			if (slave.boobs > 800) {
+				vignettes.push({
+					text: `${he} was publicly mocked as an ugly fat cow with dangling udders,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		} else if (V.arcologies[0].FSAssetExpansionist !== "unset" && slave.boobs < 300) {
+			vignettes.push({
+				text: `${he} gratified a citizen who wants to keep his fetish for flat chested ${boy}s in the closet,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSPastoralist !== "unset") {
+			if (slave.lactation === 0) {
+				vignettes.push({
+					text: `${he} disappointed a citizen who could not understand why nothing was coming out of ${his} nipples when he sucked on them,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+			if (slave.nipples === "fuckable") {
+				vignettes.push({
+					text: `${he} left a citizen deeply confused over how ${he} could possibly be a proper cow without suitable teats,`,
+					type: "rep",
+					effect: -1,
+				});
+			}
+		}
+		if (V.arcologies[0].FSPhysicalIdealist !== "unset" && slave.muscles <= 95) {
+			vignettes.push({
+				text: `${he} disappointed a citizen who could barely believe that ${he} wasn't capable of holding ${himself} in a handstand,`,
+				type: "rep",
+				effect: -1,
+			});
+		}
+		if (V.arcologies[0].FSChattelReligionist !== "unset" && slave.behavioralFlaw === "devout") {
+			vignettes.push({
+				text: `${he} gratified a citizen who desperately wants his cock to be the one that converts ${him},`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSRomanRevivalist !== "unset" && slave.race === "white" && slave.height >= 185) {
+			vignettes.push({
+				text: `${he} gratified a citizen who thought ${his} appearance worthy of a lusty northern barbarian,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSAztecRevivalist !== "unset" && slave.devotion > 75 && slave.intelligence >= 2) {
+			vignettes.push({
+				text: `${he} indulged a citizen by following a fertility ritual completely,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSEgyptianRevivalist !== "unset") {
+			vignettes.push({
+				text: `${he} got extra attention from a group of citizens competing to get off with whores of each of the arcology's ethnic groups in the least time,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSEdoRevivalist !== "unset" && slave.face > 40 && slave.intelligence > 1) {
+			vignettes.push({
+				text: `${he} gratified a citizen who wished to do nothing more than converse with a beautiful and intelligent ${boy},`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+		if (V.arcologies[0].FSArabianRevivalist !== "unset" && slave.entertainSkill >= 100 && canTalk(slave) && slave.voice > 0 && slave.accent < 2) {
+			vignettes.push({
+				text: `${he} gratified a citizen who prefers prostitutes who can tell lovely stories,`,
+				type: "rep",
+				effect: 1,
+			});
+		}
+
+		vignettes.push({
+			text: `one of the companies with an office in your arcology brought ${him} in for a team-building bukkake party for its employees,`,
+			type: "rep",
+			effect: 1,
+		});
+		vignettes.push({
+			text: "a man dragged his crying wife along so she could watch him fuck a public slut,",
+			type: "rep",
+			effect: 0,
+		});
+		vignettes.push({
+			text: "a woman dragged her angry husband along so he could watch his wife get eaten out by a public slut,",
+			type: "rep",
+			effect: 0,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after having sex with strangers all day, and had a dream about you loving ${him},`,
+			type: "devotion",
+			effect: 1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after having sex with strangers all day, and had a dream about you letting a citizen hurt ${him},`,
+			type: "devotion",
+			effect: -1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after having sex with strangers all day, and had a dream about you protecting ${him} from a mean citizen,`,
+			type: "trust",
+			effect: 1,
+		});
+		vignettes.push({
+			text: `${he} went to sleep after having sex with strangers all day, and had a dream about you selling ${him} for good,`,
+			type: "trust",
+			effect: -1,
+		});
+	}
+	return jsEither(vignettes);
+};
\ No newline at end of file
diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index 867ed764ec0..68df806cc73 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -270,7 +270,7 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 <<elseif ($slaves[$i].vagina < 0)>>
-	<<set $desc = SlaveTitle($slaves[$i])>>
+	<<SlaveTitle $slaves[$i]>>
 	<<if (($slaves[$i].analSkill + $slaves[$i].oralSkill) >= 200)>>
 	$He's such an expert public servant that $he copes with the stress of being a $desc slut.
 	<<elseif random(1,100) > 40+(10*($slaves[$i].analSkill + $slaves[$i].oralSkill))>>
@@ -533,7 +533,7 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 		<<elseif $slaves[$j].relationship > 4>>
 			slave wife
 		<</if>>
-		$slaves[$j].slaveName is also serving the public and they work well together.
+		$slaves[$j].slaveName is also serving the public and they work well toget$him.
 	<</if>>
 <<elseif $slaves[$i].relationship == -1>>
 	$He relies on citizens' desire to fuck $him for emotional support, making $him an excellent, if occasionally disturbing, slut.
@@ -1190,627 +1190,87 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 <</if>>
 <</if>>
 
-/* VIGNETTES */
-
 <<if ($showVignettes == 1)>>
-<<set _vignettes = []>>
-
-<<set $seed = random(1,10)>>
-<<switch $seed>>
-<<case 1>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he witnessed a domestic dispute over another slut,", type: "rep", effect: 0})>>
-<<case 2>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw an aphrodisiac addict $he knew sell $himself into slavery,", type: "rep", effect: 0})>>
-<<case 3>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he had to move to follow the @@.green;most prominent citizens@@ to a newly fashionable hall,", type: "rep", effect: 0})>>
-<<case 4>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that a citizen used a new and improved sex toy on $him,", type: "rep", effect: 0})>>
-<<case 5>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was being used in public by an incestuous pair of citizens,", type: "rep", effect: 0})>>
-<<case 6>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw a notorious slut come of age and start swapping anal for aphrodisiacs,", type: "rep", effect: 0})>>
-<<case 7>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw a citizen experiment with lesbian sex for the first time, in public,", type: "rep", effect: 0})>>
-<<case 8>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he watched a citizen descend into aphrodisiac addiction,", type: "rep", effect: 0})>>
-<<case 9>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he watched a citizen develop the beginnings of sex addiction,", type: "rep", effect: 0})>>
-<<default>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he witnessed a citizen using a public slut so brutally that he had to pay compensation afterward,", type: "rep", effect: 0})>>
-<</switch>>
-<<set $seed = random(1,5)>>
-<<switch $seed>>
-<<case 1>>
-	<<set _vignettes.push({text: "a citizen punished one of his slaves by tying $him up in public near where $slaves[$i].slaveName was serving as a public slut. This made $him less popular that day,", type: "rep", effect: -1})>>
-<<case 2>>
-	<<set _vignettes.push({text: "a citizen shared one of his slaves with the public near where $slaves[$i].slaveName was serving as a public slut. This made $him less popular that day,", type: "rep", effect: -1})>>
-<<case 3>>
-	<<set _vignettes.push({text: "a private brothel offered a promotion near where $slaves[$i].slaveName was serving as a public slut. This made $him less popular that day,", type: "rep", effect: -1})>>
-<<case 4>>
-	<<set _vignettes.push({text: "some free sluts threw an aphrodisiac street party near where $slaves[$i].slaveName was serving as a public slut. This made $him less popular that day,", type: "rep", effect: -1})>>
-<<default>>
-	<<set _vignettes.push({text: "a contract breaker was punished with the pillory near where $slaves[$i].slaveName was serving as a public slut. This made $him less popular that day,", type: "rep", effect: -1})>>
-<</switch>>
-<<set $seed = random(1,5)>>
-<<switch $seed>>
-<<case 1>>
-	<<set _vignettes.push({text: "one of $his regular patrons got a divorce and came to $him for repeated consolation,", type: "rep", effect: 1})>>
-<<case 2>>
-	<<set _vignettes.push({text: "a club near where $slaves[$i].slaveName usually works had business trouble,", type: "rep", effect: 1})>>
-<<case 3>>
-	<<set _vignettes.push({text: "a competing slut that looks like $him fell ill, driving a patron to look for an alternative,", type: "rep", effect: 1})>>
-<<case 4>>
-	<<set _vignettes.push({text: "a street slut that works near $him was badly beaten by an abusive citizen and had to take time off. The reduced competition got $him more attention,", type: "rep", effect: 1})>>
-<<default>>
-	<<set _vignettes.push({text: "an influx of tourists came into $his part of the arcology, earning $him more business for a day,", type: "rep", effect: 1})>>
-<</switch>>
-
-<<if ($slaves[$i].fetishKnown == 1)>>
-<<switch $slaves[$i].fetish>>
-<<case "submissive">>
-	<<set _vignettes.push({text: "$he deeply impressed a citizen with $his sincere submission to him,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he lost a patron who secretly wanted $him to show a little initiative,", type: "rep", effect: -1})>>
-<<case "cumslut">>
-	<<set _vignettes.push({text: "$he deeply impressed a citizen with $his hunger for his cum,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a citizen who didn't know how much cum fetishes revolted him until $he displayed hers,", type: "rep", effect: -1})>>
-<<case "humiliation">>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who didn't know how much he liked public sex until $he got him to try it,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a citizen who didn't know how much exhibitionism turned him off until he tried public sex with $him,", type: "rep", effect: -1})>>
-<<case "buttslut">>
-	<<if canDoAnal($slaves[$i])>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who didn't know how much he liked fucking buttholes until $he got him to try fucking hers,", type: "rep", effect: 1})>>
-		<<set _vignettes.push({text: "$he disgusted a citizen who didn't know how much buttsex turned him off until $he got him to try fucking $his ass,", type: "rep", effect: -1})>>
-	<</if>>
-	<<if $slaves[$i].butt >= 3>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who didn't know how much he liked big butts until $he gave him a lap dance he'll never forget,", type: "rep", effect: 1})>>
-	<</if>>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a citizen who didn't know how much butts turned him off until he put his hands on $hers,", type: "rep", effect: -1})>>
-<<case "boobs">>
-	<<set _vignettes.push({text: "$he deeply impressed a citizen by orgasming to nothing but the feeling of her sucking $his nipples,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disappointed a female citizen who didn't know how uninterested she was in nipple play before trying it,", type: "rep", effect: -1})>>
-	<<if $slaves[$i].nipples == "fuckable">>
-		<<set _vignettes.push({text: "$he left a lasting impression on a pair of citizens after nearly passing out from a series of intense orgasms from getting $his nipples fucked,", type: "rep", effect: 2})>>
-	<</if>>
-<<case "sadist">>
-	<<set _vignettes.push({text: "$he deeply impressed a citizen who brought his own slave to $him for abuse with $his sadism,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a citizen brought $him his own slave to abuse, but the sight proved to be a turn off for him,", type: "rep", effect: -1})>>
-<<case "masochist">>
-	<<set _vignettes.push({text: "$he helped a citizen discover a new fetish by orgasming when he accidentally hurt $him,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disturbed a citizen who accidentally hurt $him by orgasming,", type: "rep", effect: -1})>>
-<<case "dom">>
-	<<set _vignettes.push({text: "$he made a female citizen $his bitch: fortunately, the citizen wanted to be $his bitch and came back for more", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he accidentally overwhelmed a citizen with $his sexual dominance,", type: "rep", effect: -1})>>
-<<case "pregnancy">>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who didn't know how much he liked pregnancy play until $he begged him to knock $him up,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a citizen who didn't know how much pregnancy play turned him off until $he begged him to knock $him up,", type: "rep", effect: -1})>>
-<</switch>>
-<</if>>
-<<switch $slaves[$i].behavioralFlaw>>
-<<case "arrogant">>
-	<<set _vignettes.push({text: "$he manages to give a citizen the impression $he thinks $himself better than him,", type: "rep", effect: -1})>>
-<<case "bitchy">>
-	<<set _vignettes.push({text: "$he makes an emasculating remark to a citizen right after he fucks $him,", type: "rep", effect: -1})>>
-<<case "odd">>
-	<<set _vignettes.push({text: "$he infuriates a potential citizen with $his nervous tics,", type: "rep", effect: -1})>>
-<<case "hates men">>
-	<<set _vignettes.push({text: "$his disgust towards men surfaces at a bad time, angering a male citizen,", type: "rep", effect: -1})>>
-<<case "hates women">>
-	<<set _vignettes.push({text: "$his disgust towards women surfaces at a bad time, angering a female citizen,", type: "rep", effect: -1})>>
-<<case "gluttonous">>
-	<<set _vignettes.push({text: "$he accidentally lingers at a meal, missing an appointment with a citizen,", type: "rep", effect: -1})>>
-<<case "anorexic">>
-	<<set _vignettes.push({text: "$his bulimia surfaces at an extremely inopportune moment, turning a citizen off,", type: "rep", effect: -1})>>
-<<case "devout">>
-	<<set _vignettes.push({text: "a citizen catches $him praying to $himself as he inserts himself into $him, turning him off,", type: "rep", effect: -1})>>
-<<case "liberated">>
-	<<set _vignettes.push({text: "$he treats a rude citizen impolitely, because $he thinks that's fair,", type: "rep", effect: -1})>>
-<</switch>>
-<<switch $slaves[$i].sexualFlaw>>
-<<case "hates oral">>
-	<<set _vignettes.push({text: "$he vomits while trying to deepthroat a citizen,", type: "rep", effect: -1})>>
-<<case "hates anal">>
-	<<set _vignettes.push({text: "$he cries while taking anal from a citizen who isn't into painal,", type: "rep", effect: -1})>>
-<<case "hates penetration">>
-	<<set _vignettes.push({text: "$he cries while taking a pounding from a citizen who likes his sex consensual,", type: "rep", effect: -1})>>
-<<case "shamefast">>
-	<<set _vignettes.push({text: "$he cries while a citizen looks $him over,", type: "rep", effect: -1})>>
-	<<set _vignettes.push({text: "$he disrobed so slowly that a horny citizen gave up on $him,", type: "rep", effect: -1})>>
-<<case "idealistic">>
-	<<set _vignettes.push({text: "$he cries when explaining to a citizen that sex with $him is free,", type: "rep", effect: -1})>>
-<<case "repressed">>
-	<<set _vignettes.push({text: "$he misunderstands a citizen's lewd requests, turning $him off,", type: "rep", effect: -1})>>
-<<case "apathetic">>
-	<<set _vignettes.push({text: "$he fails to notice when a citizen achieves orgasm,", type: "rep", effect: -1})>>
-<<case "neglectful">>
-	<<set _vignettes.push({text: "$he brings a denial fetishest to orgasm three times without cumming $himself, impressing them completely,", type: "rep", effect: 3})>>
-<<case "cum addict">>
-	<<set _vignettes.push({text: "$he's so focused on sucking down a client's cum that $he managed to drive him to repeated orgasm, earning his admiration once the feeling returns to his legs,", type: "rep", effect: 3})>>
-<<case "anal addict">>
-	<<set _vignettes.push({text: "$he takes an awe inspiring train of dicks in $his ass, well past the point where most would have passed out from pain,", type: "rep", effect: 3})>>
-<<case "attention whore">>
-	<<set _vignettes.push({text: "$he earned extra gratitude by drawing attention to savvy businessman from his superiors,", type: "rep", effect: 3})>>
-<<case "breast growth">>
-	<<set _vignettes.push({text: "$he earns extra gratitude from a citizen who never realized breast growth turned him on so much,", type: "rep", effect: 3})>>
-<<case "abusive">>
-	<<set _vignettes.push({text: "$he abuses a rival public servant so viciously that a catfight lover takes $him right there,", type: "rep", effect: 3})>>
-<<case "malicious">>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a masochist who loved the way $he traced her scars, and added some new ones,", type: "rep", effect: 3})>>
-<<case "self hating">>
-	<<set _vignettes.push({text: "the way $he takes everything thrown at $him like nothing disturbs group of citizens, though one of them enjoys it more than they let on and comes to $him for sex later,", type: "rep", effect: 3})>>
-<<case "breeder">>
-	<<set _vignettes.push({text: "$his pregnancy obsession earns $him extra gratitude from a man with an intense pregnancy fetish,", type: "rep", effect: 3})>>
-<</switch>>
-<<switch $slaves[$i].behavioralQuirk>>
-<<case "confident">>
-	<<set _vignettes.push({text: "$he confidently presses forward with a wavering citizen, and gets him to fuck $him,", type: "rep", effect: 1})>>
-<<case "cutting">>
-	<<set _vignettes.push({text: "$he makes such a gloriously cutting remark to a male citizen that a female bystander takes $him right there,", type: "rep", effect: 1})>>
-<<case "funny">>
-	<<set _vignettes.push({text: "$he makes a group of citizens laugh so hard, one of them comes to $him for sex later,", type: "rep", effect: 1})>>
-<<case "fitness">>
-	<<set _vignettes.push({text: "$he continues a marathon gangbang past the point where most would have passed out,", type: "rep", effect: 1})>>
-<<case "adores women">>
-	<<set _vignettes.push({text: "$he strikes up a personal friendship with a regular female patron,", type: "rep", effect: 1})>>
-<<case "adores men">>
-	<<set _vignettes.push({text: "$he strikes up a personal friendship with a regular male patron,", type: "rep", effect: 1})>>
-<<case "insecure">>
-	<<set _vignettes.push({text: "$he successfully convinces a regular patron that $he's reliant on him emotionally,", type: "rep", effect: 1})>>
-<<case "sinful">>
-	<<set _vignettes.push({text: "$he helps a citizen get past her religious hangups through sex with her friendly neighborhood slut,", type: "rep", effect: 1})>>
-<<case "advocate">>
-	<<set _vignettes.push({text: "$he successfully convinces a wavering potential citizen that there's nothing wrong with banging a public slut,", type: "rep", effect: 1})>>
-<</switch>>
-<<switch $slaves[$i].sexualQuirk>>
-<<case "gagfuck queen")>>
-	<<set _vignettes.push({text: "$he earns extra gratitude from a citizen who's obsessed with gagfucks,", type: "rep", effect: 1})>>
-<<case "painal queen")>>
-	<<set _vignettes.push({text: "$he earns extra gratitude from a citizen who's obsessed with painal,", type: "rep", effect: 1})>>
-<<case "strugglefuck queen")>>
-	<<set _vignettes.push({text: "$he earns extra gratitude from a citizen who's obsessed with strugglefucking,", type: "rep", effect: 1})>>
-<<case "tease")>>
-	<<set _vignettes.push({text: "$he convinces a citizen who's never had sex with a street slut to patronize $him with some truly inspired flirting,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a few partygoers were so impressed with $his provocative teasing that they left $him a sizeable tip,", type: "cash", effect: 1})>>
-<<case "romantic")>>
-	<<set _vignettes.push({text: "a citizen becomes infatuated with $him, since he's convinced $he's infatuated with him,", type: "rep", effect: 1})>>
-<<case "perverted")>>
-	<<set _vignettes.push({text: "$he earns some momentary notoriety by engaging in a previously unheard-of sex act,", type: "rep", effect: 1})>>
-<<case "caring")>>
-	<<set _vignettes.push({text: "$he serves as an impromptu sounding board for a citizen having marital trouble,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a citizen was so enamored with $his kind and caring manner that he proposed to $him and offered to take $him away, and when $he refused, he urged a sizable tip on $him,", type: "cash", effect: 1})>>
-<</switch>>
-<<if ($slaves[$i].pitKills > 0)>>
-	<<set _vignettes.push({text: "$he earns extra gratitude from a citizen obsessed with the fact that $he's a killer,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].oralCount > 500)>>
-	<<set _vignettes.push({text: "a citizen into degradation becomes obsessed with driving $his oral mileage as high as possible,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].analCount > 500) && ($slaves[$i].anus > 0)>>
-	<<set _vignettes.push({text: "a citizen into degradation becomes obsessed with driving $his anal mileage as high as possible,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].vaginalCount > 500) && ($slaves[$i].vagina > 0)>>
-	<<set _vignettes.push({text: "a citizen into degradation becomes obsessed with driving $his pussy mileage as high as possible,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].devotion > 95)>>
-	<<set _vignettes.push({text: "$he really pushed $himself to please a citizen with tastes that disgusted $him,", type: "rep", effect: 1})>>
-<<elseif ($slaves[$i].devotion < -50)>>
-	<<set _vignettes.push({text: "$his fury at being sold for sex turned a citizen off before he could fuck $him,", type: "rep", effect: -1})>>
-<<elseif ($slaves[$i].devotion <= 20)>>
-	<<set _vignettes.push({text: "$he treasured a love token given to $him by a citizen $he fooled into thinking $his affection was real,", type: "devotion", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].trust > 95)>>
-	<<set _vignettes.push({text: "$he really pushed $himself to accept a citizen with tastes that frightened $him,", type: "rep", effect: 1})>>
-<<elseif ($slaves[$i].trust < -50)>>
-	<<set _vignettes.push({text: "$his tearful terror at being forced to offer $himself for sex turned a citizen off before he could fuck $him,", type: "rep", effect: -1})>>
-<</if>>
-<<if $slaves[$i].livingRules == "luxurious">>
-	<<set _vignettes.push({text: "$he got a truly perfect night's sleep, which put $him in the right frame of mind for the whole day,", type: "rep", effect: 1})>>
-<<elseif $slaves[$i].livingRules == "spare">>
-	<<set _vignettes.push({text: "$he got a poor night's sleep in the noisy dormitory, which took the shine off $his efforts for the whole day", type: "rep", effect: -1})>>
-<</if>>
-<<if $slaves[$i].releaseRules == "permissive" || $slaves[$i].releaseRules == "masturbation">>
-	<<set _vignettes.push({text: "a citizen asked if $he masturbates, and then spent an hour jerking off as $he described how,", type: "rep", effect: 1})>>
-<<elseif $slaves[$i].releaseRules == "restrictive">>
-	<<set _vignettes.push({text: "a citizen asked if $he masturbates, and seemed disappointed when $he answered honestly,", type: "rep", effect: 0})>>
-<<else>>
-	<<set _vignettes.push({text: "a closeted female citizen asked about $his sex life with other slaves, and was enthralled by $his answer,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].health > 80)>>
-	<<set _vignettes.push({text: "a potential citizen in the medical field was fascinated by $his health, and spent almost as much time examining $him as he did having sex with $him,", type: "rep", effect: 1})>>
-<</if>>
-<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-	<<if ($slaves[$i].weight < 10)>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who misses girls without a spare tire around their middle,", type: "rep", effect: 0})>>
-	<<elseif ($slaves[$i].weight < 95)>>
-		<<set _vignettes.push({text: "a potential citizen told $him that he's looking forward to patronizing $him once $he gains a lot more weight,", type: "rep", effect: 0})>>
-	<<else>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who loves them big and soft", type: "rep", effect: 0})>>
-	<</if>>
-	<<if ($slaves[$i].weight > 30)>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who enjoyed the way $his middle jiggled as he fucked $him,", type: "rep", effect: 0})>>
-	<</if>>
-<<else>>
-	<<if ($slaves[$i].weight > 95)>>
-		<<set _vignettes.push({text: "a potential citizen told $him that he's looking forward to patronizing $him once $he loses a lot of weight,", type: "rep", effect: 0})>>
-	<<elseif ($slaves[$i].weight > 30)>>
-		<<set _vignettes.push({text: "a potential citizen told $him that he's looking forward to patronizing $him once $he loses some weight,", type: "rep", effect: 0})>>
-	<<elseif ($slaves[$i].weight <= -30)>>
-		<<set _vignettes.push({text: "a potential citizen told $him that he's looking forward to patronizing $him once $he gains some weight,", type: "rep", effect: 0})>>
-	<<elseif ($slaves[$i].weight < -95)>>
-		<<set _vignettes.push({text: "a potential citizen told $him that he's looking forward to patronizing $him once $he gains a lot of weight,", type: "rep", effect: 0})>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].drugs == "testicle enhancement")>>
-	<<set _vignettes.push({text: "$he took it in public, with $his copious ejaculation attracting more citizens,", type: "rep", effect: 1})>>
-<<elseif ($slaves[$i].drugs == "hyper testicle enhancement")>>
-	<<set _vignettes.push({text: "$he bloated a female citizen's belly with $his copious ejaculate, leading $him to recommend your slaves for girls that want to look pregnant without actually getting pregnant,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].aphrodisiacs > 1) || ($slaves[$i].inflationType == "aphrodisiac")>>
-	<<set _vignettes.push({text: "$his piteous begging for sex due to $his extreme aphrodisiac dosage turned a citizen off,", type: "rep", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].inflationType == "aphrodisiac")>>
-	<<set _vignettes.push({text: "$his piteous begging for sex coupled with $his bloated belly pleased a citizen who loves desperate sluts,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$his piteous begging for sex coupled with $his bloated belly horrified a citizen who didn't realize how low a girl could stoop,", type: "rep", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].addict > 50)>>
-	<<set _vignettes.push({text: "$he zoned out badly due to a low point between aphrodisiac doses, disappointing a citizen,", type: "rep", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].bellyPreg >= 10000) || ($slaves[$i].bellyImplant >= 10000)>>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who likes to do nothing more than cuddle with $his swollen belly,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a night with guy who likes rough, hard sex with heavily pregnant girls took its toll on $him", type: "health", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].bellyFluid >= 5000)>>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who loved the way $his belly sloshed and moved to his teasing,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a citizen when his forceful fucking caused $him to release $his contained $slaves[$i].inflationType all over him,", type: "rep", effect: -2})>>
-<</if>>
-<<if ($slaves[$i].hormoneBalance >= 100) && !canAchieveErection($slaves[$i])>>
-	<<if ($slaves[$i].dick > 0)>>
-		<<set _vignettes.push({text: "$he disappointed a citizen who was sure $he could get $slaves[$i].slaveName's cock erect,", type: "rep", effect: -1})>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who seems unthreatened by $his soft dick,", type: "rep", effect: 1})>>
-	<</if>>
-<<elseif ($slaves[$i].hormoneBalance <= -100)>>
-	<<if ($slaves[$i].dick == 0)>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a female citizen who adores the masculinity produced by $slaves[$i].slaveName's hormone regime,", type: "rep", effect: 1})>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].dick > 0) && canPenetrate($slaves[$i])>>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who likes to see his wife get fucked by a dickgirl whore,", type: "rep", effect: 1})>>
-	<<if ($slaves[$i].dick > 3)>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a female citizen who likes big stiff cocks, and cannot lie,", type: "rep", effect: 1})>>
-		<<set _vignettes.push({text: "$he irritated a male citizen who brought his girlfriend with him by accidentally showing him up,", type: "rep", effect: -1})>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].balls > 3)>>
-	<<set _vignettes.push({text: "$he disappoints a citizen who wants $him to look like a natural girl, since $his balls are too big to be hidden,", type: "rep", effect: -1})>>
-<</if>>
-<<if canDoVaginal($slaves[$i])>>
-	<<if ($slaves[$i].vagina == 1)>>
-		<<set _vignettes.push({text: "$he got extra attention from a citizen who really likes $him, and wants to fuck $his pussy as much as possible while it's still tight,", type: "rep", effect: 1})>>
-	<<elseif ($slaves[$i].vagina > 2)>>
-		<<set _vignettes.push({text: "$he disappointed a citizen whose cock is just too small for $his big cunt,", type: "rep", effect: -1})>>
-		<<if ($slaves[$i].behavioralQuirk == "cutting") && ($slaves[$i].intelligence >= 2)>>
-			<<set _vignettes.push({text: "$he helped a citizen discover a new fetish by making cutting remarks when his cock was too small for $his big cunt,", type: "rep", effect: 1})>>
-		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
-			<<set _vignettes.push({text: "$he irritated a male citizen with $his complaints that he was too small to please $him,", type: "rep", effect: -3})>>
+	<<set _vignette = GetVignette($slaves[$i])>>
+	__This week__ _vignette.text
+	<<if (_vignette.type == "cash")>>
+		<<if (_vignette.effect > 0)>>
+			@@.yellowgreen;making you an extra <<print cashFormat(Math.trunc($FResult*_vignette.effect))>>.@@
+		<<elseif (_vignette.effect < 0)>>
+			@@.red;losing you <<print cashFormat(Math.abs(Math.trunc($FResult*_vignette.effect)))>>.@@
+		<<else>>
+			an incident without lasting effect.
 		<</if>>
-	<</if>>
-<</if>>
-<<if canDoAnal($slaves[$i])>>
-	<<if ($slaves[$i].anus == 1)>>
-		<<set _vignettes.push({text: "$he got extra attention from a citizen who really likes $his butthole, and wants to fuck it as much as possible while it's still tight,", type: "rep", effect: 1})>>
-	<<elseif ($slaves[$i].anus > 2)>>
-		<<set _vignettes.push({text: "$he disappointed a citizen whose cock is just too small for $his loose butthole,", type: "rep", effect: -1})>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].face > 40)>>
-	<<set _vignettes.push({text: "$he lost a potential citizen who was so intimidated by $his great beauty that he decided to find a homelier whore,", type: "rep", effect: -1})>>
-<<elseif ($slaves[$i].face < -10)>>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who lacks self-confidence, and is more comfortable with homely whores,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].physicalAge > 40)>>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen with serious mommy issues,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].lips > 70)>>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who likes to play with $his lips nonsexually (don't ask),", type: "rep", effect: 1})>>
-<</if>>
-<<if !canTalk($slaves[$i])>>
-	<<set _vignettes.push({text: "$he impressed a citizen who didn't know how relaxing a girl who can't talk could be,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].muscles > 95)>>
-	<<set _vignettes.push({text: "$he impressed a citizen who was so eager to share workout plans with $him that he almost forgot to have sex with $him,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he gained extra gratitude from a female citizen who likes a girl who can bench-press $him before and after they fuck,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disappointed a citizen by accidentally revealing that $he's considerably stronger than him,", type: "rep", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].lactation > 0)>>
-	<<set _vignettes.push({text: "$he provided fresh milk for the coffee served at a citizen's business meeting,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he provided fresh milk at a trendy arcology coffeehouse,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].amp == 1)>>
-	<<set _vignettes.push({text: "$he disappointed a citizen who thought he'd enjoy fucking an amputee, but found it revolting,", type: "rep", effect: -1})>>
-<<else>>
-	<<if ($slaves[$i].heels == 1)>>
-	<<if ($slaves[$i].shoes != "heels") && ($slaves[$i].shoes != "pumps") && ($slaves[$i].shoes != "extreme heels") && ($slaves[$i].shoes != "boots")>>
-		<<set _vignettes.push({text: "$he enticed a new patron who had never really considered buttsex before he saw $him crawling along with $his asshole vulnerable,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-	<<if ($slaves[$i].boobs > 1500)>>
-	<<if ($slaves[$i].boobsImplant == 0)>>
-	<<set _vignettes.push({text: "a young citizen convinced $him to jump rope so he could watch $his massive natural breasts flop around,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].vaginalAccessory == "chastity belt")>>
-	<<set _vignettes.push({text: "a wavering citizen who was disappointed that $his pussy is unavailable decided to try $his ass instead,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].fetish == "mindbroken")>>
-	<<set _vignettes.push({text: "a citizen really enjoyed being able to treat $him however he liked without eliciting a reaction,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].intelligence <= -2)>>
-	<<set _vignettes.push({text: "a low-class citizen who had no business fucking $him managed to trick $him into fucking him anyway,", type: "rep", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].face > 10)>>
-	<<if ($slaves[$i].dick > 0)>>
-	<<if ($slaves[$i].fetish == "buttslut")>>
-		<<set _vignettes.push({text: "a citizen was surprised by $his penis, so $he hid it and enjoyed the buttsex without touching it,", type: "rep", effect: 1})>>
-	<<elseif ($slaves[$i].analSkill >= 100)>>
-		<<set _vignettes.push({text: "a citizen was surprised by $his penis, so $he hid it and skillfully pretended to be a real girl,", type: "rep", effect: 1})>>
-	<<elseif ($slaves[$i].fetish == "buttslut")>>
-		<<set _vignettes.push({text: "a citizen was surprised by $his penis, so $he hid it, but could barely tolerate anal without touching it", type: "rep", effect: -1})>>
-	<</if>>
-	<</if>>
-	<<if canDoAnal($slaves[$i])>>
-		<<if ($slaves[$i].analSkill < 100)>>
-			<<if ($slaves[$i].anus > 2)>>
-				<<set _vignettes.push({text: "a pair of customers enticed by $his beauty but disappointed by $his loose butthole doubled up on $his poor anus without mercy,", type: "health", effect: -1})>>
+		<<set $cash += Math.trunc($FResult*_vignette.effect)>>
+		<<set _incomeStats.rep += Math.trunc($FResult*_vignette.effect)>>
+	<<elseif (_vignette.type == "devotion")>>
+		<<if (_vignette.effect > 0)>>
+			<<if $slaves[$i].devotion > 50>>
+			@@.hotpink;increasing her devotion to you.@@
+			<<elseif $slaves[$i].devotion >= -20>>
+			@@.hotpink;increasing her acceptance of you.@@
+			<<elseif $slaves[$i].devotion >= -50>>
+			@@.hotpink;reducing her dislike of you.@@
+			<<else>>
+			@@.hotpink;reducing her hatred of you.@@
+			<</if>>
+		<<elseif (_vignette.effect < 0)>>
+			<<if $slaves[$i].devotion > 50>>
+			@@.mediumorchid;reducing her devotion to you.@@
+			<<elseif $slaves[$i].devotion >= -20>>
+			@@.mediumorchid;reducing her acceptance of you.@@
+			<<elseif $slaves[$i].devotion >= -50>>
+			@@.mediumorchid;increasing her dislike of you.@@
+			<<else>>
+			@@.mediumorchid;increasing her hatred of you.@@
 			<</if>>
-		<</if>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].fetishKnown == 1)>>
-<<if ($slaves[$i].fetishStrength > 95)>>
-	<<if ($slaves[$i].fetish == "buttslut") || ($slaves[$i].fetish == "dom")>>
-	<<set _vignettes.push({text: "$he showed off by forcing a slave in the stocks to eat $his ass", type: "rep", effect: 1})>>
-	<<elseif ($slaves[$i].fetish == "masochist")>>
-	<<set _vignettes.push({text: "$he cooperated with a customer who wanted to whip $his tits black and blue", type: "health", effect: -1})>>
-	<</if>>
-<</if>>
-<</if>>
-<<if ($slaves[$i].health < 20)>>
-	<<set _vignettes.push({text: "$he attracted the attention of a slaveowner alarmed by $his poor health, and thought he seemed kind,", type: "devotion", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].vaginalSkill >= 100)>>
-	<<set _vignettes.push({text: "$he was brought in to apply $his skills to a prominent citizen's virgin son,", type: "devotion", effect: 0})>>
-<</if>>
-<<if canDoAnal($slaves[$i])>>
-	<<if ($slaves[$i].analSkill < 100)>>
-		<<if ($slaves[$i].anus < 2)>>
-			<<set _vignettes.push({text: "a guy with a huge cock insisted on fucking $him in $his tight ass all night,", type: "health", effect: -1})>>
-		<</if>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].relationship <= -2)>>
-<<if ($slaves[$i].intelligence < 1)>>
-	<<set _vignettes.push({text: "$he accidentally mentions how much $he loves you during intercourse with a citizen who doesn't like to share,", type: "rep", effect: -1})>>
-<</if>>
-<</if>>
-<<if ($slaves[$i].prestige > 0)>>
-	<<set _vignettes.push({text: "a college fraternity visiting the arcology for rush week invited $him to a gangbang,", type: "rep", effect: 3})>>
-<</if>>
-
-<<if $arcologies[0].FSSupremacist != "unset">>
-	<<if ($slaves[$i].race == $arcologies[0].FSSupremacistRace)>>
-	<<set _vignettes.push({text: "$he disappointed a citizen who couldn't bear to see a beautiful $arcologies[0].FSSupremacistRace be a public slut,", type: "rep", effect: -1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSSubjugationist != "unset">>
-	<<if ($slaves[$i].race == $arcologies[0].FSSubjugationistRace)>>
-	<<set _vignettes.push({text: "$he had a bad time in general, since most of the citizens who used $him didn't care about a $arcologies[0].FSSubjugationistRace prostitute's health or well-being,", type: "health", effect: -1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSYouthPreferentialist != "unset">>
-	<<if ($slaves[$i].visualAge > 35)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who wants to keep his MILF fetish in the closet,", type: "rep", effect: 1})>>
-	<</if>>
-<<elseif $arcologies[0].FSMaturityPreferentialist != "unset">>
-	<<if ($slaves[$i].visualAge <= 20)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who wants to keep his fetish for young girls in the closet,", type: "rep", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSGenderRadicalist != "unset">>
-	<<if ($slaves[$i].dick > 0)>>
-	<<if ($slaves[$i].dick < 3)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who is coming to terms with Gender Radicalism, and is unthreatened by $his little penis,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-<<elseif $arcologies[0].FSGenderFundamentalist != "unset">>
-	<<if ($slaves[$i].visualAge > 25)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who thinks $he resembles his ex-wife, who would never let him fuck $his butt,", type: "rep", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSRepopulationFocus != "unset">>
-	<<if ($slaves[$i].pregType > 1) && ($slaves[$i].pregKnown > 1) && ($slaves[$i].belly >= 10000)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who enjoys the feeling of a womb filled with more than a single child,", type: "rep", effect: 1})>>
-	<</if>>
-<<elseif $arcologies[0].FSRestart != "unset">>
-	<<if canGetPregnant($slaves[$i])>>
-	<<set _vignettes.push({text: "$he gratified a citizen who misses the risk of getting a girl pregnant,", type: "rep", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSPaternalist != "unset">>
-	<<if ($slaves[$i].intelligence > 1)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who likes to chat with intelligent prostitutes as they fuck her,", type: "rep", effect: 1})>>
-	<</if>>
-<<elseif $arcologies[0].FSDegradationist != "unset">>
-	<<if canTalk($slaves[$i])>>
-	<<if ($slaves[$i].voice > 2)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who prefers girls with high-pitched screams,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSBodyPurist != "unset">>
-	<<if ($slaves[$i].boobsImplant > 0)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who wants to keep his fetish for breast implants in the closet,", type: "rep", effect: 1})>>
-	<</if>>
-<<elseif $arcologies[0].FSTransformationFetishist != "unset">>
-	<<if ($slaves[$i].boobsImplant == 0)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who wants to keep his fetish for natural breasts in the closet,", type: "rep", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-	<<if ($slaves[$i].voice > 2)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who loves $his high-pitched squeals of pleasure,", type: "rep", effect: 1})>>
-	<</if>>
-	<<if ($slaves[$i].boobs > 800)>>
-	<<set _vignettes.push({text: "$he was publicly mocked as an ugly fat cow with dangling udders,", type: "rep", effect: -1})>>
-	<</if>>
-<<elseif $arcologies[0].FSAssetExpansionist != "unset">>
-	<<if ($slaves[$i].boobs < 300)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who wants to keep his fetish for flat chested girls in the closet,", type: "rep", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSPastoralist != "unset">>
-	<<if ($slaves[$i].lactation == 0)>>
-		<<set _vignettes.push({text: "$he disappointed a citizen who could not understand why nothing was coming out of $his nipples when he sucked on them,", type: "rep", effect: -1})>>
-	<</if>>
-	<<if $slaves[$i].nipples == "fuckable">>
-		<<set _vignettes.push({text: "$he left a citizen deeply confused over how $he could possibly be a proper cow without suitable teats,", type: "rep", effect: -1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSPhysicalIdealist != "unset">>
-	<<if ($slaves[$i].muscles <= 95)>>
-	<<set _vignettes.push({text: "$he disappointed a citizen who could barely believe that $he wasn't capable of holding $himself in a handstand,", type: "rep", effect: -1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSChattelReligionist != "unset">>
-	<<if ($slaves[$i].behavioralFlaw == "devout")>>
-	<<set _vignettes.push({text: "$he gratified a citizen who desperately wants his cock to be the one that converts $him,", type: "rep", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSRomanRevivalist != "unset">>
-	<<if ($slaves[$i].race == "white")>>
-	<<if ($slaves[$i].height >= 185)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who thought $his appearance worthy of a lusty northern barbarian,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSAztecRevivalist != "unset">>
-	<<if ($slaves[$i].devotion > 75)>>
-	<<if ($slaves[$i].intelligence >= 2)>>
-	<<set _vignettes.push({text: "$he indulged a citizen by following a fertility ritual completely,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSEgyptianRevivalist != "unset">>
-	<<set _vignettes.push({text: "$he got extra attention from a group of citizens competing to get off with whores of each of the arcology's ethnic groups in the least time,", type: "rep", effect: 1})>>
-<</if>>
-<<if $arcologies[0].FSEdoRevivalist != "unset">>
-	<<if ($slaves[$i].face > 40)>>
-	<<if ($slaves[$i].intelligence > 1)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who wished to do nothing more than converse with a beautiful and intelligent girl,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSArabianRevivalist != "unset">>
-	<<if ($slaves[$i].entertainSkill >= 100)>>
-	<<if canTalk($slaves[$i])>>
-	<<if ($slaves[$i].voice > 0)>>
-	<<if ($slaves[$i].accent < 2)>>
-	<<set _vignettes.push({text: "$he gratified a citizen who prefers prostitutes who can tell lovely stories,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-<</if>>
-
-<<set _vignettes.push({text: "one of the companies with an office in your arcology brought $him in for a team-building bukkake party for its employees,", type: "rep", effect: 1})>>
-<<set _vignettes.push({text: "a man dragged his crying wife along so $he could watch him fuck a public slut,", type: "rep", effect: 0})>>
-<<set _vignettes.push({text: "a woman dragged her angry husband along so he could watch her get eaten out by a public slut,", type: "rep", effect: 0})>>
-<<set _vignettes.push({text: "$he went to sleep after having sex with strangers all day, and had a dream about you loving $him,", type: "devotion", effect: 1})>>
-<<set _vignettes.push({text: "$he went to sleep after having sex with strangers all day, and had a dream about you letting a citizen hurt $him,", type: "devotion", effect: -1})>>
-<<set _vignettes.push({text: "$he went to sleep after having sex with strangers all day, and had a dream about you protecting $him from a mean citizen,", type: "trust", effect: 1})>>
-<<set _vignettes.push({text: "$he went to sleep after having sex with strangers all day, and had a dream about you selling $him for good,", type: "trust", effect: -1})>>
-
-<<set _vignette = _vignettes.random()>>
-__This week__ _vignette.text
-<<if (_vignette.type == "cash")>>
-	<<if (_vignette.effect > 0)>>
-		@@.yellowgreen;making you an extra <<print cashFormat(Math.trunc($FResult*_vignette.effect))>>.@@
-	<<elseif (_vignette.effect < 0)>>
-		@@.red;losing you <<print cashFormat(Math.abs(Math.trunc($FResult*_vignette.effect)))>>.@@
-	<<else>>
-		an incident without lasting effect.
-	<</if>>
-	<<set $cash += Math.trunc($FResult*_vignette.effect)>>
-	<<set _incomeStats.rep += Math.trunc($FResult*_vignette.effect)>>
-<<elseif (_vignette.type == "devotion")>>
-	<<if (_vignette.effect > 0)>>
-		<<if $slaves[$i].devotion > 50>>
-		@@.hotpink;increasing $his devotion to you.@@
-		<<elseif $slaves[$i].devotion >= -20>>
-		@@.hotpink;increasing $his acceptance of you.@@
-		<<elseif $slaves[$i].devotion >= -50>>
-		@@.hotpink;reducing $his dislike of you.@@
 		<<else>>
-		@@.hotpink;reducing $his hatred of you.@@
+			an incident without lasting effect.
 		<</if>>
-	<<elseif (_vignette.effect < 0)>>
-		<<if $slaves[$i].devotion > 50>>
-		@@.mediumorchid;reducing $his devotion to you.@@
-		<<elseif $slaves[$i].devotion >= -20>>
-		@@.mediumorchid;reducing $his acceptance of you.@@
-		<<elseif $slaves[$i].devotion >= -50>>
-		@@.mediumorchid;increasing $his dislike of you.@@
+		<<set $slaves[$i].devotion += 1*_vignette.effect>>
+	<<elseif (_vignette.type == "trust")>>
+		<<if (_vignette.effect > 0)>>
+			<<if $slaves[$i].trust > 20>>
+			@@.mediumaquamarine;increasing her trust in you.@@
+			<<elseif $slaves[$i].trust >= -50>>
+			@@.mediumaquamarine;reducing her fear of you.@@
+			<<else>>
+			@@.mediumaquamarine;reducing her terror of you.@@
+			<</if>>
+		<<elseif (_vignette.effect < 0)>>
+			<<if $slaves[$i].trust > 20>>
+			@@.gold;reducing her trust in you.@@
+			<<elseif $slaves[$i].trust > -20>>
+			@@.gold;increasing her fear of you.@@
+			<<else>>
+			@@.gold;increasing her terror of you.@@
+			<</if>>
 		<<else>>
-		@@.mediumorchid;increasing $his hatred of you.@@
+			an incident without lasting effect.
 		<</if>>
-	<<else>>
-		an incident without lasting effect.
-	<</if>>
-	<<set $slaves[$i].devotion += 1*_vignette.effect>>
-<<elseif (_vignette.type == "trust")>>
-	<<if (_vignette.effect > 0)>>
-		<<if $slaves[$i].trust > 20>>
-		@@.mediumaquamarine;increasing $his trust in you.@@
-		<<elseif $slaves[$i].trust >= -50>>
-		@@.mediumaquamarine;reducing $his fear of you.@@
+		<<set $slaves[$i].trust += 1*_vignette.effect>>
+	<<elseif (_vignette.type == "health")>>
+		<<if (_vignette.effect > 0)>>
+			@@.green;improving her health.@@
+		<<elseif (_vignette.effect < 0)>>
+			@@.red;affecting her health.@@
 		<<else>>
-		@@.mediumaquamarine;reducing $his terror of you.@@
+			an incident without lasting effect.
 		<</if>>
-	<<elseif (_vignette.effect < 0)>>
-		<<if $slaves[$i].trust > 20>>
-		@@.gold;reducing $his trust in you.@@
-		<<elseif $slaves[$i].trust > -20>>
-		@@.gold;increasing $his fear of you.@@
+		<<set $slaves[$i].health += 2*_vignette.effect>>
+	<<else>>
+		<<if (_vignette.effect > 0)>>
+			@@.green;gaining you a bit of reputation.@@
+		<<elseif (_vignette.effect < 0)>>
+			@@.red;losing you a bit of reputation.@@
 		<<else>>
-		@@.gold;increasing $his terror of you.@@
+			an incident without lasting effect.
 		<</if>>
-	<<else>>
-		an incident without lasting effect.
+		<<set $rep += Math.trunc($FResult*_vignette.effect*0.1)>>
+		<<set _incomeStats.income += Math.trunc($FResult*_vignette.effect*0.1)>>
 	<</if>>
-	<<set $slaves[$i].trust += 1*_vignette.effect>>
-<<elseif (_vignette.type == "health")>>
-	<<if (_vignette.effect > 0)>>
-		@@.green;improving $his health.@@
-	<<elseif (_vignette.effect < 0)>>
-		@@.red;affecting $his health.@@
-	<<else>>
-		an incident without lasting effect.
-	<</if>>
-	<<set $slaves[$i].health += 2*_vignette.effect>>
-<<else>>
-	<<if (_vignette.effect > 0)>>
-		@@.green;gaining you a bit of reputation.@@
-	<<elseif (_vignette.effect < 0)>>
-		@@.red;losing you a bit of reputation.@@
-	<<else>>
-		an incident without lasting effect.
-	<</if>>
-	<<set $rep += Math.trunc($FResult*_vignette.effect*0.1)>>
-	<<set _incomeStats.income += Math.trunc($FResult*_vignette.effect*0.1)>>
 <</if>>
 
-<</if>> /* CLOSES VIGNETTES */
-
 <<if $slaves[$i].energy > 40 && $slaves[$i].energy < 95>>
 	Being used sexually all week @@.lime;increases $his sex drive.@@
 	<<set $slaves[$i].energy += 1>>
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index 11006fb3481..c4f5cd8b32d 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -254,7 +254,7 @@ $His appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a d
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 <<elseif ($slaves[$i].vagina < 0)>>
-	<<set $desc = SlaveTitle($slaves[$i])>>
+	<<SlaveTitle $slaves[$i]>>
 	<<if (($slaves[$i].analSkill + $slaves[$i].oralSkill) >= 200)>>
 	$He's such an expert whore that $he copes with the stress of being a $desc prostitute.
 	<<elseif random(1,100) > 40+(10*($slaves[$i].analSkill + $slaves[$i].oralSkill))>>
@@ -1188,651 +1188,87 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 <</if>>
 <</if>>
 
-/* VIGNETTES */
-
 <<if ($showVignettes == 1)>>
-<<set _vignettes = []>>
-
-<<set $seed = random(1,10)>>
-<<switch $seed>>
-<<case 1>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he witnessed a domestic dispute over another whore,", type: "rep", effect: 0})>>
-<<case 2>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw a free whore finally sink into slavery,", type: "rep", effect: 0})>>
-<<case 3>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that construction forced $him to move from $his usual spot,", type: "rep", effect: 0})>>
-<<case 4>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that a customer used a new and improved sex toy on $him,", type: "rep", effect: 0})>>
-<<case 5>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was an appointment with an unusually perverted family,", type: "rep", effect: 0})>>
-<<case 6>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw a man sell his wife into slavery,", type: "rep", effect: 0})>>
-<<case 7>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he saw a woman sell her daughters into slavery,", type: "rep", effect: 0})>>
-<<case 8>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he watched a citizen descend into aphrodisiac addiction,", type: "rep", effect: 0})>>
-<<case 9>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he watched a citizen develop the beginnings of sex addiction,", type: "rep", effect: 0})>>
-<<default>>
-	<<set _vignettes.push({text: "the most interesting thing that happened to $him at work was that $he witnessed a citizen administering a brutal public punishment to one of his slaves,", type: "rep", effect: 0})>>
-<</switch>>
-<<set $seed = random(1,5)>>
-<<switch $seed>>
-<<case 1>>
-	<<set _vignettes.push({text: "a citizen punished one of his slaves by tying her up in public near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
-<<case 2>>
-	<<set _vignettes.push({text: "a citizen shared one of his slaves with the public near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
-<<case 3>>
-	<<set _vignettes.push({text: "a private brothel offered a promotion near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
-<<case 4>>
-	<<set _vignettes.push({text: "some free sluts threw an aphrodisiac street party near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
-<<default>>
-	<<set _vignettes.push({text: "a contract breaker was punished with the pillory near where $slaves[$i].slaveName was working. This cut into $his business that day,", type: "cash", effect: -1})>>
-<</switch>>
-<<set $seed = random(1,5)>>
-<<switch $seed>>
-<<case 1>>
-	<<set _vignettes.push({text: "one of $his regular customers got a divorce and came to $him for repeated consolation,", type: "cash", effect: 1})>>
-<<case 2>>
-	<<set _vignettes.push({text: "a brothel near where $slaves[$i].slaveName usually works had business trouble,", type: "cash", effect: 1})>>
-<<case 3>>
-	<<set _vignettes.push({text: "a competing whore that looks like $him fell ill, driving a customer to look for an alternative,", type: "cash", effect: 1})>>
-<<case 4>>
-	<<set _vignettes.push({text: "a street whore that works near $him was badly beaten by an abusive customer and had to take time off. The reduced competition got $him more business,", type: "cash", effect: 1})>>
-<<default>>
-	<<set _vignettes.push({text: "an influx of tourists came into $his part of the arcology, earning $him more business for a day,", type: "cash", effect: 1})>>
-<</switch>>
-
-<<if ($slaves[$i].fetishKnown == 1)>>
-<<switch $slaves[$i].fetish>>
-<<case "submissive">>
-	<<set _vignettes.push({text: "$he deeply impressed a customer with $his sincere submission to him,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he lost a customer who secretly wanted $him to show a little initiative,", type: "cash", effect: -1})>>
-<<case "cumslut">>
-	<<set _vignettes.push({text: "$he deeply impressed a customer with $his hunger for his cum,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much cum fetishes revolted him until $he displayed hers,", type: "rep", effect: -1})>>
-<<case "humiliation">>
-	<<set _vignettes.push({text: "$he earned repeat business from a customer who didn't know how much he liked public sex until $he got him to try it,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much exhibitionism turned him off until he tried public sex with $him,", type: "rep", effect: -1})>>
-<<case "buttslut">>
-	<<if canDoAnal($slaves[$i])>>
-		<<set _vignettes.push({text: "$he earned repeat business from a customer who didn't know how much he liked fucking buttholes until $he got him to try fucking hers,", type: "cash", effect: 1})>>
-		<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much buttsex turned him off until $he got him to try fucking $his ass,", type: "rep", effect: -1})>>
-	<</if>>
-	<<if $slaves[$i].butt >= 3>>
-		<<set _vignettes.push({text: "$he earned repeat business from a customer who didn't know how much he liked big butts until $he gave him a lap dance he'll never forget,", type: "cash", effect: 1})>>
-	<</if>>
-	<<set _vignettes.push({text: "$he earned extra gratitude from a citizen who appreciated a nice rear, even if it is off limits,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much butts turned him off until he put $his hands on $hers,", type: "rep", effect: -1})>>
-<<case "boobs">>
-	<<set _vignettes.push({text: "$he deeply impressed a customer by orgasming to nothing but the feeling of her sucking $his nipples,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disappointed a female customer who didn't know how uninterested $he was in nipple play before trying it,", type: "rep", effect: -1})>>
-	<<if $slaves[$i].nipples == "fuckable">>
-		<<set _vignettes.push({text: "$he left a lasting impression on a pair of customer after nearly passing out from a series of intense orgasms from getting $his nipples fucked,", type: "cash", effect: 2})>>
-	<</if>>
-<<case "sadist">>
-	<<set _vignettes.push({text: "$he deeply impressed a customer who brought his own slave to $him for abuse with $his sadism,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a customer brought $him his own slave to abuse, but the sight proved to be a turn off for him,", type: "rep", effect: -1})>>
-<<case "masochist">>
-	<<set _vignettes.push({text: "$he helped a customer discover a new fetish by orgasming when he accidentally hurt $him,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he disturbed a customer who accidentally hurt $him by orgasming,", type: "rep", effect: -1})>>
-<<case "dom">>
-	<<set _vignettes.push({text: "$he made a female customer $his bitch: fortunately, the customer wanted to be $his bitch and came back for more", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "$he accidentally overwhelmed a customer with $his sexual dominance,", type: "rep", effect: -1})>>
-<<case "pregnancy">>
-	<<set _vignettes.push({text: "$he earned repeat business from a customer who didn't know how much he liked pregnancy play until $he begged him to knock $him up,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a customer who didn't know how much pregnancy play turned him off until $he begged him to knock $him up,", type: "rep", effect: -1})>>
-<</switch>>
-<</if>>
-<<switch $slaves[$i].behavioralFlaw>>
-<<case "arrogant">>
-	<<set _vignettes.push({text: "$he manages to give a citizen the impression $he thinks $himself better than him,", type: "rep", effect: -1})>>
-<<case "bitchy">>
-	<<set _vignettes.push({text: "$he makes an emasculating remark to a customer right after he fucks $him,", type: "rep", effect: -1})>>
-<<case "odd">>
-	<<set _vignettes.push({text: "$he infuriates a potential customer with $his nervous tics,", type: "cash", effect: -1})>>
-<<case "hates men">>
-	<<set _vignettes.push({text: "$his disgust towards men surfaces at a bad time, losing $him a male customer,", type: "cash", effect: -1})>>
-<<case "hates women">>
-	<<set _vignettes.push({text: "$his disgust towards women surfaces at a bad time, losing $him a female customer,", type: "cash", effect: -1})>>
-<<case "gluttonous">>
-	<<set _vignettes.push({text: "$he accidentally lingers at a meal, missing a customer appointment,", type: "cash", effect: -1})>>
-<<case "anorexic">>
-	<<set _vignettes.push({text: "$his bulimia surfaces at an extremely inopportune moment, turning a customer off,", type: "cash", effect: -1})>>
-<<case "devout">>
-	<<set _vignettes.push({text: "a customer catches $him praying to $himself as he inserts himself into $him, turning him off,", type: "cash", effect: -1})>>
-<<case "liberated">>
-	<<set _vignettes.push({text: "$he treats a rude potential customer impolitely, because $he thinks that's fair,", type: "cash", effect: -1})>>
-<</switch>>
-<<switch $slaves[$i].sexualFlaw>>
-<<case "hates oral">>
-	<<set _vignettes.push({text: "$he vomits while trying to deepthroat a customer,", type: "rep", effect: -1})>>
-<<case "hates anal">>
-	<<set _vignettes.push({text: "$he cries while taking anal from a customer who isn't into painal,", type: "rep", effect: -1})>>
-<<case "hates penetration">>
-	<<set _vignettes.push({text: "$he cries while taking a pounding from a customer who likes his sex consensual,", type: "rep", effect: -1})>>
-<<case "shamefast">>
-	<<set _vignettes.push({text: "$he cries while a potential customer looks $him over,", type: "cash", effect: -1})>>
-	<<set _vignettes.push({text: "$he disrobed so slowly that a potential customer gave up on $him,", type: "cash", effect: -1})>>
-<<case "idealistic">>
-	<<set _vignettes.push({text: "$he cries when explaining the price of $his body to a potential customer,", type: "cash", effect: -1})>>
-<<case "repressed">>
-	<<set _vignettes.push({text: "$he misunderstands a potential customer's lewd requests, turning her off,", type: "cash", effect: -1})>>
-<<case "apathetic">>
-	<<set _vignettes.push({text: "$he fails to notice when a customer achieves orgasm,", type: "rep", effect: -1})>>
-<<case "neglectful">>
-	<<set _vignettes.push({text: "$he brings a denial fetishist to orgasm three times without cumming $himself, earning their repeat business,", type: "cash", effect: 3})>>
-<<case "cum addict">>
-	<<set _vignettes.push({text: "$he's so focused on sucking down a customer's cum that $he managed to drive him to repeated orgasm, earning his repeated business once he got the feeling back in his legs,", type: "cash", effect: 3})>>
-<<case "anal addict">>
-	<<set _vignettes.push({text: "$he takes a trio of dicks in $his ass without hesitation, earning repeat business from one of them thoroughly impressed by $his anal addiction,", type: "cash", effect: 3})>>
-<<case "attention whore">>
-	<<set _vignettes.push({text: "$he got repeat business from a man who loves fucking $him in the middle of crowded rooms,", type: "cash", effect: 3})>>
-<<case "breast growth">>
-	<<set _vignettes.push({text: "$he got repeat business from a woman with huge breasts who enjoys roleplaying her breast expansion fetishes with $him,", type: "cash", effect: 3})>>
-<<case "abusive">>
-	<<set _vignettes.push({text: "$he got repeat business from a man who loves physically abusive sex, though his testicles could only take so much in one week,", type: "cash", effect: 2})>>
-<<case "malicious">>
-	<<set _vignettes.push({text: "$he got repeat business from a masochistic woman who enjoys being whipped and degraded,", type: "cash", effect: 3})>>
-<<case "self hating">>
-	<<set _vignettes.push({text: "$he got repeat business from an abusive man who thoroughly enjoyed how diligently $he took it,", type: "cash", effect: 3})>>
-<<case "breeder">>
-	<<set _vignettes.push({text: "$he got repeat business from a pregnancy fetishist nearly driven mad with lust over her pregnancy obsession,", type: "cash", effect: 3})>>
-<</switch>>
-<<switch $slaves[$i].behavioralQuirk>>
-<<case "confident">>
-	<<set _vignettes.push({text: "$he confidently presses forward with a wavering potential customer, and makes the sale,", type: "cash", effect: 1})>>
-<<case "cutting">>
-	<<set _vignettes.push({text: "$he makes such a gloriously cutting remark to a male customer that a female bystander comes to $him for repeat business,", type: "cash", effect: 1})>>
-<<case "funny">>
-	<<set _vignettes.push({text: "$he makes a group of citizens laugh so hard, one of them comes to $him for repeat business,", type: "cash", effect: 1})>>
-<<case "fitness">>
-	<<set _vignettes.push({text: "$he continues a marathon gangbang past the point where most would have passed out,", type: "cash", effect: 1})>>
-<<case "adores women">>
-	<<set _vignettes.push({text: "$he strikes up a personal friendship with a regular female customer,", type: "rep", effect: 1})>>
-<<case "adores men">>
-	<<set _vignettes.push({text: "$he strikes up a personal friendship with a regular male customer,", type: "rep", effect: 1})>>
-<<case "insecure">>
-	<<set _vignettes.push({text: "$he successfully convinces a regular customer that $he's reliant on him emotionally,", type: "cash", effect: 1})>>
-<<case "sinful">>
-	<<set _vignettes.push({text: "$he helps a customer get past her religious hangups through sex with her friendly neighborhood whore,", type: "rep", effect: 1})>>
-<<case "advocate">>
-	<<set _vignettes.push({text: "$he successfully convinces a wavering potential customer that there's nothing wrong with banging a whore,", type: "cash", effect: 1})>>
-<</switch>>
-<<switch $slaves[$i].sexualQuirk>>
-<<case "gagfuck queen">>
-	<<set _vignettes.push({text: "$he earns repeat business from a citizen who's obsessed with gagfucks,", type: "cash", effect: 1})>>
-<<case "painal queen">>
-	<<set _vignettes.push({text: "$he earns repeat business from a citizen who's obsessed with painal,", type: "cash", effect: 1})>>
-<<case "strugglefuck queen">>
-	<<set _vignettes.push({text: "$he earns repeat business from a citizen who's obsessed with strugglefucking,", type: "cash", effect: 1})>>
-<<case "tease">>
-	<<set _vignettes.push({text: "$he convinces a citizen who's never had sex with a prostitute to patronize $him with some truly inspired flirting,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "a few partiers were so impressed with $his provocative teasing that they repeated $his wit to friends,", type: "rep", effect: 1})>>
-<<case "romantic">>
-	<<set _vignettes.push({text: "a citizen becomes infatuated with $him, since he's convinced $he's infatuated with him,", type: "cash", effect: 1})>>
-<<case "perverted">>
-	<<set _vignettes.push({text: "$he earns some momentary notoriety by engaging in a previously unheard-of sex act,", type: "rep", effect: 1})>>
-<<case "caring">>
-	<<set _vignettes.push({text: "$he serves as an impromptu sounding board for a customer having marital trouble,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was so enamored with $his kind and caring manner than he proposed to $him and offered to take $him away, and when $he refused, he left a sizable tip,", type: "cash", effect: 1})>>
-<</switch>>
-<<if ($slaves[$i].pitKills > 0)>>
-	<<set _vignettes.push({text: "$he earns repeat business from a customer obsessed with the fact that $he's a killer,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].oralCount > 500)>>
-	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving $his oral mileage as high as possible,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].analCount > 500) && ($slaves[$i].anus > 0)>>
-	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving $his anal mileage as high as possible,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].vaginalCount > 500) && ($slaves[$i].vagina > 0)>>
-	<<set _vignettes.push({text: "a customer into degradation becomes obsessed with driving $his pussy mileage as high as possible,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].devotion > 95)>>
-	<<set _vignettes.push({text: "$he really pushed $himself to please a customer with tastes that disgusted $him,", type: "cash", effect: 1})>>
-<<elseif ($slaves[$i].devotion < -50)>>
-	<<set _vignettes.push({text: "$his fury at being sold for sex turned a customer off before he could fuck $him,", type: "cash", effect: -1})>>
-<<elseif ($slaves[$i].devotion <= 20)>>
-	<<set _vignettes.push({text: "$he treasured a love token given to $him by a customer $he fooled into thinking $his affection was real,", type: "devotion", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].trust > 95)>>
-	<<set _vignettes.push({text: "$he really pushed $himself to accept a customer with tastes that frightened $him,", type: "cash", effect: 1})>>
-<<elseif ($slaves[$i].trust < -50)>>
-	<<set _vignettes.push({text: "$his tearful terror at being forced to sell $himself for sex turned a customer off before he could fuck $him,", type: "cash", effect: -1})>>
-<</if>>
-<<if $slaves[$i].livingRules == "luxurious">>
-	<<set _vignettes.push({text: "$he got a truly perfect night's sleep, which put $him in the right frame of mind for the whole day,", type: "rep", effect: 1})>>
-<<elseif $slaves[$i].livingRules == "spare">>
-	<<set _vignettes.push({text: "$he got a poor night's sleep in the noisy dormitory, which took the shine off $his efforts for the whole day", type: "rep", effect: -1})>>
-<</if>>
-<<if $slaves[$i].releaseRules == "permissive" || $slaves[$i].releaseRules == "masturbation">>
-	<<set _vignettes.push({text: "a customer asked if $he masturbates, and then spent an hour jerking off as $he described how,", type: "cash", effect: 1})>>
-<<elseif $slaves[$i].releaseRules == "restrictive">>
-	<<set _vignettes.push({text: "a customer asked if $he masturbates, and seemed disappointed when $he answered honestly,", type: "cash", effect: 0})>>
-<<else>>
-	<<set _vignettes.push({text: "a closeted female customer asked about $his sex life with other slaves, and was enthralled by $his answer,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].health > 80)>>
-	<<set _vignettes.push({text: "a potential customer in the medical field was fascinated by $his health, and spent almost as much time examining $him as he did having sex with $him,", type: "cash", effect: 1})>>
-<</if>>
-<<if $arcologies[0].FSHedonisticDecadence != "unset">>
-	<<if ($slaves[$i].weight < 10)>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a customer who misses girls without a spare tire around their middle,", type: "cash", effect: 1})>>
-	<<elseif ($slaves[$i].weight < 95)>>
-		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he gains a lot more weight,", type: "cash", effect: 0})>>
-	<<else>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a customer who loves them big and soft", type: "cash", effect: 0})>>
-	<</if>>
-	<<if ($slaves[$i].weight > 30)>>
-		<<set _vignettes.push({text: "$he earned extra gratitude from a customer who enjoyed the way $his middle jiggled as he fucked $him,", type: "cash", effect: 0})>>
-	<</if>>
-<<else>>
-	<<if ($slaves[$i].weight > 95)>>
-		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he loses a lot of weight.", type: "cash", effect: 0})>>
-	<<elseif ($slaves[$i].weight > 30)>>
-		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he loses some weight.", type: "cash", effect: 0})>>
-	<<elseif ($slaves[$i].weight <= -30)>>
-		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he gains some weight.", type: "cash", effect: 0})>>
-	<<elseif ($slaves[$i].weight < -95)>>
-		<<set _vignettes.push({text: "a potential customer told $him that he's looking forward to patronizing $him once $he gains a lot of weight.", type: "cash", effect: 0})>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].drugs == "testicle enhancement")>>
-	<<set _vignettes.push({text: "$he took it in public, with $his copious ejaculation getting $him another customer right away,", type: "cash", effect: 1})>>
-<<elseif ($slaves[$i].drugs == "hyper testicle enhancement")>>
-	<<set _vignettes.push({text: "$he bloated a female customer's belly with $his copious ejaculate, leading $him to say $he is looking forward to come back and get filled again,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].aphrodisiacs > 1) || ($slaves[$i].inflationType == "aphrodisiac")>>
-	<<set _vignettes.push({text: "$his piteous begging for sex due to $his extreme aphrodisiac dosage turned a potential customer off,", type: "cash", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].inflationType == "aphrodisiac")>>
-	<<set _vignettes.push({text: "$his piteous begging for sex coupled with $his bloated belly pleased a customer who loves desperate girls,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "$his piteous begging for sex coupled with $his bloated belly horrified a customer who didn't realize how low a girl could stoop,", type: "rep", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].addict > 50)>>
-	<<set _vignettes.push({text: "$he zoned out badly due to a low point between aphrodisiac doses, disappointing a customer,", type: "rep", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].bellyPreg >= 10000) || ($slaves[$i].bellyImplant >= 10000)>>
-	<<set _vignettes.push({text: "$he earned repeat business from a customer who likes to do nothing more than cuddle with $his swollen belly,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "a night with guy who likes rough, hard sex with heavily pregnant girls took its toll on $him", type: "health", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].bellyFluid >= 5000)>>
-	<<set _vignettes.push({text: "$he earned repeat business from a customer who loved the way $his belly moved as he fucked $him,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "$he disgusted a customer when his forceful fucking caused $him to release $his contained $slaves[$i].inflationType all over him,", type: "rep", effect: -2})>>
-<</if>>
-<<if ($slaves[$i].hormoneBalance >= 100) && !canAchieveErection($slaves[$i])>>
-	<<if ($slaves[$i].dick > 0)>>
-		<<set _vignettes.push({text: "$he disappointed a customer who was sure $he could get $slaves[$i].slaveName's cock erect,", type: "rep", effect: -1})>>
-		<<set _vignettes.push({text: "$he earned repeat business from a customer who seems unthreatened by $his soft dick,", type: "cash", effect: 1})>>
-	<</if>>
-<<elseif ($slaves[$i].hormoneBalance <= -100)>>
-	<<if ($slaves[$i].dick == 0)>>
-		<<set _vignettes.push({text: "$he earned repeat business from a female customer who adores the masculinity produced by $slaves[$i].slaveName's hormone regime,", type: "cash", effect: 1})>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].dick > 0) && canPenetrate($slaves[$i])>>
-	<<set _vignettes.push({text: "$he earned repeat business from a customer who likes to see his wife get fucked by a dickgirl whore,", type: "cash", effect: 1})>>
-	<<if ($slaves[$i].dick > 3)>>
-		<<set _vignettes.push({text: "$he earned repeat business from a female customer who likes big stiff cocks, and cannot lie,", type: "cash", effect: 1})>>
-		<<set _vignettes.push({text: "$he irritated a male customer who brought his girlfriend with him by accidentally showing him up,", type: "rep", effect: -1})>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].balls > 3)>>
-	<<set _vignettes.push({text: "$he loses a customer who wants $him to look like a natural girl, since $his balls are too big to be hidden,", type: "cash", effect: -1})>>
-<</if>>
-<<if canDoVaginal($slaves[$i])>>
-	<<if ($slaves[$i].vagina == 1)>>
-		<<set _vignettes.push({text: "$he got extra business from a customer who really likes $him, and wants to fuck $his pussy as much as possible while it's still tight,", type: "cash", effect: 1})>>
-	<<elseif ($slaves[$i].vagina > 2)>>
-		<<set _vignettes.push({text: "$he disappointed a customer whose cock is just too small for $his big cunt,", type: "rep", effect: -1})>>
-		<<if ($slaves[$i].behavioralQuirk == "cutting") && ($slaves[$i].intelligence >= 2)>>
-			<<set _vignettes.push({text: "$he helped a customer discover a new fetish by making cutting remarks when his cock was too small for $his big cunt,", type: "rep", effect: 1})>>
-		<<elseif ($slaves[$i].behavioralFlaw == "bitchy")>>
-			<<set _vignettes.push({text: "$he irritated a male customer with $his complaints that he was too small to please $him,", type: "rep", effect: -2})>>
-		<</if>>
-	<</if>>
-<</if>>
-<<if canDoAnal($slaves[$i])>>
-	<<if ($slaves[$i].anus == 1)>>
-		<<set _vignettes.push({text: "$he got extra business from a customer who really likes $his butthole, and wants to fuck it as much as possible while it's still tight,", type: "cash", effect: 1})>>
-	<<elseif ($slaves[$i].anus > 2)>>
-		<<set _vignettes.push({text: "$he disappointed a customer whose cock is just too small for $his loose butthole,", type: "rep", effect: -1})>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].face > 40)>>
-	<<set _vignettes.push({text: "$he lost a potential customer who was so intimidated by $his great beauty that he decided to find a homelier whore,", type: "cash", effect: -1})>>
-<<elseif ($slaves[$i].face < -10)>>
-	<<set _vignettes.push({text: "$he earned repeat business from a customer who lacks self-confidence, and is more comfortable with homely whores,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].visualAge > 40)>>
-	<<set _vignettes.push({text: "$he earned repeat business from a customer with serious mommy issues,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].lips > 70)>>
-	<<set _vignettes.push({text: "$he earned repeat business from a customer who likes to play with $his lips nonsexually (don't ask),", type: "cash", effect: 1})>>
-<</if>>
-<<if !canTalk($slaves[$i])>>
-	<<set _vignettes.push({text: "$he impressed a customer who didn't know how relaxing a girl who can't talk could be,", type: "rep", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].muscles > 95)>>
-	<<set _vignettes.push({text: "$he impressed a customer who was so eager to share workout plans with $him that he almost forgot to have sex with $him,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "$he gained repeat business from a female customer who likes a girl who can bench-press $him before and after they fuck,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "$he disappointed a customer by accidentally revealing that $he's considerably stronger than him,", type: "rep", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].lactation > 0)>>
-	<<set _vignettes.push({text: "$he was well compensated for providing fresh milk for the coffee served at a customer's business meeting", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "$he served as a conveniently lactating whore near a trendy arcology coffeehouse,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].amp == 1)>>
-	<<set _vignettes.push({text: "$he disappointed a customer who thought he'd enjoy fucking an amputee, but found it revolting,", type: "rep", effect: -1})>>
-<<elseif ($slaves[$i].amp == -1)>>
-	<<set _vignettes.push({text: "a strange customer was excited by the sight of $his prosthetic limbs,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was disgusted at the thought of $his basic prosthetic limbs,", type: "rep", effect: -1})>>
-	<<set _vignettes.push({text: "a customer was put off by $his prosthetic limbs,", type: "rep", effect: -1})>>
-<<elseif ($slaves[$i].amp == -2)>>
-	<<set _vignettes.push({text: "a customer was excited by $his vibrating fingertips,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,", type: "cash", effect: 0})>>
-	<<set _vignettes.push({text: "a customer was put off by $his crude artificial limbs,", type: "rep", effect: -1})>>
-<<elseif ($slaves[$i].amp == -3)>>
-	<<set _vignettes.push({text: "a strange customer was excited by the sight of $his artificial limbs,", type: "rep", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,", type: "cash", effect: 0})>>
-	<<set _vignettes.push({text: "a customer was put off by the sight of $his prosthetic limbs,", type: "rep", effect: -1})>>
-<<elseif ($slaves[$i].amp == -4)>>
-	<<set _vignettes.push({text: "a customer was excited by the thought of having sex with a slave with p-limbs, but was scared off by $his combat p-limbs,", type: "cash", effect: -1})>>
-	<<set _vignettes.push({text: "a customer was indifferent to the thought of having sex with a slave with artificial limbs,", type: "cash", effect: 0})>>
-	<<set _vignettes.push({text: "a customer was greatly intimidated by $his combat p-limbs,", type: "cash", effect: -1})>>
-<<elseif ($slaves[$i].amp == -5)>>
-	<<set _vignettes.push({text: "a customer was fascinated by $his cybernetic limbs, and spent almost as much time examining them as he did having sex with $him,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was excited by the thought of having sex with a cybernetically enhanced slave,", type: "cash", effect: 1})>>
-	<<set _vignettes.push({text: "a customer was greatly intimidated by the sight of $his cybernetic limbs and was frightened away,", type: "cash", effect: -1})>>
-<<else>>
-	<<if ($slaves[$i].heels == 1)>>
-	<<if ($slaves[$i].shoes != "heels") && ($slaves[$i].shoes != "pumps") && ($slaves[$i].shoes != "extreme heels") && ($slaves[$i].shoes != "boots")>>
-		<<set _vignettes.push({text: "$he enticed a new customer who had never really considered buttsex before he saw $him crawling along with $his asshole vulnerable,", type: "cash", effect: 1})>>
-	<</if>>
-	<</if>>
-	<<if ($slaves[$i].boobs > 1500)>>
-	<<if ($slaves[$i].boobsImplant == 0)>>
-	<<set _vignettes.push({text: "a young customer hired $him to jump rope so he could watch $his massive natural breasts flop around,", type: "cash", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].vaginalAccessory == "chastity belt")>>
-	<<set _vignettes.push({text: "a wavering customer who was disappointed that $his pussy is unavailable decided to try $his ass instead,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].fetish == "mindbroken")>>
-	<<set _vignettes.push({text: "a customer really enjoyed being able to treat $him however he liked without eliciting a reaction,", type: "cash", effect: 1})>>
-<</if>>
-<<if ($slaves[$i].intelligence <= -2)>>
-	<<set _vignettes.push({text: "a customer managed to trick $him into fucking him without payment,", type: "cash", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].face > 10)>>
-<</if>>
-<<if ($slaves[$i].face > 10)>>
-	<<if ($slaves[$i].dick > 0)>>
-	<<if ($slaves[$i].fetish == "buttslut")>>
-		<<set _vignettes.push({text: "a customer was surprised by $his penis, so $he hid it and enjoyed the buttsex without touching it,", type: "rep", effect: 1})>>
-	<<elseif ($slaves[$i].analSkill >= 100)>>
-		<<set _vignettes.push({text: "a customer was surprised by $his penis, so $he hid it and skillfully pretended to be a real girl,", type: "rep", effect: 1})>>
-	<<elseif ($slaves[$i].fetish == "buttslut")>>
-		<<set _vignettes.push({text: "a customer was surprised by $his penis, so $he hid it, but could barely tolerate anal without touching it", type: "rep", effect: -1})>>
-	<</if>>
-	<</if>>
-	<<if canDoAnal($slaves[$i])>>
-		<<if ($slaves[$i].analSkill < 100)>>
-			<<if ($slaves[$i].anus > 2)>>
-				<<set _vignettes.push({text: "a pair of customers enticed by $his beauty but disappointed by $his loose butthole doubled up on $his poor anus without mercy,", type: "health", effect: -1})>>
+	<<set _vignette = GetVignette($slaves[$i])>>
+	__This week__ _vignette.text
+	<<if (_vignette.type == "cash")>>
+		<<if (_vignette.effect > 0)>>
+			@@.yellowgreen;making you an extra <<print cashFormat(Math.trunc($FResult*_vignette.effect))>>.@@
+		<<elseif (_vignette.effect < 0)>>
+			@@.red;losing you <<print cashFormat(Math.abs(Math.trunc($FResult*_vignette.effect)))>>.@@
+		<<else>>
+			an incident without lasting effect.
+		<</if>>
+		<<set $cash += Math.trunc($FResult*_vignette.effect)>>
+		<<set _incomeStats.rep += Math.trunc($FResult*_vignette.effect)>>
+	<<elseif (_vignette.type == "devotion")>>
+		<<if (_vignette.effect > 0)>>
+			<<if $slaves[$i].devotion > 50>>
+			@@.hotpink;increasing her devotion to you.@@
+			<<elseif $slaves[$i].devotion >= -20>>
+			@@.hotpink;increasing her acceptance of you.@@
+			<<elseif $slaves[$i].devotion >= -50>>
+			@@.hotpink;reducing her dislike of you.@@
+			<<else>>
+			@@.hotpink;reducing her hatred of you.@@
+			<</if>>
+		<<elseif (_vignette.effect < 0)>>
+			<<if $slaves[$i].devotion > 50>>
+			@@.mediumorchid;reducing her devotion to you.@@
+			<<elseif $slaves[$i].devotion >= -20>>
+			@@.mediumorchid;reducing her acceptance of you.@@
+			<<elseif $slaves[$i].devotion >= -50>>
+			@@.mediumorchid;increasing her dislike of you.@@
+			<<else>>
+			@@.mediumorchid;increasing her hatred of you.@@
+			<</if>>
+		<<else>>
+			an incident without lasting effect.
+		<</if>>
+		<<set $slaves[$i].devotion += 1*_vignette.effect>>
+	<<elseif (_vignette.type == "trust")>>
+		<<if (_vignette.effect > 0)>>
+			<<if $slaves[$i].trust > 20>>
+			@@.mediumaquamarine;increasing her trust in you.@@
+			<<elseif $slaves[$i].trust >= -50>>
+			@@.mediumaquamarine;reducing her fear of you.@@
+			<<else>>
+			@@.mediumaquamarine;reducing her terror of you.@@
+			<</if>>
+		<<elseif (_vignette.effect < 0)>>
+			<<if $slaves[$i].trust > 20>>
+			@@.gold;reducing her trust in you.@@
+			<<elseif $slaves[$i].trust > -20>>
+			@@.gold;increasing her fear of you.@@
+			<<else>>
+			@@.gold;increasing her terror of you.@@
 			<</if>>
-		<</if>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].fetishKnown == 1)>>
-<<if ($slaves[$i].fetishStrength > 95)>>
-	<<if ($slaves[$i].fetish == "buttslut") || ($slaves[$i].fetish == "dom")>>
-	<<set _vignettes.push({text: "$he advertised $himself by forcing a slave in the stocks to eat $his ass, drumming up business,", type: "cash", effect: 1})>>
-	<<elseif ($slaves[$i].fetish == "masochist")>>
-	<<set _vignettes.push({text: "$he cooperated with a citizen who wanted to whip $his tits black and blue", type: "health", effect: -1})>>
-	<</if>>
-<</if>>
-<</if>>
-<<if ($slaves[$i].health < 20)>>
-	<<set _vignettes.push({text: "$he attracted the attention of a slaveowner alarmed by $his poor health, and thought he seemed kind,", type: "devotion", effect: -1})>>
-<</if>>
-<<if ($slaves[$i].vaginalSkill >= 100)>>
-	<<set _vignettes.push({text: "$he was hired to apply $his skills to a customer's virgin son,", type: "devotion", effect: 0})>>
-<</if>>
-<<if canDoAnal($slaves[$i])>>
-	<<if ($slaves[$i].analSkill < 100)>>
-		<<if ($slaves[$i].anus < 2)>>
-			<<set _vignettes.push({text: "a guy with a huge cock paid for the right to fuck $him in $his tight ass all night,", type: "health", effect: -1})>>
-		<</if>>
-	<</if>>
-<</if>>
-<<if ($slaves[$i].relationship <= -2)>>
-<<if ($slaves[$i].intelligence < 1)>>
-	<<set _vignettes.push({text: "$he accidentally mentions how much $he loves you during intercourse with a customer who doesn't like to share,", type: "rep", effect: -1})>>
-<</if>>
-<</if>>
-<<if ($slaves[$i].prestige > 0)>>
-	<<set _vignettes.push({text: "a college fraternity visiting the arcology for rush week hired $him for a gangbang,", type: "cash", effect: 3})>>
-<</if>>
-
-<<if $arcologies[0].FSSupremacist != "unset">>
-	<<if ($slaves[$i].race == $arcologies[0].FSSupremacistRace)>>
-	<<set _vignettes.push({text: "$he lost a customer who couldn't bear to see a beautiful $arcologies[0].FSSupremacistRace be a whore,", type: "cash", effect: -1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSSubjugationist != "unset">>
-	<<if ($slaves[$i].race == $arcologies[0].FSSubjugationistRace)>>
-	<<set _vignettes.push({text: "$he had a bad time in general, since most of $his customers didn't care about a $arcologies[0].FSSubjugationistRace prostitute's health or well-being,", type: "health", effect: -1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSYouthPreferentialist != "unset">>
-	<<if ($slaves[$i].visualAge > 35)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his MILF fetish in the closet,", type: "cash", effect: 1})>>
-	<</if>>
-<<elseif $arcologies[0].FSMaturityPreferentialist != "unset">>
-	<<if ($slaves[$i].visualAge <= 20)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his fetish for young girls in the closet,", type: "cash", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSGenderRadicalist != "unset">>
-	<<if ($slaves[$i].dick > 0)>>
-	<<if ($slaves[$i].dick < 3)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who is coming to terms with Gender Radicalism, and is unthreatened by $his little penis,", type: "cash", effect: 1})>>
-	<</if>>
-	<</if>>
-<<elseif $arcologies[0].FSGenderFundamentalist != "unset">>
-	<<if ($slaves[$i].visualAge > 25)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who thinks $he resembles his ex-wife, who would never let him fuck her butt,", type: "cash", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSRepopulationFocus != "unset">>
-	<<if ($slaves[$i].pregType > 1) && ($slaves[$i].pregKnown > 1) && ($slaves[$i].belly >= 10000)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who loves fucking girls with wombs filled by more than a single child,", type: "cash", effect: 1})>>
-	<</if>>
-<<elseif $arcologies[0].FSRestart != "unset">>
-	<<if canGetPregnant($slaves[$i])>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who misses the risk of getting a girl pregnant,", type: "cash", effect: 3})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSPaternalist != "unset">>
-	<<if ($slaves[$i].intelligence > 1)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who likes to chat with intelligent prostitutes as they fuck $him,", type: "cash", effect: 1})>>
-	<</if>>
-<<elseif $arcologies[0].FSDegradationist != "unset">>
-	<<if canTalk($slaves[$i])>>
-	<<if ($slaves[$i].voice > 2)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who prefers girls with high-pitched screams,", type: "cash", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSBodyPurist != "unset">>
-	<<if ($slaves[$i].boobsImplant > 0)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his fetish for breast implants in the closet,", type: "cash", effect: 1})>>
-	<</if>>
-<<elseif $arcologies[0].FSTransformationFetishist != "unset">>
-	<<if ($slaves[$i].boobsImplant == 0)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his fetish for natural breasts in the closet,", type: "cash", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSSlimnessEnthusiast != "unset">>
-	<<if canTalk($slaves[$i])>>
-	<<if ($slaves[$i].voice > 2)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who loves $his high-pitched squeals of pleasure,", type: "cash", effect: 1})>>
-	<</if>>
-	<</if>>
-	<<if ($slaves[$i].boobs > 800)>>
-	<<set _vignettes.push({text: "$he was publicly mocked as an ugly fat cow with dangling udders,", type: "rep", effect: -1})>>
-	<</if>>
-<<elseif $arcologies[0].FSAssetExpansionist != "unset">>
-	<<if ($slaves[$i].boobs < 300)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who wants to keep his fetish for flat chested girls in the closet,", type: "cash", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSPastoralist != "unset">>
-	<<if ($slaves[$i].lactation == 0)>>
-		<<set _vignettes.push({text: "$he lost a customer who could not understand why nothing was coming out of $his nipples when he sucked on them,", type: "cash", effect: -1})>>
-	<</if>>
-	<<if $slaves[$i].nipples == "fuckable">>
-		<<set _vignettes.push({text: "$he lost a customer who refused $he could possibly be a proper cow with nipples like hers,", type: "cash", effect: -1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSPhysicalIdealist != "unset">>
-	<<if ($slaves[$i].muscles <= 95)>>
-	<<set _vignettes.push({text: "$he lost a customer who could barely believe that $he wasn't capable of holding $himself in a handstand,", type: "cash", effect: -1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSChattelReligionist != "unset">>
-	<<if ($slaves[$i].behavioralFlaw == "devout")>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who desperately wants his cock to be the one that converts $him,", type: "cash", effect: 1})>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSRomanRevivalist != "unset">>
-	<<if ($slaves[$i].race == "white")>>
-	<<if ($slaves[$i].height >= 185)>>
-	<<set _vignettes.push({text: "$he attracted a customer who thought $his appearance worthy of a lusty northern barbarian,", type: "cash", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSAztecRevivalist != "unset">>
-	<<if ($slaves[$i].devotion > 75)>>
-	<<if ($slaves[$i].intelligence >= 2)>>
-	<<set _vignettes.push({text: "$he indulged a citizen by following a fertility ritual completely,", type: "rep", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSEgyptianRevivalist != "unset">>
-	<<set _vignettes.push({text: "$he got extra business from a group of citizens competing to get off with whores of each of the arcology's ethnic groups in the least time,", type: "cash", effect: 1})>>
-<</if>>
-<<if $arcologies[0].FSEdoRevivalist != "unset">>
-	<<if ($slaves[$i].face > 40)>>
-	<<if ($slaves[$i].intelligence > 1)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who wished to do nothing more than converse with a beautiful and intelligent girl,", type: "cash", effect: 1})>>
-	<</if>>
-	<</if>>
-<</if>>
-<<if $arcologies[0].FSArabianRevivalist != "unset">>
-	<<if ($slaves[$i].entertainSkill >= 100)>>
-	<<if canTalk($slaves[$i])>>
-	<<if ($slaves[$i].voice > 0)>>
-	<<if ($slaves[$i].accent < 2)>>
-	<<set _vignettes.push({text: "$he got repeat business from a customer who prefers prostitutes who can tell lovely stories,", type: "cash", effect: 1})>>
-	<</if>>
-	<</if>>
-	<</if>>
-	<</if>>
-<</if>>
-
-<<set _vignettes.push({text: "one of the companies with an office in your arcology retained $him for a team-building bukkake party for its employees,", type: "rep", effect: 1})>>
-<<set _vignettes.push({text: "a man dragged his crying wife along so $he could watch him fuck a whore,", type: "rep", effect: 0})>>
-<<set _vignettes.push({text: "a woman dragged her angry husband along so he could watch her get eaten out by a whore,", type: "rep", effect: 0})>>
-<<set _vignettes.push({text: "$he went to sleep after being sold for sex all day, and had a dream about you loving $him,", type: "devotion", effect: 1})>>
-<<set _vignettes.push({text: "$he went to sleep after being sold for sex all day, and had a dream about you letting a customer hurt $him,", type: "devotion", effect: -1})>>
-<<set _vignettes.push({text: "$he went to sleep after being sold for sex all day, and had a dream about you protecting $him from a mean customer,", type: "trust", effect: 1})>>
-<<set _vignettes.push({text: "$he went to sleep after being sold for sex all day, and had a dream about you selling $him for good,", type: "trust", effect: -1})>>
-
-<<set _vignette = _vignettes.random()>>
-__This week__ _vignette.text
-<<if (_vignette.type == "cash")>>
-	<<if (_vignette.effect > 0)>>
-		@@.yellowgreen;making you an extra <<print cashFormat(Math.trunc($FResult*_vignette.effect))>>.@@
-	<<elseif (_vignette.effect < 0)>>
-		@@.red;losing you <<print cashFormat(Math.abs(Math.trunc($FResult*_vignette.effect)))>>.@@
-	<<else>>
-		an incident without lasting effect.
-	<</if>>
-	<<set $cash += Math.trunc($FResult*_vignette.effect)>>
-	<<set _incomeStats.income += Math.trunc($FResult*_vignette.effect)>>
-<<elseif (_vignette.type == "devotion")>>
-	<<if (_vignette.effect > 0)>>
-		<<if $slaves[$i].devotion > 50>>
-		@@.hotpink;increasing $his devotion to you.@@
-		<<elseif $slaves[$i].devotion >= -20>>
-		@@.hotpink;increasing $his acceptance of you.@@
-		<<elseif $slaves[$i].devotion > -10>>
-		@@.hotpink;reducing $his dislike of you.@@
 		<<else>>
-		@@.hotpink;reducing $his hatred of you.@@
-		<</if>>
-	<<elseif (_vignette.effect < 0)>>
-		<<if $slaves[$i].devotion > 50>>
-		@@.mediumorchid;reducing $his devotion to you.@@
-		<<elseif $slaves[$i].devotion >= -20>>
-		@@.mediumorchid;reducing $his acceptance of you.@@
-		<<elseif $slaves[$i].devotion > -10>>
-		@@.mediumorchid;increasing $his dislike of you.@@
+			an incident without lasting effect.
+		<</if>>
+		<<set $slaves[$i].trust += 1*_vignette.effect>>
+	<<elseif (_vignette.type == "health")>>
+		<<if (_vignette.effect > 0)>>
+			@@.green;improving her health.@@
+		<<elseif (_vignette.effect < 0)>>
+			@@.red;affecting her health.@@
 		<<else>>
-		@@.mediumorchid;increasing $his hatred of you.@@
+			an incident without lasting effect.
 		<</if>>
+		<<set $slaves[$i].health += 2*_vignette.effect>>
 	<<else>>
-		an incident without lasting effect.
-	<</if>>
-	<<set $slaves[$i].devotion += 1*_vignette.effect>>
-<<elseif (_vignette.type == "trust")>>
-	<<if (_vignette.effect > 0)>>
-		<<if $slaves[$i].trust > 20>>
-		@@.mediumaquamarine;increasing $his trust in you.@@
-		<<elseif $slaves[$i].trust > -10>>
-		@@.mediumaquamarine;reducing $his fear of you.@@
+		<<if (_vignette.effect > 0)>>
+			@@.green;gaining you a bit of reputation.@@
+		<<elseif (_vignette.effect < 0)>>
+			@@.red;losing you a bit of reputation.@@
 		<<else>>
-		@@.mediumaquamarine;reducing $his terror of you.@@
+			an incident without lasting effect.
 		<</if>>
-	<<elseif (_vignette.effect < 0)>>
-		<<if $slaves[$i].trust > 20>>
-		@@.gold;reducing $his trust in you.@@
-		<<elseif $slaves[$i].trust > -20>>
-		@@.gold;increasing $his fear of you.@@
-		<<else>>
-		@@.gold;increasing $his terror of you.@@
-		<</if>>
-	<<else>>
-		an incident without lasting effect.
-	<</if>>
-	<<set $slaves[$i].trust += 1*_vignette.effect>>
-<<elseif (_vignette.type == "health")>>
-	<<if (_vignette.effect > 0)>>
-		@@.green;improving $his health.@@
-	<<elseif (_vignette.effect < 0)>>
-		@@.red;affecting $his health.@@
-	<<else>>
-		an incident without lasting effect.
+		<<set $rep += Math.trunc($FResult*_vignette.effect*0.1)>>
+		<<set _incomeStats.income += Math.trunc($FResult*_vignette.effect*0.1)>>
 	<</if>>
-	<<set $slaves[$i].health += 2*_vignette.effect>>
-<<else>>
-	<<if (_vignette.effect > 0)>>
-		@@.green;gaining you a bit of reputation.@@
-	<<elseif (_vignette.effect < 0)>>
-		@@.red;losing you a bit of reputation.@@
-	<<else>>
-		an incident without lasting effect.
-	<</if>>
-	<<set $rep += Math.trunc($FResult*_vignette.effect*0.1)>>
-	<<set _incomeStats.rep += Math.trunc($FResult*_vignette.effect*0.1)>>
 <</if>>
 
-<</if>> /* CLOSES VIGNETTES */
-
 <<if $slaves[$i].energy > 40 && $slaves[$i].energy < 95>>
 	Being used sexually all week @@.lime;increases $his sex drive.@@
 	<<set $slaves[$i].energy++>>
-- 
GitLab


From 96df2b1a27811c175ec488fc54850d5156da4ea9 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sun, 29 Jul 2018 19:55:51 -0400
Subject: [PATCH 159/189] Readded lost additions

---
 src/uncategorized/saServeThePublic.tw | 36 ++++++++++-----------
 src/uncategorized/saWhore.tw          | 45 ++++++++++++++-------------
 2 files changed, 41 insertions(+), 40 deletions(-)

diff --git a/src/uncategorized/saServeThePublic.tw b/src/uncategorized/saServeThePublic.tw
index 68df806cc73..077f600863e 100644
--- a/src/uncategorized/saServeThePublic.tw
+++ b/src/uncategorized/saServeThePublic.tw
@@ -270,7 +270,7 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 <<elseif ($slaves[$i].vagina < 0)>>
-	<<SlaveTitle $slaves[$i]>>
+	<<set $desc = SlaveTitle($slaves[$i])>>
 	<<if (($slaves[$i].analSkill + $slaves[$i].oralSkill) >= 200)>>
 	$He's such an expert public servant that $he copes with the stress of being a $desc slut.
 	<<elseif random(1,100) > 40+(10*($slaves[$i].analSkill + $slaves[$i].oralSkill))>>
@@ -533,7 +533,7 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 		<<elseif $slaves[$j].relationship > 4>>
 			slave wife
 		<</if>>
-		$slaves[$j].slaveName is also serving the public and they work well toget$him.
+		$slaves[$j].slaveName is also serving the public and they work well together.
 	<</if>>
 <<elseif $slaves[$i].relationship == -1>>
 	$He relies on citizens' desire to fuck $him for emotional support, making $him an excellent, if occasionally disturbing, slut.
@@ -1206,23 +1206,23 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 	<<elseif (_vignette.type == "devotion")>>
 		<<if (_vignette.effect > 0)>>
 			<<if $slaves[$i].devotion > 50>>
-			@@.hotpink;increasing her devotion to you.@@
+		@@.hotpink;increasing $his devotion to you.@@
 			<<elseif $slaves[$i].devotion >= -20>>
-			@@.hotpink;increasing her acceptance of you.@@
+		@@.hotpink;increasing $his acceptance of you.@@
 			<<elseif $slaves[$i].devotion >= -50>>
-			@@.hotpink;reducing her dislike of you.@@
+		@@.hotpink;reducing $his dislike of you.@@
 			<<else>>
-			@@.hotpink;reducing her hatred of you.@@
+		@@.hotpink;reducing $his hatred of you.@@
 			<</if>>
 		<<elseif (_vignette.effect < 0)>>
 			<<if $slaves[$i].devotion > 50>>
-			@@.mediumorchid;reducing her devotion to you.@@
+		@@.mediumorchid;reducing $his devotion to you.@@
 			<<elseif $slaves[$i].devotion >= -20>>
-			@@.mediumorchid;reducing her acceptance of you.@@
+		@@.mediumorchid;reducing $his acceptance of you.@@
 			<<elseif $slaves[$i].devotion >= -50>>
-			@@.mediumorchid;increasing her dislike of you.@@
+		@@.mediumorchid;increasing $his dislike of you.@@
 			<<else>>
-			@@.mediumorchid;increasing her hatred of you.@@
+		@@.mediumorchid;increasing $his hatred of you.@@
 			<</if>>
 		<<else>>
 			an incident without lasting effect.
@@ -1231,19 +1231,19 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 	<<elseif (_vignette.type == "trust")>>
 		<<if (_vignette.effect > 0)>>
 			<<if $slaves[$i].trust > 20>>
-			@@.mediumaquamarine;increasing her trust in you.@@
+		@@.mediumaquamarine;increasing $his trust in you.@@
 			<<elseif $slaves[$i].trust >= -50>>
-			@@.mediumaquamarine;reducing her fear of you.@@
+		@@.mediumaquamarine;reducing $his fear of you.@@
 			<<else>>
-			@@.mediumaquamarine;reducing her terror of you.@@
+		@@.mediumaquamarine;reducing $his terror of you.@@
 			<</if>>
 		<<elseif (_vignette.effect < 0)>>
 			<<if $slaves[$i].trust > 20>>
-			@@.gold;reducing her trust in you.@@
+		@@.gold;reducing $his trust in you.@@
 			<<elseif $slaves[$i].trust > -20>>
-			@@.gold;increasing her fear of you.@@
+		@@.gold;increasing $his fear of you.@@
 			<<else>>
-			@@.gold;increasing her terror of you.@@
+		@@.gold;increasing $his terror of you.@@
 			<</if>>
 		<<else>>
 			an incident without lasting effect.
@@ -1251,9 +1251,9 @@ $His appearance attracted $beauty members of the public (<<print Math.trunc($bea
 		<<set $slaves[$i].trust += 1*_vignette.effect>>
 	<<elseif (_vignette.type == "health")>>
 		<<if (_vignette.effect > 0)>>
-			@@.green;improving her health.@@
+		@@.green;improving $his health.@@
 		<<elseif (_vignette.effect < 0)>>
-			@@.red;affecting her health.@@
+		@@.red;affecting $his health.@@
 		<<else>>
 			an incident without lasting effect.
 		<</if>>
diff --git a/src/uncategorized/saWhore.tw b/src/uncategorized/saWhore.tw
index c4f5cd8b32d..927a52e273a 100644
--- a/src/uncategorized/saWhore.tw
+++ b/src/uncategorized/saWhore.tw
@@ -254,7 +254,7 @@ $His appearance attracted $beauty customers (<<print Math.trunc($beauty/7)>> a d
 	<<set $slaves[$i].health -= 7>>
 	<<set $injury = 1>>
 <<elseif ($slaves[$i].vagina < 0)>>
-	<<SlaveTitle $slaves[$i]>>
+	<<set $desc = SlaveTitle($slaves[$i])>>
 	<<if (($slaves[$i].analSkill + $slaves[$i].oralSkill) >= 200)>>
 	$He's such an expert whore that $he copes with the stress of being a $desc prostitute.
 	<<elseif random(1,100) > 40+(10*($slaves[$i].analSkill + $slaves[$i].oralSkill))>>
@@ -1200,27 +1200,27 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 			an incident without lasting effect.
 		<</if>>
 		<<set $cash += Math.trunc($FResult*_vignette.effect)>>
-		<<set _incomeStats.rep += Math.trunc($FResult*_vignette.effect)>>
+	<<set _incomeStats.income += Math.trunc($FResult*_vignette.effect)>>
 	<<elseif (_vignette.type == "devotion")>>
 		<<if (_vignette.effect > 0)>>
 			<<if $slaves[$i].devotion > 50>>
-			@@.hotpink;increasing her devotion to you.@@
+		@@.hotpink;increasing $his devotion to you.@@
 			<<elseif $slaves[$i].devotion >= -20>>
-			@@.hotpink;increasing her acceptance of you.@@
-			<<elseif $slaves[$i].devotion >= -50>>
-			@@.hotpink;reducing her dislike of you.@@
+		@@.hotpink;increasing $his acceptance of you.@@
+		<<elseif $slaves[$i].devotion > -10>>
+		@@.hotpink;reducing $his dislike of you.@@
 			<<else>>
-			@@.hotpink;reducing her hatred of you.@@
+		@@.hotpink;reducing $his hatred of you.@@
 			<</if>>
 		<<elseif (_vignette.effect < 0)>>
 			<<if $slaves[$i].devotion > 50>>
-			@@.mediumorchid;reducing her devotion to you.@@
+		@@.mediumorchid;reducing $his devotion to you.@@
 			<<elseif $slaves[$i].devotion >= -20>>
-			@@.mediumorchid;reducing her acceptance of you.@@
-			<<elseif $slaves[$i].devotion >= -50>>
-			@@.mediumorchid;increasing her dislike of you.@@
+		@@.mediumorchid;reducing $his acceptance of you.@@
+		<<elseif $slaves[$i].devotion > -10>>
+		@@.mediumorchid;increasing $his dislike of you.@@
 			<<else>>
-			@@.mediumorchid;increasing her hatred of you.@@
+		@@.mediumorchid;increasing $his hatred of you.@@
 			<</if>>
 		<<else>>
 			an incident without lasting effect.
@@ -1229,19 +1229,19 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 	<<elseif (_vignette.type == "trust")>>
 		<<if (_vignette.effect > 0)>>
 			<<if $slaves[$i].trust > 20>>
-			@@.mediumaquamarine;increasing her trust in you.@@
-			<<elseif $slaves[$i].trust >= -50>>
-			@@.mediumaquamarine;reducing her fear of you.@@
+		@@.mediumaquamarine;increasing $his trust in you.@@
+		<<elseif $slaves[$i].trust > -10>>
+		@@.mediumaquamarine;reducing $his fear of you.@@
 			<<else>>
-			@@.mediumaquamarine;reducing her terror of you.@@
+		@@.mediumaquamarine;reducing $his terror of you.@@
 			<</if>>
 		<<elseif (_vignette.effect < 0)>>
 			<<if $slaves[$i].trust > 20>>
-			@@.gold;reducing her trust in you.@@
+		@@.gold;reducing $his trust in you.@@
 			<<elseif $slaves[$i].trust > -20>>
-			@@.gold;increasing her fear of you.@@
+		@@.gold;increasing $his fear of you.@@
 			<<else>>
-			@@.gold;increasing her terror of you.@@
+		@@.gold;increasing $his terror of you.@@
 			<</if>>
 		<<else>>
 			an incident without lasting effect.
@@ -1249,9 +1249,9 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 		<<set $slaves[$i].trust += 1*_vignette.effect>>
 	<<elseif (_vignette.type == "health")>>
 		<<if (_vignette.effect > 0)>>
-			@@.green;improving her health.@@
+		@@.green;improving $his health.@@
 		<<elseif (_vignette.effect < 0)>>
-			@@.red;affecting her health.@@
+		@@.red;affecting $his health.@@
 		<<else>>
 			an incident without lasting effect.
 		<</if>>
@@ -1265,8 +1265,9 @@ In total, you were paid @@.yellowgreen;<<print cashFormat(Math.trunc($beauty*$FR
 			an incident without lasting effect.
 		<</if>>
 		<<set $rep += Math.trunc($FResult*_vignette.effect*0.1)>>
-		<<set _incomeStats.income += Math.trunc($FResult*_vignette.effect*0.1)>>
+	<<set _incomeStats.rep += Math.trunc($FResult*_vignette.effect*0.1)>>
 	<</if>>
+
 <</if>>
 
 <<if $slaves[$i].energy > 40 && $slaves[$i].energy < 95>>
-- 
GitLab


From 8dcd6674281888133b60c059e619682738263e5a Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sun, 29 Jul 2018 20:10:49 -0400
Subject: [PATCH 160/189] JSify CheckForGingering, RemoveGingering, and
 RandomizeAttraction

---
 devNotes/twine JS.txt                    | 173 +++++++++++++++++++++++
 src/js/slaveGenerationJS.tw              | 173 +++++++++++++++++++++++
 src/uncategorized/bulkSlaveGenerate.tw   |   2 +-
 src/uncategorized/bulkSlaveIntro.tw      |   2 +-
 src/uncategorized/generateXXSlave.tw     |   2 +-
 src/uncategorized/generateXYSlave.tw     |   2 +-
 src/uncategorized/lawCompliance.tw       |   2 +-
 src/uncategorized/newSlaveIntro.tw       |   2 +-
 src/uncategorized/reRelativeRecruiter.tw |   4 +-
 src/utility/slaveCreationWidgets.tw      | 150 --------------------
 10 files changed, 354 insertions(+), 158 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 616717cbfb9..5ecfe65a175 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -24386,3 +24386,176 @@ window.nationalityToAccent = function nationalityToAccent(slave) {
 		slave.accent = jsEither([0, 0, 0, 1]);
 	}
 };
+
+/*
+Backup and then apply gingering modifiers to $activeSlave - no changes should be made to $activeSlave until after calling removeGingering() to restore the backup
+Called from lawCompliance
+*/
+window.checkForGingering = function checkForGingering() {
+	const V = State.variables;
+	let r = "";
+	const pronouns = getPronouns(V.activeSlave);
+	const he = pronouns.pronoun;
+	const him = pronouns.object;
+	const his = pronouns.possessive;
+	const He = capFirstChar(he);
+	const His = capFirstChar(his);
+
+	/* reset in case gingered slaves were viewed but not purchased (no newSlaveIntro) */
+	V.gingering = 0, V.gingeringDetected = 0, V.gingeringDetection = 0, V.toSearch = V.activeSlave.origin;
+	if (V.applyLaw === 1 && V.HonestySMR === 1) {
+		/* SMR prohibits gingering and is enforced for this slave - do nothing */
+	} else if (V.activeSlave.indenture > 0) {
+		/* indentured servants cannot be gingered */
+	} else if (V.toSearch !== 0 && V.toSearch.indexOf("Shelter") !== -1) {
+		/* is a Shelter slave - do nothing */
+	} else {
+		V.beforeGingering = clone(V.activeSlave);
+		if (V.activeSlave.trust < -20 && jsRandom(1, 3) === 1) {
+			V.gingering = "antidepressant";
+			V.activeSlave.trust += jsRandom(10, 40);
+		} else if (V.activeSlave.devotion < -20 && jsRandom(1, 3) === 1) {
+			V.gingering = "depressant";
+			V.activeSlave.devotion += jsRandom(10, 40);
+		} else if (V.activeSlave.health < 60 && jsRandom(1, 3) === 1) {
+			V.gingering = "stimulant";
+			V.activeSlave.health += jsRandom(20, 40);
+		} else if (V.activeSlave.balls > 0 && V.activeSlave.dick > 2 && jsRandom(1, 3) === 1) {
+			V.gingering = "vasoconstrictor";
+			V.activeSlave.dick -= jsRandom(1, 2);
+		} else if (V.activeSlave.balls > 0 && V.activeSlave.dick < 5 && jsRandom(1, 3) === 1) {
+			V.gingering = "vasodilator";
+			V.activeSlave.dick += jsRandom(1, 2);
+		} else if (V.activeSlave.attrKnown === 0 && jsRandom(1, 3) === 1) {
+			V.gingering = "aphrodisiac";
+			V.activeSlave.aphrodisiacs = 2;
+			V.activeSlave.attrKnown = 1;
+			V.activeSlave.attrXX = jsRandom(60, 90);
+			V.activeSlave.attrXY = jsRandom(60, 90);
+			V.activeSlave.energy = jsRandom(50, 90);
+		} else if (V.activeSlave.anus > 0 && V.activeSlave.fetishKnown === 0 && jsRandom(1, 3) === 1) {
+			V.gingering = "ginger";
+			V.activeSlave.fetish = "buttslut";
+			V.activeSlave.fetishKnown = 1;
+			V.activeSlave.fetishStrength = 65;
+		}
+	}
+	if (V.gingering !== 0) {
+		if (V.PC.slaving >= 100) {
+			V.gingeringDetected = 1, V.gingeringDetection = "slaver";
+			switch (V.gingering) {
+				case "antidepressant":
+					r += `${He} is acting dazed and unfocused. ${He}'s obviously been given antidepressants to make ${him} appear less fearful, and will be considerably less trusting than ${he} seems.`;
+					break;
+				case "depressant":
+					r += `${He} is acting languid and drugged. ${He}'s obviously been given a depressant to make ${him} appear less hateful, and will be considerably less accepting of slavery than ${he} seems.`;
+					break;
+				case "stimulant":
+					r += `${He} is acting twitchy and hyperactive. ${He}'s obviously been given a stimulant to make ${him} seem healthier and more energetic, and is a lot less healthy than ${he} looks.`;
+					break;
+				case "vasoconstrictor":
+					r += `${His} lips have the slightest blue tinge, making it obvious ${he}'s been given a vasoconstrictor. ${His} cock is a lot less of a girldick than it looks right now.`;
+					break;
+				case "vasodilator":
+					r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as	if ${he} doesn't know what to do with it. ${He}'s obviously been given a vasodilator to make ${his} dick seem a little less pathetic.`;
+					break;
+				case "aphrodisiac":
+					r += `${His} pupils are slightly dilated, ${his} breath comes in fast pants, and ${his} skin is flushed. ${He}'s obviously been given as big of a dose of aphrodisiacs as ${he} can handle without a heart attack.`;
+					break;
+				default:
+					r += `${He} is acting oddly, presenting ${his} ass in an awkward way and acting uncomfortable. ${He}'s obviously had an irritant shoved up ${his} butt to make ${him} act like an anal whore.`;
+			}
+			r += ` It's a trick you're very familiar with, given your <span class="springgreen">training as a slaver.</span>`;
+		} else {
+			/* not slaver */
+			if (V.PC.warfare >= 100 && jsRandom(1, 2) === 1) {
+				V.gingeringDetected = 1, V.gingeringDetection = "mercenary";
+			} else if (V.PC.rumor === "force" && jsRandom(1, 2) === 1) {
+				V.gingeringDetected = 1, V.gingeringDetection = "force";
+			} else if (jsRandom(1, 3) === 1) {
+				V.gingeringDetected = 1;
+			}
+			if (V.gingeringDetected === 1) {
+				switch (V.gingering) {
+					case "antidepressant":
+						r += `${He} is acting dazed and unfocused, like she's been given antidepressants to make ${him} appear less fearful. She may be considerably less trusting than ${he} seems. `;
+						break;
+					case "depressant":
+						r += `${He} is acting languid and drugged, like she's been given a depressant to make ${him} appear less hateful. She may be considerably less accepting of slavery than ${he} seems. `;
+						break;
+					case "stimulant":
+						r += `${He} is acting twitchy and hyperactive, like she's been given a stimulant to make ${him} seem healthier and more energetic. She may be considerably less vital than ${he} seems. `;
+						break;
+					case "vasoconstrictor":
+						r += `${His} lips have the slightest blue tinge, suggesting that ${he} may have been given a vasoconstrictor. If ${he} has, ${his} cock may be considerably less feminine and demure than it now seems. `;
+						break;
+					case "vasodilator":
+						r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as if ${he} doesn't know what to do with it. She may have been given a vasodilator. If ${he} has, ${his} cock may be considerably less impressive than it now seems. `;
+						break;
+					case "aphrodisiac":
+						r += `${His} pupils are slightly dilated, ${his} breath comes in fast pants, and ${his} skin is flushed. These are the characteristic symptoms of a dose of aphrodisiacs limited only by a desire to avoid giving ${him} a heart attack. `;
+						break;
+					default:
+						r += `${He} is acting oddly, presenting ${his} ass in an awkward way and acting uncomfortable. ${He} may be considerably less interested in anal sex than ${he} seems. `;
+				}
+				if (V.gingeringDetection === "mercenary") {
+					r += `The nervous seller confirms this in response to a direct inquiry. Your intimidating reputation from your <span class="springgreen">extensive combat training</span> has its uses.`;
+				} else if (V.gingeringDetection === "force") {
+					r += `The nervous seller confirms this in response to a direct inquiry. Your reputation as a <span class="springgreen"> ${V.PCTitle ? "man" : "woman"} of blood</span> has its uses.`;
+				}
+			}
+		} /* gingering detected */
+	} /* gingering !== 0 */
+	return r;
+};
+
+/*
+Retrieve original $activeSlave without gingering modifiers
+Call as removeGingering()
+Called from newSlaveIntro, bulkSlaveGenerate
+*/
+window.removeGingering = function removeGingering() {
+	const V = State.variables;
+	if (V.gingering !== 0 && V.beforeGingering !== 0 && V.activeSlave !== 0 && V.beforeGingering.ID === V.activeSlave.ID) {
+		/* extra checks to ensure gingering state is not left over from a different slave that was inspected but not purchased */
+		V.activeSlave = V.beforeGingering, V.beforeGingering = 0;
+	} else {
+		/* clear left over state from a different slave without modifying activeSlave */
+		V.gingering = 0, V.beforeGingering = 0;
+	}
+};
+
+window.randomizeAttraction = function randomizeAttraction(slave) {
+	const sexuality = jsRandom(0, 100);
+	let attraction = Math.clamp(slave.energy * 2, 60, 180);
+
+	if (slave.balls > 0) {
+		if (sexuality > 90) {
+			slave.attrXY = Math.clamp(attraction, 0, 100);
+			attraction -= slave.attrXY;
+			slave.attrXX = Math.clamp(attraction, 0, 100);
+		} else if (sexuality > 70) {
+			slave.attrXY = Math.clamp(attraction + jsRandom(-5, 5), 0, 100);
+			slave.attrXX = Math.clamp(attraction + jsRandom(-5, 5), 0, 100);
+		} else {
+			slave.attrXX = Math.clamp(attraction, 0, 100);
+			attraction -= slave.attrXX;
+			slave.attrXY = Math.clamp(attraction, 0, 100);
+		}
+	} else {
+		if (sexuality > 90) {
+			slave.attrXX = Math.clamp(attraction, 0, 100);
+			attraction -= slave.attrXX;
+			slave.attrXY = Math.clamp(attraction, 0, 100);
+		} else if (sexuality > 60) {
+			slave.attrXY = Math.clamp(attraction + jsRandom(-5, 5), 0, 100);
+			slave.attrXX = Math.clamp(attraction + jsRandom(-5, 5), 0, 100);
+		} else {
+			slave.attrXY = Math.clamp(attraction, 0, 100);
+			attraction -= slave.attrXY;
+			slave.attrXX = Math.clamp(attraction, 0, 100);
+		}
+	}
+	slave.attrXX = Math.clamp(slave.attrXX + jsRandom(-5, 5), 0, 100);
+	slave.attrXY = Math.clamp(slave.attrXY + jsRandom(-5, 5), 0, 100);
+};
diff --git a/src/js/slaveGenerationJS.tw b/src/js/slaveGenerationJS.tw
index e672c692d16..f31d081533c 100644
--- a/src/js/slaveGenerationJS.tw
+++ b/src/js/slaveGenerationJS.tw
@@ -1089,3 +1089,176 @@ window.nationalityToAccent = function nationalityToAccent(slave) {
 		slave.accent = jsEither([0, 0, 0, 1]);
 	}
 };
+
+/*
+Backup and then apply gingering modifiers to $activeSlave - no changes should be made to $activeSlave until after calling removeGingering() to restore the backup
+Called from lawCompliance
+*/
+window.checkForGingering = function checkForGingering() {
+	const V = State.variables;
+	let r = "";
+	const pronouns = getPronouns(V.activeSlave);
+	const he = pronouns.pronoun;
+	const him = pronouns.object;
+	const his = pronouns.possessive;
+	const He = capFirstChar(he);
+	const His = capFirstChar(his);
+
+	/* reset in case gingered slaves were viewed but not purchased (no newSlaveIntro) */
+	V.gingering = 0, V.gingeringDetected = 0, V.gingeringDetection = 0, V.toSearch = V.activeSlave.origin;
+	if (V.applyLaw === 1 && V.HonestySMR === 1) {
+		/* SMR prohibits gingering and is enforced for this slave - do nothing */
+	} else if (V.activeSlave.indenture > 0) {
+		/* indentured servants cannot be gingered */
+	} else if (V.toSearch !== 0 && V.toSearch.indexOf("Shelter") !== -1) {
+		/* is a Shelter slave - do nothing */
+	} else {
+		V.beforeGingering = clone(V.activeSlave);
+		if (V.activeSlave.trust < -20 && jsRandom(1, 3) === 1) {
+			V.gingering = "antidepressant";
+			V.activeSlave.trust += jsRandom(10, 40);
+		} else if (V.activeSlave.devotion < -20 && jsRandom(1, 3) === 1) {
+			V.gingering = "depressant";
+			V.activeSlave.devotion += jsRandom(10, 40);
+		} else if (V.activeSlave.health < 60 && jsRandom(1, 3) === 1) {
+			V.gingering = "stimulant";
+			V.activeSlave.health += jsRandom(20, 40);
+		} else if (V.activeSlave.balls > 0 && V.activeSlave.dick > 2 && jsRandom(1, 3) === 1) {
+			V.gingering = "vasoconstrictor";
+			V.activeSlave.dick -= jsRandom(1, 2);
+		} else if (V.activeSlave.balls > 0 && V.activeSlave.dick < 5 && jsRandom(1, 3) === 1) {
+			V.gingering = "vasodilator";
+			V.activeSlave.dick += jsRandom(1, 2);
+		} else if (V.activeSlave.attrKnown === 0 && jsRandom(1, 3) === 1) {
+			V.gingering = "aphrodisiac";
+			V.activeSlave.aphrodisiacs = 2;
+			V.activeSlave.attrKnown = 1;
+			V.activeSlave.attrXX = jsRandom(60, 90);
+			V.activeSlave.attrXY = jsRandom(60, 90);
+			V.activeSlave.energy = jsRandom(50, 90);
+		} else if (V.activeSlave.anus > 0 && V.activeSlave.fetishKnown === 0 && jsRandom(1, 3) === 1) {
+			V.gingering = "ginger";
+			V.activeSlave.fetish = "buttslut";
+			V.activeSlave.fetishKnown = 1;
+			V.activeSlave.fetishStrength = 65;
+		}
+	}
+	if (V.gingering !== 0) {
+		if (V.PC.slaving >= 100) {
+			V.gingeringDetected = 1, V.gingeringDetection = "slaver";
+			switch (V.gingering) {
+				case "antidepressant":
+					r += `${He} is acting dazed and unfocused. ${He}'s obviously been given antidepressants to make ${him} appear less fearful, and will be considerably less trusting than ${he} seems.`;
+					break;
+				case "depressant":
+					r += `${He} is acting languid and drugged. ${He}'s obviously been given a depressant to make ${him} appear less hateful, and will be considerably less accepting of slavery than ${he} seems.`;
+					break;
+				case "stimulant":
+					r += `${He} is acting twitchy and hyperactive. ${He}'s obviously been given a stimulant to make ${him} seem healthier and more energetic, and is a lot less healthy than ${he} looks.`;
+					break;
+				case "vasoconstrictor":
+					r += `${His} lips have the slightest blue tinge, making it obvious ${he}'s been given a vasoconstrictor. ${His} cock is a lot less of a girldick than it looks right now.`;
+					break;
+				case "vasodilator":
+					r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as	if ${he} doesn't know what to do with it. ${He}'s obviously been given a vasodilator to make ${his} dick seem a little less pathetic.`;
+					break;
+				case "aphrodisiac":
+					r += `${His} pupils are slightly dilated, ${his} breath comes in fast pants, and ${his} skin is flushed. ${He}'s obviously been given as big of a dose of aphrodisiacs as ${he} can handle without a heart attack.`;
+					break;
+				default:
+					r += `${He} is acting oddly, presenting ${his} ass in an awkward way and acting uncomfortable. ${He}'s obviously had an irritant shoved up ${his} butt to make ${him} act like an anal whore.`;
+			}
+			r += ` It's a trick you're very familiar with, given your <span class="springgreen">training as a slaver.</span>`;
+		} else {
+			/* not slaver */
+			if (V.PC.warfare >= 100 && jsRandom(1, 2) === 1) {
+				V.gingeringDetected = 1, V.gingeringDetection = "mercenary";
+			} else if (V.PC.rumor === "force" && jsRandom(1, 2) === 1) {
+				V.gingeringDetected = 1, V.gingeringDetection = "force";
+			} else if (jsRandom(1, 3) === 1) {
+				V.gingeringDetected = 1;
+			}
+			if (V.gingeringDetected === 1) {
+				switch (V.gingering) {
+					case "antidepressant":
+						r += `${He} is acting dazed and unfocused, like she's been given antidepressants to make ${him} appear less fearful. She may be considerably less trusting than ${he} seems. `;
+						break;
+					case "depressant":
+						r += `${He} is acting languid and drugged, like she's been given a depressant to make ${him} appear less hateful. She may be considerably less accepting of slavery than ${he} seems. `;
+						break;
+					case "stimulant":
+						r += `${He} is acting twitchy and hyperactive, like she's been given a stimulant to make ${him} seem healthier and more energetic. She may be considerably less vital than ${he} seems. `;
+						break;
+					case "vasoconstrictor":
+						r += `${His} lips have the slightest blue tinge, suggesting that ${he} may have been given a vasoconstrictor. If ${he} has, ${his} cock may be considerably less feminine and demure than it now seems. `;
+						break;
+					case "vasodilator":
+						r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as if ${he} doesn't know what to do with it. She may have been given a vasodilator. If ${he} has, ${his} cock may be considerably less impressive than it now seems. `;
+						break;
+					case "aphrodisiac":
+						r += `${His} pupils are slightly dilated, ${his} breath comes in fast pants, and ${his} skin is flushed. These are the characteristic symptoms of a dose of aphrodisiacs limited only by a desire to avoid giving ${him} a heart attack. `;
+						break;
+					default:
+						r += `${He} is acting oddly, presenting ${his} ass in an awkward way and acting uncomfortable. ${He} may be considerably less interested in anal sex than ${he} seems. `;
+				}
+				if (V.gingeringDetection === "mercenary") {
+					r += `The nervous seller confirms this in response to a direct inquiry. Your intimidating reputation from your <span class="springgreen">extensive combat training</span> has its uses.`;
+				} else if (V.gingeringDetection === "force") {
+					r += `The nervous seller confirms this in response to a direct inquiry. Your reputation as a <span class="springgreen"> ${V.PCTitle ? "man" : "woman"} of blood</span> has its uses.`;
+				}
+			}
+		} /* gingering detected */
+	} /* gingering !== 0 */
+	return r;
+};
+
+/*
+Retrieve original $activeSlave without gingering modifiers
+Call as removeGingering()
+Called from newSlaveIntro, bulkSlaveGenerate
+*/
+window.removeGingering = function removeGingering() {
+	const V = State.variables;
+	if (V.gingering !== 0 && V.beforeGingering !== 0 && V.activeSlave !== 0 && V.beforeGingering.ID === V.activeSlave.ID) {
+		/* extra checks to ensure gingering state is not left over from a different slave that was inspected but not purchased */
+		V.activeSlave = V.beforeGingering, V.beforeGingering = 0;
+	} else {
+		/* clear left over state from a different slave without modifying activeSlave */
+		V.gingering = 0, V.beforeGingering = 0;
+	}
+};
+
+window.randomizeAttraction = function randomizeAttraction(slave) {
+	const sexuality = jsRandom(0, 100);
+	let attraction = Math.clamp(slave.energy * 2, 60, 180);
+
+	if (slave.balls > 0) {
+		if (sexuality > 90) {
+			slave.attrXY = Math.clamp(attraction, 0, 100);
+			attraction -= slave.attrXY;
+			slave.attrXX = Math.clamp(attraction, 0, 100);
+		} else if (sexuality > 70) {
+			slave.attrXY = Math.clamp(attraction + jsRandom(-5, 5), 0, 100);
+			slave.attrXX = Math.clamp(attraction + jsRandom(-5, 5), 0, 100);
+		} else {
+			slave.attrXX = Math.clamp(attraction, 0, 100);
+			attraction -= slave.attrXX;
+			slave.attrXY = Math.clamp(attraction, 0, 100);
+		}
+	} else {
+		if (sexuality > 90) {
+			slave.attrXX = Math.clamp(attraction, 0, 100);
+			attraction -= slave.attrXX;
+			slave.attrXY = Math.clamp(attraction, 0, 100);
+		} else if (sexuality > 60) {
+			slave.attrXY = Math.clamp(attraction + jsRandom(-5, 5), 0, 100);
+			slave.attrXX = Math.clamp(attraction + jsRandom(-5, 5), 0, 100);
+		} else {
+			slave.attrXY = Math.clamp(attraction, 0, 100);
+			attraction -= slave.attrXY;
+			slave.attrXX = Math.clamp(attraction, 0, 100);
+		}
+	}
+	slave.attrXX = Math.clamp(slave.attrXX + jsRandom(-5, 5), 0, 100);
+	slave.attrXY = Math.clamp(slave.attrXY + jsRandom(-5, 5), 0, 100);
+};
diff --git a/src/uncategorized/bulkSlaveGenerate.tw b/src/uncategorized/bulkSlaveGenerate.tw
index e2629b667a1..87c780b5812 100644
--- a/src/uncategorized/bulkSlaveGenerate.tw
+++ b/src/uncategorized/bulkSlaveGenerate.tw
@@ -97,7 +97,7 @@
 			<<include "Law Compliance">> /* includes CheckForGingering - slave stats may change, affecting price */
 		<</silently>>
 		<<slaveCost $activeSlave>>
-		<<RemoveGingering>> /* remove gingered state, if applied, so we can apply it again later */
+		<<run removeGingering()>> /* remove gingered state, if applied, so we can apply it again later */
 		<<set $activeSlave = _backup>> /* restore backup so we can apply Law Compliance again later */
 	<</if>>
 
diff --git a/src/uncategorized/bulkSlaveIntro.tw b/src/uncategorized/bulkSlaveIntro.tw
index be9ced8684e..01f6a046cdf 100644
--- a/src/uncategorized/bulkSlaveIntro.tw
+++ b/src/uncategorized/bulkSlaveIntro.tw
@@ -86,7 +86,7 @@
 	<br>
 	
 	/* Use existing New Slave Intro */
-	<<include "New Slave Intro">> /* calls <<RemoveGingering>> if needed */
+	<<include "New Slave Intro">> /* calls removeGingering() if needed */
 	
 	/* Override nextButton setting from New Slave Intro */
 	<<set $nextButton = "Continue">>
diff --git a/src/uncategorized/generateXXSlave.tw b/src/uncategorized/generateXXSlave.tw
index 18694ad202c..ed69f34fcca 100644
--- a/src/uncategorized/generateXXSlave.tw
+++ b/src/uncategorized/generateXXSlave.tw
@@ -70,7 +70,7 @@
 <<set $activeSlave.whoreSkill = random(0,15)>>
 
 <<set $activeSlave.energy = random(1,85)>>
-<<RandomizeAttraction>>
+<<run randomizeAttraction($activeSlave)>>
 <<set $activeSlave.fetishStrength = random(0,90)>>
 <<set $activeSlave.fetish = either("none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "submissive", "submissive", "cumslut", "humiliation", "humiliation", "buttslut", "boobs", "pregnancy", "dom", "sadist", "masochist")>>
 
diff --git a/src/uncategorized/generateXYSlave.tw b/src/uncategorized/generateXYSlave.tw
index 30a4c243eda..b92d6c2648a 100644
--- a/src/uncategorized/generateXYSlave.tw
+++ b/src/uncategorized/generateXYSlave.tw
@@ -69,7 +69,7 @@
 <<set $activeSlave.whoreSkill = random(0,15)>>
 
 <<set $activeSlave.energy = random(15,90)>>
-<<RandomizeAttraction>>
+<<<run randomizeAttraction($activeSlave)>>
 <<set $activeSlave.fetishStrength = random(0,90)>>
 <<set $activeSlave.fetish = either("none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "submissive", "cumslut", "humiliation", "buttslut", "buttslut", "boobs", "dom", "sadist", "masochist")>>
 
diff --git a/src/uncategorized/lawCompliance.tw b/src/uncategorized/lawCompliance.tw
index cae29ea3be1..2c7466883ae 100644
--- a/src/uncategorized/lawCompliance.tw
+++ b/src/uncategorized/lawCompliance.tw
@@ -480,5 +480,5 @@ a physical exam, and more.
 <</if>>
 <</if>>
 
-<<CheckForGingering>> /* may store a backup of $activeSlave and make temporary changes; call <<RemoveGingering>> to retrieve backup before making changes to $activeSlave */
+<<= checkForGingering()>> /* may store a backup of $activeSlave and make temporary changes; call removeGingering() to retrieve backup before making changes to $activeSlave */
 
diff --git a/src/uncategorized/newSlaveIntro.tw b/src/uncategorized/newSlaveIntro.tw
index aa2ea2775be..c41e2d01526 100644
--- a/src/uncategorized/newSlaveIntro.tw
+++ b/src/uncategorized/newSlaveIntro.tw
@@ -77,7 +77,7 @@ The legalities completed, ''__@@.pink;<<= SlaveFullName($activeSlave)>>@@__'' <<
 	<</if>>
 <</if>>
 
-<<RemoveGingering>> /* retrieve original $activeSlave without gingering effects */
+<<run removeGingering()>> /* retrieve original $activeSlave without gingering effects */
 
 <<set $activeSlave.oldDevotion = $activeSlave.devotion>>
 <<set $activeSlave.oldTrust = $activeSlave.trust>>
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index 538fdd00fea..c7a582d441a 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -120,7 +120,7 @@
 		<<set $activeSlave.bellySag = 0, $activeSlave.bellySagPreg = 0>>
 		<<set $activeSlave.birthsTotal = 0>>
 		<<set $activeSlave.prostate = 0>>
-		<<RandomizeAttraction>>
+		<<<run randomizeAttraction($activeSlave)>>
 		<<ResyncHeight $activeSlave>>
 	<</if>>
 	<<if $activeSlave.nipples == "fuckable">>
@@ -1030,7 +1030,7 @@ She waits anxiously for your decision.
 <<set $activeSlave.sexualFlaw = either("none", "none", "none", "none", "hates oral", "hates anal", "hates penetration")>>
 <<set $activeSlave.behavioralFlaw = either("none", "none", "none", "arrogant", "bitchy", "odd", "anorexic", "hates men", "hates women", "hates women")>>
 <<set $activeSlave.weekAcquired = $week>>
-<<RandomizeAttraction>>
+<<<run randomizeAttraction($activeSlave)>>
 <<if $activeSlave.nipples == "fuckable">>
 	<<set $activeSlave.nipples = either("cute", "puffy", "inverted", "partially inverted")>>
 <</if>>
diff --git a/src/utility/slaveCreationWidgets.tw b/src/utility/slaveCreationWidgets.tw
index a60994ab63e..9a545edbf52 100644
--- a/src/utility/slaveCreationWidgets.tw
+++ b/src/utility/slaveCreationWidgets.tw
@@ -9,119 +9,6 @@
 	<<set $activeSlave = {slaveName: "blank", slaveSurname: 0, birthName: "blank", birthSurname: 0, genes: "XX", pronoun: "she", possessive: "her", possessivePronoun: "hers", objectReflexive: "herself", object: "her", noun: "girl", weekAcquired: 0, origin: 0, career: 0, ID: 0, prestige: 0, pornFeed: 0, pornFame: 0, pornFameSpending: 0, pornPrestige: 0, pornPrestigeDesc: 0, pornFameType: "none", pornFocus: "none", pornTypeGeneral: 0, pornTypeFuckdoll: 0, pornTypeRape: 0, pornTypePreggo: 0, pornTypeBBW: 0, pornTypeGainer: 0, pornTypeStud: 0, pornTypeLoli: 0, pornTypeDeepThroat: 0, pornTypeStruggleFuck: 0, pornTypePainal: 0, pornTypeTease: 0, pornTypeRomantic: 0, pornTypePervert: 0, pornTypeCaring: 0, pornTypeUnflinching: 0, pornTypeSizeQueen: 0, pornTypeNeglectful: 0, pornTypeCumAddict: 0, pornTypeAnalAddict: 0, pornTypeAttentionWhore: 0, pornTypeBreastGrowth: 0, pornTypeAbusive: 0, pornTypeMalicious: 0, pornTypeSelfHating: 0, pornTypeBreeder: 0, pornTypeSub: 0, pornTypeCumSlut: 0, pornTypeAnal: 0, pornTypeHumiliation: 0, pornTypeBoobs: 0, pornTypeDom: 0, pornTypeSadist: 0, pornTypeMasochist: 0, pornTypePregnancy: 0, prestigeDesc: 0, recruiter: 0, relation: 0, relationTarget: 0, relationship: 0, relationshipTarget: 0, rivalry: 0, rivalryTarget: 0, subTarget: 0, father: 0, mother: 0, daughters: 0, sisters: 0, canRecruit: 0, choosesOwnAssignment: 0, assignment: "rest", assignmentVisible: 1, sentence: 0, training: 0, toyHole: "all her holes", indenture: -1, indentureRestrictions: 0, birthWeek: random(0,51), actualAge: 18, visualAge: 18, physicalAge: 18, ovaryAge: 18, ageImplant: 0, health: 0, minorInjury: 0, trust: 0, oldTrust: 0, devotion: 0, oldDevotion: 0, weight: 0, muscles: 0, height: 170, heightImplant: 0, nationality: "slave", race: "white", markings: "none", eyes: 1, eyeColor: "brown", origEye: "brown", eyewear: "none", origHColor: "brown", hColor: "brown", pubicHColor: "brown", skin: "light", hLength: 60, hStyle: "short", pubicHStyle: "neat", waist: 0, corsetPiercing: 0, PLimb: 0, amp: 0, heels:0, voice: 2, voiceImplant: 0, accent: 0, shoulders: 0, shouldersImplant: 0, boobs: 0, boobsImplant: 0, boobsImplantType: 0, boobShape: "normal", nipples: "cute",  nipplesPiercing: 0, nipplesAccessory: 0, areolae: 0, areolaePiercing: 0, boobsTat: 0, lactation: 0, lactationAdaptation: 0, milk: 0, cum: 0, hips: 0, hipsImplant: 0, butt: 0, buttImplant: 0, buttImplantType: 0, buttTat: 0, face: 0, faceImplant: 0, faceShape: "normal", lips: 15, lipsImplant: 0, lipsPiercing: 0, lipsTat: 0, teeth: "normal", tonguePiercing: 0, vagina: 0, vaginaLube: 0, vaginaPiercing: 0, vaginaTat: 0, preg: -1, pregSource: 0, pregType: 0, pregAdaptation: 50, broodmother: 0, broodmotherFetuses: 0, broodmotherOnHold: 0, broodmotherCountDown: 0, labor: 0, births: 0, cSec: 0, bellyAccessory: "none", labia: 0, clit: 0, clitPiercing: 0, clitSetting: "vanilla", foreskin: 0, anus: 0, dick: 0, analArea: 1, dickPiercing: 0, dickTat: 0, prostate: 0, balls: 0, scrotum: 0, ovaries: 0, anusPiercing: 0, anusTat: 0, makeup: 0, nails: 0, brand: 0, brandLocation: 0, earPiercing: 0, nosePiercing: 0, eyebrowPiercing: 0, navelPiercing: 0, shouldersTat: 0, armsTat: 0, legsTat: 0, backTat: 0, stampTat: 0, vaginalSkill: 0, oralSkill: 0, analSkill: 0, whoreSkill: 0, entertainSkill: 0, combatSkill: 0, livingRules: "spare", speechRules: "restrictive", releaseRules: "restrictive", relationshipRules: "restrictive", standardPunishment: "situational", standardReward: "situational", useRulesAssistant: 1, diet: "healthy", dietCum: 0, dietMilk: 0, tired: 0, hormones: 0, drugs: "no drugs", curatives: 0, chem: 0, aphrodisiacs: 0, addict: 0, fuckdoll: 0, choosesOwnClothes: 0, clothes: "no clothing", collar: "none", shoes: "none", vaginalAccessory: "none", dickAccessory: "none", legAccessory: "none", buttplug: "none", buttplugAttachment: "none", intelligence: 0, intelligenceImplant: 0, energy: 50, need: 0, attrXX: 0, attrXY: 0, attrKnown: 0, fetish: "none", fetishStrength: 70, fetishKnown: 0, behavioralFlaw: "none", behavioralQuirk: "none", sexualFlaw: "none", sexualQuirk: "none", oralCount: 0, vaginalCount: 0, analCount: 0, mammaryCount: 0, penetrativeCount: 0, publicCount: 0, pitKills: 0, customTat: "", customLabel: "", customDesc: "", customTitle: "", customTitleLisp: "", rudeTitle: 0, customImage: 0, currentRules: [], bellyTat: 0, induce: 0, mpreg: 0, inflation: 0, inflationType: "none", inflationMethod: 0, milkSource: 0, cumSource: 0, burst: 0, pregKnown: 0, pregWeek: 0, belly: 0, bellyPreg: 0, bellyFluid: 0, bellyImplant: -1, bellySag: 0, bellySagPreg: 0, bellyPain: 0, cervixImplant: 0, birthsTotal: 0, pubertyAgeXX: 13, pubertyAgeXY: 13, scars: 0, breedingMark: 0, underArmHStyle: "waxed", bodySwap: 0, HGExclude: 0, ballType: "human", eggType: "human", reservedChildren: 0, choosesOwnChastity: 0, pregControl: "none", readyLimbs: [], ageAdjust: 0, bald: 0, origBodyOwner: "", origBodyOwnerID: 0, death: "", hormoneBalance: 0, onDiet: 0, breastMesh: 0, slavesFathered: 0, PCChildrenFathered: 0, slavesKnockedUp: 0, PCKnockedUp: 0, origSkin: "white", vasectomy: 0, haircuts: 0, newGamePlus: 0, skillHG: 0, skillRC: 0, skillBG: 0, skillMD: 0, skillDJ: 0, skillNU: 0, skillTE: 0, skillAT: 0, skillST: 0, skillMM: 0, skillWA: 0, skillS: 0, skillE: 0, skillW: 0, tankBaby: 0, inducedNCS: 0, NCSyouthening: 0}>>
 <</widget>>
 
-/%
-	Backup and then apply gingering modifiers to $activeSlave - no changes should be made to $activeSlave until after calling <<RemoveGingering>> to restore the backup
-	Call as <<CheckForGingering>>
-	Called from newSlaveIntro, lawCompliance
-%/
-<<widget "CheckForGingering">>
-	<<set $gingering = 0, $gingeringDetected = 0, $gingeringDetection = 0, $toSearch = $activeSlave.origin>> /* reset in case gingered slaves were viewed but not purchased (no newSlaveIntro) */
-	<<if ($applyLaw == 1) && ($HonestySMR == 1)>> /* SMR prohibits gingering and is enforced for this slave - do nothing */
-	<<elseif ($activeSlave.indenture > 0)>> /* indentured servants cannot be gingered */
-	<<elseif ($toSearch != 0) && ($toSearch.indexOf("Shelter") != -1)>> /* is a Shelter slave - do nothing */
-	<<else>>
-		<<set $beforeGingering = $activeSlave>>
-
-		<<if ($activeSlave.trust < -20) && (random(1,3) == 1)>>
-			<<set $gingering = "antidepressant">>
-			<<set $activeSlave.trust += random(10,40)>>
-		<<elseif ($activeSlave.devotion < -20) && (random(1,3) == 1)>>
-			<<set $gingering = "depressant">>
-			<<set $activeSlave.devotion += random(10,40)>>
-		<<elseif ($activeSlave.health < 60) && (random(1,3) == 1)>>
-			<<set $gingering = "stimulant">>
-			<<set $activeSlave.health += random(20,40)>>
-		<<elseif ($activeSlave.balls > 0) && ($activeSlave.dick > 2) && (random(1,3) == 1)>>
-			<<set $gingering = "vasoconstrictor">>
-			<<set $activeSlave.dick -= random(1,2)>>
-		<<elseif ($activeSlave.balls > 0) && ($activeSlave.dick < 5) && (random(1,3) == 1)>>
-			<<set $gingering = "vasodilator">>
-			<<set $activeSlave.dick += random(1,2)>>
-		<<elseif ($activeSlave.attrKnown == 0) && (random(1,3) == 1)>>
-			<<set $gingering = "aphrodisiac">>
-			<<set $activeSlave.aphrodisiacs = 2>>
-			<<set $activeSlave.attrKnown = 1>>
-			<<set $activeSlave.attrXX = random(60.90)>>
-			<<set $activeSlave.attrXY = random(60,90)>>
-			<<set $activeSlave.energy = random(50,90)>>
-		<<elseif ($activeSlave.anus > 0) && ($activeSlave.fetishKnown == 0) && (random(1,3) == 1)>>
-			<<set $gingering = "ginger">>
-			<<set $activeSlave.fetish = "buttslut">>
-			<<set $activeSlave.fetishKnown = 1>>
-			<<set $activeSlave.fetishStrength = 65>>
-		<</if>>
-	<</if>>
-
-	<<if ($gingering != 0)>>
-		<<if ($PC.slaving >= 100)>>
-			<<set $gingeringDetected = 1, $gingeringDetection = "slaver">>
-			<<switch $gingering>>
-			<<case "antidepressant">>
-				She is acting dazed and unfocused. She's obviously been given antidepressants to make her appear less fearful, and will be considerably less trusting than she seems.
-			<<case "depressant">>
-				She is acting languid and drugged. She's obviously been given a depressant to make her appear less hateful, and will be considerably less accepting of slavery than she seems.
-			<<case "stimulant">>
-				She is acting twitchy and hyperactive. She's obviously been given a stimulant to make her seem healthier and more energetic, and is a lot less healthy than she looks.
-			<<case "vasoconstrictor">>
-				Her lips have the slightest blue tinge, making it obvious she's been given a vasoconstrictor. Her cock is a lot less of a girldick than it looks right now.
-			<<case "vasodilator">>
-				She has an impressive erection, but it seems quite unconnected to the rest of her, as if she doesn't know what to do with it. She's obviously been given a vasodilator to make her dick seem a little less pathetic.
-			<<case "aphrodisiac">>
-				Her pupils are slightly dilated, her breath comes in fast pants, and her skin is flushed. She's obviously been given as big of a dose of aphrodisiacs as she can handle without a heart attack.
-			<<default>>
-				She is acting oddly, presenting her ass in an awkward way and acting uncomfortable. She's obviously had an irritant shoved up her butt to make her act like an anal whore.
-			<</switch>>
-			It's a trick you're very familiar with, given your @@.springgreen;training as a slaver.@@
-		<<else>> /* not slaver */
-			<<if ($PC.warfare >= 100) && (random(1,2) == 1)>>
-				<<set $gingeringDetected = 1, $gingeringDetection = "mercenary">>
-			<<elseif ($PC.rumor == "force") && (random(1,2) == 1)>>
-				<<set $gingeringDetected = 1, $gingeringDetection = "force">>
-			<<elseif (random(1,3) == 1)>>
-				<<set $gingeringDetected = 1>>
-			<</if>>
-			<<if ($gingeringDetected == 1)>>
-				<<switch $gingering>>
-				<<case "antidepressant">>
-					She is acting dazed and unfocused, like she's been given antidepressants to make her appear less fearful. She may be considerably less trusting than she seems.
-				<<case "depressant">>
-					She is acting languid and drugged, like she's been given a depressant to make her appear less hateful. She may be considerably less accepting of slavery than she seems.
-				<<case "stimulant">>
-					She is acting twitchy and hyperactive, like she's been given a stimulant to make her seem healthier and more energetic. She may be considerably less vital than she seems.
-				<<case "vasoconstrictor">>
-					Her lips have the slightest blue tinge, suggesting that she may have been given a vasoconstrictor. If she has, her cock may be considerably less feminine and demure than it now seems.
-				<<case "vasodilator">>
-					She has an impressive erection, but it seems quite unconnected to the rest of her, as if she doesn't know what to do with it. She may have been given a vasodilator. If she has, her cock may be considerably less impressive than it now seems.
-				<<case "aphrodisiac">>
-					Her pupils are slightly dilated, her breath comes in fast pants, and her skin is flushed. These are the characteristic symptoms of a dose of aphrodisiacs limited only by a desire to avoid giving her a heart attack.
-				<<default>>
-					She is acting oddly, presenting her ass in an awkward way and acting uncomfortable. She may be considerably less interested in anal sex than she seems.
-				<</switch>>
-				<<if ($gingeringDetection == "mercenary")>>
-					The nervous seller confirms this in response to a direct inquiry. Your intimidating reputation from your @@.springgreen;extensive combat training@@ has its uses.
-				<<elseif ($gingeringDetection == "force")>>
-					The nervous seller confirms this in response to a direct inquiry. Your reputation as a @@.springgreen;<<if ($PC.title == 1)>>man<<else>>woman<</if>> of blood@@ has its uses.
-				<</if>>
-			<</if>> /* gingering detected */
-		<</if>>
-	<</if>> /* gingering != 0 */
-
-<</widget>>
-
-/%
-	Retrieve original $activeSlave without gingering modifiers
-	Call as <<RemoveGingering>>
-	Called from newSlaveIntro, lawCompliance
-%/
-<<widget "RemoveGingering">>
-	<<if $gingering != 0 && $beforeGingering != 0 && $activeSlave != 0 && $beforeGingering.ID == $activeSlave.ID>> /* extra checks to ensure gingering state is not left over from a different slave that was inspected but not purchased */
-		<<set $activeSlave = $beforeGingering, $beforeGingering = 0>>
-	<<else>>
-		<<set $gingering = 0, $beforeGingering = 0>> /* clear left over state from a different slave without modifying activeSlave */
-	<</if>>
-<</widget>>
-
-
 /%
  Call as <<StartingGirlsWorkaround>>
 %/
@@ -1440,43 +1327,6 @@
 <</if>>
 <</widget>>
 
-/%
- Call as <<RandomizeAttraction>>
-%/
-<<widget "RandomizeAttraction">>
-
-<<set _attraction = Math.clamp($activeSlave.energy*2, 60, 180), _sexuality = random(0,100)>>
-<<if $activeSlave.balls > 0>>
-	<<if _sexuality > 90>>
-		<<set $activeSlave.attrXY = Math.clamp(_attraction, 0, 100)>>
-		<<set _attraction -= $activeSlave.attrXY>>
-		<<set $activeSlave.attrXX = Math.clamp(_attraction, 0, 100)>>
-	<<elseif _sexuality > 70>>
-		<<set $activeSlave.attrXY = Math.clamp(_attraction+random(-5,5), 0, 100)>>
-		<<set $activeSlave.attrXX = Math.clamp(_attraction+random(-5,5), 0, 100)>>
-	<<else>>
-		<<set $activeSlave.attrXX = Math.clamp(_attraction, 0, 100)>>
-		<<set _attraction -= $activeSlave.attrXX>>
-		<<set $activeSlave.attrXY = Math.clamp(_attraction, 0, 100)>>
-	<</if>>
-<<else>>
-	<<if _sexuality > 90>>
-		<<set $activeSlave.attrXX = Math.clamp(_attraction, 0, 100)>>
-		<<set _attraction -= $activeSlave.attrXX>>
-		<<set $activeSlave.attrXY = Math.clamp(_attraction, 0, 100)>>
-	<<elseif _sexuality > 60>>
-		<<set $activeSlave.attrXY = Math.clamp(_attraction+random(-5,5), 0, 100)>>
-		<<set $activeSlave.attrXX = Math.clamp(_attraction+random(-5,5), 0, 100)>>
-	<<else>>
-		<<set $activeSlave.attrXY = Math.clamp(_attraction, 0, 100)>>
-		<<set _attraction -= $activeSlave.attrXY>>
-		<<set $activeSlave.attrXX = Math.clamp(_attraction, 0, 100)>>
-	<</if>>
-<</if>>
-<<set $activeSlave.attrXX = Math.clamp($activeSlave.attrXX+random(-5,5), 0, 100), $activeSlave.attrXY = Math.clamp($activeSlave.attrXY+random(-5,5), 0, 100)>>
-
-<</widget>>
-
 /%
  Call as <<CustomSlaveAge>>
 %/
-- 
GitLab


From 316adfff7a35b6912ab3a626ff833e15dfee367f Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sun, 29 Jul 2018 20:43:00 -0400
Subject: [PATCH 161/189] Fixes

---
 devNotes/twine JS.txt                    | 10 +++++-----
 src/js/slaveGenerationJS.tw              | 10 +++++-----
 src/uncategorized/generateXYSlave.tw     |  2 +-
 src/uncategorized/reRelativeRecruiter.tw |  4 ++--
 4 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 5ecfe65a175..5866dd9358f 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -24457,7 +24457,7 @@ window.checkForGingering = function checkForGingering() {
 					r += `${His} lips have the slightest blue tinge, making it obvious ${he}'s been given a vasoconstrictor. ${His} cock is a lot less of a girldick than it looks right now.`;
 					break;
 				case "vasodilator":
-					r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as	if ${he} doesn't know what to do with it. ${He}'s obviously been given a vasodilator to make ${his} dick seem a little less pathetic.`;
+					r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as if ${he} doesn't know what to do with it. ${He}'s obviously been given a vasodilator to make ${his} dick seem a little less pathetic.`;
 					break;
 				case "aphrodisiac":
 					r += `${His} pupils are slightly dilated, ${his} breath comes in fast pants, and ${his} skin is flushed. ${He}'s obviously been given as big of a dose of aphrodisiacs as ${he} can handle without a heart attack.`;
@@ -24478,19 +24478,19 @@ window.checkForGingering = function checkForGingering() {
 			if (V.gingeringDetected === 1) {
 				switch (V.gingering) {
 					case "antidepressant":
-						r += `${He} is acting dazed and unfocused, like she's been given antidepressants to make ${him} appear less fearful. She may be considerably less trusting than ${he} seems. `;
+						r += `${He} is acting dazed and unfocused, like ${he}'s been given antidepressants to make ${him} appear less fearful. ${He} may be considerably less trusting than ${he} seems. `;
 						break;
 					case "depressant":
-						r += `${He} is acting languid and drugged, like she's been given a depressant to make ${him} appear less hateful. She may be considerably less accepting of slavery than ${he} seems. `;
+						r += `${He} is acting languid and drugged, like ${he}'s been given a depressant to make ${him} appear less hateful. ${He} may be considerably less accepting of slavery than ${he} seems. `;
 						break;
 					case "stimulant":
-						r += `${He} is acting twitchy and hyperactive, like she's been given a stimulant to make ${him} seem healthier and more energetic. She may be considerably less vital than ${he} seems. `;
+						r += `${He} is acting twitchy and hyperactive, like ${he}'s been given a stimulant to make ${him} seem healthier and more energetic. ${He} may be considerably less vital than ${he} seems. `;
 						break;
 					case "vasoconstrictor":
 						r += `${His} lips have the slightest blue tinge, suggesting that ${he} may have been given a vasoconstrictor. If ${he} has, ${his} cock may be considerably less feminine and demure than it now seems. `;
 						break;
 					case "vasodilator":
-						r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as if ${he} doesn't know what to do with it. She may have been given a vasodilator. If ${he} has, ${his} cock may be considerably less impressive than it now seems. `;
+						r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as if ${he} doesn't know what to do with it. ${He} may have been given a vasodilator. If ${he} has, ${his} cock may be considerably less impressive than it now seems. `;
 						break;
 					case "aphrodisiac":
 						r += `${His} pupils are slightly dilated, ${his} breath comes in fast pants, and ${his} skin is flushed. These are the characteristic symptoms of a dose of aphrodisiacs limited only by a desire to avoid giving ${him} a heart attack. `;
diff --git a/src/js/slaveGenerationJS.tw b/src/js/slaveGenerationJS.tw
index f31d081533c..db33dd23bb1 100644
--- a/src/js/slaveGenerationJS.tw
+++ b/src/js/slaveGenerationJS.tw
@@ -1160,7 +1160,7 @@ window.checkForGingering = function checkForGingering() {
 					r += `${His} lips have the slightest blue tinge, making it obvious ${he}'s been given a vasoconstrictor. ${His} cock is a lot less of a girldick than it looks right now.`;
 					break;
 				case "vasodilator":
-					r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as	if ${he} doesn't know what to do with it. ${He}'s obviously been given a vasodilator to make ${his} dick seem a little less pathetic.`;
+					r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as if ${he} doesn't know what to do with it. ${He}'s obviously been given a vasodilator to make ${his} dick seem a little less pathetic.`;
 					break;
 				case "aphrodisiac":
 					r += `${His} pupils are slightly dilated, ${his} breath comes in fast pants, and ${his} skin is flushed. ${He}'s obviously been given as big of a dose of aphrodisiacs as ${he} can handle without a heart attack.`;
@@ -1181,19 +1181,19 @@ window.checkForGingering = function checkForGingering() {
 			if (V.gingeringDetected === 1) {
 				switch (V.gingering) {
 					case "antidepressant":
-						r += `${He} is acting dazed and unfocused, like she's been given antidepressants to make ${him} appear less fearful. She may be considerably less trusting than ${he} seems. `;
+						r += `${He} is acting dazed and unfocused, like ${he}'s been given antidepressants to make ${him} appear less fearful. ${He} may be considerably less trusting than ${he} seems. `;
 						break;
 					case "depressant":
-						r += `${He} is acting languid and drugged, like she's been given a depressant to make ${him} appear less hateful. She may be considerably less accepting of slavery than ${he} seems. `;
+						r += `${He} is acting languid and drugged, like ${he}'s been given a depressant to make ${him} appear less hateful. ${He} may be considerably less accepting of slavery than ${he} seems. `;
 						break;
 					case "stimulant":
-						r += `${He} is acting twitchy and hyperactive, like she's been given a stimulant to make ${him} seem healthier and more energetic. She may be considerably less vital than ${he} seems. `;
+						r += `${He} is acting twitchy and hyperactive, like ${he}'s been given a stimulant to make ${him} seem healthier and more energetic. ${He} may be considerably less vital than ${he} seems. `;
 						break;
 					case "vasoconstrictor":
 						r += `${His} lips have the slightest blue tinge, suggesting that ${he} may have been given a vasoconstrictor. If ${he} has, ${his} cock may be considerably less feminine and demure than it now seems. `;
 						break;
 					case "vasodilator":
-						r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as if ${he} doesn't know what to do with it. She may have been given a vasodilator. If ${he} has, ${his} cock may be considerably less impressive than it now seems. `;
+						r += `${He} has an impressive erection, but it seems quite unconnected to the rest of ${him}, as if ${he} doesn't know what to do with it. ${He} may have been given a vasodilator. If ${he} has, ${his} cock may be considerably less impressive than it now seems. `;
 						break;
 					case "aphrodisiac":
 						r += `${His} pupils are slightly dilated, ${his} breath comes in fast pants, and ${his} skin is flushed. These are the characteristic symptoms of a dose of aphrodisiacs limited only by a desire to avoid giving ${him} a heart attack. `;
diff --git a/src/uncategorized/generateXYSlave.tw b/src/uncategorized/generateXYSlave.tw
index b92d6c2648a..257518dd1e6 100644
--- a/src/uncategorized/generateXYSlave.tw
+++ b/src/uncategorized/generateXYSlave.tw
@@ -69,7 +69,7 @@
 <<set $activeSlave.whoreSkill = random(0,15)>>
 
 <<set $activeSlave.energy = random(15,90)>>
-<<<run randomizeAttraction($activeSlave)>>
+<<run randomizeAttraction($activeSlave)>>
 <<set $activeSlave.fetishStrength = random(0,90)>>
 <<set $activeSlave.fetish = either("none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "submissive", "cumslut", "humiliation", "buttslut", "buttslut", "boobs", "dom", "sadist", "masochist")>>
 
diff --git a/src/uncategorized/reRelativeRecruiter.tw b/src/uncategorized/reRelativeRecruiter.tw
index c7a582d441a..b19d6ac12e8 100644
--- a/src/uncategorized/reRelativeRecruiter.tw
+++ b/src/uncategorized/reRelativeRecruiter.tw
@@ -120,7 +120,7 @@
 		<<set $activeSlave.bellySag = 0, $activeSlave.bellySagPreg = 0>>
 		<<set $activeSlave.birthsTotal = 0>>
 		<<set $activeSlave.prostate = 0>>
-		<<<run randomizeAttraction($activeSlave)>>
+		<<run randomizeAttraction($activeSlave)>>
 		<<ResyncHeight $activeSlave>>
 	<</if>>
 	<<if $activeSlave.nipples == "fuckable">>
@@ -1030,7 +1030,7 @@ She waits anxiously for your decision.
 <<set $activeSlave.sexualFlaw = either("none", "none", "none", "none", "hates oral", "hates anal", "hates penetration")>>
 <<set $activeSlave.behavioralFlaw = either("none", "none", "none", "arrogant", "bitchy", "odd", "anorexic", "hates men", "hates women", "hates women")>>
 <<set $activeSlave.weekAcquired = $week>>
-<<<run randomizeAttraction($activeSlave)>>
+<<run randomizeAttraction($activeSlave)>>
 <<if $activeSlave.nipples == "fuckable">>
 	<<set $activeSlave.nipples = either("cute", "puffy", "inverted", "partially inverted")>>
 <</if>>
-- 
GitLab


From 7751080a82cc5b894121a88bc35e817415316668 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Sun, 29 Jul 2018 22:34:32 -0400
Subject: [PATCH 162/189] whiny merge

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt | 6 ++++++
 devNotes/twine JS.txt                        | 2 +-
 src/js/vignettes.tw                          | 2 +-
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 9321ec1f856..a54eba50726 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,12 @@
 
 0.10.7.1-0.5.x
 
+7/29/2018
+
+	10
+	-fixes
+	-vignettes now JS'd
+
 7/28/2018
 
 	9
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index bfe5ea3750f..f44bee08f1b 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -25995,7 +25995,7 @@ window.GetVignette = function GetVignette(slave) {
 	}
 	return jsEither(vignettes);
 };
-=======
+
 /*:: Slave Generation JS [script]*/
 
 window.generateAge = function generateAge(slave) {
diff --git a/src/js/vignettes.tw b/src/js/vignettes.tw
index 001962099e7..555472492f8 100644
--- a/src/js/vignettes.tw
+++ b/src/js/vignettes.tw
@@ -1,4 +1,4 @@
-::VignettesJS[script]
+::VignettesJS [script]
 
 window.GetVignette = function GetVignette(slave) {
 	const V = State.variables;
-- 
GitLab


From de9d3446fb8e8b1693efbd65baaf82e533bfd31e Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 30 Jul 2018 03:32:08 -0400
Subject: [PATCH 163/189] JS conversion

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |  7 ++
 devNotes/twine JS.txt                        | 62 +++++++++++++
 src/uncategorized/cellblockReport.tw         |  6 +-
 src/uncategorized/fullReport.tw              |  2 +-
 src/uncategorized/saStayConfined.tw          | 98 +++++++++++---------
 5 files changed, 127 insertions(+), 48 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index a54eba50726..7712f93e9f7 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,13 @@
 
 0.10.7.1-0.5.x
 
+7/30/2018
+
+	11
+	-more widget to JS conversions
+	-gingering now works as intended
+	-converted saStayConfined to JS
+
 7/29/2018
 
 	10
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 2216a8bf287..6646495df22 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -10738,6 +10738,68 @@ window.saServant = function saServant(slave) {
 	return t;
 };
 
+/*:: SA stay confined [script]*/
+
+window.saStayConfined = function saStayConfined(slave) {
+
+	var pronouns = getPronouns(slave)
+	var he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun
+	var He = capFirstChar(he), His = capFirstChar(his)
+	var V = State.variables
+
+	var t = ""
+
+	if (slave.fetish != "mindbroken") {
+		if (slave.devotion < -50) {
+			t += `is kept in solitary confinement whenever ${he} is not being forced to do something else. ${He} still hates ${his} place in the world, but being forced to rely on slave life as ${his} only human contact <span class='hotpink'>grinds down ${his} resistance.</span>`
+			slave.devotion += 2
+		} else if (slave.devotion <= 20) {
+			t += `is kept in solitary confinement whenever ${he} is not being forced to do something else. With nothing to do but look forward to the next time ${he}'s let out to serve, <span class='hotpink'>${he} begins to rely on servitude.</span>`
+			slave.devotion += 1
+		} else if (slave.devotion <= 50) {
+			t += `accepts solitary confinement whenever ${he} is not being forced to do something else. Since ${he} is obedient, the mental torture neither breaks ${him} further nor causes ${him} to hate you.`
+		} else {
+			t += `accepts solitary confinement whenever ${he} is not being forced to do something else. ${He} spends ${his} time wondering hopelessly how ${he} has failed you, <span class='mediumorchid'>damaging ${his} devotion to you.</span>`
+			slave.devotion -= 2
+		}
+
+		if (slave.trust < -50) {
+			t += ` ${He} is so terrified of you that this confinement does not make ${him} fear you any more.`
+		} else if (slave.trust < -20) {
+			t += ` ${He} is already afraid of you, but this confinement makes ${him} <span class='gold'>fear you even more.</span>`
+			slave.trust -= 2
+		} else if (slave.trust <= 20) {
+			t += ` This confinement makes ${him} <span class='gold'>fear your power</span> over ${him}.`
+			slave.trust -= 4
+		} else {
+			t += ` This confinement makes ${him} <span class='gold'>trust you less,</span> and fear you more.`
+			slave.trust -= 5
+		}
+
+		t += ` The stress of confinement <span class='red'>damages ${his} health.</span>`
+		slave.health -= 10
+	} else {
+		t += `is oblivious to ${his} confinement.`
+	}
+
+	if (slave.sentence == 0 && (slave.devotion > 20 || (slave.devotion >= -20 && slave.trust < -20) || (slave.devotion >= -50 && slave.trust < -50) || slave.fetish == "mindbroken")) {
+		if (slave.fetish == "mindbroken") {
+			t += ` ${His} broken mind hinges entirely on other's guidance,`
+		} else {
+			t += ` ${He} is now willing to <span class='hotpink'>do as ${he}'s told,</span>`
+		}
+		t += ` so <span class='yellow'>${his} assignment has defaulted to rest.</span>`
+		if (slave.assignment == "be confined in the cellblock") {
+			State.temporary.brokenSlaves++
+			State.temporary.DL--
+			State.temporary.dI--
+		}
+		removeJob(slave, slave.assignment)
+	}
+	
+	return t
+}
+
 /*:: DTreeJS [script]*/
 /* This is the minified version of lodash, d3 and dTree */
 ;
diff --git a/src/uncategorized/cellblockReport.tw b/src/uncategorized/cellblockReport.tw
index 772c77ddc3b..0e34ea49121 100644
--- a/src/uncategorized/cellblockReport.tw
+++ b/src/uncategorized/cellblockReport.tw
@@ -1,7 +1,5 @@
 :: Cellblock Report [nobr]
 
-<<setLocalPronouns $slaves[$i]>>
-
 <<SlaveSort $CellBiIDs>>
 <<set _DL = $CellBiIDs.length, $cellblockSlaves = _DL, _SL = $slaves.length, _brokenSlaves = 0, _idleBonus = 0, _softenedQuirks = 0, _trustMalus = 0, _FLsFetish = 0>>
 
@@ -266,7 +264,7 @@
 		<<else>>
 			is confined in $cellblockName.
 		<</if>>
-		<br>&nbsp;&nbsp;&nbsp;&nbsp;She <<include "SA stay confined">>
+		<br>&nbsp;&nbsp;&nbsp;&nbsp;She <<= saStayConfined($slaves[$i])>>
 		<br>&nbsp;&nbsp;&nbsp;
 		<<include "SA rules">>
 		<<include "SA diet">>
@@ -278,7 +276,7 @@
 	<<else>>
 		<<silently>>
 		<<include "SA chooses own job">>
-		<<include "SA stay confined">>
+		<<set _dump = saStayConfined($slaves[$i])>>
 		<<include "SA rules">>
 		<<include "SA diet">>
 		<<include "SA long term effects">>
diff --git a/src/uncategorized/fullReport.tw b/src/uncategorized/fullReport.tw
index babafb62142..873bc1948aa 100644
--- a/src/uncategorized/fullReport.tw
+++ b/src/uncategorized/fullReport.tw
@@ -31,7 +31,7 @@
 <<case "be a servant">>
 	<<= saServant($slaves[$i])>>
 <<case "stay confined">>
-	<<include "SA stay confined">>
+	<<= saStayConfined($slaves[$i])>>
 <<case "guard you">>
 	<<include "SA guard you">>
 <<case "be your Head Girl">>
diff --git a/src/uncategorized/saStayConfined.tw b/src/uncategorized/saStayConfined.tw
index d78dbe03f4e..eb2b36589f9 100644
--- a/src/uncategorized/saStayConfined.tw
+++ b/src/uncategorized/saStayConfined.tw
@@ -1,49 +1,61 @@
-:: SA stay confined [nobr]
+:: SA stay confined [script]
 
-<<if $slaves[$i].fetish != "mindbroken">>
-<<if ($slaves[$i].devotion < -50)>>
-	is kept in solitary confinement whenever $he is not being forced to do something else. $He still hates $his place in the world, but being forced to rely on slave life as $his only human contact @@.hotpink;grinds down $his resistance.@@
-	<<set $slaves[$i].devotion += 2>>
-<<elseif ($slaves[$i].devotion <= 20)>>
-	is kept in solitary confinement whenever $he is not being forced to do something else. With nothing to do but look forward to the next time $he's let out to serve, @@.hotpink;$he begins to rely on servitude.@@
-	<<set $slaves[$i].devotion += 1>>
-<<elseif ($slaves[$i].devotion <= 50)>>
-	accepts solitary confinement whenever $he is not being forced to do something else. Since $he is obedient, the mental torture neither breaks $him further nor causes $him to hate you.
-<<else>>
-	accepts solitary confinement whenever $he is not being forced to do something else. $He spends $his time wondering hopelessly how $he has failed you, @@.mediumorchid;damaging $his devotion to you.@@
-	<<set $slaves[$i].devotion -= 2>>
-<</if>>
+window.saStayConfined = function saStayConfined(slave) {
 
-<<if ($slaves[$i].trust < -50)>>
-	$He is so terrified of you that this confinement does not make $him fear you any more.
-<<elseif ($slaves[$i].trust < -20)>>
-	$He is already afraid of you, but this confinement makes $him @@.gold;fear you even more.@@
-	<<set $slaves[$i].trust -= 2>>
-<<elseif ($slaves[$i].trust <= 20)>>
-	This confinement makes $him @@.gold;fear your power@@ over $him.
-	<<set $slaves[$i].trust -= 4>>
-<<else>>
-	This confinement makes $him @@.gold;trust you less,@@ and fear you more.
-	<<set $slaves[$i].trust -= 5>>
-<</if>>
+	var pronouns = getPronouns(slave)
+	var he = pronouns.pronoun, him = pronouns.object, his = pronouns.possessive, hers = pronouns.possessivePronoun, himself = pronouns.objectReflexive, boy = pronouns.noun
+	var He = capFirstChar(he), His = capFirstChar(his)
+	var V = State.variables
 
-The stress of confinement @@.red;damages $his health@@.
-<<set $slaves[$i].health -= 10>>
+	var t = ""
 
-<<else>>
-	is oblivious to $his confinement.
-<</if>>
+	if (slave.fetish != "mindbroken") {
+		if (slave.devotion < -50) {
+			t += `is kept in solitary confinement whenever ${he} is not being forced to do something else. ${He} still hates ${his} place in the world, but being forced to rely on slave life as ${his} only human contact <span class='hotpink'>grinds down ${his} resistance.</span>`
+			slave.devotion += 2
+		} else if (slave.devotion <= 20) {
+			t += `is kept in solitary confinement whenever ${he} is not being forced to do something else. With nothing to do but look forward to the next time ${he}'s let out to serve, <span class='hotpink'>${he} begins to rely on servitude.</span>`
+			slave.devotion += 1
+		} else if (slave.devotion <= 50) {
+			t += `accepts solitary confinement whenever ${he} is not being forced to do something else. Since ${he} is obedient, the mental torture neither breaks ${him} further nor causes ${him} to hate you.`
+		} else {
+			t += `accepts solitary confinement whenever ${he} is not being forced to do something else. ${He} spends ${his} time wondering hopelessly how ${he} has failed you, <span class='mediumorchid'>damaging ${his} devotion to you.</span>`
+			slave.devotion -= 2
+		}
 
-<<if ($slaves[$i].sentence == 0) && (($slaves[$i].devotion > 20) || (($slaves[$i].devotion >= -20) && ($slaves[$i].trust < -20)) || (($slaves[$i].devotion >= -50) && ($slaves[$i].trust < -50)) || ($slaves[$i].fetish == "mindbroken"))>>
-	<<if $slaves[$i].fetish == "mindbroken">>
-		$His broken mind hinges entirely on other's guidance,
-	<<else>>
-		$He is now willing to @@.hotpink;do as $he's told@@,
-	<</if>>
-	so @@.yellow;$his assignment has defaulted to rest.@@
-	<<if $slaves[$i].assignment == "be confined in the cellblock">>
-		<<set _brokenSlaves++, _DL--, _dI-->>
-	<</if>>
-	<<= removeJob($slaves[$i], $slaves[$i].assignment)>>
-<</if>>
+		if (slave.trust < -50) {
+			t += ` ${He} is so terrified of you that this confinement does not make ${him} fear you any more.`
+		} else if (slave.trust < -20) {
+			t += ` ${He} is already afraid of you, but this confinement makes ${him} <span class='gold'>fear you even more.</span>`
+			slave.trust -= 2
+		} else if (slave.trust <= 20) {
+			t += ` This confinement makes ${him} <span class='gold'>fear your power</span> over ${him}.`
+			slave.trust -= 4
+		} else {
+			t += ` This confinement makes ${him} <span class='gold'>trust you less,</span> and fear you more.`
+			slave.trust -= 5
+		}
 
+		t += ` The stress of confinement <span class='red'>damages ${his} health.</span>`
+		slave.health -= 10
+	} else {
+		t += `is oblivious to ${his} confinement.`
+	}
+
+	if (slave.sentence == 0 && (slave.devotion > 20 || (slave.devotion >= -20 && slave.trust < -20) || (slave.devotion >= -50 && slave.trust < -50) || slave.fetish == "mindbroken")) {
+		if (slave.fetish == "mindbroken") {
+			t += ` ${His} broken mind hinges entirely on other's guidance,`
+		} else {
+			t += ` ${He} is now willing to <span class='hotpink'>do as ${he}'s told,</span>`
+		}
+		t += ` so <span class='yellow'>${his} assignment has defaulted to rest.</span>`
+		if (slave.assignment == "be confined in the cellblock") {
+			State.temporary.brokenSlaves++
+			State.temporary.DL--
+			State.temporary.dI--
+		}
+		removeJob(slave, slave.assignment)
+	}
+	
+	return t
+}
-- 
GitLab


From 30ff7b3df937943a7b236c210f34987996159997 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 30 Jul 2018 03:33:48 -0400
Subject: [PATCH 164/189] relocation

---
 src/{uncategorized => endWeek}/saStayConfined.tw | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename src/{uncategorized => endWeek}/saStayConfined.tw (100%)

diff --git a/src/uncategorized/saStayConfined.tw b/src/endWeek/saStayConfined.tw
similarity index 100%
rename from src/uncategorized/saStayConfined.tw
rename to src/endWeek/saStayConfined.tw
-- 
GitLab


From 5dc42d3e08dec38a8cd29fb290bfa7fb4dbdcc5d Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 30 Jul 2018 03:34:40 -0400
Subject: [PATCH 165/189] notes

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 7712f93e9f7..eba7259a978 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -7,7 +7,7 @@
 	11
 	-more widget to JS conversions
 	-gingering now works as intended
-	-converted saStayConfined to JS
+	-converted saStayConfined to JS (make sure you do not have a lingering version in src/uncategorized)
 
 7/29/2018
 
-- 
GitLab


From c8ffd1b5a3a22745c8f93b85af2db0f2d3fa2c37 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 30 Jul 2018 19:03:34 -0400
Subject: [PATCH 166/189] fixes

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt | 3 +++
 src/pregmod/huskSlaveSwapWorkaround.tw       | 2 +-
 src/uncategorized/saDrugs.tw                 | 2 +-
 src/uncategorized/slaveInteract.tw           | 6 +++++-
 4 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index eba7259a978..bbaf1e08487 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -4,6 +4,9 @@
 
 7/30/2018
 
+	12
+	-fixed bugs and typos
+
 	11
 	-more widget to JS conversions
 	-gingering now works as intended
diff --git a/src/pregmod/huskSlaveSwapWorkaround.tw b/src/pregmod/huskSlaveSwapWorkaround.tw
index 09449d87ad2..26fb5eebc94 100644
--- a/src/pregmod/huskSlaveSwapWorkaround.tw
+++ b/src/pregmod/huskSlaveSwapWorkaround.tw
@@ -11,7 +11,7 @@ __Select an eligible slave:__
 <<for _i = 0; _i < $slaves.length; _i++>>
 	<<if isSlaveAvailable($slaves[_i])>>
 	<<if $slaves[_i].fuckdoll == 0>>
-	<<if ($slaves[_i].PLimb == 0) || ($slaves[_i].PLimb == 1 && $slaves[_i].amp == 1)>>
+	<<if $slaves[_i].amp >= 0)>>
 	<<if ($slaves[_i].indenture == -1)>>
 	<<if ($slaves[_i].breedingMark == 0 || $propOutcome == 0)>>
 	<<if ($slaves[_i].reservedChildren == 0)>>
diff --git a/src/uncategorized/saDrugs.tw b/src/uncategorized/saDrugs.tw
index aa5abaaf9d3..935846632bb 100644
--- a/src/uncategorized/saDrugs.tw
+++ b/src/uncategorized/saDrugs.tw
@@ -762,7 +762,7 @@
 
 <<case "anti-aging cream">>
 	<<if ($slaves[$i].visualAge <= 18)>>
-		$His outward age has regressed to the point that the creams will have little effect. Since they can't be improved with further drug treatment, @@.yellow;$his drug regimen has been ended.@@
+		$His outward age has regressed to the point that the creams will have little effect. Since there is no gain for further treatment, @@.yellow;$his drug regimen has been ended.@@
 		<<set $slaves[$i].drugs = "no drugs">>
 	<<else>>
 		The skin creams @@.lime;soothe $his aging skin@@ leaving $him looking younger, though the effects are only skin deep.
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 2febacd2153..2c3c47351a0 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -1353,12 +1353,16 @@ Relationship rules: ''<span id="relationshipRules">$activeSlave.relationshipRule
 			[[Publicize|Slave Interact][$activeSlave.pornFameSpending += 1000]]
 			//Will cost <<print cashFormat(1000)>> weekly.//
 		<<else>>
-			<<print cashFormat($activeSlave.pornFameSpending)>> weekly is spent to publicize them.
+			<<textbox "_newPornSpending" $activeSlave.pornFameSpending>> weekly is spent to publicize them. [[Save changes|Slave Interact][$activeSlave.pornFameSpending = Number(_newPornSpending) || 0]] |
 			[[Halt|Slave Interact][$activeSlave.pornFeed = 0, $activeSlave.pornFameSpending = 0, $activeSlave.pornFocus = "none"]] |
 			<<if $activeSlave.pornFameSpending < 5000>>
 				[[Increase|Slave Interact][$activeSlave.pornFameSpending += 1000]] |
 			<</if>>
 			[[Decrease|Slave Interact][$activeSlave.pornFameSpending -= 1000]]
+			<<if $activeSlave.pornFameSpending > 5000>><<set _warn = 1>><</if>>
+			<<set $activeSlave.pornFameSpending = Number($activeSlave.pornFameSpending) || 0>>
+			<<set $activeSlave.pornFameSpending = Math.clamp(Math.ceil($activeSlave.pornFameSpending/1000)*1000, 0, 5000)>>
+			<<if _warn>><br>//Spending more than <<print cashFormat(5000)>> weekly will have no effect.//<</if>>
 		<</if>>
 		
 		<<if $studioFeed == 1>>
-- 
GitLab


From ae774f55060ddabf5551ac9b5195d42f8122f5b9 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 30 Jul 2018 19:25:28 -0400
Subject: [PATCH 167/189] Sugarcube updated to 2.26.0

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt  |   3 +
 .../sugarcube stuff/header backup 227.html    | 145 ++++++++++++++++++
 .../important for updating sugarcube.txt      |   2 +-
 .../storyFormats/sugarcube-2/header.html      |  29 ++--
 4 files changed, 161 insertions(+), 18 deletions(-)
 create mode 100644 devNotes/sugarcube stuff/header backup 227.html

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index bbaf1e08487..fc3bd036829 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -4,6 +4,9 @@
 
 7/30/2018
 
+	13
+	-sugarcube updated to 2.26.0
+
 	12
 	-fixed bugs and typos
 
diff --git a/devNotes/sugarcube stuff/header backup 227.html b/devNotes/sugarcube stuff/header backup 227.html
new file mode 100644
index 00000000000..e29045f1317
--- /dev/null
+++ b/devNotes/sugarcube stuff/header backup 227.html	
@@ -0,0 +1,145 @@
+<!DOCTYPE html>
+<html data-init="no-js">
+<head>
+<meta charset="UTF-8" />
+<title>SugarCube</title>
+<meta name="viewport" content="width=device-width,initial-scale=1" />
+<!--
+
+SugarCube (v2.25.0): A free (gratis and libre) story format.
+
+Copyright © 2013–2018 Thomas Michael Edwards <thomasmedwards@gmail.com>.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+   list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright notice,
+   this list of conditions and the following disclaimer in the documentation
+   and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+-->
+<!--
+
+Build Info:
+  * "TIME"
+  * "VERSION"
+
+-->
+<script id="script-libraries" type="text/javascript">
+if(document.head&&document.addEventListener&&document.querySelector&&Object.create&&Object.freeze&&JSON){document.documentElement.setAttribute("data-init", "loading");
+/*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js */
+if("document" in self){if(!("classList" in document.createElement("_"))){(function(j){"use strict";if(!("Element" in j)){return}var a="classList",f="prototype",m=j.Element[f],b=Object,k=String[f].trim||function(){return this.replace(/^\s+|\s+$/g,"")},c=Array[f].indexOf||function(q){var p=0,o=this.length;for(;p<o;p++){if(p in this&&this[p]===q){return p}}return -1},n=function(o,p){this.name=o;this.code=DOMException[o];this.message=p},g=function(p,o){if(o===""){throw new n("SYNTAX_ERR","An invalid or illegal string was specified")}if(/\s/.test(o)){throw new n("INVALID_CHARACTER_ERR","String contains an invalid character")}return c.call(p,o)},d=function(s){var r=k.call(s.getAttribute("class")||""),q=r?r.split(/\s+/):[],p=0,o=q.length;for(;p<o;p++){this.push(q[p])}this._updateClassName=function(){s.setAttribute("class",this.toString())}},e=d[f]=[],i=function(){return new d(this)};n[f]=Error[f];e.item=function(o){return this[o]||null};e.contains=function(o){o+="";return g(this,o)!==-1};e.add=function(){var s=arguments,r=0,p=s.length,q,o=false;do{q=s[r]+"";if(g(this,q)===-1){this.push(q);o=true}}while(++r<p);if(o){this._updateClassName()}};e.remove=function(){var t=arguments,s=0,p=t.length,r,o=false,q;do{r=t[s]+"";q=g(this,r);while(q!==-1){this.splice(q,1);o=true;q=g(this,r)}}while(++s<p);if(o){this._updateClassName()}};e.toggle=function(p,q){p+="";var o=this.contains(p),r=o?q!==true&&"remove":q!==false&&"add";if(r){this[r](p)}if(q===true||q===false){return q}else{return !o}};e.toString=function(){return this.join(" ")};if(b.defineProperty){var l={get:i,enumerable:true,configurable:true};try{b.defineProperty(m,a,l)}catch(h){if(h.number===-2146823252){l.enumerable=false;b.defineProperty(m,a,l)}}}else{if(b[f].__defineGetter__){m.__defineGetter__(a,i)}}}(self))}else{(function(){var b=document.createElement("_");b.classList.add("c1","c2");if(!b.classList.contains("c2")){var c=function(e){var d=DOMTokenList.prototype[e];DOMTokenList.prototype[e]=function(h){var g,f=arguments.length;for(g=0;g<f;g++){h=arguments[g];d.call(this,h)}}};c("add");c("remove")}b.classList.toggle("c3",false);if(b.classList.contains("c3")){var a=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(d,e){if(1 in arguments&&!this.contains(d)===!e){return e}else{return a.call(this,d)}}}b=null}())}};
+/*!
+ * https://github.com/es-shims/es5-shim
+ * @license es5-shim Copyright 2009-2015 by contributors, MIT License
+ * see https://github.com/es-shims/es5-shim/blob/v4.5.9/LICENSE
+ */
+(function(t,r){"use strict";if(typeof define==="function"&&define.amd){define(r)}else if(typeof exports==="object"){module.exports=r()}else{t.returnExports=r()}})(this,function(){var t=Array;var r=t.prototype;var e=Object;var n=e.prototype;var i=Function;var a=i.prototype;var o=String;var f=o.prototype;var u=Number;var l=u.prototype;var s=r.slice;var c=r.splice;var v=r.push;var h=r.unshift;var p=r.concat;var y=r.join;var d=a.call;var g=a.apply;var w=Math.max;var b=Math.min;var T=n.toString;var m=typeof Symbol==="function"&&typeof Symbol.toStringTag==="symbol";var D;var S=Function.prototype.toString,x=/^\s*class /,O=function isES6ClassFn(t){try{var r=S.call(t);var e=r.replace(/\/\/.*\n/g,"");var n=e.replace(/\/\*[.\s\S]*\*\//g,"");var i=n.replace(/\n/gm," ").replace(/ {2}/g," ");return x.test(i)}catch(a){return false}},j=function tryFunctionObject(t){try{if(O(t)){return false}S.call(t);return true}catch(r){return false}},E="[object Function]",I="[object GeneratorFunction]",D=function isCallable(t){if(!t){return false}if(typeof t!=="function"&&typeof t!=="object"){return false}if(m){return j(t)}if(O(t)){return false}var r=T.call(t);return r===E||r===I};var M;var U=RegExp.prototype.exec,F=function tryRegexExec(t){try{U.call(t);return true}catch(r){return false}},N="[object RegExp]";M=function isRegex(t){if(typeof t!=="object"){return false}return m?F(t):T.call(t)===N};var C;var k=String.prototype.valueOf,A=function tryStringObject(t){try{k.call(t);return true}catch(r){return false}},R="[object String]";C=function isString(t){if(typeof t==="string"){return true}if(typeof t!=="object"){return false}return m?A(t):T.call(t)===R};var P=e.defineProperty&&function(){try{var t={};e.defineProperty(t,"x",{enumerable:false,value:t});for(var r in t){return false}return t.x===t}catch(n){return false}}();var $=function(t){var r;if(P){r=function(t,r,n,i){if(!i&&r in t){return}e.defineProperty(t,r,{configurable:true,enumerable:false,writable:true,value:n})}}else{r=function(t,r,e,n){if(!n&&r in t){return}t[r]=e}}return function defineProperties(e,n,i){for(var a in n){if(t.call(n,a)){r(e,a,n[a],i)}}}}(n.hasOwnProperty);var J=function isPrimitive(t){var r=typeof t;return t===null||r!=="object"&&r!=="function"};var Y=u.isNaN||function isActualNaN(t){return t!==t};var Z={ToInteger:function ToInteger(t){var r=+t;if(Y(r)){r=0}else if(r!==0&&r!==1/0&&r!==-(1/0)){r=(r>0||-1)*Math.floor(Math.abs(r))}return r},ToPrimitive:function ToPrimitive(t){var r,e,n;if(J(t)){return t}e=t.valueOf;if(D(e)){r=e.call(t);if(J(r)){return r}}n=t.toString;if(D(n)){r=n.call(t);if(J(r)){return r}}throw new TypeError},ToObject:function(t){if(t==null){throw new TypeError("can't convert "+t+" to object")}return e(t)},ToUint32:function ToUint32(t){return t>>>0}};var z=function Empty(){};$(a,{bind:function bind(t){var r=this;if(!D(r)){throw new TypeError("Function.prototype.bind called on incompatible "+r)}var n=s.call(arguments,1);var a;var o=function(){if(this instanceof a){var i=g.call(r,this,p.call(n,s.call(arguments)));if(e(i)===i){return i}return this}else{return g.call(r,t,p.call(n,s.call(arguments)))}};var f=w(0,r.length-n.length);var u=[];for(var l=0;l<f;l++){v.call(u,"$"+l)}a=i("binder","return function ("+y.call(u,",")+"){ return binder.apply(this, arguments); }")(o);if(r.prototype){z.prototype=r.prototype;a.prototype=new z;z.prototype=null}return a}});var G=d.bind(n.hasOwnProperty);var B=d.bind(n.toString);var H=d.bind(s);var W=g.bind(s);var L=d.bind(f.slice);var X=d.bind(f.split);var q=d.bind(f.indexOf);var K=d.bind(v);var Q=d.bind(n.propertyIsEnumerable);var V=d.bind(r.sort);var _=t.isArray||function isArray(t){return B(t)==="[object Array]"};var tt=[].unshift(0)!==1;$(r,{unshift:function(){h.apply(this,arguments);return this.length}},tt);$(t,{isArray:_});var rt=e("a");var et=rt[0]!=="a"||!(0 in rt);var nt=function properlyBoxed(t){var r=true;var e=true;var n=false;if(t){try{t.call("foo",function(t,e,n){if(typeof n!=="object"){r=false}});t.call([1],function(){"use strict";e=typeof this==="string"},"x")}catch(i){n=true}}return!!t&&!n&&r&&e};$(r,{forEach:function forEach(t){var r=Z.ToObject(this);var e=et&&C(this)?X(this,""):r;var n=-1;var i=Z.ToUint32(e.length);var a;if(arguments.length>1){a=arguments[1]}if(!D(t)){throw new TypeError("Array.prototype.forEach callback must be a function")}while(++n<i){if(n in e){if(typeof a==="undefined"){t(e[n],n,r)}else{t.call(a,e[n],n,r)}}}}},!nt(r.forEach));$(r,{map:function map(r){var e=Z.ToObject(this);var n=et&&C(this)?X(this,""):e;var i=Z.ToUint32(n.length);var a=t(i);var o;if(arguments.length>1){o=arguments[1]}if(!D(r)){throw new TypeError("Array.prototype.map callback must be a function")}for(var f=0;f<i;f++){if(f in n){if(typeof o==="undefined"){a[f]=r(n[f],f,e)}else{a[f]=r.call(o,n[f],f,e)}}}return a}},!nt(r.map));$(r,{filter:function filter(t){var r=Z.ToObject(this);var e=et&&C(this)?X(this,""):r;var n=Z.ToUint32(e.length);var i=[];var a;var o;if(arguments.length>1){o=arguments[1]}if(!D(t)){throw new TypeError("Array.prototype.filter callback must be a function")}for(var f=0;f<n;f++){if(f in e){a=e[f];if(typeof o==="undefined"?t(a,f,r):t.call(o,a,f,r)){K(i,a)}}}return i}},!nt(r.filter));$(r,{every:function every(t){var r=Z.ToObject(this);var e=et&&C(this)?X(this,""):r;var n=Z.ToUint32(e.length);var i;if(arguments.length>1){i=arguments[1]}if(!D(t)){throw new TypeError("Array.prototype.every callback must be a function")}for(var a=0;a<n;a++){if(a in e&&!(typeof i==="undefined"?t(e[a],a,r):t.call(i,e[a],a,r))){return false}}return true}},!nt(r.every));$(r,{some:function some(t){var r=Z.ToObject(this);var e=et&&C(this)?X(this,""):r;var n=Z.ToUint32(e.length);var i;if(arguments.length>1){i=arguments[1]}if(!D(t)){throw new TypeError("Array.prototype.some callback must be a function")}for(var a=0;a<n;a++){if(a in e&&(typeof i==="undefined"?t(e[a],a,r):t.call(i,e[a],a,r))){return true}}return false}},!nt(r.some));var it=false;if(r.reduce){it=typeof r.reduce.call("es5",function(t,r,e,n){return n})==="object"}$(r,{reduce:function reduce(t){var r=Z.ToObject(this);var e=et&&C(this)?X(this,""):r;var n=Z.ToUint32(e.length);if(!D(t)){throw new TypeError("Array.prototype.reduce callback must be a function")}if(n===0&&arguments.length===1){throw new TypeError("reduce of empty array with no initial value")}var i=0;var a;if(arguments.length>=2){a=arguments[1]}else{do{if(i in e){a=e[i++];break}if(++i>=n){throw new TypeError("reduce of empty array with no initial value")}}while(true)}for(;i<n;i++){if(i in e){a=t(a,e[i],i,r)}}return a}},!it);var at=false;if(r.reduceRight){at=typeof r.reduceRight.call("es5",function(t,r,e,n){return n})==="object"}$(r,{reduceRight:function reduceRight(t){var r=Z.ToObject(this);var e=et&&C(this)?X(this,""):r;var n=Z.ToUint32(e.length);if(!D(t)){throw new TypeError("Array.prototype.reduceRight callback must be a function")}if(n===0&&arguments.length===1){throw new TypeError("reduceRight of empty array with no initial value")}var i;var a=n-1;if(arguments.length>=2){i=arguments[1]}else{do{if(a in e){i=e[a--];break}if(--a<0){throw new TypeError("reduceRight of empty array with no initial value")}}while(true)}if(a<0){return i}do{if(a in e){i=t(i,e[a],a,r)}}while(a--);return i}},!at);var ot=r.indexOf&&[0,1].indexOf(1,2)!==-1;$(r,{indexOf:function indexOf(t){var r=et&&C(this)?X(this,""):Z.ToObject(this);var e=Z.ToUint32(r.length);if(e===0){return-1}var n=0;if(arguments.length>1){n=Z.ToInteger(arguments[1])}n=n>=0?n:w(0,e+n);for(;n<e;n++){if(n in r&&r[n]===t){return n}}return-1}},ot);var ft=r.lastIndexOf&&[0,1].lastIndexOf(0,-3)!==-1;$(r,{lastIndexOf:function lastIndexOf(t){var r=et&&C(this)?X(this,""):Z.ToObject(this);var e=Z.ToUint32(r.length);if(e===0){return-1}var n=e-1;if(arguments.length>1){n=b(n,Z.ToInteger(arguments[1]))}n=n>=0?n:e-Math.abs(n);for(;n>=0;n--){if(n in r&&t===r[n]){return n}}return-1}},ft);var ut=function(){var t=[1,2];var r=t.splice();return t.length===2&&_(r)&&r.length===0}();$(r,{splice:function splice(t,r){if(arguments.length===0){return[]}else{return c.apply(this,arguments)}}},!ut);var lt=function(){var t={};r.splice.call(t,0,0,1);return t.length===1}();$(r,{splice:function splice(t,r){if(arguments.length===0){return[]}var e=arguments;this.length=w(Z.ToInteger(this.length),0);if(arguments.length>0&&typeof r!=="number"){e=H(arguments);if(e.length<2){K(e,this.length-t)}else{e[1]=Z.ToInteger(r)}}return c.apply(this,e)}},!lt);var st=function(){var r=new t(1e5);r[8]="x";r.splice(1,1);return r.indexOf("x")===7}();var ct=function(){var t=256;var r=[];r[t]="a";r.splice(t+1,0,"b");return r[t]==="a"}();$(r,{splice:function splice(t,r){var e=Z.ToObject(this);var n=[];var i=Z.ToUint32(e.length);var a=Z.ToInteger(t);var f=a<0?w(i+a,0):b(a,i);var u=b(w(Z.ToInteger(r),0),i-f);var l=0;var s;while(l<u){s=o(f+l);if(G(e,s)){n[l]=e[s]}l+=1}var c=H(arguments,2);var v=c.length;var h;if(v<u){l=f;var p=i-u;while(l<p){s=o(l+u);h=o(l+v);if(G(e,s)){e[h]=e[s]}else{delete e[h]}l+=1}l=i;var y=i-u+v;while(l>y){delete e[l-1];l-=1}}else if(v>u){l=i-u;while(l>f){s=o(l+u-1);h=o(l+v-1);if(G(e,s)){e[h]=e[s]}else{delete e[h]}l-=1}}l=f;for(var d=0;d<c.length;++d){e[l]=c[d];l+=1}e.length=i-u+v;return n}},!st||!ct);var vt=r.join;var ht;try{ht=Array.prototype.join.call("123",",")!=="1,2,3"}catch(pt){ht=true}if(ht){$(r,{join:function join(t){var r=typeof t==="undefined"?",":t;return vt.call(C(this)?X(this,""):this,r)}},ht)}var yt=[1,2].join(undefined)!=="1,2";if(yt){$(r,{join:function join(t){var r=typeof t==="undefined"?",":t;return vt.call(this,r)}},yt)}var dt=function push(t){var r=Z.ToObject(this);var e=Z.ToUint32(r.length);var n=0;while(n<arguments.length){r[e+n]=arguments[n];n+=1}r.length=e+n;return e+n};var gt=function(){var t={};var r=Array.prototype.push.call(t,undefined);return r!==1||t.length!==1||typeof t[0]!=="undefined"||!G(t,0)}();$(r,{push:function push(t){if(_(this)){return v.apply(this,arguments)}return dt.apply(this,arguments)}},gt);var wt=function(){var t=[];var r=t.push(undefined);return r!==1||t.length!==1||typeof t[0]!=="undefined"||!G(t,0)}();$(r,{push:dt},wt);$(r,{slice:function(t,r){var e=C(this)?X(this,""):this;return W(e,arguments)}},et);var bt=function(){try{[1,2].sort(null);[1,2].sort({});return true}catch(t){}return false}();var Tt=function(){try{[1,2].sort(/a/);return false}catch(t){}return true}();var mt=function(){try{[1,2].sort(undefined);return true}catch(t){}return false}();$(r,{sort:function sort(t){if(typeof t==="undefined"){return V(this)}if(!D(t)){throw new TypeError("Array.prototype.sort callback must be a function")}return V(this,t)}},bt||!mt||!Tt);var Dt=!Q({toString:null},"toString");var St=Q(function(){},"prototype");var xt=!G("x","0");var Ot=function(t){var r=t.constructor;return r&&r.prototype===t};var jt={$window:true,$console:true,$parent:true,$self:true,$frame:true,$frames:true,$frameElement:true,$webkitIndexedDB:true,$webkitStorageInfo:true,$external:true};var Et=function(){if(typeof window==="undefined"){return false}for(var t in window){try{if(!jt["$"+t]&&G(window,t)&&window[t]!==null&&typeof window[t]==="object"){Ot(window[t])}}catch(r){return true}}return false}();var It=function(t){if(typeof window==="undefined"||!Et){return Ot(t)}try{return Ot(t)}catch(r){return false}};var Mt=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];var Ut=Mt.length;var Ft=function isArguments(t){return B(t)==="[object Arguments]"};var Nt=function isArguments(t){return t!==null&&typeof t==="object"&&typeof t.length==="number"&&t.length>=0&&!_(t)&&D(t.callee)};var Ct=Ft(arguments)?Ft:Nt;$(e,{keys:function keys(t){var r=D(t);var e=Ct(t);var n=t!==null&&typeof t==="object";var i=n&&C(t);if(!n&&!r&&!e){throw new TypeError("Object.keys called on a non-object")}var a=[];var f=St&&r;if(i&&xt||e){for(var u=0;u<t.length;++u){K(a,o(u))}}if(!e){for(var l in t){if(!(f&&l==="prototype")&&G(t,l)){K(a,o(l))}}}if(Dt){var s=It(t);for(var c=0;c<Ut;c++){var v=Mt[c];if(!(s&&v==="constructor")&&G(t,v)){K(a,v)}}}return a}});var kt=e.keys&&function(){return e.keys(arguments).length===2}(1,2);var At=e.keys&&function(){var t=e.keys(arguments);return arguments.length!==1||t.length!==1||t[0]!==1}(1);var Rt=e.keys;$(e,{keys:function keys(t){if(Ct(t)){return Rt(H(t))}else{return Rt(t)}}},!kt||At);var Pt=new Date(-0xc782b5b342b24).getUTCMonth()!==0;var $t=new Date(-0x55d318d56a724);var Jt=new Date(14496624e5);var Yt=$t.toUTCString()!=="Mon, 01 Jan -45875 11:59:59 GMT";var Zt;var zt;var Gt=$t.getTimezoneOffset();if(Gt<-720){Zt=$t.toDateString()!=="Tue Jan 02 -45875";zt=!/^Thu Dec 10 2015 \d\d:\d\d:\d\d GMT[-\+]\d\d\d\d(?: |$)/.test(Jt.toString())}else{Zt=$t.toDateString()!=="Mon Jan 01 -45875";zt=!/^Wed Dec 09 2015 \d\d:\d\d:\d\d GMT[-\+]\d\d\d\d(?: |$)/.test(Jt.toString())}var Bt=d.bind(Date.prototype.getFullYear);var Ht=d.bind(Date.prototype.getMonth);var Wt=d.bind(Date.prototype.getDate);var Lt=d.bind(Date.prototype.getUTCFullYear);var Xt=d.bind(Date.prototype.getUTCMonth);var qt=d.bind(Date.prototype.getUTCDate);var Kt=d.bind(Date.prototype.getUTCDay);var Qt=d.bind(Date.prototype.getUTCHours);var Vt=d.bind(Date.prototype.getUTCMinutes);var _t=d.bind(Date.prototype.getUTCSeconds);var tr=d.bind(Date.prototype.getUTCMilliseconds);var rr=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];var er=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];var nr=function daysInMonth(t,r){return Wt(new Date(r,t,0))};$(Date.prototype,{getFullYear:function getFullYear(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Bt(this);if(t<0&&Ht(this)>11){return t+1}return t},getMonth:function getMonth(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Bt(this);var r=Ht(this);if(t<0&&r>11){return 0}return r},getDate:function getDate(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Bt(this);var r=Ht(this);var e=Wt(this);if(t<0&&r>11){if(r===12){return e}var n=nr(0,t+1);return n-e+1}return e},getUTCFullYear:function getUTCFullYear(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Lt(this);if(t<0&&Xt(this)>11){return t+1}return t},getUTCMonth:function getUTCMonth(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Lt(this);var r=Xt(this);if(t<0&&r>11){return 0}return r},getUTCDate:function getUTCDate(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Lt(this);var r=Xt(this);var e=qt(this);if(t<0&&r>11){if(r===12){return e}var n=nr(0,t+1);return n-e+1}return e}},Pt);$(Date.prototype,{toUTCString:function toUTCString(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=Kt(this);var r=qt(this);var e=Xt(this);var n=Lt(this);var i=Qt(this);var a=Vt(this);var o=_t(this);return rr[t]+", "+(r<10?"0"+r:r)+" "+er[e]+" "+n+" "+(i<10?"0"+i:i)+":"+(a<10?"0"+a:a)+":"+(o<10?"0"+o:o)+" GMT"}},Pt||Yt);$(Date.prototype,{toDateString:function toDateString(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=this.getDay();var r=this.getDate();var e=this.getMonth();var n=this.getFullYear();return rr[t]+" "+er[e]+" "+(r<10?"0"+r:r)+" "+n}},Pt||Zt);if(Pt||zt){Date.prototype.toString=function toString(){if(!this||!(this instanceof Date)){throw new TypeError("this is not a Date object.")}var t=this.getDay();var r=this.getDate();var e=this.getMonth();var n=this.getFullYear();var i=this.getHours();var a=this.getMinutes();var o=this.getSeconds();var f=this.getTimezoneOffset();var u=Math.floor(Math.abs(f)/60);var l=Math.floor(Math.abs(f)%60);return rr[t]+" "+er[e]+" "+(r<10?"0"+r:r)+" "+n+" "+(i<10?"0"+i:i)+":"+(a<10?"0"+a:a)+":"+(o<10?"0"+o:o)+" GMT"+(f>0?"-":"+")+(u<10?"0"+u:u)+(l<10?"0"+l:l)};if(P){e.defineProperty(Date.prototype,"toString",{configurable:true,enumerable:false,writable:true})}}var ir=-621987552e5;var ar="-000001";var or=Date.prototype.toISOString&&new Date(ir).toISOString().indexOf(ar)===-1;var fr=Date.prototype.toISOString&&new Date(-1).toISOString()!=="1969-12-31T23:59:59.999Z";var ur=d.bind(Date.prototype.getTime);$(Date.prototype,{toISOString:function toISOString(){if(!isFinite(this)||!isFinite(ur(this))){throw new RangeError("Date.prototype.toISOString called on non-finite value.")}var t=Lt(this);var r=Xt(this);t+=Math.floor(r/12);r=(r%12+12)%12;var e=[r+1,qt(this),Qt(this),Vt(this),_t(this)];t=(t<0?"-":t>9999?"+":"")+L("00000"+Math.abs(t),0<=t&&t<=9999?-4:-6);for(var n=0;n<e.length;++n){e[n]=L("00"+e[n],-2)}return t+"-"+H(e,0,2).join("-")+"T"+H(e,2).join(":")+"."+L("000"+tr(this),-3)+"Z"}},or||fr);var lr=function(){try{return Date.prototype.toJSON&&new Date(NaN).toJSON()===null&&new Date(ir).toJSON().indexOf(ar)!==-1&&Date.prototype.toJSON.call({toISOString:function(){return true}})}catch(t){return false}}();if(!lr){Date.prototype.toJSON=function toJSON(t){var r=e(this);var n=Z.ToPrimitive(r);if(typeof n==="number"&&!isFinite(n)){return null}var i=r.toISOString;if(!D(i)){throw new TypeError("toISOString property is not callable")}return i.call(r)}}var sr=Date.parse("+033658-09-27T01:46:40.000Z")===1e15;var cr=!isNaN(Date.parse("2012-04-04T24:00:00.500Z"))||!isNaN(Date.parse("2012-11-31T23:59:59.000Z"))||!isNaN(Date.parse("2012-12-31T23:59:60.000Z"));var vr=isNaN(Date.parse("2000-01-01T00:00:00.000Z"));if(vr||cr||!sr){var hr=Math.pow(2,31)-1;var pr=Y(new Date(1970,0,1,0,0,0,hr+1).getTime());Date=function(t){var r=function Date(e,n,i,a,f,u,l){var s=arguments.length;var c;if(this instanceof t){var v=u;var h=l;if(pr&&s>=7&&l>hr){var p=Math.floor(l/hr)*hr;var y=Math.floor(p/1e3);v+=y;h-=y*1e3}c=s===1&&o(e)===e?new t(r.parse(e)):s>=7?new t(e,n,i,a,f,v,h):s>=6?new t(e,n,i,a,f,v):s>=5?new t(e,n,i,a,f):s>=4?new t(e,n,i,a):s>=3?new t(e,n,i):s>=2?new t(e,n):s>=1?new t(e instanceof t?+e:e):new t}else{c=t.apply(this,arguments)}if(!J(c)){$(c,{constructor:r},true)}return c};var e=new RegExp("^"+"(\\d{4}|[+-]\\d{6})"+"(?:-(\\d{2})"+"(?:-(\\d{2})"+"(?:"+"T(\\d{2})"+":(\\d{2})"+"(?:"+":(\\d{2})"+"(?:(\\.\\d{1,}))?"+")?"+"("+"Z|"+"(?:"+"([-+])"+"(\\d{2})"+":(\\d{2})"+")"+")?)?)?)?"+"$");var n=[0,31,59,90,120,151,181,212,243,273,304,334,365];var i=function dayFromMonth(t,r){var e=r>1?1:0;return n[r]+Math.floor((t-1969+e)/4)-Math.floor((t-1901+e)/100)+Math.floor((t-1601+e)/400)+365*(t-1970)};var a=function toUTC(r){var e=0;var n=r;if(pr&&n>hr){var i=Math.floor(n/hr)*hr;var a=Math.floor(i/1e3);e+=a;n-=a*1e3}return u(new t(1970,0,1,0,0,e,n))};for(var f in t){if(G(t,f)){r[f]=t[f]}}$(r,{now:t.now,UTC:t.UTC},true);r.prototype=t.prototype;$(r.prototype,{constructor:r},true);var l=function parse(r){var n=e.exec(r);if(n){var o=u(n[1]),f=u(n[2]||1)-1,l=u(n[3]||1)-1,s=u(n[4]||0),c=u(n[5]||0),v=u(n[6]||0),h=Math.floor(u(n[7]||0)*1e3),p=Boolean(n[4]&&!n[8]),y=n[9]==="-"?1:-1,d=u(n[10]||0),g=u(n[11]||0),w;var b=c>0||v>0||h>0;if(s<(b?24:25)&&c<60&&v<60&&h<1e3&&f>-1&&f<12&&d<24&&g<60&&l>-1&&l<i(o,f+1)-i(o,f)){w=((i(o,f)+l)*24+s+d*y)*60;w=((w+c+g*y)*60+v)*1e3+h;if(p){w=a(w)}if(-864e13<=w&&w<=864e13){return w}}return NaN}return t.parse.apply(this,arguments)};$(r,{parse:l});return r}(Date)}if(!Date.now){Date.now=function now(){return(new Date).getTime()}}var yr=l.toFixed&&(8e-5.toFixed(3)!=="0.000"||.9.toFixed(0)!=="1"||1.255.toFixed(2)!=="1.25"||0xde0b6b3a7640080.toFixed(0)!=="1000000000000000128");var dr={base:1e7,size:6,data:[0,0,0,0,0,0],multiply:function multiply(t,r){var e=-1;var n=r;while(++e<dr.size){n+=t*dr.data[e];dr.data[e]=n%dr.base;n=Math.floor(n/dr.base)}},divide:function divide(t){var r=dr.size;var e=0;while(--r>=0){e+=dr.data[r];dr.data[r]=Math.floor(e/t);e=e%t*dr.base}},numToString:function numToString(){var t=dr.size;var r="";while(--t>=0){if(r!==""||t===0||dr.data[t]!==0){var e=o(dr.data[t]);if(r===""){r=e}else{r+=L("0000000",0,7-e.length)+e}}}return r},pow:function pow(t,r,e){return r===0?e:r%2===1?pow(t,r-1,e*t):pow(t*t,r/2,e)},log:function log(t){var r=0;var e=t;while(e>=4096){r+=12;e/=4096}while(e>=2){r+=1;e/=2}return r}};var gr=function toFixed(t){var r,e,n,i,a,f,l,s;r=u(t);r=Y(r)?0:Math.floor(r);if(r<0||r>20){throw new RangeError("Number.toFixed called with invalid number of decimals")}e=u(this);if(Y(e)){return"NaN"}if(e<=-1e21||e>=1e21){return o(e)}n="";if(e<0){n="-";e=-e}i="0";if(e>1e-21){a=dr.log(e*dr.pow(2,69,1))-69;f=a<0?e*dr.pow(2,-a,1):e/dr.pow(2,a,1);f*=4503599627370496;a=52-a;if(a>0){dr.multiply(0,f);l=r;while(l>=7){dr.multiply(1e7,0);l-=7}dr.multiply(dr.pow(10,l,1),0);l=a-1;while(l>=23){dr.divide(1<<23);l-=23}dr.divide(1<<l);dr.multiply(1,1);dr.divide(2);i=dr.numToString()}else{dr.multiply(0,f);dr.multiply(1<<-a,0);i=dr.numToString()+L("0.00000000000000000000",2,2+r)}}if(r>0){s=i.length;if(s<=r){i=n+L("0.0000000000000000000",0,r-s+2)+i}else{i=n+L(i,0,s-r)+"."+L(i,s-r)}}else{i=n+i}return i};$(l,{toFixed:gr},yr);var wr=function(){try{return 1..toPrecision(undefined)==="1"}catch(t){return true}}();var br=l.toPrecision;$(l,{toPrecision:function toPrecision(t){return typeof t==="undefined"?br.call(this):br.call(this,t)}},wr);if("ab".split(/(?:ab)*/).length!==2||".".split(/(.?)(.?)/).length!==4||"tesst".split(/(s)*/)[1]==="t"||"test".split(/(?:)/,-1).length!==4||"".split(/.?/).length||".".split(/()()/).length>1){(function(){var t=typeof/()??/.exec("")[1]==="undefined";var r=Math.pow(2,32)-1;f.split=function(e,n){var i=String(this);if(typeof e==="undefined"&&n===0){return[]}if(!M(e)){return X(this,e,n)}var a=[];var o=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,u,l,s,c;var h=new RegExp(e.source,o+"g");if(!t){u=new RegExp("^"+h.source+"$(?!\\s)",o)}var p=typeof n==="undefined"?r:Z.ToUint32(n);l=h.exec(i);while(l){s=l.index+l[0].length;if(s>f){K(a,L(i,f,l.index));if(!t&&l.length>1){l[0].replace(u,function(){for(var t=1;t<arguments.length-2;t++){if(typeof arguments[t]==="undefined"){l[t]=void 0}}})}if(l.length>1&&l.index<i.length){v.apply(a,H(l,1))}c=l[0].length;f=s;if(a.length>=p){break}}if(h.lastIndex===l.index){h.lastIndex++}l=h.exec(i)}if(f===i.length){if(c||!h.test("")){K(a,"")}}else{K(a,L(i,f))}return a.length>p?H(a,0,p):a}})()}else if("0".split(void 0,0).length){f.split=function split(t,r){if(typeof t==="undefined"&&r===0){return[]}return X(this,t,r)}}var Tr=f.replace;var mr=function(){var t=[];"x".replace(/x(.)?/g,function(r,e){K(t,e)});return t.length===1&&typeof t[0]==="undefined"}();if(!mr){f.replace=function replace(t,r){var e=D(r);var n=M(t)&&/\)[*?]/.test(t.source);if(!e||!n){return Tr.call(this,t,r)}else{var i=function(e){var n=arguments.length;var i=t.lastIndex;t.lastIndex=0;var a=t.exec(e)||[];t.lastIndex=i;K(a,arguments[n-2],arguments[n-1]);return r.apply(this,a)};return Tr.call(this,t,i)}}}var Dr=f.substr;var Sr="".substr&&"0b".substr(-1)!=="b";$(f,{substr:function substr(t,r){var e=t;if(t<0){e=w(this.length+t,0)}return Dr.call(this,e,r)}},Sr);var xr="	\n\x0B\f\r \xa0\u1680\u180e\u2000\u2001\u2002\u2003"+"\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028"+"\u2029\ufeff";var Or="\u200b";var jr="["+xr+"]";var Er=new RegExp("^"+jr+jr+"*");var Ir=new RegExp(jr+jr+"*$");var Mr=f.trim&&(xr.trim()||!Or.trim());$(f,{trim:function trim(){if(typeof this==="undefined"||this===null){throw new TypeError("can't convert "+this+" to object")}return o(this).replace(Er,"").replace(Ir,"")}},Mr);var Ur=d.bind(String.prototype.trim);var Fr=f.lastIndexOf&&"abc\u3042\u3044".lastIndexOf("\u3042\u3044",2)!==-1;$(f,{lastIndexOf:function lastIndexOf(t){if(typeof this==="undefined"||this===null){throw new TypeError("can't convert "+this+" to object")}var r=o(this);var e=o(t);var n=arguments.length>1?u(arguments[1]):NaN;var i=Y(n)?Infinity:Z.ToInteger(n);var a=b(w(i,0),r.length);var f=e.length;var l=a+f;while(l>0){l=w(0,l-f);var s=q(L(r,l,a+f),e);if(s!==-1){return l+s}}return-1}},Fr);var Nr=f.lastIndexOf;$(f,{lastIndexOf:function lastIndexOf(t){return Nr.apply(this,arguments)}},f.lastIndexOf.length!==1);if(parseInt(xr+"08")!==8||parseInt(xr+"0x16")!==22){parseInt=function(t){var r=/^[\-+]?0[xX]/;return function parseInt(e,n){var i=Ur(String(e));var a=u(n)||(r.test(i)?16:10);return t(i,a)}}(parseInt)}if(1/parseFloat("-0")!==-Infinity){parseFloat=function(t){return function parseFloat(r){var e=Ur(String(r));var n=t(e);return n===0&&L(e,0,1)==="-"?-0:n}}(parseFloat)}if(String(new RangeError("test"))!=="RangeError: test"){var Cr=function toString(){if(typeof this==="undefined"||this===null){throw new TypeError("can't convert "+this+" to object")}var t=this.name;if(typeof t==="undefined"){t="Error"}else if(typeof t!=="string"){t=o(t)}var r=this.message;if(typeof r==="undefined"){r=""}else if(typeof r!=="string"){r=o(r)}if(!t){return r}if(!r){return t}return t+": "+r};Error.prototype.toString=Cr}if(P){var kr=function(t,r){if(Q(t,r)){var e=Object.getOwnPropertyDescriptor(t,r);if(e.configurable){e.enumerable=false;Object.defineProperty(t,r,e)}}};kr(Error.prototype,"message");if(Error.prototype.message!==""){Error.prototype.message=""}kr(Error.prototype,"name")}if(String(/a/gim)!=="/a/gim"){var Ar=function toString(){var t="/"+this.source+"/";if(this.global){t+="g"}if(this.ignoreCase){t+="i"}if(this.multiline){t+="m"}return t};RegExp.prototype.toString=Ar}});
+//# sourceMappingURL=es5-shim.map
+/*!
+  * https://github.com/paulmillr/es6-shim
+  * @license es6-shim Copyright 2013-2016 by Paul Miller (http://paulmillr.com)
+  *   and contributors,  MIT License
+  * es6-shim: v0.35.3
+  * see https://github.com/paulmillr/es6-shim/blob/0.35.1/LICENSE
+  * Details and documentation:
+  * https://github.com/paulmillr/es6-shim/
+  */
+(function(e,t){if(typeof define==="function"&&define.amd){define(t)}else if(typeof exports==="object"){module.exports=t()}else{e.returnExports=t()}})(this,function(){"use strict";var e=Function.call.bind(Function.apply);var t=Function.call.bind(Function.call);var r=Array.isArray;var n=Object.keys;var o=function notThunker(t){return function notThunk(){return!e(t,this,arguments)}};var i=function(e){try{e();return false}catch(e){return true}};var a=function valueOrFalseIfThrows(e){try{return e()}catch(e){return false}};var u=o(i);var f=function(){return!i(function(){Object.defineProperty({},"x",{get:function(){}})})};var s=!!Object.defineProperty&&f();var c=function foo(){}.name==="foo";var l=Function.call.bind(Array.prototype.forEach);var p=Function.call.bind(Array.prototype.reduce);var v=Function.call.bind(Array.prototype.filter);var y=Function.call.bind(Array.prototype.some);var h=function(e,t,r,n){if(!n&&t in e){return}if(s){Object.defineProperty(e,t,{configurable:true,enumerable:false,writable:true,value:r})}else{e[t]=r}};var b=function(e,t,r){l(n(t),function(n){var o=t[n];h(e,n,o,!!r)})};var g=Function.call.bind(Object.prototype.toString);var d=typeof/abc/==="function"?function IsCallableSlow(e){return typeof e==="function"&&g(e)==="[object Function]"}:function IsCallableFast(e){return typeof e==="function"};var m={getter:function(e,t,r){if(!s){throw new TypeError("getters require true ES5 support")}Object.defineProperty(e,t,{configurable:true,enumerable:false,get:r})},proxy:function(e,t,r){if(!s){throw new TypeError("getters require true ES5 support")}var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,{configurable:n.configurable,enumerable:n.enumerable,get:function getKey(){return e[t]},set:function setKey(r){e[t]=r}})},redefine:function(e,t,r){if(s){var n=Object.getOwnPropertyDescriptor(e,t);n.value=r;Object.defineProperty(e,t,n)}else{e[t]=r}},defineByDescriptor:function(e,t,r){if(s){Object.defineProperty(e,t,r)}else if("value"in r){e[t]=r.value}},preserveToString:function(e,t){if(t&&d(t.toString)){h(e,"toString",t.toString.bind(t),true)}}};var O=Object.create||function(e,t){var r=function Prototype(){};r.prototype=e;var o=new r;if(typeof t!=="undefined"){n(t).forEach(function(e){m.defineByDescriptor(o,e,t[e])})}return o};var w=function(e,t){if(!Object.setPrototypeOf){return false}return a(function(){var r=function Subclass(t){var r=new e(t);Object.setPrototypeOf(r,Subclass.prototype);return r};Object.setPrototypeOf(r,e);r.prototype=O(e.prototype,{constructor:{value:r}});return t(r)})};var j=function(){if(typeof self!=="undefined"){return self}if(typeof window!=="undefined"){return window}if(typeof global!=="undefined"){return global}throw new Error("unable to locate global object")};var S=j();var T=S.isFinite;var I=Function.call.bind(String.prototype.indexOf);var E=Function.apply.bind(Array.prototype.indexOf);var P=Function.call.bind(Array.prototype.concat);var C=Function.call.bind(String.prototype.slice);var M=Function.call.bind(Array.prototype.push);var x=Function.apply.bind(Array.prototype.push);var N=Function.call.bind(Array.prototype.shift);var A=Math.max;var R=Math.min;var _=Math.floor;var k=Math.abs;var F=Math.exp;var L=Math.log;var D=Math.sqrt;var z=Function.call.bind(Object.prototype.hasOwnProperty);var q;var W=function(){};var G=S.Map;var H=G&&G.prototype["delete"];var V=G&&G.prototype.get;var B=G&&G.prototype.has;var U=G&&G.prototype.set;var $=S.Symbol||{};var J=$.species||"@@species";var X=Number.isNaN||function isNaN(e){return e!==e};var K=Number.isFinite||function isFinite(e){return typeof e==="number"&&T(e)};var Z=d(Math.sign)?Math.sign:function sign(e){var t=Number(e);if(t===0){return t}if(X(t)){return t}return t<0?-1:1};var Y=function isArguments(e){return g(e)==="[object Arguments]"};var Q=function isArguments(e){return e!==null&&typeof e==="object"&&typeof e.length==="number"&&e.length>=0&&g(e)!=="[object Array]"&&g(e.callee)==="[object Function]"};var ee=Y(arguments)?Y:Q;var te={primitive:function(e){return e===null||typeof e!=="function"&&typeof e!=="object"},string:function(e){return g(e)==="[object String]"},regex:function(e){return g(e)==="[object RegExp]"},symbol:function(e){return typeof S.Symbol==="function"&&typeof e==="symbol"}};var re=function overrideNative(e,t,r){var n=e[t];h(e,t,r,true);m.preserveToString(e[t],n)};var ne=typeof $==="function"&&typeof $["for"]==="function"&&te.symbol($());var oe=te.symbol($.iterator)?$.iterator:"_es6-shim iterator_";if(S.Set&&typeof(new S.Set)["@@iterator"]==="function"){oe="@@iterator"}if(!S.Reflect){h(S,"Reflect",{},true)}var ie=S.Reflect;var ae=String;var ue=typeof document==="undefined"||!document?null:document.all;var fe=ue==null?function isNullOrUndefined(e){return e==null}:function isNullOrUndefinedAndNotDocumentAll(e){return e==null&&e!==ue};var se={Call:function Call(t,r){var n=arguments.length>2?arguments[2]:[];if(!se.IsCallable(t)){throw new TypeError(t+" is not a function")}return e(t,r,n)},RequireObjectCoercible:function(e,t){if(fe(e)){throw new TypeError(t||"Cannot call method on "+e)}return e},TypeIsObject:function(e){if(e===void 0||e===null||e===true||e===false){return false}return typeof e==="function"||typeof e==="object"||e===ue},ToObject:function(e,t){return Object(se.RequireObjectCoercible(e,t))},IsCallable:d,IsConstructor:function(e){return se.IsCallable(e)},ToInt32:function(e){return se.ToNumber(e)>>0},ToUint32:function(e){return se.ToNumber(e)>>>0},ToNumber:function(e){if(g(e)==="[object Symbol]"){throw new TypeError("Cannot convert a Symbol value to a number")}return+e},ToInteger:function(e){var t=se.ToNumber(e);if(X(t)){return 0}if(t===0||!K(t)){return t}return(t>0?1:-1)*_(k(t))},ToLength:function(e){var t=se.ToInteger(e);if(t<=0){return 0}if(t>Number.MAX_SAFE_INTEGER){return Number.MAX_SAFE_INTEGER}return t},SameValue:function(e,t){if(e===t){if(e===0){return 1/e===1/t}return true}return X(e)&&X(t)},SameValueZero:function(e,t){return e===t||X(e)&&X(t)},IsIterable:function(e){return se.TypeIsObject(e)&&(typeof e[oe]!=="undefined"||ee(e))},GetIterator:function(e){if(ee(e)){return new q(e,"value")}var t=se.GetMethod(e,oe);if(!se.IsCallable(t)){throw new TypeError("value is not an iterable")}var r=se.Call(t,e);if(!se.TypeIsObject(r)){throw new TypeError("bad iterator")}return r},GetMethod:function(e,t){var r=se.ToObject(e)[t];if(fe(r)){return void 0}if(!se.IsCallable(r)){throw new TypeError("Method not callable: "+t)}return r},IteratorComplete:function(e){return!!e.done},IteratorClose:function(e,t){var r=se.GetMethod(e,"return");if(r===void 0){return}var n,o;try{n=se.Call(r,e)}catch(e){o=e}if(t){return}if(o){throw o}if(!se.TypeIsObject(n)){throw new TypeError("Iterator's return method returned a non-object.")}},IteratorNext:function(e){var t=arguments.length>1?e.next(arguments[1]):e.next();if(!se.TypeIsObject(t)){throw new TypeError("bad iterator")}return t},IteratorStep:function(e){var t=se.IteratorNext(e);var r=se.IteratorComplete(t);return r?false:t},Construct:function(e,t,r,n){var o=typeof r==="undefined"?e:r;if(!n&&ie.construct){return ie.construct(e,t,o)}var i=o.prototype;if(!se.TypeIsObject(i)){i=Object.prototype}var a=O(i);var u=se.Call(e,a,t);return se.TypeIsObject(u)?u:a},SpeciesConstructor:function(e,t){var r=e.constructor;if(r===void 0){return t}if(!se.TypeIsObject(r)){throw new TypeError("Bad constructor")}var n=r[J];if(fe(n)){return t}if(!se.IsConstructor(n)){throw new TypeError("Bad @@species")}return n},CreateHTML:function(e,t,r,n){var o=se.ToString(e);var i="<"+t;if(r!==""){var a=se.ToString(n);var u=a.replace(/"/g,"&quot;");i+=" "+r+'="'+u+'"'}var f=i+">";var s=f+o;return s+"</"+t+">"},IsRegExp:function IsRegExp(e){if(!se.TypeIsObject(e)){return false}var t=e[$.match];if(typeof t!=="undefined"){return!!t}return te.regex(e)},ToString:function ToString(e){return ae(e)}};if(s&&ne){var ce=function defineWellKnownSymbol(e){if(te.symbol($[e])){return $[e]}var t=$["for"]("Symbol."+e);Object.defineProperty($,e,{configurable:false,enumerable:false,writable:false,value:t});return t};if(!te.symbol($.search)){var le=ce("search");var pe=String.prototype.search;h(RegExp.prototype,le,function search(e){return se.Call(pe,e,[this])});var ve=function search(e){var t=se.RequireObjectCoercible(this);if(!fe(e)){var r=se.GetMethod(e,le);if(typeof r!=="undefined"){return se.Call(r,e,[t])}}return se.Call(pe,t,[se.ToString(e)])};re(String.prototype,"search",ve)}if(!te.symbol($.replace)){var ye=ce("replace");var he=String.prototype.replace;h(RegExp.prototype,ye,function replace(e,t){return se.Call(he,e,[this,t])});var be=function replace(e,t){var r=se.RequireObjectCoercible(this);if(!fe(e)){var n=se.GetMethod(e,ye);if(typeof n!=="undefined"){return se.Call(n,e,[r,t])}}return se.Call(he,r,[se.ToString(e),t])};re(String.prototype,"replace",be)}if(!te.symbol($.split)){var ge=ce("split");var de=String.prototype.split;h(RegExp.prototype,ge,function split(e,t){return se.Call(de,e,[this,t])});var me=function split(e,t){var r=se.RequireObjectCoercible(this);if(!fe(e)){var n=se.GetMethod(e,ge);if(typeof n!=="undefined"){return se.Call(n,e,[r,t])}}return se.Call(de,r,[se.ToString(e),t])};re(String.prototype,"split",me)}var Oe=te.symbol($.match);var we=Oe&&function(){var e={};e[$.match]=function(){return 42};return"a".match(e)!==42}();if(!Oe||we){var je=ce("match");var Se=String.prototype.match;h(RegExp.prototype,je,function match(e){return se.Call(Se,e,[this])});var Te=function match(e){var t=se.RequireObjectCoercible(this);if(!fe(e)){var r=se.GetMethod(e,je);if(typeof r!=="undefined"){return se.Call(r,e,[t])}}return se.Call(Se,t,[se.ToString(e)])};re(String.prototype,"match",Te)}}var Ie=function wrapConstructor(e,t,r){m.preserveToString(t,e);if(Object.setPrototypeOf){Object.setPrototypeOf(e,t)}if(s){l(Object.getOwnPropertyNames(e),function(n){if(n in W||r[n]){return}m.proxy(e,n,t)})}else{l(Object.keys(e),function(n){if(n in W||r[n]){return}t[n]=e[n]})}t.prototype=e.prototype;m.redefine(e.prototype,"constructor",t)};var Ee=function(){return this};var Pe=function(e){if(s&&!z(e,J)){m.getter(e,J,Ee)}};var Ce=function(e,t){var r=t||function iterator(){return this};h(e,oe,r);if(!e[oe]&&te.symbol(oe)){e[oe]=r}};var Me=function createDataProperty(e,t,r){if(s){Object.defineProperty(e,t,{configurable:true,enumerable:true,writable:true,value:r})}else{e[t]=r}};var xe=function createDataPropertyOrThrow(e,t,r){Me(e,t,r);if(!se.SameValue(e[t],r)){throw new TypeError("property is nonconfigurable")}};var Ne=function(e,t,r,n){if(!se.TypeIsObject(e)){throw new TypeError("Constructor requires `new`: "+t.name)}var o=t.prototype;if(!se.TypeIsObject(o)){o=r}var i=O(o);for(var a in n){if(z(n,a)){var u=n[a];h(i,a,u,true)}}return i};if(String.fromCodePoint&&String.fromCodePoint.length!==1){var Ae=String.fromCodePoint;re(String,"fromCodePoint",function fromCodePoint(e){return se.Call(Ae,this,arguments)})}var Re={fromCodePoint:function fromCodePoint(e){var t=[];var r;for(var n=0,o=arguments.length;n<o;n++){r=Number(arguments[n]);if(!se.SameValue(r,se.ToInteger(r))||r<0||r>1114111){throw new RangeError("Invalid code point "+r)}if(r<65536){M(t,String.fromCharCode(r))}else{r-=65536;M(t,String.fromCharCode((r>>10)+55296));M(t,String.fromCharCode(r%1024+56320))}}return t.join("")},raw:function raw(e){var t=se.ToObject(e,"bad callSite");var r=se.ToObject(t.raw,"bad raw value");var n=r.length;var o=se.ToLength(n);if(o<=0){return""}var i=[];var a=0;var u,f,s,c;while(a<o){u=se.ToString(a);s=se.ToString(r[u]);M(i,s);if(a+1>=o){break}f=a+1<arguments.length?arguments[a+1]:"";c=se.ToString(f);M(i,c);a+=1}return i.join("")}};if(String.raw&&String.raw({raw:{0:"x",1:"y",length:2}})!=="xy"){re(String,"raw",Re.raw)}b(String,Re);var _e=function repeat(e,t){if(t<1){return""}if(t%2){return repeat(e,t-1)+e}var r=repeat(e,t/2);return r+r};var ke=Infinity;var Fe={repeat:function repeat(e){var t=se.ToString(se.RequireObjectCoercible(this));var r=se.ToInteger(e);if(r<0||r>=ke){throw new RangeError("repeat count must be less than infinity and not overflow maximum string size")}return _e(t,r)},startsWith:function startsWith(e){var t=se.ToString(se.RequireObjectCoercible(this));if(se.IsRegExp(e)){throw new TypeError('Cannot call method "startsWith" with a regex')}var r=se.ToString(e);var n;if(arguments.length>1){n=arguments[1]}var o=A(se.ToInteger(n),0);return C(t,o,o+r.length)===r},endsWith:function endsWith(e){var t=se.ToString(se.RequireObjectCoercible(this));if(se.IsRegExp(e)){throw new TypeError('Cannot call method "endsWith" with a regex')}var r=se.ToString(e);var n=t.length;var o;if(arguments.length>1){o=arguments[1]}var i=typeof o==="undefined"?n:se.ToInteger(o);var a=R(A(i,0),n);return C(t,a-r.length,a)===r},includes:function includes(e){if(se.IsRegExp(e)){throw new TypeError('"includes" does not accept a RegExp')}var t=se.ToString(e);var r;if(arguments.length>1){r=arguments[1]}return I(this,t,r)!==-1},codePointAt:function codePointAt(e){var t=se.ToString(se.RequireObjectCoercible(this));var r=se.ToInteger(e);var n=t.length;if(r>=0&&r<n){var o=t.charCodeAt(r);var i=r+1===n;if(o<55296||o>56319||i){return o}var a=t.charCodeAt(r+1);if(a<56320||a>57343){return o}return(o-55296)*1024+(a-56320)+65536}}};if(String.prototype.includes&&"a".includes("a",Infinity)!==false){re(String.prototype,"includes",Fe.includes)}if(String.prototype.startsWith&&String.prototype.endsWith){var Le=i(function(){"/a/".startsWith(/a/)});var De=a(function(){return"abc".startsWith("a",Infinity)===false});if(!Le||!De){re(String.prototype,"startsWith",Fe.startsWith);re(String.prototype,"endsWith",Fe.endsWith)}}if(ne){var ze=a(function(){var e=/a/;e[$.match]=false;return"/a/".startsWith(e)});if(!ze){re(String.prototype,"startsWith",Fe.startsWith)}var qe=a(function(){var e=/a/;e[$.match]=false;return"/a/".endsWith(e)});if(!qe){re(String.prototype,"endsWith",Fe.endsWith)}var We=a(function(){var e=/a/;e[$.match]=false;return"/a/".includes(e)});if(!We){re(String.prototype,"includes",Fe.includes)}}b(String.prototype,Fe);var Ge=["\t\n\v\f\r \xa0\u1680\u180e\u2000\u2001\u2002\u2003","\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028","\u2029\ufeff"].join("");var He=new RegExp("(^["+Ge+"]+)|(["+Ge+"]+$)","g");var Ve=function trim(){return se.ToString(se.RequireObjectCoercible(this)).replace(He,"")};var Be=["\x85","\u200b","\ufffe"].join("");var Ue=new RegExp("["+Be+"]","g");var $e=/^[-+]0x[0-9a-f]+$/i;var Je=Be.trim().length!==Be.length;h(String.prototype,"trim",Ve,Je);var Xe=function(e){return{value:e,done:arguments.length===0}};var Ke=function(e){se.RequireObjectCoercible(e);this._s=se.ToString(e);this._i=0};Ke.prototype.next=function(){var e=this._s;var t=this._i;if(typeof e==="undefined"||t>=e.length){this._s=void 0;return Xe()}var r=e.charCodeAt(t);var n,o;if(r<55296||r>56319||t+1===e.length){o=1}else{n=e.charCodeAt(t+1);o=n<56320||n>57343?1:2}this._i=t+o;return Xe(e.substr(t,o))};Ce(Ke.prototype);Ce(String.prototype,function(){return new Ke(this)});var Ze={from:function from(e){var r=this;var n;if(arguments.length>1){n=arguments[1]}var o,i;if(typeof n==="undefined"){o=false}else{if(!se.IsCallable(n)){throw new TypeError("Array.from: when provided, the second argument must be a function")}if(arguments.length>2){i=arguments[2]}o=true}var a=typeof(ee(e)||se.GetMethod(e,oe))!=="undefined";var u,f,s;if(a){f=se.IsConstructor(r)?Object(new r):[];var c=se.GetIterator(e);var l,p;s=0;while(true){l=se.IteratorStep(c);if(l===false){break}p=l.value;try{if(o){p=typeof i==="undefined"?n(p,s):t(n,i,p,s)}f[s]=p}catch(e){se.IteratorClose(c,true);throw e}s+=1}u=s}else{var v=se.ToObject(e);u=se.ToLength(v.length);f=se.IsConstructor(r)?Object(new r(u)):new Array(u);var y;for(s=0;s<u;++s){y=v[s];if(o){y=typeof i==="undefined"?n(y,s):t(n,i,y,s)}xe(f,s,y)}}f.length=u;return f},of:function of(){var e=arguments.length;var t=this;var n=r(t)||!se.IsCallable(t)?new Array(e):se.Construct(t,[e]);for(var o=0;o<e;++o){xe(n,o,arguments[o])}n.length=e;return n}};b(Array,Ze);Pe(Array);q=function(e,t){this.i=0;this.array=e;this.kind=t};b(q.prototype,{next:function(){var e=this.i;var t=this.array;if(!(this instanceof q)){throw new TypeError("Not an ArrayIterator")}if(typeof t!=="undefined"){var r=se.ToLength(t.length);for(;e<r;e++){var n=this.kind;var o;if(n==="key"){o=e}else if(n==="value"){o=t[e]}else if(n==="entry"){o=[e,t[e]]}this.i=e+1;return Xe(o)}}this.array=void 0;return Xe()}});Ce(q.prototype);var Ye=Array.of===Ze.of||function(){var e=function Foo(e){this.length=e};e.prototype=[];var t=Array.of.apply(e,[1,2]);return t instanceof e&&t.length===2}();if(!Ye){re(Array,"of",Ze.of)}var Qe={copyWithin:function copyWithin(e,t){var r=se.ToObject(this);var n=se.ToLength(r.length);var o=se.ToInteger(e);var i=se.ToInteger(t);var a=o<0?A(n+o,0):R(o,n);var u=i<0?A(n+i,0):R(i,n);var f;if(arguments.length>2){f=arguments[2]}var s=typeof f==="undefined"?n:se.ToInteger(f);var c=s<0?A(n+s,0):R(s,n);var l=R(c-u,n-a);var p=1;if(u<a&&a<u+l){p=-1;u+=l-1;a+=l-1}while(l>0){if(u in r){r[a]=r[u]}else{delete r[a]}u+=p;a+=p;l-=1}return r},fill:function fill(e){var t;if(arguments.length>1){t=arguments[1]}var r;if(arguments.length>2){r=arguments[2]}var n=se.ToObject(this);var o=se.ToLength(n.length);t=se.ToInteger(typeof t==="undefined"?0:t);r=se.ToInteger(typeof r==="undefined"?o:r);var i=t<0?A(o+t,0):R(t,o);var a=r<0?o+r:r;for(var u=i;u<o&&u<a;++u){n[u]=e}return n},find:function find(e){var r=se.ToObject(this);var n=se.ToLength(r.length);if(!se.IsCallable(e)){throw new TypeError("Array#find: predicate must be a function")}var o=arguments.length>1?arguments[1]:null;for(var i=0,a;i<n;i++){a=r[i];if(o){if(t(e,o,a,i,r)){return a}}else if(e(a,i,r)){return a}}},findIndex:function findIndex(e){var r=se.ToObject(this);var n=se.ToLength(r.length);if(!se.IsCallable(e)){throw new TypeError("Array#findIndex: predicate must be a function")}var o=arguments.length>1?arguments[1]:null;for(var i=0;i<n;i++){if(o){if(t(e,o,r[i],i,r)){return i}}else if(e(r[i],i,r)){return i}}return-1},keys:function keys(){return new q(this,"key")},values:function values(){return new q(this,"value")},entries:function entries(){return new q(this,"entry")}};if(Array.prototype.keys&&!se.IsCallable([1].keys().next)){delete Array.prototype.keys}if(Array.prototype.entries&&!se.IsCallable([1].entries().next)){delete Array.prototype.entries}if(Array.prototype.keys&&Array.prototype.entries&&!Array.prototype.values&&Array.prototype[oe]){b(Array.prototype,{values:Array.prototype[oe]});if(te.symbol($.unscopables)){Array.prototype[$.unscopables].values=true}}if(c&&Array.prototype.values&&Array.prototype.values.name!=="values"){var et=Array.prototype.values;re(Array.prototype,"values",function values(){return se.Call(et,this,arguments)});h(Array.prototype,oe,Array.prototype.values,true)}b(Array.prototype,Qe);if(1/[true].indexOf(true,-0)<0){h(Array.prototype,"indexOf",function indexOf(e){var t=E(this,arguments);if(t===0&&1/t<0){return 0}return t},true)}Ce(Array.prototype,function(){return this.values()});if(Object.getPrototypeOf){Ce(Object.getPrototypeOf([].values()))}var tt=function(){return a(function(){return Array.from({length:-1}).length===0})}();var rt=function(){var e=Array.from([0].entries());return e.length===1&&r(e[0])&&e[0][0]===0&&e[0][1]===0}();if(!tt||!rt){re(Array,"from",Ze.from)}var nt=function(){return a(function(){return Array.from([0],void 0)})}();if(!nt){var ot=Array.from;re(Array,"from",function from(e){if(arguments.length>1&&typeof arguments[1]!=="undefined"){return se.Call(ot,this,arguments)}else{return t(ot,this,e)}})}var it=-(Math.pow(2,32)-1);var at=function(e,r){var n={length:it};n[r?(n.length>>>0)-1:0]=true;return a(function(){t(e,n,function(){throw new RangeError("should not reach here")},[]);return true})};if(!at(Array.prototype.forEach)){var ut=Array.prototype.forEach;re(Array.prototype,"forEach",function forEach(e){return se.Call(ut,this.length>=0?this:[],arguments)},true)}if(!at(Array.prototype.map)){var ft=Array.prototype.map;re(Array.prototype,"map",function map(e){return se.Call(ft,this.length>=0?this:[],arguments)},true)}if(!at(Array.prototype.filter)){var st=Array.prototype.filter;re(Array.prototype,"filter",function filter(e){return se.Call(st,this.length>=0?this:[],arguments)},true)}if(!at(Array.prototype.some)){var ct=Array.prototype.some;re(Array.prototype,"some",function some(e){return se.Call(ct,this.length>=0?this:[],arguments)},true)}if(!at(Array.prototype.every)){var lt=Array.prototype.every;re(Array.prototype,"every",function every(e){return se.Call(lt,this.length>=0?this:[],arguments)},true)}if(!at(Array.prototype.reduce)){var pt=Array.prototype.reduce;re(Array.prototype,"reduce",function reduce(e){return se.Call(pt,this.length>=0?this:[],arguments)},true)}if(!at(Array.prototype.reduceRight,true)){var vt=Array.prototype.reduceRight;re(Array.prototype,"reduceRight",function reduceRight(e){return se.Call(vt,this.length>=0?this:[],arguments)},true)}var yt=Number("0o10")!==8;var ht=Number("0b10")!==2;var bt=y(Be,function(e){return Number(e+0+e)===0});if(yt||ht||bt){var gt=Number;var dt=/^0b[01]+$/i;var mt=/^0o[0-7]+$/i;var Ot=dt.test.bind(dt);var wt=mt.test.bind(mt);var jt=function(e){var t;if(typeof e.valueOf==="function"){t=e.valueOf();if(te.primitive(t)){return t}}if(typeof e.toString==="function"){t=e.toString();if(te.primitive(t)){return t}}throw new TypeError("No default value")};var St=Ue.test.bind(Ue);var Tt=$e.test.bind($e);var It=function(){var e=function Number(t){var r;if(arguments.length>0){r=te.primitive(t)?t:jt(t,"number")}else{r=0}if(typeof r==="string"){r=se.Call(Ve,r);if(Ot(r)){r=parseInt(C(r,2),2)}else if(wt(r)){r=parseInt(C(r,2),8)}else if(St(r)||Tt(r)){r=NaN}}var n=this;var o=a(function(){gt.prototype.valueOf.call(n);return true});if(n instanceof e&&!o){return new gt(r)}return gt(r)};return e}();Ie(gt,It,{});b(It,{NaN:gt.NaN,MAX_VALUE:gt.MAX_VALUE,MIN_VALUE:gt.MIN_VALUE,NEGATIVE_INFINITY:gt.NEGATIVE_INFINITY,POSITIVE_INFINITY:gt.POSITIVE_INFINITY});Number=It;m.redefine(S,"Number",It)}var Et=Math.pow(2,53)-1;b(Number,{MAX_SAFE_INTEGER:Et,MIN_SAFE_INTEGER:-Et,EPSILON:2.220446049250313e-16,parseInt:S.parseInt,parseFloat:S.parseFloat,isFinite:K,isInteger:function isInteger(e){return K(e)&&se.ToInteger(e)===e},isSafeInteger:function isSafeInteger(e){return Number.isInteger(e)&&k(e)<=Number.MAX_SAFE_INTEGER},isNaN:X});h(Number,"parseInt",S.parseInt,Number.parseInt!==S.parseInt);if([,1].find(function(){return true})===1){re(Array.prototype,"find",Qe.find)}if([,1].findIndex(function(){return true})!==0){re(Array.prototype,"findIndex",Qe.findIndex)}var Pt=Function.bind.call(Function.bind,Object.prototype.propertyIsEnumerable);var Ct=function ensureEnumerable(e,t){if(s&&Pt(e,t)){Object.defineProperty(e,t,{enumerable:false})}};var Mt=function sliceArgs(){var e=Number(this);var t=arguments.length;var r=t-e;var n=new Array(r<0?0:r);for(var o=e;o<t;++o){n[o-e]=arguments[o]}return n};var xt=function assignTo(e){return function assignToSource(t,r){t[r]=e[r];return t}};var Nt=function(e,t){var r=n(Object(t));var o;if(se.IsCallable(Object.getOwnPropertySymbols)){o=v(Object.getOwnPropertySymbols(Object(t)),Pt(t))}return p(P(r,o||[]),xt(t),e)};var At={assign:function(e,t){var r=se.ToObject(e,"Cannot convert undefined or null to object");return p(se.Call(Mt,1,arguments),Nt,r)},is:function is(e,t){return se.SameValue(e,t)}};var Rt=Object.assign&&Object.preventExtensions&&function(){var e=Object.preventExtensions({1:2});try{Object.assign(e,"xy")}catch(t){return e[1]==="y"}}();if(Rt){re(Object,"assign",At.assign)}b(Object,At);if(s){var _t={setPrototypeOf:function(e,r){var n;var o=function(e,t){if(!se.TypeIsObject(e)){throw new TypeError("cannot set prototype on a non-object")}if(!(t===null||se.TypeIsObject(t))){throw new TypeError("can only set prototype to an object or null"+t)}};var i=function(e,r){o(e,r);t(n,e,r);return e};try{n=e.getOwnPropertyDescriptor(e.prototype,r).set;t(n,{},null)}catch(t){if(e.prototype!=={}[r]){return}n=function(e){this[r]=e};i.polyfill=i(i({},null),e.prototype)instanceof e}return i}(Object,"__proto__")};b(Object,_t)}if(Object.setPrototypeOf&&Object.getPrototypeOf&&Object.getPrototypeOf(Object.setPrototypeOf({},null))!==null&&Object.getPrototypeOf(Object.create(null))===null){(function(){var e=Object.create(null);var t=Object.getPrototypeOf;var r=Object.setPrototypeOf;Object.getPrototypeOf=function(r){var n=t(r);return n===e?null:n};Object.setPrototypeOf=function(t,n){var o=n===null?e:n;return r(t,o)};Object.setPrototypeOf.polyfill=false})()}var kt=!i(function(){Object.keys("foo")});if(!kt){var Ft=Object.keys;re(Object,"keys",function keys(e){return Ft(se.ToObject(e))});n=Object.keys}var Lt=i(function(){Object.keys(/a/g)});if(Lt){var Dt=Object.keys;re(Object,"keys",function keys(e){if(te.regex(e)){var t=[];for(var r in e){if(z(e,r)){M(t,r)}}return t}return Dt(e)});n=Object.keys}if(Object.getOwnPropertyNames){var zt=!i(function(){Object.getOwnPropertyNames("foo")});if(!zt){var qt=typeof window==="object"?Object.getOwnPropertyNames(window):[];var Wt=Object.getOwnPropertyNames;re(Object,"getOwnPropertyNames",function getOwnPropertyNames(e){var t=se.ToObject(e);if(g(t)==="[object Window]"){try{return Wt(t)}catch(e){return P([],qt)}}return Wt(t)})}}if(Object.getOwnPropertyDescriptor){var Gt=!i(function(){Object.getOwnPropertyDescriptor("foo","bar")});if(!Gt){var Ht=Object.getOwnPropertyDescriptor;re(Object,"getOwnPropertyDescriptor",function getOwnPropertyDescriptor(e,t){return Ht(se.ToObject(e),t)})}}if(Object.seal){var Vt=!i(function(){Object.seal("foo")});if(!Vt){var Bt=Object.seal;re(Object,"seal",function seal(e){if(!se.TypeIsObject(e)){return e}return Bt(e)})}}if(Object.isSealed){var Ut=!i(function(){Object.isSealed("foo")});if(!Ut){var $t=Object.isSealed;re(Object,"isSealed",function isSealed(e){if(!se.TypeIsObject(e)){return true}return $t(e)})}}if(Object.freeze){var Jt=!i(function(){Object.freeze("foo")});if(!Jt){var Xt=Object.freeze;re(Object,"freeze",function freeze(e){if(!se.TypeIsObject(e)){return e}return Xt(e)})}}if(Object.isFrozen){var Kt=!i(function(){Object.isFrozen("foo")});if(!Kt){var Zt=Object.isFrozen;re(Object,"isFrozen",function isFrozen(e){if(!se.TypeIsObject(e)){return true}return Zt(e)})}}if(Object.preventExtensions){var Yt=!i(function(){Object.preventExtensions("foo")});if(!Yt){var Qt=Object.preventExtensions;re(Object,"preventExtensions",function preventExtensions(e){if(!se.TypeIsObject(e)){return e}return Qt(e)})}}if(Object.isExtensible){var er=!i(function(){Object.isExtensible("foo")});if(!er){var tr=Object.isExtensible;re(Object,"isExtensible",function isExtensible(e){if(!se.TypeIsObject(e)){return false}return tr(e)})}}if(Object.getPrototypeOf){var rr=!i(function(){Object.getPrototypeOf("foo")});if(!rr){var nr=Object.getPrototypeOf;re(Object,"getPrototypeOf",function getPrototypeOf(e){return nr(se.ToObject(e))})}}var or=s&&function(){var e=Object.getOwnPropertyDescriptor(RegExp.prototype,"flags");return e&&se.IsCallable(e.get)}();if(s&&!or){var ir=function flags(){if(!se.TypeIsObject(this)){throw new TypeError("Method called on incompatible type: must be an object.")}var e="";if(this.global){e+="g"}if(this.ignoreCase){e+="i"}if(this.multiline){e+="m"}if(this.unicode){e+="u"}if(this.sticky){e+="y"}return e};m.getter(RegExp.prototype,"flags",ir)}var ar=s&&a(function(){return String(new RegExp(/a/g,"i"))==="/a/i"});var ur=ne&&s&&function(){var e=/./;e[$.match]=false;return RegExp(e)===e}();var fr=a(function(){return RegExp.prototype.toString.call({source:"abc"})==="/abc/"});var sr=fr&&a(function(){return RegExp.prototype.toString.call({source:"a",flags:"b"})==="/a/b"});if(!fr||!sr){var cr=RegExp.prototype.toString;h(RegExp.prototype,"toString",function toString(){var e=se.RequireObjectCoercible(this);if(te.regex(e)){return t(cr,e)}var r=ae(e.source);var n=ae(e.flags);return"/"+r+"/"+n},true);m.preserveToString(RegExp.prototype.toString,cr)}if(s&&(!ar||ur)){var lr=Object.getOwnPropertyDescriptor(RegExp.prototype,"flags").get;var pr=Object.getOwnPropertyDescriptor(RegExp.prototype,"source")||{};var vr=function(){return this.source};var yr=se.IsCallable(pr.get)?pr.get:vr;var hr=RegExp;var br=function(){return function RegExp(e,t){var r=se.IsRegExp(e);var n=this instanceof RegExp;if(!n&&r&&typeof t==="undefined"&&e.constructor===RegExp){return e}var o=e;var i=t;if(te.regex(e)){o=se.Call(yr,e);i=typeof t==="undefined"?se.Call(lr,e):t;return new RegExp(o,i)}else if(r){o=e.source;i=typeof t==="undefined"?e.flags:t}return new hr(e,t)}}();Ie(hr,br,{$input:true});RegExp=br;m.redefine(S,"RegExp",br)}if(s){var gr={input:"$_",lastMatch:"$&",lastParen:"$+",leftContext:"$`",rightContext:"$'"};l(n(gr),function(e){if(e in RegExp&&!(gr[e]in RegExp)){m.getter(RegExp,gr[e],function get(){return RegExp[e]})}})}Pe(RegExp);var dr=1/Number.EPSILON;var mr=function roundTiesToEven(e){return e+dr-dr};var Or=Math.pow(2,-23);var wr=Math.pow(2,127)*(2-Or);var jr=Math.pow(2,-126);var Sr=Math.E;var Tr=Math.LOG2E;var Ir=Math.LOG10E;var Er=Number.prototype.clz;delete Number.prototype.clz;var Pr={acosh:function acosh(e){var t=Number(e);if(X(t)||e<1){return NaN}if(t===1){return 0}if(t===Infinity){return t}return L(t/Sr+D(t+1)*D(t-1)/Sr)+1},asinh:function asinh(e){var t=Number(e);if(t===0||!T(t)){return t}return t<0?-asinh(-t):L(t+D(t*t+1))},atanh:function atanh(e){var t=Number(e);if(X(t)||t<-1||t>1){return NaN}if(t===-1){return-Infinity}if(t===1){return Infinity}if(t===0){return t}return.5*L((1+t)/(1-t))},cbrt:function cbrt(e){var t=Number(e);if(t===0){return t}var r=t<0;var n;if(r){t=-t}if(t===Infinity){n=Infinity}else{n=F(L(t)/3);n=(t/(n*n)+2*n)/3}return r?-n:n},clz32:function clz32(e){var t=Number(e);var r=se.ToUint32(t);if(r===0){return 32}return Er?se.Call(Er,r):31-_(L(r+.5)*Tr)},cosh:function cosh(e){var t=Number(e);if(t===0){return 1}if(X(t)){return NaN}if(!T(t)){return Infinity}if(t<0){t=-t}if(t>21){return F(t)/2}return(F(t)+F(-t))/2},expm1:function expm1(e){var t=Number(e);if(t===-Infinity){return-1}if(!T(t)||t===0){return t}if(k(t)>.5){return F(t)-1}var r=t;var n=0;var o=1;while(n+r!==n){n+=r;o+=1;r*=t/o}return n},hypot:function hypot(e,t){var r=0;var n=0;for(var o=0;o<arguments.length;++o){var i=k(Number(arguments[o]));if(n<i){r*=n/i*(n/i);r+=1;n=i}else{r+=i>0?i/n*(i/n):i}}return n===Infinity?Infinity:n*D(r)},log2:function log2(e){return L(e)*Tr},log10:function log10(e){return L(e)*Ir},log1p:function log1p(e){var t=Number(e);if(t<-1||X(t)){return NaN}if(t===0||t===Infinity){return t}if(t===-1){return-Infinity}return 1+t-1===0?t:t*(L(1+t)/(1+t-1))},sign:Z,sinh:function sinh(e){var t=Number(e);if(!T(t)||t===0){return t}if(k(t)<1){return(Math.expm1(t)-Math.expm1(-t))/2}return(F(t-1)-F(-t-1))*Sr/2},tanh:function tanh(e){var t=Number(e);if(X(t)||t===0){return t}if(t>=20){return 1}if(t<=-20){return-1}return(Math.expm1(t)-Math.expm1(-t))/(F(t)+F(-t))},trunc:function trunc(e){var t=Number(e);return t<0?-_(-t):_(t)},imul:function imul(e,t){var r=se.ToUint32(e);var n=se.ToUint32(t);var o=r>>>16&65535;var i=r&65535;var a=n>>>16&65535;var u=n&65535;return i*u+(o*u+i*a<<16>>>0)|0},fround:function fround(e){var t=Number(e);if(t===0||t===Infinity||t===-Infinity||X(t)){return t}var r=Z(t);var n=k(t);if(n<jr){return r*mr(n/jr/Or)*jr*Or}var o=(1+Or/Number.EPSILON)*n;var i=o-(o-n);if(i>wr||X(i)){return r*Infinity}return r*i}};b(Math,Pr);h(Math,"log1p",Pr.log1p,Math.log1p(-1e-17)!==-1e-17);h(Math,"asinh",Pr.asinh,Math.asinh(-1e7)!==-Math.asinh(1e7));h(Math,"tanh",Pr.tanh,Math.tanh(-2e-17)!==-2e-17);h(Math,"acosh",Pr.acosh,Math.acosh(Number.MAX_VALUE)===Infinity);h(Math,"cbrt",Pr.cbrt,Math.abs(1-Math.cbrt(1e-300)/1e-100)/Number.EPSILON>8);h(Math,"sinh",Pr.sinh,Math.sinh(-2e-17)!==-2e-17);var Cr=Math.expm1(10);h(Math,"expm1",Pr.expm1,Cr>22025.465794806718||Cr<22025.465794806718);var Mr=Math.round;var xr=Math.round(.5-Number.EPSILON/4)===0&&Math.round(-.5+Number.EPSILON/3.99)===1;var Nr=dr+1;var Ar=2*dr-1;var Rr=[Nr,Ar].every(function(e){return Math.round(e)===e});h(Math,"round",function round(e){var t=_(e);var r=t===-1?-0:t+1;
+return e-t<.5?t:r},!xr||!Rr);m.preserveToString(Math.round,Mr);var _r=Math.imul;if(Math.imul(4294967295,5)!==-5){Math.imul=Pr.imul;m.preserveToString(Math.imul,_r)}if(Math.imul.length!==2){re(Math,"imul",function imul(e,t){return se.Call(_r,Math,arguments)})}var kr=function(){var e=S.setTimeout;if(typeof e!=="function"&&typeof e!=="object"){return}se.IsPromise=function(e){if(!se.TypeIsObject(e)){return false}if(typeof e._promise==="undefined"){return false}return true};var r=function(e){if(!se.IsConstructor(e)){throw new TypeError("Bad promise constructor")}var t=this;var r=function(e,r){if(t.resolve!==void 0||t.reject!==void 0){throw new TypeError("Bad Promise implementation!")}t.resolve=e;t.reject=r};t.resolve=void 0;t.reject=void 0;t.promise=new e(r);if(!(se.IsCallable(t.resolve)&&se.IsCallable(t.reject))){throw new TypeError("Bad promise constructor")}};var n;if(typeof window!=="undefined"&&se.IsCallable(window.postMessage)){n=function(){var e=[];var t="zero-timeout-message";var r=function(r){M(e,r);window.postMessage(t,"*")};var n=function(r){if(r.source===window&&r.data===t){r.stopPropagation();if(e.length===0){return}var n=N(e);n()}};window.addEventListener("message",n,true);return r}}var o=function(){var e=S.Promise;var t=e&&e.resolve&&e.resolve();return t&&function(e){return t.then(e)}};var i=se.IsCallable(S.setImmediate)?S.setImmediate:typeof process==="object"&&process.nextTick?process.nextTick:o()||(se.IsCallable(n)?n():function(t){e(t,0)});var a=function(e){return e};var u=function(e){throw e};var f=0;var s=1;var c=2;var l=0;var p=1;var v=2;var y={};var h=function(e,t,r){i(function(){g(e,t,r)})};var g=function(e,t,r){var n,o;if(t===y){return e(r)}try{n=e(r);o=t.resolve}catch(e){n=e;o=t.reject}o(n)};var d=function(e,t){var r=e._promise;var n=r.reactionLength;if(n>0){h(r.fulfillReactionHandler0,r.reactionCapability0,t);r.fulfillReactionHandler0=void 0;r.rejectReactions0=void 0;r.reactionCapability0=void 0;if(n>1){for(var o=1,i=0;o<n;o++,i+=3){h(r[i+l],r[i+v],t);e[i+l]=void 0;e[i+p]=void 0;e[i+v]=void 0}}}r.result=t;r.state=s;r.reactionLength=0};var m=function(e,t){var r=e._promise;var n=r.reactionLength;if(n>0){h(r.rejectReactionHandler0,r.reactionCapability0,t);r.fulfillReactionHandler0=void 0;r.rejectReactions0=void 0;r.reactionCapability0=void 0;if(n>1){for(var o=1,i=0;o<n;o++,i+=3){h(r[i+p],r[i+v],t);e[i+l]=void 0;e[i+p]=void 0;e[i+v]=void 0}}}r.result=t;r.state=c;r.reactionLength=0};var O=function(e){var t=false;var r=function(r){var n;if(t){return}t=true;if(r===e){return m(e,new TypeError("Self resolution"))}if(!se.TypeIsObject(r)){return d(e,r)}try{n=r.then}catch(t){return m(e,t)}if(!se.IsCallable(n)){return d(e,r)}i(function(){j(e,r,n)})};var n=function(r){if(t){return}t=true;return m(e,r)};return{resolve:r,reject:n}};var w=function(e,r,n,o){if(e===I){t(e,r,n,o,y)}else{t(e,r,n,o)}};var j=function(e,t,r){var n=O(e);var o=n.resolve;var i=n.reject;try{w(r,t,o,i)}catch(e){i(e)}};var T,I;var E=function(){var e=function Promise(t){if(!(this instanceof e)){throw new TypeError('Constructor Promise requires "new"')}if(this&&this._promise){throw new TypeError("Bad construction")}if(!se.IsCallable(t)){throw new TypeError("not a valid resolver")}var r=Ne(this,e,T,{_promise:{result:void 0,state:f,reactionLength:0,fulfillReactionHandler0:void 0,rejectReactionHandler0:void 0,reactionCapability0:void 0}});var n=O(r);var o=n.reject;try{t(n.resolve,o)}catch(e){o(e)}return r};return e}();T=E.prototype;var P=function(e,t,r,n){var o=false;return function(i){if(o){return}o=true;t[e]=i;if(--n.count===0){var a=r.resolve;a(t)}}};var C=function(e,t,r){var n=e.iterator;var o=[];var i={count:1};var a,u;var f=0;while(true){try{a=se.IteratorStep(n);if(a===false){e.done=true;break}u=a.value}catch(t){e.done=true;throw t}o[f]=void 0;var s=t.resolve(u);var c=P(f,o,r,i);i.count+=1;w(s.then,s,c,r.reject);f+=1}if(--i.count===0){var l=r.resolve;l(o)}return r.promise};var x=function(e,t,r){var n=e.iterator;var o,i,a;while(true){try{o=se.IteratorStep(n);if(o===false){e.done=true;break}i=o.value}catch(t){e.done=true;throw t}a=t.resolve(i);w(a.then,a,r.resolve,r.reject)}return r.promise};b(E,{all:function all(e){var t=this;if(!se.TypeIsObject(t)){throw new TypeError("Promise is not object")}var n=new r(t);var o,i;try{o=se.GetIterator(e);i={iterator:o,done:false};return C(i,t,n)}catch(e){var a=e;if(i&&!i.done){try{se.IteratorClose(o,true)}catch(e){a=e}}var u=n.reject;u(a);return n.promise}},race:function race(e){var t=this;if(!se.TypeIsObject(t)){throw new TypeError("Promise is not object")}var n=new r(t);var o,i;try{o=se.GetIterator(e);i={iterator:o,done:false};return x(i,t,n)}catch(e){var a=e;if(i&&!i.done){try{se.IteratorClose(o,true)}catch(e){a=e}}var u=n.reject;u(a);return n.promise}},reject:function reject(e){var t=this;if(!se.TypeIsObject(t)){throw new TypeError("Bad promise constructor")}var n=new r(t);var o=n.reject;o(e);return n.promise},resolve:function resolve(e){var t=this;if(!se.TypeIsObject(t)){throw new TypeError("Bad promise constructor")}if(se.IsPromise(e)){var n=e.constructor;if(n===t){return e}}var o=new r(t);var i=o.resolve;i(e);return o.promise}});b(T,{catch:function(e){return this.then(null,e)},then:function then(e,t){var n=this;if(!se.IsPromise(n)){throw new TypeError("not a promise")}var o=se.SpeciesConstructor(n,E);var i;var b=arguments.length>2&&arguments[2]===y;if(b&&o===E){i=y}else{i=new r(o)}var g=se.IsCallable(e)?e:a;var d=se.IsCallable(t)?t:u;var m=n._promise;var O;if(m.state===f){if(m.reactionLength===0){m.fulfillReactionHandler0=g;m.rejectReactionHandler0=d;m.reactionCapability0=i}else{var w=3*(m.reactionLength-1);m[w+l]=g;m[w+p]=d;m[w+v]=i}m.reactionLength+=1}else if(m.state===s){O=m.result;h(g,i,O)}else if(m.state===c){O=m.result;h(d,i,O)}else{throw new TypeError("unexpected Promise state")}return i.promise}});y=new r(E);I=T.then;return E}();if(S.Promise){delete S.Promise.accept;delete S.Promise.defer;delete S.Promise.prototype.chain}if(typeof kr==="function"){b(S,{Promise:kr});var Fr=w(S.Promise,function(e){return e.resolve(42).then(function(){})instanceof e});var Lr=!i(function(){S.Promise.reject(42).then(null,5).then(null,W)});var Dr=i(function(){S.Promise.call(3,W)});var zr=function(e){var t=e.resolve(5);t.constructor={};var r=e.resolve(t);try{r.then(null,W).then(null,W)}catch(e){return true}return t===r}(S.Promise);var qr=s&&function(){var e=0;var t=Object.defineProperty({},"then",{get:function(){e+=1}});Promise.resolve(t);return e===1}();var Wr=function BadResolverPromise(e){var t=new Promise(e);e(3,function(){});this.then=t.then;this.constructor=BadResolverPromise};Wr.prototype=Promise.prototype;Wr.all=Promise.all;var Gr=a(function(){return!!Wr.all([1,2])});if(!Fr||!Lr||!Dr||zr||!qr||Gr){Promise=kr;re(S,"Promise",kr)}if(Promise.all.length!==1){var Hr=Promise.all;re(Promise,"all",function all(e){return se.Call(Hr,this,arguments)})}if(Promise.race.length!==1){var Vr=Promise.race;re(Promise,"race",function race(e){return se.Call(Vr,this,arguments)})}if(Promise.resolve.length!==1){var Br=Promise.resolve;re(Promise,"resolve",function resolve(e){return se.Call(Br,this,arguments)})}if(Promise.reject.length!==1){var Ur=Promise.reject;re(Promise,"reject",function reject(e){return se.Call(Ur,this,arguments)})}Ct(Promise,"all");Ct(Promise,"race");Ct(Promise,"resolve");Ct(Promise,"reject");Pe(Promise)}var $r=function(e){var t=n(p(e,function(e,t){e[t]=true;return e},{}));return e.join(":")===t.join(":")};var Jr=$r(["z","a","bb"]);var Xr=$r(["z",1,"a","3",2]);if(s){var Kr=function fastkey(e,t){if(!t&&!Jr){return null}if(fe(e)){return"^"+se.ToString(e)}else if(typeof e==="string"){return"$"+e}else if(typeof e==="number"){if(!Xr){return"n"+e}return e}else if(typeof e==="boolean"){return"b"+e}return null};var Zr=function emptyObject(){return Object.create?Object.create(null):{}};var Yr=function addIterableToMap(e,n,o){if(r(o)||te.string(o)){l(o,function(e){if(!se.TypeIsObject(e)){throw new TypeError("Iterator value "+e+" is not an entry object")}n.set(e[0],e[1])})}else if(o instanceof e){t(e.prototype.forEach,o,function(e,t){n.set(t,e)})}else{var i,a;if(!fe(o)){a=n.set;if(!se.IsCallable(a)){throw new TypeError("bad map")}i=se.GetIterator(o)}if(typeof i!=="undefined"){while(true){var u=se.IteratorStep(i);if(u===false){break}var f=u.value;try{if(!se.TypeIsObject(f)){throw new TypeError("Iterator value "+f+" is not an entry object")}t(a,n,f[0],f[1])}catch(e){se.IteratorClose(i,true);throw e}}}}};var Qr=function addIterableToSet(e,n,o){if(r(o)||te.string(o)){l(o,function(e){n.add(e)})}else if(o instanceof e){t(e.prototype.forEach,o,function(e){n.add(e)})}else{var i,a;if(!fe(o)){a=n.add;if(!se.IsCallable(a)){throw new TypeError("bad set")}i=se.GetIterator(o)}if(typeof i!=="undefined"){while(true){var u=se.IteratorStep(i);if(u===false){break}var f=u.value;try{t(a,n,f)}catch(e){se.IteratorClose(i,true);throw e}}}}};var en={Map:function(){var e={};var r=function MapEntry(e,t){this.key=e;this.value=t;this.next=null;this.prev=null};r.prototype.isRemoved=function isRemoved(){return this.key===e};var n=function isMap(e){return!!e._es6map};var o=function requireMapSlot(e,t){if(!se.TypeIsObject(e)||!n(e)){throw new TypeError("Method Map.prototype."+t+" called on incompatible receiver "+se.ToString(e))}};var i=function MapIterator(e,t){o(e,"[[MapIterator]]");this.head=e._head;this.i=this.head;this.kind=t};i.prototype={next:function next(){var e=this.i;var t=this.kind;var r=this.head;if(typeof this.i==="undefined"){return Xe()}while(e.isRemoved()&&e!==r){e=e.prev}var n;while(e.next!==r){e=e.next;if(!e.isRemoved()){if(t==="key"){n=e.key}else if(t==="value"){n=e.value}else{n=[e.key,e.value]}this.i=e;return Xe(n)}}this.i=void 0;return Xe()}};Ce(i.prototype);var a;var u=function Map(){if(!(this instanceof Map)){throw new TypeError('Constructor Map requires "new"')}if(this&&this._es6map){throw new TypeError("Bad construction")}var e=Ne(this,Map,a,{_es6map:true,_head:null,_map:G?new G:null,_size:0,_storage:Zr()});var t=new r(null,null);t.next=t.prev=t;e._head=t;if(arguments.length>0){Yr(Map,e,arguments[0])}return e};a=u.prototype;m.getter(a,"size",function(){if(typeof this._size==="undefined"){throw new TypeError("size method called on incompatible Map")}return this._size});b(a,{get:function get(e){o(this,"get");var t;var r=Kr(e,true);if(r!==null){t=this._storage[r];if(t){return t.value}else{return}}if(this._map){t=V.call(this._map,e);if(t){return t.value}else{return}}var n=this._head;var i=n;while((i=i.next)!==n){if(se.SameValueZero(i.key,e)){return i.value}}},has:function has(e){o(this,"has");var t=Kr(e,true);if(t!==null){return typeof this._storage[t]!=="undefined"}if(this._map){return B.call(this._map,e)}var r=this._head;var n=r;while((n=n.next)!==r){if(se.SameValueZero(n.key,e)){return true}}return false},set:function set(e,t){o(this,"set");var n=this._head;var i=n;var a;var u=Kr(e,true);if(u!==null){if(typeof this._storage[u]!=="undefined"){this._storage[u].value=t;return this}else{a=this._storage[u]=new r(e,t);i=n.prev}}else if(this._map){if(B.call(this._map,e)){V.call(this._map,e).value=t}else{a=new r(e,t);U.call(this._map,e,a);i=n.prev}}while((i=i.next)!==n){if(se.SameValueZero(i.key,e)){i.value=t;return this}}a=a||new r(e,t);if(se.SameValue(-0,e)){a.key=+0}a.next=this._head;a.prev=this._head.prev;a.prev.next=a;a.next.prev=a;this._size+=1;return this},delete:function(t){o(this,"delete");var r=this._head;var n=r;var i=Kr(t,true);if(i!==null){if(typeof this._storage[i]==="undefined"){return false}n=this._storage[i].prev;delete this._storage[i]}else if(this._map){if(!B.call(this._map,t)){return false}n=V.call(this._map,t).prev;H.call(this._map,t)}while((n=n.next)!==r){if(se.SameValueZero(n.key,t)){n.key=e;n.value=e;n.prev.next=n.next;n.next.prev=n.prev;this._size-=1;return true}}return false},clear:function clear(){o(this,"clear");this._map=G?new G:null;this._size=0;this._storage=Zr();var t=this._head;var r=t;var n=r.next;while((r=n)!==t){r.key=e;r.value=e;n=r.next;r.next=r.prev=t}t.next=t.prev=t},keys:function keys(){o(this,"keys");return new i(this,"key")},values:function values(){o(this,"values");return new i(this,"value")},entries:function entries(){o(this,"entries");return new i(this,"key+value")},forEach:function forEach(e){o(this,"forEach");var r=arguments.length>1?arguments[1]:null;var n=this.entries();for(var i=n.next();!i.done;i=n.next()){if(r){t(e,r,i.value[1],i.value[0],this)}else{e(i.value[1],i.value[0],this)}}}});Ce(a,a.entries);return u}(),Set:function(){var e=function isSet(e){return e._es6set&&typeof e._storage!=="undefined"};var r=function requireSetSlot(t,r){if(!se.TypeIsObject(t)||!e(t)){throw new TypeError("Set.prototype."+r+" called on incompatible receiver "+se.ToString(t))}};var o;var i=function Set(){if(!(this instanceof Set)){throw new TypeError('Constructor Set requires "new"')}if(this&&this._es6set){throw new TypeError("Bad construction")}var e=Ne(this,Set,o,{_es6set:true,"[[SetData]]":null,_storage:Zr()});if(!e._es6set){throw new TypeError("bad set")}if(arguments.length>0){Qr(Set,e,arguments[0])}return e};o=i.prototype;var a=function(e){var t=e;if(t==="^null"){return null}else if(t==="^undefined"){return void 0}else{var r=t.charAt(0);if(r==="$"){return C(t,1)}else if(r==="n"){return+C(t,1)}else if(r==="b"){return t==="btrue"}}return+t};var u=function ensureMap(e){if(!e["[[SetData]]"]){var t=new en.Map;e["[[SetData]]"]=t;l(n(e._storage),function(e){var r=a(e);t.set(r,r)});e["[[SetData]]"]=t}e._storage=null};m.getter(i.prototype,"size",function(){r(this,"size");if(this._storage){return n(this._storage).length}u(this);return this["[[SetData]]"].size});b(i.prototype,{has:function has(e){r(this,"has");var t;if(this._storage&&(t=Kr(e))!==null){return!!this._storage[t]}u(this);return this["[[SetData]]"].has(e)},add:function add(e){r(this,"add");var t;if(this._storage&&(t=Kr(e))!==null){this._storage[t]=true;return this}u(this);this["[[SetData]]"].set(e,e);return this},delete:function(e){r(this,"delete");var t;if(this._storage&&(t=Kr(e))!==null){var n=z(this._storage,t);return delete this._storage[t]&&n}u(this);return this["[[SetData]]"]["delete"](e)},clear:function clear(){r(this,"clear");if(this._storage){this._storage=Zr()}if(this["[[SetData]]"]){this["[[SetData]]"].clear()}},values:function values(){r(this,"values");u(this);return this["[[SetData]]"].values()},entries:function entries(){r(this,"entries");u(this);return this["[[SetData]]"].entries()},forEach:function forEach(e){r(this,"forEach");var n=arguments.length>1?arguments[1]:null;var o=this;u(o);this["[[SetData]]"].forEach(function(r,i){if(n){t(e,n,i,i,o)}else{e(i,i,o)}})}});h(i.prototype,"keys",i.prototype.values,true);Ce(i.prototype,i.prototype.values);return i}()};if(S.Map||S.Set){var tn=a(function(){return new Map([[1,2]]).get(1)===2});if(!tn){S.Map=function Map(){if(!(this instanceof Map)){throw new TypeError('Constructor Map requires "new"')}var e=new G;if(arguments.length>0){Yr(Map,e,arguments[0])}delete e.constructor;Object.setPrototypeOf(e,S.Map.prototype);return e};S.Map.prototype=O(G.prototype);h(S.Map.prototype,"constructor",S.Map,true);m.preserveToString(S.Map,G)}var rn=new Map;var nn=function(){var e=new Map([[1,0],[2,0],[3,0],[4,0]]);e.set(-0,e);return e.get(0)===e&&e.get(-0)===e&&e.has(0)&&e.has(-0)}();var on=rn.set(1,2)===rn;if(!nn||!on){re(Map.prototype,"set",function set(e,r){t(U,this,e===0?0:e,r);return this})}if(!nn){b(Map.prototype,{get:function get(e){return t(V,this,e===0?0:e)},has:function has(e){return t(B,this,e===0?0:e)}},true);m.preserveToString(Map.prototype.get,V);m.preserveToString(Map.prototype.has,B)}var an=new Set;var un=function(e){e["delete"](0);e.add(-0);return!e.has(0)}(an);var fn=an.add(1)===an;if(!un||!fn){var sn=Set.prototype.add;Set.prototype.add=function add(e){t(sn,this,e===0?0:e);return this};m.preserveToString(Set.prototype.add,sn)}if(!un){var cn=Set.prototype.has;Set.prototype.has=function has(e){return t(cn,this,e===0?0:e)};m.preserveToString(Set.prototype.has,cn);var ln=Set.prototype["delete"];Set.prototype["delete"]=function SetDelete(e){return t(ln,this,e===0?0:e)};m.preserveToString(Set.prototype["delete"],ln)}var pn=w(S.Map,function(e){var t=new e([]);t.set(42,42);return t instanceof e});var vn=Object.setPrototypeOf&&!pn;var yn=function(){try{return!(S.Map()instanceof S.Map)}catch(e){return e instanceof TypeError}}();if(S.Map.length!==0||vn||!yn){S.Map=function Map(){if(!(this instanceof Map)){throw new TypeError('Constructor Map requires "new"')}var e=new G;if(arguments.length>0){Yr(Map,e,arguments[0])}delete e.constructor;Object.setPrototypeOf(e,Map.prototype);return e};S.Map.prototype=G.prototype;h(S.Map.prototype,"constructor",S.Map,true);m.preserveToString(S.Map,G)}var hn=w(S.Set,function(e){var t=new e([]);t.add(42,42);return t instanceof e});var bn=Object.setPrototypeOf&&!hn;var gn=function(){try{return!(S.Set()instanceof S.Set)}catch(e){return e instanceof TypeError}}();if(S.Set.length!==0||bn||!gn){var dn=S.Set;S.Set=function Set(){if(!(this instanceof Set)){throw new TypeError('Constructor Set requires "new"')}var e=new dn;if(arguments.length>0){Qr(Set,e,arguments[0])}delete e.constructor;Object.setPrototypeOf(e,Set.prototype);return e};S.Set.prototype=dn.prototype;h(S.Set.prototype,"constructor",S.Set,true);m.preserveToString(S.Set,dn)}var mn=new S.Map;var On=!a(function(){return mn.keys().next().done});if(typeof S.Map.prototype.clear!=="function"||(new S.Set).size!==0||mn.size!==0||typeof S.Map.prototype.keys!=="function"||typeof S.Set.prototype.keys!=="function"||typeof S.Map.prototype.forEach!=="function"||typeof S.Set.prototype.forEach!=="function"||u(S.Map)||u(S.Set)||typeof mn.keys().next!=="function"||On||!pn){b(S,{Map:en.Map,Set:en.Set},true)}if(S.Set.prototype.keys!==S.Set.prototype.values){h(S.Set.prototype,"keys",S.Set.prototype.values,true)}Ce(Object.getPrototypeOf((new S.Map).keys()));Ce(Object.getPrototypeOf((new S.Set).keys()));if(c&&S.Set.prototype.has.name!=="has"){var wn=S.Set.prototype.has;re(S.Set.prototype,"has",function has(e){return t(wn,this,e)})}}b(S,en);Pe(S.Map);Pe(S.Set)}var jn=function throwUnlessTargetIsObject(e){if(!se.TypeIsObject(e)){throw new TypeError("target must be an object")}};var Sn={apply:function apply(){return se.Call(se.Call,null,arguments)},construct:function construct(e,t){if(!se.IsConstructor(e)){throw new TypeError("First argument must be a constructor.")}var r=arguments.length>2?arguments[2]:e;if(!se.IsConstructor(r)){throw new TypeError("new.target must be a constructor.")}return se.Construct(e,t,r,"internal")},deleteProperty:function deleteProperty(e,t){jn(e);if(s){var r=Object.getOwnPropertyDescriptor(e,t);if(r&&!r.configurable){return false}}return delete e[t]},has:function has(e,t){jn(e);return t in e}};if(Object.getOwnPropertyNames){Object.assign(Sn,{ownKeys:function ownKeys(e){jn(e);var t=Object.getOwnPropertyNames(e);if(se.IsCallable(Object.getOwnPropertySymbols)){x(t,Object.getOwnPropertySymbols(e))}return t}})}var Tn=function ConvertExceptionToBoolean(e){return!i(e)};if(Object.preventExtensions){Object.assign(Sn,{isExtensible:function isExtensible(e){jn(e);return Object.isExtensible(e)},preventExtensions:function preventExtensions(e){jn(e);return Tn(function(){Object.preventExtensions(e)})}})}if(s){var In=function get(e,t,r){var n=Object.getOwnPropertyDescriptor(e,t);if(!n){var o=Object.getPrototypeOf(e);if(o===null){return void 0}return In(o,t,r)}if("value"in n){return n.value}if(n.get){return se.Call(n.get,r)}return void 0};var En=function set(e,r,n,o){var i=Object.getOwnPropertyDescriptor(e,r);if(!i){var a=Object.getPrototypeOf(e);if(a!==null){return En(a,r,n,o)}i={value:void 0,writable:true,enumerable:true,configurable:true}}if("value"in i){if(!i.writable){return false}if(!se.TypeIsObject(o)){return false}var u=Object.getOwnPropertyDescriptor(o,r);if(u){return ie.defineProperty(o,r,{value:n})}else{return ie.defineProperty(o,r,{value:n,writable:true,enumerable:true,configurable:true})}}if(i.set){t(i.set,o,n);return true}return false};Object.assign(Sn,{defineProperty:function defineProperty(e,t,r){jn(e);return Tn(function(){Object.defineProperty(e,t,r)})},getOwnPropertyDescriptor:function getOwnPropertyDescriptor(e,t){jn(e);return Object.getOwnPropertyDescriptor(e,t)},get:function get(e,t){jn(e);var r=arguments.length>2?arguments[2]:e;return In(e,t,r)},set:function set(e,t,r){jn(e);var n=arguments.length>3?arguments[3]:e;return En(e,t,r,n)}})}if(Object.getPrototypeOf){var Pn=Object.getPrototypeOf;Sn.getPrototypeOf=function getPrototypeOf(e){jn(e);return Pn(e)}}if(Object.setPrototypeOf&&Sn.getPrototypeOf){var Cn=function(e,t){var r=t;while(r){if(e===r){return true}r=Sn.getPrototypeOf(r)}return false};Object.assign(Sn,{setPrototypeOf:function setPrototypeOf(e,t){jn(e);if(t!==null&&!se.TypeIsObject(t)){throw new TypeError("proto must be an object or null")}if(t===ie.getPrototypeOf(e)){return true}if(ie.isExtensible&&!ie.isExtensible(e)){return false}if(Cn(e,t)){return false}Object.setPrototypeOf(e,t);return true}})}var Mn=function(e,t){if(!se.IsCallable(S.Reflect[e])){h(S.Reflect,e,t)}else{var r=a(function(){S.Reflect[e](1);S.Reflect[e](NaN);S.Reflect[e](true);return true});if(r){re(S.Reflect,e,t)}}};Object.keys(Sn).forEach(function(e){Mn(e,Sn[e])});var xn=S.Reflect.getPrototypeOf;if(c&&xn&&xn.name!=="getPrototypeOf"){re(S.Reflect,"getPrototypeOf",function getPrototypeOf(e){return t(xn,S.Reflect,e)})}if(S.Reflect.setPrototypeOf){if(a(function(){S.Reflect.setPrototypeOf(1,{});return true})){re(S.Reflect,"setPrototypeOf",Sn.setPrototypeOf)}}if(S.Reflect.defineProperty){if(!a(function(){var e=!S.Reflect.defineProperty(1,"test",{value:1});var t=typeof Object.preventExtensions!=="function"||!S.Reflect.defineProperty(Object.preventExtensions({}),"test",{});return e&&t})){re(S.Reflect,"defineProperty",Sn.defineProperty)}}if(S.Reflect.construct){if(!a(function(){var e=function F(){};return S.Reflect.construct(function(){},[],e)instanceof e})){re(S.Reflect,"construct",Sn.construct)}}if(String(new Date(NaN))!=="Invalid Date"){var Nn=Date.prototype.toString;var An=function toString(){var e=+this;if(e!==e){return"Invalid Date"}return se.Call(Nn,this)};re(Date.prototype,"toString",An)}var Rn={anchor:function anchor(e){return se.CreateHTML(this,"a","name",e)},big:function big(){return se.CreateHTML(this,"big","","")},blink:function blink(){return se.CreateHTML(this,"blink","","")},bold:function bold(){return se.CreateHTML(this,"b","","")},fixed:function fixed(){return se.CreateHTML(this,"tt","","")},fontcolor:function fontcolor(e){return se.CreateHTML(this,"font","color",e)},fontsize:function fontsize(e){return se.CreateHTML(this,"font","size",e)},italics:function italics(){return se.CreateHTML(this,"i","","")},link:function link(e){return se.CreateHTML(this,"a","href",e)},small:function small(){return se.CreateHTML(this,"small","","")},strike:function strike(){return se.CreateHTML(this,"strike","","")},sub:function sub(){return se.CreateHTML(this,"sub","","")},sup:function sub(){return se.CreateHTML(this,"sup","","")}};l(Object.keys(Rn),function(e){var r=String.prototype[e];var n=false;if(se.IsCallable(r)){var o=t(r,"",' " ');var i=P([],o.match(/"/g)).length;n=o!==o.toLowerCase()||i>2}else{n=true}if(n){re(String.prototype,e,Rn[e])}});var _n=function(){if(!ne){return false}var e=typeof JSON==="object"&&typeof JSON.stringify==="function"?JSON.stringify:null;if(!e){return false}if(typeof e($())!=="undefined"){return true}if(e([$()])!=="[null]"){return true}var t={a:$()};t[$()]=true;if(e(t)!=="{}"){return true}return false}();var kn=a(function(){if(!ne){return true}return JSON.stringify(Object($()))==="{}"&&JSON.stringify([Object($())])==="[{}]"});if(_n||!kn){var Fn=JSON.stringify;re(JSON,"stringify",function stringify(e){if(typeof e==="symbol"){return}var n;if(arguments.length>1){n=arguments[1]}var o=[e];if(!r(n)){var i=se.IsCallable(n)?n:null;var a=function(e,r){var n=i?t(i,this,e,r):r;if(typeof n!=="symbol"){if(te.symbol(n)){return xt({})(n)}else{return n}}};o.push(a)}else{o.push(n)}if(arguments.length>2){o.push(arguments[2])}return Fn.apply(this,o)})}return S});
+//# sourceMappingURL=es6-shim.map
+/*! jQuery v3.1.1 | (c) jQuery Foundation | jquery.org/license */
+!function(a,b){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){"use strict";var c=[],d=a.document,e=Object.getPrototypeOf,f=c.slice,g=c.concat,h=c.push,i=c.indexOf,j={},k=j.toString,l=j.hasOwnProperty,m=l.toString,n=m.call(Object),o={};function p(a,b){b=b||d;var c=b.createElement("script");c.text=a,b.head.appendChild(c).parentNode.removeChild(c)}var q="3.1.1",r=function(a,b){return new r.fn.init(a,b)},s=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,t=/^-ms-/,u=/-([a-z])/g,v=function(a,b){return b.toUpperCase()};r.fn=r.prototype={jquery:q,constructor:r,length:0,toArray:function(){return f.call(this)},get:function(a){return null==a?f.call(this):a<0?this[a+this.length]:this[a]},pushStack:function(a){var b=r.merge(this.constructor(),a);return b.prevObject=this,b},each:function(a){return r.each(this,a)},map:function(a){return this.pushStack(r.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(f.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(a<0?b:0);return this.pushStack(c>=0&&c<b?[this[c]]:[])},end:function(){return this.prevObject||this.constructor()},push:h,sort:c.sort,splice:c.splice},r.extend=r.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||r.isFunction(g)||(g={}),h===i&&(g=this,h--);h<i;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(r.isPlainObject(d)||(e=r.isArray(d)))?(e?(e=!1,f=c&&r.isArray(c)?c:[]):f=c&&r.isPlainObject(c)?c:{},g[b]=r.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},r.extend({expando:"jQuery"+(q+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===r.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){var b=r.type(a);return("number"===b||"string"===b)&&!isNaN(a-parseFloat(a))},isPlainObject:function(a){var b,c;return!(!a||"[object Object]"!==k.call(a))&&(!(b=e(a))||(c=l.call(b,"constructor")&&b.constructor,"function"==typeof c&&m.call(c)===n))},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?j[k.call(a)]||"object":typeof a},globalEval:function(a){p(a)},camelCase:function(a){return a.replace(t,"ms-").replace(u,v)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b){var c,d=0;if(w(a)){for(c=a.length;d<c;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[d])===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(s,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(w(Object(a))?r.merge(c,"string"==typeof a?[a]:a):h.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:i.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;d<c;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;f<g;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,e,f=0,h=[];if(w(a))for(d=a.length;f<d;f++)e=b(a[f],f,c),null!=e&&h.push(e);else for(f in a)e=b(a[f],f,c),null!=e&&h.push(e);return g.apply([],h)},guid:1,proxy:function(a,b){var c,d,e;if("string"==typeof b&&(c=a[b],b=a,a=c),r.isFunction(a))return d=f.call(arguments,2),e=function(){return a.apply(b||this,d.concat(f.call(arguments)))},e.guid=a.guid=a.guid||r.guid++,e},now:Date.now,support:o}),"function"==typeof Symbol&&(r.fn[Symbol.iterator]=c[Symbol.iterator]),r.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){j["[object "+b+"]"]=b.toLowerCase()});function w(a){var b=!!a&&"length"in a&&a.length,c=r.type(a);return"function"!==c&&!r.isWindow(a)&&("array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a)}var x=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C={}.hasOwnProperty,D=[],E=D.pop,F=D.push,G=D.push,H=D.slice,I=function(a,b){for(var c=0,d=a.length;c<d;c++)if(a[c]===b)return c;return-1},J="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",K="[\\x20\\t\\r\\n\\f]",L="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",M="\\["+K+"*("+L+")(?:"+K+"*([*^$|!~]?=)"+K+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+L+"))|)"+K+"*\\]",N=":("+L+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+M+")*)|.*)\\)|)",O=new RegExp(K+"+","g"),P=new RegExp("^"+K+"+|((?:^|[^\\\\])(?:\\\\.)*)"+K+"+$","g"),Q=new RegExp("^"+K+"*,"+K+"*"),R=new RegExp("^"+K+"*([>+~]|"+K+")"+K+"*"),S=new RegExp("="+K+"*([^\\]'\"]*?)"+K+"*\\]","g"),T=new RegExp(N),U=new RegExp("^"+L+"$"),V={ID:new RegExp("^#("+L+")"),CLASS:new RegExp("^\\.("+L+")"),TAG:new RegExp("^("+L+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+N),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+K+"*(even|odd|(([+-]|)(\\d*)n|)"+K+"*(?:([+-]|)"+K+"*(\\d+)|))"+K+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+K+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+K+"*((?:-\\d)?\\d*)"+K+"*\\)|)(?=[^-]|$)","i")},W=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,$=/[+~]/,_=new RegExp("\\\\([\\da-f]{1,6}"+K+"?|("+K+")|.)","ig"),aa=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:d<0?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ba=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ca=function(a,b){return b?"\0"===a?"\ufffd":a.slice(0,-1)+"\\"+a.charCodeAt(a.length-1).toString(16)+" ":"\\"+a},da=function(){m()},ea=ta(function(a){return a.disabled===!0&&("form"in a||"label"in a)},{dir:"parentNode",next:"legend"});try{G.apply(D=H.call(v.childNodes),v.childNodes),D[v.childNodes.length].nodeType}catch(fa){G={apply:D.length?function(a,b){F.apply(a,H.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s=b&&b.ownerDocument,w=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==w&&9!==w&&11!==w)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==w&&(l=Z.exec(a)))if(f=l[1]){if(9===w){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(s&&(j=s.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(l[2])return G.apply(d,b.getElementsByTagName(a)),d;if((f=l[3])&&c.getElementsByClassName&&b.getElementsByClassName)return G.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==w)s=b,r=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(ba,ca):b.setAttribute("id",k=u),o=g(a),h=o.length;while(h--)o[h]="#"+k+" "+sa(o[h]);r=o.join(","),s=$.test(a)&&qa(b.parentNode)||b}if(r)try{return G.apply(d,s.querySelectorAll(r)),d}catch(x){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(P,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("fieldset");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&a.sourceIndex-b.sourceIndex;if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return function(b){return"form"in b?b.parentNode&&b.disabled===!1?"label"in b?"label"in b.parentNode?b.parentNode.disabled===a:b.disabled===a:b.isDisabled===a||b.isDisabled!==!a&&ea(b)===a:b.disabled===a:"label"in b&&b.disabled===a}}function pa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function qa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return!!b&&"HTML"!==b.nodeName},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),v!==n&&(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Y.test(n.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){return a.getAttribute("id")===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}}):(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c,d,e,f=b.getElementById(a);if(f){if(c=f.getAttributeNode("id"),c&&c.value===a)return[f];e=b.getElementsByName(a),d=0;while(f=e[d++])if(c=f.getAttributeNode("id"),c&&c.value===a)return[f]}return[]}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){if("undefined"!=typeof b.getElementsByClassName&&p)return b.getElementsByClassName(a)},r=[],q=[],(c.qsa=Y.test(n.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\r\\' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+K+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+K+"*(?:value|"+J+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){a.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+K+"*[*^$|!~]?="),2!==a.querySelectorAll(":enabled").length&&q.push(":enabled",":disabled"),o.appendChild(a).disabled=!0,2!==a.querySelectorAll(":disabled").length&&q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Y.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"*"),s.call(a,"[s!='']:x"),r.push("!=",N)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Y.test(o.compareDocumentPosition),t=b||Y.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?I(k,a)-I(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?I(k,a)-I(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?la(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(S,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&C.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.escape=function(a){return(a+"").replace(ba,ca)},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(_,aa),a[3]=(a[3]||a[4]||a[5]||"").replace(_,aa),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return V.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&T.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(_,aa).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+K+")"+a+"("+K+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:!b||(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(O," ")+" ").indexOf(c)>-1:"|="===b&&(e===c||e.slice(0,c.length+1)===c+"-"))}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=I(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(P,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(_,aa),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return U.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(_,aa).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:oa(!1),disabled:oa(!0),checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return X.test(a.nodeName)},input:function(a){return W.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:pa(function(){return[0]}),last:pa(function(a,b){return[b-1]}),eq:pa(function(a,b,c){return[c<0?c+b:c]}),even:pa(function(a,b){for(var c=0;c<b;c+=2)a.push(c);return a}),odd:pa(function(a,b){for(var c=1;c<b;c+=2)a.push(c);return a}),lt:pa(function(a,b,c){for(var d=c<0?c+b:c;--d>=0;)a.push(d);return a}),gt:pa(function(a,b,c){for(var d=c<0?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=ma(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=na(b);function ra(){}ra.prototype=d.filters=d.pseudos,d.setFilters=new ra,g=ga.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){c&&!(e=Q.exec(h))||(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=R.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(P," ")}),h=h.slice(c.length));for(g in d.filter)!(e=V[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?ga.error(a):z(a,i).slice(0)};function sa(a){for(var b=0,c=a.length,d="";b<c;b++)d+=a[b].value;return d}function ta(a,b,c){var d=b.dir,e=b.next,f=e||d,g=c&&"parentNode"===f,h=x++;return b.first?function(b,c,e){while(b=b[d])if(1===b.nodeType||g)return a(b,c,e);return!1}:function(b,c,i){var j,k,l,m=[w,h];if(i){while(b=b[d])if((1===b.nodeType||g)&&a(b,c,i))return!0}else while(b=b[d])if(1===b.nodeType||g)if(l=b[u]||(b[u]={}),k=l[b.uniqueID]||(l[b.uniqueID]={}),e&&e===b.nodeName.toLowerCase())b=b[d]||b;else{if((j=k[f])&&j[0]===w&&j[1]===h)return m[2]=j[2];if(k[f]=m,m[2]=a(b,c,i))return!0}return!1}}function ua(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function va(a,b,c){for(var d=0,e=b.length;d<e;d++)ga(a,b[d],c);return c}function wa(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;h<i;h++)(f=a[h])&&(c&&!c(f,d,e)||(g.push(f),j&&b.push(h)));return g}function xa(a,b,c,d,e,f){return d&&!d[u]&&(d=xa(d)),e&&!e[u]&&(e=xa(e,f)),ia(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||va(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:wa(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=wa(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?I(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=wa(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):G.apply(g,r)})}function ya(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ta(function(a){return a===b},h,!0),l=ta(function(a){return I(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];i<f;i++)if(c=d.relative[a[i].type])m=[ta(ua(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;e<f;e++)if(d.relative[a[e].type])break;return xa(i>1&&ua(m),i>1&&sa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(P,"$1"),c,i<e&&ya(a.slice(i,e)),e<f&&ya(a=a.slice(e)),e<f&&sa(a))}m.push(c)}return ua(m)}function za(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=E.call(i));u=wa(u)}G.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&ga.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=ya(b[c]),f[u]?d.push(f):e.push(f);f=A(a,za(e,d)),f.selector=a}return f},i=ga.select=function(a,b,c,e){var f,i,j,k,l,m="function"==typeof a&&a,n=!e&&g(a=m.selector||a);if(c=c||[],1===n.length){if(i=n[0]=n[0].slice(0),i.length>2&&"ID"===(j=i[0]).type&&9===b.nodeType&&p&&d.relative[i[1].type]){if(b=(d.find.ID(j.matches[0].replace(_,aa),b)||[])[0],!b)return c;m&&(b=b.parentNode),a=a.slice(i.shift().value.length)}f=V.needsContext.test(a)?0:i.length;while(f--){if(j=i[f],d.relative[k=j.type])break;if((l=d.find[k])&&(e=l(j.matches[0].replace(_,aa),$.test(i[0].type)&&qa(b.parentNode)||b))){if(i.splice(f,1),a=e.length&&sa(i),!a)return G.apply(c,e),c;break}}}return(m||h(a,n))(e,b,!p,c,!b||$.test(a)&&qa(b.parentNode)||b),c},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("fieldset"))}),ja(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){if(!c)return a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){if(!c&&"input"===a.nodeName.toLowerCase())return a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(J,function(a,b,c){var d;if(!c)return a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);r.find=x,r.expr=x.selectors,r.expr[":"]=r.expr.pseudos,r.uniqueSort=r.unique=x.uniqueSort,r.text=x.getText,r.isXMLDoc=x.isXML,r.contains=x.contains,r.escapeSelector=x.escape;var y=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&r(a).is(c))break;d.push(a)}return d},z=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},A=r.expr.match.needsContext,B=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,C=/^.[^:#\[\.,]*$/;function D(a,b,c){return r.isFunction(b)?r.grep(a,function(a,d){return!!b.call(a,d,a)!==c}):b.nodeType?r.grep(a,function(a){return a===b!==c}):"string"!=typeof b?r.grep(a,function(a){return i.call(b,a)>-1!==c}):C.test(b)?r.filter(b,a,c):(b=r.filter(b,a),r.grep(a,function(a){return i.call(b,a)>-1!==c&&1===a.nodeType}))}r.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?r.find.matchesSelector(d,a)?[d]:[]:r.find.matches(a,r.grep(b,function(a){return 1===a.nodeType}))},r.fn.extend({find:function(a){var b,c,d=this.length,e=this;if("string"!=typeof a)return this.pushStack(r(a).filter(function(){for(b=0;b<d;b++)if(r.contains(e[b],this))return!0}));for(c=this.pushStack([]),b=0;b<d;b++)r.find(a,e[b],c);return d>1?r.uniqueSort(c):c},filter:function(a){return this.pushStack(D(this,a||[],!1))},not:function(a){return this.pushStack(D(this,a||[],!0))},is:function(a){return!!D(this,"string"==typeof a&&A.test(a)?r(a):a||[],!1).length}});var E,F=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,G=r.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||E,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:F.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof r?b[0]:b,r.merge(this,r.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),B.test(e[1])&&r.isPlainObject(b))for(e in b)r.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&(this[0]=f,this.length=1),this}return a.nodeType?(this[0]=a,this.length=1,this):r.isFunction(a)?void 0!==c.ready?c.ready(a):a(r):r.makeArray(a,this)};G.prototype=r.fn,E=r(d);var H=/^(?:parents|prev(?:Until|All))/,I={children:!0,contents:!0,next:!0,prev:!0};r.fn.extend({has:function(a){var b=r(a,this),c=b.length;return this.filter(function(){for(var a=0;a<c;a++)if(r.contains(this,b[a]))return!0})},closest:function(a,b){var c,d=0,e=this.length,f=[],g="string"!=typeof a&&r(a);if(!A.test(a))for(;d<e;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&r.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?r.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?i.call(r(a),this[0]):i.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(r.uniqueSort(r.merge(this.get(),r(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function J(a,b){while((a=a[b])&&1!==a.nodeType);return a}r.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return y(a,"parentNode")},parentsUntil:function(a,b,c){return y(a,"parentNode",c)},next:function(a){return J(a,"nextSibling")},prev:function(a){return J(a,"previousSibling")},nextAll:function(a){return y(a,"nextSibling")},prevAll:function(a){return y(a,"previousSibling")},nextUntil:function(a,b,c){return y(a,"nextSibling",c)},prevUntil:function(a,b,c){return y(a,"previousSibling",c)},siblings:function(a){return z((a.parentNode||{}).firstChild,a)},children:function(a){return z(a.firstChild)},contents:function(a){return a.contentDocument||r.merge([],a.childNodes)}},function(a,b){r.fn[a]=function(c,d){var e=r.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=r.filter(d,e)),this.length>1&&(I[a]||r.uniqueSort(e),H.test(a)&&e.reverse()),this.pushStack(e)}});var K=/[^\x20\t\r\n\f]+/g;function L(a){var b={};return r.each(a.match(K)||[],function(a,c){b[c]=!0}),b}r.Callbacks=function(a){a="string"==typeof a?L(a):r.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h<f.length)f[h].apply(c[0],c[1])===!1&&a.stopOnFalse&&(h=f.length,c=!1)}a.memory||(c=!1),b=!1,e&&(f=c?[]:"")},j={add:function(){return f&&(c&&!b&&(h=f.length-1,g.push(c)),function d(b){r.each(b,function(b,c){r.isFunction(c)?a.unique&&j.has(c)||f.push(c):c&&c.length&&"string"!==r.type(c)&&d(c)})}(arguments),c&&!b&&i()),this},remove:function(){return r.each(arguments,function(a,b){var c;while((c=r.inArray(b,f,c))>-1)f.splice(c,1),c<=h&&h--}),this},has:function(a){return a?r.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||b||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j};function M(a){return a}function N(a){throw a}function O(a,b,c){var d;try{a&&r.isFunction(d=a.promise)?d.call(a).done(b).fail(c):a&&r.isFunction(d=a.then)?d.call(a,b,c):b.call(void 0,a)}catch(a){c.call(void 0,a)}}r.extend({Deferred:function(b){var c=[["notify","progress",r.Callbacks("memory"),r.Callbacks("memory"),2],["resolve","done",r.Callbacks("once memory"),r.Callbacks("once memory"),0,"resolved"],["reject","fail",r.Callbacks("once memory"),r.Callbacks("once memory"),1,"rejected"]],d="pending",e={state:function(){return d},always:function(){return f.done(arguments).fail(arguments),this},"catch":function(a){return e.then(null,a)},pipe:function(){var a=arguments;return r.Deferred(function(b){r.each(c,function(c,d){var e=r.isFunction(a[d[4]])&&a[d[4]];f[d[1]](function(){var a=e&&e.apply(this,arguments);a&&r.isFunction(a.promise)?a.promise().progress(b.notify).done(b.resolve).fail(b.reject):b[d[0]+"With"](this,e?[a]:arguments)})}),a=null}).promise()},then:function(b,d,e){var f=0;function g(b,c,d,e){return function(){var h=this,i=arguments,j=function(){var a,j;if(!(b<f)){if(a=d.apply(h,i),a===c.promise())throw new TypeError("Thenable self-resolution");j=a&&("object"==typeof a||"function"==typeof a)&&a.then,r.isFunction(j)?e?j.call(a,g(f,c,M,e),g(f,c,N,e)):(f++,j.call(a,g(f,c,M,e),g(f,c,N,e),g(f,c,M,c.notifyWith))):(d!==M&&(h=void 0,i=[a]),(e||c.resolveWith)(h,i))}},k=e?j:function(){try{j()}catch(a){r.Deferred.exceptionHook&&r.Deferred.exceptionHook(a,k.stackTrace),b+1>=f&&(d!==N&&(h=void 0,i=[a]),c.rejectWith(h,i))}};b?k():(r.Deferred.getStackHook&&(k.stackTrace=r.Deferred.getStackHook()),a.setTimeout(k))}}return r.Deferred(function(a){c[0][3].add(g(0,a,r.isFunction(e)?e:M,a.notifyWith)),c[1][3].add(g(0,a,r.isFunction(b)?b:M)),c[2][3].add(g(0,a,r.isFunction(d)?d:N))}).promise()},promise:function(a){return null!=a?r.extend(a,e):e}},f={};return r.each(c,function(a,b){var g=b[2],h=b[5];e[b[1]]=g.add,h&&g.add(function(){d=h},c[3-a][2].disable,c[0][2].lock),g.add(b[3].fire),f[b[0]]=function(){return f[b[0]+"With"](this===f?void 0:this,arguments),this},f[b[0]+"With"]=g.fireWith}),e.promise(f),b&&b.call(f,f),f},when:function(a){var b=arguments.length,c=b,d=Array(c),e=f.call(arguments),g=r.Deferred(),h=function(a){return function(c){d[a]=this,e[a]=arguments.length>1?f.call(arguments):c,--b||g.resolveWith(d,e)}};if(b<=1&&(O(a,g.done(h(c)).resolve,g.reject),"pending"===g.state()||r.isFunction(e[c]&&e[c].then)))return g.then();while(c--)O(e[c],h(c),g.reject);return g.promise()}});var P=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;r.Deferred.exceptionHook=function(b,c){a.console&&a.console.warn&&b&&P.test(b.name)&&a.console.warn("jQuery.Deferred exception: "+b.message,b.stack,c)},r.readyException=function(b){a.setTimeout(function(){throw b})};var Q=r.Deferred();r.fn.ready=function(a){return Q.then(a)["catch"](function(a){r.readyException(a)}),this},r.extend({isReady:!1,readyWait:1,holdReady:function(a){a?r.readyWait++:r.ready(!0)},ready:function(a){(a===!0?--r.readyWait:r.isReady)||(r.isReady=!0,a!==!0&&--r.readyWait>0||Q.resolveWith(d,[r]))}}),r.ready.then=Q.then;function R(){d.removeEventListener("DOMContentLoaded",R),
+a.removeEventListener("load",R),r.ready()}"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(r.ready):(d.addEventListener("DOMContentLoaded",R),a.addEventListener("load",R));var S=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===r.type(c)){e=!0;for(h in c)S(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,r.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(r(a),c)})),b))for(;h<i;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},T=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function U(){this.expando=r.expando+U.uid++}U.uid=1,U.prototype={cache:function(a){var b=a[this.expando];return b||(b={},T(a)&&(a.nodeType?a[this.expando]=b:Object.defineProperty(a,this.expando,{value:b,configurable:!0}))),b},set:function(a,b,c){var d,e=this.cache(a);if("string"==typeof b)e[r.camelCase(b)]=c;else for(d in b)e[r.camelCase(d)]=b[d];return e},get:function(a,b){return void 0===b?this.cache(a):a[this.expando]&&a[this.expando][r.camelCase(b)]},access:function(a,b,c){return void 0===b||b&&"string"==typeof b&&void 0===c?this.get(a,b):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d=a[this.expando];if(void 0!==d){if(void 0!==b){r.isArray(b)?b=b.map(r.camelCase):(b=r.camelCase(b),b=b in d?[b]:b.match(K)||[]),c=b.length;while(c--)delete d[b[c]]}(void 0===b||r.isEmptyObject(d))&&(a.nodeType?a[this.expando]=void 0:delete a[this.expando])}},hasData:function(a){var b=a[this.expando];return void 0!==b&&!r.isEmptyObject(b)}};var V=new U,W=new U,X=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Y=/[A-Z]/g;function Z(a){return"true"===a||"false"!==a&&("null"===a?null:a===+a+""?+a:X.test(a)?JSON.parse(a):a)}function $(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(Y,"-$&").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c=Z(c)}catch(e){}W.set(a,b,c)}else c=void 0;return c}r.extend({hasData:function(a){return W.hasData(a)||V.hasData(a)},data:function(a,b,c){return W.access(a,b,c)},removeData:function(a,b){W.remove(a,b)},_data:function(a,b,c){return V.access(a,b,c)},_removeData:function(a,b){V.remove(a,b)}}),r.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=W.get(f),1===f.nodeType&&!V.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=r.camelCase(d.slice(5)),$(f,d,e[d])));V.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){W.set(this,a)}):S(this,function(b){var c;if(f&&void 0===b){if(c=W.get(f,a),void 0!==c)return c;if(c=$(f,a),void 0!==c)return c}else this.each(function(){W.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){W.remove(this,a)})}}),r.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=V.get(a,b),c&&(!d||r.isArray(c)?d=V.access(a,b,r.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=r.queue(a,b),d=c.length,e=c.shift(),f=r._queueHooks(a,b),g=function(){r.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return V.get(a,c)||V.access(a,c,{empty:r.Callbacks("once memory").add(function(){V.remove(a,[b+"queue",c])})})}}),r.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?r.queue(this[0],a):void 0===b?this:this.each(function(){var c=r.queue(this,a,b);r._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&r.dequeue(this,a)})},dequeue:function(a){return this.each(function(){r.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=r.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=V.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var _=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,aa=new RegExp("^(?:([+-])=|)("+_+")([a-z%]*)$","i"),ba=["Top","Right","Bottom","Left"],ca=function(a,b){return a=b||a,"none"===a.style.display||""===a.style.display&&r.contains(a.ownerDocument,a)&&"none"===r.css(a,"display")},da=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};function ea(a,b,c,d){var e,f=1,g=20,h=d?function(){return d.cur()}:function(){return r.css(a,b,"")},i=h(),j=c&&c[3]||(r.cssNumber[b]?"":"px"),k=(r.cssNumber[b]||"px"!==j&&+i)&&aa.exec(r.css(a,b));if(k&&k[3]!==j){j=j||k[3],c=c||[],k=+i||1;do f=f||".5",k/=f,r.style(a,b,k+j);while(f!==(f=h()/i)&&1!==f&&--g)}return c&&(k=+k||+i||0,e=c[1]?k+(c[1]+1)*c[2]:+c[2],d&&(d.unit=j,d.start=k,d.end=e)),e}var fa={};function ga(a){var b,c=a.ownerDocument,d=a.nodeName,e=fa[d];return e?e:(b=c.body.appendChild(c.createElement(d)),e=r.css(b,"display"),b.parentNode.removeChild(b),"none"===e&&(e="block"),fa[d]=e,e)}function ha(a,b){for(var c,d,e=[],f=0,g=a.length;f<g;f++)d=a[f],d.style&&(c=d.style.display,b?("none"===c&&(e[f]=V.get(d,"display")||null,e[f]||(d.style.display="")),""===d.style.display&&ca(d)&&(e[f]=ga(d))):"none"!==c&&(e[f]="none",V.set(d,"display",c)));for(f=0;f<g;f++)null!=e[f]&&(a[f].style.display=e[f]);return a}r.fn.extend({show:function(){return ha(this,!0)},hide:function(){return ha(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){ca(this)?r(this).show():r(this).hide()})}});var ia=/^(?:checkbox|radio)$/i,ja=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,ka=/^$|\/(?:java|ecma)script/i,la={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};la.optgroup=la.option,la.tbody=la.tfoot=la.colgroup=la.caption=la.thead,la.th=la.td;function ma(a,b){var c;return c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[],void 0===b||b&&r.nodeName(a,b)?r.merge([a],c):c}function na(a,b){for(var c=0,d=a.length;c<d;c++)V.set(a[c],"globalEval",!b||V.get(b[c],"globalEval"))}var oa=/<|&#?\w+;/;function pa(a,b,c,d,e){for(var f,g,h,i,j,k,l=b.createDocumentFragment(),m=[],n=0,o=a.length;n<o;n++)if(f=a[n],f||0===f)if("object"===r.type(f))r.merge(m,f.nodeType?[f]:f);else if(oa.test(f)){g=g||l.appendChild(b.createElement("div")),h=(ja.exec(f)||["",""])[1].toLowerCase(),i=la[h]||la._default,g.innerHTML=i[1]+r.htmlPrefilter(f)+i[2],k=i[0];while(k--)g=g.lastChild;r.merge(m,g.childNodes),g=l.firstChild,g.textContent=""}else m.push(b.createTextNode(f));l.textContent="",n=0;while(f=m[n++])if(d&&r.inArray(f,d)>-1)e&&e.push(f);else if(j=r.contains(f.ownerDocument,f),g=ma(l.appendChild(f),"script"),j&&na(g),c){k=0;while(f=g[k++])ka.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),o.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",o.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var qa=d.documentElement,ra=/^key/,sa=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,ta=/^([^.]*)(?:\.(.+)|)/;function ua(){return!0}function va(){return!1}function wa(){try{return d.activeElement}catch(a){}}function xa(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)xa(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=va;else if(!e)return a;return 1===f&&(g=e,e=function(a){return r().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=r.guid++)),a.each(function(){r.event.add(this,b,e,d,c)})}r.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=V.get(a);if(q){c.handler&&(f=c,c=f.handler,e=f.selector),e&&r.find.matchesSelector(qa,e),c.guid||(c.guid=r.guid++),(i=q.events)||(i=q.events={}),(g=q.handle)||(g=q.handle=function(b){return"undefined"!=typeof r&&r.event.triggered!==b.type?r.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(K)||[""],j=b.length;while(j--)h=ta.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n&&(l=r.event.special[n]||{},n=(e?l.delegateType:l.bindType)||n,l=r.event.special[n]||{},k=r.extend({type:n,origType:p,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&r.expr.match.needsContext.test(e),namespace:o.join(".")},f),(m=i[n])||(m=i[n]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,o,g)!==!1||a.addEventListener&&a.addEventListener(n,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),r.event.global[n]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=V.hasData(a)&&V.get(a);if(q&&(i=q.events)){b=(b||"").match(K)||[""],j=b.length;while(j--)if(h=ta.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n){l=r.event.special[n]||{},n=(d?l.delegateType:l.bindType)||n,m=i[n]||[],h=h[2]&&new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&p!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,o,q.handle)!==!1||r.removeEvent(a,n,q.handle),delete i[n])}else for(n in i)r.event.remove(a,n+b[j],c,d,!0);r.isEmptyObject(i)&&V.remove(a,"handle events")}},dispatch:function(a){var b=r.event.fix(a),c,d,e,f,g,h,i=new Array(arguments.length),j=(V.get(this,"events")||{})[b.type]||[],k=r.event.special[b.type]||{};for(i[0]=b,c=1;c<arguments.length;c++)i[c]=arguments[c];if(b.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,b)!==!1){h=r.event.handlers.call(this,b,j),c=0;while((f=h[c++])&&!b.isPropagationStopped()){b.currentTarget=f.elem,d=0;while((g=f.handlers[d++])&&!b.isImmediatePropagationStopped())b.rnamespace&&!b.rnamespace.test(g.namespace)||(b.handleObj=g,b.data=g.data,e=((r.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(b.result=e)===!1&&(b.preventDefault(),b.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,b),b.result}},handlers:function(a,b){var c,d,e,f,g,h=[],i=b.delegateCount,j=a.target;if(i&&j.nodeType&&!("click"===a.type&&a.button>=1))for(;j!==this;j=j.parentNode||this)if(1===j.nodeType&&("click"!==a.type||j.disabled!==!0)){for(f=[],g={},c=0;c<i;c++)d=b[c],e=d.selector+" ",void 0===g[e]&&(g[e]=d.needsContext?r(e,this).index(j)>-1:r.find(e,this,null,[j]).length),g[e]&&f.push(d);f.length&&h.push({elem:j,handlers:f})}return j=this,i<b.length&&h.push({elem:j,handlers:b.slice(i)}),h},addProp:function(a,b){Object.defineProperty(r.Event.prototype,a,{enumerable:!0,configurable:!0,get:r.isFunction(b)?function(){if(this.originalEvent)return b(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[a]},set:function(b){Object.defineProperty(this,a,{enumerable:!0,configurable:!0,writable:!0,value:b})}})},fix:function(a){return a[r.expando]?a:new r.Event(a)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==wa()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===wa()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&r.nodeName(this,"input"))return this.click(),!1},_default:function(a){return r.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}}},r.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c)},r.Event=function(a,b){return this instanceof r.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?ua:va,this.target=a.target&&3===a.target.nodeType?a.target.parentNode:a.target,this.currentTarget=a.currentTarget,this.relatedTarget=a.relatedTarget):this.type=a,b&&r.extend(this,b),this.timeStamp=a&&a.timeStamp||r.now(),void(this[r.expando]=!0)):new r.Event(a,b)},r.Event.prototype={constructor:r.Event,isDefaultPrevented:va,isPropagationStopped:va,isImmediatePropagationStopped:va,isSimulated:!1,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ua,a&&!this.isSimulated&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=ua,a&&!this.isSimulated&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=ua,a&&!this.isSimulated&&a.stopImmediatePropagation(),this.stopPropagation()}},r.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(a){var b=a.button;return null==a.which&&ra.test(a.type)?null!=a.charCode?a.charCode:a.keyCode:!a.which&&void 0!==b&&sa.test(a.type)?1&b?1:2&b?3:4&b?2:0:a.which}},r.event.addProp),r.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){r.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return e&&(e===d||r.contains(d,e))||(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),r.fn.extend({on:function(a,b,c,d){return xa(this,a,b,c,d)},one:function(a,b,c,d){return xa(this,a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,r(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return b!==!1&&"function"!=typeof b||(c=b,b=void 0),c===!1&&(c=va),this.each(function(){r.event.remove(this,a,c,b)})}});var ya=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,za=/<script|<style|<link/i,Aa=/checked\s*(?:[^=]|=\s*.checked.)/i,Ba=/^true\/(.*)/,Ca=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Da(a,b){return r.nodeName(a,"table")&&r.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a:a}function Ea(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function Fa(a){var b=Ba.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Ga(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(V.hasData(a)&&(f=V.access(a),g=V.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;c<d;c++)r.event.add(b,e,j[e][c])}W.hasData(a)&&(h=W.access(a),i=r.extend({},h),W.set(b,i))}}function Ha(a,b){var c=b.nodeName.toLowerCase();"input"===c&&ia.test(a.type)?b.checked=a.checked:"input"!==c&&"textarea"!==c||(b.defaultValue=a.defaultValue)}function Ia(a,b,c,d){b=g.apply([],b);var e,f,h,i,j,k,l=0,m=a.length,n=m-1,q=b[0],s=r.isFunction(q);if(s||m>1&&"string"==typeof q&&!o.checkClone&&Aa.test(q))return a.each(function(e){var f=a.eq(e);s&&(b[0]=q.call(this,e,f.html())),Ia(f,b,c,d)});if(m&&(e=pa(b,a[0].ownerDocument,!1,a,d),f=e.firstChild,1===e.childNodes.length&&(e=f),f||d)){for(h=r.map(ma(e,"script"),Ea),i=h.length;l<m;l++)j=e,l!==n&&(j=r.clone(j,!0,!0),i&&r.merge(h,ma(j,"script"))),c.call(a[l],j,l);if(i)for(k=h[h.length-1].ownerDocument,r.map(h,Fa),l=0;l<i;l++)j=h[l],ka.test(j.type||"")&&!V.access(j,"globalEval")&&r.contains(k,j)&&(j.src?r._evalUrl&&r._evalUrl(j.src):p(j.textContent.replace(Ca,""),k))}return a}function Ja(a,b,c){for(var d,e=b?r.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||r.cleanData(ma(d)),d.parentNode&&(c&&r.contains(d.ownerDocument,d)&&na(ma(d,"script")),d.parentNode.removeChild(d));return a}r.extend({htmlPrefilter:function(a){return a.replace(ya,"<$1></$2>")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=r.contains(a.ownerDocument,a);if(!(o.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||r.isXMLDoc(a)))for(g=ma(h),f=ma(a),d=0,e=f.length;d<e;d++)Ha(f[d],g[d]);if(b)if(c)for(f=f||ma(a),g=g||ma(h),d=0,e=f.length;d<e;d++)Ga(f[d],g[d]);else Ga(a,h);return g=ma(h,"script"),g.length>0&&na(g,!i&&ma(a,"script")),h},cleanData:function(a){for(var b,c,d,e=r.event.special,f=0;void 0!==(c=a[f]);f++)if(T(c)){if(b=c[V.expando]){if(b.events)for(d in b.events)e[d]?r.event.remove(c,d):r.removeEvent(c,d,b.handle);c[V.expando]=void 0}c[W.expando]&&(c[W.expando]=void 0)}}}),r.fn.extend({detach:function(a){return Ja(this,a,!0)},remove:function(a){return Ja(this,a)},text:function(a){return S(this,function(a){return void 0===a?r.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return Ia(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Da(this,a);b.appendChild(a)}})},prepend:function(){return Ia(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Da(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return Ia(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return Ia(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(r.cleanData(ma(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null!=a&&a,b=null==b?a:b,this.map(function(){return r.clone(this,a,b)})},html:function(a){return S(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!za.test(a)&&!la[(ja.exec(a)||["",""])[1].toLowerCase()]){a=r.htmlPrefilter(a);try{for(;c<d;c++)b=this[c]||{},1===b.nodeType&&(r.cleanData(ma(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=[];return Ia(this,arguments,function(b){var c=this.parentNode;r.inArray(this,a)<0&&(r.cleanData(ma(this)),c&&c.replaceChild(b,this))},a)}}),r.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){r.fn[a]=function(a){for(var c,d=[],e=r(a),f=e.length-1,g=0;g<=f;g++)c=g===f?this:this.clone(!0),r(e[g])[b](c),h.apply(d,c.get());return this.pushStack(d)}});var Ka=/^margin/,La=new RegExp("^("+_+")(?!px)[a-z%]+$","i"),Ma=function(b){var c=b.ownerDocument.defaultView;return c&&c.opener||(c=a),c.getComputedStyle(b)};!function(){function b(){if(i){i.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",i.innerHTML="",qa.appendChild(h);var b=a.getComputedStyle(i);c="1%"!==b.top,g="2px"===b.marginLeft,e="4px"===b.width,i.style.marginRight="50%",f="4px"===b.marginRight,qa.removeChild(h),i=null}}var c,e,f,g,h=d.createElement("div"),i=d.createElement("div");i.style&&(i.style.backgroundClip="content-box",i.cloneNode(!0).style.backgroundClip="",o.clearCloneStyle="content-box"===i.style.backgroundClip,h.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",h.appendChild(i),r.extend(o,{pixelPosition:function(){return b(),c},boxSizingReliable:function(){return b(),e},pixelMarginRight:function(){return b(),f},reliableMarginLeft:function(){return b(),g}}))}();function Na(a,b,c){var d,e,f,g,h=a.style;return c=c||Ma(a),c&&(g=c.getPropertyValue(b)||c[b],""!==g||r.contains(a.ownerDocument,a)||(g=r.style(a,b)),!o.pixelMarginRight()&&La.test(g)&&Ka.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0!==g?g+"":g}function Oa(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}var Pa=/^(none|table(?!-c[ea]).+)/,Qa={position:"absolute",visibility:"hidden",display:"block"},Ra={letterSpacing:"0",fontWeight:"400"},Sa=["Webkit","Moz","ms"],Ta=d.createElement("div").style;function Ua(a){if(a in Ta)return a;var b=a[0].toUpperCase()+a.slice(1),c=Sa.length;while(c--)if(a=Sa[c]+b,a in Ta)return a}function Va(a,b,c){var d=aa.exec(b);return d?Math.max(0,d[2]-(c||0))+(d[3]||"px"):b}function Wa(a,b,c,d,e){var f,g=0;for(f=c===(d?"border":"content")?4:"width"===b?1:0;f<4;f+=2)"margin"===c&&(g+=r.css(a,c+ba[f],!0,e)),d?("content"===c&&(g-=r.css(a,"padding"+ba[f],!0,e)),"margin"!==c&&(g-=r.css(a,"border"+ba[f]+"Width",!0,e))):(g+=r.css(a,"padding"+ba[f],!0,e),"padding"!==c&&(g+=r.css(a,"border"+ba[f]+"Width",!0,e)));return g}function Xa(a,b,c){var d,e=!0,f=Ma(a),g="border-box"===r.css(a,"boxSizing",!1,f);if(a.getClientRects().length&&(d=a.getBoundingClientRect()[b]),d<=0||null==d){if(d=Na(a,b,f),(d<0||null==d)&&(d=a.style[b]),La.test(d))return d;e=g&&(o.boxSizingReliable()||d===a.style[b]),d=parseFloat(d)||0}return d+Wa(a,b,c||(g?"border":"content"),e,f)+"px"}r.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Na(a,"opacity");return""===c?"1":c}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=r.camelCase(b),i=a.style;return b=r.cssProps[h]||(r.cssProps[h]=Ua(h)||h),g=r.cssHooks[b]||r.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=aa.exec(c))&&e[1]&&(c=ea(a,b,e),f="number"),null!=c&&c===c&&("number"===f&&(c+=e&&e[3]||(r.cssNumber[h]?"":"px")),o.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=r.camelCase(b);return b=r.cssProps[h]||(r.cssProps[h]=Ua(h)||h),g=r.cssHooks[b]||r.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=Na(a,b,d)),"normal"===e&&b in Ra&&(e=Ra[b]),""===c||c?(f=parseFloat(e),c===!0||isFinite(f)?f||0:e):e}}),r.each(["height","width"],function(a,b){r.cssHooks[b]={get:function(a,c,d){if(c)return!Pa.test(r.css(a,"display"))||a.getClientRects().length&&a.getBoundingClientRect().width?Xa(a,b,d):da(a,Qa,function(){return Xa(a,b,d)})},set:function(a,c,d){var e,f=d&&Ma(a),g=d&&Wa(a,b,d,"border-box"===r.css(a,"boxSizing",!1,f),f);return g&&(e=aa.exec(c))&&"px"!==(e[3]||"px")&&(a.style[b]=c,c=r.css(a,b)),Va(a,c,g)}}}),r.cssHooks.marginLeft=Oa(o.reliableMarginLeft,function(a,b){if(b)return(parseFloat(Na(a,"marginLeft"))||a.getBoundingClientRect().left-da(a,{marginLeft:0},function(){return a.getBoundingClientRect().left}))+"px"}),r.each({margin:"",padding:"",border:"Width"},function(a,b){r.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];d<4;d++)e[a+ba[d]+b]=f[d]||f[d-2]||f[0];return e}},Ka.test(a)||(r.cssHooks[a+b].set=Va)}),r.fn.extend({css:function(a,b){return S(this,function(a,b,c){var d,e,f={},g=0;if(r.isArray(b)){for(d=Ma(a),e=b.length;g<e;g++)f[b[g]]=r.css(a,b[g],!1,d);return f}return void 0!==c?r.style(a,b,c):r.css(a,b)},a,b,arguments.length>1)}});function Ya(a,b,c,d,e){return new Ya.prototype.init(a,b,c,d,e)}r.Tween=Ya,Ya.prototype={constructor:Ya,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||r.easing._default,this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(r.cssNumber[c]?"":"px")},cur:function(){var a=Ya.propHooks[this.prop];return a&&a.get?a.get(this):Ya.propHooks._default.get(this)},run:function(a){var b,c=Ya.propHooks[this.prop];return this.options.duration?this.pos=b=r.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Ya.propHooks._default.set(this),this}},Ya.prototype.init.prototype=Ya.prototype,Ya.propHooks={_default:{get:function(a){var b;return 1!==a.elem.nodeType||null!=a.elem[a.prop]&&null==a.elem.style[a.prop]?a.elem[a.prop]:(b=r.css(a.elem,a.prop,""),b&&"auto"!==b?b:0)},set:function(a){r.fx.step[a.prop]?r.fx.step[a.prop](a):1!==a.elem.nodeType||null==a.elem.style[r.cssProps[a.prop]]&&!r.cssHooks[a.prop]?a.elem[a.prop]=a.now:r.style(a.elem,a.prop,a.now+a.unit)}}},Ya.propHooks.scrollTop=Ya.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},r.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},_default:"swing"},r.fx=Ya.prototype.init,r.fx.step={};var Za,$a,_a=/^(?:toggle|show|hide)$/,ab=/queueHooks$/;function bb(){$a&&(a.requestAnimationFrame(bb),r.fx.tick())}function cb(){return a.setTimeout(function(){Za=void 0}),Za=r.now()}function db(a,b){var c,d=0,e={height:a};for(b=b?1:0;d<4;d+=2-b)c=ba[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function eb(a,b,c){for(var d,e=(hb.tweeners[b]||[]).concat(hb.tweeners["*"]),f=0,g=e.length;f<g;f++)if(d=e[f].call(c,b,a))return d}function fb(a,b,c){var d,e,f,g,h,i,j,k,l="width"in b||"height"in b,m=this,n={},o=a.style,p=a.nodeType&&ca(a),q=V.get(a,"fxshow");c.queue||(g=r._queueHooks(a,"fx"),null==g.unqueued&&(g.unqueued=0,h=g.empty.fire,g.empty.fire=function(){g.unqueued||h()}),g.unqueued++,m.always(function(){m.always(function(){g.unqueued--,r.queue(a,"fx").length||g.empty.fire()})}));for(d in b)if(e=b[d],_a.test(e)){if(delete b[d],f=f||"toggle"===e,e===(p?"hide":"show")){if("show"!==e||!q||void 0===q[d])continue;p=!0}n[d]=q&&q[d]||r.style(a,d)}if(i=!r.isEmptyObject(b),i||!r.isEmptyObject(n)){l&&1===a.nodeType&&(c.overflow=[o.overflow,o.overflowX,o.overflowY],j=q&&q.display,null==j&&(j=V.get(a,"display")),k=r.css(a,"display"),"none"===k&&(j?k=j:(ha([a],!0),j=a.style.display||j,k=r.css(a,"display"),ha([a]))),("inline"===k||"inline-block"===k&&null!=j)&&"none"===r.css(a,"float")&&(i||(m.done(function(){o.display=j}),null==j&&(k=o.display,j="none"===k?"":k)),o.display="inline-block")),c.overflow&&(o.overflow="hidden",m.always(function(){o.overflow=c.overflow[0],o.overflowX=c.overflow[1],o.overflowY=c.overflow[2]})),i=!1;for(d in n)i||(q?"hidden"in q&&(p=q.hidden):q=V.access(a,"fxshow",{display:j}),f&&(q.hidden=!p),p&&ha([a],!0),m.done(function(){p||ha([a]),V.remove(a,"fxshow");for(d in n)r.style(a,d,n[d])})),i=eb(p?q[d]:0,d,m),d in q||(q[d]=i.start,p&&(i.end=i.start,i.start=0))}}function gb(a,b){var c,d,e,f,g;for(c in a)if(d=r.camelCase(c),e=b[d],f=a[c],r.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=r.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function hb(a,b,c){var d,e,f=0,g=hb.prefilters.length,h=r.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=Za||cb(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;g<i;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),f<1&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:r.extend({},b),opts:r.extend(!0,{specialEasing:{},easing:r.easing._default},c),originalProperties:b,originalOptions:c,startTime:Za||cb(),duration:c.duration,tweens:[],createTween:function(b,c){var d=r.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;c<d;c++)j.tweens[c].run(1);return b?(h.notifyWith(a,[j,1,0]),h.resolveWith(a,[j,b])):h.rejectWith(a,[j,b]),this}}),k=j.props;for(gb(k,j.opts.specialEasing);f<g;f++)if(d=hb.prefilters[f].call(j,a,k,j.opts))return r.isFunction(d.stop)&&(r._queueHooks(j.elem,j.opts.queue).stop=r.proxy(d.stop,d)),d;return r.map(k,eb,j),r.isFunction(j.opts.start)&&j.opts.start.call(a,j),r.fx.timer(r.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}r.Animation=r.extend(hb,{tweeners:{"*":[function(a,b){var c=this.createTween(a,b);return ea(c.elem,a,aa.exec(b),c),c}]},tweener:function(a,b){r.isFunction(a)?(b=a,a=["*"]):a=a.match(K);for(var c,d=0,e=a.length;d<e;d++)c=a[d],hb.tweeners[c]=hb.tweeners[c]||[],hb.tweeners[c].unshift(b)},prefilters:[fb],prefilter:function(a,b){b?hb.prefilters.unshift(a):hb.prefilters.push(a)}}),r.speed=function(a,b,c){var e=a&&"object"==typeof a?r.extend({},a):{complete:c||!c&&b||r.isFunction(a)&&a,duration:a,easing:c&&b||b&&!r.isFunction(b)&&b};return r.fx.off||d.hidden?e.duration=0:"number"!=typeof e.duration&&(e.duration in r.fx.speeds?e.duration=r.fx.speeds[e.duration]:e.duration=r.fx.speeds._default),null!=e.queue&&e.queue!==!0||(e.queue="fx"),e.old=e.complete,e.complete=function(){r.isFunction(e.old)&&e.old.call(this),e.queue&&r.dequeue(this,e.queue)},e},r.fn.extend({fadeTo:function(a,b,c,d){return this.filter(ca).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=r.isEmptyObject(a),f=r.speed(b,c,d),g=function(){var b=hb(this,r.extend({},a),f);(e||V.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=r.timers,g=V.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&ab.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));!b&&c||r.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=V.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=r.timers,g=d?d.length:0;for(c.finish=!0,r.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;b<g;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),r.each(["toggle","show","hide"],function(a,b){var c=r.fn[b];r.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(db(b,!0),a,d,e)}}),r.each({slideDown:db("show"),slideUp:db("hide"),slideToggle:db("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){r.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),r.timers=[],r.fx.tick=function(){var a,b=0,c=r.timers;for(Za=r.now();b<c.length;b++)a=c[b],a()||c[b]!==a||c.splice(b--,1);c.length||r.fx.stop(),Za=void 0},r.fx.timer=function(a){r.timers.push(a),a()?r.fx.start():r.timers.pop()},r.fx.interval=13,r.fx.start=function(){$a||($a=a.requestAnimationFrame?a.requestAnimationFrame(bb):a.setInterval(r.fx.tick,r.fx.interval))},r.fx.stop=function(){a.cancelAnimationFrame?a.cancelAnimationFrame($a):a.clearInterval($a),$a=null},r.fx.speeds={slow:600,fast:200,_default:400},r.fn.delay=function(b,c){return b=r.fx?r.fx.speeds[b]||b:b,c=c||"fx",this.queue(c,function(c,d){var e=a.setTimeout(c,b);d.stop=function(){a.clearTimeout(e)}})},function(){var a=d.createElement("input"),b=d.createElement("select"),c=b.appendChild(d.createElement("option"));a.type="checkbox",o.checkOn=""!==a.value,o.optSelected=c.selected,a=d.createElement("input"),a.value="t",a.type="radio",o.radioValue="t"===a.value}();var ib,jb=r.expr.attrHandle;r.fn.extend({attr:function(a,b){return S(this,r.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){r.removeAttr(this,a)})}}),r.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return"undefined"==typeof a.getAttribute?r.prop(a,b,c):(1===f&&r.isXMLDoc(a)||(e=r.attrHooks[b.toLowerCase()]||(r.expr.match.bool.test(b)?ib:void 0)),
+void 0!==c?null===c?void r.removeAttr(a,b):e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:(a.setAttribute(b,c+""),c):e&&"get"in e&&null!==(d=e.get(a,b))?d:(d=r.find.attr(a,b),null==d?void 0:d))},attrHooks:{type:{set:function(a,b){if(!o.radioValue&&"radio"===b&&r.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}},removeAttr:function(a,b){var c,d=0,e=b&&b.match(K);if(e&&1===a.nodeType)while(c=e[d++])a.removeAttribute(c)}}),ib={set:function(a,b,c){return b===!1?r.removeAttr(a,c):a.setAttribute(c,c),c}},r.each(r.expr.match.bool.source.match(/\w+/g),function(a,b){var c=jb[b]||r.find.attr;jb[b]=function(a,b,d){var e,f,g=b.toLowerCase();return d||(f=jb[g],jb[g]=e,e=null!=c(a,b,d)?g:null,jb[g]=f),e}});var kb=/^(?:input|select|textarea|button)$/i,lb=/^(?:a|area)$/i;r.fn.extend({prop:function(a,b){return S(this,r.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[r.propFix[a]||a]})}}),r.extend({prop:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return 1===f&&r.isXMLDoc(a)||(b=r.propFix[b]||b,e=r.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=r.find.attr(a,"tabindex");return b?parseInt(b,10):kb.test(a.nodeName)||lb.test(a.nodeName)&&a.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),o.optSelected||(r.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null},set:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}}),r.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){r.propFix[this.toLowerCase()]=this});function mb(a){var b=a.match(K)||[];return b.join(" ")}function nb(a){return a.getAttribute&&a.getAttribute("class")||""}r.fn.extend({addClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).addClass(a.call(this,b,nb(this)))});if("string"==typeof a&&a){b=a.match(K)||[];while(c=this[i++])if(e=nb(c),d=1===c.nodeType&&" "+mb(e)+" "){g=0;while(f=b[g++])d.indexOf(" "+f+" ")<0&&(d+=f+" ");h=mb(d),e!==h&&c.setAttribute("class",h)}}return this},removeClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).removeClass(a.call(this,b,nb(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof a&&a){b=a.match(K)||[];while(c=this[i++])if(e=nb(c),d=1===c.nodeType&&" "+mb(e)+" "){g=0;while(f=b[g++])while(d.indexOf(" "+f+" ")>-1)d=d.replace(" "+f+" "," ");h=mb(d),e!==h&&c.setAttribute("class",h)}}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):r.isFunction(a)?this.each(function(c){r(this).toggleClass(a.call(this,c,nb(this),b),b)}):this.each(function(){var b,d,e,f;if("string"===c){d=0,e=r(this),f=a.match(K)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else void 0!==a&&"boolean"!==c||(b=nb(this),b&&V.set(this,"__className__",b),this.setAttribute&&this.setAttribute("class",b||a===!1?"":V.get(this,"__className__")||""))})},hasClass:function(a){var b,c,d=0;b=" "+a+" ";while(c=this[d++])if(1===c.nodeType&&(" "+mb(nb(c))+" ").indexOf(b)>-1)return!0;return!1}});var ob=/\r/g;r.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=r.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,r(this).val()):a,null==e?e="":"number"==typeof e?e+="":r.isArray(e)&&(e=r.map(e,function(a){return null==a?"":a+""})),b=r.valHooks[this.type]||r.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=r.valHooks[e.type]||r.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(ob,""):null==c?"":c)}}}),r.extend({valHooks:{option:{get:function(a){var b=r.find.attr(a,"value");return null!=b?b:mb(r.text(a))}},select:{get:function(a){var b,c,d,e=a.options,f=a.selectedIndex,g="select-one"===a.type,h=g?null:[],i=g?f+1:e.length;for(d=f<0?i:g?f:0;d<i;d++)if(c=e[d],(c.selected||d===f)&&!c.disabled&&(!c.parentNode.disabled||!r.nodeName(c.parentNode,"optgroup"))){if(b=r(c).val(),g)return b;h.push(b)}return h},set:function(a,b){var c,d,e=a.options,f=r.makeArray(b),g=e.length;while(g--)d=e[g],(d.selected=r.inArray(r.valHooks.option.get(d),f)>-1)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),r.each(["radio","checkbox"],function(){r.valHooks[this]={set:function(a,b){if(r.isArray(b))return a.checked=r.inArray(r(a).val(),b)>-1}},o.checkOn||(r.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var pb=/^(?:focusinfocus|focusoutblur)$/;r.extend(r.event,{trigger:function(b,c,e,f){var g,h,i,j,k,m,n,o=[e||d],p=l.call(b,"type")?b.type:b,q=l.call(b,"namespace")?b.namespace.split("."):[];if(h=i=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!pb.test(p+r.event.triggered)&&(p.indexOf(".")>-1&&(q=p.split("."),p=q.shift(),q.sort()),k=p.indexOf(":")<0&&"on"+p,b=b[r.expando]?b:new r.Event(p,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=q.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:r.makeArray(c,[b]),n=r.event.special[p]||{},f||!n.trigger||n.trigger.apply(e,c)!==!1)){if(!f&&!n.noBubble&&!r.isWindow(e)){for(j=n.delegateType||p,pb.test(j+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),i=h;i===(e.ownerDocument||d)&&o.push(i.defaultView||i.parentWindow||a)}g=0;while((h=o[g++])&&!b.isPropagationStopped())b.type=g>1?j:n.bindType||p,m=(V.get(h,"events")||{})[b.type]&&V.get(h,"handle"),m&&m.apply(h,c),m=k&&h[k],m&&m.apply&&T(h)&&(b.result=m.apply(h,c),b.result===!1&&b.preventDefault());return b.type=p,f||b.isDefaultPrevented()||n._default&&n._default.apply(o.pop(),c)!==!1||!T(e)||k&&r.isFunction(e[p])&&!r.isWindow(e)&&(i=e[k],i&&(e[k]=null),r.event.triggered=p,e[p](),r.event.triggered=void 0,i&&(e[k]=i)),b.result}},simulate:function(a,b,c){var d=r.extend(new r.Event,c,{type:a,isSimulated:!0});r.event.trigger(d,null,b)}}),r.fn.extend({trigger:function(a,b){return this.each(function(){r.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];if(c)return r.event.trigger(a,b,c,!0)}}),r.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(a,b){r.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),r.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),o.focusin="onfocusin"in a,o.focusin||r.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){r.event.simulate(b,a.target,r.event.fix(a))};r.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=V.access(d,b);e||d.addEventListener(a,c,!0),V.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=V.access(d,b)-1;e?V.access(d,b,e):(d.removeEventListener(a,c,!0),V.remove(d,b))}}});var qb=a.location,rb=r.now(),sb=/\?/;r.parseXML=function(b){var c;if(!b||"string"!=typeof b)return null;try{c=(new a.DOMParser).parseFromString(b,"text/xml")}catch(d){c=void 0}return c&&!c.getElementsByTagName("parsererror").length||r.error("Invalid XML: "+b),c};var tb=/\[\]$/,ub=/\r?\n/g,vb=/^(?:submit|button|image|reset|file)$/i,wb=/^(?:input|select|textarea|keygen)/i;function xb(a,b,c,d){var e;if(r.isArray(b))r.each(b,function(b,e){c||tb.test(a)?d(a,e):xb(a+"["+("object"==typeof e&&null!=e?b:"")+"]",e,c,d)});else if(c||"object"!==r.type(b))d(a,b);else for(e in b)xb(a+"["+e+"]",b[e],c,d)}r.param=function(a,b){var c,d=[],e=function(a,b){var c=r.isFunction(b)?b():b;d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(null==c?"":c)};if(r.isArray(a)||a.jquery&&!r.isPlainObject(a))r.each(a,function(){e(this.name,this.value)});else for(c in a)xb(c,a[c],b,e);return d.join("&")},r.fn.extend({serialize:function(){return r.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=r.prop(this,"elements");return a?r.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!r(this).is(":disabled")&&wb.test(this.nodeName)&&!vb.test(a)&&(this.checked||!ia.test(a))}).map(function(a,b){var c=r(this).val();return null==c?null:r.isArray(c)?r.map(c,function(a){return{name:b.name,value:a.replace(ub,"\r\n")}}):{name:b.name,value:c.replace(ub,"\r\n")}}).get()}});var yb=/%20/g,zb=/#.*$/,Ab=/([?&])_=[^&]*/,Bb=/^(.*?):[ \t]*([^\r\n]*)$/gm,Cb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Db=/^(?:GET|HEAD)$/,Eb=/^\/\//,Fb={},Gb={},Hb="*/".concat("*"),Ib=d.createElement("a");Ib.href=qb.href;function Jb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(K)||[];if(r.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Kb(a,b,c,d){var e={},f=a===Gb;function g(h){var i;return e[h]=!0,r.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function Lb(a,b){var c,d,e=r.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&r.extend(!0,a,d),a}function Mb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}if(f)return f!==i[0]&&i.unshift(f),c[f]}function Nb(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}r.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:qb.href,type:"GET",isLocal:Cb.test(qb.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Hb,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":r.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Lb(Lb(a,r.ajaxSettings),b):Lb(r.ajaxSettings,a)},ajaxPrefilter:Jb(Fb),ajaxTransport:Jb(Gb),ajax:function(b,c){"object"==typeof b&&(c=b,b=void 0),c=c||{};var e,f,g,h,i,j,k,l,m,n,o=r.ajaxSetup({},c),p=o.context||o,q=o.context&&(p.nodeType||p.jquery)?r(p):r.event,s=r.Deferred(),t=r.Callbacks("once memory"),u=o.statusCode||{},v={},w={},x="canceled",y={readyState:0,getResponseHeader:function(a){var b;if(k){if(!h){h={};while(b=Bb.exec(g))h[b[1].toLowerCase()]=b[2]}b=h[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return k?g:null},setRequestHeader:function(a,b){return null==k&&(a=w[a.toLowerCase()]=w[a.toLowerCase()]||a,v[a]=b),this},overrideMimeType:function(a){return null==k&&(o.mimeType=a),this},statusCode:function(a){var b;if(a)if(k)y.always(a[y.status]);else for(b in a)u[b]=[u[b],a[b]];return this},abort:function(a){var b=a||x;return e&&e.abort(b),A(0,b),this}};if(s.promise(y),o.url=((b||o.url||qb.href)+"").replace(Eb,qb.protocol+"//"),o.type=c.method||c.type||o.method||o.type,o.dataTypes=(o.dataType||"*").toLowerCase().match(K)||[""],null==o.crossDomain){j=d.createElement("a");try{j.href=o.url,j.href=j.href,o.crossDomain=Ib.protocol+"//"+Ib.host!=j.protocol+"//"+j.host}catch(z){o.crossDomain=!0}}if(o.data&&o.processData&&"string"!=typeof o.data&&(o.data=r.param(o.data,o.traditional)),Kb(Fb,o,c,y),k)return y;l=r.event&&o.global,l&&0===r.active++&&r.event.trigger("ajaxStart"),o.type=o.type.toUpperCase(),o.hasContent=!Db.test(o.type),f=o.url.replace(zb,""),o.hasContent?o.data&&o.processData&&0===(o.contentType||"").indexOf("application/x-www-form-urlencoded")&&(o.data=o.data.replace(yb,"+")):(n=o.url.slice(f.length),o.data&&(f+=(sb.test(f)?"&":"?")+o.data,delete o.data),o.cache===!1&&(f=f.replace(Ab,"$1"),n=(sb.test(f)?"&":"?")+"_="+rb++ +n),o.url=f+n),o.ifModified&&(r.lastModified[f]&&y.setRequestHeader("If-Modified-Since",r.lastModified[f]),r.etag[f]&&y.setRequestHeader("If-None-Match",r.etag[f])),(o.data&&o.hasContent&&o.contentType!==!1||c.contentType)&&y.setRequestHeader("Content-Type",o.contentType),y.setRequestHeader("Accept",o.dataTypes[0]&&o.accepts[o.dataTypes[0]]?o.accepts[o.dataTypes[0]]+("*"!==o.dataTypes[0]?", "+Hb+"; q=0.01":""):o.accepts["*"]);for(m in o.headers)y.setRequestHeader(m,o.headers[m]);if(o.beforeSend&&(o.beforeSend.call(p,y,o)===!1||k))return y.abort();if(x="abort",t.add(o.complete),y.done(o.success),y.fail(o.error),e=Kb(Gb,o,c,y)){if(y.readyState=1,l&&q.trigger("ajaxSend",[y,o]),k)return y;o.async&&o.timeout>0&&(i=a.setTimeout(function(){y.abort("timeout")},o.timeout));try{k=!1,e.send(v,A)}catch(z){if(k)throw z;A(-1,z)}}else A(-1,"No Transport");function A(b,c,d,h){var j,m,n,v,w,x=c;k||(k=!0,i&&a.clearTimeout(i),e=void 0,g=h||"",y.readyState=b>0?4:0,j=b>=200&&b<300||304===b,d&&(v=Mb(o,y,d)),v=Nb(o,v,y,j),j?(o.ifModified&&(w=y.getResponseHeader("Last-Modified"),w&&(r.lastModified[f]=w),w=y.getResponseHeader("etag"),w&&(r.etag[f]=w)),204===b||"HEAD"===o.type?x="nocontent":304===b?x="notmodified":(x=v.state,m=v.data,n=v.error,j=!n)):(n=x,!b&&x||(x="error",b<0&&(b=0))),y.status=b,y.statusText=(c||x)+"",j?s.resolveWith(p,[m,x,y]):s.rejectWith(p,[y,x,n]),y.statusCode(u),u=void 0,l&&q.trigger(j?"ajaxSuccess":"ajaxError",[y,o,j?m:n]),t.fireWith(p,[y,x]),l&&(q.trigger("ajaxComplete",[y,o]),--r.active||r.event.trigger("ajaxStop")))}return y},getJSON:function(a,b,c){return r.get(a,b,c,"json")},getScript:function(a,b){return r.get(a,void 0,b,"script")}}),r.each(["get","post"],function(a,b){r[b]=function(a,c,d,e){return r.isFunction(c)&&(e=e||d,d=c,c=void 0),r.ajax(r.extend({url:a,type:b,dataType:e,data:c,success:d},r.isPlainObject(a)&&a))}}),r._evalUrl=function(a){return r.ajax({url:a,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},r.fn.extend({wrapAll:function(a){var b;return this[0]&&(r.isFunction(a)&&(a=a.call(this[0])),b=r(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this},wrapInner:function(a){return r.isFunction(a)?this.each(function(b){r(this).wrapInner(a.call(this,b))}):this.each(function(){var b=r(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=r.isFunction(a);return this.each(function(c){r(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(a){return this.parent(a).not("body").each(function(){r(this).replaceWith(this.childNodes)}),this}}),r.expr.pseudos.hidden=function(a){return!r.expr.pseudos.visible(a)},r.expr.pseudos.visible=function(a){return!!(a.offsetWidth||a.offsetHeight||a.getClientRects().length)},r.ajaxSettings.xhr=function(){try{return new a.XMLHttpRequest}catch(b){}};var Ob={0:200,1223:204},Pb=r.ajaxSettings.xhr();o.cors=!!Pb&&"withCredentials"in Pb,o.ajax=Pb=!!Pb,r.ajaxTransport(function(b){var c,d;if(o.cors||Pb&&!b.crossDomain)return{send:function(e,f){var g,h=b.xhr();if(h.open(b.type,b.url,b.async,b.username,b.password),b.xhrFields)for(g in b.xhrFields)h[g]=b.xhrFields[g];b.mimeType&&h.overrideMimeType&&h.overrideMimeType(b.mimeType),b.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest");for(g in e)h.setRequestHeader(g,e[g]);c=function(a){return function(){c&&(c=d=h.onload=h.onerror=h.onabort=h.onreadystatechange=null,"abort"===a?h.abort():"error"===a?"number"!=typeof h.status?f(0,"error"):f(h.status,h.statusText):f(Ob[h.status]||h.status,h.statusText,"text"!==(h.responseType||"text")||"string"!=typeof h.responseText?{binary:h.response}:{text:h.responseText},h.getAllResponseHeaders()))}},h.onload=c(),d=h.onerror=c("error"),void 0!==h.onabort?h.onabort=d:h.onreadystatechange=function(){4===h.readyState&&a.setTimeout(function(){c&&d()})},c=c("abort");try{h.send(b.hasContent&&b.data||null)}catch(i){if(c)throw i}},abort:function(){c&&c()}}}),r.ajaxPrefilter(function(a){a.crossDomain&&(a.contents.script=!1)}),r.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(a){return r.globalEval(a),a}}}),r.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),r.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(e,f){b=r("<script>").prop({charset:a.scriptCharset,src:a.url}).on("load error",c=function(a){b.remove(),c=null,a&&f("error"===a.type?404:200,a.type)}),d.head.appendChild(b[0])},abort:function(){c&&c()}}}});var Qb=[],Rb=/(=)\?(?=&|$)|\?\?/;r.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Qb.pop()||r.expando+"_"+rb++;return this[a]=!0,a}}),r.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(Rb.test(b.url)?"url":"string"==typeof b.data&&0===(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&Rb.test(b.data)&&"data");if(h||"jsonp"===b.dataTypes[0])return e=b.jsonpCallback=r.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(Rb,"$1"+e):b.jsonp!==!1&&(b.url+=(sb.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||r.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){void 0===f?r(a).removeProp(e):a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,Qb.push(e)),g&&r.isFunction(f)&&f(g[0]),g=f=void 0}),"script"}),o.createHTMLDocument=function(){var a=d.implementation.createHTMLDocument("").body;return a.innerHTML="<form></form><form></form>",2===a.childNodes.length}(),r.parseHTML=function(a,b,c){if("string"!=typeof a)return[];"boolean"==typeof b&&(c=b,b=!1);var e,f,g;return b||(o.createHTMLDocument?(b=d.implementation.createHTMLDocument(""),e=b.createElement("base"),e.href=d.location.href,b.head.appendChild(e)):b=d),f=B.exec(a),g=!c&&[],f?[b.createElement(f[1])]:(f=pa([a],b,g),g&&g.length&&r(g).remove(),r.merge([],f.childNodes))},r.fn.load=function(a,b,c){var d,e,f,g=this,h=a.indexOf(" ");return h>-1&&(d=mb(a.slice(h)),a=a.slice(0,h)),r.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&r.ajax({url:a,type:e||"GET",dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?r("<div>").append(r.parseHTML(a)).find(d):a)}).always(c&&function(a,b){g.each(function(){c.apply(this,f||[a.responseText,b,a])})}),this},r.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){r.fn[b]=function(a){return this.on(b,a)}}),r.expr.pseudos.animated=function(a){return r.grep(r.timers,function(b){return a===b.elem}).length};function Sb(a){return r.isWindow(a)?a:9===a.nodeType&&a.defaultView}r.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=r.css(a,"position"),l=r(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=r.css(a,"top"),i=r.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),r.isFunction(b)&&(b=b.call(a,c,r.extend({},h))),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},r.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){r.offset.setOffset(this,a,b)});var b,c,d,e,f=this[0];if(f)return f.getClientRects().length?(d=f.getBoundingClientRect(),d.width||d.height?(e=f.ownerDocument,c=Sb(e),b=e.documentElement,{top:d.top+c.pageYOffset-b.clientTop,left:d.left+c.pageXOffset-b.clientLeft}):d):{top:0,left:0}},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===r.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),r.nodeName(a[0],"html")||(d=a.offset()),d={top:d.top+r.css(a[0],"borderTopWidth",!0),left:d.left+r.css(a[0],"borderLeftWidth",!0)}),{top:b.top-d.top-r.css(c,"marginTop",!0),left:b.left-d.left-r.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent;while(a&&"static"===r.css(a,"position"))a=a.offsetParent;return a||qa})}}),r.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c="pageYOffset"===b;r.fn[a]=function(d){return S(this,function(a,d,e){var f=Sb(a);return void 0===e?f?f[b]:a[d]:void(f?f.scrollTo(c?f.pageXOffset:e,c?e:f.pageYOffset):a[d]=e)},a,d,arguments.length)}}),r.each(["top","left"],function(a,b){r.cssHooks[b]=Oa(o.pixelPosition,function(a,c){if(c)return c=Na(a,b),La.test(c)?r(a).position()[b]+"px":c})}),r.each({Height:"height",Width:"width"},function(a,b){r.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){r.fn[d]=function(e,f){var g=arguments.length&&(c||"boolean"!=typeof e),h=c||(e===!0||f===!0?"margin":"border");return S(this,function(b,c,e){var f;return r.isWindow(b)?0===d.indexOf("outer")?b["inner"+a]:b.document.documentElement["client"+a]:9===b.nodeType?(f=b.documentElement,Math.max(b.body["scroll"+a],f["scroll"+a],b.body["offset"+a],f["offset"+a],f["client"+a])):void 0===e?r.css(b,c,h):r.style(b,c,e,h)},b,g?e:void 0,g)}})}),r.fn.extend({bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}}),r.parseJSON=JSON.parse,"function"==typeof define&&define.amd&&define("jquery",[],function(){return r});var Tb=a.jQuery,Ub=a.$;return r.noConflict=function(b){return a.$===r&&(a.$=Ub),b&&a.jQuery===r&&(a.jQuery=Tb),r},b||(a.jQuery=a.$=r),r});
+/*
+ * jQuery throttle / debounce - v1.1 - 3/7/2010
+ * http://benalman.com/projects/jquery-throttle-debounce-plugin/
+ * 
+ * Copyright (c) 2010 "Cowboy" Ben Alman
+ * Dual licensed under the MIT and GPL licenses.
+ * http://benalman.com/about/license/
+ */
+(function(b,c){var $=b.jQuery||b.Cowboy||(b.Cowboy={}),a;$.throttle=a=function(e,f,j,i){var h,d=0;if(typeof f!=="boolean"){i=j;j=f;f=c}function g(){var o=this,m=+new Date()-d,n=arguments;function l(){d=+new Date();j.apply(o,n)}function k(){h=c}if(i&&!h){l()}h&&clearTimeout(h);if(i===c&&m>e){l()}else{if(f!==true){h=setTimeout(i?k:l,i===c?e-m:e)}}}if($.guid){g.guid=j.guid=j.guid||$.guid++}return g};$.debounce=function(d,e,f){return f===c?a(d,e,false):a(d,f,e!==false)}})(this);
+/*!
+ * imagesLoaded PACKAGED v4.1.0
+ * JavaScript is all like "You images are done yet or what?"
+ * MIT License
+ */
+!function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}(this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var i=this._events=this._events||{},n=i[t]=i[t]||[];return-1==n.indexOf(e)&&n.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var i=this._onceEvents=this._onceEvents||{},n=i[t]=i[t]||[];return n[e]=!0,this}},e.off=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=i.indexOf(e);return-1!=n&&i.splice(n,1),this}},e.emitEvent=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=0,o=i[n];e=e||[];for(var r=this._onceEvents&&this._onceEvents[t];o;){var s=r&&r[o];s&&(this.off(t,o),delete r[o]),o.apply(this,e),n+=s?0:1,o=i[n]}return this}},t}),function(t,e){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter")):t.imagesLoaded=e(t,t.EvEmitter)}(window,function(t,e){function i(t,e){for(var i in e)t[i]=e[i];return t}function n(t){var e=[];if(Array.isArray(t))e=t;else if("number"==typeof t.length)for(var i=0;i<t.length;i++)e.push(t[i]);else e.push(t);return e}function o(t,e,r){return this instanceof o?("string"==typeof t&&(t=document.querySelectorAll(t)),this.elements=n(t),this.options=i({},this.options),"function"==typeof e?r=e:i(this.options,e),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(function(){this.check()}.bind(this))):new o(t,e,r)}function r(t){this.img=t}function s(t,e){this.url=t,this.element=e,this.img=new Image}var h=t.jQuery,a=t.console;o.prototype=Object.create(e.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},o.prototype.addElementImages=function(t){"IMG"==t.nodeName&&this.addImage(t),this.options.background===!0&&this.addElementBackgroundImages(t);var e=t.nodeType;if(e&&d[e]){for(var i=t.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var r=t.querySelectorAll(this.options.background);for(n=0;n<r.length;n++){var s=r[n];this.addElementBackgroundImages(s)}}}};var d={1:!0,9:!0,11:!0};return o.prototype.addElementBackgroundImages=function(t){var e=getComputedStyle(t);if(e)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(e.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,t),n=i.exec(e.backgroundImage)}},o.prototype.addImage=function(t){var e=new r(t);this.images.push(e)},o.prototype.addBackground=function(t,e){var i=new s(t,e);this.images.push(i)},o.prototype.check=function(){function t(t,i,n){setTimeout(function(){e.progress(t,i,n)})}var e=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(e){e.once("progress",t),e.check()}):void this.complete()},o.prototype.progress=function(t,e,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!t.isLoaded,this.emitEvent("progress",[this,t,e]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,t),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&a&&a.log("progress: "+i,t,e)},o.prototype.complete=function(){var t=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(t,[this]),this.emitEvent("always",[this]),this.jqDeferred){var e=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[e](this)}},r.prototype=Object.create(e.prototype),r.prototype.check=function(){var t=this.getIsImageComplete();return t?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},r.prototype.getIsImageComplete=function(){return this.img.complete&&void 0!==this.img.naturalWidth},r.prototype.confirm=function(t,e){this.isLoaded=t,this.emitEvent("progress",[this,this.img,e])},r.prototype.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},r.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},r.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},r.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype=Object.create(r.prototype),s.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var t=this.getIsImageComplete();t&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},s.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype.confirm=function(t,e){this.isLoaded=t,this.emitEvent("progress",[this,this.element,e])},o.makeJQueryPlugin=function(e){e=e||t.jQuery,e&&(h=e,h.fn.imagesLoaded=function(t,e){var i=new o(this,t,e);return i.jqDeferred.promise(h(this))})},o.makeJQueryPlugin(),o});
+/*! lz-string-1.3.3-min.js | (c) 2013 Pieroxy | Licensed under a WTFPL license */
+var LZString={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_f:String.fromCharCode,compressToBase64:function(e){if(e==null)return"";var t="";var n,r,i,s,o,u,a;var f=0;e=LZString.compress(e);while(f<e.length*2){if(f%2==0){n=e.charCodeAt(f/2)>>8;r=e.charCodeAt(f/2)&255;if(f/2+1<e.length)i=e.charCodeAt(f/2+1)>>8;else i=NaN}else{n=e.charCodeAt((f-1)/2)&255;if((f+1)/2<e.length){r=e.charCodeAt((f+1)/2)>>8;i=e.charCodeAt((f+1)/2)&255}else r=i=NaN}f+=3;s=n>>2;o=(n&3)<<4|r>>4;u=(r&15)<<2|i>>6;a=i&63;if(isNaN(r)){u=a=64}else if(isNaN(i)){a=64}t=t+LZString._keyStr.charAt(s)+LZString._keyStr.charAt(o)+LZString._keyStr.charAt(u)+LZString._keyStr.charAt(a)}return t},decompressFromBase64:function(e){if(e==null)return"";var t="",n=0,r,i,s,o,u,a,f,l,c=0,h=LZString._f;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(c<e.length){u=LZString._keyStr.indexOf(e.charAt(c++));a=LZString._keyStr.indexOf(e.charAt(c++));f=LZString._keyStr.indexOf(e.charAt(c++));l=LZString._keyStr.indexOf(e.charAt(c++));i=u<<2|a>>4;s=(a&15)<<4|f>>2;o=(f&3)<<6|l;if(n%2==0){r=i<<8;if(f!=64){t+=h(r|s)}if(l!=64){r=o<<8}}else{t=t+h(r|i);if(f!=64){r=s<<8}if(l!=64){t+=h(r|o)}}n+=3}return LZString.decompress(t)},compressToUTF16:function(e){if(e==null)return"";var t="",n,r,i,s=0,o=LZString._f;e=LZString.compress(e);for(n=0;n<e.length;n++){r=e.charCodeAt(n);switch(s++){case 0:t+=o((r>>1)+32);i=(r&1)<<14;break;case 1:t+=o(i+(r>>2)+32);i=(r&3)<<13;break;case 2:t+=o(i+(r>>3)+32);i=(r&7)<<12;break;case 3:t+=o(i+(r>>4)+32);i=(r&15)<<11;break;case 4:t+=o(i+(r>>5)+32);i=(r&31)<<10;break;case 5:t+=o(i+(r>>6)+32);i=(r&63)<<9;break;case 6:t+=o(i+(r>>7)+32);i=(r&127)<<8;break;case 7:t+=o(i+(r>>8)+32);i=(r&255)<<7;break;case 8:t+=o(i+(r>>9)+32);i=(r&511)<<6;break;case 9:t+=o(i+(r>>10)+32);i=(r&1023)<<5;break;case 10:t+=o(i+(r>>11)+32);i=(r&2047)<<4;break;case 11:t+=o(i+(r>>12)+32);i=(r&4095)<<3;break;case 12:t+=o(i+(r>>13)+32);i=(r&8191)<<2;break;case 13:t+=o(i+(r>>14)+32);i=(r&16383)<<1;break;case 14:t+=o(i+(r>>15)+32,(r&32767)+32);s=0;break}}return t+o(i+32)},decompressFromUTF16:function(e){if(e==null)return"";var t="",n,r,i=0,s=0,o=LZString._f;while(s<e.length){r=e.charCodeAt(s)-32;switch(i++){case 0:n=r<<1;break;case 1:t+=o(n|r>>14);n=(r&16383)<<2;break;case 2:t+=o(n|r>>13);n=(r&8191)<<3;break;case 3:t+=o(n|r>>12);n=(r&4095)<<4;break;case 4:t+=o(n|r>>11);n=(r&2047)<<5;break;case 5:t+=o(n|r>>10);n=(r&1023)<<6;break;case 6:t+=o(n|r>>9);n=(r&511)<<7;break;case 7:t+=o(n|r>>8);n=(r&255)<<8;break;case 8:t+=o(n|r>>7);n=(r&127)<<9;break;case 9:t+=o(n|r>>6);n=(r&63)<<10;break;case 10:t+=o(n|r>>5);n=(r&31)<<11;break;case 11:t+=o(n|r>>4);n=(r&15)<<12;break;case 12:t+=o(n|r>>3);n=(r&7)<<13;break;case 13:t+=o(n|r>>2);n=(r&3)<<14;break;case 14:t+=o(n|r>>1);n=(r&1)<<15;break;case 15:t+=o(n|r);i=0;break}s++}return LZString.decompress(t)},compress:function(e){if(e==null)return"";var t,n,r={},i={},s="",o="",u="",a=2,f=3,l=2,c="",h=0,p=0,d,v=LZString._f;for(d=0;d<e.length;d+=1){s=e.charAt(d);if(!Object.prototype.hasOwnProperty.call(r,s)){r[s]=f++;i[s]=true}o=u+s;if(Object.prototype.hasOwnProperty.call(r,o)){u=o}else{if(Object.prototype.hasOwnProperty.call(i,u)){if(u.charCodeAt(0)<256){for(t=0;t<l;t++){h=h<<1;if(p==15){p=0;c+=v(h);h=0}else{p++}}n=u.charCodeAt(0);for(t=0;t<8;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}else{n=1;for(t=0;t<l;t++){h=h<<1|n;if(p==15){p=0;c+=v(h);h=0}else{p++}n=0}n=u.charCodeAt(0);for(t=0;t<16;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}delete i[u]}else{n=r[u];for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}r[o]=f++;u=String(s)}}if(u!==""){if(Object.prototype.hasOwnProperty.call(i,u)){if(u.charCodeAt(0)<256){for(t=0;t<l;t++){h=h<<1;if(p==15){p=0;c+=v(h);h=0}else{p++}}n=u.charCodeAt(0);for(t=0;t<8;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}else{n=1;for(t=0;t<l;t++){h=h<<1|n;if(p==15){p=0;c+=v(h);h=0}else{p++}n=0}n=u.charCodeAt(0);for(t=0;t<16;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}delete i[u]}else{n=r[u];for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}}n=2;for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}while(true){h=h<<1;if(p==15){c+=v(h);break}else p++}return c},decompress:function(e){if(e==null)return"";if(e=="")return null;var t=[],n,r=4,i=4,s=3,o="",u="",a,f,l,c,h,p,d,v=LZString._f,m={string:e,val:e.charCodeAt(0),position:32768,index:1};for(a=0;a<3;a+=1){t[a]=a}l=0;h=Math.pow(2,2);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}switch(n=l){case 0:l=0;h=Math.pow(2,8);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}d=v(l);break;case 1:l=0;h=Math.pow(2,16);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}d=v(l);break;case 2:return""}t[3]=d;f=u=d;while(true){if(m.index>m.string.length){return""}l=0;h=Math.pow(2,s);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}switch(d=l){case 0:l=0;h=Math.pow(2,8);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}t[i++]=v(l);d=i-1;r--;break;case 1:l=0;h=Math.pow(2,16);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}t[i++]=v(l);d=i-1;r--;break;case 2:return u}if(r==0){r=Math.pow(2,s);s++}if(t[d]){o=t[d]}else{if(d===i){o=f+f.charAt(0)}else{return null}}u+=o;t[i++]=f+o.charAt(0);r--;f=o;if(r==0){r=Math.pow(2,s);s++}}}};if(typeof module!=="undefined"&&module!=null){module.exports=LZString}
+/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
+var saveAs=saveAs||navigator.msSaveBlob&&navigator.msSaveBlob.bind(navigator)||function(e){"use strict";var t=e.document,n=function(){return e.URL||e.webkitURL||e},r=e.URL||e.webkitURL||e,i=t.createElementNS("http://www.w3.org/1999/xhtml","a"),s="download"in i,o=function(n){var r=t.createEvent("MouseEvents");r.initMouseEvent("click",true,false,e,0,0,0,0,0,false,false,false,false,0,null);n.dispatchEvent(r)},u=e.webkitRequestFileSystem,a=e.requestFileSystem||u||e.mozRequestFileSystem,f=function(t){(e.setImmediate||e.setTimeout)(function(){throw t},0)},l="application/octet-stream",c=0,h=[],p=function(){var e=h.length;while(e--){var t=h[e];if(typeof t==="string"){r.revokeObjectURL(t)}else{t.remove()}}h.length=0},d=function(e,t,n){t=[].concat(t);var r=t.length;while(r--){var i=e["on"+t[r]];if(typeof i==="function"){try{i.call(e,n||e)}catch(s){f(s)}}}},v=function(t,r){var f=this,p=t.type,v=false,m,g,y=function(){var e=n().createObjectURL(t);h.push(e);return e},b=function(){d(f,"writestart progress write writeend".split(" "))},w=function(){if(v||!m){m=y(t)}if(g){g.location.href=m}else{window.open(m,"_blank")}f.readyState=f.DONE;b()},E=function(e){return function(){if(f.readyState!==f.DONE){return e.apply(this,arguments)}}},S={create:true,exclusive:false},x;f.readyState=f.INIT;if(!r){r="download"}if(s){m=y(t);i.href=m;i.download=r;o(i);f.readyState=f.DONE;b();return}if(e.chrome&&p&&p!==l){x=t.slice||t.webkitSlice;t=x.call(t,0,t.size,l);v=true}if(u&&r!=="download"){r+=".download"}if(p===l||u){g=e}if(!a){w();return}c+=t.size;a(e.TEMPORARY,c,E(function(e){e.root.getDirectory("saved",S,E(function(e){var n=function(){e.getFile(r,S,E(function(e){e.createWriter(E(function(n){n.onwriteend=function(t){g.location.href=e.toURL();h.push(e);f.readyState=f.DONE;d(f,"writeend",t)};n.onerror=function(){var e=n.error;if(e.code!==e.ABORT_ERR){w()}};"writestart progress write abort".split(" ").forEach(function(e){n["on"+e]=f["on"+e]});n.write(t);f.abort=function(){n.abort();f.readyState=f.DONE};f.readyState=f.WRITING}),w)}),w)};e.getFile(r,{create:false},E(function(e){e.remove();n()}),E(function(e){if(e.code===e.NOT_FOUND_ERR){n()}else{w()}}))}),w)}),w)},m=v.prototype,g=function(e,t){return new v(e,t)};m.abort=function(){var e=this;e.readyState=e.DONE;d(e,"abort")};m.readyState=m.INIT=0;m.WRITING=1;m.DONE=2;m.error=m.onwritestart=m.onprogress=m.onwrite=m.onabort=m.onerror=m.onwriteend=null;e.addEventListener("unload",p,false);return g}(self)
+/*! seedrandom.js v2.3.3 | (c) 2013 David Bau, all rights reserved. | Licensed under a BSD-style license */
+!function(a,b,c,d,e,f,g,h,i){function j(a){var b,c=a.length,e=this,f=0,g=e.i=e.j=0,h=e.S=[];for(c||(a=[c++]);d>f;)h[f]=f++;for(f=0;d>f;f++)h[f]=h[g=r&g+a[f%c]+(b=h[f])],h[g]=b;(e.g=function(a){for(var b,c=0,f=e.i,g=e.j,h=e.S;a--;)b=h[f=r&f+1],c=c*d+h[r&(h[f]=h[g=r&g+b])+(h[g]=b)];return e.i=f,e.j=g,c})(d)}function k(a,b){var c,d=[],e=typeof a;if(b&&"object"==e)for(c in a)try{d.push(k(a[c],b-1))}catch(f){}return d.length?d:"string"==e?a:a+"\0"}function l(a,b){for(var c,d=a+"",e=0;e<d.length;)b[r&e]=r&(c^=19*b[r&e])+d.charCodeAt(e++);return n(b)}function m(c){try{return a.crypto.getRandomValues(c=new Uint8Array(d)),n(c)}catch(e){return[+new Date,a,(c=a.navigator)&&c.plugins,a.screen,n(b)]}}function n(a){return String.fromCharCode.apply(0,a)}var o=c.pow(d,e),p=c.pow(2,f),q=2*p,r=d-1,s=c["seed"+i]=function(a,f,g){var h=[],r=l(k(f?[a,n(b)]:null==a?m():a,3),h),s=new j(h);return l(n(s.S),b),(g||function(a,b,d){return d?(c[i]=a,b):a})(function(){for(var a=s.g(e),b=o,c=0;p>a;)a=(a+c)*d,b*=d,c=s.g(1);for(;a>=q;)a/=2,b/=2,c>>>=1;return(a+c)/b},r,this==c)};l(c[i](),b),g&&g.exports?g.exports=s:h&&h.amd&&h(function(){return s})}(this,[],Math,256,6,52,"object"==typeof module&&module,"function"==typeof define&&define,"random");
+/*! console_hack.js | (c) 2015 Thomas Michael Edwards | Licensed under SugarCube's Simple BSD license */
+!function(){for(var methods=["assert","clear","count","debug","dir","dirxml","error","exception","group","groupCollapsed","groupEnd","info","log","markTimeline","profile","profileEnd","table","time","timeEnd","timeline","timelineEnd","timeStamp","trace","warn"],length=methods.length,noop=function(){},console=window.console=window.console||{};length--;){var method=methods[length];console[method]||(console[method]=noop)}}();
+/* User Lib */
+"USER_LIB"
+}else{document.documentElement.setAttribute("data-init", "lacking");}
+</script>
+<style id="style-normalize" type="text/css">/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}</style>
+<style id="style-init-screen" type="text/css">@-webkit-keyframes init-loading-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-o-keyframes init-loading-spin{0%{-o-transform:rotate(0);transform:rotate(0)}100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes init-loading-spin{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}#init-screen{display:none;z-index:100000;position:fixed;top:0;left:0;height:100%;width:100%;font:28px/1 Helmet,Freesans,sans-serif;font-weight:700;color:#eee;background-color:#111;text-align:center}#init-screen>div{display:none;position:relative;margin:0 auto;max-width:1136px;top:25%}html[data-init=lacking] #init-screen,html[data-init=loading] #init-screen,html[data-init=no-js] #init-screen{display:block}html[data-init=lacking] #init-lacking,html[data-init=no-js] #init-no-js{display:block;padding:0 1em}html[data-init=no-js] #init-no-js{color:red}html[data-init=loading] #init-loading{display:block;border:24px solid transparent;border-radius:50%;border-top-color:#7f7f7f;border-bottom-color:#7f7f7f;width:100px;height:100px;-webkit-animation:init-loading-spin 2s linear infinite;-o-animation:init-loading-spin 2s linear infinite;animation:init-loading-spin 2s linear infinite}html[data-init=loading] #init-loading>div{text-indent:9999em;overflow:hidden;white-space:nowrap}html[data-init=loading] #passages,html[data-init=loading] #ui-bar{display:none}</style>
+<style id="style-font" type="text/css">@font-face{font-family:tme-fa-icons;src:url(data:application/octet-stream;base64,d09GRgABAAAAACWoAA4AAAAAQhQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAABRAAAAEQAAABWPihI/2NtYXAAAAGIAAAAOgAAAUrQXRm3Y3Z0IAAAAcQAAAAKAAAACgAAAABmcGdtAAAB0AAABZQAAAtwiJCQWWdhc3AAAAdkAAAACAAAAAgAAAAQZ2x5ZgAAB2wAABjCAAAq+uJ4WNtoZWFkAAAgMAAAADQAAAA2BZlJs2hoZWEAACBkAAAAIAAAACQIJwQZaG10eAAAIIQAAABuAAABOPTeAABsb2NhAAAg9AAAAJ4AAACeojKW6m1heHAAACGUAAAAIAAAACAA6gvwbmFtZQAAIbQAAAGPAAAC/eLsyKlwb3N0AAAjRAAAAfwAAAM0412SIHByZXAAACVAAAAAZQAAAHvdawOFeJxjYGRWYZzAwMrAwVTFtIeBgaEHQjM+YDBkZGJgYGJgZWbACgLSXFMYHF4wvPBhDvqfxRDFHMQwDSjMCJIDANLeC6V4nGNgYGBmgGAZBkYGEHAB8hjBfBYGDSDNBqQZGZgYGF74/P8PUvCCAURLMELVAwEjG8OIBwC4Ywb6AAAAAAAAAAAAAAAAAAB4nK1WaXMTRxCd1WHLNj6CDxI2gVnGcox2VpjLCBDG7EoW4BzylexCjl1Ldu6LT/wG/ZpekVSRb/y0vB4d2GAnVVQoSv2m9+1M9+ueXpPQksReWI+k3HwpprY2aWTnSUg3bFqO4kPZ2QspU0z+LoiCaLXUvu04JCISgap1hSWC2PfI0iTjQ48yWrYlvWpSbulJd9kaD+qt+vbT0FGO3QklNZuhQ+uRLanCqBJFMu2RkjYtw9VfSVrh5yvMfNUMJYLoJJLGm2EMj+Rn44xWGa3GdhxFkU2WG0WKRDM8iCKPslpin1wxQUD5oBlSXvk0onyEH5EVe5TTCnHJdprf9yU/6R3OvyTieouyJQf+QHZkB3unK/ki0toK46adbEehivB0fSfEI5uT6p/sUV7TaOB2RaYnzQiWyleQWPkJZfYPyWrhfMqXPBrVkoOcCFovc2Jf8g60HkdMiWsmyILujk6IoO6XnKHYY/q4+OO9XSwXIQTIOJb1jkq4EEYpYbOaJG0EOYiSskWV1HpHTJzyOi3iLWG/Tu3oS2e0Sag7MZ6th46tnKjkeDSp00ymTu2k5tGUBlFKOhM85tcBlB/RJK+2sZrEyqNpbDNjJJFQoIVzaSqIZSeWNAXRPJrRm7thmmvXokWaPFDPPXpPb26Fmzs9p+3AP2v8Z3UqpoO9MJ2eDshKfJp2uUnRun56hn8m8UPWAiqRLTbDlMVDtn4H5eVjS47CawNs957zK+h99kTIpIH4G/AeL9UpBUyFmFVQC9201rUsy9RqVotUZOq7IU0rX9ZpAk05Dn1jX8Y4/q+ZGUtMCd/vxOnZEZeeufYlyDSH3GZdj+Z1arFdgM5sz+k0y/Z9nebYfqDTPNvzOh1ha+t0lO2HOi2w/UinY2wvaEGT7jsEchGBXMAGEoGwdRAI20sIhK1CIGwXEQjbIgJhu4RA2H6MQNguIxC2l7Wsmn4qaRw7E8sARYgDoznuyGVuKldTyaUSrotGpzbkKXKrpKJ4Vv0rA/3ikTesgbVAukTW/IpJrnxUleOPrmh508S5Ao5Vf3tzXJ8TD2W/WPhT8L/amqqkV6x5ZHIVeSPQk+NE1yYVj67p8rmqR9f/i4oOa4F+A6UQC0VZlg2+mZDwUafTUA1c5RAzGzMP1/W6Zc3P4fybGCEL6H78NxQaC9yDTllJWe1gr9XXj2W5twflsCdYkmK+zOtb4YuMzEr7RWYpez7yecAVMCqVYasNXK3gzXsS85DpTfJMELcVZYOkjceZILGBYx4wb76TICRMXbWB2imcsIG8YMwp2O+EQ1RvlOVwe6F9Ho2Uf2tX7MgZFU0Q+G32Rtjrs1DyW6yBhCe/1NdAVSFNxbipgEsj5YZq8GFcrdtGMk6gr6jYDcuyig8fR9x3So5lIPlIEatHRz+tvUKd1Ln9yihu3zv9CIJBaWL+9r6Z4qCUd7WSZVZtA1O3GpVT15rDxasO3c2j7nvH2Sdy1jTddE/c9L6mVbeDg7lZEO3bHJSlTC6o68MOG6jLzaXQ6mVckt52DzAsMKDfoRUb/1f3cfg8V6oKo+NIvZ2oH6PPYgzyDzh/R/UF6OcxTLmGlOd7lxOfbtzD2TJdxV2sn+LfwKy15mbpGnBD0w2Yh6xaHbrKDXynBjo90tyO9BDwse4K8QBgE8Bi8InuWsbzKYDxfMYcH+Bz5jBoMofBFnMYbDNnDWCHOQx2mcNgjzkMvmDOOsCXzGEQModBxBwGT5gTADxlDoOvmMPga+Yw+IY59wG+ZQ6DmDkMEuYw2Nd0ayhzixd0F6htUBXowPQTFvewONRUGbK/44Vhf28Qs38wiKk/aro9pP7EC0P92SCm/mIQU3/VdGdI/Y0Xhvq7QUz9wyCmPtMvxnKZwV9GvkuFA8ouNp/z98T7B8IaQLYAAQAB//8AD3icrToNcBzVefe9/b3dvd29u909/dyd7ke6k86yLEunOyHJsrCxJWyJGmEcLMDYxBhHNsZQBzOAkjQmFDrGIq5gHEIcCILOAGZq3IQO04RkIGkgaUMKMbQznSlJW0wgJtOQHxRr1e+93TvJwq7JTD3y2/f//bzvfX/vAhAIzL3KPcYNBFIB8UR9EJYuAcuAqGNbOiwDSczkuorlaJ6WTeVSRwMIDveY8aN20GztjzMhW4P2H+kNUPM5NaVNQE0K3tWM77vv8rJqgnT33VJE4WWIfd/QbKHZjcXcZiFAqjCDgUJA/mZTWOIIwi0vAwNiUjkW9THIZs6DAbnj6ffGP/P+0y2vv+5SXGLKuXHJPJH92c+yT7x3883wnI9W/DxI4T9+bm7uOL+MUwNywAg0BJYFQgNKa2NDzFBEjqeM0SFXLHU4YKe7yjFoSmdEKWw5nemOUj5czMXCliilM7lyuFgqp3HaDf1j/fhH+s6cfm4MEpA8c0BSQBO5CUkD5fJi05kDjSUoNnETTUUSXtpPVm0aGHDdmV0nNkPiMUWeHZMVRSZPSlp0dqypCKVG8iT9IK5AEeamyZGAjecW5tm5SSBm8ojiSqBsYoXDTRtuymw13V8axjB+p2EPlsMGcRzTTRkGOLRpmk/AzSZ+A97ecx+QN8g9gUbc26F7N+GJiN5pLGMA8hUo7EQcHI455A0PwrS3I37N+bZhTE8bex1aeeIJ4+MTjTY6gcH+iIvgGWQRdh2TR9sS81kspCzytguLfBcyuBOLXuhwYnZnh8NFUs6plLPLScGpWBKwkYztwsop7Hie9r7rYK/9brWXTg9U+RiBX+GJiyc0rgIv7UNJe3vPjrFdyZOV/byNUkyW/0AuIi/h+h6U5a64SmW5ieGcya2AYimG+EUtnZN08ImgveV+KOYykiiJVMrbkI+dHUkC9+nyPUFdD94j639r1uTq7FiSNrR1hXS8uLbGapYUSbpaJvzmp5aODbU9iJNBU1gJa5LFTCqihNpDigmWWtc2GjUy7Y2m3hHk14qmPJXp2cTInZudO85dhzw2AuXAJQHl+Yt7l0RVjkO8u4q5JZARE2A5yNxStNgGWcQSj7izA1HucCgJOsRsb7xYWgn9XAwvRqaN4HAS4ENF3kXFFovJ/muW3zsYDK3jxaCQbOouOPXZPmBDNZG4krS0N2/9wakf7hHv+IcPX/jcaGWZAp9fvrFtv66UeSlXn4zYdZo5kLNwIJJRTbEu3jz62Zf37Xv5l7RAeugZfAQ7kJ5koA3PoJB1eP8MpHRVWqpygyITpiKz4DCoHMENlun+wrDA0bNZ9jmJZdZwhhx9UnewMKztg2yAlie9j6O7Lzrks7tYdRdOO4u/FJ9e5G93RyFTJ1f5G17IZDs7z25uEfuFBYwlvYpUUuTnKJO6umg5IymD88yGGxbycjN2JOkIVk6wUoEzm/0O5T/Owb92Jg8NyL/6qFrl30IZ5nSgMp3nch7DkvOMCaMeoQ1U4JZxQncenmAMmcAei/S7V9CvAccW8mczwtMCceSQ8nwhXWuKAeQPJbRCc9RnhoSyhvBL+WgxTzsk0Y567IFj+35wa4Xq7ykS5YIm7UIdq4iCfKcsiIoSvFFWONUnFovZoXHKhXE69R9hTOIEgZPcJ0VZRrx+i3j9hhtFPqQDnYjX8uaEpS2+F4twiVkOylSJAwfvBZO3XBnoTaEHtltSWAGKIEl3SJIQ1CRESIRnLFtJRc88GckEbQuOBTO5zBXziL0JIPKiyMtzggwiMc+czmbDEbDMbJaLhC3LPzPuFOKaD6zEM+tt15gNxTPLIg5dvglCfGmbmakYmqmKsEfRVOWWAXjqvEzVeamT6botq9321Vu2rIb7KOrufmZ24LWmoiI3yspJJ65e704JprBSFGH3pxXLhAQe9fBzbM1rq7YAm1dsctvZSiqu8G94rxwS/LQ7JYorRR0XXq/GmSh4dJADKAsSk70ajQ8gHdE0MhzVjOCbVDSvKINd1PhKVN+fgMTG2zYCvIaq+V2mmsNTP36IRLD6xO7ejWTDisfc7zCVD6tQW+/eMTW1Y3fSt20foe+hBZpQ3zfGfH3vyzmCZNvHFoJFVPrRjj7m6I26M3r7KHQxgD5c2H/4tQdIeJLJ+yQDvTsZOwv4jYfJQxVaxxmtKtNTTVaQnRmS6kkWvfBoNvCeIT55jt41PJZwpg3YYeJYGK+dppgK/sF+R/8ggZIOBlnyNoK/qpwokLZ6uCFRKCTKV8HeGaYksPg2Xj/3fyQZb6dhGWv2QLLQU4DW7lZwf77Hw+vb3AjzexKIVywkEXoGlB1JUqr4FW3A7BZlDzgzhZ5W0tyfI1da7mmn13JvsZOFxLuJIRsmLXJVskByA41iu/uvSds9bWOnPZQ4lSgANm+xqQ6gMPlGH2YR79rSDIXLXQBujHZSxkCpSIeynwCdNxEFJ2HVmSDaFPxQYoIN2BfCM8E6zTCu66VDSQ97KkPfIa8i7nGUITNAZagDhYFJjeg5rXh+bcBuYamT/JWmRVE8Iopeb/3ud1ZdSIs4TkQLcaogJ63Z5dGUxEfefz8qSKko+Qm2PB/ZgyEEMngmjkjovYB0GBog+n9COzD7MiQ73pfOA5S8NLseIst+QWbPC9y/J8dRv7QFliCNWcnzAYlI3fE8hdNVbBPY1WEeZxm8m5mKOdypQRG1qhiRgQBnZbr7N20qT1ipoPsLVYWEGq8hE3BoLPn2tV8PhWVe0WTB4nIN3WMD7cmIiDZEhaSSROulWMbk2+sX4LIs0Iq4NNdUfV3mDeqCbaEOligmbYSFCaU0VRVULrhTKoKlIMubNvV3ZyyOByWMilXkBpNjcIjihTjBrwzF/bmKF1iMJNsHxrobcnxElDVF0C3u69fevP5txIsEcUrVZyR96DPqiI/C+zGTp0uZGkXVP6PG1RncET7Ey/eKjnX885QeWw83krsCIVyvMp8TD9P3rEvMFUkFZxS6Rw25ytWQJ/52/tqLyQSDrc7Dpiq/H2XDgYsVBgjnK7BF95EwLKLNKLh0bg5x74VXPNwJO1fq7raB588j7pbhat78pDKjPE1td1Jl6Hhn8Q73LdISsCrrgwuijljQ28Tinnavx+Xu9ap6jYqn2QzNaly7RoVJ99MoBl/DvmtU1X0Lu3FCnO37XXKEW832Nai8BYnDKKvIF92W3F9dotK94ahCNyJPuW+5b2L1WrQ2X6fSc1TBejLg77uvsm8FX2b1ghWk6cbjuB1FUIVm9y0f6aMKfMbdhjshNGihFKgIgE7044ZvkbXz+zbh3chXN/f35Z6mOyF2b/m7H6V7HVV3XYOYtiDOig/J25bh+xPuAPMdxRPRc8V1YU8Z2mEv9OIO2O6DTg8Wtt2C3+lCcjBRmEaNVbDhi0nLnUK1ttvqdVpsexruQ93WGnf3T9s47N+te7nN5FeohRGeChUfIvZx5htAPYTNjQl/ea/tTlkW7LZ7nIK3dyNsGUwWpq0+a4k/ALvozB5nurkCqwthUdrq5mnzBD/tu5rpfPVYuC6L0VZwnMfd/YnGxgTc97jjFNjGFvRQ6iyrYPfZjyPVyQJM233YRF5YVb1xgLzjwVMX3NOwZ/K7wtJZx4W8pGRNNzf4ZOBeCKgPCxuKcUYmxQNycbjP5wGlEJGk8OZc369tR3gtaZ+X6CbmVkIONRVJcugpluk1TQL1Fqmfy1ELVi4hYy1zJhYNj4zu7RkfbuebN17fv+q2Fj4sDgtE7Hv2uk89uneIH7j9yNWjR1YMmUvJSzO6s9QcGWkbHt83PtzW0yWCMMLr4roNcMm+o88e3XdJ/0VDkWiFDxSv5YhXq8d3nVAryjjtoDXp7Ojn2gg6ijGHIUxDpQZ0Y2lQym2+5NZHN219to8XhsUw33Lb6p6dG9DVGN598/bmkXA0NoPeR2t4qO/h0U8d3bcKtmB5yeilos6PCCB29fgINjeNmEsdfaYmGhm6qB9RrPhEx7mrEbfGwCDauZXNJo09wLJ1oAhSe1NxWkUDKKJofMqeE+szt8S4K9JYmjbLXRRtylOU1vWN//mVy4/0DVGNqM9QJT7SvL287ot5MSZoGC/oyHTWO7p3vdd5s6RB439/5fKH6aIaEDh46AVkpMqWo1YdaWpe1690hzT4e79jxGuLvD+R0iUwuiJ+TLUM4+yrA8aAdsVAsX1JFgMsTkCF4ceBdtgLZ8oXaENnPpfPipLA6A57nn4+XI1hUbCoYmig1KP5pH44Kybnq4cUyatKivvTmXpeOC7y8J4il3yHncWVz+SDrc5zTqucPyYro3Af7XP30/I8ddJxsQAgXIFbz37QdsmqNhJl0K6145C0rkWzExAX8aM3sDpwYyA8oF83PNBXWu7xRPQMIT1E6syw7M4F2tFwOmyhVKQ7+uH/lz9DribLBF4jsuze94lYBc+7LzLOXMw4c+66u52EZz/QLEWxyA0XZFuA9+OVUfSTwyzWCw0o3a0Jx9BYTrKp2AZiEi9qGSs6OFhZkPboRDXesZKpbcd3UOjV8dMgNNQhr1pJh0Qy5petVIQ48Zq1KefMj7zIhluf3pQeBs5JfUuJMGcgHFRik16gP1mzHX2EmroaYhmVysETLOo54aSGU/gHzbEwdRvCMXuGhUczHj3HkZ42Rk9LYIDS07c8YRuqSBg91Pmnwo8VghFR2Y9oKTmxziSwi0HTN2I1cMvT3E7Fezk/Pae1UnYyUwqdRnqCNZPoXSJSk6hxGWmRBKqBSMqyTP97/wmaJcQCGpqbG5Iw6vhEtHpEVWihepULpFG3rqG0rOha2qTxJIC0YOSYFjrxEtP8nlSlIxvu7PLcRKmS76mk04Sq0HoTqJ04CcfcK+DDIU34mhCX/dByaAiDy58ibicVeRdNJrNyezI2G/ESlUKsZDxiOtLJk/ChXCc9Imp+1nO2xL6QZIkkWiizM7SHIF9q9K8ZpQDx8zOjgWaMzORvdrSGPJ2sEzRYZer9O2gmWD4zSTr6sSuH8Uc/IGjmyLIMOHUV0G48840967ixy2v6zIhcU+pr3bDj9u0bc1xfqUbO9sUuH3O/iqEbFPqaPbOBZuFTO57rx7mxvnDL7avRFLah/ei55LZCpKddjqz4OxhyH6YRLuzA0rcfY5yC8rQTcb08JdLYleZW8TZ0lGgSCyVfQoQtRDiPV6BqKLryzL7kqRmkuoGdE5UzlKWy39mJQlU1OChf1KrEHOYcsdMhvaO3j5JN+zZBXJZ2Kmq0WRSMDSFJGqmtC0q8eZesmfWxPxNNca3DC3KzYsg7MBBXhJ2yHmvy5sojNXVBmQvfhUdoxJ0NgiENWTzfqwd3SOjC927ceNvGjbfTUTNp13eIumhvAKEvJA/HTUW6Maj1CeJAUtBFrcOI1xugSWxubV1qqaRJ1gZvqiHLbKqwOo5TR9hELw7/iBsjL/t6WXl+SWN9VOO5RfnTtJcwreTFY35bWthGB+bMB+yOcGEDg4bztxbkUR0wh1h2kJWgV0awMR+Hjvn5mlrmu9BMCMpYsZynmQC8KR2xco4maZIg5jN5CU86ViJ/s27nzqlxgFc6167fuXP92s5XYOdDO8j4pYNYw16IjR8eH79U0ra3Y6V9uyat20l2P7AbsKpjJ81Tzs39nt9PXgqYeL9LNB+Yi9uMN1BEZ0knnvijDiZLEDg6dJ30NuA9oQEVh9U0uk/kgO8A+R94pvWy8YveWn0ZWbfmLepJXdqz5Z5B94qhu7d2k75r7l0Lx2gVtvTMr6FXgDY7p56d6qSNS+/e0ke6r//CQ1/YXiTdW++u+FK/529HfC3klvzNhK3Te4txIUFlkuQ8tIjguXrUG6WAPWgMsIcDF664d3v3DHXwhQ07YMul2I9QDvtQXz+bokoej3uUo5mt1Qi7f/m58pGoIAyavsnnFiUl8cbhKTpRmI+CKw9Y1oKc5GvZZJCT6kWJcCHNzzDS3KTQKEocr/6Fe1GoUf+1rq/QG/W/hs9goz8E649Xc5M6HxXjAnDV9OT9spBFuwOC26Prv2bzQ3RhCHfwaYpW8+LxqOzlYOZR7/Kf/RbmXMktCzAr3jWP/Kqt5KUqZDq4uTqyBbYGfL17HcuL19KcjykyePSoAP2bNgILH1qOXXFwA9l471P3bOIvOwRXL8j+k0OjB6cPjrLCfe2sXP/824QcsAMZlOmGWiMo0rwb4K1qo+mH/LkBVlXdA+cFXFFWvz0//AXvbZ6+ac3GoyzHHvXfzCqvNILfLi9qV7KBJ/03OPbql/A+XlcDa3g9C1/rnPPU/XzkR4E3q/4p6kHES6V3vVx1M7x3EG4RnpwfhuT9B8mTF4BG6w/vZp7SbtoL4oJBkCuYe2+LL3GT6CtdzGKjNas6FGaHETyqOIeljCSdy4azYTwkLxFIL08OHSKaM+7sonl9vERpGguhHaS5bUgz24xu3ETTPsVKqntkIZfpqR1MdBfQKd6hmiFHviU1QZ260MQ2FSOcbfDmVoyFeHkb9rq/db9KFWsP6uutqz6LgZW6R+JrIjp86Gp6jSXL+7RoUv38yjEracH0NiVpKdu2ISBl27QDRdTKAT9WHoc/IL/p7w4sptcdmtpFR6IcZRnNXDnaT909x7Ykjj6PwmlFdP9FMuWgQvb8nAiKpHB7iS4/r+pk678LRCWOGpq9QwfOlOGlbpDkEPwThngKL7puibAY5LvMl+ZQQ8Yx4mxF/wZjkGJ7a3NjKl5jyjiJ/hAhLzVVExN+9qMpZsAyWImhu/eF2NlfcmS6bxq6lNlO9CZvxpjon/G7R5k1SqVwuFwOv3HTTZn0TTelSQs2wtjpPkNH8D/RH++b3mkosx0KLkzSlfi92qSrzPKX2arMTe692ChjJ7T5I75t3I487EIe5jXKQ6pg6Q83qs/lEn3noSFynmb4aOrBF9sEoBuHhKFYcL11up41emofLCQGE60wVdeDClSvn5qqM41Go7t+iuWUHqzrNrOGWTsFst5TtwLXXPk0Syc9fSX2rsBFmzadY6C/Fge8d+e5uXHkfyiQRc6vwTu2Ylkhz95Fq2/8+YVv/CxSqb7xxyqhDjDBRxFBxcQnSYzeBfrYNqGJjej4TLDfWEywII42hqZ+/BB/6I2DkCn0WS9uv3PD4Z0DpG/3oemDe7u5NS/aMOWtol60t2qCusYTSi19uHn1iHiQOpz2i2v6xx/4xqE9PfyqHQ+N3Ln9RftsmoxADcYAyvMt9Y73lr7wdwTUmb8g/u53GOaw6pPizJC9MJrEj7noG9sG1CNhmWN2BcF2dpRzGBfz5XrojEWZRxuj6aCYY0tiLJOTMmK2uJJQjxj/8hjKEB1iGHCj4JTpxczQzEtehAevG+5pUO12twtCjfG4I979yJB4a7RlZbDdVGV1OMgDQPZQY+ERm1wqiVyYJwJHMrGaP+o9YKbUlE2ApL6YEiyylNT9ESff74qtvCgqNSZcBVOa+2Hr9q9E70rVikGTcxRJ4BSQa6ImzpQIEXk+OFbqhvQRQ4souDWotqAiL2Xqm+AZ/Yz0kXcCOnvfqg1779vzOXtqtvPMii9Ig5+dwj87Kf4bQ6EJfdRt4PyQZYFY0/NXERbE5vPzi+As2njhToFqfp7h6ufXYTFiZ6MCryyG/xQX5qIBFddLfr6b+SYsHc3P1ocikRD5rxCMuNslxeBKuiZjzQpUY6kFvwNgPtyioHRxkEr9fv+HE5AwHFc9q0neOXOa/kiAi9ByQX3et1fZb2+q7yCL914QN5y1GVt/DOVaR29JPCECXV9iGaI84A7sQ9W3Y4dLZe4vVR1Mxd3Hc7rq7lNVOKjqHM9xqmiceVWXNTgoiO6fswpN0R/EfnefyHtnMvcsdw1nzMOJiSzGpQ+SPmclxmVRqlVM0HG5wNFSQYAIRhjE3ZDTsobwJbifVegTxj7sx7mCRwvp5XSWh6/QYs/TwjyMahKsVCYZVaeECMTR56MplPyzCfrSPO/dL0m8RwvpQ1oS56aF7i/58Mpn0eOHaKxcTNGd84cLd4oCvXPu3B+4a8kPUA7rmSzJ7E3Zy7OzuJEm/Mt+7Eh/pyDPMx7xF7luuh/CY9hDe4WZYLqvW+YhFlJiWX1PO0aOB6L0t3AVOUK7V/XSqP8Dx/CavHCY8erwC3jhyKHZR2nu9wXvpz4vKN4dwOIA22sZ/S1RTbhyBxbvF/XeXzEQpfEUTa0hLTTE+RigN9vzQhBp0RzT5OUaKazwlhEU8u0fx8D9XmGdwVmmZmpavDGuichhJJUz1nn5pp9yj5H3GG7DgZtovmnn5YNFiiT/JyIZqw6Uvd+i0TRIFwumFw7SVEg/TYvQDM/8hE9O4uTWEVlECuyU2tLW1oKK3jIk+bItDxy6TZKw36mttdZgKDxo1fIRzrFMSbrt0J/Cl8KVh1OcozuqGUyO7RxLBk3UrA6XfmDTF97qwAErpOl655GnjnTqOidyIQsHO08G/hcLt/j/AAB4nGNgZGBgAOLaW41M8fw2Xxm4mV8ARRguss1QhNC5H/9//Z/FUsEcBORyMDCBRAFTFwxveJxjYGRgYA76n8UQxVLGwPD/FUsFA1AEBfgBAHyYBUh4nGN+wcDAvACCWfSBNIgviMBM1kA6koGBMRWVBqsDYqYmiF4wHQkxg+kUBMPVWEP0gTDYvBdoahZAzYxEY0ciuWUBFjkoZimDYLC8IKpehmsQccYvSGYgYZB7YBhFL5o8cxTQjDUI/wIArpclrwAAAAAAAAA6AIYA3AEKAUgBgAGgAfoCYgKqAwIDOgOGA9wEQAR4BLYFAgU8BZoFzAYMBlIGmga6BtgG+AcYB0QHcAecB8gIAAg2CG4IpgjyCUAJrAo0CtALOAueDAoMYA0ADVANjg3mDiQOjg7GDvgPOA+ED84QPBB2EN4RNhGgEfISchKoEsgS6BMGEz4TXhOSE8QT+BQsFGIUiBTWFX0AAAABAAAATgBuAAYAAAAAAAIAAAAQAHMAAAAiC3AAAAAAeJx1kctOGzEUhn9DoIKgLloJdcdZIRDK5CKhSqyoogJrhLJDwgyeSzpjRx4HlGfgLcoz8Dp9j+76Z2KhqFJmZM93Ph/bxx4AX/AHCqvnnG3FCgeMVryFT/gReZv+JnKHfBd5B108RN6l/xV5H2d4idzFV/zmCqqzx2iK98gK39RR5C18Vt8jb9P/jNwh30fewaGaR96lf428j4l6i9zFsfo7drOFL/MiyMn4VEaD4bk8LsRRlVZXouehcL6RS8mcDaaqXJK6OtSml+lemTrb3Jp8Xmm/rtZ5YnxTOivDZLCur401XgfztNytec5HIWSSeVfLVdxHZt5NTRqSIoTZRb+/vj/GcJhhAY8SOQoECE5oT/kdYYAhf4zgkRnCzFVWCQuNikZjzhlFO9IwvmTLGFlaw4yKnCBlX9PUdD2Oa/Zlay1n3dLmXKei9xuzNvkJ7XLvso2F9SaselP2Na1tZ+i2wqePszV4ZhUj2sBZy1P4tmrB1X/nEd7XcmxKk9In7a0F2gv0+W44/z/KQo7lAHicbZLnlpswEIW5Bgy4bLLpvfeE9N57z76DLARWEJKOEEucpw8CO/kTncOdT6PhnlHxRt4wJt7/x47nYQQfAUKMESFGggmmmGGOLezBXmxjH/bjAA7iEA7jCI7iGI7jBE7iFE7jDM7iHM7jAi7iEi7jCq7iGq7jBlLcxC3cxh3cxT3cxwM8xCM8xhM8xTM8xwu8xCu8xhu8xTu8xwd8xCd8xhd8xTd8xw/sBLUlZuIkZZW2q0hzahvDRqocUyIpE4EWTR1WXDZ1sGRCz5yklBsqWBZwmauZk01mTqxl0nIlUyLs9r/Zej35m4kFl2XKftlAKFomTlKlmfQ1l74lRdB9dbxQqqyIKbc2MPQZGqbFKsqVaYnJ4ky1Ms24iQXLrYPE8GLZ07jRfaIvcf5JX+NoMhQ5jLoqFwenBS8Gpw7WTh05py6MaOtT2ibEGNXWKW1Da0i9nPY6dNe7CEWy7pc+5EJpvfJVnvtUFUHFZBPWS2LYxKqiECztVpINypAuGS2nvQ6Gs+H0hsk0U3ZznDETguua1/MNpLvMWH/RFGEuuobCihScxqS2zPC6jH4rVaVcxn1UjQ1yJW1QK2MTJ6nrPOqp0d3Vk1WoSVOz7p0oHeWdTbpoh5i3sVWpezp23AGTWch+Mmonu0o0Vb+l6RqdabLmRnveH9ru7j54nGPw3sFwIihiIyNjX+QGxp0cDBwMyQUbGVidNjIwaEFoDhR6JwMDAycyi5nBZaMKY0dgxAaHjoiNzCkuG9VAvF0cDQyMLA4dySERICWRQLCRgUdrB+P/1g0svRuZGFwAB9MiuAAAAA==) format('woff')}</style>
+<style id="style-core" type="text/css">html{font:16px/1 Helmet,Freesans,sans-serif}#store-area,tw-storydata{display:none!important;z-index:0}.no-transition{-o-transition:none!important;transition:none!important}:focus{outline:thin dotted}:disabled{cursor:not-allowed!important}body{color:#eee;background-color:#111}a{cursor:pointer;color:#68d;text-decoration:none;-o-transition-duration:.2s;transition-duration:.2s}a:hover{color:#8af;text-decoration:underline}a.link-broken{color:#c22}a.link-broken:hover{color:#e44}span.link-disabled{color:#aaa}area{cursor:pointer}button{cursor:pointer;color:#eee;background-color:#35a;border:1px solid #57c;line-height:normal;padding:.4em;-o-transition-duration:.2s;transition-duration:.2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}button:hover{background-color:#57c;border-color:#79e}button:disabled{background-color:#444;border:1px solid #666}input,select,textarea{color:#eee;background-color:transparent;border:1px solid #444;padding:.4em}select{padding:.34em .4em}input[type=text]{min-width:18em}textarea{min-width:30em}input[type=checkbox],input[type=file],input[type=radio],select{cursor:pointer}input:not(:disabled):focus,input:not(:disabled):hover,select:not(:disabled):focus,select:not(:disabled):hover,textarea:not(:disabled):focus,textarea:not(:disabled):hover{background-color:#333;border-color:#eee}hr{display:block;height:1px;border:none;border-top:1px solid #eee;margin:1em 0;padding:0}textarea{resize:vertical}audio,canvas,progress,video{max-width:100%;vertical-align:middle}.error-view{background-color:#511;border-left:.5em solid #c22;display:inline-block;margin:.1em;padding:0 .25em;position:relative}.error-view>.error-toggle{background-color:transparent;border:none;line-height:inherit;left:0;padding:0;position:absolute;top:0;width:1.875em}.error-view>.error{display:inline-block;margin-left:1.75em}.error-view>.error-source[hidden]{display:none}.error-view>.error-source:not([hidden]){display:block;margin:0 0 .25em;padding:.25em;background-color:rgba(0,0,0,.2)}.highlight,.marked{color:#ff0;font-weight:700;font-style:italic}.nobr{white-space:nowrap}.error-view>.error-toggle:before,.error-view>.error:before,[data-icon-after]:after,[data-icon-before]:before,[data-icon]:before,a.link-external:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}[data-icon]:before{content:attr(data-icon)}[data-icon-before]:before{content:attr(data-icon-before) "\00a0"}[data-icon-after]:after{content:"\00a0" attr(data-icon-after)}.error-view>.error-toggle:before{content:"\e81a"}.error-view>.error-toggle.enabled:before{content:"\e818"}.error-view>.error:before{content:"\e80d\00a0\00a0"}a.link-external:after{content:"\00a0\e80e"}</style>
+<style id="style-core-display" type="text/css">#story{z-index:10;margin:2.5em;-o-transition:margin-left .2s ease-in;transition:margin-left .2s ease-in}@media screen and (max-width:1136px){#story{margin-right:1.5em}}#passages{max-width:54em;margin:0 auto}</style>
+<style id="style-core-passage" type="text/css">.passage{line-height:1.75;text-align:left;-o-transition:opacity .4s ease-in;transition:opacity .4s ease-in}.passage-in{opacity:0}.passage ol,.passage ul{margin-left:.5em;padding-left:1.5em}.passage table{margin:1em 0;border-collapse:collapse;font-size:100%}.passage caption,.passage td,.passage th,.passage tr{padding:3px}</style>
+<style id="style-core-macro" type="text/css">.macro-append-insert,.macro-linkappend-insert,.macro-linkprepend-insert,.macro-linkreplace-insert,.macro-prepend-insert,.macro-repeat-insert,.macro-replace-insert,.macro-timed-insert{-o-transition:opacity .4s ease-in;transition:opacity .4s ease-in}.macro-append-in,.macro-linkappend-in,.macro-linkprepend-in,.macro-linkreplace-in,.macro-prepend-in,.macro-repeat-in,.macro-replace-in,.macro-timed-in{opacity:0}</style>
+<style id="style-ui-dialog" type="text/css">html[data-dialog] body{overflow:hidden}#ui-overlay.open{visibility:visible;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in}#ui-overlay:not(.open){-o-transition:visibility .2s step-end,opacity .2s ease-in;transition:visibility .2s step-end,opacity .2s ease-in}#ui-overlay{visibility:hidden;opacity:0;z-index:100000;position:fixed;top:-50%;left:-50%;height:200%;width:200%}#ui-dialog.open{display:block;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in}#ui-dialog{display:none;opacity:0;z-index:100100;position:fixed;top:50px;margin:0;padding:0}#ui-dialog-titlebar{position:relative}#ui-dialog-close{display:block;position:absolute;right:0;top:0;white-space:nowrap}#ui-dialog-body{overflow:auto;min-width:280px;height:90%;height:calc(100% - 2.1em - 34px)}#ui-overlay{background-color:#000}#ui-overlay.open{opacity:.8}#ui-dialog{max-width:66em}#ui-dialog.open{opacity:1}#ui-dialog-titlebar{background-color:#444;min-height:24px}#ui-dialog-title{margin:0;padding:.2em 3.5em .2em .5em;font-size:1.5em;text-align:center;text-transform:uppercase}#ui-dialog-close{cursor:pointer;font-size:120%;margin:0;padding:0;width:3.6em;height:92%;background-color:transparent;border:1px solid transparent;-o-transition-duration:.2s;transition-duration:.2s}#ui-dialog-close:hover{background-color:#b44;border-color:#d66}#ui-dialog-body{background-color:#111;border:1px solid #444;text-align:left;line-height:1.5;padding:1em}#ui-dialog-body>:first-child{margin-top:0}#ui-dialog-body hr{background-color:#444}#ui-dialog-body ul.buttons{margin:0;padding:0;list-style:none}#ui-dialog-body ul.buttons li{display:inline-block;margin:0;padding:.4em .4em 0 0}#ui-dialog-body ul.buttons>li+li>button{margin-left:1em}#ui-dialog-close{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-close{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}</style>
+<style id="style-ui" type="text/css">#ui-dialog-body.settings [id|=setting-body]{display:table;width:100%}#ui-dialog-body.settings [id|=setting-label]{display:table-cell;padding:.4em 2em .4em 0}#ui-dialog-body.settings [id|=setting-label]+div{display:table-cell;min-width:8em;text-align:right;vertical-align:middle;white-space:nowrap}#ui-dialog-body.list{padding:0;min-width:140px}#ui-dialog-body.list ul{margin:0;padding:0;list-style:none;border:1px solid transparent}#ui-dialog-body.list li{margin:0}#ui-dialog-body.list li:not(:first-child){border-top:1px solid #444}#ui-dialog-body.list li a{display:block;padding:.25em .75em;border:1px solid transparent;color:#eee;text-decoration:none}#ui-dialog-body.list li a:hover{background-color:#333;border-color:#eee}#ui-dialog-body.saves{padding:0 0 1px}#ui-dialog-body.saves>:not(:first-child){border-top:1px solid #444}#ui-dialog-body.saves table{border-spacing:0;min-width:340px;width:100%}#ui-dialog-body.saves tr:not(:first-child){border-top:1px solid #444}#ui-dialog-body.saves td{padding:.33em .33em}#ui-dialog-body.saves td:first-child{min-width:1.5em;text-align:center}#ui-dialog-body.saves td:nth-child(3){line-height:1.2}#ui-dialog-body.saves td:last-child{text-align:right}#ui-dialog-body.saves .empty{color:#999}#ui-dialog-body.saves .datestamp{font-size:75%}#ui-dialog-body.saves ul.buttons li{padding:.4em}#ui-dialog-body.saves ul.buttons>li+li>button{margin-left:.2em}#ui-dialog-body.saves ul.buttons li:last-child{float:right}#ui-dialog-body.settings div[id|=header-body]{margin:1em 0}#ui-dialog-body.settings div[id|=header-body]:first-child{margin-top:0}#ui-dialog-body.settings div[id|=header-body]:not(:first-child){border-top:1px solid #444;padding-top:1em}#ui-dialog-body.settings div[id|=header-body]>*{margin:0}#ui-dialog-body.settings h2[id|=header-heading]{font-size:1.375em}#ui-dialog-body.settings p[id|=header-label]{font-size:87.5%}#ui-dialog-body.settings div[id|=setting-body]+div[id|=setting-body]{margin:.5em 0}#ui-dialog-body.settings [id|=setting-control]{white-space:nowrap}#ui-dialog-body.settings button[id|=setting-control]{color:#eee;background-color:transparent;border:1px solid #444;padding:.4em}#ui-dialog-body.settings button[id|=setting-control]:hover{background-color:#333;border-color:#eee}#ui-dialog-body.settings button[id|=setting-control].enabled{background-color:#282;border-color:#4a4}#ui-dialog-body.settings button[id|=setting-control].enabled:hover{background-color:#4a4;border-color:#6c6}#ui-dialog-body.share{min-width:140px}#ui-dialog-body.list a,#ui-dialog-body.settings span[id|=setting-input]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-body.saves button[id=saves-clear]:before,#ui-dialog-body.saves button[id=saves-export]:before,#ui-dialog-body.saves button[id=saves-import]:before,#ui-dialog-body.settings button[id|=setting-control].enabled:after,#ui-dialog-body.settings button[id|=setting-control]:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#ui-dialog-body.saves button[id=saves-export]:before{content:"\e829\00a0"}#ui-dialog-body.saves button[id=saves-import]:before{content:"\e82a\00a0"}#ui-dialog-body.saves button[id=saves-clear]:before{content:"\e827\00a0"}#ui-dialog-body.settings button[id|=setting-control]:after{content:"\00a0\00a0\e830"}#ui-dialog-body.settings button[id|=setting-control].enabled:after{content:"\00a0\00a0\e831"}</style>
+<style id="style-ui-bar" type="text/css">#story{margin-left:20em}#ui-bar.stowed~#story{margin-left:4.5em}@media screen and (max-width:1136px){#story{margin-left:19em}#ui-bar.stowed~#story{margin-left:3.5em}}@media screen and (max-width:768px){#story{margin-left:3.5em}}#ui-bar{position:fixed;z-index:50;top:0;left:0;width:17.5em;height:100%;margin:0;padding:0;-o-transition:left .2s ease-in;transition:left .2s ease-in}#ui-bar.stowed{left:-15.5em}#ui-bar-body{height:90%;height:calc(100% - 2.5em);margin:2.5em 0;padding:0 1.5em}#ui-bar.stowed #ui-bar-body,#ui-bar.stowed #ui-bar-history{visibility:hidden;-o-transition:visibility .2s step-end;transition:visibility .2s step-end}#ui-bar{background-color:#222;border-right:1px solid #444;text-align:center}#ui-bar-tray{position:absolute;top:.2em;left:0;right:0}#ui-bar a{text-decoration:none}#ui-bar hr{border-color:#444}#ui-bar-history [id|=history],#ui-bar-toggle{font-size:1.2em;line-height:inherit;color:#eee;background-color:transparent;border:1px solid #444}#ui-bar-toggle{display:block;position:absolute;top:0;right:0;border-right:none;padding:.3em .45em .25em}#ui-bar.stowed #ui-bar-toggle{padding:.3em .35em .25em .55em}#ui-bar-toggle:hover{background-color:#444;border-color:#eee}#ui-bar-history{margin:0 auto}#ui-bar-history [id|=history]{padding:.2em .45em .35em}#ui-bar-history #history-jumpto{padding:.2em .665em .35em}#ui-bar-history [id|=history]:not(:first-child){margin-left:1.2em}#ui-bar-history [id|=history]:hover{background-color:#444;border-color:#eee}#ui-bar-history [id|=history]:disabled{color:#444;background-color:transparent;border-color:#444}#ui-bar-body{line-height:1.5;overflow:auto}#ui-bar-body>:not(:first-child){margin-top:2em}#story-title{margin:0;font-size:162.5%}#story-author{margin-top:2em;font-weight:700}#menu ul{margin:1em 0 0;padding:0;list-style:none;border:1px solid #444}#menu ul:empty{display:none}#menu li{margin:0}#menu li:not(:first-child){border-top:1px solid #444}#menu li a{display:block;padding:.25em .75em;border:1px solid transparent;color:#eee;text-transform:uppercase}#menu li a:hover{background-color:#444;border-color:#eee}#menu a,#ui-bar-history [id|=history],#ui-bar-toggle{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#menu-core li[id|=menu-item] a:before,#ui-bar-history [id|=history],#ui-bar-toggle:before{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#ui-bar-toggle:before{content:"\e81d"}#ui-bar.stowed #ui-bar-toggle:before{content:"\e81e"}#menu-item-saves a:before{content:"\e82b\00a0"}#menu-item-settings a:before{content:"\e82d\00a0"}#menu-item-restart a:before{content:"\e82c\00a0"}#menu-item-share a:before{content:"\e82f\00a0"}</style>
+<style id="style-ui-debug" type="text/css">#debug-bar{background-color:#222;border-left:1px solid #444;border-top:1px solid #444;bottom:0;margin:0;max-height:75%;padding:.5em;position:fixed;right:0;z-index:99900}#debug-bar>div:not([id])+div{margin-top:.5em}#debug-bar>div>label{margin-right:.5em}#debug-bar>div>input[type=text]{min-width:0;width:8em}#debug-bar>div>select{width:15em}#debug-bar-toggle{color:#eee;background-color:#222;border:1px solid #444;height:101%;height:calc(100% + 1px);left:-2em;left:calc(-2em - 1px);position:absolute;top:-1px;width:2em}#debug-bar-toggle:hover{background-color:#333;border-color:#eee}#debug-bar-hint{bottom:.175em;font-size:4.5em;opacity:.33;pointer-events:none;position:fixed;right:.6em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}#debug-bar-watch{background-color:#222;border-left:1px solid #444;border-top:1px solid #444;bottom:102%;bottom:calc(100% + 1px);font-size:.9em;left:-1px;max-height:650%;max-height:65vh;position:absolute;overflow-x:hidden;overflow-y:scroll;right:0;z-index:99800}#debug-bar-watch[hidden]{display:none}#debug-bar-watch div{color:#999;font-style:italic;margin:1em auto;text-align:center}#debug-bar-watch table{width:100%}#debug-bar-watch tr:nth-child(2n){background-color:rgba(127,127,127,.15)}#debug-bar-watch td{padding:.2em 0}#debug-bar-watch td:first-child+td{padding:.2em .3em .2em .1em}#debug-bar-watch .watch-delete{background-color:transparent;border:none;color:#c00}#debug-bar-watch-all,#debug-bar-watch-none{margin-left:.5em}#debug-bar-views-toggle,#debug-bar-watch-toggle{color:#eee;background-color:transparent;border:1px solid #444;margin-right:1em;padding:.4em}#debug-bar-views-toggle:hover,#debug-bar-watch-toggle:hover{background-color:#333;border-color:#eee}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle,html[data-debug-view] #debug-bar-views-toggle{background-color:#282;border-color:#4a4}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle:hover,html[data-debug-view] #debug-bar-views-toggle:hover{background-color:#4a4;border-color:#6c6}#debug-bar-hint:after,#debug-bar-toggle:before,#debug-bar-views-toggle:after,#debug-bar-watch .watch-delete:before,#debug-bar-watch-add:before,#debug-bar-watch-all:before,#debug-bar-watch-none:before,#debug-bar-watch-toggle:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#debug-bar-toggle:before{content:"\e838"}#debug-bar-hint:after{content:"\e838\202f\e822"}#debug-bar-watch .watch-delete:before{content:"\e804"}#debug-bar-watch-add:before{content:"\e805"}#debug-bar-watch-all:before{content:"\e83a"}#debug-bar-watch-none:before{content:"\e827"}#debug-bar-views-toggle:after,#debug-bar-watch-toggle:after{content:"\00a0\00a0\e830"}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle:after,html[data-debug-view] #debug-bar-views-toggle:after{content:"\00a0\00a0\e831"}html[data-debug-view] .debug{padding:.25em;background-color:#234}html[data-debug-view] .debug[title]{cursor:help}html[data-debug-view] .debug.block{display:inline-block;vertical-align:middle}html[data-debug-view] .debug.invalid{text-decoration:line-through}html[data-debug-view] .debug.hidden,html[data-debug-view] .debug.hidden .debug{background-color:#555}html:not([data-debug-view]) .debug.hidden{display:none}html[data-debug-view] .debug[data-name][data-type].nonvoid:after,html[data-debug-view] .debug[data-name][data-type]:before{background-color:rgba(0,0,0,.25);font-family:monospace,monospace;white-space:pre}html[data-debug-view] .debug[data-name][data-type]:before{content:attr(data-name)}html[data-debug-view] .debug[data-name][data-type|=macro]:before{content:"<<" attr(data-name) ">>"}html[data-debug-view] .debug[data-name][data-type|=macro].nonvoid:after{content:"<</" attr(data-name) ">>"}html[data-debug-view] .debug[data-name][data-type|=html]:before{content:"<" attr(data-name) ">"}html[data-debug-view] .debug[data-name][data-type|=html].nonvoid:after{content:"</" attr(data-name) ">"}html[data-debug-view] .debug[data-name][data-type]:not(:empty):before{margin-right:.25em}html[data-debug-view] .debug[data-name][data-type].nonvoid:not(:empty):after{margin-left:.25em}html[data-debug-view] .debug[data-name][data-type|=special],html[data-debug-view] .debug[data-name][data-type|=special]:before{display:block}</style>
+<link rel="icon" type="image/png" sizes="310x310" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATYAAAE2CAYAAADrvL6pAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAOwQAADsEBuJFr7QAAPK1JREFUeNrtvXm4JGWd5/t5IzIjt3NOVZ3aqyiqKIpNtBmFKijZTlFVIA5qj+20I4Ji2z3XR+fq3B591Dt9EW176Md+bBURFEEBAUG9gsAFlaarUJDuHnVsHBClZZWlilrOmiczY3nvH3Ey6yy5nozMiMj8fZ7ndEtmVuQbmRHf/L2/VSH0BCMjIz8A3hr2OrrMO/fu3fudsBchRA8j7AUIgiAEjQibIAg9hwhbDzAyMhL2EgQhUoiw9QZHAYNhL0IQooIIW2/weWBH2IsQhKggwiYIQs+RCHsBQvt4nhf2EgQhUoiw9QBHH3102EsQhEghwtYDXHTRRWEvITRuueWWsJcgRBARth7Atu2wl7AolFJhL0HoUUTYeoBjjz027CXMwbZtPM+rK1ye51EoFJo+puM4OI4jYig0hQhbzNFaA0QqejA5OYnjODWfV0rhOA779u1r+phTU1NMTU2JsAlNIcIWf84HTgh7EbNxXbdhpLaZ15RRSqG1Lou4IDRE8tjiz/uA14e9CEGIEiJs8acU9gIWg2EY5HK5sJch9CgibELgpNPphr4wETahk4iwCYGTSqUwDLm0hPCQq08QhJ5DoqJCR0goDUrX3ZJqBYbSeFpSOIRgEWGLOeOzQgd5B9yZjIiJkv+/y5KhgUkbZmdMeBry7syTDVAKph3/PZqRIdvOobXGLkzVTNPwPJOks4Q3DI7XPZbWmlQqheM4lEpzYiX2nj172LFDOjYJcxFhizE/36cpungaX2wmbSi5/n8cnAZ7VpqYBg4VfDEr42kYazKmOu3CeBGcplPJkgAUJvI1hU2jWJFMc+rgeENtTSQSJBIJisXibCvw/wZeBP6lax+6EAtE2OLNR6Ydzs8mjhhd5XteKTBmmVaauf9dxmjC/FL4lp6nwWxx12iq2gahv6bmk26rCORpwNqAPkuhh5DgQbx5nadZ17V3W4QrzMoOBFIGpbUmk8mQSqUWPNW18xdigwhbvHHL/0NxRHdsb64vTeP74uZvQye70BTEMBMsShGrYJompmlKaZXQEBG2GLMmB5kZZ8Kkc8SnNmUfCSKUcaqUZbpd0Yfab6KAUSfBw2NL25K+PXv2dONEhBghwhZjLOOIj8z1jkiIFyODxtWKMSfZ1Gu11mSzWdLp9OyHrwbODPs8hGghwiaEjmrBTWYYRqXbxwwbgIGwz0GIFiJsQkM0kffQR3x5QrcRYYspP9/XSprE4t9H4SflTpaCCgFUWR8Kt73qg8yePXvMDi1PiCEibPElo8Fq5oVjpfb8blq32aK3TrqHAg7aSR4aXdb0xaiUmp9CcjNwejtLFHoLEbaYYio+Ne1wsaKx6IQbTFCkcoP1a0YBWxs0s6PUWpPL5UilUrP9bEOUSx0EAak8iC3rcqRRvsU2aUNpRt2KbnNC1k2tUwFvYmXugdAIsdhiilLVfV6zC+Fr4Wm/SD5ytKdXWvLZhDIibL1GTOODjlbk3bb8/+uBdDsHEHoHETahLh6dr1BQwAE7ySNjy5ouijdNc36X3luAU8L5lISoIcLW4zhthDMVfg+2CbtzqR5lWtHOcgDBsuYEheVaFirIxdBDVBOf8TZTPQJbmylxKqF7iLDFkP356tPfPR1RF5tSpDLNtS9q84J0JYAggAhbXDkOOAb8jrZli8zx2qsy6CSNlqWAgmdwwE42ve2tMh3+jcBg2OcqhI8IWzz5z8Afl8udyjlsTpMVAlHMAlPAqyWLX04saSqAoLUmmUximnMiqV/CF32hzxFhiyfu/AcUUHCbi2CWvGhuWf1mmc2vLJvNkkgs8N21Vf0l9AYibD3GbGus6C4UMK19K08QehkRth5myq4eEY3iVrSyNtX2RVmSAIIgwiZ0jUaBDaU0406C5wvplsR3XgDhMmA47HMVwkWELeZ00vqyPSg0OSC54ToVJKxU/dcAh+wkv83nmg4gpFKp+QGEjyEj+foeEbYYU/R88VH4QYMgUz0UfpBhOjB/nCKZytTtzVZ+31ZmjabT6WoBhCjGRoQuIsIWM36+T6PAUfhT38uT2d1ORToDNAk7sb4quWyCIMIWQ9405XDBgkfVwv+Ma9syRdsXZlECCP2NCFvM0HCm43HafNEqur7VVmaqVl+2iIudUppXbcv3szVh45XLtOZZbX8DrAz7XITwEGGLGSvSuJnEXH+awi+nmp2ZWnAW+tw0fg5blDduChh3ErxYTDVlcZZnjc7zs70TWBr2uQjhIcIWMwaSkKzxrc3WgVqiYLtEnlYDCJZlze/N5hJt/RY6jAhbzIj93doBR3+N4IEk6vYxImxC11BKYWUaD23XlOtGF40B3ASsCvuchXAQYYshCph2/Tw2hZ/L1olmkp2IMxiJZMMjG0rzQjHNrycHW9qSzlv6ucgMhL5FhC2mOLPETM9rMDlRmhshXQwF1+++G7y4NRHpBKZdk1En0fT7DwwMzK9AkFL/PkaELUb8fN8RUZhzw8+7+502O+kqfNF0QnbotZKHZ5qmzBsVKoiwxYv3T5T44GwhKw9cmT20RW7vCoYEEPoTEbYYsS7HylySlfPNMd2shRazkGrT51WdBPBDJFG3LxFhixEJA20s0hzT+GP0oqBtzewYTaV5ejrDryaGMJsMIMzbiipgE77ACX2GCFsM0RwRKF3j+WpEoWe2UgZWtrl5K7Y2KHrNX6JDQ0PzAwhR0HEhBETYYkZ5gEvBPVJK5eojfrWxUntDkrtyDqozl51SqloAQYufrf8QYYsh9Sw26eCzgGHkOu875AsXepk0sAdYFvZChO4iwhYTZnLYFthjbUYOI4+tFaUW/GzziuEBskgGTN8hwhYTPM0Sx2PF7MfKs0TtgH1qHp0p0WoVU2meyuf49eRg05HRKgEEoQ8RYYsJKZP3TLt8dL5vfPbtHsjQFfymlaMdKadqHU0g0VxPAgj9hQhbTFibwxhMouYHB2aLT71SKnd2xCFsFBjds6oM4LWAmHF9hAhbzHC1v01UzERHZ8RKAZM1Uj00/vDkyOiaMrAyzeWylc+tDesxC9wDNP+GQuwRYYsRZZ9aYaYL7vwctnjRZDUBMOmaTLjNd/pIJBLz89kintknBI0ImxBpDKX5t+ksv81nm+7NNjg4WC06KvQR8u0LkSeAcXwgrcL7ChG2GFP2t1WI5560I8ybg2ABb0MK4vsGEbYYMDP93Z79WDkto9wMsuS13zU3yrRqtaVSqdl+tizwNaRVeN8gwhYDXM1Jkzbn1LLIyoXxQXW87YrhpxRm0mr2pbxqWxywk02vLZfLzQ8gFLtxWkI0EGGLAUssdhiKdzqeX2VQbt1dL6etmcer4Wi/I2+nxU0pg2Qq29RrDTTPFtI8X8gsdrgL+GHYovjZ+gMRthiwPI2TTfpbz9LMdnN2Plsjim7zXT8cz8956w7Ni5RBa0OUq5AF/k/Ez9YXiLDFgHL5+2KtqGm3xeTc3gxC5IC/ApJhL0ToPCJsMUAx005bLS4Lv1d0qtUAQiaTme9nKxCdAgyhg4iwxYDDRThU8LeItld9QHKviFctDKV5rpDhxWKq6Yu2irAJfYIIWwyYsP2/acdP6XC8uake0x1oXRQ1FPByyeKAbaGa9LXp6o5FCSD0ASJsMUAxdws6f9ZByZ3p3hEzWl1yAAGEpcAXkU4fPY8IW8T55X4N4Mx/XKn4bz8NZZBMN5fysVjmWW0Z4E+R677nkS84+uwAPhz2IjqCUhiJ1oKUrQRPlFIMDg7O97OVwj5tofOIsEWfjcAp3XijUCzAFnaWhtI8MTXA84V001vSZDIpAYQ+RIQt+lTCArYHkzZMOkeCBVOOn7Rb69adspufX1Dy/LmkUZUBBYw6CSZb6M1WA1cCCL2NCFtMKJdROdoPHJSrDlyvvnC1Uj+qdfSjq/5WtK0Awhrgu8i139PIlxsTYhj0jCoW8Hqia5gKASDCJsQO3YLNppRiaGhovp/NDfschM4iwibEClNpfjkxxHPTzXf6kDmj/YcImxAqhmliZQda+jcFz8DWRjt7SQVYEkDoXUTYIswv9+sEkAp7HZ1GqcVdhm34HTcBPwz7vIXOIcIWbf498Pnyf2jE4z2bVj6LeT42E1gZ9vqFziHCFm1SzAz6Lc0Uvs+m0XD3ZptLxhFbK1zdnLQppViyZMl8cevhT0cQYYsJWs+9ExV+sm7RrW25TLSQnAvNd+QNG1Np/mV8SUsVCFJ90F+IsMWYRhZbK9geHIrRuBNXK3R7MpzET9YVehARNgEIe1+mFh1AaIMtwN2hnrbQMUTYhNAxTBMrk1vUv22l08e8fDaFzD/oWUTYhGjQog9MAZOuSdFr7hKuUYGgJZetNxFhiygzDSal9KcGhtL8z/ElvFxKtdNVNwecHPa5CMEjwhZdlgOvhcVNpuoX2vxcjgduDPschOARYYsuZwFXgJ+G4VZJxRCxa50qA17EKu5BRNiiS+UOtDUU5/VJc7Tfi62WuDle2JHO7tBK0odSCsuywl6y0AVE2GKIwh/FV6zTFDLvtJacG7r1p3XLpRJKaV4ppci7ZlPrV0oxMLCg4N6TAELvIcIm4GkoOO0fpx2UYWAkW7OmDOCxyUEO2sl2hHkVcEG4Zy8EjQibgKth3A53DcowSaYyLf+7AC7gY5nxZQq9gwibAERgKwphVu3HqJhMaAYRNiH2mEqjWiiGT6fTYS9Z6DAibBFkJjlXBvvOw5uZ0DX7z9Wa30zlGHOaG8mnlCKbXTB9XgIIPUYi7AUIVTkO+HOIyBYxAjgebFkCm5f4PsEyCnB0loSXp9mUtCq5bFuA9wM3hH2eQjCIsEWTY4E/AT9fzXZb7BYb9uoXiQbfzzavbtTxYPMQ7NwA67KzJkjPOt9XXtUUF+8p2wBcgghbzyDCFk0q966r/QTd2bd60YVSHbGbdlvLYYsKhmmSSKVxSkcUyvHgmCE4/2hYlfE7Cc9HqUDiDrL17yHExxYzFP7NXW/Ce8mNZ9WBUgZGwqK8+rKoXTAjam6Dk9JNqpthGORyi2uTJMQDEbYY0mir2WoX7ChuXR0PNg3Bm5oQNa01Q0NDJJPNtVerUVolAYQeQraifY6rYTRimzDHg42DcOFGWJleKGqmaS6YYZBMJsnn82itm55vMK/x5KmJROKTIyMjVwZ1Hnv37g3pExRE2Pocrf2ta1RwNRw9CP9+E6yoImqWZXHXXXfxz//8zyQScy/fUqmE53lNvY/WGseZU0e2slgsfhQYCeA0HOB9wP6wPsd+R4RNiAyehg05uGA1DNcQtXvuuYfbb7+d0dFRDKM9T0oVy27YMIzzAzgVDUgWcIiIsEWMmeTcOPr+28LTsGEA3rYRrNLCqG4ymeTee+/llltuYXJysml/Wkg4gDcyMiLb0ZCQ4EH0OBW4NuxFdBNPw/oBeMcWGE4ttNSSyST33XcfN998M5OTk21bal0gAfwAWBH2QvqVyF8hfcgAfoIujue3EypvmBR+n7VpJ5qRzMWggXU5eOcWWJZaaKklEgl++MMfcuONNzI1NRUHUQP/63ktMgUrNGQrGmE0fqbubBHz9MLHZjNl+4IYBzSwJgsXHw9DM9kXSh3xfZmmyY9//GNuuOEGpqen4yJqZWLyLfQmsbpS+hHV8IG5xOluWp2BS084ImrgW2i5XA7DMHjwwQf5+te/TqFQiJuoCSEjV4sQCisz8N4TYWDeZk0phWEY7Nmzh69+9asUi8Wm89KiyK233hr2EvoS2Yr2OWFYeCsycNmJkKvigXJdl5/85Cd85StfwXGchqKWSCQia80dc8wxg8Ar9GGUO2xE2PoYV8OhQnffc0Ua3ncS5KpceY7j8NOf/pQrr7wS13UbipppmoyMjLBhw4amE3O7SCqZTO4FXgccDHsx/YYIW4Todg6b1t3tArIiDX/2GsjWELWHH36Yz372sw1FSmtNIpFgZGSEzZs3N1383mUUMEjvBLBjhQhbtLCA1fVeENe7ZEXGt9RqidojjzzCZz7zmYYipbUmmUxyzjnncOyxx6K1RmtNJpOZU/vpeV7ggqeUwvO8usIbQcuxLxFhixb/Drit/B/z70uPePZZW1n2qdUQtZ/97Gd8+tOfbkrULMvirLPO4rjjjquIVzqd5pxzzmF4eLjy2rGxsaa2s60yOjrK1NRUzeOOj49j2/bsc/H27NnDjh07uvmR9z0ibNFCMfOd2J7fMHL2E3nH/6t1q3qtzxzuKBo/peO9NQIFjuPw6KOP8qlPfarxsWZE7cwzz+T444+viFomk+Hss89mxYq5Sf6moUAbRz68AFAoTENhGApV46BLlyzh8OFDuK4HYJhKH28o/T9ptm+5EAgibD1E3mncjLFblJNvLz2hdvTz0Ucf5fLLL298LK1JpVJs376dE088Edd10VqTzWY588wzWblyJYcKUPSOaNhEwcTzFNpzA3NaKmC8YJAvGHUtwXHHwnYcNGSB+4FjgNFufv79jgibEDie9suk3n38wjw18P1QjzzySNOWWjqd5owzzuCkk07CdV08z2NgYIDt27ezatUqDhTgu/8GL02BUdGbQdBQmBxF6+D8XnYhgWtnGliBacby03hRMp/7DBE2IVDKBe3vOg4GrYXPa615+OGHueKKKxofy/PIZDKcfvrpC0TtjDPOYPXq1bw6Df/v7+HlKTDni43SAQdbNIZpol3V0B+oiG+gpxeIZmaj0BWCTuh3NRw14Be0D9UQtYceeogrrriioTCURW3btm2cfPLJFVEbHBzk9NNPZ82aNeyfhjufhhfnWGoL3jXQc0xYaYyE1LZHHRG2PkXjT7sKinLn2/+4BZamqr9m7969/PVf/3VTopbNZtm2bRuvfe1rcRynImpbt25l7dq17MvDD56GFyarWGoVVPAipFmMVpYuveXXwa5DqIsIW0SYSc61u/V+nobRxc/hnIOj/RkFf7LZbz1UjQcffJC/+Zu/aZjnVRa1rVu3zhG1oaEhtm7dyrp163glD/c8C89N1BM1HyszEHatqQW8DXH7dBURtugwjH8DANX9M0HfnkEcz/HgmEH4D5v9dt7VeOCBB/jbv/1bXLe+iVhP1E499VTWrVvHy1Nw77Pw7Dgkmrl6Q3LgJxNm+fPNAl9DWoV3FRG26LAJuBz8e9GeZ9g42p8nWkuMwrBJHA82L4G3HQPLa9y2P/rRj/i7v/s7bLu+MVr2qdUStfXr1/PyFNz3XAui1lHqC2bWsmZbigHZxkKzhH55CBXmTH8vzhI2hT9Jqp5PrOR1N4fN9uDYJfCWTX65VDXuv/9+vvCFL1AqlepuB8uJtvN9atVE7ZnQRU1jJBIow2zwKiFMRNgiSisWmMIXvW4Jm+3BcUv8EXkra4jafffdx1VXXUWhUGgoaul0mtNPP72uqN3/PDwduqj5mMkUhiEusygTgctEaJeynnVjO1oWtQs3+hPaq3Hvvfdy9dVXk8/nG4paKpXijDPO4DWveU1dUfv9GCSjcrU22YRFz/2fBYmMdo+oXCpCDLA9OG6pL2qrs9Vfc/fdd3Pttdc2HLxSrv3cvn37nOTbwcHBI6KW97efkRK1JlFAOpks/9gMAH+FREa7RswuFyEsypbam46uLWp33XUX1113XcMRebML2ueL2tatW1m/fj2v5OG+Z32fWruiFpa/K51MlLOgM8CHkalVXUOErU9pZdtaEbWNfmF7Ne68805uuOEGxsfHG4paMpnkrLPO4oQTTphTJrVt2zbWrVvHvryf0hFIoEApkqls8GUW/tnUf3bu04WG/0AIDBG2CDCTnFvq1vt5GsZKzd1ljgdbZnxqtUTt+9//Pt/85jcZGxub0+yxGolEgnPOOWdO66Fy7efatWvZP+0n3waZ0pFIWoHXjJrJFEoCCJFFhC0aHAV8AXzRKXS4c5fGH7rciHKe2pvr+NS+//3vc+ONNzI6OtpQ1MozCrZs2VIRtWw2y/bt21mzZg2vTvtlUkHnqXXCTDISycgOkRFE2KLCEuB88IXNmXcnFr36098XY400+jeOhs1DcNGmYETNMAx27NixoJ33mWeeyerVqzlY8Avan5+MRkpHQ7RejGDaEhntDnG4hPqBI/eImis6CnC9hWI3m2k32OnvroZNg/CWY2qndNx5550tidrOnTs55phjKqKWTqc5++yzWbVqFYdm+qnVL2iPH0pBLlXZBg8D30Iio11BPuQYoBo853h+2UIQmlDu0vHHm/2pUtW46667+MY3vtGUT00pxa5du9i4cWPlsXQ6zbnnnsuKFSs4XIQ7/q1GP7UeIGGavsJpnQLORdq0dQURth4gqKaGnoYNA/D2zbVrP3/wgx9w/fXXMz4+3pSo7d69e46oWZbFyMgIy5cvZ7QI3/4dvJKv108t5swNjTbh2RSCQIRNAI50vv2PW2q3HrrnnnsqeWrNiNr555/Phg0bKo9ZlsWOHTtYvnw5YyW49XewP8ailkxlsLWH58qclqghPjYBjT+j4J01RE1rzb333su1117bMPkW5opauaQqmUxy3nnnsXz5csZL8K0nYf90h9LLqqzHyg4G/mZKmSzCVjYkgNB5RNj6nPI0qYuPr9751vM87r//fr7yla80LJOC2qK2c+dOhoeHmbDhpifhQKG7zqZG3TgW/+m1xDrgPuS+6zjyAYfML/drBRyRlC7npq/O+CPyqs0o8DyPH//4x1x11VVMT083JWq7d+9eIGq7du1i2bJhJm248TdwsNDdcwwTpRSD6VRZxBPARiSA0HHExxY+G/FnT+JqfzbobBbXYr82noYD0/4xV9YZZuy6Lv/4j//I3//93zfspwZ+Ssf86GdZ1JYuXcqUA9/4DRzqI1GrfDZqJofH/yKlrKoLiLCFTwJYWf6P2Ve9wq9CmLRr/8QvRvg8/OaQl9URtb179/K5z30O27abErWdO3cuELWdO3fOiJrqWVELeZ6CUAPZikYDXe+JWk8qfAvPbjE5d0Ua3ndSdVFzHIef/OQnXHnllTiO0/DGNU2T8847j02bNlUesyyLnTt3smzZsp4WNYBkOodhtmwfaAkgdBax2GJOq9bacNpv552p8s07jsPDDz/MZz/72YbTpLTWJBIJRkZG2Lx5c2WkXjmlY3jZMiYcxY09LGotceSLKlvo+8JeUi8jFlsfsTQFb91UW9QeeeQRPvOZzzQlaslkknPPPXdO7WcqlZpJvh1m3FaRCxQoFd7lro4k61V8qkLnEGHrE5alfEstXUPUfvazn/HpT3+64TDjcpPIs88+m+OOO25O7We5TGq8pLj5yaiJmiKVHSSMgKQfGU2X33luFFzoCLIVDZGZPmwdTVvXwHDK79JRy1J79NFH+dSnPtX4WLM6387up5bJZDj77LNZsWIFo0W/ouDVLuepNUXkFiR0ChG2cLGAk+nQLafxaz7fvLG6qLmuy6OPPsrll1/e+FgzW83t27dz4okn4rpupZ/amWeeycqVKzlUgNuf8suk+ilYqAyjwz9PQqvIVjRc1gB3MvM9BDk+T2s/+nnhRshWETXP83jkkUeaFrV0Or1g8Eoul+ONb3wjq1at4kDB79LxSp+JGkAylcUwG1c2SAJb9xBhCx9/P6oXdrX1tN+LrVU87SffvuloyFURNa01Dz/8MFdccUXjY3leZe7nbFErt/NevXo1r07D92ZaD8W1oL3TKCBhVm63LHBq2GvqZUTYIorCn+4+Vadzrqt9EZuNp/2Ot+cfXT1PTWvNQw89xBVXXNEwUOB5XmVC+8knnzxnmtTpp5/OmjVr2D/td759UUStLkopcqlKzGATcGPYa+plxMcWU8pVCbZ3RPg87Re07zwKBmoMetu7dy+f/exnmxK1bDbL1q1b50xoL4/IW7t2LfvycPczvdf5tktIb7YOIsIWIhVtUf7/nm19Kfz/9nRzFpue6ae2Yz0MWtVf/+CDD3LllVc2zFOrJWpDQ0OcdtpprFu3jldmRuQ9NxGTGQUVOuTpEgdapBBhC5Hls+YJeBoGrLkiZnuwvMbvusIf8lK22DwNp66q3qUD4IEHHuBzn/scboOmiPVE7dRTT2XdunW8PAX/33PBT5PqPAozaeHawU86NBJJPNtbMEy0Dt6lt/yab13yurA/lJ5EhC1ENg52531+9KMf8fnPf75hQXvZp1ZL1NavX8/LU3BfLEXN93Ml09mOCFvCyuA5Np5uOu9jJfDHwF1hfy69SMwuzd5hxsdV7PT73H///XzhC19o2HqonGi7bdu2hqIWyIT2sOjYlrHxgRWQSlRsiQ1A46xoYVHE9fLsBXLAf6GD38F9993HVVddRaFQaChq5ZSOeqJ2//PwdJxFLWSUUqStOVGdjv+w9SuyFQ2PIeC/06Gqg3vvvZdrrrmGfD5ft/NtuaLgjDPO4KSTTqorar8fg6SIWntIkKEriLC1yMjISFCHKsz8Zdo90Hzuvvtuvva1rzWcUVCu/ZxfUTA4OHhE1PL+9vPpcRG1RohmRQcRttbZCbyl3YO89a1vze3atSvZaI7AYvjxj3/ccJrU7IL2cu3n7Dy1ckrHfc/6PjURtcYkrBROcbphjuAsJDLaIUTYWucM4CPtHmR8fJw77rijIwtMJpMNRS2ZTHLWWWdx/PHHzymT2rZtWyX59t5n4xn9DAszYeGUitB8ZPRY4L8Bnw977b2GCFvrBJIxrpTCsqz2D7QIEokE55xzDscdd1yl9VC59rNcJnXPs70pauWUD7uQD+39M1aS6ZINsAr4E0TYAqfHLluhEaZpMjIywpYtWyqils1m2b59O2vWrOHVafjB070pagAohZkI5wdl5u2x5s5ICD6pThCLrZ8wDIMdO3ZUZhSUc9fOPPNMVq1axcGCX9D+wmSPilqFcN38WsIMHUeErU8oj8jbtGnTnHbeZ599dqVJ5Hf/ze/SIQXt7SCiFQV6+ndZ8FFKsWvXrjkj8sozClauXMnhot8k8iURtbZJpnItD42RUXzBI8LW4yil2L1795xhxpZlMTIyUplR8O3fSZPIoDBMs2HKtWkY5FIVP9/rgS+Fve5eQ7aiPYxSivPPP58NGzZUHivP/Vy+fDljJX/wyv68iFq3MY+k4wwBrwl7Pb2GCFuLvOMd7wh7CU2jlGLJkiWVOtFkMsl5553H8PAw4yX41pMz06T6TtQid8KLaAAv1EOErUWGh4fDXkJLlLPgk8kkO3fuZHh4mAkbbpqZ+xm5W7wLKMPAyg5Syk+EvRShQ4iwtUgnSqC6seZdu3axdOkyJm0iN6E9rM+kc7T8c2FcesuvrW9d8jrJaQsIEbYWeetb3xr2ElpGKUUqlWLKgW/8Bg71uah1GiuTo5SfROumd5hnA9cBl4W99l5BhK1FMpnAm3F0hUlbRK1bNJPuYRoGA+kUk4UiQAqIl48j4oiwtcj8ocblRg7NpGVq3Vr6ZrOvTRr188+mRNQiybzmn5LZGyAibC3y3Cx/c9HxZ38qIO/4g1VqoYHDhebDX7bnW1mNvDWu9sftHTNU/fm84xe0j0mvVqGPiJ8nPGTKI/E87YuUp31xaebP0eB4rf3ZDf5Kbu3BSFM23PMMjIlLOhZIBUJwiLDFnGwSEmb15+5/XkQtLFTrUdccsCbsdfcKImwxxtXwxjVw9ED151v16fUXajHi0zRWpnHNqAKMI36284Avhv2p9AoibDGmXgfq0aK/9RWqowwDK9Olwa418GtGU5Ul0Z/50h1BhC2maGCJBZka4Z8H/wDjJblThP5EhC2muB6cugo21NiGiqAJ/YwIW0zR+BHZauyf9tNQhLBpKrtx9qs8iYwGgwhbDNHAijQM1Wjd//BLvo9NrLYwURhmsvGrlCJ5JIhxFH5/NqFNRNhiiOvB65bDUTW2oaYhohYFkuns/OqCBZiGQcaqCOBZwMfCXncvIMIWQzS1I55/mPSrDUTZmkHT0YSYJgcnz3uVHd7n0TuIsMUMrWFtFpanqz//8/1++ZToWmOUMjATqfYPJEQOEbaY4WrYshTW56o/39tj84JFGQaJVDy7tQj1kdsgZmh8H1s1fj82k7sm5loLdDaLudmjz9q1uhIZbR8RthjhaT9vbW0Na+2Jw35tqOhaRFCKRLLxVtc0DFLJSsHvG4CLwl563BFhWyRhiEdZ2NZkqz+fUCJqUSNhpRpHRpXCSiTK1t0pwNvDXnfckX5sLVJ0j/xvp8tJsPWioU8ehkNF2YZGjiYaEZSfn/XVSWS0TUTYWqTktn+MxeBp2DQIx9So235m3PevySR3QZCtaGzQwKosrKgRxJOk3DZoMt+si0gAoU1E2GKCp2tHQ399EPblZRu6GJRhkkhn2z9QDXTl/zTx2iOvuwCZWNUWImwxwNNw7BI4YVn151/JNzcfQViIUgoz0bims53jJ9NZGn07ibmlVZuB08L+bOKMCFsMKPdeW1Yjc8AQRYs0pplo+KtjKEXCMGYbd07Y644zImwxQOvaLYr+16vwwqSIW5RprnmRtHEPEhG2iFPehv7RiurPjxZh2pFtqCDMRoQt4mggm4DBGm4gCRj0LEoio4tHhC3CNNqa/GI/PD0uuWu9xKyv8hLgL8NeT1wRYYswnoZjh+C0VdWfn3LmVkII0UQphZUeaPg6K2HOjowOA6vDXntcEWGLOJZZfRKVJzNDY4U/w7SxaW0oNft7la94kYiwRRhF7W3mL1+F3x2WbWgQGGYCK9PYomoP0ahuIsIWUTwNxwzBGWuqP1/yZCBykDTqwBEWEkBYHCJsEUXjW2PJKt+Q49UurxLijpq9Yc0Anav36mFE2CJKQvn+tWr86oDfVFK2oXFCNWUVWgmTrGWVN64fAP5r2CuPIyJsEcTTsGEQzlpb+3lPtqGxQinVvB/viP5ZM39Ci4iwRZhqZVJFFwqS4hFPxMLuGiJsESRhQK5GC9DHD/l/sg3tBJE0gz0JILSOCFvE8DSszMDrV9Z+TSRvv7ijFMow2z9Ou8tY+NA6JFG3ZUTYIkithq55Byak71pHMMwEyXSOsH82NH6Srnkk0PB/AO8L99OJHyJsEcMyYWmNvmu/G4XHD8o2NL4oDLPxmBHLNEknk1KB0AYyzKVFal1h5Z5pqs6/axTN1MAKC06p0aJIa/BoPSKq8SfIu3J71MXr8GekUJipHM7UWIMXKlzqX09CfUTYWmRpteC78us5Ha++sKUT9eeGlDvl1nzvlF8Uv5imksMpSRGpiwLHhkIHkyu01hQLBWzVOKxdKNlMGcW56bpC04iwtcjmJeG99zFD/p/QGTwHJiY6c2ylwHE89u073NRr8/lpJicny/32nF179rBjx46wP6LYIMImCDO4esbq7oSRpJt3ByhU5bUzFts24CTgN2F/RnFBggeC0CWUUmQymYav01qTSCRIJiu92f4UuDDs9ccJETZB6BKGYTA01JwvwbIsUqkU+ohTVupNWqDnt6IjIyNBH9IO+5yEzpBMJrEsq6MtjBzHmW2J1UQpNcdqsyzLDvJa3rt3b8fOMQr0vLDhJziubfsoM1x++eVnHnvssWGfU1/jui7bt2/npJNOWvQx8vk83/3udxcct1gsdlTYPM9jamqqqdfatk2pVEIpxUsvvfQWYFVT/7AxLwNf69hJRoCejiXP/ML9b+DkoI7pui6OI7Nsw6RUKvGJT3yCiy66CMuyMIzWPCqHDx/m+uuv56677pq91etas8lW3qf8WsMwWj7POjwOvLaXrbZet9j+L4L7lQPANE1MM/yawn7GMAyKxSJTU1PYtk0ul2vqpp+enqZQKPDlL3+ZBx54AMvq245Aq/DvjS+EvZBO0evBg0uBlW0fRYgc09PTuK6LbdtMTU3hebVbCufzeaamphgfH+eqq67iH/7hH0gkev03vS4r8e+NnqXXv91S2AsQOoNhGExOTpLL5QCYmppaYLnl83k8z6NUKuE4Dtdccw179+4Vi9unp++NnrXYZvxrMhmghykWi7iui1JqjuWWz+eZnJykUChQKpVwXZerr76ahx56KEg/VdzxOpAxEBl6+Vv+H8CJYS9C6BxKKSYmJiiVfOPDtm0mJycpFouVaKLneXzpS1/ipz/9aWQnUYXEifj3SE/Sy1vRc4FlYS9CCB6lFPl8Htv2Uwo9z0MphdZ6TsT64MGD3HDDDfzTP/1T2EuOIsvw75GepGeFTWstibQxR2uNUtWnOzmOg+d5mKbJ2NgYhmFgWRZaa0ZHR3Ech2uvvZZf/epXc44nzKFn75GeFLZbb72V/fv3h70MoU1M0+Spp57iV7/61QKHf1nsyv61sqCVSiVs2+b666/nscceq7zesix2797d79HQBTz00ENhL6Ej9Oq3fM3q1atPDXsRQnuYpskrr7xS09KanJwkm82STCYZHR3FdV08z+OGG27gscceq/y7ZDLJm970JlavXi1+trmoW2+9lXe/+91hryNwelLYlFLHAU0OcRTiiud5FfFyHIeJiQluu+02nnjiiTmi9uY3v5lVq/w87fL2Ng50Yet8GvB14C/CPteg6Ulhu+iiiyTNowdQSuE4TsOC7cnJSUqlErfffjtPPvlkTVEDyOVy7NixY9HiNj09XYnCdvK8p6ammJiYaEuEtdaMjY3VS17OAhs7ejIh0XPCprW26O00lr5iXuueBUxOTuJ5Ht/5zncailo2m2Xnzp0MDCzemB8YGGBqaqqj4lZOUwmiIH/58uWMjo7W+wzVnj17rB07dvRUwm7PCZuruU7B2bWeb8e478TOIOhD6k4ctAsYyh8U3QxKKcbGxigUCiQSCb73ve81JWq7d+8mm8tR8tr4jJTC1oqSS8daSCjA9sD2VNvdfDUGtlb1rt2zgeuAyzpzNuHQc8L2+EGGM0lSiZkLIu8cGWKiNUw6rQuUAqZdmAx4pqenYTzI30kFhwr4N12M8DRsHIR3Hd/Cv/E8XNfl7rvv5oknnqg83kjUDk7DjU+2N9hGk6WU17hOZ4wcBdilBHYh0/YFp7VmNE+9iz4FDHfkREKkp4TtF/s1nka7HijD/1F2vFnChv9LuBhhs10ousELWyFgEco78RS2Vj8HrTV33XUXv/3tbyuPJZNJLrzwwuqils1xsADf/A1Mtd11yrfY3A52r3Jc/9pt94rTGoquQtc/Tgxt/Pr0mi9qaS5JurylmXbm/jIvdiup6UzRadBXUzxife1jmiaPPPIITz31VOUxy7K48MILWb16deWxTCbDrl27fEutCN94IghR6wZ6ZohLMN9oM366S2/5ddgnHSg9JWwGXO1qdlYemKccU4vchhZdmOrANnQi4J2Mq+nB394a5zqTs6a1JpVKccEFF7BmzZrK8+l0mm3btpHNZjk4Dd98wrdm44KZtEhYadr9QpVSDGbSja7dDLCiqQPGhJ4StgGLZMLABF/AgrrH46AXChgt4jvG+wStNel0mt27d7N27dpK8CCTyVRE7dVp+OaTcbHUZhOcxQYNr9+dwFVhn3GQ9IyP7anRufHAaXfuNtRbpNB5dGaC+mLXU4+oi2+g56o1mUyGnTt3sn79+or1ls1m2bp1K7lclgNFgzufVuRj5nOcdZaBHEUBpmHg1s5nM4CealLXSxbbRmZHdwLahpY6EA3V2j+msDi01uRyOc477zyOOuqoiqjlcjlOO+00BnJZXi2a3PniIHk3rp5HjTIMlGr/FlVKMZBONXzDXvKz9ZKw/TWwGzpjDQVKXO+1iOB5Htu2bePoo4+uiNrAwABveMMbGBwYYF/B5AcvDTLlxvvyNhMpzGSKLl3NK4CeGb8W729+Fq5Gu9p3oBecYLaPnvZD7kHrkNMBP5jtdWbLHHXKfrZTTjmFwcFBXimY3PPyIJOOIb8frbETuCLsRQRFT/jYfrlfk7drZ2Q4i7TgSp6/hQ10G4ofYQ1SgxR+om+pAyIcZcp+tg0bNpBO+xHEB/blGHeMLv1ia+LyiSsgYZo4bl2HY8+EnnrFYjuFOsW804v0r8Xjku1PtNYkk0nWr19PNputPG6o7nxvhpkIxP/V3Mm2fwilFLlUw3GDXq/42XpF2D4M7AjygK72t3dB3yR2z/wmhofWGsuyWLp0aaVrbrdJpNIYZrLTZ4oyTFRQU7Uaf0ybgZ7oY9grwlY3S2kx4uR4wec+aSAf8Da0XxkYGAhN1ICudRswkxZmwurKewHnAB/qxht1mtgL2y/3a4CajgPba91xoKDtrgq1jtuRfVIf7pn7Zn5BgAKqFFiJhtZfTyQixV7Y8CftnFLryYLbun/NnSnKDlovii4d+eEtOH6ApA/1rT8IqPRFKUXGauhnc3rBz9YLwvZO4I3VnlhsAMDVfsAhSDQzQYyAT17hR1nFd9eraIxEEmUGk8DQhKV7Gsyqt44pvSBsNUvJi4vchs7+/0HRqe0tHTyuEA2MRBLTTBDEz6KhFKn6k7q2AW8P+5zbPs+wF9AOjfxrpUVuQ4O21mBxW2JBACDAShqlFKlkQ+sv9n62WAsb8BbgvCAPWPavBU3R7VBcS6y1/kF+GJsm7sJ2LvDvqj2x2Ps9Tom5Zf9aqQOBDiFKaMykhZEILm+ugUa6cQ8gxF3Yam4aC27rtZOe7kzfrsVUPjRL0fUjokJvY5gJlBFMoq6hFJlkXZG8EPjTsM+5HWJbK6q15uf7qd6/Qfl1k26LN7zj+SIUdG3o9CJEthkU/jm6MY+IBtnzrtwIofwddiqPVin/B8X1uhS80UfOLYDVY5omTsmeaUG+gJPwgwjf6cKZdYTYChvwrpOH+dNaHWPdFiOiCv/m6kTahON1zj1iezPCFuO9qNaQa3GXZRjGnF7+4+PjLFu2jB0r8xRnvkOFIjeQ69jk96lJsEtdEjYFE+M2hXwhkDfUQLHoMjU1VevacW7rwml1ijgL20mZBFsyYa9C6DqmafLQQw+xdOlS/uiP/giAYrHIoUOHWLd8mIRpVvpuJJOa7MAAnVD+fBJKpS79pigY1R6ThhuIUCvATnmMesVaQunt2bOHHTsCLcHuGnEWtphvwITFopRi//79fP/732fp0qVs2bIF13WxbZsDBw8xPDyMOVM47pZs3IlJBgYGArfc3C72wCu7HbwAK0zmb9vncQnwO+DG7pxhsMQyeDCTPS0u8z7GNE0OHTrETTfdxDPPPINh+JeybdscOnQId1bfMdu2mZyc7J/60iZJJBIMDAzUenoDfrePWBJLYQMuAz4Q9iKEcDEMg1dffZXrr7+e5557boG4ebOGl5TFTTiCUopEIlFP8GO7K4qrsK2Z+VuADvFPCJ7du3dzySWXYNvVk+ENw+DgwYNcd911vPDCC5Xtpm3bHDhwYIG4TUxMhH1Ki0JrzdDQEJlMJnDLs84WXe3ZsyeWYalY+tiemziiIyV3biRz2mk9r8vVMFZsb02ehq2rYZVEMwJlaGiI97znPXiexx133EGiSp2jYRgcPnyYa6+9lg9+8IOsX78erTWO43DgwAFWrFgxx5qbmJhgcHAw7FNrGdM0K+fRJf4L8CJwXdjn3iqxmyX4i/06kTA4x9Oc52m/0L3oHnGE5t2ZpFWvub+iCwem/f9f8hb/V3BhwwAMNuwKI7SKZVmcfPLJFItFHn/88ao3t1KKQqHAY489xkknnVQRLs/zKBQKZDKZimXieR6O45BKNRxJV5dSqTTHIuw05XO0bTuwQEhZLIvFYrVjZoCf3XTTTQ937SQDInZbUQWX2S4frzxQJarTyldezl9rF1NJl41Oksvl+PM//3Pe/va31xQTpRTj4+N8+ctf5pVXXqk8Xrbcqm1LJaBAIytQ79mzJ+wltn5OYS+gVQaS5JImg1BjG9riD2hQY/pOWwWrZRvaUbLZLB/4wAd429veVleQJiYm+NKXvsS+ffsqj9USt3aipZ1K/I0YaaA90zYEYiVsv9ivUQo9p1xmFq1enp6GsVKL/6gKGkgY/oQkobOk02k+9KEPcdFFF9V93eTkJF/84hc7Km65XI5kstMDXeailOqIoNax2j4BvK+rJxnE+YS9gFbQmqynWVLtucV+1UHsRCzD34oK3SGVSvHhD3+YCy+8EKVUTVHqtLh122LTWrNkyRLS6XSgW2jLshgYGKh1TLHYOo2peJft8f9Ue85jcRZbu7gaXr8S1ubC/nT6C8uy+Mu//EsuuOACTNMMTdy6TacstgbEzs8WK2EbsDBTJkmYyR2bdQ0WWvSveRpGS8Hkn6kuDekV5pJIJPjoRz/K7t27mxK3+QGFgwcPVq1Q6GakMyasBIbCXkQrxEbYZtqAa5gp4J0VOFiMqKjK0dojk/C3okI4mKbJxz/+cXbt2lU3i35ycpKrrrqKl19+eU4Sb7Xyq3w+33fippSq1NdW4b/jD02KDXG6JYdtj6M9faQYuB2CaM7oanjdclgn29BQUUrxyU9+kp07d9YVt4mJCa6++mpefPHFuuJWKpUiLW6dSNRNpVLkcrlan12cGksD8RK2txQc/mrKXjhuztWtFbXpmUqDdrVNaxnQEiWaEbexsTGuueYa/vCHP9QtnC8Wi5EUt3IAIZVKddsf6MXJzxYnYav5U1J0W2wQGcDvjwaGLH8rKkSHsrjV8rkppRgdHeWrX/3qnML5UqnE4cOHcV234qCPqrh1igZCeSKwOuw1NksshG3Gv1Z3GkErOmUHMJHd03DCMtmGRpFPfvKTdQMKSikOHTrE17/+dZ599llM06wI2eHDhyslS/0kblprTNOsWos7w3/Dn4UQC2IhbMA6YGu1J1rehgLjdjDb0G41GRRa5xOf+ATnn39+TV9UuSvIDTfcwNNPP00ikagI2ejoaF+Km2VZjbqHxOYDiIuwnQP81/kPLmYbGoQXVAPL0v5WVIguH//4x7nwwtpGRrmf24033shTTz0VK3ELKd/OiYufLS7CVvNqajWHLIiJ7J6GzUOwJhv2xyI04mMf+xgXXXRRTSEwTZN9+/bxrW99i9/97nckk8mWxK38+m6itSadTtdLz+gU5wKbuv2miyHybYtm/GvHAf9p/nOKmRFoTQqVxq8Nbfe3ztOwOgsrpeg9Fmzfvp3Dhw/z5JNPVhUhwzCYmJjgmWeeYe3ataxevbrS2shxHCzLqoiI4zhorSvWXSKRwHGcrltyqVSKYrE4J5IbBFprXNetdT6nAv9y0003/e+unuwiiIPFthl4W7UnHN1atUEg21DtC9ry2FXP9S9KKT7ykY/w9re/vaYQmKbJSy+9xLe//W1+85vftGS5Rb0MqxUsy2pUixqsknaIOAjbKfgzDuag8H1rrSTaBjGR3QPWD8Aq2YbGCtM0+dCHPsQ73vEOHKd6gD2RSPDiiy9y++23tyRuvda+qBeEOg7CVvcXopVLKu8EEw2N++T1fiWRSPCBD3yAd77znTVnKJTF7Y477uCJJ57Asqy64jY9PR34drBZtNZhiFApDgGESPvYZvxrx+DPOJxD2b/mtDBnsdCmsOkZ39qxSyEribmxxDRNTjnlFBzH4V//9V+rOuANw2B0dJQXXniBVatWsXbt2po+N9d1Q7NwlFLYtt2R4S6e59Xys2WAf73pppsOhHLSTRJ1i+1E4IPVnrBnZhY0K2p5p/28Mw/fv7YiHfbHIrRDKpXiz/7sz3j3u99NqVS902gikeAPf/gD3/nOd3j88cdrbkvDJJvN1kuoXTTJZBLLsmoJ5tuAE0I98SaIurBtAt4y/8HZ1lqzTAe1DY2/+0HA78T73ve+l/e85z0Ui9VHlM0Wt3o+tzAJyVqMvDMm6sJWO3+txQO1e/l52i+fOjp+U9uEGmSzWS655BIuu+yyhuLWKKDQazQQzMj72SLrY5vxrx0NvHf+c6361ybtFovkq+Dhj9fbFKt2e0IjLMvihBNOwDRNfvGLX9ScWzo2Nsbzzz9fNc8tlUp1e94n4PvC8vk8juMELq6GYeB5Xq3AyCbgFzfddNO+1o7aPaJssZ0M/I9qT5RneTb7VZZcqQ0VajMwMMC73vWuhpbbiy++yG233cZvf/vbOeVX5a4g3aY8Hb4TA2USiUS99k9n4ddvR5YoC9tK4Iz5D5bngDbr65q0AwgaaDhqALYsae84QnQZHBxsStxefvllbrnllgW1pfP7uXWLsKxFIu5ni6Swaa1xtR8bmP0HRya/M++5Wn+lmSnxuo0/T/vpHTLlvbcpi9t73/vemuJmmiavvPIKN998M7///e8rLY+qNavsBiEm07pR9rNF0uuptT7Z1Xyn4PCaBc/RmgXmzFbFxa4HSJuQ6+4ISSEkJiYmuO2227j55puxrOq/Zq7rsnLlSt7//vezadOmSs5XMplkeHi4qwXqBw4cqJm20g6e5zE1NUWhUKjmw3sSuHjHjh3/q2sn2gJRTTMdNBWvESERwmBwcJCLL74Yz/O49dZbq/qwTNPkwIEDXH/99fzFX/wFGzduxPO8iuW2fPnysLaIgdFgtsKJRHhyVVQ/eXHTC6EyODjIpZdeysUXX1yz/KrcrPK6667jhRdemDMgZv7cUqG7RM5iGxkZUYcPH04MDkrCmBAumUyGiy++mFKpxPe+972qlpthGBw+fJhrr72WD37wg6xZs6bS+mffvn2sWLGi43luQ0NDHDx4sGZx/2JpUFpFsVhMjIyMqL1790bOEImcj21kZOTkZDL54LJly2IzOELoXZRSTE1NMTExUVegytOj5vvWuuVr8zyvI4GEeoX2U1NT+xzHuXDv3r2R87NFzmIDLNu2V+/bF9ncP6HPKHfzaPSa8fFxtNZzXtvNqGUIFRCrgUjmCkRR2Pxp7z1YpiL0PvOvW7mOw+H/B2FAkPFkwNxTAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE4LTA1LTMwVDE1OjA4OjU2LTA0OjAwT9bydAAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxOC0wNS0zMFQxNTowODo1Ni0wNDowMD6LSsgAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMjHxIGmVAAAAAElFTkSuQmCC">
+<link rel="icon" type="image/png" sizes="16x16" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7AAAAOwAFq1okJAAAAGXRFWHRTb2Z0d2FyZQBwYWludC5uZXQgNC4wLjIx8SBplQAAARlJREFUOE+tk7FuwjAURf0TXfia/Eh/gZENMXZtWQI7irJ1rUSliEodCFIQCkgMMETqUtLQJerC8Jpr8aL3nAgYuNJRYvvdazt2DIuIzm/GeJ5XVpDE9307hjqmlttZPa1+8tySpillWabqGDYoDn9E0RfReE00mJMNSJbLRh24OcCtAbXcgeSgA6Ioqrp1DWg1g7sGyJNw664GnE1Squ5iAJuxhd60sGBM0hpQGU9s5m/AId3XPbrr2tYAPkJIBsDsBgDVALx/yA14nDTvg2pg6S4vz8NGn/SoAMwuZwUwjN435G+Jnj5L6r/Z5TUD5N6lfo/fPKtVURTqYpnZamc+VruO3Dv/hQCGRRzbELzjv0BAEAQPYRiaf5hY1uhDUXlmAAAAAElFTkSuQmCC">
+<link rel="icon" type="image/x-icon" sizes="16x16 32x32 64x64" href="data:image/x-icon;base64,AAABAAMAQEAAAAEAIAAoQgAANgAAACAgAAABACAAqBAAAF5CAAAQEAAAAQAgAGgEAAAGUwAAKAAAAEAAAACAAAAAAQAgAAAAAAAAQAAAwQ4AAMEOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKSkgCCgoJVl5eY/JmZmv+ZmZr/mZma/5mZmv+ZmZr/mZma/5mZmv+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ampr/ZmZm/z4+Pv9nZ2f/jIyM/5GRkf+RkZH/kZGR/5GRkf+Ojo7/hYWF/4WFhf+FhYX/hYWF/4GBgf94eHjsZmZmMGhoaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9+wA/vftKf/z5Ob/8N3//+/Z///t1f//6s3//+rN///qzf//9ef/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1RUVP9ra2v/ysrK/+vr6//t7e3/7e3t/+3t7f/t7e3/5ubm/9TU1P/T09P/09PT/9PT0//IyMj/v7+/zL+/vxG/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+nLAP/pywn/6s25/+fH///kvv//4rv//9ur///aqP//2qf//+bD///+/f//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM/+zs7P/t7e3/7e3t/+3t7f/t7e3/7e3t/+Li4v/T09P/09PT/9PT0//S0tL/xMTE/7+/v5u/v78Bv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s4A/+rOhf/py///5MD//+S////esv//26r//9up///esv//+fH/////////////////////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM//Hx8f/w8PD/7e3t/+3t7f/t7e3/7e3t/+3t7f/e3t7/09PT/9PT0//T09P/0NDQ/8HBwf+/v79pv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/qzk//6s36/+XC///kv///4bf//9uq///bqv//26r///Dc////////////////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM//Hx8f/7+/v/8PDw/+3t7f/t7e3/7e3t/+3t7f/s7Oz/2tra/9PT0//T09P/09PT/83Nzf+/v7/yv7+/PL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/t1QD/7dYk/+3U4v/nxv//5L///+O8///crf//26r//9qp///mxP///v3/////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM//Hx8f/9/f3//f39/+/v7//t7e3/7e3t/+3t7f/t7e3/6urq/9fX1//T09P/09PT/9PT0//IyMj/v7+/1L+/vxe/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/7tcA//DbCf/v2bn/6cz//+XB///lwf//37T//9yt///crP//4LX///ny////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM//Hx8f/9/f3///////v7+//u7u7/7e3t/+3t7f/t7e3/7e3t/+fn5//U1NT/09PT/9PT0//S0tL/xMTE/7+/v6a/v78Dv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+nLAP///gD/+vSF//rz///58P//+fD///ft///26v//9uv///fr///9+v//////////////////////////////////////////////////////////////////////////////////////39/f/1dXV/9qamr/zMzM//Hy8v/9/v7////////////7+/v/7u7u/+3t7v/t7e7/7e3u/+3u7v/k5OX/09PU/9PT1P/T09T/0NDR/8HBwv+/v79vv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9OUA//bpT//z4/r/8d3//+/a///v2f//69D//+rO///qzv//6s3//+jI///mw///5sP//+bD///mw///4bj//9+z///ftP//37T//9+0///ftP//37T//9+0///ftP//37L//+/W/87Oz/9RUVH/ubi3//XdvP/+3bH//9+0///ftP//37T/+9uw/+7Qp//t0Kf/7dCn/+3Qp//t0Kf/5Mig/9m+l//Zvpj/2b6Y/9S5kf/LsIfyybKPPMmxjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+nNAP/pzCT/6s3i/+bF///jvv//477//96w///aqP//2qj//9qp///Yo///05j//9OX///Tl///05f//82I///IfP//yH3//8h9///Iff//yH3//8h9///Iff//yH3//8d6///htf/Pz9D/VVVW/8PBv//70pn//8h7///Iff//yH3//8h9//vFe//uu3T/7bp0/+26dP/tunT/7bp0/+Ozb//drmz/3a5s/92ubP/Xp2H/06Nb2dSjWRrUo1kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s4J/+rPuf/oyv//5L///+S////ht///26r//9uq///bqv//2qj//9Wc///Umf//1Jn//9SZ///Pjv//yX///8l////Jf///yX///8l////Jf///yX///8l////Iff//4rb/z8/Q/1RUVP/Avrv/+9Ob///Iff//yX///8l////Jf//6xXz/7bt2/+27dv/tu3b/7bt2/+y6df/gsXD/3a9u/92vbv/crmz/1KZf/9OkXbDTpF0F06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+7XAP/u1oX/6s7//+XB///kv///47z//9ys///bqf//26n//9up///Xn///1Jj//9SY///Umf//0ZH//8l////Jfv//yX7//8l+///Jfv//yX7//8l+///Jfv//yHz//+K2/8/Q0P9NTU3/mJiY/+jSs///zIX//8h9///Jfv//yX7/+MN6/+27df/tu3X/7bt1/+27df/quXT/3rBu/92vbf/dr23/2qxp/9OkXf/TpF1606RcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/x3QD/8dxP//Da+v/rzf//6cj//+nI///kvP//4bb//+G2///htv//37H//9un///bp///26f//9mj///Skv//0ZD//9GQ///RkP//0ZD//9GQ///RkP//0ZD//9CO///nwP/P0ND/S0tL/19gYP+gn5//7te4///Skv//0ZD//9GQ//jLi//uwob/7sKG/+7Chv/vw4b/6L2C/920e//dtHv/3bR7/9eucv/RqGn40admSNGnZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADk4dwA5eHcJNjW0+LW1ND/19PP/9fTz//X087/19LM/9fSzP/X0sz/19LM/9fRyv/X0cr/19HK/9fRyv/X0Mj/19DH/9fQx//X0Mf/19DH/9fQx//X0Mf/19DH/9fQx//Z1dD/sLCw/1VVVf+bm5v/b29v/5+fnv/Vz8f/19DH/9bQx//QysH/zMa+/8zGvv/Mxr7/zMa+/8bAuP++uLH/vrix/764sf+3san/tK6l3ryyoiG8sqMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdHR1AHR1dQlbW1u5WFhZ/1hYWf9YWFn/WFhY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1hY/1BQUP9QUFD/y8vL/8nJyf9sbG3/VlZX/1dXWP9XV1j/V1dY/1dYWP9XWFj/V1hY/1dYWP9XWFj/WFhZ/1hZWf9YWVn/WFlZ/1pbW7dpa20HZ2lsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQUFABHR0cAPj4+eT4+PuQ+Pj7hPj4+4EVFRehUVVX+VVVV/1VVVf9VVVX/VVVV/1VVVf9VVVX/VVVV/1VVVf9VVVX/VVVV/1VVVf9VVVX/VVVV/1VVVf9VVVX/VVVV/1VVVf9UVVX/Z2dn/+Dg4P//////1dXV/2tra/9TU1P/U1NT/1NTU/9TU1P/U1NT/1JSUv9QUFD/UFBQ/0VFRe0+Pj7gPj4+4T4+PuQ+Pj55R0dHABQUFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAAEBAQAxAQEAeQEBAHigoKBu8u7pW6Ofm9+jn5v/o5+b/6Ofl/+jn5v/o6Oj/6Ofl/+jn5f/o5+X/6Ofk/+jm5P/o5uT/6Obk/+jm5P/o5uT/6Obk/+jm5P/o5uT/6Obk/+vp5v/8+vj///77///+/P/x7+3/393a/9jW1P/Y19T/2NfU/9nX1f/NzMn/wsC+/7y7uP6enZtwLS4uGkBAQB5AQEAeQEBADEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8dwA//HcP//w2vb/7dL//+rM///lwP//6sz///z4///qy///4LP//+Cz///apf//2KD//9ig///YoP//2KD//9ig///YoP//2KD//9ig///YoP//2KD//9ef///Wn///1p///9eg//XPmf/uyJX/7smV/+7Jlf/vyZX/5MCO/9y5iP/WtIH0z615Pc+seAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rNAP/qzj//6cv2/+TA///huf//26n//9yt///26v//68///9OX///Tl///y4T//8h9///Iff//yH3//8h9///Iff//yH3//8h9///Iff//yH3//8h9///Iff//yH3//8h9//7Iff/yvnf/7bp0/+26dP/tunT/7bp0/+Ozb//drmz/2Khj39KiWCDUo1oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s4//+nM9v/lwf//4rr//9ur///aqP//6s7///bq///XoP//05j//8yF///Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf//+yH7/8L54/+27dv/tu3b/7bt2/+y6dv/hsnD/3K5t/9aoY8LQoFcL06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+rOP//pzPb/5cH//+K6///bq///2qj//9+z///68///37P//9OX///Mhf//yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///cd+/++9d//tu3b/7bt2/+27dv/runX/37Fv/9ytbP/VpmGgu4o1AdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+vQAP/r0D//6s32/+XB///iuv//26v//9up///Yov//9Ob//+vQ///Tl///zIX//8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l///vGff/uvHf/7bt2/+27dv/tu3b/6rh0/96wb//brGr/1KVfe9anYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/v2QD/8No//+vR9v/lwf//4rr//9ur///bqf//1Zz//+nK///26v//1p///8yF///Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf//6xX3/7rt2/+27dv/tu3b/7bt2/+i3c//dr27/2qto+9OkXVDTpV4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8NsA//DcP//s0fb/5cH//+K6///bq///26n//9Wc///drv//+vP//9+y///LhP//yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX//+MR8/+27dv/tu3b/7bt2/+27dv/ltXL/3a9u/9mqZu3So1wy06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//HbAP/x3D//7NL2/+XB///iuv//3Kv//9up///Wnf//1p3///Xm///s0P//y4T//8l+///Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l///bCe//tu3b/7bt2/+27dv/tu3b/47Nx/92vbv/XqGTZ0aJaGdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPbw5wD28Og/9u7j9vbr3f/26tr/9ufT//bn0//25c7/9uTM//bv5v/28u3//Nim///Jfv//yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf//0wXr/7bt2/+27dv/tu3b/7Lp2/+GycP/crm3/1qdivM+gVgjTpF0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACGhocAhoaHP4aHh/aGh4f/hoeH/4aHiP+Gh4j/hoeI/4aHiP+Ghob/jIyN/8jCu//71qL//8l+///Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX//8795/+27dv/tu3b/7bt2/+u6df/fsW//261r/9WmYJbrvoUA06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPz8/AD8/Pz8/Pz/2Pz8//z8/P/8+Pj7/PT09/z09Pf89PT3/PT09/z4+Pv9sbW3/yMK6//vWov//yX7//8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///sh///G+eP/tu3b/7bt2/+27dv/quHT/3rBv/9qsav/UpV9t1aZgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQABAQEAaQEBAZUBAQGk7Oztmg4ODorCxsf+wsbL/sbGy/7Cxsv91dXX/Pz8//2xtbf/Iwrr/+9ai///Jfv//yX///8l////Jf///yX///8l////Jf///yX///8l///3Ifv/vvXf/7bt2/+27dv/tu3b/6Ldz/92vbv/Zq2f506RdSdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//ruAP/670T/+Ov3//Xj///z3v//9eD/6unm/3l6ev8/Pz//bG1t/8jCuv/71qL//8l+///Jf///yX///8l////Jf///yX///8l////Jf//8x33/7rx3/+27dv/tu3b/7bt2/+W1cv/dr27/2Kll6tKjWyzTpF0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s43/+fG8f/ftP//2qj//9ae///px//q6uf/eXp6/z8/P/9sbW3/yMK6//vWov//yX7//8l////Jf///yX///8l////Jf///yX//+8Z9/+67dv/tu3b/7bt2/+27dv/js3H/3K5t/9eoZM3RoVkS06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+vQH//nx+H/4Lf//9up///Wnf//1Jr//+jG/+rp5v95enr/Pz8//2xtbf/Iwrr/+9ai///Jfv//yX///8l////Jf///yX///8l///nEfP/tu3b/7bt2/+27dv/sunb/4bJw/9yubP/Vp2GvzZ1TBNOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/r0RL/6MnN/+K5///bq///16D//9SZ///Tlv//47r/6unm/3l6ev8/Pz//bG1t/8jCuv/71qL//8l+///Jf///yX///8l////Jf//3w3v/7bt2/+27dv/tu3b/67p1/9+xb//brWv/1aZgi9mqZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/7dUI/+jKvv/iu///26v//9eh///Umf//05b//8uD///iuP/q6eb/eXp6/z8/P/9sbW3/yMK6//vWov//yX7//8l////Jf///yX//9cF6/+27dv/tu3b/7bt2/+q4dP/esG//2qxp/tSlXmDUpV8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A//r3Af/py6D/477//9ys///Yo///1Jn//9OX///LhP//yYD//+K4/+rp5v95enr/Pz8//2xtbf/Iwrr/+9ai///Jfv//yX///8l///PAef/tu3b/7bt2/+27dv/ot3P/3a9u/9mrZ/TTpF0906RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/lwgD/6cyR/+S////crf//2aT//9SZ///UmP//zIX//8l+///JgP//4rj/6unm/3l6ev8/Pz//bG1t/8jCuv/71qL//8l+//7Ifv/xvnj/7bt2/+27dv/tu3b/5bVy/92vbv/YqWXi0qNbIdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6cwA/+rNbv/lwv//3a///9ml///Umv//1Jn//82I///Jf///yX///8mA///iuP/q6eb/eXp6/z8/P/9sbW3/yMK6//vXo//+y4P/8cB9/+6+e//uvnv/7r57/+O2df/dsHH/1qlmyNCiWw7TpV8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rNAP/qzV//5sP+/96x///ap///1Zr//9SZ///Oiv//yX///8l////Jf///yYD//+K4/+rp5v95enr/Pz8//2xtbf/Gwbv/5tjH/9zQv//cz77/3NC+/9vPvv/PxLP/yb2t/8K0oafJomUDy6+EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s5B/+bF9//fs///2qj//9Wb///Umf//z4z//8l////Jf///yX///8l////JgP//4rj/6unl/3d3eP8/Pz//Xl5f/2xtbv9sbG3/bGxu/2xtbv9sbW7/a2xt/2tsbf9zdHV7VVVWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+rPMv/nxu3/4LX//9up///Wnf//1Jn//9CO///Jf///yX///8l////Jf///yX///8mA//7gtv/d29j/dXV2/0RERP9DQ0P/Q0ND/0NDQ/9AQED6Pj4+9j4+PvY+Pj70Pj4+VT4+PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/r0B7/58jh/+G3///bqf//1p7//9SZ///Rkf//yX///8l////Jf///yX///8l////Jf//9x3//8NSs/9/d2v+/v8D/sLCw/66urv+kpKT6enp6dTo6OjxAQEA/QEBAPUBAQBBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/69ES/+jJzf/iuv//26v//9eg///Umf//0ZP//8mA///Jf///yX///8l////Jf///yX//+8Z9/+68eP/uy5r/59W7/9bW1f/U1NT/xsbG6sDAwCzCwsIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+3UCP/oyr7/4rv//9yr///Xof//1Jn//9KV///Kgf//yX///8l////Jf///yX///8l///nEfP/tu3b/7bpz/+DGof/T09T/0NDQ/8LCws29vb0Sv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/58wH/6cug/+S+///crf//2KP//9SZ///Tlv//yoL//8l////Jf///yX///8l////Jf//3w3v/7bt2/+27d//cy7P/09TV/83Nzf/AwMCmvLy8A7+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/5cIA/+nMkf/kwP//3a7//9ik///Umf//05f//8uE///Jf///yX///8l////Jf///yX//9cF6/+27df/rvXz/2M7B/9PU1P/Kysr/v7+/c7+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+nMAP/qzW7/5cL//92v///Zpf//1Jr//9SY///Mhf//yX///8l////Jf///yX///8l///O/ef/tu3X/6b+G/9XRy//T09P/x8fH+L6+vki/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzQD/6s5f/+fH/v/esv//2qf//9Wa///Umf//zYj//8l////Jf///yX///8l///7If//xvnj/7bp0/+XCk//U09H/0tLS/8TExOW9vb0mv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/7tgA/+/ZQf/r0Pf/4Lb//9qo///Vm///1Jn//86K///Jf///yX///8l////Jf//9yH7/7713/+27df/gx6P/09PU/9DQ0P/CwsLHvb29Dr+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//TmAP/15zL/79nt/+K6///bqf//1Z3//9SZ///PjP//yX///8l////Jf///yX///Md9/++8d//tu3f/3Muz/9PU1f/Nzc3/wMDAm7CwsAG/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/26QD/9+we//Dc4f/kv///26r//9ae///Umf//0I7//8l////Jf///yX///8l///rFff/uu3b/6718/9jOwf/T1NT/ycnJ/7+/v2m/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8+QA//bqEv/x3s3/5sP//9ys///Xn///1Jn//9GR///Jf///yX///8l////Jf//4xHz/7bt1/+m/hv/V0cv/09PT/8bGxvW+vr5Av7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//XoAP/58Qj/8uG+/+jH///drv//16H//9SZ///Rk///yYD//8l////Jf///yX//9sJ7/+26dP/mwpH/1NPR/9HS0v/Dw8Pfvb29IL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/w2wD///8B//PjoP/qzP//3rH//9ij///Umf//0pT//8qB///Jf///yX///8l///TAev/tunT/4cag/9PT1P/Pz8//wcHBv7y8vAq/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//PhAP/z5JH/69D//9+0///YpP//1Jn//9OW///Kgv//yX///8l///7Jf//yv3j/7bt2/93KsP/T1NX/zc3N/8DAwJDExMQAv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/15wD/9OZu/+3U///ht///2ab//9Sa///Tl///y4P//8l////Jf//+yH7/8b53/+u8e//Zzr7/09TV/8nJyf6+vr5gv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9egA//bqX//u1/7/4rr//9qn///Vmv//1Jj//8yF///Jf///yX///cd+/++8dv/pvoP/1tHJ/9PT0//Gxsbxvb29OL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//bqAP/260H/8Nv3/+S+///bqv//1Zv//9SY///Mh///yX///8l///vGff/uu3X/5sKQ/9TS0f/R0tL/xMTE2b29vRq/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/15wD/9eky//He7f/lwv//3Kz//9Wc///Umf//zor//8l////Jf//5xXz/7rt1/+HGoP/T09T/z8/P/8HBwbe7u7sHv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9OUA//XoHv/y4OH/5sT//92u///VnP//05j//8+M///Iff//yH3/98J5/+26df/dyrD/09TV/8zMzP/AwMCFwcHBAL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//HfAP/z4xL/9ejN/+7X///mxf//4bf//9+y///cq///1p///9ae//TNl//rx5X/2c/C/9PT1P/Hx8f8vr6+WL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///gD///4I////vv////////7////+/////f////3////9//z8+f/w7+z/6unm/9fW1v/T09P/xcXF9r6+vj/AwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AdnZ2aDW19f/19fX/9fX1//X19f/19fX/9fX1//U1NT/zM3N/8jIyP+9vb3/vLy8/7S0tPawsLA/sbGxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRUVABZWVmQWFhY/1hYWP9YWFj/WFhY/1hYWP9YWFj/WFhY/1hYWP9YWFj/WFhY/1lZWf9ZWVn2WVlZP1lZWQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/Pz8APj4+bz4+Pv8+Pj7/Pj4+/z4+Pv8+Pj7/Pj4+/z4+Pv8+Pj7/Pj4+/z4+Pv8+Pj7/Pj4+9j4+Pj8+Pj4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+AAAAAAAAf/4AAAAAAAB//gAAAAAAAH//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//+AAAAAAAH//4AAAAAAAf//gAAAAAAB//+AAAAAAAH//8AAAAAAA///wAAAAAAD///AAAAAAAP//8AAAAAAA///4AAAAAAH///gAAAAAAf///4AAAAAf////gAAAAB////+AAAAAH////4AAAAAf////gAAAAD////+AAAAAP////4AAAAA/////gAAAAD////+AAAAAP////4AAAAB/////gAAAAH////+AAAAAf/////gAAAB/////+AAAAH/////4AAAAf/////gAAAD/////+AAAAP/////4AAAA//////wAAAD//////AAAAP/////8AAAA//////wAAAH//////AAAAf/////8AAAB//////wAAB///////AAAH//////8AAAf//////4AAD///////gAAP//////+AAA///////4AAD///////gAAP//////+AAB///////4AAH///////gAAf//////+AAB///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAH///////8AAf///////wAB////////AAH///////+AAf///////4AB////ygAAAAgAAAAQAAAAAEAIAAAAAAAABAAAMEOAADBDgAAAAAAAAAAAAAAAAAAAAAAAL+6tAC8uLIr0Me96NLIuf/SxbP/0sm7/9LS0f/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/T09P/0dHR/4KCgv+BgYH/wsLC/8XFxf/BwcH/srKy/7CwsP+kpKTcjo6OHZCQkAAAAAAAAAAAAAAAAAAAAAAA//DVAP/x2Q3/683D/+bB///fsP//47r///z3//////////////////////////////////////////////////39/f+1tbX/i4uL/97e3v/v7+//7+/v/+fn5//V1dX/0tLS/8XFxbe9vb0HxMTEAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+bDAP/qzpD/5cL//96y///bqv//8+P////////////////////////////////////////////9/f3/s7Oz/4iJif/k5OT/9vf3/+3t7f/t7u7/4eLi/9PT0//Ozs7/wcHBhcTExQC/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAD/8+MA//PiWf/w2/z/7NL//+jJ///z4v///vz///37///9+////fr///36///9+v///fr////9/729vf+Ih4b/5OLf///++//18/H/7evo/+3r6f/e3Nr/09LP/8vJx/q/vrxPwL68AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/y4AD/8+Ir/+7X6P/rz///5sP//+S////ht///37L//9ys///Wn///1p///9af///Wnf//4bf/m5ua/8y7pP//2KD//9ef//TOmP/tx5P/7ceT/+C8i//at4b/0rB95MqsfyXMroAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/s0w3/6s3D/+bB///gs///3Kn//9mi///VmP//0pL//8p+///Jff//yX3//8h7///Xnv+ZmJf/wK+Y///MhP//yX3/9cB3/+67dP/tunP/4bFt/92taf/VpV2+0qFWC9SjWQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/79oAk5CNAOfczpDg1ML/4NG8/+DOtf/gzbP/4Mut/+DKq//gxaH/4MWg/+DFoP/gxJ//4Myw/4qKiP+HhoT/zbmf/+HFoP/WvZn/0rmX/8+3lf/Fro7/waqJ/7+lfY2ZnKEA0qVhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWVlcAX2BgUlhZWd9cXV7ma2xt/Wxtb/9sbW//bG1v/2xucP9sbnD/bG5w/2xucP9rbW//cXJz/8vMzv+SlJb/amtu/2prbf9pamz/ZWdp/lpbXOhWV1jfWltdUVRVVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ0NAAzMzMIIiIkG6eim0fl287v59nH/+ff1P/n2cb/59O4/+fQsv/n0LL/59Cy/+fQsv/q1LX//OfJ//TfwP/bxqn/18Km/9K9ov/BrpTwjYJySicpKxs0NDQINTU1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/688A/+zQLv/ox+3/37L//+jG///lv///0I7//8qA///KgP//yoD//8qA///KgP//yX7//sh+//G/eP/uvHf/6Ld0/9ytatnVpl4a1qZfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/rzwD/69Au/+fG7f/esv//3rD//+rO///Qkf//yX///8l////Jf///yX///8l////Jf//9x37/77x3/+27dv/ktXL/2atou8+fVQnTpF0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+/XAP/v2C7/6Mjt/9+y///Zo///6s3//9ae///Jfv//yX///8l////Jf///yX///8l///vGff/uvHb/7bt2/+KzcP/YqmaW/9iuANOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADz6NkA8+jaLvPjzu3z3b//89iz//Phyf/43bj//8qA///Jf///yX///8l////Jf///yX//+sV8/+27dv/sunb/37Fu/9eoZHDbrGoA06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1tbQBtbW0sbW1t5G9vbvlzc3P/cXFy/4mGgv/nx5r//8uB///Jf///yX///8l////Jf//4w3v/7bt2/+u5df/dr2351qdiS9eoZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANjY2ADY2NgsuLi44goB9ZsvEuvPMxLj/iYiH/398eP/nx5v//8uB///Jf///yX///8l///bCev/tu3b/6bh0/9yta+rUpmAs1aZgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/u0gD/79Qk/+fC5f/erP/z3b3/jYuK/358eP/nx5v//8uB///Jf///yX//9MB5/+27dv/ntnP/2qxp0dKjXBPTpF4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rNAP/r0RX/5L/U/9mm///Vmf/z2LL/jYuJ/358eP/nx5v//8uB///Jfv/yv3n/7bt2/+S0cv/Zq2exyptPBdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+7XCv/lwcD/26n//9OX///Nh//z16//jYuJ/358eP/nx5v//8qA//G+d//uu3X/47Nv/9ipZYvmt3kA06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/9+8D/+bDqv/crP//1Jn//8uE///Lgv/z17D/jYuJ/398eP/cwp//3sCX/9u+lf/Ps4z/yat/ZcithwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/ZowD/5sWS/92v///Vm///zIf//8l+///Lgv/x1q7/iomH/2RlZv9paWn+YmJj8V9gYORmZmc9YmNjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+TAAP/nx3n/3rL//9Wc///Nif//yX///8l///3Jgf/nyqL/wby0/6+vr+xwcHBPLy8vKTQ0NAk1NTUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/58YA/+jJYP/gtf//1p7//86L///Jf///yX//+8V8/+29ev/bz73/y8zNzr6+vhLCwsIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/oyAD/6cpJ/+G4+f/XoP//z47//8l////Jf//5xHv/6r6B/9XPxv/HyMmlmZmZAr+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+vRAP/s0zX/5L/w/9ii///QkP//yX///8l///fCev/nwY3/0tDN/8XFxXnMzMwAv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8+IA//XmI//oyOT/2aX//9GS///JgP//yX//9cF4/+LFnP/Pz8/5wsLCS8PDwwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/05gD/+O0V/+rO1P/aqP//0pT//8qB///Jf//zv3j/3smr/8zNzua/v78nwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//TmAP/79gr/7NLA/9yt///Tlv//yoL//sh+//C/e//azLr/ycrMx7m5uQ6/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9OUA////A//u16r/3rL//9OY///Lg//9x33/7cCB/9XPxf/HyMmcAAAAAL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/16AD/2aIA//Dbkv/gtv//1Jn//8uE//zFev/owYv/0s/M/8XFxnDKysoAv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+3WAP/z4AD/9OR5/+rK///er///2J//+8+S/+XLp//Pz8/2wsLCQ8PDwwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4N/eAOTj4WDg3tz/4N3Z/+Dd2P/Z1dD/yMbD/7q6uu2wsLAusbGxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaWloAW1tbS1lZWfpYWFn/WFlZ/1hYWP9XV1f/VlZW7VZWVi5WVlYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAB+AAAAfwAAAP8AAAD/AAAA/wAAAP+AAAH/gAAB/4AAAf/gAAf/4AAH/+AAD//gAA//4AAP/+AAD//4AA//+AAP//gAH//4AB///AAf//wAH//8AH///AB///wA///8AP///AD///wA///8Af///gH///4B///+Af///gH/8oAAAAEAAAACAAAAABACAAAAAAAAAEAADBDgAAwQ4AAAAAAAAAAAAA3NHBANzRwhrp1r3Z69Wx/+vo5P/r6+z/6+vs/+vr7P/t7e3/ysrL/5qbnP/Z2dn/zc3O/7y8vNOmpqYVqKioAP/v1AD/9OcF/+vPsP/mwv//9/P///3////8////////6e7v/66trf/08/L/7vPz/9vY3P/LyM2rpa+zBMLCwgD///8A/+jIAP/13nr/7sb//+G3///cq///1ZH//9eT/868pP/VvJj//9iX//TFh//kuH3/0q90duqxaQDQ0tQAAAAAAMe/swDGvbFApJyW36adl/ymm5P/ppmM/6mbjP+SkJH/qKqf/6WYif+bloH9mopz36mUbT+smXsAAAAAAAAAAAApLDAAAAAABJyVjD7r2L/q5tPB/+XFmP/lwpH/6cWU//vWnf/ZuIr/yKp/5HdyYDkAABAELzVJAAAAAAAAAAAAAAAAAP///wD//+Um/+695//twf//0pH//8l9///Kfv/9x3z/77x2/+Kybcfeq10O/8lvAAAAAAAAAAAAAAAAAAAAAADOxrsAvrivI7arnNmtpp7/1bmT///Kgf//yX//+8Z9/+y6df/er2yloHYnAuy4agAAAAAAAAAAAAAAAAAAAAAAOjw+AAAAAAWAf4BH3syz6ZyYlP/NsIj//8uC//rFfP/quHT/3K1qf++/gAD5wGoAAAAAAAAAAAAAAAAAAAAAAAAAAAD///AA//nbFv/gsdb/1pz/nJeP/82wiP//zoD/8Lh2/dqsalj2wncAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///fAP/u2Av/37TD/9GR///Kjf+gmY//nZGE/qSSed6vmnszuqWGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//4QD///8D/+C3rf/Slf//yn//9cSL/7u1t+FgaXk6AAAABTU7TQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//+4A/6YqAP/jx5X/1Jn//8l//+/Dgf/TzMm8usPbCeno5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP/drgD/6NB8/9af///Jf//pxZP/xsvIkf//6QDNzc8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//NYA/+vPZP/ZpP/+yHX/48af/8nKzGLPz84A4OHhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///0AP/55Uz/6bj6/9GV/93LsvLGydg54eHhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALu6uACqsK05oJ+h8p6gmf+OlZLnhYaIJ5eXlwAAAAAAAAAAAAAAAAAAAAAAAAAAAIABAACAAQAAwAMAAMADAADAAwAA4AcAAOAHAADgDwAA8A8AAPAPAADwDwAA+B8AAPg/AAD4PwAA+D8AAPg/AAA=">
+<link rel="icon" type="image/png" sizes="32x32" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7AAAAOwAFq1okJAAAAGXRFWHRTb2Z0d2FyZQBwYWludC5uZXQgNC4wLjIx8SBplQAAAYpJREFUWEftl7FOg1AUhnkJF18GXsRXcHQzjj6CusvA5GqiCYsO1uiCRhe3LraiS+N69b+c05x7ekBAqA79ki9Nb+H+f+ECbdSWOI4XMEkS1yRtPjx/XiBNU9dG2nx4nOJtPg8sisLleT5egdmnc/cz5/Jp5clD5cFN5abApsCmwOgFEP4vC1i3Y0i7DYdVwApmabfh0AVk2FqeCbKADreg3Tx4q4a6wwWscCzCvYsykHZbhrO9aQpndQEOlXZGhupweRnqErtnL9jkd+GgKbyuAMIHK4BAKbO2ArgFQ778mLoCHA53Tgts2j8cyMuvSwGEQ5qmP5TXG5qmO3rx1YmHUFmW/tX6nKVp22NNUieegta4lKa1wZFiGT7vdecaWkFHz857eL3w7p9PvTTtSk4Qzlo/PqwCUIYfXz6aBXgx6hyPHiRb8/H+GpTQYH1AnKZvgpwlcpC/PR+Bn0CBphK8QBsLgKu7p22oDz+j/4qx/A1vJ5OgBI/LArLEClxATjKGWZZtwSo1ir4ABlsc5d10T0gAAAAASUVORK5CYII=">
+<link rel="icon" type="image/png" sizes="144x144" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAYAAADnRuK4AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAOwQAADsEBuJFr7QAAG99JREFUeNrtnVuQHNWZ53/fyczq6pvUErqjSwtJFm0kBWYnBMtFIzCMYYHZl3VsEDF+2dgIP3heJ+bBz7MPY/Rm8MNCxDp2bO9G+E2zAeFgLTCBJyTMOADPjIMBGzxgrCtqdVfXJS9nHk5mVVZWVlVWd1ZXZcn/iJS6qrMyT5769/mu5/uECcLZs2cBFoA3gRObeOu/Ap5//fXXRz0Fmw416gEMARIef8QmwB71APKE1hrgNLA46rHcLpgoAs3MzKC13iUis6Mey+2CiSLQs88+u6n3E2mXlK+88sqop2DTMTEE0lrz4Ycf5nKter2O53lNgnieR6VSiURkE9VqFd/3R/3oI8XEEAjg6NGjFvD4Rq9TqVRoNBqAWWXq9TrXr19vI5DWmuXlZVzX7ViJbidMmhVmA4c3ehERQWuN1pogCLAsC9u2m+9FR4Tk69sJk0agXOA4DkpoHralUOr2XWV6YWJEWMVt/ewGUPWh6oHW5v9AQyMAL6DNS+T65lx06/3At6jVSviuEWNaw7RX4lCp3vyciGDbNq7rgnFecuHCBR599NFRT8WmYmII9K/LoGBp5zTH3ABuNuBGzRDnZt2Qas2DekLnvVmHitf+nqDwvSkaVRe0JkA4XHY4VGo/z3EcarUaWuungO8Ay6Oeh83GxBBo2gIRdmvYGQB+YBYUX0MQnhNoI5LikFBMJQWU2DaBUgSBj6Cpa0UjUJRU0DzHcRwsy8LzvPIkzeUgmBgdaHsZtk2BLWa1cQMjlQJtRBC0iBRHFs1GgBuuw4pvtZ0vIjiOA3AX8OCo52AUmBgCNZFgRC/bKNBGJ8pCIg24unO6lFIAZeAgGD3odsLEEGjnNNR8Hgk0VrTiaKDRw8/na3C7MExEUHZLKnla+LRe7jjPtu3ID/TnQInbDBNDoN/eQsoWS14ovhrhyhLxww1aoixCv7C9KKv5s0bwdOfZlmVFBJphguYzKybmgeecFhmauk/0InydhKc7SdUNguZKo0Ql6NSDLMsCuAe4d9TzsNmYGAIlIRhLrCmiUpaahp+uWDevoYxpF6EeKPzEKhT5g4AtwNZRP/dmYyIIdGVNA+zXcNzThjia8AgJtB4/smqJJwRwtXDDdTrOC8+xgAdGPRebjYkgUIjdGha90Nsc6JbY0oQe6EGREG+uVtz0bCTxi1KpFJHoFLdZNuQkEahNB4KYBaaNxZVEX/Un6XREs+Zb+HSKsRC7gYXbyZSfGAI1vc46AzEIY2N+HytMFMpqF1mXGyXqgWr7nFIqcijeCxwZ9VxsJiaCQJbArQb3eQHlOIl6ESmy1PohmesTpJjzIhKdpzDK9G2DiSCQBkoWXxHBivQdP/QHwWDmei8IUPEtLjemOlaucAWaBjY3r3bEmAgCBRrKkc8vJsJ07Pfr5Y+o9inS0NWhGOIQUL5d9KCJIBCEsaqgFTz1+8iwyNTvB2U7HWLs9/Up3ASJlFJRXOxB4M5Rz8dmofAE+qfrms8rbPUCjgUhcSIydSOIYEIdWXSgNFQDq+PalmVFq5AN3DbbigpPoO1l2DnNTks4CS1LLL4+eBvQfwTavNEAa77FLc/u0IPCFegO4GujnpfNQuEJZAk4lglJeGHANNAtBVpjxNV6IcpCWa2ovADVQLGayA0C41AMMQe3R2pH4QkE5kuNPM8BIWly3STRqTTrlPdiutKj3CbmfOEJ1PBh1eUYod6RFrJIftWDhzZ0x6tP62WSqUa2bUd60F5MktnEo/AEshWULe4HZiPnoB/L/YlWpTiiHRqZJ8lqT3fWQC3onLqYQ3EHsDTqudkMFJ5ASowe1AhaFpgX8/tESvWG7pEgkAC3PJuVhCIdy5Fe4I8EKg6ixDGt07MO84YAa4FKXYViDsX9MPmKdKEJ9P41zfvXcdyAw5Hi7OneedDrgYh0eqS1cMvv3MnjOE5kzj/BbeAPKjSBtpdhaRvbBB6MvNAkRFaastwIBjPtRVmoWH40gI9wuTHVeW5LD9rLbVDoqtAEEowO5Ece6Cj7MCa3/BSRtpHYWAsaN5BeKa77geOjnqNho9AEulKFP6zB9RrUvXDvu+7vA8pDL1LAVbeUutkw1IME2AOTrQcVmkCh83BfoJlvmvA5pW4koezOXGhj4XXSUbX0pacxudITi0ITKMQDGnZHwdG4bhOkmPBRoHVQJJVoMDnSn6XoQTFFugw4fS9eYEwCgdAaap4RX26CQH4KgQZxIrZ9MIFAS0d6K7Qp0veBCfJOKiaCQMDQ90KISEdUXkRz3XWoJfbMx3Kkp8NjYlFYAv3jleaSsB/Iw6zqCWXZHaY8wIpv4wXSjb9T5FCzcZxRWAKFmAWeiEIXSZ2nqzWWE9kEk9666ncSK7ZXbHHUkzRMFJ1AACqyuvygnTRpiWSu370iR090WWJqgeKaW0Kk/aIxS+wIcMekmvKTQKCBEN/uPBgEyymlvAsNLeiUHOnQH/RljFd6IlF0Am0jzP4DNmFTcfoNPquXaXRPsp8HHhnhHA0VRSfQn2j4UhTvivuA1r/SDA5fS6pDMVyBLEwJvIlE0Qmk0EjEm6QPKC2Quh4nYvNmSnWa8sCqb3HVLXVMZmjKAxwFpidRDyo6gQbGRlI9xLIQaU1ZZPm5gVAP4vXQwvNbDsU/wezWmDgUsjRtzAe0k0E1nw3rSbr574wNC6WQSGqKgGrbmVGOtOd5JWA78Omo5y5vFJJAISzgGT+WiRj3AW00jTUdgogi0AGzDnztINy1JQyPNGyWb7SvQrEVaBfwGPDeqCctbxRdhDnxbTxxncfrtjN1I5sMRRDLYdaBJw/C8W1QshXTJZvZKYdSyWnuUI2O6elplFLYtj1TqVT4/PPPRz1nuaLIK9DA8IJ1BlJDaEwxz8d2w5e2mfpBv/rVr/jggw8QEdbW1vC8Vt8EEcF1XRqNBpVK5RuXLl3Srus2zp49myZIFfBT4BdFat5bZALNMGDO8UZMe61hvgRf3Q+LZUOed955h+9973tcvnw5Lq5SISJ3i8j/6HObvwF+cfbsWYpCoiKLsJPAVyKxlSymsIGFpgNaw1wJnlmEpW0mN+idd97hxRdf5OrVq01lOXIeph0Zm9I9RcEqvRZ5BbI02JGy7CUU6HUV1UxBRJ5nF+HubRAEU/z8H/6BF198kWvXrqGUyrPhXImCFeksMoHakGXWvYw1gSIkyQPw9ttvd5BndnaWAwcOtEoCr7MFpuM4d9x1112HtNY3f/azn410PrOiyATayoAiuO639ZXribjYishz8eJFzp07x9WrV5vkmZmZ4aGHHuLIkSPMzMwAEATZlr94w94gCAiCYC+mVPC7o57crCgygf480MaMT4qsbsXJsq4LSZ0H4NKlS5w7d47Lly+3kefhhx/myJEjnDhxgiNHj1Kv1VmrrvW9l+f53LhxvUk2z/NYWVlBa70jCAJ+euECjxWg+2GRCVSOytkly7l4QRdrKwOD0sTWpUuX+M53vsOVK1dSyXPyxAmcO5c4/28KL3BoVBWe2+h+OxEC36eyMovWQfO+q9USddd7xtPyghLdGPUEZ0GRCdQVXRMR+yhAaeS5ePEizz//fE/y2PuWOP+x4ou6aZfpNSzcWr8RKtxaCd8Lm70KVOtT1FzliCCblEiwYRTOjA/jYDYDJqv7utUCKg3dyHPu3Lm+5Pn7TxTLdVMlRAnYtoOlpK3zc+qhVOtnmu/vEzhQlC+mKONM4gjwcCS2kiIrbaVJxsqSv+umMHfTeeLkuVlvz/IwVlh/eZm01hzbQkQWKVC1+6KKMAdMVXpoN88H3TjYTWHuJ7acfUucD1ee9baUN3WHWgHY2GUK84ddmIH2QqbGuSknxcXWUmzl6acw2zHypLt8MjIq8WGlFLbZO/TkqOc0K4pKoLKOjz3D95Um5jaq83TzF4pSbf1Wu8HUHWpdRML3tNnrVgiPdFEJ9J8CzZao2nybD6hL6ZZ4d8K8dZ40ZPFGi6iOzYpietjPAFPf+Lv3Rz3PfVFUAs3HOxK25QF1U5Yl1DbW4SRMkme9Ok8WOCYR/37g7lFPchYUlUBAlzW+hwMlSNF5IidhL/I4MbGVlTzx3Ole6CzgKWC2RE9lusCIUSgCxXKhS+jBAqNBmM+T1Hk2rjCnQ9lOpg9IighTIjMURJEuFIFC7Aa+GqVv+Ik60Gmk8jWUVLrOs1GFOR+0Lm4phWU2JO4Z4RxnRhEJ5ABbgy5OxKQPSAOzNjx1qN1Uz1Nh3giUslBW6tewBbDHXZEuIoGAHiGJxM8zNpzZB19aMO9FTsK8dZ6O8aVUdk0/sdNrbRtC/SlwYIRTnAlFJNB+YCYiSi8izdjwyF5YDNueDFPnSSKttnT3c9vPs8xrhwLUVywigR4KNNubYYy4czD6X6eTZ9N1noxaftLpKEpQIrPAsVFOdKaxj3oAgyAqAx0vJtXwW85DL2y0O+Okk2ccdJ4ssEwS/ixwerQj6Y9CBVMPhoVc4i0tG37LcRg1mluYgn3hhp9ROgmVbeN7/fPClDJ77qPkshjuAOQbf/e+/t9/MZ61OgtDoHDXgwD7sn4mUyZhDlH1bsikRBPqQCKtJRbjkfaD4AlM66irmzDF68LYEOjs2bNgvK+piWKnT5/W3/zmNxe+/vWvf031UU6VUrz33nuZdJ48FOZuGMTRmaztocyAonyPscXYECjEc8BfA17yF7Ozs/zwhz+0Xn/99btidXe64vr169y8eXOkTsJmw95+ubQiKNshiNWeCce0HaNIXxnOCDeOcSPQDnoEEYMg4He/+12mC4nIyAOjUWngwPf6nyxJX5CFEtkeaH0SeGt4o9zgM456AAMPuMf24eRW4mE5CTNjgKVNUiqfhcJLAMbVIz02K5CdIQFrUExNTfHggw9ums6zESjLbrPERARHWdQD78+Al4Gx3OYzNgR6+umnc72e1hrHcdixY8cmB0bboayMIiwF4aq0H+OV/iOBeuGJJ/p3BMi0JZmWzqq1Zm5uFnfh0KboPGkw+T71DM8miLLQsVKzIdH3YXZpjGV1s7Eh0LEvnzA/6FjfL1qkSeu+HHmk46/LyhSBivDbFfj7jxgJeQaCCMpSBLEioI5lURNvr9b6KH8kUG98umL+9zVUXah4xqscfee3GqY4Qlz8NHxzXgStTdT9kdDV+Okq/P9/Y3MU5iEg1sJFgVGkx80jPTZWWBTb0rEVKPo/Orww/7l5JF4HuhXC0MAHN2GlMVqFWSRzcSmU1Z7FGGYnCqbz4Vj+CYwNgbJAerzWmJTVnaEfe6Vh+qmOeuWR0LrKdG5HPzLBNl73vYzpdzWWg1oXtCHPfNgP5fM1WPPG9M+2K4Rk57GQVLOYrT5jh4khkAgszrfaev++Mlhv+HGAKNWxS8OxLAS+wpi2zpwIAmlgSwl2h3+jax58XhkPZ6GEca71XwAwxs5YZieOFYHW/X1r2D1tshABPqtAxR3108SeK2Nqa9q5ysT0HEzfsbHD2BCo4RszveEPXkxeCeyfM/8HGj5b7dHucsyRFGFKBGW08IdGPbbU8Y56ABHqIYEGbcekMbtNI/O94sHl6niIrwjrrdqawAJQHreg6tgQaL3QGvbNtMTXHyqh72fUA4tBWU52Uz5lO1C4X/5BxrBxXaEJpAFbwd5Zs+IEGj5Z2bxOhQMh8576zv70yjizLMbw+xq7AQ2EcPvO3lB8rbpwtcZ4LT+xsWZFWm5QWPLlnlE/RhKFJpDG6D5R8PRKdfzEF2BKywygByXN/nC/fAnT+XCsUGgCWaH1FX01n6wMq9HcxiCiBvQFpXijxzQ7sdAEmnNgVxj7Wm7A5bXxsr7Wi7TWUaEifYYx671aWAJpDbtmjAca4MqaMeEngD/NjYZt7xlC7WXA+thDH+uoB7BeiLSnbny6Ot6xr6SDcB1PDMYXdGLUz9L2XKMewHqggXkHtodF4FZdE31Ppm7EdjaMHMqysivSIilBVYWlZI4xI9DYZCQe3tL+OpnCGiWMgSHQlGWKKACULXh4b3r4ItAb65OaF3wfKhl9VFprbi3XaTTqzT+CINDcWlnF933laeG/XbjAo2PQzWdsCLSwgZKSjoKD86N+gt4IfFh1BK37L4oa4QsF1bVWTq/WmhUJqNfdP9PICyCVUT8TbAKBwj3vCtiJaemY+jd44MAB7yc/+cnWHTt2jHpOBoJSioWFBSwrPduiVquxsrKC7/usrq5mbo25trbGrVu32sReeK39r7322uJ77723HM5tEoLZAnQVCIbdvHfoGkL4kHcC/xc4TPd+uHpmZmbL3Nzc1pz6jw4dWmu2b9/Ot7/9bQ4ePNjx+9XVVV566SXeeustRCRzJ8Po2snztdb4vu9WKpUruvskKeC3wH8FPhs2gTZLhD0C/Ef6KO2VSoVKZSxW5kwIggDXdblx4wY7duxgenoaEcH3fb744gtefvllXn31VYIgyCsiD+CIyJ19ztmDmfP/M+w5GKoVdubMGSzLQmt9TGutou7G3Y4iISreICJUq9Um+dfW1rhy5QovvfQSr776KlrrPMkDQL95DOf6mGVZnDlzZqjzMNQVaHZ2FmCqVCr133ZaMDQaDTzPIwgCqtUq1WoVpRTLy8v84Ac/4MKFC5TL5dzJMwAeB/62VCr13xa7AQyVQM899xxa68VqtXpwEPlfBPz85z/nk08+AcB1XarVKjdv3uTHP/4xb775JktLS5w4cWLTCRS73/TU1NS0Uqr+yiuvDO1+QyXQAw/cD8hhETmQZR7HxOfXE5Ev6sMPP+Tjjz8GTMfla9eucf78eS5evMjS0hKnT5/m4MGDLB46mHodrTX1Wh0/8Du28qRNjA40q6ur+PG9zwnUa3Vcr5kMflKE+7SWnw5zPoZKoGPHvsStBk84FlYQtiToFm4IdHvJ3m6Idqv2gtatIpx5QWvYWoIdZfPlh+IZrTXLy8u88cYbvP32203yHDp4kHvuO03FmuvaglxXa7jVav+bi6CDgEpwA89zuxKuJnVWW0ZIuRHI0w9uWysmgS79QfPW77HvmOaYEqh6xptc8dK9sTXf5PL0nkioeeZavf5ogwCu1Qwh81rVfA2nd8HTi+3vu67La6+9xscffxwjzwG+fN9pLlyb49c3umcIBL5NvQIa3WecRjluVB0CP93uEYG6p6jUrPh7i7+4NZMsv5grhmaFzTqwrcxxSzgdhSXcMBzR7PUVO+p++vvxIwpLRCVcuh2NcN98tM8+ryP5LYgItVqN3/zmNywtLXH//fezb+8ejtxzL29cm+Ofr7fG3fUg2zg1glhOz7mxlBV1PIzeW1zxrN3DzB8aGoFKFkxZ7BNha9QUt5uI8nW23Rh+0D/iLoTiaxO8ApGJfs8993D69Gn27tnD4aVT/OzGVv7pRv65Sf0S85UIdrtH/DimQNXQMDQChdU0nnED0125V9ttN8iWSehl6BGWrBk0bExPT3Pq1Cl279rF4btPcnF1J/+6Yg/FIFAZCjVY7RsTZzBNW4aGoRDoH69o1lym11wWa6HO4/cgUMPvf82s7bwDbcThZkFEmJ2d5dDBA9xUW/hw1clMnrTMw94foK9SZ1tt5WQEswoNLQ12mJ7oO4EHohfBJogv2HxXgFKKrVu34pRKA3vTzR6w7HaMiOqbmKZEkqLzDEMUY8Mk0ClgHnqvHq6fn/gCcDOY+XkiCmls3v3660FO+8bEneExFOT+5LG+pqcI83d7iq8Mq0pW8SWYVWocd2bkhSy9WJ12RXo78LWhjWdI153HLJ1AugkM+YuvyNIrEn8ikzsrhP56k1Lt52iYUQL/+X/9c+7jz92ROG2DJWyp+SzGVQI7haqeZ/Z2WX0UF1+Dk6U6Tug4nB5CJZ1Am8zHttuFDyhhPwwFTCkdLhDZtDGxBxS5lsLyLTy3h6WghMARGl5YtBy+qtDndpWC5bznJXcCHVsAgT91Aw5EBIqcZUkEZBM3OnS49U8FNSvVsFag6cRsiQj1ep3PP/+cxcVFFvQy/+XOANuxmZmZyWRhVVahMchuWoHlmx7Vaq3n9Ruuy62VZhL2nbawoGH5f+Y8J7kSKGaFHJqyxiffehiInrVWq3H+/Hnm5+c5efIE8ypgdmrO9K0q9ydRxYeGRfbiC4BTC1gLevxJCQS2MOVqfM8HOKjhLPD9vOch1y+56hl5K/BM3IXfsfpIWLo3SJ+CaNdFtGlw3CAinDlzhl/+8pesrq7yxRdf8KMf/Qh4jpMnT7bCNZq+K1FTB8q4bGrAKU2h16o9TxKlUMrCwwczzYcBLuS8myNXAn20DCLsmbLY5YYFo9b89oLh0SSsNLo7/LSGA/Nw/+48R5cvHn/8cTzP44UXXmBlZYUbN26EJIKTJ9vrYWYVZ1lh23azG1EvOI5Do9GMUD8J/C2wluc85EqgklFe79WaI24Y0IziUvFH9UNvcS/9Z89YFrVtQUR48sknATZEom67OfJA4tp7gIPAr3O9R14Xeu+a5svb4VqVvxDhjBua3ml+nkbQY/UBZm24e5sRY+MMEeHo0aNs376dd999t5mZ+NFHH7Fr1y62bdsGEOWF4zhOKoliq0QmKKWo1+v4fu+YjYjQaDSilWorcAH4l+9/Pz9VKDc/kK3g119gKcV/iIKn3aLv/WJf28rtDVPGGdFK9K1vfYu5uTlEpLkSvf/++1QqFVZXV6nX66ytreWyeSBrDE1E4quQAA+D0YPyQm4irGaantxtKU5EZneaiOrnPBRM0YQilWlJirPV1dWh60RTU1PU673z5UUkqQfdg+k9llsR5LxN7b1+YOIuOmyEkkSv1I1IfO0o5zyqTUBeOlFWZO3waIVFHcKV715Mvel383ruvAn0LGb7ctec5J7iS8Md5VbF1aJhvSTKYlF1u1+/z9m2jVIq0pe2YRrY5UagXNTUMIBaAv47YddlLyUq7mvThqDrnlyBowuwvYArUIRBFetSqdTcXzYIIkU6y+c8z4sIZAErwP/LS5HOM5h6hLCaerfoecPvLb7KtmlZUHRshmKdVfwlFGmAOchPkc5TWByOBtct+t5LedZhu6bpgoqvJLKKs7m5uXVfv1wu47r99eHIfRAS9X7gEPBJHs+Z5wr0KLH8H50ivnoRyBJDoFE3iMsT8ZVoft4UMEpbidZ77ayJbFZ7dbTd5JhgtmEd6J3LGg1zCH8JHAUjqpL6T9WDehcCaW1WnhN3NL3ZE4OsOlGptL7AX61W6ysCRSSuB00BnwFv5KEHbVhg7JiGksVdtxrcF995UdbEqmuZH7t5ljUmdDFbEOfhoMjqJxpUnEUWVhZFOqEHHQKsCxcu+BsNrG6YQGFpucf2zLBro9eaZIgITz31FLZt893vfpfl5eU2Ep06dQrLsjKTKKpDFFlz/VAul6nX69FetscwsbHPNvpcGyLQ2bNnERHr5ZdfPr5//1D3r00Ujh8/zqVLl1BKNUl05coVZmdnmZ2dzewkBFMKL0sszfd9qtUqWms8z1v44IMP7pqfn98wgTaksobl6xa01m8yZuVnxxlKqbZVYxTFtUTkr4DnN1oC798BTSLz8g65nqAAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTgtMDUtMzBUMTU6MDg6NTYtMDQ6MDBP1vJ0AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE4LTA1LTMwVDE1OjA4OjU2LTA0OjAwPotKyAAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAAAASUVORK5CYII=">
+</head>
+<body>
+	<div id="init-screen">
+		<div id="init-no-js"><noscript>JavaScript is required. Please enable it to continue.</noscript></div>
+		<div id="init-lacking">Your browser lacks required capabilities. Please upgrade it or switch to another to continue.</div>
+		<div id="init-loading"><div>Loading&hellip;</div></div>
+	</div>
+	<div id="store-area" data-size="STORY_SIZE" hidden>"STORY"</div>
+	<script id="script-sugarcube" type="text/javascript">
+	/*! SugarCube JS */
+	if(document.documentElement.getAttribute("data-init")==="loading"){!function(window,document,jQuery,undefined){"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}return Array.from(e)}var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}return function(t,r,a){return r&&e(t.prototype,r),a&&e(t,a),t}}(),_slicedToArray=function(){function e(e,t){var r=[],a=!0,n=!1,i=undefined;try{for(var o,s=e[Symbol.iterator]();!(a=(o=s.next()).done)&&(r.push(o.value),!t||r.length!==t);a=!0);}catch(e){n=!0,i=e}finally{try{!a&&s.return&&s.return()}finally{if(n)throw i}}return r}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},errorPrologRegExp=/^(?:(?:uncaught\s+(?:exception:\s+)?)?error:\s+)+/i,Alert=function(){function e(e,t,r,a){var n="fatal"===e,i="Apologies! "+(n?"A fatal":"An")+" error has occurred.";i+=n?" Aborting.":" You may be able to continue, but some parts may not work properly.",null==t&&null==r||(i+="\n\nError",null!=t&&(i+=" ["+t+"]"),i+=null!=r?": "+r.replace(errorPrologRegExp,"")+".":": unknown error."),"object"===(void 0===a?"undefined":_typeof(a))&&a.stack&&(i+="\n\nStack Trace:\n"+a.stack),window.alert(i)}function t(t,r,a){e(null,t,r,a)}function r(t,r,a){e("fatal",t,r,a)}return function(e){window.onerror=function(a,n,i,o,s){"complete"===document.readyState?t(null,a,s):(r(null,a,s),window.onerror=e,"function"==typeof window.onerror&&window.onerror.apply(this,arguments))}}(window.onerror),Object.freeze(Object.defineProperties({},{error:{value:t},fatal:{value:r}}))}(),Patterns=function(){var e=function(){var e=new Map([[" ","\\u0020"],["\f","\\f"],["\n","\\n"],["\r","\\r"],["\t","\\t"],["\v","\\v"],[" ","\\u00a0"],[" ","\\u1680"],["᠎","\\u180e"],[" ","\\u2000"],[" ","\\u2001"],[" ","\\u2002"],[" ","\\u2003"],[" ","\\u2004"],[" ","\\u2005"],[" ","\\u2006"],[" ","\\u2007"],[" ","\\u2008"],[" ","\\u2009"],[" ","\\u200a"],["\u2028","\\u2028"],["\u2029","\\u2029"],[" ","\\u202f"],[" ","\\u205f"],[" ","\\u3000"],["\ufeff","\\ufeff"]]),t=/\s/,r="";return e.forEach(function(e,a){t.test(a)||(r+=e)}),r?"[\\s"+r+"]":"\\s"}(),t="[0-9A-Z_a-z\\-\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]",r=t.replace("\\-",""),a="("+t+"+)\\(([^\\)\\|\\n]+)\\):",n="("+t+"+):([^;\\|\\n]+);",i="((?:\\."+t+"+)+);",o="((?:#"+t+"+)+);",s=a+"|"+n+"|"+i+"|"+o;return Object.freeze({space:e,spaceNoTerminator:"[\\u0020\\f\\t\\v\\u00a0\\u1680\\u180e\\u2000-\\u200a\\u202f\\u205f\\u3000\\ufeff]",lineTerminator:"[\\n\\r\\u2028\\u2029]",anyLetter:t,anyLetterStrict:r,identifierFirstChar:"[$A-Z_a-z]",identifier:"[$A-Z_a-z][$0-9A-Z_a-z]*",variableSigil:"[$_]",variable:"[$_][$A-Z_a-z][$0-9A-Z_a-z]*",macroName:"[A-Za-z][\\w-]*|[=-]",cssImage:"\\[[<>]?[Ii][Mm][Gg]\\[(?:\\s|\\S)*?\\]\\]+",inlineCss:s,url:"(?:file|https?|mailto|ftp|javascript|irc|news|data):[^\\s'\"]+"})}();!function(){function e(e,t){var n=String(e);switch(t){case"start":return n&&r.test(n)?n.replace(r,""):n;case"end":return n&&a.test(n)?n.replace(a,""):n;default:throw new Error('_trimFrom called with incorrect where parameter value: "'+t+'"')}}function t(e,t){var r=Number.parseInt(e,10)||0;if(r<1)return"";var a=void 0===t?"":String(t);for(""===a&&(a=" ");a.length<r;){var n=a.length,i=r-n;a+=n>i?a.slice(0,i):a}return a.length>r&&(a=a.slice(0,r)),a}var r=/^[\s\u00A0\uFEFF][\s\u00A0\uFEFF]*/,a=/[\s\u00A0\uFEFF][\s\u00A0\uFEFF]*$/;Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includes called on null or undefined");if(0===arguments.length)return!1;var e=this.length>>>0;if(0===e)return!1;var t=arguments[0],r=Number(arguments[1])||0;for(r<0&&(r=Math.max(0,e+r));r<e;++r){var a=this[r];if(t===a||t!==t&&a!==a)return!0}return!1}}),String.prototype.padStart||Object.defineProperty(String.prototype,"padStart",{configurable:!0,writable:!0,value:function(e,r){if(null==this)throw new TypeError("String.prototype.padStart called on null or undefined");var a=String(this),n=a.length,i=Number.parseInt(e,10);return i<=n?a:t(i-n,r)+a}}),String.prototype.padEnd||Object.defineProperty(String.prototype,"padEnd",{configurable:!0,writable:!0,value:function(e,r){if(null==this)throw new TypeError("String.prototype.padEnd called on null or undefined");var a=String(this),n=a.length,i=Number.parseInt(e,10);return i<=n?a:a+t(i-n,r)}}),String.prototype.trimStart||Object.defineProperty(String.prototype,"trimStart",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimStart called on null or undefined");return e(this,"start")}}),String.prototype.trimLeft||Object.defineProperty(String.prototype,"trimLeft",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimLeft called on null or undefined");return e(this,"start")}}),String.prototype.trimEnd||Object.defineProperty(String.prototype,"trimEnd",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimEnd called on null or undefined");return e(this,"end")}}),String.prototype.trimRight||Object.defineProperty(String.prototype,"trimRight",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.trimRight called on null or undefined");return e(this,"end")}})}(),function(){function _random(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("_random called with insufficient parameters");case 1:e=0,t=arguments[0];break;default:e=arguments[0],t=arguments[1]}if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(_nativeMathRandom()*(t-e+1))+e}function _randomIndex(e,t){var r=void 0,a=void 0;switch(t.length){case 1:r=0,a=e-1;break;case 2:r=0,a=Math.trunc(t[1]);break;default:r=Math.trunc(t[1]),a=Math.trunc(t[2])}return Number.isNaN(r)?r=0:!Number.isFinite(r)||r>=e?r=e-1:r<0&&(r=e+r)<0&&(r=0),Number.isNaN(a)?a=0:!Number.isFinite(a)||a>=e?a=e-1:a<0&&(a=e+a)<0&&(a=e-1),_random(r,a)}function _getCodePointStartAndEnd(e,t){var r=e.charCodeAt(t);if(Number.isNaN(r))return{char:"",start:-1,end:-1};if(r<55296||r>57343)return{char:e.charAt(t),start:t,end:t};if(r>=55296&&r<=56319){var a=t+1;if(a>=e.length)throw new Error("high surrogate without trailing low surrogate");var n=e.charCodeAt(a);if(n<56320||n>57343)throw new Error("high surrogate without trailing low surrogate");return{char:e.charAt(t)+e.charAt(a),start:t,end:a}}if(0===t)throw new Error("low surrogate without leading high surrogate");var i=t-1,o=e.charCodeAt(i);if(o<55296||o>56319)throw new Error("low surrogate without leading high surrogate");return{char:e.charAt(i)+e.charAt(t),start:i,end:t}}var _nativeMathRandom=Math.random;Object.defineProperty(Array,"random",{configurable:!0,writable:!0,value:function(e){if(null==e||"object"!==(void 0===e?"undefined":_typeof(e))||!Object.prototype.hasOwnProperty.call(e,"length"))throw new TypeError("Array.random array parameter must be an array or array-lke object");var t=e.length>>>0;if(0!==t){return e[0===arguments.length?_random(0,t-1):_randomIndex(t,Array.prototype.slice.call(arguments,1))]}}}),Object.defineProperty(Array.prototype,"concatUnique",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.concatUnique called on null or undefined");var e=Array.from(this);if(0===arguments.length)return e;var t=Array.prototype.reduce.call(arguments,function(e,t){return e.concat(t)},[]),r=t.length;if(0===r)return e;for(var a=Array.prototype.indexOf,n=Array.prototype.push,i=0;i<r;++i){var o=t[i];-1===a.call(e,o)&&n.call(e,o)}return e}}),Object.defineProperty(Array.prototype,"count",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.count called on null or undefined");for(var e=Array.prototype.indexOf,t=arguments[0],r=Number(arguments[1])||0,a=0;-1!==(r=e.call(this,t,r));)++a,++r;return a}}),Object.defineProperty(Array.prototype,"delete",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.delete called on null or undefined");if(0===arguments.length)return[];if(0==this.length>>>0)return[];for(var e=Array.prototype.indexOf,t=Array.prototype.push,r=Array.prototype.splice,a=Array.prototype.concat.apply([],arguments),n=[],i=0,o=a.length;i<o;++i)for(var s=a[i],u=0;-1!==(u=e.call(this,s,u));)t.apply(n,r.call(this,u,1));return n}}),Object.defineProperty(Array.prototype,"deleteAt",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.deleteAt called on null or undefined");if(0===arguments.length)return[];var e=this.length>>>0;if(0===e)return[];for(var t=Array.prototype.splice,r=[].concat(_toConsumableArray(new Set(Array.prototype.concat.apply([],arguments).map(function(t){return t<0?Math.max(0,e+t):t})).values())),a=[].concat(_toConsumableArray(r)).sort(function(e,t){return t-e}),n=[],i=0,o=r.length;i<o;++i)n[i]=this[r[i]];for(var s=0,u=a.length;s<u;++s)t.call(this,a[s],1);return n}}),Object.defineProperty(Array.prototype,"deleteWith",{configurable:!0,writable:!0,value:function(e,t){if(null==this)throw new TypeError("Array.prototype.deleteWith called on null or undefined");if("function"!=typeof e)throw new Error("Array.prototype.deleteWith predicate parameter must be a function");var r=this.length>>>0;if(0===r)return[];for(var a=Array.prototype.splice,n=[],i=[],o=0;o<r;++o)e.call(t,this[o],o,this)&&(i.push(this[o]),n.unshift(o));for(var s=0,u=n.length;s<u;++s)a.call(this,n[s],1);return i}}),Object.defineProperty(Array.prototype,"flatten",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.flatten called on null or undefined");return Array.prototype.reduce.call(this,function(e,t){return e.concat(Array.isArray(t)?t.flatten():t)},[])}}),Object.defineProperty(Array.prototype,"includesAll",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includesAll called on null or undefined");if(1===arguments.length)return Array.isArray(arguments[0])?Array.prototype.includesAll.apply(this,arguments[0]):Array.prototype.includes.apply(this,arguments);for(var e=0,t=arguments.length;e<t;++e)if(!Array.prototype.some.call(this,function(e){return e===this.val||e!==e&&this.val!==this.val},{val:arguments[e]}))return!1;return!0}}),Object.defineProperty(Array.prototype,"includesAny",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.includesAny called on null or undefined");if(1===arguments.length)return Array.isArray(arguments[0])?Array.prototype.includesAny.apply(this,arguments[0]):Array.prototype.includes.apply(this,arguments);for(var e=0,t=arguments.length;e<t;++e)if(Array.prototype.some.call(this,function(e){return e===this.val||e!==e&&this.val!==this.val},{val:arguments[e]}))return!0;return!1}}),Object.defineProperty(Array.prototype,"pluck",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.pluck called on null or undefined");var e=this.length>>>0;if(0!==e){var t=0===arguments.length?_random(0,e-1):_randomIndex(e,[].concat(Array.prototype.slice.call(arguments)));return Array.prototype.splice.call(this,t,1)[0]}}}),Object.defineProperty(Array.prototype,"pluckMany",{configurable:!0,writable:!0,value:function(e){if(null==this)throw new TypeError("Array.prototype.pluckMany called on null or undefined");var t=this.length>>>0;if(0===t)return[];var r=Math.trunc(e);if(!Number.isInteger(r))throw new Error("Array.prototype.pluckMany want parameter must be an integer");if(r<1)return[];r>t&&(r=t);var a=Array.prototype.splice,n=[],i=t-1;do{n.push(a.call(this,_random(0,i--),1)[0])}while(n.length<r);return n}}),Object.defineProperty(Array.prototype,"pushUnique",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.pushUnique called on null or undefined");var e=arguments.length;if(0===e)return this.length>>>0;for(var t=Array.prototype.indexOf,r=Array.prototype.push,a=0;a<e;++a){var n=arguments[a];-1===t.call(this,n)&&r.call(this,n)}return this.length>>>0}}),Object.defineProperty(Array.prototype,"random",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.random called on null or undefined");var e=this.length>>>0;if(0!==e){return this[0===arguments.length?_random(0,e-1):_randomIndex(e,[].concat(Array.prototype.slice.call(arguments)))]}}}),Object.defineProperty(Array.prototype,"randomMany",{configurable:!0,writable:!0,value:function(e){if(null==this)throw new TypeError("Array.prototype.randomMany called on null or undefined");var t=this.length>>>0;if(0===t)return[];var r=Math.trunc(e);if(!Number.isInteger(r))throw new Error("Array.prototype.randomMany want parameter must be an integer");if(r<1)return[];r>t&&(r=t);var a=new Map,n=[],i=t-1;do{var o=void 0;do{o=_random(0,i)}while(a.has(o));a.set(o,!0),n.push(this[o])}while(n.length<r);return n}}),Object.defineProperty(Array.prototype,"shuffle",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.shuffle called on null or undefined");var e=this.length>>>0;if(0===e)return this;for(var t=e-1;t>0;--t){var r=Math.floor(_nativeMathRandom()*(t+1));if(t!==r){var a=this[t];this[t]=this[r],this[r]=a}}return this}}),Object.defineProperty(Array.prototype,"unshiftUnique",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.unshiftUnique called on null or undefined");var e=arguments.length;if(0===e)return this.length>>>0;for(var t=Array.prototype.indexOf,r=Array.prototype.unshift,a=0;a<e;++a){var n=arguments[a];-1===t.call(this,n)&&r.call(this,n)}return this.length>>>0}}),Object.defineProperty(Function.prototype,"partial",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Function.prototype.partial called on null or undefined");var e=Array.prototype.slice,t=this,r=e.call(arguments,0);return function(){for(var a=[],n=0,i=0;i<r.length;++i)a.push(r[i]===undefined?arguments[n++]:r[i]);return t.apply(this,a.concat(e.call(arguments,n)))}}}),Object.defineProperty(Math,"clamp",{configurable:!0,writable:!0,value:function(e,t,r){var a=Number(e);return Number.isNaN(a)?NaN:a.clamp(t,r)}}),Object.defineProperty(Math,"easeInOut",{configurable:!0,writable:!0,value:function(e){return 1-(Math.cos(Number(e)*Math.PI)+1)/2}}),Object.defineProperty(Number.prototype,"clamp",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Number.prototype.clamp called on null or undefined");if(2!==arguments.length)throw new Error("Number.prototype.clamp called with an incorrect number of parameters");var e=Number(arguments[0]),t=Number(arguments[1]);if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.min(Math.max(this,e),t)}}),RegExp.escape||function(){var e=/[\\^$*+?.()|[\]{}]/g,t=new RegExp(e.source);Object.defineProperty(RegExp,"escape",{configurable:!0,writable:!0,value:function(r){var a=String(r);return a&&t.test(a)?a.replace(e,"\\$&"):a}})}(),function(){var e=/{(\d+)(?:,([+-]?\d+))?}/g,t=new RegExp(e.source);Object.defineProperty(String,"format",{configurable:!0,writable:!0,value:function(r){function a(e,t,r){if(!t)return e;var a=Math.abs(t)-e.length;if(a<1)return e;var n=String(r).repeat(a);return t<0?e+n:n+e}if(arguments.length<2)return 0===arguments.length?"":r;var n=2===arguments.length&&Array.isArray(arguments[1])?[].concat(_toConsumableArray(arguments[1])):Array.prototype.slice.call(arguments,1);return 0===n.length?r:t.test(r)?(e.lastIndex=0,r.replace(e,function(e,t,r){var i=n[t];if(null==i)return"";for(;"function"==typeof i;)i=i();switch(void 0===i?"undefined":_typeof(i)){case"string":break;case"object":i=JSON.stringify(i);break;default:i=String(i)}return a(i,r?Number.parseInt(r,10):0," ")})):r}})}(),Object.defineProperty(String.prototype,"contains",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.contains called on null or undefined");return-1!==String.prototype.indexOf.apply(this,arguments)}}),Object.defineProperty(String.prototype,"count",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.count called on null or undefined");var e=String(arguments[0]||"");if(""===e)return 0;for(var t=String.prototype.indexOf,r=e.length,a=Number(arguments[1])||0,n=0;-1!==(a=t.call(this,e,a));)++n,a+=r;return n}}),Object.defineProperty(String.prototype,"splice",{configurable:!0,writable:!0,value:function(e,t,r){if(null==this)throw new TypeError("String.prototype.splice called on null or undefined");var a=this.length>>>0;if(0===a)return"";var n=Number(e);Number.isSafeInteger(n)?n<0&&(n+=a)<0&&(n=0):n=0,n>a&&(n=a);var i=Number(t);(!Number.isSafeInteger(i)||i<0)&&(i=0);var o=this.slice(0,n);return void 0!==r&&(o+=r),n+i<a&&(o+=this.slice(n+i)),o}}),Object.defineProperty(String.prototype,"splitOrEmpty",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.splitOrEmpty called on null or undefined");return""===String(this)?[]:String.prototype.split.apply(this,arguments)}}),Object.defineProperty(String.prototype,"toLocaleUpperFirst",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.toLocaleUpperFirst called on null or undefined");var e=String(this),t=_getCodePointStartAndEnd(e,0),r=t.char,a=t.end;return-1===a?"":r.toLocaleUpperCase()+e.slice(a+1)}}),Object.defineProperty(String.prototype,"toUpperFirst",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.toUpperFirst called on null or undefined");var e=String(this),t=_getCodePointStartAndEnd(e,0),r=t.char,a=t.end;return-1===a?"":r.toUpperCase()+e.slice(a+1)}}),Object.defineProperty(Date.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:date)",this.toISOString()]}}),Object.defineProperty(Function.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:eval)","("+this.toString()+")"]}}),Object.defineProperty(Map.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:map)",[].concat(_toConsumableArray(this))]}}),Object.defineProperty(RegExp.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:eval)",this.toString()]}}),Object.defineProperty(Set.prototype,"toJSON",{configurable:!0,writable:!0,value:function(){return["(revive:set)",[].concat(_toConsumableArray(this))]}}),Object.defineProperty(JSON,"reviveWrapper",{configurable:!0,writable:!0,value:function(e,t){if("string"!=typeof e)throw new TypeError("JSON.reviveWrapper code parameter must be a string");return["(revive:eval)",[e,t]]}}),Object.defineProperty(JSON,"_real_parse",{value:JSON.parse}),Object.defineProperty(JSON,"parse",{configurable:!0,writable:!0,value:function value(text,reviver){return JSON._real_parse(text,function(key,val){var value=val;if(Array.isArray(value)&&2===value.length)switch(value[0]){case"(revive:set)":value=new Set(value[1]);break;case"(revive:map)":value=new Map(value[1]);break;case"(revive:date)":value=new Date(value[1]);break;case"(revive:eval)":try{if(Array.isArray(value[1])){var $ReviveData$=value[1][1];value=eval(value[1][0])}else value=eval(value[1])}catch(e){}}else if("string"==typeof value&&"@@revive@@"===value.slice(0,10))try{value=eval(value.slice(10))}catch(e){}if("function"==typeof reviver)try{value=reviver(key,value)}catch(e){}return value})}}),Object.defineProperty(Array.prototype,"contains",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.contains called on null or undefined");return Array.prototype.includes.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"containsAll",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.containsAll called on null or undefined");return Array.prototype.includesAll.apply(this,arguments)}}),Object.defineProperty(Array.prototype,"containsAny",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("Array.prototype.containsAny called on null or undefined");return Array.prototype.includesAny.apply(this,arguments)}}),Object.defineProperty(String.prototype,"readBracketedList",{configurable:!0,writable:!0,value:function(){if(null==this)throw new TypeError("String.prototype.readBracketedList called on null or undefined");for(var e=new RegExp("(?:\\[\\[((?:\\s|\\S)*?)\\]\\])|([^\"'\\s]\\S*)","gm"),t=[],r=void 0;null!==(r=e.exec(this));)r[1]?t.push(r[1]):r[2]&&t.push(r[2]);return t}})}();var Browser=function(){var e=navigator.userAgent.toLowerCase(),t=e.includes("windows phone"),r=Object.freeze({Android:!t&&e.includes("android"),BlackBerry:/blackberry|bb10/.test(e),iOS:!t&&/ip(?:hone|ad|od)/.test(e),Windows:t||e.includes("iemobile"),any:function(){return r.Android||r.BlackBerry||r.iOS||r.Windows}}),a=!r.Windows&&!/khtml|trident|edge/.test(e)&&e.includes("gecko"),n=!e.includes("opera")&&/msie|trident/.test(e),i=n?function(){var t=/(?:msie\s+|rv:)(\d+\.\d)/.exec(e);return t?Number(t[1]):0}():null,o=e.includes("opera")||e.includes(" opr/"),s=o?function(){var t=new RegExp((/khtml|chrome/.test(e)?"opr":"version")+"\\/(\\d+\\.\\d+)"),r=t.exec(e);return r?Number(r[1]):0}():null,u=e.includes("vivaldi");return Object.freeze({userAgent:e,isMobile:r,isGecko:a,isIE:n,ieVersion:i,isOpera:o,operaVersion:s,isVivaldi:u})}(),Has=function(){var e=function(){try{return"function"==typeof document.createElement("audio").canPlayType}catch(e){}return!1}(),t=function(){try{return"Blob"in window&&"File"in window&&"FileList"in window&&"FileReader"in window&&!Browser.isMobile.any()&&(!Browser.isOpera||Browser.operaVersion>=15)}catch(e){}return!1}(),r=function(){try{return"geolocation"in navigator&&"function"==typeof navigator.geolocation.getCurrentPosition&&"function"==typeof navigator.geolocation.watchPosition}catch(e){}return!1}(),a=function(){try{return"MutationObserver"in window&&"function"==typeof window.MutationObserver}catch(e){}return!1}(),n=function(){try{return"performance"in window&&"function"==typeof window.performance.now}catch(e){}return!1}();return Object.freeze({audio:e,fileAPI:t,geolocation:r,mutationObserver:a,performance:n})}(),_ref3=function(){function e(t){if("object"!==(void 0===t?"undefined":_typeof(t))||null===t)return t;if(t instanceof String)return String(t);if(t instanceof Number)return Number(t);if(t instanceof Boolean)return Boolean(t);if("function"==typeof t.clone)return t.clone(!0);if(t.nodeType&&"function"==typeof t.cloneNode)return t.cloneNode(!0);var r=void 0;return t instanceof Array?r=new Array(t.length):t instanceof Date?r=new Date(t.getTime()):t instanceof Map?(r=new Map,t.forEach(function(t,a){return r.set(a,e(t))})):t instanceof RegExp?r=new RegExp(t):t instanceof Set?(r=new Set,t.forEach(function(t){return r.add(e(t))})):r=Object.create(Object.getPrototypeOf(t)),Object.keys(t).forEach(function(a){return r[a]=e(t[a])}),r}function t(e){for(var t=document.createDocumentFragment(),r=document.createElement("p"),a=void 0;null!==(a=e.firstChild);){if(a.nodeType===Node.ELEMENT_NODE){switch(a.nodeName.toUpperCase()){case"BR":if(null!==a.nextSibling&&a.nextSibling.nodeType===Node.ELEMENT_NODE&&"BR"===a.nextSibling.nodeName.toUpperCase()){e.removeChild(a.nextSibling),e.removeChild(a),t.appendChild(r),r=document.createElement("p");continue}if(!r.hasChildNodes()){e.removeChild(a);continue}break;case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":r.hasChildNodes()&&(t.appendChild(r),r=document.createElement("p")),t.appendChild(a);continue}}r.appendChild(a)}r.hasChildNodes()&&t.appendChild(r),e.appendChild(t)}function r(){try{return document.activeElement||null}catch(e){return null}}function a(e,t,r){var a="object"===(void 0===e?"undefined":_typeof(e))?e:document.getElementById(e);if(null==a)return null;var n=Array.isArray(t)?t:[t];jQuery(a).empty();for(var i=0,o=n.length;i<o;++i)if(Story.has(n[i]))return new Wikifier(a,Story.get(n[i]).processText().trim()),a;if(null!=r){var s=String(r).trim();""!==s&&new Wikifier(a,s)}return a}function n(e,t,r){var a=jQuery(document.createElement("div")),n=jQuery(document.createElement("button")),i=jQuery(document.createElement("pre")),o=L10n.get("errorTitle")+": "+(t||"unknown error");return n.addClass("error-toggle").ariaClick({label:L10n.get("errorToggle")},function(){n.hasClass("enabled")?(n.removeClass("enabled"),i.attr({"aria-hidden":!0,hidden:"hidden"})):(n.addClass("enabled"),i.removeAttr("aria-hidden hidden"))}).appendTo(a),jQuery(document.createElement("span")).addClass("error").text(o).appendTo(a),jQuery(document.createElement("code")).text(r).appendTo(i),i.addClass("error-source").attr({"aria-hidden":!0,hidden:"hidden"}).appendTo(a),a.addClass("error-view").appendTo(e),console.warn(o+"\n\t"+r.replace(/\n/g,"\n\t")),!1}function i(e,t){var r=i;switch(void 0===e?"undefined":_typeof(e)){case"number":if(Number.isNaN(e))return t;break;case"object":if(null===e)return t;if(Array.isArray(e))return e.map(function(e){return r(e,t)}).join(", ");if(e instanceof Set)return[].concat(_toConsumableArray(e)).map(function(e){return r(e,t)}).join(", ");if(e instanceof Map){return"{ "+[].concat(_toConsumableArray(e)).map(function(e){var a=_slicedToArray(e,2),n=a[0],i=a[1];return r(n,t)+" → "+r(i,t)}).join(", ")+" }"}return e instanceof Date?e.toLocaleString():"function"==typeof e.toString?e.toString():Object.prototype.toString.call(e);case"function":case"undefined":return t}return String(e)}return Object.freeze(Object.defineProperties({},{clone:{value:e},convertBreaks:{value:t},safeActiveElement:{value:r},setPageElement:{value:a},throwError:{value:n},toStringOrDefault:{value:i}}))}(),clone=_ref3.clone,convertBreaks=_ref3.convertBreaks,safeActiveElement=_ref3.safeActiveElement,setPageElement=_ref3.setPageElement,throwError=_ref3.throwError,toStringOrDefault=_ref3.toStringOrDefault;!function(){function e(e){13!==e.which&&32!==e.which||(e.preventDefault(),jQuery(safeActiveElement()||this).trigger("click"))}function t(e){return function(){
+	var t=jQuery(this);
+    const dataPassage = t.attr('data-passage');
+    const initialDataPassage = window && window.SugarCube && window.SugarCube.State && window.SugarCube.State.passage;
+    const savedYOffset = window.pageYOffset;
+    t.is("[aria-pressed]")&&t.attr("aria-pressed","true"===t.attr("aria-pressed")?"false":"true"),e.apply(this,arguments);
+    const doJump = function(){ window.scrollTo(0, savedYOffset); }
+    if ( dataPassage && (window.lastDataPassageLink === dataPassage || initialDataPassage === dataPassage))
+        doJump();
+    window.lastDataPassageLink = dataPassage;
+	}}function r(e){return t(function(){jQuery(this).off(".aria-clickable").removeAttr("tabindex aria-controls aria-pressed").not("a,button").removeAttr("role").end().filter("button").prop("disabled",!0),e.apply(this,arguments)})}jQuery.fn.extend({ariaClick:function(a,n){if(0===this.length||0===arguments.length)return this;var i=a,o=n;return null==o&&(o=i,i=undefined),i=jQuery.extend({namespace:undefined,one:!1,selector:undefined,data:undefined,controls:undefined,pressed:undefined,label:undefined},i),"string"!=typeof i.namespace?i.namespace="":"."!==i.namespace[0]&&(i.namespace="."+i.namespace),"boolean"==typeof i.pressed&&(i.pressed=i.pressed?"true":"false"),this.filter("button").prop("type","button"),this.not("a,button").attr("role","button"),this.attr("tabindex",0),null!=i.controls&&this.attr("aria-controls",i.controls),null!=i.pressed&&this.attr("aria-pressed",i.pressed),null!=i.label&&this.attr({"aria-label":i.label,title:i.label}),this.not("button").on("keypress.aria-clickable"+i.namespace,i.selector,e),this.on("click.aria-clickable"+i.namespace,i.selector,i.data,i.one?r(o):t(o)),this}})}(),function(){jQuery.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];if(0!==r.length){var n=document.createDocumentFragment();r.forEach(function(t){return new Wikifier(n,t,e)});var i=[].concat(_toConsumableArray(n.querySelectorAll(".error"))).map(function(e){return e.textContent.replace(errorPrologRegExp,"")});if(i.length>0)throw new Error(i.join("; "))}},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.wikiWithOptions.apply(this,[undefined].concat(t))}}),jQuery.fn.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];if(0===this.length||0===r.length)return this;var n=document.createDocumentFragment();return r.forEach(function(t){return new Wikifier(n,t,e)}),this.append(n),this},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.wikiWithOptions.apply(this,[undefined].concat(t))}})}();var Util=function(){function e(e){return Object.freeze(Object.assign(Object.create(null),e))}function t(e){return Object.prototype.toString.call(e).slice(8,-1)}function r(e){var t=void 0;switch(void 0===e?"undefined":_typeof(e)){case"number":t=e;break;case"string":t=Number(e);break;default:return!1}return!Number.isNaN(t)&&Number.isFinite(t)}function a(e){return"boolean"==typeof e||"string"==typeof e&&("true"===e||"false"===e)}function n(e){return String(e).trim().replace(/[^\w\s\u2013\u2014-]+/g,"").replace(/[_\s\u2013\u2014-]+/g,"-").toLocaleLowerCase()}function i(e){if(null==e)return"";var t=String(e);return t&&p.test(t)?t.replace(f,function(e){return g[e]}):t}function o(e){if(null==e)return"";var t=String(e);return t&&v.test(t)?t.replace(m,function(e){return y[e.toLowerCase()]}):t}function s(e,t){var r=String(e),a=Math.trunc(t),n=r.charCodeAt(a);if(Number.isNaN(n))return{char:"",start:-1,end:-1};var i={char:r.charAt(a),start:a,end:a};if(n<55296||n>57343)return i;if(n>=55296&&n<=56319){var o=a+1;if(o>=r.length)return i;var s=r.charCodeAt(o);return s<56320||s>57343?i:(i.char=i.char+r.charAt(o),i.end=o,i)}if(0===a)return i;var u=a-1,l=r.charCodeAt(u);return l<55296||l>56319?i:(i.char=r.charAt(u)+i.char,i.start=u,i)}function u(){return b.now()}function l(e){var t=w.exec(String(e));if(null===t)throw new SyntaxError('invalid time value syntax: "'+e+'"');var r=Number(t[1]);if(1===t[2].length&&(r*=1e3),Number.isNaN(r)||!Number.isFinite(r))throw new RangeError('invalid time value: "'+e+'"');return r}function c(e){if("number"!=typeof e||Number.isNaN(e)||!Number.isFinite(e)){var r=void 0;switch(void 0===e?"undefined":_typeof(e)){case"string":r='"'+e+'"';break;case"number":r=String(e);break;default:r=t(e)}throw new Error("invalid milliseconds: "+r)}return e+"ms"}function d(e){if(!e.includes("-"))switch(e){case"bgcolor":return"backgroundColor";case"float":return"cssFloat";default:return e}return("-ms-"===e.slice(0,4)?e.slice(1):e).split("-").map(function(e,t){return 0===t?e:e.toUpperFirst()}).join("")}function h(e){var t=document.createElement("a"),r=Object.create(null);t.href=e,t.search&&t.search.replace(/^\?/,"").splitOrEmpty(/(?:&(?:amp;)?|;)/).forEach(function(e){var t=e.split("="),a=_slicedToArray(t,2),n=a[0],i=a[1];r[n]=i});var a=t.host&&"/"!==t.pathname[0]?"/"+t.pathname:t.pathname;return{href:t.href,protocol:t.protocol,host:t.host,hostname:t.hostname,port:t.port,path:""+a+t.search,pathname:a,query:t.search,search:t.search,queries:r,searches:r,hash:t.hash}}var f=/[&<>"'`]/g,p=new RegExp(f.source),g=Object.freeze({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"}),m=/&(?:amp|#38|#x26|lt|#60|#x3c|gt|#62|#x3e|quot|#34|#x22|apos|#39|#x27|#96|#x60);/gi,v=new RegExp(m.source,"i"),y=Object.freeze({"&amp;":"&","&#38;":"&","&#x26;":"&","&lt;":"<","&#60;":"<","&#x3c;":"<","&gt;":">","&#62;":">","&#x3e;":">",
+"&quot;":'"',"&#34;":'"',"&#x22;":'"',"&apos;":"'","&#39;":"'","&#x27;":"'","&#96;":"`","&#x60;":"`"}),b=Has.performance?performance:Date,w=/^([+-]?(?:\d*\.)?\d+)([Mm]?[Ss])$/;return Object.freeze(Object.defineProperties({},{toEnum:{value:e},toStringTag:{value:t},isNumeric:{value:r},isBoolean:{value:a},slugify:{value:n},escape:{value:i},unescape:{value:o},charAndPosAt:{value:s},fromCssTime:{value:l},toCssTime:{value:c},fromCssProperty:{value:d},parseUrl:{value:h},now:{value:u},random:{value:Math.random},entityEncode:{value:i},entityDecode:{value:o},evalExpression:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),SimpleAudio=function(){function e(){return g}function t(e){g=!!e,l("mute",g)}function r(){return f}function a(e){f=Math.clamp(e,.2,5),l("rate",f)}function n(){return p}function i(e){p=Math.clamp(e,0,1),l("volume",p)}function o(){l("stop")}function s(e,t){if("function"!=typeof t)throw new Error("callback parameter must be a function");h.set(e,t)}function u(e){h.delete(e)}function l(e,t){h.forEach(function(r){return r(e,t)})}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(m,[null].concat(t)))}function d(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(v,[null].concat(t)))}var h=new Map,f=1,p=1,g=!1,m=function(){function e(t){if(_classCallCheck(this,e),Array.isArray(t))this._create(t);else{if(!(t instanceof e))throw new Error("sources parameter must be an array of either URLs or source objects");this._copy(t)}}return _createClass(e,[{key:"_create",value:function(t){if(!Array.isArray(t)||0===t.length)throw new Error("sources parameter must be an array of either URLs or source objects");var r=/^data:\s*audio\/([^;,]+)\s*[;,]/i,a=/\.([^.\/\\]+)$/,n=e.getType,i=[],o=document.createElement("audio");if(t.forEach(function(e){var t=null;switch(void 0===e?"undefined":_typeof(e)){case"string":var s=void 0;if("data:"===e.slice(0,5)){if(null===(s=r.exec(e)))throw new Error("source data URI missing media type")}else if(null===(s=a.exec(Util.parseUrl(e).pathname)))throw new Error("source URL missing file extension");var u=n(s[1]);null!==u&&(t={src:e,type:u});break;case"object":if(null===e)throw new Error("source object cannot be null");if(!e.hasOwnProperty("src"))throw new Error('source object missing required "src" property');if(!e.hasOwnProperty("format"))throw new Error('source object missing required "format" property');var l=n(e.format);null!==l&&(t={src:e.src,type:l});break;default:throw new Error("invalid source value (type: "+(void 0===e?"undefined":_typeof(e))+")")}if(null!==t){var c=document.createElement("source");c.src=t.src,c.type=Browser.isOpera?t.type.replace(/;.*$/,""):t.type,o.appendChild(c),i.push(t)}}),!o.hasChildNodes())if(Browser.isIE)o.src=undefined;else{var s=document.createElement("source");s.src=undefined,s.type=undefined,o.appendChild(s)}this._finalize(o,i,clone(t))}},{key:"_copy",value:function(t){if(!(t instanceof e))throw new Error("original parameter must be an instance of AudioWrapper");this._finalize(t.audio.cloneNode(!0),clone(t.sources),clone(t.originalSources))}},{key:"_finalize",value:function(e,t,r){var a=this;Object.defineProperties(this,{audio:{configurable:!0,value:e},sources:{configurable:!0,value:Object.freeze(t)},originalSources:{configurable:!0,value:Object.freeze(r)},_error:{writable:!0,value:!1},_faderId:{writable:!0,value:null},_mute:{writable:!0,value:!1},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1}}),jQuery(this.audio).on("loadstart",function(){return a._error=!1}).on("error",function(){return a._error=!0}).find("source:last-of-type").on("error",function(){return a._trigger("error")}),SimpleAudio.subscribe(this,function(e){if(!a.audio)return void SimpleAudio.unsubscribe(a);switch(e){case"mute":a._updateAudioMute();break;case"rate":a._updateAudioRate();break;case"stop":a.stop();break;case"volume":a._updateAudioVolume()}}),this.load()}},{key:"_trigger",value:function(e){jQuery(this.audio).triggerHandler(e)}},{key:"clone",value:function(){return new e(this)}},{key:"destroy",value:function(){SimpleAudio.unsubscribe(this);var e=this.audio;if(e){for(this.fadeStop(),this.stop(),jQuery(e).off();e.hasChildNodes();)e.removeChild(e.firstChild);e.load(),this._error=!0,delete this.audio,delete this.sources,delete this.originalSources}}},{key:"_updateAudioMute",value:function(){this.audio&&(this.audio.muted=this._mute||SimpleAudio.mute)}},{key:"_updateAudioRate",value:function(){this.audio&&(this.audio.playbackRate=this._rate*SimpleAudio.rate)}},{key:"_updateAudioVolume",value:function(){this.audio&&(this.audio.volume=this._volume*SimpleAudio.volume)}},{key:"hasSource",value:function(){return this.sources.length>0}},{key:"hasNoData",value:function(){return!this.audio||this.audio.readyState===HTMLMediaElement.HAVE_NOTHING}},{key:"hasMetadata",value:function(){return!!this.audio&&this.audio.readyState>=HTMLMediaElement.HAVE_METADATA}},{key:"hasSomeData",value:function(){return!!this.audio&&this.audio.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA}},{key:"hasData",value:function(){return!!this.audio&&this.audio.readyState===HTMLMediaElement.HAVE_ENOUGH_DATA}},{key:"isFailed",value:function(){return this._error}},{key:"isLoading",value:function(){return!!this.audio&&this.audio.networkState===HTMLMediaElement.NETWORK_LOADING}},{key:"isPlaying",value:function(){return!!this.audio&&!(this.audio.ended||this.audio.paused||!this.hasSomeData())}},{key:"isPaused",value:function(){return!!this.audio&&(this.audio.paused&&(this.audio.duration===1/0||this.audio.currentTime>0)&&!this.audio.ended)}},{key:"isEnded",value:function(){return!this.audio||this.audio.ended}},{key:"isFading",value:function(){return null!==this._faderId}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return!!this.audio&&this.audio.loop}},{key:"load",value:function(){this.audio&&("auto"!==this.audio.preload&&(this.audio.preload="auto"),this.isLoading()||this.audio.load())}},{key:"play",value:function(){this.audio&&this.audio.play()}},{key:"pause",value:function(){this.audio&&this.audio.pause()}},{key:"stop",value:function(){this.audio&&(this.pause(),this.time=0,this._trigger(":stop"))}},{key:"fadeWithDuration",value:function(e,t,r){var a=this;if(this.audio){this.fadeStop();var n=Math.clamp(null==r?this.volume:r,0,1),i=Math.clamp(t,0,1);n!==i&&(this.volume=n,jQuery(this.audio).off("timeupdate.AudioWrapper:fadeWithDuration").one("timeupdate.AudioWrapper:fadeWithDuration",function(){var t=void 0,r=void 0;n<i?(t=n,r=i):(t=i,r=n);var o=Number(e);o<1&&(o=1);var s=(i-n)/(o/.025);a._faderId=setInterval(function(){if(!a.isPlaying())return void a.fadeStop();a.volume=Math.clamp(a.volume+s,t,r),0===a.volume&&a.pause(),a.volume===i&&(a.fadeStop(),a._trigger(":fade"))},25)}),this.play())}}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"fadeStop",value:function(){null!==this._faderId&&(clearInterval(this._faderId),this._faderId=null)}},{key:"on",value:function(t,r){if(this.audio){if("function"!=typeof r)throw new Error("listener parameter must be a function");var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).on(n,r),this}}},{key:"one",value:function(t,r){if(this.audio){if("function"!=typeof r)throw new Error("listener parameter must be a function");var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).one(n,r),this}}},{key:"off",value:function(t,r){if(this.audio){if(r&&"function"!=typeof r)throw new Error("listener parameter must be a function");if(!t)return jQuery(this.audio).off(".AudioWrapperEvent",r);var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(t){if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}return e+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).off(n,r),this}}},{key:"duration",get:function(){return this.audio?this.audio.duration:NaN}},{key:"ended",get:function(){return!this.audio||this.audio.ended}},{key:"loop",get:function(){return!!this.audio&&this.audio.loop},set:function(e){this.audio&&(this.audio.loop=!!e)}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,this._updateAudioMute()}},{key:"paused",get:function(){return!!this.audio&&this.audio.paused}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),this._updateAudioRate()}},{key:"remaining",get:function(){return this.audio?this.audio.duration-this.audio.currentTime:NaN}},{key:"time",get:function(){return this.audio?this.audio.currentTime:NaN},set:function(e){var t=this;if(this.audio)try{this.audio.currentTime=e}catch(r){jQuery(this.audio).off("loadedmetadata.AudioWrapper:time").one("loadedmetadata.AudioWrapper:time",function(){return t.audio.currentTime=e})}}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),this._updateAudioVolume()}}],[{key:"_verifyType",value:function(t){if(!t||!Has.audio)return null;var r=e._types;if(!r.hasOwnProperty(t)){var a=document.createElement("audio");r[t]=""!==a.canPlayType(t).replace(/^no$/i,"")}return r[t]?t:null}},{key:"getType",value:function(t){if(!t||!Has.audio)return null;var r=e.formats,a=t.toLowerCase(),n=r.hasOwnProperty(a)?r[a]:"audio/"+a;return e._verifyType(n)}},{key:"canPlayFormat",value:function(t){return null!==e.getType(t)}},{key:"canPlayType",value:function(t){return null!==e._verifyType(t)}}]),e}();Object.defineProperties(m,{formats:{value:{aac:"audio/aac",caf:"audio/x-caf","x-caf":"audio/x-caf",mp3:'audio/mpeg; codecs="mp3"',mpeg:'audio/mpeg; codecs="mp3"',m4a:"audio/mp4",mp4:"audio/mp4","x-m4a":"audio/mp4","x-mp4":"audio/mp4",oga:"audio/ogg",ogg:"audio/ogg",opus:'audio/ogg; codecs="opus"',wav:"audio/wav",wave:"audio/wav",weba:"audio/webm",webm:"audio/webm"}},_types:{value:{}},_events:{value:Object.freeze({canplay:"canplaythrough",end:"ended",error:"error",fade:":fade",pause:"pause",play:"playing",rate:"ratechange",seek:"seeked",stop:":stop",volume:"volumechange"})}});var v=function(){function e(t){var r=this;_classCallCheck(this,e),Object.defineProperties(this,{tracks:{configurable:!0,value:[]},queue:{configurable:!0,value:[]},current:{writable:!0,value:null},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1},_mute:{writable:!0,value:!1},_loop:{writable:!0,value:!1},_shuffle:{writable:!0,value:!1}}),Array.isArray(t)?t.forEach(function(e){return r.add(e)}):t instanceof e&&t.tracks.forEach(function(e){return r.add(e)})}return _createClass(e,[{key:"add",value:function(e){var t=this;if(null==e||"object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("track parameter must be an object");var r=void 0,a=void 0,n=void 0,i=void 0;if(e instanceof m)r=!0,a=e.clone(),n=e.volume,i=e.rate;else{if(!e.hasOwnProperty("track"))throw new Error('track object missing required "track" property');if(!(e.track instanceof m))throw new Error('track object\'s "track" property must be an AudioWrapper object');r=e.hasOwnProperty("copy")&&e.copy,a=r?e.track.clone():e.track,n=e.hasOwnProperty("volume")?e.volume:e.track.volume,i=e.hasOwnProperty("rate")?e.rate:e.track.rate}a.stop(),a.loop=!1,a.mute=!1,a.volume=n,a.rate=i,a.on("end.AudioListEvent",function(){return t._onEnd()}),this.tracks.push({copy:r,track:a,volume:n,rate:i})}},{key:"destroy",value:function(){this.stop(),this.tracks.filter(function(e){return e.copy}).forEach(function(e){return e.track.destroy()}),delete this.tracks,delete this.queue}},{key:"isPlaying",value:function(){return null!==this.current&&this.current.track.isPlaying()}},{key:"isEnded",value:function(){return 0===this.queue.length&&(null===this.current||this.current.track.isEnded())}},{key:"isPaused",value:function(){return null===this.current||this.current.track.isPaused()}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return this._loop}},{key:"isShuffled",value:function(){return this._shuffle}},{key:"play",value:function(){(null!==this.current&&!this.current.track.isEnded()||(0===this.queue.length&&this._buildList(),this._next()))&&this.current.track.play()}},{key:"pause",value:function(){null!==this.current&&this.current.track.pause()}},{key:"stop",value:function(){null!==this.current&&(this.current.track.stop(),this.current=null),this.queue.splice(0)}},{key:"skip",value:function(){this._next()?this.current.track.play():this._loop&&this.play()}},{key:"fadeWithDuration",value:function(e,t,r){if(0===this.queue.length&&this._buildList(),null!==this.current&&!this.current.track.isEnded()||this._next()){var a=Math.clamp(t,0,1)*this.current.volume,n=void 0;null!=r&&(n=Math.clamp(r,0,1)*this.current.volume),this.current.track.fadeWithDuration(e,a,n),this._volume=t}}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"_next",value:function(){return null!==this.current&&this.current.track.stop(),0===this.queue.length?(this.current=null,!1):(this.current=this.queue.shift(),!this.current.track.hasSource()||this.current.track.isFailed()?this._next():(this.current.track.mute=this._mute,this.current.track.rate=this.rate*this.current.rate,this.current.track.volume=this.volume*this.current.volume,!0))}},{key:"_onEnd",value:function(){if(0===this.queue.length){if(!this._loop)return;this._buildList()}this._next()&&this.current.track.play()}},{key:"_buildList",value:function(){var e;this.queue.splice(0),(e=this.queue).push.apply(e,_toConsumableArray(this.tracks)),0!==this.queue.length&&this._shuffle&&(this.queue.shuffle(),this.queue.length>1&&this.queue[0]===this.current&&this.queue.push(this.queue.shift()))}},{key:"duration",get:function(){return this.tracks.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0)}},{key:"loop",get:function(){return this._loop},set:function(e){this._loop=!!e}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,null!==this.current&&(this.current.track.mute=this._mute)}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),null!==this.current&&(this.current.track.rate=this.rate*this.current.rate)}},{key:"remaining",get:function(){var e=this.queue.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0);return null!==this.current&&(e+=this.current.track.remaining),e}},{key:"shuffle",get:function(){return this._shuffle},set:function(e){this._shuffle=!!e}},{key:"time",get:function(){return this.duration-this.remaining}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),null!==this.current&&(this.current.track.volume=this.volume*this.current.volume)}}]),e}();return Object.freeze(Object.defineProperties({},{mute:{get:e,set:t},rate:{get:r,set:a},volume:{get:n,set:i},stop:{value:o},subscribe:{value:s},unsubscribe:{value:u},publish:{value:l},create:{value:c},createList:{value:d}}))}(),SimpleStore=function(){function e(e,a){if(r)return r.create(e,a);for(var n=0;n<t.length;++n)if(t[n].init(e,a))return r=t[n],r.create(e,a);throw new Error("no valid storage adapters found")}var t=[],r=null;return Object.freeze(Object.defineProperties({},{adapters:{value:t},create:{value:e}}))}();SimpleStore.adapters.push(function(){function e(){function e(e){try{var t=window[e],r="_sc_"+String(Date.now());t.setItem(r,r);var a=t.getItem(r)===r;return t.removeItem(r),a}catch(e){}return!1}return r=e("localStorage")&&e("sessionStorage")}function t(e,t){if(!r)throw new Error("adapter not initialized");return new a(e,t)}var r=!1,a=function(){function e(t,r){_classCallCheck(this,e);var a=t+".",n=null,i=null;r?(n=window.localStorage,i="localStorage"):(n=window.sessionStorage,i="sessionStorage"),Object.defineProperties(this,{_engine:{value:n},_prefix:{value:a},_prefixRe:{value:new RegExp("^"+RegExp.escape(a))},name:{value:i},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function(){for(var e=[],t=0;t<this._engine.length;++t){var r=this._engine.key(t);this._prefixRe.test(r)&&e.push(r.replace(this._prefixRe,""))}return e}},{key:"has",value:function(e){return!("string"!=typeof e||!e)&&this._engine.hasOwnProperty(this._prefix+e)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=this._engine.getItem(this._prefix+t);return null==r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{this._engine.setItem(this._prefix+t,e._serialize(r))}catch(e){throw/quota[_\s]?(?:exceeded|reached)/i.test(e.name)&&(e.message=this.name+" quota exceeded"),e}return!0}},{key:"delete",value:function(e){return!("string"!=typeof e||!e)&&(this._engine.removeItem(this._prefix+e),!0)}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_serialize",value:function(e)
+/* look here for changes */
+{return JSON.stringify(e)}},{key:"_deserialize",value:function(e){return JSON.parse((!e || e[0]=="{")?e:LZString.decompressFromUTF16(e))}}]),e}();
+/* changes end here */
+return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}()),SimpleStore.adapters.push(function(){function e(e){try{var t="_sc_"+String(Date.now());o._setCookie(t,o._serialize(t),undefined),i=o._deserialize(o._getCookie(t))===t,o._setCookie(t,undefined,n)}catch(e){i=!1}return i&&r(e),i}function t(e,t){if(!i)throw new Error("adapter not initialized");return new o(e,t)}function r(e){if(""!==document.cookie)for(var t=e+".",r=new RegExp("^"+RegExp.escape(t)),i=e+"!.",s=e+"*.",u=/\.(?:state|rcWarn)$/,l=document.cookie.split(/;\s*/),c=0;c<l.length;++c){var d=l[c].split("="),h=decodeURIComponent(d[0]);if(r.test(h)){var f=decodeURIComponent(d[1]);""!==f&&function(){var e=!u.test(h);o._setCookie(h,undefined,n),o._setCookie(h.replace(r,function(){return e?i:s}),f,e?a:undefined)}()}}}var a="Tue, 19 Jan 2038 03:14:07 GMT",n="Thu, 01 Jan 1970 00:00:00 GMT",i=!1,o=function(){function e(t,r){_classCallCheck(this,e);var a=t+(r?"!":"*")+".";Object.defineProperties(this,{_prefix:{value:a},_prefixRe:{value:new RegExp("^"+RegExp.escape(a))},name:{value:"cookie"},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function(){if(""===document.cookie)return[];for(var e=document.cookie.split(/;\s*/),t=[],r=0;r<e.length;++r){var a=e[r].split("="),n=decodeURIComponent(a[0]);if(this._prefixRe.test(n)){""!==decodeURIComponent(a[1])&&t.push(n.replace(this._prefixRe,""))}}return t}},{key:"has",value:function(t){return!("string"!=typeof t||!t)&&null!==e._getCookie(this._prefix+t)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=e._getCookie(this._prefix+t);return null===r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{if(e._setCookie(this._prefix+t,e._serialize(r),this.persistent?a:undefined),!this.has(t))throw new Error("unknown validation error during set")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"delete",value:function(t){if("string"!=typeof t||!t||!this.has(t))return!1;try{if(e._setCookie(this._prefix+t,undefined,n),this.has(t))throw new Error("unknown validation error during delete")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_getCookie",value:function(e){if(!e||""===document.cookie)return null;for(var t=document.cookie.split(/;\s*/),r=0;r<t.length;++r){var a=t[r].split("=");if(e===decodeURIComponent(a[0])){return decodeURIComponent(a[1])||null}}return null}},{key:"_setCookie",value:function(e,t,r){if(e){var a=encodeURIComponent(e)+"=";null!=t&&(a+=encodeURIComponent(t)),null!=r&&(a+="; expires="+r),a+="; path=/",document.cookie=a}}},{key:"_serialize",value:function(e){return LZString.compressToBase64(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromBase64(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}());var DebugView=function(){return function(){function e(t,r,a,n){_classCallCheck(this,e),Object.defineProperties(this,{parent:{value:t},view:{value:document.createElement("span")},break:{value:document.createElement("wbr")}}),jQuery(this.view).attr({title:n,"aria-label":n,"data-type":null!=r?r:"","data-name":null!=a?a:""}).addClass("debug"),jQuery(this.break).addClass("debug hidden"),this.parent.appendChild(this.view),this.parent.appendChild(this.break)}return _createClass(e,[{key:"append",value:function(e){return jQuery(this.view).append(e),this}},{key:"modes",value:function(e){if(null==e){var t={};return this.view.className.splitOrEmpty(/\s+/).forEach(function(e){"debug"!==e&&(t[e]=!0)}),t}if("object"===(void 0===e?"undefined":_typeof(e)))return Object.keys(e).forEach(function(t){this[e[t]?"addClass":"removeClass"](t)},jQuery(this.view)),this;throw new Error("DebugView.prototype.modes options parameter must be an object or null/undefined")}},{key:"remove",value:function(){var e=jQuery(this.view);this.view.hasChildNodes()&&e.contents().appendTo(this.parent),e.remove(),jQuery(this.break).remove()}},{key:"output",get:function(){return this.view}},{key:"type",get:function(){return this.view.getAttribute("data-type")},set:function(e){this.view.setAttribute("data-type",null!=e?e:"")}},{key:"name",get:function(){return this.view.getAttribute("data-name")},set:function(e){this.view.setAttribute("data-name",null!=e?e:"")}},{key:"title",get:function(){return this.view.title},set:function(e){this.view.title=e}}],[{key:"isEnabled",value:function(){return"enabled"===jQuery(document.documentElement).attr("data-debug-view")}},{key:"enable",value:function(){jQuery(document.documentElement).attr("data-debug-view","enabled"),jQuery.event.trigger(":debugviewupdate")}},{key:"disable",value:function(){jQuery(document.documentElement).removeAttr("data-debug-view"),jQuery.event.trigger(":debugviewupdate")}},{key:"toggle",value:function(){"enabled"===jQuery(document.documentElement).attr("data-debug-view")?e.disable():e.enable()}}]),e}()}(),PRNGWrapper=function(){return function(){function e(t,r){_classCallCheck(this,e),Object.defineProperties(this,new Math.seedrandom(t,r,function(e,t){return{_prng:{value:e},seed:{writable:!0,value:t},pull:{writable:!0,value:0},random:{value:function(){return++this.pull,this._prng()}}}}))}return _createClass(e,null,[{key:"marshal",value:function(e){if(!e||!e.hasOwnProperty("seed")||!e.hasOwnProperty("pull"))throw new Error("PRNG is missing required data");return{seed:e.seed,pull:e.pull}}},{key:"unmarshal",value:function(t){if(!t||!t.hasOwnProperty("seed")||!t.hasOwnProperty("pull"))throw new Error("PRNG object is missing required data");for(var r=new e(t.seed,!1),a=t.pull;a>0;--a)r.random();return r}}]),e}()}(),StyleWrapper=function(){var e=new RegExp(Patterns.cssImage,"g"),t=new RegExp(Patterns.cssImage);return function(){function r(e){if(_classCallCheck(this,r),null==e)throw new TypeError("StyleWrapper style parameter must be an HTMLStyleElement object");Object.defineProperties(this,{style:{value:e}})}return _createClass(r,[{key:"isEmpty",value:function(){return 0===this.style.cssRules.length}},{key:"set",value:function(e){this.clear(),this.add(e)}},{key:"add",value:function(r){var a=r;t.test(a)&&(e.lastIndex=0,a=a.replace(e,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var a=Story.get(r);a.tags.includes("Twine.image")&&(r=a.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),this.style.styleSheet?this.style.styleSheet.cssText+=a:this.style.appendChild(document.createTextNode(a))}},{key:"clear",value:function(){this.style.styleSheet?this.style.styleSheet.cssText="":jQuery(this.style).empty()}}]),r}()}(),Diff=function(){function e(t,a){for(var n=Object.prototype.toString,i=t instanceof Array,o=[].concat(Object.keys(t),Object.keys(a)).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}),s={},u=void 0,l=function(e){return e===u},c=0,d=o.length;c<d;++c){var h=o[c],f=t[h],p=a[h];if(t.hasOwnProperty(h))if(a.hasOwnProperty(h)){if(f===p)continue;if((void 0===f?"undefined":_typeof(f))===(void 0===p?"undefined":_typeof(p)))if("function"==typeof f)f.toString()!==p.toString()&&(s[h]=[r.Copy,p]);else if("object"!==(void 0===f?"undefined":_typeof(f))||null===f)s[h]=[r.Copy,p];else{var g=n.call(f),m=n.call(p);if(g===m)if(f instanceof Date)Number(f)!==Number(p)&&(s[h]=[r.Copy,clone(p)]);else if(f instanceof Map)s[h]=[r.Copy,clone(p)];else if(f instanceof RegExp)f.toString()!==p.toString()&&(s[h]=[r.Copy,clone(p)]);else if(f instanceof Set)s[h]=[r.Copy,clone(p)];else if("[object Object]"!==g)s[h]=[r.Copy,clone(p)];else{var v=e(f,p);null!==v&&(s[h]=v)}else s[h]=[r.Copy,clone(p)]}else s[h]=[r.Copy,"object"!==(void 0===p?"undefined":_typeof(p))||null===p?p:clone(p)]}else if(i&&Util.isNumeric(h)){var y=Number(h);if(!u){u="";do{u+="~"}while(o.some(l));s[u]=[r.SpliceArray,y,y]}y<s[u][1]&&(s[u][1]=y),y>s[u][2]&&(s[u][2]=y)}else s[h]=r.Delete;else s[h]=[r.Copy,"object"!==(void 0===p?"undefined":_typeof(p))||null===p?p:clone(p)]}return Object.keys(s).length>0?s:null}function t(e,a){for(var n=Object.keys(a||{}),i=clone(e),o=0,s=n.length;o<s;++o){var u=n[o],l=a[u];if(l===r.Delete)delete i[u];else if(l instanceof Array)switch(l[0]){case r.SpliceArray:i.splice(l[1],l[2]-l[1]+1);break;case r.Copy:i[u]=clone(l[1]);break;case r.CopyDate:i[u]=new Date(l[1])}else i[u]=t(i[u],l)}return i}var r=Util.toEnum({Delete:0,SpliceArray:1,Copy:2,CopyDate:3});return Object.freeze(Object.defineProperties({},{Op:{value:r},diff:{value:e},patch:{value:t}}))}(),L10n=function(){function e(){r()}function t(e,t){if(!e)return"";var r=function(e){var t=void 0;return e.some(function(e){return!!l10nStrings.hasOwnProperty(e)&&(t=e,!0)}),t}(Array.isArray(e)?e:[e]);if(!r)return"";for(var i=l10nStrings[r],o=0;n.test(i);){if(++o>50)throw new Error("L10n.get exceeded maximum replacement iterations, probable infinite loop");a.lastIndex=0,i=i.replace(a,function(e){var r=e.slice(1,-1);return t&&t.hasOwnProperty(r)?t[r]:l10nStrings.hasOwnProperty(r)?l10nStrings[r]:void 0})}return i}function r(){strings&&Object.keys(strings).length>0&&Object.keys(l10nStrings).forEach(function(e){try{var t=void 0;switch(e){case"identity":t=strings.identity;break;case"aborting":t=strings.aborting;break;case"cancel":t=strings.cancel;break;case"close":t=strings.close;break;case"ok":t=strings.ok;break;case"errorTitle":t=strings.errors.title;break;case"errorNonexistentPassage":t=strings.errors.nonexistentPassage;break;case"errorSaveMissingData":t=strings.errors.saveMissingData;break;case"errorSaveIdMismatch":t=strings.errors.saveIdMismatch;break;case"warningDegraded":t=strings.warnings.degraded;break;case"debugViewTitle":t=strings.debugView.title;break;case"debugViewToggle":t=strings.debugView.toggle;break;case"uiBarToggle":t=strings.uiBar.toggle;break;case"uiBarBackward":t=strings.uiBar.backward;break;case"uiBarForward":t=strings.uiBar.forward;break;case"uiBarJumpto":t=strings.uiBar.jumpto;break;case"jumptoTitle":t=strings.jumpto.title;break;case"jumptoTurn":t=strings.jumpto.turn;break;case"jumptoUnavailable":t=strings.jumpto.unavailable;break;case"savesTitle":t=strings.saves.title;break;case"savesDisallowed":t=strings.saves.disallowed;break;case"savesEmptySlot":t=strings.saves.emptySlot;break;case"savesIncapable":t=strings.saves.incapable;break;case"savesLabelAuto":t=strings.saves.labelAuto;break;case"savesLabelDelete":t=strings.saves.labelDelete;break;case"savesLabelExport":t=strings.saves.labelExport;break;case"savesLabelImport":t=strings.saves.labelImport;break;case"savesLabelLoad":t=strings.saves.labelLoad;break;case"savesLabelClear":t=strings.saves.labelClear;break;case"savesLabelSave":t=strings.saves.labelSave;break;case"savesLabelSlot":t=strings.saves.labelSlot;break;case"savesSavedOn":t=strings.saves.savedOn;break;case"savesUnavailable":t=strings.saves.unavailable;break;case"savesUnknownDate":t=strings.saves.unknownDate;break;case"settingsTitle":t=strings.settings.title;break;case"settingsOff":t=strings.settings.off;break;case"settingsOn":t=strings.settings.on;break;case"settingsReset":t=strings.settings.reset;break;case"restartTitle":t=strings.restart.title;break;case"restartPrompt":t=strings.restart.prompt;break;case"shareTitle":t=strings.share.title;break;case"autoloadTitle":t=strings.autoload.title;break;case"autoloadCancel":t=strings.autoload.cancel;break;case"autoloadOk":t=strings.autoload.ok;break;case"autoloadPrompt":t=strings.autoload.prompt;break;case"macroBackText":t=strings.macros.back.text;break;case"macroReturnText":t=strings.macros.return.text}t&&(l10nStrings[e]=t.replace(/%\w+%/g,function(e){return"{"+e.slice(1,-1)+"}"}))}catch(e){}})}var a=/\{\w+\}/g,n=new RegExp(a.source);return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:t}}))}(),strings={errors:{},warnings:{},debugView:{},uiBar:{},jumpto:{},saves:{},settings:{},restart:{},share:{},autoload:{},macros:{back:{},return:{}}},l10nStrings={identity:"game",aborting:"Aborting",cancel:"Cancel",close:"Close",ok:"OK",errorTitle:"Error",errorToggle:"Toggle the error view",errorNonexistentPassage:'the passage "{passage}" does not exist',errorSaveMissingData:"save is missing required data. Either the loaded file is not a save or the save has become corrupted",errorSaveIdMismatch:"save is from the wrong {identity}",_warningIntroLacking:"Your browser either lacks or has disabled",_warningOutroDegraded:", so this {identity} is running in a degraded mode. You may be able to continue, however, some parts may not work properly.",warningNoWebStorage:"{_warningIntroLacking} the Web Storage API{_warningOutroDegraded}",warningDegraded:"{_warningIntroLacking} some of the capabilities required by this {identity}{_warningOutroDegraded}",debugBarToggle:"Toggle the debug bar",debugBarNoWatches:"— no watches set —",debugBarAddWatch:"Add watch",debugBarDeleteWatch:"Delete watch",debugBarWatchAll:"Watch all",debugBarWatchNone:"Delete all",debugBarLabelAdd:"Add",debugBarLabelWatch:"Watch",debugBarLabelTurn:"Turn",debugBarLabelViews:"Views",debugBarViewsToggle:"Toggle the debug views",debugBarWatchToggle:"Toggle the watch panel",uiBarToggle:"Toggle the UI bar",uiBarBackward:"Go backward within the {identity} history",uiBarForward:"Go forward within the {identity} history",uiBarJumpto:"Jump to a specific point within the {identity} history",jumptoTitle:"Jump To",jumptoTurn:"Turn",jumptoUnavailable:"No jump points currently available…",savesTitle:"Saves",savesDisallowed:"Saving has been disallowed on this passage.",savesEmptySlot:"— slot empty —",
+savesIncapable:"{_warningIntroLacking} the capabilities required to support saves, so saves have been disabled for this session.",savesLabelAuto:"Autosave",savesLabelDelete:"Delete",savesLabelExport:"Save to Disk…",savesLabelImport:"Load from Disk…",savesLabelLoad:"Load",savesLabelClear:"Delete All",savesLabelSave:"Save",savesLabelSlot:"Slot",savesSavedOn:"Saved on",savesUnavailable:"No save slots found…",savesUnknownDate:"unknown",settingsTitle:"Settings",settingsOff:"Off",settingsOn:"On",settingsReset:"Reset to Defaults",restartTitle:"Restart",restartPrompt:"Are you sure that you want to restart? Unsaved progress will be lost.",shareTitle:"Share",autoloadTitle:"Autoload",autoloadCancel:"Go to start",autoloadOk:"Load autosave",autoloadPrompt:"An autosave exists. Load it now or go to the start?",macroBackText:"Back",macroReturnText:"Return"},Config=function(){function e(){throw new Error("Config.history.mode has been deprecated and is no longer used by SugarCube, please remove it from your code")}function t(){throw new Error("Config.history.tracking has been deprecated, use Config.history.maxStates instead")}return Object.seal({debug:!1,addVisitedLinkClass:!1,cleanupWikifierOutput:!1,loadDelay:0,history:Object.seal({controls:!0,maxStates:100,get mode(){e()},set mode(t){e()},get tracking(){t()},set tracking(e){t()}}),macros:Object.seal({ifAssignmentError:!0,maxLoopIterations:1e3}),navigation:Object.seal({override:undefined}),passages:Object.seal({descriptions:undefined,displayTitles:!1,nobr:!1,start:undefined,transitionOut:undefined}),saves:Object.seal({autoload:undefined,autosave:undefined,id:"untitled-story",isAllowed:undefined,onLoad:undefined,onSave:undefined,slots:8,version:undefined}),ui:Object.seal({stowBarInitially:800,updateStoryElements:!0}),transitionEndEventName:function(){for(var e=new Map([["transition","transitionend"],["MSTransition","msTransitionEnd"],["WebkitTransition","webkitTransitionEnd"],["MozTransition","transitionend"]]),t=[].concat(_toConsumableArray(e.keys())),r=document.createElement("div"),a=0;a<t.length;++a)if(r.style[t[a]]!==undefined)return e.get(t[a]);return""}()})}(),State=function(){function e(){session.delete("state"),W=[],R=c(),F=-1,B=[],V=null===V?null:new PRNGWrapper(V.seed,!1)}function t(){if(session.has("state")){var e=session.get("state");return null!=e&&(a(e),!0)}return!1}function r(e){var t={index:F};return e?t.history=clone(W):t.delta=A(W),B.length>0&&(t.expired=[].concat(_toConsumableArray(B))),null!==V&&(t.seed=V.seed),t}function a(e,t){if(null==e)throw new Error("state object is null or undefined");if(!e.hasOwnProperty(t?"history":"delta")||0===e[t?"history":"delta"].length)throw new Error("state object has no history or history is empty");if(!e.hasOwnProperty("index"))throw new Error("state object has no index");if(null!==V&&!e.hasOwnProperty("seed"))throw new Error("state object has no seed, but PRNG is enabled");if(null===V&&e.hasOwnProperty("seed"))throw new Error("state object has seed, but PRNG is disabled");W=t?clone(e.history):P(e.delta),F=e.index,B=e.hasOwnProperty("expired")?[].concat(_toConsumableArray(e.expired)):[],e.hasOwnProperty("seed")&&(V.seed=e.seed),g(F)}function n(){return r(!0)}function i(e){return a(e,!0)}function o(){return B}function s(){return B.length+v()}function u(){return B.concat(W.slice(0,v()).map(function(e){return e.title}))}function l(e){return null!=e&&""!==e&&(!!B.includes(e)||!!W.slice(0,v()).some(function(t){return t.title===e}))}function c(e,t){return{title:null==e?"":String(e),variables:null==t?{}:clone(t)}}function d(){return R}function h(){return F}function f(){return R.title}function p(){return R.variables}function g(e){if(null==e)throw new Error("moment activation attempted with null or undefined");switch(void 0===e?"undefined":_typeof(e)){case"object":R=clone(e);break;case"number":if(b())throw new Error("moment activation attempted with index on empty history");if(e<0||e>=y())throw new RangeError("moment activation attempted with out-of-bounds index; need [0, "+(y()-1)+"], got "+e);R=clone(W[e]);break;default:throw new TypeError('moment activation attempted with a "'+(void 0===e?"undefined":_typeof(e))+'"; must be an object or valid history stack index')}return null!==V&&(V=PRNGWrapper.unmarshal({seed:V.seed,pull:R.pull})),session.set("state",r()),jQuery.event.trigger(":historyupdate"),R}function m(){return W}function v(){return F+1}function y(){return W.length}function b(){return 0===W.length}function w(){return W.length>0?W[F]:null}function k(){return W.length>0?W[W.length-1]:null}function S(){return W.length>0?W[0]:null}function E(e){return b()||e<0||e>F?null:W[e]}function x(e){if(b())return null;var t=1+(e?Math.abs(e):0);return t>v()?null:W[v()-t]}function j(e){if(b()||null==e||""===e)return!1;for(var t=F;t>=0;--t)if(W[t].title===e)return!0;return!1}function C(e){if(v()<y()&&W.splice(v(),y()-v()),W.push(c(e,R.variables)),V&&(k().pull=V.pull),Config.history.maxStates>0)for(;y()>Config.history.maxStates;)B.push(W.shift().title);return F=y()-1,g(F),v()}function O(e){return!(null==e||e<0||e>=y()||e===F)&&(F=e,g(F),!0)}function T(e){return null!=e&&0!==e&&O(F+e)}function A(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,a=e.length;r<a;++r)t.push(Diff.diff(e[r-1],e[r]));return t}function P(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,a=e.length;r<a;++r)t.push(Diff.patch(t[r-1],e[r]));return t}function _(e,t){if(!b()){var r=void 0;throw r="a script-tagged passage",new Error("State.initPRNG must be called during initialization, within either "+r+" or the StoryInit special passage")}V=new PRNGWrapper(e,t),R.pull=V.pull}function N(){return V?V.random():Math.random()}function D(){U={},TempVariables=U}function M(){return U}function L(e){var t=Q(e);if(null!==t){for(var r=t.names,a=t.store,n=0,i=r.length;n<i;++n){if(void 0===a[r[n]])return;a=a[r[n]]}return a}}function I(e,t){var r=Q(e);if(null===r)return!1;for(var a=r.names,n=a.pop(),i=r.store,o=0,s=a.length;o<s;++o){if(void 0===i[a[o]])return!1;i=i[a[o]]}return i[n]=t,!0}function Q(e){for(var t={store:"$"===e[0]?State.variables:State.temporary,names:[]},r=e,a=void 0;null!==(a=z.exec(r));)r=r.slice(a[0].length),a[1]?t.names.push(a[1]):a[2]?t.names.push(a[2]):a[3]?t.names.push(a[3]):a[4]?t.names.push(a[4]):a[5]?t.names.push(L(a[5])):a[6]&&t.names.push(Number(a[6]));return""===r?t:null}var W=[],R=c(),F=-1,B=[],V=null,U={},z=new RegExp("^(?:"+Patterns.variableSigil+"("+Patterns.identifier+")|\\.("+Patterns.identifier+")|\\[(?:(?:\"((?:\\\\.|[^\"\\\\])+)\")|(?:'((?:\\\\.|[^'\\\\])+)')|("+Patterns.variableSigil+Patterns.identifierFirstChar+".*)|(\\d+))\\])");return Object.freeze(Object.defineProperties({},{reset:{value:e},restore:{value:t},marshalForSave:{value:n},unmarshalForSave:{value:i},expired:{get:o},turns:{get:s},passages:{get:u},hasPlayed:{value:l},active:{get:d},activeIndex:{get:h},passage:{get:f},variables:{get:p},history:{get:m},length:{get:v},size:{get:y},isEmpty:{value:b},current:{get:w},top:{get:k},bottom:{get:S},index:{value:E},peek:{value:x},has:{value:j},create:{value:C},goTo:{value:O},go:{value:T},deltaEncode:{value:A},deltaDecode:{value:P},initPRNG:{value:_},random:{value:N},clearTemporary:{value:D},temporary:{get:M},getVar:{value:L},setVar:{value:I},restart:{value:function(){return Engine.restart()}},backward:{value:function(){return Engine.backward()}},forward:{value:function(){return Engine.forward()}},display:{value:function(){return Engine.display.apply(Engine,arguments)}},show:{value:function(){return Engine.show.apply(Engine,arguments)}},play:{value:function(){return Engine.play.apply(Engine,arguments)}}}))}(),Scripting=function(){function addAccessibleClickHandler(e,t,r,a,n){if(arguments.length<2)throw new Error("addAccessibleClickHandler insufficient number of parameters");var i=void 0,o=void 0;if("function"==typeof t?(i=t,o={namespace:a,one:!!r}):(i=r,o={namespace:n,one:!!a,selector:t}),"function"!=typeof i)throw new TypeError("addAccessibleClickHandler handler parameter must be a function");return jQuery(e).ariaClick(o,i)}function insertElement(e,t,r,a,n,i){var o=jQuery(document.createElement(t));return r&&o.attr("id",r),a&&o.addClass(a),i&&o.attr("title",i),n&&o.text(n),e&&o.appendTo(e),o[0]}function insertText(e,t){jQuery(e).append(document.createTextNode(t))}function removeChildren(e){jQuery(e).empty()}function removeElement(e){jQuery(e).remove()}function fade(e,t){function r(){i+=.05*n,a(o,Math.easeInOut(i)),(1===n&&i>=1||-1===n&&i<=0)&&(e.style.visibility="in"===t.fade?"visible":"hidden",o.parentNode.replaceChild(e,o),o=null,window.clearInterval(s),t.onComplete&&t.onComplete())}function a(e,t){e.style.zoom=1,e.style.filter="alpha(opacity="+Math.floor(100*t)+")",e.style.opacity=t}var n="in"===t.fade?1:-1,i=void 0,o=e.cloneNode(!0),s=void 0;e.parentNode.replaceChild(o,e),"in"===t.fade?(i=0,o.style.visibility="visible"):i=1,a(o,i),s=window.setInterval(r,25)}function scrollWindowTo(e,t){function r(){l+=n,window.scroll(0,i+u*(s*Math.easeInOut(l))),l>=1&&window.clearInterval(c)}function a(e){for(var t=0;e.offsetParent;)t+=e.offsetTop,e=e.offsetParent;return t}var n=null!=t?Number(t):.1;Number.isNaN(n)||!Number.isFinite(n)||n<0?n=.1:n>1&&(n=1);var i=window.scrollY?window.scrollY:document.body.scrollTop,o=function(e){var t=a(e),r=t+e.offsetHeight,n=window.scrollY?window.scrollY:document.body.scrollTop,i=window.innerHeight?window.innerHeight:document.body.clientHeight,o=n+i;return t>=n&&r>o&&e.offsetHeight<i?t-(i-e.offsetHeight)+20:t}(e),s=Math.abs(i-o),u=i>o?-1:1,l=0,c=void 0;c=window.setInterval(r,25)}function either(){if(0!==arguments.length)return Array.prototype.concat.apply([],arguments).random()}function hasVisited(){if(0===arguments.length)throw new Error("hasVisited called with insufficient parameters");if(State.isEmpty())return!1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=0,a=e.length;r<a;++r)if(!t.includes(e[r]))return!1;return!0}function lastVisited(){if(0===arguments.length)throw new Error("lastVisited called with insufficient parameters");if(State.isEmpty())return-1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=t.length-1,a=State.turns,n=0,i=e.length;n<i&&a>-1;++n){var o=t.lastIndexOf(e[n]);a=Math.min(a,-1===o?-1:r-o)}return a}function passage(){return State.passage}function previous(){var e=State.passages;if(arguments.length>0){var t=Number(arguments[0]);if(!Number.isSafeInteger(t)||t<1)throw new RangeError("previous offset parameter must be a positive integer greater than zero");return e.length>t?e[e.length-1-t]:""}for(var r=e.length-2;r>=0;--r)if(e[r]!==State.passage)return e[r];return""}function random(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("random called with insufficient parameters");case 1:e=0,t=Math.trunc(arguments[0]);break;default:e=Math.trunc(arguments[0]),t=Math.trunc(arguments[1])}if(!Number.isInteger(e))throw new Error("random min parameter must be an integer");if(!Number.isInteger(t))throw new Error("random max parameter must be an integer");if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(State.random()*(t-e+1))+e}function randomFloat(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("randomFloat called with insufficient parameters");case 1:e=0,t=Number(arguments[0]);break;default:e=Number(arguments[0]),t=Number(arguments[1])}if(Number.isNaN(e)||!Number.isFinite(e))throw new Error("randomFloat min parameter must be a number");if(Number.isNaN(t)||!Number.isFinite(t))throw new Error("randomFloat max parameter must be a number");if(e>t){var r=[t,e];e=r[0],t=r[1]}return State.random()*(t-e)+e}function tags(){if(0===arguments.length)return Story.get(State.passage).tags.slice(0);for(var e=Array.prototype.concat.apply([],arguments),t=[],r=0,a=e.length;r<a;++r)t=t.concat(Story.get(e[r]).tags);return t}function temporary(){return State.temporary}function time(){return null===Engine.lastPlay?0:Util.now()-Engine.lastPlay}function turns(){return State.turns}function variables(){return State.variables}function visited(){if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],0===arguments.length?[State.passage]:arguments),t=State.passages,r=State.turns,a=0,n=e.length;a<n&&r>0;++a)r=Math.min(r,t.count(e[a]));return r}function visitedTags(){if(0===arguments.length)throw new Error("visitedTags called with insufficient parameters");if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],arguments),t=e.length,r=State.passages,a=new Map,n=0,i=0,o=r.length;i<o;++i){var s=r[i];if(a.has(s))a.get(s)&&++n;else{var u=Story.get(s).tags;if(u.length>0){for(var l=0,c=0;c<t;++c)u.includes(e[c])&&++l;l===t?(++n,a.set(s,!0)):a.set(s,!1)}}}return n}function evalJavaScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,String(code),output)}function evalTwineScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,parse(String(code)),output)}var _ref8=function(){function e(e){return e.reduce(function(e,t){return e=e.then(t)},Promise.resolve())}function t(e){return Util.parseUrl(e).path.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w]+/g,"-").toLocaleLowerCase()}function r(){function r(e){return new Promise(function(r,a){jQuery(document.createElement("script")).one("load abort error",function(e){jQuery(e.target).off(),"load"===e.type?r(e.target):a(e.target)}).appendTo(document.head).attr({id:"script-imported-"+t(e),type:"text/javascript",src:e})})}for(var a=arguments.length,n=Array(a),i=0;i<a;i++)n[i]=arguments[i];return Promise.all(n.map(function(t){return Array.isArray(t)?e(t.map(function(e){return function(){return r(e)}})):r(t)}))}function a(){function r(e){return new Promise(function(r,a){jQuery(document.createElement("link")).one("load abort error",function(e){jQuery(e.target).off(),"load"===e.type?r(e.target):a(e.target)}).appendTo(document.head).attr({id:"style-imported-"+t(e),rel:"stylesheet",href:e})})}for(var a=arguments.length,n=Array(a),i=0;i<a;i++)n[i]=arguments[i];return Promise.all(n.map(function(t){return Array.isArray(t)?e(t.map(function(e){return function(){return r(e)}})):r(t)}))}return{importScripts:r,importStyles:a}}(),importScripts=_ref8.importScripts,importStyles=_ref8.importStyles,parse=function(){function e(e){if(0!==r.lastIndex)throw new RangeError("Scripting.parse last index is non-zero at start");for(var n=e,i=void 0;null!==(i=r.exec(n));)if(i[5]){var o=i[5];if("$"===o||"_"===o)continue;if(a.test(o))o=o[0];else if("is"===o){var s=r.lastIndex,u=n.slice(s);/^\s+not\b/.test(u)&&(n=n.splice(s,u.search(/\S/)),o="isnot")}t.hasOwnProperty(o)&&(n=n.splice(i.index,o.length,t[o]),r.lastIndex+=t[o].length-o.length)}return n}var t=Object.freeze({$:"State.variables.",_:"State.temporary.",to:"=",eq:"==",neq:"!=",is:"===",isnot:"!==",gt:">",gte:">=",lt:"<",lte:"<=",and:"&&",or:"||",not:"!",def:'"undefined" !== typeof',ndef:'"undefined" === typeof'}),r=new RegExp(["(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","([=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}]+)","([^\"'=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}\\s]+)"].join("|"),"g"),a=new RegExp("^"+Patterns.variable);return e}();return Object.freeze(Object.defineProperties({},{parse:{value:parse},evalJavaScript:{value:evalJavaScript},evalTwineScript:{value:evalTwineScript}}))}(),Wikifier=function(){var e=0,t=function(){function t(r,a,n){_classCallCheck(this,t),t.Parser.Profile.isEmpty()&&t.Parser.Profile.compile(),Object.defineProperties(this,{source:{value:String(a)},options:{writable:!0,value:Object.assign({profile:"all"},n)},nextMatch:{writable:!0,value:0},output:{writable:!0,value:null},_rawArgs:{writable:!0,value:""}}),null==r?this.output=document.createDocumentFragment():r.jquery?this.output=r[0]:this.output=r;try{++e,this.subWikify(this.output),1===e&&Config.cleanupWikifierOutput&&convertBreaks(this.output)}finally{--e}}return _createClass(t,[{key:"subWikify",value:function(e,r,a){var n=this.output,i=void 0;this.output=e,null!=a&&"object"===(void 0===a?"undefined":_typeof(a))&&(i=this.options,this.options=Object.assign({},this.options,a));var o=t.Parser.Profile.get(this.options.profile),s=r?new RegExp("(?:"+r+")",this.options.ignoreTerminatorCase?"gim":"gm"):null,u=void 0,l=void 0;do{if(o.parserRegExp.lastIndex=this.nextMatch,s&&(s.lastIndex=this.nextMatch),l=o.parserRegExp.exec(this.source),(u=s?s.exec(this.source):null)&&(!l||u.index<=l.index))return u.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,u.index),this.matchStart=u.index,this.matchLength=u[0].length,this.matchText=u[0],this.nextMatch=s.lastIndex,this.output=n,void(i&&(this.options=i));if(l){l.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,l.index),this.matchStart=l.index,this.matchLength=l[0].length,this.matchText=l[0],this.nextMatch=o.parserRegExp.lastIndex;for(var c=void 0,d=1,h=l.length;d<h;++d)if(l[d]){c=d-1;break}if(o.parsers[c].handler(this),null!=TempState.break)break}}while(u||l);null==TempState.break?this.nextMatch<this.source.length&&(this.outputText(this.output,this.nextMatch,this.source.length),this.nextMatch=this.source.length):this.output.lastChild&&this.output.lastChild.nodeType===Node.ELEMENT_NODE&&"BR"===this.output.lastChild.nodeName.toUpperCase()&&jQuery(this.output.lastChild).remove(),this.output=n,i&&(this.options=i)}},{key:"outputText",value:function(e,t,r){jQuery(e).append(document.createTextNode(this.source.substring(t,r)))}},{key:"rawArgs",value:function(){return this._rawArgs}},{key:"fullArgs",value:function(){return Scripting.parse(this._rawArgs)}}],[{key:"wikifyEval",value:function(e){var r=document.createDocumentFragment();new t(r,e);var a=r.querySelector(".error");if(null!==a)throw new Error(a.textContent.replace(errorPrologRegExp,""));return r}},{key:"createInternalLink",value:function(e,t,r,a){var n=jQuery(document.createElement("a"));return null!=t&&(n.attr("data-passage",t),Story.has(t)?(n.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(t)&&n.addClass("link-visited")):n.addClass("link-broken"),n.ariaClick({one:!0},function(){"function"==typeof a&&a(),Engine.play(t)})),r&&n.append(document.createTextNode(r)),e&&n.appendTo(e),n[0]}},{key:"createExternalLink",value:function(e,t,r){var a=jQuery(document.createElement("a")).attr("target","_blank").addClass("link-external").text(r).appendTo(e);return null!=t&&a.attr({href:t,tabindex:0}),a[0]}},{key:"isExternalLink",value:function(e){return!Story.has(e)&&(new RegExp("^"+Patterns.url,"gim").test(e)||/[\/.?#]/.test(e))}}]),t}();return Object.defineProperty(t,"Parser",{value:function(){function e(){return d}function t(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("Wikifier.Parser.add parser parameter must be an object");if(!e.hasOwnProperty("name"))throw new Error('parser object missing required "name" property');if("string"!=typeof e.name)throw new Error('parser object "name" property must be a string');if(!e.hasOwnProperty("match"))throw new Error('parser object missing required "match" property');if("string"!=typeof e.match)throw new Error('parser object "match" property must be a string');if(!e.hasOwnProperty("handler"))throw new Error('parser object missing required "handler" property');if("function"!=typeof e.handler)throw new Error('parser object "handler" property must be a function');if(e.hasOwnProperty("profiles")&&!Array.isArray(e.profiles))throw new Error('parser object "profiles" property must be an array');if(n(e.name))throw new Error('cannot clobber existing parser "'+e.name+'"');d.push(e)}function r(e){var t=d.find(function(t){return t.name===e});t&&d.delete(t)}function a(){return 0===d.length}function n(e){return!!d.find(function(t){return t.name===e})}function i(e){return d.find(function(t){return t.name===e})||null}function o(){return h}function s(){var e=d,t=e.filter(function(e){return!Array.isArray(e.profiles)||e.profiles.includes("core")});return h=Object.freeze({all:{parsers:e,parserRegExp:new RegExp(e.map(function(e){return"("+e.match+")"}).join("|"),"gm")},core:{parsers:t,parserRegExp:new RegExp(t.map(function(e){return"("+e.match+")"}).join("|"),"gm")}})}function u(){return"object"!==(void 0===h?"undefined":_typeof(h))||0===Object.keys(h).length}function l(e){if("object"!==(void 0===h?"undefined":_typeof(h))||!h.hasOwnProperty(e))throw new Error('nonexistent parser profile "'+e+'"');return h[e]}function c(e){return"object"===(void 0===h?"undefined":_typeof(h))&&h.hasOwnProperty(e)}var d=[],h=void 0;return Object.freeze(Object.defineProperties({},{parsers:{get:e},add:{value:t},delete:{value:r},isEmpty:{value:a},has:{value:n},get:{value:i},Profile:{value:Object.freeze(Object.defineProperties({},{profiles:{get:o},compile:{value:s},isEmpty:{value:u},has:{value:c},get:{value:l}}))}}))}()}),Object.defineProperties(t,{helpers:{value:{}},getValue:{value:State.getVar},setValue:{value:State.setVar},parse:{value:Scripting.parse},evalExpression:{value:Scripting.evalTwineScript},evalStatements:{value:Scripting.evalTwineScript},textPrimitives:{value:Patterns}}),Object.defineProperties(t.helpers,{inlineCss:{value:function(){function e(e){var r={classes:[],id:"",styles:{}},a=void 0;do{t.lastIndex=e.nextMatch;var n=t.exec(e.source);a=n&&n.index===e.nextMatch,a&&(n[1]?r.styles[Util.fromCssProperty(n[1])]=n[2].trim():n[3]?r.styles[Util.fromCssProperty(n[3])]=n[4].trim():n[5]?r.classes=r.classes.concat(n[5].slice(1).split(/\./)):n[6]&&(r.id=n[6].slice(1).split(/#/).pop()),e.nextMatch=t.lastIndex)}while(a);return r}var t=new RegExp(Patterns.inlineCss,"gm");return e}()},evalText:{value:function(e){var t=void 0;try{t=Scripting.evalTwineScript(e),null==t||"function"==typeof t?t=e:(t=String(t),/\[(?:object(?:\s+[^\]]+)?|native\s+code)\]/.test(t)&&(t=e))}catch(r){t=e}return t}},evalPassageId:{value:function(e){return null==e||Story.has(e)?e:t.helpers.evalText(e)}},hasBlockContext:{value:function(e){for(var t="function"==typeof window.getComputedStyle,r=e.length-1;r>=0;--r){var a=e[r];switch(a.nodeType){case Node.ELEMENT_NODE:var n=a.nodeName.toUpperCase();if("BR"===n)return!0;var i=t?window.getComputedStyle(a,null):a.currentStyle;if(i&&i.display){if("none"===i.display)continue;return"block"===i.display}switch(n){case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":return!0}return!1;case Node.COMMENT_NODE:continue;default:return!1}}return!0}},createShadowSetterCallback:{value:function(){function e(){if(!n&&!(n=t.Parser.get("macro")))throw new Error('cannot find "macro" parser');return n}function r(){for(var t=n||e(),r=new Set,a=t.context;null!==a;a=a.parent)a._shadows&&a._shadows.forEach(function(e){return r.add(e)});return[].concat(_toConsumableArray(r))}function a(e){var t={};return r().forEach(function(e){var r=e.slice(1),a="$"===e[0]?State.variables:State.temporary;t[e]=a[r]}),function(){var r=Object.keys(t),a=r.length>0?{}:null;try{return r.forEach(function(e){var r=e.slice(1),n="$"===e[0]?State.variables:State.temporary;n.hasOwnProperty(r)&&(a[r]=n[r]),n[r]=t[e]}),Scripting.evalJavaScript(e)}finally{r.forEach(function(e){var r=e.slice(1),n="$"===e[0]?State.variables:State.temporary;t[e]=n[r],a.hasOwnProperty(r)?n[r]=a[r]:delete n[r]})}}}var n=null;return a}()},parseSquareBracketedMarkup:{value:function(e){function t(){return c>=e.source.length?s:e.source[c]}function r(t){return t<1||c+t>=e.source.length?s:e.source[c+t]}function a(){return{error:String.format.apply(String,arguments),pos:c}}function n(){l=c}function i(t){var r=e.source.slice(l,c).trim();if(""===r)throw new Error("malformed wiki "+(f?"link":"image")+", empty "+t+" component");"link"===t&&"~"===r[0]?(u.forceInternal=!0,u.link=r.slice(1)):u[t]=r,l=c}function o(e){++c;e:for(;;){switch(t()){case"\\":++c;var r=t();if(r!==s&&"\n"!==r)break;case s:case"\n":return s;case e:break e}++c}return c}var s=-1,u={},l=e.matchStart,c=l+1,d=void 0,h=void 0,f=void 0,p=void 0;if("["===(p=t()))f=u.isLink=!0;else{switch(f=!1,p){case"<":u.align="left",++c;break;case">":u.align="right",++c}if(!/^[Ii][Mm][Gg]$/.test(e.source.slice(c,c+3)))return a("malformed square-bracketed wiki markup");c+=3,u.isImage=!0}if("["!==function(){return c>=e.source.length?s:e.source[c++]}())return a("malformed wiki {0}",f?"link":"image");d=1,h=0,n();try{e:for(;;){switch(p=t()){case s:case"\n":return a("unterminated wiki {0}",f?"link":"image");case'"':if(o(p)===s)return a("unterminated double quoted string in wiki {0}",f?"link":"image");break;case"'":if((4===h||3===h&&f)&&o(p)===s)return a("unterminated single quoted string in wiki {0}",f?"link":"image");break;case"|":0===h&&(i(f?"text":"title"),++l,h=1);break;case"-":0===h&&">"===r(1)&&(i(f?"text":"title"),++c,l+=2,h=1);break;case"<":0===h&&"-"===r(1)&&(i(f?"link":"source"),++c,l+=2,h=2);break;case"[":if(-1===h)return a("unexpected left square bracket '['");++d,1===d&&(n(),++l);break;case"]":if(0===--d){switch(h){case 0:case 1:i(f?"link":"source"),h=3;break;case 2:i(f?"text":"title"),h=3;break;case 3:f?(i("setter"),h=-1):(i("link"),h=4);break;case 4:i("setter"),h=-1}if(++c,"]"===t()){++c;break e}--c}}++c}}catch(e){return a(e.message)}return u.pos=c,u}}}),t}();!function(){function e(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createDocumentFragment()).append(t[1]).appendTo(e.output))}Wikifier.Parser.add({name:"quoteByBlock",profiles:["block"],match:"^<<<\\n",terminator:"^<<<\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.subWikify(jQuery(document.createElement("blockquote")).appendTo(e.output).get(0),this.terminator)}}),Wikifier.Parser.add({name:"quoteByLine",profiles:["block"],match:"^>+",lookahead:/^>+/gm,terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=[e.output],r=0,a=e.matchLength,n=void 0,i=void 0;do{if(a>r)for(i=r;i<a;++i)t.push(jQuery(document.createElement("blockquote")).appendTo(t[t.length-1]).get(0));else if(a<r)for(i=r;i>a;--i)t.pop();r=a,e.subWikify(t[t.length-1],this.terminator),jQuery(document.createElement("br")).appendTo(t[t.length-1]),this.lookahead.lastIndex=e.nextMatch;var o=this.lookahead.exec(e.source);n=o&&o.index===e.nextMatch,n&&(a=o[0].length,e.nextMatch+=o[0].length)}while(n)}}),Wikifier.Parser.add({name:"macro",profiles:["core"],match:"<<",lookahead:new RegExp("<<(/?"+Patterns.macroName+")(?:\\s*)((?:(?:\"(?:\\\\.|[^\"\\\\])*\")|(?:'(?:\\\\.|[^'\\\\])*')|(?:\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)|[^>]|(?:>(?!>)))*)>>","gm"),argsPattern:["(``)","`((?:\\\\.|[^`\\\\])+)`","(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","(\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)","([^`\"'\\s]+)","(`|\"|')"].join("|"),working:{source:"",name:"",arguments:"",index:0},context:null,handler:function(e){var t=this.lookahead.lastIndex=e.matchStart;if(this.parseTag(e)){var r=e.nextMatch,a=this.working.source,n=this.working.name,i=this.working.arguments,o=void 0;try{if(!(o=Macro.get(n))){if(Macro.tags.has(n)){var s=Macro.tags.get(n);return throwError(e.output,"child tag <<"+n+">> was found outside of a call to its parent macro"+(1===s.length?"":"s")+" <<"+s.join(">>, <<")+">>",e.source.slice(t,e.nextMatch))}return throwError(e.output,"macro <<"+n+">> does not exist",e.source.slice(t,e.nextMatch))}var u=null;if(o.hasOwnProperty("tags")&&!(u=this.parseBody(e,o)))return e.nextMatch=r,throwError(e.output,"cannot find a closing tag for macro <<"+n+">>",e.source.slice(t,e.nextMatch)+"…");if("function"!=typeof o.handler)return throwError(e.output,"macro <<"+n+">> handler function "+(o.hasOwnProperty("handler")?"is not a function":"does not exist"),e.source.slice(t,e.nextMatch));var l=u?u[0].args:this.createArgs(i,o.hasOwnProperty("skipArgs")&&!!o.skipArgs||o.hasOwnProperty("skipArg0")&&!!o.skipArg0);if(o.hasOwnProperty("_MACRO_API")){this.context=new MacroContext({macro:o,name:n,args:l,payload:u,source:a,parent:this.context,parser:e});try{o.handler.call(this.context)}finally{this.context=this.context.parent}}else{var c=e._rawArgs;e._rawArgs=i;try{o.handler(e.output,n,l,e,u)}finally{e._rawArgs=c}}}catch(r){return throwError(e.output,"cannot execute "+(o&&o.isWidget?"widget":"macro")+" <<"+n+">>: "+r.message,e.source.slice(t,e.nextMatch))}finally{this.working.source="",this.working.name="",this.working.arguments="",this.working.index=0}}else e.outputText(e.output,e.matchStart,e.nextMatch)},parseTag:function(e){var t=this.lookahead.exec(e.source);return!(!t||t.index!==e.matchStart||!t[1])&&(e.nextMatch=this.lookahead.lastIndex,this.working.source=e.source.slice(t.index,this.lookahead.lastIndex),this.working.name=t[1],this.working.arguments=t[2],this.working.index=t.index,!0)},parseBody:function(e,t){for(var r=this.working.name,a="/"+r,n="end"+r,i=!!Array.isArray(t.tags)&&t.tags,o=[],s=t.hasOwnProperty("skipArgs")&&t.skipArgs,u=t.hasOwnProperty("skipArg0")&&t.skipArg0,l=-1,c=1,d=this.working.source,h=this.working.name,f=this.working.arguments,p=e.nextMatch;-1!==(e.matchStart=e.source.indexOf(this.match,e.nextMatch));)if(this.parseTag(e)){var g=this.working.source,m=this.working.name,v=this.working.arguments,y=this.working.index,b=e.nextMatch;switch(m){case r:++c;break;case n:case a:--c;break;default:if(1===c&&i)for(var w=0,k=i.length;w<k;++w)m===i[w]&&(o.push({source:d,name:h,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(p,y)}),d=g,h=m,f=v,p=b)}if(0===c){o.push({source:d,name:h,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(p,y)}),l=b;break}}else this.lookahead.lastIndex=e.nextMatch=e.matchStart+this.match.length;return-1!==l?(e.nextMatch=l,o):null},createArgs:function(e,t){var r=t?[]:this.parseArgs(e);return Object.defineProperties(r,{raw:{value:e},full:{value:Scripting.parse(e)}}),r},parseArgs:function(e){for(var t=new RegExp(this.argsPattern,"gm"),r=[],a=new RegExp("^"+Patterns.variable),n=void 0;null!==(n=t.exec(e));){var i=void 0;if(n[1])i=undefined;else if(n[2]){i=n[2];try{i=Scripting.evalTwineScript(i)}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}}else if(n[3])i="";else if(n[4]){i=n[4];try{i=Scripting.evalJavaScript(i)}catch(e){throw new Error("unable to parse macro argument '"+i+"': "+e.message)}}else if(n[5]){i=n[5];try{i=Scripting.evalJavaScript(i)}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}}else if(n[6]){i=n[6];var o=Wikifier.helpers.parseSquareBracketedMarkup({source:i,matchStart:0});if(o.hasOwnProperty("error"))throw new Error('unable to parse macro argument "'+i+'": '+o.error);if(o.pos<i.length)throw new Error('unable to parse macro argument "'+i+'": unexpected character(s) "'+i.slice(o.pos)+'" (pos: '+o.pos+")");o.isLink?(i={isLink:!0},i.count=o.hasOwnProperty("text")?2:1,i.link=Wikifier.helpers.evalPassageId(o.link),i.text=o.hasOwnProperty("text")?Wikifier.helpers.evalText(o.text):i.link,i.external=!o.forceInternal&&Wikifier.isExternalLink(i.link),i.setFn=o.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(o.setter)):null):o.isImage&&(i=function(e){var t={source:e,isImage:!0};if("data:"!==e.slice(0,5)&&Story.has(e)){var r=Story.get(e);r.tags.includes("Twine.image")&&(t.source=r.text,t.passage=r.title)}return t}(Wikifier.helpers.evalPassageId(o.source)),o.hasOwnProperty("align")&&(i.align=o.align),o.hasOwnProperty("title")&&(i.title=Wikifier.helpers.evalText(o.title)),o.hasOwnProperty("link")&&(i.link=Wikifier.helpers.evalPassageId(o.link),
+i.external=!o.forceInternal&&Wikifier.isExternalLink(i.link)),i.setFn=o.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(o.setter)):null)}else if(n[7])if(i=n[7],a.test(i))i=State.getVar(i);else if(/^(?:settings|setup)[.[]/.test(i))try{i=Scripting.evalTwineScript(i)}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}else if("null"===i)i=null;else if("undefined"===i)i=undefined;else if("true"===i)i=!0;else if("false"===i)i=!1;else{var s=Number(i);Number.isNaN(s)||(i=s)}else if(n[8]){var u=void 0;switch(n[8]){case"`":u="backquote expression";break;case'"':u="double quoted string";break;case"'":u="single quoted string"}throw new Error("unterminated "+u+" in macro argument string")}r.push(i)}return r}}),Wikifier.Parser.add({name:"prettyLink",profiles:["core"],match:"\\[\\[[^[]",handler:function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var r=Wikifier.helpers.evalPassageId(t.link),a=t.hasOwnProperty("text")?Wikifier.helpers.evalText(t.text):r,n=t.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,i=(Config.debug?new DebugView(e.output,"wiki-link","[[link]]",e.source.slice(e.matchStart,e.nextMatch)):e).output;t.forceInternal||!Wikifier.isExternalLink(r)?Wikifier.createInternalLink(i,r,a,n):Wikifier.createExternalLink(i,r,a)}}),Wikifier.Parser.add({name:"urlLink",profiles:["core"],match:Patterns.url,handler:function(e){e.outputText(Wikifier.createExternalLink(e.output,e.matchText),e.matchStart,e.nextMatch)}}),Wikifier.Parser.add({name:"image",profiles:["core"],match:"\\[[<>]?[Ii][Mm][Gg]\\[",handler:function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var r=void 0;Config.debug&&(r=new DebugView(e.output,"wiki-image",t.hasOwnProperty("link")?"[img[][link]]":"[img[]]",e.source.slice(e.matchStart,e.nextMatch)),r.modes({block:!0}));var a=t.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,n=(Config.debug?r:e).output,i=void 0;if(t.hasOwnProperty("link")){var o=Wikifier.helpers.evalPassageId(t.link);n=t.forceInternal||!Wikifier.isExternalLink(o)?Wikifier.createInternalLink(n,o,null,a):Wikifier.createExternalLink(n,o),n.classList.add("link-image")}if(n=jQuery(document.createElement("img")).appendTo(n).get(0),i=Wikifier.helpers.evalPassageId(t.source),"data:"!==i.slice(0,5)&&Story.has(i)){var s=Story.get(i);s.tags.includes("Twine.image")&&(n.setAttribute("data-passage",s.title),i=s.text)}n.src=i,t.hasOwnProperty("title")&&(n.title=Wikifier.helpers.evalText(t.title)),t.hasOwnProperty("align")&&(n.align=t.align)}}),Wikifier.Parser.add({name:"monospacedByBlock",profiles:["block"],match:"^\\{\\{\\{\\n",lookahead:/^\{\{\{\n((?:^[^\n]*\n)+?)(^\}\}\}$\n?)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);if(t&&t.index===e.matchStart){var r=jQuery(document.createElement("pre"));jQuery(document.createElement("code")).text(t[1]).appendTo(r),r.appendTo(e.output),e.nextMatch=this.lookahead.lastIndex}}}),Wikifier.Parser.add({name:"formatByChar",profiles:["core"],match:"''|//|__|\\^\\^|~~|==|\\{\\{\\{",handler:function(e){switch(e.matchText){case"''":e.subWikify(jQuery(document.createElement("strong")).appendTo(e.output).get(0),"''");break;case"//":e.subWikify(jQuery(document.createElement("em")).appendTo(e.output).get(0),"//");break;case"__":e.subWikify(jQuery(document.createElement("u")).appendTo(e.output).get(0),"__");break;case"^^":e.subWikify(jQuery(document.createElement("sup")).appendTo(e.output).get(0),"\\^\\^");break;case"~~":e.subWikify(jQuery(document.createElement("sub")).appendTo(e.output).get(0),"~~");break;case"==":e.subWikify(jQuery(document.createElement("s")).appendTo(e.output).get(0),"==");break;case"{{{":var t=/\{\{\{((?:.|\n)*?)\}\}\}/gm;t.lastIndex=e.matchStart;var r=t.exec(e.source);r&&r.index===e.matchStart&&(jQuery(document.createElement("code")).text(r[1]).appendTo(e.output),e.nextMatch=t.lastIndex)}}}),Wikifier.Parser.add({name:"customStyle",profiles:["core"],match:"@@",terminator:"@@",blockRegExp:/\s*\n/gm,handler:function(e){var t=Wikifier.helpers.inlineCss(e);this.blockRegExp.lastIndex=e.nextMatch;var r=this.blockRegExp.exec(e.source),a=r&&r.index===e.nextMatch,n=jQuery(document.createElement(a?"div":"span")).appendTo(e.output);0===t.classes.length&&""===t.id&&0===Object.keys(t.styles).length?n.addClass("marked"):(t.classes.forEach(function(e){return n.addClass(e)}),""!==t.id&&n.attr("id",t.id),n.css(t.styles)),a?(e.nextMatch+=r[0].length,e.subWikify(n[0],"\\n?"+this.terminator)):e.subWikify(n[0],this.terminator)}}),Wikifier.Parser.add({name:"verbatimText",profiles:["core"],match:'"{3}|<[Nn][Oo][Ww][Ii][Kk][Ii]>',lookahead:/(?:"{3}((?:.|\n)*?)"{3})|(?:<[Nn][Oo][Ww][Ii][Kk][Ii]>((?:.|\n)*?)<\/[Nn][Oo][Ww][Ii][Kk][Ii]>)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createElement("span")).addClass("verbatim").text(t[1]||t[2]).appendTo(e.output))}}),Wikifier.Parser.add({name:"horizontalRule",profiles:["core"],match:"^----+$\\n?|<[Hh][Rr]\\s*/?>\\n?",handler:function(e){jQuery(document.createElement("hr")).appendTo(e.output)}}),Wikifier.Parser.add({name:"emdash",profiles:["core"],match:"--",handler:function(e){jQuery(document.createTextNode("—")).appendTo(e.output)}}),Wikifier.Parser.add({name:"doubleDollarSign",profiles:["core"],match:"\\${2}",handler:function(e){jQuery(document.createTextNode("$")).appendTo(e.output)}}),Wikifier.Parser.add({name:"nakedVariable",profiles:["core"],match:Patterns.variable+"(?:(?:\\."+Patterns.identifier+")|(?:\\[\\d+\\])|(?:\\[\"(?:\\\\.|[^\"\\\\])+\"\\])|(?:\\['(?:\\\\.|[^'\\\\])+'\\])|(?:\\["+Patterns.variable+"\\]))*",handler:function(e){var t=toStringOrDefault(State.getVar(e.matchText),null);null===t?jQuery(document.createTextNode(e.matchText)).appendTo(e.output):new Wikifier((Config.debug?new DebugView(e.output,"variable",e.matchText,e.matchText):e).output,t)}}),Wikifier.Parser.add({name:"heading",profiles:["block"],match:"^!{1,6}",terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.subWikify(jQuery(document.createElement("h"+e.matchLength)).appendTo(e.output).get(0),this.terminator)}}),Wikifier.Parser.add({name:"table",profiles:["block"],match:"^\\|(?:[^\\n]*)\\|(?:[fhck]?)$",lookahead:/^\|([^\n]*)\|([fhck]?)$/gm,rowTerminator:"\\|(?:[cfhk]?)$\\n?",cellPattern:"(?:\\|([^\\n\\|]*)\\|)|(\\|[cfhk]?$\\n?)",cellTerminator:"(?:\\u0020*)\\|",rowTypes:{c:"caption",f:"tfoot",h:"thead","":"tbody"},handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=jQuery(document.createElement("table")).appendTo(e.output).get(0),r=[],a=null,n=null,i=0,o=void 0;e.nextMatch=e.matchStart;do{this.lookahead.lastIndex=e.nextMatch;var s=this.lookahead.exec(e.source);if(o=s&&s.index===e.nextMatch){var u=s[2];"k"===u?(t.className=s[1],e.nextMatch+=s[0].length+1):(u!==a&&(a=u,n=jQuery(document.createElement(this.rowTypes[u])).appendTo(t)),"c"===a?(n.css("caption-side",0===i?"top":"bottom"),e.nextMatch+=1,e.subWikify(n[0],this.rowTerminator)):this.rowHandler(e,jQuery(document.createElement("tr")).appendTo(n).get(0),r),++i)}}while(o)},rowHandler:function(e,t,r){var a=this,n=new RegExp(this.cellPattern,"gm"),i=0,o=1,s=void 0;do{n.lastIndex=e.nextMatch;var u=n.exec(e.source);if(s=u&&u.index===e.nextMatch){if("~"===u[1]){var l=r[i];l&&(++l.rowCount,l.$element.attr("rowspan",l.rowCount).css("vertical-align","middle")),e.nextMatch=u.index+u[0].length-1}else if(">"===u[1])++o,e.nextMatch=u.index+u[0].length-1;else{if(u[2]){e.nextMatch=u.index+u[0].length;break}!function(){++e.nextMatch;for(var n=Wikifier.helpers.inlineCss(e),s=!1,u=!1,l=void 0;" "===e.source.substr(e.nextMatch,1);)s=!0,++e.nextMatch;"!"===e.source.substr(e.nextMatch,1)?(l=jQuery(document.createElement("th")).appendTo(t),++e.nextMatch):l=jQuery(document.createElement("td")).appendTo(t),r[i]={rowCount:1,$element:l},o>1&&(l.attr("colspan",o),o=1),e.subWikify(l[0],a.cellTerminator)," "===e.matchText.substr(e.matchText.length-2,1)&&(u=!0),n.classes.forEach(function(e){return l.addClass(e)}),""!==n.id&&l.attr("id",n.id),s&&u?n.styles["text-align"]="center":s?n.styles["text-align"]="right":u&&(n.styles["text-align"]="left"),l.css(n.styles),e.nextMatch=e.nextMatch-1}()}++i}}while(s)}}),Wikifier.Parser.add({name:"list",profiles:["block"],match:"^(?:(?:\\*+)|(?:#+))",lookahead:/^(?:(\*+)|(#+))/gm,terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.nextMatch=e.matchStart;var t=[e.output],r=null,a=0,n=void 0,i=void 0;do{this.lookahead.lastIndex=e.nextMatch;var o=this.lookahead.exec(e.source);if(n=o&&o.index===e.nextMatch){var s=o[2]?"ol":"ul",u=o[0].length;if(e.nextMatch+=o[0].length,u>a)for(i=a;i<u;++i)t.push(jQuery(document.createElement(s)).appendTo(t[t.length-1]).get(0));else if(u<a)for(i=a;i>u;--i)t.pop();else u===a&&s!==r&&(t.pop(),t.push(jQuery(document.createElement(s)).appendTo(t[t.length-1]).get(0)));a=u,r=s,e.subWikify(jQuery(document.createElement("li")).appendTo(t[t.length-1]).get(0),this.terminator)}}while(n)}}),Wikifier.Parser.add({name:"commentByBlock",profiles:["core"],match:"(?:/(?:%|\\*))|(?:\x3c!--)",lookahead:/(?:\/(%|\*)(?:(?:.|\n)*?)\1\/)|(?:<!--(?:(?:.|\n)*?)-->)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex)}}),Wikifier.Parser.add({name:"lineContinuation",profiles:["core"],match:"\\\\"+Patterns.spaceNoTerminator+"*(?:\\n|$)|(?:^|\\n)"+Patterns.spaceNoTerminator+"*\\\\",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}}),Wikifier.Parser.add({name:"lineBreak",profiles:["core"],match:"\\n|<[Bb][Rr]\\s*/?>",handler:function(e){e.options.nobr||jQuery(document.createElement("br")).appendTo(e.output)}}),Wikifier.Parser.add({name:"htmlCharacterReference",profiles:["core"],match:"(?:(?:&#?[0-9A-Za-z]{2,8};|.)(?:&#?(?:x0*(?:3[0-6][0-9A-Fa-f]|1D[C-Fc-f][0-9A-Fa-f]|20[D-Fd-f][0-9A-Fa-f]|FE2[0-9A-Fa-f])|0*(?:76[89]|7[7-9][0-9]|8[0-7][0-9]|761[6-9]|76[2-7][0-9]|84[0-3][0-9]|844[0-7]|6505[6-9]|6506[0-9]|6507[0-1]));)+|&#?[0-9A-Za-z]{2,8};)",handler:function(e){jQuery(document.createDocumentFragment()).append(e.matchText).appendTo(e.output)}}),Wikifier.Parser.add({name:"xmlProlog",profiles:["core"],match:"<\\?[Xx][Mm][Ll][^>]*\\?>",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}}),Wikifier.Parser.add({name:"verbatimHtml",profiles:["core"],match:"<[Hh][Tt][Mm][Ll]>",lookahead:/<[Hh][Tt][Mm][Ll]>((?:.|\n)*?)<\/[Hh][Tt][Mm][Ll]>/gm,handler:e}),Wikifier.Parser.add({name:"verbatimSvgTag",profiles:["core"],match:"<[Ss][Vv][Gg][^>]*>",lookahead:/(<[Ss][Vv][Gg][^>]*>(?:.|\n)*?<\/[Ss][Vv][Gg]>)/gm,handler:e}),Wikifier.Parser.add({name:"verbatimScriptTag",profiles:["core"],match:"<[Ss][Cc][Rr][Ii][Pp][Tt][^>]*>",lookahead:/(<[Ss][Cc][Rr][Ii][Pp][Tt]*>(?:.|\n)*?<\/[Ss][Cc][Rr][Ii][Pp][Tt]>)/gm,handler:e}),Wikifier.Parser.add({name:"styleTag",profiles:["core"],match:"<[Ss][Tt][Yy][Ll][Ee][^>]*>",lookahead:/(<[Ss][Tt][Yy][Ll][Ee]*>)((?:.|\n)*?)(<\/[Ss][Tt][Yy][Ll][Ee]>)/gm,imageMarkup:new RegExp(Patterns.cssImage,"g"),hasImageMarkup:new RegExp(Patterns.cssImage),handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);if(t&&t.index===e.matchStart){e.nextMatch=this.lookahead.lastIndex;var r=t[2];this.hasImageMarkup.test(r)&&(this.imageMarkup.lastIndex=0,r=r.replace(this.imageMarkup,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var a=Story.get(r);a.tags.includes("Twine.image")&&(r=a.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),jQuery(document.createDocumentFragment()).append(t[1]+r+t[3]).appendTo(e.output)}}}),Wikifier.Parser.add({name:"htmlTag",profiles:["core"],match:"<\\w+(?:\\s+[^\\u0000-\\u001F\\u007F-\\u009F\\s\"'>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*?\"|'[^']*?'|[^\\s\"'=<>`]+))?)*\\s*\\/?>",tagPattern:"<(\\w+)",mediaElements:["audio","img","source","track","video"],nobrElements:["audio","colgroup","datalist","dl","figure","ol","optgroup","picture","select","table","tbody","tfoot","thead","tr","ul","video"],voidElements:["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],handler:function(e){var t=new RegExp(this.tagPattern).exec(e.matchText),r=t&&t[1],a=r&&r.toLowerCase();if(a){var n=this.voidElements.includes(a)||e.matchText.endsWith("/>"),i=this.nobrElements.includes(a),o=void 0,s=void 0;if(!n){o="<\\/"+a+"\\s*>";var u=new RegExp(o,"gim");u.lastIndex=e.matchStart,s=u.exec(e.source)}if(!n&&!s)return throwError(e.output,"cannot find a closing tag for HTML <"+r+">",e.matchText+"…");var l=e.output,c=document.createElement(e.output.tagName),d=void 0;for(c.innerHTML=e.matchText;c.firstChild;)c=c.firstChild;try{this.processAttributeDirectives(c)}catch(t){return throwError(e.output,"<"+a+">: "+t.message,e.matchText+"…")}c.hasAttribute("data-passage")&&(this.processDataAttributes(c,a),Config.debug&&(d=new DebugView(e.output,"html-"+a,a,e.matchText),d.modes({block:"img"===a,nonvoid:s}),l=d.output)),s&&(e.subWikify(c,o,{ignoreTerminatorCase:!0,nobr:i}),d&&jQuery(c).find(".debug.block").length>0&&d.modes({block:!0})),l.appendChild("track"===a?c.cloneNode(!0):c)}},processAttributeDirectives:function(e){[].concat(_toConsumableArray(e.attributes)).forEach(function(t){var r=t.name,a=t.value,n="@"===r[0];if(n||r.startsWith("sc-eval:")){var i=r.slice(n?1:8),o=void 0;try{o=Scripting.evalTwineScript(a)}catch(e){throw new Error('bad evaluation from attribute directive "'+r+'": '+e.message)}try{e.setAttribute(i,o),e.removeAttribute(r)}catch(e){throw new Error('cannot transform attribute directive "'+r+'" into attribute "'+i+'"')}}})},processDataAttributes:function(e,t){var r=e.getAttribute("data-passage");if(null!=r){var a=Wikifier.helpers.evalPassageId(r);if(a!==r&&(r=a,e.setAttribute("data-passage",a)),""!==r)if(this.mediaElements.includes(t)){if("data:"!==r.slice(0,5)&&Story.has(r)){r=Story.get(r);var n=void 0,i=void 0;switch(t){case"audio":case"video":i="Twine."+t;break;case"img":i="Twine.image";break;case"track":i="Twine.vtt";break;case"source":var o=$(e).closest("audio,picture,video");o.length&&(n=o.get(0).tagName.toLowerCase(),i="Twine."+("picture"===n?"image":n))}r.tags.includes(i)&&(e["picture"===n?"srcset":"src"]=r.text.trim())}}else{var s=e.getAttribute("data-setter"),u=void 0;null!=s&&""!==(s=String(s).trim())&&(u=Wikifier.helpers.createShadowSetterCallback(Scripting.parse(s))),Story.has(r)?(e.classList.add("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&e.classList.add("link-visited")):e.classList.add("link-broken"),jQuery(e).ariaClick({one:!0},function(){"function"==typeof u&&u.call(this),Engine.play(r)})}}}})}();var Macro=function(){function e(t,r,n){if(Array.isArray(t))return void t.forEach(function(t){return e(t,r,n)});if(!h.test(t))throw new Error('invalid macro name "'+t+'"');if(a(t))throw new Error("cannot clobber existing macro <<"+t+">>");if(u(t))throw new Error("cannot clobber child tag <<"+t+">> of parent macro"+(1===d[t].length?"":"s")+" <<"+d[t].join(">>, <<")+">>");try{if("object"===(void 0===r?"undefined":_typeof(r)))c[t]=n?clone(r):r;else{if(!a(r))throw new Error("cannot create alias of nonexistent macro <<"+r+">>");c[t]=n?clone(c[r]):c[r]}Object.defineProperty(c,t,{writable:!1}),c[t]._MACRO_API=!0}catch(e){throw"TypeError"===e.name?new Error("cannot clobber protected macro <<"+t+">>"):new Error("unknown error when attempting to add macro <<"+t+">>: ["+e.name+"] "+e.message)}if(c[t].hasOwnProperty("tags"))if(null==c[t].tags)o(t);else{if(!Array.isArray(c[t].tags))throw new Error('bad value for "tags" property of macro <<'+t+">>");o(t,c[t].tags)}}function t(e){if(Array.isArray(e))return void e.forEach(function(e){return t(e)});if(a(e)){c[e].hasOwnProperty("tags")&&s(e);try{Object.defineProperty(c,e,{writable:!0}),delete c[e]}catch(t){throw new Error("unknown error removing macro <<"+e+">>: "+t.message)}}else if(u(e))throw new Error("cannot remove child tag <<"+e+">> of parent macro <<"+d[e]+">>")}function r(){return 0===Object.keys(c).length}function a(e){return c.hasOwnProperty(e)}function n(e){var t=null;return a(e)&&"function"==typeof c[e].handler?t=c[e]:macros.hasOwnProperty(e)&&"function"==typeof macros[e].handler&&(t=macros[e]),t}function i(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"init";Object.keys(c).forEach(function(t){"function"==typeof c[t][e]&&c[t][e](t)}),Object.keys(macros).forEach(function(t){"function"==typeof macros[t][e]&&macros[t][e](t)})}function o(e,t){if(!e)throw new Error("no parent specified");for(var r=["/"+e,"end"+e],n=[].concat(r,Array.isArray(t)?t:[]),i=0;i<n.length;++i){var o=n[i];if(a(o))throw new Error("cannot register tag for an existing macro");u(o)?d[o].includes(e)||(d[o].push(e),d[o].sort()):d[o]=[e]}}function s(e){if(!e)throw new Error("no parent specified");Object.keys(d).forEach(function(t){var r=d[t].indexOf(e);-1!==r&&(1===d[t].length?delete d[t]:d[t].splice(r,1))})}function u(e){return d.hasOwnProperty(e)}function l(e){return u(e)?d[e]:null}var c={},d={},h=new RegExp("^(?:"+Patterns.macroName+")$");return Object.freeze(Object.defineProperties({},{add:{value:e},delete:{value:t},isEmpty:{value:r},has:{value:a},get:{value:n},init:{value:i},tags:{value:Object.freeze(Object.defineProperties({},{register:{value:o},unregister:{value:s},has:{value:u},get:{value:l}}))},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),MacroContext=function(){return function(){function e(t){_classCallCheck(this,e);var r=Object.assign({parent:null,macro:null,name:"",args:null,payload:null,parser:null,source:""},t);if(null===r.macro||""===r.name||null===r.parser)throw new TypeError("context object missing required properties");Object.defineProperties(this,{self:{value:r.macro},name:{value:r.name},args:{value:r.args},payload:{value:r.payload},source:{value:r.source},parent:{value:r.parent},parser:{value:r.parser},_output:{value:r.parser.output},_shadows:{writable:!0,value:null},_debugView:{writable:!0,value:null},_debugViewEnabled:{writable:!0,value:Config.debug}})}return _createClass(e,[{key:"contextHas",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return!0;return!1}},{key:"contextSelect",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return t;return null}},{key:"contextSelectAll",value:function(e){for(var t=[],r=this;null!==(r=r.parent);)e(r)&&t.push(r);return t}},{key:"addShadow",value:function(){var e=this;this._shadows||(this._shadows=new Set);for(var t=new RegExp("^"+Patterns.variable+"$"),r=arguments.length,a=Array(r),n=0;n<r;n++)a[n]=arguments[n];a.flatten().forEach(function(r){if("string"!=typeof r)throw new TypeError("variable name must be a string; type: "+(void 0===r?"undefined":_typeof(r)));if(!t.test(r))throw new Error('invalid variable name "'+r+'"');e._shadows.add(r)})}},{key:"createShadowWrapper",value:function(e,t,r){var a=this,n=void 0;return"function"==typeof e&&(n={},this.shadowView.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;n[e]=r[t]})),function(){for(var i=arguments.length,o=Array(i),s=0;s<i;s++)o[s]=arguments[s];if("function"==typeof r&&r.apply(this,o),"function"==typeof e){var u=Object.keys(n),l=u.length>0?{}:null,c=Wikifier.Parser.get("macro"),d=void 0;try{u.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;r.hasOwnProperty(t)&&(l[t]=r[t]),r[t]=n[e]}),d=c.context,c.context=a,e.apply(this,o)}finally{d!==undefined&&(c.context=d),u.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;n[e]=r[t],l.hasOwnProperty(t)?r[t]=l[t]:delete r[t]})}}"function"==typeof t&&t.apply(this,o)}}},{key:"createDebugView",value:function(e,t){return this._debugView=new DebugView(this._output,"macro",e||this.name,t||this.source),null!==this.payload&&this.payload.length>0&&this._debugView.modes({nonvoid:!0}),this._debugViewEnabled=!0,this._debugView}},{key:"removeDebugView",value:function(){null!==this._debugView&&(this._debugView.remove(),this._debugView=null),this._debugViewEnabled=!1}},{key:"error",value:function(e,t){return throwError(this._output,"<<"+this.name+">>: "+e,t||this.source)}},{key:"output",get:function(){return this._debugViewEnabled?this.debugView.output:this._output}},{key:"shadows",get:function(){return[].concat(_toConsumableArray(this._shadows))}},{key:"shadowView",get:function(){var e=new Set;return this.contextSelectAll(function(e){return e._shadows}).forEach(function(t){return t._shadows.forEach(function(t){return e.add(t)})}),[].concat(_toConsumableArray(e))}},{key:"debugView",get:function(){return this._debugViewEnabled?null!==this._debugView?this._debugView:this.createDebugView():null}}]),e}()}();!function(){if(Macro.add("capture",{skipArgs:!0,tags:null,handler:function(){if(0===this.args.raw.length)return this.error("no story/temporary variable list specified");var e={};try{for(var t=new RegExp("("+Patterns.variable+")","g"),r=void 0;null!==(r=t.exec(this.args.raw));){var a=r[1],n=a.slice(1),i="$"===a[0]?State.variables:State.temporary;i.hasOwnProperty(n)&&(e[n]=i[n]),this.addShadow(a)}new Wikifier(this.output,this.payload[0].contents)}finally{this.shadows.forEach(function(t){var r=t.slice(1),a="$"===t[0]?State.variables:State.temporary;e.hasOwnProperty(r)?a[r]=e[r]:delete a[r]})}}}),Macro.add("set",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("unset",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story/temporary variable list specified");for(var e=new RegExp("State\\.(variables|temporary)\\.("+Patterns.identifier+")","g"),t=void 0;null!==(t=e.exec(this.args.full));){var r=State[t[1]],a=t[2];r.hasOwnProperty(a)&&delete r[a]}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("remember",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}for(var e=storage.get("remember")||{},t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0;null!==(r=t.exec(this.args.full));){var a=r[1];e[a]=State.variables[a]}if(!storage.set("remember",e))return this.error("unknown error, cannot remember: "+this.args.raw);Config.debug&&this.debugView.modes({hidden:!0})},init:function(){var e=storage.get("remember");e&&Object.keys(e).forEach(function(t){return State.variables[t]=e[t]})}}),Macro.add("forget",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story variable list specified");for(var e=storage.get("remember"),t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0,a=!1;null!==(r=t.exec(this.args.full));){var n=r[1];State.variables.hasOwnProperty(n)&&delete State.variables[n],e&&e.hasOwnProperty(n)&&(a=!0,delete e[n])}if(a&&!storage.set("remember",e))return this.error("unknown error, cannot update remember store");Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("run","set"),Macro.add("script",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();try{Scripting.evalJavaScript(this.payload[0].contents,e),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e),this.source+this.payload[0].contents+"<</"+this.name+">>")}e.hasChildNodes()&&this.output.appendChild(e)}}),Macro.add("include",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');Config.debug&&this.debugView.modes({block:!0}),e=Story.get(e);var t=void 0;t=this.args[1]?jQuery(document.createElement(this.args[1])).addClass(e.domId+" macro-"+this.name).attr("data-passage",e.title).appendTo(this.output):jQuery(this.output),t.wiki(e.processText())}}),Macro.add("nobr",{skipArgs:!0,tags:null,handler:function(){new Wikifier(this.output,this.payload[0].contents.replace(/^\n+|\n+$/g,"").replace(/\n+/g," "))}}),Macro.add(["print","=","-"],{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{var e=toStringOrDefault(Scripting.evalJavaScript(this.args.full),null);null!==e&&new Wikifier(this.output,"-"===this.name?Util.escape(e):e)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}}}),Macro.add("silently",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();if(new Wikifier(e,this.payload[0].contents.trim()),Config.debug)this.debugView.modes({hidden:!0}),this.output.appendChild(e);else{var t=[].concat(_toConsumableArray(e.querySelectorAll(".error"))).map(function(e){return e.textContent});if(t.length>0)return this.error("error"+(1===t.length?"":"s")+" within contents ("+t.join("; ")+")",this.source+this.payload[0].contents+"<</"+this.name+">>")}}}),Macro.add("display","include"),Macro.add("if",{skipArgs:!0,tags:["elseif","else"],handler:function(){var e=void 0;try{var t=this.payload.length;for(e=0;e<t;++e)switch(this.payload[e].name){case"else":if(this.payload[e].args.raw.length>0)return/^\s*if\b/i.test(this.payload[e].args.raw)?this.error('whitespace is not allowed between the "else" and "if" in <<elseif>> clause'+(e>0?" (#"+e+")":"")):this.error("<<else>> does not accept a conditional expression (perhaps you meant to use <<elseif>>), invalid: "+this.payload[e].args.raw);if(e+1!==t)return this.error("<<else>> must be the final clause");break;default:if(0===this.payload[e].args.full.length)return this.error("no conditional expression specified for <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":""));if(Config.macros.ifAssignmentError&&/[^!=&^|<>*\/%+-]=[^=]/.test(this.payload[e].args.full))return this.error("assignment operator found within <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":"")+" (perhaps you meant to use an equality operator: ==, ===, eq, is), invalid: "+this.payload[e].args.raw)}var r=Scripting.evalJavaScript,a=!1;for(e=0;e<t;++e){if(Config.debug&&this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1}),"else"===this.payload[e].name||r(this.payload[e].args.full)){a=!0,new Wikifier(this.output,this.payload[e].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++e;e<t;++e)this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1,hidden:!0,invalid:!0});this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!a,invalid:!a})}}catch(t){return this.error("bad conditional expression in <<"+(0===e?"if":"elseif")+">> clause"+(e>0?" (#"+e+")":"")+": "+("object"===(void 0===t?"undefined":_typeof(t))?t.message:t))}}}),Macro.add("switch",{skipArg0:!0,tags:["case","default"],handler:function(){if(0===this.args.full.length)return this.error("no expression specified");var e=this.payload.length;if(1===e)return this.error("no cases specified");var t=void 0;for(t=1;t<e;++t)switch(this.payload[t].name){case"default":if(this.payload[t].args.length>0)return this.error("<<default>> does not accept values, invalid: "+this.payload[t].args.raw);if(t+1!==e)return this.error("<<default>> must be the final case");break;default:if(0===this.payload[t].args.length)return this.error("no value(s) specified for <<"+this.payload[t].name+">> (#"+t+")")}var r=void 0;try{r=Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}var a=this.debugView,n=!1;for(Config.debug&&a.modes({nonvoid:!1,hidden:!0}),t=1;t<e;++t){if(Config.debug&&this.createDebugView(this.payload[t].name,this.payload[t].source).modes({nonvoid:!1}),"default"===this.payload[t].name||this.payload[t].args.some(function(e){return e===r})){n=!0,new Wikifier(this.output,this.payload[t].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++t;t<e;++t)this.createDebugView(this.payload[t].name,this.payload[t].source).modes({nonvoid:!1,hidden:!0,invalid:!0});a.modes({nonvoid:!1,hidden:!0,invalid:!n}),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0,invalid:!n})}}}),Macro.add("for",{skipArgs:!0,tags:null,_hasRangeRe:new RegExp("^\\S.*?\\s+range\\s+\\S.*?$"),_rangeRe:new RegExp("^(?:State\\.(variables|temporary)\\.("+Patterns.identifier+")\\s*,\\s*)?State\\.(variables|temporary)\\.("+Patterns.identifier+")\\s+range\\s+(\\S.*?)$"),_3PartRe:/^([^;]*?)\s*;\s*([^;]*?)\s*;\s*([^;]*?)$/,handler:function(){var e=this.args.full.trim(),t=this.payload[0].contents.replace(/\n$/,"");if(0===e.length)this.self._handleFor.call(this,t,null,!0,null);else if(this.self._hasRangeRe.test(e)){var r=e.match(this.self._rangeRe);if(null===r)return this.error("invalid range form syntax, format: [index ,] value range collection");this.self._handleForRange.call(this,t,{type:r[1],name:r[2]},{type:r[3],name:r[4]},r[5])}else{var a=void 0,n=void 0,i=void 0;if(-1===e.indexOf(";")){if(/^\S+\s+in\s+\S+/i.test(e))return this.error("invalid syntax, for…in is not supported; see: for…range");if(/^\S+\s+of\s+\S+/i.test(e))return this.error("invalid syntax, for…of is not supported; see: for…range");n=e}else{var o=e.match(this.self._3PartRe);if(null===o)return this.error("invalid 3-part conditional form syntax, format: [init] ; [condition] ; [post]");a=o[1],n=o[2].trim(),i=o[3],0===n.length&&(n=!0)}this.self._handleFor.call(this,t,a,n,i)}},_handleFor:function(e,t,r,a){var n=Scripting.evalJavaScript,i=!0,o=Config.macros.maxLoopIterations;Config.debug&&this.debugView.modes({block:!0});try{if(TempState.break=null,t)try{n(t)}catch(e){return this.error("bad init expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}for(;n(r);){if(--o<0)return this.error("exceeded configured maximum loop iterations ("+Config.macros.maxLoopIterations+")");if(new Wikifier(this.output,i?e.replace(/^\n/,""):e),i&&(i=!1),null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}if(a)try{n(a)}catch(e){return this.error("bad post expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}}}catch(e){return this.error("bad conditional expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}finally{TempState.break=null}},_handleForRange:function(e,t,r,a){var n=!0,i=void 0;try{i=this.self._toRangeList(a)}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});try{TempState.break=null;for(var o=0;o<i.length;++o)if(t.name&&(State[t.type][t.name]=i[o][0]),State[r.type][r.name]=i[o][1],new Wikifier(this.output,n?e.replace(/^\n/,""):e),n&&(n=!1),
+null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}}catch(e){return this.error("object"===(void 0===e?"undefined":_typeof(e))?e.message:e)}finally{TempState.break=null}},_toRangeList:function(e){var t=Scripting.evalJavaScript,r=void 0;try{r=t("{"===e[0]?"("+e+")":e)}catch(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("bad range expression: "+e);throw e.message="bad range expression: "+e.message,e}var a=void 0;switch(void 0===r?"undefined":_typeof(r)){case"string":a=[];for(var n=0;n<r.length;){var i=Util.charAndPosAt(r,n);a.push([n,i.char]),n=1+i.end}break;case"object":if(Array.isArray(r))a=r.map(function(e,t){return[t,e]});else if(r instanceof Set)a=[].concat(_toConsumableArray(r)).map(function(e,t){return[t,e]});else if(r instanceof Map)a=[].concat(_toConsumableArray(r.entries()));else{if("Object"!==Util.toStringTag(r))throw new Error("unsupported range expression type: "+Util.toStringTag(r));a=Object.keys(r).map(function(e){return[e,r[e]]})}break;default:throw new Error("unsupported range expression type: "+(void 0===r?"undefined":_typeof(r)))}return a}}),Macro.add(["break","continue"],{skipArgs:!0,handler:function(){if(!this.contextHas(function(e){return"for"===e.name}))return this.error("must only be used in conjunction with its parent macro <<for>>");TempState.break="continue"===this.name?1:2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add(["button","link"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no "+("button"===this.name?"button":"link")+" text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("button"===this.name?"button":"a")),r=void 0;if("object"===_typeof(this.args[0]))if(this.args[0].isImage){var a=jQuery(document.createElement("img")).attr("src",this.args[0].source).appendTo(t);this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(r=this.args[0].link),r=this.args[0].link}else t.append(document.createTextNode(this.args[0].text)),r=this.args[0].link;else t.wikiWithOptions({profile:"core"},this.args[0]),r=this.args.length>1?this.args[1]:undefined;null!=r?(t.attr("data-passage",r),Story.has(r)?(t.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&t.addClass("link-visited")):t.addClass("link-broken")):t.addClass("link-internal"),t.addClass("macro-"+this.name).ariaClick({namespace:".macros",one:null!=r},this.createShadowWrapper(""!==this.payload[0].contents?function(){return Wikifier.wikifyEval(e.payload[0].contents.trim())}:null,null!=r?function(){return Engine.play(r)}:null)).appendTo(this.output)}}),Macro.add("checkbox",{handler:function(){if(this.args.length<3){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("unchecked value"),this.args.length<3&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),a=this.args[1],n=this.args[2],i=document.createElement("input");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"checkbox",tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.checked?n:a)}).appendTo(this.output),this.args.length>3&&"checked"===this.args[3]?(i.checked=!0,State.setVar(t,n)):State.setVar(t,a)}}),Macro.add(["linkappend","linkprepend","linkreplace"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no link text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("a")),r=jQuery(document.createElement("span")),a=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]);t.wikiWithOptions({profile:"core"},this.args[0]).addClass("link-internal macro-"+this.name).ariaClick({namespace:".macros",one:!0},this.createShadowWrapper(function(){if("linkreplace"===e.name?t.remove():t.wrap('<span class="macro-'+e.name+'"></span>').replaceWith(function(){return t.html()}),""!==e.payload[0].contents){var n=document.createDocumentFragment();new Wikifier(n,e.payload[0].contents),r.append(n)}a&&setTimeout(function(){return r.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)})).appendTo(this.output),r.addClass("macro-"+this.name+"-insert"),a&&r.addClass("macro-"+this.name+"-in"),"linkprepend"===this.name?r.insertBefore(t):r.insertAfter(t)}}),Macro.add("radiobutton",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),a=this.args[1],n=document.createElement("input");TempState.hasOwnProperty(this.name)||(TempState[this.name]={}),TempState[this.name].hasOwnProperty(r)||(TempState[this.name][r]=0),jQuery(n).attr({id:this.name+"-"+r+"-"+TempState[this.name][r]++,name:this.name+"-"+r,type:"radio",tabindex:0}).addClass("macro-"+this.name).on("change",function(){this.checked&&State.setVar(t,a)}).appendTo(this.output),this.args.length>2&&"checked"===this.args[2]&&(n.checked=!0,State.setVar(t,a))}}),Macro.add("textarea",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),a=this.args[1],n="autofocus"===this.args[2],i=document.createElement("textarea");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,rows:4,tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.value)}).appendTo(this.output),State.setVar(t,a),i.textContent=a,n&&(i.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+i.id]=function(e){delete postdisplay[e],setTimeout(function(){return i.focus()},Engine.minDomActionDelay)})}}),Macro.add("textbox",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),a=this.args[1],n=document.createElement("input"),i=!1,o=void 0;this.args.length>3?(o=this.args[2],i="autofocus"===this.args[3]):this.args.length>2&&("autofocus"===this.args[2]?i=!0:o=this.args[2]),"object"===(void 0===o?"undefined":_typeof(o))&&(o=o.link),jQuery(n).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"text",tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.value)}).on("keypress",function(e){13===e.which&&(e.preventDefault(),State.setVar(t,this.value),null!=o&&Engine.play(o))}).appendTo(this.output),State.setVar(t,a),n.value=a,i&&(n.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+n.id]=function(e){delete postdisplay[e],setTimeout(function(){return n.focus()},Engine.minDomActionDelay)})}}),Macro.add("click","link"),Macro.add("actions",{handler:function(){for(var e=jQuery(document.createElement("ul")).addClass(this.name).appendTo(this.output),t=0;t<this.args.length;++t){var r=void 0,a=void 0,n=void 0,i=void 0;"object"===_typeof(this.args[t])?this.args[t].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[t].source),this.args[t].hasOwnProperty("passage")&&n.attr("data-passage",this.args[t].passage),this.args[t].hasOwnProperty("title")&&n.attr("title",this.args[t].title),this.args[t].hasOwnProperty("align")&&n.attr("align",this.args[t].align),r=this.args[t].link,i=this.args[t].setFn):(a=this.args[t].text,r=this.args[t].link,i=this.args[t].setFn):a=r=this.args[t],State.variables.hasOwnProperty("#actions")&&State.variables["#actions"].hasOwnProperty(r)&&State.variables["#actions"][r]||jQuery(Wikifier.createInternalLink(jQuery(document.createElement("li")).appendTo(e),r,null,function(e,t){return function(){State.variables.hasOwnProperty("#actions")||(State.variables["#actions"]={}),State.variables["#actions"][e]=!0,"function"==typeof t&&t()}}(r,i))).addClass("macro-"+this.name).append(n||document.createTextNode(a))}}}),Macro.add(["back","return"],{handler:function(){if(this.args.length>1)return this.error("too many arguments specified, check the documentation for details");var e=-1,t=void 0,r=void 0,a=void 0;if(1===this.args.length&&("object"===_typeof(this.args[0])?this.args[0].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(t=this.args[0].link)):1===this.args[0].count?t=this.args[0].link:(r=this.args[0].text,t=this.args[0].link):1===this.args.length&&(r=this.args[0])),null==t){for(var n=State.length-2;n>=0;--n)if(State.history[n].title!==State.passage){e=n,t=State.history[n].title;break}if(null==t&&"return"===this.name)for(var i=State.expired.length-1;i>=0;--i)if(State.expired[i]!==State.passage){t=State.expired[i];break}}else{if(!Story.has(t))return this.error('passage "'+t+'" does not exist');if("back"===this.name){for(var o=State.length-2;o>=0;--o)if(State.history[o].title===t){e=o;break}if(-1===e)return this.error('cannot find passage "'+t+'" in the current story history')}}if(null==t)return this.error("cannot find passage");var s=void 0;s="back"!==this.name||-1!==e?jQuery(document.createElement("a")).addClass("link-internal").ariaClick({one:!0},"return"===this.name?function(){return Engine.play(t)}:function(){return Engine.goTo(e)}):jQuery(document.createElement("span")).addClass("link-disabled"),s.addClass("macro-"+this.name).append(a||document.createTextNode(r||L10n.get("macro"+this.name.toUpperFirst()+"Text"))).appendTo(this.output)}}),Macro.add("choice",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=State.passage,t=void 0,r=void 0,a=void 0,n=void 0;if(1===this.args.length?"object"===_typeof(this.args[0])?this.args[0].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),t=this.args[0].link,n=this.args[0].setFn):(r=this.args[0].text,t=this.args[0].link,n=this.args[0].setFn):r=t=this.args[0]:(t=this.args[0],r=this.args[1]),State.variables.hasOwnProperty("#choice")&&State.variables["#choice"].hasOwnProperty(e)&&State.variables["#choice"][e])return void jQuery(document.createElement("span")).addClass("link-disabled macro-"+this.name).attr("tabindex",-1).append(a||document.createTextNode(r)).appendTo(this.output);jQuery(Wikifier.createInternalLink(this.output,t,null,function(){State.variables.hasOwnProperty("#choice")||(State.variables["#choice"]={}),State.variables["#choice"][e]=!0,"function"==typeof n&&n()})).addClass("macro-"+this.name).append(a||document.createTextNode(r))}}),Macro.add(["addclass","toggleclass"],{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("selector"),this.args.length<2&&e.push("class names"),this.error("no "+e.join(" or ")+" specified")}var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');switch(this.name){case"addclass":t.addClass(this.args[1].trim());break;case"toggleclass":t.toggleClass(this.args[1].trim())}}}),Macro.add("removeclass",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');this.args.length>1?e.removeClass(this.args[1].trim()):e.removeClass()}}),Macro.add("copy",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');jQuery(this.output).append(e.html())}}),Macro.add(["append","prepend","replace"],{tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no selector specified");var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');if(""!==this.payload[0].contents){var r=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),a=void 0;switch(r?(a=jQuery(document.createElement("span")),a.addClass("macro-"+this.name+"-insert macro-"+this.name+"-in"),setTimeout(function(){return a.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)):a=jQuery(document.createDocumentFragment()),a.wiki(this.payload[0].contents),this.name){case"replace":t.empty();case"append":t.append(a);break;case"prepend":t.prepend(a)}}else"replace"===this.name&&t.empty()}}),Macro.add("remove",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');e.remove()}}),Has.audio){var e=Object.freeze([":not",":all",":looped",":muted",":paused",":playing"]);Macro.add("audio",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track or group IDs"),this.args.length<2&&e.push("actions"),this.error("no "+e.join(" or ")+" specified")}var t=Macro.get("cacheaudio").tracks,r=[];try{var a=function e(r){var a=r.id,o=void 0;switch(a){case":all":o=n;break;case":looped":o=n.filter(function(e){return t[e].isLooped()});break;case":muted":o=n.filter(function(e){return t[e].isMuted()});break;case":paused":o=n.filter(function(e){return t[e].isPaused()});break;case":playing":o=n.filter(function(e){return t[e].isPlaying()});break;default:o=":"===a[0]?i[a]:[a]}if(r.hasOwnProperty("not")){var s=r.not.map(function(t){return e(t)}).flatten();o=o.filter(function(e){return!s.includes(e)})}return o},n=Object.freeze(Object.keys(t)),i=Macro.get("cacheaudio").groups;this.self.parseIds(String(this.args[0]).trim()).forEach(function(e){r.push.apply(r,_toConsumableArray(a(e)))}),r.forEach(function(e){if(!t.hasOwnProperty(e))throw new Error('track "'+e+'" does not exist')})}catch(e){return this.error(e.message)}for(var o=this.args.slice(1),s=void 0,u=void 0,l=void 0,c=void 0,d=void 0,h=void 0,f=5,p=void 0,g=void 0;o.length>0;){var m=o.shift();switch(m){case"play":case"pause":case"stop":s=m;break;case"fadein":s="fade",h=1;break;case"fadeout":s="fade",h=0;break;case"fadeto":if(0===o.length)return this.error("fadeto missing required level value");if(s="fade",g=o.shift(),h=Number.parseFloat(g),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeto: "+g);break;case"fadeoverto":if(o.length<2){var v=[];return o.length<1&&v.push("seconds"),o.length<2&&v.push("level"),this.error("fadeoverto missing required "+v.join(" and ")+" value"+(v.length>1?"s":""))}if(s="fade",g=o.shift(),f=Number.parseFloat(g),Number.isNaN(f)||!Number.isFinite(f))return this.error("cannot parse fadeoverto: "+g);if(g=o.shift(),h=Number.parseFloat(g),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeoverto: "+g);break;case"volume":if(0===o.length)return this.error("volume missing required level value");if(g=o.shift(),u=Number.parseFloat(g),Number.isNaN(u)||!Number.isFinite(u))return this.error("cannot parse volume: "+g);break;case"mute":case"unmute":l="mute"===m;break;case"time":if(0===o.length)return this.error("time missing required seconds value");if(g=o.shift(),c=Number.parseFloat(g),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse time: "+g);break;case"loop":case"unloop":d="loop"===m;break;case"goto":if(0===o.length)return this.error("goto missing required passage title");if(g=o.shift(),p="object"===(void 0===g?"undefined":_typeof(g))?g.link:g,!Story.has(p))return this.error('passage "'+p+'" does not exist');break;default:return this.error("unknown action: "+m)}}try{r.forEach(function(e){var r=t[e];switch(null!=u&&(r.volume=u),null!=c&&(r.time=c),null!=l&&(r.mute=l),null!=d&&(r.loop=d),null!=p&&r.one("end",function(){return Engine.play(p)}),s){case"play":r.play();break;case"pause":r.pause();break;case"stop":r.stop();break;case"fade":r.fadeWithDuration(f,h)}}),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing audio action: "+e.message)}},parseIds:function(e){for(var t=[],r=/:?[^\s:()]+/g,a=void 0;null!==(a=r.exec(e));){var n=a[0];if(":not"===n){if(0===t.length)throw new Error('invalid negation: no group ID preceded ":not()"');var i=t[t.length-1];if(":"!==i.id[0])throw new Error('invalid negation of track "'+i.id+'": only groups may be negated with ":not()"');var o=function(e,t){var r=/\S/g,a=/[()]/g,n=void 0;if(r.lastIndex=t,null===(n=r.exec(e))||"("!==n[0])throw new Error('invalid ":not()" syntax: missing parentheticals');a.lastIndex=r.lastIndex;for(var i=r.lastIndex,o={str:"",nextMatch:-1},s=1;null!==(n=a.exec(e));)if("("===n[0]?++s:--s,s<1){o.nextMatch=a.lastIndex,o.str=e.slice(i,o.nextMatch-1);break}return o}(e,r.lastIndex);if(-1===o.nextMatch)throw new Error('unknown error parsing ":not()"');r.lastIndex=o.nextMatch,i.not=this.parseIds(o.str)}else t.push({id:n})}return t}}),Macro.add("cacheaudio",{tracks:{},groups:{},handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track ID"),this.args.length<2&&e.push("sources"),this.error("no "+e.join(" or ")+" specified")}var t=String(this.args[0]).trim();if(/^:|\s/.test(t))return this.error('invalid track ID "'+t+'": track IDs may not start with a colon or contain whitespace');var r=/^format:\s*([\w-]+)\s*;\s*(\S.*)$/i,a=void 0;try{a=SimpleAudio.create(this.args.slice(1).map(function(e){if("data:"!==e.slice(0,5)&&Story.has(e)){var t=Story.get(e);if(t.tags.includes("Twine.audio"))return t.text.trim()}var a=r.exec(e);return null===a?e:{format:a[1],src:a[2]}}))}catch(e){return this.error('error during track initialization for "'+t+'": '+e.message)}if(Config.debug&&!a.hasSource())return this.error('no supported audio sources found for "'+t+'"');var n=this.self.tracks;n.hasOwnProperty(t)&&n[t].destroy(),n[t]=a,Config.debug&&this.createDebugView()}}),Macro.add("createaudiogroup",{tags:["track"],handler:function(){if(0===this.args.length)return this.error("no group ID specified");var t=String(this.args[0]).trim();if(/^[^:]|\s/.test(t))return this.error('invalid group ID "'+t+'": group IDs must start with a colon and may not contain whitespace');if(e.includes(t))return this.error('cannot clobber special group ID "'+t+'"');if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var r=Macro.get("cacheaudio").tracks,a=[],n=1,i=this.payload.length;n<i;++n){if(this.payload[n].args.length<1)return this.error("no track ID specified");var o=String(this.payload[n].args[0]).trim();if(!r.hasOwnProperty(o))return this.error('track "'+o+'" does not exist');a.push(o),Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0})}var s=Macro.get("cacheaudio").groups;s.hasOwnProperty(t)&&delete s[t],s[t]=a,this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("createplaylist",{tags:["track"],lists:{},handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("playlist");if(null!==e.from&&"createplaylist"!==e.from)return this.error("a playlist has already been defined with <<setplaylist>>");var t=Macro.get("cacheaudio").tracks,r=String(this.args[0]).trim();if(/^:|\s/.test(r))return this.error('invalid list ID "'+r+'": list IDs may not start with a colon or contain whitespace');if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var a=SimpleAudio.createList(),n=1,i=this.payload.length;n<i;++n){if(this.payload[n].args.length<2){var o=[];return this.payload[n].args.length<1&&o.push("track ID"),this.payload[n].args.length<2&&o.push("actions"),this.error("no "+o.join(" or ")+" specified")}var s=String(this.payload[n].args[0]).trim();if(!t.hasOwnProperty(s))return this.error('track "'+s+'" does not exist');for(var u=this.payload[n].args.slice(1),l=!1,c=void 0;u.length>0;){var d=u.shift(),h=void 0;switch(d){case"copy":l=!0;break;case"rate":u.length>0&&u.shift();break;case"volume":if(0===u.length)return this.error("volume missing required level value");if(h=u.shift(),c=Number.parseFloat(h),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse volume: "+h);break;default:return this.error("unknown action: "+d)}}var f=t[s];a.add({copy:l,track:f,volume:null!=c?c:f.volume}),Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0})}var p=this.self.lists;p.hasOwnProperty(r)&&p[r].destroy(),p[r]=a,null===e.from&&(e.from="createplaylist"),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("masteraudio",{handler:function(){if(0===this.args.length)return this.error("no actions specified");for(var e=this.args.slice(0),t=!1,r=void 0,a=void 0;e.length>0;){var n=e.shift(),i=void 0;switch(n){case"stop":t=!0;break;case"mute":case"unmute":r="mute"===n;break;case"volume":if(0===e.length)return this.error("volume missing required level value");if(i=e.shift(),a=Number.parseFloat(i),Number.isNaN(a)||!Number.isFinite(a))return this.error("cannot parse volume: "+i);break;default:return this.error("unknown action: "+n)}}try{null!=r&&(SimpleAudio.mute=r),null!=a&&(SimpleAudio.volume=a),t&&SimpleAudio.stop(),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing master audio action: "+e.message)}}}),Macro.add("playlist",{from:null,handler:function(){var e=this.self.from;if(null===e)return this.error("no playlists have been created");var t=void 0,r=void 0;if("createplaylist"===e){if(this.args.length<2){var a=[];return this.args.length<1&&a.push("list ID"),this.args.length<2&&a.push("actions"),this.error("no "+a.join(" or ")+" specified")}var n=Macro.get("createplaylist").lists,i=String(this.args[0]).trim();if(!n.hasOwnProperty(i))return this.error('playlist "'+i+'" does not exist');t=n[i],r=this.args.slice(1)}else{if(0===this.args.length)return this.error("no actions specified");t=Macro.get("setplaylist").list,r=this.args.slice(0)}for(var o=void 0,s=void 0,u=void 0,l=void 0,c=void 0,d=void 0,h=5,f=void 0;r.length>0;){var p=r.shift();switch(p){case"play":case"pause":case"stop":case"skip":o=p;break;case"fadein":o="fade",d=1;break;case"fadeout":o="fade",d=0;break;case"fadeto":if(0===r.length)return this.error("fadeto missing required level value");if(o="fade",f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeto: "+f);break;case"fadeoverto":if(r.length<2){var g=[];return r.length<1&&g.push("seconds"),r.length<2&&g.push("level"),this.error("fadeoverto missing required "+g.join(" and ")+" value"+(g.length>1?"s":""))}if(o="fade",f=r.shift(),h=Number.parseFloat(f),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeoverto: "+f);if(f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeoverto: "+f);break;case"volume":if(0===r.length)return this.error("volume missing required level value");if(f=r.shift(),s=Number.parseFloat(f),Number.isNaN(s)||!Number.isFinite(s))return this.error("cannot parse volume: "+f);break;case"mute":case"unmute":u="mute"===p;break;case"loop":case"unloop":l="loop"===p;break;case"shuffle":case"unshuffle":c="shuffle"===p;break;default:return this.error("unknown action: "+p)}}try{switch(null!=s&&(t.volume=s),null!=u&&(t.mute=u),null!=l&&(t.loop=l),null!=c&&(t.shuffle=c),o){case"play":t.play();break;case"pause":t.pause();break;case"stop":t.stop();break;case"skip":t.skip();break;case"fade":t.fadeWithDuration(h,d)}Config.debug&&this.createDebugView()}catch(e){return this.error("error playing audio: "+e.message)}}}),Macro.add("removeplaylist",{handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("createplaylist").lists,t=String(this.args[0]).trim();if(!e.hasOwnProperty(t))return this.error('playlist "'+t+'" does not exist');e[t].destroy(),delete e[t],Config.debug&&this.createDebugView()}}),Macro.add("waitforaudio",{skipArgs:!0,queue:[],handler:function(){function e(){if(0===t.length)return LoadScreen.unlock(r);var a=t.shift();if(a.hasData())return e();a.one("canplay.waitforaudio error.waitforaudio",function(){jQuery(this).off(".waitforaudio"),e()}).load()}var t=this.self.queue,r=void 0;t.length>0||(this.self.fillQueue(t),t.length>0&&(r=LoadScreen.lock(),e()))},fillQueue:function(e){var t=Macro.get("cacheaudio").tracks;Object.keys(t).forEach(function(r){return e.push(t[r])});var r=Macro.get("createplaylist").lists;if(Object.keys(r).map(function(e){return r[e].tracks}).flatten().filter(function(e){return e.copy}).forEach(function(t){return e.push(t.track)}),Macro.has("setplaylist")){var a=Macro.get("setplaylist").list;null!==a&&a.tracks.forEach(function(t){return e.push(t.track)})}}}),Macro.add("setplaylist",{list:null,handler:function(){if(0===this.args.length)return this.error("no track ID(s) specified");var e=Macro.get("playlist");if(null!==e.from&&"setplaylist"!==e.from)return this.error("playlists have already been defined with <<createplaylist>>");var t=this.self,r=Macro.get("cacheaudio").tracks;null!==t.list&&t.list.destroy(),t.list=SimpleAudio.createList();for(var a=0;a<this.args.length;++a){var n=this.args[a];if(!r.hasOwnProperty(n))return this.error('track "'+n+'" does not exist');t.list.add(r[n])}null===e.from&&(e.from="setplaylist"),Config.debug&&this.createDebugView()}}),Macro.add("stopallaudio",{skipArgs:!0,handler:function(){var e=Macro.get("cacheaudio").tracks;Object.keys(e).forEach(function(t){return e[t].stop()}),Config.debug&&this.createDebugView()}})}else Macro.add(["audio","cacheaudio","createaudiogroup","createplaylist","masteraudio","playlist","removeplaylist","waitforaudio","setplaylist","stopallaudio"],{skipArgs:!0,handler:function(){}});Macro.add("goto",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');setTimeout(function(){return Engine.play(e)},Engine.minDomActionDelay)}}),Macro.add("repeat",{isAsync:!0,tags:null,timers:new Set,handler:function(){var e=this;if(0===this.args.length)return this.error("no time value specified");var t=void 0;try{t=Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0]))}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});var r=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),a=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerInterval(this.createShadowWrapper(function(){var t=document.createDocumentFragment();new Wikifier(t,e.payload[0].contents);var n=a;r&&(n=jQuery(document.createElement("span")).addClass("macro-repeat-insert macro-repeat-in").appendTo(n)),n.append(t),r&&setTimeout(function(){return n.removeClass("macro-repeat-in")},Engine.minDomActionDelay)}),t)},registerInterval:function(e,t){var r=this;if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var a=State.turns,n=this.timers,i=null;i=setInterval(function(){if(a!==State.turns)return clearInterval(i),void n.delete(i);var t=void 0;try{TempState.break=null,TempState.hasOwnProperty("repeatTimerId")&&(t=TempState.repeatTimerId),TempState.repeatTimerId=i,e.call(r)}finally{void 0!==t?TempState.repeatTimerId=t:delete TempState.repeatTimerId,TempState.break=null}},t),n.add(i),prehistory.hasOwnProperty("#repeat-timers-cleanup")||(prehistory["#repeat-timers-cleanup"]=function(e){delete prehistory[e],n.forEach(function(e){return clearInterval(e)}),n.clear()})}}),Macro.add("stop",{skipArgs:!0,handler:function(){if(!TempState.hasOwnProperty("repeatTimerId"))return this.error("must only be used in conjunction with its parent macro <<repeat>>");var e=Macro.get("repeat").timers,t=TempState.repeatTimerId;clearInterval(t),e.delete(t),TempState.break=2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("timed",{isAsync:!0,tags:["next"],timers:new Set,handler:function(){if(0===this.args.length)return this.error("no time value specified in <<timed>>");var e=[];try{e.push({name:this.name,source:this.source,delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0])),content:this.payload[0].contents})}catch(e){return this.error(e.message+" in <<timed>>")}if(this.payload.length>1){var t=void 0;try{var r=void 0;for(t=1,r=this.payload.length;t<r;++t)e.push({name:this.payload[t].name,source:this.payload[t].source,delay:0===this.payload[t].args.length?e[e.length-1].delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.payload[t].args[0])),content:this.payload[t].contents})}catch(e){return this.error(e.message+" in <<next>> (#"+t+")")}}Config.debug&&this.debugView.modes({block:!0});var a=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),n=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerTimeout(this.createShadowWrapper(function(e){var t=document.createDocumentFragment();new Wikifier(t,e.content);var r=n;Config.debug&&"next"===e.name&&(r=jQuery(new DebugView(r[0],"macro",e.name,e.source).output)),a&&(r=jQuery(document.createElement("span")).addClass("macro-timed-insert macro-timed-in").appendTo(r)),r.append(t),a&&setTimeout(function(){return r.removeClass("macro-timed-in")},Engine.minDomActionDelay)}),e)},registerTimeout:function(e,t){if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var r=State.turns,a=this.timers,n=null,i=t.shift(),o=function o(){if(a.delete(n),r===State.turns){var s=i;null!=(i=t.shift())&&(n=setTimeout(o,i.delay),a.add(n)),e.call(this,s)}};n=setTimeout(o,i.delay),a.add(n),prehistory.hasOwnProperty("#timed-timers-cleanup")||(prehistory["#timed-timers-cleanup"]=function(e){delete prehistory[e],a.forEach(function(e){return clearTimeout(e)}),a.clear()})}}),Macro.add("widget",{tags:null,handler:function(){if(0===this.args.length)return this.error("no widget name specified");var e=this.args[0];if(Macro.has(e)){if(!Macro.get(e).isWidget)return this.error('cannot clobber existing macro "'+e+'"');Macro.delete(e)}try{Macro.add(e,{isWidget:!0,handler:function(e){return function(){
+var t=void 0;try{State.variables.hasOwnProperty("args")&&(t=State.variables.args),State.variables.args=[].concat(_toConsumableArray(this.args)),State.variables.args.raw=this.args.raw,State.variables.args.full=this.args.full,this.addShadow("$args");var r=document.createDocumentFragment(),a=[];if(new Wikifier(r,e),Array.from(r.querySelectorAll(".error")).forEach(function(e){a.push(e.textContent)}),0!==a.length)return this.error("error"+(a.length>1?"s":"")+" within widget contents ("+a.join("; ")+")");this.output.appendChild(r)}catch(e){return this.error("cannot execute widget: "+e.message)}finally{void 0!==t?State.variables.args=t:delete State.variables.args}}}(this.payload[0].contents)}),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(t){return this.error('cannot create widget macro "'+e+'": '+t.message)}}})}();var Dialog=function(){function e(){m=function(){var e=void 0;try{var t=document.createElement("p"),r=document.createElement("div");t.style.width="100%",t.style.height="200px",r.style.position="absolute",r.style.left="0px",r.style.top="0px",r.style.width="100px",r.style.height="100px",r.style.visibility="hidden",r.style.overflow="hidden",r.appendChild(t),document.body.appendChild(r);var a=t.offsetWidth;r.style.overflow="auto";var n=t.offsetWidth;a===n&&(n=r.clientWidth),document.body.removeChild(r),e=a-n}catch(e){}return e||17}();var e=jQuery(document.createDocumentFragment()).append('<div id="ui-overlay" class="ui-close"></div><div id="ui-dialog" tabindex="0" role="dialog" aria-labelledby="ui-dialog-title"><div id="ui-dialog-titlebar"><h1 id="ui-dialog-title"></h1><button id="ui-dialog-close" class="ui-close" tabindex="0" aria-label="'+L10n.get("close")+'"></button></div><div id="ui-dialog-body"></div></div>');d=jQuery(e.find("#ui-overlay").get(0)),h=jQuery(e.find("#ui-dialog").get(0)),f=jQuery(e.find("#ui-dialog-title").get(0)),p=jQuery(e.find("#ui-dialog-body").get(0)),e.insertBefore("#store-area")}function t(e){return h.hasClass("open")&&(!e||e.splitOrEmpty(/\s+/).every(function(e){return p.hasClass(e)}))}function r(e,t){return p.empty().removeClass(),null!=t&&p.addClass(t),f.empty().append((null!=e?String(e):"")||" "),p.get(0)}function a(){return p.get(0)}function n(){var e;return(e=p).append.apply(e,arguments),Dialog}function i(){var e;return(e=p).wiki.apply(e,arguments),Dialog}function o(e,t,r,a,n){return jQuery(e).ariaClick(function(e){e.preventDefault(),"function"==typeof r&&r(e),s(t,n),"function"==typeof a&&a(e)})}function s(e,r){var a=jQuery.extend({top:50},e),n=a.top;t()||(g=safeActiveElement()),jQuery(document.documentElement).attr("data-dialog","open"),d.addClass("open"),null!==p[0].querySelector("img")&&p.imagesLoaded().always(function(){return l({data:{top:n}})}),jQuery("body>:not(script,#store-area,#ui-bar,#ui-overlay,#ui-dialog)").attr("tabindex",-3).attr("aria-hidden",!0),jQuery("#ui-bar,#story").find("[tabindex]:not([tabindex^=-])").attr("tabindex",-2).attr("aria-hidden",!0);var i=c(n);return h.css(i).addClass("open").focus(),jQuery(window).on("resize.dialog-resize",null,{top:n},jQuery.throttle(40,l)),Has.mutationObserver?(v=new MutationObserver(function(e){for(var t=0;t<e.length;++t)if("childList"===e[t].type){l({data:{top:n}});break}}),v.observe(p[0],{childList:!0,subtree:!0})):p.on("DOMNodeInserted.dialog-resize DOMNodeRemoved.dialog-resize",null,{top:n},jQuery.throttle(40,l)),jQuery(document).on("click.dialog-close",".ui-close",{closeFn:r},u).on("keypress.dialog-close",".ui-close",function(e){13!==e.which&&32!==e.which||jQuery(this).trigger("click")}),setTimeout(function(){return jQuery.event.trigger(":dialogopen")},Engine.minDomActionDelay),Dialog}function u(e){return jQuery(document).off(".dialog-close"),v?(v.disconnect(),v=null):p.off(".dialog-resize"),jQuery(window).off(".dialog-resize"),h.removeClass("open").css({left:"",right:"",top:"",bottom:""}),jQuery("#ui-bar,#story").find("[tabindex=-2]").removeAttr("aria-hidden").attr("tabindex",0),jQuery("body>[tabindex=-3]").removeAttr("aria-hidden").removeAttr("tabindex"),f.empty(),p.empty().removeClass(),d.removeClass("open"),jQuery(document.documentElement).removeAttr("data-dialog"),null!==g&&(jQuery(g).focus(),g=null),e&&e.data&&"function"==typeof e.data.closeFn&&e.data.closeFn(e),setTimeout(function(){return jQuery.event.trigger(":dialogclose")},Engine.minDomActionDelay),Dialog}function l(e){var t=e&&e.data&&void 0!==e.data.top?e.data.top:50;"block"===h.css("display")&&(h.css({display:"none"}),h.css(jQuery.extend({display:""},c(t))))}function c(e){var t=null!=e?e:50,r=jQuery(window),a={left:"",right:"",top:"",bottom:""};h.css(a);var n=r.width()-h.outerWidth(!0)-1,i=r.height()-h.outerHeight(!0)-1;return n<=32+m&&(i-=m),i<=32+m&&(n-=m),a.left=a.right=n<=32?16:n/2>>0,a.top=i<=32?a.bottom=16:i/2>t?t:a.bottom=i/2>>0,Object.keys(a).forEach(function(e){""!==a[e]&&(a[e]+="px")}),a}var d=null,h=null,f=null,p=null,g=null,m=0,v=null;return Object.freeze(Object.defineProperties({},{init:{value:e},isOpen:{value:t},setup:{value:r},body:{value:a},append:{value:n},wiki:{value:i},addClickHandler:{value:o},open:{value:s},close:{value:u},resize:{value:function(e){return l("object"===(void 0===e?"undefined":_typeof(e))?{data:e}:undefined)}}}))}(),Engine=function(){function e(){jQuery("#init-no-js,#init-lacking").remove(),function(){var e=jQuery(document.createDocumentFragment()),t=Story.has("StoryInterface")&&Story.get("StoryInterface").text.trim();if(t){if(UIBar.destroy(),jQuery(document.head).find("#style-core-display").remove(),e.append(t),0===e.find("#passages").length)throw new Error('no element with ID "passages" found within "StoryInterface" special passage')}else e.append('<div id="story" role="main"><div id="passages"></div></div>');e.insertBefore("#store-area")}(),S=new StyleWrapper(function(){return jQuery(document.createElement("style")).attr({id:"style-aria-outlines",type:"text/css"}).appendTo(document.head).get(0)}()),jQuery(document).on("mousedown.aria-outlines keydown.aria-outlines",function(e){return"keydown"===e.type?m():g()})}function t(){if(Story.has("StoryInit"))try{var e=Wikifier.wikifyEval(Story.get("StoryInit").text);if(Config.debug){var t=new DebugView(document.createDocumentFragment(),"special","StoryInit","StoryInit");t.modes({hidden:!0}),t.append(e),k=t.output}}catch(e){console.error(e),Alert.error("StoryInit",e.message)}if(Config.history.maxStates=Math.max(0,Config.history.maxStates),Number.isSafeInteger(Config.history.maxStates)||(Config.history.maxStates=100),1===Config.history.maxStates&&(Config.history.controls=!1),null==Config.passages.start)throw new Error("starting passage not selected");if(!Story.has(Config.passages.start))throw new Error('starting passage ("'+Config.passages.start+'") not found');if(jQuery(document.documentElement).focus(),State.restore())h();else{var r=!0;switch(_typeof(Config.saves.autoload)){case"boolean":Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!Save.autosave.load());break;case"string":"prompt"===Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!1,UI.buildDialogAutoload(),UI.open());break;case"function":Save.autosave.ok()&&Save.autosave.has()&&Config.saves.autoload()&&(r=!Save.autosave.load())}r&&f(Config.passages.start)}}function r(){LoadScreen.show(),window.scroll(0,0),State.reset(),jQuery.event.trigger(":enginerestart"),window.location.reload()}function a(){return b}function n(){return b===v.Idle}function i(){return b!==v.Idle}function o(){return b===v.Rendering}function s(){return w}function u(e){var t=State.goTo(e);return t&&h(),t}function l(e){var t=State.go(e);return t&&h(),t}function c(){return l(-1)}function d(){return l(1)}function h(){return f(State.passage,!0)}function f(e,t){var r=e;b=v.Playing,TempState={},State.clearTemporary();var a=void 0,n=void 0;if("function"==typeof Config.navigation.override)try{var i=Config.navigation.override(r);i&&(r=i)}catch(e){}var o=Story.get(r);if(jQuery.event.trigger({type:":passageinit",passage:o}),Object.keys(prehistory).forEach(function(e){"function"==typeof prehistory[e]&&prehistory[e].call(this,e)},o),t||State.create(o.title),w=Util.now(),document.body.className&&(document.body.className=""),Object.keys(predisplay).forEach(function(e){"function"==typeof predisplay[e]&&predisplay[e].call(this,e)},o),Story.has("PassageReady"))try{a=Wikifier.wikifyEval(Story.get("PassageReady").text)}catch(e){console.error(e),Alert.error("PassageReady",e.message)}b=v.Rendering;var s=jQuery(o.render()),u=document.getElementById("passages");if(u.hasChildNodes()&&("number"==typeof Config.passages.transitionOut||"string"==typeof Config.passages.transitionOut&&""!==Config.passages.transitionOut&&""!==Config.transitionEndEventName?[].concat(_toConsumableArray(u.childNodes)).forEach(function(e){var t=jQuery(e);if(e.nodeType===Node.ELEMENT_NODE&&t.hasClass("passage")){if(t.hasClass("passage-out"))return;t.attr("id","out-"+t.attr("id")).addClass("passage-out"),"string"==typeof Config.passages.transitionOut?t.on(Config.transitionEndEventName,function(e){e.originalEvent.propertyName===Config.passages.transitionOut&&t.remove()}):setTimeout(function(){return t.remove()},Math.max(y,Config.passages.transitionOut))}else t.remove()}):jQuery(u).empty()),s.addClass("passage-in").appendTo(u),setTimeout(function(){return s.removeClass("passage-in")},y),Config.passages.displayTitles&&o.title!==Config.passages.start&&(document.title=o.title+" | "+Story.title),window.scroll(0,0),b=v.Playing,Story.has("PassageDone"))try{n=Wikifier.wikifyEval(Story.get("PassageDone").text)}catch(e){console.error(e),Alert.error("PassageDone",e.message)}if(jQuery.event.trigger({type:":passagedisplay",passage:o}),Object.keys(postdisplay).forEach(function(e){"function"==typeof postdisplay[e]&&postdisplay[e].call(this,e)},o),Config.ui.updateStoryElements&&UIBar.setStoryElements(),Config.debug){var l=void 0;null!=a&&(l=new DebugView(document.createDocumentFragment(),"special","PassageReady","PassageReady"),l.modes({hidden:!0}),l.append(a),s.prepend(l.output)),null!=n&&(l=new DebugView(document.createDocumentFragment(),"special","PassageDone","PassageDone"),l.modes({hidden:!0}),l.append(n),s.append(l.output)),1===State.turns&&null!=k&&s.prepend(k)}switch(g(),jQuery("#story").find("a[href]:not(.link-external)").addClass("link-external").end().find("a,link,button,input,select,textarea").not("[tabindex]").attr("tabindex",0),_typeof(Config.saves.autosave)){case"boolean":Config.saves.autosave&&Save.autosave.save();break;case"string":o.tags.includes(Config.saves.autosave)&&Save.autosave.save();break;case"object":Array.isArray(Config.saves.autosave)&&o.tags.some(function(e){return Config.saves.autosave.includes(e)})&&Save.autosave.save()}return jQuery.event.trigger({type:":passageend",passage:o}),b=v.Idle,w=Util.now(),s[0]}function p(e,t,r){var a=!1;switch(r){case undefined:break;case"replace":case"back":a=!0;break;default:throw new Error('Engine.display option parameter called with obsolete value "'+r+'"; please notify the developer')}f(e,a)}function g(){S.set("*:focus{outline:none}")}function m(){S.clear()}var v=Util.toEnum({Idle:"idle",Playing:"playing",Rendering:"rendering"}),y=40,b=v.Idle,w=null,k=null,S=null;return Object.freeze(Object.defineProperties({},{States:{value:v},minDomActionDelay:{value:y},init:{value:e},start:{value:t},restart:{value:r},state:{get:a},isIdle:{value:n},isPlaying:{value:i},isRendering:{value:o},lastPlay:{get:s},goTo:{value:u},go:{value:l},backward:{value:c},forward:{value:d},show:{value:h},play:{value:f},display:{value:p}}))}(),Passage=function(){var e=void 0,t=void 0;e=/^(?:debug|nobr|passage|script|stylesheet|widget|twine\..*)$/i;var r=/(?:\\n|\\t|\\s|\\|\r)/g,a=new RegExp(r.source),n=Object.freeze({"\\n":"\n","\\t":"\t","\\s":"\\","\\":"\\","\r":""});return t=function(e){if(null==e)return"";var t=String(e);return t&&a.test(t)?t.replace(r,function(e){return n[e]}):t},function(){function r(t,a){var n=this;_classCallCheck(this,r),Object.defineProperties(this,{title:{value:Util.unescape(t)},element:{value:a||null},tags:{value:Object.freeze(a&&a.hasAttribute("tags")?a.getAttribute("tags").trim().splitOrEmpty(/\s+/).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}):[])},_excerpt:{writable:!0,value:null}}),Object.defineProperties(this,{domId:{value:"passage-"+Util.slugify(this.title)},classes:{value:Object.freeze(0===this.tags.length?[]:function(){return n.tags.filter(function(t){return!e.test(t)}).map(function(e){return Util.slugify(e)})}())}})}return _createClass(r,[{key:"description",value:function(){var e=Config.passages.descriptions;if(null!=e)switch(void 0===e?"undefined":_typeof(e)){case"boolean":if(e)return this.title;break;case"object":if(e instanceof Map&&e.has(this.title))return e.get(this.title);if(e.hasOwnProperty(this.title))return e[this.title];break;case"function":var t=e.call(this);if(t)return t;break;default:throw new TypeError("Config.passages.descriptions must be a boolean, object, or function")}return null===this._excerpt&&(this._excerpt=r.getExcerptFromText(this.text)),this._excerpt}},{key:"processText",value:function(){var e=this.text;return this.tags.includes("Twine.image")?e="[img["+e+"]]":(Config.passages.nobr||this.tags.includes("nobr"))&&(e=e.replace(/^\n+|\n+$/g,"").replace(/\n+/g," ")),e}},{key:"render",value:function(){var e=this,t=this.tags.length>0?this.tags.join(" "):null,a=document.createElement("div");return jQuery(a).attr({id:this.domId,"data-passage":this.title,"data-tags":t}).addClass("passage "+this.className),jQuery(document.body).attr("data-tags",t).addClass(this.className),jQuery(document.documentElement).attr("data-tags",t),jQuery.event.trigger({type:":passagestart",content:a,passage:this}),Object.keys(prerender).forEach(function(t){"function"==typeof prerender[t]&&prerender[t].call(e,a,t)}),Story.has("PassageHeader")&&new Wikifier(a,Story.get("PassageHeader").processText()),new Wikifier(a,this.processText()),Story.has("PassageFooter")&&new Wikifier(a,Story.get("PassageFooter").processText()),jQuery.event.trigger({type:":passagerender",content:a,passage:this}),Object.keys(postrender).forEach(function(t){"function"==typeof postrender[t]&&postrender[t].call(e,a,t)}),this._excerpt=r.getExcerptFromNode(a),a}},{key:"className",get:function(){return this.classes.join(" ")}},{key:"text",get:function(){if(null==this.element){var e=Util.escape(this.title);return'<span class="error" title="'+e+'">'+L10n.get("errorTitle")+": "+L10n.get("errorNonexistentPassage",{passage:e})+"</span>"}return t(this.element.textContent)}}],[{key:"getExcerptFromNode",value:function(e,t){if(!e.hasChildNodes())return"";var r=e.textContent.trim();if(""!==r){var a=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})");r=r.replace(/\s+/g," ").match(a)}return r?r[1]+"…":"…"}},{key:"getExcerptFromText",value:function(e,t){if(""===e)return"";var r=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})"),a=e.replace(/<<.*?>>/g," ").replace(/<.*?>/g," ").trim().replace(/^\s*\|.*\|.*?$/gm,"").replace(/\[[<>]?img\[[^\]]*\]\]/g,"").replace(/\[\[([^|\]]*)(?:|[^\]]*)?\]\]/g,"$1").replace(/^\s*!+(.*?)$/gm,"$1").replace(/'{2}|\/{2}|_{2}|@{2}/g,"").trim().replace(/\s+/g," ").match(r);return a?a[1]+"…":"…"}}]),r}()}(),Save=function(){function e(){if("cookie"===storage.name)return a(),Config.saves.autosave=undefined,Config.saves.slots=0,!1;Config.saves.slots=Math.max(0,Config.saves.slots),Number.isSafeInteger(Config.saves.slots)||(Config.saves.slots=8);var e=r(),t=!1;Array.isArray(e)&&(e={autosave:null,slots:e},t=!0),Config.saves.slots!==e.slots.length&&(Config.saves.slots<e.slots.length?(e.slots.reverse(),e.slots=e.slots.filter(function(e){return!(null===e&&this.count>0)||(--this.count,!1)},{count:e.slots.length-Config.saves.slots}),e.slots.reverse()):Config.saves.slots>e.slots.length&&x(e.slots,Config.saves.slots-e.slots.length),t=!0),O(e.autosave)&&(t=!0);for(var n=0;n<e.slots.length;++n)O(e.slots[n])&&(t=!0);return j(e)&&(storage.delete("saves"),t=!1),t&&C(e),P=e.slots.length-1,!0}function t(){return{autosave:null,slots:x([],Config.saves.slots)}}function r(){var e=storage.get("saves");return null===e?t():e}function a(){return storage.delete("saves"),!0}function n(){return i()||d()}function i(){return"cookie"!==storage.name&&void 0!==Config.saves.autosave}function o(){return null!==r().autosave}function s(){return r().autosave}function u(){var e=r();return null!==e.autosave&&A(e.autosave)}function l(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return!1;var a=r(),n={title:e||Story.get(State.passage).description(),date:Date.now()};return null!=t&&(n.metadata=t),a.autosave=T(n),C(a)}function c(){var e=r();return e.autosave=null,C(e)}function d(){return"cookie"!==storage.name&&-1!==P}function h(){return P+1}function f(){if(!d())return 0;for(var e=r(),t=0,a=0,n=e.slots.length;a<n;++a)null!==e.slots[a]&&++t;return t}function p(){return 0===f()}function g(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])}function m(e){if(e<0||e>P)return null;var t=r();return e>=t.slots.length?null:t.slots[e]}function v(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])&&A(t.slots[e])}function y(e,t,a){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return UI.alert(L10n.get("savesDisallowed")),!1;if(e<0||e>P)return!1;var n=r();if(e>=n.slots.length)return!1;var i={title:t||Story.get(State.passage).description(),date:Date.now()};return null!=a&&(i.metadata=a),n.slots[e]=T(i),C(n)}function b(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length)&&(t.slots[e]=null,C(t))}function w(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return void UI.alert(L10n.get("savesDisallowed"));var r=null==e?Story.domId:Util.slugify(e),a=r+"-"+function(){var e=new Date,t=e.getMonth()+1,r=e.getDate(),a=e.getHours(),n=e.getMinutes(),i=e.getSeconds();return t<10&&(t="0"+t),r<10&&(r="0"+r),a<10&&(a="0"+a),n<10&&(n="0"+n),i<10&&(i="0"+i),""+e.getFullYear()+t+r+"-"+a+n+i}()+".save",n=null==t?{}:{metadata:t},i=LZString.compressToBase64(JSON.stringify(T(n)));saveAs(new Blob([i],{type:"text/plain;charset=UTF-8"}),a)}function k(e){var t=e.target.files[0],r=new FileReader;jQuery(r).on("load",function(e){var r=e.currentTarget;if(r.result){var a=void 0;try{a=JSON.parse(/\.json$/i.test(t.name)||/^\{/.test(r.result)?r.result:LZString.decompressFromBase64(r.result))}catch(e){}A(a)}}),r.readAsText(t)}function S(e){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return UI.alert(L10n.get("savesDisallowed")),null;var t=null==e?{}:{metadata:e};return LZString.compressToBase64(JSON.stringify(T(t)))}function E(e){var t=void 0;try{t=JSON.parse(LZString.decompressFromBase64(e))}catch(e){}return A(t)?t.metadata:null}function x(e,t){for(var r=0;r<t;++r)e.push(null);return e}function j(e){for(var t=e.slots,r=!0,a=0,n=t.length;a<n;++a)if(null!==t[a]){r=!1;break}return null===e.autosave&&r}function C(e){return j(e)?(storage.delete("saves"),!0):storage.set("saves",e)}function O(e){if(null==e||"object"!==(void 0===e?"undefined":_typeof(e)))return!1;var t=!1;return e.hasOwnProperty("state")&&e.state.hasOwnProperty("delta")&&e.state.hasOwnProperty("index")||(e.hasOwnProperty("data")?(delete e.mode,e.state={delta:State.deltaEncode(e.data)},delete e.data):e.state.hasOwnProperty("delta")?e.state.hasOwnProperty("index")||delete e.state.mode:(delete e.state.mode,e.state.delta=State.deltaEncode(e.state.history),delete e.state.history),e.state.index=e.state.delta.length-1,t=!0),e.state.hasOwnProperty("rseed")&&(e.state.seed=e.state.rseed,delete e.state.rseed,e.state.delta.forEach(function(e,t,r){r[t].hasOwnProperty("rcount")&&(r[t].pull=r[t].rcount,delete r[t].rcount)}),t=!0),(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired||e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired&&delete e.state.expired,(e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.expired=[],e.state.hasOwnProperty("unique")&&(e.state.expired.push(e.state.unique),delete e.state.unique),e.state.hasOwnProperty("last")&&(e.state.expired.push(e.state.last),delete e.state.last)),t=!0),t}function T(e){if(null!=e&&"object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("supplemental parameter must be an object");var t=Object.assign({},e,{id:Config.saves.id,state:State.marshalForSave()});return Config.saves.version&&(t.version=Config.saves.version),"function"==typeof Config.saves.onSave&&Config.saves.onSave(t),t.state.delta=State.deltaEncode(t.state.history),delete t.state.history,t}function A(e){try{if(O(e),!e||!e.hasOwnProperty("id")||!e.hasOwnProperty("state"))throw new Error(L10n.get("errorSaveMissingData"));if(e.state.history=State.deltaDecode(e.state.delta),delete e.state.delta,"function"==typeof Config.saves.onLoad&&Config.saves.onLoad(e),e.id!==Config.saves.id)throw new Error(L10n.get("errorSaveIdMismatch"));State.unmarshalForSave(e.state),Engine.show()}catch(e){return UI.alert(e.message.toUpperFirst()+".</p><p>"+L10n.get("aborting")+"."),!1}return!0}var P=-1;return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:r},clear:{value:a},ok:{value:n},autosave:{value:Object.freeze(Object.defineProperties({},{ok:{value:i},has:{value:o},get:{value:s},load:{value:u},save:{value:l},delete:{value:c}}))},slots:{value:Object.freeze(Object.defineProperties({},{ok:{value:d},length:{get:h},isEmpty:{value:p},count:{value:f},has:{value:g},get:{value:m},load:{value:v},save:{value:y},delete:{value:b}}))},export:{value:w},import:{value:k},serialize:{value:S},deserialize:{value:E}}))}(),Setting=function(){function e(){if(storage.has("options")){var e=storage.get("options");null!==e&&(window.SugarCube.settings=settings=Object.assign(t(),e)),r(),storage.delete("options")}a(),g.forEach(function(e){if(e.hasOwnProperty("onInit")){var t={name:e.name,value:settings[e.name],default:e.default};e.hasOwnProperty("list")&&(t.list=e.list),e.onInit.call(t)}})}function t(){return Object.create(null)}function r(){var e=t();return Object.keys(settings).length>0&&g.filter(function(e){return e.type!==m.Header&&settings[e.name]!==e.default}).forEach(function(t){return e[t.name]=settings[t.name]}),0===Object.keys(e).length?(storage.delete("settings"),!0):storage.set("settings",e)}function a(){var e=t(),r=storage.get("settings")||t();g.filter(function(e){return e.type!==m.Header}).forEach(function(t){return e[t.name]=t.default}),window.SugarCube.settings=settings=Object.assign(e,r)}function n(){return window.SugarCube.settings=settings=t(),storage.delete("settings"),!0}function i(e){if(0===arguments.length)n(),a();else{if(null==e||!h(e))throw new Error('nonexistent setting "'+e+'"');var t=f(e);t.type!==m.Header&&(settings[e]=t.default)}return r()}function o(e,t){g.forEach(e,t)}function s(e,t,r){if(arguments.length<3){var a=[];throw arguments.length<1&&a.push("type"),arguments.length<2&&a.push("name"),arguments.length<3&&a.push("definition"),new Error("missing parameters, no "+a.join(" or ")+" specified")}if("object"!==(void 0===r?"undefined":_typeof(r)))throw new TypeError("definition parameter must be an object");if(h(t))throw new Error('cannot clobber existing setting "'+t+'"');var n={type:e,name:t,label:null==r.label?"":String(r.label).trim()};switch(e){case m.Header:break;case m.Toggle:n.default=!!r.default;break;case m.List:if(!r.hasOwnProperty("list"))throw new Error("no list specified");if(!Array.isArray(r.list))throw new TypeError("list must be an array");if(0===r.list.length)throw new Error("list must not be empty");if(n.list=Object.freeze(r.list),null==r.default)n.default=r.list[0];else{var i=r.list.indexOf(r.default);if(-1===i)throw new Error("list does not contain default");n.default=r.list[i]}break;default:throw new Error("unknown Setting type: "+e)}"function"==typeof r.onInit&&(n.onInit=Object.freeze(r.onInit)),"function"==typeof r.onChange&&(n.onChange=Object.freeze(r.onChange)),g.push(Object.freeze(n))}function u(e,t){s(m.Header,e,{label:t})}function l(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.Toggle].concat(t))}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.List].concat(t))}function d(){return 0===g.length}function h(e){return g.some(function(t){return t.name===e})}function f(e){return g.find(function(t){return t.name===e})}function p(e){h(e)&&delete settings[e];for(var t=0;t<g.length;++t)if(g[t].name===e){g.splice(t,1),p(e);break}}var g=[],m=Util.toEnum({Header:0,Toggle:1,List:2});return Object.freeze(Object.defineProperties({},{Types:{value:m},init:{value:e},create:{value:t},save:{value:r},load:{value:a},clear:{value:n},reset:{value:i},forEach:{value:o},add:{value:s},addHeader:{value:u},addToggle:{value:l},addList:{value:c},isEmpty:{value:d},has:{value:h},get:{value:f},delete:{value:p}}))}(),Story=function(){function e(){function e(e){if(e.tags.includesAny(a))throw new Error('starting passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return a.includes(e)}).sort().join('", "')+'"')}function t(e){if(n.includes(e.title)&&e.tags.includesAny(a))throw new Error('special passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return a.includes(e)}).sort().join('", "')+'"')}var a=["widget"],n=["PassageDone","PassageFooter","PassageHeader","PassageReady","StoryAuthor","StoryBanner","StoryCaption","StoryInit","StoryMenu","StoryShare","StorySubtitle"],i=function(e){var t=[].concat(a),r=[];if(e.tags.forEach(function(e){t.includes(e)&&r.push.apply(r,_toConsumableArray(t.delete(e)))}),r.length>1)throw new Error('code passage "'+e.title+'" contains multiple code tags; invalid: "'+r.sort().join('", "')+'"')};if(a.unshift("script","stylesheet"),n.push("StoryTitle"),Config.passages.start=function(){var e=String("START_AT");return""!==e?(Config.debug=!0,e):"Start"}(),jQuery("#store-area").children(':not([tags~="Twine.private"],[tags~="annotation"])').each(function(){var r=jQuery(this),a=new Passage(r.attr("tiddler"),this);a.title===Config.passages.start?(e(a),c[a.title]=a):a.tags.includes("stylesheet")?(i(a),d.push(a)):a.tags.includes("script")?(i(a),h.push(a)):a.tags.includes("widget")?(i(a),f.push(a)):(t(a),c[a.title]=a)}),!c.hasOwnProperty("StoryTitle"))throw new Error('cannot find the "StoryTitle" special passage');var o=document.createDocumentFragment();new Wikifier(o,c.StoryTitle.processText().trim()),r(o.textContent.trim()),Config.saves.id=Story.domId}function t(){!function(){var e=document.createElement("style");new StyleWrapper(e).add(d.map(function(e){return e.text.trim()}).join("\n")),jQuery(e).appendTo(document.head).attr({id:"style-story",type:"text/css"})}();for(var e=0;e<h.length;++e)try{Scripting.evalJavaScript(h[e].text)}catch(t){console.error(t),Alert.error(h[e].title,"object"===(void 0===t?"undefined":_typeof(t))?t.message:t)}for(var t=0;t<f.length;++t)try{Wikifier.wikifyEval(f[t].processText())}catch(e){console.error(e),Alert.error(f[t].title,"object"===(void 0===e?"undefined":_typeof(e))?e.message:e)}}function r(e){if(null==e||""===e)throw new Error("story title cannot be null or empty");document.title=p=Util.unescape(e),m=Util.slugify(p)}function a(){return p}function n(){return m}function i(){return g}function o(e){var t=void 0===e?"undefined":_typeof(e);switch(t){case"number":case"string":return c.hasOwnProperty(String(e));case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.has title parameter cannot be "+t)}function s(e){var t=void 0===e?"undefined":_typeof(e);switch(t){case"number":case"string":var r=String(e);return c.hasOwnProperty(r)?c[r]:new Passage(r||"(unknown)");case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.get title parameter cannot be "+t)}function u(e,t){for(var r=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"title",a=Object.keys(c),n=[],i=0;i<a.length;++i){var o=c[a[i]];if(o.hasOwnProperty(e))switch(_typeof(o[e])){case"undefined":break;case"object":o[e]instanceof Array&&o[e].some(function(e){return e==t})&&n.push(o);break;default:o[e]==t&&n.push(o)}}return n.sort(function(e,t){return e[r]==t[r]?0:e[r]<t[r]?-1:1}),n}function l(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"title";if("function"!=typeof e)throw new Error("Story.lookupWith filter parameter must be a function");for(var r=Object.keys(c),a=[],n=0;n<r.length;++n){var i=c[r[n]];e(i)&&a.push(i)}return a.sort(function(e,r){return e[t]==r[t]?0:e[t]<r[t]?-1:1}),a}var c={},d=[],h=[],f=[],p="",g="",m="";return Object.freeze(Object.defineProperties({},{passages:{value:c},styles:{value:d},scripts:{value:h},widgets:{value:f},load:{value:e},init:{value:t},title:{get:a},domId:{get:n},ifId:{get:i},has:{value:o},get:{value:s},lookup:{value:u},lookupWith:{value:l}}))}(),UI=function(){function e(e,t){var r=t,a=Config.debug,n=Config.cleanupWikifierOutput;Config.debug=!1,Config.cleanupWikifierOutput=!1;try{null==r&&(r=document.createElement("ul"));var i=document.createDocumentFragment();new Wikifier(i,Story.get(e).processText().trim());var o=[].concat(_toConsumableArray(i.querySelectorAll(".error"))).map(function(e){return e.textContent.replace(errorPrologRegExp,"")});if(o.length>0)throw new Error(o.join("; "));for(;i.hasChildNodes();){var s=i.firstChild;if(s.nodeType===Node.ELEMENT_NODE&&"A"===s.nodeName.toUpperCase()){var u=document.createElement("li");r.appendChild(u),u.appendChild(s)}else i.removeChild(s)}}finally{Config.cleanupWikifierOutput=n,Config.debug=a}return r}function t(e){jQuery(Dialog.setup("Alert","alert")).append("<p>"+e+'</p><ul class="buttons"><li><button id="alert-ok" class="ui-close">'+L10n.get(["alertOk","ok"])+"</button></li></ul>");for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];Dialog.open.apply(Dialog,r)}function r(){u(),Dialog.open.apply(Dialog,arguments)}function a(){l(),Dialog.open.apply(Dialog,arguments)}function n(){c(),Dialog.open.apply(Dialog,arguments)}function i(){d(),Dialog.open.apply(Dialog,arguments)}function o(){h(),Dialog.open.apply(Dialog,arguments)}function s(){return jQuery(Dialog.setup(L10n.get("autoloadTitle"),"autoload")).append("<p>"+L10n.get("autoloadPrompt")+'</p><ul class="buttons"><li><button id="autoload-ok" class="ui-close">'+L10n.get(["autoloadOk","ok"])+'</button></li><li><button id="autoload-cancel" class="ui-close">'+L10n.get(["autoloadCancel","cancel"])+"</button></li></ul>"),jQuery(document).one("click.autoload",".ui-close",function(e){var t="autoload-ok"===e.target.id;jQuery(document).one(":dialogclose",function(){t&&Save.autosave.load()||Engine.play(Config.passages.start)})}),!0}function u(){var e=document.createElement("ul");jQuery(Dialog.setup(L10n.get("jumptoTitle"),"jumpto list")).append(e);for(var t=State.expired.length,r=State.size-1;r>=0;--r)if(r!==State.activeIndex){var a=Story.get(State.history[r].title);a&&a.tags.includes("bookmark")&&jQuery(document.createElement("li")).append(jQuery(document.createElement("a")).ariaClick({one:!0},function(e){return function(){return jQuery(document).one(":dialogclose",function(){return Engine.goTo(e)})}}(r)).addClass("ui-close").text(L10n.get("jumptoTurn")+" "+(t+r+1)+": "+a.description())).appendTo(e)}e.hasChildNodes()||jQuery(e).append("<li><a><em>"+L10n.get("jumptoUnavailable")+"</em></a></li>")}function l(){return jQuery(Dialog.setup(L10n.get("restartTitle"),"restart")).append("<p>"+L10n.get("restartPrompt")+'</p><ul class="buttons"><li><button id="restart-ok">'+L10n.get(["restartOk","ok"])+'</button></li><li><button id="restart-cancel" class="ui-close">'+L10n.get(["restartCancel","cancel"])+"</button></li></ul>").find("#restart-ok").ariaClick({one:!0},function(){jQuery(document).one(":dialogclose",function(){return Engine.restart()
+}),Dialog.close()}),!0}function c(){function e(e,t,r,a){var n=jQuery(document.createElement("button")).attr("id","saves-"+e).html(r);return t&&n.addClass(t),a?n.ariaClick(a):n.prop("disabled",!0),jQuery(document.createElement("li")).append(n)}var r=jQuery(Dialog.setup(L10n.get("savesTitle"),"saves")),a=Save.ok();if(a&&r.append(function(){function e(e,t,r,a,n){var i=jQuery(document.createElement("button")).attr("id","saves-"+e+"-"+a).addClass(e).html(r);return t&&i.addClass(t),n?"auto"===a?i.ariaClick({label:r+" "+L10n.get("savesLabelAuto")},function(){return n()}):i.ariaClick({label:r+" "+L10n.get("savesLabelSlot")+" "+(a+1)},function(){return n(a)}):i.prop("disabled",!0),i}var t=Save.get(),r=jQuery(document.createElement("tbody"));if(Save.autosave.ok()){var a=jQuery(document.createElement("td")),n=jQuery(document.createElement("td")),i=jQuery(document.createElement("td")),o=jQuery(document.createElement("td"));jQuery(document.createElement("b")).attr({title:L10n.get("savesLabelAuto"),"aria-label":L10n.get("savesLabelAuto")}).text("A").appendTo(a),t.autosave?(n.append(e("load","ui-close",L10n.get("savesLabelLoad"),"auto",function(){jQuery(document).one(":dialogclose",function(){return Save.autosave.load()})})),jQuery(document.createElement("div")).text(t.autosave.title).appendTo(i),jQuery(document.createElement("div")).addClass("datestamp").html(t.autosave.date?L10n.get("savesSavedOn")+" "+new Date(t.autosave.date).toLocaleString():L10n.get("savesSavedOn")+" <em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(i),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto",function(){Save.autosave.delete(),c()}))):(n.append(e("load",null,L10n.get("savesLabelLoad"),"auto")),jQuery(document.createElement("em")).text(L10n.get("savesEmptySlot")).appendTo(i),i.addClass("empty"),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto"))),jQuery(document.createElement("tr")).append(a).append(n).append(i).append(o).appendTo(r)}for(var s=0,u=t.slots.length;s<u;++s){var l=jQuery(document.createElement("td")),d=jQuery(document.createElement("td")),h=jQuery(document.createElement("td")),f=jQuery(document.createElement("td"));l.append(document.createTextNode(s+1)),t.slots[s]?(d.append(e("load","ui-close",L10n.get("savesLabelLoad"),s,function(e){jQuery(document).one(":dialogclose",function(){return Save.slots.load(e)})})),jQuery(document.createElement("div")).text(t.slots[s].title).appendTo(h),jQuery(document.createElement("div")).addClass("datestamp").html(t.slots[s].date?L10n.get("savesSavedOn")+" "+new Date(t.slots[s].date).toLocaleString():L10n.get("savesSavedOn")+" <em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(h),f.append(e("delete",null,L10n.get("savesLabelDelete"),s,function(e){Save.slots.delete(e),c()}))):(d.append(e("save","ui-close",L10n.get("savesLabelSave"),s,Save.slots.save)),jQuery(document.createElement("em")).text(L10n.get("savesEmptySlot")).appendTo(h),h.addClass("empty"),f.append(e("delete",null,L10n.get("savesLabelDelete"),s))),jQuery(document.createElement("tr")).append(l).append(d).append(h).append(f).appendTo(r)}return jQuery(document.createElement("table")).attr("id","saves-list").append(r)}()),a||Has.fileAPI){var n=jQuery(document.createElement("ul")).addClass("buttons").appendTo(r);return Has.fileAPI&&(n.append(e("export","ui-close",L10n.get("savesLabelExport"),function(){return Save.export()})),n.append(e("import",null,L10n.get("savesLabelImport"),function(){return r.find("#saves-import-file").trigger("click")})),jQuery(document.createElement("input")).css({display:"block",visibility:"hidden",position:"fixed",left:"-9999px",top:"-9999px",width:"1px",height:"1px"}).attr({type:"file",id:"saves-import-file",tabindex:-1,"aria-hidden":!0}).on("change",function(e){jQuery(document).one(":dialogclose",function(){return Save.import(e)}),Dialog.close()}).appendTo(r)),a&&n.append(e("clear",null,L10n.get("savesLabelClear"),Save.autosave.has()||!Save.slots.isEmpty()?function(){Save.clear(),c()}:null)),!0}return t(L10n.get("savesIncapable")),!1}function d(){var e=jQuery(Dialog.setup(L10n.get("settingsTitle"),"settings"));return Setting.forEach(function(t){if(t.type===Setting.Types.Header){var r=t.name,a=Util.slugify(r),n=jQuery(document.createElement("div")),i=jQuery(document.createElement("h2")),o=jQuery(document.createElement("p"));return n.attr("id","header-body-"+a).append(i).append(o).appendTo(e),i.attr("id","header-heading-"+a).wiki(r),void o.attr("id","header-label-"+a).wiki(t.label)}var s=t.name,u=Util.slugify(s),l=jQuery(document.createElement("div")),c=jQuery(document.createElement("label")),d=jQuery(document.createElement("div")),h=void 0;switch(l.attr("id","setting-body-"+u).append(c).append(d).appendTo(e),c.attr({id:"setting-label-"+u,for:"setting-control-"+u}).wiki(t.label),null==settings[s]&&(settings[s]=t.default),t.type){case Setting.Types.Toggle:h=jQuery(document.createElement("button")),settings[s]?h.addClass("enabled").text(L10n.get("settingsOn")):h.text(L10n.get("settingsOff")),h.ariaClick(function(){settings[s]?(jQuery(this).removeClass("enabled").text(L10n.get("settingsOff")),settings[s]=!1):(jQuery(this).addClass("enabled").text(L10n.get("settingsOn")),settings[s]=!0),Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default})});break;case Setting.Types.List:h=jQuery(document.createElement("select"));for(var f=0,p=t.list.length;f<p;++f)jQuery(document.createElement("option")).val(f).text(t.list[f]).appendTo(h);h.val(t.list.indexOf(settings[s])).attr("tabindex",0).on("change",function(){settings[s]=t.list[Number(this.value)],Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default,list:t.list})})}h.attr("id","setting-control-"+u).appendTo(d)}),e.append('<ul class="buttons"><li><button id="settings-ok" class="ui-close">'+L10n.get(["settingsOk","ok"])+'</button></li><li><button id="settings-reset">'+L10n.get("settingsReset")+"</button></li></ul>").find("#settings-reset").ariaClick({one:!0},function(){jQuery(document).one(":dialogclose",function(){Setting.reset(),window.location.reload()}),Dialog.close()}),!0}function h(){try{jQuery(Dialog.setup(L10n.get("shareTitle"),"share list")).append(e("StoryShare"))}catch(e){return console.error(e),Alert.error("StoryShare",e.message),!1}return!0}return Object.freeze(Object.defineProperties({},{assembleLinkList:{value:e},alert:{value:t},jumpto:{value:r},restart:{value:a},saves:{value:n},settings:{value:i},share:{value:o},buildAutoload:{value:s},buildJumpto:{value:u},buildRestart:{value:l},buildSaves:{value:c},buildSettings:{value:d},buildShare:{value:h},stow:{value:function(){return UIBar.stow()}},unstow:{value:function(){return UIBar.unstow()}},setStoryElements:{value:function(){return UIBar.setStoryElements()}},isOpen:{value:function(){return Dialog.isOpen.apply(Dialog,arguments)}},body:{value:function(){return Dialog.body()}},setup:{value:function(){return Dialog.setup.apply(Dialog,arguments)}},addClickHandler:{value:function(){return Dialog.addClickHandler.apply(Dialog,arguments)}},open:{value:function(){return Dialog.open.apply(Dialog,arguments)}},close:{value:function(){return Dialog.close.apply(Dialog,arguments)}},resize:{value:function(){return Dialog.resize()}},buildDialogAutoload:{value:s},buildDialogJumpto:{value:u},buildDialogRestart:{value:l},buildDialogSaves:{value:c},buildDialogSettings:{value:d},buildDialogShare:{value:h},buildLinkListFromPassage:{value:e}}))}(),UIBar=function(){function e(){o||document.getElementById("ui-bar")||(!function(){var e=L10n.get("uiBarToggle"),t=L10n.get("uiBarBackward"),r=L10n.get("uiBarJumpto"),a=L10n.get("uiBarForward");jQuery(document.createDocumentFragment()).append('<div id="ui-bar"><div id="ui-bar-tray"><button id="ui-bar-toggle" tabindex="0" title="'+e+'" aria-label="'+e+'"></button><div id="ui-bar-history"><button id="history-backward" tabindex="0" title="'+t+'" aria-label="'+t+'"></button><button id="history-jumpto" tabindex="0" title="'+r+'" aria-label="'+r+'"></button><button id="history-forward" tabindex="0" title="'+a+'" aria-label="'+a+'"></button></div></div><div id="ui-bar-body"><header id="title" role="banner"><div id="story-banner"></div><h1 id="story-title"></h1><div id="story-subtitle"></div><div id="story-title-separator"></div><p id="story-author"></p></header><div id="story-caption"></div><nav id="menu" role="navigation"><ul id="menu-story"></ul><ul id="menu-core"><li id="menu-item-saves"><a tabindex="0">'+L10n.get("savesTitle")+'</a></li><li id="menu-item-settings"><a tabindex="0">'+L10n.get("settingsTitle")+'</a></li><li id="menu-item-restart"><a tabindex="0">'+L10n.get("restartTitle")+'</a></li><li id="menu-item-share"><a tabindex="0">'+L10n.get("shareTitle")+"</a></li></ul></nav></div></div>").insertBefore("#store-area")}(),jQuery(document).on(":historyupdate.ui-bar",function(e,t){return function(){e.prop("disabled",State.length<2),t.prop("disabled",State.length===State.size)}}(jQuery("#history-backward"),jQuery("#history-forward"))))}function t(){if(!o){var e=jQuery("#ui-bar");("boolean"==typeof Config.ui.stowBarInitially?Config.ui.stowBarInitially:jQuery(window).width()<=Config.ui.stowBarInitially)&&function(){var t=jQuery(e).add("#story");t.addClass("no-transition"),e.addClass("stowed"),setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}(),jQuery("#ui-bar-toggle").ariaClick({label:L10n.get("uiBarToggle")},function(){return e.toggleClass("stowed")}),Config.history.controls?(jQuery("#history-backward").prop("disabled",State.length<2).ariaClick({label:L10n.get("uiBarBackward")},function(){return Engine.backward()}),Story.lookup("tags","bookmark").length>0?jQuery("#history-jumpto").ariaClick({label:L10n.get("uiBarJumpto")},function(){return UI.jumpto()}):jQuery("#history-jumpto").remove(),jQuery("#history-forward").prop("disabled",State.length===State.size).ariaClick({label:L10n.get("uiBarForward")},function(){return Engine.forward()})):jQuery("#ui-bar-history").remove(),setPageElement("story-title","StoryTitle",Story.title),Story.has("StoryCaption")||jQuery("#story-caption").remove(),Story.has("StoryMenu")||jQuery("#menu-story").remove(),Config.ui.updateStoryElements||i(),Dialog.addClickHandler("#menu-item-saves a",null,UI.buildSaves).text(L10n.get("savesTitle")),Setting.isEmpty()?jQuery("#menu-item-settings").remove():Dialog.addClickHandler("#menu-item-settings a",null,UI.buildSettings).text(L10n.get("settingsTitle")),Dialog.addClickHandler("#menu-item-restart a",null,UI.buildRestart).text(L10n.get("restartTitle")),Story.has("StoryShare")?Dialog.addClickHandler("#menu-item-share a",null,UI.buildShare).text(L10n.get("shareTitle")):jQuery("#menu-item-share").remove()}}function r(){o||(jQuery(document).off(".ui-bar"),jQuery("#ui-bar").remove(),jQuery(document.head).find("#style-ui-bar").remove(),Config.ui.updateStoryElements=!1,o=!0)}function a(e){if(!o){var t=jQuery("#ui-bar");e&&t.addClass("no-transition"),t.addClass("stowed"),e&&setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}}function n(e){if(!o){var t=jQuery("#ui-bar");e&&t.addClass("no-transition"),t.removeClass("stowed"),e&&setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}}function i(){if(!o){setPageElement("story-banner","StoryBanner"),setPageElement("story-subtitle","StorySubtitle"),setPageElement("story-author","StoryAuthor"),setPageElement("story-caption","StoryCaption");var e=document.getElementById("menu-story");if(null!==e&&(jQuery(e).empty(),Story.has("StoryMenu")))try{UI.assembleLinkList("StoryMenu",e)}catch(e){console.error(e),Alert.error("StoryMenu",e.message)}}}var o=!1;return Object.freeze(Object.defineProperties({},{init:{value:e},start:{value:t},destroy:{value:r},stow:{value:a},unstow:{value:n},setStoryElements:{value:i}}))}(),DebugBar=function(){function e(){var e=L10n.get("debugBarToggle"),t=L10n.get("debugBarAddWatch"),o=L10n.get("debugBarWatchAll"),u=L10n.get("debugBarWatchNone"),c=L10n.get("debugBarWatchToggle"),p=L10n.get("debugBarViewsToggle");jQuery(document.createDocumentFragment()).append('<div id="debug-bar"><div id="debug-bar-watch" aria-hidden="true" hidden="hidden"><div>'+L10n.get("debugBarNoWatches")+'</div>></div><div><button id="debug-bar-watch-toggle" tabindex="0" title="'+c+'" aria-label="'+c+'">'+L10n.get("debugBarLabelWatch")+'</button><label id="debug-bar-watch-label" for="debug-bar-watch-input">'+L10n.get("debugBarLabelAdd")+'</label><input id="debug-bar-watch-input" name="debug-bar-watch-input" type="text" list="debug-bar-watch-list" tabindex="0"><datalist id="debug-bar-watch-list" aria-hidden="true" hidden="hidden"></datalist><button id="debug-bar-watch-add" tabindex="0" title="'+t+'" aria-label="'+t+'"></button><button id="debug-bar-watch-all" tabindex="0" title="'+o+'" aria-label="'+o+'"></button><button id="debug-bar-watch-none" tabindex="0" title="'+u+'" aria-label="'+u+'"></button></div><div><button id="debug-bar-views-toggle" tabindex="0" title="'+p+'" aria-label="'+p+'">'+L10n.get("debugBarLabelViews")+'</button><label id="debug-bar-turn-label" for="debug-bar-turn-select">'+L10n.get("debugBarLabelTurn")+'</label><select id="debug-bar-turn-select" tabindex="0"></select></div><button id="debug-bar-toggle" tabindex="0" title="'+e+'" aria-label="'+e+'"></button></div><div id="debug-bar-hint"></div>').appendTo("body"),y=jQuery("#debug-bar"),b=jQuery(y.find("#debug-bar-watch").get(0)),w=jQuery(y.find("#debug-bar-watch-list").get(0)),k=jQuery(y.find("#debug-bar-turn-select").get(0));var g=jQuery(y.find("#debug-bar-toggle").get(0)),m=jQuery(y.find("#debug-bar-watch-toggle").get(0)),v=jQuery(y.find("#debug-bar-watch-input").get(0)),E=jQuery(y.find("#debug-bar-watch-add").get(0)),x=jQuery(y.find("#debug-bar-watch-all").get(0)),j=jQuery(y.find("#debug-bar-watch-none").get(0)),C=jQuery(y.find("#debug-bar-views-toggle").get(0));g.ariaClick(function(){S?a():r(),S=!S,l()}),m.ariaClick(function(){b.attr("hidden")?b.removeAttr("aria-hidden hidden"):b.attr({"aria-hidden":!0,hidden:"hidden"}),l()}),v.on(":addwatch",function(){n(this.value.trim()),this.value=""}).on("keypress",function(e){13===e.which&&(e.preventDefault(),v.trigger(":addwatch"))}),E.ariaClick(function(){return v.trigger(":addwatch")}),x.ariaClick(i),j.ariaClick(s),k.on("change",function(){Engine.goTo(Number(this.value))}),C.ariaClick(function(){DebugView.toggle(),l()}),jQuery(document).on(":historyupdate.debug-bar",f).on(":passageend.debug-bar",function(){d(),h()}).on(":enginerestart.debug-bar",function(){session.delete("debugState")})}function t(){u(),c(),f(),d(),h()}function r(){y.css("right","-"+y.outerWidth()+"px"),l()}function a(){y.css("right",0),l()}function n(e){g.test(e)&&(v.pushUnique(e),v.sort(),d(),h(),l())}function i(){Object.keys(State.variables).map(function(e){return v.pushUnique("$"+e)}),Object.keys(State.temporary).map(function(e){return v.pushUnique("_"+e)}),v.sort(),d(),h(),l()}function o(e){v.delete(e),d(),h(),l()}function s(){for(var e=v.length-1;e>=0;--e)v.pop();d(),h(),l()}function u(){if(session.has("debugState")){var e=session.get("debugState");S=e.stowed,v.push.apply(v,_toConsumableArray(e.watchList)),e.watchEnabled?b.removeAttr("aria-hidden hidden"):b.attr({"aria-hidden":!0,hidden:"hidden"}),e.viewsEnabled?DebugView.enable():DebugView.disable()}}function l(){session.set("debugState",{stowed:S,watchList:v,watchEnabled:!b.attr("hidden"),viewsEnabled:DebugView.isEnabled()})}function c(){S?r():a()}function d(){if(0===v.length)return void b.empty().append("<div>"+L10n.get("debugBarNoWatches")+"</div>");for(var e=L10n.get("debugBarDeleteWatch"),t=jQuery(document.createElement("table")),r=jQuery(document.createElement("tbody")),a=0,n=v.length;a<n;++a)!function(t,a){var n=v[t],i=n.slice(1),s="$"===n[0]?State.variables:State.temporary,u=jQuery(document.createElement("tr")),l=jQuery(document.createElement("button")),c=jQuery(document.createElement("code"));l.addClass("watch-delete").attr("data-name",n).ariaClick({one:!0,label:e},function(){return o(n)}),c.text(p(s[i])),jQuery(document.createElement("td")).append(l).appendTo(u),jQuery(document.createElement("td")).text(n).appendTo(u),jQuery(document.createElement("td")).append(c).appendTo(u),u.appendTo(r)}(a);t.append(r),b.empty().append(t)}function h(){var e=Object.keys(State.variables),t=Object.keys(State.temporary);if(0===e.length&&0===t.length)return void w.empty();var r=[].concat(_toConsumableArray(e.map(function(e){return"$"+e})),_toConsumableArray(t.map(function(e){return"_"+e}))).sort(),a=document.createDocumentFragment();r.delete(v);for(var n=0,i=r.length;n<i;++n)jQuery(document.createElement("option")).val(r[n]).appendTo(a);w.empty().append(a)}function f(){for(var e=State.size,t=State.expired.length,r=document.createDocumentFragment(),a=0;a<e;++a)jQuery(document.createElement("option")).val(a).text(t+a+1+". "+Util.escape(State.history[a].title)).appendTo(r);k.empty().prop("disabled",e<2).append(r).val(State.activeIndex)}function p(e){if(null===e)return"null";switch(void 0===e?"undefined":_typeof(e)){case"number":if(Number.isNaN(e))return"NaN";if(!Number.isFinite(e))return"Infinity";case"boolean":case"symbol":case"undefined":return String(e);case"string":return JSON.stringify(e);case"function":return"Function"}var t=Util.toStringTag(e);if("Date"===t)return"Date {"+e.toLocaleString()+"}";if("RegExp"===t)return"RegExp "+e.toString();var r=[];if(e instanceof Array||e instanceof Set){for(var a=e instanceof Array?e:Array.from(e),n=0,i=a.length;n<i;++n)r.push(a.hasOwnProperty(n)?p(a[n]):"<empty>");return Object.keys(a).filter(function(e){return!m.test(e)}).forEach(function(e){return r.push(p(e)+": "+p(a[e]))}),t+"("+a.length+") ["+r.join(", ")+"]"}return e instanceof Map?(e.forEach(function(e,t){return r.push(p(t)+" → "+p(e))}),t+"("+e.size+") {"+r.join(", ")+"}"):(Object.keys(e).forEach(function(t){return r.push(p(t)+": "+p(e[t]))}),t+" {"+r.join(", ")+"}")}var g=new RegExp("^"+Patterns.variable+"$"),m=/^\d+$/,v=[],y=null,b=null,w=null,k=null,S=!0;return Object.freeze(Object.defineProperties({},{init:{value:e},start:{value:t},stow:{value:r},unstow:{value:a},watch:{value:n},watchAll:{value:i},unwatch:{value:o},unwatchAll:{value:s}}))}(),LoadScreen=function(){function e(){jQuery(document).on("readystatechange.SugarCube",function(){o.size>0||("complete"===document.readyState?"loading"===jQuery(document.documentElement).attr("data-init")&&(Config.loadDelay>0?setTimeout(function(){0===o.size&&r()},Math.max(Engine.minDomActionDelay,Config.loadDelay)):r()):a())})}function t(){jQuery(document).off("readystatechange.SugarCube"),o.clear(),r()}function r(){jQuery(document.documentElement).removeAttr("data-init")}function a(){jQuery(document.documentElement).attr("data-init","loading")}function n(){return++s,o.add(s),a(),s}function i(e){if(null==e)throw new Error("LoadScreen.unlock called with a null or undefined ID");o.has(e)&&o.delete(e),0===o.size&&jQuery(document).trigger("readystatechange")}var o=new Set,s=0;return Object.freeze(Object.defineProperties({},{init:{value:e},clear:{value:t},hide:{value:r},show:{value:a},lock:{value:n},unlock:{value:i}}))}(),version=Object.freeze({title:"SugarCube",major:2,minor:25,patch:0,prerelease:null,build:8585,date:new Date("2018-04-30T21:28:26.407Z"),extensions:{},toString:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.major+"."+this.minor+"."+this.patch+e+"+"+this.build},short:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.title+" (v"+this.major+"."+this.minor+"."+this.patch+e+")"},long:function(){return this.title+" v"+this.toString()+" ("+this.date.toUTCString()+")"}}),TempState={},macros={},postdisplay={},postrender={},predisplay={},prehistory={},prerender={},session=null,settings={},setup={},storage=null,browser=Browser,config=Config,has=Has,History=State,state=State,tale=Story,TempVariables=State.temporary;window.SugarCube={},jQuery(function(){try{var e=LoadScreen.lock();LoadScreen.init(),document.normalize&&document.normalize(),Story.load(),storage=SimpleStore.create(Story.domId,!0),session=SimpleStore.create(Story.domId,!1),Dialog.init(),UIBar.init(),Engine.init(),Story.init(),L10n.init(),session.has("rcWarn")||"cookie"!==storage.name||(session.set("rcWarn",1),window.alert(L10n.get("warningNoWebStorage"))),Save.init(),Setting.init(),Macro.init(),Engine.start(),Config.debug&&DebugBar.init();var t=$(window),r=setInterval(function(){t.width()&&(clearInterval(r),setTimeout(function(){UIBar.start(),Config.debug&&DebugBar.start(),LoadScreen.unlock(e)},Engine.minDomActionDelay))},Engine.minDomActionDelay);window.SugarCube={Browser:Browser,Config:Config,Dialog:Dialog,DebugView:DebugView,Engine:Engine,Has:Has,L10n:L10n,Macro:Macro,Passage:Passage,Save:Save,Scripting:Scripting,Setting:Setting,SimpleAudio:SimpleAudio,State:State,Story:Story,UI:UI,UIBar:UIBar,DebugBar:DebugBar,Util:Util,Wikifier:Wikifier,macros:macros,session:session,settings:settings,setup:setup,storage:storage,version:version}}catch(e){return console.error(e),LoadScreen.clear(),Alert.fatal(null,e.message,e)}})}(window,window.document,jQuery);}
+	</script>
+</body>
+</html>
diff --git a/devNotes/sugarcube stuff/important for updating sugarcube.txt b/devNotes/sugarcube stuff/important for updating sugarcube.txt
index f8495831b6b..ad4f0a619d7 100644
--- a/devNotes/sugarcube stuff/important for updating sugarcube.txt	
+++ b/devNotes/sugarcube stuff/important for updating sugarcube.txt	
@@ -25,7 +25,7 @@ CHANGE 2: Remember scroll position
 
 Edit the sugarcube header and change:
 
-    var t=jQuery(this);t.is("[aria-pressed]")&&t.attr("aria-pressed","true"===t.attr("aria-pressed")?"false":"true"),e.apply(this,arguments);
+	var t=jQuery(this);t.ariaIsDisabled()||(t.is("[aria-pressed]")&&t.attr("aria-pressed","true"===t.attr("aria-pressed")?"false":"true"),e.apply(this,arguments))
 
 into this:
 
diff --git a/devTools/tweeGo/storyFormats/sugarcube-2/header.html b/devTools/tweeGo/storyFormats/sugarcube-2/header.html
index e29045f1317..b0325a83edd 100644
--- a/devTools/tweeGo/storyFormats/sugarcube-2/header.html
+++ b/devTools/tweeGo/storyFormats/sugarcube-2/header.html
@@ -6,7 +6,7 @@
 <meta name="viewport" content="width=device-width,initial-scale=1" />
 <!--
 
-SugarCube (v2.25.0): A free (gratis and libre) story format.
+SugarCube (v2.26.0): A free (gratis and libre) story format.
 
 Copyright © 2013–2018 Thomas Michael Edwards <thomasmedwards@gmail.com>.
 All rights reserved.
@@ -96,19 +96,14 @@ var saveAs=saveAs||navigator.msSaveBlob&&navigator.msSaveBlob.bind(navigator)||f
 <style id="style-normalize" type="text/css">/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}</style>
 <style id="style-init-screen" type="text/css">@-webkit-keyframes init-loading-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-o-keyframes init-loading-spin{0%{-o-transform:rotate(0);transform:rotate(0)}100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes init-loading-spin{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}#init-screen{display:none;z-index:100000;position:fixed;top:0;left:0;height:100%;width:100%;font:28px/1 Helmet,Freesans,sans-serif;font-weight:700;color:#eee;background-color:#111;text-align:center}#init-screen>div{display:none;position:relative;margin:0 auto;max-width:1136px;top:25%}html[data-init=lacking] #init-screen,html[data-init=loading] #init-screen,html[data-init=no-js] #init-screen{display:block}html[data-init=lacking] #init-lacking,html[data-init=no-js] #init-no-js{display:block;padding:0 1em}html[data-init=no-js] #init-no-js{color:red}html[data-init=loading] #init-loading{display:block;border:24px solid transparent;border-radius:50%;border-top-color:#7f7f7f;border-bottom-color:#7f7f7f;width:100px;height:100px;-webkit-animation:init-loading-spin 2s linear infinite;-o-animation:init-loading-spin 2s linear infinite;animation:init-loading-spin 2s linear infinite}html[data-init=loading] #init-loading>div{text-indent:9999em;overflow:hidden;white-space:nowrap}html[data-init=loading] #passages,html[data-init=loading] #ui-bar{display:none}</style>
 <style id="style-font" type="text/css">@font-face{font-family:tme-fa-icons;src:url(data:application/octet-stream;base64,d09GRgABAAAAACWoAA4AAAAAQhQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAABRAAAAEQAAABWPihI/2NtYXAAAAGIAAAAOgAAAUrQXRm3Y3Z0IAAAAcQAAAAKAAAACgAAAABmcGdtAAAB0AAABZQAAAtwiJCQWWdhc3AAAAdkAAAACAAAAAgAAAAQZ2x5ZgAAB2wAABjCAAAq+uJ4WNtoZWFkAAAgMAAAADQAAAA2BZlJs2hoZWEAACBkAAAAIAAAACQIJwQZaG10eAAAIIQAAABuAAABOPTeAABsb2NhAAAg9AAAAJ4AAACeojKW6m1heHAAACGUAAAAIAAAACAA6gvwbmFtZQAAIbQAAAGPAAAC/eLsyKlwb3N0AAAjRAAAAfwAAAM0412SIHByZXAAACVAAAAAZQAAAHvdawOFeJxjYGRWYZzAwMrAwVTFtIeBgaEHQjM+YDBkZGJgYGJgZWbACgLSXFMYHF4wvPBhDvqfxRDFHMQwDSjMCJIDANLeC6V4nGNgYGBmgGAZBkYGEHAB8hjBfBYGDSDNBqQZGZgYGF74/P8PUvCCAURLMELVAwEjG8OIBwC4Ywb6AAAAAAAAAAAAAAAAAAB4nK1WaXMTRxCd1WHLNj6CDxI2gVnGcox2VpjLCBDG7EoW4BzylexCjl1Ldu6LT/wG/ZpekVSRb/y0vB4d2GAnVVQoSv2m9+1M9+ueXpPQksReWI+k3HwpprY2aWTnSUg3bFqO4kPZ2QspU0z+LoiCaLXUvu04JCISgap1hSWC2PfI0iTjQ48yWrYlvWpSbulJd9kaD+qt+vbT0FGO3QklNZuhQ+uRLanCqBJFMu2RkjYtw9VfSVrh5yvMfNUMJYLoJJLGm2EMj+Rn44xWGa3GdhxFkU2WG0WKRDM8iCKPslpin1wxQUD5oBlSXvk0onyEH5EVe5TTCnHJdprf9yU/6R3OvyTieouyJQf+QHZkB3unK/ki0toK46adbEehivB0fSfEI5uT6p/sUV7TaOB2RaYnzQiWyleQWPkJZfYPyWrhfMqXPBrVkoOcCFovc2Jf8g60HkdMiWsmyILujk6IoO6XnKHYY/q4+OO9XSwXIQTIOJb1jkq4EEYpYbOaJG0EOYiSskWV1HpHTJzyOi3iLWG/Tu3oS2e0Sag7MZ6th46tnKjkeDSp00ymTu2k5tGUBlFKOhM85tcBlB/RJK+2sZrEyqNpbDNjJJFQoIVzaSqIZSeWNAXRPJrRm7thmmvXokWaPFDPPXpPb26Fmzs9p+3AP2v8Z3UqpoO9MJ2eDshKfJp2uUnRun56hn8m8UPWAiqRLTbDlMVDtn4H5eVjS47CawNs957zK+h99kTIpIH4G/AeL9UpBUyFmFVQC9201rUsy9RqVotUZOq7IU0rX9ZpAk05Dn1jX8Y4/q+ZGUtMCd/vxOnZEZeeufYlyDSH3GZdj+Z1arFdgM5sz+k0y/Z9nebYfqDTPNvzOh1ha+t0lO2HOi2w/UinY2wvaEGT7jsEchGBXMAGEoGwdRAI20sIhK1CIGwXEQjbIgJhu4RA2H6MQNguIxC2l7Wsmn4qaRw7E8sARYgDoznuyGVuKldTyaUSrotGpzbkKXKrpKJ4Vv0rA/3ikTesgbVAukTW/IpJrnxUleOPrmh508S5Ao5Vf3tzXJ8TD2W/WPhT8L/amqqkV6x5ZHIVeSPQk+NE1yYVj67p8rmqR9f/i4oOa4F+A6UQC0VZlg2+mZDwUafTUA1c5RAzGzMP1/W6Zc3P4fybGCEL6H78NxQaC9yDTllJWe1gr9XXj2W5twflsCdYkmK+zOtb4YuMzEr7RWYpez7yecAVMCqVYasNXK3gzXsS85DpTfJMELcVZYOkjceZILGBYx4wb76TICRMXbWB2imcsIG8YMwp2O+EQ1RvlOVwe6F9Ho2Uf2tX7MgZFU0Q+G32Rtjrs1DyW6yBhCe/1NdAVSFNxbipgEsj5YZq8GFcrdtGMk6gr6jYDcuyig8fR9x3So5lIPlIEatHRz+tvUKd1Ln9yihu3zv9CIJBaWL+9r6Z4qCUd7WSZVZtA1O3GpVT15rDxasO3c2j7nvH2Sdy1jTddE/c9L6mVbeDg7lZEO3bHJSlTC6o68MOG6jLzaXQ6mVckt52DzAsMKDfoRUb/1f3cfg8V6oKo+NIvZ2oH6PPYgzyDzh/R/UF6OcxTLmGlOd7lxOfbtzD2TJdxV2sn+LfwKy15mbpGnBD0w2Yh6xaHbrKDXynBjo90tyO9BDwse4K8QBgE8Bi8InuWsbzKYDxfMYcH+Bz5jBoMofBFnMYbDNnDWCHOQx2mcNgjzkMvmDOOsCXzGEQModBxBwGT5gTADxlDoOvmMPga+Yw+IY59wG+ZQ6DmDkMEuYw2Nd0ayhzixd0F6htUBXowPQTFvewONRUGbK/44Vhf28Qs38wiKk/aro9pP7EC0P92SCm/mIQU3/VdGdI/Y0Xhvq7QUz9wyCmPtMvxnKZwV9GvkuFA8ouNp/z98T7B8IaQLYAAQAB//8AD3icrToNcBzVefe9/b3dvd29u909/dyd7ke6k86yLEunOyHJsrCxJWyJGmEcLMDYxBhHNsZQBzOAkjQmFDrGIq5gHEIcCILOAGZq3IQO04RkIGkgaUMKMbQznSlJW0wgJtOQHxRr1e+93TvJwq7JTD3y2/f//bzvfX/vAhAIzL3KPcYNBFIB8UR9EJYuAcuAqGNbOiwDSczkuorlaJ6WTeVSRwMIDveY8aN20GztjzMhW4P2H+kNUPM5NaVNQE0K3tWM77vv8rJqgnT33VJE4WWIfd/QbKHZjcXcZiFAqjCDgUJA/mZTWOIIwi0vAwNiUjkW9THIZs6DAbnj6ffGP/P+0y2vv+5SXGLKuXHJPJH92c+yT7x3883wnI9W/DxI4T9+bm7uOL+MUwNywAg0BJYFQgNKa2NDzFBEjqeM0SFXLHU4YKe7yjFoSmdEKWw5nemOUj5czMXCliilM7lyuFgqp3HaDf1j/fhH+s6cfm4MEpA8c0BSQBO5CUkD5fJi05kDjSUoNnETTUUSXtpPVm0aGHDdmV0nNkPiMUWeHZMVRSZPSlp0dqypCKVG8iT9IK5AEeamyZGAjecW5tm5SSBm8ojiSqBsYoXDTRtuymw13V8axjB+p2EPlsMGcRzTTRkGOLRpmk/AzSZ+A97ecx+QN8g9gUbc26F7N+GJiN5pLGMA8hUo7EQcHI455A0PwrS3I37N+bZhTE8bex1aeeIJ4+MTjTY6gcH+iIvgGWQRdh2TR9sS81kspCzytguLfBcyuBOLXuhwYnZnh8NFUs6plLPLScGpWBKwkYztwsop7Hie9r7rYK/9brWXTg9U+RiBX+GJiyc0rgIv7UNJe3vPjrFdyZOV/byNUkyW/0AuIi/h+h6U5a64SmW5ieGcya2AYimG+EUtnZN08ImgveV+KOYykiiJVMrbkI+dHUkC9+nyPUFdD94j639r1uTq7FiSNrR1hXS8uLbGapYUSbpaJvzmp5aODbU9iJNBU1gJa5LFTCqihNpDigmWWtc2GjUy7Y2m3hHk14qmPJXp2cTInZudO85dhzw2AuXAJQHl+Yt7l0RVjkO8u4q5JZARE2A5yNxStNgGWcQSj7izA1HucCgJOsRsb7xYWgn9XAwvRqaN4HAS4ENF3kXFFovJ/muW3zsYDK3jxaCQbOouOPXZPmBDNZG4krS0N2/9wakf7hHv+IcPX/jcaGWZAp9fvrFtv66UeSlXn4zYdZo5kLNwIJJRTbEu3jz62Zf37Xv5l7RAeugZfAQ7kJ5koA3PoJB1eP8MpHRVWqpygyITpiKz4DCoHMENlun+wrDA0bNZ9jmJZdZwhhx9UnewMKztg2yAlie9j6O7Lzrks7tYdRdOO4u/FJ9e5G93RyFTJ1f5G17IZDs7z25uEfuFBYwlvYpUUuTnKJO6umg5IymD88yGGxbycjN2JOkIVk6wUoEzm/0O5T/Owb92Jg8NyL/6qFrl30IZ5nSgMp3nch7DkvOMCaMeoQ1U4JZxQncenmAMmcAei/S7V9CvAccW8mczwtMCceSQ8nwhXWuKAeQPJbRCc9RnhoSyhvBL+WgxTzsk0Y567IFj+35wa4Xq7ykS5YIm7UIdq4iCfKcsiIoSvFFWONUnFovZoXHKhXE69R9hTOIEgZPcJ0VZRrx+i3j9hhtFPqQDnYjX8uaEpS2+F4twiVkOylSJAwfvBZO3XBnoTaEHtltSWAGKIEl3SJIQ1CRESIRnLFtJRc88GckEbQuOBTO5zBXziL0JIPKiyMtzggwiMc+czmbDEbDMbJaLhC3LPzPuFOKaD6zEM+tt15gNxTPLIg5dvglCfGmbmakYmqmKsEfRVOWWAXjqvEzVeamT6botq9321Vu2rIb7KOrufmZ24LWmoiI3yspJJ65e704JprBSFGH3pxXLhAQe9fBzbM1rq7YAm1dsctvZSiqu8G94rxwS/LQ7JYorRR0XXq/GmSh4dJADKAsSk70ajQ8gHdE0MhzVjOCbVDSvKINd1PhKVN+fgMTG2zYCvIaq+V2mmsNTP36IRLD6xO7ejWTDisfc7zCVD6tQW+/eMTW1Y3fSt20foe+hBZpQ3zfGfH3vyzmCZNvHFoJFVPrRjj7m6I26M3r7KHQxgD5c2H/4tQdIeJLJ+yQDvTsZOwv4jYfJQxVaxxmtKtNTTVaQnRmS6kkWvfBoNvCeIT55jt41PJZwpg3YYeJYGK+dppgK/sF+R/8ggZIOBlnyNoK/qpwokLZ6uCFRKCTKV8HeGaYksPg2Xj/3fyQZb6dhGWv2QLLQU4DW7lZwf77Hw+vb3AjzexKIVywkEXoGlB1JUqr4FW3A7BZlDzgzhZ5W0tyfI1da7mmn13JvsZOFxLuJIRsmLXJVskByA41iu/uvSds9bWOnPZQ4lSgANm+xqQ6gMPlGH2YR79rSDIXLXQBujHZSxkCpSIeynwCdNxEFJ2HVmSDaFPxQYoIN2BfCM8E6zTCu66VDSQ97KkPfIa8i7nGUITNAZagDhYFJjeg5rXh+bcBuYamT/JWmRVE8Iopeb/3ud1ZdSIs4TkQLcaogJ63Z5dGUxEfefz8qSKko+Qm2PB/ZgyEEMngmjkjovYB0GBog+n9COzD7MiQ73pfOA5S8NLseIst+QWbPC9y/J8dRv7QFliCNWcnzAYlI3fE8hdNVbBPY1WEeZxm8m5mKOdypQRG1qhiRgQBnZbr7N20qT1ipoPsLVYWEGq8hE3BoLPn2tV8PhWVe0WTB4nIN3WMD7cmIiDZEhaSSROulWMbk2+sX4LIs0Iq4NNdUfV3mDeqCbaEOligmbYSFCaU0VRVULrhTKoKlIMubNvV3ZyyOByWMilXkBpNjcIjihTjBrwzF/bmKF1iMJNsHxrobcnxElDVF0C3u69fevP5txIsEcUrVZyR96DPqiI/C+zGTp0uZGkXVP6PG1RncET7Ey/eKjnX885QeWw83krsCIVyvMp8TD9P3rEvMFUkFZxS6Rw25ytWQJ/52/tqLyQSDrc7Dpiq/H2XDgYsVBgjnK7BF95EwLKLNKLh0bg5x74VXPNwJO1fq7raB588j7pbhat78pDKjPE1td1Jl6Hhn8Q73LdISsCrrgwuijljQ28Tinnavx+Xu9ap6jYqn2QzNaly7RoVJ99MoBl/DvmtU1X0Lu3FCnO37XXKEW832Nai8BYnDKKvIF92W3F9dotK94ahCNyJPuW+5b2L1WrQ2X6fSc1TBejLg77uvsm8FX2b1ghWk6cbjuB1FUIVm9y0f6aMKfMbdhjshNGihFKgIgE7044ZvkbXz+zbh3chXN/f35Z6mOyF2b/m7H6V7HVV3XYOYtiDOig/J25bh+xPuAPMdxRPRc8V1YU8Z2mEv9OIO2O6DTg8Wtt2C3+lCcjBRmEaNVbDhi0nLnUK1ttvqdVpsexruQ93WGnf3T9s47N+te7nN5FeohRGeChUfIvZx5htAPYTNjQl/ea/tTlkW7LZ7nIK3dyNsGUwWpq0+a4k/ALvozB5nurkCqwthUdrq5mnzBD/tu5rpfPVYuC6L0VZwnMfd/YnGxgTc97jjFNjGFvRQ6iyrYPfZjyPVyQJM233YRF5YVb1xgLzjwVMX3NOwZ/K7wtJZx4W8pGRNNzf4ZOBeCKgPCxuKcUYmxQNycbjP5wGlEJGk8OZc369tR3gtaZ+X6CbmVkIONRVJcugpluk1TQL1Fqmfy1ELVi4hYy1zJhYNj4zu7RkfbuebN17fv+q2Fj4sDgtE7Hv2uk89uneIH7j9yNWjR1YMmUvJSzO6s9QcGWkbHt83PtzW0yWCMMLr4roNcMm+o88e3XdJ/0VDkWiFDxSv5YhXq8d3nVAryjjtoDXp7Ojn2gg6ijGHIUxDpQZ0Y2lQym2+5NZHN219to8XhsUw33Lb6p6dG9DVGN598/bmkXA0NoPeR2t4qO/h0U8d3bcKtmB5yeilos6PCCB29fgINjeNmEsdfaYmGhm6qB9RrPhEx7mrEbfGwCDauZXNJo09wLJ1oAhSe1NxWkUDKKJofMqeE+szt8S4K9JYmjbLXRRtylOU1vWN//mVy4/0DVGNqM9QJT7SvL287ot5MSZoGC/oyHTWO7p3vdd5s6RB439/5fKH6aIaEDh46AVkpMqWo1YdaWpe1690hzT4e79jxGuLvD+R0iUwuiJ+TLUM4+yrA8aAdsVAsX1JFgMsTkCF4ceBdtgLZ8oXaENnPpfPipLA6A57nn4+XI1hUbCoYmig1KP5pH44Kybnq4cUyatKivvTmXpeOC7y8J4il3yHncWVz+SDrc5zTqucPyYro3Af7XP30/I8ddJxsQAgXIFbz37QdsmqNhJl0K6145C0rkWzExAX8aM3sDpwYyA8oF83PNBXWu7xRPQMIT1E6syw7M4F2tFwOmyhVKQ7+uH/lz9DribLBF4jsuze94lYBc+7LzLOXMw4c+66u52EZz/QLEWxyA0XZFuA9+OVUfSTwyzWCw0o3a0Jx9BYTrKp2AZiEi9qGSs6OFhZkPboRDXesZKpbcd3UOjV8dMgNNQhr1pJh0Qy5petVIQ48Zq1KefMj7zIhluf3pQeBs5JfUuJMGcgHFRik16gP1mzHX2EmroaYhmVysETLOo54aSGU/gHzbEwdRvCMXuGhUczHj3HkZ42Rk9LYIDS07c8YRuqSBg91Pmnwo8VghFR2Y9oKTmxziSwi0HTN2I1cMvT3E7Fezk/Pae1UnYyUwqdRnqCNZPoXSJSk6hxGWmRBKqBSMqyTP97/wmaJcQCGpqbG5Iw6vhEtHpEVWihepULpFG3rqG0rOha2qTxJIC0YOSYFjrxEtP8nlSlIxvu7PLcRKmS76mk04Sq0HoTqJ04CcfcK+DDIU34mhCX/dByaAiDy58ibicVeRdNJrNyezI2G/ESlUKsZDxiOtLJk/ChXCc9Imp+1nO2xL6QZIkkWiizM7SHIF9q9K8ZpQDx8zOjgWaMzORvdrSGPJ2sEzRYZer9O2gmWD4zSTr6sSuH8Uc/IGjmyLIMOHUV0G48840967ixy2v6zIhcU+pr3bDj9u0bc1xfqUbO9sUuH3O/iqEbFPqaPbOBZuFTO57rx7mxvnDL7avRFLah/ei55LZCpKddjqz4OxhyH6YRLuzA0rcfY5yC8rQTcb08JdLYleZW8TZ0lGgSCyVfQoQtRDiPV6BqKLryzL7kqRmkuoGdE5UzlKWy39mJQlU1OChf1KrEHOYcsdMhvaO3j5JN+zZBXJZ2Kmq0WRSMDSFJGqmtC0q8eZesmfWxPxNNca3DC3KzYsg7MBBXhJ2yHmvy5sojNXVBmQvfhUdoxJ0NgiENWTzfqwd3SOjC927ceNvGjbfTUTNp13eIumhvAKEvJA/HTUW6Maj1CeJAUtBFrcOI1xugSWxubV1qqaRJ1gZvqiHLbKqwOo5TR9hELw7/iBsjL/t6WXl+SWN9VOO5RfnTtJcwreTFY35bWthGB+bMB+yOcGEDg4bztxbkUR0wh1h2kJWgV0awMR+Hjvn5mlrmu9BMCMpYsZynmQC8KR2xco4maZIg5jN5CU86ViJ/s27nzqlxgFc6167fuXP92s5XYOdDO8j4pYNYw16IjR8eH79U0ra3Y6V9uyat20l2P7AbsKpjJ81Tzs39nt9PXgqYeL9LNB+Yi9uMN1BEZ0knnvijDiZLEDg6dJ30NuA9oQEVh9U0uk/kgO8A+R94pvWy8YveWn0ZWbfmLepJXdqz5Z5B94qhu7d2k75r7l0Lx2gVtvTMr6FXgDY7p56d6qSNS+/e0ke6r//CQ1/YXiTdW++u+FK/529HfC3klvzNhK3Te4txIUFlkuQ8tIjguXrUG6WAPWgMsIcDF664d3v3DHXwhQ07YMul2I9QDvtQXz+bokoej3uUo5mt1Qi7f/m58pGoIAyavsnnFiUl8cbhKTpRmI+CKw9Y1oKc5GvZZJCT6kWJcCHNzzDS3KTQKEocr/6Fe1GoUf+1rq/QG/W/hs9goz8E649Xc5M6HxXjAnDV9OT9spBFuwOC26Prv2bzQ3RhCHfwaYpW8+LxqOzlYOZR7/Kf/RbmXMktCzAr3jWP/Kqt5KUqZDq4uTqyBbYGfL17HcuL19KcjykyePSoAP2bNgILH1qOXXFwA9l471P3bOIvOwRXL8j+k0OjB6cPjrLCfe2sXP/824QcsAMZlOmGWiMo0rwb4K1qo+mH/LkBVlXdA+cFXFFWvz0//AXvbZ6+ac3GoyzHHvXfzCqvNILfLi9qV7KBJ/03OPbql/A+XlcDa3g9C1/rnPPU/XzkR4E3q/4p6kHES6V3vVx1M7x3EG4RnpwfhuT9B8mTF4BG6w/vZp7SbtoL4oJBkCuYe2+LL3GT6CtdzGKjNas6FGaHETyqOIeljCSdy4azYTwkLxFIL08OHSKaM+7sonl9vERpGguhHaS5bUgz24xu3ETTPsVKqntkIZfpqR1MdBfQKd6hmiFHviU1QZ260MQ2FSOcbfDmVoyFeHkb9rq/db9KFWsP6uutqz6LgZW6R+JrIjp86Gp6jSXL+7RoUv38yjEracH0NiVpKdu2ISBl27QDRdTKAT9WHoc/IL/p7w4sptcdmtpFR6IcZRnNXDnaT909x7Ykjj6PwmlFdP9FMuWgQvb8nAiKpHB7iS4/r+pk678LRCWOGpq9QwfOlOGlbpDkEPwThngKL7puibAY5LvMl+ZQQ8Yx4mxF/wZjkGJ7a3NjKl5jyjiJ/hAhLzVVExN+9qMpZsAyWImhu/eF2NlfcmS6bxq6lNlO9CZvxpjon/G7R5k1SqVwuFwOv3HTTZn0TTelSQs2wtjpPkNH8D/RH++b3mkosx0KLkzSlfi92qSrzPKX2arMTe692ChjJ7T5I75t3I487EIe5jXKQ6pg6Q83qs/lEn3noSFynmb4aOrBF9sEoBuHhKFYcL11up41emofLCQGE60wVdeDClSvn5qqM41Go7t+iuWUHqzrNrOGWTsFst5TtwLXXPk0Syc9fSX2rsBFmzadY6C/Fge8d+e5uXHkfyiQRc6vwTu2Ylkhz95Fq2/8+YVv/CxSqb7xxyqhDjDBRxFBxcQnSYzeBfrYNqGJjej4TLDfWEywII42hqZ+/BB/6I2DkCn0WS9uv3PD4Z0DpG/3oemDe7u5NS/aMOWtol60t2qCusYTSi19uHn1iHiQOpz2i2v6xx/4xqE9PfyqHQ+N3Ln9RftsmoxADcYAyvMt9Y73lr7wdwTUmb8g/u53GOaw6pPizJC9MJrEj7noG9sG1CNhmWN2BcF2dpRzGBfz5XrojEWZRxuj6aCYY0tiLJOTMmK2uJJQjxj/8hjKEB1iGHCj4JTpxczQzEtehAevG+5pUO12twtCjfG4I979yJB4a7RlZbDdVGV1OMgDQPZQY+ERm1wqiVyYJwJHMrGaP+o9YKbUlE2ApL6YEiyylNT9ESff74qtvCgqNSZcBVOa+2Hr9q9E70rVikGTcxRJ4BSQa6ImzpQIEXk+OFbqhvQRQ4souDWotqAiL2Xqm+AZ/Yz0kXcCOnvfqg1779vzOXtqtvPMii9Ig5+dwj87Kf4bQ6EJfdRt4PyQZYFY0/NXERbE5vPzi+As2njhToFqfp7h6ufXYTFiZ6MCryyG/xQX5qIBFddLfr6b+SYsHc3P1ocikRD5rxCMuNslxeBKuiZjzQpUY6kFvwNgPtyioHRxkEr9fv+HE5AwHFc9q0neOXOa/kiAi9ByQX3et1fZb2+q7yCL914QN5y1GVt/DOVaR29JPCECXV9iGaI84A7sQ9W3Y4dLZe4vVR1Mxd3Hc7rq7lNVOKjqHM9xqmiceVWXNTgoiO6fswpN0R/EfnefyHtnMvcsdw1nzMOJiSzGpQ+SPmclxmVRqlVM0HG5wNFSQYAIRhjE3ZDTsobwJbifVegTxj7sx7mCRwvp5XSWh6/QYs/TwjyMahKsVCYZVaeECMTR56MplPyzCfrSPO/dL0m8RwvpQ1oS56aF7i/58Mpn0eOHaKxcTNGd84cLd4oCvXPu3B+4a8kPUA7rmSzJ7E3Zy7OzuJEm/Mt+7Eh/pyDPMx7xF7luuh/CY9hDe4WZYLqvW+YhFlJiWX1PO0aOB6L0t3AVOUK7V/XSqP8Dx/CavHCY8erwC3jhyKHZR2nu9wXvpz4vKN4dwOIA22sZ/S1RTbhyBxbvF/XeXzEQpfEUTa0hLTTE+RigN9vzQhBp0RzT5OUaKazwlhEU8u0fx8D9XmGdwVmmZmpavDGuichhJJUz1nn5pp9yj5H3GG7DgZtovmnn5YNFiiT/JyIZqw6Uvd+i0TRIFwumFw7SVEg/TYvQDM/8hE9O4uTWEVlECuyU2tLW1oKK3jIk+bItDxy6TZKw36mttdZgKDxo1fIRzrFMSbrt0J/Cl8KVh1OcozuqGUyO7RxLBk3UrA6XfmDTF97qwAErpOl655GnjnTqOidyIQsHO08G/hcLt/j/AAB4nGNgZGBgAOLaW41M8fw2Xxm4mV8ARRguss1QhNC5H/9//Z/FUsEcBORyMDCBRAFTFwxveJxjYGRgYA76n8UQxVLGwPD/FUsFA1AEBfgBAHyYBUh4nGN+wcDAvACCWfSBNIgviMBM1kA6koGBMRWVBqsDYqYmiF4wHQkxg+kUBMPVWEP0gTDYvBdoahZAzYxEY0ciuWUBFjkoZimDYLC8IKpehmsQccYvSGYgYZB7YBhFL5o8cxTQjDUI/wIArpclrwAAAAAAAAA6AIYA3AEKAUgBgAGgAfoCYgKqAwIDOgOGA9wEQAR4BLYFAgU8BZoFzAYMBlIGmga6BtgG+AcYB0QHcAecB8gIAAg2CG4IpgjyCUAJrAo0CtALOAueDAoMYA0ADVANjg3mDiQOjg7GDvgPOA+ED84QPBB2EN4RNhGgEfISchKoEsgS6BMGEz4TXhOSE8QT+BQsFGIUiBTWFX0AAAABAAAATgBuAAYAAAAAAAIAAAAQAHMAAAAiC3AAAAAAeJx1kctOGzEUhn9DoIKgLloJdcdZIRDK5CKhSqyoogJrhLJDwgyeSzpjRx4HlGfgLcoz8Dp9j+76Z2KhqFJmZM93Ph/bxx4AX/AHCqvnnG3FCgeMVryFT/gReZv+JnKHfBd5B108RN6l/xV5H2d4idzFV/zmCqqzx2iK98gK39RR5C18Vt8jb9P/jNwh30fewaGaR96lf428j4l6i9zFsfo7drOFL/MiyMn4VEaD4bk8LsRRlVZXouehcL6RS8mcDaaqXJK6OtSml+lemTrb3Jp8Xmm/rtZ5YnxTOivDZLCur401XgfztNytec5HIWSSeVfLVdxHZt5NTRqSIoTZRb+/vj/GcJhhAY8SOQoECE5oT/kdYYAhf4zgkRnCzFVWCQuNikZjzhlFO9IwvmTLGFlaw4yKnCBlX9PUdD2Oa/Zlay1n3dLmXKei9xuzNvkJ7XLvso2F9SaselP2Na1tZ+i2wqePszV4ZhUj2sBZy1P4tmrB1X/nEd7XcmxKk9In7a0F2gv0+W44/z/KQo7lAHicbZLnlpswEIW5Bgy4bLLpvfeE9N57z76DLARWEJKOEEucpw8CO/kTncOdT6PhnlHxRt4wJt7/x47nYQQfAUKMESFGggmmmGGOLezBXmxjH/bjAA7iEA7jCI7iGI7jBE7iFE7jDM7iHM7jAi7iEi7jCq7iGq7jBlLcxC3cxh3cxT3cxwM8xCM8xhM8xTM8xwu8xCu8xhu8xTu8xwd8xCd8xhd8xTd8xw/sBLUlZuIkZZW2q0hzahvDRqocUyIpE4EWTR1WXDZ1sGRCz5yklBsqWBZwmauZk01mTqxl0nIlUyLs9r/Zej35m4kFl2XKftlAKFomTlKlmfQ1l74lRdB9dbxQqqyIKbc2MPQZGqbFKsqVaYnJ4ky1Ms24iQXLrYPE8GLZ07jRfaIvcf5JX+NoMhQ5jLoqFwenBS8Gpw7WTh05py6MaOtT2ibEGNXWKW1Da0i9nPY6dNe7CEWy7pc+5EJpvfJVnvtUFUHFZBPWS2LYxKqiECztVpINypAuGS2nvQ6Gs+H0hsk0U3ZznDETguua1/MNpLvMWH/RFGEuuobCihScxqS2zPC6jH4rVaVcxn1UjQ1yJW1QK2MTJ6nrPOqp0d3Vk1WoSVOz7p0oHeWdTbpoh5i3sVWpezp23AGTWch+Mmonu0o0Vb+l6RqdabLmRnveH9ru7j54nGPw3sFwIihiIyNjX+QGxp0cDBwMyQUbGVidNjIwaEFoDhR6JwMDAycyi5nBZaMKY0dgxAaHjoiNzCkuG9VAvF0cDQyMLA4dySERICWRQLCRgUdrB+P/1g0svRuZGFwAB9MiuAAAAA==) format('woff')}</style>
-<style id="style-core" type="text/css">html{font:16px/1 Helmet,Freesans,sans-serif}#store-area,tw-storydata{display:none!important;z-index:0}.no-transition{-o-transition:none!important;transition:none!important}:focus{outline:thin dotted}:disabled{cursor:not-allowed!important}body{color:#eee;background-color:#111}a{cursor:pointer;color:#68d;text-decoration:none;-o-transition-duration:.2s;transition-duration:.2s}a:hover{color:#8af;text-decoration:underline}a.link-broken{color:#c22}a.link-broken:hover{color:#e44}span.link-disabled{color:#aaa}area{cursor:pointer}button{cursor:pointer;color:#eee;background-color:#35a;border:1px solid #57c;line-height:normal;padding:.4em;-o-transition-duration:.2s;transition-duration:.2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}button:hover{background-color:#57c;border-color:#79e}button:disabled{background-color:#444;border:1px solid #666}input,select,textarea{color:#eee;background-color:transparent;border:1px solid #444;padding:.4em}select{padding:.34em .4em}input[type=text]{min-width:18em}textarea{min-width:30em}input[type=checkbox],input[type=file],input[type=radio],select{cursor:pointer}input:not(:disabled):focus,input:not(:disabled):hover,select:not(:disabled):focus,select:not(:disabled):hover,textarea:not(:disabled):focus,textarea:not(:disabled):hover{background-color:#333;border-color:#eee}hr{display:block;height:1px;border:none;border-top:1px solid #eee;margin:1em 0;padding:0}textarea{resize:vertical}audio,canvas,progress,video{max-width:100%;vertical-align:middle}.error-view{background-color:#511;border-left:.5em solid #c22;display:inline-block;margin:.1em;padding:0 .25em;position:relative}.error-view>.error-toggle{background-color:transparent;border:none;line-height:inherit;left:0;padding:0;position:absolute;top:0;width:1.875em}.error-view>.error{display:inline-block;margin-left:1.75em}.error-view>.error-source[hidden]{display:none}.error-view>.error-source:not([hidden]){display:block;margin:0 0 .25em;padding:.25em;background-color:rgba(0,0,0,.2)}.highlight,.marked{color:#ff0;font-weight:700;font-style:italic}.nobr{white-space:nowrap}.error-view>.error-toggle:before,.error-view>.error:before,[data-icon-after]:after,[data-icon-before]:before,[data-icon]:before,a.link-external:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}[data-icon]:before{content:attr(data-icon)}[data-icon-before]:before{content:attr(data-icon-before) "\00a0"}[data-icon-after]:after{content:"\00a0" attr(data-icon-after)}.error-view>.error-toggle:before{content:"\e81a"}.error-view>.error-toggle.enabled:before{content:"\e818"}.error-view>.error:before{content:"\e80d\00a0\00a0"}a.link-external:after{content:"\00a0\e80e"}</style>
+<style id="style-core" type="text/css">html{font:16px/1 Helmet,Freesans,sans-serif}#store-area,tw-storydata{display:none!important;z-index:0}.no-transition{-o-transition:none!important;transition:none!important}:focus{outline:thin dotted}:disabled{cursor:not-allowed!important}body{color:#eee;background-color:#111}a{cursor:pointer;color:#68d;text-decoration:none;-o-transition-duration:.2s;transition-duration:.2s}a:hover{color:#8af;text-decoration:underline}a.link-broken{color:#c22}a.link-broken:hover{color:#e44}a[disabled],span.link-disabled{color:#aaa;cursor:not-allowed!important;text-decoration:none}area{cursor:pointer}button{cursor:pointer;color:#eee;background-color:#35a;border:1px solid #57c;line-height:normal;padding:.4em;-o-transition-duration:.2s;transition-duration:.2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}button:hover{background-color:#57c;border-color:#79e}button:disabled{background-color:#444;border:1px solid #666}input,select,textarea{color:#eee;background-color:transparent;border:1px solid #444;padding:.4em}select{padding:.34em .4em}input[type=text]{min-width:18em}textarea{min-width:30em;resize:vertical}input[type=checkbox],input[type=file],input[type=radio],select{cursor:pointer}input[type=range]{-webkit-appearance:none;min-height:1.2em}input[type=range]:focus{outline:0}input[type=range]::-webkit-slider-runnable-track{background:#222;border:1px solid #444;border-radius:0;cursor:pointer;height:10px;width:100%}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#35a;border:1px solid #57c;border-radius:0;cursor:pointer;height:18px;margin-top:-5px;width:33px}input[type=range]:focus::-webkit-slider-runnable-track{background:#222}input[type=range]::-moz-range-track{background:#222;border:1px solid #444;border-radius:0;cursor:pointer;height:10px;width:100%}input[type=range]::-moz-range-thumb{background:#35a;border:1px solid #57c;border-radius:0;cursor:pointer;height:18px;width:33px}input[type=range]::-ms-track{background:0 0;border-color:transparent;color:transparent;cursor:pointer;height:10px;width:calc(100% - 1px)}input[type=range]::-ms-fill-lower{background:#222;border:1px solid #444;border-radius:0}input[type=range]::-ms-fill-upper{background:#222;border:1px solid #444;border-radius:0}input[type=range]::-ms-thumb{background:#35a;border:1px solid #57c;border-radius:0;cursor:pointer;height:16px;width:33px}input:not(:disabled):focus,input:not(:disabled):hover,select:not(:disabled):focus,select:not(:disabled):hover,textarea:not(:disabled):focus,textarea:not(:disabled):hover{background-color:#333;border-color:#eee}hr{display:block;height:1px;border:none;border-top:1px solid #eee;margin:1em 0;padding:0}audio,canvas,progress,video{max-width:100%;vertical-align:middle}.error-view{background-color:#511;border-left:.5em solid #c22;display:inline-block;margin:.1em;max-width:100%;padding:0 .25em;position:relative}.error-view>.error-toggle{background-color:transparent;border:none;line-height:inherit;left:0;padding:0;position:absolute;top:0;width:1.875em}.error-view>.error{display:inline-block;margin-left:1.75em}.error-view>.error-source[hidden]{display:none}.error-view>.error-source:not([hidden]){background-color:rgba(0,0,0,.2);display:block;margin:0 0 .25em;overflow-x:auto;padding:.25em}.highlight,.marked{color:#ff0;font-weight:700;font-style:italic}.nobr{white-space:nowrap}.error-view>.error-toggle:before,.error-view>.error:before,[data-icon-after]:after,[data-icon-before]:before,[data-icon]:before,a.link-external:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}[data-icon]:before{content:attr(data-icon)}[data-icon-before]:before{content:attr(data-icon-before) "\00a0"}[data-icon-after]:after{content:"\00a0" attr(data-icon-after)}.error-view>.error-toggle:before{content:"\e81a"}.error-view>.error-toggle.enabled:before{content:"\e818"}.error-view>.error:before{content:"\e80d\00a0\00a0"}a.link-external:after{content:"\00a0\e80e"}</style>
 <style id="style-core-display" type="text/css">#story{z-index:10;margin:2.5em;-o-transition:margin-left .2s ease-in;transition:margin-left .2s ease-in}@media screen and (max-width:1136px){#story{margin-right:1.5em}}#passages{max-width:54em;margin:0 auto}</style>
 <style id="style-core-passage" type="text/css">.passage{line-height:1.75;text-align:left;-o-transition:opacity .4s ease-in;transition:opacity .4s ease-in}.passage-in{opacity:0}.passage ol,.passage ul{margin-left:.5em;padding-left:1.5em}.passage table{margin:1em 0;border-collapse:collapse;font-size:100%}.passage caption,.passage td,.passage th,.passage tr{padding:3px}</style>
 <style id="style-core-macro" type="text/css">.macro-append-insert,.macro-linkappend-insert,.macro-linkprepend-insert,.macro-linkreplace-insert,.macro-prepend-insert,.macro-repeat-insert,.macro-replace-insert,.macro-timed-insert{-o-transition:opacity .4s ease-in;transition:opacity .4s ease-in}.macro-append-in,.macro-linkappend-in,.macro-linkprepend-in,.macro-linkreplace-in,.macro-prepend-in,.macro-repeat-in,.macro-replace-in,.macro-timed-in{opacity:0}</style>
-<style id="style-ui-dialog" type="text/css">html[data-dialog] body{overflow:hidden}#ui-overlay.open{visibility:visible;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in}#ui-overlay:not(.open){-o-transition:visibility .2s step-end,opacity .2s ease-in;transition:visibility .2s step-end,opacity .2s ease-in}#ui-overlay{visibility:hidden;opacity:0;z-index:100000;position:fixed;top:-50%;left:-50%;height:200%;width:200%}#ui-dialog.open{display:block;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in}#ui-dialog{display:none;opacity:0;z-index:100100;position:fixed;top:50px;margin:0;padding:0}#ui-dialog-titlebar{position:relative}#ui-dialog-close{display:block;position:absolute;right:0;top:0;white-space:nowrap}#ui-dialog-body{overflow:auto;min-width:280px;height:90%;height:calc(100% - 2.1em - 34px)}#ui-overlay{background-color:#000}#ui-overlay.open{opacity:.8}#ui-dialog{max-width:66em}#ui-dialog.open{opacity:1}#ui-dialog-titlebar{background-color:#444;min-height:24px}#ui-dialog-title{margin:0;padding:.2em 3.5em .2em .5em;font-size:1.5em;text-align:center;text-transform:uppercase}#ui-dialog-close{cursor:pointer;font-size:120%;margin:0;padding:0;width:3.6em;height:92%;background-color:transparent;border:1px solid transparent;-o-transition-duration:.2s;transition-duration:.2s}#ui-dialog-close:hover{background-color:#b44;border-color:#d66}#ui-dialog-body{background-color:#111;border:1px solid #444;text-align:left;line-height:1.5;padding:1em}#ui-dialog-body>:first-child{margin-top:0}#ui-dialog-body hr{background-color:#444}#ui-dialog-body ul.buttons{margin:0;padding:0;list-style:none}#ui-dialog-body ul.buttons li{display:inline-block;margin:0;padding:.4em .4em 0 0}#ui-dialog-body ul.buttons>li+li>button{margin-left:1em}#ui-dialog-close{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-close{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}</style>
-<style id="style-ui" type="text/css">#ui-dialog-body.settings [id|=setting-body]{display:table;width:100%}#ui-dialog-body.settings [id|=setting-label]{display:table-cell;padding:.4em 2em .4em 0}#ui-dialog-body.settings [id|=setting-label]+div{display:table-cell;min-width:8em;text-align:right;vertical-align:middle;white-space:nowrap}#ui-dialog-body.list{padding:0;min-width:140px}#ui-dialog-body.list ul{margin:0;padding:0;list-style:none;border:1px solid transparent}#ui-dialog-body.list li{margin:0}#ui-dialog-body.list li:not(:first-child){border-top:1px solid #444}#ui-dialog-body.list li a{display:block;padding:.25em .75em;border:1px solid transparent;color:#eee;text-decoration:none}#ui-dialog-body.list li a:hover{background-color:#333;border-color:#eee}#ui-dialog-body.saves{padding:0 0 1px}#ui-dialog-body.saves>:not(:first-child){border-top:1px solid #444}#ui-dialog-body.saves table{border-spacing:0;min-width:340px;width:100%}#ui-dialog-body.saves tr:not(:first-child){border-top:1px solid #444}#ui-dialog-body.saves td{padding:.33em .33em}#ui-dialog-body.saves td:first-child{min-width:1.5em;text-align:center}#ui-dialog-body.saves td:nth-child(3){line-height:1.2}#ui-dialog-body.saves td:last-child{text-align:right}#ui-dialog-body.saves .empty{color:#999}#ui-dialog-body.saves .datestamp{font-size:75%}#ui-dialog-body.saves ul.buttons li{padding:.4em}#ui-dialog-body.saves ul.buttons>li+li>button{margin-left:.2em}#ui-dialog-body.saves ul.buttons li:last-child{float:right}#ui-dialog-body.settings div[id|=header-body]{margin:1em 0}#ui-dialog-body.settings div[id|=header-body]:first-child{margin-top:0}#ui-dialog-body.settings div[id|=header-body]:not(:first-child){border-top:1px solid #444;padding-top:1em}#ui-dialog-body.settings div[id|=header-body]>*{margin:0}#ui-dialog-body.settings h2[id|=header-heading]{font-size:1.375em}#ui-dialog-body.settings p[id|=header-label]{font-size:87.5%}#ui-dialog-body.settings div[id|=setting-body]+div[id|=setting-body]{margin:.5em 0}#ui-dialog-body.settings [id|=setting-control]{white-space:nowrap}#ui-dialog-body.settings button[id|=setting-control]{color:#eee;background-color:transparent;border:1px solid #444;padding:.4em}#ui-dialog-body.settings button[id|=setting-control]:hover{background-color:#333;border-color:#eee}#ui-dialog-body.settings button[id|=setting-control].enabled{background-color:#282;border-color:#4a4}#ui-dialog-body.settings button[id|=setting-control].enabled:hover{background-color:#4a4;border-color:#6c6}#ui-dialog-body.share{min-width:140px}#ui-dialog-body.list a,#ui-dialog-body.settings span[id|=setting-input]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-body.saves button[id=saves-clear]:before,#ui-dialog-body.saves button[id=saves-export]:before,#ui-dialog-body.saves button[id=saves-import]:before,#ui-dialog-body.settings button[id|=setting-control].enabled:after,#ui-dialog-body.settings button[id|=setting-control]:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#ui-dialog-body.saves button[id=saves-export]:before{content:"\e829\00a0"}#ui-dialog-body.saves button[id=saves-import]:before{content:"\e82a\00a0"}#ui-dialog-body.saves button[id=saves-clear]:before{content:"\e827\00a0"}#ui-dialog-body.settings button[id|=setting-control]:after{content:"\00a0\00a0\e830"}#ui-dialog-body.settings button[id|=setting-control].enabled:after{content:"\00a0\00a0\e831"}</style>
+<style id="style-ui-dialog" type="text/css">html[data-dialog] body{overflow:hidden}#ui-overlay.open{visibility:visible;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in}#ui-overlay:not(.open){-o-transition:visibility .2s step-end,opacity .2s ease-in;transition:visibility .2s step-end,opacity .2s ease-in}#ui-overlay{visibility:hidden;opacity:0;z-index:100000;position:fixed;top:-50%;left:-50%;height:200%;width:200%}#ui-dialog.open{display:block;-o-transition:opacity .2s ease-in;transition:opacity .2s ease-in}#ui-dialog{display:none;opacity:0;z-index:100100;position:fixed;top:50px;margin:0;padding:0}#ui-dialog>*{box-sizing:border-box}#ui-dialog-titlebar{position:relative}#ui-dialog-close{display:block;position:absolute;right:0;top:0;white-space:nowrap}#ui-dialog-body{overflow:auto;min-width:280px;height:92%;height:calc(100% - 2.1em)}#ui-overlay{background-color:#000}#ui-overlay.open{opacity:.8}#ui-dialog{max-width:66em}#ui-dialog.open{opacity:1}#ui-dialog-titlebar{background-color:#444;min-height:24px}#ui-dialog-title{margin:0;padding:.2em 3.5em .2em .5em;font-size:1.5em;text-align:center;text-transform:uppercase}#ui-dialog-close{cursor:pointer;font-size:120%;margin:0;padding:0;width:3.6em;height:92%;background-color:transparent;border:1px solid transparent;-o-transition-duration:.2s;transition-duration:.2s}#ui-dialog-close:hover{background-color:#b44;border-color:#d66}#ui-dialog-body{background-color:#111;border:1px solid #444;text-align:left;line-height:1.5;padding:1em}#ui-dialog-body>:first-child{margin-top:0}#ui-dialog-body hr{background-color:#444}#ui-dialog-body ul.buttons{margin:0;padding:0;list-style:none}#ui-dialog-body ul.buttons li{display:inline-block;margin:0;padding:.4em .4em 0 0}#ui-dialog-body ul.buttons>li+li>button{margin-left:1em}#ui-dialog-close{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-close{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}</style>
+<style id="style-ui" type="text/css">#ui-dialog-body.settings [id|=setting-body]>div:first-child{display:table;width:100%}#ui-dialog-body.settings [id|=setting-label]{display:table-cell;padding:.4em 2em .4em 0}#ui-dialog-body.settings [id|=setting-label]+div{display:table-cell;min-width:8em;text-align:right;vertical-align:middle;white-space:nowrap}#ui-dialog-body.list{padding:0}#ui-dialog-body.list ul{margin:0;padding:0;list-style:none;border:1px solid transparent}#ui-dialog-body.list li{margin:0}#ui-dialog-body.list li:not(:first-child){border-top:1px solid #444}#ui-dialog-body.list li a{display:block;padding:.25em .75em;border:1px solid transparent;color:#eee;text-decoration:none}#ui-dialog-body.list li a:hover{background-color:#333;border-color:#eee}#ui-dialog-body.saves{padding:0 0 1px}#ui-dialog-body.saves>:not(:first-child){border-top:1px solid #444}#ui-dialog-body.saves table{border-spacing:0;width:100%}#ui-dialog-body.saves tr:not(:first-child){border-top:1px solid #444}#ui-dialog-body.saves td{padding:.33em .33em}#ui-dialog-body.saves td:first-child{min-width:1.5em;text-align:center}#ui-dialog-body.saves td:nth-child(3){line-height:1.2}#ui-dialog-body.saves td:last-child{text-align:right}#ui-dialog-body.saves .empty{color:#999;speak:none;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-body.saves .datestamp{font-size:75%;margin-left:1em}#ui-dialog-body.saves ul.buttons li{padding:.4em}#ui-dialog-body.saves ul.buttons>li+li>button{margin-left:.2em}#ui-dialog-body.saves ul.buttons li:last-child{float:right}#ui-dialog-body.settings div[id|=header-body]{margin:1em 0}#ui-dialog-body.settings div[id|=header-body]:first-child{margin-top:0}#ui-dialog-body.settings div[id|=header-body]:not(:first-child){border-top:1px solid #444;padding-top:1em}#ui-dialog-body.settings div[id|=header-body]>*{margin:0}#ui-dialog-body.settings h2[id|=header-heading]{font-size:1.375em}#ui-dialog-body.settings p[id|=header-desc],#ui-dialog-body.settings p[id|=setting-desc]{font-size:87.5%;margin:0 0 0 .5em}#ui-dialog-body.settings div[id|=setting-body]+div[id|=setting-body]{margin:1em 0}#ui-dialog-body.settings [id|=setting-control]{white-space:nowrap}#ui-dialog-body.settings button[id|=setting-control]{color:#eee;background-color:transparent;border:1px solid #444;padding:.4em}#ui-dialog-body.settings button[id|=setting-control]:hover{background-color:#333;border-color:#eee}#ui-dialog-body.settings button[id|=setting-control].enabled{background-color:#282;border-color:#4a4}#ui-dialog-body.settings button[id|=setting-control].enabled:hover{background-color:#4a4;border-color:#6c6}#ui-dialog-body.settings input[type=range][id|=setting-control]{max-width:35vw}#ui-dialog-body.list a,#ui-dialog-body.settings span[id|=setting-input]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#ui-dialog-body.saves button[id=saves-clear]:before,#ui-dialog-body.saves button[id=saves-export]:before,#ui-dialog-body.saves button[id=saves-import]:before,#ui-dialog-body.settings button[id|=setting-control].enabled:after,#ui-dialog-body.settings button[id|=setting-control]:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#ui-dialog-body.saves button[id=saves-export]:before{content:"\e829\00a0"}#ui-dialog-body.saves button[id=saves-import]:before{content:"\e82a\00a0"}#ui-dialog-body.saves button[id=saves-clear]:before{content:"\e827\00a0"}#ui-dialog-body.settings button[id|=setting-control]:after{content:"\00a0\00a0\e830"}#ui-dialog-body.settings button[id|=setting-control].enabled:after{content:"\00a0\00a0\e831"}</style>
 <style id="style-ui-bar" type="text/css">#story{margin-left:20em}#ui-bar.stowed~#story{margin-left:4.5em}@media screen and (max-width:1136px){#story{margin-left:19em}#ui-bar.stowed~#story{margin-left:3.5em}}@media screen and (max-width:768px){#story{margin-left:3.5em}}#ui-bar{position:fixed;z-index:50;top:0;left:0;width:17.5em;height:100%;margin:0;padding:0;-o-transition:left .2s ease-in;transition:left .2s ease-in}#ui-bar.stowed{left:-15.5em}#ui-bar-body{height:90%;height:calc(100% - 2.5em);margin:2.5em 0;padding:0 1.5em}#ui-bar.stowed #ui-bar-body,#ui-bar.stowed #ui-bar-history{visibility:hidden;-o-transition:visibility .2s step-end;transition:visibility .2s step-end}#ui-bar{background-color:#222;border-right:1px solid #444;text-align:center}#ui-bar-tray{position:absolute;top:.2em;left:0;right:0}#ui-bar a{text-decoration:none}#ui-bar hr{border-color:#444}#ui-bar-history [id|=history],#ui-bar-toggle{font-size:1.2em;line-height:inherit;color:#eee;background-color:transparent;border:1px solid #444}#ui-bar-toggle{display:block;position:absolute;top:0;right:0;border-right:none;padding:.3em .45em .25em}#ui-bar.stowed #ui-bar-toggle{padding:.3em .35em .25em .55em}#ui-bar-toggle:hover{background-color:#444;border-color:#eee}#ui-bar-history{margin:0 auto}#ui-bar-history [id|=history]{padding:.2em .45em .35em}#ui-bar-history #history-jumpto{padding:.2em .665em .35em}#ui-bar-history [id|=history]:not(:first-child){margin-left:1.2em}#ui-bar-history [id|=history]:hover{background-color:#444;border-color:#eee}#ui-bar-history [id|=history]:disabled{color:#444;background-color:transparent;border-color:#444}#ui-bar-body{line-height:1.5;overflow:auto}#ui-bar-body>:not(:first-child){margin-top:2em}#story-title{margin:0;font-size:162.5%}#story-author{margin-top:2em;font-weight:700}#menu ul{margin:1em 0 0;padding:0;list-style:none;border:1px solid #444}#menu ul:empty{display:none}#menu li{margin:0}#menu li:not(:first-child){border-top:1px solid #444}#menu li a{display:block;padding:.25em .75em;border:1px solid transparent;color:#eee;text-transform:uppercase}#menu li a:hover{background-color:#444;border-color:#eee}#menu a,#ui-bar-history [id|=history],#ui-bar-toggle{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#menu-core li[id|=menu-item] a:before,#ui-bar-history [id|=history],#ui-bar-toggle:before{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#ui-bar-toggle:before{content:"\e81d"}#ui-bar.stowed #ui-bar-toggle:before{content:"\e81e"}#menu-item-saves a:before{content:"\e82b\00a0"}#menu-item-settings a:before{content:"\e82d\00a0"}#menu-item-restart a:before{content:"\e82c\00a0"}#menu-item-share a:before{content:"\e82f\00a0"}</style>
 <style id="style-ui-debug" type="text/css">#debug-bar{background-color:#222;border-left:1px solid #444;border-top:1px solid #444;bottom:0;margin:0;max-height:75%;padding:.5em;position:fixed;right:0;z-index:99900}#debug-bar>div:not([id])+div{margin-top:.5em}#debug-bar>div>label{margin-right:.5em}#debug-bar>div>input[type=text]{min-width:0;width:8em}#debug-bar>div>select{width:15em}#debug-bar-toggle{color:#eee;background-color:#222;border:1px solid #444;height:101%;height:calc(100% + 1px);left:-2em;left:calc(-2em - 1px);position:absolute;top:-1px;width:2em}#debug-bar-toggle:hover{background-color:#333;border-color:#eee}#debug-bar-hint{bottom:.175em;font-size:4.5em;opacity:.33;pointer-events:none;position:fixed;right:.6em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}#debug-bar-watch{background-color:#222;border-left:1px solid #444;border-top:1px solid #444;bottom:102%;bottom:calc(100% + 1px);font-size:.9em;left:-1px;max-height:650%;max-height:65vh;position:absolute;overflow-x:hidden;overflow-y:scroll;right:0;z-index:99800}#debug-bar-watch[hidden]{display:none}#debug-bar-watch div{color:#999;font-style:italic;margin:1em auto;text-align:center}#debug-bar-watch table{width:100%}#debug-bar-watch tr:nth-child(2n){background-color:rgba(127,127,127,.15)}#debug-bar-watch td{padding:.2em 0}#debug-bar-watch td:first-child+td{padding:.2em .3em .2em .1em}#debug-bar-watch .watch-delete{background-color:transparent;border:none;color:#c00}#debug-bar-watch-all,#debug-bar-watch-none{margin-left:.5em}#debug-bar-views-toggle,#debug-bar-watch-toggle{color:#eee;background-color:transparent;border:1px solid #444;margin-right:1em;padding:.4em}#debug-bar-views-toggle:hover,#debug-bar-watch-toggle:hover{background-color:#333;border-color:#eee}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle,html[data-debug-view] #debug-bar-views-toggle{background-color:#282;border-color:#4a4}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle:hover,html[data-debug-view] #debug-bar-views-toggle:hover{background-color:#4a4;border-color:#6c6}#debug-bar-hint:after,#debug-bar-toggle:before,#debug-bar-views-toggle:after,#debug-bar-watch .watch-delete:before,#debug-bar-watch-add:before,#debug-bar-watch-all:before,#debug-bar-watch-none:before,#debug-bar-watch-toggle:after{font-family:tme-fa-icons;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;speak:none}#debug-bar-toggle:before{content:"\e838"}#debug-bar-hint:after{content:"\e838\202f\e822"}#debug-bar-watch .watch-delete:before{content:"\e804"}#debug-bar-watch-add:before{content:"\e805"}#debug-bar-watch-all:before{content:"\e83a"}#debug-bar-watch-none:before{content:"\e827"}#debug-bar-views-toggle:after,#debug-bar-watch-toggle:after{content:"\00a0\00a0\e830"}#debug-bar-watch:not([hidden])~div #debug-bar-watch-toggle:after,html[data-debug-view] #debug-bar-views-toggle:after{content:"\00a0\00a0\e831"}html[data-debug-view] .debug{padding:.25em;background-color:#234}html[data-debug-view] .debug[title]{cursor:help}html[data-debug-view] .debug.block{display:inline-block;vertical-align:middle}html[data-debug-view] .debug.invalid{text-decoration:line-through}html[data-debug-view] .debug.hidden,html[data-debug-view] .debug.hidden .debug{background-color:#555}html:not([data-debug-view]) .debug.hidden{display:none}html[data-debug-view] .debug[data-name][data-type].nonvoid:after,html[data-debug-view] .debug[data-name][data-type]:before{background-color:rgba(0,0,0,.25);font-family:monospace,monospace;white-space:pre}html[data-debug-view] .debug[data-name][data-type]:before{content:attr(data-name)}html[data-debug-view] .debug[data-name][data-type|=macro]:before{content:"<<" attr(data-name) ">>"}html[data-debug-view] .debug[data-name][data-type|=macro].nonvoid:after{content:"<</" attr(data-name) ">>"}html[data-debug-view] .debug[data-name][data-type|=html]:before{content:"<" attr(data-name) ">"}html[data-debug-view] .debug[data-name][data-type|=html].nonvoid:after{content:"</" attr(data-name) ">"}html[data-debug-view] .debug[data-name][data-type]:not(:empty):before{margin-right:.25em}html[data-debug-view] .debug[data-name][data-type].nonvoid:not(:empty):after{margin-left:.25em}html[data-debug-view] .debug[data-name][data-type|=special],html[data-debug-view] .debug[data-name][data-type|=special]:before{display:block}</style>
-<link rel="icon" type="image/png" sizes="310x310" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATYAAAE2CAYAAADrvL6pAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAOwQAADsEBuJFr7QAAPK1JREFUeNrtvXm4JGWd5/t5IzIjt3NOVZ3aqyiqKIpNtBmFKijZTlFVIA5qj+20I4Ji2z3XR+fq3B591Dt9EW176Md+bBURFEEBAUG9gsAFlaarUJDuHnVsHBClZZWlilrOmiczY3nvH3Ey6yy5nozMiMj8fZ7ndEtmVuQbmRHf/L2/VSH0BCMjIz8A3hr2OrrMO/fu3fudsBchRA8j7AUIgiAEjQibIAg9hwhbDzAyMhL2EgQhUoiw9QZHAYNhL0IQooIIW2/weWBH2IsQhKggwiYIQs+RCHsBQvt4nhf2EgQhUoiw9QBHH3102EsQhEghwtYDXHTRRWEvITRuueWWsJcgRBARth7Atu2wl7AolFJhL0HoUUTYeoBjjz027CXMwbZtPM+rK1ye51EoFJo+puM4OI4jYig0hQhbzNFaA0QqejA5OYnjODWfV0rhOA779u1r+phTU1NMTU2JsAlNIcIWf84HTgh7EbNxXbdhpLaZ15RRSqG1Lou4IDRE8tjiz/uA14e9CEGIEiJs8acU9gIWg2EY5HK5sJch9CgibELgpNPphr4wETahk4iwCYGTSqUwDLm0hPCQq08QhJ5DoqJCR0goDUrX3ZJqBYbSeFpSOIRgEWGLOeOzQgd5B9yZjIiJkv+/y5KhgUkbZmdMeBry7syTDVAKph3/PZqRIdvOobXGLkzVTNPwPJOks4Q3DI7XPZbWmlQqheM4lEpzYiX2nj172LFDOjYJcxFhizE/36cpungaX2wmbSi5/n8cnAZ7VpqYBg4VfDEr42kYazKmOu3CeBGcplPJkgAUJvI1hU2jWJFMc+rgeENtTSQSJBIJisXibCvw/wZeBP6lax+6EAtE2OLNR6Ydzs8mjhhd5XteKTBmmVaauf9dxmjC/FL4lp6nwWxx12iq2gahv6bmk26rCORpwNqAPkuhh5DgQbx5nadZ17V3W4QrzMoOBFIGpbUmk8mQSqUWPNW18xdigwhbvHHL/0NxRHdsb64vTeP74uZvQye70BTEMBMsShGrYJompmlKaZXQEBG2GLMmB5kZZ8Kkc8SnNmUfCSKUcaqUZbpd0Yfab6KAUSfBw2NL25K+PXv2dONEhBghwhZjLOOIj8z1jkiIFyODxtWKMSfZ1Gu11mSzWdLp9OyHrwbODPs8hGghwiaEjmrBTWYYRqXbxwwbgIGwz0GIFiJsQkM0kffQR3x5QrcRYYspP9/XSprE4t9H4SflTpaCCgFUWR8Kt73qg8yePXvMDi1PiCEibPElo8Fq5oVjpfb8blq32aK3TrqHAg7aSR4aXdb0xaiUmp9CcjNwejtLFHoLEbaYYio+Ne1wsaKx6IQbTFCkcoP1a0YBWxs0s6PUWpPL5UilUrP9bEOUSx0EAak8iC3rcqRRvsU2aUNpRt2KbnNC1k2tUwFvYmXugdAIsdhiilLVfV6zC+Fr4Wm/SD5ytKdXWvLZhDIibL1GTOODjlbk3bb8/+uBdDsHEHoHETahLh6dr1BQwAE7ySNjy5ouijdNc36X3luAU8L5lISoIcLW4zhthDMVfg+2CbtzqR5lWtHOcgDBsuYEheVaFirIxdBDVBOf8TZTPQJbmylxKqF7iLDFkP356tPfPR1RF5tSpDLNtS9q84J0JYAggAhbXDkOOAb8jrZli8zx2qsy6CSNlqWAgmdwwE42ve2tMh3+jcBg2OcqhI8IWzz5z8Afl8udyjlsTpMVAlHMAlPAqyWLX04saSqAoLUmmUximnMiqV/CF32hzxFhiyfu/AcUUHCbi2CWvGhuWf1mmc2vLJvNkkgs8N21Vf0l9AYibD3GbGus6C4UMK19K08QehkRth5myq4eEY3iVrSyNtX2RVmSAIIgwiZ0jUaBDaU0406C5wvplsR3XgDhMmA47HMVwkWELeZ00vqyPSg0OSC54ToVJKxU/dcAh+wkv83nmg4gpFKp+QGEjyEj+foeEbYYU/R88VH4QYMgUz0UfpBhOjB/nCKZytTtzVZ+31ZmjabT6WoBhCjGRoQuIsIWM36+T6PAUfhT38uT2d1ORToDNAk7sb4quWyCIMIWQ9405XDBgkfVwv+Ma9syRdsXZlECCP2NCFvM0HCm43HafNEqur7VVmaqVl+2iIudUppXbcv3szVh45XLtOZZbX8DrAz7XITwEGGLGSvSuJnEXH+awi+nmp2ZWnAW+tw0fg5blDduChh3ErxYTDVlcZZnjc7zs70TWBr2uQjhIcIWMwaSkKzxrc3WgVqiYLtEnlYDCJZlze/N5hJt/RY6jAhbzIj93doBR3+N4IEk6vYxImxC11BKYWUaD23XlOtGF40B3ASsCvuchXAQYYshCph2/Tw2hZ/L1olmkp2IMxiJZMMjG0rzQjHNrycHW9qSzlv6ucgMhL5FhC2mOLPETM9rMDlRmhshXQwF1+++G7y4NRHpBKZdk1En0fT7DwwMzK9AkFL/PkaELUb8fN8RUZhzw8+7+502O+kqfNF0QnbotZKHZ5qmzBsVKoiwxYv3T5T44GwhKw9cmT20RW7vCoYEEPoTEbYYsS7HylySlfPNMd2shRazkGrT51WdBPBDJFG3LxFhixEJA20s0hzT+GP0oqBtzewYTaV5ejrDryaGMJsMIMzbiipgE77ACX2GCFsM0RwRKF3j+WpEoWe2UgZWtrl5K7Y2KHrNX6JDQ0PzAwhR0HEhBETYYkZ5gEvBPVJK5eojfrWxUntDkrtyDqozl51SqloAQYufrf8QYYsh9Sw26eCzgGHkOu875AsXepk0sAdYFvZChO4iwhYTZnLYFthjbUYOI4+tFaUW/GzziuEBskgGTN8hwhYTPM0Sx2PF7MfKs0TtgH1qHp0p0WoVU2meyuf49eRg05HRKgEEoQ8RYYsJKZP3TLt8dL5vfPbtHsjQFfymlaMdKadqHU0g0VxPAgj9hQhbTFibwxhMouYHB2aLT71SKnd2xCFsFBjds6oM4LWAmHF9hAhbzHC1v01UzERHZ8RKAZM1Uj00/vDkyOiaMrAyzeWylc+tDesxC9wDNP+GQuwRYYsRZZ9aYaYL7vwctnjRZDUBMOmaTLjNd/pIJBLz89kintknBI0ImxBpDKX5t+ksv81nm+7NNjg4WC06KvQR8u0LkSeAcXwgrcL7ChG2GFP2t1WI5560I8ybg2ABb0MK4vsGEbYYMDP93Z79WDkto9wMsuS13zU3yrRqtaVSqdl+tizwNaRVeN8gwhYDXM1Jkzbn1LLIyoXxQXW87YrhpxRm0mr2pbxqWxywk02vLZfLzQ8gFLtxWkI0EGGLAUssdhiKdzqeX2VQbt1dL6etmcer4Wi/I2+nxU0pg2Qq29RrDTTPFtI8X8gsdrgL+GHYovjZ+gMRthiwPI2TTfpbz9LMdnN2Plsjim7zXT8cz8956w7Ni5RBa0OUq5AF/k/Ez9YXiLDFgHL5+2KtqGm3xeTc3gxC5IC/ApJhL0ToPCJsMUAx005bLS4Lv1d0qtUAQiaTme9nKxCdAgyhg4iwxYDDRThU8LeItld9QHKviFctDKV5rpDhxWKq6Yu2irAJfYIIWwyYsP2/acdP6XC8uake0x1oXRQ1FPByyeKAbaGa9LXp6o5FCSD0ASJsMUAxdws6f9ZByZ3p3hEzWl1yAAGEpcAXkU4fPY8IW8T55X4N4Mx/XKn4bz8NZZBMN5fysVjmWW0Z4E+R677nkS84+uwAPhz2IjqCUhiJ1oKUrQRPlFIMDg7O97OVwj5tofOIsEWfjcAp3XijUCzAFnaWhtI8MTXA84V001vSZDIpAYQ+RIQt+lTCArYHkzZMOkeCBVOOn7Rb69adspufX1Dy/LmkUZUBBYw6CSZb6M1WA1cCCL2NCFtMKJdROdoPHJSrDlyvvnC1Uj+qdfSjq/5WtK0Awhrgu8i139PIlxsTYhj0jCoW8Hqia5gKASDCJsQO3YLNppRiaGhovp/NDfschM4iwibEClNpfjkxxHPTzXf6kDmj/YcImxAqhmliZQda+jcFz8DWRjt7SQVYEkDoXUTYIswv9+sEkAp7HZ1GqcVdhm34HTcBPwz7vIXOIcIWbf498Pnyf2jE4z2bVj6LeT42E1gZ9vqFziHCFm1SzAz6Lc0Uvs+m0XD3ZptLxhFbK1zdnLQppViyZMl8cevhT0cQYYsJWs+9ExV+sm7RrW25TLSQnAvNd+QNG1Np/mV8SUsVCFJ90F+IsMWYRhZbK9geHIrRuBNXK3R7MpzET9YVehARNgEIe1+mFh1AaIMtwN2hnrbQMUTYhNAxTBMrk1vUv22l08e8fDaFzD/oWUTYhGjQog9MAZOuSdFr7hKuUYGgJZetNxFhiygzDSal9KcGhtL8z/ElvFxKtdNVNwecHPa5CMEjwhZdlgOvhcVNpuoX2vxcjgduDPschOARYYsuZwFXgJ+G4VZJxRCxa50qA17EKu5BRNiiS+UOtDUU5/VJc7Tfi62WuDle2JHO7tBK0odSCsuywl6y0AVE2GKIwh/FV6zTFDLvtJacG7r1p3XLpRJKaV4ppci7ZlPrV0oxMLCg4N6TAELvIcIm4GkoOO0fpx2UYWAkW7OmDOCxyUEO2sl2hHkVcEG4Zy8EjQibgKth3A53DcowSaYyLf+7AC7gY5nxZQq9gwibAERgKwphVu3HqJhMaAYRNiH2mEqjWiiGT6fTYS9Z6DAibBFkJjlXBvvOw5uZ0DX7z9Wa30zlGHOaG8mnlCKbXTB9XgIIPUYi7AUIVTkO+HOIyBYxAjgebFkCm5f4PsEyCnB0loSXp9mUtCq5bFuA9wM3hH2eQjCIsEWTY4E/AT9fzXZb7BYb9uoXiQbfzzavbtTxYPMQ7NwA67KzJkjPOt9XXtUUF+8p2wBcgghbzyDCFk0q966r/QTd2bd60YVSHbGbdlvLYYsKhmmSSKVxSkcUyvHgmCE4/2hYlfE7Cc9HqUDiDrL17yHExxYzFP7NXW/Ce8mNZ9WBUgZGwqK8+rKoXTAjam6Dk9JNqpthGORyi2uTJMQDEbYY0mir2WoX7ChuXR0PNg3Bm5oQNa01Q0NDJJPNtVerUVolAYQeQraifY6rYTRimzDHg42DcOFGWJleKGqmaS6YYZBMJsnn82itm55vMK/x5KmJROKTIyMjVwZ1Hnv37g3pExRE2Pocrf2ta1RwNRw9CP9+E6yoImqWZXHXXXfxz//8zyQScy/fUqmE53lNvY/WGseZU0e2slgsfhQYCeA0HOB9wP6wPsd+R4RNiAyehg05uGA1DNcQtXvuuYfbb7+d0dFRDKM9T0oVy27YMIzzAzgVDUgWcIiIsEWMmeTcOPr+28LTsGEA3rYRrNLCqG4ymeTee+/llltuYXJysml/Wkg4gDcyMiLb0ZCQ4EH0OBW4NuxFdBNPw/oBeMcWGE4ttNSSyST33XcfN998M5OTk21bal0gAfwAWBH2QvqVyF8hfcgAfoIujue3EypvmBR+n7VpJ5qRzMWggXU5eOcWWJZaaKklEgl++MMfcuONNzI1NRUHUQP/63ktMgUrNGQrGmE0fqbubBHz9MLHZjNl+4IYBzSwJgsXHw9DM9kXSh3xfZmmyY9//GNuuOEGpqen4yJqZWLyLfQmsbpS+hHV8IG5xOluWp2BS084ImrgW2i5XA7DMHjwwQf5+te/TqFQiJuoCSEjV4sQCisz8N4TYWDeZk0phWEY7Nmzh69+9asUi8Wm89KiyK233hr2EvoS2Yr2OWFYeCsycNmJkKvigXJdl5/85Cd85StfwXGchqKWSCQia80dc8wxg8Ar9GGUO2xE2PoYV8OhQnffc0Ua3ncS5KpceY7j8NOf/pQrr7wS13UbipppmoyMjLBhw4amE3O7SCqZTO4FXgccDHsx/YYIW4Todg6b1t3tArIiDX/2GsjWELWHH36Yz372sw1FSmtNIpFgZGSEzZs3N1383mUUMEjvBLBjhQhbtLCA1fVeENe7ZEXGt9RqidojjzzCZz7zmYYipbUmmUxyzjnncOyxx6K1RmtNJpOZU/vpeV7ggqeUwvO8usIbQcuxLxFhixb/Drit/B/z70uPePZZW1n2qdUQtZ/97Gd8+tOfbkrULMvirLPO4rjjjquIVzqd5pxzzmF4eLjy2rGxsaa2s60yOjrK1NRUzeOOj49j2/bsc/H27NnDjh07uvmR9z0ibNFCMfOd2J7fMHL2E3nH/6t1q3qtzxzuKBo/peO9NQIFjuPw6KOP8qlPfarxsWZE7cwzz+T444+viFomk+Hss89mxYq5Sf6moUAbRz68AFAoTENhGApV46BLlyzh8OFDuK4HYJhKH28o/T9ptm+5EAgibD1E3mncjLFblJNvLz2hdvTz0Ucf5fLLL298LK1JpVJs376dE088Edd10VqTzWY588wzWblyJYcKUPSOaNhEwcTzFNpzA3NaKmC8YJAvGHUtwXHHwnYcNGSB+4FjgNFufv79jgibEDie9suk3n38wjw18P1QjzzySNOWWjqd5owzzuCkk07CdV08z2NgYIDt27ezatUqDhTgu/8GL02BUdGbQdBQmBxF6+D8XnYhgWtnGliBacby03hRMp/7DBE2IVDKBe3vOg4GrYXPa615+OGHueKKKxofy/PIZDKcfvrpC0TtjDPOYPXq1bw6Df/v7+HlKTDni43SAQdbNIZpol3V0B+oiG+gpxeIZmaj0BWCTuh3NRw14Be0D9UQtYceeogrrriioTCURW3btm2cfPLJFVEbHBzk9NNPZ82aNeyfhjufhhfnWGoL3jXQc0xYaYyE1LZHHRG2PkXjT7sKinLn2/+4BZamqr9m7969/PVf/3VTopbNZtm2bRuvfe1rcRynImpbt25l7dq17MvDD56GFyarWGoVVPAipFmMVpYuveXXwa5DqIsIW0SYSc61u/V+nobRxc/hnIOj/RkFf7LZbz1UjQcffJC/+Zu/aZjnVRa1rVu3zhG1oaEhtm7dyrp163glD/c8C89N1BM1HyszEHatqQW8DXH7dBURtugwjH8DANX9M0HfnkEcz/HgmEH4D5v9dt7VeOCBB/jbv/1bXLe+iVhP1E499VTWrVvHy1Nw77Pw7Dgkmrl6Q3LgJxNm+fPNAl9DWoV3FRG26LAJuBz8e9GeZ9g42p8nWkuMwrBJHA82L4G3HQPLa9y2P/rRj/i7v/s7bLu+MVr2qdUStfXr1/PyFNz3XAui1lHqC2bWsmZbigHZxkKzhH55CBXmTH8vzhI2hT9Jqp5PrOR1N4fN9uDYJfCWTX65VDXuv/9+vvCFL1AqlepuB8uJtvN9atVE7ZnQRU1jJBIow2zwKiFMRNgiSisWmMIXvW4Jm+3BcUv8EXkra4jafffdx1VXXUWhUGgoaul0mtNPP72uqN3/PDwduqj5mMkUhiEusygTgctEaJeynnVjO1oWtQs3+hPaq3Hvvfdy9dVXk8/nG4paKpXijDPO4DWveU1dUfv9GCSjcrU22YRFz/2fBYmMdo+oXCpCDLA9OG6pL2qrs9Vfc/fdd3Pttdc2HLxSrv3cvn37nOTbwcHBI6KW97efkRK1JlFAOpks/9gMAH+FREa7RswuFyEsypbam46uLWp33XUX1113XcMRebML2ueL2tatW1m/fj2v5OG+Z32fWruiFpa/K51MlLOgM8CHkalVXUOErU9pZdtaEbWNfmF7Ne68805uuOEGxsfHG4paMpnkrLPO4oQTTphTJrVt2zbWrVvHvryf0hFIoEApkqls8GUW/tnUf3bu04WG/0AIDBG2CDCTnFvq1vt5GsZKzd1ljgdbZnxqtUTt+9//Pt/85jcZGxub0+yxGolEgnPOOWdO66Fy7efatWvZP+0n3waZ0pFIWoHXjJrJFEoCCJFFhC0aHAV8AXzRKXS4c5fGH7rciHKe2pvr+NS+//3vc+ONNzI6OtpQ1MozCrZs2VIRtWw2y/bt21mzZg2vTvtlUkHnqXXCTDISycgOkRFE2KLCEuB88IXNmXcnFr36098XY400+jeOhs1DcNGmYETNMAx27NixoJ33mWeeyerVqzlY8Avan5+MRkpHQ7RejGDaEhntDnG4hPqBI/eImis6CnC9hWI3m2k32OnvroZNg/CWY2qndNx5550tidrOnTs55phjKqKWTqc5++yzWbVqFYdm+qnVL2iPH0pBLlXZBg8D30Iio11BPuQYoBo853h+2UIQmlDu0vHHm/2pUtW46667+MY3vtGUT00pxa5du9i4cWPlsXQ6zbnnnsuKFSs4XIQ7/q1GP7UeIGGavsJpnQLORdq0dQURth4gqKaGnoYNA/D2zbVrP3/wgx9w/fXXMz4+3pSo7d69e46oWZbFyMgIy5cvZ7QI3/4dvJKv108t5swNjTbh2RSCQIRNAI50vv2PW2q3HrrnnnsqeWrNiNr555/Phg0bKo9ZlsWOHTtYvnw5YyW49XewP8ailkxlsLWH58qclqghPjYBjT+j4J01RE1rzb333su1117bMPkW5opauaQqmUxy3nnnsXz5csZL8K0nYf90h9LLqqzHyg4G/mZKmSzCVjYkgNB5RNj6nPI0qYuPr9751vM87r//fr7yla80LJOC2qK2c+dOhoeHmbDhpifhQKG7zqZG3TgW/+m1xDrgPuS+6zjyAYfML/drBRyRlC7npq/O+CPyqs0o8DyPH//4x1x11VVMT083JWq7d+9eIGq7du1i2bJhJm248TdwsNDdcwwTpRSD6VRZxBPARiSA0HHExxY+G/FnT+JqfzbobBbXYr82noYD0/4xV9YZZuy6Lv/4j//I3//93zfspwZ+Ssf86GdZ1JYuXcqUA9/4DRzqI1GrfDZqJofH/yKlrKoLiLCFTwJYWf6P2Ve9wq9CmLRr/8QvRvg8/OaQl9URtb179/K5z30O27abErWdO3cuELWdO3fOiJrqWVELeZ6CUAPZikYDXe+JWk8qfAvPbjE5d0Ua3ndSdVFzHIef/OQnXHnllTiO0/DGNU2T8847j02bNlUesyyLnTt3smzZsp4WNYBkOodhtmwfaAkgdBax2GJOq9bacNpv552p8s07jsPDDz/MZz/72YbTpLTWJBIJRkZG2Lx5c2WkXjmlY3jZMiYcxY09LGotceSLKlvo+8JeUi8jFlsfsTQFb91UW9QeeeQRPvOZzzQlaslkknPPPXdO7WcqlZpJvh1m3FaRCxQoFd7lro4k61V8qkLnEGHrE5alfEstXUPUfvazn/HpT3+64TDjcpPIs88+m+OOO25O7We5TGq8pLj5yaiJmiKVHSSMgKQfGU2X33luFFzoCLIVDZGZPmwdTVvXwHDK79JRy1J79NFH+dSnPtX4WLM6387up5bJZDj77LNZsWIFo0W/ouDVLuepNUXkFiR0ChG2cLGAk+nQLafxaz7fvLG6qLmuy6OPPsrll1/e+FgzW83t27dz4okn4rpupZ/amWeeycqVKzlUgNuf8suk+ilYqAyjwz9PQqvIVjRc1gB3MvM9BDk+T2s/+nnhRshWETXP83jkkUeaFrV0Or1g8Eoul+ONb3wjq1at4kDB79LxSp+JGkAylcUwG1c2SAJb9xBhCx9/P6oXdrX1tN+LrVU87SffvuloyFURNa01Dz/8MFdccUXjY3leZe7nbFErt/NevXo1r07D92ZaD8W1oL3TKCBhVm63LHBq2GvqZUTYIorCn+4+Vadzrqt9EZuNp/2Ot+cfXT1PTWvNQw89xBVXXNEwUOB5XmVC+8knnzxnmtTpp5/OmjVr2D/td759UUStLkopcqlKzGATcGPYa+plxMcWU8pVCbZ3RPg87Re07zwKBmoMetu7dy+f/exnmxK1bDbL1q1b50xoL4/IW7t2LfvycPczvdf5tktIb7YOIsIWIhVtUf7/nm19Kfz/9nRzFpue6ae2Yz0MWtVf/+CDD3LllVc2zFOrJWpDQ0OcdtpprFu3jldmRuQ9NxGTGQUVOuTpEgdapBBhC5Hls+YJeBoGrLkiZnuwvMbvusIf8lK22DwNp66q3qUD4IEHHuBzn/scboOmiPVE7dRTT2XdunW8PAX/33PBT5PqPAozaeHawU86NBJJPNtbMEy0Dt6lt/yab13yurA/lJ5EhC1ENg52531+9KMf8fnPf75hQXvZp1ZL1NavX8/LU3BfLEXN93Ml09mOCFvCyuA5Np5uOu9jJfDHwF1hfy69SMwuzd5hxsdV7PT73H///XzhC19o2HqonGi7bdu2hqIWyIT2sOjYlrHxgRWQSlRsiQ1A46xoYVHE9fLsBXLAf6GD38F9993HVVddRaFQaChq5ZSOeqJ2//PwdJxFLWSUUqStOVGdjv+w9SuyFQ2PIeC/06Gqg3vvvZdrrrmGfD5ft/NtuaLgjDPO4KSTTqorar8fg6SIWntIkKEriLC1yMjISFCHKsz8Zdo90Hzuvvtuvva1rzWcUVCu/ZxfUTA4OHhE1PL+9vPpcRG1RohmRQcRttbZCbyl3YO89a1vze3atSvZaI7AYvjxj3/ccJrU7IL2cu3n7Dy1ckrHfc/6PjURtcYkrBROcbphjuAsJDLaIUTYWucM4CPtHmR8fJw77rijIwtMJpMNRS2ZTHLWWWdx/PHHzymT2rZtWyX59t5n4xn9DAszYeGUitB8ZPRY4L8Bnw977b2GCFvrBJIxrpTCsqz2D7QIEokE55xzDscdd1yl9VC59rNcJnXPs70pauWUD7uQD+39M1aS6ZINsAr4E0TYAqfHLluhEaZpMjIywpYtWyqils1m2b59O2vWrOHVafjB070pagAohZkI5wdl5u2x5s5ICD6pThCLrZ8wDIMdO3ZUZhSUc9fOPPNMVq1axcGCX9D+wmSPilqFcN38WsIMHUeErU8oj8jbtGnTnHbeZ599dqVJ5Hf/ze/SIQXt7SCiFQV6+ndZ8FFKsWvXrjkj8sozClauXMnhot8k8iURtbZJpnItD42RUXzBI8LW4yil2L1795xhxpZlMTIyUplR8O3fSZPIoDBMs2HKtWkY5FIVP9/rgS+Fve5eQ7aiPYxSivPPP58NGzZUHivP/Vy+fDljJX/wyv68iFq3MY+k4wwBrwl7Pb2GCFuLvOMd7wh7CU2jlGLJkiWVOtFkMsl5553H8PAw4yX41pMz06T6TtQid8KLaAAv1EOErUWGh4fDXkJLlLPgk8kkO3fuZHh4mAkbbpqZ+xm5W7wLKMPAyg5Syk+EvRShQ4iwtUgnSqC6seZdu3axdOkyJm0iN6E9rM+kc7T8c2FcesuvrW9d8jrJaQsIEbYWeetb3xr2ElpGKUUqlWLKgW/8Bg71uah1GiuTo5SfROumd5hnA9cBl4W99l5BhK1FMpnAm3F0hUlbRK1bNJPuYRoGA+kUk4UiQAqIl48j4oiwtcj8ocblRg7NpGVq3Vr6ZrOvTRr188+mRNQiybzmn5LZGyAibC3y3Cx/c9HxZ38qIO/4g1VqoYHDhebDX7bnW1mNvDWu9sftHTNU/fm84xe0j0mvVqGPiJ8nPGTKI/E87YuUp31xaebP0eB4rf3ZDf5Kbu3BSFM23PMMjIlLOhZIBUJwiLDFnGwSEmb15+5/XkQtLFTrUdccsCbsdfcKImwxxtXwxjVw9ED151v16fUXajHi0zRWpnHNqAKMI36284Avhv2p9AoibDGmXgfq0aK/9RWqowwDK9Olwa418GtGU5Ul0Z/50h1BhC2maGCJBZka4Z8H/wDjJblThP5EhC2muB6cugo21NiGiqAJ/YwIW0zR+BHZauyf9tNQhLBpKrtx9qs8iYwGgwhbDNHAijQM1Wjd//BLvo9NrLYwURhmsvGrlCJ5JIhxFH5/NqFNRNhiiOvB65bDUTW2oaYhohYFkuns/OqCBZiGQcaqCOBZwMfCXncvIMIWQzS1I55/mPSrDUTZmkHT0YSYJgcnz3uVHd7n0TuIsMUMrWFtFpanqz//8/1++ZToWmOUMjATqfYPJEQOEbaY4WrYshTW56o/39tj84JFGQaJVDy7tQj1kdsgZmh8H1s1fj82k7sm5loLdDaLudmjz9q1uhIZbR8RthjhaT9vbW0Na+2Jw35tqOhaRFCKRLLxVtc0DFLJSsHvG4CLwl563BFhWyRhiEdZ2NZkqz+fUCJqUSNhpRpHRpXCSiTK1t0pwNvDXnfckX5sLVJ0j/xvp8tJsPWioU8ehkNF2YZGjiYaEZSfn/XVSWS0TUTYWqTktn+MxeBp2DQIx9So235m3PevySR3QZCtaGzQwKosrKgRxJOk3DZoMt+si0gAoU1E2GKCp2tHQ399EPblZRu6GJRhkkhn2z9QDXTl/zTx2iOvuwCZWNUWImwxwNNw7BI4YVn151/JNzcfQViIUgoz0bims53jJ9NZGn07ibmlVZuB08L+bOKMCFsMKPdeW1Yjc8AQRYs0pplo+KtjKEXCMGYbd07Y644zImwxQOvaLYr+16vwwqSIW5RprnmRtHEPEhG2iFPehv7RiurPjxZh2pFtqCDMRoQt4mggm4DBGm4gCRj0LEoio4tHhC3CNNqa/GI/PD0uuWu9xKyv8hLgL8NeT1wRYYswnoZjh+C0VdWfn3LmVkII0UQphZUeaPg6K2HOjowOA6vDXntcEWGLOJZZfRKVJzNDY4U/w7SxaW0oNft7la94kYiwRRhF7W3mL1+F3x2WbWgQGGYCK9PYomoP0ahuIsIWUTwNxwzBGWuqP1/yZCBykDTqwBEWEkBYHCJsEUXjW2PJKt+Q49UurxLijpq9Yc0Anav36mFE2CJKQvn+tWr86oDfVFK2oXFCNWUVWgmTrGWVN64fAP5r2CuPIyJsEcTTsGEQzlpb+3lPtqGxQinVvB/viP5ZM39Ci4iwRZhqZVJFFwqS4hFPxMLuGiJsESRhQK5GC9DHD/l/sg3tBJE0gz0JILSOCFvE8DSszMDrV9Z+TSRvv7ijFMow2z9Ou8tY+NA6JFG3ZUTYIkithq55Byak71pHMMwEyXSOsH82NH6Srnkk0PB/AO8L99OJHyJsEcMyYWmNvmu/G4XHD8o2NL4oDLPxmBHLNEknk1KB0AYyzKVFal1h5Z5pqs6/axTN1MAKC06p0aJIa/BoPSKq8SfIu3J71MXr8GekUJipHM7UWIMXKlzqX09CfUTYWmRpteC78us5Ha++sKUT9eeGlDvl1nzvlF8Uv5imksMpSRGpiwLHhkIHkyu01hQLBWzVOKxdKNlMGcW56bpC04iwtcjmJeG99zFD/p/QGTwHJiY6c2ylwHE89u073NRr8/lpJicny/32nF179rBjx46wP6LYIMImCDO4esbq7oSRpJt3ByhU5bUzFts24CTgN2F/RnFBggeC0CWUUmQymYav01qTSCRIJiu92f4UuDDs9ccJETZB6BKGYTA01JwvwbIsUqkU+ohTVupNWqDnt6IjIyNBH9IO+5yEzpBMJrEsq6MtjBzHmW2J1UQpNcdqsyzLDvJa3rt3b8fOMQr0vLDhJziubfsoM1x++eVnHnvssWGfU1/jui7bt2/npJNOWvQx8vk83/3udxcct1gsdlTYPM9jamqqqdfatk2pVEIpxUsvvfQWYFVT/7AxLwNf69hJRoCejiXP/ML9b+DkoI7pui6OI7Nsw6RUKvGJT3yCiy66CMuyMIzWPCqHDx/m+uuv56677pq91etas8lW3qf8WsMwWj7POjwOvLaXrbZet9j+L4L7lQPANE1MM/yawn7GMAyKxSJTU1PYtk0ul2vqpp+enqZQKPDlL3+ZBx54AMvq245Aq/DvjS+EvZBO0evBg0uBlW0fRYgc09PTuK6LbdtMTU3hebVbCufzeaamphgfH+eqq67iH/7hH0gkev03vS4r8e+NnqXXv91S2AsQOoNhGExOTpLL5QCYmppaYLnl83k8z6NUKuE4Dtdccw179+4Vi9unp++NnrXYZvxrMhmghykWi7iui1JqjuWWz+eZnJykUChQKpVwXZerr76ahx56KEg/VdzxOpAxEBl6+Vv+H8CJYS9C6BxKKSYmJiiVfOPDtm0mJycpFouVaKLneXzpS1/ipz/9aWQnUYXEifj3SE/Sy1vRc4FlYS9CCB6lFPl8Htv2Uwo9z0MphdZ6TsT64MGD3HDDDfzTP/1T2EuOIsvw75GepGeFTWstibQxR2uNUtWnOzmOg+d5mKbJ2NgYhmFgWRZaa0ZHR3Ech2uvvZZf/epXc44nzKFn75GeFLZbb72V/fv3h70MoU1M0+Spp57iV7/61QKHf1nsyv61sqCVSiVs2+b666/nscceq7zesix2797d79HQBTz00ENhL6Ej9Oq3fM3q1atPDXsRQnuYpskrr7xS09KanJwkm82STCYZHR3FdV08z+OGG27gscceq/y7ZDLJm970JlavXi1+trmoW2+9lXe/+91hryNwelLYlFLHAU0OcRTiiud5FfFyHIeJiQluu+02nnjiiTmi9uY3v5lVq/w87fL2Ng50Yet8GvB14C/CPteg6Ulhu+iiiyTNowdQSuE4TsOC7cnJSUqlErfffjtPPvlkTVEDyOVy7NixY9HiNj09XYnCdvK8p6ammJiYaEuEtdaMjY3VS17OAhs7ejIh0XPCprW26O00lr5iXuueBUxOTuJ5Ht/5zncailo2m2Xnzp0MDCzemB8YGGBqaqqj4lZOUwmiIH/58uWMjo7W+wzVnj17rB07dvRUwm7PCZuruU7B2bWeb8e478TOIOhD6k4ctAsYyh8U3QxKKcbGxigUCiQSCb73ve81JWq7d+8mm8tR8tr4jJTC1oqSS8daSCjA9sD2VNvdfDUGtlb1rt2zgeuAyzpzNuHQc8L2+EGGM0lSiZkLIu8cGWKiNUw6rQuUAqZdmAx4pqenYTzI30kFhwr4N12M8DRsHIR3Hd/Cv/E8XNfl7rvv5oknnqg83kjUDk7DjU+2N9hGk6WU17hOZ4wcBdilBHYh0/YFp7VmNE+9iz4FDHfkREKkp4TtF/s1nka7HijD/1F2vFnChv9LuBhhs10ousELWyFgEco78RS2Vj8HrTV33XUXv/3tbyuPJZNJLrzwwuqils1xsADf/A1Mtd11yrfY3A52r3Jc/9pt94rTGoquQtc/Tgxt/Pr0mi9qaS5JurylmXbm/jIvdiup6UzRadBXUzxife1jmiaPPPIITz31VOUxy7K48MILWb16deWxTCbDrl27fEutCN94IghR6wZ6ZohLMN9oM366S2/5ddgnHSg9JWwGXO1qdlYemKccU4vchhZdmOrANnQi4J2Mq+nB394a5zqTs6a1JpVKccEFF7BmzZrK8+l0mm3btpHNZjk4Dd98wrdm44KZtEhYadr9QpVSDGbSja7dDLCiqQPGhJ4StgGLZMLABF/AgrrH46AXChgt4jvG+wStNel0mt27d7N27dpK8CCTyVRE7dVp+OaTcbHUZhOcxQYNr9+dwFVhn3GQ9IyP7anRufHAaXfuNtRbpNB5dGaC+mLXU4+oi2+g56o1mUyGnTt3sn79+or1ls1m2bp1K7lclgNFgzufVuRj5nOcdZaBHEUBpmHg1s5nM4CealLXSxbbRmZHdwLahpY6EA3V2j+msDi01uRyOc477zyOOuqoiqjlcjlOO+00BnJZXi2a3PniIHk3rp5HjTIMlGr/FlVKMZBONXzDXvKz9ZKw/TWwGzpjDQVKXO+1iOB5Htu2bePoo4+uiNrAwABveMMbGBwYYF/B5AcvDTLlxvvyNhMpzGSKLl3NK4CeGb8W729+Fq5Gu9p3oBecYLaPnvZD7kHrkNMBP5jtdWbLHHXKfrZTTjmFwcFBXimY3PPyIJOOIb8frbETuCLsRQRFT/jYfrlfk7drZ2Q4i7TgSp6/hQ10G4ofYQ1SgxR+om+pAyIcZcp+tg0bNpBO+xHEB/blGHeMLv1ia+LyiSsgYZo4bl2HY8+EnnrFYjuFOsW804v0r8Xjku1PtNYkk0nWr19PNputPG6o7nxvhpkIxP/V3Mm2fwilFLlUw3GDXq/42XpF2D4M7AjygK72t3dB3yR2z/wmhofWGsuyWLp0aaVrbrdJpNIYZrLTZ4oyTFRQU7Uaf0ybgZ7oY9grwlY3S2kx4uR4wec+aSAf8Da0XxkYGAhN1ICudRswkxZmwurKewHnAB/qxht1mtgL2y/3a4CajgPba91xoKDtrgq1jtuRfVIf7pn7Zn5BgAKqFFiJhtZfTyQixV7Y8CftnFLryYLbun/NnSnKDlovii4d+eEtOH6ApA/1rT8IqPRFKUXGauhnc3rBz9YLwvZO4I3VnlhsAMDVfsAhSDQzQYyAT17hR1nFd9eraIxEEmUGk8DQhKV7Gsyqt44pvSBsNUvJi4vchs7+/0HRqe0tHTyuEA2MRBLTTBDEz6KhFKn6k7q2AW8P+5zbPs+wF9AOjfxrpUVuQ4O21mBxW2JBACDAShqlFKlkQ+sv9n62WAsb8BbgvCAPWPavBU3R7VBcS6y1/kF+GJsm7sJ2LvDvqj2x2Ps9Tom5Zf9aqQOBDiFKaMykhZEILm+ugUa6cQ8gxF3Yam4aC27rtZOe7kzfrsVUPjRL0fUjokJvY5gJlBFMoq6hFJlkXZG8EPjTsM+5HWJbK6q15uf7qd6/Qfl1k26LN7zj+SIUdG3o9CJEthkU/jm6MY+IBtnzrtwIofwddiqPVin/B8X1uhS80UfOLYDVY5omTsmeaUG+gJPwgwjf6cKZdYTYChvwrpOH+dNaHWPdFiOiCv/m6kTahON1zj1iezPCFuO9qNaQa3GXZRjGnF7+4+PjLFu2jB0r8xRnvkOFIjeQ69jk96lJsEtdEjYFE+M2hXwhkDfUQLHoMjU1VevacW7rwml1ijgL20mZBFsyYa9C6DqmafLQQw+xdOlS/uiP/giAYrHIoUOHWLd8mIRpVvpuJJOa7MAAnVD+fBJKpS79pigY1R6ThhuIUCvATnmMesVaQunt2bOHHTsCLcHuGnEWtphvwITFopRi//79fP/732fp0qVs2bIF13WxbZsDBw8xPDyMOVM47pZs3IlJBgYGArfc3C72wCu7HbwAK0zmb9vncQnwO+DG7pxhsMQyeDCTPS0u8z7GNE0OHTrETTfdxDPPPINh+JeybdscOnQId1bfMdu2mZyc7J/60iZJJBIMDAzUenoDfrePWBJLYQMuAz4Q9iKEcDEMg1dffZXrr7+e5557boG4ebOGl5TFTTiCUopEIlFP8GO7K4qrsK2Z+VuADvFPCJ7du3dzySWXYNvVk+ENw+DgwYNcd911vPDCC5Xtpm3bHDhwYIG4TUxMhH1Ki0JrzdDQEJlMJnDLs84WXe3ZsyeWYalY+tiemziiIyV3biRz2mk9r8vVMFZsb02ehq2rYZVEMwJlaGiI97znPXiexx133EGiSp2jYRgcPnyYa6+9lg9+8IOsX78erTWO43DgwAFWrFgxx5qbmJhgcHAw7FNrGdM0K+fRJf4L8CJwXdjn3iqxmyX4i/06kTA4x9Oc52m/0L3oHnGE5t2ZpFWvub+iCwem/f9f8hb/V3BhwwAMNuwKI7SKZVmcfPLJFItFHn/88ao3t1KKQqHAY489xkknnVQRLs/zKBQKZDKZimXieR6O45BKNRxJV5dSqTTHIuw05XO0bTuwQEhZLIvFYrVjZoCf3XTTTQ937SQDInZbUQWX2S4frzxQJarTyldezl9rF1NJl41Oksvl+PM//3Pe/va31xQTpRTj4+N8+ctf5pVXXqk8Xrbcqm1LJaBAIytQ79mzJ+wltn5OYS+gVQaS5JImg1BjG9riD2hQY/pOWwWrZRvaUbLZLB/4wAd429veVleQJiYm+NKXvsS+ffsqj9USt3aipZ1K/I0YaaA90zYEYiVsv9ivUQo9p1xmFq1enp6GsVKL/6gKGkgY/oQkobOk02k+9KEPcdFFF9V93eTkJF/84hc7Km65XI5kstMDXeailOqIoNax2j4BvK+rJxnE+YS9gFbQmqynWVLtucV+1UHsRCzD34oK3SGVSvHhD3+YCy+8EKVUTVHqtLh122LTWrNkyRLS6XSgW2jLshgYGKh1TLHYOo2peJft8f9Ue85jcRZbu7gaXr8S1ubC/nT6C8uy+Mu//EsuuOACTNMMTdy6TacstgbEzs8WK2EbsDBTJkmYyR2bdQ0WWvSveRpGS8Hkn6kuDekV5pJIJPjoRz/K7t27mxK3+QGFgwcPVq1Q6GakMyasBIbCXkQrxEbYZtqAa5gp4J0VOFiMqKjK0dojk/C3okI4mKbJxz/+cXbt2lU3i35ycpKrrrqKl19+eU4Sb7Xyq3w+33fippSq1NdW4b/jD02KDXG6JYdtj6M9faQYuB2CaM7oanjdclgn29BQUUrxyU9+kp07d9YVt4mJCa6++mpefPHFuuJWKpUiLW6dSNRNpVLkcrlan12cGksD8RK2txQc/mrKXjhuztWtFbXpmUqDdrVNaxnQEiWaEbexsTGuueYa/vCHP9QtnC8Wi5EUt3IAIZVKddsf6MXJzxYnYav5U1J0W2wQGcDvjwaGLH8rKkSHsrjV8rkppRgdHeWrX/3qnML5UqnE4cOHcV234qCPqrh1igZCeSKwOuw1NksshG3Gv1Z3GkErOmUHMJHd03DCMtmGRpFPfvKTdQMKSikOHTrE17/+dZ599llM06wI2eHDhyslS/0kblprTNOsWos7w3/Dn4UQC2IhbMA6YGu1J1rehgLjdjDb0G41GRRa5xOf+ATnn39+TV9UuSvIDTfcwNNPP00ikagI2ejoaF+Km2VZjbqHxOYDiIuwnQP81/kPLmYbGoQXVAPL0v5WVIguH//4x7nwwtpGRrmf24033shTTz0VK3ELKd/OiYufLS7CVvNqajWHLIiJ7J6GzUOwJhv2xyI04mMf+xgXXXRRTSEwTZN9+/bxrW99i9/97nckk8mWxK38+m6itSadTtdLz+gU5wKbuv2miyHybYtm/GvHAf9p/nOKmRFoTQqVxq8Nbfe3ztOwOgsrpeg9Fmzfvp3Dhw/z5JNPVhUhwzCYmJjgmWeeYe3ataxevbrS2shxHCzLqoiI4zhorSvWXSKRwHGcrltyqVSKYrE4J5IbBFprXNetdT6nAv9y0003/e+unuwiiIPFthl4W7UnHN1atUEg21DtC9ry2FXP9S9KKT7ykY/w9re/vaYQmKbJSy+9xLe//W1+85vftGS5Rb0MqxUsy2pUixqsknaIOAjbKfgzDuag8H1rrSTaBjGR3QPWD8Aq2YbGCtM0+dCHPsQ73vEOHKd6gD2RSPDiiy9y++23tyRuvda+qBeEOg7CVvcXopVLKu8EEw2N++T1fiWRSPCBD3yAd77znTVnKJTF7Y477uCJJ57Asqy64jY9PR34drBZtNZhiFApDgGESPvYZvxrx+DPOJxD2b/mtDBnsdCmsOkZ39qxSyEribmxxDRNTjnlFBzH4V//9V+rOuANw2B0dJQXXniBVatWsXbt2po+N9d1Q7NwlFLYtt2R4S6e59Xys2WAf73pppsOhHLSTRJ1i+1E4IPVnrBnZhY0K2p5p/28Mw/fv7YiHfbHIrRDKpXiz/7sz3j3u99NqVS902gikeAPf/gD3/nOd3j88cdrbkvDJJvN1kuoXTTJZBLLsmoJ5tuAE0I98SaIurBtAt4y/8HZ1lqzTAe1DY2/+0HA78T73ve+l/e85z0Ui9VHlM0Wt3o+tzAJyVqMvDMm6sJWO3+txQO1e/l52i+fOjp+U9uEGmSzWS655BIuu+yyhuLWKKDQazQQzMj72SLrY5vxrx0NvHf+c6361ybtFovkq+Dhj9fbFKt2e0IjLMvihBNOwDRNfvGLX9ScWzo2Nsbzzz9fNc8tlUp1e94n4PvC8vk8juMELq6GYeB5Xq3AyCbgFzfddNO+1o7aPaJssZ0M/I9qT5RneTb7VZZcqQ0VajMwMMC73vWuhpbbiy++yG233cZvf/vbOeVX5a4g3aY8Hb4TA2USiUS99k9n4ddvR5YoC9tK4Iz5D5bngDbr65q0AwgaaDhqALYsae84QnQZHBxsStxefvllbrnllgW1pfP7uXWLsKxFIu5ni6Swaa1xtR8bmP0HRya/M++5Wn+lmSnxuo0/T/vpHTLlvbcpi9t73/vemuJmmiavvPIKN998M7///e8rLY+qNavsBiEm07pR9rNF0uuptT7Z1Xyn4PCaBc/RmgXmzFbFxa4HSJuQ6+4ISSEkJiYmuO2227j55puxrOq/Zq7rsnLlSt7//vezadOmSs5XMplkeHi4qwXqBw4cqJm20g6e5zE1NUWhUKjmw3sSuHjHjh3/q2sn2gJRTTMdNBWvESERwmBwcJCLL74Yz/O49dZbq/qwTNPkwIEDXH/99fzFX/wFGzduxPO8iuW2fPnysLaIgdFgtsKJRHhyVVQ/eXHTC6EyODjIpZdeysUXX1yz/KrcrPK6667jhRdemDMgZv7cUqG7RM5iGxkZUYcPH04MDkrCmBAumUyGiy++mFKpxPe+972qlpthGBw+fJhrr72WD37wg6xZs6bS+mffvn2sWLGi43luQ0NDHDx4sGZx/2JpUFpFsVhMjIyMqL1790bOEImcj21kZOTkZDL54LJly2IzOELoXZRSTE1NMTExUVegytOj5vvWuuVr8zyvI4GEeoX2U1NT+xzHuXDv3r2R87NFzmIDLNu2V+/bF9ncP6HPKHfzaPSa8fFxtNZzXtvNqGUIFRCrgUjmCkRR2Pxp7z1YpiL0PvOvW7mOw+H/B2FAkPFkwNxTAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE4LTA1LTMwVDE1OjA4OjU2LTA0OjAwT9bydAAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxOC0wNS0zMFQxNTowODo1Ni0wNDowMD6LSsgAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMjHxIGmVAAAAAElFTkSuQmCC">
-<link rel="icon" type="image/png" sizes="16x16" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7AAAAOwAFq1okJAAAAGXRFWHRTb2Z0d2FyZQBwYWludC5uZXQgNC4wLjIx8SBplQAAARlJREFUOE+tk7FuwjAURf0TXfia/Eh/gZENMXZtWQI7irJ1rUSliEodCFIQCkgMMETqUtLQJerC8Jpr8aL3nAgYuNJRYvvdazt2DIuIzm/GeJ5XVpDE9307hjqmlttZPa1+8tySpillWabqGDYoDn9E0RfReE00mJMNSJbLRh24OcCtAbXcgeSgA6Ioqrp1DWg1g7sGyJNw664GnE1Squ5iAJuxhd60sGBM0hpQGU9s5m/AId3XPbrr2tYAPkJIBsDsBgDVALx/yA14nDTvg2pg6S4vz8NGn/SoAMwuZwUwjN435G+Jnj5L6r/Z5TUD5N6lfo/fPKtVURTqYpnZamc+VruO3Dv/hQCGRRzbELzjv0BAEAQPYRiaf5hY1uhDUXlmAAAAAElFTkSuQmCC">
-<link rel="icon" type="image/x-icon" sizes="16x16 32x32 64x64" href="data:image/x-icon;base64,AAABAAMAQEAAAAEAIAAoQgAANgAAACAgAAABACAAqBAAAF5CAAAQEAAAAQAgAGgEAAAGUwAAKAAAAEAAAACAAAAAAQAgAAAAAAAAQAAAwQ4AAMEOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKSkgCCgoJVl5eY/JmZmv+ZmZr/mZma/5mZmv+ZmZr/mZma/5mZmv+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ZmZn/mZmZ/5mZmf+ampr/ZmZm/z4+Pv9nZ2f/jIyM/5GRkf+RkZH/kZGR/5GRkf+Ojo7/hYWF/4WFhf+FhYX/hYWF/4GBgf94eHjsZmZmMGhoaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9+wA/vftKf/z5Ob/8N3//+/Z///t1f//6s3//+rN///qzf//9ef/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1RUVP9ra2v/ysrK/+vr6//t7e3/7e3t/+3t7f/t7e3/5ubm/9TU1P/T09P/09PT/9PT0//IyMj/v7+/zL+/vxG/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+nLAP/pywn/6s25/+fH///kvv//4rv//9ur///aqP//2qf//+bD///+/f//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM/+zs7P/t7e3/7e3t/+3t7f/t7e3/7e3t/+Li4v/T09P/09PT/9PT0//S0tL/xMTE/7+/v5u/v78Bv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s4A/+rOhf/py///5MD//+S////esv//26r//9up///esv//+fH/////////////////////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM//Hx8f/w8PD/7e3t/+3t7f/t7e3/7e3t/+3t7f/e3t7/09PT/9PT0//T09P/0NDQ/8HBwf+/v79pv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/qzk//6s36/+XC///kv///4bf//9uq///bqv//26r///Dc////////////////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM//Hx8f/7+/v/8PDw/+3t7f/t7e3/7e3t/+3t7f/s7Oz/2tra/9PT0//T09P/09PT/83Nzf+/v7/yv7+/PL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/t1QD/7dYk/+3U4v/nxv//5L///+O8///crf//26r//9qp///mxP///v3/////////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM//Hx8f/9/f3//f39/+/v7//t7e3/7e3t/+3t7f/t7e3/6urq/9fX1//T09P/09PT/9PT0//IyMj/v7+/1L+/vxe/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/7tcA//DbCf/v2bn/6cz//+XB///lwf//37T//9yt///crP//4LX///ny////////////////////////////////////////////////////////////////////////////////////////////xcXF/1JSUv9qamr/zMzM//Hx8f/9/f3///////v7+//u7u7/7e3t/+3t7f/t7e3/7e3t/+fn5//U1NT/09PT/9PT0//S0tL/xMTE/7+/v6a/v78Dv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+nLAP///gD/+vSF//rz///58P//+fD///ft///26v//9uv///fr///9+v//////////////////////////////////////////////////////////////////////////////////////39/f/1dXV/9qamr/zMzM//Hy8v/9/v7////////////7+/v/7u7u/+3t7v/t7e7/7e3u/+3u7v/k5OX/09PU/9PT1P/T09T/0NDR/8HBwv+/v79vv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9OUA//bpT//z4/r/8d3//+/a///v2f//69D//+rO///qzv//6s3//+jI///mw///5sP//+bD///mw///4bj//9+z///ftP//37T//9+0///ftP//37T//9+0///ftP//37L//+/W/87Oz/9RUVH/ubi3//XdvP/+3bH//9+0///ftP//37T/+9uw/+7Qp//t0Kf/7dCn/+3Qp//t0Kf/5Mig/9m+l//Zvpj/2b6Y/9S5kf/LsIfyybKPPMmxjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+nNAP/pzCT/6s3i/+bF///jvv//477//96w///aqP//2qj//9qp///Yo///05j//9OX///Tl///05f//82I///IfP//yH3//8h9///Iff//yH3//8h9///Iff//yH3//8d6///htf/Pz9D/VVVW/8PBv//70pn//8h7///Iff//yH3//8h9//vFe//uu3T/7bp0/+26dP/tunT/7bp0/+Ozb//drmz/3a5s/92ubP/Xp2H/06Nb2dSjWRrUo1kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s4J/+rPuf/oyv//5L///+S////ht///26r//9uq///bqv//2qj//9Wc///Umf//1Jn//9SZ///Pjv//yX///8l////Jf///yX///8l////Jf///yX///8l////Iff//4rb/z8/Q/1RUVP/Avrv/+9Ob///Iff//yX///8l////Jf//6xXz/7bt2/+27dv/tu3b/7bt2/+y6df/gsXD/3a9u/92vbv/crmz/1KZf/9OkXbDTpF0F06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+7XAP/u1oX/6s7//+XB///kv///47z//9ys///bqf//26n//9up///Xn///1Jj//9SY///Umf//0ZH//8l////Jfv//yX7//8l+///Jfv//yX7//8l+///Jfv//yHz//+K2/8/Q0P9NTU3/mJiY/+jSs///zIX//8h9///Jfv//yX7/+MN6/+27df/tu3X/7bt1/+27df/quXT/3rBu/92vbf/dr23/2qxp/9OkXf/TpF1606RcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/x3QD/8dxP//Da+v/rzf//6cj//+nI///kvP//4bb//+G2///htv//37H//9un///bp///26f//9mj///Skv//0ZD//9GQ///RkP//0ZD//9GQ///RkP//0ZD//9CO///nwP/P0ND/S0tL/19gYP+gn5//7te4///Skv//0ZD//9GQ//jLi//uwob/7sKG/+7Chv/vw4b/6L2C/920e//dtHv/3bR7/9eucv/RqGn40admSNGnZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADk4dwA5eHcJNjW0+LW1ND/19PP/9fTz//X087/19LM/9fSzP/X0sz/19LM/9fRyv/X0cr/19HK/9fRyv/X0Mj/19DH/9fQx//X0Mf/19DH/9fQx//X0Mf/19DH/9fQx//Z1dD/sLCw/1VVVf+bm5v/b29v/5+fnv/Vz8f/19DH/9bQx//QysH/zMa+/8zGvv/Mxr7/zMa+/8bAuP++uLH/vrix/764sf+3san/tK6l3ryyoiG8sqMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdHR1AHR1dQlbW1u5WFhZ/1hYWf9YWFn/WFhY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1dY/1dXWP9XV1j/V1hY/1BQUP9QUFD/y8vL/8nJyf9sbG3/VlZX/1dXWP9XV1j/V1dY/1dYWP9XWFj/V1hY/1dYWP9XWFj/WFhZ/1hZWf9YWVn/WFlZ/1pbW7dpa20HZ2lsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQUFABHR0cAPj4+eT4+PuQ+Pj7hPj4+4EVFRehUVVX+VVVV/1VVVf9VVVX/VVVV/1VVVf9VVVX/VVVV/1VVVf9VVVX/VVVV/1VVVf9VVVX/VVVV/1VVVf9VVVX/VVVV/1VVVf9UVVX/Z2dn/+Dg4P//////1dXV/2tra/9TU1P/U1NT/1NTU/9TU1P/U1NT/1JSUv9QUFD/UFBQ/0VFRe0+Pj7gPj4+4T4+PuQ+Pj55R0dHABQUFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAAEBAQAxAQEAeQEBAHigoKBu8u7pW6Ofm9+jn5v/o5+b/6Ofl/+jn5v/o6Oj/6Ofl/+jn5f/o5+X/6Ofk/+jm5P/o5uT/6Obk/+jm5P/o5uT/6Obk/+jm5P/o5uT/6Obk/+vp5v/8+vj///77///+/P/x7+3/393a/9jW1P/Y19T/2NfU/9nX1f/NzMn/wsC+/7y7uP6enZtwLS4uGkBAQB5AQEAeQEBADEBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8dwA//HcP//w2vb/7dL//+rM///lwP//6sz///z4///qy///4LP//+Cz///apf//2KD//9ig///YoP//2KD//9ig///YoP//2KD//9ig///YoP//2KD//9ef///Wn///1p///9eg//XPmf/uyJX/7smV/+7Jlf/vyZX/5MCO/9y5iP/WtIH0z615Pc+seAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rNAP/qzj//6cv2/+TA///huf//26n//9yt///26v//68///9OX///Tl///y4T//8h9///Iff//yH3//8h9///Iff//yH3//8h9///Iff//yH3//8h9///Iff//yH3//8h9//7Iff/yvnf/7bp0/+26dP/tunT/7bp0/+Ozb//drmz/2Khj39KiWCDUo1oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s4//+nM9v/lwf//4rr//9ur///aqP//6s7///bq///XoP//05j//8yF///Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf//+yH7/8L54/+27dv/tu3b/7bt2/+y6dv/hsnD/3K5t/9aoY8LQoFcL06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+rOP//pzPb/5cH//+K6///bq///2qj//9+z///68///37P//9OX///Mhf//yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///cd+/++9d//tu3b/7bt2/+27dv/runX/37Fv/9ytbP/VpmGgu4o1AdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+vQAP/r0D//6s32/+XB///iuv//26v//9up///Yov//9Ob//+vQ///Tl///zIX//8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l///vGff/uvHf/7bt2/+27dv/tu3b/6rh0/96wb//brGr/1KVfe9anYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/v2QD/8No//+vR9v/lwf//4rr//9ur///bqf//1Zz//+nK///26v//1p///8yF///Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf//6xX3/7rt2/+27dv/tu3b/7bt2/+i3c//dr27/2qto+9OkXVDTpV4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8NsA//DcP//s0fb/5cH//+K6///bq///26n//9Wc///drv//+vP//9+y///LhP//yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX//+MR8/+27dv/tu3b/7bt2/+27dv/ltXL/3a9u/9mqZu3So1wy06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//HbAP/x3D//7NL2/+XB///iuv//3Kv//9up///Wnf//1p3///Xm///s0P//y4T//8l+///Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l///bCe//tu3b/7bt2/+27dv/tu3b/47Nx/92vbv/XqGTZ0aJaGdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPbw5wD28Og/9u7j9vbr3f/26tr/9ufT//bn0//25c7/9uTM//bv5v/28u3//Nim///Jfv//yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf//0wXr/7bt2/+27dv/tu3b/7Lp2/+GycP/crm3/1qdivM+gVgjTpF0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACGhocAhoaHP4aHh/aGh4f/hoeH/4aHiP+Gh4j/hoeI/4aHiP+Ghob/jIyN/8jCu//71qL//8l+///Jf///yX///8l////Jf///yX///8l////Jf///yX///8l////Jf///yX//8795/+27dv/tu3b/7bt2/+u6df/fsW//261r/9WmYJbrvoUA06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPz8/AD8/Pz8/Pz/2Pz8//z8/P/8+Pj7/PT09/z09Pf89PT3/PT09/z4+Pv9sbW3/yMK6//vWov//yX7//8l////Jf///yX///8l////Jf///yX///8l////Jf///yX///sh///G+eP/tu3b/7bt2/+27dv/quHT/3rBv/9qsav/UpV9t1aZgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQABAQEAaQEBAZUBAQGk7Oztmg4ODorCxsf+wsbL/sbGy/7Cxsv91dXX/Pz8//2xtbf/Iwrr/+9ai///Jfv//yX///8l////Jf///yX///8l////Jf///yX///8l///3Ifv/vvXf/7bt2/+27dv/tu3b/6Ldz/92vbv/Zq2f506RdSdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//ruAP/670T/+Ov3//Xj///z3v//9eD/6unm/3l6ev8/Pz//bG1t/8jCuv/71qL//8l+///Jf///yX///8l////Jf///yX///8l////Jf//8x33/7rx3/+27dv/tu3b/7bt2/+W1cv/dr27/2Kll6tKjWyzTpF0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s43/+fG8f/ftP//2qj//9ae///px//q6uf/eXp6/z8/P/9sbW3/yMK6//vWov//yX7//8l////Jf///yX///8l////Jf///yX//+8Z9/+67dv/tu3b/7bt2/+27dv/js3H/3K5t/9eoZM3RoVkS06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+vQH//nx+H/4Lf//9up///Wnf//1Jr//+jG/+rp5v95enr/Pz8//2xtbf/Iwrr/+9ai///Jfv//yX///8l////Jf///yX///8l///nEfP/tu3b/7bt2/+27dv/sunb/4bJw/9yubP/Vp2GvzZ1TBNOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/r0RL/6MnN/+K5///bq///16D//9SZ///Tlv//47r/6unm/3l6ev8/Pz//bG1t/8jCuv/71qL//8l+///Jf///yX///8l////Jf//3w3v/7bt2/+27dv/tu3b/67p1/9+xb//brWv/1aZgi9mqZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/7dUI/+jKvv/iu///26v//9eh///Umf//05b//8uD///iuP/q6eb/eXp6/z8/P/9sbW3/yMK6//vWov//yX7//8l////Jf///yX//9cF6/+27dv/tu3b/7bt2/+q4dP/esG//2qxp/tSlXmDUpV8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A//r3Af/py6D/477//9ys///Yo///1Jn//9OX///LhP//yYD//+K4/+rp5v95enr/Pz8//2xtbf/Iwrr/+9ai///Jfv//yX///8l///PAef/tu3b/7bt2/+27dv/ot3P/3a9u/9mrZ/TTpF0906RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/lwgD/6cyR/+S////crf//2aT//9SZ///UmP//zIX//8l+///JgP//4rj/6unm/3l6ev8/Pz//bG1t/8jCuv/71qL//8l+//7Ifv/xvnj/7bt2/+27dv/tu3b/5bVy/92vbv/YqWXi0qNbIdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6cwA/+rNbv/lwv//3a///9ml///Umv//1Jn//82I///Jf///yX///8mA///iuP/q6eb/eXp6/z8/P/9sbW3/yMK6//vXo//+y4P/8cB9/+6+e//uvnv/7r57/+O2df/dsHH/1qlmyNCiWw7TpV8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rNAP/qzV//5sP+/96x///ap///1Zr//9SZ///Oiv//yX///8l////Jf///yYD//+K4/+rp5v95enr/Pz8//2xtbf/Gwbv/5tjH/9zQv//cz77/3NC+/9vPvv/PxLP/yb2t/8K0oafJomUDy6+EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/6s5B/+bF9//fs///2qj//9Wb///Umf//z4z//8l////Jf///yX///8l////JgP//4rj/6unl/3d3eP8/Pz//Xl5f/2xtbv9sbG3/bGxu/2xtbv9sbW7/a2xt/2tsbf9zdHV7VVVWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+rPMv/nxu3/4LX//9up///Wnf//1Jn//9CO///Jf///yX///8l////Jf///yX///8mA//7gtv/d29j/dXV2/0RERP9DQ0P/Q0ND/0NDQ/9AQED6Pj4+9j4+PvY+Pj70Pj4+VT4+PgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/r0B7/58jh/+G3///bqf//1p7//9SZ///Rkf//yX///8l////Jf///yX///8l////Jf//9x3//8NSs/9/d2v+/v8D/sLCw/66urv+kpKT6enp6dTo6OjxAQEA/QEBAPUBAQBBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/69ES/+jJzf/iuv//26v//9eg///Umf//0ZP//8mA///Jf///yX///8l////Jf///yX//+8Z9/+68eP/uy5r/59W7/9bW1f/U1NT/xsbG6sDAwCzCwsIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+3UCP/oyr7/4rv//9yr///Xof//1Jn//9KV///Kgf//yX///8l////Jf///yX///8l///nEfP/tu3b/7bpz/+DGof/T09T/0NDQ/8LCws29vb0Sv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/58wH/6cug/+S+///crf//2KP//9SZ///Tlv//yoL//8l////Jf///yX///8l////Jf//3w3v/7bt2/+27d//cy7P/09TV/83Nzf/AwMCmvLy8A7+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/5cIA/+nMkf/kwP//3a7//9ik///Umf//05f//8uE///Jf///yX///8l////Jf///yX//9cF6/+27df/rvXz/2M7B/9PU1P/Kysr/v7+/c7+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+nMAP/qzW7/5cL//92v///Zpf//1Jr//9SY///Mhf//yX///8l////Jf///yX///8l///O/ef/tu3X/6b+G/9XRy//T09P/x8fH+L6+vki/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzQD/6s5f/+fH/v/esv//2qf//9Wa///Umf//zYj//8l////Jf///yX///8l///7If//xvnj/7bp0/+XCk//U09H/0tLS/8TExOW9vb0mv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/7tgA/+/ZQf/r0Pf/4Lb//9qo///Vm///1Jn//86K///Jf///yX///8l////Jf//9yH7/7713/+27df/gx6P/09PU/9DQ0P/CwsLHvb29Dr+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//TmAP/15zL/79nt/+K6///bqf//1Z3//9SZ///PjP//yX///8l////Jf///yX///Md9/++8d//tu3f/3Muz/9PU1f/Nzc3/wMDAm7CwsAG/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/26QD/9+we//Dc4f/kv///26r//9ae///Umf//0I7//8l////Jf///yX///8l///rFff/uu3b/6718/9jOwf/T1NT/ycnJ/7+/v2m/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8+QA//bqEv/x3s3/5sP//9ys///Xn///1Jn//9GR///Jf///yX///8l////Jf//4xHz/7bt1/+m/hv/V0cv/09PT/8bGxvW+vr5Av7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//XoAP/58Qj/8uG+/+jH///drv//16H//9SZ///Rk///yYD//8l////Jf///yX//9sJ7/+26dP/mwpH/1NPR/9HS0v/Dw8Pfvb29IL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/w2wD///8B//PjoP/qzP//3rH//9ij///Umf//0pT//8qB///Jf///yX///8l///TAev/tunT/4cag/9PT1P/Pz8//wcHBv7y8vAq/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//PhAP/z5JH/69D//9+0///YpP//1Jn//9OW///Kgv//yX///8l///7Jf//yv3j/7bt2/93KsP/T1NX/zc3N/8DAwJDExMQAv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/15wD/9OZu/+3U///ht///2ab//9Sa///Tl///y4P//8l////Jf//+yH7/8b53/+u8e//Zzr7/09TV/8nJyf6+vr5gv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9egA//bqX//u1/7/4rr//9qn///Vmv//1Jj//8yF///Jf///yX///cd+/++8dv/pvoP/1tHJ/9PT0//Gxsbxvb29OL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//bqAP/260H/8Nv3/+S+///bqv//1Zv//9SY///Mh///yX///8l///vGff/uu3X/5sKQ/9TS0f/R0tL/xMTE2b29vRq/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/15wD/9eky//He7f/lwv//3Kz//9Wc///Umf//zor//8l////Jf//5xXz/7rt1/+HGoP/T09T/z8/P/8HBwbe7u7sHv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9OUA//XoHv/y4OH/5sT//92u///VnP//05j//8+M///Iff//yH3/98J5/+26df/dyrD/09TV/8zMzP/AwMCFwcHBAL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//HfAP/z4xL/9ejN/+7X///mxf//4bf//9+y///cq///1p///9ae//TNl//rx5X/2c/C/9PT1P/Hx8f8vr6+WL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///gD///4I////vv////////7////+/////f////3////9//z8+f/w7+z/6unm/9fW1v/T09P/xcXF9r6+vj/AwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AdnZ2aDW19f/19fX/9fX1//X19f/19fX/9fX1//U1NT/zM3N/8jIyP+9vb3/vLy8/7S0tPawsLA/sbGxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRUVABZWVmQWFhY/1hYWP9YWFj/WFhY/1hYWP9YWFj/WFhY/1hYWP9YWFj/WFhY/1lZWf9ZWVn2WVlZP1lZWQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/Pz8APj4+bz4+Pv8+Pj7/Pj4+/z4+Pv8+Pj7/Pj4+/z4+Pv8+Pj7/Pj4+/z4+Pv8+Pj7/Pj4+9j4+Pj8+Pj4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+AAAAAAAAf/4AAAAAAAB//gAAAAAAAH//AAAAAAAA//8AAAAAAAD//wAAAAAAAP//AAAAAAAA//+AAAAAAAH//4AAAAAAAf//gAAAAAAB//+AAAAAAAH//8AAAAAAA///wAAAAAAD///AAAAAAAP//8AAAAAAA///4AAAAAAH///gAAAAAAf///4AAAAAf////gAAAAB////+AAAAAH////4AAAAAf////gAAAAD////+AAAAAP////4AAAAA/////gAAAAD////+AAAAAP////4AAAAB/////gAAAAH////+AAAAAf/////gAAAB/////+AAAAH/////4AAAAf/////gAAAD/////+AAAAP/////4AAAA//////wAAAD//////AAAAP/////8AAAA//////wAAAH//////AAAAf/////8AAAB//////wAAB///////AAAH//////8AAAf//////4AAD///////gAAP//////+AAA///////4AAD///////gAAP//////+AAB///////4AAH///////gAAf//////+AAB///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAH///////8AAf///////wAB////////AAH///////+AAf///////4AB////ygAAAAgAAAAQAAAAAEAIAAAAAAAABAAAMEOAADBDgAAAAAAAAAAAAAAAAAAAAAAAL+6tAC8uLIr0Me96NLIuf/SxbP/0sm7/9LS0f/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/S0tL/0tLS/9LS0v/T09P/0dHR/4KCgv+BgYH/wsLC/8XFxf/BwcH/srKy/7CwsP+kpKTcjo6OHZCQkAAAAAAAAAAAAAAAAAAAAAAA//DVAP/x2Q3/683D/+bB///fsP//47r///z3//////////////////////////////////////////////////39/f+1tbX/i4uL/97e3v/v7+//7+/v/+fn5//V1dX/0tLS/8XFxbe9vb0HxMTEAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+bDAP/qzpD/5cL//96y///bqv//8+P////////////////////////////////////////////9/f3/s7Oz/4iJif/k5OT/9vf3/+3t7f/t7u7/4eLi/9PT0//Ozs7/wcHBhcTExQC/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAD/8+MA//PiWf/w2/z/7NL//+jJ///z4v///vz///37///9+////fr///36///9+v///fr////9/729vf+Ih4b/5OLf///++//18/H/7evo/+3r6f/e3Nr/09LP/8vJx/q/vrxPwL68AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/y4AD/8+Ir/+7X6P/rz///5sP//+S////ht///37L//9ys///Wn///1p///9af///Wnf//4bf/m5ua/8y7pP//2KD//9ef//TOmP/tx5P/7ceT/+C8i//at4b/0rB95MqsfyXMroAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/s0w3/6s3D/+bB///gs///3Kn//9mi///VmP//0pL//8p+///Jff//yX3//8h7///Xnv+ZmJf/wK+Y///MhP//yX3/9cB3/+67dP/tunP/4bFt/92taf/VpV2+0qFWC9SjWQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/79oAk5CNAOfczpDg1ML/4NG8/+DOtf/gzbP/4Mut/+DKq//gxaH/4MWg/+DFoP/gxJ//4Myw/4qKiP+HhoT/zbmf/+HFoP/WvZn/0rmX/8+3lf/Fro7/waqJ/7+lfY2ZnKEA0qVhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWVlcAX2BgUlhZWd9cXV7ma2xt/Wxtb/9sbW//bG1v/2xucP9sbnD/bG5w/2xucP9rbW//cXJz/8vMzv+SlJb/amtu/2prbf9pamz/ZWdp/lpbXOhWV1jfWltdUVRVVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQ0NAAzMzMIIiIkG6eim0fl287v59nH/+ff1P/n2cb/59O4/+fQsv/n0LL/59Cy/+fQsv/q1LX//OfJ//TfwP/bxqn/18Km/9K9ov/BrpTwjYJySicpKxs0NDQINTU1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/688A/+zQLv/ox+3/37L//+jG///lv///0I7//8qA///KgP//yoD//8qA///KgP//yX7//sh+//G/eP/uvHf/6Ld0/9ytatnVpl4a1qZfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/rzwD/69Au/+fG7f/esv//3rD//+rO///Qkf//yX///8l////Jf///yX///8l////Jf//9x37/77x3/+27dv/ktXL/2atou8+fVQnTpF0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+/XAP/v2C7/6Mjt/9+y///Zo///6s3//9ae///Jfv//yX///8l////Jf///yX///8l///vGff/uvHb/7bt2/+KzcP/YqmaW/9iuANOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADz6NkA8+jaLvPjzu3z3b//89iz//Phyf/43bj//8qA///Jf///yX///8l////Jf///yX//+sV8/+27dv/sunb/37Fu/9eoZHDbrGoA06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1tbQBtbW0sbW1t5G9vbvlzc3P/cXFy/4mGgv/nx5r//8uB///Jf///yX///8l////Jf//4w3v/7bt2/+u5df/dr2351qdiS9eoZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANjY2ADY2NgsuLi44goB9ZsvEuvPMxLj/iYiH/398eP/nx5v//8uB///Jf///yX///8l///bCev/tu3b/6bh0/9yta+rUpmAs1aZgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/u0gD/79Qk/+fC5f/erP/z3b3/jYuK/358eP/nx5v//8uB///Jf///yX//9MB5/+27dv/ntnP/2qxp0dKjXBPTpF4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rNAP/r0RX/5L/U/9mm///Vmf/z2LL/jYuJ/358eP/nx5v//8uB///Jfv/yv3n/7bt2/+S0cv/Zq2exyptPBdOkXQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+7XCv/lwcD/26n//9OX///Nh//z16//jYuJ/358eP/nx5v//8qA//G+d//uu3X/47Nv/9ipZYvmt3kA06RdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/qzgD/9+8D/+bDqv/crP//1Jn//8uE///Lgv/z17D/jYuJ/398eP/cwp//3sCX/9u+lf/Ps4z/yat/ZcithwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+rOAP/ZowD/5sWS/92v///Vm///zIf//8l+///Lgv/x1q7/iomH/2RlZv9paWn+YmJj8V9gYORmZmc9YmNjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/6s4A/+TAAP/nx3n/3rL//9Wc///Nif//yX///8l///3Jgf/nyqL/wby0/6+vr+xwcHBPLy8vKTQ0NAk1NTUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/58YA/+jJYP/gtf//1p7//86L///Jf///yX//+8V8/+29ev/bz73/y8zNzr6+vhLCwsIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/oyAD/6cpJ/+G4+f/XoP//z47//8l////Jf//5xHv/6r6B/9XPxv/HyMmlmZmZAr+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+vRAP/s0zX/5L/w/9ii///QkP//yX///8l///fCev/nwY3/0tDN/8XFxXnMzMwAv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8+IA//XmI//oyOT/2aX//9GS///JgP//yX//9cF4/+LFnP/Pz8/5wsLCS8PDwwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/05gD/+O0V/+rO1P/aqP//0pT//8qB///Jf//zv3j/3smr/8zNzua/v78nwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//TmAP/79gr/7NLA/9yt///Tlv//yoL//sh+//C/e//azLr/ycrMx7m5uQ6/v78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/9OUA////A//u16r/3rL//9OY///Lg//9x33/7cCB/9XPxf/HyMmcAAAAAL+/vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/16AD/2aIA//Dbkv/gtv//1Jn//8uE//zFev/owYv/0s/M/8XFxnDKysoAv7+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/+3WAP/z4AD/9OR5/+rK///er///2J//+8+S/+XLp//Pz8/2wsLCQ8PDwwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4N/eAOTj4WDg3tz/4N3Z/+Dd2P/Z1dD/yMbD/7q6uu2wsLAusbGxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaWloAW1tbS1lZWfpYWFn/WFlZ/1hYWP9XV1f/VlZW7VZWVi5WVlYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAB+AAAAfwAAAP8AAAD/AAAA/wAAAP+AAAH/gAAB/4AAAf/gAAf/4AAH/+AAD//gAA//4AAP/+AAD//4AA//+AAP//gAH//4AB///AAf//wAH//8AH///AB///wA///8AP///AD///wA///8Af///gH///4B///+Af///gH/8oAAAAEAAAACAAAAABACAAAAAAAAAEAADBDgAAwQ4AAAAAAAAAAAAA3NHBANzRwhrp1r3Z69Wx/+vo5P/r6+z/6+vs/+vr7P/t7e3/ysrL/5qbnP/Z2dn/zc3O/7y8vNOmpqYVqKioAP/v1AD/9OcF/+vPsP/mwv//9/P///3////8////////6e7v/66trf/08/L/7vPz/9vY3P/LyM2rpa+zBMLCwgD///8A/+jIAP/13nr/7sb//+G3///cq///1ZH//9eT/868pP/VvJj//9iX//TFh//kuH3/0q90duqxaQDQ0tQAAAAAAMe/swDGvbFApJyW36adl/ymm5P/ppmM/6mbjP+SkJH/qKqf/6WYif+bloH9mopz36mUbT+smXsAAAAAAAAAAAApLDAAAAAABJyVjD7r2L/q5tPB/+XFmP/lwpH/6cWU//vWnf/ZuIr/yKp/5HdyYDkAABAELzVJAAAAAAAAAAAAAAAAAP///wD//+Um/+695//twf//0pH//8l9///Kfv/9x3z/77x2/+Kybcfeq10O/8lvAAAAAAAAAAAAAAAAAAAAAADOxrsAvrivI7arnNmtpp7/1bmT///Kgf//yX//+8Z9/+y6df/er2yloHYnAuy4agAAAAAAAAAAAAAAAAAAAAAAOjw+AAAAAAWAf4BH3syz6ZyYlP/NsIj//8uC//rFfP/quHT/3K1qf++/gAD5wGoAAAAAAAAAAAAAAAAAAAAAAAAAAAD///AA//nbFv/gsdb/1pz/nJeP/82wiP//zoD/8Lh2/dqsalj2wncAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///fAP/u2Av/37TD/9GR///Kjf+gmY//nZGE/qSSed6vmnszuqWGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//4QD///8D/+C3rf/Slf//yn//9cSL/7u1t+FgaXk6AAAABTU7TQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//+4A/6YqAP/jx5X/1Jn//8l//+/Dgf/TzMm8usPbCeno5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP/drgD/6NB8/9af///Jf//pxZP/xsvIkf//6QDNzc8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//NYA/+vPZP/ZpP/+yHX/48af/8nKzGLPz84A4OHhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///0AP/55Uz/6bj6/9GV/93LsvLGydg54eHhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALu6uACqsK05oJ+h8p6gmf+OlZLnhYaIJ5eXlwAAAAAAAAAAAAAAAAAAAAAAAAAAAIABAACAAQAAwAMAAMADAADAAwAA4AcAAOAHAADgDwAA8A8AAPAPAADwDwAA+B8AAPg/AAD4PwAA+D8AAPg/AAA=">
-<link rel="icon" type="image/png" sizes="32x32" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7AAAAOwAFq1okJAAAAGXRFWHRTb2Z0d2FyZQBwYWludC5uZXQgNC4wLjIx8SBplQAAAYpJREFUWEftl7FOg1AUhnkJF18GXsRXcHQzjj6CusvA5GqiCYsO1uiCRhe3LraiS+N69b+c05x7ekBAqA79ki9Nb+H+f+ECbdSWOI4XMEkS1yRtPjx/XiBNU9dG2nx4nOJtPg8sisLleT5egdmnc/cz5/Jp5clD5cFN5abApsCmwOgFEP4vC1i3Y0i7DYdVwApmabfh0AVk2FqeCbKADreg3Tx4q4a6wwWscCzCvYsykHZbhrO9aQpndQEOlXZGhupweRnqErtnL9jkd+GgKbyuAMIHK4BAKbO2ArgFQ778mLoCHA53Tgts2j8cyMuvSwGEQ5qmP5TXG5qmO3rx1YmHUFmW/tX6nKVp22NNUieegta4lKa1wZFiGT7vdecaWkFHz857eL3w7p9PvTTtSk4Qzlo/PqwCUIYfXz6aBXgx6hyPHiRb8/H+GpTQYH1AnKZvgpwlcpC/PR+Bn0CBphK8QBsLgKu7p22oDz+j/4qx/A1vJ5OgBI/LArLEClxATjKGWZZtwSo1ir4ABlsc5d10T0gAAAAASUVORK5CYII=">
-<link rel="icon" type="image/png" sizes="144x144" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAYAAADnRuK4AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAOwQAADsEBuJFr7QAAG99JREFUeNrtnVuQHNWZ53/fyczq6pvUErqjSwtJFm0kBWYnBMtFIzCMYYHZl3VsEDF+2dgIP3heJ+bBz7MPY/Rm8MNCxDp2bO9G+E2zAeFgLTCBJyTMOADPjIMBGzxgrCtqdVfXJS9nHk5mVVZWVlVWd1ZXZcn/iJS6qrMyT5769/mu5/uECcLZs2cBFoA3gRObeOu/Ap5//fXXRz0Fmw416gEMARIef8QmwB71APKE1hrgNLA46rHcLpgoAs3MzKC13iUis6Mey+2CiSLQs88+u6n3E2mXlK+88sqop2DTMTEE0lrz4Ycf5nKter2O53lNgnieR6VSiURkE9VqFd/3R/3oI8XEEAjg6NGjFvD4Rq9TqVRoNBqAWWXq9TrXr19vI5DWmuXlZVzX7ViJbidMmhVmA4c3ehERQWuN1pogCLAsC9u2m+9FR4Tk69sJk0agXOA4DkpoHralUOr2XWV6YWJEWMVt/ewGUPWh6oHW5v9AQyMAL6DNS+T65lx06/3At6jVSviuEWNaw7RX4lCp3vyciGDbNq7rgnFecuHCBR599NFRT8WmYmII9K/LoGBp5zTH3ABuNuBGzRDnZt2Qas2DekLnvVmHitf+nqDwvSkaVRe0JkA4XHY4VGo/z3EcarUaWuungO8Ay6Oeh83GxBBo2gIRdmvYGQB+YBYUX0MQnhNoI5LikFBMJQWU2DaBUgSBj6Cpa0UjUJRU0DzHcRwsy8LzvPIkzeUgmBgdaHsZtk2BLWa1cQMjlQJtRBC0iBRHFs1GgBuuw4pvtZ0vIjiOA3AX8OCo52AUmBgCNZFgRC/bKNBGJ8pCIg24unO6lFIAZeAgGD3odsLEEGjnNNR8Hgk0VrTiaKDRw8/na3C7MExEUHZLKnla+LRe7jjPtu3ID/TnQInbDBNDoN/eQsoWS14ovhrhyhLxww1aoixCv7C9KKv5s0bwdOfZlmVFBJphguYzKybmgeecFhmauk/0InydhKc7SdUNguZKo0Ql6NSDLMsCuAe4d9TzsNmYGAIlIRhLrCmiUpaahp+uWDevoYxpF6EeKPzEKhT5g4AtwNZRP/dmYyIIdGVNA+zXcNzThjia8AgJtB4/smqJJwRwtXDDdTrOC8+xgAdGPRebjYkgUIjdGha90Nsc6JbY0oQe6EGREG+uVtz0bCTxi1KpFJHoFLdZNuQkEahNB4KYBaaNxZVEX/Un6XREs+Zb+HSKsRC7gYXbyZSfGAI1vc46AzEIY2N+HytMFMpqF1mXGyXqgWr7nFIqcijeCxwZ9VxsJiaCQJbArQb3eQHlOIl6ESmy1PohmesTpJjzIhKdpzDK9G2DiSCQBkoWXxHBivQdP/QHwWDmei8IUPEtLjemOlaucAWaBjY3r3bEmAgCBRrKkc8vJsJ07Pfr5Y+o9inS0NWhGOIQUL5d9KCJIBCEsaqgFTz1+8iwyNTvB2U7HWLs9/Up3ASJlFJRXOxB4M5Rz8dmofAE+qfrms8rbPUCjgUhcSIydSOIYEIdWXSgNFQDq+PalmVFq5AN3DbbigpPoO1l2DnNTks4CS1LLL4+eBvQfwTavNEAa77FLc/u0IPCFegO4GujnpfNQuEJZAk4lglJeGHANNAtBVpjxNV6IcpCWa2ovADVQLGayA0C41AMMQe3R2pH4QkE5kuNPM8BIWly3STRqTTrlPdiutKj3CbmfOEJ1PBh1eUYod6RFrJIftWDhzZ0x6tP62WSqUa2bUd60F5MktnEo/AEshWULe4HZiPnoB/L/YlWpTiiHRqZJ8lqT3fWQC3onLqYQ3EHsDTqudkMFJ5ASowe1AhaFpgX8/tESvWG7pEgkAC3PJuVhCIdy5Fe4I8EKg6ixDGt07MO84YAa4FKXYViDsX9MPmKdKEJ9P41zfvXcdyAw5Hi7OneedDrgYh0eqS1cMvv3MnjOE5kzj/BbeAPKjSBtpdhaRvbBB6MvNAkRFaastwIBjPtRVmoWH40gI9wuTHVeW5LD9rLbVDoqtAEEowO5Ece6Cj7MCa3/BSRtpHYWAsaN5BeKa77geOjnqNho9AEulKFP6zB9RrUvXDvu+7vA8pDL1LAVbeUutkw1IME2AOTrQcVmkCh83BfoJlvmvA5pW4koezOXGhj4XXSUbX0pacxudITi0ITKMQDGnZHwdG4bhOkmPBRoHVQJJVoMDnSn6XoQTFFugw4fS9eYEwCgdAaap4RX26CQH4KgQZxIrZ9MIFAS0d6K7Qp0veBCfJOKiaCQMDQ90KISEdUXkRz3XWoJfbMx3Kkp8NjYlFYAv3jleaSsB/Iw6zqCWXZHaY8wIpv4wXSjb9T5FCzcZxRWAKFmAWeiEIXSZ2nqzWWE9kEk9666ncSK7ZXbHHUkzRMFJ1AACqyuvygnTRpiWSu370iR090WWJqgeKaW0Kk/aIxS+wIcMekmvKTQKCBEN/uPBgEyymlvAsNLeiUHOnQH/RljFd6IlF0Am0jzP4DNmFTcfoNPquXaXRPsp8HHhnhHA0VRSfQn2j4UhTvivuA1r/SDA5fS6pDMVyBLEwJvIlE0Qmk0EjEm6QPKC2Quh4nYvNmSnWa8sCqb3HVLXVMZmjKAxwFpidRDyo6gQbGRlI9xLIQaU1ZZPm5gVAP4vXQwvNbDsU/wezWmDgUsjRtzAe0k0E1nw3rSbr574wNC6WQSGqKgGrbmVGOtOd5JWA78Omo5y5vFJJAISzgGT+WiRj3AW00jTUdgogi0AGzDnztINy1JQyPNGyWb7SvQrEVaBfwGPDeqCctbxRdhDnxbTxxncfrtjN1I5sMRRDLYdaBJw/C8W1QshXTJZvZKYdSyWnuUI2O6elplFLYtj1TqVT4/PPPRz1nuaLIK9DA8IJ1BlJDaEwxz8d2w5e2mfpBv/rVr/jggw8QEdbW1vC8Vt8EEcF1XRqNBpVK5RuXLl3Srus2zp49myZIFfBT4BdFat5bZALNMGDO8UZMe61hvgRf3Q+LZUOed955h+9973tcvnw5Lq5SISJ3i8j/6HObvwF+cfbsWYpCoiKLsJPAVyKxlSymsIGFpgNaw1wJnlmEpW0mN+idd97hxRdf5OrVq01lOXIeph0Zm9I9RcEqvRZ5BbI02JGy7CUU6HUV1UxBRJ5nF+HubRAEU/z8H/6BF198kWvXrqGUyrPhXImCFeksMoHakGXWvYw1gSIkyQPw9ttvd5BndnaWAwcOtEoCr7MFpuM4d9x1112HtNY3f/azn410PrOiyATayoAiuO639ZXribjYishz8eJFzp07x9WrV5vkmZmZ4aGHHuLIkSPMzMwAEATZlr94w94gCAiCYC+mVPC7o57crCgygf480MaMT4qsbsXJsq4LSZ0H4NKlS5w7d47Lly+3kefhhx/myJEjnDhxgiNHj1Kv1VmrrvW9l+f53LhxvUk2z/NYWVlBa70jCAJ+euECjxWg+2GRCVSOytkly7l4QRdrKwOD0sTWpUuX+M53vsOVK1dSyXPyxAmcO5c4/28KL3BoVBWe2+h+OxEC36eyMovWQfO+q9USddd7xtPyghLdGPUEZ0GRCdQVXRMR+yhAaeS5ePEizz//fE/y2PuWOP+x4ou6aZfpNSzcWr8RKtxaCd8Lm70KVOtT1FzliCCblEiwYRTOjA/jYDYDJqv7utUCKg3dyHPu3Lm+5Pn7TxTLdVMlRAnYtoOlpK3zc+qhVOtnmu/vEzhQlC+mKONM4gjwcCS2kiIrbaVJxsqSv+umMHfTeeLkuVlvz/IwVlh/eZm01hzbQkQWKVC1+6KKMAdMVXpoN88H3TjYTWHuJ7acfUucD1ee9baUN3WHWgHY2GUK84ddmIH2QqbGuSknxcXWUmzl6acw2zHypLt8MjIq8WGlFLbZO/TkqOc0K4pKoLKOjz3D95Um5jaq83TzF4pSbf1Wu8HUHWpdRML3tNnrVgiPdFEJ9J8CzZao2nybD6hL6ZZ4d8K8dZ40ZPFGi6iOzYpietjPAFPf+Lv3Rz3PfVFUAs3HOxK25QF1U5Yl1DbW4SRMkme9Ok8WOCYR/37g7lFPchYUlUBAlzW+hwMlSNF5IidhL/I4MbGVlTzx3Ole6CzgKWC2RE9lusCIUSgCxXKhS+jBAqNBmM+T1Hk2rjCnQ9lOpg9IighTIjMURJEuFIFC7Aa+GqVv+Ik60Gmk8jWUVLrOs1GFOR+0Lm4phWU2JO4Z4RxnRhEJ5ABbgy5OxKQPSAOzNjx1qN1Uz1Nh3giUslBW6tewBbDHXZEuIoGAHiGJxM8zNpzZB19aMO9FTsK8dZ6O8aVUdk0/sdNrbRtC/SlwYIRTnAlFJNB+YCYiSi8izdjwyF5YDNueDFPnSSKttnT3c9vPs8xrhwLUVywigR4KNNubYYy4czD6X6eTZ9N1noxaftLpKEpQIrPAsVFOdKaxj3oAgyAqAx0vJtXwW85DL2y0O+Okk2ccdJ4ssEwS/ixwerQj6Y9CBVMPhoVc4i0tG37LcRg1mluYgn3hhp9ROgmVbeN7/fPClDJ77qPkshjuAOQbf/e+/t9/MZ61OgtDoHDXgwD7sn4mUyZhDlH1bsikRBPqQCKtJRbjkfaD4AlM66irmzDF68LYEOjs2bNgvK+piWKnT5/W3/zmNxe+/vWvf031UU6VUrz33nuZdJ48FOZuGMTRmaztocyAonyPscXYECjEc8BfA17yF7Ozs/zwhz+0Xn/99btidXe64vr169y8eXOkTsJmw95+ubQiKNshiNWeCce0HaNIXxnOCDeOcSPQDnoEEYMg4He/+12mC4nIyAOjUWngwPf6nyxJX5CFEtkeaH0SeGt4o9zgM456AAMPuMf24eRW4mE5CTNjgKVNUiqfhcJLAMbVIz02K5CdIQFrUExNTfHggw9ums6zESjLbrPERARHWdQD78+Al4Gx3OYzNgR6+umnc72e1hrHcdixY8cmB0bboayMIiwF4aq0H+OV/iOBeuGJJ/p3BMi0JZmWzqq1Zm5uFnfh0KboPGkw+T71DM8miLLQsVKzIdH3YXZpjGV1s7Eh0LEvnzA/6FjfL1qkSeu+HHmk46/LyhSBivDbFfj7jxgJeQaCCMpSBLEioI5lURNvr9b6KH8kUG98umL+9zVUXah4xqscfee3GqY4Qlz8NHxzXgStTdT9kdDV+Okq/P9/Y3MU5iEg1sJFgVGkx80jPTZWWBTb0rEVKPo/Orww/7l5JF4HuhXC0MAHN2GlMVqFWSRzcSmU1Z7FGGYnCqbz4Vj+CYwNgbJAerzWmJTVnaEfe6Vh+qmOeuWR0LrKdG5HPzLBNl73vYzpdzWWg1oXtCHPfNgP5fM1WPPG9M+2K4Rk57GQVLOYrT5jh4khkAgszrfaev++Mlhv+HGAKNWxS8OxLAS+wpi2zpwIAmlgSwl2h3+jax58XhkPZ6GEca71XwAwxs5YZieOFYHW/X1r2D1tshABPqtAxR3108SeK2Nqa9q5ysT0HEzfsbHD2BCo4RszveEPXkxeCeyfM/8HGj5b7dHucsyRFGFKBGW08IdGPbbU8Y56ABHqIYEGbcekMbtNI/O94sHl6niIrwjrrdqawAJQHreg6tgQaL3QGvbNtMTXHyqh72fUA4tBWU52Uz5lO1C4X/5BxrBxXaEJpAFbwd5Zs+IEGj5Z2bxOhQMh8576zv70yjizLMbw+xq7AQ2EcPvO3lB8rbpwtcZ4LT+xsWZFWm5QWPLlnlE/RhKFJpDG6D5R8PRKdfzEF2BKywygByXN/nC/fAnT+XCsUGgCWaH1FX01n6wMq9HcxiCiBvQFpXijxzQ7sdAEmnNgVxj7Wm7A5bXxsr7Wi7TWUaEifYYx671aWAJpDbtmjAca4MqaMeEngD/NjYZt7xlC7WXA+thDH+uoB7BeiLSnbny6Ot6xr6SDcB1PDMYXdGLUz9L2XKMewHqggXkHtodF4FZdE31Ppm7EdjaMHMqysivSIilBVYWlZI4xI9DYZCQe3tL+OpnCGiWMgSHQlGWKKACULXh4b3r4ItAb65OaF3wfKhl9VFprbi3XaTTqzT+CINDcWlnF933laeG/XbjAo2PQzWdsCLSwgZKSjoKD86N+gt4IfFh1BK37L4oa4QsF1bVWTq/WmhUJqNfdP9PICyCVUT8TbAKBwj3vCtiJaemY+jd44MAB7yc/+cnWHTt2jHpOBoJSioWFBSwrPduiVquxsrKC7/usrq5mbo25trbGrVu32sReeK39r7322uJ77723HM5tEoLZAnQVCIbdvHfoGkL4kHcC/xc4TPd+uHpmZmbL3Nzc1pz6jw4dWmu2b9/Ot7/9bQ4ePNjx+9XVVV566SXeeustRCRzJ8Po2snztdb4vu9WKpUruvskKeC3wH8FPhs2gTZLhD0C/Ef6KO2VSoVKZSxW5kwIggDXdblx4wY7duxgenoaEcH3fb744gtefvllXn31VYIgyCsiD+CIyJ19ztmDmfP/M+w5GKoVdubMGSzLQmt9TGutou7G3Y4iISreICJUq9Um+dfW1rhy5QovvfQSr776KlrrPMkDQL95DOf6mGVZnDlzZqjzMNQVaHZ2FmCqVCr133ZaMDQaDTzPIwgCqtUq1WoVpRTLy8v84Ac/4MKFC5TL5dzJMwAeB/62VCr13xa7AQyVQM899xxa68VqtXpwEPlfBPz85z/nk08+AcB1XarVKjdv3uTHP/4xb775JktLS5w4cWLTCRS73/TU1NS0Uqr+yiuvDO1+QyXQAw/cD8hhETmQZR7HxOfXE5Ev6sMPP+Tjjz8GTMfla9eucf78eS5evMjS0hKnT5/m4MGDLB46mHodrTX1Wh0/8Du28qRNjA40q6ur+PG9zwnUa3Vcr5kMflKE+7SWnw5zPoZKoGPHvsStBk84FlYQtiToFm4IdHvJ3m6Idqv2gtatIpx5QWvYWoIdZfPlh+IZrTXLy8u88cYbvP32203yHDp4kHvuO03FmuvaglxXa7jVav+bi6CDgEpwA89zuxKuJnVWW0ZIuRHI0w9uWysmgS79QfPW77HvmOaYEqh6xptc8dK9sTXf5PL0nkioeeZavf5ogwCu1Qwh81rVfA2nd8HTi+3vu67La6+9xscffxwjzwG+fN9pLlyb49c3umcIBL5NvQIa3WecRjluVB0CP93uEYG6p6jUrPh7i7+4NZMsv5grhmaFzTqwrcxxSzgdhSXcMBzR7PUVO+p++vvxIwpLRCVcuh2NcN98tM8+ryP5LYgItVqN3/zmNywtLXH//fezb+8ejtxzL29cm+Ofr7fG3fUg2zg1glhOz7mxlBV1PIzeW1zxrN3DzB8aGoFKFkxZ7BNha9QUt5uI8nW23Rh+0D/iLoTiaxO8ApGJfs8993D69Gn27tnD4aVT/OzGVv7pRv65Sf0S85UIdrtH/DimQNXQMDQChdU0nnED0125V9ttN8iWSehl6BGWrBk0bExPT3Pq1Cl279rF4btPcnF1J/+6Yg/FIFAZCjVY7RsTZzBNW4aGoRDoH69o1lym11wWa6HO4/cgUMPvf82s7bwDbcThZkFEmJ2d5dDBA9xUW/hw1clMnrTMw94foK9SZ1tt5WQEswoNLQ12mJ7oO4EHohfBJogv2HxXgFKKrVu34pRKA3vTzR6w7HaMiOqbmKZEkqLzDEMUY8Mk0ClgHnqvHq6fn/gCcDOY+XkiCmls3v3660FO+8bEneExFOT+5LG+pqcI83d7iq8Mq0pW8SWYVWocd2bkhSy9WJ12RXo78LWhjWdI153HLJ1AugkM+YuvyNIrEn8ikzsrhP56k1Lt52iYUQL/+X/9c+7jz92ROG2DJWyp+SzGVQI7haqeZ/Z2WX0UF1+Dk6U6Tug4nB5CJZ1Am8zHttuFDyhhPwwFTCkdLhDZtDGxBxS5lsLyLTy3h6WghMARGl5YtBy+qtDndpWC5bznJXcCHVsAgT91Aw5EBIqcZUkEZBM3OnS49U8FNSvVsFag6cRsiQj1ep3PP/+cxcVFFvQy/+XOANuxmZmZyWRhVVahMchuWoHlmx7Vaq3n9Ruuy62VZhL2nbawoGH5f+Y8J7kSKGaFHJqyxiffehiInrVWq3H+/Hnm5+c5efIE8ypgdmrO9K0q9ydRxYeGRfbiC4BTC1gLevxJCQS2MOVqfM8HOKjhLPD9vOch1y+56hl5K/BM3IXfsfpIWLo3SJ+CaNdFtGlw3CAinDlzhl/+8pesrq7yxRdf8KMf/Qh4jpMnT7bCNZq+K1FTB8q4bGrAKU2h16o9TxKlUMrCwwczzYcBLuS8myNXAn20DCLsmbLY5YYFo9b89oLh0SSsNLo7/LSGA/Nw/+48R5cvHn/8cTzP44UXXmBlZYUbN26EJIKTJ9vrYWYVZ1lh23azG1EvOI5Do9GMUD8J/C2wluc85EqgklFe79WaI24Y0IziUvFH9UNvcS/9Z89YFrVtQUR48sknATZEom67OfJA4tp7gIPAr3O9R14Xeu+a5svb4VqVvxDhjBua3ml+nkbQY/UBZm24e5sRY+MMEeHo0aNs376dd999t5mZ+NFHH7Fr1y62bdsGEOWF4zhOKoliq0QmKKWo1+v4fu+YjYjQaDSilWorcAH4l+9/Pz9VKDc/kK3g119gKcV/iIKn3aLv/WJf28rtDVPGGdFK9K1vfYu5uTlEpLkSvf/++1QqFVZXV6nX66ytreWyeSBrDE1E4quQAA+D0YPyQm4irGaantxtKU5EZneaiOrnPBRM0YQilWlJirPV1dWh60RTU1PU673z5UUkqQfdg+k9llsR5LxN7b1+YOIuOmyEkkSv1I1IfO0o5zyqTUBeOlFWZO3waIVFHcKV715Mvel383ruvAn0LGb7ctec5J7iS8Md5VbF1aJhvSTKYlF1u1+/z9m2jVIq0pe2YRrY5UagXNTUMIBaAv47YddlLyUq7mvThqDrnlyBowuwvYArUIRBFetSqdTcXzYIIkU6y+c8z4sIZAErwP/LS5HOM5h6hLCaerfoecPvLb7KtmlZUHRshmKdVfwlFGmAOchPkc5TWByOBtct+t5LedZhu6bpgoqvJLKKs7m5uXVfv1wu47r99eHIfRAS9X7gEPBJHs+Z5wr0KLH8H50ivnoRyBJDoFE3iMsT8ZVoft4UMEpbidZ77ayJbFZ7dbTd5JhgtmEd6J3LGg1zCH8JHAUjqpL6T9WDehcCaW1WnhN3NL3ZE4OsOlGptL7AX61W6ysCRSSuB00BnwFv5KEHbVhg7JiGksVdtxrcF995UdbEqmuZH7t5ljUmdDFbEOfhoMjqJxpUnEUWVhZFOqEHHQKsCxcu+BsNrG6YQGFpucf2zLBro9eaZIgITz31FLZt893vfpfl5eU2Ep06dQrLsjKTKKpDFFlz/VAul6nX69FetscwsbHPNvpcGyLQ2bNnERHr5ZdfPr5//1D3r00Ujh8/zqVLl1BKNUl05coVZmdnmZ2dzewkBFMKL0sszfd9qtUqWms8z1v44IMP7pqfn98wgTaksobl6xa01m8yZuVnxxlKqbZVYxTFtUTkr4DnN1oC798BTSLz8g65nqAAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTgtMDUtMzBUMTU6MDg6NTYtMDQ6MDBP1vJ0AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE4LTA1LTMwVDE1OjA4OjU2LTA0OjAwPotKyAAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4yMfEgaZUAAAAASUVORK5CYII=">
 </head>
 <body>
 	<div id="init-screen">
@@ -129,17 +124,17 @@ var saveAs=saveAs||navigator.msSaveBlob&&navigator.msSaveBlob.bind(navigator)||f
     if ( dataPassage && (window.lastDataPassageLink === dataPassage || initialDataPassage === dataPassage))
         doJump();
     window.lastDataPassageLink = dataPassage;
-	}}function r(e){return t(function(){jQuery(this).off(".aria-clickable").removeAttr("tabindex aria-controls aria-pressed").not("a,button").removeAttr("role").end().filter("button").prop("disabled",!0),e.apply(this,arguments)})}jQuery.fn.extend({ariaClick:function(a,n){if(0===this.length||0===arguments.length)return this;var i=a,o=n;return null==o&&(o=i,i=undefined),i=jQuery.extend({namespace:undefined,one:!1,selector:undefined,data:undefined,controls:undefined,pressed:undefined,label:undefined},i),"string"!=typeof i.namespace?i.namespace="":"."!==i.namespace[0]&&(i.namespace="."+i.namespace),"boolean"==typeof i.pressed&&(i.pressed=i.pressed?"true":"false"),this.filter("button").prop("type","button"),this.not("a,button").attr("role","button"),this.attr("tabindex",0),null!=i.controls&&this.attr("aria-controls",i.controls),null!=i.pressed&&this.attr("aria-pressed",i.pressed),null!=i.label&&this.attr({"aria-label":i.label,title:i.label}),this.not("button").on("keypress.aria-clickable"+i.namespace,i.selector,e),this.on("click.aria-clickable"+i.namespace,i.selector,i.data,i.one?r(o):t(o)),this}})}(),function(){jQuery.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];if(0!==r.length){var n=document.createDocumentFragment();r.forEach(function(t){return new Wikifier(n,t,e)});var i=[].concat(_toConsumableArray(n.querySelectorAll(".error"))).map(function(e){return e.textContent.replace(errorPrologRegExp,"")});if(i.length>0)throw new Error(i.join("; "))}},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.wikiWithOptions.apply(this,[undefined].concat(t))}}),jQuery.fn.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];if(0===this.length||0===r.length)return this;var n=document.createDocumentFragment();return r.forEach(function(t){return new Wikifier(n,t,e)}),this.append(n),this},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.wikiWithOptions.apply(this,[undefined].concat(t))}})}();var Util=function(){function e(e){return Object.freeze(Object.assign(Object.create(null),e))}function t(e){return Object.prototype.toString.call(e).slice(8,-1)}function r(e){var t=void 0;switch(void 0===e?"undefined":_typeof(e)){case"number":t=e;break;case"string":t=Number(e);break;default:return!1}return!Number.isNaN(t)&&Number.isFinite(t)}function a(e){return"boolean"==typeof e||"string"==typeof e&&("true"===e||"false"===e)}function n(e){return String(e).trim().replace(/[^\w\s\u2013\u2014-]+/g,"").replace(/[_\s\u2013\u2014-]+/g,"-").toLocaleLowerCase()}function i(e){if(null==e)return"";var t=String(e);return t&&p.test(t)?t.replace(f,function(e){return g[e]}):t}function o(e){if(null==e)return"";var t=String(e);return t&&v.test(t)?t.replace(m,function(e){return y[e.toLowerCase()]}):t}function s(e,t){var r=String(e),a=Math.trunc(t),n=r.charCodeAt(a);if(Number.isNaN(n))return{char:"",start:-1,end:-1};var i={char:r.charAt(a),start:a,end:a};if(n<55296||n>57343)return i;if(n>=55296&&n<=56319){var o=a+1;if(o>=r.length)return i;var s=r.charCodeAt(o);return s<56320||s>57343?i:(i.char=i.char+r.charAt(o),i.end=o,i)}if(0===a)return i;var u=a-1,l=r.charCodeAt(u);return l<55296||l>56319?i:(i.char=r.charAt(u)+i.char,i.start=u,i)}function u(){return b.now()}function l(e){var t=w.exec(String(e));if(null===t)throw new SyntaxError('invalid time value syntax: "'+e+'"');var r=Number(t[1]);if(1===t[2].length&&(r*=1e3),Number.isNaN(r)||!Number.isFinite(r))throw new RangeError('invalid time value: "'+e+'"');return r}function c(e){if("number"!=typeof e||Number.isNaN(e)||!Number.isFinite(e)){var r=void 0;switch(void 0===e?"undefined":_typeof(e)){case"string":r='"'+e+'"';break;case"number":r=String(e);break;default:r=t(e)}throw new Error("invalid milliseconds: "+r)}return e+"ms"}function d(e){if(!e.includes("-"))switch(e){case"bgcolor":return"backgroundColor";case"float":return"cssFloat";default:return e}return("-ms-"===e.slice(0,4)?e.slice(1):e).split("-").map(function(e,t){return 0===t?e:e.toUpperFirst()}).join("")}function h(e){var t=document.createElement("a"),r=Object.create(null);t.href=e,t.search&&t.search.replace(/^\?/,"").splitOrEmpty(/(?:&(?:amp;)?|;)/).forEach(function(e){var t=e.split("="),a=_slicedToArray(t,2),n=a[0],i=a[1];r[n]=i});var a=t.host&&"/"!==t.pathname[0]?"/"+t.pathname:t.pathname;return{href:t.href,protocol:t.protocol,host:t.host,hostname:t.hostname,port:t.port,path:""+a+t.search,pathname:a,query:t.search,search:t.search,queries:r,searches:r,hash:t.hash}}var f=/[&<>"'`]/g,p=new RegExp(f.source),g=Object.freeze({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"}),m=/&(?:amp|#38|#x26|lt|#60|#x3c|gt|#62|#x3e|quot|#34|#x22|apos|#39|#x27|#96|#x60);/gi,v=new RegExp(m.source,"i"),y=Object.freeze({"&amp;":"&","&#38;":"&","&#x26;":"&","&lt;":"<","&#60;":"<","&#x3c;":"<","&gt;":">","&#62;":">","&#x3e;":">",
-"&quot;":'"',"&#34;":'"',"&#x22;":'"',"&apos;":"'","&#39;":"'","&#x27;":"'","&#96;":"`","&#x60;":"`"}),b=Has.performance?performance:Date,w=/^([+-]?(?:\d*\.)?\d+)([Mm]?[Ss])$/;return Object.freeze(Object.defineProperties({},{toEnum:{value:e},toStringTag:{value:t},isNumeric:{value:r},isBoolean:{value:a},slugify:{value:n},escape:{value:i},unescape:{value:o},charAndPosAt:{value:s},fromCssTime:{value:l},toCssTime:{value:c},fromCssProperty:{value:d},parseUrl:{value:h},now:{value:u},random:{value:Math.random},entityEncode:{value:i},entityDecode:{value:o},evalExpression:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),SimpleAudio=function(){function e(){return g}function t(e){g=!!e,l("mute",g)}function r(){return f}function a(e){f=Math.clamp(e,.2,5),l("rate",f)}function n(){return p}function i(e){p=Math.clamp(e,0,1),l("volume",p)}function o(){l("stop")}function s(e,t){if("function"!=typeof t)throw new Error("callback parameter must be a function");h.set(e,t)}function u(e){h.delete(e)}function l(e,t){h.forEach(function(r){return r(e,t)})}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(m,[null].concat(t)))}function d(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(v,[null].concat(t)))}var h=new Map,f=1,p=1,g=!1,m=function(){function e(t){if(_classCallCheck(this,e),Array.isArray(t))this._create(t);else{if(!(t instanceof e))throw new Error("sources parameter must be an array of either URLs or source objects");this._copy(t)}}return _createClass(e,[{key:"_create",value:function(t){if(!Array.isArray(t)||0===t.length)throw new Error("sources parameter must be an array of either URLs or source objects");var r=/^data:\s*audio\/([^;,]+)\s*[;,]/i,a=/\.([^.\/\\]+)$/,n=e.getType,i=[],o=document.createElement("audio");if(t.forEach(function(e){var t=null;switch(void 0===e?"undefined":_typeof(e)){case"string":var s=void 0;if("data:"===e.slice(0,5)){if(null===(s=r.exec(e)))throw new Error("source data URI missing media type")}else if(null===(s=a.exec(Util.parseUrl(e).pathname)))throw new Error("source URL missing file extension");var u=n(s[1]);null!==u&&(t={src:e,type:u});break;case"object":if(null===e)throw new Error("source object cannot be null");if(!e.hasOwnProperty("src"))throw new Error('source object missing required "src" property');if(!e.hasOwnProperty("format"))throw new Error('source object missing required "format" property');var l=n(e.format);null!==l&&(t={src:e.src,type:l});break;default:throw new Error("invalid source value (type: "+(void 0===e?"undefined":_typeof(e))+")")}if(null!==t){var c=document.createElement("source");c.src=t.src,c.type=Browser.isOpera?t.type.replace(/;.*$/,""):t.type,o.appendChild(c),i.push(t)}}),!o.hasChildNodes())if(Browser.isIE)o.src=undefined;else{var s=document.createElement("source");s.src=undefined,s.type=undefined,o.appendChild(s)}this._finalize(o,i,clone(t))}},{key:"_copy",value:function(t){if(!(t instanceof e))throw new Error("original parameter must be an instance of AudioWrapper");this._finalize(t.audio.cloneNode(!0),clone(t.sources),clone(t.originalSources))}},{key:"_finalize",value:function(e,t,r){var a=this;Object.defineProperties(this,{audio:{configurable:!0,value:e},sources:{configurable:!0,value:Object.freeze(t)},originalSources:{configurable:!0,value:Object.freeze(r)},_error:{writable:!0,value:!1},_faderId:{writable:!0,value:null},_mute:{writable:!0,value:!1},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1}}),jQuery(this.audio).on("loadstart",function(){return a._error=!1}).on("error",function(){return a._error=!0}).find("source:last-of-type").on("error",function(){return a._trigger("error")}),SimpleAudio.subscribe(this,function(e){if(!a.audio)return void SimpleAudio.unsubscribe(a);switch(e){case"mute":a._updateAudioMute();break;case"rate":a._updateAudioRate();break;case"stop":a.stop();break;case"volume":a._updateAudioVolume()}}),this.load()}},{key:"_trigger",value:function(e){jQuery(this.audio).triggerHandler(e)}},{key:"clone",value:function(){return new e(this)}},{key:"destroy",value:function(){SimpleAudio.unsubscribe(this);var e=this.audio;if(e){for(this.fadeStop(),this.stop(),jQuery(e).off();e.hasChildNodes();)e.removeChild(e.firstChild);e.load(),this._error=!0,delete this.audio,delete this.sources,delete this.originalSources}}},{key:"_updateAudioMute",value:function(){this.audio&&(this.audio.muted=this._mute||SimpleAudio.mute)}},{key:"_updateAudioRate",value:function(){this.audio&&(this.audio.playbackRate=this._rate*SimpleAudio.rate)}},{key:"_updateAudioVolume",value:function(){this.audio&&(this.audio.volume=this._volume*SimpleAudio.volume)}},{key:"hasSource",value:function(){return this.sources.length>0}},{key:"hasNoData",value:function(){return!this.audio||this.audio.readyState===HTMLMediaElement.HAVE_NOTHING}},{key:"hasMetadata",value:function(){return!!this.audio&&this.audio.readyState>=HTMLMediaElement.HAVE_METADATA}},{key:"hasSomeData",value:function(){return!!this.audio&&this.audio.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA}},{key:"hasData",value:function(){return!!this.audio&&this.audio.readyState===HTMLMediaElement.HAVE_ENOUGH_DATA}},{key:"isFailed",value:function(){return this._error}},{key:"isLoading",value:function(){return!!this.audio&&this.audio.networkState===HTMLMediaElement.NETWORK_LOADING}},{key:"isPlaying",value:function(){return!!this.audio&&!(this.audio.ended||this.audio.paused||!this.hasSomeData())}},{key:"isPaused",value:function(){return!!this.audio&&(this.audio.paused&&(this.audio.duration===1/0||this.audio.currentTime>0)&&!this.audio.ended)}},{key:"isEnded",value:function(){return!this.audio||this.audio.ended}},{key:"isFading",value:function(){return null!==this._faderId}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return!!this.audio&&this.audio.loop}},{key:"load",value:function(){this.audio&&("auto"!==this.audio.preload&&(this.audio.preload="auto"),this.isLoading()||this.audio.load())}},{key:"play",value:function(){this.audio&&this.audio.play()}},{key:"pause",value:function(){this.audio&&this.audio.pause()}},{key:"stop",value:function(){this.audio&&(this.pause(),this.time=0,this._trigger(":stop"))}},{key:"fadeWithDuration",value:function(e,t,r){var a=this;if(this.audio){this.fadeStop();var n=Math.clamp(null==r?this.volume:r,0,1),i=Math.clamp(t,0,1);n!==i&&(this.volume=n,jQuery(this.audio).off("timeupdate.AudioWrapper:fadeWithDuration").one("timeupdate.AudioWrapper:fadeWithDuration",function(){var t=void 0,r=void 0;n<i?(t=n,r=i):(t=i,r=n);var o=Number(e);o<1&&(o=1);var s=(i-n)/(o/.025);a._faderId=setInterval(function(){if(!a.isPlaying())return void a.fadeStop();a.volume=Math.clamp(a.volume+s,t,r),0===a.volume&&a.pause(),a.volume===i&&(a.fadeStop(),a._trigger(":fade"))},25)}),this.play())}}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"fadeStop",value:function(){null!==this._faderId&&(clearInterval(this._faderId),this._faderId=null)}},{key:"on",value:function(t,r){if(this.audio){if("function"!=typeof r)throw new Error("listener parameter must be a function");var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).on(n,r),this}}},{key:"one",value:function(t,r){if(this.audio){if("function"!=typeof r)throw new Error("listener parameter must be a function");var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).one(n,r),this}}},{key:"off",value:function(t,r){if(this.audio){if(r&&"function"!=typeof r)throw new Error("listener parameter must be a function");if(!t)return jQuery(this.audio).off(".AudioWrapperEvent",r);var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(t){if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}return e+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).off(n,r),this}}},{key:"duration",get:function(){return this.audio?this.audio.duration:NaN}},{key:"ended",get:function(){return!this.audio||this.audio.ended}},{key:"loop",get:function(){return!!this.audio&&this.audio.loop},set:function(e){this.audio&&(this.audio.loop=!!e)}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,this._updateAudioMute()}},{key:"paused",get:function(){return!!this.audio&&this.audio.paused}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),this._updateAudioRate()}},{key:"remaining",get:function(){return this.audio?this.audio.duration-this.audio.currentTime:NaN}},{key:"time",get:function(){return this.audio?this.audio.currentTime:NaN},set:function(e){var t=this;if(this.audio)try{this.audio.currentTime=e}catch(r){jQuery(this.audio).off("loadedmetadata.AudioWrapper:time").one("loadedmetadata.AudioWrapper:time",function(){return t.audio.currentTime=e})}}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),this._updateAudioVolume()}}],[{key:"_verifyType",value:function(t){if(!t||!Has.audio)return null;var r=e._types;if(!r.hasOwnProperty(t)){var a=document.createElement("audio");r[t]=""!==a.canPlayType(t).replace(/^no$/i,"")}return r[t]?t:null}},{key:"getType",value:function(t){if(!t||!Has.audio)return null;var r=e.formats,a=t.toLowerCase(),n=r.hasOwnProperty(a)?r[a]:"audio/"+a;return e._verifyType(n)}},{key:"canPlayFormat",value:function(t){return null!==e.getType(t)}},{key:"canPlayType",value:function(t){return null!==e._verifyType(t)}}]),e}();Object.defineProperties(m,{formats:{value:{aac:"audio/aac",caf:"audio/x-caf","x-caf":"audio/x-caf",mp3:'audio/mpeg; codecs="mp3"',mpeg:'audio/mpeg; codecs="mp3"',m4a:"audio/mp4",mp4:"audio/mp4","x-m4a":"audio/mp4","x-mp4":"audio/mp4",oga:"audio/ogg",ogg:"audio/ogg",opus:'audio/ogg; codecs="opus"',wav:"audio/wav",wave:"audio/wav",weba:"audio/webm",webm:"audio/webm"}},_types:{value:{}},_events:{value:Object.freeze({canplay:"canplaythrough",end:"ended",error:"error",fade:":fade",pause:"pause",play:"playing",rate:"ratechange",seek:"seeked",stop:":stop",volume:"volumechange"})}});var v=function(){function e(t){var r=this;_classCallCheck(this,e),Object.defineProperties(this,{tracks:{configurable:!0,value:[]},queue:{configurable:!0,value:[]},current:{writable:!0,value:null},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1},_mute:{writable:!0,value:!1},_loop:{writable:!0,value:!1},_shuffle:{writable:!0,value:!1}}),Array.isArray(t)?t.forEach(function(e){return r.add(e)}):t instanceof e&&t.tracks.forEach(function(e){return r.add(e)})}return _createClass(e,[{key:"add",value:function(e){var t=this;if(null==e||"object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("track parameter must be an object");var r=void 0,a=void 0,n=void 0,i=void 0;if(e instanceof m)r=!0,a=e.clone(),n=e.volume,i=e.rate;else{if(!e.hasOwnProperty("track"))throw new Error('track object missing required "track" property');if(!(e.track instanceof m))throw new Error('track object\'s "track" property must be an AudioWrapper object');r=e.hasOwnProperty("copy")&&e.copy,a=r?e.track.clone():e.track,n=e.hasOwnProperty("volume")?e.volume:e.track.volume,i=e.hasOwnProperty("rate")?e.rate:e.track.rate}a.stop(),a.loop=!1,a.mute=!1,a.volume=n,a.rate=i,a.on("end.AudioListEvent",function(){return t._onEnd()}),this.tracks.push({copy:r,track:a,volume:n,rate:i})}},{key:"destroy",value:function(){this.stop(),this.tracks.filter(function(e){return e.copy}).forEach(function(e){return e.track.destroy()}),delete this.tracks,delete this.queue}},{key:"isPlaying",value:function(){return null!==this.current&&this.current.track.isPlaying()}},{key:"isEnded",value:function(){return 0===this.queue.length&&(null===this.current||this.current.track.isEnded())}},{key:"isPaused",value:function(){return null===this.current||this.current.track.isPaused()}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return this._loop}},{key:"isShuffled",value:function(){return this._shuffle}},{key:"play",value:function(){(null!==this.current&&!this.current.track.isEnded()||(0===this.queue.length&&this._buildList(),this._next()))&&this.current.track.play()}},{key:"pause",value:function(){null!==this.current&&this.current.track.pause()}},{key:"stop",value:function(){null!==this.current&&(this.current.track.stop(),this.current=null),this.queue.splice(0)}},{key:"skip",value:function(){this._next()?this.current.track.play():this._loop&&this.play()}},{key:"fadeWithDuration",value:function(e,t,r){if(0===this.queue.length&&this._buildList(),null!==this.current&&!this.current.track.isEnded()||this._next()){var a=Math.clamp(t,0,1)*this.current.volume,n=void 0;null!=r&&(n=Math.clamp(r,0,1)*this.current.volume),this.current.track.fadeWithDuration(e,a,n),this._volume=t}}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"_next",value:function(){return null!==this.current&&this.current.track.stop(),0===this.queue.length?(this.current=null,!1):(this.current=this.queue.shift(),!this.current.track.hasSource()||this.current.track.isFailed()?this._next():(this.current.track.mute=this._mute,this.current.track.rate=this.rate*this.current.rate,this.current.track.volume=this.volume*this.current.volume,!0))}},{key:"_onEnd",value:function(){if(0===this.queue.length){if(!this._loop)return;this._buildList()}this._next()&&this.current.track.play()}},{key:"_buildList",value:function(){var e;this.queue.splice(0),(e=this.queue).push.apply(e,_toConsumableArray(this.tracks)),0!==this.queue.length&&this._shuffle&&(this.queue.shuffle(),this.queue.length>1&&this.queue[0]===this.current&&this.queue.push(this.queue.shift()))}},{key:"duration",get:function(){return this.tracks.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0)}},{key:"loop",get:function(){return this._loop},set:function(e){this._loop=!!e}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,null!==this.current&&(this.current.track.mute=this._mute)}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),null!==this.current&&(this.current.track.rate=this.rate*this.current.rate)}},{key:"remaining",get:function(){var e=this.queue.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0);return null!==this.current&&(e+=this.current.track.remaining),e}},{key:"shuffle",get:function(){return this._shuffle},set:function(e){this._shuffle=!!e}},{key:"time",get:function(){return this.duration-this.remaining}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),null!==this.current&&(this.current.track.volume=this.volume*this.current.volume)}}]),e}();return Object.freeze(Object.defineProperties({},{mute:{get:e,set:t},rate:{get:r,set:a},volume:{get:n,set:i},stop:{value:o},subscribe:{value:s},unsubscribe:{value:u},publish:{value:l},create:{value:c},createList:{value:d}}))}(),SimpleStore=function(){function e(e,a){if(r)return r.create(e,a);for(var n=0;n<t.length;++n)if(t[n].init(e,a))return r=t[n],r.create(e,a);throw new Error("no valid storage adapters found")}var t=[],r=null;return Object.freeze(Object.defineProperties({},{adapters:{value:t},create:{value:e}}))}();SimpleStore.adapters.push(function(){function e(){function e(e){try{var t=window[e],r="_sc_"+String(Date.now());t.setItem(r,r);var a=t.getItem(r)===r;return t.removeItem(r),a}catch(e){}return!1}return r=e("localStorage")&&e("sessionStorage")}function t(e,t){if(!r)throw new Error("adapter not initialized");return new a(e,t)}var r=!1,a=function(){function e(t,r){_classCallCheck(this,e);var a=t+".",n=null,i=null;r?(n=window.localStorage,i="localStorage"):(n=window.sessionStorage,i="sessionStorage"),Object.defineProperties(this,{_engine:{value:n},_prefix:{value:a},_prefixRe:{value:new RegExp("^"+RegExp.escape(a))},name:{value:i},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function(){for(var e=[],t=0;t<this._engine.length;++t){var r=this._engine.key(t);this._prefixRe.test(r)&&e.push(r.replace(this._prefixRe,""))}return e}},{key:"has",value:function(e){return!("string"!=typeof e||!e)&&this._engine.hasOwnProperty(this._prefix+e)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=this._engine.getItem(this._prefix+t);return null==r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{this._engine.setItem(this._prefix+t,e._serialize(r))}catch(e){throw/quota[_\s]?(?:exceeded|reached)/i.test(e.name)&&(e.message=this.name+" quota exceeded"),e}return!0}},{key:"delete",value:function(e){return!("string"!=typeof e||!e)&&(this._engine.removeItem(this._prefix+e),!0)}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_serialize",value:function(e)
+	}}function r(e){return t(function(){jQuery(this).off(".aria-clickable").removeAttr("tabindex aria-controls aria-pressed").not("a,button").removeAttr("role").end().filter("button").prop("disabled",!0),e.apply(this,arguments)})}jQuery.fn.extend({ariaClick:function(a,n){if(0===this.length||0===arguments.length)return this;var i=a,o=n;return null==o&&(o=i,i=undefined),i=jQuery.extend({namespace:undefined,one:!1,selector:undefined,data:undefined,controls:undefined,pressed:undefined,label:undefined},i),"string"!=typeof i.namespace?i.namespace="":"."!==i.namespace[0]&&(i.namespace="."+i.namespace),"boolean"==typeof i.pressed&&(i.pressed=i.pressed?"true":"false"),this.filter("button").prop("type","button"),this.not("a,button").attr("role","button"),this.attr("tabindex",0),null!=i.controls&&this.attr("aria-controls",i.controls),null!=i.pressed&&this.attr("aria-pressed",i.pressed),null!=i.label&&this.attr({"aria-label":i.label,title:i.label}),this.not("button").on("keypress.aria-clickable"+i.namespace,i.selector,e),this.on("click.aria-clickable"+i.namespace,i.selector,i.data,i.one?r(o):t(o)),this},ariaDisabled:function(e){if(0===this.length||0===arguments.length)return this;var t=this.not("button,fieldset,input,menuitem,optgroup,option,select,textarea"),r=this.filter("button,fieldset,input,menuitem,optgroup,option,select,textarea");return e?(t.each(function(){this.setAttribute("disabled",""),this.setAttribute("aria-disabled","")}),r.each(function(){this.disabled=!0,this.setAttribute("aria-disabled","")})):(t.each(function(){this.removeAttribute("disabled"),this.removeAttribute("aria-disabled")}),r.each(function(){this.disabled=!1,this.removeAttribute("aria-disabled")})),this},ariaIsDisabled:function(){return this.is("[disabled]")}})}(),function(){jQuery.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];if(0!==r.length){var n=document.createDocumentFragment();r.forEach(function(t){return new Wikifier(n,t,e)});var i=[].concat(_toConsumableArray(n.querySelectorAll(".error"))).map(function(e){return e.textContent.replace(errorPrologRegExp,"")});if(i.length>0)throw new Error(i.join("; "))}},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.wikiWithOptions.apply(this,[undefined].concat(t))}}),jQuery.fn.extend({wikiWithOptions:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];if(0===this.length||0===r.length)return this;var n=document.createDocumentFragment();return r.forEach(function(t){return new Wikifier(n,t,e)}),this.append(n),this},wiki:function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return this.wikiWithOptions.apply(this,[undefined].concat(t))}})}();var Util=function(){function e(e){return Object.freeze(Object.assign(Object.create(null),e))}function t(e){return Object.prototype.toString.call(e).slice(8,-1)}function r(e){var t=void 0;switch(void 0===e?"undefined":_typeof(e)){case"number":t=e;break;case"string":t=Number(e);break;default:return!1}return!Number.isNaN(t)&&Number.isFinite(t)}function a(e){return"boolean"==typeof e||"string"==typeof e&&("true"===e||"false"===e)}function n(e){return String(e).trim().replace(/[^\w\s\u2013\u2014-]+/g,"").replace(/[_\s\u2013\u2014-]+/g,"-").toLocaleLowerCase()}function i(e){if(null==e)return"";var t=String(e);return t&&p.test(t)?t.replace(f,function(e){return g[e]}):t}function o(e){if(null==e)return"";var t=String(e);return t&&v.test(t)?t.replace(m,function(e){return y[e.toLowerCase()]}):t}function s(e,t){var r=String(e),a=Math.trunc(t),n=r.charCodeAt(a);if(Number.isNaN(n))return{char:"",start:-1,end:-1};var i={char:r.charAt(a),start:a,end:a};if(n<55296||n>57343)return i;if(n>=55296&&n<=56319){var o=a+1;if(o>=r.length)return i;var s=r.charCodeAt(o);return s<56320||s>57343?i:(i.char=i.char+r.charAt(o),i.end=o,i)}if(0===a)return i;var u=a-1,l=r.charCodeAt(u);return l<55296||l>56319?i:(i.char=r.charAt(u)+i.char,i.start=u,i)}function u(){return b.now()}function l(e){var t=w.exec(String(e));if(null===t)throw new SyntaxError('invalid time value syntax: "'+e+'"');var r=Number(t[1]);if(1===t[2].length&&(r*=1e3),Number.isNaN(r)||!Number.isFinite(r))throw new RangeError('invalid time value: "'+e+'"');return r}function c(e){if("number"!=typeof e||Number.isNaN(e)||!Number.isFinite(e)){var r=void 0;switch(void 0===e?"undefined":_typeof(e)){case"string":r='"'+e+'"';break;case"number":r=String(e);break;default:r=t(e)}throw new Error("invalid milliseconds: "+r)}return e+"ms"}function d(e){if(!e.includes("-"))switch(e){case"bgcolor":return"backgroundColor";case"float":return"cssFloat";default:return e}return("-ms-"===e.slice(0,4)?e.slice(1):e).split("-").map(function(e,t){return 0===t?e:e.toUpperFirst()}).join("")}function h(e){var t=document.createElement("a"),r=Object.create(null);t.href=e,t.search&&t.search.replace(/^\?/,"").splitOrEmpty(/(?:&(?:amp;)?|;)/).forEach(function(e){
+var t=e.split("="),a=_slicedToArray(t,2),n=a[0],i=a[1];r[n]=i});var a=t.host&&"/"!==t.pathname[0]?"/"+t.pathname:t.pathname;return{href:t.href,protocol:t.protocol,host:t.host,hostname:t.hostname,port:t.port,path:""+a+t.search,pathname:a,query:t.search,search:t.search,queries:r,searches:r,hash:t.hash}}var f=/[&<>"'`]/g,p=new RegExp(f.source),g=Object.freeze({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"}),m=/&(?:amp|#38|#x26|lt|#60|#x3c|gt|#62|#x3e|quot|#34|#x22|apos|#39|#x27|#96|#x60);/gi,v=new RegExp(m.source,"i"),y=Object.freeze({"&amp;":"&","&#38;":"&","&#x26;":"&","&lt;":"<","&#60;":"<","&#x3c;":"<","&gt;":">","&#62;":">","&#x3e;":">","&quot;":'"',"&#34;":'"',"&#x22;":'"',"&apos;":"'","&#39;":"'","&#x27;":"'","&#96;":"`","&#x60;":"`"}),b=Has.performance?performance:Date,w=/^([+-]?(?:\d*\.)?\d+)([Mm]?[Ss])$/;return Object.freeze(Object.defineProperties({},{toEnum:{value:e},toStringTag:{value:t},isNumeric:{value:r},isBoolean:{value:a},slugify:{value:n},escape:{value:i},unescape:{value:o},charAndPosAt:{value:s},fromCssTime:{value:l},toCssTime:{value:c},fromCssProperty:{value:d},parseUrl:{value:h},now:{value:u},random:{value:Math.random},entityEncode:{value:i},entityDecode:{value:o},evalExpression:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),SimpleAudio=function(){function e(){return g}function t(e){g=!!e,l("mute",g)}function r(){return f}function a(e){f=Math.clamp(e,.2,5),l("rate",f)}function n(){return p}function i(e){p=Math.clamp(e,0,1),l("volume",p)}function o(){l("stop")}function s(e,t){if("function"!=typeof t)throw new Error("callback parameter must be a function");h.set(e,t)}function u(e){h.delete(e)}function l(e,t){h.forEach(function(r){return r(e,t)})}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(m,[null].concat(t)))}function d(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return new(Function.prototype.bind.apply(v,[null].concat(t)))}var h=new Map,f=1,p=1,g=!1,m=function(){function e(t){if(_classCallCheck(this,e),Array.isArray(t))this._create(t);else{if(!(t instanceof e))throw new Error("sources parameter must be an array of either URLs or source objects");this._copy(t)}}return _createClass(e,[{key:"_create",value:function(t){if(!Array.isArray(t)||0===t.length)throw new Error("sources parameter must be an array of either URLs or source objects");var r=/^data:\s*audio\/([^;,]+)\s*[;,]/i,a=/\.([^.\/\\]+)$/,n=e.getType,i=[],o=document.createElement("audio");if(t.forEach(function(e){var t=null;switch(void 0===e?"undefined":_typeof(e)){case"string":var s=void 0;if("data:"===e.slice(0,5)){if(null===(s=r.exec(e)))throw new Error("source data URI missing media type")}else if(null===(s=a.exec(Util.parseUrl(e).pathname)))throw new Error("source URL missing file extension");var u=n(s[1]);null!==u&&(t={src:e,type:u});break;case"object":if(null===e)throw new Error("source object cannot be null");if(!e.hasOwnProperty("src"))throw new Error('source object missing required "src" property');if(!e.hasOwnProperty("format"))throw new Error('source object missing required "format" property');var l=n(e.format);null!==l&&(t={src:e.src,type:l});break;default:throw new Error("invalid source value (type: "+(void 0===e?"undefined":_typeof(e))+")")}if(null!==t){var c=document.createElement("source");c.src=t.src,c.type=Browser.isOpera?t.type.replace(/;.*$/,""):t.type,o.appendChild(c),i.push(t)}}),!o.hasChildNodes())if(Browser.isIE)o.src=undefined;else{var s=document.createElement("source");s.src=undefined,s.type=undefined,o.appendChild(s)}this._finalize(o,i,clone(t))}},{key:"_copy",value:function(t){if(!(t instanceof e))throw new Error("original parameter must be an instance of AudioWrapper");this._finalize(t.audio.cloneNode(!0),clone(t.sources),clone(t.originalSources))}},{key:"_finalize",value:function(e,t,r){var a=this;Object.defineProperties(this,{audio:{configurable:!0,value:e},sources:{configurable:!0,value:Object.freeze(t)},originalSources:{configurable:!0,value:Object.freeze(r)},_error:{writable:!0,value:!1},_faderId:{writable:!0,value:null},_mute:{writable:!0,value:!1},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1}}),jQuery(this.audio).on("loadstart",function(){return a._error=!1}).on("error",function(){return a._error=!0}).find("source:last-of-type").on("error",function(){return a._trigger("error")}),SimpleAudio.subscribe(this,function(e){if(!a.audio)return void SimpleAudio.unsubscribe(a);switch(e){case"mute":a._updateAudioMute();break;case"rate":a._updateAudioRate();break;case"stop":a.stop();break;case"volume":a._updateAudioVolume()}}),this.load()}},{key:"_trigger",value:function(e){jQuery(this.audio).triggerHandler(e)}},{key:"clone",value:function(){return new e(this)}},{key:"destroy",value:function(){SimpleAudio.unsubscribe(this);var e=this.audio;if(e){for(this.fadeStop(),this.stop(),jQuery(e).off();e.hasChildNodes();)e.removeChild(e.firstChild);e.load(),this._error=!0,delete this.audio,delete this.sources,delete this.originalSources}}},{key:"_updateAudioMute",value:function(){this.audio&&(this.audio.muted=this._mute||SimpleAudio.mute)}},{key:"_updateAudioRate",value:function(){this.audio&&(this.audio.playbackRate=this._rate*SimpleAudio.rate)}},{key:"_updateAudioVolume",value:function(){this.audio&&(this.audio.volume=this._volume*SimpleAudio.volume)}},{key:"hasSource",value:function(){return this.sources.length>0}},{key:"hasNoData",value:function(){return!this.audio||this.audio.readyState===HTMLMediaElement.HAVE_NOTHING}},{key:"hasMetadata",value:function(){return!!this.audio&&this.audio.readyState>=HTMLMediaElement.HAVE_METADATA}},{key:"hasSomeData",value:function(){return!!this.audio&&this.audio.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA}},{key:"hasData",value:function(){return!!this.audio&&this.audio.readyState===HTMLMediaElement.HAVE_ENOUGH_DATA}},{key:"isFailed",value:function(){return this._error}},{key:"isLoading",value:function(){return!!this.audio&&this.audio.networkState===HTMLMediaElement.NETWORK_LOADING}},{key:"isPlaying",value:function(){return!!this.audio&&!(this.audio.ended||this.audio.paused||!this.hasSomeData())}},{key:"isPaused",value:function(){return!!this.audio&&(this.audio.paused&&(this.audio.duration===1/0||this.audio.currentTime>0)&&!this.audio.ended)}},{key:"isEnded",value:function(){return!this.audio||this.audio.ended}},{key:"isFading",value:function(){return null!==this._faderId}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return!!this.audio&&this.audio.loop}},{key:"load",value:function(){this.audio&&("auto"!==this.audio.preload&&(this.audio.preload="auto"),this.isLoading()||this.audio.load())}},{key:"play",value:function(){this.audio&&this.audio.play()}},{key:"pause",value:function(){this.audio&&this.audio.pause()}},{key:"stop",value:function(){this.audio&&(this.pause(),this.time=0,this._trigger(":stop"))}},{key:"fadeWithDuration",value:function(e,t,r){var a=this;if(this.audio){this.fadeStop();var n=Math.clamp(null==r?this.volume:r,0,1),i=Math.clamp(t,0,1);n!==i&&(this.volume=n,jQuery(this.audio).off("timeupdate.AudioWrapper:fadeWithDuration").one("timeupdate.AudioWrapper:fadeWithDuration",function(){var t=void 0,r=void 0;n<i?(t=n,r=i):(t=i,r=n);var o=Number(e);o<1&&(o=1);var s=(i-n)/(o/.025);a._faderId=setInterval(function(){if(!a.isPlaying())return void a.fadeStop();a.volume=Math.clamp(a.volume+s,t,r),0===a.volume&&a.pause(),a.volume===i&&(a.fadeStop(),a._trigger(":fade"))},25)}),this.play())}}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"fadeStop",value:function(){null!==this._faderId&&(clearInterval(this._faderId),this._faderId=null)}},{key:"on",value:function(t,r){if(this.audio){if("function"!=typeof r)throw new Error("listener parameter must be a function");var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).on(n,r),this}}},{key:"one",value:function(t,r){if(this.audio){if("function"!=typeof r)throw new Error("listener parameter must be a function");var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).one(n,r),this}}},{key:"off",value:function(t,r){if(this.audio){if(r&&"function"!=typeof r)throw new Error("listener parameter must be a function");if(!t)return jQuery(this.audio).off(".AudioWrapperEvent",r);var a=e._events,n=t.trim().splitOrEmpty(/\s+/).map(function(e){var t=e.split(".",1)[0];if(t){if(!a.hasOwnProperty(t))throw new Error('unknown event "'+t+'"; valid: '+Object.keys(a).join(", "));return e.replace(t,a[t])+".AudioWrapperEvent"}return e+".AudioWrapperEvent"}).join(" ");if(""===n)throw new Error('invalid eventNames parameter "'+t+'"');return jQuery(this.audio).off(n,r),this}}},{key:"duration",get:function(){return this.audio?this.audio.duration:NaN}},{key:"ended",get:function(){return!this.audio||this.audio.ended}},{key:"loop",get:function(){return!!this.audio&&this.audio.loop},set:function(e){this.audio&&(this.audio.loop=!!e)}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,this._updateAudioMute()}},{key:"paused",get:function(){return!!this.audio&&this.audio.paused}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),this._updateAudioRate()}},{key:"remaining",get:function(){return this.audio?this.audio.duration-this.audio.currentTime:NaN}},{key:"time",get:function(){return this.audio?this.audio.currentTime:NaN},set:function(e){var t=this;if(this.audio)try{this.audio.currentTime=e}catch(r){jQuery(this.audio).off("loadedmetadata.AudioWrapper:time").one("loadedmetadata.AudioWrapper:time",function(){return t.audio.currentTime=e})}}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),this._updateAudioVolume()}}],[{key:"_verifyType",value:function(t){if(!t||!Has.audio)return null;var r=e._types;if(!r.hasOwnProperty(t)){var a=document.createElement("audio");r[t]=""!==a.canPlayType(t).replace(/^no$/i,"")}return r[t]?t:null}},{key:"getType",value:function(t){if(!t||!Has.audio)return null;var r=e.formats,a=t.toLowerCase(),n=r.hasOwnProperty(a)?r[a]:"audio/"+a;return e._verifyType(n)}},{key:"canPlayFormat",value:function(t){return null!==e.getType(t)}},{key:"canPlayType",value:function(t){return null!==e._verifyType(t)}}]),e}();Object.defineProperties(m,{formats:{value:{aac:"audio/aac",caf:"audio/x-caf","x-caf":"audio/x-caf",mp3:'audio/mpeg; codecs="mp3"',mpeg:'audio/mpeg; codecs="mp3"',m4a:"audio/mp4",mp4:"audio/mp4","x-m4a":"audio/mp4","x-mp4":"audio/mp4",oga:"audio/ogg",ogg:"audio/ogg",opus:'audio/ogg; codecs="opus"',wav:"audio/wav",wave:"audio/wav",weba:"audio/webm",webm:"audio/webm"}},_types:{value:{}},_events:{value:Object.freeze({canplay:"canplaythrough",end:"ended",error:"error",fade:":fade",pause:"pause",play:"playing",rate:"ratechange",seek:"seeked",stop:":stop",volume:"volumechange"})}});var v=function(){function e(t){var r=this;_classCallCheck(this,e),Object.defineProperties(this,{tracks:{configurable:!0,value:[]},queue:{configurable:!0,value:[]},current:{writable:!0,value:null},_rate:{writable:!0,value:1},_volume:{writable:!0,value:1},_mute:{writable:!0,value:!1},_loop:{writable:!0,value:!1},_shuffle:{writable:!0,value:!1}}),Array.isArray(t)?t.forEach(function(e){return r.add(e)}):t instanceof e&&t.tracks.forEach(function(e){return r.add(e)})}return _createClass(e,[{key:"add",value:function(e){var t=this;if(null==e||"object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("track parameter must be an object");var r=void 0,a=void 0,n=void 0,i=void 0;if(e instanceof m)r=!0,a=e.clone(),n=e.volume,i=e.rate;else{if(!e.hasOwnProperty("track"))throw new Error('track object missing required "track" property');if(!(e.track instanceof m))throw new Error('track object\'s "track" property must be an AudioWrapper object');r=e.hasOwnProperty("copy")&&e.copy,a=r?e.track.clone():e.track,n=e.hasOwnProperty("volume")?e.volume:e.track.volume,i=e.hasOwnProperty("rate")?e.rate:e.track.rate}a.stop(),a.loop=!1,a.mute=!1,a.volume=n,a.rate=i,a.on("end.AudioListEvent",function(){return t._onEnd()}),this.tracks.push({copy:r,track:a,volume:n,rate:i})}},{key:"destroy",value:function(){this.stop(),this.tracks.filter(function(e){return e.copy}).forEach(function(e){return e.track.destroy()}),delete this.tracks,delete this.queue}},{key:"isPlaying",value:function(){return null!==this.current&&this.current.track.isPlaying()}},{key:"isEnded",value:function(){return 0===this.queue.length&&(null===this.current||this.current.track.isEnded())}},{key:"isPaused",value:function(){return null===this.current||this.current.track.isPaused()}},{key:"isMuted",value:function(){return this._mute}},{key:"isLooped",value:function(){return this._loop}},{key:"isShuffled",value:function(){return this._shuffle}},{key:"play",value:function(){(null!==this.current&&!this.current.track.isEnded()||(0===this.queue.length&&this._buildList(),this._next()))&&this.current.track.play()}},{key:"pause",value:function(){null!==this.current&&this.current.track.pause()}},{key:"stop",value:function(){null!==this.current&&(this.current.track.stop(),this.current=null),this.queue.splice(0)}},{key:"skip",value:function(){this._next()?this.current.track.play():this._loop&&this.play()}},{key:"fadeWithDuration",value:function(e,t,r){if(0===this.queue.length&&this._buildList(),null!==this.current&&!this.current.track.isEnded()||this._next()){var a=Math.clamp(t,0,1)*this.current.volume,n=void 0;null!=r&&(n=Math.clamp(r,0,1)*this.current.volume),this.current.track.fadeWithDuration(e,a,n),this._volume=t}}},{key:"fade",value:function(e,t){this.fadeWithDuration(5,e,t)}},{key:"fadeIn",value:function(){this.fade(1)}},{key:"fadeOut",value:function(){this.fade(0)}},{key:"_next",value:function(){return null!==this.current&&this.current.track.stop(),0===this.queue.length?(this.current=null,!1):(this.current=this.queue.shift(),!this.current.track.hasSource()||this.current.track.isFailed()?this._next():(this.current.track.mute=this._mute,this.current.track.rate=this.rate*this.current.rate,this.current.track.volume=this.volume*this.current.volume,!0))}},{key:"_onEnd",value:function(){if(0===this.queue.length){if(!this._loop)return;this._buildList()}this._next()&&this.current.track.play()}},{key:"_buildList",value:function(){var e;this.queue.splice(0),(e=this.queue).push.apply(e,_toConsumableArray(this.tracks)),0!==this.queue.length&&this._shuffle&&(this.queue.shuffle(),this.queue.length>1&&this.queue[0]===this.current&&this.queue.push(this.queue.shift()))}},{key:"duration",get:function(){return this.tracks.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0)}},{key:"loop",get:function(){return this._loop},set:function(e){this._loop=!!e}},{key:"mute",get:function(){return this._mute},set:function(e){this._mute=!!e,null!==this.current&&(this.current.track.mute=this._mute)}},{key:"rate",get:function(){return this._rate},set:function(e){this._rate=Math.clamp(e,.2,5),null!==this.current&&(this.current.track.rate=this.rate*this.current.rate)}},{key:"remaining",get:function(){var e=this.queue.map(function(e){return e.track.duration}).reduce(function(e,t){return e+t},0);return null!==this.current&&(e+=this.current.track.remaining),e}},{key:"shuffle",get:function(){return this._shuffle},set:function(e){this._shuffle=!!e}},{key:"time",get:function(){return this.duration-this.remaining}},{key:"volume",get:function(){return this._volume},set:function(e){this._volume=Math.clamp(e,0,1),null!==this.current&&(this.current.track.volume=this.volume*this.current.volume)}}]),e}();return Object.freeze(Object.defineProperties({},{mute:{get:e,set:t},rate:{get:r,set:a},volume:{get:n,set:i},stop:{value:o},subscribe:{value:s},unsubscribe:{value:u},publish:{value:l},create:{value:c},createList:{value:d}}))}(),SimpleStore=function(){function e(e,a){if(r)return r.create(e,a);for(var n=0;n<t.length;++n)if(t[n].init(e,a))return r=t[n],r.create(e,a);throw new Error("no valid storage adapters found")}var t=[],r=null;return Object.freeze(Object.defineProperties({},{adapters:{value:t},create:{value:e}}))}();SimpleStore.adapters.push(function(){function e(){function e(e){try{var t=window[e],r="_sc_"+String(Date.now());t.setItem(r,r);var a=t.getItem(r)===r;return t.removeItem(r),a}catch(e){}return!1}return r=e("localStorage")&&e("sessionStorage")}function t(e,t){if(!r)throw new Error("adapter not initialized");return new a(e,t)}var r=!1,a=function(){function e(t,r){_classCallCheck(this,e);var a=t+".",n=null,i=null;r?(n=window.localStorage,i="localStorage"):(n=window.sessionStorage,i="sessionStorage"),Object.defineProperties(this,{_engine:{value:n},_prefix:{value:a},_prefixRe:{value:new RegExp("^"+RegExp.escape(a))},name:{value:i},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function(){for(var e=[],t=0;t<this._engine.length;++t){var r=this._engine.key(t);this._prefixRe.test(r)&&e.push(r.replace(this._prefixRe,""))}return e}},{key:"has",value:function(e){return!("string"!=typeof e||!e)&&this._engine.hasOwnProperty(this._prefix+e)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=this._engine.getItem(this._prefix+t);return null==r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{this._engine.setItem(this._prefix+t,e._serialize(r))}catch(e){throw/quota[_\s]?(?:exceeded|reached)/i.test(e.name)&&(e.message=this.name+" quota exceeded"),e}return!0}},{key:"delete",value:function(e){return!("string"!=typeof e||!e)&&(this._engine.removeItem(this._prefix+e),!0)}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_serialize",value:function(e)
 /* look here for changes */
 {return JSON.stringify(e)}},{key:"_deserialize",value:function(e){return JSON.parse((!e || e[0]=="{")?e:LZString.decompressFromUTF16(e))}}]),e}();
 /* changes end here */
-return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}()),SimpleStore.adapters.push(function(){function e(e){try{var t="_sc_"+String(Date.now());o._setCookie(t,o._serialize(t),undefined),i=o._deserialize(o._getCookie(t))===t,o._setCookie(t,undefined,n)}catch(e){i=!1}return i&&r(e),i}function t(e,t){if(!i)throw new Error("adapter not initialized");return new o(e,t)}function r(e){if(""!==document.cookie)for(var t=e+".",r=new RegExp("^"+RegExp.escape(t)),i=e+"!.",s=e+"*.",u=/\.(?:state|rcWarn)$/,l=document.cookie.split(/;\s*/),c=0;c<l.length;++c){var d=l[c].split("="),h=decodeURIComponent(d[0]);if(r.test(h)){var f=decodeURIComponent(d[1]);""!==f&&function(){var e=!u.test(h);o._setCookie(h,undefined,n),o._setCookie(h.replace(r,function(){return e?i:s}),f,e?a:undefined)}()}}}var a="Tue, 19 Jan 2038 03:14:07 GMT",n="Thu, 01 Jan 1970 00:00:00 GMT",i=!1,o=function(){function e(t,r){_classCallCheck(this,e);var a=t+(r?"!":"*")+".";Object.defineProperties(this,{_prefix:{value:a},_prefixRe:{value:new RegExp("^"+RegExp.escape(a))},name:{value:"cookie"},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function(){if(""===document.cookie)return[];for(var e=document.cookie.split(/;\s*/),t=[],r=0;r<e.length;++r){var a=e[r].split("="),n=decodeURIComponent(a[0]);if(this._prefixRe.test(n)){""!==decodeURIComponent(a[1])&&t.push(n.replace(this._prefixRe,""))}}return t}},{key:"has",value:function(t){return!("string"!=typeof t||!t)&&null!==e._getCookie(this._prefix+t)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=e._getCookie(this._prefix+t);return null===r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{if(e._setCookie(this._prefix+t,e._serialize(r),this.persistent?a:undefined),!this.has(t))throw new Error("unknown validation error during set")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"delete",value:function(t){if("string"!=typeof t||!t||!this.has(t))return!1;try{if(e._setCookie(this._prefix+t,undefined,n),this.has(t))throw new Error("unknown validation error during delete")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_getCookie",value:function(e){if(!e||""===document.cookie)return null;for(var t=document.cookie.split(/;\s*/),r=0;r<t.length;++r){var a=t[r].split("=");if(e===decodeURIComponent(a[0])){return decodeURIComponent(a[1])||null}}return null}},{key:"_setCookie",value:function(e,t,r){if(e){var a=encodeURIComponent(e)+"=";null!=t&&(a+=encodeURIComponent(t)),null!=r&&(a+="; expires="+r),a+="; path=/",document.cookie=a}}},{key:"_serialize",value:function(e){return LZString.compressToBase64(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromBase64(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}());var DebugView=function(){return function(){function e(t,r,a,n){_classCallCheck(this,e),Object.defineProperties(this,{parent:{value:t},view:{value:document.createElement("span")},break:{value:document.createElement("wbr")}}),jQuery(this.view).attr({title:n,"aria-label":n,"data-type":null!=r?r:"","data-name":null!=a?a:""}).addClass("debug"),jQuery(this.break).addClass("debug hidden"),this.parent.appendChild(this.view),this.parent.appendChild(this.break)}return _createClass(e,[{key:"append",value:function(e){return jQuery(this.view).append(e),this}},{key:"modes",value:function(e){if(null==e){var t={};return this.view.className.splitOrEmpty(/\s+/).forEach(function(e){"debug"!==e&&(t[e]=!0)}),t}if("object"===(void 0===e?"undefined":_typeof(e)))return Object.keys(e).forEach(function(t){this[e[t]?"addClass":"removeClass"](t)},jQuery(this.view)),this;throw new Error("DebugView.prototype.modes options parameter must be an object or null/undefined")}},{key:"remove",value:function(){var e=jQuery(this.view);this.view.hasChildNodes()&&e.contents().appendTo(this.parent),e.remove(),jQuery(this.break).remove()}},{key:"output",get:function(){return this.view}},{key:"type",get:function(){return this.view.getAttribute("data-type")},set:function(e){this.view.setAttribute("data-type",null!=e?e:"")}},{key:"name",get:function(){return this.view.getAttribute("data-name")},set:function(e){this.view.setAttribute("data-name",null!=e?e:"")}},{key:"title",get:function(){return this.view.title},set:function(e){this.view.title=e}}],[{key:"isEnabled",value:function(){return"enabled"===jQuery(document.documentElement).attr("data-debug-view")}},{key:"enable",value:function(){jQuery(document.documentElement).attr("data-debug-view","enabled"),jQuery.event.trigger(":debugviewupdate")}},{key:"disable",value:function(){jQuery(document.documentElement).removeAttr("data-debug-view"),jQuery.event.trigger(":debugviewupdate")}},{key:"toggle",value:function(){"enabled"===jQuery(document.documentElement).attr("data-debug-view")?e.disable():e.enable()}}]),e}()}(),PRNGWrapper=function(){return function(){function e(t,r){_classCallCheck(this,e),Object.defineProperties(this,new Math.seedrandom(t,r,function(e,t){return{_prng:{value:e},seed:{writable:!0,value:t},pull:{writable:!0,value:0},random:{value:function(){return++this.pull,this._prng()}}}}))}return _createClass(e,null,[{key:"marshal",value:function(e){if(!e||!e.hasOwnProperty("seed")||!e.hasOwnProperty("pull"))throw new Error("PRNG is missing required data");return{seed:e.seed,pull:e.pull}}},{key:"unmarshal",value:function(t){if(!t||!t.hasOwnProperty("seed")||!t.hasOwnProperty("pull"))throw new Error("PRNG object is missing required data");for(var r=new e(t.seed,!1),a=t.pull;a>0;--a)r.random();return r}}]),e}()}(),StyleWrapper=function(){var e=new RegExp(Patterns.cssImage,"g"),t=new RegExp(Patterns.cssImage);return function(){function r(e){if(_classCallCheck(this,r),null==e)throw new TypeError("StyleWrapper style parameter must be an HTMLStyleElement object");Object.defineProperties(this,{style:{value:e}})}return _createClass(r,[{key:"isEmpty",value:function(){return 0===this.style.cssRules.length}},{key:"set",value:function(e){this.clear(),this.add(e)}},{key:"add",value:function(r){var a=r;t.test(a)&&(e.lastIndex=0,a=a.replace(e,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var a=Story.get(r);a.tags.includes("Twine.image")&&(r=a.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),this.style.styleSheet?this.style.styleSheet.cssText+=a:this.style.appendChild(document.createTextNode(a))}},{key:"clear",value:function(){this.style.styleSheet?this.style.styleSheet.cssText="":jQuery(this.style).empty()}}]),r}()}(),Diff=function(){function e(t,a){for(var n=Object.prototype.toString,i=t instanceof Array,o=[].concat(Object.keys(t),Object.keys(a)).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}),s={},u=void 0,l=function(e){return e===u},c=0,d=o.length;c<d;++c){var h=o[c],f=t[h],p=a[h];if(t.hasOwnProperty(h))if(a.hasOwnProperty(h)){if(f===p)continue;if((void 0===f?"undefined":_typeof(f))===(void 0===p?"undefined":_typeof(p)))if("function"==typeof f)f.toString()!==p.toString()&&(s[h]=[r.Copy,p]);else if("object"!==(void 0===f?"undefined":_typeof(f))||null===f)s[h]=[r.Copy,p];else{var g=n.call(f),m=n.call(p);if(g===m)if(f instanceof Date)Number(f)!==Number(p)&&(s[h]=[r.Copy,clone(p)]);else if(f instanceof Map)s[h]=[r.Copy,clone(p)];else if(f instanceof RegExp)f.toString()!==p.toString()&&(s[h]=[r.Copy,clone(p)]);else if(f instanceof Set)s[h]=[r.Copy,clone(p)];else if("[object Object]"!==g)s[h]=[r.Copy,clone(p)];else{var v=e(f,p);null!==v&&(s[h]=v)}else s[h]=[r.Copy,clone(p)]}else s[h]=[r.Copy,"object"!==(void 0===p?"undefined":_typeof(p))||null===p?p:clone(p)]}else if(i&&Util.isNumeric(h)){var y=Number(h);if(!u){u="";do{u+="~"}while(o.some(l));s[u]=[r.SpliceArray,y,y]}y<s[u][1]&&(s[u][1]=y),y>s[u][2]&&(s[u][2]=y)}else s[h]=r.Delete;else s[h]=[r.Copy,"object"!==(void 0===p?"undefined":_typeof(p))||null===p?p:clone(p)]}return Object.keys(s).length>0?s:null}function t(e,a){for(var n=Object.keys(a||{}),i=clone(e),o=0,s=n.length;o<s;++o){var u=n[o],l=a[u];if(l===r.Delete)delete i[u];else if(l instanceof Array)switch(l[0]){case r.SpliceArray:i.splice(l[1],l[2]-l[1]+1);break;case r.Copy:i[u]=clone(l[1]);break;case r.CopyDate:i[u]=new Date(l[1])}else i[u]=t(i[u],l)}return i}var r=Util.toEnum({Delete:0,SpliceArray:1,Copy:2,CopyDate:3});return Object.freeze(Object.defineProperties({},{Op:{value:r},diff:{value:e},patch:{value:t}}))}(),L10n=function(){function e(){r()}function t(e,t){if(!e)return"";var r=function(e){var t=void 0;return e.some(function(e){return!!l10nStrings.hasOwnProperty(e)&&(t=e,!0)}),t}(Array.isArray(e)?e:[e]);if(!r)return"";for(var i=l10nStrings[r],o=0;n.test(i);){if(++o>50)throw new Error("L10n.get exceeded maximum replacement iterations, probable infinite loop");a.lastIndex=0,i=i.replace(a,function(e){var r=e.slice(1,-1);return t&&t.hasOwnProperty(r)?t[r]:l10nStrings.hasOwnProperty(r)?l10nStrings[r]:void 0})}return i}function r(){strings&&Object.keys(strings).length>0&&Object.keys(l10nStrings).forEach(function(e){try{var t=void 0;switch(e){case"identity":t=strings.identity;break;case"aborting":t=strings.aborting;break;case"cancel":t=strings.cancel;break;case"close":t=strings.close;break;case"ok":t=strings.ok;break;case"errorTitle":t=strings.errors.title;break;case"errorNonexistentPassage":t=strings.errors.nonexistentPassage;break;case"errorSaveMissingData":t=strings.errors.saveMissingData;break;case"errorSaveIdMismatch":t=strings.errors.saveIdMismatch;break;case"warningDegraded":t=strings.warnings.degraded;break;case"debugViewTitle":t=strings.debugView.title;break;case"debugViewToggle":t=strings.debugView.toggle;break;case"uiBarToggle":t=strings.uiBar.toggle;break;case"uiBarBackward":t=strings.uiBar.backward;break;case"uiBarForward":t=strings.uiBar.forward;break;case"uiBarJumpto":t=strings.uiBar.jumpto;break;case"jumptoTitle":t=strings.jumpto.title;break;case"jumptoTurn":t=strings.jumpto.turn;break;case"jumptoUnavailable":t=strings.jumpto.unavailable;break;case"savesTitle":t=strings.saves.title;break;case"savesDisallowed":t=strings.saves.disallowed;break;case"savesEmptySlot":t=strings.saves.emptySlot;break;case"savesIncapable":t=strings.saves.incapable;break;case"savesLabelAuto":t=strings.saves.labelAuto;break;case"savesLabelDelete":t=strings.saves.labelDelete;break;case"savesLabelExport":t=strings.saves.labelExport;break;case"savesLabelImport":t=strings.saves.labelImport;break;case"savesLabelLoad":t=strings.saves.labelLoad;break;case"savesLabelClear":t=strings.saves.labelClear;break;case"savesLabelSave":t=strings.saves.labelSave;break;case"savesLabelSlot":t=strings.saves.labelSlot;break;case"savesSavedOn":t=strings.saves.savedOn;break;case"savesUnavailable":t=strings.saves.unavailable;break;case"savesUnknownDate":t=strings.saves.unknownDate;break;case"settingsTitle":t=strings.settings.title;break;case"settingsOff":t=strings.settings.off;break;case"settingsOn":t=strings.settings.on;break;case"settingsReset":t=strings.settings.reset;break;case"restartTitle":t=strings.restart.title;break;case"restartPrompt":t=strings.restart.prompt;break;case"shareTitle":t=strings.share.title;break;case"autoloadTitle":t=strings.autoload.title;break;case"autoloadCancel":t=strings.autoload.cancel;break;case"autoloadOk":t=strings.autoload.ok;break;case"autoloadPrompt":t=strings.autoload.prompt;break;case"macroBackText":t=strings.macros.back.text;break;case"macroReturnText":t=strings.macros.return.text}t&&(l10nStrings[e]=t.replace(/%\w+%/g,function(e){return"{"+e.slice(1,-1)+"}"}))}catch(e){}})}var a=/\{\w+\}/g,n=new RegExp(a.source);return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:t}}))}(),strings={errors:{},warnings:{},debugView:{},uiBar:{},jumpto:{},saves:{},settings:{},restart:{},share:{},autoload:{},macros:{back:{},return:{}}},l10nStrings={identity:"game",aborting:"Aborting",cancel:"Cancel",close:"Close",ok:"OK",errorTitle:"Error",errorToggle:"Toggle the error view",errorNonexistentPassage:'the passage "{passage}" does not exist',errorSaveMissingData:"save is missing required data. Either the loaded file is not a save or the save has become corrupted",errorSaveIdMismatch:"save is from the wrong {identity}",_warningIntroLacking:"Your browser either lacks or has disabled",_warningOutroDegraded:", so this {identity} is running in a degraded mode. You may be able to continue, however, some parts may not work properly.",warningNoWebStorage:"{_warningIntroLacking} the Web Storage API{_warningOutroDegraded}",warningDegraded:"{_warningIntroLacking} some of the capabilities required by this {identity}{_warningOutroDegraded}",debugBarToggle:"Toggle the debug bar",debugBarNoWatches:"— no watches set —",debugBarAddWatch:"Add watch",debugBarDeleteWatch:"Delete watch",debugBarWatchAll:"Watch all",debugBarWatchNone:"Delete all",debugBarLabelAdd:"Add",debugBarLabelWatch:"Watch",debugBarLabelTurn:"Turn",debugBarLabelViews:"Views",debugBarViewsToggle:"Toggle the debug views",debugBarWatchToggle:"Toggle the watch panel",uiBarToggle:"Toggle the UI bar",uiBarBackward:"Go backward within the {identity} history",uiBarForward:"Go forward within the {identity} history",uiBarJumpto:"Jump to a specific point within the {identity} history",jumptoTitle:"Jump To",jumptoTurn:"Turn",jumptoUnavailable:"No jump points currently available…",savesTitle:"Saves",savesDisallowed:"Saving has been disallowed on this passage.",savesEmptySlot:"— slot empty —",
-savesIncapable:"{_warningIntroLacking} the capabilities required to support saves, so saves have been disabled for this session.",savesLabelAuto:"Autosave",savesLabelDelete:"Delete",savesLabelExport:"Save to Disk…",savesLabelImport:"Load from Disk…",savesLabelLoad:"Load",savesLabelClear:"Delete All",savesLabelSave:"Save",savesLabelSlot:"Slot",savesSavedOn:"Saved on",savesUnavailable:"No save slots found…",savesUnknownDate:"unknown",settingsTitle:"Settings",settingsOff:"Off",settingsOn:"On",settingsReset:"Reset to Defaults",restartTitle:"Restart",restartPrompt:"Are you sure that you want to restart? Unsaved progress will be lost.",shareTitle:"Share",autoloadTitle:"Autoload",autoloadCancel:"Go to start",autoloadOk:"Load autosave",autoloadPrompt:"An autosave exists. Load it now or go to the start?",macroBackText:"Back",macroReturnText:"Return"},Config=function(){function e(){throw new Error("Config.history.mode has been deprecated and is no longer used by SugarCube, please remove it from your code")}function t(){throw new Error("Config.history.tracking has been deprecated, use Config.history.maxStates instead")}return Object.seal({debug:!1,addVisitedLinkClass:!1,cleanupWikifierOutput:!1,loadDelay:0,history:Object.seal({controls:!0,maxStates:100,get mode(){e()},set mode(t){e()},get tracking(){t()},set tracking(e){t()}}),macros:Object.seal({ifAssignmentError:!0,maxLoopIterations:1e3}),navigation:Object.seal({override:undefined}),passages:Object.seal({descriptions:undefined,displayTitles:!1,nobr:!1,start:undefined,transitionOut:undefined}),saves:Object.seal({autoload:undefined,autosave:undefined,id:"untitled-story",isAllowed:undefined,onLoad:undefined,onSave:undefined,slots:8,version:undefined}),ui:Object.seal({stowBarInitially:800,updateStoryElements:!0}),transitionEndEventName:function(){for(var e=new Map([["transition","transitionend"],["MSTransition","msTransitionEnd"],["WebkitTransition","webkitTransitionEnd"],["MozTransition","transitionend"]]),t=[].concat(_toConsumableArray(e.keys())),r=document.createElement("div"),a=0;a<t.length;++a)if(r.style[t[a]]!==undefined)return e.get(t[a]);return""}()})}(),State=function(){function e(){session.delete("state"),W=[],R=c(),F=-1,B=[],V=null===V?null:new PRNGWrapper(V.seed,!1)}function t(){if(session.has("state")){var e=session.get("state");return null!=e&&(a(e),!0)}return!1}function r(e){var t={index:F};return e?t.history=clone(W):t.delta=A(W),B.length>0&&(t.expired=[].concat(_toConsumableArray(B))),null!==V&&(t.seed=V.seed),t}function a(e,t){if(null==e)throw new Error("state object is null or undefined");if(!e.hasOwnProperty(t?"history":"delta")||0===e[t?"history":"delta"].length)throw new Error("state object has no history or history is empty");if(!e.hasOwnProperty("index"))throw new Error("state object has no index");if(null!==V&&!e.hasOwnProperty("seed"))throw new Error("state object has no seed, but PRNG is enabled");if(null===V&&e.hasOwnProperty("seed"))throw new Error("state object has seed, but PRNG is disabled");W=t?clone(e.history):P(e.delta),F=e.index,B=e.hasOwnProperty("expired")?[].concat(_toConsumableArray(e.expired)):[],e.hasOwnProperty("seed")&&(V.seed=e.seed),g(F)}function n(){return r(!0)}function i(e){return a(e,!0)}function o(){return B}function s(){return B.length+v()}function u(){return B.concat(W.slice(0,v()).map(function(e){return e.title}))}function l(e){return null!=e&&""!==e&&(!!B.includes(e)||!!W.slice(0,v()).some(function(t){return t.title===e}))}function c(e,t){return{title:null==e?"":String(e),variables:null==t?{}:clone(t)}}function d(){return R}function h(){return F}function f(){return R.title}function p(){return R.variables}function g(e){if(null==e)throw new Error("moment activation attempted with null or undefined");switch(void 0===e?"undefined":_typeof(e)){case"object":R=clone(e);break;case"number":if(b())throw new Error("moment activation attempted with index on empty history");if(e<0||e>=y())throw new RangeError("moment activation attempted with out-of-bounds index; need [0, "+(y()-1)+"], got "+e);R=clone(W[e]);break;default:throw new TypeError('moment activation attempted with a "'+(void 0===e?"undefined":_typeof(e))+'"; must be an object or valid history stack index')}return null!==V&&(V=PRNGWrapper.unmarshal({seed:V.seed,pull:R.pull})),session.set("state",r()),jQuery.event.trigger(":historyupdate"),R}function m(){return W}function v(){return F+1}function y(){return W.length}function b(){return 0===W.length}function w(){return W.length>0?W[F]:null}function k(){return W.length>0?W[W.length-1]:null}function S(){return W.length>0?W[0]:null}function E(e){return b()||e<0||e>F?null:W[e]}function x(e){if(b())return null;var t=1+(e?Math.abs(e):0);return t>v()?null:W[v()-t]}function j(e){if(b()||null==e||""===e)return!1;for(var t=F;t>=0;--t)if(W[t].title===e)return!0;return!1}function C(e){if(v()<y()&&W.splice(v(),y()-v()),W.push(c(e,R.variables)),V&&(k().pull=V.pull),Config.history.maxStates>0)for(;y()>Config.history.maxStates;)B.push(W.shift().title);return F=y()-1,g(F),v()}function O(e){return!(null==e||e<0||e>=y()||e===F)&&(F=e,g(F),!0)}function T(e){return null!=e&&0!==e&&O(F+e)}function A(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,a=e.length;r<a;++r)t.push(Diff.diff(e[r-1],e[r]));return t}function P(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,a=e.length;r<a;++r)t.push(Diff.patch(t[r-1],e[r]));return t}function _(e,t){if(!b()){var r=void 0;throw r="a script-tagged passage",new Error("State.initPRNG must be called during initialization, within either "+r+" or the StoryInit special passage")}V=new PRNGWrapper(e,t),R.pull=V.pull}function N(){return V?V.random():Math.random()}function D(){U={},TempVariables=U}function M(){return U}function L(e){var t=Q(e);if(null!==t){for(var r=t.names,a=t.store,n=0,i=r.length;n<i;++n){if(void 0===a[r[n]])return;a=a[r[n]]}return a}}function I(e,t){var r=Q(e);if(null===r)return!1;for(var a=r.names,n=a.pop(),i=r.store,o=0,s=a.length;o<s;++o){if(void 0===i[a[o]])return!1;i=i[a[o]]}return i[n]=t,!0}function Q(e){for(var t={store:"$"===e[0]?State.variables:State.temporary,names:[]},r=e,a=void 0;null!==(a=z.exec(r));)r=r.slice(a[0].length),a[1]?t.names.push(a[1]):a[2]?t.names.push(a[2]):a[3]?t.names.push(a[3]):a[4]?t.names.push(a[4]):a[5]?t.names.push(L(a[5])):a[6]&&t.names.push(Number(a[6]));return""===r?t:null}var W=[],R=c(),F=-1,B=[],V=null,U={},z=new RegExp("^(?:"+Patterns.variableSigil+"("+Patterns.identifier+")|\\.("+Patterns.identifier+")|\\[(?:(?:\"((?:\\\\.|[^\"\\\\])+)\")|(?:'((?:\\\\.|[^'\\\\])+)')|("+Patterns.variableSigil+Patterns.identifierFirstChar+".*)|(\\d+))\\])");return Object.freeze(Object.defineProperties({},{reset:{value:e},restore:{value:t},marshalForSave:{value:n},unmarshalForSave:{value:i},expired:{get:o},turns:{get:s},passages:{get:u},hasPlayed:{value:l},active:{get:d},activeIndex:{get:h},passage:{get:f},variables:{get:p},history:{get:m},length:{get:v},size:{get:y},isEmpty:{value:b},current:{get:w},top:{get:k},bottom:{get:S},index:{value:E},peek:{value:x},has:{value:j},create:{value:C},goTo:{value:O},go:{value:T},deltaEncode:{value:A},deltaDecode:{value:P},initPRNG:{value:_},random:{value:N},clearTemporary:{value:D},temporary:{get:M},getVar:{value:L},setVar:{value:I},restart:{value:function(){return Engine.restart()}},backward:{value:function(){return Engine.backward()}},forward:{value:function(){return Engine.forward()}},display:{value:function(){return Engine.display.apply(Engine,arguments)}},show:{value:function(){return Engine.show.apply(Engine,arguments)}},play:{value:function(){return Engine.play.apply(Engine,arguments)}}}))}(),Scripting=function(){function addAccessibleClickHandler(e,t,r,a,n){if(arguments.length<2)throw new Error("addAccessibleClickHandler insufficient number of parameters");var i=void 0,o=void 0;if("function"==typeof t?(i=t,o={namespace:a,one:!!r}):(i=r,o={namespace:n,one:!!a,selector:t}),"function"!=typeof i)throw new TypeError("addAccessibleClickHandler handler parameter must be a function");return jQuery(e).ariaClick(o,i)}function insertElement(e,t,r,a,n,i){var o=jQuery(document.createElement(t));return r&&o.attr("id",r),a&&o.addClass(a),i&&o.attr("title",i),n&&o.text(n),e&&o.appendTo(e),o[0]}function insertText(e,t){jQuery(e).append(document.createTextNode(t))}function removeChildren(e){jQuery(e).empty()}function removeElement(e){jQuery(e).remove()}function fade(e,t){function r(){i+=.05*n,a(o,Math.easeInOut(i)),(1===n&&i>=1||-1===n&&i<=0)&&(e.style.visibility="in"===t.fade?"visible":"hidden",o.parentNode.replaceChild(e,o),o=null,window.clearInterval(s),t.onComplete&&t.onComplete())}function a(e,t){e.style.zoom=1,e.style.filter="alpha(opacity="+Math.floor(100*t)+")",e.style.opacity=t}var n="in"===t.fade?1:-1,i=void 0,o=e.cloneNode(!0),s=void 0;e.parentNode.replaceChild(o,e),"in"===t.fade?(i=0,o.style.visibility="visible"):i=1,a(o,i),s=window.setInterval(r,25)}function scrollWindowTo(e,t){function r(){l+=n,window.scroll(0,i+u*(s*Math.easeInOut(l))),l>=1&&window.clearInterval(c)}function a(e){for(var t=0;e.offsetParent;)t+=e.offsetTop,e=e.offsetParent;return t}var n=null!=t?Number(t):.1;Number.isNaN(n)||!Number.isFinite(n)||n<0?n=.1:n>1&&(n=1);var i=window.scrollY?window.scrollY:document.body.scrollTop,o=function(e){var t=a(e),r=t+e.offsetHeight,n=window.scrollY?window.scrollY:document.body.scrollTop,i=window.innerHeight?window.innerHeight:document.body.clientHeight,o=n+i;return t>=n&&r>o&&e.offsetHeight<i?t-(i-e.offsetHeight)+20:t}(e),s=Math.abs(i-o),u=i>o?-1:1,l=0,c=void 0;c=window.setInterval(r,25)}function either(){if(0!==arguments.length)return Array.prototype.concat.apply([],arguments).random()}function hasVisited(){if(0===arguments.length)throw new Error("hasVisited called with insufficient parameters");if(State.isEmpty())return!1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=0,a=e.length;r<a;++r)if(!t.includes(e[r]))return!1;return!0}function lastVisited(){if(0===arguments.length)throw new Error("lastVisited called with insufficient parameters");if(State.isEmpty())return-1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=t.length-1,a=State.turns,n=0,i=e.length;n<i&&a>-1;++n){var o=t.lastIndexOf(e[n]);a=Math.min(a,-1===o?-1:r-o)}return a}function passage(){return State.passage}function previous(){var e=State.passages;if(arguments.length>0){var t=Number(arguments[0]);if(!Number.isSafeInteger(t)||t<1)throw new RangeError("previous offset parameter must be a positive integer greater than zero");return e.length>t?e[e.length-1-t]:""}for(var r=e.length-2;r>=0;--r)if(e[r]!==State.passage)return e[r];return""}function random(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("random called with insufficient parameters");case 1:e=0,t=Math.trunc(arguments[0]);break;default:e=Math.trunc(arguments[0]),t=Math.trunc(arguments[1])}if(!Number.isInteger(e))throw new Error("random min parameter must be an integer");if(!Number.isInteger(t))throw new Error("random max parameter must be an integer");if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(State.random()*(t-e+1))+e}function randomFloat(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("randomFloat called with insufficient parameters");case 1:e=0,t=Number(arguments[0]);break;default:e=Number(arguments[0]),t=Number(arguments[1])}if(Number.isNaN(e)||!Number.isFinite(e))throw new Error("randomFloat min parameter must be a number");if(Number.isNaN(t)||!Number.isFinite(t))throw new Error("randomFloat max parameter must be a number");if(e>t){var r=[t,e];e=r[0],t=r[1]}return State.random()*(t-e)+e}function tags(){if(0===arguments.length)return Story.get(State.passage).tags.slice(0);for(var e=Array.prototype.concat.apply([],arguments),t=[],r=0,a=e.length;r<a;++r)t=t.concat(Story.get(e[r]).tags);return t}function temporary(){return State.temporary}function time(){return null===Engine.lastPlay?0:Util.now()-Engine.lastPlay}function turns(){return State.turns}function variables(){return State.variables}function visited(){if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],0===arguments.length?[State.passage]:arguments),t=State.passages,r=State.turns,a=0,n=e.length;a<n&&r>0;++a)r=Math.min(r,t.count(e[a]));return r}function visitedTags(){if(0===arguments.length)throw new Error("visitedTags called with insufficient parameters");if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],arguments),t=e.length,r=State.passages,a=new Map,n=0,i=0,o=r.length;i<o;++i){var s=r[i];if(a.has(s))a.get(s)&&++n;else{var u=Story.get(s).tags;if(u.length>0){for(var l=0,c=0;c<t;++c)u.includes(e[c])&&++l;l===t?(++n,a.set(s,!0)):a.set(s,!1)}}}return n}function evalJavaScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,String(code),output)}function evalTwineScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,parse(String(code)),output)}var _ref8=function(){function e(e){return e.reduce(function(e,t){return e=e.then(t)},Promise.resolve())}function t(e){return Util.parseUrl(e).path.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w]+/g,"-").toLocaleLowerCase()}function r(){function r(e){return new Promise(function(r,a){jQuery(document.createElement("script")).one("load abort error",function(e){jQuery(e.target).off(),"load"===e.type?r(e.target):a(e.target)}).appendTo(document.head).attr({id:"script-imported-"+t(e),type:"text/javascript",src:e})})}for(var a=arguments.length,n=Array(a),i=0;i<a;i++)n[i]=arguments[i];return Promise.all(n.map(function(t){return Array.isArray(t)?e(t.map(function(e){return function(){return r(e)}})):r(t)}))}function a(){function r(e){return new Promise(function(r,a){jQuery(document.createElement("link")).one("load abort error",function(e){jQuery(e.target).off(),"load"===e.type?r(e.target):a(e.target)}).appendTo(document.head).attr({id:"style-imported-"+t(e),rel:"stylesheet",href:e})})}for(var a=arguments.length,n=Array(a),i=0;i<a;i++)n[i]=arguments[i];return Promise.all(n.map(function(t){return Array.isArray(t)?e(t.map(function(e){return function(){return r(e)}})):r(t)}))}return{importScripts:r,importStyles:a}}(),importScripts=_ref8.importScripts,importStyles=_ref8.importStyles,parse=function(){function e(e){if(0!==r.lastIndex)throw new RangeError("Scripting.parse last index is non-zero at start");for(var n=e,i=void 0;null!==(i=r.exec(n));)if(i[5]){var o=i[5];if("$"===o||"_"===o)continue;if(a.test(o))o=o[0];else if("is"===o){var s=r.lastIndex,u=n.slice(s);/^\s+not\b/.test(u)&&(n=n.splice(s,u.search(/\S/)),o="isnot")}t.hasOwnProperty(o)&&(n=n.splice(i.index,o.length,t[o]),r.lastIndex+=t[o].length-o.length)}return n}var t=Object.freeze({$:"State.variables.",_:"State.temporary.",to:"=",eq:"==",neq:"!=",is:"===",isnot:"!==",gt:">",gte:">=",lt:"<",lte:"<=",and:"&&",or:"||",not:"!",def:'"undefined" !== typeof',ndef:'"undefined" === typeof'}),r=new RegExp(["(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","([=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}]+)","([^\"'=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}\\s]+)"].join("|"),"g"),a=new RegExp("^"+Patterns.variable);return e}();return Object.freeze(Object.defineProperties({},{parse:{value:parse},evalJavaScript:{value:evalJavaScript},evalTwineScript:{value:evalTwineScript}}))}(),Wikifier=function(){var e=0,t=function(){function t(r,a,n){_classCallCheck(this,t),t.Parser.Profile.isEmpty()&&t.Parser.Profile.compile(),Object.defineProperties(this,{source:{value:String(a)},options:{writable:!0,value:Object.assign({profile:"all"},n)},nextMatch:{writable:!0,value:0},output:{writable:!0,value:null},_rawArgs:{writable:!0,value:""}}),null==r?this.output=document.createDocumentFragment():r.jquery?this.output=r[0]:this.output=r;try{++e,this.subWikify(this.output),1===e&&Config.cleanupWikifierOutput&&convertBreaks(this.output)}finally{--e}}return _createClass(t,[{key:"subWikify",value:function(e,r,a){var n=this.output,i=void 0;this.output=e,null!=a&&"object"===(void 0===a?"undefined":_typeof(a))&&(i=this.options,this.options=Object.assign({},this.options,a));var o=t.Parser.Profile.get(this.options.profile),s=r?new RegExp("(?:"+r+")",this.options.ignoreTerminatorCase?"gim":"gm"):null,u=void 0,l=void 0;do{if(o.parserRegExp.lastIndex=this.nextMatch,s&&(s.lastIndex=this.nextMatch),l=o.parserRegExp.exec(this.source),(u=s?s.exec(this.source):null)&&(!l||u.index<=l.index))return u.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,u.index),this.matchStart=u.index,this.matchLength=u[0].length,this.matchText=u[0],this.nextMatch=s.lastIndex,this.output=n,void(i&&(this.options=i));if(l){l.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,l.index),this.matchStart=l.index,this.matchLength=l[0].length,this.matchText=l[0],this.nextMatch=o.parserRegExp.lastIndex;for(var c=void 0,d=1,h=l.length;d<h;++d)if(l[d]){c=d-1;break}if(o.parsers[c].handler(this),null!=TempState.break)break}}while(u||l);null==TempState.break?this.nextMatch<this.source.length&&(this.outputText(this.output,this.nextMatch,this.source.length),this.nextMatch=this.source.length):this.output.lastChild&&this.output.lastChild.nodeType===Node.ELEMENT_NODE&&"BR"===this.output.lastChild.nodeName.toUpperCase()&&jQuery(this.output.lastChild).remove(),this.output=n,i&&(this.options=i)}},{key:"outputText",value:function(e,t,r){jQuery(e).append(document.createTextNode(this.source.substring(t,r)))}},{key:"rawArgs",value:function(){return this._rawArgs}},{key:"fullArgs",value:function(){return Scripting.parse(this._rawArgs)}}],[{key:"wikifyEval",value:function(e){var r=document.createDocumentFragment();new t(r,e);var a=r.querySelector(".error");if(null!==a)throw new Error(a.textContent.replace(errorPrologRegExp,""));return r}},{key:"createInternalLink",value:function(e,t,r,a){var n=jQuery(document.createElement("a"));return null!=t&&(n.attr("data-passage",t),Story.has(t)?(n.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(t)&&n.addClass("link-visited")):n.addClass("link-broken"),n.ariaClick({one:!0},function(){"function"==typeof a&&a(),Engine.play(t)})),r&&n.append(document.createTextNode(r)),e&&n.appendTo(e),n[0]}},{key:"createExternalLink",value:function(e,t,r){var a=jQuery(document.createElement("a")).attr("target","_blank").addClass("link-external").text(r).appendTo(e);return null!=t&&a.attr({href:t,tabindex:0}),a[0]}},{key:"isExternalLink",value:function(e){return!Story.has(e)&&(new RegExp("^"+Patterns.url,"gim").test(e)||/[\/.?#]/.test(e))}}]),t}();return Object.defineProperty(t,"Parser",{value:function(){function e(){return d}function t(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("Wikifier.Parser.add parser parameter must be an object");if(!e.hasOwnProperty("name"))throw new Error('parser object missing required "name" property');if("string"!=typeof e.name)throw new Error('parser object "name" property must be a string');if(!e.hasOwnProperty("match"))throw new Error('parser object missing required "match" property');if("string"!=typeof e.match)throw new Error('parser object "match" property must be a string');if(!e.hasOwnProperty("handler"))throw new Error('parser object missing required "handler" property');if("function"!=typeof e.handler)throw new Error('parser object "handler" property must be a function');if(e.hasOwnProperty("profiles")&&!Array.isArray(e.profiles))throw new Error('parser object "profiles" property must be an array');if(n(e.name))throw new Error('cannot clobber existing parser "'+e.name+'"');d.push(e)}function r(e){var t=d.find(function(t){return t.name===e});t&&d.delete(t)}function a(){return 0===d.length}function n(e){return!!d.find(function(t){return t.name===e})}function i(e){return d.find(function(t){return t.name===e})||null}function o(){return h}function s(){var e=d,t=e.filter(function(e){return!Array.isArray(e.profiles)||e.profiles.includes("core")});return h=Object.freeze({all:{parsers:e,parserRegExp:new RegExp(e.map(function(e){return"("+e.match+")"}).join("|"),"gm")},core:{parsers:t,parserRegExp:new RegExp(t.map(function(e){return"("+e.match+")"}).join("|"),"gm")}})}function u(){return"object"!==(void 0===h?"undefined":_typeof(h))||0===Object.keys(h).length}function l(e){if("object"!==(void 0===h?"undefined":_typeof(h))||!h.hasOwnProperty(e))throw new Error('nonexistent parser profile "'+e+'"');return h[e]}function c(e){return"object"===(void 0===h?"undefined":_typeof(h))&&h.hasOwnProperty(e)}var d=[],h=void 0;return Object.freeze(Object.defineProperties({},{parsers:{get:e},add:{value:t},delete:{value:r},isEmpty:{value:a},has:{value:n},get:{value:i},Profile:{value:Object.freeze(Object.defineProperties({},{profiles:{get:o},compile:{value:s},isEmpty:{value:u},has:{value:c},get:{value:l}}))}}))}()}),Object.defineProperties(t,{helpers:{value:{}},getValue:{value:State.getVar},setValue:{value:State.setVar},parse:{value:Scripting.parse},evalExpression:{value:Scripting.evalTwineScript},evalStatements:{value:Scripting.evalTwineScript},textPrimitives:{value:Patterns}}),Object.defineProperties(t.helpers,{inlineCss:{value:function(){function e(e){var r={classes:[],id:"",styles:{}},a=void 0;do{t.lastIndex=e.nextMatch;var n=t.exec(e.source);a=n&&n.index===e.nextMatch,a&&(n[1]?r.styles[Util.fromCssProperty(n[1])]=n[2].trim():n[3]?r.styles[Util.fromCssProperty(n[3])]=n[4].trim():n[5]?r.classes=r.classes.concat(n[5].slice(1).split(/\./)):n[6]&&(r.id=n[6].slice(1).split(/#/).pop()),e.nextMatch=t.lastIndex)}while(a);return r}var t=new RegExp(Patterns.inlineCss,"gm");return e}()},evalText:{value:function(e){var t=void 0;try{t=Scripting.evalTwineScript(e),null==t||"function"==typeof t?t=e:(t=String(t),/\[(?:object(?:\s+[^\]]+)?|native\s+code)\]/.test(t)&&(t=e))}catch(r){t=e}return t}},evalPassageId:{value:function(e){return null==e||Story.has(e)?e:t.helpers.evalText(e)}},hasBlockContext:{value:function(e){for(var t="function"==typeof window.getComputedStyle,r=e.length-1;r>=0;--r){var a=e[r];switch(a.nodeType){case Node.ELEMENT_NODE:var n=a.nodeName.toUpperCase();if("BR"===n)return!0;var i=t?window.getComputedStyle(a,null):a.currentStyle;if(i&&i.display){if("none"===i.display)continue;return"block"===i.display}switch(n){case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":return!0}return!1;case Node.COMMENT_NODE:continue;default:return!1}}return!0}},createShadowSetterCallback:{value:function(){function e(){if(!n&&!(n=t.Parser.get("macro")))throw new Error('cannot find "macro" parser');return n}function r(){for(var t=n||e(),r=new Set,a=t.context;null!==a;a=a.parent)a._shadows&&a._shadows.forEach(function(e){return r.add(e)});return[].concat(_toConsumableArray(r))}function a(e){var t={};return r().forEach(function(e){var r=e.slice(1),a="$"===e[0]?State.variables:State.temporary;t[e]=a[r]}),function(){var r=Object.keys(t),a=r.length>0?{}:null;try{return r.forEach(function(e){var r=e.slice(1),n="$"===e[0]?State.variables:State.temporary;n.hasOwnProperty(r)&&(a[r]=n[r]),n[r]=t[e]}),Scripting.evalJavaScript(e)}finally{r.forEach(function(e){var r=e.slice(1),n="$"===e[0]?State.variables:State.temporary;t[e]=n[r],a.hasOwnProperty(r)?n[r]=a[r]:delete n[r]})}}}var n=null;return a}()},parseSquareBracketedMarkup:{value:function(e){function t(){return c>=e.source.length?s:e.source[c]}function r(t){return t<1||c+t>=e.source.length?s:e.source[c+t]}function a(){return{error:String.format.apply(String,arguments),pos:c}}function n(){l=c}function i(t){var r=e.source.slice(l,c).trim();if(""===r)throw new Error("malformed wiki "+(f?"link":"image")+", empty "+t+" component");"link"===t&&"~"===r[0]?(u.forceInternal=!0,u.link=r.slice(1)):u[t]=r,l=c}function o(e){++c;e:for(;;){switch(t()){case"\\":++c;var r=t();if(r!==s&&"\n"!==r)break;case s:case"\n":return s;case e:break e}++c}return c}var s=-1,u={},l=e.matchStart,c=l+1,d=void 0,h=void 0,f=void 0,p=void 0;if("["===(p=t()))f=u.isLink=!0;else{switch(f=!1,p){case"<":u.align="left",++c;break;case">":u.align="right",++c}if(!/^[Ii][Mm][Gg]$/.test(e.source.slice(c,c+3)))return a("malformed square-bracketed wiki markup");c+=3,u.isImage=!0}if("["!==function(){return c>=e.source.length?s:e.source[c++]}())return a("malformed wiki {0}",f?"link":"image");d=1,h=0,n();try{e:for(;;){switch(p=t()){case s:case"\n":return a("unterminated wiki {0}",f?"link":"image");case'"':if(o(p)===s)return a("unterminated double quoted string in wiki {0}",f?"link":"image");break;case"'":if((4===h||3===h&&f)&&o(p)===s)return a("unterminated single quoted string in wiki {0}",f?"link":"image");break;case"|":0===h&&(i(f?"text":"title"),++l,h=1);break;case"-":0===h&&">"===r(1)&&(i(f?"text":"title"),++c,l+=2,h=1);break;case"<":0===h&&"-"===r(1)&&(i(f?"link":"source"),++c,l+=2,h=2);break;case"[":if(-1===h)return a("unexpected left square bracket '['");++d,1===d&&(n(),++l);break;case"]":if(0===--d){switch(h){case 0:case 1:i(f?"link":"source"),h=3;break;case 2:i(f?"text":"title"),h=3;break;case 3:f?(i("setter"),h=-1):(i("link"),h=4);break;case 4:i("setter"),h=-1}if(++c,"]"===t()){++c;break e}--c}}++c}}catch(e){return a(e.message)}return u.pos=c,u}}}),t}();!function(){function e(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createDocumentFragment()).append(t[1]).appendTo(e.output))}Wikifier.Parser.add({name:"quoteByBlock",profiles:["block"],match:"^<<<\\n",terminator:"^<<<\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.subWikify(jQuery(document.createElement("blockquote")).appendTo(e.output).get(0),this.terminator)}}),Wikifier.Parser.add({name:"quoteByLine",profiles:["block"],match:"^>+",lookahead:/^>+/gm,terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=[e.output],r=0,a=e.matchLength,n=void 0,i=void 0;do{if(a>r)for(i=r;i<a;++i)t.push(jQuery(document.createElement("blockquote")).appendTo(t[t.length-1]).get(0));else if(a<r)for(i=r;i>a;--i)t.pop();r=a,e.subWikify(t[t.length-1],this.terminator),jQuery(document.createElement("br")).appendTo(t[t.length-1]),this.lookahead.lastIndex=e.nextMatch;var o=this.lookahead.exec(e.source);n=o&&o.index===e.nextMatch,n&&(a=o[0].length,e.nextMatch+=o[0].length)}while(n)}}),Wikifier.Parser.add({name:"macro",profiles:["core"],match:"<<",lookahead:new RegExp("<<(/?"+Patterns.macroName+")(?:\\s*)((?:(?:\"(?:\\\\.|[^\"\\\\])*\")|(?:'(?:\\\\.|[^'\\\\])*')|(?:\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)|[^>]|(?:>(?!>)))*)>>","gm"),argsPattern:["(``)","`((?:\\\\.|[^`\\\\])+)`","(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","(\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)","([^`\"'\\s]+)","(`|\"|')"].join("|"),working:{source:"",name:"",arguments:"",index:0},context:null,handler:function(e){var t=this.lookahead.lastIndex=e.matchStart;if(this.parseTag(e)){var r=e.nextMatch,a=this.working.source,n=this.working.name,i=this.working.arguments,o=void 0;try{if(!(o=Macro.get(n))){if(Macro.tags.has(n)){var s=Macro.tags.get(n);return throwError(e.output,"child tag <<"+n+">> was found outside of a call to its parent macro"+(1===s.length?"":"s")+" <<"+s.join(">>, <<")+">>",e.source.slice(t,e.nextMatch))}return throwError(e.output,"macro <<"+n+">> does not exist",e.source.slice(t,e.nextMatch))}var u=null;if(o.hasOwnProperty("tags")&&!(u=this.parseBody(e,o)))return e.nextMatch=r,throwError(e.output,"cannot find a closing tag for macro <<"+n+">>",e.source.slice(t,e.nextMatch)+"…");if("function"!=typeof o.handler)return throwError(e.output,"macro <<"+n+">> handler function "+(o.hasOwnProperty("handler")?"is not a function":"does not exist"),e.source.slice(t,e.nextMatch));var l=u?u[0].args:this.createArgs(i,o.hasOwnProperty("skipArgs")&&!!o.skipArgs||o.hasOwnProperty("skipArg0")&&!!o.skipArg0);if(o.hasOwnProperty("_MACRO_API")){this.context=new MacroContext({macro:o,name:n,args:l,payload:u,source:a,parent:this.context,parser:e});try{o.handler.call(this.context)}finally{this.context=this.context.parent}}else{var c=e._rawArgs;e._rawArgs=i;try{o.handler(e.output,n,l,e,u)}finally{e._rawArgs=c}}}catch(r){return throwError(e.output,"cannot execute "+(o&&o.isWidget?"widget":"macro")+" <<"+n+">>: "+r.message,e.source.slice(t,e.nextMatch))}finally{this.working.source="",this.working.name="",this.working.arguments="",this.working.index=0}}else e.outputText(e.output,e.matchStart,e.nextMatch)},parseTag:function(e){var t=this.lookahead.exec(e.source);return!(!t||t.index!==e.matchStart||!t[1])&&(e.nextMatch=this.lookahead.lastIndex,this.working.source=e.source.slice(t.index,this.lookahead.lastIndex),this.working.name=t[1],this.working.arguments=t[2],this.working.index=t.index,!0)},parseBody:function(e,t){for(var r=this.working.name,a="/"+r,n="end"+r,i=!!Array.isArray(t.tags)&&t.tags,o=[],s=t.hasOwnProperty("skipArgs")&&t.skipArgs,u=t.hasOwnProperty("skipArg0")&&t.skipArg0,l=-1,c=1,d=this.working.source,h=this.working.name,f=this.working.arguments,p=e.nextMatch;-1!==(e.matchStart=e.source.indexOf(this.match,e.nextMatch));)if(this.parseTag(e)){var g=this.working.source,m=this.working.name,v=this.working.arguments,y=this.working.index,b=e.nextMatch;switch(m){case r:++c;break;case n:case a:--c;break;default:if(1===c&&i)for(var w=0,k=i.length;w<k;++w)m===i[w]&&(o.push({source:d,name:h,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(p,y)}),d=g,h=m,f=v,p=b)}if(0===c){o.push({source:d,name:h,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(p,y)}),l=b;break}}else this.lookahead.lastIndex=e.nextMatch=e.matchStart+this.match.length;return-1!==l?(e.nextMatch=l,o):null},createArgs:function(e,t){var r=t?[]:this.parseArgs(e);return Object.defineProperties(r,{raw:{value:e},full:{value:Scripting.parse(e)}}),r},parseArgs:function(e){for(var t=new RegExp(this.argsPattern,"gm"),r=[],a=new RegExp("^"+Patterns.variable),n=void 0;null!==(n=t.exec(e));){var i=void 0;if(n[1])i=undefined;else if(n[2]){i=n[2];try{i=Scripting.evalTwineScript(i)}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}}else if(n[3])i="";else if(n[4]){i=n[4];try{i=Scripting.evalJavaScript(i)}catch(e){throw new Error("unable to parse macro argument '"+i+"': "+e.message)}}else if(n[5]){i=n[5];try{i=Scripting.evalJavaScript(i)}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}}else if(n[6]){i=n[6];var o=Wikifier.helpers.parseSquareBracketedMarkup({source:i,matchStart:0});if(o.hasOwnProperty("error"))throw new Error('unable to parse macro argument "'+i+'": '+o.error);if(o.pos<i.length)throw new Error('unable to parse macro argument "'+i+'": unexpected character(s) "'+i.slice(o.pos)+'" (pos: '+o.pos+")");o.isLink?(i={isLink:!0},i.count=o.hasOwnProperty("text")?2:1,i.link=Wikifier.helpers.evalPassageId(o.link),i.text=o.hasOwnProperty("text")?Wikifier.helpers.evalText(o.text):i.link,i.external=!o.forceInternal&&Wikifier.isExternalLink(i.link),i.setFn=o.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(o.setter)):null):o.isImage&&(i=function(e){var t={source:e,isImage:!0};if("data:"!==e.slice(0,5)&&Story.has(e)){var r=Story.get(e);r.tags.includes("Twine.image")&&(t.source=r.text,t.passage=r.title)}return t}(Wikifier.helpers.evalPassageId(o.source)),o.hasOwnProperty("align")&&(i.align=o.align),o.hasOwnProperty("title")&&(i.title=Wikifier.helpers.evalText(o.title)),o.hasOwnProperty("link")&&(i.link=Wikifier.helpers.evalPassageId(o.link),
-i.external=!o.forceInternal&&Wikifier.isExternalLink(i.link)),i.setFn=o.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(o.setter)):null)}else if(n[7])if(i=n[7],a.test(i))i=State.getVar(i);else if(/^(?:settings|setup)[.[]/.test(i))try{i=Scripting.evalTwineScript(i)}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}else if("null"===i)i=null;else if("undefined"===i)i=undefined;else if("true"===i)i=!0;else if("false"===i)i=!1;else{var s=Number(i);Number.isNaN(s)||(i=s)}else if(n[8]){var u=void 0;switch(n[8]){case"`":u="backquote expression";break;case'"':u="double quoted string";break;case"'":u="single quoted string"}throw new Error("unterminated "+u+" in macro argument string")}r.push(i)}return r}}),Wikifier.Parser.add({name:"prettyLink",profiles:["core"],match:"\\[\\[[^[]",handler:function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var r=Wikifier.helpers.evalPassageId(t.link),a=t.hasOwnProperty("text")?Wikifier.helpers.evalText(t.text):r,n=t.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,i=(Config.debug?new DebugView(e.output,"wiki-link","[[link]]",e.source.slice(e.matchStart,e.nextMatch)):e).output;t.forceInternal||!Wikifier.isExternalLink(r)?Wikifier.createInternalLink(i,r,a,n):Wikifier.createExternalLink(i,r,a)}}),Wikifier.Parser.add({name:"urlLink",profiles:["core"],match:Patterns.url,handler:function(e){e.outputText(Wikifier.createExternalLink(e.output,e.matchText),e.matchStart,e.nextMatch)}}),Wikifier.Parser.add({name:"image",profiles:["core"],match:"\\[[<>]?[Ii][Mm][Gg]\\[",handler:function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var r=void 0;Config.debug&&(r=new DebugView(e.output,"wiki-image",t.hasOwnProperty("link")?"[img[][link]]":"[img[]]",e.source.slice(e.matchStart,e.nextMatch)),r.modes({block:!0}));var a=t.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,n=(Config.debug?r:e).output,i=void 0;if(t.hasOwnProperty("link")){var o=Wikifier.helpers.evalPassageId(t.link);n=t.forceInternal||!Wikifier.isExternalLink(o)?Wikifier.createInternalLink(n,o,null,a):Wikifier.createExternalLink(n,o),n.classList.add("link-image")}if(n=jQuery(document.createElement("img")).appendTo(n).get(0),i=Wikifier.helpers.evalPassageId(t.source),"data:"!==i.slice(0,5)&&Story.has(i)){var s=Story.get(i);s.tags.includes("Twine.image")&&(n.setAttribute("data-passage",s.title),i=s.text)}n.src=i,t.hasOwnProperty("title")&&(n.title=Wikifier.helpers.evalText(t.title)),t.hasOwnProperty("align")&&(n.align=t.align)}}),Wikifier.Parser.add({name:"monospacedByBlock",profiles:["block"],match:"^\\{\\{\\{\\n",lookahead:/^\{\{\{\n((?:^[^\n]*\n)+?)(^\}\}\}$\n?)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);if(t&&t.index===e.matchStart){var r=jQuery(document.createElement("pre"));jQuery(document.createElement("code")).text(t[1]).appendTo(r),r.appendTo(e.output),e.nextMatch=this.lookahead.lastIndex}}}),Wikifier.Parser.add({name:"formatByChar",profiles:["core"],match:"''|//|__|\\^\\^|~~|==|\\{\\{\\{",handler:function(e){switch(e.matchText){case"''":e.subWikify(jQuery(document.createElement("strong")).appendTo(e.output).get(0),"''");break;case"//":e.subWikify(jQuery(document.createElement("em")).appendTo(e.output).get(0),"//");break;case"__":e.subWikify(jQuery(document.createElement("u")).appendTo(e.output).get(0),"__");break;case"^^":e.subWikify(jQuery(document.createElement("sup")).appendTo(e.output).get(0),"\\^\\^");break;case"~~":e.subWikify(jQuery(document.createElement("sub")).appendTo(e.output).get(0),"~~");break;case"==":e.subWikify(jQuery(document.createElement("s")).appendTo(e.output).get(0),"==");break;case"{{{":var t=/\{\{\{((?:.|\n)*?)\}\}\}/gm;t.lastIndex=e.matchStart;var r=t.exec(e.source);r&&r.index===e.matchStart&&(jQuery(document.createElement("code")).text(r[1]).appendTo(e.output),e.nextMatch=t.lastIndex)}}}),Wikifier.Parser.add({name:"customStyle",profiles:["core"],match:"@@",terminator:"@@",blockRegExp:/\s*\n/gm,handler:function(e){var t=Wikifier.helpers.inlineCss(e);this.blockRegExp.lastIndex=e.nextMatch;var r=this.blockRegExp.exec(e.source),a=r&&r.index===e.nextMatch,n=jQuery(document.createElement(a?"div":"span")).appendTo(e.output);0===t.classes.length&&""===t.id&&0===Object.keys(t.styles).length?n.addClass("marked"):(t.classes.forEach(function(e){return n.addClass(e)}),""!==t.id&&n.attr("id",t.id),n.css(t.styles)),a?(e.nextMatch+=r[0].length,e.subWikify(n[0],"\\n?"+this.terminator)):e.subWikify(n[0],this.terminator)}}),Wikifier.Parser.add({name:"verbatimText",profiles:["core"],match:'"{3}|<[Nn][Oo][Ww][Ii][Kk][Ii]>',lookahead:/(?:"{3}((?:.|\n)*?)"{3})|(?:<[Nn][Oo][Ww][Ii][Kk][Ii]>((?:.|\n)*?)<\/[Nn][Oo][Ww][Ii][Kk][Ii]>)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createElement("span")).addClass("verbatim").text(t[1]||t[2]).appendTo(e.output))}}),Wikifier.Parser.add({name:"horizontalRule",profiles:["core"],match:"^----+$\\n?|<[Hh][Rr]\\s*/?>\\n?",handler:function(e){jQuery(document.createElement("hr")).appendTo(e.output)}}),Wikifier.Parser.add({name:"emdash",profiles:["core"],match:"--",handler:function(e){jQuery(document.createTextNode("—")).appendTo(e.output)}}),Wikifier.Parser.add({name:"doubleDollarSign",profiles:["core"],match:"\\${2}",handler:function(e){jQuery(document.createTextNode("$")).appendTo(e.output)}}),Wikifier.Parser.add({name:"nakedVariable",profiles:["core"],match:Patterns.variable+"(?:(?:\\."+Patterns.identifier+")|(?:\\[\\d+\\])|(?:\\[\"(?:\\\\.|[^\"\\\\])+\"\\])|(?:\\['(?:\\\\.|[^'\\\\])+'\\])|(?:\\["+Patterns.variable+"\\]))*",handler:function(e){var t=toStringOrDefault(State.getVar(e.matchText),null);null===t?jQuery(document.createTextNode(e.matchText)).appendTo(e.output):new Wikifier((Config.debug?new DebugView(e.output,"variable",e.matchText,e.matchText):e).output,t)}}),Wikifier.Parser.add({name:"heading",profiles:["block"],match:"^!{1,6}",terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.subWikify(jQuery(document.createElement("h"+e.matchLength)).appendTo(e.output).get(0),this.terminator)}}),Wikifier.Parser.add({name:"table",profiles:["block"],match:"^\\|(?:[^\\n]*)\\|(?:[fhck]?)$",lookahead:/^\|([^\n]*)\|([fhck]?)$/gm,rowTerminator:"\\|(?:[cfhk]?)$\\n?",cellPattern:"(?:\\|([^\\n\\|]*)\\|)|(\\|[cfhk]?$\\n?)",cellTerminator:"(?:\\u0020*)\\|",rowTypes:{c:"caption",f:"tfoot",h:"thead","":"tbody"},handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=jQuery(document.createElement("table")).appendTo(e.output).get(0),r=[],a=null,n=null,i=0,o=void 0;e.nextMatch=e.matchStart;do{this.lookahead.lastIndex=e.nextMatch;var s=this.lookahead.exec(e.source);if(o=s&&s.index===e.nextMatch){var u=s[2];"k"===u?(t.className=s[1],e.nextMatch+=s[0].length+1):(u!==a&&(a=u,n=jQuery(document.createElement(this.rowTypes[u])).appendTo(t)),"c"===a?(n.css("caption-side",0===i?"top":"bottom"),e.nextMatch+=1,e.subWikify(n[0],this.rowTerminator)):this.rowHandler(e,jQuery(document.createElement("tr")).appendTo(n).get(0),r),++i)}}while(o)},rowHandler:function(e,t,r){var a=this,n=new RegExp(this.cellPattern,"gm"),i=0,o=1,s=void 0;do{n.lastIndex=e.nextMatch;var u=n.exec(e.source);if(s=u&&u.index===e.nextMatch){if("~"===u[1]){var l=r[i];l&&(++l.rowCount,l.$element.attr("rowspan",l.rowCount).css("vertical-align","middle")),e.nextMatch=u.index+u[0].length-1}else if(">"===u[1])++o,e.nextMatch=u.index+u[0].length-1;else{if(u[2]){e.nextMatch=u.index+u[0].length;break}!function(){++e.nextMatch;for(var n=Wikifier.helpers.inlineCss(e),s=!1,u=!1,l=void 0;" "===e.source.substr(e.nextMatch,1);)s=!0,++e.nextMatch;"!"===e.source.substr(e.nextMatch,1)?(l=jQuery(document.createElement("th")).appendTo(t),++e.nextMatch):l=jQuery(document.createElement("td")).appendTo(t),r[i]={rowCount:1,$element:l},o>1&&(l.attr("colspan",o),o=1),e.subWikify(l[0],a.cellTerminator)," "===e.matchText.substr(e.matchText.length-2,1)&&(u=!0),n.classes.forEach(function(e){return l.addClass(e)}),""!==n.id&&l.attr("id",n.id),s&&u?n.styles["text-align"]="center":s?n.styles["text-align"]="right":u&&(n.styles["text-align"]="left"),l.css(n.styles),e.nextMatch=e.nextMatch-1}()}++i}}while(s)}}),Wikifier.Parser.add({name:"list",profiles:["block"],match:"^(?:(?:\\*+)|(?:#+))",lookahead:/^(?:(\*+)|(#+))/gm,terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.nextMatch=e.matchStart;var t=[e.output],r=null,a=0,n=void 0,i=void 0;do{this.lookahead.lastIndex=e.nextMatch;var o=this.lookahead.exec(e.source);if(n=o&&o.index===e.nextMatch){var s=o[2]?"ol":"ul",u=o[0].length;if(e.nextMatch+=o[0].length,u>a)for(i=a;i<u;++i)t.push(jQuery(document.createElement(s)).appendTo(t[t.length-1]).get(0));else if(u<a)for(i=a;i>u;--i)t.pop();else u===a&&s!==r&&(t.pop(),t.push(jQuery(document.createElement(s)).appendTo(t[t.length-1]).get(0)));a=u,r=s,e.subWikify(jQuery(document.createElement("li")).appendTo(t[t.length-1]).get(0),this.terminator)}}while(n)}}),Wikifier.Parser.add({name:"commentByBlock",profiles:["core"],match:"(?:/(?:%|\\*))|(?:\x3c!--)",lookahead:/(?:\/(%|\*)(?:(?:.|\n)*?)\1\/)|(?:<!--(?:(?:.|\n)*?)-->)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex)}}),Wikifier.Parser.add({name:"lineContinuation",profiles:["core"],match:"\\\\"+Patterns.spaceNoTerminator+"*(?:\\n|$)|(?:^|\\n)"+Patterns.spaceNoTerminator+"*\\\\",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}}),Wikifier.Parser.add({name:"lineBreak",profiles:["core"],match:"\\n|<[Bb][Rr]\\s*/?>",handler:function(e){e.options.nobr||jQuery(document.createElement("br")).appendTo(e.output)}}),Wikifier.Parser.add({name:"htmlCharacterReference",profiles:["core"],match:"(?:(?:&#?[0-9A-Za-z]{2,8};|.)(?:&#?(?:x0*(?:3[0-6][0-9A-Fa-f]|1D[C-Fc-f][0-9A-Fa-f]|20[D-Fd-f][0-9A-Fa-f]|FE2[0-9A-Fa-f])|0*(?:76[89]|7[7-9][0-9]|8[0-7][0-9]|761[6-9]|76[2-7][0-9]|84[0-3][0-9]|844[0-7]|6505[6-9]|6506[0-9]|6507[0-1]));)+|&#?[0-9A-Za-z]{2,8};)",handler:function(e){jQuery(document.createDocumentFragment()).append(e.matchText).appendTo(e.output)}}),Wikifier.Parser.add({name:"xmlProlog",profiles:["core"],match:"<\\?[Xx][Mm][Ll][^>]*\\?>",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}}),Wikifier.Parser.add({name:"verbatimHtml",profiles:["core"],match:"<[Hh][Tt][Mm][Ll]>",lookahead:/<[Hh][Tt][Mm][Ll]>((?:.|\n)*?)<\/[Hh][Tt][Mm][Ll]>/gm,handler:e}),Wikifier.Parser.add({name:"verbatimSvgTag",profiles:["core"],match:"<[Ss][Vv][Gg][^>]*>",lookahead:/(<[Ss][Vv][Gg][^>]*>(?:.|\n)*?<\/[Ss][Vv][Gg]>)/gm,handler:e}),Wikifier.Parser.add({name:"verbatimScriptTag",profiles:["core"],match:"<[Ss][Cc][Rr][Ii][Pp][Tt][^>]*>",lookahead:/(<[Ss][Cc][Rr][Ii][Pp][Tt]*>(?:.|\n)*?<\/[Ss][Cc][Rr][Ii][Pp][Tt]>)/gm,handler:e}),Wikifier.Parser.add({name:"styleTag",profiles:["core"],match:"<[Ss][Tt][Yy][Ll][Ee][^>]*>",lookahead:/(<[Ss][Tt][Yy][Ll][Ee]*>)((?:.|\n)*?)(<\/[Ss][Tt][Yy][Ll][Ee]>)/gm,imageMarkup:new RegExp(Patterns.cssImage,"g"),hasImageMarkup:new RegExp(Patterns.cssImage),handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);if(t&&t.index===e.matchStart){e.nextMatch=this.lookahead.lastIndex;var r=t[2];this.hasImageMarkup.test(r)&&(this.imageMarkup.lastIndex=0,r=r.replace(this.imageMarkup,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var a=Story.get(r);a.tags.includes("Twine.image")&&(r=a.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),jQuery(document.createDocumentFragment()).append(t[1]+r+t[3]).appendTo(e.output)}}}),Wikifier.Parser.add({name:"htmlTag",profiles:["core"],match:"<\\w+(?:\\s+[^\\u0000-\\u001F\\u007F-\\u009F\\s\"'>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*?\"|'[^']*?'|[^\\s\"'=<>`]+))?)*\\s*\\/?>",tagPattern:"<(\\w+)",mediaElements:["audio","img","source","track","video"],nobrElements:["audio","colgroup","datalist","dl","figure","ol","optgroup","picture","select","table","tbody","tfoot","thead","tr","ul","video"],voidElements:["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],handler:function(e){var t=new RegExp(this.tagPattern).exec(e.matchText),r=t&&t[1],a=r&&r.toLowerCase();if(a){var n=this.voidElements.includes(a)||e.matchText.endsWith("/>"),i=this.nobrElements.includes(a),o=void 0,s=void 0;if(!n){o="<\\/"+a+"\\s*>";var u=new RegExp(o,"gim");u.lastIndex=e.matchStart,s=u.exec(e.source)}if(!n&&!s)return throwError(e.output,"cannot find a closing tag for HTML <"+r+">",e.matchText+"…");var l=e.output,c=document.createElement(e.output.tagName),d=void 0;for(c.innerHTML=e.matchText;c.firstChild;)c=c.firstChild;try{this.processAttributeDirectives(c)}catch(t){return throwError(e.output,"<"+a+">: "+t.message,e.matchText+"…")}c.hasAttribute("data-passage")&&(this.processDataAttributes(c,a),Config.debug&&(d=new DebugView(e.output,"html-"+a,a,e.matchText),d.modes({block:"img"===a,nonvoid:s}),l=d.output)),s&&(e.subWikify(c,o,{ignoreTerminatorCase:!0,nobr:i}),d&&jQuery(c).find(".debug.block").length>0&&d.modes({block:!0})),l.appendChild("track"===a?c.cloneNode(!0):c)}},processAttributeDirectives:function(e){[].concat(_toConsumableArray(e.attributes)).forEach(function(t){var r=t.name,a=t.value,n="@"===r[0];if(n||r.startsWith("sc-eval:")){var i=r.slice(n?1:8),o=void 0;try{o=Scripting.evalTwineScript(a)}catch(e){throw new Error('bad evaluation from attribute directive "'+r+'": '+e.message)}try{e.setAttribute(i,o),e.removeAttribute(r)}catch(e){throw new Error('cannot transform attribute directive "'+r+'" into attribute "'+i+'"')}}})},processDataAttributes:function(e,t){var r=e.getAttribute("data-passage");if(null!=r){var a=Wikifier.helpers.evalPassageId(r);if(a!==r&&(r=a,e.setAttribute("data-passage",a)),""!==r)if(this.mediaElements.includes(t)){if("data:"!==r.slice(0,5)&&Story.has(r)){r=Story.get(r);var n=void 0,i=void 0;switch(t){case"audio":case"video":i="Twine."+t;break;case"img":i="Twine.image";break;case"track":i="Twine.vtt";break;case"source":var o=$(e).closest("audio,picture,video");o.length&&(n=o.get(0).tagName.toLowerCase(),i="Twine."+("picture"===n?"image":n))}r.tags.includes(i)&&(e["picture"===n?"srcset":"src"]=r.text.trim())}}else{var s=e.getAttribute("data-setter"),u=void 0;null!=s&&""!==(s=String(s).trim())&&(u=Wikifier.helpers.createShadowSetterCallback(Scripting.parse(s))),Story.has(r)?(e.classList.add("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&e.classList.add("link-visited")):e.classList.add("link-broken"),jQuery(e).ariaClick({one:!0},function(){"function"==typeof u&&u.call(this),Engine.play(r)})}}}})}();var Macro=function(){function e(t,r,n){if(Array.isArray(t))return void t.forEach(function(t){return e(t,r,n)});if(!h.test(t))throw new Error('invalid macro name "'+t+'"');if(a(t))throw new Error("cannot clobber existing macro <<"+t+">>");if(u(t))throw new Error("cannot clobber child tag <<"+t+">> of parent macro"+(1===d[t].length?"":"s")+" <<"+d[t].join(">>, <<")+">>");try{if("object"===(void 0===r?"undefined":_typeof(r)))c[t]=n?clone(r):r;else{if(!a(r))throw new Error("cannot create alias of nonexistent macro <<"+r+">>");c[t]=n?clone(c[r]):c[r]}Object.defineProperty(c,t,{writable:!1}),c[t]._MACRO_API=!0}catch(e){throw"TypeError"===e.name?new Error("cannot clobber protected macro <<"+t+">>"):new Error("unknown error when attempting to add macro <<"+t+">>: ["+e.name+"] "+e.message)}if(c[t].hasOwnProperty("tags"))if(null==c[t].tags)o(t);else{if(!Array.isArray(c[t].tags))throw new Error('bad value for "tags" property of macro <<'+t+">>");o(t,c[t].tags)}}function t(e){if(Array.isArray(e))return void e.forEach(function(e){return t(e)});if(a(e)){c[e].hasOwnProperty("tags")&&s(e);try{Object.defineProperty(c,e,{writable:!0}),delete c[e]}catch(t){throw new Error("unknown error removing macro <<"+e+">>: "+t.message)}}else if(u(e))throw new Error("cannot remove child tag <<"+e+">> of parent macro <<"+d[e]+">>")}function r(){return 0===Object.keys(c).length}function a(e){return c.hasOwnProperty(e)}function n(e){var t=null;return a(e)&&"function"==typeof c[e].handler?t=c[e]:macros.hasOwnProperty(e)&&"function"==typeof macros[e].handler&&(t=macros[e]),t}function i(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"init";Object.keys(c).forEach(function(t){"function"==typeof c[t][e]&&c[t][e](t)}),Object.keys(macros).forEach(function(t){"function"==typeof macros[t][e]&&macros[t][e](t)})}function o(e,t){if(!e)throw new Error("no parent specified");for(var r=["/"+e,"end"+e],n=[].concat(r,Array.isArray(t)?t:[]),i=0;i<n.length;++i){var o=n[i];if(a(o))throw new Error("cannot register tag for an existing macro");u(o)?d[o].includes(e)||(d[o].push(e),d[o].sort()):d[o]=[e]}}function s(e){if(!e)throw new Error("no parent specified");Object.keys(d).forEach(function(t){var r=d[t].indexOf(e);-1!==r&&(1===d[t].length?delete d[t]:d[t].splice(r,1))})}function u(e){return d.hasOwnProperty(e)}function l(e){return u(e)?d[e]:null}var c={},d={},h=new RegExp("^(?:"+Patterns.macroName+")$");return Object.freeze(Object.defineProperties({},{add:{value:e},delete:{value:t},isEmpty:{value:r},has:{value:a},get:{value:n},init:{value:i},tags:{value:Object.freeze(Object.defineProperties({},{register:{value:o},unregister:{value:s},has:{value:u},get:{value:l}}))},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),MacroContext=function(){return function(){function e(t){_classCallCheck(this,e);var r=Object.assign({parent:null,macro:null,name:"",args:null,payload:null,parser:null,source:""},t);if(null===r.macro||""===r.name||null===r.parser)throw new TypeError("context object missing required properties");Object.defineProperties(this,{self:{value:r.macro},name:{value:r.name},args:{value:r.args},payload:{value:r.payload},source:{value:r.source},parent:{value:r.parent},parser:{value:r.parser},_output:{value:r.parser.output},_shadows:{writable:!0,value:null},_debugView:{writable:!0,value:null},_debugViewEnabled:{writable:!0,value:Config.debug}})}return _createClass(e,[{key:"contextHas",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return!0;return!1}},{key:"contextSelect",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return t;return null}},{key:"contextSelectAll",value:function(e){for(var t=[],r=this;null!==(r=r.parent);)e(r)&&t.push(r);return t}},{key:"addShadow",value:function(){var e=this;this._shadows||(this._shadows=new Set);for(var t=new RegExp("^"+Patterns.variable+"$"),r=arguments.length,a=Array(r),n=0;n<r;n++)a[n]=arguments[n];a.flatten().forEach(function(r){if("string"!=typeof r)throw new TypeError("variable name must be a string; type: "+(void 0===r?"undefined":_typeof(r)));if(!t.test(r))throw new Error('invalid variable name "'+r+'"');e._shadows.add(r)})}},{key:"createShadowWrapper",value:function(e,t,r){var a=this,n=void 0;return"function"==typeof e&&(n={},this.shadowView.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;n[e]=r[t]})),function(){for(var i=arguments.length,o=Array(i),s=0;s<i;s++)o[s]=arguments[s];if("function"==typeof r&&r.apply(this,o),"function"==typeof e){var u=Object.keys(n),l=u.length>0?{}:null,c=Wikifier.Parser.get("macro"),d=void 0;try{u.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;r.hasOwnProperty(t)&&(l[t]=r[t]),r[t]=n[e]}),d=c.context,c.context=a,e.apply(this,o)}finally{d!==undefined&&(c.context=d),u.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;n[e]=r[t],l.hasOwnProperty(t)?r[t]=l[t]:delete r[t]})}}"function"==typeof t&&t.apply(this,o)}}},{key:"createDebugView",value:function(e,t){return this._debugView=new DebugView(this._output,"macro",e||this.name,t||this.source),null!==this.payload&&this.payload.length>0&&this._debugView.modes({nonvoid:!0}),this._debugViewEnabled=!0,this._debugView}},{key:"removeDebugView",value:function(){null!==this._debugView&&(this._debugView.remove(),this._debugView=null),this._debugViewEnabled=!1}},{key:"error",value:function(e,t){return throwError(this._output,"<<"+this.name+">>: "+e,t||this.source)}},{key:"output",get:function(){return this._debugViewEnabled?this.debugView.output:this._output}},{key:"shadows",get:function(){return[].concat(_toConsumableArray(this._shadows))}},{key:"shadowView",get:function(){var e=new Set;return this.contextSelectAll(function(e){return e._shadows}).forEach(function(t){return t._shadows.forEach(function(t){return e.add(t)})}),[].concat(_toConsumableArray(e))}},{key:"debugView",get:function(){return this._debugViewEnabled?null!==this._debugView?this._debugView:this.createDebugView():null}}]),e}()}();!function(){if(Macro.add("capture",{skipArgs:!0,tags:null,handler:function(){if(0===this.args.raw.length)return this.error("no story/temporary variable list specified");var e={};try{for(var t=new RegExp("("+Patterns.variable+")","g"),r=void 0;null!==(r=t.exec(this.args.raw));){var a=r[1],n=a.slice(1),i="$"===a[0]?State.variables:State.temporary;i.hasOwnProperty(n)&&(e[n]=i[n]),this.addShadow(a)}new Wikifier(this.output,this.payload[0].contents)}finally{this.shadows.forEach(function(t){var r=t.slice(1),a="$"===t[0]?State.variables:State.temporary;e.hasOwnProperty(r)?a[r]=e[r]:delete a[r]})}}}),Macro.add("set",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("unset",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story/temporary variable list specified");for(var e=new RegExp("State\\.(variables|temporary)\\.("+Patterns.identifier+")","g"),t=void 0;null!==(t=e.exec(this.args.full));){var r=State[t[1]],a=t[2];r.hasOwnProperty(a)&&delete r[a]}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("remember",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}for(var e=storage.get("remember")||{},t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0;null!==(r=t.exec(this.args.full));){var a=r[1];e[a]=State.variables[a]}if(!storage.set("remember",e))return this.error("unknown error, cannot remember: "+this.args.raw);Config.debug&&this.debugView.modes({hidden:!0})},init:function(){var e=storage.get("remember");e&&Object.keys(e).forEach(function(t){return State.variables[t]=e[t]})}}),Macro.add("forget",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story variable list specified");for(var e=storage.get("remember"),t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0,a=!1;null!==(r=t.exec(this.args.full));){var n=r[1];State.variables.hasOwnProperty(n)&&delete State.variables[n],e&&e.hasOwnProperty(n)&&(a=!0,delete e[n])}if(a&&!storage.set("remember",e))return this.error("unknown error, cannot update remember store");Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("run","set"),Macro.add("script",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();try{Scripting.evalJavaScript(this.payload[0].contents,e),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e),this.source+this.payload[0].contents+"<</"+this.name+">>")}e.hasChildNodes()&&this.output.appendChild(e)}}),Macro.add("include",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');Config.debug&&this.debugView.modes({block:!0}),e=Story.get(e);var t=void 0;t=this.args[1]?jQuery(document.createElement(this.args[1])).addClass(e.domId+" macro-"+this.name).attr("data-passage",e.title).appendTo(this.output):jQuery(this.output),t.wiki(e.processText())}}),Macro.add("nobr",{skipArgs:!0,tags:null,handler:function(){new Wikifier(this.output,this.payload[0].contents.replace(/^\n+|\n+$/g,"").replace(/\n+/g," "))}}),Macro.add(["print","=","-"],{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{var e=toStringOrDefault(Scripting.evalJavaScript(this.args.full),null);null!==e&&new Wikifier(this.output,"-"===this.name?Util.escape(e):e)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}}}),Macro.add("silently",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();if(new Wikifier(e,this.payload[0].contents.trim()),Config.debug)this.debugView.modes({hidden:!0}),this.output.appendChild(e);else{var t=[].concat(_toConsumableArray(e.querySelectorAll(".error"))).map(function(e){return e.textContent});if(t.length>0)return this.error("error"+(1===t.length?"":"s")+" within contents ("+t.join("; ")+")",this.source+this.payload[0].contents+"<</"+this.name+">>")}}}),Macro.add("display","include"),Macro.add("if",{skipArgs:!0,tags:["elseif","else"],handler:function(){var e=void 0;try{var t=this.payload.length;for(e=0;e<t;++e)switch(this.payload[e].name){case"else":if(this.payload[e].args.raw.length>0)return/^\s*if\b/i.test(this.payload[e].args.raw)?this.error('whitespace is not allowed between the "else" and "if" in <<elseif>> clause'+(e>0?" (#"+e+")":"")):this.error("<<else>> does not accept a conditional expression (perhaps you meant to use <<elseif>>), invalid: "+this.payload[e].args.raw);if(e+1!==t)return this.error("<<else>> must be the final clause");break;default:if(0===this.payload[e].args.full.length)return this.error("no conditional expression specified for <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":""));if(Config.macros.ifAssignmentError&&/[^!=&^|<>*\/%+-]=[^=]/.test(this.payload[e].args.full))return this.error("assignment operator found within <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":"")+" (perhaps you meant to use an equality operator: ==, ===, eq, is), invalid: "+this.payload[e].args.raw)}var r=Scripting.evalJavaScript,a=!1;for(e=0;e<t;++e){if(Config.debug&&this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1}),"else"===this.payload[e].name||r(this.payload[e].args.full)){a=!0,new Wikifier(this.output,this.payload[e].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++e;e<t;++e)this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1,hidden:!0,invalid:!0});this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!a,invalid:!a})}}catch(t){return this.error("bad conditional expression in <<"+(0===e?"if":"elseif")+">> clause"+(e>0?" (#"+e+")":"")+": "+("object"===(void 0===t?"undefined":_typeof(t))?t.message:t))}}}),Macro.add("switch",{skipArg0:!0,tags:["case","default"],handler:function(){if(0===this.args.full.length)return this.error("no expression specified");var e=this.payload.length;if(1===e)return this.error("no cases specified");var t=void 0;for(t=1;t<e;++t)switch(this.payload[t].name){case"default":if(this.payload[t].args.length>0)return this.error("<<default>> does not accept values, invalid: "+this.payload[t].args.raw);if(t+1!==e)return this.error("<<default>> must be the final case");break;default:if(0===this.payload[t].args.length)return this.error("no value(s) specified for <<"+this.payload[t].name+">> (#"+t+")")}var r=void 0;try{r=Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}var a=this.debugView,n=!1;for(Config.debug&&a.modes({nonvoid:!1,hidden:!0}),t=1;t<e;++t){if(Config.debug&&this.createDebugView(this.payload[t].name,this.payload[t].source).modes({nonvoid:!1}),"default"===this.payload[t].name||this.payload[t].args.some(function(e){return e===r})){n=!0,new Wikifier(this.output,this.payload[t].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++t;t<e;++t)this.createDebugView(this.payload[t].name,this.payload[t].source).modes({nonvoid:!1,hidden:!0,invalid:!0});a.modes({nonvoid:!1,hidden:!0,invalid:!n}),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0,invalid:!n})}}}),Macro.add("for",{skipArgs:!0,tags:null,_hasRangeRe:new RegExp("^\\S.*?\\s+range\\s+\\S.*?$"),_rangeRe:new RegExp("^(?:State\\.(variables|temporary)\\.("+Patterns.identifier+")\\s*,\\s*)?State\\.(variables|temporary)\\.("+Patterns.identifier+")\\s+range\\s+(\\S.*?)$"),_3PartRe:/^([^;]*?)\s*;\s*([^;]*?)\s*;\s*([^;]*?)$/,handler:function(){var e=this.args.full.trim(),t=this.payload[0].contents.replace(/\n$/,"");if(0===e.length)this.self._handleFor.call(this,t,null,!0,null);else if(this.self._hasRangeRe.test(e)){var r=e.match(this.self._rangeRe);if(null===r)return this.error("invalid range form syntax, format: [index ,] value range collection");this.self._handleForRange.call(this,t,{type:r[1],name:r[2]},{type:r[3],name:r[4]},r[5])}else{var a=void 0,n=void 0,i=void 0;if(-1===e.indexOf(";")){if(/^\S+\s+in\s+\S+/i.test(e))return this.error("invalid syntax, for…in is not supported; see: for…range");if(/^\S+\s+of\s+\S+/i.test(e))return this.error("invalid syntax, for…of is not supported; see: for…range");n=e}else{var o=e.match(this.self._3PartRe);if(null===o)return this.error("invalid 3-part conditional form syntax, format: [init] ; [condition] ; [post]");a=o[1],n=o[2].trim(),i=o[3],0===n.length&&(n=!0)}this.self._handleFor.call(this,t,a,n,i)}},_handleFor:function(e,t,r,a){var n=Scripting.evalJavaScript,i=!0,o=Config.macros.maxLoopIterations;Config.debug&&this.debugView.modes({block:!0});try{if(TempState.break=null,t)try{n(t)}catch(e){return this.error("bad init expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}for(;n(r);){if(--o<0)return this.error("exceeded configured maximum loop iterations ("+Config.macros.maxLoopIterations+")");if(new Wikifier(this.output,i?e.replace(/^\n/,""):e),i&&(i=!1),null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}if(a)try{n(a)}catch(e){return this.error("bad post expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}}}catch(e){return this.error("bad conditional expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}finally{TempState.break=null}},_handleForRange:function(e,t,r,a){var n=!0,i=void 0;try{i=this.self._toRangeList(a)}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});try{TempState.break=null;for(var o=0;o<i.length;++o)if(t.name&&(State[t.type][t.name]=i[o][0]),State[r.type][r.name]=i[o][1],new Wikifier(this.output,n?e.replace(/^\n/,""):e),n&&(n=!1),
-null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}}catch(e){return this.error("object"===(void 0===e?"undefined":_typeof(e))?e.message:e)}finally{TempState.break=null}},_toRangeList:function(e){var t=Scripting.evalJavaScript,r=void 0;try{r=t("{"===e[0]?"("+e+")":e)}catch(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("bad range expression: "+e);throw e.message="bad range expression: "+e.message,e}var a=void 0;switch(void 0===r?"undefined":_typeof(r)){case"string":a=[];for(var n=0;n<r.length;){var i=Util.charAndPosAt(r,n);a.push([n,i.char]),n=1+i.end}break;case"object":if(Array.isArray(r))a=r.map(function(e,t){return[t,e]});else if(r instanceof Set)a=[].concat(_toConsumableArray(r)).map(function(e,t){return[t,e]});else if(r instanceof Map)a=[].concat(_toConsumableArray(r.entries()));else{if("Object"!==Util.toStringTag(r))throw new Error("unsupported range expression type: "+Util.toStringTag(r));a=Object.keys(r).map(function(e){return[e,r[e]]})}break;default:throw new Error("unsupported range expression type: "+(void 0===r?"undefined":_typeof(r)))}return a}}),Macro.add(["break","continue"],{skipArgs:!0,handler:function(){if(!this.contextHas(function(e){return"for"===e.name}))return this.error("must only be used in conjunction with its parent macro <<for>>");TempState.break="continue"===this.name?1:2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add(["button","link"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no "+("button"===this.name?"button":"link")+" text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("button"===this.name?"button":"a")),r=void 0;if("object"===_typeof(this.args[0]))if(this.args[0].isImage){var a=jQuery(document.createElement("img")).attr("src",this.args[0].source).appendTo(t);this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(r=this.args[0].link),r=this.args[0].link}else t.append(document.createTextNode(this.args[0].text)),r=this.args[0].link;else t.wikiWithOptions({profile:"core"},this.args[0]),r=this.args.length>1?this.args[1]:undefined;null!=r?(t.attr("data-passage",r),Story.has(r)?(t.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&t.addClass("link-visited")):t.addClass("link-broken")):t.addClass("link-internal"),t.addClass("macro-"+this.name).ariaClick({namespace:".macros",one:null!=r},this.createShadowWrapper(""!==this.payload[0].contents?function(){return Wikifier.wikifyEval(e.payload[0].contents.trim())}:null,null!=r?function(){return Engine.play(r)}:null)).appendTo(this.output)}}),Macro.add("checkbox",{handler:function(){if(this.args.length<3){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("unchecked value"),this.args.length<3&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),a=this.args[1],n=this.args[2],i=document.createElement("input");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"checkbox",tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.checked?n:a)}).appendTo(this.output),this.args.length>3&&"checked"===this.args[3]?(i.checked=!0,State.setVar(t,n)):State.setVar(t,a)}}),Macro.add(["linkappend","linkprepend","linkreplace"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no link text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("a")),r=jQuery(document.createElement("span")),a=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]);t.wikiWithOptions({profile:"core"},this.args[0]).addClass("link-internal macro-"+this.name).ariaClick({namespace:".macros",one:!0},this.createShadowWrapper(function(){if("linkreplace"===e.name?t.remove():t.wrap('<span class="macro-'+e.name+'"></span>').replaceWith(function(){return t.html()}),""!==e.payload[0].contents){var n=document.createDocumentFragment();new Wikifier(n,e.payload[0].contents),r.append(n)}a&&setTimeout(function(){return r.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)})).appendTo(this.output),r.addClass("macro-"+this.name+"-insert"),a&&r.addClass("macro-"+this.name+"-in"),"linkprepend"===this.name?r.insertBefore(t):r.insertAfter(t)}}),Macro.add("radiobutton",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),a=this.args[1],n=document.createElement("input");TempState.hasOwnProperty(this.name)||(TempState[this.name]={}),TempState[this.name].hasOwnProperty(r)||(TempState[this.name][r]=0),jQuery(n).attr({id:this.name+"-"+r+"-"+TempState[this.name][r]++,name:this.name+"-"+r,type:"radio",tabindex:0}).addClass("macro-"+this.name).on("change",function(){this.checked&&State.setVar(t,a)}).appendTo(this.output),this.args.length>2&&"checked"===this.args[2]&&(n.checked=!0,State.setVar(t,a))}}),Macro.add("textarea",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),a=this.args[1],n="autofocus"===this.args[2],i=document.createElement("textarea");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,rows:4,tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.value)}).appendTo(this.output),State.setVar(t,a),i.textContent=a,n&&(i.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+i.id]=function(e){delete postdisplay[e],setTimeout(function(){return i.focus()},Engine.minDomActionDelay)})}}),Macro.add("textbox",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),a=this.args[1],n=document.createElement("input"),i=!1,o=void 0;this.args.length>3?(o=this.args[2],i="autofocus"===this.args[3]):this.args.length>2&&("autofocus"===this.args[2]?i=!0:o=this.args[2]),"object"===(void 0===o?"undefined":_typeof(o))&&(o=o.link),jQuery(n).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"text",tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.value)}).on("keypress",function(e){13===e.which&&(e.preventDefault(),State.setVar(t,this.value),null!=o&&Engine.play(o))}).appendTo(this.output),State.setVar(t,a),n.value=a,i&&(n.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+n.id]=function(e){delete postdisplay[e],setTimeout(function(){return n.focus()},Engine.minDomActionDelay)})}}),Macro.add("click","link"),Macro.add("actions",{handler:function(){for(var e=jQuery(document.createElement("ul")).addClass(this.name).appendTo(this.output),t=0;t<this.args.length;++t){var r=void 0,a=void 0,n=void 0,i=void 0;"object"===_typeof(this.args[t])?this.args[t].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[t].source),this.args[t].hasOwnProperty("passage")&&n.attr("data-passage",this.args[t].passage),this.args[t].hasOwnProperty("title")&&n.attr("title",this.args[t].title),this.args[t].hasOwnProperty("align")&&n.attr("align",this.args[t].align),r=this.args[t].link,i=this.args[t].setFn):(a=this.args[t].text,r=this.args[t].link,i=this.args[t].setFn):a=r=this.args[t],State.variables.hasOwnProperty("#actions")&&State.variables["#actions"].hasOwnProperty(r)&&State.variables["#actions"][r]||jQuery(Wikifier.createInternalLink(jQuery(document.createElement("li")).appendTo(e),r,null,function(e,t){return function(){State.variables.hasOwnProperty("#actions")||(State.variables["#actions"]={}),State.variables["#actions"][e]=!0,"function"==typeof t&&t()}}(r,i))).addClass("macro-"+this.name).append(n||document.createTextNode(a))}}}),Macro.add(["back","return"],{handler:function(){if(this.args.length>1)return this.error("too many arguments specified, check the documentation for details");var e=-1,t=void 0,r=void 0,a=void 0;if(1===this.args.length&&("object"===_typeof(this.args[0])?this.args[0].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(t=this.args[0].link)):1===this.args[0].count?t=this.args[0].link:(r=this.args[0].text,t=this.args[0].link):1===this.args.length&&(r=this.args[0])),null==t){for(var n=State.length-2;n>=0;--n)if(State.history[n].title!==State.passage){e=n,t=State.history[n].title;break}if(null==t&&"return"===this.name)for(var i=State.expired.length-1;i>=0;--i)if(State.expired[i]!==State.passage){t=State.expired[i];break}}else{if(!Story.has(t))return this.error('passage "'+t+'" does not exist');if("back"===this.name){for(var o=State.length-2;o>=0;--o)if(State.history[o].title===t){e=o;break}if(-1===e)return this.error('cannot find passage "'+t+'" in the current story history')}}if(null==t)return this.error("cannot find passage");var s=void 0;s="back"!==this.name||-1!==e?jQuery(document.createElement("a")).addClass("link-internal").ariaClick({one:!0},"return"===this.name?function(){return Engine.play(t)}:function(){return Engine.goTo(e)}):jQuery(document.createElement("span")).addClass("link-disabled"),s.addClass("macro-"+this.name).append(a||document.createTextNode(r||L10n.get("macro"+this.name.toUpperFirst()+"Text"))).appendTo(this.output)}}),Macro.add("choice",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=State.passage,t=void 0,r=void 0,a=void 0,n=void 0;if(1===this.args.length?"object"===_typeof(this.args[0])?this.args[0].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),t=this.args[0].link,n=this.args[0].setFn):(r=this.args[0].text,t=this.args[0].link,n=this.args[0].setFn):r=t=this.args[0]:(t=this.args[0],r=this.args[1]),State.variables.hasOwnProperty("#choice")&&State.variables["#choice"].hasOwnProperty(e)&&State.variables["#choice"][e])return void jQuery(document.createElement("span")).addClass("link-disabled macro-"+this.name).attr("tabindex",-1).append(a||document.createTextNode(r)).appendTo(this.output);jQuery(Wikifier.createInternalLink(this.output,t,null,function(){State.variables.hasOwnProperty("#choice")||(State.variables["#choice"]={}),State.variables["#choice"][e]=!0,"function"==typeof n&&n()})).addClass("macro-"+this.name).append(a||document.createTextNode(r))}}),Macro.add(["addclass","toggleclass"],{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("selector"),this.args.length<2&&e.push("class names"),this.error("no "+e.join(" or ")+" specified")}var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');switch(this.name){case"addclass":t.addClass(this.args[1].trim());break;case"toggleclass":t.toggleClass(this.args[1].trim())}}}),Macro.add("removeclass",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');this.args.length>1?e.removeClass(this.args[1].trim()):e.removeClass()}}),Macro.add("copy",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');jQuery(this.output).append(e.html())}}),Macro.add(["append","prepend","replace"],{tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no selector specified");var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');if(""!==this.payload[0].contents){var r=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),a=void 0;switch(r?(a=jQuery(document.createElement("span")),a.addClass("macro-"+this.name+"-insert macro-"+this.name+"-in"),setTimeout(function(){return a.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)):a=jQuery(document.createDocumentFragment()),a.wiki(this.payload[0].contents),this.name){case"replace":t.empty();case"append":t.append(a);break;case"prepend":t.prepend(a)}}else"replace"===this.name&&t.empty()}}),Macro.add("remove",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');e.remove()}}),Has.audio){var e=Object.freeze([":not",":all",":looped",":muted",":paused",":playing"]);Macro.add("audio",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track or group IDs"),this.args.length<2&&e.push("actions"),this.error("no "+e.join(" or ")+" specified")}var t=Macro.get("cacheaudio").tracks,r=[];try{var a=function e(r){var a=r.id,o=void 0;switch(a){case":all":o=n;break;case":looped":o=n.filter(function(e){return t[e].isLooped()});break;case":muted":o=n.filter(function(e){return t[e].isMuted()});break;case":paused":o=n.filter(function(e){return t[e].isPaused()});break;case":playing":o=n.filter(function(e){return t[e].isPlaying()});break;default:o=":"===a[0]?i[a]:[a]}if(r.hasOwnProperty("not")){var s=r.not.map(function(t){return e(t)}).flatten();o=o.filter(function(e){return!s.includes(e)})}return o},n=Object.freeze(Object.keys(t)),i=Macro.get("cacheaudio").groups;this.self.parseIds(String(this.args[0]).trim()).forEach(function(e){r.push.apply(r,_toConsumableArray(a(e)))}),r.forEach(function(e){if(!t.hasOwnProperty(e))throw new Error('track "'+e+'" does not exist')})}catch(e){return this.error(e.message)}for(var o=this.args.slice(1),s=void 0,u=void 0,l=void 0,c=void 0,d=void 0,h=void 0,f=5,p=void 0,g=void 0;o.length>0;){var m=o.shift();switch(m){case"play":case"pause":case"stop":s=m;break;case"fadein":s="fade",h=1;break;case"fadeout":s="fade",h=0;break;case"fadeto":if(0===o.length)return this.error("fadeto missing required level value");if(s="fade",g=o.shift(),h=Number.parseFloat(g),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeto: "+g);break;case"fadeoverto":if(o.length<2){var v=[];return o.length<1&&v.push("seconds"),o.length<2&&v.push("level"),this.error("fadeoverto missing required "+v.join(" and ")+" value"+(v.length>1?"s":""))}if(s="fade",g=o.shift(),f=Number.parseFloat(g),Number.isNaN(f)||!Number.isFinite(f))return this.error("cannot parse fadeoverto: "+g);if(g=o.shift(),h=Number.parseFloat(g),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeoverto: "+g);break;case"volume":if(0===o.length)return this.error("volume missing required level value");if(g=o.shift(),u=Number.parseFloat(g),Number.isNaN(u)||!Number.isFinite(u))return this.error("cannot parse volume: "+g);break;case"mute":case"unmute":l="mute"===m;break;case"time":if(0===o.length)return this.error("time missing required seconds value");if(g=o.shift(),c=Number.parseFloat(g),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse time: "+g);break;case"loop":case"unloop":d="loop"===m;break;case"goto":if(0===o.length)return this.error("goto missing required passage title");if(g=o.shift(),p="object"===(void 0===g?"undefined":_typeof(g))?g.link:g,!Story.has(p))return this.error('passage "'+p+'" does not exist');break;default:return this.error("unknown action: "+m)}}try{r.forEach(function(e){var r=t[e];switch(null!=u&&(r.volume=u),null!=c&&(r.time=c),null!=l&&(r.mute=l),null!=d&&(r.loop=d),null!=p&&r.one("end",function(){return Engine.play(p)}),s){case"play":r.play();break;case"pause":r.pause();break;case"stop":r.stop();break;case"fade":r.fadeWithDuration(f,h)}}),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing audio action: "+e.message)}},parseIds:function(e){for(var t=[],r=/:?[^\s:()]+/g,a=void 0;null!==(a=r.exec(e));){var n=a[0];if(":not"===n){if(0===t.length)throw new Error('invalid negation: no group ID preceded ":not()"');var i=t[t.length-1];if(":"!==i.id[0])throw new Error('invalid negation of track "'+i.id+'": only groups may be negated with ":not()"');var o=function(e,t){var r=/\S/g,a=/[()]/g,n=void 0;if(r.lastIndex=t,null===(n=r.exec(e))||"("!==n[0])throw new Error('invalid ":not()" syntax: missing parentheticals');a.lastIndex=r.lastIndex;for(var i=r.lastIndex,o={str:"",nextMatch:-1},s=1;null!==(n=a.exec(e));)if("("===n[0]?++s:--s,s<1){o.nextMatch=a.lastIndex,o.str=e.slice(i,o.nextMatch-1);break}return o}(e,r.lastIndex);if(-1===o.nextMatch)throw new Error('unknown error parsing ":not()"');r.lastIndex=o.nextMatch,i.not=this.parseIds(o.str)}else t.push({id:n})}return t}}),Macro.add("cacheaudio",{tracks:{},groups:{},handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track ID"),this.args.length<2&&e.push("sources"),this.error("no "+e.join(" or ")+" specified")}var t=String(this.args[0]).trim();if(/^:|\s/.test(t))return this.error('invalid track ID "'+t+'": track IDs may not start with a colon or contain whitespace');var r=/^format:\s*([\w-]+)\s*;\s*(\S.*)$/i,a=void 0;try{a=SimpleAudio.create(this.args.slice(1).map(function(e){if("data:"!==e.slice(0,5)&&Story.has(e)){var t=Story.get(e);if(t.tags.includes("Twine.audio"))return t.text.trim()}var a=r.exec(e);return null===a?e:{format:a[1],src:a[2]}}))}catch(e){return this.error('error during track initialization for "'+t+'": '+e.message)}if(Config.debug&&!a.hasSource())return this.error('no supported audio sources found for "'+t+'"');var n=this.self.tracks;n.hasOwnProperty(t)&&n[t].destroy(),n[t]=a,Config.debug&&this.createDebugView()}}),Macro.add("createaudiogroup",{tags:["track"],handler:function(){if(0===this.args.length)return this.error("no group ID specified");var t=String(this.args[0]).trim();if(/^[^:]|\s/.test(t))return this.error('invalid group ID "'+t+'": group IDs must start with a colon and may not contain whitespace');if(e.includes(t))return this.error('cannot clobber special group ID "'+t+'"');if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var r=Macro.get("cacheaudio").tracks,a=[],n=1,i=this.payload.length;n<i;++n){if(this.payload[n].args.length<1)return this.error("no track ID specified");var o=String(this.payload[n].args[0]).trim();if(!r.hasOwnProperty(o))return this.error('track "'+o+'" does not exist');a.push(o),Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0})}var s=Macro.get("cacheaudio").groups;s.hasOwnProperty(t)&&delete s[t],s[t]=a,this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("createplaylist",{tags:["track"],lists:{},handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("playlist");if(null!==e.from&&"createplaylist"!==e.from)return this.error("a playlist has already been defined with <<setplaylist>>");var t=Macro.get("cacheaudio").tracks,r=String(this.args[0]).trim();if(/^:|\s/.test(r))return this.error('invalid list ID "'+r+'": list IDs may not start with a colon or contain whitespace');if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var a=SimpleAudio.createList(),n=1,i=this.payload.length;n<i;++n){if(this.payload[n].args.length<2){var o=[];return this.payload[n].args.length<1&&o.push("track ID"),this.payload[n].args.length<2&&o.push("actions"),this.error("no "+o.join(" or ")+" specified")}var s=String(this.payload[n].args[0]).trim();if(!t.hasOwnProperty(s))return this.error('track "'+s+'" does not exist');for(var u=this.payload[n].args.slice(1),l=!1,c=void 0;u.length>0;){var d=u.shift(),h=void 0;switch(d){case"copy":l=!0;break;case"rate":u.length>0&&u.shift();break;case"volume":if(0===u.length)return this.error("volume missing required level value");if(h=u.shift(),c=Number.parseFloat(h),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse volume: "+h);break;default:return this.error("unknown action: "+d)}}var f=t[s];a.add({copy:l,track:f,volume:null!=c?c:f.volume}),Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0})}var p=this.self.lists;p.hasOwnProperty(r)&&p[r].destroy(),p[r]=a,null===e.from&&(e.from="createplaylist"),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("masteraudio",{handler:function(){if(0===this.args.length)return this.error("no actions specified");for(var e=this.args.slice(0),t=!1,r=void 0,a=void 0;e.length>0;){var n=e.shift(),i=void 0;switch(n){case"stop":t=!0;break;case"mute":case"unmute":r="mute"===n;break;case"volume":if(0===e.length)return this.error("volume missing required level value");if(i=e.shift(),a=Number.parseFloat(i),Number.isNaN(a)||!Number.isFinite(a))return this.error("cannot parse volume: "+i);break;default:return this.error("unknown action: "+n)}}try{null!=r&&(SimpleAudio.mute=r),null!=a&&(SimpleAudio.volume=a),t&&SimpleAudio.stop(),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing master audio action: "+e.message)}}}),Macro.add("playlist",{from:null,handler:function(){var e=this.self.from;if(null===e)return this.error("no playlists have been created");var t=void 0,r=void 0;if("createplaylist"===e){if(this.args.length<2){var a=[];return this.args.length<1&&a.push("list ID"),this.args.length<2&&a.push("actions"),this.error("no "+a.join(" or ")+" specified")}var n=Macro.get("createplaylist").lists,i=String(this.args[0]).trim();if(!n.hasOwnProperty(i))return this.error('playlist "'+i+'" does not exist');t=n[i],r=this.args.slice(1)}else{if(0===this.args.length)return this.error("no actions specified");t=Macro.get("setplaylist").list,r=this.args.slice(0)}for(var o=void 0,s=void 0,u=void 0,l=void 0,c=void 0,d=void 0,h=5,f=void 0;r.length>0;){var p=r.shift();switch(p){case"play":case"pause":case"stop":case"skip":o=p;break;case"fadein":o="fade",d=1;break;case"fadeout":o="fade",d=0;break;case"fadeto":if(0===r.length)return this.error("fadeto missing required level value");if(o="fade",f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeto: "+f);break;case"fadeoverto":if(r.length<2){var g=[];return r.length<1&&g.push("seconds"),r.length<2&&g.push("level"),this.error("fadeoverto missing required "+g.join(" and ")+" value"+(g.length>1?"s":""))}if(o="fade",f=r.shift(),h=Number.parseFloat(f),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeoverto: "+f);if(f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeoverto: "+f);break;case"volume":if(0===r.length)return this.error("volume missing required level value");if(f=r.shift(),s=Number.parseFloat(f),Number.isNaN(s)||!Number.isFinite(s))return this.error("cannot parse volume: "+f);break;case"mute":case"unmute":u="mute"===p;break;case"loop":case"unloop":l="loop"===p;break;case"shuffle":case"unshuffle":c="shuffle"===p;break;default:return this.error("unknown action: "+p)}}try{switch(null!=s&&(t.volume=s),null!=u&&(t.mute=u),null!=l&&(t.loop=l),null!=c&&(t.shuffle=c),o){case"play":t.play();break;case"pause":t.pause();break;case"stop":t.stop();break;case"skip":t.skip();break;case"fade":t.fadeWithDuration(h,d)}Config.debug&&this.createDebugView()}catch(e){return this.error("error playing audio: "+e.message)}}}),Macro.add("removeplaylist",{handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("createplaylist").lists,t=String(this.args[0]).trim();if(!e.hasOwnProperty(t))return this.error('playlist "'+t+'" does not exist');e[t].destroy(),delete e[t],Config.debug&&this.createDebugView()}}),Macro.add("waitforaudio",{skipArgs:!0,queue:[],handler:function(){function e(){if(0===t.length)return LoadScreen.unlock(r);var a=t.shift();if(a.hasData())return e();a.one("canplay.waitforaudio error.waitforaudio",function(){jQuery(this).off(".waitforaudio"),e()}).load()}var t=this.self.queue,r=void 0;t.length>0||(this.self.fillQueue(t),t.length>0&&(r=LoadScreen.lock(),e()))},fillQueue:function(e){var t=Macro.get("cacheaudio").tracks;Object.keys(t).forEach(function(r){return e.push(t[r])});var r=Macro.get("createplaylist").lists;if(Object.keys(r).map(function(e){return r[e].tracks}).flatten().filter(function(e){return e.copy}).forEach(function(t){return e.push(t.track)}),Macro.has("setplaylist")){var a=Macro.get("setplaylist").list;null!==a&&a.tracks.forEach(function(t){return e.push(t.track)})}}}),Macro.add("setplaylist",{list:null,handler:function(){if(0===this.args.length)return this.error("no track ID(s) specified");var e=Macro.get("playlist");if(null!==e.from&&"setplaylist"!==e.from)return this.error("playlists have already been defined with <<createplaylist>>");var t=this.self,r=Macro.get("cacheaudio").tracks;null!==t.list&&t.list.destroy(),t.list=SimpleAudio.createList();for(var a=0;a<this.args.length;++a){var n=this.args[a];if(!r.hasOwnProperty(n))return this.error('track "'+n+'" does not exist');t.list.add(r[n])}null===e.from&&(e.from="setplaylist"),Config.debug&&this.createDebugView()}}),Macro.add("stopallaudio",{skipArgs:!0,handler:function(){var e=Macro.get("cacheaudio").tracks;Object.keys(e).forEach(function(t){return e[t].stop()}),Config.debug&&this.createDebugView()}})}else Macro.add(["audio","cacheaudio","createaudiogroup","createplaylist","masteraudio","playlist","removeplaylist","waitforaudio","setplaylist","stopallaudio"],{skipArgs:!0,handler:function(){}});Macro.add("goto",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');setTimeout(function(){return Engine.play(e)},Engine.minDomActionDelay)}}),Macro.add("repeat",{isAsync:!0,tags:null,timers:new Set,handler:function(){var e=this;if(0===this.args.length)return this.error("no time value specified");var t=void 0;try{t=Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0]))}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});var r=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),a=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerInterval(this.createShadowWrapper(function(){var t=document.createDocumentFragment();new Wikifier(t,e.payload[0].contents);var n=a;r&&(n=jQuery(document.createElement("span")).addClass("macro-repeat-insert macro-repeat-in").appendTo(n)),n.append(t),r&&setTimeout(function(){return n.removeClass("macro-repeat-in")},Engine.minDomActionDelay)}),t)},registerInterval:function(e,t){var r=this;if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var a=State.turns,n=this.timers,i=null;i=setInterval(function(){if(a!==State.turns)return clearInterval(i),void n.delete(i);var t=void 0;try{TempState.break=null,TempState.hasOwnProperty("repeatTimerId")&&(t=TempState.repeatTimerId),TempState.repeatTimerId=i,e.call(r)}finally{void 0!==t?TempState.repeatTimerId=t:delete TempState.repeatTimerId,TempState.break=null}},t),n.add(i),prehistory.hasOwnProperty("#repeat-timers-cleanup")||(prehistory["#repeat-timers-cleanup"]=function(e){delete prehistory[e],n.forEach(function(e){return clearInterval(e)}),n.clear()})}}),Macro.add("stop",{skipArgs:!0,handler:function(){if(!TempState.hasOwnProperty("repeatTimerId"))return this.error("must only be used in conjunction with its parent macro <<repeat>>");var e=Macro.get("repeat").timers,t=TempState.repeatTimerId;clearInterval(t),e.delete(t),TempState.break=2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("timed",{isAsync:!0,tags:["next"],timers:new Set,handler:function(){if(0===this.args.length)return this.error("no time value specified in <<timed>>");var e=[];try{e.push({name:this.name,source:this.source,delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0])),content:this.payload[0].contents})}catch(e){return this.error(e.message+" in <<timed>>")}if(this.payload.length>1){var t=void 0;try{var r=void 0;for(t=1,r=this.payload.length;t<r;++t)e.push({name:this.payload[t].name,source:this.payload[t].source,delay:0===this.payload[t].args.length?e[e.length-1].delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.payload[t].args[0])),content:this.payload[t].contents})}catch(e){return this.error(e.message+" in <<next>> (#"+t+")")}}Config.debug&&this.debugView.modes({block:!0});var a=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),n=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerTimeout(this.createShadowWrapper(function(e){var t=document.createDocumentFragment();new Wikifier(t,e.content);var r=n;Config.debug&&"next"===e.name&&(r=jQuery(new DebugView(r[0],"macro",e.name,e.source).output)),a&&(r=jQuery(document.createElement("span")).addClass("macro-timed-insert macro-timed-in").appendTo(r)),r.append(t),a&&setTimeout(function(){return r.removeClass("macro-timed-in")},Engine.minDomActionDelay)}),e)},registerTimeout:function(e,t){if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var r=State.turns,a=this.timers,n=null,i=t.shift(),o=function o(){if(a.delete(n),r===State.turns){var s=i;null!=(i=t.shift())&&(n=setTimeout(o,i.delay),a.add(n)),e.call(this,s)}};n=setTimeout(o,i.delay),a.add(n),prehistory.hasOwnProperty("#timed-timers-cleanup")||(prehistory["#timed-timers-cleanup"]=function(e){delete prehistory[e],a.forEach(function(e){return clearTimeout(e)}),a.clear()})}}),Macro.add("widget",{tags:null,handler:function(){if(0===this.args.length)return this.error("no widget name specified");var e=this.args[0];if(Macro.has(e)){if(!Macro.get(e).isWidget)return this.error('cannot clobber existing macro "'+e+'"');Macro.delete(e)}try{Macro.add(e,{isWidget:!0,handler:function(e){return function(){
-var t=void 0;try{State.variables.hasOwnProperty("args")&&(t=State.variables.args),State.variables.args=[].concat(_toConsumableArray(this.args)),State.variables.args.raw=this.args.raw,State.variables.args.full=this.args.full,this.addShadow("$args");var r=document.createDocumentFragment(),a=[];if(new Wikifier(r,e),Array.from(r.querySelectorAll(".error")).forEach(function(e){a.push(e.textContent)}),0!==a.length)return this.error("error"+(a.length>1?"s":"")+" within widget contents ("+a.join("; ")+")");this.output.appendChild(r)}catch(e){return this.error("cannot execute widget: "+e.message)}finally{void 0!==t?State.variables.args=t:delete State.variables.args}}}(this.payload[0].contents)}),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(t){return this.error('cannot create widget macro "'+e+'": '+t.message)}}})}();var Dialog=function(){function e(){m=function(){var e=void 0;try{var t=document.createElement("p"),r=document.createElement("div");t.style.width="100%",t.style.height="200px",r.style.position="absolute",r.style.left="0px",r.style.top="0px",r.style.width="100px",r.style.height="100px",r.style.visibility="hidden",r.style.overflow="hidden",r.appendChild(t),document.body.appendChild(r);var a=t.offsetWidth;r.style.overflow="auto";var n=t.offsetWidth;a===n&&(n=r.clientWidth),document.body.removeChild(r),e=a-n}catch(e){}return e||17}();var e=jQuery(document.createDocumentFragment()).append('<div id="ui-overlay" class="ui-close"></div><div id="ui-dialog" tabindex="0" role="dialog" aria-labelledby="ui-dialog-title"><div id="ui-dialog-titlebar"><h1 id="ui-dialog-title"></h1><button id="ui-dialog-close" class="ui-close" tabindex="0" aria-label="'+L10n.get("close")+'"></button></div><div id="ui-dialog-body"></div></div>');d=jQuery(e.find("#ui-overlay").get(0)),h=jQuery(e.find("#ui-dialog").get(0)),f=jQuery(e.find("#ui-dialog-title").get(0)),p=jQuery(e.find("#ui-dialog-body").get(0)),e.insertBefore("#store-area")}function t(e){return h.hasClass("open")&&(!e||e.splitOrEmpty(/\s+/).every(function(e){return p.hasClass(e)}))}function r(e,t){return p.empty().removeClass(),null!=t&&p.addClass(t),f.empty().append((null!=e?String(e):"")||" "),p.get(0)}function a(){return p.get(0)}function n(){var e;return(e=p).append.apply(e,arguments),Dialog}function i(){var e;return(e=p).wiki.apply(e,arguments),Dialog}function o(e,t,r,a,n){return jQuery(e).ariaClick(function(e){e.preventDefault(),"function"==typeof r&&r(e),s(t,n),"function"==typeof a&&a(e)})}function s(e,r){var a=jQuery.extend({top:50},e),n=a.top;t()||(g=safeActiveElement()),jQuery(document.documentElement).attr("data-dialog","open"),d.addClass("open"),null!==p[0].querySelector("img")&&p.imagesLoaded().always(function(){return l({data:{top:n}})}),jQuery("body>:not(script,#store-area,#ui-bar,#ui-overlay,#ui-dialog)").attr("tabindex",-3).attr("aria-hidden",!0),jQuery("#ui-bar,#story").find("[tabindex]:not([tabindex^=-])").attr("tabindex",-2).attr("aria-hidden",!0);var i=c(n);return h.css(i).addClass("open").focus(),jQuery(window).on("resize.dialog-resize",null,{top:n},jQuery.throttle(40,l)),Has.mutationObserver?(v=new MutationObserver(function(e){for(var t=0;t<e.length;++t)if("childList"===e[t].type){l({data:{top:n}});break}}),v.observe(p[0],{childList:!0,subtree:!0})):p.on("DOMNodeInserted.dialog-resize DOMNodeRemoved.dialog-resize",null,{top:n},jQuery.throttle(40,l)),jQuery(document).on("click.dialog-close",".ui-close",{closeFn:r},u).on("keypress.dialog-close",".ui-close",function(e){13!==e.which&&32!==e.which||jQuery(this).trigger("click")}),setTimeout(function(){return jQuery.event.trigger(":dialogopen")},Engine.minDomActionDelay),Dialog}function u(e){return jQuery(document).off(".dialog-close"),v?(v.disconnect(),v=null):p.off(".dialog-resize"),jQuery(window).off(".dialog-resize"),h.removeClass("open").css({left:"",right:"",top:"",bottom:""}),jQuery("#ui-bar,#story").find("[tabindex=-2]").removeAttr("aria-hidden").attr("tabindex",0),jQuery("body>[tabindex=-3]").removeAttr("aria-hidden").removeAttr("tabindex"),f.empty(),p.empty().removeClass(),d.removeClass("open"),jQuery(document.documentElement).removeAttr("data-dialog"),null!==g&&(jQuery(g).focus(),g=null),e&&e.data&&"function"==typeof e.data.closeFn&&e.data.closeFn(e),setTimeout(function(){return jQuery.event.trigger(":dialogclose")},Engine.minDomActionDelay),Dialog}function l(e){var t=e&&e.data&&void 0!==e.data.top?e.data.top:50;"block"===h.css("display")&&(h.css({display:"none"}),h.css(jQuery.extend({display:""},c(t))))}function c(e){var t=null!=e?e:50,r=jQuery(window),a={left:"",right:"",top:"",bottom:""};h.css(a);var n=r.width()-h.outerWidth(!0)-1,i=r.height()-h.outerHeight(!0)-1;return n<=32+m&&(i-=m),i<=32+m&&(n-=m),a.left=a.right=n<=32?16:n/2>>0,a.top=i<=32?a.bottom=16:i/2>t?t:a.bottom=i/2>>0,Object.keys(a).forEach(function(e){""!==a[e]&&(a[e]+="px")}),a}var d=null,h=null,f=null,p=null,g=null,m=0,v=null;return Object.freeze(Object.defineProperties({},{init:{value:e},isOpen:{value:t},setup:{value:r},body:{value:a},append:{value:n},wiki:{value:i},addClickHandler:{value:o},open:{value:s},close:{value:u},resize:{value:function(e){return l("object"===(void 0===e?"undefined":_typeof(e))?{data:e}:undefined)}}}))}(),Engine=function(){function e(){jQuery("#init-no-js,#init-lacking").remove(),function(){var e=jQuery(document.createDocumentFragment()),t=Story.has("StoryInterface")&&Story.get("StoryInterface").text.trim();if(t){if(UIBar.destroy(),jQuery(document.head).find("#style-core-display").remove(),e.append(t),0===e.find("#passages").length)throw new Error('no element with ID "passages" found within "StoryInterface" special passage')}else e.append('<div id="story" role="main"><div id="passages"></div></div>');e.insertBefore("#store-area")}(),S=new StyleWrapper(function(){return jQuery(document.createElement("style")).attr({id:"style-aria-outlines",type:"text/css"}).appendTo(document.head).get(0)}()),jQuery(document).on("mousedown.aria-outlines keydown.aria-outlines",function(e){return"keydown"===e.type?m():g()})}function t(){if(Story.has("StoryInit"))try{var e=Wikifier.wikifyEval(Story.get("StoryInit").text);if(Config.debug){var t=new DebugView(document.createDocumentFragment(),"special","StoryInit","StoryInit");t.modes({hidden:!0}),t.append(e),k=t.output}}catch(e){console.error(e),Alert.error("StoryInit",e.message)}if(Config.history.maxStates=Math.max(0,Config.history.maxStates),Number.isSafeInteger(Config.history.maxStates)||(Config.history.maxStates=100),1===Config.history.maxStates&&(Config.history.controls=!1),null==Config.passages.start)throw new Error("starting passage not selected");if(!Story.has(Config.passages.start))throw new Error('starting passage ("'+Config.passages.start+'") not found');if(jQuery(document.documentElement).focus(),State.restore())h();else{var r=!0;switch(_typeof(Config.saves.autoload)){case"boolean":Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!Save.autosave.load());break;case"string":"prompt"===Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!1,UI.buildDialogAutoload(),UI.open());break;case"function":Save.autosave.ok()&&Save.autosave.has()&&Config.saves.autoload()&&(r=!Save.autosave.load())}r&&f(Config.passages.start)}}function r(){LoadScreen.show(),window.scroll(0,0),State.reset(),jQuery.event.trigger(":enginerestart"),window.location.reload()}function a(){return b}function n(){return b===v.Idle}function i(){return b!==v.Idle}function o(){return b===v.Rendering}function s(){return w}function u(e){var t=State.goTo(e);return t&&h(),t}function l(e){var t=State.go(e);return t&&h(),t}function c(){return l(-1)}function d(){return l(1)}function h(){return f(State.passage,!0)}function f(e,t){var r=e;b=v.Playing,TempState={},State.clearTemporary();var a=void 0,n=void 0;if("function"==typeof Config.navigation.override)try{var i=Config.navigation.override(r);i&&(r=i)}catch(e){}var o=Story.get(r);if(jQuery.event.trigger({type:":passageinit",passage:o}),Object.keys(prehistory).forEach(function(e){"function"==typeof prehistory[e]&&prehistory[e].call(this,e)},o),t||State.create(o.title),w=Util.now(),document.body.className&&(document.body.className=""),Object.keys(predisplay).forEach(function(e){"function"==typeof predisplay[e]&&predisplay[e].call(this,e)},o),Story.has("PassageReady"))try{a=Wikifier.wikifyEval(Story.get("PassageReady").text)}catch(e){console.error(e),Alert.error("PassageReady",e.message)}b=v.Rendering;var s=jQuery(o.render()),u=document.getElementById("passages");if(u.hasChildNodes()&&("number"==typeof Config.passages.transitionOut||"string"==typeof Config.passages.transitionOut&&""!==Config.passages.transitionOut&&""!==Config.transitionEndEventName?[].concat(_toConsumableArray(u.childNodes)).forEach(function(e){var t=jQuery(e);if(e.nodeType===Node.ELEMENT_NODE&&t.hasClass("passage")){if(t.hasClass("passage-out"))return;t.attr("id","out-"+t.attr("id")).addClass("passage-out"),"string"==typeof Config.passages.transitionOut?t.on(Config.transitionEndEventName,function(e){e.originalEvent.propertyName===Config.passages.transitionOut&&t.remove()}):setTimeout(function(){return t.remove()},Math.max(y,Config.passages.transitionOut))}else t.remove()}):jQuery(u).empty()),s.addClass("passage-in").appendTo(u),setTimeout(function(){return s.removeClass("passage-in")},y),Config.passages.displayTitles&&o.title!==Config.passages.start&&(document.title=o.title+" | "+Story.title),window.scroll(0,0),b=v.Playing,Story.has("PassageDone"))try{n=Wikifier.wikifyEval(Story.get("PassageDone").text)}catch(e){console.error(e),Alert.error("PassageDone",e.message)}if(jQuery.event.trigger({type:":passagedisplay",passage:o}),Object.keys(postdisplay).forEach(function(e){"function"==typeof postdisplay[e]&&postdisplay[e].call(this,e)},o),Config.ui.updateStoryElements&&UIBar.setStoryElements(),Config.debug){var l=void 0;null!=a&&(l=new DebugView(document.createDocumentFragment(),"special","PassageReady","PassageReady"),l.modes({hidden:!0}),l.append(a),s.prepend(l.output)),null!=n&&(l=new DebugView(document.createDocumentFragment(),"special","PassageDone","PassageDone"),l.modes({hidden:!0}),l.append(n),s.append(l.output)),1===State.turns&&null!=k&&s.prepend(k)}switch(g(),jQuery("#story").find("a[href]:not(.link-external)").addClass("link-external").end().find("a,link,button,input,select,textarea").not("[tabindex]").attr("tabindex",0),_typeof(Config.saves.autosave)){case"boolean":Config.saves.autosave&&Save.autosave.save();break;case"string":o.tags.includes(Config.saves.autosave)&&Save.autosave.save();break;case"object":Array.isArray(Config.saves.autosave)&&o.tags.some(function(e){return Config.saves.autosave.includes(e)})&&Save.autosave.save()}return jQuery.event.trigger({type:":passageend",passage:o}),b=v.Idle,w=Util.now(),s[0]}function p(e,t,r){var a=!1;switch(r){case undefined:break;case"replace":case"back":a=!0;break;default:throw new Error('Engine.display option parameter called with obsolete value "'+r+'"; please notify the developer')}f(e,a)}function g(){S.set("*:focus{outline:none}")}function m(){S.clear()}var v=Util.toEnum({Idle:"idle",Playing:"playing",Rendering:"rendering"}),y=40,b=v.Idle,w=null,k=null,S=null;return Object.freeze(Object.defineProperties({},{States:{value:v},minDomActionDelay:{value:y},init:{value:e},start:{value:t},restart:{value:r},state:{get:a},isIdle:{value:n},isPlaying:{value:i},isRendering:{value:o},lastPlay:{get:s},goTo:{value:u},go:{value:l},backward:{value:c},forward:{value:d},show:{value:h},play:{value:f},display:{value:p}}))}(),Passage=function(){var e=void 0,t=void 0;e=/^(?:debug|nobr|passage|script|stylesheet|widget|twine\..*)$/i;var r=/(?:\\n|\\t|\\s|\\|\r)/g,a=new RegExp(r.source),n=Object.freeze({"\\n":"\n","\\t":"\t","\\s":"\\","\\":"\\","\r":""});return t=function(e){if(null==e)return"";var t=String(e);return t&&a.test(t)?t.replace(r,function(e){return n[e]}):t},function(){function r(t,a){var n=this;_classCallCheck(this,r),Object.defineProperties(this,{title:{value:Util.unescape(t)},element:{value:a||null},tags:{value:Object.freeze(a&&a.hasAttribute("tags")?a.getAttribute("tags").trim().splitOrEmpty(/\s+/).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}):[])},_excerpt:{writable:!0,value:null}}),Object.defineProperties(this,{domId:{value:"passage-"+Util.slugify(this.title)},classes:{value:Object.freeze(0===this.tags.length?[]:function(){return n.tags.filter(function(t){return!e.test(t)}).map(function(e){return Util.slugify(e)})}())}})}return _createClass(r,[{key:"description",value:function(){var e=Config.passages.descriptions;if(null!=e)switch(void 0===e?"undefined":_typeof(e)){case"boolean":if(e)return this.title;break;case"object":if(e instanceof Map&&e.has(this.title))return e.get(this.title);if(e.hasOwnProperty(this.title))return e[this.title];break;case"function":var t=e.call(this);if(t)return t;break;default:throw new TypeError("Config.passages.descriptions must be a boolean, object, or function")}return null===this._excerpt&&(this._excerpt=r.getExcerptFromText(this.text)),this._excerpt}},{key:"processText",value:function(){var e=this.text;return this.tags.includes("Twine.image")?e="[img["+e+"]]":(Config.passages.nobr||this.tags.includes("nobr"))&&(e=e.replace(/^\n+|\n+$/g,"").replace(/\n+/g," ")),e}},{key:"render",value:function(){var e=this,t=this.tags.length>0?this.tags.join(" "):null,a=document.createElement("div");return jQuery(a).attr({id:this.domId,"data-passage":this.title,"data-tags":t}).addClass("passage "+this.className),jQuery(document.body).attr("data-tags",t).addClass(this.className),jQuery(document.documentElement).attr("data-tags",t),jQuery.event.trigger({type:":passagestart",content:a,passage:this}),Object.keys(prerender).forEach(function(t){"function"==typeof prerender[t]&&prerender[t].call(e,a,t)}),Story.has("PassageHeader")&&new Wikifier(a,Story.get("PassageHeader").processText()),new Wikifier(a,this.processText()),Story.has("PassageFooter")&&new Wikifier(a,Story.get("PassageFooter").processText()),jQuery.event.trigger({type:":passagerender",content:a,passage:this}),Object.keys(postrender).forEach(function(t){"function"==typeof postrender[t]&&postrender[t].call(e,a,t)}),this._excerpt=r.getExcerptFromNode(a),a}},{key:"className",get:function(){return this.classes.join(" ")}},{key:"text",get:function(){if(null==this.element){var e=Util.escape(this.title);return'<span class="error" title="'+e+'">'+L10n.get("errorTitle")+": "+L10n.get("errorNonexistentPassage",{passage:e})+"</span>"}return t(this.element.textContent)}}],[{key:"getExcerptFromNode",value:function(e,t){if(!e.hasChildNodes())return"";var r=e.textContent.trim();if(""!==r){var a=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})");r=r.replace(/\s+/g," ").match(a)}return r?r[1]+"…":"…"}},{key:"getExcerptFromText",value:function(e,t){if(""===e)return"";var r=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})"),a=e.replace(/<<.*?>>/g," ").replace(/<.*?>/g," ").trim().replace(/^\s*\|.*\|.*?$/gm,"").replace(/\[[<>]?img\[[^\]]*\]\]/g,"").replace(/\[\[([^|\]]*)(?:|[^\]]*)?\]\]/g,"$1").replace(/^\s*!+(.*?)$/gm,"$1").replace(/'{2}|\/{2}|_{2}|@{2}/g,"").trim().replace(/\s+/g," ").match(r);return a?a[1]+"…":"…"}}]),r}()}(),Save=function(){function e(){if("cookie"===storage.name)return a(),Config.saves.autosave=undefined,Config.saves.slots=0,!1;Config.saves.slots=Math.max(0,Config.saves.slots),Number.isSafeInteger(Config.saves.slots)||(Config.saves.slots=8);var e=r(),t=!1;Array.isArray(e)&&(e={autosave:null,slots:e},t=!0),Config.saves.slots!==e.slots.length&&(Config.saves.slots<e.slots.length?(e.slots.reverse(),e.slots=e.slots.filter(function(e){return!(null===e&&this.count>0)||(--this.count,!1)},{count:e.slots.length-Config.saves.slots}),e.slots.reverse()):Config.saves.slots>e.slots.length&&x(e.slots,Config.saves.slots-e.slots.length),t=!0),O(e.autosave)&&(t=!0);for(var n=0;n<e.slots.length;++n)O(e.slots[n])&&(t=!0);return j(e)&&(storage.delete("saves"),t=!1),t&&C(e),P=e.slots.length-1,!0}function t(){return{autosave:null,slots:x([],Config.saves.slots)}}function r(){var e=storage.get("saves");return null===e?t():e}function a(){return storage.delete("saves"),!0}function n(){return i()||d()}function i(){return"cookie"!==storage.name&&void 0!==Config.saves.autosave}function o(){return null!==r().autosave}function s(){return r().autosave}function u(){var e=r();return null!==e.autosave&&A(e.autosave)}function l(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return!1;var a=r(),n={title:e||Story.get(State.passage).description(),date:Date.now()};return null!=t&&(n.metadata=t),a.autosave=T(n),C(a)}function c(){var e=r();return e.autosave=null,C(e)}function d(){return"cookie"!==storage.name&&-1!==P}function h(){return P+1}function f(){if(!d())return 0;for(var e=r(),t=0,a=0,n=e.slots.length;a<n;++a)null!==e.slots[a]&&++t;return t}function p(){return 0===f()}function g(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])}function m(e){if(e<0||e>P)return null;var t=r();return e>=t.slots.length?null:t.slots[e]}function v(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])&&A(t.slots[e])}function y(e,t,a){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return UI.alert(L10n.get("savesDisallowed")),!1;if(e<0||e>P)return!1;var n=r();if(e>=n.slots.length)return!1;var i={title:t||Story.get(State.passage).description(),date:Date.now()};return null!=a&&(i.metadata=a),n.slots[e]=T(i),C(n)}function b(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length)&&(t.slots[e]=null,C(t))}function w(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return void UI.alert(L10n.get("savesDisallowed"));var r=null==e?Story.domId:Util.slugify(e),a=r+"-"+function(){var e=new Date,t=e.getMonth()+1,r=e.getDate(),a=e.getHours(),n=e.getMinutes(),i=e.getSeconds();return t<10&&(t="0"+t),r<10&&(r="0"+r),a<10&&(a="0"+a),n<10&&(n="0"+n),i<10&&(i="0"+i),""+e.getFullYear()+t+r+"-"+a+n+i}()+".save",n=null==t?{}:{metadata:t},i=LZString.compressToBase64(JSON.stringify(T(n)));saveAs(new Blob([i],{type:"text/plain;charset=UTF-8"}),a)}function k(e){var t=e.target.files[0],r=new FileReader;jQuery(r).on("load",function(e){var r=e.currentTarget;if(r.result){var a=void 0;try{a=JSON.parse(/\.json$/i.test(t.name)||/^\{/.test(r.result)?r.result:LZString.decompressFromBase64(r.result))}catch(e){}A(a)}}),r.readAsText(t)}function S(e){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return UI.alert(L10n.get("savesDisallowed")),null;var t=null==e?{}:{metadata:e};return LZString.compressToBase64(JSON.stringify(T(t)))}function E(e){var t=void 0;try{t=JSON.parse(LZString.decompressFromBase64(e))}catch(e){}return A(t)?t.metadata:null}function x(e,t){for(var r=0;r<t;++r)e.push(null);return e}function j(e){for(var t=e.slots,r=!0,a=0,n=t.length;a<n;++a)if(null!==t[a]){r=!1;break}return null===e.autosave&&r}function C(e){return j(e)?(storage.delete("saves"),!0):storage.set("saves",e)}function O(e){if(null==e||"object"!==(void 0===e?"undefined":_typeof(e)))return!1;var t=!1;return e.hasOwnProperty("state")&&e.state.hasOwnProperty("delta")&&e.state.hasOwnProperty("index")||(e.hasOwnProperty("data")?(delete e.mode,e.state={delta:State.deltaEncode(e.data)},delete e.data):e.state.hasOwnProperty("delta")?e.state.hasOwnProperty("index")||delete e.state.mode:(delete e.state.mode,e.state.delta=State.deltaEncode(e.state.history),delete e.state.history),e.state.index=e.state.delta.length-1,t=!0),e.state.hasOwnProperty("rseed")&&(e.state.seed=e.state.rseed,delete e.state.rseed,e.state.delta.forEach(function(e,t,r){r[t].hasOwnProperty("rcount")&&(r[t].pull=r[t].rcount,delete r[t].rcount)}),t=!0),(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired||e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired&&delete e.state.expired,(e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.expired=[],e.state.hasOwnProperty("unique")&&(e.state.expired.push(e.state.unique),delete e.state.unique),e.state.hasOwnProperty("last")&&(e.state.expired.push(e.state.last),delete e.state.last)),t=!0),t}function T(e){if(null!=e&&"object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("supplemental parameter must be an object");var t=Object.assign({},e,{id:Config.saves.id,state:State.marshalForSave()});return Config.saves.version&&(t.version=Config.saves.version),"function"==typeof Config.saves.onSave&&Config.saves.onSave(t),t.state.delta=State.deltaEncode(t.state.history),delete t.state.history,t}function A(e){try{if(O(e),!e||!e.hasOwnProperty("id")||!e.hasOwnProperty("state"))throw new Error(L10n.get("errorSaveMissingData"));if(e.state.history=State.deltaDecode(e.state.delta),delete e.state.delta,"function"==typeof Config.saves.onLoad&&Config.saves.onLoad(e),e.id!==Config.saves.id)throw new Error(L10n.get("errorSaveIdMismatch"));State.unmarshalForSave(e.state),Engine.show()}catch(e){return UI.alert(e.message.toUpperFirst()+".</p><p>"+L10n.get("aborting")+"."),!1}return!0}var P=-1;return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:r},clear:{value:a},ok:{value:n},autosave:{value:Object.freeze(Object.defineProperties({},{ok:{value:i},has:{value:o},get:{value:s},load:{value:u},save:{value:l},delete:{value:c}}))},slots:{value:Object.freeze(Object.defineProperties({},{ok:{value:d},length:{get:h},isEmpty:{value:p},count:{value:f},has:{value:g},get:{value:m},load:{value:v},save:{value:y},delete:{value:b}}))},export:{value:w},import:{value:k},serialize:{value:S},deserialize:{value:E}}))}(),Setting=function(){function e(){if(storage.has("options")){var e=storage.get("options");null!==e&&(window.SugarCube.settings=settings=Object.assign(t(),e)),r(),storage.delete("options")}a(),g.forEach(function(e){if(e.hasOwnProperty("onInit")){var t={name:e.name,value:settings[e.name],default:e.default};e.hasOwnProperty("list")&&(t.list=e.list),e.onInit.call(t)}})}function t(){return Object.create(null)}function r(){var e=t();return Object.keys(settings).length>0&&g.filter(function(e){return e.type!==m.Header&&settings[e.name]!==e.default}).forEach(function(t){return e[t.name]=settings[t.name]}),0===Object.keys(e).length?(storage.delete("settings"),!0):storage.set("settings",e)}function a(){var e=t(),r=storage.get("settings")||t();g.filter(function(e){return e.type!==m.Header}).forEach(function(t){return e[t.name]=t.default}),window.SugarCube.settings=settings=Object.assign(e,r)}function n(){return window.SugarCube.settings=settings=t(),storage.delete("settings"),!0}function i(e){if(0===arguments.length)n(),a();else{if(null==e||!h(e))throw new Error('nonexistent setting "'+e+'"');var t=f(e);t.type!==m.Header&&(settings[e]=t.default)}return r()}function o(e,t){g.forEach(e,t)}function s(e,t,r){if(arguments.length<3){var a=[];throw arguments.length<1&&a.push("type"),arguments.length<2&&a.push("name"),arguments.length<3&&a.push("definition"),new Error("missing parameters, no "+a.join(" or ")+" specified")}if("object"!==(void 0===r?"undefined":_typeof(r)))throw new TypeError("definition parameter must be an object");if(h(t))throw new Error('cannot clobber existing setting "'+t+'"');var n={type:e,name:t,label:null==r.label?"":String(r.label).trim()};switch(e){case m.Header:break;case m.Toggle:n.default=!!r.default;break;case m.List:if(!r.hasOwnProperty("list"))throw new Error("no list specified");if(!Array.isArray(r.list))throw new TypeError("list must be an array");if(0===r.list.length)throw new Error("list must not be empty");if(n.list=Object.freeze(r.list),null==r.default)n.default=r.list[0];else{var i=r.list.indexOf(r.default);if(-1===i)throw new Error("list does not contain default");n.default=r.list[i]}break;default:throw new Error("unknown Setting type: "+e)}"function"==typeof r.onInit&&(n.onInit=Object.freeze(r.onInit)),"function"==typeof r.onChange&&(n.onChange=Object.freeze(r.onChange)),g.push(Object.freeze(n))}function u(e,t){s(m.Header,e,{label:t})}function l(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.Toggle].concat(t))}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[m.List].concat(t))}function d(){return 0===g.length}function h(e){return g.some(function(t){return t.name===e})}function f(e){return g.find(function(t){return t.name===e})}function p(e){h(e)&&delete settings[e];for(var t=0;t<g.length;++t)if(g[t].name===e){g.splice(t,1),p(e);break}}var g=[],m=Util.toEnum({Header:0,Toggle:1,List:2});return Object.freeze(Object.defineProperties({},{Types:{value:m},init:{value:e},create:{value:t},save:{value:r},load:{value:a},clear:{value:n},reset:{value:i},forEach:{value:o},add:{value:s},addHeader:{value:u},addToggle:{value:l},addList:{value:c},isEmpty:{value:d},has:{value:h},get:{value:f},delete:{value:p}}))}(),Story=function(){function e(){function e(e){if(e.tags.includesAny(a))throw new Error('starting passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return a.includes(e)}).sort().join('", "')+'"')}function t(e){if(n.includes(e.title)&&e.tags.includesAny(a))throw new Error('special passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return a.includes(e)}).sort().join('", "')+'"')}var a=["widget"],n=["PassageDone","PassageFooter","PassageHeader","PassageReady","StoryAuthor","StoryBanner","StoryCaption","StoryInit","StoryMenu","StoryShare","StorySubtitle"],i=function(e){var t=[].concat(a),r=[];if(e.tags.forEach(function(e){t.includes(e)&&r.push.apply(r,_toConsumableArray(t.delete(e)))}),r.length>1)throw new Error('code passage "'+e.title+'" contains multiple code tags; invalid: "'+r.sort().join('", "')+'"')};if(a.unshift("script","stylesheet"),n.push("StoryTitle"),Config.passages.start=function(){var e=String("START_AT");return""!==e?(Config.debug=!0,e):"Start"}(),jQuery("#store-area").children(':not([tags~="Twine.private"],[tags~="annotation"])').each(function(){var r=jQuery(this),a=new Passage(r.attr("tiddler"),this);a.title===Config.passages.start?(e(a),c[a.title]=a):a.tags.includes("stylesheet")?(i(a),d.push(a)):a.tags.includes("script")?(i(a),h.push(a)):a.tags.includes("widget")?(i(a),f.push(a)):(t(a),c[a.title]=a)}),!c.hasOwnProperty("StoryTitle"))throw new Error('cannot find the "StoryTitle" special passage');var o=document.createDocumentFragment();new Wikifier(o,c.StoryTitle.processText().trim()),r(o.textContent.trim()),Config.saves.id=Story.domId}function t(){!function(){var e=document.createElement("style");new StyleWrapper(e).add(d.map(function(e){return e.text.trim()}).join("\n")),jQuery(e).appendTo(document.head).attr({id:"style-story",type:"text/css"})}();for(var e=0;e<h.length;++e)try{Scripting.evalJavaScript(h[e].text)}catch(t){console.error(t),Alert.error(h[e].title,"object"===(void 0===t?"undefined":_typeof(t))?t.message:t)}for(var t=0;t<f.length;++t)try{Wikifier.wikifyEval(f[t].processText())}catch(e){console.error(e),Alert.error(f[t].title,"object"===(void 0===e?"undefined":_typeof(e))?e.message:e)}}function r(e){if(null==e||""===e)throw new Error("story title cannot be null or empty");document.title=p=Util.unescape(e),m=Util.slugify(p)}function a(){return p}function n(){return m}function i(){return g}function o(e){var t=void 0===e?"undefined":_typeof(e);switch(t){case"number":case"string":return c.hasOwnProperty(String(e));case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.has title parameter cannot be "+t)}function s(e){var t=void 0===e?"undefined":_typeof(e);switch(t){case"number":case"string":var r=String(e);return c.hasOwnProperty(r)?c[r]:new Passage(r||"(unknown)");case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.get title parameter cannot be "+t)}function u(e,t){for(var r=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"title",a=Object.keys(c),n=[],i=0;i<a.length;++i){var o=c[a[i]];if(o.hasOwnProperty(e))switch(_typeof(o[e])){case"undefined":break;case"object":o[e]instanceof Array&&o[e].some(function(e){return e==t})&&n.push(o);break;default:o[e]==t&&n.push(o)}}return n.sort(function(e,t){return e[r]==t[r]?0:e[r]<t[r]?-1:1}),n}function l(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"title";if("function"!=typeof e)throw new Error("Story.lookupWith filter parameter must be a function");for(var r=Object.keys(c),a=[],n=0;n<r.length;++n){var i=c[r[n]];e(i)&&a.push(i)}return a.sort(function(e,r){return e[t]==r[t]?0:e[t]<r[t]?-1:1}),a}var c={},d=[],h=[],f=[],p="",g="",m="";return Object.freeze(Object.defineProperties({},{passages:{value:c},styles:{value:d},scripts:{value:h},widgets:{value:f},load:{value:e},init:{value:t},title:{get:a},domId:{get:n},ifId:{get:i},has:{value:o},get:{value:s},lookup:{value:u},lookupWith:{value:l}}))}(),UI=function(){function e(e,t){var r=t,a=Config.debug,n=Config.cleanupWikifierOutput;Config.debug=!1,Config.cleanupWikifierOutput=!1;try{null==r&&(r=document.createElement("ul"));var i=document.createDocumentFragment();new Wikifier(i,Story.get(e).processText().trim());var o=[].concat(_toConsumableArray(i.querySelectorAll(".error"))).map(function(e){return e.textContent.replace(errorPrologRegExp,"")});if(o.length>0)throw new Error(o.join("; "));for(;i.hasChildNodes();){var s=i.firstChild;if(s.nodeType===Node.ELEMENT_NODE&&"A"===s.nodeName.toUpperCase()){var u=document.createElement("li");r.appendChild(u),u.appendChild(s)}else i.removeChild(s)}}finally{Config.cleanupWikifierOutput=n,Config.debug=a}return r}function t(e){jQuery(Dialog.setup("Alert","alert")).append("<p>"+e+'</p><ul class="buttons"><li><button id="alert-ok" class="ui-close">'+L10n.get(["alertOk","ok"])+"</button></li></ul>");for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];Dialog.open.apply(Dialog,r)}function r(){u(),Dialog.open.apply(Dialog,arguments)}function a(){l(),Dialog.open.apply(Dialog,arguments)}function n(){c(),Dialog.open.apply(Dialog,arguments)}function i(){d(),Dialog.open.apply(Dialog,arguments)}function o(){h(),Dialog.open.apply(Dialog,arguments)}function s(){return jQuery(Dialog.setup(L10n.get("autoloadTitle"),"autoload")).append("<p>"+L10n.get("autoloadPrompt")+'</p><ul class="buttons"><li><button id="autoload-ok" class="ui-close">'+L10n.get(["autoloadOk","ok"])+'</button></li><li><button id="autoload-cancel" class="ui-close">'+L10n.get(["autoloadCancel","cancel"])+"</button></li></ul>"),jQuery(document).one("click.autoload",".ui-close",function(e){var t="autoload-ok"===e.target.id;jQuery(document).one(":dialogclose",function(){t&&Save.autosave.load()||Engine.play(Config.passages.start)})}),!0}function u(){var e=document.createElement("ul");jQuery(Dialog.setup(L10n.get("jumptoTitle"),"jumpto list")).append(e);for(var t=State.expired.length,r=State.size-1;r>=0;--r)if(r!==State.activeIndex){var a=Story.get(State.history[r].title);a&&a.tags.includes("bookmark")&&jQuery(document.createElement("li")).append(jQuery(document.createElement("a")).ariaClick({one:!0},function(e){return function(){return jQuery(document).one(":dialogclose",function(){return Engine.goTo(e)})}}(r)).addClass("ui-close").text(L10n.get("jumptoTurn")+" "+(t+r+1)+": "+a.description())).appendTo(e)}e.hasChildNodes()||jQuery(e).append("<li><a><em>"+L10n.get("jumptoUnavailable")+"</em></a></li>")}function l(){return jQuery(Dialog.setup(L10n.get("restartTitle"),"restart")).append("<p>"+L10n.get("restartPrompt")+'</p><ul class="buttons"><li><button id="restart-ok">'+L10n.get(["restartOk","ok"])+'</button></li><li><button id="restart-cancel" class="ui-close">'+L10n.get(["restartCancel","cancel"])+"</button></li></ul>").find("#restart-ok").ariaClick({one:!0},function(){jQuery(document).one(":dialogclose",function(){return Engine.restart()
-}),Dialog.close()}),!0}function c(){function e(e,t,r,a){var n=jQuery(document.createElement("button")).attr("id","saves-"+e).html(r);return t&&n.addClass(t),a?n.ariaClick(a):n.prop("disabled",!0),jQuery(document.createElement("li")).append(n)}var r=jQuery(Dialog.setup(L10n.get("savesTitle"),"saves")),a=Save.ok();if(a&&r.append(function(){function e(e,t,r,a,n){var i=jQuery(document.createElement("button")).attr("id","saves-"+e+"-"+a).addClass(e).html(r);return t&&i.addClass(t),n?"auto"===a?i.ariaClick({label:r+" "+L10n.get("savesLabelAuto")},function(){return n()}):i.ariaClick({label:r+" "+L10n.get("savesLabelSlot")+" "+(a+1)},function(){return n(a)}):i.prop("disabled",!0),i}var t=Save.get(),r=jQuery(document.createElement("tbody"));if(Save.autosave.ok()){var a=jQuery(document.createElement("td")),n=jQuery(document.createElement("td")),i=jQuery(document.createElement("td")),o=jQuery(document.createElement("td"));jQuery(document.createElement("b")).attr({title:L10n.get("savesLabelAuto"),"aria-label":L10n.get("savesLabelAuto")}).text("A").appendTo(a),t.autosave?(n.append(e("load","ui-close",L10n.get("savesLabelLoad"),"auto",function(){jQuery(document).one(":dialogclose",function(){return Save.autosave.load()})})),jQuery(document.createElement("div")).text(t.autosave.title).appendTo(i),jQuery(document.createElement("div")).addClass("datestamp").html(t.autosave.date?L10n.get("savesSavedOn")+" "+new Date(t.autosave.date).toLocaleString():L10n.get("savesSavedOn")+" <em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(i),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto",function(){Save.autosave.delete(),c()}))):(n.append(e("load",null,L10n.get("savesLabelLoad"),"auto")),jQuery(document.createElement("em")).text(L10n.get("savesEmptySlot")).appendTo(i),i.addClass("empty"),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto"))),jQuery(document.createElement("tr")).append(a).append(n).append(i).append(o).appendTo(r)}for(var s=0,u=t.slots.length;s<u;++s){var l=jQuery(document.createElement("td")),d=jQuery(document.createElement("td")),h=jQuery(document.createElement("td")),f=jQuery(document.createElement("td"));l.append(document.createTextNode(s+1)),t.slots[s]?(d.append(e("load","ui-close",L10n.get("savesLabelLoad"),s,function(e){jQuery(document).one(":dialogclose",function(){return Save.slots.load(e)})})),jQuery(document.createElement("div")).text(t.slots[s].title).appendTo(h),jQuery(document.createElement("div")).addClass("datestamp").html(t.slots[s].date?L10n.get("savesSavedOn")+" "+new Date(t.slots[s].date).toLocaleString():L10n.get("savesSavedOn")+" <em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(h),f.append(e("delete",null,L10n.get("savesLabelDelete"),s,function(e){Save.slots.delete(e),c()}))):(d.append(e("save","ui-close",L10n.get("savesLabelSave"),s,Save.slots.save)),jQuery(document.createElement("em")).text(L10n.get("savesEmptySlot")).appendTo(h),h.addClass("empty"),f.append(e("delete",null,L10n.get("savesLabelDelete"),s))),jQuery(document.createElement("tr")).append(l).append(d).append(h).append(f).appendTo(r)}return jQuery(document.createElement("table")).attr("id","saves-list").append(r)}()),a||Has.fileAPI){var n=jQuery(document.createElement("ul")).addClass("buttons").appendTo(r);return Has.fileAPI&&(n.append(e("export","ui-close",L10n.get("savesLabelExport"),function(){return Save.export()})),n.append(e("import",null,L10n.get("savesLabelImport"),function(){return r.find("#saves-import-file").trigger("click")})),jQuery(document.createElement("input")).css({display:"block",visibility:"hidden",position:"fixed",left:"-9999px",top:"-9999px",width:"1px",height:"1px"}).attr({type:"file",id:"saves-import-file",tabindex:-1,"aria-hidden":!0}).on("change",function(e){jQuery(document).one(":dialogclose",function(){return Save.import(e)}),Dialog.close()}).appendTo(r)),a&&n.append(e("clear",null,L10n.get("savesLabelClear"),Save.autosave.has()||!Save.slots.isEmpty()?function(){Save.clear(),c()}:null)),!0}return t(L10n.get("savesIncapable")),!1}function d(){var e=jQuery(Dialog.setup(L10n.get("settingsTitle"),"settings"));return Setting.forEach(function(t){if(t.type===Setting.Types.Header){var r=t.name,a=Util.slugify(r),n=jQuery(document.createElement("div")),i=jQuery(document.createElement("h2")),o=jQuery(document.createElement("p"));return n.attr("id","header-body-"+a).append(i).append(o).appendTo(e),i.attr("id","header-heading-"+a).wiki(r),void o.attr("id","header-label-"+a).wiki(t.label)}var s=t.name,u=Util.slugify(s),l=jQuery(document.createElement("div")),c=jQuery(document.createElement("label")),d=jQuery(document.createElement("div")),h=void 0;switch(l.attr("id","setting-body-"+u).append(c).append(d).appendTo(e),c.attr({id:"setting-label-"+u,for:"setting-control-"+u}).wiki(t.label),null==settings[s]&&(settings[s]=t.default),t.type){case Setting.Types.Toggle:h=jQuery(document.createElement("button")),settings[s]?h.addClass("enabled").text(L10n.get("settingsOn")):h.text(L10n.get("settingsOff")),h.ariaClick(function(){settings[s]?(jQuery(this).removeClass("enabled").text(L10n.get("settingsOff")),settings[s]=!1):(jQuery(this).addClass("enabled").text(L10n.get("settingsOn")),settings[s]=!0),Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default})});break;case Setting.Types.List:h=jQuery(document.createElement("select"));for(var f=0,p=t.list.length;f<p;++f)jQuery(document.createElement("option")).val(f).text(t.list[f]).appendTo(h);h.val(t.list.indexOf(settings[s])).attr("tabindex",0).on("change",function(){settings[s]=t.list[Number(this.value)],Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default,list:t.list})})}h.attr("id","setting-control-"+u).appendTo(d)}),e.append('<ul class="buttons"><li><button id="settings-ok" class="ui-close">'+L10n.get(["settingsOk","ok"])+'</button></li><li><button id="settings-reset">'+L10n.get("settingsReset")+"</button></li></ul>").find("#settings-reset").ariaClick({one:!0},function(){jQuery(document).one(":dialogclose",function(){Setting.reset(),window.location.reload()}),Dialog.close()}),!0}function h(){try{jQuery(Dialog.setup(L10n.get("shareTitle"),"share list")).append(e("StoryShare"))}catch(e){return console.error(e),Alert.error("StoryShare",e.message),!1}return!0}return Object.freeze(Object.defineProperties({},{assembleLinkList:{value:e},alert:{value:t},jumpto:{value:r},restart:{value:a},saves:{value:n},settings:{value:i},share:{value:o},buildAutoload:{value:s},buildJumpto:{value:u},buildRestart:{value:l},buildSaves:{value:c},buildSettings:{value:d},buildShare:{value:h},stow:{value:function(){return UIBar.stow()}},unstow:{value:function(){return UIBar.unstow()}},setStoryElements:{value:function(){return UIBar.setStoryElements()}},isOpen:{value:function(){return Dialog.isOpen.apply(Dialog,arguments)}},body:{value:function(){return Dialog.body()}},setup:{value:function(){return Dialog.setup.apply(Dialog,arguments)}},addClickHandler:{value:function(){return Dialog.addClickHandler.apply(Dialog,arguments)}},open:{value:function(){return Dialog.open.apply(Dialog,arguments)}},close:{value:function(){return Dialog.close.apply(Dialog,arguments)}},resize:{value:function(){return Dialog.resize()}},buildDialogAutoload:{value:s},buildDialogJumpto:{value:u},buildDialogRestart:{value:l},buildDialogSaves:{value:c},buildDialogSettings:{value:d},buildDialogShare:{value:h},buildLinkListFromPassage:{value:e}}))}(),UIBar=function(){function e(){o||document.getElementById("ui-bar")||(!function(){var e=L10n.get("uiBarToggle"),t=L10n.get("uiBarBackward"),r=L10n.get("uiBarJumpto"),a=L10n.get("uiBarForward");jQuery(document.createDocumentFragment()).append('<div id="ui-bar"><div id="ui-bar-tray"><button id="ui-bar-toggle" tabindex="0" title="'+e+'" aria-label="'+e+'"></button><div id="ui-bar-history"><button id="history-backward" tabindex="0" title="'+t+'" aria-label="'+t+'"></button><button id="history-jumpto" tabindex="0" title="'+r+'" aria-label="'+r+'"></button><button id="history-forward" tabindex="0" title="'+a+'" aria-label="'+a+'"></button></div></div><div id="ui-bar-body"><header id="title" role="banner"><div id="story-banner"></div><h1 id="story-title"></h1><div id="story-subtitle"></div><div id="story-title-separator"></div><p id="story-author"></p></header><div id="story-caption"></div><nav id="menu" role="navigation"><ul id="menu-story"></ul><ul id="menu-core"><li id="menu-item-saves"><a tabindex="0">'+L10n.get("savesTitle")+'</a></li><li id="menu-item-settings"><a tabindex="0">'+L10n.get("settingsTitle")+'</a></li><li id="menu-item-restart"><a tabindex="0">'+L10n.get("restartTitle")+'</a></li><li id="menu-item-share"><a tabindex="0">'+L10n.get("shareTitle")+"</a></li></ul></nav></div></div>").insertBefore("#store-area")}(),jQuery(document).on(":historyupdate.ui-bar",function(e,t){return function(){e.prop("disabled",State.length<2),t.prop("disabled",State.length===State.size)}}(jQuery("#history-backward"),jQuery("#history-forward"))))}function t(){if(!o){var e=jQuery("#ui-bar");("boolean"==typeof Config.ui.stowBarInitially?Config.ui.stowBarInitially:jQuery(window).width()<=Config.ui.stowBarInitially)&&function(){var t=jQuery(e).add("#story");t.addClass("no-transition"),e.addClass("stowed"),setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}(),jQuery("#ui-bar-toggle").ariaClick({label:L10n.get("uiBarToggle")},function(){return e.toggleClass("stowed")}),Config.history.controls?(jQuery("#history-backward").prop("disabled",State.length<2).ariaClick({label:L10n.get("uiBarBackward")},function(){return Engine.backward()}),Story.lookup("tags","bookmark").length>0?jQuery("#history-jumpto").ariaClick({label:L10n.get("uiBarJumpto")},function(){return UI.jumpto()}):jQuery("#history-jumpto").remove(),jQuery("#history-forward").prop("disabled",State.length===State.size).ariaClick({label:L10n.get("uiBarForward")},function(){return Engine.forward()})):jQuery("#ui-bar-history").remove(),setPageElement("story-title","StoryTitle",Story.title),Story.has("StoryCaption")||jQuery("#story-caption").remove(),Story.has("StoryMenu")||jQuery("#menu-story").remove(),Config.ui.updateStoryElements||i(),Dialog.addClickHandler("#menu-item-saves a",null,UI.buildSaves).text(L10n.get("savesTitle")),Setting.isEmpty()?jQuery("#menu-item-settings").remove():Dialog.addClickHandler("#menu-item-settings a",null,UI.buildSettings).text(L10n.get("settingsTitle")),Dialog.addClickHandler("#menu-item-restart a",null,UI.buildRestart).text(L10n.get("restartTitle")),Story.has("StoryShare")?Dialog.addClickHandler("#menu-item-share a",null,UI.buildShare).text(L10n.get("shareTitle")):jQuery("#menu-item-share").remove()}}function r(){o||(jQuery(document).off(".ui-bar"),jQuery("#ui-bar").remove(),jQuery(document.head).find("#style-ui-bar").remove(),Config.ui.updateStoryElements=!1,o=!0)}function a(e){if(!o){var t=jQuery("#ui-bar");e&&t.addClass("no-transition"),t.addClass("stowed"),e&&setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}}function n(e){if(!o){var t=jQuery("#ui-bar");e&&t.addClass("no-transition"),t.removeClass("stowed"),e&&setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}}function i(){if(!o){setPageElement("story-banner","StoryBanner"),setPageElement("story-subtitle","StorySubtitle"),setPageElement("story-author","StoryAuthor"),setPageElement("story-caption","StoryCaption");var e=document.getElementById("menu-story");if(null!==e&&(jQuery(e).empty(),Story.has("StoryMenu")))try{UI.assembleLinkList("StoryMenu",e)}catch(e){console.error(e),Alert.error("StoryMenu",e.message)}}}var o=!1;return Object.freeze(Object.defineProperties({},{init:{value:e},start:{value:t},destroy:{value:r},stow:{value:a},unstow:{value:n},setStoryElements:{value:i}}))}(),DebugBar=function(){function e(){var e=L10n.get("debugBarToggle"),t=L10n.get("debugBarAddWatch"),o=L10n.get("debugBarWatchAll"),u=L10n.get("debugBarWatchNone"),c=L10n.get("debugBarWatchToggle"),p=L10n.get("debugBarViewsToggle");jQuery(document.createDocumentFragment()).append('<div id="debug-bar"><div id="debug-bar-watch" aria-hidden="true" hidden="hidden"><div>'+L10n.get("debugBarNoWatches")+'</div>></div><div><button id="debug-bar-watch-toggle" tabindex="0" title="'+c+'" aria-label="'+c+'">'+L10n.get("debugBarLabelWatch")+'</button><label id="debug-bar-watch-label" for="debug-bar-watch-input">'+L10n.get("debugBarLabelAdd")+'</label><input id="debug-bar-watch-input" name="debug-bar-watch-input" type="text" list="debug-bar-watch-list" tabindex="0"><datalist id="debug-bar-watch-list" aria-hidden="true" hidden="hidden"></datalist><button id="debug-bar-watch-add" tabindex="0" title="'+t+'" aria-label="'+t+'"></button><button id="debug-bar-watch-all" tabindex="0" title="'+o+'" aria-label="'+o+'"></button><button id="debug-bar-watch-none" tabindex="0" title="'+u+'" aria-label="'+u+'"></button></div><div><button id="debug-bar-views-toggle" tabindex="0" title="'+p+'" aria-label="'+p+'">'+L10n.get("debugBarLabelViews")+'</button><label id="debug-bar-turn-label" for="debug-bar-turn-select">'+L10n.get("debugBarLabelTurn")+'</label><select id="debug-bar-turn-select" tabindex="0"></select></div><button id="debug-bar-toggle" tabindex="0" title="'+e+'" aria-label="'+e+'"></button></div><div id="debug-bar-hint"></div>').appendTo("body"),y=jQuery("#debug-bar"),b=jQuery(y.find("#debug-bar-watch").get(0)),w=jQuery(y.find("#debug-bar-watch-list").get(0)),k=jQuery(y.find("#debug-bar-turn-select").get(0));var g=jQuery(y.find("#debug-bar-toggle").get(0)),m=jQuery(y.find("#debug-bar-watch-toggle").get(0)),v=jQuery(y.find("#debug-bar-watch-input").get(0)),E=jQuery(y.find("#debug-bar-watch-add").get(0)),x=jQuery(y.find("#debug-bar-watch-all").get(0)),j=jQuery(y.find("#debug-bar-watch-none").get(0)),C=jQuery(y.find("#debug-bar-views-toggle").get(0));g.ariaClick(function(){S?a():r(),S=!S,l()}),m.ariaClick(function(){b.attr("hidden")?b.removeAttr("aria-hidden hidden"):b.attr({"aria-hidden":!0,hidden:"hidden"}),l()}),v.on(":addwatch",function(){n(this.value.trim()),this.value=""}).on("keypress",function(e){13===e.which&&(e.preventDefault(),v.trigger(":addwatch"))}),E.ariaClick(function(){return v.trigger(":addwatch")}),x.ariaClick(i),j.ariaClick(s),k.on("change",function(){Engine.goTo(Number(this.value))}),C.ariaClick(function(){DebugView.toggle(),l()}),jQuery(document).on(":historyupdate.debug-bar",f).on(":passageend.debug-bar",function(){d(),h()}).on(":enginerestart.debug-bar",function(){session.delete("debugState")})}function t(){u(),c(),f(),d(),h()}function r(){y.css("right","-"+y.outerWidth()+"px"),l()}function a(){y.css("right",0),l()}function n(e){g.test(e)&&(v.pushUnique(e),v.sort(),d(),h(),l())}function i(){Object.keys(State.variables).map(function(e){return v.pushUnique("$"+e)}),Object.keys(State.temporary).map(function(e){return v.pushUnique("_"+e)}),v.sort(),d(),h(),l()}function o(e){v.delete(e),d(),h(),l()}function s(){for(var e=v.length-1;e>=0;--e)v.pop();d(),h(),l()}function u(){if(session.has("debugState")){var e=session.get("debugState");S=e.stowed,v.push.apply(v,_toConsumableArray(e.watchList)),e.watchEnabled?b.removeAttr("aria-hidden hidden"):b.attr({"aria-hidden":!0,hidden:"hidden"}),e.viewsEnabled?DebugView.enable():DebugView.disable()}}function l(){session.set("debugState",{stowed:S,watchList:v,watchEnabled:!b.attr("hidden"),viewsEnabled:DebugView.isEnabled()})}function c(){S?r():a()}function d(){if(0===v.length)return void b.empty().append("<div>"+L10n.get("debugBarNoWatches")+"</div>");for(var e=L10n.get("debugBarDeleteWatch"),t=jQuery(document.createElement("table")),r=jQuery(document.createElement("tbody")),a=0,n=v.length;a<n;++a)!function(t,a){var n=v[t],i=n.slice(1),s="$"===n[0]?State.variables:State.temporary,u=jQuery(document.createElement("tr")),l=jQuery(document.createElement("button")),c=jQuery(document.createElement("code"));l.addClass("watch-delete").attr("data-name",n).ariaClick({one:!0,label:e},function(){return o(n)}),c.text(p(s[i])),jQuery(document.createElement("td")).append(l).appendTo(u),jQuery(document.createElement("td")).text(n).appendTo(u),jQuery(document.createElement("td")).append(c).appendTo(u),u.appendTo(r)}(a);t.append(r),b.empty().append(t)}function h(){var e=Object.keys(State.variables),t=Object.keys(State.temporary);if(0===e.length&&0===t.length)return void w.empty();var r=[].concat(_toConsumableArray(e.map(function(e){return"$"+e})),_toConsumableArray(t.map(function(e){return"_"+e}))).sort(),a=document.createDocumentFragment();r.delete(v);for(var n=0,i=r.length;n<i;++n)jQuery(document.createElement("option")).val(r[n]).appendTo(a);w.empty().append(a)}function f(){for(var e=State.size,t=State.expired.length,r=document.createDocumentFragment(),a=0;a<e;++a)jQuery(document.createElement("option")).val(a).text(t+a+1+". "+Util.escape(State.history[a].title)).appendTo(r);k.empty().prop("disabled",e<2).append(r).val(State.activeIndex)}function p(e){if(null===e)return"null";switch(void 0===e?"undefined":_typeof(e)){case"number":if(Number.isNaN(e))return"NaN";if(!Number.isFinite(e))return"Infinity";case"boolean":case"symbol":case"undefined":return String(e);case"string":return JSON.stringify(e);case"function":return"Function"}var t=Util.toStringTag(e);if("Date"===t)return"Date {"+e.toLocaleString()+"}";if("RegExp"===t)return"RegExp "+e.toString();var r=[];if(e instanceof Array||e instanceof Set){for(var a=e instanceof Array?e:Array.from(e),n=0,i=a.length;n<i;++n)r.push(a.hasOwnProperty(n)?p(a[n]):"<empty>");return Object.keys(a).filter(function(e){return!m.test(e)}).forEach(function(e){return r.push(p(e)+": "+p(a[e]))}),t+"("+a.length+") ["+r.join(", ")+"]"}return e instanceof Map?(e.forEach(function(e,t){return r.push(p(t)+" → "+p(e))}),t+"("+e.size+") {"+r.join(", ")+"}"):(Object.keys(e).forEach(function(t){return r.push(p(t)+": "+p(e[t]))}),t+" {"+r.join(", ")+"}")}var g=new RegExp("^"+Patterns.variable+"$"),m=/^\d+$/,v=[],y=null,b=null,w=null,k=null,S=!0;return Object.freeze(Object.defineProperties({},{init:{value:e},start:{value:t},stow:{value:r},unstow:{value:a},watch:{value:n},watchAll:{value:i},unwatch:{value:o},unwatchAll:{value:s}}))}(),LoadScreen=function(){function e(){jQuery(document).on("readystatechange.SugarCube",function(){o.size>0||("complete"===document.readyState?"loading"===jQuery(document.documentElement).attr("data-init")&&(Config.loadDelay>0?setTimeout(function(){0===o.size&&r()},Math.max(Engine.minDomActionDelay,Config.loadDelay)):r()):a())})}function t(){jQuery(document).off("readystatechange.SugarCube"),o.clear(),r()}function r(){jQuery(document.documentElement).removeAttr("data-init")}function a(){jQuery(document.documentElement).attr("data-init","loading")}function n(){return++s,o.add(s),a(),s}function i(e){if(null==e)throw new Error("LoadScreen.unlock called with a null or undefined ID");o.has(e)&&o.delete(e),0===o.size&&jQuery(document).trigger("readystatechange")}var o=new Set,s=0;return Object.freeze(Object.defineProperties({},{init:{value:e},clear:{value:t},hide:{value:r},show:{value:a},lock:{value:n},unlock:{value:i}}))}(),version=Object.freeze({title:"SugarCube",major:2,minor:25,patch:0,prerelease:null,build:8585,date:new Date("2018-04-30T21:28:26.407Z"),extensions:{},toString:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.major+"."+this.minor+"."+this.patch+e+"+"+this.build},short:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.title+" (v"+this.major+"."+this.minor+"."+this.patch+e+")"},long:function(){return this.title+" v"+this.toString()+" ("+this.date.toUTCString()+")"}}),TempState={},macros={},postdisplay={},postrender={},predisplay={},prehistory={},prerender={},session=null,settings={},setup={},storage=null,browser=Browser,config=Config,has=Has,History=State,state=State,tale=Story,TempVariables=State.temporary;window.SugarCube={},jQuery(function(){try{var e=LoadScreen.lock();LoadScreen.init(),document.normalize&&document.normalize(),Story.load(),storage=SimpleStore.create(Story.domId,!0),session=SimpleStore.create(Story.domId,!1),Dialog.init(),UIBar.init(),Engine.init(),Story.init(),L10n.init(),session.has("rcWarn")||"cookie"!==storage.name||(session.set("rcWarn",1),window.alert(L10n.get("warningNoWebStorage"))),Save.init(),Setting.init(),Macro.init(),Engine.start(),Config.debug&&DebugBar.init();var t=$(window),r=setInterval(function(){t.width()&&(clearInterval(r),setTimeout(function(){UIBar.start(),Config.debug&&DebugBar.start(),LoadScreen.unlock(e)},Engine.minDomActionDelay))},Engine.minDomActionDelay);window.SugarCube={Browser:Browser,Config:Config,Dialog:Dialog,DebugView:DebugView,Engine:Engine,Has:Has,L10n:L10n,Macro:Macro,Passage:Passage,Save:Save,Scripting:Scripting,Setting:Setting,SimpleAudio:SimpleAudio,State:State,Story:Story,UI:UI,UIBar:UIBar,DebugBar:DebugBar,Util:Util,Wikifier:Wikifier,macros:macros,session:session,settings:settings,setup:setup,storage:storage,version:version}}catch(e){return console.error(e),LoadScreen.clear(),Alert.fatal(null,e.message,e)}})}(window,window.document,jQuery);}
+return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}()),SimpleStore.adapters.push(function(){function e(e){try{var t="_sc_"+String(Date.now());o._setCookie(t,o._serialize(t),undefined),i=o._deserialize(o._getCookie(t))===t,o._setCookie(t,undefined,n)}catch(e){i=!1}return i&&r(e),i}function t(e,t){if(!i)throw new Error("adapter not initialized");return new o(e,t)}function r(e){if(""!==document.cookie)for(var t=e+".",r=new RegExp("^"+RegExp.escape(t)),i=e+"!.",s=e+"*.",u=/\.(?:state|rcWarn)$/,l=document.cookie.split(/;\s*/),c=0;c<l.length;++c){var d=l[c].split("="),h=decodeURIComponent(d[0]);if(r.test(h)){var f=decodeURIComponent(d[1]);""!==f&&function(){var e=!u.test(h);o._setCookie(h,undefined,n),o._setCookie(h.replace(r,function(){return e?i:s}),f,e?a:undefined)}()}}}var a="Tue, 19 Jan 2038 03:14:07 GMT",n="Thu, 01 Jan 1970 00:00:00 GMT",i=!1,o=function(){function e(t,r){_classCallCheck(this,e);var a=t+(r?"!":"*")+".";Object.defineProperties(this,{_prefix:{value:a},_prefixRe:{value:new RegExp("^"+RegExp.escape(a))},name:{value:"cookie"},id:{value:t},persistent:{value:!!r}})}return _createClass(e,[{key:"size",value:function(){return this.keys().length}},{key:"keys",value:function(){if(""===document.cookie)return[];for(var e=document.cookie.split(/;\s*/),t=[],r=0;r<e.length;++r){var a=e[r].split("="),n=decodeURIComponent(a[0]);if(this._prefixRe.test(n)){""!==decodeURIComponent(a[1])&&t.push(n.replace(this._prefixRe,""))}}return t}},{key:"has",value:function(t){return!("string"!=typeof t||!t)&&null!==e._getCookie(this._prefix+t)}},{key:"get",value:function(t){if("string"!=typeof t||!t)return null;var r=e._getCookie(this._prefix+t);return null===r?null:e._deserialize(r)}},{key:"set",value:function(t,r){if("string"!=typeof t||!t)return!1;try{if(e._setCookie(this._prefix+t,e._serialize(r),this.persistent?a:undefined),!this.has(t))throw new Error("unknown validation error during set")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"delete",value:function(t){if("string"!=typeof t||!t||!this.has(t))return!1;try{if(e._setCookie(this._prefix+t,undefined,n),this.has(t))throw new Error("unknown validation error during delete")}catch(e){throw e.message="cookie error: "+e.message,e}return!0}},{key:"clear",value:function(){for(var e=this.keys(),t=0,r=e.length;t<r;++t)this.delete(e[t]);return!0}},{key:"length",get:function(){return this.keys().length}}],[{key:"_getCookie",value:function(e){if(!e||""===document.cookie)return null;for(var t=document.cookie.split(/;\s*/),r=0;r<t.length;++r){var a=t[r].split("=");if(e===decodeURIComponent(a[0])){return decodeURIComponent(a[1])||null}}return null}},{key:"_setCookie",value:function(e,t,r){if(e){var a=encodeURIComponent(e)+"=";null!=t&&(a+=encodeURIComponent(t)),null!=r&&(a+="; expires="+r),a+="; path=/",document.cookie=a}}},{key:"_serialize",value:function(e){return LZString.compressToBase64(JSON.stringify(e))}},{key:"_deserialize",value:function(e){return JSON.parse(LZString.decompressFromBase64(e))}}]),e}();return Object.freeze(Object.defineProperties({},{init:{value:e},create:{value:t}}))}());var DebugView=function(){return function(){function e(t,r,a,n){_classCallCheck(this,e),Object.defineProperties(this,{parent:{value:t},view:{value:document.createElement("span")},break:{value:document.createElement("wbr")}}),jQuery(this.view).attr({title:n,"aria-label":n,"data-type":null!=r?r:"","data-name":null!=a?a:""}).addClass("debug"),jQuery(this.break).addClass("debug hidden"),this.parent.appendChild(this.view),this.parent.appendChild(this.break)}return _createClass(e,[{key:"append",value:function(e){return jQuery(this.view).append(e),this}},{key:"modes",value:function(e){if(null==e){var t={};return this.view.className.splitOrEmpty(/\s+/).forEach(function(e){"debug"!==e&&(t[e]=!0)}),t}if("object"===(void 0===e?"undefined":_typeof(e)))return Object.keys(e).forEach(function(t){this[e[t]?"addClass":"removeClass"](t)},jQuery(this.view)),this;throw new Error("DebugView.prototype.modes options parameter must be an object or null/undefined")}},{key:"remove",value:function(){var e=jQuery(this.view);this.view.hasChildNodes()&&e.contents().appendTo(this.parent),e.remove(),jQuery(this.break).remove()}},{key:"output",get:function(){return this.view}},{key:"type",get:function(){return this.view.getAttribute("data-type")},set:function(e){this.view.setAttribute("data-type",null!=e?e:"")}},{key:"name",get:function(){return this.view.getAttribute("data-name")},set:function(e){this.view.setAttribute("data-name",null!=e?e:"")}},{key:"title",get:function(){return this.view.title},set:function(e){this.view.title=e}}],[{key:"isEnabled",value:function(){return"enabled"===jQuery(document.documentElement).attr("data-debug-view")}},{key:"enable",value:function(){jQuery(document.documentElement).attr("data-debug-view","enabled"),jQuery.event.trigger(":debugviewupdate")}},{key:"disable",value:function(){jQuery(document.documentElement).removeAttr("data-debug-view"),jQuery.event.trigger(":debugviewupdate")}},{key:"toggle",value:function(){"enabled"===jQuery(document.documentElement).attr("data-debug-view")?e.disable():e.enable()}}]),e}()}(),PRNGWrapper=function(){return function(){function e(t,r){_classCallCheck(this,e),Object.defineProperties(this,new Math.seedrandom(t,r,function(e,t){return{_prng:{value:e},seed:{writable:!0,value:t},pull:{writable:!0,value:0},random:{value:function(){return++this.pull,this._prng()}}}}))}return _createClass(e,null,[{key:"marshal",value:function(e){if(!e||!e.hasOwnProperty("seed")||!e.hasOwnProperty("pull"))throw new Error("PRNG is missing required data");return{seed:e.seed,pull:e.pull}}},{key:"unmarshal",value:function(t){if(!t||!t.hasOwnProperty("seed")||!t.hasOwnProperty("pull"))throw new Error("PRNG object is missing required data");for(var r=new e(t.seed,!1),a=t.pull;a>0;--a)r.random();return r}}]),e}()}(),StyleWrapper=function(){var e=new RegExp(Patterns.cssImage,"g"),t=new RegExp(Patterns.cssImage);return function(){function r(e){if(_classCallCheck(this,r),null==e)throw new TypeError("StyleWrapper style parameter must be an HTMLStyleElement object");Object.defineProperties(this,{style:{value:e}})}return _createClass(r,[{key:"isEmpty",value:function(){return 0===this.style.cssRules.length}},{key:"set",value:function(e){this.clear(),this.add(e)}},{key:"add",value:function(r){var a=r;t.test(a)&&(e.lastIndex=0,a=a.replace(e,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var a=Story.get(r);a.tags.includes("Twine.image")&&(r=a.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),this.style.styleSheet?this.style.styleSheet.cssText+=a:this.style.appendChild(document.createTextNode(a))}},{key:"clear",value:function(){this.style.styleSheet?this.style.styleSheet.cssText="":jQuery(this.style).empty()}}]),r}()}(),Diff=function(){function e(t,a){for(var n=Object.prototype.toString,i=t instanceof Array,o=[].concat(Object.keys(t),Object.keys(a)).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}),s={},u=void 0,l=function(e){return e===u},c=0,d=o.length;c<d;++c){var h=o[c],f=t[h],p=a[h];if(t.hasOwnProperty(h))if(a.hasOwnProperty(h)){if(f===p)continue;if((void 0===f?"undefined":_typeof(f))===(void 0===p?"undefined":_typeof(p)))if("function"==typeof f)f.toString()!==p.toString()&&(s[h]=[r.Copy,p]);else if("object"!==(void 0===f?"undefined":_typeof(f))||null===f)s[h]=[r.Copy,p];else{var g=n.call(f),m=n.call(p);if(g===m)if(f instanceof Date)Number(f)!==Number(p)&&(s[h]=[r.Copy,clone(p)]);else if(f instanceof Map)s[h]=[r.Copy,clone(p)];else if(f instanceof RegExp)f.toString()!==p.toString()&&(s[h]=[r.Copy,clone(p)]);else if(f instanceof Set)s[h]=[r.Copy,clone(p)];else if("[object Object]"!==g)s[h]=[r.Copy,clone(p)];else{var v=e(f,p);null!==v&&(s[h]=v)}else s[h]=[r.Copy,clone(p)]}else s[h]=[r.Copy,"object"!==(void 0===p?"undefined":_typeof(p))||null===p?p:clone(p)]}else if(i&&Util.isNumeric(h)){var y=Number(h);if(!u){u="";do{u+="~"}while(o.some(l));s[u]=[r.SpliceArray,y,y]}y<s[u][1]&&(s[u][1]=y),y>s[u][2]&&(s[u][2]=y)}else s[h]=r.Delete;else s[h]=[r.Copy,"object"!==(void 0===p?"undefined":_typeof(p))||null===p?p:clone(p)]}return Object.keys(s).length>0?s:null}function t(e,a){for(var n=Object.keys(a||{}),i=clone(e),o=0,s=n.length;o<s;++o){var u=n[o],l=a[u];if(l===r.Delete)delete i[u];else if(l instanceof Array)switch(l[0]){case r.SpliceArray:i.splice(l[1],l[2]-l[1]+1);break;case r.Copy:i[u]=clone(l[1]);break;case r.CopyDate:i[u]=new Date(l[1])}else i[u]=t(i[u],l)}return i}var r=Util.toEnum({Delete:0,SpliceArray:1,Copy:2,CopyDate:3});return Object.freeze(Object.defineProperties({},{Op:{value:r},diff:{value:e},patch:{value:t}}))}(),L10n=function(){function e(){r()}function t(e,t){if(!e)return"";var r=function(e){var t=void 0;return e.some(function(e){return!!l10nStrings.hasOwnProperty(e)&&(t=e,!0)}),t}(Array.isArray(e)?e:[e]);if(!r)return"";for(var i=l10nStrings[r],o=0;n.test(i);){if(++o>50)throw new Error("L10n.get exceeded maximum replacement iterations, probable infinite loop");a.lastIndex=0,i=i.replace(a,function(e){var r=e.slice(1,-1);return t&&t.hasOwnProperty(r)?t[r]:l10nStrings.hasOwnProperty(r)?l10nStrings[r]:void 0})}return i}function r(){strings&&Object.keys(strings).length>0&&Object.keys(l10nStrings).forEach(function(e){try{var t=void 0;switch(e){case"identity":t=strings.identity;break;case"aborting":t=strings.aborting;break;case"cancel":t=strings.cancel;break;case"close":t=strings.close;break;case"ok":t=strings.ok;break;case"errorTitle":t=strings.errors.title;break;case"errorNonexistentPassage":t=strings.errors.nonexistentPassage;break;case"errorSaveMissingData":t=strings.errors.saveMissingData;break;case"errorSaveIdMismatch":t=strings.errors.saveIdMismatch;break;case"warningDegraded":t=strings.warnings.degraded;break;case"debugViewTitle":t=strings.debugView.title;break;case"debugViewToggle":t=strings.debugView.toggle;break;case"uiBarToggle":t=strings.uiBar.toggle;break;case"uiBarBackward":t=strings.uiBar.backward;break;case"uiBarForward":t=strings.uiBar.forward;break;case"uiBarJumpto":t=strings.uiBar.jumpto;break;case"jumptoTitle":t=strings.jumpto.title;break;case"jumptoTurn":t=strings.jumpto.turn;break;case"jumptoUnavailable":t=strings.jumpto.unavailable;break;case"savesTitle":t=strings.saves.title;break;case"savesDisallowed":t=strings.saves.disallowed;break;case"savesIncapable":t=strings.saves.incapable;break;case"savesLabelAuto":t=strings.saves.labelAuto;break;case"savesLabelDelete":t=strings.saves.labelDelete;break;case"savesLabelExport":t=strings.saves.labelExport;break;case"savesLabelImport":t=strings.saves.labelImport;break;case"savesLabelLoad":t=strings.saves.labelLoad;break;case"savesLabelClear":t=strings.saves.labelClear;break;case"savesLabelSave":t=strings.saves.labelSave;break;case"savesLabelSlot":t=strings.saves.labelSlot;break;case"savesUnavailable":t=strings.saves.unavailable;break;case"savesUnknownDate":t=strings.saves.unknownDate;break;case"settingsTitle":t=strings.settings.title;break;case"settingsOff":t=strings.settings.off;break;case"settingsOn":t=strings.settings.on;break;case"settingsReset":t=strings.settings.reset;break;case"restartTitle":t=strings.restart.title;break;case"restartPrompt":t=strings.restart.prompt;break;case"shareTitle":t=strings.share.title;break;case"autoloadTitle":t=strings.autoload.title;break;case"autoloadCancel":t=strings.autoload.cancel;break;case"autoloadOk":t=strings.autoload.ok;break;case"autoloadPrompt":t=strings.autoload.prompt;break;case"macroBackText":t=strings.macros.back.text;break;case"macroReturnText":t=strings.macros.return.text}t&&(l10nStrings[e]=t.replace(/%\w+%/g,function(e){return"{"+e.slice(1,-1)+"}"}))}catch(e){}})}var a=/\{\w+\}/g,n=new RegExp(a.source);return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:t}}))}(),strings={errors:{},warnings:{},debugView:{},uiBar:{},jumpto:{},saves:{},settings:{},restart:{},share:{},autoload:{},macros:{back:{},return:{}}},l10nStrings={identity:"game",aborting:"Aborting",cancel:"Cancel",close:"Close",ok:"OK",errorTitle:"Error",errorToggle:"Toggle the error view",errorNonexistentPassage:'the passage "{passage}" does not exist',errorSaveMissingData:"save is missing required data. Either the loaded file is not a save or the save has become corrupted",errorSaveIdMismatch:"save is from the wrong {identity}",_warningIntroLacking:"Your browser either lacks or has disabled",_warningOutroDegraded:", so this {identity} is running in a degraded mode. You may be able to continue, however, some parts may not work properly.",warningNoWebStorage:"{_warningIntroLacking} the Web Storage API{_warningOutroDegraded}",warningDegraded:"{_warningIntroLacking} some of the capabilities required by this {identity}{_warningOutroDegraded}",debugBarToggle:"Toggle the debug bar",debugBarNoWatches:"— no watches set —",debugBarAddWatch:"Add watch",debugBarDeleteWatch:"Delete watch",debugBarWatchAll:"Watch all",debugBarWatchNone:"Delete all",debugBarLabelAdd:"Add",debugBarLabelWatch:"Watch",debugBarLabelTurn:"Turn",debugBarLabelViews:"Views",
+debugBarViewsToggle:"Toggle the debug views",debugBarWatchToggle:"Toggle the watch panel",uiBarToggle:"Toggle the UI bar",uiBarBackward:"Go backward within the {identity} history",uiBarForward:"Go forward within the {identity} history",uiBarJumpto:"Jump to a specific point within the {identity} history",jumptoTitle:"Jump To",jumptoTurn:"Turn",jumptoUnavailable:"No jump points currently available…",savesTitle:"Saves",savesDisallowed:"Saving has been disallowed on this passage.",savesIncapable:"{_warningIntroLacking} the capabilities required to support saves, so saves have been disabled for this session.",savesLabelAuto:"Autosave",savesLabelDelete:"Delete",savesLabelExport:"Save to Disk…",savesLabelImport:"Load from Disk…",savesLabelLoad:"Load",savesLabelClear:"Delete All",savesLabelSave:"Save",savesLabelSlot:"Slot",savesUnavailable:"No save slots found…",savesUnknownDate:"unknown",settingsTitle:"Settings",settingsOff:"Off",settingsOn:"On",settingsReset:"Reset to Defaults",restartTitle:"Restart",restartPrompt:"Are you sure that you want to restart? Unsaved progress will be lost.",shareTitle:"Share",autoloadTitle:"Autoload",autoloadCancel:"Go to start",autoloadOk:"Load autosave",autoloadPrompt:"An autosave exists. Load it now or go to the start?",macroBackText:"Back",macroReturnText:"Return"},Config=function(){function e(){throw new Error("Config.history.mode has been deprecated and is no longer used by SugarCube, please remove it from your code")}function t(){throw new Error("Config.history.tracking has been deprecated, use Config.history.maxStates instead")}return Object.seal({debug:!1,addVisitedLinkClass:!1,cleanupWikifierOutput:!1,loadDelay:0,history:Object.seal({controls:!0,maxStates:100,get mode(){e()},set mode(t){e()},get tracking(){t()},set tracking(e){t()}}),macros:Object.seal({ifAssignmentError:!0,maxLoopIterations:1e3}),navigation:Object.seal({override:undefined}),passages:Object.seal({descriptions:undefined,displayTitles:!1,nobr:!1,start:undefined,transitionOut:undefined}),saves:Object.seal({autoload:undefined,autosave:undefined,id:"untitled-story",isAllowed:undefined,onLoad:undefined,onSave:undefined,slots:8,version:undefined}),ui:Object.seal({stowBarInitially:800,updateStoryElements:!0}),transitionEndEventName:function(){for(var e=new Map([["transition","transitionend"],["MSTransition","msTransitionEnd"],["WebkitTransition","webkitTransitionEnd"],["MozTransition","transitionend"]]),t=[].concat(_toConsumableArray(e.keys())),r=document.createElement("div"),a=0;a<t.length;++a)if(r.style[t[a]]!==undefined)return e.get(t[a]);return""}()})}(),State=function(){function e(){session.delete("state"),W=[],R=c(),F=-1,B=[],V=null===V?null:new PRNGWrapper(V.seed,!1)}function t(){if(session.has("state")){var e=session.get("state");return null!=e&&(a(e),!0)}return!1}function r(e){var t={index:F};return e?t.history=clone(W):t.delta=A(W),B.length>0&&(t.expired=[].concat(_toConsumableArray(B))),null!==V&&(t.seed=V.seed),t}function a(e,t){if(null==e)throw new Error("state object is null or undefined");if(!e.hasOwnProperty(t?"history":"delta")||0===e[t?"history":"delta"].length)throw new Error("state object has no history or history is empty");if(!e.hasOwnProperty("index"))throw new Error("state object has no index");if(null!==V&&!e.hasOwnProperty("seed"))throw new Error("state object has no seed, but PRNG is enabled");if(null===V&&e.hasOwnProperty("seed"))throw new Error("state object has seed, but PRNG is disabled");W=t?clone(e.history):P(e.delta),F=e.index,B=e.hasOwnProperty("expired")?[].concat(_toConsumableArray(e.expired)):[],e.hasOwnProperty("seed")&&(V.seed=e.seed),g(F)}function n(){return r(!0)}function i(e){return a(e,!0)}function o(){return B}function s(){return B.length+v()}function u(){return B.concat(W.slice(0,v()).map(function(e){return e.title}))}function l(e){return null!=e&&""!==e&&(!!B.includes(e)||!!W.slice(0,v()).some(function(t){return t.title===e}))}function c(e,t){return{title:null==e?"":String(e),variables:null==t?{}:clone(t)}}function d(){return R}function h(){return F}function f(){return R.title}function p(){return R.variables}function g(e){if(null==e)throw new Error("moment activation attempted with null or undefined");switch(void 0===e?"undefined":_typeof(e)){case"object":R=clone(e);break;case"number":if(b())throw new Error("moment activation attempted with index on empty history");if(e<0||e>=y())throw new RangeError("moment activation attempted with out-of-bounds index; need [0, "+(y()-1)+"], got "+e);R=clone(W[e]);break;default:throw new TypeError('moment activation attempted with a "'+(void 0===e?"undefined":_typeof(e))+'"; must be an object or valid history stack index')}return null!==V&&(V=PRNGWrapper.unmarshal({seed:V.seed,pull:R.pull})),session.set("state",r()),jQuery.event.trigger(":historyupdate"),R}function m(){return W}function v(){return F+1}function y(){return W.length}function b(){return 0===W.length}function w(){return W.length>0?W[F]:null}function k(){return W.length>0?W[W.length-1]:null}function S(){return W.length>0?W[0]:null}function E(e){return b()||e<0||e>F?null:W[e]}function x(e){if(b())return null;var t=1+(e?Math.abs(e):0);return t>v()?null:W[v()-t]}function j(e){if(b()||null==e||""===e)return!1;for(var t=F;t>=0;--t)if(W[t].title===e)return!0;return!1}function C(e){if(v()<y()&&W.splice(v(),y()-v()),W.push(c(e,R.variables)),V&&(k().pull=V.pull),Config.history.maxStates>0)for(;y()>Config.history.maxStates;)B.push(W.shift().title);return F=y()-1,g(F),v()}function T(e){return!(null==e||e<0||e>=y()||e===F)&&(F=e,g(F),!0)}function O(e){return null!=e&&0!==e&&T(F+e)}function A(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,a=e.length;r<a;++r)t.push(Diff.diff(e[r-1],e[r]));return t}function P(e){if(!Array.isArray(e))return null;if(0===e.length)return[];for(var t=[clone(e[0])],r=1,a=e.length;r<a;++r)t.push(Diff.patch(t[r-1],e[r]));return t}function _(e,t){if(!b()){var r=void 0;throw r="a script-tagged passage",new Error("State.initPRNG must be called during initialization, within either "+r+" or the StoryInit special passage")}V=new PRNGWrapper(e,t),R.pull=V.pull}function N(){return V?V.random():Math.random()}function D(){U={},TempVariables=U}function M(){return U}function I(e){var t=Q(e);if(null!==t){for(var r=t.names,a=t.store,n=0,i=r.length;n<i;++n){if(void 0===a[r[n]])return;a=a[r[n]]}return a}}function L(e,t){var r=Q(e);if(null===r)return!1;for(var a=r.names,n=a.pop(),i=r.store,o=0,s=a.length;o<s;++o){if(void 0===i[a[o]])return!1;i=i[a[o]]}return i[n]=t,!0}function Q(e){for(var t={store:"$"===e[0]?State.variables:State.temporary,names:[]},r=e,a=void 0;null!==(a=z.exec(r));)r=r.slice(a[0].length),a[1]?t.names.push(a[1]):a[2]?t.names.push(a[2]):a[3]?t.names.push(a[3]):a[4]?t.names.push(a[4]):a[5]?t.names.push(I(a[5])):a[6]&&t.names.push(Number(a[6]));return""===r?t:null}var W=[],R=c(),F=-1,B=[],V=null,U={},z=new RegExp("^(?:"+Patterns.variableSigil+"("+Patterns.identifier+")|\\.("+Patterns.identifier+")|\\[(?:(?:\"((?:\\\\.|[^\"\\\\])+)\")|(?:'((?:\\\\.|[^'\\\\])+)')|("+Patterns.variableSigil+Patterns.identifierFirstChar+".*)|(\\d+))\\])");return Object.freeze(Object.defineProperties({},{reset:{value:e},restore:{value:t},marshalForSave:{value:n},unmarshalForSave:{value:i},expired:{get:o},turns:{get:s},passages:{get:u},hasPlayed:{value:l},active:{get:d},activeIndex:{get:h},passage:{get:f},variables:{get:p},history:{get:m},length:{get:v},size:{get:y},isEmpty:{value:b},current:{get:w},top:{get:k},bottom:{get:S},index:{value:E},peek:{value:x},has:{value:j},create:{value:C},goTo:{value:T},go:{value:O},deltaEncode:{value:A},deltaDecode:{value:P},initPRNG:{value:_},random:{value:N},clearTemporary:{value:D},temporary:{get:M},getVar:{value:I},setVar:{value:L},restart:{value:function(){return Engine.restart()}},backward:{value:function(){return Engine.backward()}},forward:{value:function(){return Engine.forward()}},display:{value:function(){return Engine.display.apply(Engine,arguments)}},show:{value:function(){return Engine.show.apply(Engine,arguments)}},play:{value:function(){return Engine.play.apply(Engine,arguments)}}}))}(),Scripting=function(){function addAccessibleClickHandler(e,t,r,a,n){if(arguments.length<2)throw new Error("addAccessibleClickHandler insufficient number of parameters");var i=void 0,o=void 0;if("function"==typeof t?(i=t,o={namespace:a,one:!!r}):(i=r,o={namespace:n,one:!!a,selector:t}),"function"!=typeof i)throw new TypeError("addAccessibleClickHandler handler parameter must be a function");return jQuery(e).ariaClick(o,i)}function insertElement(e,t,r,a,n,i){var o=jQuery(document.createElement(t));return r&&o.attr("id",r),a&&o.addClass(a),i&&o.attr("title",i),n&&o.text(n),e&&o.appendTo(e),o[0]}function insertText(e,t){jQuery(e).append(document.createTextNode(t))}function removeChildren(e){jQuery(e).empty()}function removeElement(e){jQuery(e).remove()}function fade(e,t){function r(){i+=.05*n,a(o,Math.easeInOut(i)),(1===n&&i>=1||-1===n&&i<=0)&&(e.style.visibility="in"===t.fade?"visible":"hidden",o.parentNode.replaceChild(e,o),o=null,window.clearInterval(s),t.onComplete&&t.onComplete())}function a(e,t){e.style.zoom=1,e.style.filter="alpha(opacity="+Math.floor(100*t)+")",e.style.opacity=t}var n="in"===t.fade?1:-1,i=void 0,o=e.cloneNode(!0),s=void 0;e.parentNode.replaceChild(o,e),"in"===t.fade?(i=0,o.style.visibility="visible"):i=1,a(o,i),s=window.setInterval(r,25)}function scrollWindowTo(e,t){function r(){l+=n,window.scroll(0,i+u*(s*Math.easeInOut(l))),l>=1&&window.clearInterval(c)}function a(e){for(var t=0;e.offsetParent;)t+=e.offsetTop,e=e.offsetParent;return t}var n=null!=t?Number(t):.1;Number.isNaN(n)||!Number.isFinite(n)||n<0?n=.1:n>1&&(n=1);var i=window.scrollY?window.scrollY:document.body.scrollTop,o=function(e){var t=a(e),r=t+e.offsetHeight,n=window.scrollY?window.scrollY:document.body.scrollTop,i=window.innerHeight?window.innerHeight:document.body.clientHeight,o=n+i;return t>=n&&r>o&&e.offsetHeight<i?t-(i-e.offsetHeight)+20:t}(e),s=Math.abs(i-o),u=i>o?-1:1,l=0,c=void 0;c=window.setInterval(r,25)}function either(){if(0!==arguments.length)return Array.prototype.concat.apply([],arguments).random()}function hasVisited(){if(0===arguments.length)throw new Error("hasVisited called with insufficient parameters");if(State.isEmpty())return!1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=0,a=e.length;r<a;++r)if(!t.includes(e[r]))return!1;return!0}function lastVisited(){if(0===arguments.length)throw new Error("lastVisited called with insufficient parameters");if(State.isEmpty())return-1;for(var e=Array.prototype.concat.apply([],arguments),t=State.passages,r=t.length-1,a=State.turns,n=0,i=e.length;n<i&&a>-1;++n){var o=t.lastIndexOf(e[n]);a=Math.min(a,-1===o?-1:r-o)}return a}function passage(){return State.passage}function previous(){var e=State.passages;if(arguments.length>0){var t=Number(arguments[0]);if(!Number.isSafeInteger(t)||t<1)throw new RangeError("previous offset parameter must be a positive integer greater than zero");return e.length>t?e[e.length-1-t]:""}for(var r=e.length-2;r>=0;--r)if(e[r]!==State.passage)return e[r];return""}function random(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("random called with insufficient parameters");case 1:e=0,t=Math.trunc(arguments[0]);break;default:e=Math.trunc(arguments[0]),t=Math.trunc(arguments[1])}if(!Number.isInteger(e))throw new Error("random min parameter must be an integer");if(!Number.isInteger(t))throw new Error("random max parameter must be an integer");if(e>t){var r=[t,e];e=r[0],t=r[1]}return Math.floor(State.random()*(t-e+1))+e}function randomFloat(){var e=void 0,t=void 0;switch(arguments.length){case 0:throw new Error("randomFloat called with insufficient parameters");case 1:e=0,t=Number(arguments[0]);break;default:e=Number(arguments[0]),t=Number(arguments[1])}if(Number.isNaN(e)||!Number.isFinite(e))throw new Error("randomFloat min parameter must be a number");if(Number.isNaN(t)||!Number.isFinite(t))throw new Error("randomFloat max parameter must be a number");if(e>t){var r=[t,e];e=r[0],t=r[1]}return State.random()*(t-e)+e}function tags(){if(0===arguments.length)return Story.get(State.passage).tags.slice(0);for(var e=Array.prototype.concat.apply([],arguments),t=[],r=0,a=e.length;r<a;++r)t=t.concat(Story.get(e[r]).tags);return t}function temporary(){return State.temporary}function time(){return null===Engine.lastPlay?0:Util.now()-Engine.lastPlay}function turns(){return State.turns}function variables(){return State.variables}function visited(){if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],0===arguments.length?[State.passage]:arguments),t=State.passages,r=State.turns,a=0,n=e.length;a<n&&r>0;++a)r=Math.min(r,t.count(e[a]));return r}function visitedTags(){if(0===arguments.length)throw new Error("visitedTags called with insufficient parameters");if(State.isEmpty())return 0;for(var e=Array.prototype.concat.apply([],arguments),t=e.length,r=State.passages,a=new Map,n=0,i=0,o=r.length;i<o;++i){var s=r[i];if(a.has(s))a.get(s)&&++n;else{var u=Story.get(s).tags;if(u.length>0){for(var l=0,c=0;c<t;++c)u.includes(e[c])&&++l;l===t?(++n,a.set(s,!0)):a.set(s,!1)}}}return n}function evalJavaScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,String(code),output)}function evalTwineScript(code,output){return function(code,output){return eval(code)}.call(output?{output:output}:null,parse(String(code)),output)}var _ref8=function(){function e(e){return e.reduce(function(e,t){return e=e.then(t)},Promise.resolve())}function t(e){return Util.parseUrl(e).path.replace(/^[^\w]+|[^\w]+$/g,"").replace(/[^\w]+/g,"-").toLocaleLowerCase()}function r(){function r(e){return new Promise(function(r,a){jQuery(document.createElement("script")).one("load abort error",function(e){jQuery(e.target).off(),"load"===e.type?r(e.target):a(e.target)}).appendTo(document.head).attr({id:"script-imported-"+t(e),type:"text/javascript",src:e})})}for(var a=arguments.length,n=Array(a),i=0;i<a;i++)n[i]=arguments[i];return Promise.all(n.map(function(t){return Array.isArray(t)?e(t.map(function(e){return function(){return r(e)}})):r(t)}))}function a(){function r(e){return new Promise(function(r,a){jQuery(document.createElement("link")).one("load abort error",function(e){jQuery(e.target).off(),"load"===e.type?r(e.target):a(e.target)}).appendTo(document.head).attr({id:"style-imported-"+t(e),rel:"stylesheet",href:e})})}for(var a=arguments.length,n=Array(a),i=0;i<a;i++)n[i]=arguments[i];return Promise.all(n.map(function(t){return Array.isArray(t)?e(t.map(function(e){return function(){return r(e)}})):r(t)}))}return{importScripts:r,importStyles:a}}(),importScripts=_ref8.importScripts,importStyles=_ref8.importStyles,parse=function(){function e(e){if(0!==r.lastIndex)throw new RangeError("Scripting.parse last index is non-zero at start");for(var n=e,i=void 0;null!==(i=r.exec(n));)if(i[5]){var o=i[5];if("$"===o||"_"===o)continue;if(a.test(o))o=o[0];else if("is"===o){var s=r.lastIndex,u=n.slice(s);/^\s+not\b/.test(u)&&(n=n.splice(s,u.search(/\S/)),o="isnot")}t.hasOwnProperty(o)&&(n=n.splice(i.index,o.length,t[o]),r.lastIndex+=t[o].length-o.length)}return n}var t=Object.freeze({$:"State.variables.",_:"State.temporary.",to:"=",eq:"==",neq:"!=",is:"===",isnot:"!==",gt:">",gte:">=",lt:"<",lte:"<=",and:"&&",or:"||",not:"!",def:'"undefined" !== typeof',ndef:'"undefined" === typeof'}),r=new RegExp(["(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","([=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}]+)","([^\"'=+\\-*\\/%<>&\\|\\^~!?:,;\\(\\)\\[\\]{}\\s]+)"].join("|"),"g"),a=new RegExp("^"+Patterns.variable);return e}();return Object.freeze(Object.defineProperties({},{parse:{value:parse},evalJavaScript:{value:evalJavaScript},evalTwineScript:{value:evalTwineScript}}))}(),Wikifier=function(){var e=0,t=function(){function t(r,a,n){_classCallCheck(this,t),t.Parser.Profile.isEmpty()&&t.Parser.Profile.compile(),Object.defineProperties(this,{source:{value:String(a)},options:{writable:!0,value:Object.assign({profile:"all"},n)},nextMatch:{writable:!0,value:0},output:{writable:!0,value:null},_rawArgs:{writable:!0,value:""}}),null==r?this.output=document.createDocumentFragment():r.jquery?this.output=r[0]:this.output=r;try{++e,this.subWikify(this.output),1===e&&Config.cleanupWikifierOutput&&convertBreaks(this.output)}finally{--e}}return _createClass(t,[{key:"subWikify",value:function(e,r,a){var n=this.output,i=void 0;this.output=e,null!=a&&"object"===(void 0===a?"undefined":_typeof(a))&&(i=this.options,this.options=Object.assign({},this.options,a));var o=t.Parser.Profile.get(this.options.profile),s=r?new RegExp("(?:"+r+")",this.options.ignoreTerminatorCase?"gim":"gm"):null,u=void 0,l=void 0;do{if(o.parserRegExp.lastIndex=this.nextMatch,s&&(s.lastIndex=this.nextMatch),l=o.parserRegExp.exec(this.source),(u=s?s.exec(this.source):null)&&(!l||u.index<=l.index))return u.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,u.index),this.matchStart=u.index,this.matchLength=u[0].length,this.matchText=u[0],this.nextMatch=s.lastIndex,this.output=n,void(i&&(this.options=i));if(l){l.index>this.nextMatch&&this.outputText(this.output,this.nextMatch,l.index),this.matchStart=l.index,this.matchLength=l[0].length,this.matchText=l[0],this.nextMatch=o.parserRegExp.lastIndex;for(var c=void 0,d=1,h=l.length;d<h;++d)if(l[d]){c=d-1;break}if(o.parsers[c].handler(this),null!=TempState.break)break}}while(u||l);null==TempState.break?this.nextMatch<this.source.length&&(this.outputText(this.output,this.nextMatch,this.source.length),this.nextMatch=this.source.length):this.output.lastChild&&this.output.lastChild.nodeType===Node.ELEMENT_NODE&&"BR"===this.output.lastChild.nodeName.toUpperCase()&&jQuery(this.output.lastChild).remove(),this.output=n,i&&(this.options=i)}},{key:"outputText",value:function(e,t,r){jQuery(e).append(document.createTextNode(this.source.substring(t,r)))}},{key:"rawArgs",value:function(){return this._rawArgs}},{key:"fullArgs",value:function(){return Scripting.parse(this._rawArgs)}}],[{key:"wikifyEval",value:function(e){var r=document.createDocumentFragment();new t(r,e);var a=r.querySelector(".error");if(null!==a)throw new Error(a.textContent.replace(errorPrologRegExp,""));return r}},{key:"createInternalLink",value:function(e,t,r,a){var n=jQuery(document.createElement("a"));return null!=t&&(n.attr("data-passage",t),Story.has(t)?(n.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(t)&&n.addClass("link-visited")):n.addClass("link-broken"),n.ariaClick({one:!0},function(){"function"==typeof a&&a(),Engine.play(t)})),r&&n.append(document.createTextNode(r)),e&&n.appendTo(e),n[0]}},{key:"createExternalLink",value:function(e,t,r){var a=jQuery(document.createElement("a")).attr("target","_blank").addClass("link-external").text(r).appendTo(e);return null!=t&&a.attr({href:t,tabindex:0}),a[0]}},{key:"isExternalLink",value:function(e){return!Story.has(e)&&(new RegExp("^"+Patterns.url,"gim").test(e)||/[\/.?#]/.test(e))}}]),t}();return Object.defineProperty(t,"Parser",{value:function(){function e(){return d}function t(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("Wikifier.Parser.add parser parameter must be an object");if(!e.hasOwnProperty("name"))throw new Error('parser object missing required "name" property');if("string"!=typeof e.name)throw new Error('parser object "name" property must be a string');if(!e.hasOwnProperty("match"))throw new Error('parser object missing required "match" property');if("string"!=typeof e.match)throw new Error('parser object "match" property must be a string');if(!e.hasOwnProperty("handler"))throw new Error('parser object missing required "handler" property');if("function"!=typeof e.handler)throw new Error('parser object "handler" property must be a function');if(e.hasOwnProperty("profiles")&&!Array.isArray(e.profiles))throw new Error('parser object "profiles" property must be an array');if(n(e.name))throw new Error('cannot clobber existing parser "'+e.name+'"');d.push(e)}function r(e){var t=d.find(function(t){return t.name===e});t&&d.delete(t)}function a(){return 0===d.length}function n(e){return!!d.find(function(t){return t.name===e})}function i(e){return d.find(function(t){return t.name===e})||null}function o(){return h}function s(){var e=d,t=e.filter(function(e){return!Array.isArray(e.profiles)||e.profiles.includes("core")});return h=Object.freeze({all:{parsers:e,parserRegExp:new RegExp(e.map(function(e){return"("+e.match+")"}).join("|"),"gm")},core:{parsers:t,parserRegExp:new RegExp(t.map(function(e){return"("+e.match+")"}).join("|"),"gm")}})}function u(){return"object"!==(void 0===h?"undefined":_typeof(h))||0===Object.keys(h).length}function l(e){if("object"!==(void 0===h?"undefined":_typeof(h))||!h.hasOwnProperty(e))throw new Error('nonexistent parser profile "'+e+'"');return h[e]}function c(e){return"object"===(void 0===h?"undefined":_typeof(h))&&h.hasOwnProperty(e)}var d=[],h=void 0;return Object.freeze(Object.defineProperties({},{parsers:{get:e},add:{value:t},delete:{value:r},isEmpty:{value:a},has:{value:n},get:{value:i},Profile:{value:Object.freeze(Object.defineProperties({},{profiles:{get:o},compile:{value:s},isEmpty:{value:u},has:{value:c},get:{value:l}}))}}))}()}),Object.defineProperties(t,{helpers:{value:{}},getValue:{value:State.getVar},setValue:{value:State.setVar},parse:{value:Scripting.parse},evalExpression:{value:Scripting.evalTwineScript},evalStatements:{value:Scripting.evalTwineScript},textPrimitives:{value:Patterns}}),Object.defineProperties(t.helpers,{inlineCss:{value:function(){function e(e){var r={classes:[],id:"",styles:{}},a=void 0;do{t.lastIndex=e.nextMatch;var n=t.exec(e.source);a=n&&n.index===e.nextMatch,a&&(n[1]?r.styles[Util.fromCssProperty(n[1])]=n[2].trim():n[3]?r.styles[Util.fromCssProperty(n[3])]=n[4].trim():n[5]?r.classes=r.classes.concat(n[5].slice(1).split(/\./)):n[6]&&(r.id=n[6].slice(1).split(/#/).pop()),e.nextMatch=t.lastIndex)}while(a);return r}var t=new RegExp(Patterns.inlineCss,"gm");return e}()},evalText:{value:function(e){var t=void 0;try{t=Scripting.evalTwineScript(e),null==t||"function"==typeof t?t=e:(t=String(t),/\[(?:object(?:\s+[^\]]+)?|native\s+code)\]/.test(t)&&(t=e))}catch(r){t=e}return t}},evalPassageId:{value:function(e){return null==e||Story.has(e)?e:t.helpers.evalText(e)}},hasBlockContext:{value:function(e){for(var t="function"==typeof window.getComputedStyle,r=e.length-1;r>=0;--r){var a=e[r];switch(a.nodeType){case Node.ELEMENT_NODE:var n=a.nodeName.toUpperCase();if("BR"===n)return!0;var i=t?window.getComputedStyle(a,null):a.currentStyle;if(i&&i.display){if("none"===i.display)continue;return"block"===i.display}switch(n){case"ADDRESS":case"ARTICLE":case"ASIDE":case"BLOCKQUOTE":case"CENTER":case"DIV":case"DL":case"FIGURE":case"FOOTER":case"FORM":case"H1":case"H2":case"H3":case"H4":case"H5":case"H6":case"HEADER":case"HR":case"MAIN":case"NAV":case"OL":case"P":case"PRE":case"SECTION":case"TABLE":case"UL":return!0}return!1;case Node.COMMENT_NODE:continue;default:return!1}}return!0}},createShadowSetterCallback:{value:function(){function e(){if(!n&&!(n=t.Parser.get("macro")))throw new Error('cannot find "macro" parser');return n}function r(){for(var t=n||e(),r=new Set,a=t.context;null!==a;a=a.parent)a._shadows&&a._shadows.forEach(function(e){return r.add(e)});return[].concat(_toConsumableArray(r))}function a(e){var t={};return r().forEach(function(e){var r=e.slice(1),a="$"===e[0]?State.variables:State.temporary;t[e]=a[r]}),function(){var r=Object.keys(t),a=r.length>0?{}:null;try{return r.forEach(function(e){var r=e.slice(1),n="$"===e[0]?State.variables:State.temporary;n.hasOwnProperty(r)&&(a[r]=n[r]),n[r]=t[e]}),Scripting.evalJavaScript(e)}finally{r.forEach(function(e){var r=e.slice(1),n="$"===e[0]?State.variables:State.temporary;t[e]=n[r],a.hasOwnProperty(r)?n[r]=a[r]:delete n[r]})}}}var n=null;return a}()},parseSquareBracketedMarkup:{value:function(e){function t(){return c>=e.source.length?s:e.source[c]}function r(t){return t<1||c+t>=e.source.length?s:e.source[c+t]}function a(){return{error:String.format.apply(String,arguments),pos:c}}function n(){l=c}function i(t){var r=e.source.slice(l,c).trim();if(""===r)throw new Error("malformed wiki "+(f?"link":"image")+", empty "+t+" component");"link"===t&&"~"===r[0]?(u.forceInternal=!0,u.link=r.slice(1)):u[t]=r,l=c}function o(e){++c;e:for(;;){switch(t()){case"\\":++c;var r=t();if(r!==s&&"\n"!==r)break;case s:case"\n":return s;case e:break e}++c}return c}var s=-1,u={},l=e.matchStart,c=l+1,d=void 0,h=void 0,f=void 0,p=void 0;if("["===(p=t()))f=u.isLink=!0;else{switch(f=!1,p){case"<":u.align="left",++c;break;case">":u.align="right",++c}if(!/^[Ii][Mm][Gg]$/.test(e.source.slice(c,c+3)))return a("malformed square-bracketed wiki markup");c+=3,u.isImage=!0}if("["!==function(){return c>=e.source.length?s:e.source[c++]}())return a("malformed wiki {0}",f?"link":"image");d=1,h=0,n();try{e:for(;;){switch(p=t()){case s:case"\n":return a("unterminated wiki {0}",f?"link":"image");case'"':if(o(p)===s)return a("unterminated double quoted string in wiki {0}",f?"link":"image");break;case"'":if((4===h||3===h&&f)&&o(p)===s)return a("unterminated single quoted string in wiki {0}",f?"link":"image");break;case"|":0===h&&(i(f?"text":"title"),++l,h=1);break;case"-":0===h&&">"===r(1)&&(i(f?"text":"title"),++c,l+=2,h=1);break;case"<":0===h&&"-"===r(1)&&(i(f?"link":"source"),++c,l+=2,h=2);break;case"[":if(-1===h)return a("unexpected left square bracket '['");++d,1===d&&(n(),++l);break;case"]":if(0===--d){switch(h){case 0:case 1:i(f?"link":"source"),h=3;break;case 2:i(f?"text":"title"),h=3;break;case 3:f?(i("setter"),h=-1):(i("link"),h=4);break;case 4:i("setter"),h=-1}if(++c,"]"===t()){++c;break e}--c}}++c}}catch(e){return a(e.message)}return u.pos=c,u}}}),t}();!function(){function e(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createDocumentFragment()).append(t[1]).appendTo(e.output))}Wikifier.Parser.add({name:"quoteByBlock",profiles:["block"],match:"^<<<\\n",terminator:"^<<<\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.subWikify(jQuery(document.createElement("blockquote")).appendTo(e.output).get(0),this.terminator)}}),Wikifier.Parser.add({name:"quoteByLine",profiles:["block"],match:"^>+",lookahead:/^>+/gm,terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=[e.output],r=0,a=e.matchLength,n=void 0,i=void 0;do{if(a>r)for(i=r;i<a;++i)t.push(jQuery(document.createElement("blockquote")).appendTo(t[t.length-1]).get(0));else if(a<r)for(i=r;i>a;--i)t.pop();r=a,e.subWikify(t[t.length-1],this.terminator),jQuery(document.createElement("br")).appendTo(t[t.length-1]),this.lookahead.lastIndex=e.nextMatch;var o=this.lookahead.exec(e.source);n=o&&o.index===e.nextMatch,n&&(a=o[0].length,e.nextMatch+=o[0].length)}while(n)}}),Wikifier.Parser.add({name:"macro",profiles:["core"],match:"<<",lookahead:new RegExp("<<(/?"+Patterns.macroName+")(?:\\s*)((?:(?:\"(?:\\\\.|[^\"\\\\])*\")|(?:'(?:\\\\.|[^'\\\\])*')|(?:\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)|[^>]|(?:>(?!>)))*)>>","gm"),argsPattern:["(``)","`((?:\\\\.|[^`\\\\])+)`","(\"\"|'')",'("(?:\\\\.|[^"\\\\])+")',"('(?:\\\\.|[^'\\\\])+')","(\\[(?:[<>]?[Ii][Mm][Gg])?\\[[^\\r\\n]*?\\]\\]+)","([^`\"'\\s]+)","(`|\"|')"].join("|"),working:{source:"",name:"",arguments:"",index:0},context:null,handler:function(e){var t=this.lookahead.lastIndex=e.matchStart;if(this.parseTag(e)){var r=e.nextMatch,a=this.working.name,n=this.working.arguments,i=void 0;try{if(!(i=Macro.get(a))){if(Macro.tags.has(a)){var o=Macro.tags.get(a);return throwError(e.output,"child tag <<"+a+">> was found outside of a call to its parent macro"+(1===o.length?"":"s")+" <<"+o.join(">>, <<")+">>",e.source.slice(t,e.nextMatch))}return throwError(e.output,"macro <<"+a+">> does not exist",e.source.slice(t,e.nextMatch))}var s=null;if(i.hasOwnProperty("tags")&&!(s=this.parseBody(e,i)))return e.nextMatch=r,throwError(e.output,"cannot find a closing tag for macro <<"+a+">>",e.source.slice(t,e.nextMatch)+"…");if("function"!=typeof i.handler)return throwError(e.output,"macro <<"+a+">> handler function "+(i.hasOwnProperty("handler")?"is not a function":"does not exist"),e.source.slice(t,e.nextMatch));var u=s?s[0].args:this.createArgs(n,i.hasOwnProperty("skipArgs")&&!!i.skipArgs||i.hasOwnProperty("skipArg0")&&!!i.skipArg0);if(i.hasOwnProperty("_MACRO_API")){this.context=new MacroContext({macro:i,name:a,args:u,payload:s,source:e.source.slice(t,e.nextMatch),parent:this.context,parser:e});try{i.handler.call(this.context)}finally{this.context=this.context.parent}}else{var l=e._rawArgs;e._rawArgs=n;try{i.handler(e.output,a,u,e,s)}finally{e._rawArgs=l}}}catch(r){return throwError(e.output,"cannot execute "+(i&&i.isWidget?"widget":"macro")+" <<"+a+">>: "+r.message,e.source.slice(t,e.nextMatch))}finally{this.working.source="",this.working.name="",this.working.arguments="",this.working.index=0}}else e.outputText(e.output,e.matchStart,e.nextMatch)},parseTag:function(e){var t=this.lookahead.exec(e.source);return!(!t||t.index!==e.matchStart||!t[1])&&(e.nextMatch=this.lookahead.lastIndex,this.working.source=e.source.slice(t.index,this.lookahead.lastIndex),this.working.name=t[1],this.working.arguments=t[2],this.working.index=t.index,!0)},parseBody:function(e,t){for(var r=this.working.name,a="/"+r,n="end"+r,i=!!Array.isArray(t.tags)&&t.tags,o=[],s=t.hasOwnProperty("skipArgs")&&t.skipArgs,u=t.hasOwnProperty("skipArg0")&&t.skipArg0,l=-1,c=1,d=this.working.source,h=this.working.name,f=this.working.arguments,p=e.nextMatch;-1!==(e.matchStart=e.source.indexOf(this.match,e.nextMatch));)if(this.parseTag(e)){var g=this.working.source,m=this.working.name,v=this.working.arguments,y=this.working.index,b=e.nextMatch;switch(m){case r:++c;break;case n:case a:--c;break;default:if(1===c&&i)for(var w=0,k=i.length;w<k;++w)m===i[w]&&(o.push({source:d,name:h,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(p,y)}),d=g,h=m,f=v,p=b)}if(0===c){o.push({source:d,name:h,arguments:f,args:this.createArgs(f,s||0===o.length&&u),contents:e.source.slice(p,y)}),l=b;break}}else this.lookahead.lastIndex=e.nextMatch=e.matchStart+this.match.length;return-1!==l?(e.nextMatch=l,o):null},createArgs:function(e,t){var r=t?[]:this.parseArgs(e);return Object.defineProperties(r,{raw:{value:e},full:{value:Scripting.parse(e)}}),r},parseArgs:function(e){for(var t=new RegExp(this.argsPattern,"gm"),r=[],a=new RegExp("^"+Patterns.variable),n=void 0;null!==(n=t.exec(e));){var i=void 0;if(n[1])i=undefined;else if(n[2]){i=n[2];try{i=Scripting.evalTwineScript("("+i+")")}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}}else if(n[3])i="";else if(n[4]){i=n[4];try{i=Scripting.evalJavaScript(i)}catch(e){throw new Error("unable to parse macro argument '"+i+"': "+e.message)}}else if(n[5]){i=n[5];try{i=Scripting.evalJavaScript(i)}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}}else if(n[6]){i=n[6];var o=Wikifier.helpers.parseSquareBracketedMarkup({source:i,matchStart:0});if(o.hasOwnProperty("error"))throw new Error('unable to parse macro argument "'+i+'": '+o.error);if(o.pos<i.length)throw new Error('unable to parse macro argument "'+i+'": unexpected character(s) "'+i.slice(o.pos)+'" (pos: '+o.pos+")");o.isLink?(i={isLink:!0},i.count=o.hasOwnProperty("text")?2:1,i.link=Wikifier.helpers.evalPassageId(o.link),i.text=o.hasOwnProperty("text")?Wikifier.helpers.evalText(o.text):i.link,i.external=!o.forceInternal&&Wikifier.isExternalLink(i.link),
+i.setFn=o.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(o.setter)):null):o.isImage&&(i=function(e){var t={source:e,isImage:!0};if("data:"!==e.slice(0,5)&&Story.has(e)){var r=Story.get(e);r.tags.includes("Twine.image")&&(t.source=r.text,t.passage=r.title)}return t}(Wikifier.helpers.evalPassageId(o.source)),o.hasOwnProperty("align")&&(i.align=o.align),o.hasOwnProperty("title")&&(i.title=Wikifier.helpers.evalText(o.title)),o.hasOwnProperty("link")&&(i.link=Wikifier.helpers.evalPassageId(o.link),i.external=!o.forceInternal&&Wikifier.isExternalLink(i.link)),i.setFn=o.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(o.setter)):null)}else if(n[7])if(i=n[7],a.test(i))i=State.getVar(i);else if(/^(?:settings|setup)[.[]/.test(i))try{i=Scripting.evalTwineScript(i)}catch(e){throw new Error('unable to parse macro argument "'+i+'": '+e.message)}else if("null"===i)i=null;else if("undefined"===i)i=undefined;else if("true"===i)i=!0;else if("false"===i)i=!1;else{var s=Number(i);Number.isNaN(s)||(i=s)}else if(n[8]){var u=void 0;switch(n[8]){case"`":u="backquote expression";break;case'"':u="double quoted string";break;case"'":u="single quoted string"}throw new Error("unterminated "+u+" in macro argument string")}r.push(i)}return r}}),Wikifier.Parser.add({name:"prettyLink",profiles:["core"],match:"\\[\\[[^[]",handler:function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var r=Wikifier.helpers.evalPassageId(t.link),a=t.hasOwnProperty("text")?Wikifier.helpers.evalText(t.text):r,n=t.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,i=(Config.debug?new DebugView(e.output,"wiki-link","[[link]]",e.source.slice(e.matchStart,e.nextMatch)):e).output;t.forceInternal||!Wikifier.isExternalLink(r)?Wikifier.createInternalLink(i,r,a,n):Wikifier.createExternalLink(i,r,a)}}),Wikifier.Parser.add({name:"urlLink",profiles:["core"],match:Patterns.url,handler:function(e){e.outputText(Wikifier.createExternalLink(e.output,e.matchText),e.matchStart,e.nextMatch)}}),Wikifier.Parser.add({name:"image",profiles:["core"],match:"\\[[<>]?[Ii][Mm][Gg]\\[",handler:function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup(e);if(t.hasOwnProperty("error"))return void e.outputText(e.output,e.matchStart,e.nextMatch);e.nextMatch=t.pos;var r=void 0;Config.debug&&(r=new DebugView(e.output,"wiki-image",t.hasOwnProperty("link")?"[img[][link]]":"[img[]]",e.source.slice(e.matchStart,e.nextMatch)),r.modes({block:!0}));var a=t.hasOwnProperty("setter")?Wikifier.helpers.createShadowSetterCallback(Scripting.parse(t.setter)):null,n=(Config.debug?r:e).output,i=void 0;if(t.hasOwnProperty("link")){var o=Wikifier.helpers.evalPassageId(t.link);n=t.forceInternal||!Wikifier.isExternalLink(o)?Wikifier.createInternalLink(n,o,null,a):Wikifier.createExternalLink(n,o),n.classList.add("link-image")}if(n=jQuery(document.createElement("img")).appendTo(n).get(0),i=Wikifier.helpers.evalPassageId(t.source),"data:"!==i.slice(0,5)&&Story.has(i)){var s=Story.get(i);s.tags.includes("Twine.image")&&(n.setAttribute("data-passage",s.title),i=s.text)}n.src=i,t.hasOwnProperty("title")&&(n.title=Wikifier.helpers.evalText(t.title)),t.hasOwnProperty("align")&&(n.align=t.align)}}),Wikifier.Parser.add({name:"monospacedByBlock",profiles:["block"],match:"^\\{\\{\\{\\n",lookahead:/^\{\{\{\n((?:^[^\n]*\n)+?)(^\}\}\}$\n?)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);if(t&&t.index===e.matchStart){var r=jQuery(document.createElement("pre"));jQuery(document.createElement("code")).text(t[1]).appendTo(r),r.appendTo(e.output),e.nextMatch=this.lookahead.lastIndex}}}),Wikifier.Parser.add({name:"formatByChar",profiles:["core"],match:"''|//|__|\\^\\^|~~|==|\\{\\{\\{",handler:function(e){switch(e.matchText){case"''":e.subWikify(jQuery(document.createElement("strong")).appendTo(e.output).get(0),"''");break;case"//":e.subWikify(jQuery(document.createElement("em")).appendTo(e.output).get(0),"//");break;case"__":e.subWikify(jQuery(document.createElement("u")).appendTo(e.output).get(0),"__");break;case"^^":e.subWikify(jQuery(document.createElement("sup")).appendTo(e.output).get(0),"\\^\\^");break;case"~~":e.subWikify(jQuery(document.createElement("sub")).appendTo(e.output).get(0),"~~");break;case"==":e.subWikify(jQuery(document.createElement("s")).appendTo(e.output).get(0),"==");break;case"{{{":var t=/\{\{\{((?:.|\n)*?)\}\}\}/gm;t.lastIndex=e.matchStart;var r=t.exec(e.source);r&&r.index===e.matchStart&&(jQuery(document.createElement("code")).text(r[1]).appendTo(e.output),e.nextMatch=t.lastIndex)}}}),Wikifier.Parser.add({name:"customStyle",profiles:["core"],match:"@@",terminator:"@@",blockRegExp:/\s*\n/gm,handler:function(e){var t=Wikifier.helpers.inlineCss(e);this.blockRegExp.lastIndex=e.nextMatch;var r=this.blockRegExp.exec(e.source),a=r&&r.index===e.nextMatch,n=jQuery(document.createElement(a?"div":"span")).appendTo(e.output);0===t.classes.length&&""===t.id&&0===Object.keys(t.styles).length?n.addClass("marked"):(t.classes.forEach(function(e){return n.addClass(e)}),""!==t.id&&n.attr("id",t.id),n.css(t.styles)),a?(e.nextMatch+=r[0].length,e.subWikify(n[0],"\\n?"+this.terminator)):e.subWikify(n[0],this.terminator)}}),Wikifier.Parser.add({name:"verbatimText",profiles:["core"],match:'"{3}|<[Nn][Oo][Ww][Ii][Kk][Ii]>',lookahead:/(?:"{3}((?:.|\n)*?)"{3})|(?:<[Nn][Oo][Ww][Ii][Kk][Ii]>((?:.|\n)*?)<\/[Nn][Oo][Ww][Ii][Kk][Ii]>)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex,jQuery(document.createElement("span")).addClass("verbatim").text(t[1]||t[2]).appendTo(e.output))}}),Wikifier.Parser.add({name:"horizontalRule",profiles:["core"],match:"^----+$\\n?|<[Hh][Rr]\\s*/?>\\n?",handler:function(e){jQuery(document.createElement("hr")).appendTo(e.output)}}),Wikifier.Parser.add({name:"emdash",profiles:["core"],match:"--",handler:function(e){jQuery(document.createTextNode("—")).appendTo(e.output)}}),Wikifier.Parser.add({name:"doubleDollarSign",profiles:["core"],match:"\\${2}",handler:function(e){jQuery(document.createTextNode("$")).appendTo(e.output)}}),Wikifier.Parser.add({name:"nakedVariable",profiles:["core"],match:Patterns.variable+"(?:(?:\\."+Patterns.identifier+")|(?:\\[\\d+\\])|(?:\\[\"(?:\\\\.|[^\"\\\\])+\"\\])|(?:\\['(?:\\\\.|[^'\\\\])+'\\])|(?:\\["+Patterns.variable+"\\]))*",handler:function(e){var t=toStringOrDefault(State.getVar(e.matchText),null);null===t?jQuery(document.createTextNode(e.matchText)).appendTo(e.output):new Wikifier((Config.debug?new DebugView(e.output,"variable",e.matchText,e.matchText):e).output,t)}}),Wikifier.Parser.add({name:"heading",profiles:["block"],match:"^!{1,6}",terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.subWikify(jQuery(document.createElement("h"+e.matchLength)).appendTo(e.output).get(0),this.terminator)}}),Wikifier.Parser.add({name:"table",profiles:["block"],match:"^\\|(?:[^\\n]*)\\|(?:[fhck]?)$",lookahead:/^\|([^\n]*)\|([fhck]?)$/gm,rowTerminator:"\\|(?:[cfhk]?)$\\n?",cellPattern:"(?:\\|([^\\n\\|]*)\\|)|(\\|[cfhk]?$\\n?)",cellTerminator:"(?:\\u0020*)\\|",rowTypes:{c:"caption",f:"tfoot",h:"thead","":"tbody"},handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));var t=jQuery(document.createElement("table")).appendTo(e.output).get(0),r=[],a=null,n=null,i=0,o=void 0;e.nextMatch=e.matchStart;do{this.lookahead.lastIndex=e.nextMatch;var s=this.lookahead.exec(e.source);if(o=s&&s.index===e.nextMatch){var u=s[2];"k"===u?(t.className=s[1],e.nextMatch+=s[0].length+1):(u!==a&&(a=u,n=jQuery(document.createElement(this.rowTypes[u])).appendTo(t)),"c"===a?(n.css("caption-side",0===i?"top":"bottom"),e.nextMatch+=1,e.subWikify(n[0],this.rowTerminator)):this.rowHandler(e,jQuery(document.createElement("tr")).appendTo(n).get(0),r),++i)}}while(o)},rowHandler:function(e,t,r){var a=this,n=new RegExp(this.cellPattern,"gm"),i=0,o=1,s=void 0;do{n.lastIndex=e.nextMatch;var u=n.exec(e.source);if(s=u&&u.index===e.nextMatch){if("~"===u[1]){var l=r[i];l&&(++l.rowCount,l.$element.attr("rowspan",l.rowCount).css("vertical-align","middle")),e.nextMatch=u.index+u[0].length-1}else if(">"===u[1])++o,e.nextMatch=u.index+u[0].length-1;else{if(u[2]){e.nextMatch=u.index+u[0].length;break}!function(){++e.nextMatch;for(var n=Wikifier.helpers.inlineCss(e),s=!1,u=!1,l=void 0;" "===e.source.substr(e.nextMatch,1);)s=!0,++e.nextMatch;"!"===e.source.substr(e.nextMatch,1)?(l=jQuery(document.createElement("th")).appendTo(t),++e.nextMatch):l=jQuery(document.createElement("td")).appendTo(t),r[i]={rowCount:1,$element:l},o>1&&(l.attr("colspan",o),o=1),e.subWikify(l[0],a.cellTerminator)," "===e.matchText.substr(e.matchText.length-2,1)&&(u=!0),n.classes.forEach(function(e){return l.addClass(e)}),""!==n.id&&l.attr("id",n.id),s&&u?n.styles["text-align"]="center":s?n.styles["text-align"]="right":u&&(n.styles["text-align"]="left"),l.css(n.styles),e.nextMatch=e.nextMatch-1}()}++i}}while(s)}}),Wikifier.Parser.add({name:"list",profiles:["block"],match:"^(?:(?:\\*+)|(?:#+))",lookahead:/^(?:(\*+)|(#+))/gm,terminator:"\\n",handler:function(e){if(!Wikifier.helpers.hasBlockContext(e.output.childNodes))return void jQuery(e.output).append(document.createTextNode(e.matchText));e.nextMatch=e.matchStart;var t=[e.output],r=null,a=0,n=void 0,i=void 0;do{this.lookahead.lastIndex=e.nextMatch;var o=this.lookahead.exec(e.source);if(n=o&&o.index===e.nextMatch){var s=o[2]?"ol":"ul",u=o[0].length;if(e.nextMatch+=o[0].length,u>a)for(i=a;i<u;++i)t.push(jQuery(document.createElement(s)).appendTo(t[t.length-1]).get(0));else if(u<a)for(i=a;i>u;--i)t.pop();else u===a&&s!==r&&(t.pop(),t.push(jQuery(document.createElement(s)).appendTo(t[t.length-1]).get(0)));a=u,r=s,e.subWikify(jQuery(document.createElement("li")).appendTo(t[t.length-1]).get(0),this.terminator)}}while(n)}}),Wikifier.Parser.add({name:"commentByBlock",profiles:["core"],match:"(?:/(?:%|\\*))|(?:\x3c!--)",lookahead:/(?:\/(%|\*)(?:(?:.|\n)*?)\1\/)|(?:<!--(?:(?:.|\n)*?)-->)/gm,handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);t&&t.index===e.matchStart&&(e.nextMatch=this.lookahead.lastIndex)}}),Wikifier.Parser.add({name:"lineContinuation",profiles:["core"],match:"\\\\"+Patterns.spaceNoTerminator+"*(?:\\n|$)|(?:^|\\n)"+Patterns.spaceNoTerminator+"*\\\\",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}}),Wikifier.Parser.add({name:"lineBreak",profiles:["core"],match:"\\n|<[Bb][Rr]\\s*/?>",handler:function(e){e.options.nobr||jQuery(document.createElement("br")).appendTo(e.output)}}),Wikifier.Parser.add({name:"htmlCharacterReference",profiles:["core"],match:"(?:(?:&#?[0-9A-Za-z]{2,8};|.)(?:&#?(?:x0*(?:3[0-6][0-9A-Fa-f]|1D[C-Fc-f][0-9A-Fa-f]|20[D-Fd-f][0-9A-Fa-f]|FE2[0-9A-Fa-f])|0*(?:76[89]|7[7-9][0-9]|8[0-7][0-9]|761[6-9]|76[2-7][0-9]|84[0-3][0-9]|844[0-7]|6505[6-9]|6506[0-9]|6507[0-1]));)+|&#?[0-9A-Za-z]{2,8};)",handler:function(e){jQuery(document.createDocumentFragment()).append(e.matchText).appendTo(e.output)}}),Wikifier.Parser.add({name:"xmlProlog",profiles:["core"],match:"<\\?[Xx][Mm][Ll][^>]*\\?>",handler:function(e){e.nextMatch=e.matchStart+e.matchLength}}),Wikifier.Parser.add({name:"verbatimHtml",profiles:["core"],match:"<[Hh][Tt][Mm][Ll]>",lookahead:/<[Hh][Tt][Mm][Ll]>((?:.|\n)*?)<\/[Hh][Tt][Mm][Ll]>/gm,handler:e}),Wikifier.Parser.add({name:"verbatimSvgTag",profiles:["core"],match:"<[Ss][Vv][Gg][^>]*>",lookahead:/(<[Ss][Vv][Gg][^>]*>(?:.|\n)*?<\/[Ss][Vv][Gg]>)/gm,handler:e}),Wikifier.Parser.add({name:"verbatimScriptTag",profiles:["core"],match:"<[Ss][Cc][Rr][Ii][Pp][Tt][^>]*>",lookahead:/(<[Ss][Cc][Rr][Ii][Pp][Tt]*>(?:.|\n)*?<\/[Ss][Cc][Rr][Ii][Pp][Tt]>)/gm,handler:e}),Wikifier.Parser.add({name:"styleTag",profiles:["core"],match:"<[Ss][Tt][Yy][Ll][Ee][^>]*>",lookahead:/(<[Ss][Tt][Yy][Ll][Ee]*>)((?:.|\n)*?)(<\/[Ss][Tt][Yy][Ll][Ee]>)/gm,imageMarkup:new RegExp(Patterns.cssImage,"g"),hasImageMarkup:new RegExp(Patterns.cssImage),handler:function(e){this.lookahead.lastIndex=e.matchStart;var t=this.lookahead.exec(e.source);if(t&&t.index===e.matchStart){e.nextMatch=this.lookahead.lastIndex;var r=t[2];this.hasImageMarkup.test(r)&&(this.imageMarkup.lastIndex=0,r=r.replace(this.imageMarkup,function(e){var t=Wikifier.helpers.parseSquareBracketedMarkup({source:e,matchStart:0});if(t.hasOwnProperty("error")||t.pos<e.length)return e;var r=t.source;if("data:"!==r.slice(0,5)&&Story.has(r)){var a=Story.get(r);a.tags.includes("Twine.image")&&(r=a.text)}return'url("'+r.replace(/"/g,"%22")+'")'})),jQuery(document.createDocumentFragment()).append(t[1]+r+t[3]).appendTo(e.output)}}}),Wikifier.Parser.add({name:"htmlTag",profiles:["core"],match:"<\\w+(?:\\s+[^\\u0000-\\u001F\\u007F-\\u009F\\s\"'>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*?\"|'[^']*?'|[^\\s\"'=<>`]+))?)*\\s*\\/?>",tagPattern:"<(\\w+)",mediaElements:["audio","img","source","track","video"],nobrElements:["audio","colgroup","datalist","dl","figure","ol","optgroup","picture","select","table","tbody","tfoot","thead","tr","ul","video"],voidElements:["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"],handler:function(e){var t=new RegExp(this.tagPattern).exec(e.matchText),r=t&&t[1],a=r&&r.toLowerCase();if(a){var n=this.voidElements.includes(a)||e.matchText.endsWith("/>"),i=this.nobrElements.includes(a),o=void 0,s=void 0;if(!n){o="<\\/"+a+"\\s*>";var u=new RegExp(o,"gim");u.lastIndex=e.matchStart,s=u.exec(e.source)}if(!n&&!s)return throwError(e.output,"cannot find a closing tag for HTML <"+r+">",e.matchText+"…");var l=e.output,c=document.createElement(e.output.tagName),d=void 0;for(c.innerHTML=e.matchText;c.firstChild;)c=c.firstChild;try{this.processAttributeDirectives(c)}catch(t){return throwError(e.output,"<"+a+">: "+t.message,e.matchText+"…")}c.hasAttribute("data-passage")&&(this.processDataAttributes(c,a),Config.debug&&(d=new DebugView(e.output,"html-"+a,a,e.matchText),d.modes({block:"img"===a,nonvoid:s}),l=d.output)),s&&(e.subWikify(c,o,{ignoreTerminatorCase:!0,nobr:i}),d&&jQuery(c).find(".debug.block").length>0&&d.modes({block:!0})),l.appendChild("track"===a?c.cloneNode(!0):c)}},processAttributeDirectives:function(e){[].concat(_toConsumableArray(e.attributes)).forEach(function(t){var r=t.name,a=t.value,n="@"===r[0];if(n||r.startsWith("sc-eval:")){var i=r.slice(n?1:8),o=void 0;try{o=Scripting.evalTwineScript(a)}catch(e){throw new Error('bad evaluation from attribute directive "'+r+'": '+e.message)}try{e.setAttribute(i,o),e.removeAttribute(r)}catch(e){throw new Error('cannot transform attribute directive "'+r+'" into attribute "'+i+'"')}}})},processDataAttributes:function(e,t){var r=e.getAttribute("data-passage");if(null!=r){var a=Wikifier.helpers.evalPassageId(r);if(a!==r&&(r=a,e.setAttribute("data-passage",a)),""!==r)if(this.mediaElements.includes(t)){if("data:"!==r.slice(0,5)&&Story.has(r)){r=Story.get(r);var n=void 0,i=void 0;switch(t){case"audio":case"video":i="Twine."+t;break;case"img":i="Twine.image";break;case"track":i="Twine.vtt";break;case"source":var o=$(e).closest("audio,picture,video");o.length&&(n=o.get(0).tagName.toLowerCase(),i="Twine."+("picture"===n?"image":n))}r.tags.includes(i)&&(e["picture"===n?"srcset":"src"]=r.text.trim())}}else{var s=e.getAttribute("data-setter"),u=void 0;null!=s&&""!==(s=String(s).trim())&&(u=Wikifier.helpers.createShadowSetterCallback(Scripting.parse(s))),Story.has(r)?(e.classList.add("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&e.classList.add("link-visited")):e.classList.add("link-broken"),jQuery(e).ariaClick({one:!0},function(){"function"==typeof u&&u.call(this),Engine.play(r)})}}}})}();var Macro=function(){function e(t,r,n){if(Array.isArray(t))return void t.forEach(function(t){return e(t,r,n)});if(!h.test(t))throw new Error('invalid macro name "'+t+'"');if(a(t))throw new Error("cannot clobber existing macro <<"+t+">>");if(u(t))throw new Error("cannot clobber child tag <<"+t+">> of parent macro"+(1===d[t].length?"":"s")+" <<"+d[t].join(">>, <<")+">>");try{if("object"===(void 0===r?"undefined":_typeof(r)))c[t]=n?clone(r):r;else{if(!a(r))throw new Error("cannot create alias of nonexistent macro <<"+r+">>");c[t]=n?clone(c[r]):c[r]}Object.defineProperty(c,t,{writable:!1}),c[t]._MACRO_API=!0}catch(e){throw"TypeError"===e.name?new Error("cannot clobber protected macro <<"+t+">>"):new Error("unknown error when attempting to add macro <<"+t+">>: ["+e.name+"] "+e.message)}if(c[t].hasOwnProperty("tags"))if(null==c[t].tags)o(t);else{if(!Array.isArray(c[t].tags))throw new Error('bad value for "tags" property of macro <<'+t+">>");o(t,c[t].tags)}}function t(e){if(Array.isArray(e))return void e.forEach(function(e){return t(e)});if(a(e)){c[e].hasOwnProperty("tags")&&s(e);try{Object.defineProperty(c,e,{writable:!0}),delete c[e]}catch(t){throw new Error("unknown error removing macro <<"+e+">>: "+t.message)}}else if(u(e))throw new Error("cannot remove child tag <<"+e+">> of parent macro <<"+d[e]+">>")}function r(){return 0===Object.keys(c).length}function a(e){return c.hasOwnProperty(e)}function n(e){var t=null;return a(e)&&"function"==typeof c[e].handler?t=c[e]:macros.hasOwnProperty(e)&&"function"==typeof macros[e].handler&&(t=macros[e]),t}function i(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:"init";Object.keys(c).forEach(function(t){"function"==typeof c[t][e]&&c[t][e](t)}),Object.keys(macros).forEach(function(t){"function"==typeof macros[t][e]&&macros[t][e](t)})}function o(e,t){if(!e)throw new Error("no parent specified");for(var r=["/"+e,"end"+e],n=[].concat(r,Array.isArray(t)?t:[]),i=0;i<n.length;++i){var o=n[i];if(a(o))throw new Error("cannot register tag for an existing macro");u(o)?d[o].includes(e)||(d[o].push(e),d[o].sort()):d[o]=[e]}}function s(e){if(!e)throw new Error("no parent specified");Object.keys(d).forEach(function(t){var r=d[t].indexOf(e);-1!==r&&(1===d[t].length?delete d[t]:d[t].splice(r,1))})}function u(e){return d.hasOwnProperty(e)}function l(e){return u(e)?d[e]:null}var c={},d={},h=new RegExp("^(?:"+Patterns.macroName+")$");return Object.freeze(Object.defineProperties({},{add:{value:e},delete:{value:t},isEmpty:{value:r},has:{value:a},get:{value:n},init:{value:i},tags:{value:Object.freeze(Object.defineProperties({},{register:{value:o},unregister:{value:s},has:{value:u},get:{value:l}}))},evalStatements:{value:function(){return Scripting.evalJavaScript.apply(Scripting,arguments)}}}))}(),MacroContext=function(){return function(){function e(t){_classCallCheck(this,e);var r=Object.assign({parent:null,macro:null,name:"",args:null,payload:null,parser:null,source:""},t);if(null===r.macro||""===r.name||null===r.parser)throw new TypeError("context object missing required properties");Object.defineProperties(this,{self:{value:r.macro},name:{value:r.name},args:{value:r.args},payload:{value:r.payload},source:{value:r.source},parent:{value:r.parent},parser:{value:r.parser},_output:{value:r.parser.output},_shadows:{writable:!0,value:null},_debugView:{writable:!0,value:null},_debugViewEnabled:{writable:!0,value:Config.debug}})}return _createClass(e,[{key:"contextHas",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return!0;return!1}},{key:"contextSelect",value:function(e){for(var t=this;null!==(t=t.parent);)if(e(t))return t;return null}},{key:"contextSelectAll",value:function(e){for(var t=[],r=this;null!==(r=r.parent);)e(r)&&t.push(r);return t}},{key:"addShadow",value:function(){var e=this;this._shadows||(this._shadows=new Set);for(var t=new RegExp("^"+Patterns.variable+"$"),r=arguments.length,a=Array(r),n=0;n<r;n++)a[n]=arguments[n];a.flatten().forEach(function(r){if("string"!=typeof r)throw new TypeError("variable name must be a string; type: "+(void 0===r?"undefined":_typeof(r)));if(!t.test(r))throw new Error('invalid variable name "'+r+'"');e._shadows.add(r)})}},{key:"createShadowWrapper",value:function(e,t,r){var a=this,n=void 0;return"function"==typeof e&&(n={},this.shadowView.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;n[e]=r[t]})),function(){for(var i=arguments.length,o=Array(i),s=0;s<i;s++)o[s]=arguments[s];if("function"==typeof r&&r.apply(this,o),"function"==typeof e){var u=Object.keys(n),l=u.length>0?{}:null,c=Wikifier.Parser.get("macro"),d=void 0;try{u.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;r.hasOwnProperty(t)&&(l[t]=r[t]),r[t]=n[e]}),d=c.context,c.context=a,e.apply(this,o)}finally{d!==undefined&&(c.context=d),u.forEach(function(e){var t=e.slice(1),r="$"===e[0]?State.variables:State.temporary;n[e]=r[t],l.hasOwnProperty(t)?r[t]=l[t]:delete r[t]})}}"function"==typeof t&&t.apply(this,o)}}},{key:"createDebugView",value:function(e,t){return this._debugView=new DebugView(this._output,"macro",e||this.name,t||this.source),null!==this.payload&&this.payload.length>0&&this._debugView.modes({nonvoid:!0}),this._debugViewEnabled=!0,this._debugView}},{key:"removeDebugView",value:function(){null!==this._debugView&&(this._debugView.remove(),this._debugView=null),this._debugViewEnabled=!1}},{key:"error",value:function(e,t){return throwError(this._output,"<<"+this.name+">>: "+e,t||this.source)}},{key:"output",get:function(){return this._debugViewEnabled?this.debugView.output:this._output}},{key:"shadows",get:function(){return[].concat(_toConsumableArray(this._shadows))}},{key:"shadowView",get:function(){var e=new Set;return this.contextSelectAll(function(e){return e._shadows}).forEach(function(t){return t._shadows.forEach(function(t){return e.add(t)})}),[].concat(_toConsumableArray(e))}},{key:"debugView",get:function(){return this._debugViewEnabled?null!==this._debugView?this._debugView:this.createDebugView():null}}]),e}()}();!function(){if(Macro.add("capture",{skipArgs:!0,tags:null,handler:function(){if(0===this.args.raw.length)return this.error("no story/temporary variable list specified");var e={};try{for(var t=new RegExp("("+Patterns.variable+")","g"),r=void 0;null!==(r=t.exec(this.args.raw));){var a=r[1],n=a.slice(1),i="$"===a[0]?State.variables:State.temporary;i.hasOwnProperty(n)&&(e[n]=i[n]),this.addShadow(a)}new Wikifier(this.output,this.payload[0].contents)}finally{this.shadows.forEach(function(t){var r=t.slice(1),a="$"===t[0]?State.variables:State.temporary;e.hasOwnProperty(r)?a[r]=e[r]:delete a[r]})}}}),Macro.add("set",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("unset",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story/temporary variable list specified");for(var e=new RegExp("State\\.(variables|temporary)\\.("+Patterns.identifier+")","g"),t=void 0;null!==(t=e.exec(this.args.full));){var r=State[t[1]],a=t[2];r.hasOwnProperty(a)&&delete r[a]}Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("remember",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}for(var e=storage.get("remember")||{},t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0;null!==(r=t.exec(this.args.full));){var a=r[1];e[a]=State.variables[a]}if(!storage.set("remember",e))return this.error("unknown error, cannot remember: "+this.args.raw);Config.debug&&this.debugView.modes({hidden:!0})},init:function(){var e=storage.get("remember");e&&Object.keys(e).forEach(function(t){return State.variables[t]=e[t]})}}),Macro.add("forget",{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no story variable list specified");for(var e=storage.get("remember"),t=new RegExp("State\\.variables\\.("+Patterns.identifier+")","g"),r=void 0,a=!1;null!==(r=t.exec(this.args.full));){var n=r[1];State.variables.hasOwnProperty(n)&&delete State.variables[n],e&&e.hasOwnProperty(n)&&(a=!0,delete e[n])}if(a&&!storage.set("remember",e))return this.error("unknown error, cannot update remember store");Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("run","set"),Macro.add("script",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();try{Scripting.evalJavaScript(this.payload[0].contents,e),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e),this.source+this.payload[0].contents+"<</"+this.name+">>")}e.hasChildNodes()&&this.output.appendChild(e)}}),Macro.add("include",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');Config.debug&&this.debugView.modes({block:!0}),e=Story.get(e);var t=void 0;t=this.args[1]?jQuery(document.createElement(this.args[1])).addClass(e.domId+" macro-"+this.name).attr("data-passage",e.title).appendTo(this.output):jQuery(this.output),t.wiki(e.processText())}}),Macro.add("nobr",{skipArgs:!0,tags:null,handler:function(){new Wikifier(this.output,this.payload[0].contents.replace(/^\n+|\n+$/g,"").replace(/\n+/g," "))}}),Macro.add(["print","=","-"],{skipArgs:!0,handler:function(){if(0===this.args.full.length)return this.error("no expression specified");try{var e=toStringOrDefault(Scripting.evalJavaScript(this.args.full),null);null!==e&&new Wikifier(this.output,"-"===this.name?Util.escape(e):e)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}}}),Macro.add("silently",{skipArgs:!0,tags:null,handler:function(){var e=document.createDocumentFragment();if(new Wikifier(e,this.payload[0].contents.trim()),Config.debug)this.debugView.modes({hidden:!0}),this.output.appendChild(e);else{var t=[].concat(_toConsumableArray(e.querySelectorAll(".error"))).map(function(e){return e.textContent});if(t.length>0)return this.error("error"+(1===t.length?"":"s")+" within contents ("+t.join("; ")+")",this.source+this.payload[0].contents+"<</"+this.name+">>")}}}),Macro.add("display","include"),Macro.add("if",{skipArgs:!0,tags:["elseif","else"],handler:function(){var e=void 0;try{var t=this.payload.length;for(e=0;e<t;++e)switch(this.payload[e].name){case"else":if(this.payload[e].args.raw.length>0)return/^\s*if\b/i.test(this.payload[e].args.raw)?this.error('whitespace is not allowed between the "else" and "if" in <<elseif>> clause'+(e>0?" (#"+e+")":"")):this.error("<<else>> does not accept a conditional expression (perhaps you meant to use <<elseif>>), invalid: "+this.payload[e].args.raw);if(e+1!==t)return this.error("<<else>> must be the final clause");break;default:if(0===this.payload[e].args.full.length)return this.error("no conditional expression specified for <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":""));if(Config.macros.ifAssignmentError&&/[^!=&^|<>*\/%+-]=[^=]/.test(this.payload[e].args.full))return this.error("assignment operator found within <<"+this.payload[e].name+">> clause"+(e>0?" (#"+e+")":"")+" (perhaps you meant to use an equality operator: ==, ===, eq, is), invalid: "+this.payload[e].args.raw)}var r=Scripting.evalJavaScript,a=!1;for(e=0;e<t;++e){if(Config.debug&&this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1}),"else"===this.payload[e].name||r(this.payload[e].args.full)){a=!0,new Wikifier(this.output,this.payload[e].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++e;e<t;++e)this.createDebugView(this.payload[e].name,this.payload[e].source).modes({nonvoid:!1,hidden:!0,invalid:!0});this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!a,invalid:!a})}}catch(t){return this.error("bad conditional expression in <<"+(0===e?"if":"elseif")+">> clause"+(e>0?" (#"+e+")":"")+": "+("object"===(void 0===t?"undefined":_typeof(t))?t.message:t))}}}),Macro.add("switch",{skipArg0:!0,tags:["case","default"],handler:function(){if(0===this.args.full.length)return this.error("no expression specified");var e=this.payload.length;if(1===e)return this.error("no cases specified");var t=void 0;for(t=1;t<e;++t)switch(this.payload[t].name){case"default":if(this.payload[t].args.length>0)return this.error("<<default>> does not accept values, invalid: "+this.payload[t].args.raw);if(t+1!==e)return this.error("<<default>> must be the final case");break;default:if(0===this.payload[t].args.length)return this.error("no value(s) specified for <<"+this.payload[t].name+">> (#"+t+")")}var r=void 0;try{r=Scripting.evalJavaScript(this.args.full)}catch(e){return this.error("bad evaluation: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}var a=this.debugView,n=!1;for(Config.debug&&a.modes({nonvoid:!1,hidden:!0}),t=1;t<e;++t){if(Config.debug&&this.createDebugView(this.payload[t].name,this.payload[t].source).modes({nonvoid:!1}),"default"===this.payload[t].name||this.payload[t].args.some(function(e){return e===r})){n=!0,new Wikifier(this.output,this.payload[t].contents);break}Config.debug&&this.debugView.modes({hidden:!0,invalid:!0})}if(Config.debug){for(++t;t<e;++t)this.createDebugView(this.payload[t].name,this.payload[t].source).modes({nonvoid:!1,hidden:!0,invalid:!0});a.modes({nonvoid:!1,hidden:!0,invalid:!n}),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0,invalid:!n})}}}),Macro.add("for",{skipArgs:!0,tags:null,_hasRangeRe:new RegExp("^\\S.*?\\s+range\\s+\\S.*?$"),_rangeRe:new RegExp("^(?:State\\.(variables|temporary)\\.("+Patterns.identifier+")\\s*,\\s*)?State\\.(variables|temporary)\\.("+Patterns.identifier+")\\s+range\\s+(\\S.*?)$"),_3PartRe:/^([^;]*?)\s*;\s*([^;]*?)\s*;\s*([^;]*?)$/,handler:function(){var e=this.args.full.trim(),t=this.payload[0].contents.replace(/\n$/,"");if(0===e.length)this.self._handleFor.call(this,t,null,!0,null);else if(this.self._hasRangeRe.test(e)){var r=e.match(this.self._rangeRe);if(null===r)return this.error("invalid range form syntax, format: [index ,] value range collection");this.self._handleForRange.call(this,t,{type:r[1],name:r[2]},{type:r[3],name:r[4]},r[5])}else{var a=void 0,n=void 0,i=void 0;if(-1===e.indexOf(";")){if(/^\S+\s+in\s+\S+/i.test(e))return this.error("invalid syntax, for…in is not supported; see: for…range");if(/^\S+\s+of\s+\S+/i.test(e))return this.error("invalid syntax, for…of is not supported; see: for…range");n=e}else{var o=e.match(this.self._3PartRe);if(null===o)return this.error("invalid 3-part conditional form syntax, format: [init] ; [condition] ; [post]");a=o[1],n=o[2].trim(),i=o[3],0===n.length&&(n=!0)}this.self._handleFor.call(this,t,a,n,i)}},_handleFor:function(e,t,r,a){var n=Scripting.evalJavaScript,i=!0,o=Config.macros.maxLoopIterations;Config.debug&&this.debugView.modes({block:!0});try{if(TempState.break=null,t)try{n(t)}catch(e){return this.error("bad init expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}for(;n(r);){if(--o<0)return this.error("exceeded configured maximum loop iterations ("+Config.macros.maxLoopIterations+")");if(new Wikifier(this.output,i?e.replace(/^\n/,""):e),i&&(i=!1),null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}if(a)try{n(a)}catch(e){
+return this.error("bad post expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}}}catch(e){return this.error("bad conditional expression: "+("object"===(void 0===e?"undefined":_typeof(e))?e.message:e))}finally{TempState.break=null}},_handleForRange:function(e,t,r,a){var n=!0,i=void 0;try{i=this.self._toRangeList(a)}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});try{TempState.break=null;for(var o=0;o<i.length;++o)if(t.name&&(State[t.type][t.name]=i[o][0]),State[r.type][r.name]=i[o][1],new Wikifier(this.output,n?e.replace(/^\n/,""):e),n&&(n=!1),null!=TempState.break)if(1===TempState.break)TempState.break=null;else if(2===TempState.break){TempState.break=null;break}}catch(e){return this.error("object"===(void 0===e?"undefined":_typeof(e))?e.message:e)}finally{TempState.break=null}},_toRangeList:function(e){var t=Scripting.evalJavaScript,r=void 0;try{r=t("{"===e[0]?"("+e+")":e)}catch(e){if("object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("bad range expression: "+e);throw e.message="bad range expression: "+e.message,e}var a=void 0;switch(void 0===r?"undefined":_typeof(r)){case"string":a=[];for(var n=0;n<r.length;){var i=Util.charAndPosAt(r,n);a.push([n,i.char]),n=1+i.end}break;case"object":if(Array.isArray(r))a=r.map(function(e,t){return[t,e]});else if(r instanceof Set)a=[].concat(_toConsumableArray(r)).map(function(e,t){return[t,e]});else if(r instanceof Map)a=[].concat(_toConsumableArray(r.entries()));else{if("Object"!==Util.toStringTag(r))throw new Error("unsupported range expression type: "+Util.toStringTag(r));a=Object.keys(r).map(function(e){return[e,r[e]]})}break;default:throw new Error("unsupported range expression type: "+(void 0===r?"undefined":_typeof(r)))}return a}}),Macro.add(["break","continue"],{skipArgs:!0,handler:function(){if(!this.contextHas(function(e){return"for"===e.name}))return this.error("must only be used in conjunction with its parent macro <<for>>");TempState.break="continue"===this.name?1:2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add(["button","link"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no "+("button"===this.name?"button":"link")+" text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("button"===this.name?"button":"a")),r=void 0;if("object"===_typeof(this.args[0]))if(this.args[0].isImage){var a=jQuery(document.createElement("img")).attr("src",this.args[0].source).appendTo(t);this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(r=this.args[0].link),r=this.args[0].link}else t.append(document.createTextNode(this.args[0].text)),r=this.args[0].link;else t.wikiWithOptions({profile:"core"},this.args[0]),r=this.args.length>1?this.args[1]:undefined;null!=r?(t.attr("data-passage",r),Story.has(r)?(t.addClass("link-internal"),Config.addVisitedLinkClass&&State.hasPlayed(r)&&t.addClass("link-visited")):t.addClass("link-broken")):t.addClass("link-internal"),t.addClass("macro-"+this.name).ariaClick({namespace:".macros",one:null!=r},this.createShadowWrapper(""!==this.payload[0].contents?function(){return Wikifier.wikifyEval(e.payload[0].contents.trim())}:null,null!=r?function(){return Engine.play(r)}:null)).appendTo(this.output)}}),Macro.add("checkbox",{handler:function(){if(this.args.length<3){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("unchecked value"),this.args.length<3&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),a=this.args[1],n=this.args[2],i=document.createElement("input");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"checkbox",tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.checked?n:a)}).appendTo(this.output),this.args.length>3&&"checked"===this.args[3]?(i.checked=!0,State.setVar(t,n)):State.setVar(t,a)}}),Macro.add(["linkappend","linkprepend","linkreplace"],{isAsync:!0,tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no link text specified");Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>");var t=jQuery(document.createElement("a")),r=jQuery(document.createElement("span")),a=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]);t.wikiWithOptions({profile:"core"},this.args[0]).addClass("link-internal macro-"+this.name).ariaClick({namespace:".macros",one:!0},this.createShadowWrapper(function(){if("linkreplace"===e.name?t.remove():t.wrap('<span class="macro-'+e.name+'"></span>').replaceWith(function(){return t.html()}),""!==e.payload[0].contents){var n=document.createDocumentFragment();new Wikifier(n,e.payload[0].contents),r.append(n)}a&&setTimeout(function(){return r.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)})).appendTo(this.output),r.addClass("macro-"+this.name+"-insert"),a&&r.addClass("macro-"+this.name+"-in"),"linkprepend"===this.name?r.insertBefore(t):r.insertAfter(t)}}),Macro.add("listbox",{tags:["option"],handler:function(){if(0===this.args.length)return this.error("no variable name specified");if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var e=this.args[0].trim();if("$"!==e[0]&&"_"!==e[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var t=Util.slugify(e),r=this.payload.length;if(1===r)return this.error("no options specified");var a=void 0,n=-1;for(a=1;a<r;++a){if(this.payload[a].args.length<2){var i=[];return this.payload[a].args.length<1&&i.push("label"),this.payload[a].args.length<2&&i.push("value"),this.error("no "+i.join(" or ")+" specified for <<"+this.payload[a].name+">> (#"+a+")")}if("string"!=typeof this.payload[a].args[0])return this.error("label must be a string for <<"+this.payload[a].name+">> (#"+a+")");if(this.payload[a].args.length>2&&"selected"===this.payload[a].args[2]){if(-1!==n)return this.error("multiple selected keywords specified for <<"+this.payload[a].name+">> (#"+(n+1)+" & #"+a+")");n=a-1}}-1===n&&(n=0);var o=this.payload.slice(1).map(function(e){return e.args[1]}),s=jQuery(document.createElement("select"));for(a=1;a<r;++a)jQuery(document.createElement("option")).val(a-1).text(this.payload[a].args[0]).appendTo(s);s.attr({id:this.name+"-"+t,name:this.name+"-"+t,tabindex:0}).addClass("macro-"+this.name).val(n).on("change",function(){State.setVar(e,o[Number(this.value)])}).appendTo(this.output),State.setVar(e,o[n])}}),Macro.add("radiobutton",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("checked value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');var r=Util.slugify(t),a=this.args[1],n=document.createElement("input");TempState.hasOwnProperty(this.name)||(TempState[this.name]={}),TempState[this.name].hasOwnProperty(r)||(TempState[this.name][r]=0),jQuery(n).attr({id:this.name+"-"+r+"-"+TempState[this.name][r]++,name:this.name+"-"+r,type:"radio",tabindex:0}).addClass("macro-"+this.name).on("change",function(){this.checked&&State.setVar(t,a)}).appendTo(this.output),this.args.length>2&&"checked"===this.args[2]&&(n.checked=!0,State.setVar(t,a))}}),Macro.add("textarea",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),a=this.args[1],n="autofocus"===this.args[2],i=document.createElement("textarea");jQuery(i).attr({id:this.name+"-"+r,name:this.name+"-"+r,rows:4,tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.value)}).appendTo(this.output),State.setVar(t,a),i.textContent=a,n&&(i.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+i.id]=function(e){delete postdisplay[e],setTimeout(function(){return i.focus()},Engine.minDomActionDelay)})}}),Macro.add("textbox",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("variable name"),this.args.length<2&&e.push("default value"),this.error("no "+e.join(" or ")+" specified")}if("string"!=typeof this.args[0])return this.error("variable name argument is not a string");var t=this.args[0].trim();if("$"!==t[0]&&"_"!==t[0])return this.error('variable name "'+this.args[0]+'" is missing its sigil ($ or _)');Config.debug&&this.debugView.modes({block:!0});var r=Util.slugify(t),a=this.args[1],n=document.createElement("input"),i=!1,o=void 0;this.args.length>3?(o=this.args[2],i="autofocus"===this.args[3]):this.args.length>2&&("autofocus"===this.args[2]?i=!0:o=this.args[2]),"object"===(void 0===o?"undefined":_typeof(o))&&(o=o.link),jQuery(n).attr({id:this.name+"-"+r,name:this.name+"-"+r,type:"text",tabindex:0}).addClass("macro-"+this.name).on("change",function(){State.setVar(t,this.value)}).on("keypress",function(e){13===e.which&&(e.preventDefault(),State.setVar(t,this.value),null!=o&&Engine.play(o))}).appendTo(this.output),State.setVar(t,a),n.value=a,i&&(n.setAttribute("autofocus","autofocus"),postdisplay["#autofocus:"+n.id]=function(e){delete postdisplay[e],setTimeout(function(){return n.focus()},Engine.minDomActionDelay)})}}),Macro.add("click","link"),Macro.add("actions",{handler:function(){for(var e=jQuery(document.createElement("ul")).addClass(this.name).appendTo(this.output),t=0;t<this.args.length;++t){var r=void 0,a=void 0,n=void 0,i=void 0;"object"===_typeof(this.args[t])?this.args[t].isImage?(n=jQuery(document.createElement("img")).attr("src",this.args[t].source),this.args[t].hasOwnProperty("passage")&&n.attr("data-passage",this.args[t].passage),this.args[t].hasOwnProperty("title")&&n.attr("title",this.args[t].title),this.args[t].hasOwnProperty("align")&&n.attr("align",this.args[t].align),r=this.args[t].link,i=this.args[t].setFn):(a=this.args[t].text,r=this.args[t].link,i=this.args[t].setFn):a=r=this.args[t],State.variables.hasOwnProperty("#actions")&&State.variables["#actions"].hasOwnProperty(r)&&State.variables["#actions"][r]||jQuery(Wikifier.createInternalLink(jQuery(document.createElement("li")).appendTo(e),r,null,function(e,t){return function(){State.variables.hasOwnProperty("#actions")||(State.variables["#actions"]={}),State.variables["#actions"][e]=!0,"function"==typeof t&&t()}}(r,i))).addClass("macro-"+this.name).append(n||document.createTextNode(a))}}}),Macro.add(["back","return"],{handler:function(){if(this.args.length>1)return this.error("too many arguments specified, check the documentation for details");var e=-1,t=void 0,r=void 0,a=void 0;if(1===this.args.length&&("object"===_typeof(this.args[0])?this.args[0].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),this.args[0].hasOwnProperty("link")&&(t=this.args[0].link)):1===this.args[0].count?t=this.args[0].link:(r=this.args[0].text,t=this.args[0].link):1===this.args.length&&(r=this.args[0])),null==t){for(var n=State.length-2;n>=0;--n)if(State.history[n].title!==State.passage){e=n,t=State.history[n].title;break}if(null==t&&"return"===this.name)for(var i=State.expired.length-1;i>=0;--i)if(State.expired[i]!==State.passage){t=State.expired[i];break}}else{if(!Story.has(t))return this.error('passage "'+t+'" does not exist');if("back"===this.name){for(var o=State.length-2;o>=0;--o)if(State.history[o].title===t){e=o;break}if(-1===e)return this.error('cannot find passage "'+t+'" in the current story history')}}if(null==t)return this.error("cannot find passage");var s=void 0;s="back"!==this.name||-1!==e?jQuery(document.createElement("a")).addClass("link-internal").ariaClick({one:!0},"return"===this.name?function(){return Engine.play(t)}:function(){return Engine.goTo(e)}):jQuery(document.createElement("span")).addClass("link-disabled"),s.addClass("macro-"+this.name).append(a||document.createTextNode(r||L10n.get("macro"+this.name.toUpperFirst()+"Text"))).appendTo(this.output)}}),Macro.add("choice",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=State.passage,t=void 0,r=void 0,a=void 0,n=void 0;if(1===this.args.length?"object"===_typeof(this.args[0])?this.args[0].isImage?(a=jQuery(document.createElement("img")).attr("src",this.args[0].source),this.args[0].hasOwnProperty("passage")&&a.attr("data-passage",this.args[0].passage),this.args[0].hasOwnProperty("title")&&a.attr("title",this.args[0].title),this.args[0].hasOwnProperty("align")&&a.attr("align",this.args[0].align),t=this.args[0].link,n=this.args[0].setFn):(r=this.args[0].text,t=this.args[0].link,n=this.args[0].setFn):r=t=this.args[0]:(t=this.args[0],r=this.args[1]),State.variables.hasOwnProperty("#choice")&&State.variables["#choice"].hasOwnProperty(e)&&State.variables["#choice"][e])return void jQuery(document.createElement("span")).addClass("link-disabled macro-"+this.name).attr("tabindex",-1).append(a||document.createTextNode(r)).appendTo(this.output);jQuery(Wikifier.createInternalLink(this.output,t,null,function(){State.variables.hasOwnProperty("#choice")||(State.variables["#choice"]={}),State.variables["#choice"][e]=!0,"function"==typeof n&&n()})).addClass("macro-"+this.name).append(a||document.createTextNode(r))}}),Macro.add(["addclass","toggleclass"],{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("selector"),this.args.length<2&&e.push("class names"),this.error("no "+e.join(" or ")+" specified")}var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');switch(this.name){case"addclass":t.addClass(this.args[1].trim());break;case"toggleclass":t.toggleClass(this.args[1].trim())}}}),Macro.add("removeclass",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');this.args.length>1?e.removeClass(this.args[1].trim()):e.removeClass()}}),Macro.add("copy",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');jQuery(this.output).append(e.html())}}),Macro.add(["append","prepend","replace"],{tags:null,handler:function(){var e=this;if(0===this.args.length)return this.error("no selector specified");var t=jQuery(this.args[0]);if(0===t.length)return this.error('no elements matched the selector "'+this.args[0]+'"');if(""!==this.payload[0].contents){var r=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),a=void 0;switch(r?(a=jQuery(document.createElement("span")),a.addClass("macro-"+this.name+"-insert macro-"+this.name+"-in"),setTimeout(function(){return a.removeClass("macro-"+e.name+"-in")},Engine.minDomActionDelay)):a=jQuery(document.createDocumentFragment()),a.wiki(this.payload[0].contents),this.name){case"replace":t.empty();case"append":t.append(a);break;case"prepend":t.prepend(a)}}else"replace"===this.name&&t.empty()}}),Macro.add("remove",{handler:function(){if(0===this.args.length)return this.error("no selector specified");var e=jQuery(this.args[0]);if(0===e.length)return this.error('no elements matched the selector "'+this.args[0]+'"');e.remove()}}),Has.audio){var e=Object.freeze([":not",":all",":looped",":muted",":paused",":playing"]);Macro.add("audio",{handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track or group IDs"),this.args.length<2&&e.push("actions"),this.error("no "+e.join(" or ")+" specified")}var t=Macro.get("cacheaudio").tracks,r=[];try{var a=function e(r){var a=r.id,o=void 0;switch(a){case":all":o=n;break;case":looped":o=n.filter(function(e){return t[e].isLooped()});break;case":muted":o=n.filter(function(e){return t[e].isMuted()});break;case":paused":o=n.filter(function(e){return t[e].isPaused()});break;case":playing":o=n.filter(function(e){return t[e].isPlaying()});break;default:o=":"===a[0]?i[a]:[a]}if(r.hasOwnProperty("not")){var s=r.not.map(function(t){return e(t)}).flatten();o=o.filter(function(e){return!s.includes(e)})}return o},n=Object.freeze(Object.keys(t)),i=Macro.get("cacheaudio").groups;this.self.parseIds(String(this.args[0]).trim()).forEach(function(e){r.push.apply(r,_toConsumableArray(a(e)))}),r.forEach(function(e){if(!t.hasOwnProperty(e))throw new Error('track "'+e+'" does not exist')})}catch(e){return this.error(e.message)}for(var o=this.args.slice(1),s=void 0,u=void 0,l=void 0,c=void 0,d=void 0,h=void 0,f=5,p=void 0,g=void 0;o.length>0;){var m=o.shift();switch(m){case"play":case"pause":case"stop":s=m;break;case"fadein":s="fade",h=1;break;case"fadeout":s="fade",h=0;break;case"fadeto":if(0===o.length)return this.error("fadeto missing required level value");if(s="fade",g=o.shift(),h=Number.parseFloat(g),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeto: "+g);break;case"fadeoverto":if(o.length<2){var v=[];return o.length<1&&v.push("seconds"),o.length<2&&v.push("level"),this.error("fadeoverto missing required "+v.join(" and ")+" value"+(v.length>1?"s":""))}if(s="fade",g=o.shift(),f=Number.parseFloat(g),Number.isNaN(f)||!Number.isFinite(f))return this.error("cannot parse fadeoverto: "+g);if(g=o.shift(),h=Number.parseFloat(g),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeoverto: "+g);break;case"volume":if(0===o.length)return this.error("volume missing required level value");if(g=o.shift(),u=Number.parseFloat(g),Number.isNaN(u)||!Number.isFinite(u))return this.error("cannot parse volume: "+g);break;case"mute":case"unmute":l="mute"===m;break;case"time":if(0===o.length)return this.error("time missing required seconds value");if(g=o.shift(),c=Number.parseFloat(g),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse time: "+g);break;case"loop":case"unloop":d="loop"===m;break;case"goto":if(0===o.length)return this.error("goto missing required passage title");if(g=o.shift(),p="object"===(void 0===g?"undefined":_typeof(g))?g.link:g,!Story.has(p))return this.error('passage "'+p+'" does not exist');break;default:return this.error("unknown action: "+m)}}try{r.forEach(function(e){var r=t[e];switch(null!=u&&(r.volume=u),null!=c&&(r.time=c),null!=l&&(r.mute=l),null!=d&&(r.loop=d),null!=p&&r.one("end",function(){return Engine.play(p)}),s){case"play":r.play();break;case"pause":r.pause();break;case"stop":r.stop();break;case"fade":r.fadeWithDuration(f,h)}}),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing audio action: "+e.message)}},parseIds:function(e){for(var t=[],r=/:?[^\s:()]+/g,a=void 0;null!==(a=r.exec(e));){var n=a[0];if(":not"===n){if(0===t.length)throw new Error('invalid negation: no group ID preceded ":not()"');var i=t[t.length-1];if(":"!==i.id[0])throw new Error('invalid negation of track "'+i.id+'": only groups may be negated with ":not()"');var o=function(e,t){var r=/\S/g,a=/[()]/g,n=void 0;if(r.lastIndex=t,null===(n=r.exec(e))||"("!==n[0])throw new Error('invalid ":not()" syntax: missing parentheticals');a.lastIndex=r.lastIndex;for(var i=r.lastIndex,o={str:"",nextMatch:-1},s=1;null!==(n=a.exec(e));)if("("===n[0]?++s:--s,s<1){o.nextMatch=a.lastIndex,o.str=e.slice(i,o.nextMatch-1);break}return o}(e,r.lastIndex);if(-1===o.nextMatch)throw new Error('unknown error parsing ":not()"');r.lastIndex=o.nextMatch,i.not=this.parseIds(o.str)}else t.push({id:n})}return t}}),Macro.add("cacheaudio",{tracks:{},groups:{},handler:function(){if(this.args.length<2){var e=[];return this.args.length<1&&e.push("track ID"),this.args.length<2&&e.push("sources"),this.error("no "+e.join(" or ")+" specified")}var t=String(this.args[0]).trim();if(/^:|\s/.test(t))return this.error('invalid track ID "'+t+'": track IDs may not start with a colon or contain whitespace');var r=/^format:\s*([\w-]+)\s*;\s*(\S.*)$/i,a=void 0;try{a=SimpleAudio.create(this.args.slice(1).map(function(e){if("data:"!==e.slice(0,5)&&Story.has(e)){var t=Story.get(e);if(t.tags.includes("Twine.audio"))return t.text.trim()}var a=r.exec(e);return null===a?e:{format:a[1],src:a[2]}}))}catch(e){return this.error('error during track initialization for "'+t+'": '+e.message)}if(Config.debug&&!a.hasSource())return this.error('no supported audio sources found for "'+t+'"');var n=this.self.tracks;n.hasOwnProperty(t)&&n[t].destroy(),n[t]=a,Config.debug&&this.createDebugView()}}),Macro.add("createaudiogroup",{tags:["track"],handler:function(){if(0===this.args.length)return this.error("no group ID specified");var t=String(this.args[0]).trim();if(/^[^:]|\s/.test(t))return this.error('invalid group ID "'+t+'": group IDs must start with a colon and may not contain whitespace');if(e.includes(t))return this.error('cannot clobber special group ID "'+t+'"');if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var r=Macro.get("cacheaudio").tracks,a=[],n=1,i=this.payload.length;n<i;++n){if(this.payload[n].args.length<1)return this.error("no track ID specified");var o=String(this.payload[n].args[0]).trim();if(!r.hasOwnProperty(o))return this.error('track "'+o+'" does not exist');a.push(o),Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0})}var s=Macro.get("cacheaudio").groups;s.hasOwnProperty(t)&&delete s[t],s[t]=a,this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("createplaylist",{tags:["track"],lists:{},handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("playlist");if(null!==e.from&&"createplaylist"!==e.from)return this.error("a playlist has already been defined with <<setplaylist>>");var t=Macro.get("cacheaudio").tracks,r=String(this.args[0]).trim();if(/^:|\s/.test(r))return this.error('invalid list ID "'+r+'": list IDs may not start with a colon or contain whitespace');if(1===this.payload.length)return this.error("no tracks defined via <<track>>");Config.debug&&this.debugView.modes({nonvoid:!1,hidden:!0});for(var a=SimpleAudio.createList(),n=1,i=this.payload.length;n<i;++n){if(this.payload[n].args.length<2){var o=[];return this.payload[n].args.length<1&&o.push("track ID"),this.payload[n].args.length<2&&o.push("actions"),this.error("no "+o.join(" or ")+" specified")}var s=String(this.payload[n].args[0]).trim();if(!t.hasOwnProperty(s))return this.error('track "'+s+'" does not exist');for(var u=this.payload[n].args.slice(1),l=!1,c=void 0;u.length>0;){var d=u.shift(),h=void 0;switch(d){case"copy":l=!0;break;case"rate":u.length>0&&u.shift();break;case"volume":if(0===u.length)return this.error("volume missing required level value");if(h=u.shift(),c=Number.parseFloat(h),Number.isNaN(c)||!Number.isFinite(c))return this.error("cannot parse volume: "+h);break;default:return this.error("unknown action: "+d)}}var f=t[s];a.add({copy:l,track:f,volume:null!=c?c:f.volume}),Config.debug&&this.createDebugView(this.payload[n].name,this.payload[n].source).modes({nonvoid:!1,hidden:!0})}var p=this.self.lists;p.hasOwnProperty(r)&&p[r].destroy(),p[r]=a,null===e.from&&(e.from="createplaylist"),this.createDebugView("/"+this.name,"<</"+this.name+">>").modes({nonvoid:!1,hidden:!0})}}),Macro.add("masteraudio",{handler:function(){if(0===this.args.length)return this.error("no actions specified");for(var e=this.args.slice(0),t=!1,r=void 0,a=void 0;e.length>0;){var n=e.shift(),i=void 0;switch(n){case"stop":t=!0;break;case"mute":case"unmute":r="mute"===n;break;case"volume":if(0===e.length)return this.error("volume missing required level value");if(i=e.shift(),a=Number.parseFloat(i),Number.isNaN(a)||!Number.isFinite(a))return this.error("cannot parse volume: "+i);break;default:return this.error("unknown action: "+n)}}try{null!=r&&(SimpleAudio.mute=r),null!=a&&(SimpleAudio.volume=a),t&&SimpleAudio.stop(),Config.debug&&this.createDebugView()}catch(e){return this.error("error executing master audio action: "+e.message)}}}),Macro.add("playlist",{from:null,handler:function(){var e=this.self.from;if(null===e)return this.error("no playlists have been created");var t=void 0,r=void 0;if("createplaylist"===e){if(this.args.length<2){var a=[];return this.args.length<1&&a.push("list ID"),this.args.length<2&&a.push("actions"),this.error("no "+a.join(" or ")+" specified")}var n=Macro.get("createplaylist").lists,i=String(this.args[0]).trim();if(!n.hasOwnProperty(i))return this.error('playlist "'+i+'" does not exist');t=n[i],r=this.args.slice(1)}else{if(0===this.args.length)return this.error("no actions specified");t=Macro.get("setplaylist").list,r=this.args.slice(0)}for(var o=void 0,s=void 0,u=void 0,l=void 0,c=void 0,d=void 0,h=5,f=void 0;r.length>0;){var p=r.shift();switch(p){case"play":case"pause":case"stop":case"skip":o=p;break;case"fadein":o="fade",d=1;break;case"fadeout":o="fade",d=0;break;case"fadeto":if(0===r.length)return this.error("fadeto missing required level value");if(o="fade",f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeto: "+f);break;case"fadeoverto":if(r.length<2){var g=[];return r.length<1&&g.push("seconds"),r.length<2&&g.push("level"),this.error("fadeoverto missing required "+g.join(" and ")+" value"+(g.length>1?"s":""))}if(o="fade",f=r.shift(),h=Number.parseFloat(f),Number.isNaN(h)||!Number.isFinite(h))return this.error("cannot parse fadeoverto: "+f);if(f=r.shift(),d=Number.parseFloat(f),Number.isNaN(d)||!Number.isFinite(d))return this.error("cannot parse fadeoverto: "+f);break;case"volume":if(0===r.length)return this.error("volume missing required level value");if(f=r.shift(),s=Number.parseFloat(f),Number.isNaN(s)||!Number.isFinite(s))return this.error("cannot parse volume: "+f);break;case"mute":case"unmute":u="mute"===p;break;case"loop":case"unloop":l="loop"===p;break;case"shuffle":case"unshuffle":c="shuffle"===p;break;default:return this.error("unknown action: "+p)}}try{switch(null!=s&&(t.volume=s),null!=u&&(t.mute=u),null!=l&&(t.loop=l),null!=c&&(t.shuffle=c),o){case"play":t.play();break;case"pause":t.pause();break;case"stop":t.stop();break;case"skip":t.skip();break;case"fade":t.fadeWithDuration(h,d)}Config.debug&&this.createDebugView()}catch(e){return this.error("error playing audio: "+e.message)}}}),Macro.add("removeplaylist",{handler:function(){if(0===this.args.length)return this.error("no list ID specified");var e=Macro.get("createplaylist").lists,t=String(this.args[0]).trim();if(!e.hasOwnProperty(t))return this.error('playlist "'+t+'" does not exist');e[t].destroy(),delete e[t],Config.debug&&this.createDebugView()}}),Macro.add("waitforaudio",{skipArgs:!0,queue:[],handler:function(){function e(){if(0===t.length)return LoadScreen.unlock(r);var a=t.shift();if(a.hasData())return e();a.one("canplay.waitforaudio error.waitforaudio",function(){jQuery(this).off(".waitforaudio"),e()}).load()}var t=this.self.queue,r=void 0;t.length>0||(this.self.fillQueue(t),t.length>0&&(r=LoadScreen.lock(),e()))},fillQueue:function(e){var t=Macro.get("cacheaudio").tracks;Object.keys(t).forEach(function(r){return e.push(t[r])});var r=Macro.get("createplaylist").lists;if(Object.keys(r).map(function(e){return r[e].tracks}).flatten().filter(function(e){return e.copy}).forEach(function(t){return e.push(t.track)}),Macro.has("setplaylist")){var a=Macro.get("setplaylist").list;null!==a&&a.tracks.forEach(function(t){return e.push(t.track)})}}}),Macro.add("setplaylist",{list:null,handler:function(){if(0===this.args.length)return this.error("no track ID(s) specified");var e=Macro.get("playlist");if(null!==e.from&&"setplaylist"!==e.from)return this.error("playlists have already been defined with <<createplaylist>>");var t=this.self,r=Macro.get("cacheaudio").tracks;null!==t.list&&t.list.destroy(),t.list=SimpleAudio.createList();for(var a=0;a<this.args.length;++a){var n=this.args[a];if(!r.hasOwnProperty(n))return this.error('track "'+n+'" does not exist');t.list.add(r[n])}null===e.from&&(e.from="setplaylist"),Config.debug&&this.createDebugView()}}),Macro.add("stopallaudio",{skipArgs:!0,handler:function(){var e=Macro.get("cacheaudio").tracks;Object.keys(e).forEach(function(t){return e[t].stop()}),Config.debug&&this.createDebugView()}})}else Macro.add(["audio","cacheaudio","createaudiogroup","createplaylist","masteraudio","playlist","removeplaylist","waitforaudio","setplaylist","stopallaudio"],{skipArgs:!0,handler:function(){}});Macro.add("goto",{handler:function(){if(0===this.args.length)return this.error("no passage specified");var e=void 0;if(e="object"===_typeof(this.args[0])?this.args[0].link:this.args[0],!Story.has(e))return this.error('passage "'+e+'" does not exist');setTimeout(function(){return Engine.play(e)},Engine.minDomActionDelay)}}),Macro.add("repeat",{isAsync:!0,tags:null,timers:new Set,handler:function(){var e=this;if(0===this.args.length)return this.error("no time value specified");var t=void 0;try{t=Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0]))}catch(e){return this.error(e.message)}Config.debug&&this.debugView.modes({block:!0});var r=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),a=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerInterval(this.createShadowWrapper(function(){var t=document.createDocumentFragment();new Wikifier(t,e.payload[0].contents);var n=a;r&&(n=jQuery(document.createElement("span")).addClass("macro-repeat-insert macro-repeat-in").appendTo(n)),n.append(t),r&&setTimeout(function(){return n.removeClass("macro-repeat-in")},Engine.minDomActionDelay)}),t)},registerInterval:function(e,t){var r=this;if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var a=State.turns,n=this.timers,i=null;i=setInterval(function(){if(a!==State.turns)return clearInterval(i),void n.delete(i);var t=void 0;try{TempState.break=null,TempState.hasOwnProperty("repeatTimerId")&&(t=TempState.repeatTimerId),TempState.repeatTimerId=i,e.call(r)}finally{void 0!==t?TempState.repeatTimerId=t:delete TempState.repeatTimerId,TempState.break=null}},t),n.add(i),prehistory.hasOwnProperty("#repeat-timers-cleanup")||(prehistory["#repeat-timers-cleanup"]=function(e){delete prehistory[e],n.forEach(function(e){return clearInterval(e)}),n.clear()})}}),Macro.add("stop",{skipArgs:!0,handler:function(){if(!TempState.hasOwnProperty("repeatTimerId"))return this.error("must only be used in conjunction with its parent macro <<repeat>>");var e=Macro.get("repeat").timers,t=TempState.repeatTimerId;clearInterval(t),e.delete(t),TempState.break=2,Config.debug&&this.debugView.modes({hidden:!0})}}),Macro.add("timed",{isAsync:!0,tags:["next"],timers:new Set,handler:function(){if(0===this.args.length)return this.error("no time value specified in <<timed>>")
+;var e=[];try{e.push({name:this.name,source:this.source,delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.args[0])),content:this.payload[0].contents})}catch(e){return this.error(e.message+" in <<timed>>")}if(this.payload.length>1){var t=void 0;try{var r=void 0;for(t=1,r=this.payload.length;t<r;++t)e.push({name:this.payload[t].name,source:this.payload[t].source,delay:0===this.payload[t].args.length?e[e.length-1].delay:Math.max(Engine.minDomActionDelay,Util.fromCssTime(this.payload[t].args[0])),content:this.payload[t].contents})}catch(e){return this.error(e.message+" in <<next>> (#"+t+")")}}Config.debug&&this.debugView.modes({block:!0});var a=this.args.length>1&&/^(?:transition|t8n)$/.test(this.args[1]),n=jQuery(document.createElement("span")).addClass("macro-"+this.name).appendTo(this.output);this.self.registerTimeout(this.createShadowWrapper(function(e){var t=document.createDocumentFragment();new Wikifier(t,e.content);var r=n;Config.debug&&"next"===e.name&&(r=jQuery(new DebugView(r[0],"macro",e.name,e.source).output)),a&&(r=jQuery(document.createElement("span")).addClass("macro-timed-insert macro-timed-in").appendTo(r)),r.append(t),a&&setTimeout(function(){return r.removeClass("macro-timed-in")},Engine.minDomActionDelay)}),e)},registerTimeout:function(e,t){if("function"!=typeof e)throw new TypeError("callback parameter must be a function");var r=State.turns,a=this.timers,n=null,i=t.shift(),o=function o(){if(a.delete(n),r===State.turns){var s=i;null!=(i=t.shift())&&(n=setTimeout(o,i.delay),a.add(n)),e.call(this,s)}};n=setTimeout(o,i.delay),a.add(n),prehistory.hasOwnProperty("#timed-timers-cleanup")||(prehistory["#timed-timers-cleanup"]=function(e){delete prehistory[e],a.forEach(function(e){return clearTimeout(e)}),a.clear()})}}),Macro.add("widget",{tags:null,handler:function(){if(0===this.args.length)return this.error("no widget name specified");var e=this.args[0];if(Macro.has(e)){if(!Macro.get(e).isWidget)return this.error('cannot clobber existing macro "'+e+'"');Macro.delete(e)}try{Macro.add(e,{isWidget:!0,handler:function(e){return function(){var t=void 0;try{State.variables.hasOwnProperty("args")&&(t=State.variables.args),State.variables.args=[].concat(_toConsumableArray(this.args)),State.variables.args.raw=this.args.raw,State.variables.args.full=this.args.full,this.addShadow("$args");var r=document.createDocumentFragment(),a=[];if(new Wikifier(r,e),Array.from(r.querySelectorAll(".error")).forEach(function(e){a.push(e.textContent)}),0!==a.length)return this.error("error"+(a.length>1?"s":"")+" within widget contents ("+a.join("; ")+")");this.output.appendChild(r)}catch(e){return this.error("cannot execute widget: "+e.message)}finally{void 0!==t?State.variables.args=t:delete State.variables.args}}}(this.payload[0].contents)}),Config.debug&&this.createDebugView(this.name,this.source+this.payload[0].contents+"<</"+this.name+">>")}catch(t){return this.error('cannot create widget macro "'+e+'": '+t.message)}}})}();var Dialog=function(){function e(){m=function(){var e=void 0;try{var t=document.createElement("p"),r=document.createElement("div");t.style.width="100%",t.style.height="200px",r.style.position="absolute",r.style.left="0px",r.style.top="0px",r.style.width="100px",r.style.height="100px",r.style.visibility="hidden",r.style.overflow="hidden",r.appendChild(t),document.body.appendChild(r);var a=t.offsetWidth;r.style.overflow="auto";var n=t.offsetWidth;a===n&&(n=r.clientWidth),document.body.removeChild(r),e=a-n}catch(e){}return e||17}();var e=jQuery(document.createDocumentFragment()).append('<div id="ui-overlay" class="ui-close"></div><div id="ui-dialog" tabindex="0" role="dialog" aria-labelledby="ui-dialog-title"><div id="ui-dialog-titlebar"><h1 id="ui-dialog-title"></h1><button id="ui-dialog-close" class="ui-close" tabindex="0" aria-label="'+L10n.get("close")+'"></button></div><div id="ui-dialog-body"></div></div>');d=jQuery(e.find("#ui-overlay").get(0)),h=jQuery(e.find("#ui-dialog").get(0)),f=jQuery(e.find("#ui-dialog-title").get(0)),p=jQuery(e.find("#ui-dialog-body").get(0)),e.insertBefore("#store-area")}function t(e){return h.hasClass("open")&&(!e||e.splitOrEmpty(/\s+/).every(function(e){return p.hasClass(e)}))}function r(e,t){return p.empty().removeClass(),null!=t&&p.addClass(t),f.empty().append((null!=e?String(e):"")||" "),p.get(0)}function a(){return p.get(0)}function n(){var e;return(e=p).append.apply(e,arguments),Dialog}function i(){var e;return(e=p).wiki.apply(e,arguments),Dialog}function o(e,t,r,a,n){return jQuery(e).ariaClick(function(e){e.preventDefault(),"function"==typeof r&&r(e),s(t,n),"function"==typeof a&&a(e)})}function s(e,r){var a=jQuery.extend({top:50},e),n=a.top;t()||(g=safeActiveElement()),jQuery(document.documentElement).attr("data-dialog","open"),d.addClass("open"),null!==p[0].querySelector("img")&&p.imagesLoaded().always(function(){return l({data:{top:n}})}),jQuery("body>:not(script,#store-area,#ui-bar,#ui-overlay,#ui-dialog)").attr("tabindex",-3).attr("aria-hidden",!0),jQuery("#ui-bar,#story").find("[tabindex]:not([tabindex^=-])").attr("tabindex",-2).attr("aria-hidden",!0);var i=c(n);return h.css(i).addClass("open").focus(),jQuery(window).on("resize.dialog-resize",null,{top:n},jQuery.throttle(40,l)),Has.mutationObserver?(v=new MutationObserver(function(e){for(var t=0;t<e.length;++t)if("childList"===e[t].type){l({data:{top:n}});break}}),v.observe(p[0],{childList:!0,subtree:!0})):p.on("DOMNodeInserted.dialog-resize DOMNodeRemoved.dialog-resize",null,{top:n},jQuery.throttle(40,l)),jQuery(document).on("click.dialog-close",".ui-close",{closeFn:r},u).on("keypress.dialog-close",".ui-close",function(e){13!==e.which&&32!==e.which||jQuery(this).trigger("click")}),setTimeout(function(){return jQuery.event.trigger(":dialogopen")},Engine.minDomActionDelay),Dialog}function u(e){return jQuery(document).off(".dialog-close"),v?(v.disconnect(),v=null):p.off(".dialog-resize"),jQuery(window).off(".dialog-resize"),h.removeClass("open").css({left:"",right:"",top:"",bottom:""}),jQuery("#ui-bar,#story").find("[tabindex=-2]").removeAttr("aria-hidden").attr("tabindex",0),jQuery("body>[tabindex=-3]").removeAttr("aria-hidden").removeAttr("tabindex"),f.empty(),p.empty().removeClass(),d.removeClass("open"),jQuery(document.documentElement).removeAttr("data-dialog"),null!==g&&(jQuery(g).focus(),g=null),e&&e.data&&"function"==typeof e.data.closeFn&&e.data.closeFn(e),setTimeout(function(){return jQuery.event.trigger(":dialogclose")},Engine.minDomActionDelay),Dialog}function l(e){var t=e&&e.data&&void 0!==e.data.top?e.data.top:50;"block"===h.css("display")&&(h.css({display:"none"}),h.css(jQuery.extend({display:""},c(t))))}function c(e){var t=null!=e?e:50,r=jQuery(window),a={left:"",right:"",top:"",bottom:""};h.css(a);var n=r.width()-h.outerWidth(!0)-1,i=r.height()-h.outerHeight(!0)-1;return n<=32+m&&(i-=m),i<=32+m&&(n-=m),a.left=a.right=n<=32?16:n/2>>0,a.top=i<=32?a.bottom=16:i/2>t?t:a.bottom=i/2>>0,Object.keys(a).forEach(function(e){""!==a[e]&&(a[e]+="px")}),a}var d=null,h=null,f=null,p=null,g=null,m=0,v=null;return Object.freeze(Object.defineProperties({},{init:{value:e},isOpen:{value:t},setup:{value:r},body:{value:a},append:{value:n},wiki:{value:i},addClickHandler:{value:o},open:{value:s},close:{value:u},resize:{value:function(e){return l("object"===(void 0===e?"undefined":_typeof(e))?{data:e}:undefined)}}}))}(),Engine=function(){function e(){jQuery("#init-no-js,#init-lacking").remove(),function(){var e=jQuery(document.createDocumentFragment()),t=Story.has("StoryInterface")&&Story.get("StoryInterface").text.trim();if(t){if(UIBar.destroy(),jQuery(document.head).find("#style-core-display").remove(),e.append(t),0===e.find("#passages").length)throw new Error('no element with ID "passages" found within "StoryInterface" special passage')}else e.append('<div id="story" role="main"><div id="passages"></div></div>');e.insertBefore("#store-area")}(),S=new StyleWrapper(function(){return jQuery(document.createElement("style")).attr({id:"style-aria-outlines",type:"text/css"}).appendTo(document.head).get(0)}()),jQuery(document).on("mousedown.aria-outlines keydown.aria-outlines",function(e){return"keydown"===e.type?m():g()})}function t(){if(Story.has("StoryInit"))try{var e=Wikifier.wikifyEval(Story.get("StoryInit").text);if(Config.debug){var t=new DebugView(document.createDocumentFragment(),"special","StoryInit","StoryInit");t.modes({hidden:!0}),t.append(e),k=t.output}}catch(e){console.error(e),Alert.error("StoryInit",e.message)}if(Config.history.maxStates=Math.max(0,Config.history.maxStates),Number.isSafeInteger(Config.history.maxStates)||(Config.history.maxStates=100),1===Config.history.maxStates&&(Config.history.controls=!1),null==Config.passages.start)throw new Error("starting passage not selected");if(!Story.has(Config.passages.start))throw new Error('starting passage ("'+Config.passages.start+'") not found');if(jQuery(document.documentElement).focus(),State.restore())h();else{var r=!0;switch(_typeof(Config.saves.autoload)){case"boolean":Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!Save.autosave.load());break;case"string":"prompt"===Config.saves.autoload&&Save.autosave.ok()&&Save.autosave.has()&&(r=!1,UI.buildAutoload(),Dialog.open());break;case"function":Save.autosave.ok()&&Save.autosave.has()&&Config.saves.autoload()&&(r=!Save.autosave.load())}r&&f(Config.passages.start)}}function r(){LoadScreen.show(),window.scroll(0,0),State.reset(),jQuery.event.trigger(":enginerestart"),window.location.reload()}function a(){return b}function n(){return b===v.Idle}function i(){return b!==v.Idle}function o(){return b===v.Rendering}function s(){return w}function u(e){var t=State.goTo(e);return t&&h(),t}function l(e){var t=State.go(e);return t&&h(),t}function c(){return l(-1)}function d(){return l(1)}function h(){return f(State.passage,!0)}function f(e,t){var r=e;b=v.Playing,TempState={},State.clearTemporary();var a=void 0,n=void 0;if("function"==typeof Config.navigation.override)try{var i=Config.navigation.override(r);i&&(r=i)}catch(e){}var o=Story.get(r);if(jQuery.event.trigger({type:":passageinit",passage:o}),Object.keys(prehistory).forEach(function(e){"function"==typeof prehistory[e]&&prehistory[e].call(this,e)},o),t||State.create(o.title),w=Util.now(),document.body.className&&(document.body.className=""),Object.keys(predisplay).forEach(function(e){"function"==typeof predisplay[e]&&predisplay[e].call(this,e)},o),Story.has("PassageReady"))try{a=Wikifier.wikifyEval(Story.get("PassageReady").text)}catch(e){console.error(e),Alert.error("PassageReady",e.message)}b=v.Rendering;var s=jQuery(o.render()),u=document.getElementById("passages");if(u.hasChildNodes()&&("number"==typeof Config.passages.transitionOut||"string"==typeof Config.passages.transitionOut&&""!==Config.passages.transitionOut&&""!==Config.transitionEndEventName?[].concat(_toConsumableArray(u.childNodes)).forEach(function(e){var t=jQuery(e);if(e.nodeType===Node.ELEMENT_NODE&&t.hasClass("passage")){if(t.hasClass("passage-out"))return;t.attr("id","out-"+t.attr("id")).addClass("passage-out"),"string"==typeof Config.passages.transitionOut?t.on(Config.transitionEndEventName,function(e){e.originalEvent.propertyName===Config.passages.transitionOut&&t.remove()}):setTimeout(function(){return t.remove()},Math.max(y,Config.passages.transitionOut))}else t.remove()}):jQuery(u).empty()),s.addClass("passage-in").appendTo(u),setTimeout(function(){return s.removeClass("passage-in")},y),Config.passages.displayTitles&&o.title!==Config.passages.start&&(document.title=o.title+" | "+Story.title),window.scroll(0,0),b=v.Playing,Story.has("PassageDone"))try{n=Wikifier.wikifyEval(Story.get("PassageDone").text)}catch(e){console.error(e),Alert.error("PassageDone",e.message)}if(jQuery.event.trigger({type:":passagedisplay",passage:o}),Object.keys(postdisplay).forEach(function(e){"function"==typeof postdisplay[e]&&postdisplay[e].call(this,e)},o),Config.ui.updateStoryElements&&UIBar.setStoryElements(),Config.debug){var l=void 0;null!=a&&(l=new DebugView(document.createDocumentFragment(),"special","PassageReady","PassageReady"),l.modes({hidden:!0}),l.append(a),s.prepend(l.output)),null!=n&&(l=new DebugView(document.createDocumentFragment(),"special","PassageDone","PassageDone"),l.modes({hidden:!0}),l.append(n),s.append(l.output)),1===State.turns&&null!=k&&s.prepend(k)}switch(g(),jQuery("#story").find("a[href]:not(.link-external)").addClass("link-external").end().find("a,link,button,input,select,textarea").not("[tabindex]").attr("tabindex",0),_typeof(Config.saves.autosave)){case"boolean":Config.saves.autosave&&Save.autosave.save();break;case"string":o.tags.includes(Config.saves.autosave)&&Save.autosave.save();break;case"object":Array.isArray(Config.saves.autosave)&&o.tags.some(function(e){return Config.saves.autosave.includes(e)})&&Save.autosave.save()}return jQuery.event.trigger({type:":passageend",passage:o}),b=v.Idle,w=Util.now(),s[0]}function p(e,t,r){var a=!1;switch(r){case undefined:break;case"replace":case"back":a=!0;break;default:throw new Error('Engine.display option parameter called with obsolete value "'+r+'"; please notify the developer')}f(e,a)}function g(){S.set("*:focus{outline:none}")}function m(){S.clear()}var v=Util.toEnum({Idle:"idle",Playing:"playing",Rendering:"rendering"}),y=40,b=v.Idle,w=null,k=null,S=null;return Object.freeze(Object.defineProperties({},{States:{value:v},minDomActionDelay:{value:y},init:{value:e},start:{value:t},restart:{value:r},state:{get:a},isIdle:{value:n},isPlaying:{value:i},isRendering:{value:o},lastPlay:{get:s},goTo:{value:u},go:{value:l},backward:{value:c},forward:{value:d},show:{value:h},play:{value:f},display:{value:p}}))}(),Passage=function(){var e=void 0,t=void 0;e=/^(?:debug|nobr|passage|script|stylesheet|widget|twine\..*)$/i;var r=/(?:\\n|\\t|\\s|\\|\r)/g,a=new RegExp(r.source),n=Object.freeze({"\\n":"\n","\\t":"\t","\\s":"\\","\\":"\\","\r":""});return t=function(e){if(null==e)return"";var t=String(e);return t&&a.test(t)?t.replace(r,function(e){return n[e]}):t},function(){function r(t,a){var n=this;_classCallCheck(this,r),Object.defineProperties(this,{title:{value:Util.unescape(t)},element:{value:a||null},tags:{value:Object.freeze(a&&a.hasAttribute("tags")?a.getAttribute("tags").trim().splitOrEmpty(/\s+/).sort().filter(function(e,t,r){return 0===t||r[t-1]!==e}):[])},_excerpt:{writable:!0,value:null}}),Object.defineProperties(this,{domId:{value:"passage-"+Util.slugify(this.title)},classes:{value:Object.freeze(0===this.tags.length?[]:function(){return n.tags.filter(function(t){return!e.test(t)}).map(function(e){return Util.slugify(e)})}())}})}return _createClass(r,[{key:"description",value:function(){var e=Config.passages.descriptions;if(null!=e)switch(void 0===e?"undefined":_typeof(e)){case"boolean":if(e)return this.title;break;case"object":if(e instanceof Map&&e.has(this.title))return e.get(this.title);if(e.hasOwnProperty(this.title))return e[this.title];break;case"function":var t=e.call(this);if(t)return t;break;default:throw new TypeError("Config.passages.descriptions must be a boolean, object, or function")}return null===this._excerpt&&(this._excerpt=r.getExcerptFromText(this.text)),this._excerpt}},{key:"processText",value:function(){var e=this.text;return this.tags.includes("Twine.image")?e="[img["+e+"]]":(Config.passages.nobr||this.tags.includes("nobr"))&&(e=e.replace(/^\n+|\n+$/g,"").replace(/\n+/g," ")),e}},{key:"render",value:function(){var e=this,t=this.tags.length>0?this.tags.join(" "):null,a=document.createElement("div");return jQuery(a).attr({id:this.domId,"data-passage":this.title,"data-tags":t}).addClass("passage "+this.className),jQuery(document.body).attr("data-tags",t).addClass(this.className),jQuery(document.documentElement).attr("data-tags",t),jQuery.event.trigger({type:":passagestart",content:a,passage:this}),Object.keys(prerender).forEach(function(t){"function"==typeof prerender[t]&&prerender[t].call(e,a,t)}),Story.has("PassageHeader")&&new Wikifier(a,Story.get("PassageHeader").processText()),new Wikifier(a,this.processText()),Story.has("PassageFooter")&&new Wikifier(a,Story.get("PassageFooter").processText()),jQuery.event.trigger({type:":passagerender",content:a,passage:this}),Object.keys(postrender).forEach(function(t){"function"==typeof postrender[t]&&postrender[t].call(e,a,t)}),this._excerpt=r.getExcerptFromNode(a),a}},{key:"className",get:function(){return this.classes.join(" ")}},{key:"text",get:function(){if(null==this.element){var e=Util.escape(this.title);return'<span class="error" title="'+e+'">'+L10n.get("errorTitle")+": "+L10n.get("errorNonexistentPassage",{passage:e})+"</span>"}return t(this.element.textContent)}}],[{key:"getExcerptFromNode",value:function(e,t){if(!e.hasChildNodes())return"";var r=e.textContent.trim();if(""!==r){var a=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})");r=r.replace(/\s+/g," ").match(a)}return r?r[1]+"…":"…"}},{key:"getExcerptFromText",value:function(e,t){if(""===e)return"";var r=new RegExp("(\\S+(?:\\s+\\S+){0,"+(t>0?t-1:7)+"})"),a=e.replace(/<<.*?>>/g," ").replace(/<.*?>/g," ").trim().replace(/^\s*\|.*\|.*?$/gm,"").replace(/\[[<>]?img\[[^\]]*\]\]/g,"").replace(/\[\[([^|\]]*)(?:|[^\]]*)?\]\]/g,"$1").replace(/^\s*!+(.*?)$/gm,"$1").replace(/'{2}|\/{2}|_{2}|@{2}/g,"").trim().replace(/\s+/g," ").match(r);return a?a[1]+"…":"…"}}]),r}()}(),Save=function(){function e(){if("cookie"===storage.name)return a(),Config.saves.autosave=undefined,Config.saves.slots=0,!1;Config.saves.slots=Math.max(0,Config.saves.slots),Number.isSafeInteger(Config.saves.slots)||(Config.saves.slots=8);var e=r(),t=!1;Array.isArray(e)&&(e={autosave:null,slots:e},t=!0),Config.saves.slots!==e.slots.length&&(Config.saves.slots<e.slots.length?(e.slots.reverse(),e.slots=e.slots.filter(function(e){return!(null===e&&this.count>0)||(--this.count,!1)},{count:e.slots.length-Config.saves.slots}),e.slots.reverse()):Config.saves.slots>e.slots.length&&x(e.slots,Config.saves.slots-e.slots.length),t=!0),T(e.autosave)&&(t=!0);for(var n=0;n<e.slots.length;++n)T(e.slots[n])&&(t=!0);return j(e)&&(storage.delete("saves"),t=!1),t&&C(e),P=e.slots.length-1,!0}function t(){return{autosave:null,slots:x([],Config.saves.slots)}}function r(){var e=storage.get("saves");return null===e?t():e}function a(){return storage.delete("saves"),!0}function n(){return i()||d()}function i(){return"cookie"!==storage.name&&void 0!==Config.saves.autosave}function o(){return null!==r().autosave}function s(){return r().autosave}function u(){var e=r();return null!==e.autosave&&A(e.autosave)}function l(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return!1;var a=r(),n={title:e||Story.get(State.passage).description(),date:Date.now()};return null!=t&&(n.metadata=t),a.autosave=O(n),C(a)}function c(){var e=r();return e.autosave=null,C(e)}function d(){return"cookie"!==storage.name&&-1!==P}function h(){return P+1}function f(){if(!d())return 0;for(var e=r(),t=0,a=0,n=e.slots.length;a<n;++a)null!==e.slots[a]&&++t;return t}function p(){return 0===f()}function g(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])}function m(e){if(e<0||e>P)return null;var t=r();return e>=t.slots.length?null:t.slots[e]}function v(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length||null===t.slots[e])&&A(t.slots[e])}function y(e,t,a){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return Dialog.isOpen()?$(document).one(":dialogclose",function(){return UI.alert(L10n.get("savesDisallowed"))}):UI.alert(L10n.get("savesDisallowed")),!1;if(e<0||e>P)return!1;var n=r();if(e>=n.slots.length)return!1;var i={title:t||Story.get(State.passage).description(),date:Date.now()};return null!=a&&(i.metadata=a),n.slots[e]=O(i),C(n)}function b(e){if(e<0||e>P)return!1;var t=r();return!(e>=t.slots.length)&&(t.slots[e]=null,C(t))}function w(e,t){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return void(Dialog.isOpen()?$(document).one(":dialogclose",function(){return UI.alert(L10n.get("savesDisallowed"))}):UI.alert(L10n.get("savesDisallowed")));var r=null==e?Story.domId:Util.slugify(e),a=r+"-"+function(){var e=new Date,t=e.getMonth()+1,r=e.getDate(),a=e.getHours(),n=e.getMinutes(),i=e.getSeconds();return t<10&&(t="0"+t),r<10&&(r="0"+r),a<10&&(a="0"+a),n<10&&(n="0"+n),i<10&&(i="0"+i),""+e.getFullYear()+t+r+"-"+a+n+i}()+".save",n=null==t?{}:{metadata:t},i=LZString.compressToBase64(JSON.stringify(O(n)));saveAs(new Blob([i],{type:"text/plain;charset=UTF-8"}),a)}function k(e){var t=e.target.files[0],r=new FileReader;jQuery(r).on("load",function(e){var r=e.currentTarget;if(r.result){var a=void 0;try{a=JSON.parse(/\.json$/i.test(t.name)||/^\{/.test(r.result)?r.result:LZString.decompressFromBase64(r.result))}catch(e){}A(a)}}),r.readAsText(t)}function S(e){if("function"==typeof Config.saves.isAllowed&&!Config.saves.isAllowed())return Dialog.isOpen()?$(document).one(":dialogclose",function(){return UI.alert(L10n.get("savesDisallowed"))}):UI.alert(L10n.get("savesDisallowed")),null;var t=null==e?{}:{metadata:e};return LZString.compressToBase64(JSON.stringify(O(t)))}function E(e){var t=void 0;try{t=JSON.parse(LZString.decompressFromBase64(e))}catch(e){}return A(t)?t.metadata:null}function x(e,t){for(var r=0;r<t;++r)e.push(null);return e}function j(e){for(var t=e.slots,r=!0,a=0,n=t.length;a<n;++a)if(null!==t[a]){r=!1;break}return null===e.autosave&&r}function C(e){return j(e)?(storage.delete("saves"),!0):storage.set("saves",e)}function T(e){if(null==e||"object"!==(void 0===e?"undefined":_typeof(e)))return!1;var t=!1;return e.hasOwnProperty("state")&&e.state.hasOwnProperty("delta")&&e.state.hasOwnProperty("index")||(e.hasOwnProperty("data")?(delete e.mode,e.state={delta:State.deltaEncode(e.data)},delete e.data):e.state.hasOwnProperty("delta")?e.state.hasOwnProperty("index")||delete e.state.mode:(delete e.state.mode,e.state.delta=State.deltaEncode(e.state.history),delete e.state.history),e.state.index=e.state.delta.length-1,t=!0),e.state.hasOwnProperty("rseed")&&(e.state.seed=e.state.rseed,delete e.state.rseed,e.state.delta.forEach(function(e,t,r){r[t].hasOwnProperty("rcount")&&(r[t].pull=r[t].rcount,delete r[t].rcount)}),t=!0),(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired||e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.hasOwnProperty("expired")&&"number"==typeof e.state.expired&&delete e.state.expired,(e.state.hasOwnProperty("unique")||e.state.hasOwnProperty("last"))&&(e.state.expired=[],e.state.hasOwnProperty("unique")&&(e.state.expired.push(e.state.unique),delete e.state.unique),e.state.hasOwnProperty("last")&&(e.state.expired.push(e.state.last),delete e.state.last)),t=!0),t}function O(e){if(null!=e&&"object"!==(void 0===e?"undefined":_typeof(e)))throw new Error("supplemental parameter must be an object");var t=Object.assign({},e,{id:Config.saves.id,state:State.marshalForSave()});return Config.saves.version&&(t.version=Config.saves.version),"function"==typeof Config.saves.onSave&&Config.saves.onSave(t),t.state.delta=State.deltaEncode(t.state.history),delete t.state.history,t}function A(e){try{if(T(e),!e||!e.hasOwnProperty("id")||!e.hasOwnProperty("state"))throw new Error(L10n.get("errorSaveMissingData"));if(e.state.history=State.deltaDecode(e.state.delta),delete e.state.delta,"function"==typeof Config.saves.onLoad&&Config.saves.onLoad(e),e.id!==Config.saves.id)throw new Error(L10n.get("errorSaveIdMismatch"));State.unmarshalForSave(e.state),Engine.show()}catch(e){return UI.alert(e.message.toUpperFirst()+".</p><p>"+L10n.get("aborting")+"."),!1}return!0}var P=-1;return Object.freeze(Object.defineProperties({},{init:{value:e},get:{value:r},clear:{value:a},ok:{value:n},autosave:{value:Object.freeze(Object.defineProperties({},{ok:{value:i},has:{value:o},get:{value:s},load:{value:u},save:{value:l},delete:{value:c}}))},slots:{value:Object.freeze(Object.defineProperties({},{ok:{value:d},length:{get:h},isEmpty:{value:p},count:{value:f},has:{value:g},get:{value:m},load:{value:v},save:{value:y},delete:{value:b}}))},export:{value:w},import:{value:k},serialize:{value:S},deserialize:{value:E}}))}(),Setting=function(){function e(){if(storage.has("options")){var e=storage.get("options");null!==e&&(window.SugarCube.settings=settings=Object.assign(t(),e)),r(),storage.delete("options")}a(),m.forEach(function(e){if(e.hasOwnProperty("onInit")){var t={name:e.name,value:settings[e.name],default:e.default};e.hasOwnProperty("list")&&(t.list=e.list),e.onInit.call(t)}})}function t(){return Object.create(null)}function r(){var e=t();return Object.keys(settings).length>0&&m.filter(function(e){return e.type!==v.Header&&settings[e.name]!==e.default}).forEach(function(t){return e[t.name]=settings[t.name]}),0===Object.keys(e).length?(storage.delete("settings"),!0):storage.set("settings",e)}function a(){var e=t(),r=storage.get("settings")||t();m.filter(function(e){return e.type!==v.Header}).forEach(function(t){return e[t.name]=t.default}),window.SugarCube.settings=settings=Object.assign(e,r)}function n(){return window.SugarCube.settings=settings=t(),storage.delete("settings"),!0}function i(e){if(0===arguments.length)n(),a();else{if(null==e||!f(e))throw new Error('nonexistent setting "'+e+'"');var t=p(e);t.type!==v.Header&&(settings[e]=t.default)}return r()}function o(e,t){m.forEach(e,t)}function s(e,t,r){if(arguments.length<3){var a=[];throw arguments.length<1&&a.push("type"),arguments.length<2&&a.push("name"),arguments.length<3&&a.push("definition"),new Error("missing parameters, no "+a.join(" or ")+" specified")}if("object"!==(void 0===r?"undefined":_typeof(r)))throw new TypeError("definition parameter must be an object");if(f(t))throw new Error('cannot clobber existing setting "'+t+'"');var n={type:e,name:t,label:"string"==typeof r.label?r.label.trim():""};if("string"==typeof r.desc){var i=r.desc.trim();""!==i&&(n.desc=i)}switch(e){case v.Header:break;case v.Toggle:n.default=!!r.default;break;case v.List:if(!r.hasOwnProperty("list"))throw new Error("no list specified");if(!Array.isArray(r.list))throw new TypeError("list must be an array");if(0===r.list.length)throw new Error("list must not be empty");if(n.list=Object.freeze(r.list),null==r.default)n.default=r.list[0];else{var o=r.list.indexOf(r.default);if(-1===o)throw new Error("list does not contain default");n.default=r.list[o]}break;case v.Range:if(!r.hasOwnProperty("min"))throw new Error("no min specified");if("number"!=typeof r.min||Number.isNaN(r.min)||!Number.isFinite(r.min))throw new TypeError("min must be a finite number");if(!r.hasOwnProperty("max"))throw new Error("no max specified");if("number"!=typeof r.max||Number.isNaN(r.max)||!Number.isFinite(r.max))throw new TypeError("max must be a finite number");if(!r.hasOwnProperty("step"))throw new Error("no step specified");if("number"!=typeof r.step||Number.isNaN(r.step)||!Number.isFinite(r.step)||r.step<=0)throw new TypeError("step must be a finite number greater than zero");var s=function(){var e=String(r.step),t=e.lastIndexOf(".");return-1===t?0:e.length-t-1}();if(function(e){if(s>0){var t=Number(r.min+"e"+s),a=Number(r.step+"e"+s),n=Number(e+"e"+s)-t;return Number(n-n%a+t+"e-"+s)}var i=e-r.min;return i-i%r.step+r.min}(r.max)!==r.max)throw new RangeError("max ("+r.max+") is not a multiple of the step ("+r.step+") plus the min ("+r.min+")");if(n.max=r.max,n.min=r.min,n.step=r.step,null==r.default)n.default=r.max;else{if("number"!=typeof r.default||Number.isNaN(r.default)||!Number.isFinite(r.default))throw new TypeError("default must be a finite number");if(r.default<r.min)throw new RangeError("default ("+r.default+") is less than min ("+r.min+")");if(r.default>r.max)throw new RangeError("default ("+r.default+") is greater than max ("+r.max+")");n.default=r.default}break;default:throw new Error("unknown Setting type: "+e)}"function"==typeof r.onInit&&(n.onInit=Object.freeze(r.onInit)),"function"==typeof r.onChange&&(n.onChange=Object.freeze(r.onChange)),m.push(Object.freeze(n))}function u(e,t){s(v.Header,e,{desc:t})}function l(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[v.Toggle].concat(t))}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[v.List].concat(t))}function d(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];s.apply(undefined,[v.Range].concat(t))}function h(){return 0===m.length}function f(e){return m.some(function(t){return t.name===e})}function p(e){return m.find(function(t){return t.name===e})}function g(e){f(e)&&delete settings[e];for(var t=0;t<m.length;++t)if(m[t].name===e){m.splice(t,1),g(e);break}}var m=[],v=Util.toEnum({Header:0,Toggle:1,List:2,Range:3});return Object.freeze(Object.defineProperties({},{Types:{value:v},init:{value:e},create:{value:t},save:{value:r},load:{value:a},clear:{value:n},reset:{value:i},forEach:{value:o},add:{value:s},addHeader:{value:u},addToggle:{value:l},addList:{value:c},addRange:{value:d},isEmpty:{value:h},has:{value:f},get:{value:p},delete:{value:g}}))}(),Story=function(){function e(){function e(e){if(e.tags.includesAny(a))throw new Error('starting passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return a.includes(e)}).sort().join('", "')+'"')}function t(e){if(n.includes(e.title)&&e.tags.includesAny(a))throw new Error('special passage "'+e.title+'" contains illegal tags; invalid: "'+e.tags.filter(function(e){return a.includes(e)}).sort().join('", "')+'"')}var a=["widget"],n=["PassageDone","PassageFooter","PassageHeader","PassageReady","StoryAuthor","StoryBanner","StoryCaption","StoryInit","StoryMenu","StoryShare","StorySubtitle"],i=function(e){var t=[].concat(a),r=[];if(e.tags.forEach(function(e){t.includes(e)&&r.push.apply(r,_toConsumableArray(t.delete(e)))}),r.length>1)throw new Error('code passage "'+e.title+'" contains multiple code tags; invalid: "'+r.sort().join('", "')+'"')};if(a.unshift("script","stylesheet"),n.push("StoryTitle"),Config.passages.start=function(){var e=String("START_AT");return""!==e?(Config.debug=!0,e):"Start"}(),jQuery("#store-area").children(':not([tags~="Twine.private"],[tags~="annotation"])').each(function(){var r=jQuery(this),a=new Passage(r.attr("tiddler"),this);a.title===Config.passages.start?(e(a),c[a.title]=a):a.tags.includes("stylesheet")?(i(a),d.push(a)):a.tags.includes("script")?(i(a),h.push(a)):a.tags.includes("widget")?(i(a),f.push(a)):(t(a),c[a.title]=a)}),!c.hasOwnProperty("StoryTitle"))throw new Error('cannot find the "StoryTitle" special passage');var o=document.createDocumentFragment();new Wikifier(o,c.StoryTitle.processText().trim()),r(o.textContent.trim()),Config.saves.id=Story.domId}function t(){!function(){var e=document.createElement("style");new StyleWrapper(e).add(d.map(function(e){return e.text.trim()}).join("\n")),jQuery(e).appendTo(document.head).attr({id:"style-story",type:"text/css"})}();for(var e=0;e<h.length;++e)try{Scripting.evalJavaScript(h[e].text)}catch(t){console.error(t),Alert.error(h[e].title,"object"===(void 0===t?"undefined":_typeof(t))?t.message:t)}for(var t=0;t<f.length;++t)try{Wikifier.wikifyEval(f[t].processText())}catch(e){console.error(e),Alert.error(f[t].title,"object"===(void 0===e?"undefined":_typeof(e))?e.message:e)}}function r(e){if(null==e||""===e)throw new Error("story title cannot be null or empty");document.title=p=Util.unescape(e),m=Util.slugify(p)}function a(){return p}function n(){return m}function i(){return g}function o(e){var t=void 0===e?"undefined":_typeof(e);switch(t){case"number":case"string":return c.hasOwnProperty(String(e));case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}throw new TypeError("Story.has title parameter cannot be "+t)}function s(e){var t=void 0===e?"undefined":_typeof(e);switch(t){case"number":case"string":var r=String(e);return c.hasOwnProperty(r)?c[r]:new Passage(r||"(unknown)");case"boolean":case"function":t="a "+t;break;case"undefined":break;default:t=null===e?"null":"an "+t}
+throw new TypeError("Story.get title parameter cannot be "+t)}function u(e,t){for(var r=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"title",a=Object.keys(c),n=[],i=0;i<a.length;++i){var o=c[a[i]];if(o.hasOwnProperty(e))switch(_typeof(o[e])){case"undefined":break;case"object":o[e]instanceof Array&&o[e].some(function(e){return e==t})&&n.push(o);break;default:o[e]==t&&n.push(o)}}return n.sort(function(e,t){return e[r]==t[r]?0:e[r]<t[r]?-1:1}),n}function l(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"title";if("function"!=typeof e)throw new Error("Story.lookupWith filter parameter must be a function");for(var r=Object.keys(c),a=[],n=0;n<r.length;++n){var i=c[r[n]];e(i)&&a.push(i)}return a.sort(function(e,r){return e[t]==r[t]?0:e[t]<r[t]?-1:1}),a}var c={},d=[],h=[],f=[],p="",g="",m="";return Object.freeze(Object.defineProperties({},{passages:{value:c},styles:{value:d},scripts:{value:h},widgets:{value:f},load:{value:e},init:{value:t},title:{get:a},domId:{get:n},ifId:{get:i},has:{value:o},get:{value:s},lookup:{value:u},lookupWith:{value:l}}))}(),UI=function(){function e(e,t){var r=t,a=Config.debug,n=Config.cleanupWikifierOutput;Config.debug=!1,Config.cleanupWikifierOutput=!1;try{null==r&&(r=document.createElement("ul"));var i=document.createDocumentFragment();new Wikifier(i,Story.get(e).processText().trim());var o=[].concat(_toConsumableArray(i.querySelectorAll(".error"))).map(function(e){return e.textContent.replace(errorPrologRegExp,"")});if(o.length>0)throw new Error(o.join("; "));for(;i.hasChildNodes();){var s=i.firstChild;if(s.nodeType===Node.ELEMENT_NODE&&"A"===s.nodeName.toUpperCase()){var u=document.createElement("li");r.appendChild(u),u.appendChild(s)}else i.removeChild(s)}}finally{Config.cleanupWikifierOutput=n,Config.debug=a}return r}function t(e){jQuery(Dialog.setup("Alert","alert")).append("<p>"+e+'</p><ul class="buttons"><li><button id="alert-ok" class="ui-close">'+L10n.get(["alertOk","ok"])+"</button></li></ul>");for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];Dialog.open.apply(Dialog,r)}function r(){u(),Dialog.open.apply(Dialog,arguments)}function a(){l(),Dialog.open.apply(Dialog,arguments)}function n(){c(),Dialog.open.apply(Dialog,arguments)}function i(){d(),Dialog.open.apply(Dialog,arguments)}function o(){h(),Dialog.open.apply(Dialog,arguments)}function s(){return jQuery(Dialog.setup(L10n.get("autoloadTitle"),"autoload")).append("<p>"+L10n.get("autoloadPrompt")+'</p><ul class="buttons"><li><button id="autoload-ok" class="ui-close">'+L10n.get(["autoloadOk","ok"])+'</button></li><li><button id="autoload-cancel" class="ui-close">'+L10n.get(["autoloadCancel","cancel"])+"</button></li></ul>"),jQuery(document).one("click.autoload",".ui-close",function(e){var t="autoload-ok"===e.target.id;jQuery(document).one(":dialogclose",function(){t&&Save.autosave.load()||Engine.play(Config.passages.start)})}),!0}function u(){var e=document.createElement("ul");jQuery(Dialog.setup(L10n.get("jumptoTitle"),"jumpto list")).append(e);for(var t=State.expired.length,r=State.size-1;r>=0;--r)if(r!==State.activeIndex){var a=Story.get(State.history[r].title);a&&a.tags.includes("bookmark")&&jQuery(document.createElement("li")).append(jQuery(document.createElement("a")).ariaClick({one:!0},function(e){return function(){return jQuery(document).one(":dialogclose",function(){return Engine.goTo(e)})}}(r)).addClass("ui-close").text(L10n.get("jumptoTurn")+" "+(t+r+1)+": "+a.description())).appendTo(e)}e.hasChildNodes()||jQuery(e).append("<li><a><em>"+L10n.get("jumptoUnavailable")+"</em></a></li>")}function l(){return jQuery(Dialog.setup(L10n.get("restartTitle"),"restart")).append("<p>"+L10n.get("restartPrompt")+'</p><ul class="buttons"><li><button id="restart-ok">'+L10n.get(["restartOk","ok"])+'</button></li><li><button id="restart-cancel" class="ui-close">'+L10n.get(["restartCancel","cancel"])+"</button></li></ul>").find("#restart-ok").ariaClick({one:!0},function(){jQuery(document).one(":dialogclose",function(){return Engine.restart()}),Dialog.close()}),!0}function c(){function e(e,t,r,a){var n=jQuery(document.createElement("button")).attr("id","saves-"+e).html(r);return t&&n.addClass(t),a?n.ariaClick(a):n.ariaDisabled(!0),jQuery(document.createElement("li")).append(n)}var r=jQuery(Dialog.setup(L10n.get("savesTitle"),"saves")),a=Save.ok();if(a&&r.append(function(){function e(e,t,r,a,n){var i=jQuery(document.createElement("button")).attr("id","saves-"+e+"-"+a).addClass(e).html(r);return t&&i.addClass(t),n?"auto"===a?i.ariaClick({label:r+" "+L10n.get("savesLabelAuto")},function(){return n()}):i.ariaClick({label:r+" "+L10n.get("savesLabelSlot")+" "+(a+1)},function(){return n(a)}):i.ariaDisabled(!0),i}var t=Save.get(),r=jQuery(document.createElement("tbody"));if(Save.autosave.ok()){var a=jQuery(document.createElement("td")),n=jQuery(document.createElement("td")),i=jQuery(document.createElement("td")),o=jQuery(document.createElement("td"));jQuery(document.createElement("b")).attr({title:L10n.get("savesLabelAuto"),"aria-label":L10n.get("savesLabelAuto")}).text("A").appendTo(a),t.autosave?(n.append(e("load","ui-close",L10n.get("savesLabelLoad"),"auto",function(){jQuery(document).one(":dialogclose",function(){return Save.autosave.load()})})),jQuery(document.createElement("div")).text(t.autosave.title).appendTo(i),jQuery(document.createElement("div")).addClass("datestamp").html(t.autosave.date?""+new Date(t.autosave.date).toLocaleString():"<em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(i),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto",function(){Save.autosave.delete(),c()}))):(n.append(e("load",null,L10n.get("savesLabelLoad"),"auto")),i.addClass("empty").text("•  •  •"),o.append(e("delete",null,L10n.get("savesLabelDelete"),"auto"))),jQuery(document.createElement("tr")).append(a).append(n).append(i).append(o).appendTo(r)}for(var s=0,u=t.slots.length;s<u;++s){var l=jQuery(document.createElement("td")),d=jQuery(document.createElement("td")),h=jQuery(document.createElement("td")),f=jQuery(document.createElement("td"));l.append(document.createTextNode(s+1)),t.slots[s]?(d.append(e("load","ui-close",L10n.get("savesLabelLoad"),s,function(e){jQuery(document).one(":dialogclose",function(){return Save.slots.load(e)})})),jQuery(document.createElement("div")).text(t.slots[s].title).appendTo(h),jQuery(document.createElement("div")).addClass("datestamp").html(t.slots[s].date?""+new Date(t.slots[s].date).toLocaleString():"<em>"+L10n.get("savesUnknownDate")+"</em>").appendTo(h),f.append(e("delete",null,L10n.get("savesLabelDelete"),s,function(e){Save.slots.delete(e),c()}))):(d.append(e("save","ui-close",L10n.get("savesLabelSave"),s,Save.slots.save)),h.addClass("empty").text("•  •  •"),f.append(e("delete",null,L10n.get("savesLabelDelete"),s))),jQuery(document.createElement("tr")).append(l).append(d).append(h).append(f).appendTo(r)}return jQuery(document.createElement("table")).attr("id","saves-list").append(r)}()),a||Has.fileAPI){var n=jQuery(document.createElement("ul")).addClass("buttons").appendTo(r);return Has.fileAPI&&(n.append(e("export","ui-close",L10n.get("savesLabelExport"),function(){return Save.export()})),n.append(e("import",null,L10n.get("savesLabelImport"),function(){return r.find("#saves-import-file").trigger("click")})),jQuery(document.createElement("input")).css({display:"block",visibility:"hidden",position:"fixed",left:"-9999px",top:"-9999px",width:"1px",height:"1px"}).attr({type:"file",id:"saves-import-file",tabindex:-1,"aria-hidden":!0}).on("change",function(e){jQuery(document).one(":dialogclose",function(){return Save.import(e)}),Dialog.close()}).appendTo(r)),a&&n.append(e("clear",null,L10n.get("savesLabelClear"),Save.autosave.has()||!Save.slots.isEmpty()?function(){Save.clear(),c()}:null)),!0}return t(L10n.get("savesIncapable")),!1}function d(){var e=jQuery(Dialog.setup(L10n.get("settingsTitle"),"settings"));return Setting.forEach(function(t){if(t.type===Setting.Types.Header){var r=t.name,a=Util.slugify(r),n=jQuery(document.createElement("div")),i=jQuery(document.createElement("h2")),o=jQuery(document.createElement("p"));return n.attr("id","header-body-"+a).append(i).append(o).appendTo(e),i.attr("id","header-heading-"+a).wiki(r),void o.attr("id","header-desc-"+a).wiki(t.desc)}var s=t.name,u=Util.slugify(s),l=jQuery(document.createElement("div")),c=jQuery(document.createElement("label")),d=jQuery(document.createElement("div")),h=void 0;switch(jQuery(document.createElement("div")).append(c).append(d).appendTo(l),t.desc&&jQuery(document.createElement("p")).attr("id","setting-desc-"+u).wiki(t.desc).appendTo(l),c.attr({id:"setting-label-"+u,for:"setting-control-"+u}).wiki(t.label),null==settings[s]&&(settings[s]=t.default),t.type){case Setting.Types.Toggle:h=jQuery(document.createElement("button")),settings[s]?h.addClass("enabled").text(L10n.get("settingsOn")):h.text(L10n.get("settingsOff")),h.ariaClick(function(){settings[s]?(jQuery(this).removeClass("enabled").text(L10n.get("settingsOff")),settings[s]=!1):(jQuery(this).addClass("enabled").text(L10n.get("settingsOn")),settings[s]=!0),Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default})});break;case Setting.Types.List:h=jQuery(document.createElement("select"));for(var f=0,p=t.list.length;f<p;++f)jQuery(document.createElement("option")).val(f).text(t.list[f]).appendTo(h);h.val(t.list.indexOf(settings[s])).attr("tabindex",0).on("change",function(){settings[s]=t.list[Number(this.value)],Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default,list:t.list})});break;case Setting.Types.Range:h=jQuery(document.createElement("input")),h.attr({type:"range",min:t.min,max:t.max,step:t.step,value:settings[s],tabindex:0}).on("change input",function(){settings[s]=Number(this.value),Setting.save(),t.hasOwnProperty("onChange")&&t.onChange.call({name:s,value:settings[s],default:t.default,min:t.min,max:t.max,step:t.step})}).on("keypress",function(e){13===e.which&&(e.preventDefault(),h.trigger("change"))})}h.attr("id","setting-control-"+u).appendTo(d),l.attr("id","setting-body-"+u).appendTo(e)}),e.append('<ul class="buttons"><li><button id="settings-ok" class="ui-close">'+L10n.get(["settingsOk","ok"])+'</button></li><li><button id="settings-reset">'+L10n.get("settingsReset")+"</button></li></ul>").find("#settings-reset").ariaClick({one:!0},function(){jQuery(document).one(":dialogclose",function(){Setting.reset(),window.location.reload()}),Dialog.close()}),!0}function h(){try{jQuery(Dialog.setup(L10n.get("shareTitle"),"share list")).append(e("StoryShare"))}catch(e){return console.error(e),Alert.error("StoryShare",e.message),!1}return!0}return Object.freeze(Object.defineProperties({},{assembleLinkList:{value:e},alert:{value:t},jumpto:{value:r},restart:{value:a},saves:{value:n},settings:{value:i},share:{value:o},buildAutoload:{value:s},buildJumpto:{value:u},buildRestart:{value:l},buildSaves:{value:c},buildSettings:{value:d},buildShare:{value:h},stow:{value:function(){return UIBar.stow()}},unstow:{value:function(){return UIBar.unstow()}},setStoryElements:{value:function(){return UIBar.setStoryElements()}},isOpen:{value:function(){return Dialog.isOpen.apply(Dialog,arguments)}},body:{value:function(){return Dialog.body()}},setup:{value:function(){return Dialog.setup.apply(Dialog,arguments)}},addClickHandler:{value:function(){return Dialog.addClickHandler.apply(Dialog,arguments)}},open:{value:function(){return Dialog.open.apply(Dialog,arguments)}},close:{value:function(){return Dialog.close.apply(Dialog,arguments)}},resize:{value:function(){return Dialog.resize()}},buildDialogAutoload:{value:s},buildDialogJumpto:{value:u},buildDialogRestart:{value:l},buildDialogSaves:{value:c},buildDialogSettings:{value:d},buildDialogShare:{value:h},buildLinkListFromPassage:{value:e}}))}(),UIBar=function(){function e(){o||document.getElementById("ui-bar")||(!function(){var e=L10n.get("uiBarToggle"),t=L10n.get("uiBarBackward"),r=L10n.get("uiBarJumpto"),a=L10n.get("uiBarForward");jQuery(document.createDocumentFragment()).append('<div id="ui-bar"><div id="ui-bar-tray"><button id="ui-bar-toggle" tabindex="0" title="'+e+'" aria-label="'+e+'"></button><div id="ui-bar-history"><button id="history-backward" tabindex="0" title="'+t+'" aria-label="'+t+'"></button><button id="history-jumpto" tabindex="0" title="'+r+'" aria-label="'+r+'"></button><button id="history-forward" tabindex="0" title="'+a+'" aria-label="'+a+'"></button></div></div><div id="ui-bar-body"><header id="title" role="banner"><div id="story-banner"></div><h1 id="story-title"></h1><div id="story-subtitle"></div><div id="story-title-separator"></div><p id="story-author"></p></header><div id="story-caption"></div><nav id="menu" role="navigation"><ul id="menu-story"></ul><ul id="menu-core"><li id="menu-item-saves"><a tabindex="0">'+L10n.get("savesTitle")+'</a></li><li id="menu-item-settings"><a tabindex="0">'+L10n.get("settingsTitle")+'</a></li><li id="menu-item-restart"><a tabindex="0">'+L10n.get("restartTitle")+'</a></li><li id="menu-item-share"><a tabindex="0">'+L10n.get("shareTitle")+"</a></li></ul></nav></div></div>").insertBefore("#store-area")}(),jQuery(document).on(":historyupdate.ui-bar",function(e,t){return function(){e.ariaDisabled(State.length<2),t.ariaDisabled(State.length===State.size)}}(jQuery("#history-backward"),jQuery("#history-forward"))))}function t(){if(!o){var e=jQuery("#ui-bar");("boolean"==typeof Config.ui.stowBarInitially?Config.ui.stowBarInitially:jQuery(window).width()<=Config.ui.stowBarInitially)&&function(){var t=jQuery(e).add("#story");t.addClass("no-transition"),e.addClass("stowed"),setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}(),jQuery("#ui-bar-toggle").ariaClick({label:L10n.get("uiBarToggle")},function(){return e.toggleClass("stowed")}),Config.history.controls?(jQuery("#history-backward").ariaDisabled(State.length<2).ariaClick({label:L10n.get("uiBarBackward")},function(){return Engine.backward()}),Story.lookup("tags","bookmark").length>0?jQuery("#history-jumpto").ariaClick({label:L10n.get("uiBarJumpto")},function(){return UI.jumpto()}):jQuery("#history-jumpto").remove(),jQuery("#history-forward").ariaDisabled(State.length===State.size).ariaClick({label:L10n.get("uiBarForward")},function(){return Engine.forward()})):jQuery("#ui-bar-history").remove(),setPageElement("story-title","StoryTitle",Story.title),Story.has("StoryCaption")||jQuery("#story-caption").remove(),Story.has("StoryMenu")||jQuery("#menu-story").remove(),Config.ui.updateStoryElements||i(),Dialog.addClickHandler("#menu-item-saves a",null,UI.buildSaves).text(L10n.get("savesTitle")),Setting.isEmpty()?jQuery("#menu-item-settings").remove():Dialog.addClickHandler("#menu-item-settings a",null,UI.buildSettings).text(L10n.get("settingsTitle")),Dialog.addClickHandler("#menu-item-restart a",null,UI.buildRestart).text(L10n.get("restartTitle")),Story.has("StoryShare")?Dialog.addClickHandler("#menu-item-share a",null,UI.buildShare).text(L10n.get("shareTitle")):jQuery("#menu-item-share").remove()}}function r(){o||(jQuery(document).off(".ui-bar"),jQuery("#ui-bar").remove(),jQuery(document.head).find("#style-ui-bar").remove(),Config.ui.updateStoryElements=!1,o=!0)}function a(e){if(!o){var t=jQuery("#ui-bar");e&&t.addClass("no-transition"),t.addClass("stowed"),e&&setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}}function n(e){if(!o){var t=jQuery("#ui-bar");e&&t.addClass("no-transition"),t.removeClass("stowed"),e&&setTimeout(function(){return t.removeClass("no-transition")},Engine.minDomActionDelay)}}function i(){if(!o){setPageElement("story-banner","StoryBanner"),setPageElement("story-subtitle","StorySubtitle"),setPageElement("story-author","StoryAuthor"),setPageElement("story-caption","StoryCaption");var e=document.getElementById("menu-story");if(null!==e&&(jQuery(e).empty(),Story.has("StoryMenu")))try{UI.assembleLinkList("StoryMenu",e)}catch(e){console.error(e),Alert.error("StoryMenu",e.message)}}}var o=!1;return Object.freeze(Object.defineProperties({},{init:{value:e},start:{value:t},destroy:{value:r},stow:{value:a},unstow:{value:n},setStoryElements:{value:i}}))}(),DebugBar=function(){function e(){var e=L10n.get("debugBarToggle"),t=L10n.get("debugBarAddWatch"),o=L10n.get("debugBarWatchAll"),u=L10n.get("debugBarWatchNone"),c=L10n.get("debugBarWatchToggle"),p=L10n.get("debugBarViewsToggle");jQuery(document.createDocumentFragment()).append('<div id="debug-bar"><div id="debug-bar-watch" aria-hidden="true" hidden="hidden"><div>'+L10n.get("debugBarNoWatches")+'</div>></div><div><button id="debug-bar-watch-toggle" tabindex="0" title="'+c+'" aria-label="'+c+'">'+L10n.get("debugBarLabelWatch")+'</button><label id="debug-bar-watch-label" for="debug-bar-watch-input">'+L10n.get("debugBarLabelAdd")+'</label><input id="debug-bar-watch-input" name="debug-bar-watch-input" type="text" list="debug-bar-watch-list" tabindex="0"><datalist id="debug-bar-watch-list" aria-hidden="true" hidden="hidden"></datalist><button id="debug-bar-watch-add" tabindex="0" title="'+t+'" aria-label="'+t+'"></button><button id="debug-bar-watch-all" tabindex="0" title="'+o+'" aria-label="'+o+'"></button><button id="debug-bar-watch-none" tabindex="0" title="'+u+'" aria-label="'+u+'"></button></div><div><button id="debug-bar-views-toggle" tabindex="0" title="'+p+'" aria-label="'+p+'">'+L10n.get("debugBarLabelViews")+'</button><label id="debug-bar-turn-label" for="debug-bar-turn-select">'+L10n.get("debugBarLabelTurn")+'</label><select id="debug-bar-turn-select" tabindex="0"></select></div><button id="debug-bar-toggle" tabindex="0" title="'+e+'" aria-label="'+e+'"></button></div><div id="debug-bar-hint"></div>').appendTo("body"),y=jQuery("#debug-bar"),b=jQuery(y.find("#debug-bar-watch").get(0)),w=jQuery(y.find("#debug-bar-watch-list").get(0)),k=jQuery(y.find("#debug-bar-turn-select").get(0));var g=jQuery(y.find("#debug-bar-toggle").get(0)),m=jQuery(y.find("#debug-bar-watch-toggle").get(0)),v=jQuery(y.find("#debug-bar-watch-input").get(0)),E=jQuery(y.find("#debug-bar-watch-add").get(0)),x=jQuery(y.find("#debug-bar-watch-all").get(0)),j=jQuery(y.find("#debug-bar-watch-none").get(0)),C=jQuery(y.find("#debug-bar-views-toggle").get(0));g.ariaClick(function(){S?a():r(),S=!S,l()}),m.ariaClick(function(){b.attr("hidden")?b.removeAttr("aria-hidden hidden"):b.attr({"aria-hidden":!0,hidden:"hidden"}),l()}),v.on(":addwatch",function(){n(this.value.trim()),this.value=""}).on("keypress",function(e){13===e.which&&(e.preventDefault(),v.trigger(":addwatch"))}),E.ariaClick(function(){return v.trigger(":addwatch")}),x.ariaClick(i),j.ariaClick(s),k.on("change",function(){Engine.goTo(Number(this.value))}),C.ariaClick(function(){DebugView.toggle(),l()}),jQuery(document).on(":historyupdate.debug-bar",f).on(":passageend.debug-bar",function(){d(),h()}).on(":enginerestart.debug-bar",function(){session.delete("debugState")})}function t(){u(),c(),f(),d(),h()}function r(){y.css("right","-"+y.outerWidth()+"px"),l()}function a(){y.css("right",0),l()}function n(e){g.test(e)&&(v.pushUnique(e),v.sort(),d(),h(),l())}function i(){Object.keys(State.variables).map(function(e){return v.pushUnique("$"+e)}),Object.keys(State.temporary).map(function(e){return v.pushUnique("_"+e)}),v.sort(),d(),h(),l()}function o(e){v.delete(e),d(),h(),l()}function s(){for(var e=v.length-1;e>=0;--e)v.pop();d(),h(),l()}function u(){if(session.has("debugState")){var e=session.get("debugState");S=e.stowed,v.push.apply(v,_toConsumableArray(e.watchList)),e.watchEnabled?b.removeAttr("aria-hidden hidden"):b.attr({"aria-hidden":!0,hidden:"hidden"}),e.viewsEnabled?DebugView.enable():DebugView.disable()}}function l(){session.set("debugState",{stowed:S,watchList:v,watchEnabled:!b.attr("hidden"),viewsEnabled:DebugView.isEnabled()})}function c(){S?r():a()}function d(){if(0===v.length)return void b.empty().append("<div>"+L10n.get("debugBarNoWatches")+"</div>");for(var e=L10n.get("debugBarDeleteWatch"),t=jQuery(document.createElement("table")),r=jQuery(document.createElement("tbody")),a=0,n=v.length;a<n;++a)!function(t,a){var n=v[t],i=n.slice(1),s="$"===n[0]?State.variables:State.temporary,u=jQuery(document.createElement("tr")),l=jQuery(document.createElement("button")),c=jQuery(document.createElement("code"));l.addClass("watch-delete").attr("data-name",n).ariaClick({one:!0,label:e},function(){return o(n)}),c.text(p(s[i])),jQuery(document.createElement("td")).append(l).appendTo(u),jQuery(document.createElement("td")).text(n).appendTo(u),jQuery(document.createElement("td")).append(c).appendTo(u),u.appendTo(r)}(a);t.append(r),b.empty().append(t)}function h(){var e=Object.keys(State.variables),t=Object.keys(State.temporary);if(0===e.length&&0===t.length)return void w.empty();var r=[].concat(_toConsumableArray(e.map(function(e){return"$"+e})),_toConsumableArray(t.map(function(e){return"_"+e}))).sort(),a=document.createDocumentFragment();r.delete(v);for(var n=0,i=r.length;n<i;++n)jQuery(document.createElement("option")).val(r[n]).appendTo(a);w.empty().append(a)}function f(){for(var e=State.size,t=State.expired.length,r=document.createDocumentFragment(),a=0;a<e;++a)jQuery(document.createElement("option")).val(a).text(t+a+1+". "+Util.escape(State.history[a].title)).appendTo(r);k.empty().ariaDisabled(e<2).append(r).val(State.activeIndex)}function p(e){if(null===e)return"null";switch(void 0===e?"undefined":_typeof(e)){case"number":if(Number.isNaN(e))return"NaN";if(!Number.isFinite(e))return"Infinity";case"boolean":case"symbol":case"undefined":return String(e);case"string":return JSON.stringify(e);case"function":return"Function"}var t=Util.toStringTag(e);if("Date"===t)return"Date {"+e.toLocaleString()+"}";if("RegExp"===t)return"RegExp "+e.toString();var r=[];if(e instanceof Array||e instanceof Set){for(var a=e instanceof Array?e:Array.from(e),n=0,i=a.length;n<i;++n)r.push(a.hasOwnProperty(n)?p(a[n]):"<empty>");return Object.keys(a).filter(function(e){return!m.test(e)}).forEach(function(e){return r.push(p(e)+": "+p(a[e]))}),t+"("+a.length+") ["+r.join(", ")+"]"}return e instanceof Map?(e.forEach(function(e,t){return r.push(p(t)+" → "+p(e))}),t+"("+e.size+") {"+r.join(", ")+"}"):(Object.keys(e).forEach(function(t){return r.push(p(t)+": "+p(e[t]))}),t+" {"+r.join(", ")+"}")}var g=new RegExp("^"+Patterns.variable+"$"),m=/^\d+$/,v=[],y=null,b=null,w=null,k=null,S=!0;return Object.freeze(Object.defineProperties({},{init:{value:e},start:{value:t},stow:{value:r},unstow:{value:a},watch:{value:n},watchAll:{value:i},unwatch:{value:o},unwatchAll:{value:s}}))}(),LoadScreen=function(){function e(){jQuery(document).on("readystatechange.SugarCube",function(){o.size>0||("complete"===document.readyState?"loading"===jQuery(document.documentElement).attr("data-init")&&(Config.loadDelay>0?setTimeout(function(){0===o.size&&r()},Math.max(Engine.minDomActionDelay,Config.loadDelay)):r()):a())})}function t(){jQuery(document).off("readystatechange.SugarCube"),o.clear(),r()}function r(){jQuery(document.documentElement).removeAttr("data-init")}function a(){jQuery(document.documentElement).attr("data-init","loading")}function n(){return++s,o.add(s),a(),s}function i(e){if(null==e)throw new Error("LoadScreen.unlock called with a null or undefined ID");o.has(e)&&o.delete(e),0===o.size&&jQuery(document).trigger("readystatechange")}var o=new Set,s=0;return Object.freeze(Object.defineProperties({},{init:{value:e},clear:{value:t},hide:{value:r},show:{value:a},lock:{value:n},unlock:{value:i}}))}(),version=Object.freeze({title:"SugarCube",major:2,minor:26,patch:0,prerelease:null,build:8678,date:new Date("2018-07-30T17:52:56.779Z"),extensions:{},toString:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.major+"."+this.minor+"."+this.patch+e+"+"+this.build},short:function(){var e=this.prerelease?"-"+this.prerelease:"";return this.title+" (v"+this.major+"."+this.minor+"."+this.patch+e+")"},long:function(){return this.title+" v"+this.toString()+" ("+this.date.toUTCString()+")"}}),TempState={},macros={},postdisplay={},postrender={},predisplay={},prehistory={},prerender={},session=null,settings={},setup={},storage=null,browser=Browser,config=Config,has=Has,History=State,state=State,tale=Story,TempVariables=State.temporary;window.SugarCube={},jQuery(function(){try{var e=LoadScreen.lock();LoadScreen.init(),document.normalize&&document.normalize(),Story.load(),storage=SimpleStore.create(Story.domId,!0),session=SimpleStore.create(Story.domId,!1),Dialog.init(),UIBar.init(),Engine.init(),Story.init(),L10n.init(),session.has("rcWarn")||"cookie"!==storage.name||(session.set("rcWarn",1),window.alert(L10n.get("warningNoWebStorage"))),Save.init(),Setting.init(),Macro.init(),Engine.start(),Config.debug&&DebugBar.init();var t=$(window),r=setInterval(function(){t.width()&&(clearInterval(r),setTimeout(function(){UIBar.start(),Config.debug&&DebugBar.start(),LoadScreen.unlock(e)},Engine.minDomActionDelay))},Engine.minDomActionDelay);window.SugarCube={Browser:Browser,Config:Config,Dialog:Dialog,DebugView:DebugView,Engine:Engine,Has:Has,L10n:L10n,Macro:Macro,Passage:Passage,Save:Save,Scripting:Scripting,Setting:Setting,SimpleAudio:SimpleAudio,State:State,Story:Story,UI:UI,UIBar:UIBar,DebugBar:DebugBar,Util:Util,Wikifier:Wikifier,macros:macros,session:session,settings:settings,setup:setup,storage:storage,version:version}}catch(e){return console.error(e),LoadScreen.clear(),Alert.fatal(null,e.message,e)}})}(window,window.document,jQuery);}
 	</script>
 </body>
 </html>
-- 
GitLab


From cdbf82c6627b6534771b8850f200020cfd9d5910 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 30 Jul 2018 20:31:47 -0400
Subject: [PATCH 168/189] fixed vignette JS

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt | 1 +
 devNotes/twine JS.txt                        | 4 ++--
 src/js/vignettes.tw                          | 4 ++--
 src/uncategorized/clubReport.tw              | 2 +-
 4 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index fc3bd036829..8d7057bf9d3 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -6,6 +6,7 @@
 
 	13
 	-sugarcube updated to 2.26.0
+	-fixed DJ/Madam vignette issues
 
 	12
 	-fixed bugs and typos
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 6646495df22..9b2720ed190 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -23372,7 +23372,7 @@ window.GetVignette = function GetVignette(slave) {
 	const boy = pronouns.noun;
 
 
-	if (slave.assignment === "whore" || slave.assignment === "work in the brothel") {
+	if (slave.assignment === "whore" || slave.assignment === "work in the brothel" || slave.assignment === "be the Madam") {
 		let seed = jsRandom(1, 10);
 		switch (seed) {
 			case 1:
@@ -24753,7 +24753,7 @@ window.GetVignette = function GetVignette(slave) {
 			type: "trust",
 			effect: -1,
 		});
-	} else if (slave.assignment === "serve the public" || slave.assignment === "serve in the club") {
+	} else if (slave.assignment === "serve the public" || slave.assignment === "serve in the club" || slave.assignment === "be the DJ") {
 		let seed = jsRandom(1, 10);
 		switch (seed) {
 			case 1:
diff --git a/src/js/vignettes.tw b/src/js/vignettes.tw
index 555472492f8..5dbbbc339ee 100644
--- a/src/js/vignettes.tw
+++ b/src/js/vignettes.tw
@@ -13,7 +13,7 @@ window.GetVignette = function GetVignette(slave) {
 	const boy = pronouns.noun;
 
 
-	if (slave.assignment === "whore" || slave.assignment === "work in the brothel") {
+	if (slave.assignment === "whore" || slave.assignment === "work in the brothel" || slave.assignment === "be the Madam") {
 		let seed = jsRandom(1, 10);
 		switch (seed) {
 			case 1:
@@ -1394,7 +1394,7 @@ window.GetVignette = function GetVignette(slave) {
 			type: "trust",
 			effect: -1,
 		});
-	} else if (slave.assignment === "serve the public" || slave.assignment === "serve in the club") {
+	} else if (slave.assignment === "serve the public" || slave.assignment === "serve in the club" || slave.assignment === "be the DJ") {
 		let seed = jsRandom(1, 10);
 		switch (seed) {
 			case 1:
diff --git a/src/uncategorized/clubReport.tw b/src/uncategorized/clubReport.tw
index 8dbdffa6dd9..9b53b34a4ab 100644
--- a/src/uncategorized/clubReport.tw
+++ b/src/uncategorized/clubReport.tw
@@ -110,13 +110,13 @@
 			<<if ($legendaryEntertainerID == 0) && ($slaves[_FLs].prestige == 0) && ($slaves[_FLs].entertainSkill >= 100) && ($slaves[_FLs].devotion > 50)>>
 				<<set $legendaryEntertainerID = $slaves[_FLs].ID>>
 			<</if>>
+			<br>&nbsp;&nbsp;&nbsp;&nbsp;Since she doesn't have enough sluts in $clubName to make it worthwhile for her to be on stage 24/7, she spends her extra time slutting it up herself. She has sex with $beauty citizens, @@.green;pleasing them immensely,@@ since it's more appealing to fuck the DJ than some club slut.
 			<<if $showEWD != 0>>
 				<br>&nbsp;&nbsp;&nbsp;&nbsp;She <<include "SA serve the public">>
 			<<else>>
 				<<silently>><<include "SA serve the public">><</silently>>
 			<</if>>
 			<<set $repGain += Math.trunc(($beauty*$FResult)*(1+(0.003*$slaves[_FLs].entertainSkill))*0.1*0.5)>>
-			<br>&nbsp;&nbsp;&nbsp;&nbsp;Since she doesn't have enough sluts in $clubName to make it worthwhile for her to be on stage 24/7, she spends her extra time slutting it up herself. She has sex with $beauty citizens, @@.green;pleasing them immensely,@@ since it's more appealing to fuck the DJ than some club slut.
 		<</if>>
 	<</if>>
 	<<if (_DL > 0)>><br><br><</if>>
-- 
GitLab


From a87d7e404fb2d70f6617483ffd2dbfd8341f843b Mon Sep 17 00:00:00 2001
From: prndev <prndev@users.noreply.github.com>
Date: Tue, 31 Jul 2018 22:27:30 +0200
Subject: [PATCH 169/189] Vector Art (deepmurk variant): Move butt plugs and
 their attachments into the background.

Fixes #219.
---
 src/art/artWidgets.tw              |  1 +
 src/art/vector/Anal_Accessories.tw | 16 ++++++++++++++++
 src/art/vector/Chastity_Belt.tw    | 16 ----------------
 3 files changed, 17 insertions(+), 16 deletions(-)
 create mode 100644 src/art/vector/Anal_Accessories.tw

diff --git a/src/art/artWidgets.tw b/src/art/artWidgets.tw
index 529ab0b0b66..db4ddb052ca 100644
--- a/src/art/artWidgets.tw
+++ b/src/art/artWidgets.tw
@@ -52,6 +52,7 @@ vector art added later is drawn over previously added art
 */
 <<include Art_Vector_Hair_Back_>>
 <<include Art_Vector_Arm_>>
+<<include Art_Vector_Anal_Accessories_>>
 <<include Art_Vector_Butt_>>
 <<include Art_Vector_Leg_>>
 <<include Art_Vector_Feet_>> /* includes shoes and leg outfits*/
diff --git a/src/art/vector/Anal_Accessories.tw b/src/art/vector/Anal_Accessories.tw
new file mode 100644
index 00000000000..5c377217ef8
--- /dev/null
+++ b/src/art/vector/Anal_Accessories.tw
@@ -0,0 +1,16 @@
+:: Art_Vector_Anal_Accessories_ [nobr]
+
+<<if _artSlave.buttplug == "long plug">>
+	<<include Art_Vector_Plug_Long>>
+<<elseif _artSlave.buttplug == "large plug">>
+	<<include Art_Vector_Plug_Large>>
+<<elseif _artSlave.buttplug == "long, large plug">>
+	<<include Art_Vector_Plug_Large_Long>>
+<<elseif _artSlave.buttplug == "huge plug">>
+	<<include Art_Vector_Plug_Huge>>
+<<elseif _artSlave.buttplug == "long, huge plug">>
+	<<include Art_Vector_Plug_Huge_Long>>
+<</if>>
+<<if _artSlave.buttplugAttachment == "tail">>
+	<<include Art_Vector_Plug_Tail>>
+<</if>>
diff --git a/src/art/vector/Chastity_Belt.tw b/src/art/vector/Chastity_Belt.tw
index a77a6b182fb..60bbe16d62d 100644
--- a/src/art/vector/Chastity_Belt.tw
+++ b/src/art/vector/Chastity_Belt.tw
@@ -44,19 +44,3 @@
 
 <</if>>
 <</if>>
-
-/* Anal Accessories */
-<<if _artSlave.buttplug == "long plug">>
-	<<include Art_Vector_Plug_Long>>
-<<elseif _artSlave.buttplug == "large plug">>
-	<<include Art_Vector_Plug_Large>>
-<<elseif _artSlave.buttplug == "long, large plug">>
-	<<include Art_Vector_Plug_Large_Long>>
-<<elseif _artSlave.buttplug == "huge plug">>
-	<<include Art_Vector_Plug_Huge>>
-<<elseif _artSlave.buttplug == "long, huge plug">>
-	<<include Art_Vector_Plug_Huge_Long>>
-<</if>>
-<<if _artSlave.buttplugAttachment == "tail">>
-	<<include Art_Vector_Plug_Tail>>
-<</if>>
\ No newline at end of file
-- 
GitLab


From 135b6de397001b78a058a31ed9a1ee576113d529 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 1 Aug 2018 01:40:06 -0400
Subject: [PATCH 170/189] fixes and tweaking

---
 devNotes/twine JS.txt                       | 1543 +++++++++----------
 slave variables documentation - Pregmod.txt |    1 +
 src/endWeek/saChoosesOwnClothes.tw          |  812 ++++++++++
 src/js/clothingSelectionJS.tw               |  762 ---------
 src/js/saChoosesOwnClothes.tw               |   80 -
 src/pregmod/saPorn.tw                       |   39 +-
 src/uncategorized/saLongTermEffects.tw      |    5 +
 7 files changed, 1609 insertions(+), 1633 deletions(-)
 create mode 100644 src/endWeek/saChoosesOwnClothes.tw
 delete mode 100644 src/js/clothingSelectionJS.tw
 delete mode 100644 src/js/saChoosesOwnClothes.tw

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 9b2720ed190..c1180b5185f 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -9469,849 +9469,818 @@ window.fetalSplit = function(actor)
 }
 */
 
-/*:: clothingSelectionJS [script]*/
-
-window.todaysOutfit = function(slave) {
-	var ArcologyZero = State.variables.arcologies[0];
-	var player = State.variables.PC;
-	var clothing = [];
-	var wardrobeAssignment = [];
-	var wardrobeFS = [];
-	var wardrobeTastes = [];
-	var selection;
+/*:: saChoosesOwnClothes [script]*/
 
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
+window.saChoosesOwnClothes = (function() {
+	"use strict";
+	let V;
+	let player;
+	let r;
+	let pronouns;
+	let he;
+	let him;
+	let his;
+	let hers;
+	let himself;
+	let boy;
+	let He;
+	let His;
+	let belly_accessory;
+
+	function saChoosesOwnClothes(slave) {
+		V = State.variables;
+		player = V.PC;
+		r = "";
+		if (slave.choosesOwnClothes !== 1) return r;
+		pronouns = getPronouns(slave);
+		he = pronouns.pronoun;
+		him = pronouns.object;
+		his = pronouns.possessive;
+		hers = pronouns.posessivePronoun;
+		himself = pronouns.objectReflexive;
+		boy = pronouns.noun;
+		He = capFirstChar(he);
+		His = capFirstChar(his);
+		belly_accessory = slave.bellyAccesory;
 
-	if(slave.fetish == 'mindbroken') {
-		if(ArcologyZero.FSChattelReligionist > 0) {
-			selection = {text: `${he} commonly sees others wearing chattel habits and is drawn to doing so ${himself}.`, clothes: "a chattel habit"};
+		if (slave.fetish === "mindbroken") {
+			let corsetChoice = todaysCorset(slave);
+			let clothingChoice = todaysOutfit(slave);
+			slave.bellyAccesory = corsetChoice.bellyAccesory;
+			slave.clothes = clothingChoice.clothes;
+			r += `${He} is fundamentally broken, but still follows some faint memories of standing within the wardrobe. `;
+			if (slave.amp !== 1) {
+				let shoeChoice = todaysShoes(slave);
+				r += `${shoeChoice.text} `;
+				slave.shoes = shoeChoice.shoes;
+			}
+			r += `${corsetChoice.text} Faced with so many choices and no thought on the matter; ${clothingChoice.text}. `;
+		} else if (slave.devotion <= 20) {
+			let clothingChoice = todaysOutfit(slave);
+			slave.clothes = clothingChoice.clothes;
+			r += `${clothingChoice.text} `;
+			if (slave.amp !== 1) {
+				let shoeChoice = todaysShoes(slave);
+				r += `${shoeChoice.text} `;
+				slave.shoes = shoeChoice.shoes;
+			}
+			r += `<span class="mediumorchid">increasing ${his} independence.</span>`;
+			slave.devotion -= 5;
 		} else {
-			clothing.push('panties');
-			if(ArcologyZero.FSEgyptianRevivalist > 0) {
-				clothing.push('egyptian');
-			} else if(ArcologyZero.FSRomanRevivalist > 0) {
-				clothing.push('roman');
-			} else if(ArcologyZero.FSAztecRevivalist > 0) {
-				clothing.push('aztec');
-			} else if(ArcologyZero.FSEdoRevivalist > 0) {
-				clothing.push('edo');
-			} else if(ArcologyZero.FSArabianRevivalist > 0) {
-				clothing.push('arabic');
-			} else if(ArcologyZero.FSChineseRevivalist > 0) {
-				clothing.push('chinese');
-			}
-			if(ArcologyZero.FSGenderFundamentalist > 0) {
-				clothing.push('genderFund');
-			}
-			if(ArcologyZero.FSPaternalist > 0) {
-				clothing.push('paternalist');
-			} else if(ArcologyZero.FSDegradationist > 0) {
-				clothing.push('degradationist');
-			}
-			if(ArcologyZero.FSMaturityPreferentialist > 0) {
-				clothing.push('mature');
-			} else if(ArcologyZero.FSYouthPreferentialist > 0) {
-				clothing.push('youth');
-			}
-			if(ArcologyZero.FSPhysicalIdealist > 0) {
-				clothing.push('physicalIdealist');
-			}
-			if(ArcologyZero.FSPastoralist > 0) {
-				clothing.push('pastoralist');
-			}
-			if(ArcologyZero.FSBodyPurist > 0) {
-				clothing.push('bodyPurist');
-			}
-			clothing = jsEither(clothing);
-			switch(clothing) {
-			case 'egyptian':
-				selection = {text: `${he} commonly sees others wearing nothing but jewelry and is drawn to doing so ${himself}.`, clothes: "slutty jewelry"};
-				break;
-			case 'roman':
-				selection = {text: `${he} commonly sees others wearing togas and is drawn to doing so ${himself}.`, clothes: "a toga"};
-				break;
-			case 'aztec':
-				selection = {text: `${he} commonly sees others wearing huipils and is drawn to doing so ${himself}.`, clothes: "a huipil"};
-				break;
-			case 'edo':
-				selection = {text: `${he} commonly sees others wearing kimonos and is drawn to doing so ${himself}.`, clothes: "a kimono"};
-				break;
-			case 'arabic':
-				selection = {text: `${he} commonly sees others wearing silk and is drawn to doing so ${himself}.`, clothes: "harem gauze"};
-				break;
-			case 'chinese':
-				selection = {text: `${he} commonly sees others wearing qipaos and is drawn to doing so ${himself}.`, clothes: "a slutty qipao"};
-				break;
-			case 'genderFund':
-				if(jsRandom(1,2) == 1) {
-					selection = {text: `${he} commonly sees cheerleaders around and instinctually follows along.`, clothes: jsEither(['a cheerleader outfit', 'a schoolgirl outfit'])};
-				} else {
-					selection = {text: `${he} commonly sees bunnies around and instinctually follows along.`, clothes: "a bunny outfit"};
-				}
-				break;
-			case 'paternalist':
-				selection = {text: `${he} commonly sees others wearing clothing and is drawn to doing so ${himself}.`, clothes: "conservative clothing"};
-				break;
-			case 'degradationist':
-				selection = {text: `${he} commonly sees others wearing chains and is drawn to doing so ${himself}.`, clothes: jsEither(['chains', 'uncomfortable straps', 'shibari ropes'])};
-				break;
-			case 'mature':
-				selection = {text: `${he} commonly sees others wearing suits and is drawn to doing so ${himself}.`, clothes: jsEither(['slutty business attire', 'a nice maid outfit', 'a military uniform', 'a schutzstaffel uniform', 'a slutty schutzstaffel uniform', 'a red army uniform', 'a mounty outfit', 'nice business attire'])};
-				break;
-			case 'youth':
-				selection = {text: `${he} commonly sees schoolgirls around and instinctually follows along.`, clothes: jsEither(['a schoolgirl outfit', 'a cheerleader outfit'])};
-				break;
-			case 'physicalIdealist':
-				selection = {text: `${he} commonly sees naked girls around and seldom realizes they are coated in oil.`, clothes: jsEither(['body oil', 'no clothing', 'no clothing'])};
-				break;
-			case 'pastoralist':
-				selection = {text: `${he} commonly sees cowgirls around and instinctually follows along.`, clothes: "Western clothing"};
-				break;
-			case 'bodyPurist':
-				selection = {text: `${he} commonly sees others wearing tight, form-fitting clothes and is drawn to doing so ${himself}.`, clothes: jsEither(['a leotard', 'a string bikini', 'a slave gown', 'a comfortable bodysuit', 'restrictive latex', 'clubslut netting', 'a leotard', 'a halter top dress'])};
-				break;
-			default:
-				selection = {text: `${he} chooses to put on underwear, the reasons lost to ${him}, and moves on.`, clothes: "attractive lingerie"};
-				break;
+			let neckChoice = todaysCollar(slave);
+			let corsetChoice = todaysCorset(slave);
+			let clothingChoice = todaysOutfit(slave);
+			slave.collar = neckChoice.collar;
+			slave.bellyAccesory = corsetChoice.bellyAccesory;
+			slave.clothes = clothingChoice.clothes;
+			r += `${He} <span class="hotpink">loves</span> being able to dress ${himself}, ${neckChoice.text} ${corsetChoice.text} ${clothingChoice.text} `;
+			slave.devotion += 1;
+
+			if (V.arcologies[0].FSRestart !== "unset" && slave.choosesOwnChastity == 1) {
+				if (slave.vagina > -1 && slave.breedingMark === 1 && (slave.vaginalAccessory === "chastity belt" || slave.vaginalAccessory === "combined chastity")) {
+					r += `${He} unfastens ${his} chastity belt knowing full well ${his} role in life is to carry ${his} ${WrittenMaster(slave)}'s children. `;
+					slave.vaginalAccessory = "none";
+				} else if (slave.vagina > -1 && slave.ovaries === 1 && slave.preg === 0 && slave.vaginalAccessory !== "chastity belt") {
+					r += `${He} also affixes a chastity belt over ${his} vagina to discourage use of ${his} reproductive organ. `;
+					slave.vaginalAccessory = "chastity belt";
+				} else if (slave.vagina > -1 && (slave.ovaries === 0 || slave.preg < -1) && slave.vaginalAccessory === "chastity belt") {
+					r += `${He} removes ${his} chastity belt since no matter how hard someone tries, ${he} can never become pregnant. `;
+					slave.vaginalAccessory = "none";
+				}
+				if (slave.dick > 0 && slave.balls > 0 && slave.dickAccessory !== "chastity") {
+					r += `${He} also affixes a chastity cage onto ${his} dick to discourage use of ${his} reproductive organ. `;
+					slave.dickAccessory = "chastity";
+				} else if (slave.dick > 0 && slave.balls === 0 && slave.dickAccessory === "chastity") {
+					r += `${He} removes ${his} chastity cage since even if ${he} could get erect, ${he} only shoots blanks. `;
+					slave.dickAccessory = "none";
+				}
+			}
+
+			if (slave.amp !== 1) {
+				let shoeChoice = todaysShoes(slave);
+				r += `${shoeChoice.text}`;
+				slave.shoes = shoeChoice.shoes;
 			}
 		}
-	} else if(slave.devotion <= 20) {
-		clothing.push({text: `${He} uses the ability to select outfits to cover up with comfortable cutoffs and a t-shirt,`, clothes: "cutoffs and a t-shirt"});
-		if(isItemAccessible("conservative clothing")) {
-			wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover up with the most conservative clothing ${he} can find.`, clothes: "conservative clothing"});
-		}
-		if(isItemAccessible("a kimono")) {
-			wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover ${himself} with a kimono.`, clothes: "a kimono"});
-		}
-		if(isItemAccessible("stretch pants and a crop-top")) {
-			wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover up with stretch pants and a crop-top, though ${he} wishes it didn't have lewd comments printed on it.`, clothes: "stretch pants and a crop-top"});
-		}
-		selection = jsEither(clothing);
-	} else {
-		if(ArcologyZero.FSChattelReligionist > 0) {
-			clothing.push({text: "and wears a chattel habit to conform to your arcology's culture.", clothes: "a chattel habit"});
-		}
-		/*Chooses clothes according to assignment (no exceptions)*/
-		else if(slave.assignment == "be the Nurse") {
-			if(slave.energy > 95 || slave.need > 100) {
-				wardrobeAssignment.push({text: `and wears a slutty nurse outfit to make it clear just how much this nurse needs ${his} daily lay.`, clothes: "a slutty nurse outfit"});
-			} else if(slave.energy > 80) {
-				wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show off ${his} body and arouse ${his} patients.`, clothes: "a slutty nurse outfit"});
-				wardrobeAssignment.push({text: `and wears a nice nurse outfit to look professional before ${his} patients.`, clothes: "a nice nurse outfit"});
-				wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show to a little skin as ${he} cares for ${his} patients.`, clothes: "a slutty nurse outfit"});
-			} else {
-				wardrobeAssignment.push({text: `and wears a nice nurse outfit to look professional before ${his} patients.`, clothes: "a nice nurse outfit"});
-				wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show to a little skin as ${he} cares for ${his} patients.`, clothes: "a slutty nurse outfit"});
-			}
-		} else if(slave.assignment == "be the Madam") {
-			if(slave.energy > 95 || slave.need > 100) {
-				wardrobeAssignment.push({text: `and wears a slutty suit to be certain nothing blocks ${him} from getting the sex ${he} needs.`, clothes: "slutty business attire"});
-			} else if(slave.energy > 80) {
-				wardrobeAssignment.push({text: `and wears a nice suit to show ${he} means business.`, clothes: "nice business attire"});
-				wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
-				wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
-			} else {
-				wardrobeAssignment.push({text: `and wears a nice suit to show ${he} means business.`, clothes: "nice business attire"});
-				wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
-			}
-		} else if(slave.assignment == "be the Milkmaid") {
-			if(slave.energy > 95 || slave.need > 100) {
-				if(isItemAccessible("body oil")) {
-					wardrobeAssignment.push({text: `and coats ${himself} with oil to better slip between ${his} cows as ${he} pleasures them.`, clothes: "body oil"});
-				}
-				wardrobeAssignment.push({text: `but goes nude to not be slowed down while moving between ${his} charges.`, clothes: "no clothing"});
+		return r;
+	}
+
+	function todaysOutfit(slave) {
+		let clothing = [];
+		let wardrobeAssignment = [];
+		let wardrobeFS = [];
+		let wardrobeTastes = [];
+		let selection;
+
+		if(slave.fetish == 'mindbroken') {
+			if(V.arcologies[0].FSChattelReligionist > 0) {
+				selection = {text: `${he} commonly sees others wearing chattel habits and is drawn to doing so ${himself}.`, clothes: "a chattel habit"};
 			} else {
-				wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work with the cows.`, clothes: "a nice maid outfit"});
-				wardrobeAssignment.push({text: "and decides to call it Casual Friday and wear nothing but cutoffs and a t-shirt. Not like the cows will mind.", clothes: "cutoffs and a t-shirt"});
-				wardrobeAssignment.push({text: "and opts to don a cheerleader outfit to help cheer the cows on.", clothes: "a cheerleader outfit"});
-				wardrobeAssignment.push({text: `and dresses up as a succubus since ${he}'ll be drawing plenty of fluids.`, clothes: "a succubus outfit"});
-				wardrobeAssignment.push({text: `and slips into some spats and a tank top since ${he} feels a workout coming on.`, clothes: "spats and a tank top"});
-				if(isItemAccessible("Western clothing")) {
-					wardrobeAssignment.push({text: `and wears an appropriate cowgirl outfit. ${His} bare ass walking past is sure to amuse ${his} charges.`, clothes: "Western clothing"});
-				}
-				if(isItemAccessible("stretch pants and a crop-top")) {
-					wardrobeAssignment.push({text: `and slips into some comfy stretch pants to relax as ${he} works the cows.`, clothes: "stretch pants and a crop-top"});
-				}
-				if(State.variables.cumSlaves > 2) {
-					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to help keep ${his} charges hard.`, clothes: "a slutty nurse outfit"});
-					wardrobeAssignment.push({text: `and wears nothing but sexy lingerie to help keep ${his} charges hard.`, clothes: "attractive lingerie"});
-					wardrobeAssignment.push({text: `and wears the skimpiest bikini on hand to help keep ${his} charges hard.`, clothes: "a string bikini"});
-					if(isItemAccessible("body oil")) {
-						wardrobeAssignment.push({text: `and coats ${himself} in oil for ${his} charges to savor.`, clothes: "body oil"});
+				clothing.push('panties');
+				if(V.arcologies[0].FSEgyptianRevivalist > 0) {
+					clothing.push('egyptian');
+				} else if(V.arcologies[0].FSRomanRevivalist > 0) {
+					clothing.push('roman');
+				} else if(V.arcologies[0].FSAztecRevivalist > 0) {
+					clothing.push('aztec');
+				} else if(V.arcologies[0].FSEdoRevivalist > 0) {
+					clothing.push('edo');
+				} else if(V.arcologies[0].FSArabianRevivalist > 0) {
+					clothing.push('arabic');
+				} else if(V.arcologies[0].FSChineseRevivalist > 0) {
+					clothing.push('chinese');
+				}
+				if(V.arcologies[0].FSGenderFundamentalist > 0) {
+					clothing.push('genderFund');
+				}
+				if(V.arcologies[0].FSPaternalist > 0) {
+					clothing.push('paternalist');
+				} else if(V.arcologies[0].FSDegradationist > 0) {
+					clothing.push('degradationist');
+				}
+				if(V.arcologies[0].FSMaturityPreferentialist > 0) {
+					clothing.push('mature');
+				} else if(V.arcologies[0].FSYouthPreferentialist > 0) {
+					clothing.push('youth');
+				}
+				if(V.arcologies[0].FSPhysicalIdealist > 0) {
+					clothing.push('physicalIdealist');
+				}
+				if(V.arcologies[0].FSPastoralist > 0) {
+					clothing.push('pastoralist');
+				}
+				if(V.arcologies[0].FSBodyPurist > 0) {
+					clothing.push('bodyPurist');
+				}
+				clothing = jsEither(clothing);
+				switch(clothing) {
+				case 'egyptian':
+					selection = {text: `${he} commonly sees others wearing nothing but jewelry and is drawn to doing so ${himself}.`, clothes: "slutty jewelry"};
+					break;
+				case 'roman':
+					selection = {text: `${he} commonly sees others wearing togas and is drawn to doing so ${himself}.`, clothes: "a toga"};
+					break;
+				case 'aztec':
+					selection = {text: `${he} commonly sees others wearing huipils and is drawn to doing so ${himself}.`, clothes: "a huipil"};
+					break;
+				case 'edo':
+					selection = {text: `${he} commonly sees others wearing kimonos and is drawn to doing so ${himself}.`, clothes: "a kimono"};
+					break;
+				case 'arabic':
+					selection = {text: `${he} commonly sees others wearing silk and is drawn to doing so ${himself}.`, clothes: "harem gauze"};
+					break;
+				case 'chinese':
+					selection = {text: `${he} commonly sees others wearing qipaos and is drawn to doing so ${himself}.`, clothes: "a slutty qipao"};
+					break;
+				case 'genderFund':
+					if(jsRandom(1,2) == 1) {
+						selection = {text: `${he} commonly sees cheerleaders around and instinctually follows along.`, clothes: jsEither(['a cheerleader outfit', 'a schoolgirl outfit'])};
+					} else {
+						selection = {text: `${he} commonly sees bunnies around and instinctually follows along.`, clothes: "a bunny outfit"};
 					}
+					break;
+				case 'paternalist':
+					selection = {text: `${he} commonly sees others wearing clothing and is drawn to doing so ${himself}.`, clothes: "conservative clothing"};
+					break;
+				case 'degradationist':
+					selection = {text: `${he} commonly sees others wearing chains and is drawn to doing so ${himself}.`, clothes: jsEither(['chains', 'uncomfortable straps', 'shibari ropes'])};
+					break;
+				case 'mature':
+					selection = {text: `${he} commonly sees others wearing suits and is drawn to doing so ${himself}.`, clothes: jsEither(['slutty business attire', 'a nice maid outfit', 'a military uniform', 'a schutzstaffel uniform', 'a slutty schutzstaffel uniform', 'a red army uniform', 'a mounty outfit', 'nice business attire'])};
+					break;
+				case 'youth':
+					selection = {text: `${he} commonly sees schoolgirls around and instinctually follows along.`, clothes: jsEither(['a schoolgirl outfit', 'a cheerleader outfit'])};
+					break;
+				case 'physicalIdealist':
+					selection = {text: `${he} commonly sees naked girls around and seldom realizes they are coated in oil.`, clothes: jsEither(['body oil', 'no clothing', 'no clothing'])};
+					break;
+				case 'pastoralist':
+					selection = {text: `${he} commonly sees cowgirls around and instinctually follows along.`, clothes: "Western clothing"};
+					break;
+				case 'bodyPurist':
+					selection = {text: `${he} commonly sees others wearing tight, form-fitting clothes and is drawn to doing so ${himself}.`, clothes: jsEither(['a leotard', 'a string bikini', 'a slave gown', 'a comfortable bodysuit', 'restrictive latex', 'clubslut netting', 'a leotard', 'a halter top dress'])};
+					break;
+				default:
+					selection = {text: `${he} chooses to put on underwear, the reasons lost to ${him}, and moves on.`, clothes: "attractive lingerie"};
+					break;
 				}
 			}
-		} else if(slave.assignment == "be your Head Girl") {
-			wardrobeAssignment.push({text: `and wears a military uniform to give ${him} that extra touch of authority.`, clothes: "a military uniform"});
-			wardrobeAssignment.push({text: `and wears a schutzstaffel uniform to give ${him} that extra touch of authority.`, clothes: "a schutzstaffel uniform"});
-			wardrobeAssignment.push({text: `and wears a slutty schutzstaffel uniform to give ${him} that extra touch of authority.`, clothes: "a slutty schutzstaffel uniform"});
-			wardrobeAssignment.push({text: `and wears a red army uniform to give ${him} that extra touch of authority.`, clothes: "a red army uniform"});
-			wardrobeAssignment.push({text: `and wears a mounty outfit to give ${him} that extra touch of authority.`, clothes: "a mounty outfit"});					
-			wardrobeAssignment.push({text: `and wears a handsome suit to give ${him} that extra touch of authority.`, clothes: "nice business attire"});
-			if(canPenetrate(slave)){
-				wardrobeAssignment.push({text: `and wears a slutty suit to make it perfectly clear that ${his} dick is ${his} main tool in ${his} job.`, clothes: "slutty business attire"});
-			}
-		} else if(slave.assignment == "be the Schoolteacher") {
-			wardrobeAssignment.push({text: `and wears a handsome suit to give ${him} that teacherly authority.`, clothes: "nice business attire"});
-			wardrobeAssignment.push({text: `and wears a slutty suit to give ${him} an air of authority will keeping all eyes focused on ${him}.`, clothes: "slutty business attire"});
-			wardrobeAssignment.push({text: `and wears a schoolgirl outfit to help keep ${his} charges focused on ${him}.`, clothes: "a schoolgirl outfit"});
-			wardrobeAssignment.push({text: `and dresses up as a succubus to give ${his} sex lessons an extra kick.`, clothes: "a succubus outfit"});
+		} else if(slave.devotion <= 20) {
+			clothing.push({text: `${He} uses the ability to select outfits to cover up with comfortable cutoffs and a t-shirt,`, clothes: "cutoffs and a t-shirt"});
 			if(isItemAccessible("conservative clothing")) {
-				wardrobeAssignment.push({text: "and wears conservative clothes to not detract from this week's lesson.", clothes: "conservative clothing"});
-			}
-			if(isItemAccessible("a toga")) {
-				wardrobeAssignment.push({text: `and wraps ${himself} in a toga to model ${himself} after the philosophers of yore.`, clothes: "a toga"});
+				wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover up with the most conservative clothing ${he} can find.`, clothes: "conservative clothing"});
 			}
-			if(isItemAccessible("a maternity dress") && slave.belly >= 10000) {
-				wardrobeAssignment.push({text: `and settles for a comfortable maternity dress to support ${his} middle while ${he} lectures in front of the class all week.`, clothes: "a maternity dress"});
+			if(isItemAccessible("a kimono")) {
+				wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover ${himself} with a kimono.`, clothes: "a kimono"});
 			}
-		} else if(slave.assignment == "be the Wardeness") {
-			wardrobeAssignment.push({text: "and dons battledress, the better to intimidate the prisoners.", clothes: "battledress"});
-			wardrobeAssignment.push({text: "and slips into a scalemail bikini, the better to intimidate the prisoners.", clothes: "a scalemail bikini"});
-			wardrobeAssignment.push({text: "and dons a scandalous habit to make it perfectly clear that crossing this nun will result in sexual punishment.", clothes: "a fallen nuns habit"});
-			if(isItemAccessible("stretch pants and a crop-top")) {
-				wardrobeAssignment.push({text: "and decides to take it easy by slipping into some stretch pants. They come off just as quickly as they come on, just in case.", clothes: "stretch pants and a crop-top"});
-			}
-		} else if(slave.assignment == "be the Attendant") {
-			wardrobeAssignment.push({text: `and wears a string bikini, since it's all ${he} can wear that won't be ruined by all the moisture in the spa.`, clothes: "a string bikini"});
-			wardrobeAssignment.push({text: `but decides to go nude, since ${he}'ll be spending so much time in the water.`, clothes: "no clothing"});
-		} else if(slave.assignment == "rest") {
-			wardrobeAssignment.push({text: "and wears a comfortable t-shirt and cutoffs to relax.", clothes: "cutoffs and a t-shirt"});
-			wardrobeAssignment.push({text: `and slips into some attractive lingerie to enjoy ${himself} as ${he} unwinds.`, clothes: "attractive lingerie"});
-			wardrobeAssignment.push({text: "but decides that clothing takes too much work and would rather sleep nude.", clothes: "no clothing"});
 			if(isItemAccessible("stretch pants and a crop-top")) {
-				wardrobeAssignment.push({text: "and slips into some comfy stretch pants to relax.", clothes: "stretch pants and a crop-top"});
-			}
-			if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 1500) {
-				wardrobeAssignment.push({text: `and slips into some attractive lingerie to enjoy ${himself} as ${he} unwinds.`, clothes: "attractive lingerie for a pregnant woman"});
-			}
-			if(slave.fetish == "submissive") {
-				wardrobeAssignment.push({text: "and decides the best way to relax is tied up nice and tight.", clothes: "shibari ropes"});
-			}
-		} else if(slave.assignment == "get milked" || slave.assignment == "work in the dairy") {
-			wardrobeAssignment.push({text: `and wears sturdy lingerie to offer the best support to ${his} sore, milk-filled udders.`, clothes: "attractive lingerie"});
-			if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 1500) {
-				wardrobeAssignment.push({text: "and wears lingerie designed for milky mothers.", clothes: "attractive lingerie for a pregnant woman"});
-			}
-			if(isItemAccessible("a maternity dress") && slave.belly >= 10000) {
-				wardrobeAssignment.push({text: `and chooses a maternity dress since it is easy to free ${his} breasts from.`, clothes: "a maternity dress"});
-			}
-			wardrobeAssignment.push({text: `and wears a string bikini for easy access to ${his} udders.`, clothes: "a string bikini"});
-			if(slave.lactation > 1) {
-				wardrobeAssignment.push({text: `but goes nude. There's no time for clothing, ${his} udders need to be drained now!`, clothes: "no clothing"});
-			}
-			wardrobeAssignment.push({text: `and dons a slutty outfit. If ${his} breasts are going to hang out, might as well wear something to complement them.`, clothes: "a slutty outfit"});
-		} else if(slave.assignment == "guard you") {
-			wardrobeAssignment.push({text: `and wears a bodysuit to show off ${his} curves without hindering ${his} deadliness.`, clothes: "a comfortable bodysuit"});
-			wardrobeAssignment.push({text: "and wears a military uniform to look the part of the honor guard.", clothes: "a military uniform"});
-			wardrobeAssignment.push({text: "and wears a schutzstaffel uniform to look the part of the honor guard.", clothes: "a schutzstaffel uniform"});
-			wardrobeAssignment.push({text: "and wears a slutty schutzstaffel uniform to look the part of the honor guard.", clothes: "a slutty schutzstaffel uniform"});
-			wardrobeAssignment.push({text: "and wears a red army uniform to look the part of the honor guard.", clothes: "a red army uniform"});
-			wardrobeAssignment.push({text: "and wears a nice suit to make it clear you mean business.", clothes: "nice business attire"});
-			wardrobeAssignment.push({text: "and wears a mounty outfit to make it clear you mean business.", clothes: "a mounty outfit"});
-			wardrobeAssignment.push({text: `and wears a scalemail bikini to make ${himself} look fierce.`, clothes: "a scalemail bikini"});
-			if(isItemAccessible("a kimono")) {
-				wardrobeAssignment.push({text: "and wears a nice kimono to add an air of elegance to your presence.", clothes: "a kimono"});
+				wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover up with stretch pants and a crop-top, though ${he} wishes it didn't have lewd comments printed on it.`, clothes: "stretch pants and a crop-top"});
 			}
+			selection = jsEither(clothing);
 		} else {
-			/*Chooses clothes according to assignment (exceptions allowed)*/
-			if(slave.assignment == "recruit girls") {
-				wardrobeAssignment.push({text: "and wears a flattering mini dress to appear sexy and carefree before those desperately seeking a better life.", clothes: "a mini dress"});
-				wardrobeAssignment.push({text: "and wears a cutoffs and a t-shirt to appear sexy and carefree before those desperately seeking a better life.", clothes: "cutoffs and a t-shirt"});
-				wardrobeAssignment.push({text: "and wears a nice suit to appear trustworthy before those desperately seeking a better life.", clothes: "nice business attire"});
-				wardrobeAssignment.push({text: "and wears a schoolgirl outfit to appear sexy and carefree before those desperately seeking a better life.", clothes: "a schoolgirl outfit"});
-				wardrobeAssignment.push({text: "and wears an opulent gown to showcase your wealth before those desperately seeking a better life.", clothes: "a ball gown"});
-				wardrobeAssignment.push({text: "and dresses as a succubus to attempt to lure any potential catches.", clothes: "a succubus outfit"});
-				if(isItemAccessible("harem gauze")) {
-					wardrobeAssignment.push({text: `and dons ${his} finest silks to showcase the luxuries waiting would-be slaves.`, clothes: "harem gauze"});
+			if(V.arcologies[0].FSChattelReligionist > 0) {
+				clothing.push({text: "and wears a chattel habit to conform to your arcology's culture.", clothes: "a chattel habit"});
+			}
+			/*Chooses clothes according to assignment (no exceptions)*/
+			else if(slave.assignment == "be the Nurse") {
+				if(slave.energy > 95 || slave.need > 100) {
+					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to make it clear just how much this nurse needs ${his} daily lay.`, clothes: "a slutty nurse outfit"});
+				} else if(slave.energy > 80) {
+					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show off ${his} body and arouse ${his} patients.`, clothes: "a slutty nurse outfit"});
+					wardrobeAssignment.push({text: `and wears a nice nurse outfit to look professional before ${his} patients.`, clothes: "a nice nurse outfit"});
+					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show to a little skin as ${he} cares for ${his} patients.`, clothes: "a slutty nurse outfit"});
+				} else {
+					wardrobeAssignment.push({text: `and wears a nice nurse outfit to look professional before ${his} patients.`, clothes: "a nice nurse outfit"});
+					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show to a little skin as ${he} cares for ${his} patients.`, clothes: "a slutty nurse outfit"});
 				}
-				if(isItemAccessible("stretch pants and a crop-top")) {
-					wardrobeAssignment.push({text: "and wears comfortable stretch pants to and crop-top to appear carefree before those desperately seeking a better life.", clothes: "stretch pants and a crop-top"});
+			} else if(slave.assignment == "be the Madam") {
+				if(slave.energy > 95 || slave.need > 100) {
+					wardrobeAssignment.push({text: `and wears a slutty suit to be certain nothing blocks ${him} from getting the sex ${he} needs.`, clothes: "slutty business attire"});
+				} else if(slave.energy > 80) {
+					wardrobeAssignment.push({text: `and wears a nice suit to show ${he} means business.`, clothes: "nice business attire"});
+					wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
+					wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
+				} else {
+					wardrobeAssignment.push({text: `and wears a nice suit to show ${he} means business.`, clothes: "nice business attire"});
+					wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
 				}
-				if(isItemAccessible("conservative clothing")) {
-					wardrobeAssignment.push({text: "and wears normal clothing to suggest to those desperately seeking a better life that they can find it here with you.", clothes: "conservative clothing"});
-				}
-			} else if(slave.assignment == "be the DJ") {
-				wardrobeAssignment.push({text: "and wears clubslut netting to look like the perfect easy club girl.", clothes: "clubslut netting"});
-				wardrobeAssignment.push({text: "and wears cutoffs and a t-shirt to look like the perfect easy club girl.", clothes: "cutoffs and a t-shirt"});
-				wardrobeAssignment.push({text: `and wears the slutty outfit ${he} can find to look like the perfect easy club girl.`, clothes: "a slutty outfit"});
-				wardrobeAssignment.push({text: `and wears nothing but slutty jewelry since ${he} loves the way it jingles to ${his} moves.`, clothes: "slutty jewelry"});
-				wardrobeAssignment.push({text: `and wears a skin tight bodysuit so nothing gets in the way of ${his} moves.`, clothes: "a comfortable bodysuit"});
-				if(slave.boobs > 1000) {
-					wardrobeAssignment.push({text: `but decides to go naked and let ${his} girls bounce free as ${he} dances.`, clothes: "no clothing"});
-				}
-				if(isItemAccessible("harem gauze")) {
-					wardrobeAssignment.push({text: `and wears the finest available silks to give ${his} moves a sensual grace.`, clothes: "harem gauze"});
-				}
-			} else if(slave.assignment == "be your Concubine") {
-				wardrobeAssignment.push({text: `and goes naked, since it's ${his} honored role to be the chief object of your desire.`, clothes: "no clothing"});
-				wardrobeAssignment.push({text: `and dresses as a slutty nurse as your genitals are always in need of ${his} special treatment.`, clothes: "a slutty nurse outfit"});
-				wardrobeAssignment.push({text: `and dresses as a schoolgirl in the hopes that you teach ${him} how to be a woman.`, clothes: "a schoolgirl outfit"});
-				wardrobeAssignment.push({text: `and dresses as a cheerleader so ${he} may cheer you on as you blow ${his} mind.`, clothes: "a cheerleader outfit"});
-				if(player.dick == 1) {
-					wardrobeAssignment.push({text: "and dresses as a slutty maid as you always come home with a stiff package that needs a thorough polishing.", clothes: "a slutty maid outfit"});
-				}
-				wardrobeAssignment.push({text: `and, since you personally see that ${he} never goes hungry, ${he} dresses like the sex demoness ${he} is.`, clothes: "a succubus outfit"});
-				if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 10000 && slave.pregSource == -1) {
-					wardrobeAssignment.push({text: `and chooses attractive lingerie to showcase the body you've given ${him} in the hopes that you ravish ${him}.`, clothes: "attractive lingerie for a pregnant woman"});
-				}
-				if(slave.toyHole == "dick" && canPenetrate(slave)) {
-					wardrobeAssignment.push({text: `and slips into a scalemail bikini so ${he} can act the role of your conqueror as ${he} bends you over.`, clothes: "a scalemail bikini"});
-				}
-			} else if(slave.assignment == "be a subordinate slave") {
-				wardrobeAssignment.push({text: `but gives up and goes naked after the other slaves constantly tear whatever ${he}'s wearing off ${him}.`, clothes: "no clothing"});
-				if(isItemAccessible("Western clothing")) {
-					wardrobeAssignment.push({text: `and chooses a pair of crotchless chaps so your other slaves don't have to waste time undressing ${him}.`, clothes: "Western clothing"});
+			} else if(slave.assignment == "be the Milkmaid") {
+				if(slave.energy > 95 || slave.need > 100) {
+					if(isItemAccessible("body oil")) {
+						wardrobeAssignment.push({text: `and coats ${himself} with oil to better slip between ${his} cows as ${he} pleasures them.`, clothes: "body oil"});
+					}
+					wardrobeAssignment.push({text: `but goes nude to not be slowed down while moving between ${his} charges.`, clothes: "no clothing"});
+				} else {
+					wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work with the cows.`, clothes: "a nice maid outfit"});
+					wardrobeAssignment.push({text: "and decides to call it Casual Friday and wear nothing but cutoffs and a t-shirt. Not like the cows will mind.", clothes: "cutoffs and a t-shirt"});
+					wardrobeAssignment.push({text: "and opts to don a cheerleader outfit to help cheer the cows on.", clothes: "a cheerleader outfit"});
+					wardrobeAssignment.push({text: `and dresses up as a succubus since ${he}'ll be drawing plenty of fluids.`, clothes: "a succubus outfit"});
+					wardrobeAssignment.push({text: `and slips into some spats and a tank top since ${he} feels a workout coming on.`, clothes: "spats and a tank top"});
+					if(isItemAccessible("Western clothing")) {
+						wardrobeAssignment.push({text: `and wears an appropriate cowgirl outfit. ${His} bare ass walking past is sure to amuse ${his} charges.`, clothes: "Western clothing"});
+					}
+					if(isItemAccessible("stretch pants and a crop-top")) {
+						wardrobeAssignment.push({text: `and slips into some comfy stretch pants to relax as ${he} works the cows.`, clothes: "stretch pants and a crop-top"});
+					}
+					if(State.variables.cumSlaves > 2) {
+						wardrobeAssignment.push({text: `and wears a slutty nurse outfit to help keep ${his} charges hard.`, clothes: "a slutty nurse outfit"});
+						wardrobeAssignment.push({text: `and wears nothing but sexy lingerie to help keep ${his} charges hard.`, clothes: "attractive lingerie"});
+						wardrobeAssignment.push({text: `and wears the skimpiest bikini on hand to help keep ${his} charges hard.`, clothes: "a string bikini"});
+						if(isItemAccessible("body oil")) {
+							wardrobeAssignment.push({text: `and coats ${himself} in oil for ${his} charges to savor.`, clothes: "body oil"});
+						}
+					}
 				}
-				if(slave.fetish == "submissive") {
-					wardrobeAssignment.push({text: `and chooses to slip on a pair of spats and a tank top in the hopes that ${he} gets to be a violated schoolgirl.`, clothes: "spats and a tank top"});
-					wardrobeAssignment.push({text: `and chooses to slip on a schoolgirl outfit in the hope that ${he} gets held down and raped.`, clothes: "a schoolgirl outfit"});
-					wardrobeAssignment.push({text: `and chooses to wear the sluttiest outfit available to make it clear what ${he} wants done to ${him}.`, clothes: "a slutty outfit"});
-				}
-			} else if(slave.assignment == "work a glory hole") {
-				wardrobeAssignment.push({text: `but doesn't bother wearing anything, since no one can see ${his} clothing when ${he}'s immured inside a glory hole.`, clothes: "no clothing"});
-			} else if(slave.assignment == "take classes" || slave.assignment == "learn in the schoolroom") {
-				wardrobeAssignment.push({text: "and wears a schoolgirl outfit, since it seems most appropriate.", clothes: "a schoolgirl outfit"});
-				wardrobeAssignment.push({text: `and wears a cheerleader outfit, since ${he} might as well be one of the popular girls.`, clothes: "a cheerleader outfit"});
+			} else if(slave.assignment == "be your Head Girl") {
+				wardrobeAssignment.push({text: `and wears a military uniform to give ${him} that extra touch of authority.`, clothes: "a military uniform"});
+				wardrobeAssignment.push({text: `and wears a schutzstaffel uniform to give ${him} that extra touch of authority.`, clothes: "a schutzstaffel uniform"});
+				wardrobeAssignment.push({text: `and wears a slutty schutzstaffel uniform to give ${him} that extra touch of authority.`, clothes: "a slutty schutzstaffel uniform"});
+				wardrobeAssignment.push({text: `and wears a red army uniform to give ${him} that extra touch of authority.`, clothes: "a red army uniform"});
+				wardrobeAssignment.push({text: `and wears a mounty outfit to give ${him} that extra touch of authority.`, clothes: "a mounty outfit"});					
+				wardrobeAssignment.push({text: `and wears a handsome suit to give ${him} that extra touch of authority.`, clothes: "nice business attire"});
+				if(canPenetrate(slave)){
+					wardrobeAssignment.push({text: `and wears a slutty suit to make it perfectly clear that ${his} dick is ${his} main tool in ${his} job.`, clothes: "slutty business attire"});
+				}
+			} else if(slave.assignment == "be the Schoolteacher") {
+				wardrobeAssignment.push({text: `and wears a handsome suit to give ${him} that teacherly authority.`, clothes: "nice business attire"});
+				wardrobeAssignment.push({text: `and wears a slutty suit to give ${him} an air of authority will keeping all eyes focused on ${him}.`, clothes: "slutty business attire"});
+				wardrobeAssignment.push({text: `and wears a schoolgirl outfit to help keep ${his} charges focused on ${him}.`, clothes: "a schoolgirl outfit"});
+				wardrobeAssignment.push({text: `and dresses up as a succubus to give ${his} sex lessons an extra kick.`, clothes: "a succubus outfit"});
 				if(isItemAccessible("conservative clothing")) {
-					wardrobeAssignment.push({text: `and wears normal clothing to not distract from ${his} lessons.`, clothes: "conservative clothing"});
-				}
-			} else if((slave.assignment == "whore") || (slave.assignment == "work in the brothel")) {
-				 if(slave.belly >= 5000 && isItemAccessible("attractive lingerie for a pregnant woman")) {
-					wardrobeAssignment.push({text: `and wears pretty lingerie to show off ${his} merchandise and accentuate ${his} pregnancy while still looking a little classy.`, clothes: "attractive lingerie for a pregnant woman"});
+					wardrobeAssignment.push({text: "and wears conservative clothes to not detract from this week's lesson.", clothes: "conservative clothing"});
 				}
-				wardrobeAssignment.push({text: `and wears pretty lingerie to show off ${his} merchandise and still look a little classy.`, clothes: "attractive lingerie"});
-				if(isItemAccessible("harem gauze")) {
-					wardrobeAssignment.push({text: `and dresses ${himself} with harem gauze to add an exotic charm to ${his} display.`, clothes: "harem gauze"});
+				if(isItemAccessible("a toga")) {
+					wardrobeAssignment.push({text: `and wraps ${himself} in a toga to model ${himself} after the philosophers of yore.`, clothes: "a toga"});
 				}
-				if(isItemAccessible("a kimono")) {
-					wardrobeAssignment.push({text: `and wraps ${himself} in a kimono to add some elegance to ${his} display.`, clothes: "a kimono"});
-				}
-				wardrobeAssignment.push({text: `and adorns ${himself} in fine dress to show off how much of a high class whore ${he} is.`, clothes: "a slave gown"});
-				wardrobeAssignment.push({text: `and dresses ${himself} in a slutty suit to show ${he}'s in it for the ¤.`, clothes: "slutty business attire"});
-				wardrobeAssignment.push({text: `and wears a flattering mini dress to really strut ${his} stuff.`, clothes: "a mini dress"});
-			} else if(slave.assignment == "serve the public" || slave.assignment == "serve in the club") {
-				wardrobeAssignment.push({text: "and wears string lingerie to look fun and fuckable.", clothes: "a string bikini"});
-				wardrobeAssignment.push({text: "and throws together the sluttiest outfit since if you're going to slut you might as well go all out.", clothes: "a slutty outfit"});
-				wardrobeAssignment.push({text: `and tosses on a slutty suit that screams ${he} needs a good fuck after a long day.`, clothes: "slutty business attire"});
-				wardrobeAssignment.push({text: `and dresses up as a slutty nurse; ${he} has just the technique to cure penile swelling.`, clothes: "a slutty nurse outfit"});
-				wardrobeAssignment.push({text: "and wears a cheerleader outfit to look energetic and fuckable.", clothes: "a cheerleader outfit"});
-				if(isItemAccessible("a bunny outfit")) {
-					wardrobeAssignment.push({text: `and slips into a teddy to add some class to ${his} post.`, clothes: "a bunny outfit"});
-				}
-				wardrobeAssignment.push({text: `and dresses up as a succubus to clearly advertise ${his} promiscuity.`, clothes: "a succubus outfit"});
-				if(slave.bellyPreg >= 10000) {
-					wardrobeAssignment.push({text: `and struggles into a schoolgirl outfit. ${His} gravid belly just screams that ${he} is a slutty little student who cares more for dick than lessons.`, clothes: "a succubus outfit"});
-				}
-			} else if(slave.assignment == "be a servant" || slave.assignment == "work as a servant") {
-				if(slave.energy > 95 || slave.need > 100) {
-					wardrobeAssignment.push({text: `and wears a skimpy maid outfit hoping that someone sneaks up behind ${him} as ${he} works and fulfills ${his} desires.`, clothes: "a slutty maid outfit"});
-				} else if(slave.energy > 80) {
-					wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
-					wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work around the penthouse.`, clothes: "a nice maid outfit"});
-					wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
-				} else {
-					wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work around the penthouse.`, clothes: "a nice maid outfit"});
-					wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
+				if(isItemAccessible("a maternity dress") && slave.belly >= 10000) {
+					wardrobeAssignment.push({text: `and settles for a comfortable maternity dress to support ${his} middle while ${he} lectures in front of the class all week.`, clothes: "a maternity dress"});
 				}
-			}
-			
-			/* Chooses clothes according to FS*/
-			if(ArcologyZero.FSEgyptianRevivalist > 0) {
-				wardrobeFS.push({text: "and complements it with golden bangles, since no clothing is necessary for a sex slave in your warm and sunny arcology.", clothes: "slutty jewelry"});
-			} else if(ArcologyZero.FSRomanRevivalist > 0) {
-				wardrobeFS.push({text: "and wears a toga to take part in your Roman revivalism.", clothes: "a toga"});
-			} else if(ArcologyZero.FSEdoRevivalist > 0) {
-				wardrobeFS.push({text: "and wears a kimono, overjoyed that such lovely clothing is now appropriate.", clothes: "a kimono"});
-			} else if(ArcologyZero.FSArabianRevivalist > 0) {
-				wardrobeFS.push({text: "and wears a harem outfit to look like a slave girl fit for a Sultan.", clothes: "harem gauze"});
-			} else if(ArcologyZero.FSChineseRevivalist > 0) {
-				wardrobeFS.push({text: "and wears a brief qipao to show off and look Chinese at the same time.", clothes: "a slutty qipao"});
-			} else if(ArcologyZero.FSAztecRevivalist > 0) {
-				wardrobeFS.push({text: `and drapes a huipil over ${himself} to fit in with your Aztec revivalism.`, clothes: "a huipil"});
-			}
-			if(ArcologyZero.FSGenderFundamentalist > 0) {
-				wardrobeFS.push({text: "and wears a cheerleader outfit to look like a hot slut.", clothes: "a cheerleader outfit"});
-				wardrobeFS.push({text: "and wears a bunny outfit to look like a slut from the glory days.", clothes: "a bunny outfit"});
-				if(slave.bellyPreg >= 5000) {
-					wardrobeFS.push({text: `but decides to wear nothing at all; ${he}'s already pregnant, so ${he} just needs to be barefoot and naked to complete ${his} look.`, clothes: "no clothing"});
-				}
-			} else if(ArcologyZero.FSGenderRadicalist > 0) {
-				wardrobeFS.push({text: `and eagerly slips into a skimpy maid outfit so ${he} can take advantage of its short skirt and ${his} lack of underwear`, clothes: "a slutty maid outfit"});
-				wardrobeFS.push({text: `and wears a cheerleader outfit that clearly shows off ${his} ass.`, clothes: "a cheerleader outfit"});
-				wardrobeFS.push({text: "and settles for some sexy succubutt.", clothes: "a succubus outfit"});
-			}
-			if(ArcologyZero.FSPaternalist > 0) {
-				wardrobeFS.push({text: "and wears conservative clothing, as permitted by your paternalism.", clothes: "conservative clothing"});
+			} else if(slave.assignment == "be the Wardeness") {
+				wardrobeAssignment.push({text: "and dons battledress, the better to intimidate the prisoners.", clothes: "battledress"});
+				wardrobeAssignment.push({text: "and slips into a scalemail bikini, the better to intimidate the prisoners.", clothes: "a scalemail bikini"});
+				wardrobeAssignment.push({text: "and dons a scandalous habit to make it perfectly clear that crossing this nun will result in sexual punishment.", clothes: "a fallen nuns habit"});
 				if(isItemAccessible("stretch pants and a crop-top")) {
-					wardrobeAssignment.push({text: `and wears the most comfortable stretch pants ${he} can find.`, clothes: "stretch pants and a crop-top"});
+					wardrobeAssignment.push({text: "and decides to take it easy by slipping into some stretch pants. They come off just as quickly as they come on, just in case.", clothes: "stretch pants and a crop-top"});
+				}
+			} else if(slave.assignment == "be the Attendant") {
+				wardrobeAssignment.push({text: `and wears a string bikini, since it's all ${he} can wear that won't be ruined by all the moisture in the spa.`, clothes: "a string bikini"});
+				wardrobeAssignment.push({text: `but decides to go nude, since ${he}'ll be spending so much time in the water.`, clothes: "no clothing"});
+			} else if(slave.assignment == "rest") {
+				wardrobeAssignment.push({text: "and wears a comfortable t-shirt and cutoffs to relax.", clothes: "cutoffs and a t-shirt"});
+				wardrobeAssignment.push({text: `and slips into some attractive lingerie to enjoy ${himself} as ${he} unwinds.`, clothes: "attractive lingerie"});
+				wardrobeAssignment.push({text: "but decides that clothing takes too much work and would rather sleep nude.", clothes: "no clothing"});
+				if(isItemAccessible("stretch pants and a crop-top")) {
+					wardrobeAssignment.push({text: "and slips into some comfy stretch pants to relax.", clothes: "stretch pants and a crop-top"});
 				}
-			} else if(ArcologyZero.FSDegradationist > 0) {
-				wardrobeFS.push({text: `and wears chains, to degrade ${himself} as required by your societal goals.`, clothes: "chains"});
-			}
-			if(ArcologyZero.FSMaturityPreferentialist > 0) {
-				if(slave.visualAge >= 30) {
-					wardrobeFS.push({text: "and wears a slutty suit to look like the ideal horny older woman.", clothes: "slutty business attire"});
-					wardrobeFS.push({text: `and wears only an apron to make ${himself} seem more matronly.`, clothes: "an apron"});
-				} else {
-					wardrobeFS.push({text: "and wears a formal suit to look more mature.", clothes: "nice business attire"});
-				}
-			} else if(ArcologyZero.FSYouthPreferentialist > 0) {
-				wardrobeFS.push({text: "and wears a schoolgirl outfit to look younger.", clothes: "a schoolgirl outfit"});
-				wardrobeFS.push({text: "and wears a cheerleader outfit to look younger and more energetic.", clothes: "a cheerleader outfit"});
-				wardrobeFS.push({text: "and wears spats and a tank top to look younger and more energetic.", clothes: "spats and a tank top"});
-			}
-			if(ArcologyZero.FSPhysicalIdealist > 0) {
-				wardrobeFS.push({text: `and coats ${himself} in body oil to show off how ${he}'s part of your physical idealism.`, clothes: "body oil"});
-				wardrobeFS.push({text: `and slips into some spats for ${his} next workout.`, clothes: "spats and a tank top"});
-			} else if(ArcologyZero.FSHedonisticDecadence > 0) {
-				wardrobeFS.push({text: "and throws on a very casual getup.", clothes: "stretch pants and a crop-top"});
-				wardrobeFS.push({text: "but decides against putting forth the effort and goes nude.", clothes: "no clothing"});
-			}
-			if(ArcologyZero.FSPastoralist > 0) {
-				wardrobeFS.push({text: `and wears Western clothing, since ${he} thinks it fits with pastoralism.`, clothes: "Western clothing"});
-				wardrobeFS.push({text: `and wears a swimsuit that leaves ${his} breasts uncovered.`, clothes: "a monokini"});
-				if(slave.lactation > 0) {
-					wardrobeFS.push({text: "and dresses up as a slutty wet nurse.", clothes: "a slutty nurse outfit"});
-				}
-				wardrobeFS.push({text: `but decides to let ${his} breasts be free. Clothes will just get in the way.`, clothes: "no clothing"});
-			}
-			if(ArcologyZero.FSBodyPurist > 0) {
-				wardrobeFS.push({text: `and wears a leotard to show off the purity of ${his} body.`, clothes: "a leotard"});
-				wardrobeFS.push({text: `but decides ${his} body is too nice to hide with clothing.`, clothes: "no clothing"});
-			} else if(ArcologyZero.FSTransormationFetishest > 0) {
-				if(isItemAccessible("body oil")) {
-					wardrobeAssignment.push({text: `and coats ${his} assets in body oil to give them some extra shine.`, clothes: "body oil"});
-				}
-				wardrobeFS.push({text: `and decides squeezing into a latex suit will only complement ${his} unnatural appearance.`, clothes: "restrictive latex"});
-			}
-			if(ArcologyZero.FSAssetExpansioninst > 0) {
-				wardrobeFS.push({text: "and decides to dress up like a young man's wet dream.", clothes: "a succubus outfit"});
-				wardrobeFS.push({text: `and decides to wear a skimpy bikini to make ${his} assets look even larger.`, clothes: "a string bikini"});
-				wardrobeFS.push({text: `and decides to throw together a slutty outfit that highlight ${his} assets.`, clothes: "a slutty outfit"});
-				wardrobeFS.push ({text: "and decides to wear a monokini that clings to the assets it actually does conceal.", clothes: "a monokini"});
-			} else if(ArcologyZero.FSSlimnessEnthusiast > 0) {
-				if(slave.boobs < 300) {
-					wardrobeFS.push({text: `and wears a string bikini to show off just how flat ${he} is.`, clothes: "a string bikini"});
-				}
-				if(slave.boobs < 600 && slave.butt < 3) {
-					wardrobeFS.push({text: `and wears a leotard to show off ${his} lithe body.`, clothes: "a leotard"});
-					wardrobeFS.push({text: `and wears a form fitting bodysuit to show off ${his} lithe figure.`, clothes: "a comfortable bodysuit"});
-					wardrobeFS.push({text: `and wears spats to hug ${his} tight butt.`, clothes: "spats and a tank top"});
-					wardrobeFS.push({text: `and wears an apron that covers ${his} front while leaving ${his} rear free.`, clothes: "an apron"});
-				} else {
-					wardrobeFS.push({text: `and squeezes into a form fitting bodysuit in the hopes that it squishes down ${his} assets.`, clothes: "restrictive latex"});
+				if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 1500) {
+					wardrobeAssignment.push({text: `and slips into some attractive lingerie to enjoy ${himself} as ${he} unwinds.`, clothes: "attractive lingerie for a pregnant woman"});
 				}
-			}
-			
-			/*Chooses clothes according to fetishes, quirks, etc.*/
-			if(slave.attrXY > 70) {
-				if(slave.attrKnown == 1) {
-					wardrobeTastes.push({text: "and wears a schoolgirl outfit to show off a some T&A to attract boys.", clothes: "a schoolgirl outfit"});
-					wardrobeTastes.push({text: "and wears nothing but pretty lingerie to attract boys.", clothes: "attractive lingerie"});
-					wardrobeTastes.push({text: "and selects a slutty outfit that's sure to have men drooling.", clothes: "a slutty outfit"});
-					if(slave.butt > 3){
-						wardrobeTastes.push({text: `and slips on some cutoffs that are sure to have men checking out ${his} ass.`, clothes: "cutoffs and a t-shirt"});
-					}
+				if(slave.fetish == "submissive") {
+					wardrobeAssignment.push({text: "and decides the best way to relax is tied up nice and tight.", clothes: "shibari ropes"});
+				}
+			} else if(slave.assignment == "get milked" || slave.assignment == "work in the dairy") {
+				wardrobeAssignment.push({text: `and wears sturdy lingerie to offer the best support to ${his} sore, milk-filled udders.`, clothes: "attractive lingerie"});
+				if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 1500) {
+					wardrobeAssignment.push({text: "and wears lingerie designed for milky mothers.", clothes: "attractive lingerie for a pregnant woman"});
+				}
+				if(isItemAccessible("a maternity dress") && slave.belly >= 10000) {
+					wardrobeAssignment.push({text: `and chooses a maternity dress since it is easy to free ${his} breasts from.`, clothes: "a maternity dress"});
+				}
+				wardrobeAssignment.push({text: `and wears a string bikini for easy access to ${his} udders.`, clothes: "a string bikini"});
+				if(slave.lactation > 1) {
+					wardrobeAssignment.push({text: `but goes nude. There's no time for clothing, ${his} udders need to be drained now!`, clothes: "no clothing"});
+				}
+				wardrobeAssignment.push({text: `and dons a slutty outfit. If ${his} breasts are going to hang out, might as well wear something to complement them.`, clothes: "a slutty outfit"});
+			} else if(slave.assignment == "guard you") {
+				wardrobeAssignment.push({text: `and wears a bodysuit to show off ${his} curves without hindering ${his} deadliness.`, clothes: "a comfortable bodysuit"});
+				wardrobeAssignment.push({text: "and wears a military uniform to look the part of the honor guard.", clothes: "a military uniform"});
+				wardrobeAssignment.push({text: "and wears a schutzstaffel uniform to look the part of the honor guard.", clothes: "a schutzstaffel uniform"});
+				wardrobeAssignment.push({text: "and wears a slutty schutzstaffel uniform to look the part of the honor guard.", clothes: "a slutty schutzstaffel uniform"});
+				wardrobeAssignment.push({text: "and wears a red army uniform to look the part of the honor guard.", clothes: "a red army uniform"});
+				wardrobeAssignment.push({text: "and wears a nice suit to make it clear you mean business.", clothes: "nice business attire"});
+				wardrobeAssignment.push({text: "and wears a mounty outfit to make it clear you mean business.", clothes: "a mounty outfit"});
+				wardrobeAssignment.push({text: `and wears a scalemail bikini to make ${himself} look fierce.`, clothes: "a scalemail bikini"});
+				if(isItemAccessible("a kimono")) {
+					wardrobeAssignment.push({text: "and wears a nice kimono to add an air of elegance to your presence.", clothes: "a kimono"});
+				}
+			} else {
+				/*Chooses clothes according to assignment (exceptions allowed)*/
+				if(slave.assignment == "recruit girls") {
+					wardrobeAssignment.push({text: "and wears a flattering mini dress to appear sexy and carefree before those desperately seeking a better life.", clothes: "a mini dress"});
+					wardrobeAssignment.push({text: "and wears a cutoffs and a t-shirt to appear sexy and carefree before those desperately seeking a better life.", clothes: "cutoffs and a t-shirt"});
+					wardrobeAssignment.push({text: "and wears a nice suit to appear trustworthy before those desperately seeking a better life.", clothes: "nice business attire"});
+					wardrobeAssignment.push({text: "and wears a schoolgirl outfit to appear sexy and carefree before those desperately seeking a better life.", clothes: "a schoolgirl outfit"});
+					wardrobeAssignment.push({text: "and wears an opulent gown to showcase your wealth before those desperately seeking a better life.", clothes: "a ball gown"});
+					wardrobeAssignment.push({text: "and dresses as a succubus to attempt to lure any potential catches.", clothes: "a succubus outfit"});
+					if(isItemAccessible("harem gauze")) {
+						wardrobeAssignment.push({text: `and dons ${his} finest silks to showcase the luxuries waiting would-be slaves.`, clothes: "harem gauze"});
+					}
+					if(isItemAccessible("stretch pants and a crop-top")) {
+						wardrobeAssignment.push({text: "and wears comfortable stretch pants to and crop-top to appear carefree before those desperately seeking a better life.", clothes: "stretch pants and a crop-top"});
+					}
+					if(isItemAccessible("conservative clothing")) {
+						wardrobeAssignment.push({text: "and wears normal clothing to suggest to those desperately seeking a better life that they can find it here with you.", clothes: "conservative clothing"});
+					}
+				} else if(slave.assignment == "be the DJ") {
+					wardrobeAssignment.push({text: "and wears clubslut netting to look like the perfect easy club girl.", clothes: "clubslut netting"});
+					wardrobeAssignment.push({text: "and wears cutoffs and a t-shirt to look like the perfect easy club girl.", clothes: "cutoffs and a t-shirt"});
+					wardrobeAssignment.push({text: `and wears the slutty outfit ${he} can find to look like the perfect easy club girl.`, clothes: "a slutty outfit"});
+					wardrobeAssignment.push({text: `and wears nothing but slutty jewelry since ${he} loves the way it jingles to ${his} moves.`, clothes: "slutty jewelry"});
+					wardrobeAssignment.push({text: `and wears a skin tight bodysuit so nothing gets in the way of ${his} moves.`, clothes: "a comfortable bodysuit"});
+					if(slave.boobs > 1000) {
+						wardrobeAssignment.push({text: `but decides to go naked and let ${his} girls bounce free as ${he} dances.`, clothes: "no clothing"});
+					}
+					if(isItemAccessible("harem gauze")) {
+						wardrobeAssignment.push({text: `and wears the finest available silks to give ${his} moves a sensual grace.`, clothes: "harem gauze"});
+					}
+				} else if(slave.assignment == "be your Concubine") {
+					wardrobeAssignment.push({text: `and goes naked, since it's ${his} honored role to be the chief object of your desire.`, clothes: "no clothing"});
+					wardrobeAssignment.push({text: `and dresses as a slutty nurse as your genitals are always in need of ${his} special treatment.`, clothes: "a slutty nurse outfit"});
+					wardrobeAssignment.push({text: `and dresses as a schoolgirl in the hopes that you teach ${him} how to be a woman.`, clothes: "a schoolgirl outfit"});
+					wardrobeAssignment.push({text: `and dresses as a cheerleader so ${he} may cheer you on as you blow ${his} mind.`, clothes: "a cheerleader outfit"});
+					if(player.dick == 1) {
+						wardrobeAssignment.push({text: "and dresses as a slutty maid as you always come home with a stiff package that needs a thorough polishing.", clothes: "a slutty maid outfit"});
+					}
+					wardrobeAssignment.push({text: `and, since you personally see that ${he} never goes hungry, ${he} dresses like the sex demoness ${he} is.`, clothes: "a succubus outfit"});
+					if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 10000 && slave.pregSource == -1) {
+						wardrobeAssignment.push({text: `and chooses attractive lingerie to showcase the body you've given ${him} in the hopes that you ravish ${him}.`, clothes: "attractive lingerie for a pregnant woman"});
+					}
+					if(slave.toyHole == "dick" && canPenetrate(slave)) {
+						wardrobeAssignment.push({text: `and slips into a scalemail bikini so ${he} can act the role of your conqueror as ${he} bends you over.`, clothes: "a scalemail bikini"});
+					}
+				} else if(slave.assignment == "be a subordinate slave") {
+					wardrobeAssignment.push({text: `but gives up and goes naked after the other slaves constantly tear whatever ${he}'s wearing off ${him}.`, clothes: "no clothing"});
+					if(isItemAccessible("Western clothing")) {
+						wardrobeAssignment.push({text: `and chooses a pair of crotchless chaps so your other slaves don't have to waste time undressing ${him}.`, clothes: "Western clothing"});
+					}
+					if(slave.fetish == "submissive") {
+						wardrobeAssignment.push({text: `and chooses to slip on a pair of spats and a tank top in the hopes that ${he} gets to be a violated schoolgirl.`, clothes: "spats and a tank top"});
+						wardrobeAssignment.push({text: `and chooses to slip on a schoolgirl outfit in the hope that ${he} gets held down and raped.`, clothes: "a schoolgirl outfit"});
+						wardrobeAssignment.push({text: `and chooses to wear the sluttiest outfit available to make it clear what ${he} wants done to ${him}.`, clothes: "a slutty outfit"});
+					}
+				} else if(slave.assignment == "work a glory hole") {
+					wardrobeAssignment.push({text: `but doesn't bother wearing anything, since no one can see ${his} clothing when ${he}'s immured inside a glory hole.`, clothes: "no clothing"});
+				} else if(slave.assignment == "take classes" || slave.assignment == "learn in the schoolroom") {
+					wardrobeAssignment.push({text: "and wears a schoolgirl outfit, since it seems most appropriate.", clothes: "a schoolgirl outfit"});
+					wardrobeAssignment.push({text: `and wears a cheerleader outfit, since ${he} might as well be one of the popular girls.`, clothes: "a cheerleader outfit"});
+					if(isItemAccessible("conservative clothing")) {
+						wardrobeAssignment.push({text: `and wears normal clothing to not distract from ${his} lessons.`, clothes: "conservative clothing"});
+					}
+				} else if((slave.assignment == "whore") || (slave.assignment == "work in the brothel")) {
+					 if(slave.belly >= 5000 && isItemAccessible("attractive lingerie for a pregnant woman")) {
+						wardrobeAssignment.push({text: `and wears pretty lingerie to show off ${his} merchandise and accentuate ${his} pregnancy while still looking a little classy.`, clothes: "attractive lingerie for a pregnant woman"});
+					}
+					wardrobeAssignment.push({text: `and wears pretty lingerie to show off ${his} merchandise and still look a little classy.`, clothes: "attractive lingerie"});
+					if(isItemAccessible("harem gauze")) {
+						wardrobeAssignment.push({text: `and dresses ${himself} with harem gauze to add an exotic charm to ${his} display.`, clothes: "harem gauze"});
+					}
+					if(isItemAccessible("a kimono")) {
+						wardrobeAssignment.push({text: `and wraps ${himself} in a kimono to add some elegance to ${his} display.`, clothes: "a kimono"});
+					}
+					wardrobeAssignment.push({text: `and adorns ${himself} in fine dress to show off how much of a high class whore ${he} is.`, clothes: "a slave gown"});
+					wardrobeAssignment.push({text: `and dresses ${himself} in a slutty suit to show ${he}'s in it for the ¤.`, clothes: "slutty business attire"});
+					wardrobeAssignment.push({text: `and wears a flattering mini dress to really strut ${his} stuff.`, clothes: "a mini dress"});
+				} else if(slave.assignment == "serve the public" || slave.assignment == "serve in the club") {
+					wardrobeAssignment.push({text: "and wears string lingerie to look fun and fuckable.", clothes: "a string bikini"});
+					wardrobeAssignment.push({text: "and throws together the sluttiest outfit since if you're going to slut you might as well go all out.", clothes: "a slutty outfit"});
+					wardrobeAssignment.push({text: `and tosses on a slutty suit that screams ${he} needs a good fuck after a long day.`, clothes: "slutty business attire"});
+					wardrobeAssignment.push({text: `and dresses up as a slutty nurse; ${he} has just the technique to cure penile swelling.`, clothes: "a slutty nurse outfit"});
+					wardrobeAssignment.push({text: "and wears a cheerleader outfit to look energetic and fuckable.", clothes: "a cheerleader outfit"});
 					if(isItemAccessible("a bunny outfit")) {
-						wardrobeAssignment.push({text: `and slips into a bunny outfit that ${he} knows will have men lining up.`, clothes: "a bunny outfit"});
+						wardrobeAssignment.push({text: `and slips into a teddy to add some class to ${his} post.`, clothes: "a bunny outfit"});
+					}
+					wardrobeAssignment.push({text: `and dresses up as a succubus to clearly advertise ${his} promiscuity.`, clothes: "a succubus outfit"});
+					if(slave.bellyPreg >= 10000) {
+						wardrobeAssignment.push({text: `and struggles into a schoolgirl outfit. ${His} gravid belly just screams that ${he} is a slutty little student who cares more for dick than lessons.`, clothes: "a succubus outfit"});
+					}
+				} else if(slave.assignment == "be a servant" || slave.assignment == "work as a servant") {
+					if(slave.energy > 95 || slave.need > 100) {
+						wardrobeAssignment.push({text: `and wears a skimpy maid outfit hoping that someone sneaks up behind ${him} as ${he} works and fulfills ${his} desires.`, clothes: "a slutty maid outfit"});
+					} else if(slave.energy > 80) {
+						wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
+						wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work around the penthouse.`, clothes: "a nice maid outfit"});
+						wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
+					} else {
+						wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work around the penthouse.`, clothes: "a nice maid outfit"});
+						wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
 					}
-					if(slave.boobs > 800) {
-						wardrobeTastes.push({text: `and dresses up as a busty succubus that pulls eyes to ${his} chest and leaves pants feeling tight.`, clothes: "a succubus outfit"});
+				}
+				
+				/* Chooses clothes according to FS*/
+				if(V.arcologies[0].FSEgyptianRevivalist > 0) {
+					wardrobeFS.push({text: "and complements it with golden bangles, since no clothing is necessary for a sex slave in your warm and sunny arcology.", clothes: "slutty jewelry"});
+				} else if(V.arcologies[0].FSRomanRevivalist > 0) {
+					wardrobeFS.push({text: "and wears a toga to take part in your Roman revivalism.", clothes: "a toga"});
+				} else if(V.arcologies[0].FSEdoRevivalist > 0) {
+					wardrobeFS.push({text: "and wears a kimono, overjoyed that such lovely clothing is now appropriate.", clothes: "a kimono"});
+				} else if(V.arcologies[0].FSArabianRevivalist > 0) {
+					wardrobeFS.push({text: "and wears a harem outfit to look like a slave girl fit for a Sultan.", clothes: "harem gauze"});
+				} else if(V.arcologies[0].FSChineseRevivalist > 0) {
+					wardrobeFS.push({text: "and wears a brief qipao to show off and look Chinese at the same time.", clothes: "a slutty qipao"});
+				} else if(V.arcologies[0].FSAztecRevivalist > 0) {
+					wardrobeFS.push({text: `and drapes a huipil over ${himself} to fit in with your Aztec revivalism.`, clothes: "a huipil"});
+				}
+				if(V.arcologies[0].FSGenderFundamentalist > 0) {
+					wardrobeFS.push({text: "and wears a cheerleader outfit to look like a hot slut.", clothes: "a cheerleader outfit"});
+					wardrobeFS.push({text: "and wears a bunny outfit to look like a slut from the glory days.", clothes: "a bunny outfit"});
+					if(slave.bellyPreg >= 5000) {
+						wardrobeFS.push({text: `but decides to wear nothing at all; ${he}'s already pregnant, so ${he} just needs to be barefoot and naked to complete ${his} look.`, clothes: "no clothing"});
+					}
+				} else if(V.arcologies[0].FSGenderRadicalist > 0) {
+					wardrobeFS.push({text: `and eagerly slips into a skimpy maid outfit so ${he} can take advantage of its short skirt and ${his} lack of underwear`, clothes: "a slutty maid outfit"});
+					wardrobeFS.push({text: `and wears a cheerleader outfit that clearly shows off ${his} ass.`, clothes: "a cheerleader outfit"});
+					wardrobeFS.push({text: "and settles for some sexy succubutt.", clothes: "a succubus outfit"});
+				}
+				if(V.arcologies[0].FSPaternalist > 0) {
+					wardrobeFS.push({text: "and wears conservative clothing, as permitted by your paternalism.", clothes: "conservative clothing"});
+					if(isItemAccessible("stretch pants and a crop-top")) {
+						wardrobeAssignment.push({text: `and wears the most comfortable stretch pants ${he} can find.`, clothes: "stretch pants and a crop-top"});
+					}
+				} else if(V.arcologies[0].FSDegradationist > 0) {
+					wardrobeFS.push({text: `and wears chains, to degrade ${himself} as required by your societal goals.`, clothes: "chains"});
+				}
+				if(V.arcologies[0].FSMaturityPreferentialist > 0) {
+					if(slave.visualAge >= 30) {
+						wardrobeFS.push({text: "and wears a slutty suit to look like the ideal horny older woman.", clothes: "slutty business attire"});
+						wardrobeFS.push({text: `and wears only an apron to make ${himself} seem more matronly.`, clothes: "an apron"});
+					} else {
+						wardrobeFS.push({text: "and wears a formal suit to look more mature.", clothes: "nice business attire"});
+					}
+				} else if(V.arcologies[0].FSYouthPreferentialist > 0) {
+					wardrobeFS.push({text: "and wears a schoolgirl outfit to look younger.", clothes: "a schoolgirl outfit"});
+					wardrobeFS.push({text: "and wears a cheerleader outfit to look younger and more energetic.", clothes: "a cheerleader outfit"});
+					wardrobeFS.push({text: "and wears spats and a tank top to look younger and more energetic.", clothes: "spats and a tank top"});
+				}
+				if(V.arcologies[0].FSPhysicalIdealist > 0) {
+					wardrobeFS.push({text: `and coats ${himself} in body oil to show off how ${he}'s part of your physical idealism.`, clothes: "body oil"});
+					wardrobeFS.push({text: `and slips into some spats for ${his} next workout.`, clothes: "spats and a tank top"});
+				} else if(V.arcologies[0].FSHedonisticDecadence > 0) {
+					wardrobeFS.push({text: "and throws on a very casual getup.", clothes: "stretch pants and a crop-top"});
+					wardrobeFS.push({text: "but decides against putting forth the effort and goes nude.", clothes: "no clothing"});
+				}
+				if(V.arcologies[0].FSPastoralist > 0) {
+					wardrobeFS.push({text: `and wears Western clothing, since ${he} thinks it fits with pastoralism.`, clothes: "Western clothing"});
+					wardrobeFS.push({text: `and wears a swimsuit that leaves ${his} breasts uncovered.`, clothes: "a monokini"});
+					if(slave.lactation > 0) {
+						wardrobeFS.push({text: "and dresses up as a slutty wet nurse.", clothes: "a slutty nurse outfit"});
+					}
+					wardrobeFS.push({text: `but decides to let ${his} breasts be free. Clothes will just get in the way.`, clothes: "no clothing"});
+				}
+				if(V.arcologies[0].FSBodyPurist > 0) {
+					wardrobeFS.push({text: `and wears a leotard to show off the purity of ${his} body.`, clothes: "a leotard"});
+					wardrobeFS.push({text: `but decides ${his} body is too nice to hide with clothing.`, clothes: "no clothing"});
+				} else if(V.arcologies[0].FSTransormationFetishest > 0) {
+					if(isItemAccessible("body oil")) {
+						wardrobeAssignment.push({text: `and coats ${his} assets in body oil to give them some extra shine.`, clothes: "body oil"});
+					}
+					wardrobeFS.push({text: `and decides squeezing into a latex suit will only complement ${his} unnatural appearance.`, clothes: "restrictive latex"});
+				}
+				if(V.arcologies[0].FSAssetExpansioninst > 0) {
+					wardrobeFS.push({text: "and decides to dress up like a young man's wet dream.", clothes: "a succubus outfit"});
+					wardrobeFS.push({text: `and decides to wear a skimpy bikini to make ${his} assets look even larger.`, clothes: "a string bikini"});
+					wardrobeFS.push({text: `and decides to throw together a slutty outfit that highlight ${his} assets.`, clothes: "a slutty outfit"});
+					wardrobeFS.push ({text: "and decides to wear a monokini that clings to the assets it actually does conceal.", clothes: "a monokini"});
+				} else if(V.arcologies[0].FSSlimnessEnthusiast > 0) {
+					if(slave.boobs < 300) {
+						wardrobeFS.push({text: `and wears a string bikini to show off just how flat ${he} is.`, clothes: "a string bikini"});
+					}
+					if(slave.boobs < 600 && slave.butt < 3) {
+						wardrobeFS.push({text: `and wears a leotard to show off ${his} lithe body.`, clothes: "a leotard"});
+						wardrobeFS.push({text: `and wears a form fitting bodysuit to show off ${his} lithe figure.`, clothes: "a comfortable bodysuit"});
+						wardrobeFS.push({text: `and wears spats to hug ${his} tight butt.`, clothes: "spats and a tank top"});
+						wardrobeFS.push({text: `and wears an apron that covers ${his} front while leaving ${his} rear free.`, clothes: "an apron"});
+					} else {
+						wardrobeFS.push({text: `and squeezes into a form fitting bodysuit in the hopes that it squishes down ${his} assets.`, clothes: "restrictive latex"});
 					}
-				} else {
-					wardrobeTastes.push({text: "and selects a schoolgirl outfit that shows off some T&A.", clothes: "a schoolgirl outfit"});
-					wardrobeTastes.push({text: `and wears pretty lingerie that shows off ${his} body.`, clothes: "attractive lingerie"});
-					wardrobeTastes.push({text: "and selects a slutty outfit that's sure to draw attention.", clothes: "a slutty outfit"});
-					if(slave.butt > 3){
-						wardrobeTastes.push({text: `and slips on some cutoffs that shows off ${his} ass.`, clothes: "cutoffs and a t-shirt"});
+				}
+				
+				/*Chooses clothes according to fetishes, quirks, etc.*/
+				if(slave.attrXY > 70) {
+					if(slave.attrKnown == 1) {
+						wardrobeTastes.push({text: "and wears a schoolgirl outfit to show off a some T&A to attract boys.", clothes: "a schoolgirl outfit"});
+						wardrobeTastes.push({text: "and wears nothing but pretty lingerie to attract boys.", clothes: "attractive lingerie"});
+						wardrobeTastes.push({text: "and selects a slutty outfit that's sure to have men drooling.", clothes: "a slutty outfit"});
+						if(slave.butt > 3){
+							wardrobeTastes.push({text: `and slips on some cutoffs that are sure to have men checking out ${his} ass.`, clothes: "cutoffs and a t-shirt"});
+						}
+						if(isItemAccessible("a bunny outfit")) {
+							wardrobeAssignment.push({text: `and slips into a bunny outfit that ${he} knows will have men lining up.`, clothes: "a bunny outfit"});
+						}
+						if(slave.boobs > 800) {
+							wardrobeTastes.push({text: `and dresses up as a busty succubus that pulls eyes to ${his} chest and leaves pants feeling tight.`, clothes: "a succubus outfit"});
+						}
+					} else {
+						wardrobeTastes.push({text: "and selects a schoolgirl outfit that shows off some T&A.", clothes: "a schoolgirl outfit"});
+						wardrobeTastes.push({text: `and wears pretty lingerie that shows off ${his} body.`, clothes: "attractive lingerie"});
+						wardrobeTastes.push({text: "and selects a slutty outfit that's sure to draw attention.", clothes: "a slutty outfit"});
+						if(slave.butt > 3){
+							wardrobeTastes.push({text: `and slips on some cutoffs that shows off ${his} ass.`, clothes: "cutoffs and a t-shirt"});
+						}
+						if(isItemAccessible("a bunny outfit")) {
+							wardrobeAssignment.push({text: `and slips into a bunny outfit that hugs ${his} curves.`, clothes: "a bunny outfit"});
+						}
+						if(slave.boobs > 800) {
+							wardrobeTastes.push({text: "and dresses up as a busty succubus that's sure to draw eyes.", clothes: "a succubus outfit"});
+						}
 					}
-					if(isItemAccessible("a bunny outfit")) {
-						wardrobeAssignment.push({text: `and slips into a bunny outfit that hugs ${his} curves.`, clothes: "a bunny outfit"});
+				}
+				if(slave.attrXX > 70) {
+					if(slave.attrKnown == 1) {
+						wardrobeTastes.push({text: "and wears a fashionable gown, since girls appreciate nice clothes.", clothes: "a slave gown"});
+						wardrobeTastes.push({text: "and wears nothing but pretty lingerie to give the girls a show.", clothes: "attractive lingerie"});
+						wardrobeTastes.push({text: "and wears a nice suit, since girls appreciate nice clothes.", clothes: "nice business attire"});
+					} else {
+						wardrobeTastes.push({text: "and wears a fashionable gown.", clothes: "a slave gown"});
+						wardrobeTastes.push({text: `and wears pretty lingerie that shows off ${his} body.`, clothes: "attractive lingerie"});
+						wardrobeTastes.push({text: "and wears a nice suit, the reasons not entirely clear to you.", clothes: "nice business attire"});
+					}
+				}
+				
+				/* need */
+				if(slave.need > 90) {
+					wardrobeTastes.push({text: `but goes naked. ${He} needs sex now and clothing will only get in the way.`, clothes: "no clothing"});
+					wardrobeTastes.push({text: `and throws on a slutty suit. ${He} hopes that it gets the point across that ${he} needs sex now.`, clothes: "slutty business attire"});
+					wardrobeTastes.push({text: `and dons a slutty nurse outfit. ${He}'s been infected and the only cure is a strong dicking.`, clothes: "a slutty nurse outfit"});
+					wardrobeTastes.push({text: `and dresses up as a slutty maid. Maybe if ${he} does ${his} job poorly enough, someone will bend ${him} over and fuck some sense into ${him}.`, clothes: "a slutty maid outfit"});
+					wardrobeTastes.push({text: `and dresses up as a succubus in the hopes it screams that ${he} needs sex now.`, clothes: "a succubus outfit"});
+				}
+				
+				/* quirks n flaws */
+				if(slave.behavioralQuirk == "sinful") {
+					wardrobeTastes.push({text: "and dresses up like a succubus because it makes $object feel naughty.", clothes: "a succubus outfit"});
+				} else if(slave.behavioralQuirk == "fitness") {
+					wardrobeTastes.push({text: `and wears spats and a tank top to give ${himself} a sporty look.`, clothes: "spats and a tank top"});
+				}
+
+				/* age stuff */
+				if(slave.actualAge < 10) {
+					wardrobeTastes.push({text: `and puts on a pretty dress so ${he} can be a princess.`, clothes: "a ball gown"});
+					wardrobeTastes.push({text: `and dresses up like a cheerleader since ${he} thinks it looks cute.`, clothes: "a cheerleader outfit"});
+					if(isItemAccessible("a kimono")) {
+						wardrobeAssignment.push({text: `and wraps ${himself} in a kimono, since it feels so good on ${his} skin.`, clothes: "a kimono"});
+					}
+				}
+				
+				/* fetishes */
+				if(slave.fetishKnown == 1) {
+					if(slave.fetish == "submissive") {
+						wardrobeTastes.push({text: `and wears restrictive latex to encourage others to dominate ${him}.`, clothes: "restrictive latex"});
+						wardrobeTastes.push({text: `and wears shibari ropes to encourage others to dominate ${him}.`, clothes: "shibari ropes"});
+					} else if(slave.fetish == "dom") {
+						wardrobeTastes.push({text: `and wears a handsome suit, since ${he} likes other slaves to look up to ${him}.`, clothes: "nice business attire"});
+						wardrobeTastes.push({text: "and wears a full body latex catsuit to look the part of the whip cracking dom.", clothes: "a latex catsuit"});
+					} else if(slave.fetish == "masochist") {
+						wardrobeTastes.push({text: `and wears painfully restrictive bondage gear, since ${he} likes the torment.`, clothes: "uncomfortable straps"});
+						if(isItemAccessible("chains")) {
+							wardrobeAssignment.push({text: `and wears painfully tight chains, since ${he} likes the torment.`, clothes: "chains"});
+						}
+					} else if(slave.fetish == "sadist") {
+						wardrobeTastes.push({text: `and wears an elegant gown, since ${he} thinks it makes ${him} look the part of the femme fatale.`, clothes: "a slave gown"});
+						wardrobeTastes.push({text: `and wears a scalemail bikini, since ${he} thinks it makes ${him} look fierce.`, clothes: "a scalemail bikini"});
+					} else if(slave.fetish == "cumslut") {
+						wardrobeTastes.push({text: `and wears cutoffs and a t-shirt, because the fun yet relatively conservative outfit seems to encourage others to ask ${him} for blowjobs.`, clothes: "cutoffs and a t-shirt"});
+					} else if(slave.fetish == "humiliation") {
+						wardrobeTastes.push({text: `and wears leather straps with rings over ${his} private parts because ${he} enjoys the embarrassment such a humiliating outfit causes ${him}.`, clothes: "uncomfortable straps"});
+					} else if(slave.fetish == "buttslut") {
+						wardrobeTastes.push({text: `and wears nothing other than slutty bangles, because ${he} likes to catch the eye without putting anything between cocks and ${his} rear end.`, clothes: "slutty jewelry"});
+					} else if(slave.fetish == "pregnancy") {
+						wardrobeTastes.push({text: `and wears a short maid dress, because ${he} wants to look motherly and fuckable at the same time.`, clothes: "a slutty maid outfit"});
+						if(isItemAccessible("a maternity dress") && canGetPregnant(slave)) {
+							wardrobeAssignment.push({text: "and wears a maternity dress in the hope someone fills out its middle.", clothes: "a maternity dress"});
+						}
+					} else if(slave.fetish == "boobs") {
+						wardrobeTastes.push({text: `and wears a cheerleader outfit, since ${he} loves the way it hugs ${his} tits as ${he} moves.`, clothes: "a cheerleader outfit"});
+						wardrobeTastes.push({text: `and wears a monokini, since ${he} loves how it leaves ${his} breasts totally bare.`, clothes: "a monokini"});
 					}
-					if(slave.boobs > 800) {
-						wardrobeTastes.push({text: "and dresses up as a busty succubus that's sure to draw eyes.", clothes: "a succubus outfit"});
+				} else {
+					if(slave.fetish == "submissive") {
+						wardrobeTastes.push({text: "and strangely opts for restrictive latex.", clothes: "restrictive latex"});
+						wardrobeTastes.push({text: "and strangely opts for shibari ropes.", clothes: "shibari ropes"});
+					} else if(slave.fetish == "dom") {
+						wardrobeTastes.push({text: `and wears a handsome suit; ${he} seems to think highly of ${himself} in it.`, clothes: "nice business attire"});
+						wardrobeTastes.push({text: `and wears a full body latex catsuit; there is a strange look on ${his} face as ${he} wears it.`, clothes: "a latex catsuit"});
+					} else if(slave.fetish == "masochist") {
+						wardrobeTastes.push({text: "and strangely opts for painfully restrictive bondage gear.", clothes: "uncomfortable straps"});
+						if(isItemAccessible("chains")) {
+							wardrobeAssignment.push({text: "and strangely opts for painfully tight chains.", clothes: "chains"});
+						}
+					} else if(slave.fetish == "sadist") {
+						wardrobeTastes.push({text: "and wears an elegant gown for some reason.", clothes: "a slave gown"});
+						wardrobeTastes.push({text: "and wears a scalemail bikini; an odd choice.", clothes: "a scalemail bikini"});
+					} else if(slave.fetish == "cumslut") {
+						wardrobeTastes.push({text: `and wears cutoffs and a t-shirt; ${he} can't stop licking ${his} lips.`, clothes: "cutoffs and a t-shirt"});
+					} else if(slave.fetish == "humiliation") {
+						wardrobeTastes.push({text: `and strangely opts for leather straps with rings over ${his} private parts.`, clothes: "uncomfortable straps"});
+					} else if(slave.fetish == "buttslut") {
+						wardrobeTastes.push({text: `and wears nothing other than slutty bangles, an odd choice; ${his} ass is completely exposed.`, clothes: "slutty jewelry"});
+					} else if(slave.fetish == "pregnancy") {
+						wardrobeTastes.push({text: `and wears a short maid dress; you frequently notice ${him} observing ${his} stomach.`, clothes: "a slutty maid outfit"});
+						if(isItemAccessible("a maternity dress") && canGetPregnant(slave)) {
+							wardrobeAssignment.push({text: `and wears a maternity dress even though ${he} isn't pregnant.`, clothes: "a maternity dress"});
+						}
+					} else if(slave.fetish == "boobs") {
+						wardrobeTastes.push({text: `and wears a cheerleader outfit; ${he} seems to enjoy jiggling ${his} breasts in it.`, clothes: "a cheerleader outfit"});
+						wardrobeTastes.push({text: `and strangely decides to wear a monokini, which leaves ${his} breasts totally bare.`, clothes: "a cheerleader outfit"});
 					}
 				}
-			}
-			if(slave.attrXX > 70) {
-				if(slave.attrKnown == 1) {
-					wardrobeTastes.push({text: "and wears a fashionable gown, since girls appreciate nice clothes.", clothes: "a slave gown"});
-					wardrobeTastes.push({text: "and wears nothing but pretty lingerie to give the girls a show.", clothes: "attractive lingerie"});
-					wardrobeTastes.push({text: "and wears a nice suit, since girls appreciate nice clothes.", clothes: "nice business attire"});
+
+				/* energy */
+				if(slave.energy > 95) {
+					wardrobeTastes.push({text: `but goes nude, since as a nympho ${he} gets plenty of attention anyway, and considers clothes an unnecessary hindrance.`, clothes: "no clothing"});
+				}
+
+				/* pregnancy */
+				if(slave.belly >= 5000) {
+					wardrobeTastes.push({text: `and wears pretty lingerie to show off ${his} merchandise while giving ${his} protruding belly plenty of room to hang free.`, clothes: "attractive lingerie"});
+					if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.energy > 70) {
+						wardrobeTastes.push({text: `and wears pretty lingerie to show off ${his} merchandise and accentuate ${his} pregnancy while giving it plenty of room to hang free.`, clothes: "attractive lingerie for a pregnant woman"});
+					} else if(isItemAccessible("a maternity dress")) {
+						wardrobeTastes.push({text: `and wears a conservative dress with plenty of give for ${his} belly to stretch it.`, clothes: "a maternity dress"});
+					}
+					wardrobeTastes.push({text: `and wears string lingerie to look fun and fuckable while giving ${his} protruding belly plenty of room to hang free.`, clothes: "a string bikini"});
 				} else {
-					wardrobeTastes.push({text: "and wears a fashionable gown.", clothes: "a slave gown"});
-					wardrobeTastes.push({text: `and wears pretty lingerie that shows off ${his} body.`, clothes: "attractive lingerie"});
-					wardrobeTastes.push({text: "and wears a nice suit, the reasons not entirely clear to you.", clothes: "nice business attire"});
+					wardrobeTastes.push({text: `and wears string lingerie to show off ${his} body.`, clothes: "a string bikini"});
 				}
 			}
-			
-			/* need */
-			if(slave.need > 90) {
-				wardrobeTastes.push({text: `but goes naked. ${He} needs sex now and clothing will only get in the way.`, clothes: "no clothing"});
-				wardrobeTastes.push({text: `and throws on a slutty suit. ${He} hopes that it gets the point across that ${he} needs sex now.`, clothes: "slutty business attire"});
-				wardrobeTastes.push({text: `and dons a slutty nurse outfit. ${He}'s been infected and the only cure is a strong dicking.`, clothes: "a slutty nurse outfit"});
-				wardrobeTastes.push({text: `and dresses up as a slutty maid. Maybe if ${he} does ${his} job poorly enough, someone will bend ${him} over and fuck some sense into ${him}.`, clothes: "a slutty maid outfit"});
-				wardrobeTastes.push({text: `and dresses up as a succubus in the hopes it screams that ${he} needs sex now.`, clothes: "a succubus outfit"});
-			}
-			
-			/* quirks n flaws */
-			if(slave.behavioralQuirk == "sinful") {
-				wardrobeTastes.push({text: "and dresses up like a succubus because it makes $object feel naughty.", clothes: "a succubus outfit"});
-			} else if(slave.behavioralQuirk == "fitness") {
-				wardrobeTastes.push({text: `and wears spats and a tank top to give ${himself} a sporty look.`, clothes: "spats and a tank top"});
+			/*Separated in three categories in case you want to, say, increase the probability of choosing _wardrobeAssignment to look more professional*/
+			if(wardrobeAssignment.length > 0) {
+				for (let i = 0; i < wardrobeAssignment.length; i++) {
+					clothing.push(wardrobeAssignment[i]);
+				}
 			}
-
-			/* age stuff */
-			if(slave.actualAge < 10) {
-				wardrobeTastes.push({text: `and puts on a pretty dress so ${he} can be a princess.`, clothes: "a ball gown"});
-				wardrobeTastes.push({text: `and dresses up like a cheerleader since ${he} thinks it looks cute.`, clothes: "a cheerleader outfit"});
-				if(isItemAccessible("a kimono")) {
-					wardrobeAssignment.push({text: `and wraps ${himself} in a kimono, since it feels so good on ${his} skin.`, clothes: "a kimono"});
+			if(wardrobeFS.length > 0) {
+				for (let i = 0; i < wardrobeFS.length; i++) {
+					clothing.push(wardrobeFS[i]);
 				}
 			}
-			
-			/* fetishes */
-			if(slave.fetishKnown == 1) {
-				if(slave.fetish == "submissive") {
-					wardrobeTastes.push({text: `and wears restrictive latex to encourage others to dominate ${him}.`, clothes: "restrictive latex"});
-					wardrobeTastes.push({text: `and wears shibari ropes to encourage others to dominate ${him}.`, clothes: "shibari ropes"});
-				} else if(slave.fetish == "dom") {
-					wardrobeTastes.push({text: `and wears a handsome suit, since ${he} likes other slaves to look up to ${him}.`, clothes: "nice business attire"});
-					wardrobeTastes.push({text: "and wears a full body latex catsuit to look the part of the whip cracking dom.", clothes: "a latex catsuit"});
-				} else if(slave.fetish == "masochist") {
-					wardrobeTastes.push({text: `and wears painfully restrictive bondage gear, since ${he} likes the torment.`, clothes: "uncomfortable straps"});
-					if(isItemAccessible("chains")) {
-						wardrobeAssignment.push({text: `and wears painfully tight chains, since ${he} likes the torment.`, clothes: "chains"});
-					}
-				} else if(slave.fetish == "sadist") {
-					wardrobeTastes.push({text: `and wears an elegant gown, since ${he} thinks it makes ${him} look the part of the femme fatale.`, clothes: "a slave gown"});
-					wardrobeTastes.push({text: `and wears a scalemail bikini, since ${he} thinks it makes ${him} look fierce.`, clothes: "a scalemail bikini"});
-				} else if(slave.fetish == "cumslut") {
-					wardrobeTastes.push({text: `and wears cutoffs and a t-shirt, because the fun yet relatively conservative outfit seems to encourage others to ask ${him} for blowjobs.`, clothes: "cutoffs and a t-shirt"});
-				} else if(slave.fetish == "humiliation") {
-					wardrobeTastes.push({text: `and wears leather straps with rings over ${his} private parts because ${he} enjoys the embarrassment such a humiliating outfit causes ${him}.`, clothes: "uncomfortable straps"});
-				} else if(slave.fetish == "buttslut") {
-					wardrobeTastes.push({text: `and wears nothing other than slutty bangles, because ${he} likes to catch the eye without putting anything between cocks and ${his} rear end.`, clothes: "slutty jewelry"});
-				} else if(slave.fetish == "pregnancy") {
-					wardrobeTastes.push({text: `and wears a short maid dress, because ${he} wants to look motherly and fuckable at the same time.`, clothes: "a slutty maid outfit"});
-					if(isItemAccessible("a maternity dress") && canGetPregnant(slave)) {
-						wardrobeAssignment.push({text: "and wears a maternity dress in the hope someone fills out its middle.", clothes: "a maternity dress"});
-					}
-				} else if(slave.fetish == "boobs") {
-					wardrobeTastes.push({text: `and wears a cheerleader outfit, since ${he} loves the way it hugs ${his} tits as ${he} moves.`, clothes: "a cheerleader outfit"});
-					wardrobeTastes.push({text: `and wears a monokini, since ${he} loves how it leaves ${his} breasts totally bare.`, clothes: "a monokini"});
+			if(wardrobeTastes.length > 0) {
+				for (let i = 0; i < wardrobeTastes.length; i++) {
+					clothing.push(wardrobeTastes[i]);
 				}
-			} else {
-				if(slave.fetish == "submissive") {
-					wardrobeTastes.push({text: "and strangely opts for restrictive latex.", clothes: "restrictive latex"});
-					wardrobeTastes.push({text: "and strangely opts for shibari ropes.", clothes: "shibari ropes"});
-				} else if(slave.fetish == "dom") {
-					wardrobeTastes.push({text: `and wears a handsome suit; ${he} seems to think highly of ${himself} in it.`, clothes: "nice business attire"});
-					wardrobeTastes.push({text: `and wears a full body latex catsuit; there is a strange look on ${his} face as ${he} wears it.`, clothes: "a latex catsuit"});
-				} else if(slave.fetish == "masochist") {
-					wardrobeTastes.push({text: "and strangely opts for painfully restrictive bondage gear.", clothes: "uncomfortable straps"});
-					if(isItemAccessible("chains")) {
-						wardrobeAssignment.push({text: "and strangely opts for painfully tight chains.", clothes: "chains"});
-					}
-				} else if(slave.fetish == "sadist") {
-					wardrobeTastes.push({text: "and wears an elegant gown for some reason.", clothes: "a slave gown"});
-					wardrobeTastes.push({text: "and wears a scalemail bikini; an odd choice.", clothes: "a scalemail bikini"});
-				} else if(slave.fetish == "cumslut") {
-					wardrobeTastes.push({text: `and wears cutoffs and a t-shirt; ${he} can't stop licking ${his} lips.`, clothes: "cutoffs and a t-shirt"});
-				} else if(slave.fetish == "humiliation") {
-					wardrobeTastes.push({text: `and strangely opts for leather straps with rings over ${his} private parts.`, clothes: "uncomfortable straps"});
-				} else if(slave.fetish == "buttslut") {
-					wardrobeTastes.push({text: `and wears nothing other than slutty bangles, an odd choice; ${his} ass is completely exposed.`, clothes: "slutty jewelry"});
-				} else if(slave.fetish == "pregnancy") {
-					wardrobeTastes.push({text: `and wears a short maid dress; you frequently notice ${him} observing ${his} stomach.`, clothes: "a slutty maid outfit"});
-					if(isItemAccessible("a maternity dress") && canGetPregnant(slave)) {
-						wardrobeAssignment.push({text: `and wears a maternity dress even though ${he} isn't pregnant.`, clothes: "a maternity dress"});
-					}
-				} else if(slave.fetish == "boobs") {
-					wardrobeTastes.push({text: `and wears a cheerleader outfit; ${he} seems to enjoy jiggling ${his} breasts in it.`, clothes: "a cheerleader outfit"});
-					wardrobeTastes.push({text: `and strangely decides to wear a monokini, which leaves ${his} breasts totally bare.`, clothes: "a cheerleader outfit"});
-				}
-			}
-
-			/* energy */
-			if(slave.energy > 95) {
-				wardrobeTastes.push({text: `but goes nude, since as a nympho ${he} gets plenty of attention anyway, and considers clothes an unnecessary hindrance.`, clothes: "no clothing"});
-			}
-
-			/* pregnancy */
-			if(slave.belly >= 5000) {
-				wardrobeTastes.push({text: `and wears pretty lingerie to show off ${his} merchandise while giving ${his} protruding belly plenty of room to hang free.`, clothes: "attractive lingerie"});
-				if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.energy > 70) {
-					wardrobeTastes.push({text: `and wears pretty lingerie to show off ${his} merchandise and accentuate ${his} pregnancy while giving it plenty of room to hang free.`, clothes: "attractive lingerie for a pregnant woman"});
-				} else if(isItemAccessible("a maternity dress")) {
-					wardrobeTastes.push({text: `and wears a conservative dress with plenty of give for ${his} belly to stretch it.`, clothes: "a maternity dress"});
-				}
-				wardrobeTastes.push({text: `and wears string lingerie to look fun and fuckable while giving ${his} protruding belly plenty of room to hang free.`, clothes: "a string bikini"});
-			} else {
-				wardrobeTastes.push({text: `and wears string lingerie to show off ${his} body.`, clothes: "a string bikini"});
 			}
+			selection = jsEither(clothing);
 		}
-		/*Separated in three categories in case you want to, say, increase the probability of choosing _wardrobeAssignment to look more professional*/
-		if(wardrobeAssignment.length > 0) {
-			for (let i = 0; i < wardrobeAssignment.length; i++) {
-				clothing.push(wardrobeAssignment[i]);
+
+		return selection;
+	};
+
+	function todaysShoes(slave) {
+		let shoes = [];
+
+		if(slave.fetish == 'mindbroken') {
+			if(slave.amp != 1 && slave.heels == 1) {
+				shoes.push({text: `${He} finds ${he} can inexplicably walk if ${he} wears heels; a daily lesson for ${him}, as ${he} forgets shortly after leaving.`, shoes: jsEither(["heels", "pumps", "extreme heels", "boots"])});
 			}
-		}
-		if(wardrobeFS.length > 0) {
-			for (let i = 0; i < wardrobeFS.length; i++) {
-				clothing.push(wardrobeFS[i]);
+			shoes.push({text: `${He} vaguely remembers putting things on ${his} feet, so ${he} does.`, shoes: jsEither(["heels", "pumps", "extreme heels", "boots", "flats"])});
+			shoes.push({text: `${He} entered without shoes, and will leave the same.`, shoes: "none"});
+		} else if(slave.devotion <= 20) {
+			if(slave.heels == 0) {
+				shoes.push({text: "and wears comfortable flats,", shoes: "flats"});
+			} else {
+				shoes.push({text: `and angrily wears the heels ${he} needs to walk,`, shoes: "heels"});
 			}
-		}
-		if(wardrobeTastes.length > 0) {
-			for (let i = 0; i < wardrobeTastes.length; i++) {
-				clothing.push(wardrobeTastes[i]);
+		} else {
+			if(slave.fetishKnown == 1 && slave.fetish == "dom") {
+				shoes.push({text: `${He} wears boots to look like a proper dominant.`, shoes: "boots"});
+			} else if(slave.fetishKnown == 1 && slave.fetish == "sadist") {
+				shoes.push({text: `${He} wears boots, since ${he} thinks they make ${him} look dangerous.`, shoes: "boots"});
+			} else if(slave.fetishKnown == 1 && slave.fetish == "masochist") {
+				shoes.push({text: `${He} wears painfully tall heels, since ${he} enjoys the twinge of pain with each step.`, shoes: "extreme heels"});
+			} else if(slave.heels == 1) {
+				shoes.push({text: `${He} wears the heels ${he} needs to walk.`, shoes: "heels"});
+			} else if(slave.fetishKnown == 1 && slave.fetish == "pregnancy" && slave.bellyPreg >= 500) {
+				shoes.push({text: `${He} goes barefoot to complement ${his} pregnancy.`, shoes: "none"});
+			} else if(slave.fetishKnown == 1 && slave.fetish == "none") {
+				shoes.push({text: `${He} wears comfortable flats, since ${he} doesn't have a fetish to show off.`, shoes: "flats"});
+			} else if(slave.actualAge < 13){
+				shoes.push({text: `${He} puts on boots so ${he} can stomp around.`, shoes: "boots"});
+				shoes.push({text: `${He} playfully puts on heels to be like all the other girls.`, shoes: "heels"});
+				shoes.push({text: `${He} wears flats as they are comfortable and easy to take on and off.`, shoes: "flats"});
+				shoes.push({text: `Going barefoot is fun, so no shoes for ${him}.`, shoes: "none"});
+			} else {
+				shoes.push({text: `${He} wears heels to strut ${his} stuff.`, shoes: "heels"});
+				shoes.push({text: `${He} wears comfortable flats to take it easy.`, shoes: "flats"});
+				shoes.push({text: `${He} goes barefoot to show off ${his} toes.`, shoes: "none"});
 			}
 		}
-		selection = jsEither(clothing);
-	}
-
-	return selection;
-};
+		return jsEither(shoes);
+	};
 
-window.todaysShoes = function(slave) {
-	var ArcologyZero = State.variables.arcologies[0];
-	var player = State.variables.PC;
-	var shoes = [];
-	
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
-	
-	if(slave.fetish == 'mindbroken') {
-		if(slave.amp != 1 && slave.heels == 1) {
-			shoes.push({text: `${He} finds ${he} can inexplicably walk if ${he} wears heels; a daily lesson for ${him}, as ${he} forgets shortly after leaving.`, shoes: jsEither(["heels", "pumps", "extreme heels", "boots"])});
-		}
-		shoes.push({text: `${He} vaguely remembers putting things on ${his} feet, so ${he} does.`, shoes: jsEither(["heels", "pumps", "extreme heels", "boots", "flats"])});
-		shoes.push({text: `${He} entered without shoes, and will leave the same.`, shoes: "none"});
-	} else if(slave.devotion <= 20) {
-		if(slave.heels == 0) {
-			shoes.push({text: "and wears comfortable flats,", shoes: "flats"});
-		} else {
-			shoes.push({text: `and angrily wears the heels ${he} needs to walk,`, shoes: "heels"});
-		}
-	} else {
-		if(slave.fetishKnown == 1 && slave.fetish == "dom") {
-			shoes.push({text: `${He} wears boots to look like a proper dominant.`, shoes: "boots"});
-		} else if(slave.fetishKnown == 1 && slave.fetish == "sadist") {
-			shoes.push({text: `${He} wears boots, since ${he} thinks they make ${him} look dangerous.`, shoes: "boots"});
-		} else if(slave.fetishKnown == 1 && slave.fetish == "masochist") {
-			shoes.push({text: `${He} wears painfully tall heels, since ${he} enjoys the twinge of pain with each step.`, shoes: "extreme heels"});
-		} else if(slave.heels == 1) {
-			shoes.push({text: `${He} wears the heels ${he} needs to walk.`, shoes: "heels"});
-		} else if(slave.fetishKnown == 1 && slave.fetish == "pregnancy" && slave.bellyPreg >= 500) {
-			shoes.push({text: `${He} goes barefoot to complement ${his} pregnancy.`, shoes: "none"});
-		} else if(slave.fetishKnown == 1 && slave.fetish == "none") {
-			shoes.push({text: `${He} wears comfortable flats, since ${he} doesn't have a fetish to show off.`, shoes: "flats"});
-		} else if(slave.actualAge < 13){
-			shoes.push({text: `${He} puts on boots so ${he} can stomp around.`, shoes: "boots"});
-			shoes.push({text: `${He} playfully puts on heels to be like all the other girls.`, shoes: "heels"});
-			shoes.push({text: `${He} wears flats as they are comfortable and easy to take on and off.`, shoes: "flats"});
-			shoes.push({text: `Going barefoot is fun, so no shoes for ${him}.`, shoes: "none"});
+	function todaysCollar(slave) {
+		let neck = [];
+		
+		if(slave.fetish == 'mindbroken') {
+			
+		} else if(slave.devotion <= 20) {
+			
 		} else {
-			shoes.push({text: `${He} wears heels to strut ${his} stuff.`, shoes: "heels"});
-			shoes.push({text: `${He} wears comfortable flats to take it easy.`, shoes: "flats"});
-			shoes.push({text: `${He} goes barefoot to show off ${his} toes.`, shoes: "none"});
-		}
-	}
-	return jsEither(shoes);
-};
+			if(V.arcologies[0].FSEgyptianRevivalist > 0) {
+				neck.push({text: "dons a wesekh to support your ancient Egyptian pretensions,", collar: "ancient Egyptian"});
+			}
+			if(slave.fetish == "masochist") {
+				neck.push({text: `dons a tight steel collar around ${his} neck,`, collar: "tight steel"});
+				neck.push({text: "dons a painful leather collar,", collar: "uncomfortable leather"});
+				neck.push({text: "dons a painfully tight neck corset,", collar: "neck corset"});
+			} else if(slave.fetish == "pregnancy" && (canGetPregnant(slave) || slave.pregKnown == 1)) {
+				neck.push({text: `dons a digital display that tells everything about ${his} womb,`, collar: "preg biometrics"});
+			} else if(slave.fetish == "boobs" && slave.boobs >= 1000) {
+				neck.push({text: `dons a cowbell to draw attention to ${his} luscious udders,`, collar: "leather with cowbell"});
+			}
+			neck.push({text: `decides ${his} neck needs no accenting,`, collar: "none"});
+			neck.push({text: "dons some pretty jewelry,", collar: "pretty jewelry"});
+			neck.push({text: "dons a lovely gold collar,", collar: "heavy gold"});
+			neck.push({text: `dons a simple silk ribbon around ${his} neck,`, collar: "silk ribbon"});
+		}
+		return jsEither(neck);
+	};
 
-window.todaysCollar = function(slave) {
-	var ArcologyZero = State.variables.arcologies[0];
-	var player = State.variables.PC;
-	var neck = [];
-	
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
-	
-	if(slave.fetish == 'mindbroken') {
+	function todaysCorset(slave) {
+		let belly = [];
+		const empathyBellies = ["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"];
 		
-	} else if(slave.devotion <= 20) {
-		
-	} else {
-		if(ArcologyZero.FSEgyptianRevivalist > 0) {
-			neck.push({text: "dons a wesekh to support your ancient Egyptian pretensions,", collar: "ancient Egyptian"});
-		}
-		if(slave.fetish == "masochist") {
-			neck.push({text: `dons a tight steel collar around ${his} neck,`, collar: "tight steel"});
-			neck.push({text: "dons a painful leather collar,", collar: "uncomfortable leather"});
-			neck.push({text: "dons a painfully tight neck corset,", collar: "neck corset"});
-		} else if(slave.fetish == "pregnancy" && (canGetPregnant(slave) || slave.pregKnown == 1)) {
-			neck.push({text: `dons a digital display that tells everything about ${his} womb,`, collar: "preg biometrics"});
-		} else if(slave.fetish == "boobs" && slave.boobs >= 1000) {
-			neck.push({text: `dons a cowbell to draw attention to ${his} luscious udders,`, collar: "leather with cowbell"});
-		}
-		neck.push({text: `decides ${his} neck needs no accenting,`, collar: "none"});
-		neck.push({text: "dons some pretty jewelry,", collar: "pretty jewelry"});
-		neck.push({text: "dons a lovely gold collar,", collar: "heavy gold"});
-		neck.push({text: `dons a simple silk ribbon around ${his} neck,`, collar: "silk ribbon"});
-	}
-	return jsEither(neck);
-};
-
-window.todaysCorset = function(slave) {
-	var ArcologyZero = State.variables.arcologies[0];
-	var player = State.variables.PC;
-	var belly = [];
-	var empathyBellies = ["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"];
-	
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
-	
-	if(slave.fetish == 'mindbroken') {
-		if(ArcologyZero.FSRepopulationFocus > 0 && slave.belly < 1500) {
-			if(slave.weight > 130) {
-				belly.push({text: `${He} notices the fake bellies; since every girl ${he} has ever met has a rounded middle, it's only natural ${he} is compelled to wear one. ${He} struggles to fit it around ${his} huge gut, only stopping when another slave takes it away from ${him} so ${he} moves on and stops blocking the wardrobe with ${his} fat ass.`, bellyAccessory: "none"});
+		if(slave.fetish == 'mindbroken') {
+			if(V.arcologies[0].FSRepopulationFocus > 0 && slave.belly < 1500) {
+				if(slave.weight > 130) {
+					belly.push({text: `${He} notices the fake bellies; since every girl ${he} has ever met has a rounded middle, it's only natural ${he} is compelled to wear one. ${He} struggles to fit it around ${his} huge gut, only stopping when another slave takes it away from ${him} so ${he} moves on and stops blocking the wardrobe with ${his} fat ass.`, bellyAccessory: "none"});
+				} else {
+					belly.push({text: `${He} notices the fake bellies; since every girl ${he} has ever met has a rounded middle, it's only natural ${he} is compelled to wear one.`, bellyAccessory: jsEither(["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"])});
+				}
 			} else {
-				belly.push({text: `${He} notices the fake bellies; since every girl ${he} has ever met has a rounded middle, it's only natural ${he} is compelled to wear one.`, bellyAccessory: jsEither(["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"])});
+				belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/
 			}
+		} else if(slave.devotion <= 20) {
+			
 		} else {
-			belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/
-		}
-	} else if(slave.devotion <= 20) {
-		
-	} else {
-		if(ArcologyZero.FSRepopulationFocus > 0 && slave.belly < 1500 && slave.sexualFlaw != "breeder") {
-			if(slave.weight > 130) {
-				belly.push({text: `struggles to fit a fake pregnant belly around ${his} gut before giving up and hoping ${he} can pass as fecund,`, bellyAccessory: "none"});
+			if(V.arcologies[0].FSRepopulationFocus > 0 && slave.belly < 1500 && slave.sexualFlaw != "breeder") {
+				if(slave.weight > 130) {
+					belly.push({text: `struggles to fit a fake pregnant belly around ${his} gut before giving up and hoping ${he} can pass as fecund,`, bellyAccessory: "none"});
+				} else {
+					belly.push({text: "straps on a fake pregnant belly to fit in with all the other pregnant girls,", bellyAccessory: jsEither(["a small empathy belly", "a medium empathy belly", "a large empathy belly"])});
+				}
+			} else if(slave.belly < 1500 && slave.fetish == "pregnancy" && isItemAccessible("a small empathy belly") && slave.sexualFlaw != "breeder" && slave.weight <= 130) {
+				if(slave.fetishStrength <= 30) {
+					belly.push({text: `straps on a 1st trimester belly to sate ${his} curiosity,`, bellyAccessory: "a small empathy belly"});
+					belly.push({text: `straps on a 2nd trimester belly to sate ${his} curiosity,`, bellyAccessory: "a medium empathy belly"});
+					belly.push({text: `straps on a 3rd trimester belly to sate ${his} curiosity,`, bellyAccessory: "a large empathy belly"});
+				} else if(slave.fetishStrength <= 95) {
+					belly.push({text: `straps on a 3rd trimester belly to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a large empathy belly"});
+				} else if(slave.fetishStrength > 95) {
+					belly.push({text: `straps on the largest belly ${he} can find to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a huge empathy belly"});
+				}
+			} else if(empathyBellies.includes(slave.bellyAccessory) && slave.fetish != "pregnancy") {
+				belly.push({text: `removes ${his} fake belly, since ${he} dislikes it,`, bellyAccessory: "none"});
+			} else if(empathyBellies.includes(slave.bellyAccessory) && slave.sexualFlaw == "breeder") {
+				belly.push({text: `pulls ${his} fake belly off, disgusted by it,`, bellyAccessory: "none"});
 			} else {
-				belly.push({text: "straps on a fake pregnant belly to fit in with all the other pregnant girls,", bellyAccessory: jsEither(["a small empathy belly", "a medium empathy belly", "a large empathy belly"])});
-			}
-		} else if(slave.belly < 1500 && slave.fetish == "pregnancy" && isItemAccessible("a small empathy belly") && slave.sexualFlaw != "breeder" && slave.weight <= 130) {
-			if(slave.fetishStrength <= 30) {
-				belly.push({text: `straps on a 1st trimester belly to sate ${his} curiosity,`, bellyAccessory: "a small empathy belly"});
-				belly.push({text: `straps on a 2nd trimester belly to sate ${his} curiosity,`, bellyAccessory: "a medium empathy belly"});
-				belly.push({text: `straps on a 3rd trimester belly to sate ${his} curiosity,`, bellyAccessory: "a large empathy belly"});
-			} else if(slave.fetishStrength <= 95) {
-				belly.push({text: `straps on a 3rd trimester belly to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a large empathy belly"});
-			} else if(slave.fetishStrength > 95) {
-				belly.push({text: `straps on the largest belly ${he} can find to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a huge empathy belly"});
-			}
-		} else if(empathyBellies.includes(slave.bellyAccessory) && slave.fetish != "pregnancy") {
-			belly.push({text: `removes ${his} fake belly, since ${he} dislikes it,`, bellyAccessory: "none"});
-		} else if(empathyBellies.includes(slave.bellyAccessory) && slave.sexualFlaw == "breeder") {
-			belly.push({text: `pulls ${his} fake belly off, disgusted by it,`, bellyAccessory: "none"});
-		} else {
-			belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/
+				belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/
+			}
 		}
-	}
-	return jsEither(belly);
-};
-
-/*:: saChoosesOwnClothes [script]*/
-
-window.saChoosesOwnClothes = function saChoosesOwnClothes(slave) {
-	"use strict";
-	const V = State.variables;
-	let r = "";
-	if (slave.choosesOwnClothes !== 1) return r;
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
+		return jsEither(belly);
+	};
 
-	const belly_accessory = slave.bellyAccesory;
+	return saChoosesOwnClothes;
 
-	if (slave.fetish === "mindbroken") {
-		let corsetChoice = todaysCorset(slave);
-		let clothingChoice = todaysOutfit(slave);
-		slave.bellyAccesory = corsetChoice.bellyAccesory;
-		slave.clothes = clothingChoice.clothes;
-		r += `${He} is fundamentally broken, but still follows some faint memories of standing within the wardrobe. `;
-		if (slave.amp !== 1) {
-			let shoeChoice = todaysShoes(slave);
-			r += `${shoeChoice.text} `;
-			slave.shoes = shoeChoice.shoes;
-		}
-		r += `${corsetChoice.text} Faced with so many choices and no thought on the matter; ${clothingChoice.text}. `;
-	} else if (slave.devotion <= 20) {
-		let clothingChoice = todaysOutfit(slave);
-		slave.clothes = clothingChoice.clothes;
-		r += `${clothingChoice.text} `;
-		if (slave.amp !== 1) {
-			let shoeChoice = todaysShoes(slave);
-			r += `${shoeChoice.text} `;
-			slave.shoes = shoeChoice.shoes;
-		}
-		r += `<span class="mediumorchid">increasing ${his} independence.</span>`;
-		slave.devotion -= 5;
-	} else {
-		let neckChoice = todaysCollar(slave);
-		let corsetChoice = todaysCorset(slave);
-		let clothingChoice = todaysOutfit(slave);
-		slave.collar = neckChoice.collar;
-		slave.bellyAccesory = corsetChoice.bellyAccesory;
-		slave.clothes = clothingChoice.clothes;
-		r += `${He} <span class="hotpink">loves</span> being able to dress ${himself}, ${neckChoice.text} ${corsetChoice.text} ${clothingChoice.text} `;
-		slave.devotion += 1;
-
-		if (V.arcologies[0].FSRestart !== "unset" && slave.choosesOwnChastity == 1) {
-			if (slave.vagina > -1 && slave.breedingMark === 1 && (slave.vaginalAccessory === "chastity belt" || slave.vaginalAccessory === "combined chastity")) {
-				r += `${He} unfastens ${his} chastity belt knowing full well ${his} role in life is to carry ${his} ${WrittenMaster(slave)}'s children. `;
-				slave.vaginalAccessory = "none";
-			} else if (slave.vagina > -1 && slave.ovaries === 1 && slave.preg === 0 && slave.vaginalAccessory !== "chastity belt") {
-				r += `${He} also affixes a chastity belt over ${his} vagina to discourage use of ${his} reproductive organ. `;
-				slave.vaginalAccessory = "chastity belt";
-			} else if (slave.vagina > -1 && (slave.ovaries === 0 || slave.preg < -1) && slave.vaginalAccessory === "chastity belt") {
-				r += `${He} removes ${his} chastity belt since no matter how hard someone tries, ${he} can never become pregnant. `;
-				slave.vaginalAccessory = "none";
-			}
-			if (slave.dick > 0 && slave.balls > 0 && slave.dickAccessory !== "chastity") {
-				r += `${He} also affixes a chastity cage onto ${his} dick to discourage use of ${his} reproductive organ. `;
-				slave.dickAccessory = "chastity";
-			} else if (slave.dick > 0 && slave.balls === 0 && slave.dickAccessory === "chastity") {
-				r += `${He} removes ${his} chastity cage since even if ${he} could get erect, ${he} only shoots blanks. `;
-				slave.dickAccessory = "none";
-			}
-		}
-
-		if (slave.amp !== 1) {
-			let shoeChoice = todaysShoes(slave);
-			r += `${shoeChoice.text}`;
-			slave.shoes = shoeChoice.shoes;
-		}
-	}
-	return r;
-};
+})();
 
 /* :: FResult [script]*/
 
diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt
index 4d3b8542542..fc88ffdd3e4 100644
--- a/slave variables documentation - Pregmod.txt	
+++ b/slave variables documentation - Pregmod.txt	
@@ -2320,6 +2320,7 @@ may accept strings, use at own risk
 "silk ribbon"
 "ball gag"
 "bit gag"
+"porcelain mask"
 
 shoes:
 
diff --git a/src/endWeek/saChoosesOwnClothes.tw b/src/endWeek/saChoosesOwnClothes.tw
new file mode 100644
index 00000000000..ebba02377e5
--- /dev/null
+++ b/src/endWeek/saChoosesOwnClothes.tw
@@ -0,0 +1,812 @@
+:: saChoosesOwnClothes [script]
+
+window.saChoosesOwnClothes = (function() {
+	"use strict";
+	let V;
+	let player;
+	let r;
+	let pronouns;
+	let he;
+	let him;
+	let his;
+	let hers;
+	let himself;
+	let boy;
+	let He;
+	let His;
+	let belly_accessory;
+
+	function saChoosesOwnClothes(slave) {
+		V = State.variables;
+		player = V.PC;
+		r = "";
+		if (slave.choosesOwnClothes !== 1) return r;
+		pronouns = getPronouns(slave);
+		he = pronouns.pronoun;
+		him = pronouns.object;
+		his = pronouns.possessive;
+		hers = pronouns.posessivePronoun;
+		himself = pronouns.objectReflexive;
+		boy = pronouns.noun;
+		He = capFirstChar(he);
+		His = capFirstChar(his);
+		belly_accessory = slave.bellyAccesory;
+
+		if (slave.fetish === "mindbroken") {
+			let corsetChoice = todaysCorset(slave);
+			let clothingChoice = todaysOutfit(slave);
+			slave.bellyAccesory = corsetChoice.bellyAccesory;
+			slave.clothes = clothingChoice.clothes;
+			r += `${He} is fundamentally broken, but still follows some faint memories of standing within the wardrobe. `;
+			if (slave.amp !== 1) {
+				let shoeChoice = todaysShoes(slave);
+				r += `${shoeChoice.text} `;
+				slave.shoes = shoeChoice.shoes;
+			}
+			r += `${corsetChoice.text} Faced with so many choices and no thought on the matter; ${clothingChoice.text}. `;
+		} else if (slave.devotion <= 20) {
+			let clothingChoice = todaysOutfit(slave);
+			slave.clothes = clothingChoice.clothes;
+			r += `${clothingChoice.text} `;
+			if (slave.amp !== 1) {
+				let shoeChoice = todaysShoes(slave);
+				r += `${shoeChoice.text} `;
+				slave.shoes = shoeChoice.shoes;
+			}
+			r += `<span class="mediumorchid">increasing ${his} independence.</span>`;
+			slave.devotion -= 5;
+		} else {
+			let neckChoice = todaysCollar(slave);
+			let corsetChoice = todaysCorset(slave);
+			let clothingChoice = todaysOutfit(slave);
+			slave.collar = neckChoice.collar;
+			slave.bellyAccesory = corsetChoice.bellyAccesory;
+			slave.clothes = clothingChoice.clothes;
+			r += `${He} <span class="hotpink">loves</span> being able to dress ${himself}, ${neckChoice.text} ${corsetChoice.text} ${clothingChoice.text} `;
+			slave.devotion += 1;
+
+			if (V.arcologies[0].FSRestart !== "unset" && slave.choosesOwnChastity == 1) {
+				if (slave.vagina > -1 && slave.breedingMark === 1 && (slave.vaginalAccessory === "chastity belt" || slave.vaginalAccessory === "combined chastity")) {
+					r += `${He} unfastens ${his} chastity belt knowing full well ${his} role in life is to carry ${his} ${WrittenMaster(slave)}'s children. `;
+					slave.vaginalAccessory = "none";
+				} else if (slave.vagina > -1 && slave.ovaries === 1 && slave.preg === 0 && slave.vaginalAccessory !== "chastity belt") {
+					r += `${He} also affixes a chastity belt over ${his} vagina to discourage use of ${his} reproductive organ. `;
+					slave.vaginalAccessory = "chastity belt";
+				} else if (slave.vagina > -1 && (slave.ovaries === 0 || slave.preg < -1) && slave.vaginalAccessory === "chastity belt") {
+					r += `${He} removes ${his} chastity belt since no matter how hard someone tries, ${he} can never become pregnant. `;
+					slave.vaginalAccessory = "none";
+				}
+				if (slave.dick > 0 && slave.balls > 0 && slave.dickAccessory !== "chastity") {
+					r += `${He} also affixes a chastity cage onto ${his} dick to discourage use of ${his} reproductive organ. `;
+					slave.dickAccessory = "chastity";
+				} else if (slave.dick > 0 && slave.balls === 0 && slave.dickAccessory === "chastity") {
+					r += `${He} removes ${his} chastity cage since even if ${he} could get erect, ${he} only shoots blanks. `;
+					slave.dickAccessory = "none";
+				}
+			}
+
+			if (slave.amp !== 1) {
+				let shoeChoice = todaysShoes(slave);
+				r += `${shoeChoice.text}`;
+				slave.shoes = shoeChoice.shoes;
+			}
+		}
+		return r;
+	}
+
+	function todaysOutfit(slave) {
+		let clothing = [];
+		let wardrobeAssignment = [];
+		let wardrobeFS = [];
+		let wardrobeTastes = [];
+		let selection;
+
+		if(slave.fetish == 'mindbroken') {
+			if(V.arcologies[0].FSChattelReligionist > 0) {
+				selection = {text: `${he} commonly sees others wearing chattel habits and is drawn to doing so ${himself}.`, clothes: "a chattel habit"};
+			} else {
+				clothing.push('panties');
+				if(V.arcologies[0].FSEgyptianRevivalist > 0) {
+					clothing.push('egyptian');
+				} else if(V.arcologies[0].FSRomanRevivalist > 0) {
+					clothing.push('roman');
+				} else if(V.arcologies[0].FSAztecRevivalist > 0) {
+					clothing.push('aztec');
+				} else if(V.arcologies[0].FSEdoRevivalist > 0) {
+					clothing.push('edo');
+				} else if(V.arcologies[0].FSArabianRevivalist > 0) {
+					clothing.push('arabic');
+				} else if(V.arcologies[0].FSChineseRevivalist > 0) {
+					clothing.push('chinese');
+				}
+				if(V.arcologies[0].FSGenderFundamentalist > 0) {
+					clothing.push('genderFund');
+				}
+				if(V.arcologies[0].FSPaternalist > 0) {
+					clothing.push('paternalist');
+				} else if(V.arcologies[0].FSDegradationist > 0) {
+					clothing.push('degradationist');
+				}
+				if(V.arcologies[0].FSMaturityPreferentialist > 0) {
+					clothing.push('mature');
+				} else if(V.arcologies[0].FSYouthPreferentialist > 0) {
+					clothing.push('youth');
+				}
+				if(V.arcologies[0].FSPhysicalIdealist > 0) {
+					clothing.push('physicalIdealist');
+				}
+				if(V.arcologies[0].FSPastoralist > 0) {
+					clothing.push('pastoralist');
+				}
+				if(V.arcologies[0].FSBodyPurist > 0) {
+					clothing.push('bodyPurist');
+				}
+				clothing = jsEither(clothing);
+				switch(clothing) {
+				case 'egyptian':
+					selection = {text: `${he} commonly sees others wearing nothing but jewelry and is drawn to doing so ${himself}.`, clothes: "slutty jewelry"};
+					break;
+				case 'roman':
+					selection = {text: `${he} commonly sees others wearing togas and is drawn to doing so ${himself}.`, clothes: "a toga"};
+					break;
+				case 'aztec':
+					selection = {text: `${he} commonly sees others wearing huipils and is drawn to doing so ${himself}.`, clothes: "a huipil"};
+					break;
+				case 'edo':
+					selection = {text: `${he} commonly sees others wearing kimonos and is drawn to doing so ${himself}.`, clothes: "a kimono"};
+					break;
+				case 'arabic':
+					selection = {text: `${he} commonly sees others wearing silk and is drawn to doing so ${himself}.`, clothes: "harem gauze"};
+					break;
+				case 'chinese':
+					selection = {text: `${he} commonly sees others wearing qipaos and is drawn to doing so ${himself}.`, clothes: "a slutty qipao"};
+					break;
+				case 'genderFund':
+					if(jsRandom(1,2) == 1) {
+						selection = {text: `${he} commonly sees cheerleaders around and instinctually follows along.`, clothes: jsEither(['a cheerleader outfit', 'a schoolgirl outfit'])};
+					} else {
+						selection = {text: `${he} commonly sees bunnies around and instinctually follows along.`, clothes: "a bunny outfit"};
+					}
+					break;
+				case 'paternalist':
+					selection = {text: `${he} commonly sees others wearing clothing and is drawn to doing so ${himself}.`, clothes: "conservative clothing"};
+					break;
+				case 'degradationist':
+					selection = {text: `${he} commonly sees others wearing chains and is drawn to doing so ${himself}.`, clothes: jsEither(['chains', 'uncomfortable straps', 'shibari ropes'])};
+					break;
+				case 'mature':
+					selection = {text: `${he} commonly sees others wearing suits and is drawn to doing so ${himself}.`, clothes: jsEither(['slutty business attire', 'a nice maid outfit', 'a military uniform', 'a schutzstaffel uniform', 'a slutty schutzstaffel uniform', 'a red army uniform', 'a mounty outfit', 'nice business attire'])};
+					break;
+				case 'youth':
+					selection = {text: `${he} commonly sees schoolgirls around and instinctually follows along.`, clothes: jsEither(['a schoolgirl outfit', 'a cheerleader outfit'])};
+					break;
+				case 'physicalIdealist':
+					selection = {text: `${he} commonly sees naked girls around and seldom realizes they are coated in oil.`, clothes: jsEither(['body oil', 'no clothing', 'no clothing'])};
+					break;
+				case 'pastoralist':
+					selection = {text: `${he} commonly sees cowgirls around and instinctually follows along.`, clothes: "Western clothing"};
+					break;
+				case 'bodyPurist':
+					selection = {text: `${he} commonly sees others wearing tight, form-fitting clothes and is drawn to doing so ${himself}.`, clothes: jsEither(['a leotard', 'a string bikini', 'a slave gown', 'a comfortable bodysuit', 'restrictive latex', 'clubslut netting', 'a leotard', 'a halter top dress'])};
+					break;
+				default:
+					selection = {text: `${he} chooses to put on underwear, the reasons lost to ${him}, and moves on.`, clothes: "attractive lingerie"};
+					break;
+				}
+			}
+		} else if(slave.devotion <= 20) {
+			clothing.push({text: `${He} uses the ability to select outfits to cover up with comfortable cutoffs and a t-shirt,`, clothes: "cutoffs and a t-shirt"});
+			if(isItemAccessible("conservative clothing")) {
+				wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover up with the most conservative clothing ${he} can find.`, clothes: "conservative clothing"});
+			}
+			if(isItemAccessible("a kimono")) {
+				wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover ${himself} with a kimono.`, clothes: "a kimono"});
+			}
+			if(isItemAccessible("stretch pants and a crop-top")) {
+				wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover up with stretch pants and a crop-top, though ${he} wishes it didn't have lewd comments printed on it.`, clothes: "stretch pants and a crop-top"});
+			}
+			selection = jsEither(clothing);
+		} else {
+			if(V.arcologies[0].FSChattelReligionist > 0) {
+				clothing.push({text: "and wears a chattel habit to conform to your arcology's culture.", clothes: "a chattel habit"});
+			}
+			/*Chooses clothes according to assignment (no exceptions)*/
+			else if(slave.assignment == "be the Nurse") {
+				if(slave.energy > 95 || slave.need > 100) {
+					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to make it clear just how much this nurse needs ${his} daily lay.`, clothes: "a slutty nurse outfit"});
+				} else if(slave.energy > 80) {
+					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show off ${his} body and arouse ${his} patients.`, clothes: "a slutty nurse outfit"});
+					wardrobeAssignment.push({text: `and wears a nice nurse outfit to look professional before ${his} patients.`, clothes: "a nice nurse outfit"});
+					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show to a little skin as ${he} cares for ${his} patients.`, clothes: "a slutty nurse outfit"});
+				} else {
+					wardrobeAssignment.push({text: `and wears a nice nurse outfit to look professional before ${his} patients.`, clothes: "a nice nurse outfit"});
+					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show to a little skin as ${he} cares for ${his} patients.`, clothes: "a slutty nurse outfit"});
+				}
+			} else if(slave.assignment == "be the Madam") {
+				if(slave.energy > 95 || slave.need > 100) {
+					wardrobeAssignment.push({text: `and wears a slutty suit to be certain nothing blocks ${him} from getting the sex ${he} needs.`, clothes: "slutty business attire"});
+				} else if(slave.energy > 80) {
+					wardrobeAssignment.push({text: `and wears a nice suit to show ${he} means business.`, clothes: "nice business attire"});
+					wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
+					wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
+				} else {
+					wardrobeAssignment.push({text: `and wears a nice suit to show ${he} means business.`, clothes: "nice business attire"});
+					wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
+				}
+			} else if(slave.assignment == "be the Milkmaid") {
+				if(slave.energy > 95 || slave.need > 100) {
+					if(isItemAccessible("body oil")) {
+						wardrobeAssignment.push({text: `and coats ${himself} with oil to better slip between ${his} cows as ${he} pleasures them.`, clothes: "body oil"});
+					}
+					wardrobeAssignment.push({text: `but goes nude to not be slowed down while moving between ${his} charges.`, clothes: "no clothing"});
+				} else {
+					wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work with the cows.`, clothes: "a nice maid outfit"});
+					wardrobeAssignment.push({text: "and decides to call it Casual Friday and wear nothing but cutoffs and a t-shirt. Not like the cows will mind.", clothes: "cutoffs and a t-shirt"});
+					wardrobeAssignment.push({text: "and opts to don a cheerleader outfit to help cheer the cows on.", clothes: "a cheerleader outfit"});
+					wardrobeAssignment.push({text: `and dresses up as a succubus since ${he}'ll be drawing plenty of fluids.`, clothes: "a succubus outfit"});
+					wardrobeAssignment.push({text: `and slips into some spats and a tank top since ${he} feels a workout coming on.`, clothes: "spats and a tank top"});
+					if(isItemAccessible("Western clothing")) {
+						wardrobeAssignment.push({text: `and wears an appropriate cowgirl outfit. ${His} bare ass walking past is sure to amuse ${his} charges.`, clothes: "Western clothing"});
+					}
+					if(isItemAccessible("stretch pants and a crop-top")) {
+						wardrobeAssignment.push({text: `and slips into some comfy stretch pants to relax as ${he} works the cows.`, clothes: "stretch pants and a crop-top"});
+					}
+					if(State.variables.cumSlaves > 2) {
+						wardrobeAssignment.push({text: `and wears a slutty nurse outfit to help keep ${his} charges hard.`, clothes: "a slutty nurse outfit"});
+						wardrobeAssignment.push({text: `and wears nothing but sexy lingerie to help keep ${his} charges hard.`, clothes: "attractive lingerie"});
+						wardrobeAssignment.push({text: `and wears the skimpiest bikini on hand to help keep ${his} charges hard.`, clothes: "a string bikini"});
+						if(isItemAccessible("body oil")) {
+							wardrobeAssignment.push({text: `and coats ${himself} in oil for ${his} charges to savor.`, clothes: "body oil"});
+						}
+					}
+				}
+			} else if(slave.assignment == "be your Head Girl") {
+				wardrobeAssignment.push({text: `and wears a military uniform to give ${him} that extra touch of authority.`, clothes: "a military uniform"});
+				wardrobeAssignment.push({text: `and wears a schutzstaffel uniform to give ${him} that extra touch of authority.`, clothes: "a schutzstaffel uniform"});
+				wardrobeAssignment.push({text: `and wears a slutty schutzstaffel uniform to give ${him} that extra touch of authority.`, clothes: "a slutty schutzstaffel uniform"});
+				wardrobeAssignment.push({text: `and wears a red army uniform to give ${him} that extra touch of authority.`, clothes: "a red army uniform"});
+				wardrobeAssignment.push({text: `and wears a mounty outfit to give ${him} that extra touch of authority.`, clothes: "a mounty outfit"});					
+				wardrobeAssignment.push({text: `and wears a handsome suit to give ${him} that extra touch of authority.`, clothes: "nice business attire"});
+				if(canPenetrate(slave)){
+					wardrobeAssignment.push({text: `and wears a slutty suit to make it perfectly clear that ${his} dick is ${his} main tool in ${his} job.`, clothes: "slutty business attire"});
+				}
+			} else if(slave.assignment == "be the Schoolteacher") {
+				wardrobeAssignment.push({text: `and wears a handsome suit to give ${him} that teacherly authority.`, clothes: "nice business attire"});
+				wardrobeAssignment.push({text: `and wears a slutty suit to give ${him} an air of authority will keeping all eyes focused on ${him}.`, clothes: "slutty business attire"});
+				wardrobeAssignment.push({text: `and wears a schoolgirl outfit to help keep ${his} charges focused on ${him}.`, clothes: "a schoolgirl outfit"});
+				wardrobeAssignment.push({text: `and dresses up as a succubus to give ${his} sex lessons an extra kick.`, clothes: "a succubus outfit"});
+				if(isItemAccessible("conservative clothing")) {
+					wardrobeAssignment.push({text: "and wears conservative clothes to not detract from this week's lesson.", clothes: "conservative clothing"});
+				}
+				if(isItemAccessible("a toga")) {
+					wardrobeAssignment.push({text: `and wraps ${himself} in a toga to model ${himself} after the philosophers of yore.`, clothes: "a toga"});
+				}
+				if(isItemAccessible("a maternity dress") && slave.belly >= 10000) {
+					wardrobeAssignment.push({text: `and settles for a comfortable maternity dress to support ${his} middle while ${he} lectures in front of the class all week.`, clothes: "a maternity dress"});
+				}
+			} else if(slave.assignment == "be the Wardeness") {
+				wardrobeAssignment.push({text: "and dons battledress, the better to intimidate the prisoners.", clothes: "battledress"});
+				wardrobeAssignment.push({text: "and slips into a scalemail bikini, the better to intimidate the prisoners.", clothes: "a scalemail bikini"});
+				wardrobeAssignment.push({text: "and dons a scandalous habit to make it perfectly clear that crossing this nun will result in sexual punishment.", clothes: "a fallen nuns habit"});
+				if(isItemAccessible("stretch pants and a crop-top")) {
+					wardrobeAssignment.push({text: "and decides to take it easy by slipping into some stretch pants. They come off just as quickly as they come on, just in case.", clothes: "stretch pants and a crop-top"});
+				}
+			} else if(slave.assignment == "be the Attendant") {
+				wardrobeAssignment.push({text: `and wears a string bikini, since it's all ${he} can wear that won't be ruined by all the moisture in the spa.`, clothes: "a string bikini"});
+				wardrobeAssignment.push({text: `but decides to go nude, since ${he}'ll be spending so much time in the water.`, clothes: "no clothing"});
+			} else if(slave.assignment == "rest") {
+				wardrobeAssignment.push({text: "and wears a comfortable t-shirt and cutoffs to relax.", clothes: "cutoffs and a t-shirt"});
+				wardrobeAssignment.push({text: `and slips into some attractive lingerie to enjoy ${himself} as ${he} unwinds.`, clothes: "attractive lingerie"});
+				wardrobeAssignment.push({text: "but decides that clothing takes too much work and would rather sleep nude.", clothes: "no clothing"});
+				if(isItemAccessible("stretch pants and a crop-top")) {
+					wardrobeAssignment.push({text: "and slips into some comfy stretch pants to relax.", clothes: "stretch pants and a crop-top"});
+				}
+				if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 1500) {
+					wardrobeAssignment.push({text: `and slips into some attractive lingerie to enjoy ${himself} as ${he} unwinds.`, clothes: "attractive lingerie for a pregnant woman"});
+				}
+				if(slave.fetish == "submissive") {
+					wardrobeAssignment.push({text: "and decides the best way to relax is tied up nice and tight.", clothes: "shibari ropes"});
+				}
+			} else if(slave.assignment == "get milked" || slave.assignment == "work in the dairy") {
+				wardrobeAssignment.push({text: `and wears sturdy lingerie to offer the best support to ${his} sore, milk-filled udders.`, clothes: "attractive lingerie"});
+				if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 1500) {
+					wardrobeAssignment.push({text: "and wears lingerie designed for milky mothers.", clothes: "attractive lingerie for a pregnant woman"});
+				}
+				if(isItemAccessible("a maternity dress") && slave.belly >= 10000) {
+					wardrobeAssignment.push({text: `and chooses a maternity dress since it is easy to free ${his} breasts from.`, clothes: "a maternity dress"});
+				}
+				wardrobeAssignment.push({text: `and wears a string bikini for easy access to ${his} udders.`, clothes: "a string bikini"});
+				if(slave.lactation > 1) {
+					wardrobeAssignment.push({text: `but goes nude. There's no time for clothing, ${his} udders need to be drained now!`, clothes: "no clothing"});
+				}
+				wardrobeAssignment.push({text: `and dons a slutty outfit. If ${his} breasts are going to hang out, might as well wear something to complement them.`, clothes: "a slutty outfit"});
+			} else if(slave.assignment == "guard you") {
+				wardrobeAssignment.push({text: `and wears a bodysuit to show off ${his} curves without hindering ${his} deadliness.`, clothes: "a comfortable bodysuit"});
+				wardrobeAssignment.push({text: "and wears a military uniform to look the part of the honor guard.", clothes: "a military uniform"});
+				wardrobeAssignment.push({text: "and wears a schutzstaffel uniform to look the part of the honor guard.", clothes: "a schutzstaffel uniform"});
+				wardrobeAssignment.push({text: "and wears a slutty schutzstaffel uniform to look the part of the honor guard.", clothes: "a slutty schutzstaffel uniform"});
+				wardrobeAssignment.push({text: "and wears a red army uniform to look the part of the honor guard.", clothes: "a red army uniform"});
+				wardrobeAssignment.push({text: "and wears a nice suit to make it clear you mean business.", clothes: "nice business attire"});
+				wardrobeAssignment.push({text: "and wears a mounty outfit to make it clear you mean business.", clothes: "a mounty outfit"});
+				wardrobeAssignment.push({text: `and wears a scalemail bikini to make ${himself} look fierce.`, clothes: "a scalemail bikini"});
+				if(isItemAccessible("a kimono")) {
+					wardrobeAssignment.push({text: "and wears a nice kimono to add an air of elegance to your presence.", clothes: "a kimono"});
+				}
+			} else {
+				/*Chooses clothes according to assignment (exceptions allowed)*/
+				if(slave.assignment == "recruit girls") {
+					wardrobeAssignment.push({text: "and wears a flattering mini dress to appear sexy and carefree before those desperately seeking a better life.", clothes: "a mini dress"});
+					wardrobeAssignment.push({text: "and wears a cutoffs and a t-shirt to appear sexy and carefree before those desperately seeking a better life.", clothes: "cutoffs and a t-shirt"});
+					wardrobeAssignment.push({text: "and wears a nice suit to appear trustworthy before those desperately seeking a better life.", clothes: "nice business attire"});
+					wardrobeAssignment.push({text: "and wears a schoolgirl outfit to appear sexy and carefree before those desperately seeking a better life.", clothes: "a schoolgirl outfit"});
+					wardrobeAssignment.push({text: "and wears an opulent gown to showcase your wealth before those desperately seeking a better life.", clothes: "a ball gown"});
+					wardrobeAssignment.push({text: "and dresses as a succubus to attempt to lure any potential catches.", clothes: "a succubus outfit"});
+					if(isItemAccessible("harem gauze")) {
+						wardrobeAssignment.push({text: `and dons ${his} finest silks to showcase the luxuries waiting would-be slaves.`, clothes: "harem gauze"});
+					}
+					if(isItemAccessible("stretch pants and a crop-top")) {
+						wardrobeAssignment.push({text: "and wears comfortable stretch pants to and crop-top to appear carefree before those desperately seeking a better life.", clothes: "stretch pants and a crop-top"});
+					}
+					if(isItemAccessible("conservative clothing")) {
+						wardrobeAssignment.push({text: "and wears normal clothing to suggest to those desperately seeking a better life that they can find it here with you.", clothes: "conservative clothing"});
+					}
+				} else if(slave.assignment == "be the DJ") {
+					wardrobeAssignment.push({text: "and wears clubslut netting to look like the perfect easy club girl.", clothes: "clubslut netting"});
+					wardrobeAssignment.push({text: "and wears cutoffs and a t-shirt to look like the perfect easy club girl.", clothes: "cutoffs and a t-shirt"});
+					wardrobeAssignment.push({text: `and wears the slutty outfit ${he} can find to look like the perfect easy club girl.`, clothes: "a slutty outfit"});
+					wardrobeAssignment.push({text: `and wears nothing but slutty jewelry since ${he} loves the way it jingles to ${his} moves.`, clothes: "slutty jewelry"});
+					wardrobeAssignment.push({text: `and wears a skin tight bodysuit so nothing gets in the way of ${his} moves.`, clothes: "a comfortable bodysuit"});
+					if(slave.boobs > 1000) {
+						wardrobeAssignment.push({text: `but decides to go naked and let ${his} girls bounce free as ${he} dances.`, clothes: "no clothing"});
+					}
+					if(isItemAccessible("harem gauze")) {
+						wardrobeAssignment.push({text: `and wears the finest available silks to give ${his} moves a sensual grace.`, clothes: "harem gauze"});
+					}
+				} else if(slave.assignment == "be your Concubine") {
+					wardrobeAssignment.push({text: `and goes naked, since it's ${his} honored role to be the chief object of your desire.`, clothes: "no clothing"});
+					wardrobeAssignment.push({text: `and dresses as a slutty nurse as your genitals are always in need of ${his} special treatment.`, clothes: "a slutty nurse outfit"});
+					wardrobeAssignment.push({text: `and dresses as a schoolgirl in the hopes that you teach ${him} how to be a woman.`, clothes: "a schoolgirl outfit"});
+					wardrobeAssignment.push({text: `and dresses as a cheerleader so ${he} may cheer you on as you blow ${his} mind.`, clothes: "a cheerleader outfit"});
+					if(player.dick == 1) {
+						wardrobeAssignment.push({text: "and dresses as a slutty maid as you always come home with a stiff package that needs a thorough polishing.", clothes: "a slutty maid outfit"});
+					}
+					wardrobeAssignment.push({text: `and, since you personally see that ${he} never goes hungry, ${he} dresses like the sex demoness ${he} is.`, clothes: "a succubus outfit"});
+					if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 10000 && slave.pregSource == -1) {
+						wardrobeAssignment.push({text: `and chooses attractive lingerie to showcase the body you've given ${him} in the hopes that you ravish ${him}.`, clothes: "attractive lingerie for a pregnant woman"});
+					}
+					if(slave.toyHole == "dick" && canPenetrate(slave)) {
+						wardrobeAssignment.push({text: `and slips into a scalemail bikini so ${he} can act the role of your conqueror as ${he} bends you over.`, clothes: "a scalemail bikini"});
+					}
+				} else if(slave.assignment == "be a subordinate slave") {
+					wardrobeAssignment.push({text: `but gives up and goes naked after the other slaves constantly tear whatever ${he}'s wearing off ${him}.`, clothes: "no clothing"});
+					if(isItemAccessible("Western clothing")) {
+						wardrobeAssignment.push({text: `and chooses a pair of crotchless chaps so your other slaves don't have to waste time undressing ${him}.`, clothes: "Western clothing"});
+					}
+					if(slave.fetish == "submissive") {
+						wardrobeAssignment.push({text: `and chooses to slip on a pair of spats and a tank top in the hopes that ${he} gets to be a violated schoolgirl.`, clothes: "spats and a tank top"});
+						wardrobeAssignment.push({text: `and chooses to slip on a schoolgirl outfit in the hope that ${he} gets held down and raped.`, clothes: "a schoolgirl outfit"});
+						wardrobeAssignment.push({text: `and chooses to wear the sluttiest outfit available to make it clear what ${he} wants done to ${him}.`, clothes: "a slutty outfit"});
+					}
+				} else if(slave.assignment == "work a glory hole") {
+					wardrobeAssignment.push({text: `but doesn't bother wearing anything, since no one can see ${his} clothing when ${he}'s immured inside a glory hole.`, clothes: "no clothing"});
+				} else if(slave.assignment == "take classes" || slave.assignment == "learn in the schoolroom") {
+					wardrobeAssignment.push({text: "and wears a schoolgirl outfit, since it seems most appropriate.", clothes: "a schoolgirl outfit"});
+					wardrobeAssignment.push({text: `and wears a cheerleader outfit, since ${he} might as well be one of the popular girls.`, clothes: "a cheerleader outfit"});
+					if(isItemAccessible("conservative clothing")) {
+						wardrobeAssignment.push({text: `and wears normal clothing to not distract from ${his} lessons.`, clothes: "conservative clothing"});
+					}
+				} else if((slave.assignment == "whore") || (slave.assignment == "work in the brothel")) {
+					 if(slave.belly >= 5000 && isItemAccessible("attractive lingerie for a pregnant woman")) {
+						wardrobeAssignment.push({text: `and wears pretty lingerie to show off ${his} merchandise and accentuate ${his} pregnancy while still looking a little classy.`, clothes: "attractive lingerie for a pregnant woman"});
+					}
+					wardrobeAssignment.push({text: `and wears pretty lingerie to show off ${his} merchandise and still look a little classy.`, clothes: "attractive lingerie"});
+					if(isItemAccessible("harem gauze")) {
+						wardrobeAssignment.push({text: `and dresses ${himself} with harem gauze to add an exotic charm to ${his} display.`, clothes: "harem gauze"});
+					}
+					if(isItemAccessible("a kimono")) {
+						wardrobeAssignment.push({text: `and wraps ${himself} in a kimono to add some elegance to ${his} display.`, clothes: "a kimono"});
+					}
+					wardrobeAssignment.push({text: `and adorns ${himself} in fine dress to show off how much of a high class whore ${he} is.`, clothes: "a slave gown"});
+					wardrobeAssignment.push({text: `and dresses ${himself} in a slutty suit to show ${he}'s in it for the ¤.`, clothes: "slutty business attire"});
+					wardrobeAssignment.push({text: `and wears a flattering mini dress to really strut ${his} stuff.`, clothes: "a mini dress"});
+				} else if(slave.assignment == "serve the public" || slave.assignment == "serve in the club") {
+					wardrobeAssignment.push({text: "and wears string lingerie to look fun and fuckable.", clothes: "a string bikini"});
+					wardrobeAssignment.push({text: "and throws together the sluttiest outfit since if you're going to slut you might as well go all out.", clothes: "a slutty outfit"});
+					wardrobeAssignment.push({text: `and tosses on a slutty suit that screams ${he} needs a good fuck after a long day.`, clothes: "slutty business attire"});
+					wardrobeAssignment.push({text: `and dresses up as a slutty nurse; ${he} has just the technique to cure penile swelling.`, clothes: "a slutty nurse outfit"});
+					wardrobeAssignment.push({text: "and wears a cheerleader outfit to look energetic and fuckable.", clothes: "a cheerleader outfit"});
+					if(isItemAccessible("a bunny outfit")) {
+						wardrobeAssignment.push({text: `and slips into a teddy to add some class to ${his} post.`, clothes: "a bunny outfit"});
+					}
+					wardrobeAssignment.push({text: `and dresses up as a succubus to clearly advertise ${his} promiscuity.`, clothes: "a succubus outfit"});
+					if(slave.bellyPreg >= 10000) {
+						wardrobeAssignment.push({text: `and struggles into a schoolgirl outfit. ${His} gravid belly just screams that ${he} is a slutty little student who cares more for dick than lessons.`, clothes: "a succubus outfit"});
+					}
+				} else if(slave.assignment == "be a servant" || slave.assignment == "work as a servant") {
+					if(slave.energy > 95 || slave.need > 100) {
+						wardrobeAssignment.push({text: `and wears a skimpy maid outfit hoping that someone sneaks up behind ${him} as ${he} works and fulfills ${his} desires.`, clothes: "a slutty maid outfit"});
+					} else if(slave.energy > 80) {
+						wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
+						wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work around the penthouse.`, clothes: "a nice maid outfit"});
+						wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
+					} else {
+						wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work around the penthouse.`, clothes: "a nice maid outfit"});
+						wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
+					}
+				}
+				
+				/* Chooses clothes according to FS*/
+				if(V.arcologies[0].FSEgyptianRevivalist > 0) {
+					wardrobeFS.push({text: "and complements it with golden bangles, since no clothing is necessary for a sex slave in your warm and sunny arcology.", clothes: "slutty jewelry"});
+				} else if(V.arcologies[0].FSRomanRevivalist > 0) {
+					wardrobeFS.push({text: "and wears a toga to take part in your Roman revivalism.", clothes: "a toga"});
+				} else if(V.arcologies[0].FSEdoRevivalist > 0) {
+					wardrobeFS.push({text: "and wears a kimono, overjoyed that such lovely clothing is now appropriate.", clothes: "a kimono"});
+				} else if(V.arcologies[0].FSArabianRevivalist > 0) {
+					wardrobeFS.push({text: "and wears a harem outfit to look like a slave girl fit for a Sultan.", clothes: "harem gauze"});
+				} else if(V.arcologies[0].FSChineseRevivalist > 0) {
+					wardrobeFS.push({text: "and wears a brief qipao to show off and look Chinese at the same time.", clothes: "a slutty qipao"});
+				} else if(V.arcologies[0].FSAztecRevivalist > 0) {
+					wardrobeFS.push({text: `and drapes a huipil over ${himself} to fit in with your Aztec revivalism.`, clothes: "a huipil"});
+				}
+				if(V.arcologies[0].FSGenderFundamentalist > 0) {
+					wardrobeFS.push({text: "and wears a cheerleader outfit to look like a hot slut.", clothes: "a cheerleader outfit"});
+					wardrobeFS.push({text: "and wears a bunny outfit to look like a slut from the glory days.", clothes: "a bunny outfit"});
+					if(slave.bellyPreg >= 5000) {
+						wardrobeFS.push({text: `but decides to wear nothing at all; ${he}'s already pregnant, so ${he} just needs to be barefoot and naked to complete ${his} look.`, clothes: "no clothing"});
+					}
+				} else if(V.arcologies[0].FSGenderRadicalist > 0) {
+					wardrobeFS.push({text: `and eagerly slips into a skimpy maid outfit so ${he} can take advantage of its short skirt and ${his} lack of underwear`, clothes: "a slutty maid outfit"});
+					wardrobeFS.push({text: `and wears a cheerleader outfit that clearly shows off ${his} ass.`, clothes: "a cheerleader outfit"});
+					wardrobeFS.push({text: "and settles for some sexy succubutt.", clothes: "a succubus outfit"});
+				}
+				if(V.arcologies[0].FSPaternalist > 0) {
+					wardrobeFS.push({text: "and wears conservative clothing, as permitted by your paternalism.", clothes: "conservative clothing"});
+					if(isItemAccessible("stretch pants and a crop-top")) {
+						wardrobeAssignment.push({text: `and wears the most comfortable stretch pants ${he} can find.`, clothes: "stretch pants and a crop-top"});
+					}
+				} else if(V.arcologies[0].FSDegradationist > 0) {
+					wardrobeFS.push({text: `and wears chains, to degrade ${himself} as required by your societal goals.`, clothes: "chains"});
+				}
+				if(V.arcologies[0].FSMaturityPreferentialist > 0) {
+					if(slave.visualAge >= 30) {
+						wardrobeFS.push({text: "and wears a slutty suit to look like the ideal horny older woman.", clothes: "slutty business attire"});
+						wardrobeFS.push({text: `and wears only an apron to make ${himself} seem more matronly.`, clothes: "an apron"});
+					} else {
+						wardrobeFS.push({text: "and wears a formal suit to look more mature.", clothes: "nice business attire"});
+					}
+				} else if(V.arcologies[0].FSYouthPreferentialist > 0) {
+					wardrobeFS.push({text: "and wears a schoolgirl outfit to look younger.", clothes: "a schoolgirl outfit"});
+					wardrobeFS.push({text: "and wears a cheerleader outfit to look younger and more energetic.", clothes: "a cheerleader outfit"});
+					wardrobeFS.push({text: "and wears spats and a tank top to look younger and more energetic.", clothes: "spats and a tank top"});
+				}
+				if(V.arcologies[0].FSPhysicalIdealist > 0) {
+					wardrobeFS.push({text: `and coats ${himself} in body oil to show off how ${he}'s part of your physical idealism.`, clothes: "body oil"});
+					wardrobeFS.push({text: `and slips into some spats for ${his} next workout.`, clothes: "spats and a tank top"});
+				} else if(V.arcologies[0].FSHedonisticDecadence > 0) {
+					wardrobeFS.push({text: "and throws on a very casual getup.", clothes: "stretch pants and a crop-top"});
+					wardrobeFS.push({text: "but decides against putting forth the effort and goes nude.", clothes: "no clothing"});
+				}
+				if(V.arcologies[0].FSPastoralist > 0) {
+					wardrobeFS.push({text: `and wears Western clothing, since ${he} thinks it fits with pastoralism.`, clothes: "Western clothing"});
+					wardrobeFS.push({text: `and wears a swimsuit that leaves ${his} breasts uncovered.`, clothes: "a monokini"});
+					if(slave.lactation > 0) {
+						wardrobeFS.push({text: "and dresses up as a slutty wet nurse.", clothes: "a slutty nurse outfit"});
+					}
+					wardrobeFS.push({text: `but decides to let ${his} breasts be free. Clothes will just get in the way.`, clothes: "no clothing"});
+				}
+				if(V.arcologies[0].FSBodyPurist > 0) {
+					wardrobeFS.push({text: `and wears a leotard to show off the purity of ${his} body.`, clothes: "a leotard"});
+					wardrobeFS.push({text: `but decides ${his} body is too nice to hide with clothing.`, clothes: "no clothing"});
+				} else if(V.arcologies[0].FSTransormationFetishest > 0) {
+					if(isItemAccessible("body oil")) {
+						wardrobeAssignment.push({text: `and coats ${his} assets in body oil to give them some extra shine.`, clothes: "body oil"});
+					}
+					wardrobeFS.push({text: `and decides squeezing into a latex suit will only complement ${his} unnatural appearance.`, clothes: "restrictive latex"});
+				}
+				if(V.arcologies[0].FSAssetExpansioninst > 0) {
+					wardrobeFS.push({text: "and decides to dress up like a young man's wet dream.", clothes: "a succubus outfit"});
+					wardrobeFS.push({text: `and decides to wear a skimpy bikini to make ${his} assets look even larger.`, clothes: "a string bikini"});
+					wardrobeFS.push({text: `and decides to throw together a slutty outfit that highlight ${his} assets.`, clothes: "a slutty outfit"});
+					wardrobeFS.push ({text: "and decides to wear a monokini that clings to the assets it actually does conceal.", clothes: "a monokini"});
+				} else if(V.arcologies[0].FSSlimnessEnthusiast > 0) {
+					if(slave.boobs < 300) {
+						wardrobeFS.push({text: `and wears a string bikini to show off just how flat ${he} is.`, clothes: "a string bikini"});
+					}
+					if(slave.boobs < 600 && slave.butt < 3) {
+						wardrobeFS.push({text: `and wears a leotard to show off ${his} lithe body.`, clothes: "a leotard"});
+						wardrobeFS.push({text: `and wears a form fitting bodysuit to show off ${his} lithe figure.`, clothes: "a comfortable bodysuit"});
+						wardrobeFS.push({text: `and wears spats to hug ${his} tight butt.`, clothes: "spats and a tank top"});
+						wardrobeFS.push({text: `and wears an apron that covers ${his} front while leaving ${his} rear free.`, clothes: "an apron"});
+					} else {
+						wardrobeFS.push({text: `and squeezes into a form fitting bodysuit in the hopes that it squishes down ${his} assets.`, clothes: "restrictive latex"});
+					}
+				}
+				
+				/*Chooses clothes according to fetishes, quirks, etc.*/
+				if(slave.attrXY > 70) {
+					if(slave.attrKnown == 1) {
+						wardrobeTastes.push({text: "and wears a schoolgirl outfit to show off a some T&A to attract boys.", clothes: "a schoolgirl outfit"});
+						wardrobeTastes.push({text: "and wears nothing but pretty lingerie to attract boys.", clothes: "attractive lingerie"});
+						wardrobeTastes.push({text: "and selects a slutty outfit that's sure to have men drooling.", clothes: "a slutty outfit"});
+						if(slave.butt > 3){
+							wardrobeTastes.push({text: `and slips on some cutoffs that are sure to have men checking out ${his} ass.`, clothes: "cutoffs and a t-shirt"});
+						}
+						if(isItemAccessible("a bunny outfit")) {
+							wardrobeAssignment.push({text: `and slips into a bunny outfit that ${he} knows will have men lining up.`, clothes: "a bunny outfit"});
+						}
+						if(slave.boobs > 800) {
+							wardrobeTastes.push({text: `and dresses up as a busty succubus that pulls eyes to ${his} chest and leaves pants feeling tight.`, clothes: "a succubus outfit"});
+						}
+					} else {
+						wardrobeTastes.push({text: "and selects a schoolgirl outfit that shows off some T&A.", clothes: "a schoolgirl outfit"});
+						wardrobeTastes.push({text: `and wears pretty lingerie that shows off ${his} body.`, clothes: "attractive lingerie"});
+						wardrobeTastes.push({text: "and selects a slutty outfit that's sure to draw attention.", clothes: "a slutty outfit"});
+						if(slave.butt > 3){
+							wardrobeTastes.push({text: `and slips on some cutoffs that shows off ${his} ass.`, clothes: "cutoffs and a t-shirt"});
+						}
+						if(isItemAccessible("a bunny outfit")) {
+							wardrobeAssignment.push({text: `and slips into a bunny outfit that hugs ${his} curves.`, clothes: "a bunny outfit"});
+						}
+						if(slave.boobs > 800) {
+							wardrobeTastes.push({text: "and dresses up as a busty succubus that's sure to draw eyes.", clothes: "a succubus outfit"});
+						}
+					}
+				}
+				if(slave.attrXX > 70) {
+					if(slave.attrKnown == 1) {
+						wardrobeTastes.push({text: "and wears a fashionable gown, since girls appreciate nice clothes.", clothes: "a slave gown"});
+						wardrobeTastes.push({text: "and wears nothing but pretty lingerie to give the girls a show.", clothes: "attractive lingerie"});
+						wardrobeTastes.push({text: "and wears a nice suit, since girls appreciate nice clothes.", clothes: "nice business attire"});
+					} else {
+						wardrobeTastes.push({text: "and wears a fashionable gown.", clothes: "a slave gown"});
+						wardrobeTastes.push({text: `and wears pretty lingerie that shows off ${his} body.`, clothes: "attractive lingerie"});
+						wardrobeTastes.push({text: "and wears a nice suit, the reasons not entirely clear to you.", clothes: "nice business attire"});
+					}
+				}
+				
+				/* need */
+				if(slave.need > 90) {
+					wardrobeTastes.push({text: `but goes naked. ${He} needs sex now and clothing will only get in the way.`, clothes: "no clothing"});
+					wardrobeTastes.push({text: `and throws on a slutty suit. ${He} hopes that it gets the point across that ${he} needs sex now.`, clothes: "slutty business attire"});
+					wardrobeTastes.push({text: `and dons a slutty nurse outfit. ${He}'s been infected and the only cure is a strong dicking.`, clothes: "a slutty nurse outfit"});
+					wardrobeTastes.push({text: `and dresses up as a slutty maid. Maybe if ${he} does ${his} job poorly enough, someone will bend ${him} over and fuck some sense into ${him}.`, clothes: "a slutty maid outfit"});
+					wardrobeTastes.push({text: `and dresses up as a succubus in the hopes it screams that ${he} needs sex now.`, clothes: "a succubus outfit"});
+				}
+				
+				/* quirks n flaws */
+				if(slave.behavioralQuirk == "sinful") {
+					wardrobeTastes.push({text: "and dresses up like a succubus because it makes $object feel naughty.", clothes: "a succubus outfit"});
+				} else if(slave.behavioralQuirk == "fitness") {
+					wardrobeTastes.push({text: `and wears spats and a tank top to give ${himself} a sporty look.`, clothes: "spats and a tank top"});
+				}
+
+				/* age stuff */
+				if(slave.actualAge < 10) {
+					wardrobeTastes.push({text: `and puts on a pretty dress so ${he} can be a princess.`, clothes: "a ball gown"});
+					wardrobeTastes.push({text: `and dresses up like a cheerleader since ${he} thinks it looks cute.`, clothes: "a cheerleader outfit"});
+					if(isItemAccessible("a kimono")) {
+						wardrobeAssignment.push({text: `and wraps ${himself} in a kimono, since it feels so good on ${his} skin.`, clothes: "a kimono"});
+					}
+				}
+				
+				/* fetishes */
+				if(slave.fetishKnown == 1) {
+					if(slave.fetish == "submissive") {
+						wardrobeTastes.push({text: `and wears restrictive latex to encourage others to dominate ${him}.`, clothes: "restrictive latex"});
+						wardrobeTastes.push({text: `and wears shibari ropes to encourage others to dominate ${him}.`, clothes: "shibari ropes"});
+					} else if(slave.fetish == "dom") {
+						wardrobeTastes.push({text: `and wears a handsome suit, since ${he} likes other slaves to look up to ${him}.`, clothes: "nice business attire"});
+						wardrobeTastes.push({text: "and wears a full body latex catsuit to look the part of the whip cracking dom.", clothes: "a latex catsuit"});
+					} else if(slave.fetish == "masochist") {
+						wardrobeTastes.push({text: `and wears painfully restrictive bondage gear, since ${he} likes the torment.`, clothes: "uncomfortable straps"});
+						if(isItemAccessible("chains")) {
+							wardrobeAssignment.push({text: `and wears painfully tight chains, since ${he} likes the torment.`, clothes: "chains"});
+						}
+					} else if(slave.fetish == "sadist") {
+						wardrobeTastes.push({text: `and wears an elegant gown, since ${he} thinks it makes ${him} look the part of the femme fatale.`, clothes: "a slave gown"});
+						wardrobeTastes.push({text: `and wears a scalemail bikini, since ${he} thinks it makes ${him} look fierce.`, clothes: "a scalemail bikini"});
+					} else if(slave.fetish == "cumslut") {
+						wardrobeTastes.push({text: `and wears cutoffs and a t-shirt, because the fun yet relatively conservative outfit seems to encourage others to ask ${him} for blowjobs.`, clothes: "cutoffs and a t-shirt"});
+					} else if(slave.fetish == "humiliation") {
+						wardrobeTastes.push({text: `and wears leather straps with rings over ${his} private parts because ${he} enjoys the embarrassment such a humiliating outfit causes ${him}.`, clothes: "uncomfortable straps"});
+					} else if(slave.fetish == "buttslut") {
+						wardrobeTastes.push({text: `and wears nothing other than slutty bangles, because ${he} likes to catch the eye without putting anything between cocks and ${his} rear end.`, clothes: "slutty jewelry"});
+					} else if(slave.fetish == "pregnancy") {
+						wardrobeTastes.push({text: `and wears a short maid dress, because ${he} wants to look motherly and fuckable at the same time.`, clothes: "a slutty maid outfit"});
+						if(isItemAccessible("a maternity dress") && canGetPregnant(slave)) {
+							wardrobeAssignment.push({text: "and wears a maternity dress in the hope someone fills out its middle.", clothes: "a maternity dress"});
+						}
+					} else if(slave.fetish == "boobs") {
+						wardrobeTastes.push({text: `and wears a cheerleader outfit, since ${he} loves the way it hugs ${his} tits as ${he} moves.`, clothes: "a cheerleader outfit"});
+						wardrobeTastes.push({text: `and wears a monokini, since ${he} loves how it leaves ${his} breasts totally bare.`, clothes: "a monokini"});
+					}
+				} else {
+					if(slave.fetish == "submissive") {
+						wardrobeTastes.push({text: "and strangely opts for restrictive latex.", clothes: "restrictive latex"});
+						wardrobeTastes.push({text: "and strangely opts for shibari ropes.", clothes: "shibari ropes"});
+					} else if(slave.fetish == "dom") {
+						wardrobeTastes.push({text: `and wears a handsome suit; ${he} seems to think highly of ${himself} in it.`, clothes: "nice business attire"});
+						wardrobeTastes.push({text: `and wears a full body latex catsuit; there is a strange look on ${his} face as ${he} wears it.`, clothes: "a latex catsuit"});
+					} else if(slave.fetish == "masochist") {
+						wardrobeTastes.push({text: "and strangely opts for painfully restrictive bondage gear.", clothes: "uncomfortable straps"});
+						if(isItemAccessible("chains")) {
+							wardrobeAssignment.push({text: "and strangely opts for painfully tight chains.", clothes: "chains"});
+						}
+					} else if(slave.fetish == "sadist") {
+						wardrobeTastes.push({text: "and wears an elegant gown for some reason.", clothes: "a slave gown"});
+						wardrobeTastes.push({text: "and wears a scalemail bikini; an odd choice.", clothes: "a scalemail bikini"});
+					} else if(slave.fetish == "cumslut") {
+						wardrobeTastes.push({text: `and wears cutoffs and a t-shirt; ${he} can't stop licking ${his} lips.`, clothes: "cutoffs and a t-shirt"});
+					} else if(slave.fetish == "humiliation") {
+						wardrobeTastes.push({text: `and strangely opts for leather straps with rings over ${his} private parts.`, clothes: "uncomfortable straps"});
+					} else if(slave.fetish == "buttslut") {
+						wardrobeTastes.push({text: `and wears nothing other than slutty bangles, an odd choice; ${his} ass is completely exposed.`, clothes: "slutty jewelry"});
+					} else if(slave.fetish == "pregnancy") {
+						wardrobeTastes.push({text: `and wears a short maid dress; you frequently notice ${him} observing ${his} stomach.`, clothes: "a slutty maid outfit"});
+						if(isItemAccessible("a maternity dress") && canGetPregnant(slave)) {
+							wardrobeAssignment.push({text: `and wears a maternity dress even though ${he} isn't pregnant.`, clothes: "a maternity dress"});
+						}
+					} else if(slave.fetish == "boobs") {
+						wardrobeTastes.push({text: `and wears a cheerleader outfit; ${he} seems to enjoy jiggling ${his} breasts in it.`, clothes: "a cheerleader outfit"});
+						wardrobeTastes.push({text: `and strangely decides to wear a monokini, which leaves ${his} breasts totally bare.`, clothes: "a cheerleader outfit"});
+					}
+				}
+
+				/* energy */
+				if(slave.energy > 95) {
+					wardrobeTastes.push({text: `but goes nude, since as a nympho ${he} gets plenty of attention anyway, and considers clothes an unnecessary hindrance.`, clothes: "no clothing"});
+				}
+
+				/* pregnancy */
+				if(slave.belly >= 5000) {
+					wardrobeTastes.push({text: `and wears pretty lingerie to show off ${his} merchandise while giving ${his} protruding belly plenty of room to hang free.`, clothes: "attractive lingerie"});
+					if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.energy > 70) {
+						wardrobeTastes.push({text: `and wears pretty lingerie to show off ${his} merchandise and accentuate ${his} pregnancy while giving it plenty of room to hang free.`, clothes: "attractive lingerie for a pregnant woman"});
+					} else if(isItemAccessible("a maternity dress")) {
+						wardrobeTastes.push({text: `and wears a conservative dress with plenty of give for ${his} belly to stretch it.`, clothes: "a maternity dress"});
+					}
+					wardrobeTastes.push({text: `and wears string lingerie to look fun and fuckable while giving ${his} protruding belly plenty of room to hang free.`, clothes: "a string bikini"});
+				} else {
+					wardrobeTastes.push({text: `and wears string lingerie to show off ${his} body.`, clothes: "a string bikini"});
+				}
+			}
+			/*Separated in three categories in case you want to, say, increase the probability of choosing _wardrobeAssignment to look more professional*/
+			if(wardrobeAssignment.length > 0) {
+				for (let i = 0; i < wardrobeAssignment.length; i++) {
+					clothing.push(wardrobeAssignment[i]);
+				}
+			}
+			if(wardrobeFS.length > 0) {
+				for (let i = 0; i < wardrobeFS.length; i++) {
+					clothing.push(wardrobeFS[i]);
+				}
+			}
+			if(wardrobeTastes.length > 0) {
+				for (let i = 0; i < wardrobeTastes.length; i++) {
+					clothing.push(wardrobeTastes[i]);
+				}
+			}
+			selection = jsEither(clothing);
+		}
+
+		return selection;
+	};
+
+	function todaysShoes(slave) {
+		let shoes = [];
+
+		if(slave.fetish == 'mindbroken') {
+			if(slave.amp != 1 && slave.heels == 1) {
+				shoes.push({text: `${He} finds ${he} can inexplicably walk if ${he} wears heels; a daily lesson for ${him}, as ${he} forgets shortly after leaving.`, shoes: jsEither(["heels", "pumps", "extreme heels", "boots"])});
+			}
+			shoes.push({text: `${He} vaguely remembers putting things on ${his} feet, so ${he} does.`, shoes: jsEither(["heels", "pumps", "extreme heels", "boots", "flats"])});
+			shoes.push({text: `${He} entered without shoes, and will leave the same.`, shoes: "none"});
+		} else if(slave.devotion <= 20) {
+			if(slave.heels == 0) {
+				shoes.push({text: "and wears comfortable flats,", shoes: "flats"});
+			} else {
+				shoes.push({text: `and angrily wears the heels ${he} needs to walk,`, shoes: "heels"});
+			}
+		} else {
+			if(slave.fetishKnown == 1 && slave.fetish == "dom") {
+				shoes.push({text: `${He} wears boots to look like a proper dominant.`, shoes: "boots"});
+			} else if(slave.fetishKnown == 1 && slave.fetish == "sadist") {
+				shoes.push({text: `${He} wears boots, since ${he} thinks they make ${him} look dangerous.`, shoes: "boots"});
+			} else if(slave.fetishKnown == 1 && slave.fetish == "masochist") {
+				shoes.push({text: `${He} wears painfully tall heels, since ${he} enjoys the twinge of pain with each step.`, shoes: "extreme heels"});
+			} else if(slave.heels == 1) {
+				shoes.push({text: `${He} wears the heels ${he} needs to walk.`, shoes: "heels"});
+			} else if(slave.fetishKnown == 1 && slave.fetish == "pregnancy" && slave.bellyPreg >= 500) {
+				shoes.push({text: `${He} goes barefoot to complement ${his} pregnancy.`, shoes: "none"});
+			} else if(slave.fetishKnown == 1 && slave.fetish == "none") {
+				shoes.push({text: `${He} wears comfortable flats, since ${he} doesn't have a fetish to show off.`, shoes: "flats"});
+			} else if(slave.actualAge < 13){
+				shoes.push({text: `${He} puts on boots so ${he} can stomp around.`, shoes: "boots"});
+				shoes.push({text: `${He} playfully puts on heels to be like all the other girls.`, shoes: "heels"});
+				shoes.push({text: `${He} wears flats as they are comfortable and easy to take on and off.`, shoes: "flats"});
+				shoes.push({text: `Going barefoot is fun, so no shoes for ${him}.`, shoes: "none"});
+			} else {
+				shoes.push({text: `${He} wears heels to strut ${his} stuff.`, shoes: "heels"});
+				shoes.push({text: `${He} wears comfortable flats to take it easy.`, shoes: "flats"});
+				shoes.push({text: `${He} goes barefoot to show off ${his} toes.`, shoes: "none"});
+			}
+		}
+		return jsEither(shoes);
+	};
+
+	function todaysCollar(slave) {
+		let neck = [];
+		
+		if(slave.fetish == 'mindbroken') {
+			
+		} else if(slave.devotion <= 20) {
+			
+		} else {
+			if(V.arcologies[0].FSEgyptianRevivalist > 0) {
+				neck.push({text: "dons a wesekh to support your ancient Egyptian pretensions,", collar: "ancient Egyptian"});
+			}
+			if(slave.fetish == "masochist") {
+				neck.push({text: `dons a tight steel collar around ${his} neck,`, collar: "tight steel"});
+				neck.push({text: "dons a painful leather collar,", collar: "uncomfortable leather"});
+				neck.push({text: "dons a painfully tight neck corset,", collar: "neck corset"});
+			} else if(slave.fetish == "pregnancy" && (canGetPregnant(slave) || slave.pregKnown == 1)) {
+				neck.push({text: `dons a digital display that tells everything about ${his} womb,`, collar: "preg biometrics"});
+			} else if(slave.fetish == "boobs" && slave.boobs >= 1000) {
+				neck.push({text: `dons a cowbell to draw attention to ${his} luscious udders,`, collar: "leather with cowbell"});
+			}
+			neck.push({text: `decides ${his} neck needs no accenting,`, collar: "none"});
+			neck.push({text: "dons some pretty jewelry,", collar: "pretty jewelry"});
+			neck.push({text: "dons a lovely gold collar,", collar: "heavy gold"});
+			neck.push({text: `dons a simple silk ribbon around ${his} neck,`, collar: "silk ribbon"});
+		}
+		return jsEither(neck);
+	};
+
+	function todaysCorset(slave) {
+		let belly = [];
+		const empathyBellies = ["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"];
+		
+		if(slave.fetish == 'mindbroken') {
+			if(V.arcologies[0].FSRepopulationFocus > 0 && slave.belly < 1500) {
+				if(slave.weight > 130) {
+					belly.push({text: `${He} notices the fake bellies; since every girl ${he} has ever met has a rounded middle, it's only natural ${he} is compelled to wear one. ${He} struggles to fit it around ${his} huge gut, only stopping when another slave takes it away from ${him} so ${he} moves on and stops blocking the wardrobe with ${his} fat ass.`, bellyAccessory: "none"});
+				} else {
+					belly.push({text: `${He} notices the fake bellies; since every girl ${he} has ever met has a rounded middle, it's only natural ${he} is compelled to wear one.`, bellyAccessory: jsEither(["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"])});
+				}
+			} else {
+				belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/
+			}
+		} else if(slave.devotion <= 20) {
+			
+		} else {
+			if(V.arcologies[0].FSRepopulationFocus > 0 && slave.belly < 1500 && slave.sexualFlaw != "breeder") {
+				if(slave.weight > 130) {
+					belly.push({text: `struggles to fit a fake pregnant belly around ${his} gut before giving up and hoping ${he} can pass as fecund,`, bellyAccessory: "none"});
+				} else {
+					belly.push({text: "straps on a fake pregnant belly to fit in with all the other pregnant girls,", bellyAccessory: jsEither(["a small empathy belly", "a medium empathy belly", "a large empathy belly"])});
+				}
+			} else if(slave.belly < 1500 && slave.fetish == "pregnancy" && isItemAccessible("a small empathy belly") && slave.sexualFlaw != "breeder" && slave.weight <= 130) {
+				if(slave.fetishStrength <= 30) {
+					belly.push({text: `straps on a 1st trimester belly to sate ${his} curiosity,`, bellyAccessory: "a small empathy belly"});
+					belly.push({text: `straps on a 2nd trimester belly to sate ${his} curiosity,`, bellyAccessory: "a medium empathy belly"});
+					belly.push({text: `straps on a 3rd trimester belly to sate ${his} curiosity,`, bellyAccessory: "a large empathy belly"});
+				} else if(slave.fetishStrength <= 95) {
+					belly.push({text: `straps on a 3rd trimester belly to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a large empathy belly"});
+				} else if(slave.fetishStrength > 95) {
+					belly.push({text: `straps on the largest belly ${he} can find to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a huge empathy belly"});
+				}
+			} else if(empathyBellies.includes(slave.bellyAccessory) && slave.fetish != "pregnancy") {
+				belly.push({text: `removes ${his} fake belly, since ${he} dislikes it,`, bellyAccessory: "none"});
+			} else if(empathyBellies.includes(slave.bellyAccessory) && slave.sexualFlaw == "breeder") {
+				belly.push({text: `pulls ${his} fake belly off, disgusted by it,`, bellyAccessory: "none"});
+			} else {
+				belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/
+			}
+		}
+		return jsEither(belly);
+	};
+
+	return saChoosesOwnClothes;
+
+})();
\ No newline at end of file
diff --git a/src/js/clothingSelectionJS.tw b/src/js/clothingSelectionJS.tw
deleted file mode 100644
index 9e1b17faa57..00000000000
--- a/src/js/clothingSelectionJS.tw
+++ /dev/null
@@ -1,762 +0,0 @@
-:: clothingSelectionJS [script]
-
-window.todaysOutfit = function(slave) {
-	var ArcologyZero = State.variables.arcologies[0];
-	var player = State.variables.PC;
-	var clothing = [];
-	var wardrobeAssignment = [];
-	var wardrobeFS = [];
-	var wardrobeTastes = [];
-	var selection;
-
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
-
-	if(slave.fetish == 'mindbroken') {
-		if(ArcologyZero.FSChattelReligionist > 0) {
-			selection = {text: `${he} commonly sees others wearing chattel habits and is drawn to doing so ${himself}.`, clothes: "a chattel habit"};
-		} else {
-			clothing.push('panties');
-			if(ArcologyZero.FSEgyptianRevivalist > 0) {
-				clothing.push('egyptian');
-			} else if(ArcologyZero.FSRomanRevivalist > 0) {
-				clothing.push('roman');
-			} else if(ArcologyZero.FSAztecRevivalist > 0) {
-				clothing.push('aztec');
-			} else if(ArcologyZero.FSEdoRevivalist > 0) {
-				clothing.push('edo');
-			} else if(ArcologyZero.FSArabianRevivalist > 0) {
-				clothing.push('arabic');
-			} else if(ArcologyZero.FSChineseRevivalist > 0) {
-				clothing.push('chinese');
-			}
-			if(ArcologyZero.FSGenderFundamentalist > 0) {
-				clothing.push('genderFund');
-			}
-			if(ArcologyZero.FSPaternalist > 0) {
-				clothing.push('paternalist');
-			} else if(ArcologyZero.FSDegradationist > 0) {
-				clothing.push('degradationist');
-			}
-			if(ArcologyZero.FSMaturityPreferentialist > 0) {
-				clothing.push('mature');
-			} else if(ArcologyZero.FSYouthPreferentialist > 0) {
-				clothing.push('youth');
-			}
-			if(ArcologyZero.FSPhysicalIdealist > 0) {
-				clothing.push('physicalIdealist');
-			}
-			if(ArcologyZero.FSPastoralist > 0) {
-				clothing.push('pastoralist');
-			}
-			if(ArcologyZero.FSBodyPurist > 0) {
-				clothing.push('bodyPurist');
-			}
-			clothing = jsEither(clothing);
-			switch(clothing) {
-			case 'egyptian':
-				selection = {text: `${he} commonly sees others wearing nothing but jewelry and is drawn to doing so ${himself}.`, clothes: "slutty jewelry"};
-				break;
-			case 'roman':
-				selection = {text: `${he} commonly sees others wearing togas and is drawn to doing so ${himself}.`, clothes: "a toga"};
-				break;
-			case 'aztec':
-				selection = {text: `${he} commonly sees others wearing huipils and is drawn to doing so ${himself}.`, clothes: "a huipil"};
-				break;
-			case 'edo':
-				selection = {text: `${he} commonly sees others wearing kimonos and is drawn to doing so ${himself}.`, clothes: "a kimono"};
-				break;
-			case 'arabic':
-				selection = {text: `${he} commonly sees others wearing silk and is drawn to doing so ${himself}.`, clothes: "harem gauze"};
-				break;
-			case 'chinese':
-				selection = {text: `${he} commonly sees others wearing qipaos and is drawn to doing so ${himself}.`, clothes: "a slutty qipao"};
-				break;
-			case 'genderFund':
-				if(jsRandom(1,2) == 1) {
-					selection = {text: `${he} commonly sees cheerleaders around and instinctually follows along.`, clothes: jsEither(['a cheerleader outfit', 'a schoolgirl outfit'])};
-				} else {
-					selection = {text: `${he} commonly sees bunnies around and instinctually follows along.`, clothes: "a bunny outfit"};
-				}
-				break;
-			case 'paternalist':
-				selection = {text: `${he} commonly sees others wearing clothing and is drawn to doing so ${himself}.`, clothes: "conservative clothing"};
-				break;
-			case 'degradationist':
-				selection = {text: `${he} commonly sees others wearing chains and is drawn to doing so ${himself}.`, clothes: jsEither(['chains', 'uncomfortable straps', 'shibari ropes'])};
-				break;
-			case 'mature':
-				selection = {text: `${he} commonly sees others wearing suits and is drawn to doing so ${himself}.`, clothes: jsEither(['slutty business attire', 'a nice maid outfit', 'a military uniform', 'a schutzstaffel uniform', 'a slutty schutzstaffel uniform', 'a red army uniform', 'a mounty outfit', 'nice business attire'])};
-				break;
-			case 'youth':
-				selection = {text: `${he} commonly sees schoolgirls around and instinctually follows along.`, clothes: jsEither(['a schoolgirl outfit', 'a cheerleader outfit'])};
-				break;
-			case 'physicalIdealist':
-				selection = {text: `${he} commonly sees naked girls around and seldom realizes they are coated in oil.`, clothes: jsEither(['body oil', 'no clothing', 'no clothing'])};
-				break;
-			case 'pastoralist':
-				selection = {text: `${he} commonly sees cowgirls around and instinctually follows along.`, clothes: "Western clothing"};
-				break;
-			case 'bodyPurist':
-				selection = {text: `${he} commonly sees others wearing tight, form-fitting clothes and is drawn to doing so ${himself}.`, clothes: jsEither(['a leotard', 'a string bikini', 'a slave gown', 'a comfortable bodysuit', 'restrictive latex', 'clubslut netting', 'a leotard', 'a halter top dress'])};
-				break;
-			default:
-				selection = {text: `${he} chooses to put on underwear, the reasons lost to ${him}, and moves on.`, clothes: "attractive lingerie"};
-				break;
-			}
-		}
-	} else if(slave.devotion <= 20) {
-		clothing.push({text: `${He} uses the ability to select outfits to cover up with comfortable cutoffs and a t-shirt,`, clothes: "cutoffs and a t-shirt"});
-		if(isItemAccessible("conservative clothing")) {
-			wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover up with the most conservative clothing ${he} can find.`, clothes: "conservative clothing"});
-		}
-		if(isItemAccessible("a kimono")) {
-			wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover ${himself} with a kimono.`, clothes: "a kimono"});
-		}
-		if(isItemAccessible("stretch pants and a crop-top")) {
-			wardrobeAssignment.push({text: `${He} uses the ability to select outfits to cover up with stretch pants and a crop-top, though ${he} wishes it didn't have lewd comments printed on it.`, clothes: "stretch pants and a crop-top"});
-		}
-		selection = jsEither(clothing);
-	} else {
-		if(ArcologyZero.FSChattelReligionist > 0) {
-			clothing.push({text: "and wears a chattel habit to conform to your arcology's culture.", clothes: "a chattel habit"});
-		}
-		/*Chooses clothes according to assignment (no exceptions)*/
-		else if(slave.assignment == "be the Nurse") {
-			if(slave.energy > 95 || slave.need > 100) {
-				wardrobeAssignment.push({text: `and wears a slutty nurse outfit to make it clear just how much this nurse needs ${his} daily lay.`, clothes: "a slutty nurse outfit"});
-			} else if(slave.energy > 80) {
-				wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show off ${his} body and arouse ${his} patients.`, clothes: "a slutty nurse outfit"});
-				wardrobeAssignment.push({text: `and wears a nice nurse outfit to look professional before ${his} patients.`, clothes: "a nice nurse outfit"});
-				wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show to a little skin as ${he} cares for ${his} patients.`, clothes: "a slutty nurse outfit"});
-			} else {
-				wardrobeAssignment.push({text: `and wears a nice nurse outfit to look professional before ${his} patients.`, clothes: "a nice nurse outfit"});
-				wardrobeAssignment.push({text: `and wears a slutty nurse outfit to show to a little skin as ${he} cares for ${his} patients.`, clothes: "a slutty nurse outfit"});
-			}
-		} else if(slave.assignment == "be the Madam") {
-			if(slave.energy > 95 || slave.need > 100) {
-				wardrobeAssignment.push({text: `and wears a slutty suit to be certain nothing blocks ${him} from getting the sex ${he} needs.`, clothes: "slutty business attire"});
-			} else if(slave.energy > 80) {
-				wardrobeAssignment.push({text: `and wears a nice suit to show ${he} means business.`, clothes: "nice business attire"});
-				wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
-				wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
-			} else {
-				wardrobeAssignment.push({text: `and wears a nice suit to show ${he} means business.`, clothes: "nice business attire"});
-				wardrobeAssignment.push({text: "and wears a slutty suit to entice and arouse while still looking managerial.", clothes: "slutty business attire"});
-			}
-		} else if(slave.assignment == "be the Milkmaid") {
-			if(slave.energy > 95 || slave.need > 100) {
-				if(isItemAccessible("body oil")) {
-					wardrobeAssignment.push({text: `and coats ${himself} with oil to better slip between ${his} cows as ${he} pleasures them.`, clothes: "body oil"});
-				}
-				wardrobeAssignment.push({text: `but goes nude to not be slowed down while moving between ${his} charges.`, clothes: "no clothing"});
-			} else {
-				wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work with the cows.`, clothes: "a nice maid outfit"});
-				wardrobeAssignment.push({text: "and decides to call it Casual Friday and wear nothing but cutoffs and a t-shirt. Not like the cows will mind.", clothes: "cutoffs and a t-shirt"});
-				wardrobeAssignment.push({text: "and opts to don a cheerleader outfit to help cheer the cows on.", clothes: "a cheerleader outfit"});
-				wardrobeAssignment.push({text: `and dresses up as a succubus since ${he}'ll be drawing plenty of fluids.`, clothes: "a succubus outfit"});
-				wardrobeAssignment.push({text: `and slips into some spats and a tank top since ${he} feels a workout coming on.`, clothes: "spats and a tank top"});
-				if(isItemAccessible("Western clothing")) {
-					wardrobeAssignment.push({text: `and wears an appropriate cowgirl outfit. ${His} bare ass walking past is sure to amuse ${his} charges.`, clothes: "Western clothing"});
-				}
-				if(isItemAccessible("stretch pants and a crop-top")) {
-					wardrobeAssignment.push({text: `and slips into some comfy stretch pants to relax as ${he} works the cows.`, clothes: "stretch pants and a crop-top"});
-				}
-				if(State.variables.cumSlaves > 2) {
-					wardrobeAssignment.push({text: `and wears a slutty nurse outfit to help keep ${his} charges hard.`, clothes: "a slutty nurse outfit"});
-					wardrobeAssignment.push({text: `and wears nothing but sexy lingerie to help keep ${his} charges hard.`, clothes: "attractive lingerie"});
-					wardrobeAssignment.push({text: `and wears the skimpiest bikini on hand to help keep ${his} charges hard.`, clothes: "a string bikini"});
-					if(isItemAccessible("body oil")) {
-						wardrobeAssignment.push({text: `and coats ${himself} in oil for ${his} charges to savor.`, clothes: "body oil"});
-					}
-				}
-			}
-		} else if(slave.assignment == "be your Head Girl") {
-			wardrobeAssignment.push({text: `and wears a military uniform to give ${him} that extra touch of authority.`, clothes: "a military uniform"});
-			wardrobeAssignment.push({text: `and wears a schutzstaffel uniform to give ${him} that extra touch of authority.`, clothes: "a schutzstaffel uniform"});
-			wardrobeAssignment.push({text: `and wears a slutty schutzstaffel uniform to give ${him} that extra touch of authority.`, clothes: "a slutty schutzstaffel uniform"});
-			wardrobeAssignment.push({text: `and wears a red army uniform to give ${him} that extra touch of authority.`, clothes: "a red army uniform"});
-			wardrobeAssignment.push({text: `and wears a mounty outfit to give ${him} that extra touch of authority.`, clothes: "a mounty outfit"});					
-			wardrobeAssignment.push({text: `and wears a handsome suit to give ${him} that extra touch of authority.`, clothes: "nice business attire"});
-			if(canPenetrate(slave)){
-				wardrobeAssignment.push({text: `and wears a slutty suit to make it perfectly clear that ${his} dick is ${his} main tool in ${his} job.`, clothes: "slutty business attire"});
-			}
-		} else if(slave.assignment == "be the Schoolteacher") {
-			wardrobeAssignment.push({text: `and wears a handsome suit to give ${him} that teacherly authority.`, clothes: "nice business attire"});
-			wardrobeAssignment.push({text: `and wears a slutty suit to give ${him} an air of authority will keeping all eyes focused on ${him}.`, clothes: "slutty business attire"});
-			wardrobeAssignment.push({text: `and wears a schoolgirl outfit to help keep ${his} charges focused on ${him}.`, clothes: "a schoolgirl outfit"});
-			wardrobeAssignment.push({text: `and dresses up as a succubus to give ${his} sex lessons an extra kick.`, clothes: "a succubus outfit"});
-			if(isItemAccessible("conservative clothing")) {
-				wardrobeAssignment.push({text: "and wears conservative clothes to not detract from this week's lesson.", clothes: "conservative clothing"});
-			}
-			if(isItemAccessible("a toga")) {
-				wardrobeAssignment.push({text: `and wraps ${himself} in a toga to model ${himself} after the philosophers of yore.`, clothes: "a toga"});
-			}
-			if(isItemAccessible("a maternity dress") && slave.belly >= 10000) {
-				wardrobeAssignment.push({text: `and settles for a comfortable maternity dress to support ${his} middle while ${he} lectures in front of the class all week.`, clothes: "a maternity dress"});
-			}
-		} else if(slave.assignment == "be the Wardeness") {
-			wardrobeAssignment.push({text: "and dons battledress, the better to intimidate the prisoners.", clothes: "battledress"});
-			wardrobeAssignment.push({text: "and slips into a scalemail bikini, the better to intimidate the prisoners.", clothes: "a scalemail bikini"});
-			wardrobeAssignment.push({text: "and dons a scandalous habit to make it perfectly clear that crossing this nun will result in sexual punishment.", clothes: "a fallen nuns habit"});
-			if(isItemAccessible("stretch pants and a crop-top")) {
-				wardrobeAssignment.push({text: "and decides to take it easy by slipping into some stretch pants. They come off just as quickly as they come on, just in case.", clothes: "stretch pants and a crop-top"});
-			}
-		} else if(slave.assignment == "be the Attendant") {
-			wardrobeAssignment.push({text: `and wears a string bikini, since it's all ${he} can wear that won't be ruined by all the moisture in the spa.`, clothes: "a string bikini"});
-			wardrobeAssignment.push({text: `but decides to go nude, since ${he}'ll be spending so much time in the water.`, clothes: "no clothing"});
-		} else if(slave.assignment == "rest") {
-			wardrobeAssignment.push({text: "and wears a comfortable t-shirt and cutoffs to relax.", clothes: "cutoffs and a t-shirt"});
-			wardrobeAssignment.push({text: `and slips into some attractive lingerie to enjoy ${himself} as ${he} unwinds.`, clothes: "attractive lingerie"});
-			wardrobeAssignment.push({text: "but decides that clothing takes too much work and would rather sleep nude.", clothes: "no clothing"});
-			if(isItemAccessible("stretch pants and a crop-top")) {
-				wardrobeAssignment.push({text: "and slips into some comfy stretch pants to relax.", clothes: "stretch pants and a crop-top"});
-			}
-			if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 1500) {
-				wardrobeAssignment.push({text: `and slips into some attractive lingerie to enjoy ${himself} as ${he} unwinds.`, clothes: "attractive lingerie for a pregnant woman"});
-			}
-			if(slave.fetish == "submissive") {
-				wardrobeAssignment.push({text: "and decides the best way to relax is tied up nice and tight.", clothes: "shibari ropes"});
-			}
-		} else if(slave.assignment == "get milked" || slave.assignment == "work in the dairy") {
-			wardrobeAssignment.push({text: `and wears sturdy lingerie to offer the best support to ${his} sore, milk-filled udders.`, clothes: "attractive lingerie"});
-			if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 1500) {
-				wardrobeAssignment.push({text: "and wears lingerie designed for milky mothers.", clothes: "attractive lingerie for a pregnant woman"});
-			}
-			if(isItemAccessible("a maternity dress") && slave.belly >= 10000) {
-				wardrobeAssignment.push({text: `and chooses a maternity dress since it is easy to free ${his} breasts from.`, clothes: "a maternity dress"});
-			}
-			wardrobeAssignment.push({text: `and wears a string bikini for easy access to ${his} udders.`, clothes: "a string bikini"});
-			if(slave.lactation > 1) {
-				wardrobeAssignment.push({text: `but goes nude. There's no time for clothing, ${his} udders need to be drained now!`, clothes: "no clothing"});
-			}
-			wardrobeAssignment.push({text: `and dons a slutty outfit. If ${his} breasts are going to hang out, might as well wear something to complement them.`, clothes: "a slutty outfit"});
-		} else if(slave.assignment == "guard you") {
-			wardrobeAssignment.push({text: `and wears a bodysuit to show off ${his} curves without hindering ${his} deadliness.`, clothes: "a comfortable bodysuit"});
-			wardrobeAssignment.push({text: "and wears a military uniform to look the part of the honor guard.", clothes: "a military uniform"});
-			wardrobeAssignment.push({text: "and wears a schutzstaffel uniform to look the part of the honor guard.", clothes: "a schutzstaffel uniform"});
-			wardrobeAssignment.push({text: "and wears a slutty schutzstaffel uniform to look the part of the honor guard.", clothes: "a slutty schutzstaffel uniform"});
-			wardrobeAssignment.push({text: "and wears a red army uniform to look the part of the honor guard.", clothes: "a red army uniform"});
-			wardrobeAssignment.push({text: "and wears a nice suit to make it clear you mean business.", clothes: "nice business attire"});
-			wardrobeAssignment.push({text: "and wears a mounty outfit to make it clear you mean business.", clothes: "a mounty outfit"});
-			wardrobeAssignment.push({text: `and wears a scalemail bikini to make ${himself} look fierce.`, clothes: "a scalemail bikini"});
-			if(isItemAccessible("a kimono")) {
-				wardrobeAssignment.push({text: "and wears a nice kimono to add an air of elegance to your presence.", clothes: "a kimono"});
-			}
-		} else {
-			/*Chooses clothes according to assignment (exceptions allowed)*/
-			if(slave.assignment == "recruit girls") {
-				wardrobeAssignment.push({text: "and wears a flattering mini dress to appear sexy and carefree before those desperately seeking a better life.", clothes: "a mini dress"});
-				wardrobeAssignment.push({text: "and wears a cutoffs and a t-shirt to appear sexy and carefree before those desperately seeking a better life.", clothes: "cutoffs and a t-shirt"});
-				wardrobeAssignment.push({text: "and wears a nice suit to appear trustworthy before those desperately seeking a better life.", clothes: "nice business attire"});
-				wardrobeAssignment.push({text: "and wears a schoolgirl outfit to appear sexy and carefree before those desperately seeking a better life.", clothes: "a schoolgirl outfit"});
-				wardrobeAssignment.push({text: "and wears an opulent gown to showcase your wealth before those desperately seeking a better life.", clothes: "a ball gown"});
-				wardrobeAssignment.push({text: "and dresses as a succubus to attempt to lure any potential catches.", clothes: "a succubus outfit"});
-				if(isItemAccessible("harem gauze")) {
-					wardrobeAssignment.push({text: `and dons ${his} finest silks to showcase the luxuries waiting would-be slaves.`, clothes: "harem gauze"});
-				}
-				if(isItemAccessible("stretch pants and a crop-top")) {
-					wardrobeAssignment.push({text: "and wears comfortable stretch pants to and crop-top to appear carefree before those desperately seeking a better life.", clothes: "stretch pants and a crop-top"});
-				}
-				if(isItemAccessible("conservative clothing")) {
-					wardrobeAssignment.push({text: "and wears normal clothing to suggest to those desperately seeking a better life that they can find it here with you.", clothes: "conservative clothing"});
-				}
-			} else if(slave.assignment == "be the DJ") {
-				wardrobeAssignment.push({text: "and wears clubslut netting to look like the perfect easy club girl.", clothes: "clubslut netting"});
-				wardrobeAssignment.push({text: "and wears cutoffs and a t-shirt to look like the perfect easy club girl.", clothes: "cutoffs and a t-shirt"});
-				wardrobeAssignment.push({text: `and wears the slutty outfit ${he} can find to look like the perfect easy club girl.`, clothes: "a slutty outfit"});
-				wardrobeAssignment.push({text: `and wears nothing but slutty jewelry since ${he} loves the way it jingles to ${his} moves.`, clothes: "slutty jewelry"});
-				wardrobeAssignment.push({text: `and wears a skin tight bodysuit so nothing gets in the way of ${his} moves.`, clothes: "a comfortable bodysuit"});
-				if(slave.boobs > 1000) {
-					wardrobeAssignment.push({text: `but decides to go naked and let ${his} girls bounce free as ${he} dances.`, clothes: "no clothing"});
-				}
-				if(isItemAccessible("harem gauze")) {
-					wardrobeAssignment.push({text: `and wears the finest available silks to give ${his} moves a sensual grace.`, clothes: "harem gauze"});
-				}
-			} else if(slave.assignment == "be your Concubine") {
-				wardrobeAssignment.push({text: `and goes naked, since it's ${his} honored role to be the chief object of your desire.`, clothes: "no clothing"});
-				wardrobeAssignment.push({text: `and dresses as a slutty nurse as your genitals are always in need of ${his} special treatment.`, clothes: "a slutty nurse outfit"});
-				wardrobeAssignment.push({text: `and dresses as a schoolgirl in the hopes that you teach ${him} how to be a woman.`, clothes: "a schoolgirl outfit"});
-				wardrobeAssignment.push({text: `and dresses as a cheerleader so ${he} may cheer you on as you blow ${his} mind.`, clothes: "a cheerleader outfit"});
-				if(player.dick == 1) {
-					wardrobeAssignment.push({text: "and dresses as a slutty maid as you always come home with a stiff package that needs a thorough polishing.", clothes: "a slutty maid outfit"});
-				}
-				wardrobeAssignment.push({text: `and, since you personally see that ${he} never goes hungry, ${he} dresses like the sex demoness ${he} is.`, clothes: "a succubus outfit"});
-				if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.belly >= 10000 && slave.pregSource == -1) {
-					wardrobeAssignment.push({text: `and chooses attractive lingerie to showcase the body you've given ${him} in the hopes that you ravish ${him}.`, clothes: "attractive lingerie for a pregnant woman"});
-				}
-				if(slave.toyHole == "dick" && canPenetrate(slave)) {
-					wardrobeAssignment.push({text: `and slips into a scalemail bikini so ${he} can act the role of your conqueror as ${he} bends you over.`, clothes: "a scalemail bikini"});
-				}
-			} else if(slave.assignment == "be a subordinate slave") {
-				wardrobeAssignment.push({text: `but gives up and goes naked after the other slaves constantly tear whatever ${he}'s wearing off ${him}.`, clothes: "no clothing"});
-				if(isItemAccessible("Western clothing")) {
-					wardrobeAssignment.push({text: `and chooses a pair of crotchless chaps so your other slaves don't have to waste time undressing ${him}.`, clothes: "Western clothing"});
-				}
-				if(slave.fetish == "submissive") {
-					wardrobeAssignment.push({text: `and chooses to slip on a pair of spats and a tank top in the hopes that ${he} gets to be a violated schoolgirl.`, clothes: "spats and a tank top"});
-					wardrobeAssignment.push({text: `and chooses to slip on a schoolgirl outfit in the hope that ${he} gets held down and raped.`, clothes: "a schoolgirl outfit"});
-					wardrobeAssignment.push({text: `and chooses to wear the sluttiest outfit available to make it clear what ${he} wants done to ${him}.`, clothes: "a slutty outfit"});
-				}
-			} else if(slave.assignment == "work a glory hole") {
-				wardrobeAssignment.push({text: `but doesn't bother wearing anything, since no one can see ${his} clothing when ${he}'s immured inside a glory hole.`, clothes: "no clothing"});
-			} else if(slave.assignment == "take classes" || slave.assignment == "learn in the schoolroom") {
-				wardrobeAssignment.push({text: "and wears a schoolgirl outfit, since it seems most appropriate.", clothes: "a schoolgirl outfit"});
-				wardrobeAssignment.push({text: `and wears a cheerleader outfit, since ${he} might as well be one of the popular girls.`, clothes: "a cheerleader outfit"});
-				if(isItemAccessible("conservative clothing")) {
-					wardrobeAssignment.push({text: `and wears normal clothing to not distract from ${his} lessons.`, clothes: "conservative clothing"});
-				}
-			} else if((slave.assignment == "whore") || (slave.assignment == "work in the brothel")) {
-				 if(slave.belly >= 5000 && isItemAccessible("attractive lingerie for a pregnant woman")) {
-					wardrobeAssignment.push({text: `and wears pretty lingerie to show off ${his} merchandise and accentuate ${his} pregnancy while still looking a little classy.`, clothes: "attractive lingerie for a pregnant woman"});
-				}
-				wardrobeAssignment.push({text: `and wears pretty lingerie to show off ${his} merchandise and still look a little classy.`, clothes: "attractive lingerie"});
-				if(isItemAccessible("harem gauze")) {
-					wardrobeAssignment.push({text: `and dresses ${himself} with harem gauze to add an exotic charm to ${his} display.`, clothes: "harem gauze"});
-				}
-				if(isItemAccessible("a kimono")) {
-					wardrobeAssignment.push({text: `and wraps ${himself} in a kimono to add some elegance to ${his} display.`, clothes: "a kimono"});
-				}
-				wardrobeAssignment.push({text: `and adorns ${himself} in fine dress to show off how much of a high class whore ${he} is.`, clothes: "a slave gown"});
-				wardrobeAssignment.push({text: `and dresses ${himself} in a slutty suit to show ${he}'s in it for the ¤.`, clothes: "slutty business attire"});
-				wardrobeAssignment.push({text: `and wears a flattering mini dress to really strut ${his} stuff.`, clothes: "a mini dress"});
-			} else if(slave.assignment == "serve the public" || slave.assignment == "serve in the club") {
-				wardrobeAssignment.push({text: "and wears string lingerie to look fun and fuckable.", clothes: "a string bikini"});
-				wardrobeAssignment.push({text: "and throws together the sluttiest outfit since if you're going to slut you might as well go all out.", clothes: "a slutty outfit"});
-				wardrobeAssignment.push({text: `and tosses on a slutty suit that screams ${he} needs a good fuck after a long day.`, clothes: "slutty business attire"});
-				wardrobeAssignment.push({text: `and dresses up as a slutty nurse; ${he} has just the technique to cure penile swelling.`, clothes: "a slutty nurse outfit"});
-				wardrobeAssignment.push({text: "and wears a cheerleader outfit to look energetic and fuckable.", clothes: "a cheerleader outfit"});
-				if(isItemAccessible("a bunny outfit")) {
-					wardrobeAssignment.push({text: `and slips into a teddy to add some class to ${his} post.`, clothes: "a bunny outfit"});
-				}
-				wardrobeAssignment.push({text: `and dresses up as a succubus to clearly advertise ${his} promiscuity.`, clothes: "a succubus outfit"});
-				if(slave.bellyPreg >= 10000) {
-					wardrobeAssignment.push({text: `and struggles into a schoolgirl outfit. ${His} gravid belly just screams that ${he} is a slutty little student who cares more for dick than lessons.`, clothes: "a succubus outfit"});
-				}
-			} else if(slave.assignment == "be a servant" || slave.assignment == "work as a servant") {
-				if(slave.energy > 95 || slave.need > 100) {
-					wardrobeAssignment.push({text: `and wears a skimpy maid outfit hoping that someone sneaks up behind ${him} as ${he} works and fulfills ${his} desires.`, clothes: "a slutty maid outfit"});
-				} else if(slave.energy > 80) {
-					wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
-					wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work around the penthouse.`, clothes: "a nice maid outfit"});
-					wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
-				} else {
-					wardrobeAssignment.push({text: `and wears a sturdy maid outfit, since anything else might be damaged by ${his} hard work around the penthouse.`, clothes: "a nice maid outfit"});
-					wardrobeAssignment.push({text: `and wears a skimpy maid outfit to tempt anyone watching ${his} work.`, clothes: "a slutty maid outfit"});
-				}
-			}
-			
-			/* Chooses clothes according to FS*/
-			if(ArcologyZero.FSEgyptianRevivalist > 0) {
-				wardrobeFS.push({text: "and complements it with golden bangles, since no clothing is necessary for a sex slave in your warm and sunny arcology.", clothes: "slutty jewelry"});
-			} else if(ArcologyZero.FSRomanRevivalist > 0) {
-				wardrobeFS.push({text: "and wears a toga to take part in your Roman revivalism.", clothes: "a toga"});
-			} else if(ArcologyZero.FSEdoRevivalist > 0) {
-				wardrobeFS.push({text: "and wears a kimono, overjoyed that such lovely clothing is now appropriate.", clothes: "a kimono"});
-			} else if(ArcologyZero.FSArabianRevivalist > 0) {
-				wardrobeFS.push({text: "and wears a harem outfit to look like a slave girl fit for a Sultan.", clothes: "harem gauze"});
-			} else if(ArcologyZero.FSChineseRevivalist > 0) {
-				wardrobeFS.push({text: "and wears a brief qipao to show off and look Chinese at the same time.", clothes: "a slutty qipao"});
-			} else if(ArcologyZero.FSAztecRevivalist > 0) {
-				wardrobeFS.push({text: `and drapes a huipil over ${himself} to fit in with your Aztec revivalism.`, clothes: "a huipil"});
-			}
-			if(ArcologyZero.FSGenderFundamentalist > 0) {
-				wardrobeFS.push({text: "and wears a cheerleader outfit to look like a hot slut.", clothes: "a cheerleader outfit"});
-				wardrobeFS.push({text: "and wears a bunny outfit to look like a slut from the glory days.", clothes: "a bunny outfit"});
-				if(slave.bellyPreg >= 5000) {
-					wardrobeFS.push({text: `but decides to wear nothing at all; ${he}'s already pregnant, so ${he} just needs to be barefoot and naked to complete ${his} look.`, clothes: "no clothing"});
-				}
-			} else if(ArcologyZero.FSGenderRadicalist > 0) {
-				wardrobeFS.push({text: `and eagerly slips into a skimpy maid outfit so ${he} can take advantage of its short skirt and ${his} lack of underwear`, clothes: "a slutty maid outfit"});
-				wardrobeFS.push({text: `and wears a cheerleader outfit that clearly shows off ${his} ass.`, clothes: "a cheerleader outfit"});
-				wardrobeFS.push({text: "and settles for some sexy succubutt.", clothes: "a succubus outfit"});
-			}
-			if(ArcologyZero.FSPaternalist > 0) {
-				wardrobeFS.push({text: "and wears conservative clothing, as permitted by your paternalism.", clothes: "conservative clothing"});
-				if(isItemAccessible("stretch pants and a crop-top")) {
-					wardrobeAssignment.push({text: `and wears the most comfortable stretch pants ${he} can find.`, clothes: "stretch pants and a crop-top"});
-				}
-			} else if(ArcologyZero.FSDegradationist > 0) {
-				wardrobeFS.push({text: `and wears chains, to degrade ${himself} as required by your societal goals.`, clothes: "chains"});
-			}
-			if(ArcologyZero.FSMaturityPreferentialist > 0) {
-				if(slave.visualAge >= 30) {
-					wardrobeFS.push({text: "and wears a slutty suit to look like the ideal horny older woman.", clothes: "slutty business attire"});
-					wardrobeFS.push({text: `and wears only an apron to make ${himself} seem more matronly.`, clothes: "an apron"});
-				} else {
-					wardrobeFS.push({text: "and wears a formal suit to look more mature.", clothes: "nice business attire"});
-				}
-			} else if(ArcologyZero.FSYouthPreferentialist > 0) {
-				wardrobeFS.push({text: "and wears a schoolgirl outfit to look younger.", clothes: "a schoolgirl outfit"});
-				wardrobeFS.push({text: "and wears a cheerleader outfit to look younger and more energetic.", clothes: "a cheerleader outfit"});
-				wardrobeFS.push({text: "and wears spats and a tank top to look younger and more energetic.", clothes: "spats and a tank top"});
-			}
-			if(ArcologyZero.FSPhysicalIdealist > 0) {
-				wardrobeFS.push({text: `and coats ${himself} in body oil to show off how ${he}'s part of your physical idealism.`, clothes: "body oil"});
-				wardrobeFS.push({text: `and slips into some spats for ${his} next workout.`, clothes: "spats and a tank top"});
-			} else if(ArcologyZero.FSHedonisticDecadence > 0) {
-				wardrobeFS.push({text: "and throws on a very casual getup.", clothes: "stretch pants and a crop-top"});
-				wardrobeFS.push({text: "but decides against putting forth the effort and goes nude.", clothes: "no clothing"});
-			}
-			if(ArcologyZero.FSPastoralist > 0) {
-				wardrobeFS.push({text: `and wears Western clothing, since ${he} thinks it fits with pastoralism.`, clothes: "Western clothing"});
-				wardrobeFS.push({text: `and wears a swimsuit that leaves ${his} breasts uncovered.`, clothes: "a monokini"});
-				if(slave.lactation > 0) {
-					wardrobeFS.push({text: "and dresses up as a slutty wet nurse.", clothes: "a slutty nurse outfit"});
-				}
-				wardrobeFS.push({text: `but decides to let ${his} breasts be free. Clothes will just get in the way.`, clothes: "no clothing"});
-			}
-			if(ArcologyZero.FSBodyPurist > 0) {
-				wardrobeFS.push({text: `and wears a leotard to show off the purity of ${his} body.`, clothes: "a leotard"});
-				wardrobeFS.push({text: `but decides ${his} body is too nice to hide with clothing.`, clothes: "no clothing"});
-			} else if(ArcologyZero.FSTransormationFetishest > 0) {
-				if(isItemAccessible("body oil")) {
-					wardrobeAssignment.push({text: `and coats ${his} assets in body oil to give them some extra shine.`, clothes: "body oil"});
-				}
-				wardrobeFS.push({text: `and decides squeezing into a latex suit will only complement ${his} unnatural appearance.`, clothes: "restrictive latex"});
-			}
-			if(ArcologyZero.FSAssetExpansioninst > 0) {
-				wardrobeFS.push({text: "and decides to dress up like a young man's wet dream.", clothes: "a succubus outfit"});
-				wardrobeFS.push({text: `and decides to wear a skimpy bikini to make ${his} assets look even larger.`, clothes: "a string bikini"});
-				wardrobeFS.push({text: `and decides to throw together a slutty outfit that highlight ${his} assets.`, clothes: "a slutty outfit"});
-				wardrobeFS.push ({text: "and decides to wear a monokini that clings to the assets it actually does conceal.", clothes: "a monokini"});
-			} else if(ArcologyZero.FSSlimnessEnthusiast > 0) {
-				if(slave.boobs < 300) {
-					wardrobeFS.push({text: `and wears a string bikini to show off just how flat ${he} is.`, clothes: "a string bikini"});
-				}
-				if(slave.boobs < 600 && slave.butt < 3) {
-					wardrobeFS.push({text: `and wears a leotard to show off ${his} lithe body.`, clothes: "a leotard"});
-					wardrobeFS.push({text: `and wears a form fitting bodysuit to show off ${his} lithe figure.`, clothes: "a comfortable bodysuit"});
-					wardrobeFS.push({text: `and wears spats to hug ${his} tight butt.`, clothes: "spats and a tank top"});
-					wardrobeFS.push({text: `and wears an apron that covers ${his} front while leaving ${his} rear free.`, clothes: "an apron"});
-				} else {
-					wardrobeFS.push({text: `and squeezes into a form fitting bodysuit in the hopes that it squishes down ${his} assets.`, clothes: "restrictive latex"});
-				}
-			}
-			
-			/*Chooses clothes according to fetishes, quirks, etc.*/
-			if(slave.attrXY > 70) {
-				if(slave.attrKnown == 1) {
-					wardrobeTastes.push({text: "and wears a schoolgirl outfit to show off a some T&A to attract boys.", clothes: "a schoolgirl outfit"});
-					wardrobeTastes.push({text: "and wears nothing but pretty lingerie to attract boys.", clothes: "attractive lingerie"});
-					wardrobeTastes.push({text: "and selects a slutty outfit that's sure to have men drooling.", clothes: "a slutty outfit"});
-					if(slave.butt > 3){
-						wardrobeTastes.push({text: `and slips on some cutoffs that are sure to have men checking out ${his} ass.`, clothes: "cutoffs and a t-shirt"});
-					}
-					if(isItemAccessible("a bunny outfit")) {
-						wardrobeAssignment.push({text: `and slips into a bunny outfit that ${he} knows will have men lining up.`, clothes: "a bunny outfit"});
-					}
-					if(slave.boobs > 800) {
-						wardrobeTastes.push({text: `and dresses up as a busty succubus that pulls eyes to ${his} chest and leaves pants feeling tight.`, clothes: "a succubus outfit"});
-					}
-				} else {
-					wardrobeTastes.push({text: "and selects a schoolgirl outfit that shows off some T&A.", clothes: "a schoolgirl outfit"});
-					wardrobeTastes.push({text: `and wears pretty lingerie that shows off ${his} body.`, clothes: "attractive lingerie"});
-					wardrobeTastes.push({text: "and selects a slutty outfit that's sure to draw attention.", clothes: "a slutty outfit"});
-					if(slave.butt > 3){
-						wardrobeTastes.push({text: `and slips on some cutoffs that shows off ${his} ass.`, clothes: "cutoffs and a t-shirt"});
-					}
-					if(isItemAccessible("a bunny outfit")) {
-						wardrobeAssignment.push({text: `and slips into a bunny outfit that hugs ${his} curves.`, clothes: "a bunny outfit"});
-					}
-					if(slave.boobs > 800) {
-						wardrobeTastes.push({text: "and dresses up as a busty succubus that's sure to draw eyes.", clothes: "a succubus outfit"});
-					}
-				}
-			}
-			if(slave.attrXX > 70) {
-				if(slave.attrKnown == 1) {
-					wardrobeTastes.push({text: "and wears a fashionable gown, since girls appreciate nice clothes.", clothes: "a slave gown"});
-					wardrobeTastes.push({text: "and wears nothing but pretty lingerie to give the girls a show.", clothes: "attractive lingerie"});
-					wardrobeTastes.push({text: "and wears a nice suit, since girls appreciate nice clothes.", clothes: "nice business attire"});
-				} else {
-					wardrobeTastes.push({text: "and wears a fashionable gown.", clothes: "a slave gown"});
-					wardrobeTastes.push({text: `and wears pretty lingerie that shows off ${his} body.`, clothes: "attractive lingerie"});
-					wardrobeTastes.push({text: "and wears a nice suit, the reasons not entirely clear to you.", clothes: "nice business attire"});
-				}
-			}
-			
-			/* need */
-			if(slave.need > 90) {
-				wardrobeTastes.push({text: `but goes naked. ${He} needs sex now and clothing will only get in the way.`, clothes: "no clothing"});
-				wardrobeTastes.push({text: `and throws on a slutty suit. ${He} hopes that it gets the point across that ${he} needs sex now.`, clothes: "slutty business attire"});
-				wardrobeTastes.push({text: `and dons a slutty nurse outfit. ${He}'s been infected and the only cure is a strong dicking.`, clothes: "a slutty nurse outfit"});
-				wardrobeTastes.push({text: `and dresses up as a slutty maid. Maybe if ${he} does ${his} job poorly enough, someone will bend ${him} over and fuck some sense into ${him}.`, clothes: "a slutty maid outfit"});
-				wardrobeTastes.push({text: `and dresses up as a succubus in the hopes it screams that ${he} needs sex now.`, clothes: "a succubus outfit"});
-			}
-			
-			/* quirks n flaws */
-			if(slave.behavioralQuirk == "sinful") {
-				wardrobeTastes.push({text: "and dresses up like a succubus because it makes $object feel naughty.", clothes: "a succubus outfit"});
-			} else if(slave.behavioralQuirk == "fitness") {
-				wardrobeTastes.push({text: `and wears spats and a tank top to give ${himself} a sporty look.`, clothes: "spats and a tank top"});
-			}
-
-			/* age stuff */
-			if(slave.actualAge < 10) {
-				wardrobeTastes.push({text: `and puts on a pretty dress so ${he} can be a princess.`, clothes: "a ball gown"});
-				wardrobeTastes.push({text: `and dresses up like a cheerleader since ${he} thinks it looks cute.`, clothes: "a cheerleader outfit"});
-				if(isItemAccessible("a kimono")) {
-					wardrobeAssignment.push({text: `and wraps ${himself} in a kimono, since it feels so good on ${his} skin.`, clothes: "a kimono"});
-				}
-			}
-			
-			/* fetishes */
-			if(slave.fetishKnown == 1) {
-				if(slave.fetish == "submissive") {
-					wardrobeTastes.push({text: `and wears restrictive latex to encourage others to dominate ${him}.`, clothes: "restrictive latex"});
-					wardrobeTastes.push({text: `and wears shibari ropes to encourage others to dominate ${him}.`, clothes: "shibari ropes"});
-				} else if(slave.fetish == "dom") {
-					wardrobeTastes.push({text: `and wears a handsome suit, since ${he} likes other slaves to look up to ${him}.`, clothes: "nice business attire"});
-					wardrobeTastes.push({text: "and wears a full body latex catsuit to look the part of the whip cracking dom.", clothes: "a latex catsuit"});
-				} else if(slave.fetish == "masochist") {
-					wardrobeTastes.push({text: `and wears painfully restrictive bondage gear, since ${he} likes the torment.`, clothes: "uncomfortable straps"});
-					if(isItemAccessible("chains")) {
-						wardrobeAssignment.push({text: `and wears painfully tight chains, since ${he} likes the torment.`, clothes: "chains"});
-					}
-				} else if(slave.fetish == "sadist") {
-					wardrobeTastes.push({text: `and wears an elegant gown, since ${he} thinks it makes ${him} look the part of the femme fatale.`, clothes: "a slave gown"});
-					wardrobeTastes.push({text: `and wears a scalemail bikini, since ${he} thinks it makes ${him} look fierce.`, clothes: "a scalemail bikini"});
-				} else if(slave.fetish == "cumslut") {
-					wardrobeTastes.push({text: `and wears cutoffs and a t-shirt, because the fun yet relatively conservative outfit seems to encourage others to ask ${him} for blowjobs.`, clothes: "cutoffs and a t-shirt"});
-				} else if(slave.fetish == "humiliation") {
-					wardrobeTastes.push({text: `and wears leather straps with rings over ${his} private parts because ${he} enjoys the embarrassment such a humiliating outfit causes ${him}.`, clothes: "uncomfortable straps"});
-				} else if(slave.fetish == "buttslut") {
-					wardrobeTastes.push({text: `and wears nothing other than slutty bangles, because ${he} likes to catch the eye without putting anything between cocks and ${his} rear end.`, clothes: "slutty jewelry"});
-				} else if(slave.fetish == "pregnancy") {
-					wardrobeTastes.push({text: `and wears a short maid dress, because ${he} wants to look motherly and fuckable at the same time.`, clothes: "a slutty maid outfit"});
-					if(isItemAccessible("a maternity dress") && canGetPregnant(slave)) {
-						wardrobeAssignment.push({text: "and wears a maternity dress in the hope someone fills out its middle.", clothes: "a maternity dress"});
-					}
-				} else if(slave.fetish == "boobs") {
-					wardrobeTastes.push({text: `and wears a cheerleader outfit, since ${he} loves the way it hugs ${his} tits as ${he} moves.`, clothes: "a cheerleader outfit"});
-					wardrobeTastes.push({text: `and wears a monokini, since ${he} loves how it leaves ${his} breasts totally bare.`, clothes: "a monokini"});
-				}
-			} else {
-				if(slave.fetish == "submissive") {
-					wardrobeTastes.push({text: "and strangely opts for restrictive latex.", clothes: "restrictive latex"});
-					wardrobeTastes.push({text: "and strangely opts for shibari ropes.", clothes: "shibari ropes"});
-				} else if(slave.fetish == "dom") {
-					wardrobeTastes.push({text: `and wears a handsome suit; ${he} seems to think highly of ${himself} in it.`, clothes: "nice business attire"});
-					wardrobeTastes.push({text: `and wears a full body latex catsuit; there is a strange look on ${his} face as ${he} wears it.`, clothes: "a latex catsuit"});
-				} else if(slave.fetish == "masochist") {
-					wardrobeTastes.push({text: "and strangely opts for painfully restrictive bondage gear.", clothes: "uncomfortable straps"});
-					if(isItemAccessible("chains")) {
-						wardrobeAssignment.push({text: "and strangely opts for painfully tight chains.", clothes: "chains"});
-					}
-				} else if(slave.fetish == "sadist") {
-					wardrobeTastes.push({text: "and wears an elegant gown for some reason.", clothes: "a slave gown"});
-					wardrobeTastes.push({text: "and wears a scalemail bikini; an odd choice.", clothes: "a scalemail bikini"});
-				} else if(slave.fetish == "cumslut") {
-					wardrobeTastes.push({text: `and wears cutoffs and a t-shirt; ${he} can't stop licking ${his} lips.`, clothes: "cutoffs and a t-shirt"});
-				} else if(slave.fetish == "humiliation") {
-					wardrobeTastes.push({text: `and strangely opts for leather straps with rings over ${his} private parts.`, clothes: "uncomfortable straps"});
-				} else if(slave.fetish == "buttslut") {
-					wardrobeTastes.push({text: `and wears nothing other than slutty bangles, an odd choice; ${his} ass is completely exposed.`, clothes: "slutty jewelry"});
-				} else if(slave.fetish == "pregnancy") {
-					wardrobeTastes.push({text: `and wears a short maid dress; you frequently notice ${him} observing ${his} stomach.`, clothes: "a slutty maid outfit"});
-					if(isItemAccessible("a maternity dress") && canGetPregnant(slave)) {
-						wardrobeAssignment.push({text: `and wears a maternity dress even though ${he} isn't pregnant.`, clothes: "a maternity dress"});
-					}
-				} else if(slave.fetish == "boobs") {
-					wardrobeTastes.push({text: `and wears a cheerleader outfit; ${he} seems to enjoy jiggling ${his} breasts in it.`, clothes: "a cheerleader outfit"});
-					wardrobeTastes.push({text: `and strangely decides to wear a monokini, which leaves ${his} breasts totally bare.`, clothes: "a cheerleader outfit"});
-				}
-			}
-
-			/* energy */
-			if(slave.energy > 95) {
-				wardrobeTastes.push({text: `but goes nude, since as a nympho ${he} gets plenty of attention anyway, and considers clothes an unnecessary hindrance.`, clothes: "no clothing"});
-			}
-
-			/* pregnancy */
-			if(slave.belly >= 5000) {
-				wardrobeTastes.push({text: `and wears pretty lingerie to show off ${his} merchandise while giving ${his} protruding belly plenty of room to hang free.`, clothes: "attractive lingerie"});
-				if(isItemAccessible("attractive lingerie for a pregnant woman") && slave.energy > 70) {
-					wardrobeTastes.push({text: `and wears pretty lingerie to show off ${his} merchandise and accentuate ${his} pregnancy while giving it plenty of room to hang free.`, clothes: "attractive lingerie for a pregnant woman"});
-				} else if(isItemAccessible("a maternity dress")) {
-					wardrobeTastes.push({text: `and wears a conservative dress with plenty of give for ${his} belly to stretch it.`, clothes: "a maternity dress"});
-				}
-				wardrobeTastes.push({text: `and wears string lingerie to look fun and fuckable while giving ${his} protruding belly plenty of room to hang free.`, clothes: "a string bikini"});
-			} else {
-				wardrobeTastes.push({text: `and wears string lingerie to show off ${his} body.`, clothes: "a string bikini"});
-			}
-		}
-		/*Separated in three categories in case you want to, say, increase the probability of choosing _wardrobeAssignment to look more professional*/
-		if(wardrobeAssignment.length > 0) {
-			for (let i = 0; i < wardrobeAssignment.length; i++) {
-				clothing.push(wardrobeAssignment[i]);
-			}
-		}
-		if(wardrobeFS.length > 0) {
-			for (let i = 0; i < wardrobeFS.length; i++) {
-				clothing.push(wardrobeFS[i]);
-			}
-		}
-		if(wardrobeTastes.length > 0) {
-			for (let i = 0; i < wardrobeTastes.length; i++) {
-				clothing.push(wardrobeTastes[i]);
-			}
-		}
-		selection = jsEither(clothing);
-	}
-
-	return selection;
-};
-
-window.todaysShoes = function(slave) {
-	var ArcologyZero = State.variables.arcologies[0];
-	var player = State.variables.PC;
-	var shoes = [];
-	
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
-	
-	if(slave.fetish == 'mindbroken') {
-		if(slave.amp != 1 && slave.heels == 1) {
-			shoes.push({text: `${He} finds ${he} can inexplicably walk if ${he} wears heels; a daily lesson for ${him}, as ${he} forgets shortly after leaving.`, shoes: jsEither(["heels", "pumps", "extreme heels", "boots"])});
-		}
-		shoes.push({text: `${He} vaguely remembers putting things on ${his} feet, so ${he} does.`, shoes: jsEither(["heels", "pumps", "extreme heels", "boots", "flats"])});
-		shoes.push({text: `${He} entered without shoes, and will leave the same.`, shoes: "none"});
-	} else if(slave.devotion <= 20) {
-		if(slave.heels == 0) {
-			shoes.push({text: "and wears comfortable flats,", shoes: "flats"});
-		} else {
-			shoes.push({text: `and angrily wears the heels ${he} needs to walk,`, shoes: "heels"});
-		}
-	} else {
-		if(slave.fetishKnown == 1 && slave.fetish == "dom") {
-			shoes.push({text: `${He} wears boots to look like a proper dominant.`, shoes: "boots"});
-		} else if(slave.fetishKnown == 1 && slave.fetish == "sadist") {
-			shoes.push({text: `${He} wears boots, since ${he} thinks they make ${him} look dangerous.`, shoes: "boots"});
-		} else if(slave.fetishKnown == 1 && slave.fetish == "masochist") {
-			shoes.push({text: `${He} wears painfully tall heels, since ${he} enjoys the twinge of pain with each step.`, shoes: "extreme heels"});
-		} else if(slave.heels == 1) {
-			shoes.push({text: `${He} wears the heels ${he} needs to walk.`, shoes: "heels"});
-		} else if(slave.fetishKnown == 1 && slave.fetish == "pregnancy" && slave.bellyPreg >= 500) {
-			shoes.push({text: `${He} goes barefoot to complement ${his} pregnancy.`, shoes: "none"});
-		} else if(slave.fetishKnown == 1 && slave.fetish == "none") {
-			shoes.push({text: `${He} wears comfortable flats, since ${he} doesn't have a fetish to show off.`, shoes: "flats"});
-		} else if(slave.actualAge < 13){
-			shoes.push({text: `${He} puts on boots so ${he} can stomp around.`, shoes: "boots"});
-			shoes.push({text: `${He} playfully puts on heels to be like all the other girls.`, shoes: "heels"});
-			shoes.push({text: `${He} wears flats as they are comfortable and easy to take on and off.`, shoes: "flats"});
-			shoes.push({text: `Going barefoot is fun, so no shoes for ${him}.`, shoes: "none"});
-		} else {
-			shoes.push({text: `${He} wears heels to strut ${his} stuff.`, shoes: "heels"});
-			shoes.push({text: `${He} wears comfortable flats to take it easy.`, shoes: "flats"});
-			shoes.push({text: `${He} goes barefoot to show off ${his} toes.`, shoes: "none"});
-		}
-	}
-	return jsEither(shoes);
-};
-
-window.todaysCollar = function(slave) {
-	var ArcologyZero = State.variables.arcologies[0];
-	var player = State.variables.PC;
-	var neck = [];
-	
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
-	
-	if(slave.fetish == 'mindbroken') {
-		
-	} else if(slave.devotion <= 20) {
-		
-	} else {
-		if(ArcologyZero.FSEgyptianRevivalist > 0) {
-			neck.push({text: "dons a wesekh to support your ancient Egyptian pretensions,", collar: "ancient Egyptian"});
-		}
-		if(slave.fetish == "masochist") {
-			neck.push({text: `dons a tight steel collar around ${his} neck,`, collar: "tight steel"});
-			neck.push({text: "dons a painful leather collar,", collar: "uncomfortable leather"});
-			neck.push({text: "dons a painfully tight neck corset,", collar: "neck corset"});
-		} else if(slave.fetish == "pregnancy" && (canGetPregnant(slave) || slave.pregKnown == 1)) {
-			neck.push({text: `dons a digital display that tells everything about ${his} womb,`, collar: "preg biometrics"});
-		} else if(slave.fetish == "boobs" && slave.boobs >= 1000) {
-			neck.push({text: `dons a cowbell to draw attention to ${his} luscious udders,`, collar: "leather with cowbell"});
-		}
-		neck.push({text: `decides ${his} neck needs no accenting,`, collar: "none"});
-		neck.push({text: "dons some pretty jewelry,", collar: "pretty jewelry"});
-		neck.push({text: "dons a lovely gold collar,", collar: "heavy gold"});
-		neck.push({text: `dons a simple silk ribbon around ${his} neck,`, collar: "silk ribbon"});
-	}
-	return jsEither(neck);
-};
-
-window.todaysCorset = function(slave) {
-	var ArcologyZero = State.variables.arcologies[0];
-	var player = State.variables.PC;
-	var belly = [];
-	var empathyBellies = ["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"];
-	
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
-	
-	if(slave.fetish == 'mindbroken') {
-		if(ArcologyZero.FSRepopulationFocus > 0 && slave.belly < 1500) {
-			if(slave.weight > 130) {
-				belly.push({text: `${He} notices the fake bellies; since every girl ${he} has ever met has a rounded middle, it's only natural ${he} is compelled to wear one. ${He} struggles to fit it around ${his} huge gut, only stopping when another slave takes it away from ${him} so ${he} moves on and stops blocking the wardrobe with ${his} fat ass.`, bellyAccessory: "none"});
-			} else {
-				belly.push({text: `${He} notices the fake bellies; since every girl ${he} has ever met has a rounded middle, it's only natural ${he} is compelled to wear one.`, bellyAccessory: jsEither(["a small empathy belly", "a medium empathy belly", "a large empathy belly", "a huge empathy belly"])});
-			}
-		} else {
-			belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/
-		}
-	} else if(slave.devotion <= 20) {
-		
-	} else {
-		if(ArcologyZero.FSRepopulationFocus > 0 && slave.belly < 1500 && slave.sexualFlaw != "breeder") {
-			if(slave.weight > 130) {
-				belly.push({text: `struggles to fit a fake pregnant belly around ${his} gut before giving up and hoping ${he} can pass as fecund,`, bellyAccessory: "none"});
-			} else {
-				belly.push({text: "straps on a fake pregnant belly to fit in with all the other pregnant girls,", bellyAccessory: jsEither(["a small empathy belly", "a medium empathy belly", "a large empathy belly"])});
-			}
-		} else if(slave.belly < 1500 && slave.fetish == "pregnancy" && isItemAccessible("a small empathy belly") && slave.sexualFlaw != "breeder" && slave.weight <= 130) {
-			if(slave.fetishStrength <= 30) {
-				belly.push({text: `straps on a 1st trimester belly to sate ${his} curiosity,`, bellyAccessory: "a small empathy belly"});
-				belly.push({text: `straps on a 2nd trimester belly to sate ${his} curiosity,`, bellyAccessory: "a medium empathy belly"});
-				belly.push({text: `straps on a 3rd trimester belly to sate ${his} curiosity,`, bellyAccessory: "a large empathy belly"});
-			} else if(slave.fetishStrength <= 95) {
-				belly.push({text: `straps on a 3rd trimester belly to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a large empathy belly"});
-			} else if(slave.fetishStrength > 95) {
-				belly.push({text: `straps on the largest belly ${he} can find to satisfy ${his} pregnancy fetish,`, bellyAccessory: "a huge empathy belly"});
-			}
-		} else if(empathyBellies.includes(slave.bellyAccessory) && slave.fetish != "pregnancy") {
-			belly.push({text: `removes ${his} fake belly, since ${he} dislikes it,`, bellyAccessory: "none"});
-		} else if(empathyBellies.includes(slave.bellyAccessory) && slave.sexualFlaw == "breeder") {
-			belly.push({text: `pulls ${his} fake belly off, disgusted by it,`, bellyAccessory: "none"});
-		} else {
-			belly.push({text: "", bellyAccessory: slave.bellyAccessory}); /*compatibility for no output, will likely get deprecated in the future as content is added*/
-		}
-	}
-	return jsEither(belly);
-};
diff --git a/src/js/saChoosesOwnClothes.tw b/src/js/saChoosesOwnClothes.tw
deleted file mode 100644
index d257adbd98a..00000000000
--- a/src/js/saChoosesOwnClothes.tw
+++ /dev/null
@@ -1,80 +0,0 @@
-:: saChoosesOwnClothes [script]
-
-window.saChoosesOwnClothes = function saChoosesOwnClothes(slave) {
-	"use strict";
-	const V = State.variables;
-	let r = "";
-	if (slave.choosesOwnClothes !== 1) return r;
-	const pronouns = getPronouns(slave);
-	const he = pronouns.pronoun;
-	const him = pronouns.object;
-	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
-	const himself = pronouns.objectReflexive;
-	const boy = pronouns.noun;
-	const He = capFirstChar(he);
-	const His = capFirstChar(his);
-
-	const belly_accessory = slave.bellyAccesory;
-
-	if (slave.fetish === "mindbroken") {
-		let corsetChoice = todaysCorset(slave);
-		let clothingChoice = todaysOutfit(slave);
-		slave.bellyAccesory = corsetChoice.bellyAccesory;
-		slave.clothes = clothingChoice.clothes;
-		r += `${He} is fundamentally broken, but still follows some faint memories of standing within the wardrobe. `;
-		if (slave.amp !== 1) {
-			let shoeChoice = todaysShoes(slave);
-			r += `${shoeChoice.text} `;
-			slave.shoes = shoeChoice.shoes;
-		}
-		r += `${corsetChoice.text} Faced with so many choices and no thought on the matter; ${clothingChoice.text}. `;
-	} else if (slave.devotion <= 20) {
-		let clothingChoice = todaysOutfit(slave);
-		slave.clothes = clothingChoice.clothes;
-		r += `${clothingChoice.text} `;
-		if (slave.amp !== 1) {
-			let shoeChoice = todaysShoes(slave);
-			r += `${shoeChoice.text} `;
-			slave.shoes = shoeChoice.shoes;
-		}
-		r += `<span class="mediumorchid">increasing ${his} independence.</span>`;
-		slave.devotion -= 5;
-	} else {
-		let neckChoice = todaysCollar(slave);
-		let corsetChoice = todaysCorset(slave);
-		let clothingChoice = todaysOutfit(slave);
-		slave.collar = neckChoice.collar;
-		slave.bellyAccesory = corsetChoice.bellyAccesory;
-		slave.clothes = clothingChoice.clothes;
-		r += `${He} <span class="hotpink">loves</span> being able to dress ${himself}, ${neckChoice.text} ${corsetChoice.text} ${clothingChoice.text} `;
-		slave.devotion += 1;
-
-		if (V.arcologies[0].FSRestart !== "unset" && slave.choosesOwnChastity == 1) {
-			if (slave.vagina > -1 && slave.breedingMark === 1 && (slave.vaginalAccessory === "chastity belt" || slave.vaginalAccessory === "combined chastity")) {
-				r += `${He} unfastens ${his} chastity belt knowing full well ${his} role in life is to carry ${his} ${WrittenMaster(slave)}'s children. `;
-				slave.vaginalAccessory = "none";
-			} else if (slave.vagina > -1 && slave.ovaries === 1 && slave.preg === 0 && slave.vaginalAccessory !== "chastity belt") {
-				r += `${He} also affixes a chastity belt over ${his} vagina to discourage use of ${his} reproductive organ. `;
-				slave.vaginalAccessory = "chastity belt";
-			} else if (slave.vagina > -1 && (slave.ovaries === 0 || slave.preg < -1) && slave.vaginalAccessory === "chastity belt") {
-				r += `${He} removes ${his} chastity belt since no matter how hard someone tries, ${he} can never become pregnant. `;
-				slave.vaginalAccessory = "none";
-			}
-			if (slave.dick > 0 && slave.balls > 0 && slave.dickAccessory !== "chastity") {
-				r += `${He} also affixes a chastity cage onto ${his} dick to discourage use of ${his} reproductive organ. `;
-				slave.dickAccessory = "chastity";
-			} else if (slave.dick > 0 && slave.balls === 0 && slave.dickAccessory === "chastity") {
-				r += `${He} removes ${his} chastity cage since even if ${he} could get erect, ${he} only shoots blanks. `;
-				slave.dickAccessory = "none";
-			}
-		}
-
-		if (slave.amp !== 1) {
-			let shoeChoice = todaysShoes(slave);
-			r += `${shoeChoice.text}`;
-			slave.shoes = shoeChoice.shoes;
-		}
-	}
-	return r;
-};
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index 281415ae38b..b799617fc53 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -6,13 +6,34 @@
 	/* rate of decay*/
 	<<if $slaves[$i].pornPrestige > 1>> /* 50k */
 		<<set _decayRate = 5000>>
-		<<set _viewership = ((500/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending)+($slaves[$i].face*4)+($slaves[$i].prestige*10)-(_decayRate))>>
+		<<if $slaves[$i].fuckdoll > 0>>
+			<<set _face = 50>>
+		<<elseif $slaves[$i].collar == "porcelain mask">>
+			<<set _face = 20>>
+		<<else>>
+			<<set _face = $slaves[$i].face*4>>
+		<</if>>
+		<<set _viewership = ((500/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending)+(_face)+($slaves[$i].prestige*10)-(_decayRate))>>
 	<<elseif $slaves[$i].pornPrestige > 0>> /* 10k */
 		<<set _decayRate = 500>>
-		<<set _viewership = ((900/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/15)+($slaves[$i].face*2)+($slaves[$i].prestige*250)-(_decayRate))>>
+		<<if $slaves[$i].fuckdoll > 0>>
+			<<set _face = 20>>
+		<<elseif $slaves[$i].collar == "porcelain mask">>
+			<<set _face = 50>>
+		<<else>>
+			<<set _face = $slaves[$i].face*2>>
+		<</if>>
+		<<set _viewership = ((900/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending/15)+(_face)+($slaves[$i].prestige*250)-(_decayRate))>>
 	<<else>>
 		<<set _decayRate = 30>>
-		<<set _viewership = ((300/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending > 0 ? ($slaves[$i].pornFameSpending+($slaves[$i].pornFameSpending/100)) : 200)+($slaves[$i].face/20)+($slaves[$i].prestige*20)-(_decayRate))>>
+		<<if $slaves[$i].fuckdoll > 0>>
+			<<set _face = 0>>
+		<<elseif $slaves[$i].collar == "porcelain mask">>
+			<<set _face = 0>>
+		<<else>>
+			<<set _face = $slaves[$i].face/20>>
+		<</if>>
+		<<set _viewership = ((300/$HackingSkillMultiplier)+($slaves[$i].pornFameSpending > 0 ? ($slaves[$i].pornFameSpending+($slaves[$i].pornFameSpending/100)) : 200)+(_face)+($slaves[$i].prestige*20)-(_decayRate))>>
 	<</if>>
 	<<set _viewerSoaking = 1>>
 	<<set _viewership = Math.trunc(_viewership)>>
@@ -40,7 +61,17 @@
 		Interest in porn of $object is high, since $pronoun's already prestigious.
 	<</if>>
 	
-	<<if $slaves[$i].face > 95>>
+	<<if $slaves[$i].fuckdoll > 0>>
+	<<elseif $slaves[$i].collar == "porcelain mask">>
+		$possessiveCap mask adds an air of mystery to $object,
+		<<if $slaves[$i].pornPrestige > 1>>
+			but people wonder if $pronoun is trying to hide something.
+		<<elseif $slaves[$i].pornPrestige > 0>>
+			tantalizing viewers with what it hides.
+		<<else>>
+			but viewers are more interested in $possessive body.
+		<</if>>
+	<<elseif $slaves[$i].face > 95>>
 		$possessiveCap unbelievable face siezes the attention of all who see it.
 	<<elseif $slaves[$i].face > 40>>
 		$possessiveCap gorgeous face draws viewers in and keeps them watching.
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 88b0cafa662..7dc5a182e08 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -5537,6 +5537,11 @@
 		<<FSChangePorn "TransformationFetishist" 1>>
 		<<set _transformed = 1>>
 	<</if>>
+	<<if ($slaves[$i].lipsImplant/$slaves[$i].lips >= .50) || ($slaves[$i].buttImplant/$slaves[$i].butt >= .50 && $slaves[$i].butt >= 6) || ($slaves[$i].buttImplant/$slaves[$i].butt >= .25 && $slaves[$i].butt >= 3) || ($slaves[$i].boobsImplant/$slaves[$i].boobs >= .75 && $slaves[$i].boobs >= 10000) || ($slaves[$i].boobsImplant/$slaves[$i].boobs >= .50 && $slaves[$i].boobs >= 2000) || ($slaves[$i].boobsImplant/$slaves[$i].boobs >= .25 && $slaves[$i].boobs >= 1000) || ($slaves[$i].boobsImplant/$slaves[$i].boobs >= .10 && $slaves[$i].boobs >= 400)>>
+		Society @@.green;approves@@ of $his obvious implants.
+		<<FSChangePorn "TransformationFetishist" 1>>
+		<<set _transformed = 1>>
+	<</if>>
 	<<if ($slaves[$i].bellyImplant >= 1500)>>
 		Society @@.green;mildly approves@@ of $slaves[$i].slaveName's belly bulging implant; this supports interest in more unusual implantations.
 		<<FSChangePorn "TransformationFetishist" 1>>
-- 
GitLab


From 5ae624fc8011200cc18f18633fb6c412222e16f0 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Wed, 1 Aug 2018 06:06:56 -0400
Subject: [PATCH 171/189] bit o' cleaning

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |  7 +++++++
 devNotes/twine JS.txt                        | 12 ++++++------
 src/endWeek/saChoosesOwnClothes.tw           | 12 ++++++------
 3 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 8d7057bf9d3..1ed6779c005 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,13 @@
 
 0.10.7.1-0.5.x
 
+8/01/2018
+
+	14
+	-fixes
+	-JS tinkering
+	-tweaks to porn fame face gains
+
 7/30/2018
 
 	13
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index c1180b5185f..090fae2f1d0 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -9485,7 +9485,6 @@ window.saChoosesOwnClothes = (function() {
 	let boy;
 	let He;
 	let His;
-	let belly_accessory;
 
 	function saChoosesOwnClothes(slave) {
 		V = State.variables;
@@ -9501,12 +9500,11 @@ window.saChoosesOwnClothes = (function() {
 		boy = pronouns.noun;
 		He = capFirstChar(he);
 		His = capFirstChar(his);
-		belly_accessory = slave.bellyAccesory;
 
 		if (slave.fetish === "mindbroken") {
 			let corsetChoice = todaysCorset(slave);
 			let clothingChoice = todaysOutfit(slave);
-			slave.bellyAccesory = corsetChoice.bellyAccesory;
+			slave.bellyAccessory = corsetChoice.bellyAccessory;
 			slave.clothes = clothingChoice.clothes;
 			r += `${He} is fundamentally broken, but still follows some faint memories of standing within the wardrobe. `;
 			if (slave.amp !== 1) {
@@ -9531,7 +9529,7 @@ window.saChoosesOwnClothes = (function() {
 			let corsetChoice = todaysCorset(slave);
 			let clothingChoice = todaysOutfit(slave);
 			slave.collar = neckChoice.collar;
-			slave.bellyAccesory = corsetChoice.bellyAccesory;
+			slave.bellyAccessory = corsetChoice.bellyAccessory;
 			slave.clothes = clothingChoice.clothes;
 			r += `${He} <span class="hotpink">loves</span> being able to dress ${himself}, ${neckChoice.text} ${corsetChoice.text} ${clothingChoice.text} `;
 			slave.devotion += 1;
@@ -9567,6 +9565,7 @@ window.saChoosesOwnClothes = (function() {
 
 	function todaysOutfit(slave) {
 		let clothing = [];
+		let chosenClothing;
 		let wardrobeAssignment = [];
 		let wardrobeFS = [];
 		let wardrobeTastes = [];
@@ -9612,8 +9611,8 @@ window.saChoosesOwnClothes = (function() {
 				if(V.arcologies[0].FSBodyPurist > 0) {
 					clothing.push('bodyPurist');
 				}
-				clothing = jsEither(clothing);
-				switch(clothing) {
+				chosenClothing = jsEither(clothing);
+				switch(chosenClothing) {
 				case 'egyptian':
 					selection = {text: `${he} commonly sees others wearing nothing but jewelry and is drawn to doing so ${himself}.`, clothes: "slutty jewelry"};
 					break;
@@ -10143,6 +10142,7 @@ window.saChoosesOwnClothes = (function() {
 				}
 			}
 			/*Separated in three categories in case you want to, say, increase the probability of choosing _wardrobeAssignment to look more professional*/
+			/*clothing = clothing.concat(wardrobeAssignment, wardrobeFS, wardrobeTastes); better version should the above never amount to anything*/
 			if(wardrobeAssignment.length > 0) {
 				for (let i = 0; i < wardrobeAssignment.length; i++) {
 					clothing.push(wardrobeAssignment[i]);
diff --git a/src/endWeek/saChoosesOwnClothes.tw b/src/endWeek/saChoosesOwnClothes.tw
index ebba02377e5..6483534f975 100644
--- a/src/endWeek/saChoosesOwnClothes.tw
+++ b/src/endWeek/saChoosesOwnClothes.tw
@@ -14,7 +14,6 @@ window.saChoosesOwnClothes = (function() {
 	let boy;
 	let He;
 	let His;
-	let belly_accessory;
 
 	function saChoosesOwnClothes(slave) {
 		V = State.variables;
@@ -30,12 +29,11 @@ window.saChoosesOwnClothes = (function() {
 		boy = pronouns.noun;
 		He = capFirstChar(he);
 		His = capFirstChar(his);
-		belly_accessory = slave.bellyAccesory;
 
 		if (slave.fetish === "mindbroken") {
 			let corsetChoice = todaysCorset(slave);
 			let clothingChoice = todaysOutfit(slave);
-			slave.bellyAccesory = corsetChoice.bellyAccesory;
+			slave.bellyAccessory = corsetChoice.bellyAccessory;
 			slave.clothes = clothingChoice.clothes;
 			r += `${He} is fundamentally broken, but still follows some faint memories of standing within the wardrobe. `;
 			if (slave.amp !== 1) {
@@ -60,7 +58,7 @@ window.saChoosesOwnClothes = (function() {
 			let corsetChoice = todaysCorset(slave);
 			let clothingChoice = todaysOutfit(slave);
 			slave.collar = neckChoice.collar;
-			slave.bellyAccesory = corsetChoice.bellyAccesory;
+			slave.bellyAccessory = corsetChoice.bellyAccessory;
 			slave.clothes = clothingChoice.clothes;
 			r += `${He} <span class="hotpink">loves</span> being able to dress ${himself}, ${neckChoice.text} ${corsetChoice.text} ${clothingChoice.text} `;
 			slave.devotion += 1;
@@ -96,6 +94,7 @@ window.saChoosesOwnClothes = (function() {
 
 	function todaysOutfit(slave) {
 		let clothing = [];
+		let chosenClothing;
 		let wardrobeAssignment = [];
 		let wardrobeFS = [];
 		let wardrobeTastes = [];
@@ -141,8 +140,8 @@ window.saChoosesOwnClothes = (function() {
 				if(V.arcologies[0].FSBodyPurist > 0) {
 					clothing.push('bodyPurist');
 				}
-				clothing = jsEither(clothing);
-				switch(clothing) {
+				chosenClothing = jsEither(clothing);
+				switch(chosenClothing) {
 				case 'egyptian':
 					selection = {text: `${he} commonly sees others wearing nothing but jewelry and is drawn to doing so ${himself}.`, clothes: "slutty jewelry"};
 					break;
@@ -672,6 +671,7 @@ window.saChoosesOwnClothes = (function() {
 				}
 			}
 			/*Separated in three categories in case you want to, say, increase the probability of choosing _wardrobeAssignment to look more professional*/
+			/*clothing = clothing.concat(wardrobeAssignment, wardrobeFS, wardrobeTastes); better version should the above never amount to anything*/
 			if(wardrobeAssignment.length > 0) {
 				for (let i = 0; i < wardrobeAssignment.length; i++) {
 					clothing.push(wardrobeAssignment[i]);
-- 
GitLab


From 95fdd208632e8beda521f4d57c8d586bd21ca7be Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Wed, 1 Aug 2018 15:15:53 -0500
Subject: [PATCH 172/189] Testing

---
 slave variables documentation - Pregmod.txt   |   6 +-
 src/js/clothingSelectionJS.tw                 |   2 +-
 src/js/eventSelectionJS.tw                    |   2 +-
 src/js/rulesAssistantOptions.tw               |  23 +-
 src/js/slaveSummaryWidgets.tw                 |  14 +-
 src/npc/fAbuse.tw                             |  16 +-
 .../SpecialForceBarracksFlavourText.tw        |   2 +-
 src/uncategorized/PESS.tw                     |   2 +-
 src/uncategorized/RESS.tw                     |  62 +-
 src/uncategorized/customSlave.tw              |  10 +-
 src/uncategorized/securityForceEOWReport.tw   |  10 +-
 src/uncategorized/slaveInteract.tw            |  22 +-
 src/uncategorized/toychest.tw                 |   8 +
 src/uncategorized/useGuard.tw                 |  10 +-
 src/uncategorized/walkPast.tw                 |  24 +-
 src/uncategorized/wardrobeUse.tw              |  56 +-
 src/utility/birthWidgets.tw                   |  72 ++-
 src/utility/descriptionWidgetsFlesh.tw        | 588 ++++++++++++++++--
 src/utility/descriptionWidgetsPiercings.tw    |  27 +-
 src/utility/descriptionWidgetsStyle.tw        | 223 ++++---
 20 files changed, 923 insertions(+), 256 deletions(-)

diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt
index 4d3b8542542..aadb85a3da9 100644
--- a/slave variables documentation - Pregmod.txt	
+++ b/slave variables documentation - Pregmod.txt	
@@ -2238,6 +2238,8 @@ clothes:
 may accept strings, use at own risk
 "a ball gown"
 "a bunny outfit"
+"a burkini"
+"a burqa"
 "a chattel habit"
 "a cheerleader outfit"
 "a comfortable bodysuit"
@@ -2246,6 +2248,7 @@ may accept strings, use at own risk
 "a Fuckdoll suit"
 "a halter top dress"
 "a hijab and abaya"
+"a hijab and blouse"
 "a huipil"
 "a kimono"
 "a latex catsuit"
@@ -2254,9 +2257,9 @@ may accept strings, use at own risk
 "a military uniform"
 "a mini dress"
 "a monokini"
-"an apron"
 "a nice maid outfit"
 "a nice nurse outfit"
+"a niqab and abaya"
 "a penitent nuns habit"
 "a red army uniform"
 "a scalemail bikini"
@@ -2271,6 +2274,7 @@ may accept strings, use at own risk
 "a string bikini"
 "a succubus outfit"
 "a toga"
+"an apron"
 "attractive lingerie"
 "attractive lingerie for a pregnant woman"
 "battledress"
diff --git a/src/js/clothingSelectionJS.tw b/src/js/clothingSelectionJS.tw
index 9e1b17faa57..c53f7791df0 100644
--- a/src/js/clothingSelectionJS.tw
+++ b/src/js/clothingSelectionJS.tw
@@ -426,7 +426,7 @@ window.todaysOutfit = function(slave) {
 				wardrobeFS.push({text: "and decides to dress up like a young man's wet dream.", clothes: "a succubus outfit"});
 				wardrobeFS.push({text: `and decides to wear a skimpy bikini to make ${his} assets look even larger.`, clothes: "a string bikini"});
 				wardrobeFS.push({text: `and decides to throw together a slutty outfit that highlight ${his} assets.`, clothes: "a slutty outfit"});
-				wardrobeFS.push ({text: "and decides to wear a monokini that clings to the assets it actually does conceal.", clothes: "a monokini"});
+				wardrobeFS.push ({text: `and decides to wear a monokini that clings to the assets it actually does conceal.`, clothes: "a monokini"});
 			} else if(ArcologyZero.FSSlimnessEnthusiast > 0) {
 				if(slave.boobs < 300) {
 					wardrobeFS.push({text: `and wears a string bikini to show off just how flat ${he} is.`, clothes: "a string bikini"});
diff --git a/src/js/eventSelectionJS.tw b/src/js/eventSelectionJS.tw
index 37fc354db1a..d083a7c0411 100644
--- a/src/js/eventSelectionJS.tw
+++ b/src/js/eventSelectionJS.tw
@@ -821,7 +821,7 @@ if(eventSlave.fetish != "mindbroken") {
 
 		if(eventSlave.devotion > 20) {
 			if(eventSlave.butt > 5) {
-				if(!["no clothing", "body oil", "a toga", "a kimono", "shibari ropes", "a slutty maid outfit", "a string bikini", "a scalemail bikini", "a chattel habit", "a slave gown", "a halter top dress", "a ball gown", "a mini dress", "harem gauze", "a schutzstaffel uniform", "a slutty schutzstaffel uniform", "a red army uniform", "a monokini"].includes(eventSlave.clothes)) {
+				if(!["no clothing", "body oil", "a toga", "a kimono", "shibari ropes", "a slutty maid outfit", "a string bikini", "a scalemail bikini", "a chattel habit", "a slave gown", "a halter top dress", "a ball gown", "a mini dress", "harem gauze", "a schutzstaffel uniform", "a slutty schutzstaffel uniform", "a red army uniform", "a monokini", "a burkini"].includes(eventSlave.clothes)) {
 					State.variables.RESSevent.push("ass fitting");
 				}
 			}
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index 5e112444a39..464bea2df64 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -1057,32 +1057,34 @@ window.rulesAssistantOptions = (function() {
 				["No default clothes setting", "no default setting"],
 				["Apron", "an apron"],
 				["Bangles", "slutty jewelry"],
+				["Battlearmor", "battlearmor"],
+				["Biyelgee costume", "a biyelgee costume"],
 				["Bodysuit", "a comfortable bodysuit"],
+				["Burkini", "a burkini"],
+				["Burqa", "a burqa"],
 				["Cheerleader outfit", "a cheerleader outfit"],
 				["Clubslut netting", "clubslut netting"],
 				["Cybersuit", "a cybersuit"],
 				["Cutoffs and a t-shirt", "cutoffs and a t-shirt"],
+				["Dirndl", "a dirndl"],
 				["Fallen nun", "a fallen nuns habit"],
 				["Halter top", "a halter top dress"],
 				["Hijab and abaya", "a hijab and abaya"],
+				["Hijab and blouse", "a hijab and blouse"],
 				["Latex catsuit", "a latex catsuit"],
-				["Leotard", "a leotard"],
-				["Long Qipao", "a long qipao"],
 				["Lederhosen", "lederhosen"],
-				["Battlearmor", "battlearmor"],
+				["Leotard", "a leotard"],
 				["Mounty outfit", "a mounty outfit"],
-				["Dirndl", "a dirndl"],
-				["Biyelgee costume", "a biyelgee costume"],
 				["Maid (nice)", "a nice maid outfit"],
 				["Maid (slutty)", "a slutty maid outfit"],
 				["Military uniform", "a military uniform"],
-				["Schutzstaffel uniform", "a schutzstaffel uniform"],
-				["Schutzstaffel uniform (slutty)", "a slutty schutzstaffel uniform"],
-				["Red Army uniform", "a red army uniform"],
 				["Mini dress", "a mini dress"],
 				["Monokini", "a monokini"],
 				["Nice lingerie", "attractive lingerie"],
+				["Niqab and abaya", "a niqab and abaya"],
 				["Nurse (nice)", "a nice nurse outfit"],
+				["Nurse (slutty)", "a slutty nurse outfit"],
+				["Red Army uniform", "a red army uniform"],
 				["Schoolgirl", "a schoolgirl outfit"],
 				["Silken ballgown", "a ball gown"],
 				["Skimpy battledress", "battledress"],
@@ -1090,6 +1092,8 @@ window.rulesAssistantOptions = (function() {
 				["Slutty outfit", "a slutty outfit"],
 				["String bikini", "a string bikini"],
 				["Scalemail bikini", "a scalemail bikini"],
+				["Schutzstaffel uniform (nice)", "a schutzstaffel uniform"],
+				["Schutzstaffel uniform (slutty)", "a slutty schutzstaffel uniform"],
 				["Succubus costume", "a succubus outfit"],
 				["Suit (nice)", "nice business sattire"],
 				["Suit (slutty", "slutty business attire"],
@@ -1105,7 +1109,8 @@ window.rulesAssistantOptions = (function() {
 				["Kimono (FS)", "a kimono"],
 				["Maternity dress (FS)", "a maternity dress"],
 				["Maternity lingerie (FS)", "attractive lingerie for a pregnant woman"],
-				["Slutty qipao (FS)", "a slutty qipao"],
+				["Qipao (nice) (FS)", "a long qipao"],
+				["Qipao (slutty) (FS)", "a slutty qipao"],
 				["Stretch pants and a crop-top (FS)", "stretch pants and a crop-top"],
 				["Toga (FS)", "a toga"],
 				["Western clothing (FS)", "Western clothing"],
diff --git a/src/js/slaveSummaryWidgets.tw b/src/js/slaveSummaryWidgets.tw
index 851bbd508c8..32c6a9c1fbb 100644
--- a/src/js/slaveSummaryWidgets.tw
+++ b/src/js/slaveSummaryWidgets.tw
@@ -4283,11 +4283,23 @@ window.SlaveSummaryUncached = (function(){
 				r += `Huipil.`;
 				break;
 			case "a slutty qipao":
-				r += `Qipao.`;
+				r += `Slutty qipao.`;
 				break;
 			case "spats and a tank top":
 				r += `Spats, tank top.`;
 				break;
+			case "a burkini":
+				r += `Burkini.`;
+				break;
+			case "a niqab and abaya":
+				r += `Niqab and abaya.`;
+				break;
+			case "a hijab and blouse":
+				r += `Hijab and blouse.`;
+				break;
+			case "a burqa":
+				r += `Burqa.`;
+				break;
 			default:
 				r += `Naked.`;
 				break;
diff --git a/src/npc/fAbuse.tw b/src/npc/fAbuse.tw
index fae07c5d6b7..8580198e736 100644
--- a/src/npc/fAbuse.tw
+++ b/src/npc/fAbuse.tw
@@ -120,11 +120,11 @@
 	<<case "attractive lingerie for a pregnant woman">>
 		$He quickly sheds $his vest and tight bra before panicking and resorting to ripping $his silk panties off.
 	<<case "a maternity dress">>
-		$He hastily pulls $his dress down revealing $his body.
+		$He hastily pulls $his dress down, revealing $his body.
 	<<case "a dirndl">>
-		$He hastily pulls $his dress down revealing $his body.
+		$He hastily pulls $his dress down, revealing $his body.
 	<<case "a long qipao">>
-		$He hastily pulls $his dress down revealing $his body.
+		$He hastily pulls $his dress down, revealing $his body.
 	<<case "stretch pants and a crop-top">>
 		$He hastily pulls $his crop-top over $his head and struggles to remove $his stretch pants only to get tangled and fall over.
 	<<case "a cheerleader outfit">>
@@ -137,6 +137,8 @@
 		$He nearly snaps the shoulder straps of $his monokini in $his haste to remove it.
 	<<case "an apron">>
 		$He quickly undoes $his apron's straps and hoists the garment over $his head.
+	<<case "a hijab and blouse" "conservative clothing">>
+		$He winds up tearing a few buttons off $his shirt in $his haste to remove it.
 	<<case "a cybersuit">>
 		$He wimpers as $he knows $he can barely remove $his visor in that amount of time, let alone the whole bodysuit, but $he tries anyway.
 	<<case "battlearmor">>
@@ -155,8 +157,10 @@
 		$His schoolgirl outfit is easily stripped off: $he pulls down $his skimpy skirt and tears off $his little blouse, and $he's nude.
 	<<case "a kimono">>
 		Getting out of $his kimono in that amount of time is flagrantly impossible, but $he tries anyway.
-	<<case "a hijab and abaya">>
-		Because $he's nude under $his hijab and abaya, $he simply lifts it over $his head.
+	<<case "a hijab and abaya" "a niqab and abaya">>
+		Because $he's nude under $his abaya, $he simply lifts it over $his head.
+	<<case "a burqa">>
+		Because $he's nude under $his burqa, $he simply lifts it over $his head.
 	<<case "battledress">>
 		$He strips $his tank top off in one motion, unfastens $his belt, and pulls down $his pants, though $his boots defeat $him and stay on.
 	<<case "a slutty outfit">>
@@ -177,6 +181,8 @@
 		$His short dress comes off easily, but $he fumbles with the buttons on $his tight blouse.
 	<<case "a comfortable bodysuit">>
 		$He's desperately torn between hurry to avoid punishment and fear $he'll stretch out $his bodysuit.
+	<<case "a burkini">>
+		$He's desperately torn between hurry to avoid punishment and fear $he'll stretch out $his burkini.
 	<<case "a leotard">>
 		$His leotard is tight enough that $he has to struggle mightily to get it off that quickly.
 	<<case "a bunny outfit">>
diff --git a/src/pregmod/SecForceEX/SpecialForceBarracksFlavourText.tw b/src/pregmod/SecForceEX/SpecialForceBarracksFlavourText.tw
index dca8cd248b3..55c562c4f97 100644
--- a/src/pregmod/SecForceEX/SpecialForceBarracksFlavourText.tw
+++ b/src/pregmod/SecForceEX/SpecialForceBarracksFlavourText.tw
@@ -75,7 +75,7 @@
 <<if random(1,100) > 50>>
 	_Name raises a hand in greeting and nods as you approach. She is sprawled on a couch, wearing only her combat suit tank top and fingerless gloves. She's holding a near-empty bottle of strong liquor in her hand and you can see a naked slave girl kneeling on the floor between her legs. The Colonel has her legs wrapped tightly around the girl's head, forcing the girl to service her if she wants to breathe. The Colonel is close to her climax then suddenly tenses her lower body thus gripping the girl even tighter and throws her head back in ecstasy as she orgasms. She lets out a long breath finally releasing the girl, giving her a hard smack and shouting at her to fuck off.<br><br> The Colonel finishes off her bottle, tossing it over her shoulder then leaning back on the couch and spreading her legs wide. You look down briefly, falling into your habits of inspection. Her pussy is completely devoid of hair with heavy labia in with a very large and hard clit peaking out. Beads of moisture, the result of her excitation, are visible, and you can tell from long experience that she would be tight as a vise. You return your gaze to her face to find her smirking at you. "Like what you see, boss?" She waves her hand at the plaza around her, "So do they. But you're not here for pussy. You're here to talk business. So, what's up?"
 <<elseif random(1,100) > 50>>
-	_Name is in no condition initially to greet you. She's naked except for one sock that gives you a very good view of her muscled, taut body while lunging with her feet on the table and the rest on her couch. She is face down in a drugged-out stupor in the middle of a wide variety of powders and pills. Perhaps sensing your approach, her head suddenly shoots up and looks at you with unfocused, bloodshot eyes. "Sorry, boss," she slurs, wiping her face and weakly holding up a hand. "Hold on a second, I need something to help me out here. Long fucking night." She struggles to sit on the couch and bending over the table, loudly snorts up some of the white powder on it. "Ahhh, fuck," she says, breathing heavily.<br><br> She shakes her head powerfully now looking at you, her eyes once again alert and piercing. "That's better," she says, leaning back on the couch and giving you another good view of her assets. "So, boss," she begins, "what brings you down here to our little clubhouse? I trust you're happy with how we've been handling things out there?" You nod. "Excellent", she laughs. "I have to say; it's nice to have a place like this while having some top-end gear and to be able to have fun out there without worrying about anyone coming back on us. Good fucking times." She laughs again. "So - I'm assuming you want something?"
+	_Name is in no condition initially to greet you. She's naked except for one sock that gives you a very good view of her muscled, taut body while lounging with her feet on the table and the rest on her couch. She is face down in a drugged-out stupor in the middle of a wide variety of powders and pills. Perhaps sensing your approach, her head suddenly shoots up and looks at you with unfocused, bloodshot eyes. "Sorry, boss," she slurs, wiping her face and weakly holding up a hand. "Hold on a second, I need something to help me out here. Long fucking night." She struggles to sit on the couch and bending over the table, loudly snorts up some of the white powder on it. "Ahhh, fuck," she says, breathing heavily.<br><br> She shakes her head powerfully now looking at you, her eyes once again alert and piercing. "That's better," she says, leaning back on the couch and giving you another good view of her assets. "So, boss," she begins, "what brings you down here to our little clubhouse? I trust you're happy with how we've been handling things out there?" You nod. "Excellent", she laughs. "I have to say; it's nice to have a place like this while having some top-end gear and to be able to have fun out there without worrying about anyone coming back on us. Good fucking times." She laughs again. "So - I'm assuming you want something?"
 <<elseif random(1,100) > 70 && $securityForceDepravity >= 1.5 && ($ColonelCore == "cruel")>>
 	_Name is relaxing on her couch stark naked, greeting you with a raised hand. Between her tightly clenched legs is a slave girl being forced to eat her out. "Hey, boss, what's -" she breaks off as a flash of pain crosses her features. "Fucking bitch!" she exclaims, pulling her legs away and punching the slave girl in the face. She pushes the girl to the ground, straddling her then begins hitting. You hear one crunch after another as The Colonel's powerful blows shatter the girl's face. She hisses from between clenched teeth, each word accompanied by a brutal punch. "How. Many. Fucking. Times. Have. I. Told. You. To. Watch. Your. Fucking. Teeth. On. My. Fucking. Clit!" She leans back, exhaling heavily. Before leaning back down to grip apply pressure onto the girl's neck with her powerful hands. Wordlessly, she increases the pressure and soon the girl begins to turn blue as she struggles to draw breath. Eventually her struggles weaken and then finally, end.<br><br> The Colonel relaxes her grip then wipes her brow, clearing away the sweat from her exertion. Finally rising from the girl's body, relaxing back on the couch and putting her feet back up on the table. "Sorry about that boss," she says, shrugging. "So many of these bitches we pick up from the outside don't understand that they have to behave." Shaking her head in frustration, "Now I need to find another one. But that's not your problem - you're here to talk business. So, what's up?"
 <<else>>
diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw
index 232fbbe01fd..505dea82f61 100644
--- a/src/uncategorized/PESS.tw
+++ b/src/uncategorized/PESS.tw
@@ -132,7 +132,7 @@ When you've finished your task, you raise your eyes to examine her. She's standi
 	She's nude, making it obvious that her poor soft member has done its duty today. It even looks a little moist, as though it bred a fertile slave's pussy only a few minutes ago.
 <<elseif ["body oil", "chains", "clubslut netting", "restrictive latex", "shibari ropes", "uncomfortable straps"].indexOf($activeSlave.clothes) != -1>>
 	Her clothes don't cover her dick, making it obvious that her poor soft member has done its duty today. It even looks a little moist, as though it bred a fertile slave's pussy only a few minutes ago.
-<<elseif ["a comfortable bodysuit", "a fallen nuns habit", "a latex catsuit", "a leotard", "a monokini", "a cybersuit", "a scalemail bikini", "a string bikini", "attractive lingerie for a pregnant woman", "attractive lingerie", "harem gauze", "restrictive latex", "slutty jewelry", "spats and a tank top", "stretch pants and a crop-top"].indexOf($activeSlave.clothes) != -1>>
+<<elseif ["a comfortable bodysuit", "a fallen nuns habit", "a latex catsuit", "a leotard", "a monokini", "a cybersuit", "a scalemail bikini", "a string bikini", "attractive lingerie for a pregnant woman", "attractive lingerie", "harem gauze", "restrictive latex", "slutty jewelry", "spats and a tank top", "stretch pants and a crop-top", "a burkini"].indexOf($activeSlave.clothes) != -1>>
 	Her clothes cover her groin, but they're pretty tight, making it clear that her poor soft member has done its duty today.
 <<else>>
 	Her clothes are relatively modest, so you can't see it, but it's clear that her poor soft member has done its duty today.
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index ac974ab833a..b00505fa073 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -3568,6 +3568,8 @@ She can't manage to
 	pull her scalemail bikini bottom up over her buttocks, not without risking a nasty cut from the material. She's got it
 <<case "a monokini">>
 	pull her monokini up over her buttocks, let alone to where she needs it to be to put on the shoulder straps. She's got it
+<<case "a burkini">>
+	pull her burkini up over her buttocks, making the modest swimsuit seem anything but. She's got it
 <<default>>
 	get her outfit pulled up over her buttocks. She's got it
 <</switch>>
@@ -3717,8 +3719,8 @@ $activeSlave.slaveName is doing her job, standing in an area of the arcology tha
 		toga
 	<<case "a huipil">>
 		huipil
-	<<case "a slutty qipao">>
-		slutty qipao
+	<<case "a long qipao" "a slutty qipao">>
+		qipao
 	<<case "a penitent nuns habit">>
 		habit
 	<<case "a slave gown" "a ball gown">>
@@ -3749,16 +3751,14 @@ $activeSlave.slaveName is doing her job, standing in an area of the arcology tha
 		latex catsuit
 	<<case "a military uniform" "a mounty outfit" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
 		uniform
-	<<case "a long qipao">>
-		qipao
 	<<case "battlearmor">>
 		battlearmor
 	<<case "lederhosen">>
 		lederhosen
 	<<case "spats and a tank top">>
 		spats
-	<<case "monokini">>
-		monokini
+	<<case "a burkini" "a monokini">>
+		swimsuit
 	<<case "a chattel habit" "a fallen nuns habit">>
 		slutty habit
 	<<case "a cheerleader outfit">>
@@ -3775,6 +3775,8 @@ $activeSlave.slaveName is doing her job, standing in an area of the arcology tha
 		string bikini
 	<<case "a succubus outfit">>
 		succubus getup
+	<<case "a hijab and blouse" "conservative clothing">>
+		conserative clothes
 	<<default>>
 		$activeSlave.clothes
 	<</switch>>
@@ -19751,8 +19753,8 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		toga
 	<<case "a huipil">>
 		huipil
-	<<case "a slutty qipao">>
-		slutty qipao
+	<<case "a long qipao" "a slutty qipao">>
+		qipao
 	<<case "a penitent nuns habit">>
 		habit
 	<<case "a slave gown" "a ball gown">>
@@ -19783,16 +19785,14 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		latex catsuit
 	<<case "a military uniform" "a mounty outfit" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
 		uniform
-	<<case "a long qipao">>
-		qipao
 	<<case "battlearmor">>
 		battlearmor
 	<<case "lederhosen">>
 		lederhosen
 	<<case "spats and a tank top">>
 		spats
-	<<case "monokini">>
-		monokini
+	<<case "a burkini" "a monokini">>
+		swimsuit
 	<<case "a chattel habit" "a fallen nuns habit">>
 		slutty habit
 	<<case "a cheerleader outfit">>
@@ -19809,6 +19809,8 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		string bikini
 	<<case "a succubus outfit">>
 		succubus getup
+	<<case "a hijab and blouse" "conservative clothing">>
+		conserative clothes
 	<<default>>
 		$activeSlave.clothes
 	<</switch>>
@@ -19820,8 +19822,8 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		toga
 	<<case "a huipil">>
 		huipil
-	<<case "a slutty qipao">>
-		slutty qipao
+	<<case "a long qipao" "a slutty qipao">>
+		qipao
 	<<case "a penitent nuns habit">>
 		habit
 	<<case "a slave gown" "a ball gown">>
@@ -19846,26 +19848,38 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		maid outfit
 	<<case "a slutty maid outfit">>
 		skimpy maid outfit
-	<<case "a halter top dress" "a mini dress" "a maternity dress">>
+	<<case "a biyelgee costume" "a dirndl" "a halter top dress" "a mini dress" "a maternity dress">>
 		dress
 	<<case "a latex catsuit">>
 		latex catsuit
-	<<case "a military uniform" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
+	<<case "a military uniform" "a mounty outfit" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
 		uniform
-	<<case "a long qipao">>
-		qipao
 	<<case "battlearmor">>
 		battlearmor
-	<<case "a mounty outfit">>
-		uniform
-	<<case "a dirndl">>
-		dress
 	<<case "lederhosen">>
 		lederhosen
-	<<case "a biyelgee costume">>
-		dress
 	<<case "spats and a tank top">>
 		spats
+	<<case "a burkini" "a monokini">>
+		swimsuit
+	<<case "a chattel habit" "a fallen nuns habit">>
+		slutty habit
+	<<case "a cheerleader outfit">>
+		cheerleader outfit
+	<<case "a cybersuit">>
+		cybersuit
+	<<case "an apron">>
+		apron
+	<<case "a scalemail bikini">>
+		scalemail bikini
+	<<case "a slutty outfit">>
+		slutty outfit
+	<<case "a string bikini">>
+		string bikini
+	<<case "a succubus outfit">>
+		succubus getup
+	<<case "a hijab and blouse" "conservative clothing">>
+		conserative clothes
 	<<default>>
 		$activeSlave.clothes
 	<</switch>>
diff --git a/src/uncategorized/customSlave.tw b/src/uncategorized/customSlave.tw
index 4f4dddbc593..d4d0b6e8d46 100644
--- a/src/uncategorized/customSlave.tw
+++ b/src/uncategorized/customSlave.tw
@@ -210,22 +210,22 @@
 <<else>>Voice is unimportant.
 <</if>>
 </span>
-<<link "high, girly voice">>
+<<link "High, girly voice">>
 	<<set $customSlave.voice = 3>>
 	<<CustomSlaveVoice>>
 <</link>>
 |
-<<link "feminine voice">>
+<<link "Feminine voice">>
 	<<set $customSlave.voice = 2>>
 	<<CustomSlaveVoice>>
 <</link>>
 |
-<<link "deep voice">>
+<<link "Deep voice">>
 	<<set $customSlave.voice = 1>>
 	<<CustomSlaveVoice>>
 <</link>>
 |
-<<link "mute">>
+<<link "Mute">>
 	<<set $customSlave.voice = 0>>
 	<<CustomSlaveVoice>>
 <</link>>
@@ -433,7 +433,7 @@ Skin tone: <span id = "skin">
 	<<CustomSlaveSkin>>
 <</link>>
 |
-<<link "Extremely pale">>
+<<link "Extremely Pale">>
 	<<set $customSlave.skin = "extremely pale">>
 	<<CustomSlaveSkin>>
 <</link>>
diff --git a/src/uncategorized/securityForceEOWReport.tw b/src/uncategorized/securityForceEOWReport.tw
index 35a7d1f6d4f..bd757372e21 100644
--- a/src/uncategorized/securityForceEOWReport.tw
+++ b/src/uncategorized/securityForceEOWReport.tw
@@ -112,7 +112,7 @@
 	<</if>>
 	
 	<<switch $ColonelCore>>
-		<<case "kind" "collected.">>
+		<<case "kind" "collected">>
 			<<set $securityForceRecruit += 2>>
 	<</switch>>	
 
@@ -190,7 +190,7 @@
 	<</if>>
 	
 	<<switch $ColonelCore>>
-		<<case "kind" "collected.">>
+		<<case "kind" "collected">>
 			<<set $securityForceTrade += 0.15>>
 	<</switch>>	
 
@@ -355,14 +355,14 @@
 		<<set $securityForceDepravity -= 0.015>>
 		<<set $securityForceDepravity += 0.015>>
 
-	<<case "Cruel">>
+	<<case "cruel">>
 		<<set $securityForceDepravity += 0.05>>
-	<<case "Psychopath">>
+	<<case "psychopathic">>
 		<<set $securityForceDepravity += 0.10>>
 	<<case "sociopathic">>
 		<<set $securityForceDepravity += 0.15>>
 
-	<<case "Brazen">>
+	<<case "brazen">>
 		<<set $securityForceDepravity += 1.05>>
 		<<set $securityForceDepravity -= 1.05>>
 	<</switch>>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index 2febacd2153..18190939c5a 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -614,8 +614,10 @@
 	<<link "Apron">><<set $activeSlave.clothes = "an apron",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Bangles">><<set $activeSlave.clothes = "slutty jewelry",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Battlearmor">><<set $activeSlave.clothes = "battlearmor",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
-	| <<link "Biyelgee Costume">><<set $activeSlave.clothes = "a biyelgee costume",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Biyelgee costume">><<set $activeSlave.clothes = "a biyelgee costume",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Bodysuit">><<set $activeSlave.clothes = "a comfortable bodysuit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Burkini">><<set $activeSlave.clothes = "a burkini",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Burqa">><<set $activeSlave.clothes = "Burqa",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Cheerleader outfit">><<set $activeSlave.clothes = "a cheerleader outfit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">><<print $activeSlave.clothes>><</replace>><</link>>
 	| <<link "Clubslut netting">><<set $activeSlave.clothes = "clubslut netting",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Cutoffs and a t-shirt">><<set $activeSlave.clothes = "cutoffs and a t-shirt",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
@@ -624,6 +626,7 @@
 	| <<link "Fallen nun">><<set $activeSlave.clothes = "a fallen nuns habit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Haltertop dress">><<set $activeSlave.clothes = "a halter top dress",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Hijab and abaya">><<set $activeSlave.clothes = "a hijab and abaya",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Hijab and blouse">><<set $activeSlave.clothes = "a hijab and blouse",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Latex catsuit">><<set $activeSlave.clothes = "a latex catsuit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Lederhosen">><<set $activeSlave.clothes = "lederhosen",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Leotard">><<set $activeSlave.clothes = "a leotard",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
@@ -632,15 +635,16 @@
 	| <<link "Military uniform">><<set $activeSlave.clothes = "a military uniform",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Mini dress">><<set $activeSlave.clothes = "a mini dress",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Monokini">><<set $activeSlave.clothes = "a monokini",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
-	| <<link "Mounty Outfit">><<set $activeSlave.clothes = "a mounty outfit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Mounty outfit">><<set $activeSlave.clothes = "a mounty outfit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Nice lingerie">><<set $activeSlave.clothes = "attractive lingerie",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Niqab and abaya">><<set $activeSlave.clothes = "a niqab and abaya",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Nurse (nice)">><<set $activeSlave.clothes = "a nice nurse outfit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Nurse (slutty)">><<set $activeSlave.clothes = "a slutty nurse outfit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
-	| <<link "Red Army Uniform">><<set $activeSlave.clothes = "a red army uniform",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Red Army uniform">><<set $activeSlave.clothes = "a red army uniform",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Scalemail bikini">><<set $activeSlave.clothes = "a scalemail bikini",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Schoolgirl">><<set $activeSlave.clothes = "a schoolgirl outfit",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
-	| <<link "Schutzstaffel Uniform">><<set $activeSlave.clothes = "a schutzstaffel uniform",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
-	| <<link "Schutzstaffel Uniform (slutty)">><<set $activeSlave.clothes = "a slutty schutzstaffel uniform",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Schutzstaffel uniform (nice)">><<set $activeSlave.clothes = "a schutzstaffel uniform",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	| <<link "Schutzstaffel uniform (slutty)">><<set $activeSlave.clothes = "a slutty schutzstaffel uniform",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Silken ballgown">><<set $activeSlave.clothes = "a ball gown",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Skimpy battledress">><<set $activeSlave.clothes = "battledress",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	| <<link "Slave gown">><<set $activeSlave.clothes = "a slave gown",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
@@ -678,11 +682,11 @@
 	<<if isItemAccessible("a maternity dress")>>
 		| //FS// <<link "Maternity dress">><<set $activeSlave.clothes = "a maternity dress",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	<</if>>
-	<<if isItemAccessible("a slutty qipao")>>
-		| //FS// <<link "Qipao (Slutty)">><<set $activeSlave.clothes = "a slutty qipao",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
-	<</if>>
 	<<if isItemAccessible("a long qipao")>>
-		| //FS// <<link "Qipao (Nice)">><<set $activeSlave.clothes = "a long qipao",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+		| //FS// <<link "Qipao (nice)">><<set $activeSlave.clothes = "a long qipao",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
+	<</if>>
+	<<if isItemAccessible("a slutty qipao")>>
+		| //FS// <<link "Qipao (slutty)">><<set $activeSlave.clothes = "a slutty qipao",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
 	<</if>>
 	<<if isItemAccessible("stretch pants and a crop-top")>>
 		| //FS// <<link "Stretch pants and a crop-top">><<set $activeSlave.clothes = "stretch pants and a crop-top",$activeSlave.choosesOwnClothes = 0>><<replace "#clothes">>$activeSlave.clothes<</replace>><</link>>
diff --git a/src/uncategorized/toychest.tw b/src/uncategorized/toychest.tw
index e9ecda96267..4dd67c0edcb 100644
--- a/src/uncategorized/toychest.tw
+++ b/src/uncategorized/toychest.tw
@@ -127,8 +127,16 @@
 		She's wearing a slutty schoolgirl outfit, and looks ready to do whatever it takes to improve her grades.
 	<<case "a kimono">>
 		She's wearing a kimono, lending your office an air of elegance, though she lacks some of the air of the true yamato nadeshiko.
+	<<case "a burkini">>
+		She's wearing a colorful burkini, lending your office a vague air of conservatism.
+	<<case "a hijab and blouse">>
+		She's wearing a modest hijab and blouse, lending your office a certain air of conservatism.
 	<<case "a hijab and abaya">>
 		She's wearing a modest hijab and abaya, lending your office a certain air of conservatism.
+	<<case "a niqab and abaya">>
+		She's wearing a niqab and abaya, lending your office an air of conservatism.
+	<<case "a burqa">>
+		She's wearing an all-concealing burqa, lending your office an intense air of conservatism.
 	<<case "battledress">>
 		She's wearing skimpy battledress, making your office seem a little like the ideal bunker for a survivalist.
 	<<case "a slutty outfit">>
diff --git a/src/uncategorized/useGuard.tw b/src/uncategorized/useGuard.tw
index 350c56961f9..116122a5d48 100644
--- a/src/uncategorized/useGuard.tw
+++ b/src/uncategorized/useGuard.tw
@@ -97,8 +97,12 @@ $slaves[$i].slaveName is standing behind your left shoulder, guarding your perso
 	$His business suit and weapons give $him the look of a finely honed corporate instrument.
 <<case "conservative clothing">>
 	$His casual, conservative clothes and weapons make $him look like a normal old world security contractrix.
+<<case "a hijab and blouse">>
+	$His modest, conservative clothes and weapons make $him look like an old world security contractrix.
 <<case "a comfortable bodysuit">>
 	$His bodysuit and weapons make $him look like an action movie heroine.
+<<case "a burkini">>
+	$His form-fitting swimsuit and weapons make $him look like an action movie heroine.
 <<case "a leotard">>
 	$His leotard and weapons make $him look like the heroine of an old exploitation film.
 <<case "a bunny outfit">>
@@ -115,8 +119,10 @@ $slaves[$i].slaveName is standing behind your left shoulder, guarding your perso
 	$His toga and weapons make a stark contrast, making $him stand out a lot.
 <<case "a huipil">>
 	$His huipil hides most of the weapons $he carries, but carrying them on naked skin is a slight discomfort.
-<<case "a hijab and abaya">>
-	$His weapons are strapped to the outside of $his abaya, a juxtaposition that would be more ludicrous had not many women of the middle east recently been seen fighting dressed in just this way.
+<<case "a hijab and abaya" "a niqab and abaya">>
+	$His weapons are strapped to the outside of $his abaya, a juxtaposition that would be more ludicrous had not many women in the Middle East recently been seen fighting dressed in just this way.
+<<case "a burqa">>
+	$His weapons are strapped to the outside of $his burqa, a juxtaposition that would be more ludicrous had not some women in the Middle East recently been seen fighting dressed in just this way.
 <<case "battledress">>
 	Though $his battledress top is just a tank top, $he still skirts the edge of looking more like a Free Cities mercenary than a Free Cities sex slave.
 <<case "slutty jewelry">>
diff --git a/src/uncategorized/walkPast.tw b/src/uncategorized/walkPast.tw
index e31f3db45b7..966e303866f 100644
--- a/src/uncategorized/walkPast.tw
+++ b/src/uncategorized/walkPast.tw
@@ -2120,6 +2120,20 @@
 			<<else>>
 				$His apron gives no hint of what's behind it.
 			<</if>>
+		<<case "a hijab and abaya" "a niqab and abaya">>
+			<<if ($activeSlave.dick > 4) && ($activeSlave.vagina != -1)>>
+				$His hermaphroditic genitalia bulges the front of $his abaya as $he moves.
+			<<elseif ($activeSlave.dick != 0) && ($activeSlave.vagina != -1)>>
+				$His hermaphroditic genitalia is totally concealed by $his abaya.
+			<<elseif ($activeSlave.dick > 4)>>
+				$His penis bulges the front of $his abaya as $he moves.
+			<<elseif ($activeSlave.dick != 0)>>
+				$His penis is totally concealed by $his abaya.
+			<<elseif ($activeSlave.vagina != -1)>>
+				$His vagina is totally concealed by $his abaya.
+			<<else>>
+				$His featureless groin is totally concealed by $his abaya.
+			<</if>>
 		<<case "a monokini">>
 			<<if ($activeSlave.dick > 4) && ($activeSlave.vagina != -1)>>
 				$His hermaphroditic genitalia tents out the front of $his monokini as $he moves.
@@ -2135,7 +2149,7 @@
 				$His monokini clings to $his featureless groin as $he moves.
 			<</if>>
 		<<case "an apron">>
-			<<if $activeSlave.dick > 3>>
+			<<if $activeSlave.dick > 4>>
 				$His dick sometimes creates a bulge in $his apron as $he moves.
 			<<elseif ($activeSlave.dick > 0) && ($activeSlave.vagina > -1)>>
 				$His apron exposes $his hemaphroditic genitalia if $he moves too quickly.
@@ -3696,12 +3710,8 @@
 		<</if>>
 	<<case "stretch pants and a crop-top">>
 		$He can easily be pantsed to reveal $his bare buttocks.
-	<<case "a hijab and abaya">>
-		<<if ($activeSlave.butt > 5)>>
-			$His abaya totally covers $his behind, though it cannot conceal its massive shape.
-		<<else>>
-			$His abaya totally conceals $his behind.
-		<</if>>
+	<<case "a hijab and abaya" "a niqab and abaya">>
+		While $his abaya totally covers $his behind, it can be easily lifted to reveal $his asshole.
 	<<case "battledress">>
 		$His fatigue trousers are not particularly flattering to $his butt.
 	<<case "a monokini">>
diff --git a/src/uncategorized/wardrobeUse.tw b/src/uncategorized/wardrobeUse.tw
index 02c874546da..02f6599acf2 100644
--- a/src/uncategorized/wardrobeUse.tw
+++ b/src/uncategorized/wardrobeUse.tw
@@ -49,7 +49,7 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
 	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
 <</link>>
-| <<link "Biyelgee Costume">>
+| <<link "Biyelgee costume">>
 	<<set $activeSlave.clothes = "a biyelgee costume",$activeSlave.choosesOwnClothes = 0>>
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
 	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
@@ -59,6 +59,16 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
 	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
 <</link>>
+| <<link "Burkini">>
+	<<set $activeSlave.clothes = "a burkini",$activeSlave.choosesOwnClothes = 0>>
+	<<replace "#clothes">>$activeSlave.clothes<</replace>>
+	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
+<</link>>
+| <<link "Burqa">>
+	<<set $activeSlave.clothes = "a burqa",$activeSlave.choosesOwnClothes = 0>>
+	<<replace "#clothes">>$activeSlave.clothes<</replace>>
+	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
+<</link>>
 | <<link "Cheerleader outfit">>
 	<<set $activeSlave.clothes = "a cheerleader outfit",$activeSlave.choosesOwnClothes = 0>>
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
@@ -99,6 +109,11 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
 	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
 <</link>>
+| <<link "Hijab and blouse">>
+	<<set $activeSlave.clothes = "a hijab and blouse",$activeSlave.choosesOwnClothes = 0>>
+	<<replace "#clothes">>$activeSlave.clothes<</replace>>
+	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
+<</link>>
 | <<link "Latex catsuit">>
 	<<set $activeSlave.clothes = "a latex catsuit",$activeSlave.choosesOwnClothes = 0>>
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
@@ -134,21 +149,6 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
 	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
 <</link>>
-| <<link "Schutzstaffel uniform">>
-	<<set $activeSlave.clothes = "a schutzstaffel uniform",$activeSlave.choosesOwnClothes = 0>>
-	<<replace "#clothes">>$activeSlave.clothes<</replace>>
-	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
-<</link>>
-| <<link "Schutzstaffel uniform (slutty)">>
-	<<set $activeSlave.clothes = "a slutty schutzstaffel uniform",$activeSlave.choosesOwnClothes = 0>>
-	<<replace "#clothes">>$activeSlave.clothes<</replace>>
-	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
-<</link>>
-| <<link "Red Army uniform">>
-	<<set $activeSlave.clothes = "a red army uniform",$activeSlave.choosesOwnClothes = 0>>
-	<<replace "#clothes">>$activeSlave.clothes<</replace>>
-	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
-<</link>>
 | <<link "Mini dress">>
 	<<set $activeSlave.clothes = "a mini dress",$activeSlave.choosesOwnClothes = 0>>
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
@@ -164,6 +164,11 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
 	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
 <</link>>
+| <<link "Niqab and abaya">>
+	<<set $activeSlave.clothes = "a niqab and abaya",$activeSlave.choosesOwnClothes = 0>>
+	<<replace "#clothes">>$activeSlave.clothes<</replace>>
+	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
+<</link>>
 | <<link "Nurse (nice)">>
 	<<set $activeSlave.clothes = "a nice nurse outfit",$activeSlave.choosesOwnClothes = 0>>
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
@@ -174,11 +179,26 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
 	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
 <</link>>
+| <<link "Red Army uniform">>
+	<<set $activeSlave.clothes = "a red army uniform",$activeSlave.choosesOwnClothes = 0>>
+	<<replace "#clothes">>$activeSlave.clothes<</replace>>
+	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
+<</link>>
 | <<link "Schoolgirl">>
 	<<set $activeSlave.clothes = "a schoolgirl outfit",$activeSlave.choosesOwnClothes = 0>>
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
 	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
 <</link>>
+| <<link "Schutzstaffel uniform (nice)">>
+	<<set $activeSlave.clothes = "a schutzstaffel uniform",$activeSlave.choosesOwnClothes = 0>>
+	<<replace "#clothes">>$activeSlave.clothes<</replace>>
+	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
+<</link>>
+| <<link "Schutzstaffel uniform (slutty)">>
+	<<set $activeSlave.clothes = "a slutty schutzstaffel uniform",$activeSlave.choosesOwnClothes = 0>>
+	<<replace "#clothes">>$activeSlave.clothes<</replace>>
+	<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
+<</link>>
 | <<link "Silken ballgown">>
 	<<set $activeSlave.clothes = "a ball gown",$activeSlave.choosesOwnClothes = 0>>
 	<<replace "#clothes">>$activeSlave.clothes<</replace>>
@@ -294,14 +314,14 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<</link>>
 <</if>>
 <<if isItemAccessible("a slutty qipao")>>
-	| //FS// <<link "Qipao (Slutty)">>
+	| //FS// <<link "Qipao (slutty)">>
 		<<set $activeSlave.clothes = "a slutty qipao",$activeSlave.choosesOwnClothes = 0>>
 		<<replace "#clothes">>$activeSlave.clothes<</replace>>
 		<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
 	<</link>>
 <</if>>
 <<if isItemAccessible("a long qipao")>>
-	| //FS// <<link "Qipao (Nice)">>
+	| //FS// <<link "Qipao (nice)">>
 		<<set $activeSlave.clothes = "a long qipao",$activeSlave.choosesOwnClothes = 0>>
 		<<replace "#clothes">>$activeSlave.clothes<</replace>>
 		<<replace "#clothingDescription">><br>//<<ClothingDescription>>//<</replace>>
diff --git a/src/utility/birthWidgets.tw b/src/utility/birthWidgets.tw
index d4cd770e1d9..f98f41d464c 100644
--- a/src/utility/birthWidgets.tw
+++ b/src/utility/birthWidgets.tw
@@ -1209,27 +1209,27 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 
 <<switch $slaves[$i].clothes>>
 
-<<case "slutty jewelry" "harem gauze" "slutty business attire" "a slutty maid outfit" "a slutty nurse outfit" "a schoolgirl outfit" "a cheerleader outfit" "clubslut netting" "Western clothing" "a slutty qipao" "a chattel habit" "a toga" "a huipil" "a fallen nuns habit" "a succubus outfit" "a mini dress" "a military uniform" "a schutzstaffel uniform" "a dirndl" "lederhosen" "a biyelgee costume" "a mounty outfit" "a long qipao" "a slutty schutzstaffel uniform" "a red army uniform" "an apron">> /* easy or pointless to remove */
+<<case "a biyelgee costume" "a chattel habit" "a cheerleader outfit" "a dirndl" "a fallen nuns habit" "a huipil" "a long qipao" "a military uniform" "a mini dress" "a mounty outfit" "a red army uniform" "a schoolgirl outfit" "a schutzstaffel uniform" "a slutty maid outfit" "a slutty nurse outfit" "a slutty qipao" "a slutty schutzstaffel uniform" "a succubus outfit" "a toga" "an apron" "clubslut netting" "harem gauze" "lederhosen" "slutty business attire" "slutty jewelry" "Western clothing">> /* easy or pointless to remove */
 	<<if _clothesSeed < 90>>
 		<<set _undressed = 1>>
 	<</if>>
 
-<<case "attractive lingerie" "a string bikini" "a scalemail bikini" "a kimono" "attractive lingerie for a pregnant woman" "stretch pants and a crop-top" "spats and a tank top">> /*easy to remove */
+<<case "a hijab and blouse" "a kimono" "a scalemail bikini" "a string bikini" "attractive lingerie" "attractive lingerie for a pregnant woman" "spats and a tank top" "stretch pants and a crop-top">> /*easy to remove */
 	<<if _clothesSeed < 80>>
 		<<set _undressed = 1>>
 	<</if>>
 
-<<case "a slave gown" "a hijab and abaya" "a halter top dress" "a ball gown" "a maternity dress">> /* dresses and etc */
+<<case "a ball gown" "a burqa" "a halter top dress" "a hijab and abaya" "a maternity dress" "a niqab and abaya" "a slave gown">> /* dresses and etc */
 	<<if _clothesSeed < 60>>
 		<<set _undressed = 1>>
 	<</if>>
 
-<<case "cutoffs and a t-shirt" "a slutty outfit" "nice business attire" "battledress" "battlearmor" "a nice maid outfit" "a leotard" "a monokini" "a cybersuit" "a comfortable bodysuit" "a bunny outfit" "conservative clothing" "a nice nurse outfit" "a latex catsuit">> /* getting hard to get out of quickly */
+<<case "a bunny outfit" "a burkini" "a comfortable bodysuit" "a cybersuit" "a latex catsuit" "a leotard" "a monokini" "a nice maid outfit" "a nice nurse outfit" "a slutty outfit" "battlearmor" "battledress" "conservative clothing" "cutoffs and a t-shirt" "nice business attire">> /* getting hard to get out of quickly */
 	<<if _clothesSeed < 40>>
 		<<set _undressed = 1>>
 	<</if>>
 
-<<case "uncomfortable straps" "restrictive latex" "a very tight corset" "chains" "shibari ropes">> /* very hard to get out of quickly */
+<<case "a very tight corset" "chains" "restrictive latex" "shibari ropes" "uncomfortable straps">> /* very hard to get out of quickly */
 	<<if _clothesSeed < 20>>
 		<<set _undressed = 1>>
 	<</if>>
@@ -1359,12 +1359,26 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 		Quickly $he spreads $his legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>.<<if $slaves[$i].fetish == "humiliation">> $He is disappointed that $his kimono hides what's happening between $his legs<<else>> $He does $his best to hide what's happening between $his legs<</if>>.
 	<</if>>
 
-<<case "a hijab and abaya">>
+<<case "a burqa">>
+	<<if $slaves[$i].fetish == "mindbroken">>
+		Instinctively, $he begins to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>, indifferent to the obvious wetness forming <<if $slaves[$i].mpreg == 1>>under $his rear<<else>>over $his crotch<</if>>.
+	<<else>>
+		Quickly $he spreads $his legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>.<<if $slaves[$i].fetish == "humiliation">> $He is disappointed that $his burqa hides what's happening between $his legs<<else>> $He does $his best to hide what's happening between $his legs<</if>>.
+	<</if>>
+
+<<case "a hijab and abaya" "a niqab and abaya">>
 	<<if $slaves[$i].fetish == "mindbroken">>
 		Instinctively, $he begins to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>, indifferent to the obvious wetness forming <<if $slaves[$i].mpreg == 1>>under $his rear<<else>>over $his crotch<</if>>.
 	<<else>>
 		Quickly $he spreads $his legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>.<<if $slaves[$i].fetish == "humiliation">> $He is disappointed that $his abaya hides what's happening between $his legs<<else>> $He does $his best to hide what's happening between $his legs<</if>>.
 	<</if>>
+	
+<<case "a hijab and blouse">>
+	<<if $slaves[$i].fetish == "mindbroken">>
+		Instinctively, $he begins to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>, indifferent to the obvious wetness forming <<if $slaves[$i].mpreg == 1>>under $his rear<<else>>over $his crotch<</if>>.
+	<<else>>
+		Quickly $he spreads $his legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>.<<if $slaves[$i].fetish == "humiliation">> $He is disappointed that $his skirt hides what's happening between $his legs<<else>> $He does $his best to hide what's happening between $his legs<</if>>.
+	<</if>>
 
 <<case "battledress">>
 	<<if $slaves[$i].fetish == "mindbroken">>
@@ -1437,6 +1451,22 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 	<<else>>
 		Quickly $he attempts to remove $his leotard but fails to do so before having to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>. $He can't hide what's happening between $his legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. The tight material stretches as $his child is born into it and with a little help $he's freed to finish giving birth.
 	<</if>>
+	
+<<case "a burkini">>
+	<<if $slaves[$i].fetish == "mindbroken">>
+		Instinctively, $he begins to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>, indifferent to who may be watching $his <<if $slaves[$i].mpreg == 1>>crotch<<else>>ass<</if>>.
+		<<if $slaves[$i].pregType > 30 && $slaves[$i].broodmother == 0>>
+			Child after child is born into $his burkini as the <<if $slaves[$i].mpreg == 1>>seat<<else>>front<</if>> distends more and more. Eventually the squirming mass pulls $him to the floor, where $he lies, still very much in labor. As the load of newborns reaches the swimsuit's limit, a loud rip sounds out as the overburdened garmit splits and frees $his brood into the world.
+		<<elseif $slaves[$i].pregType > 10 && $slaves[$i].broodmother == 0>>
+			Child after child is born into $his burkini as the <<if $slaves[$i].mpreg == 1>>seat<<else>>front<</if>> distends more and more. Eventually the squirming mass pulls $him to the floor, where $he lays until $he finishes giving birth. $He struggles to get to $his feet and carry on with $his task until someone helps free them from their polyester prison.
+		<<elseif $slaves[$i].pregType > 4 && $slaves[$i].broodmother == 0>>
+			Child after child is born into $his burkini as the <<if $slaves[$i].mpreg == 1>>seat<<else>>front<</if>> distends more and more. $He struggles to carry on with $his task with the squirming mass between $his legs until someone helps free them from their polyester prison.
+		<<else>>
+			$He finishes giving birth and begins anew on $his assigned task, ignoring the squirming bab<<if $slaves[$i].pregType > 1 && $slaves[$i].broodmother == 0>>ies<<else>>y<</if>> distending the <<if $slaves[$i].mpreg == 1>>seat<<else>>crotch<</if>> of $his swimsuit until someone helps them from their polyester prison.
+		<</if>>
+	<<else>>
+		Quickly $he attempts to remove $his burkini but fails to do so before having to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>. $He can't hide what's happening between $his legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>. The tight material stretches as $his child is born into it and with a little help $he's freed to finish giving birth.
+	<</if>>
 
 <<case "a monokini">>
 	<<if $slaves[$i].fetish == "mindbroken">>
@@ -1516,7 +1546,7 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 	<<if $slaves[$i].fetish == "mindbroken">>
 		Instinctively, $he begins to push out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>, indifferent to the obvious wetness forming <<if $slaves[$i].mpreg == 1>>under $his rear<<else>>over $his crotch<</if>>.
 	<<else>>
-		Quickly $he spreads $his legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>.<<if $slaves[$i].fetish == "humiliation">> $He is disappointed that $his skirt hides what's happening between $his legs<<else>> $He does $his best to hide what's happening between $his legs<</if>>.
+		Quickly $he spreads $his legs apart and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>.<<if $slaves[$i].fetish == "humiliation">> $He is disappointed that $his dress hides what's happening between $his legs<<else>> $He does $his best to hide what's happening between $his legs<</if>>.
 	<</if>>
 	
 <<case "battlearmor">>
@@ -1594,8 +1624,6 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 	<<if $slaves[$i].fetish == "mindbroken">>
 		$He removes $his
 		<<switch $slaves[$i].clothes>>
-		<<case "slutty jewelry" "harem gauze" "slutty business attire" "clubslut netting" "Western clothing" "attractive lingerie" "attractive lingerie for a pregnant woman" "battledress" "restrictive latex" "chains" "shibari ropes" "conservative clothing" "uncomfortable straps" "nice business attire">>
-		$slaves[$i].clothes
 		<<case "a slutty maid outfit">>
 		slutty maid outfit
 		<<case "a slutty nurse outfit">>
@@ -1650,8 +1678,8 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 		kimono
 		<<case "a slave gown">>
 		slave gown
-		<<case "a hijab and abaya">>
-		hijab and abaya
+		<<case "a hijab and abaya" "a niqab and abaya>>
+		abaya
 		<<case "a halter top dress">>
 		halter top dress
 		<<case "a ball gown">>
@@ -1664,6 +1692,12 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 		nice maid outfit
 		<<case "a leotard">>
 		leotard
+		<<case "a hijab and blouse">>
+		skirt
+		<<case "a burqa">>
+		burqa
+		<<case "a burkini">>
+		burkini
 		<<case "a monokini">>
 		monokini
 		<<case "a cybersuit">>
@@ -1680,13 +1714,13 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 		stretch pants
 		<<case "spats and a tank top">>
 		spats
+		<<default>>
+		$slaves[$i].clothes
 		<</switch>>
 		as instinct takes hold compelling $him to begin pushing. $He pays no mind to who may be watching $his naked <<if $slaves[$i].mpreg == 1>>rear<<else>>crotch<</if>> as <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his<<if $slaves[$i].pregType > 1>> first<</if>> baby<</if>> begins to crown.
 	<<else>>
 		$He hastily removes $his
 		<<switch $slaves[$i].clothes>>
-		<<case "slutty jewelry" "harem gauze" "slutty business attire" "clubslut netting" "Western clothing" "attractive lingerie" "attractive lingerie for a pregnant woman" "battledress" "restrictive latex" "chains" "shibari ropes" "conservative clothing" "uncomfortable straps" "nice business attire">>
-		$slaves[$i].clothes
 		<<case "a slutty maid outfit">>
 		slutty maid outfit
 		<<case "a slutty nurse outfit">>
@@ -1741,8 +1775,8 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 		kimono
 		<<case "a slave gown">>
 		slave gown
-		<<case "a hijab and abaya">>
-		hijab and abaya
+		<<case "a hijab and abaya" "a niqab and abaya>>
+		abaya
 		<<case "a halter top dress">>
 		halter top dress
 		<<case "a ball gown">>
@@ -1755,6 +1789,12 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 		nice maid outfit
 		<<case "a leotard">>
 		leotard
+		<<case "a hijab and blouse">>
+		skirt
+		<<case "a burqa">>
+		burqa
+		<<case "a burkini">>
+		burkini
 		<<case "a monokini">>
 		monokini
 		<<case "a cybersuit">>
@@ -1771,6 +1811,8 @@ Feeling childbirth approaching, $slaves[$i].slaveName is helped to $his prepared
 		stretch pants
 		<<case "spats and a tank top">>
 		spats
+		<<default>>
+		$slaves[$i].clothes
 		<</switch>>
 		and tosses it aside. Quickly $he spreads $his legs and begins pushing out <<if $slaves[$i].broodmother > 0>><<if $slaves[$i].birthsTotal == 0>>$his first<<else>>this week's<</if>> baby<<else>>$his bab<<if $slaves[$i].pregType > 1>>ies<<else>>y<</if>><</if>>. $He can't hide what's happening between $his legs, <<if $slaves[$i].fetish == "humiliation">>but that only makes it more exciting<<else>>so $he bears with it<</if>>.
 	<</if>>
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 664f382aa0c..34d46424294 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -566,9 +566,9 @@
 		<<elseif $activeSlave.boobs > 2000>>
 			large breasts stretch out the bodysuit so tightly that $his nipples are nearly visible.
 		<<elseif $activeSlave.boobs < 300>>
-			flat chest is hugged tightly by the bodysuit, $his nipples can be seen pushing against the material.
+			flat chest is hugged tightly by the bodysuit, $his nipples pushing against the material.
 		<<else>>
-			breasts totally bare.
+			breasts are hugged tightly by the bodysuit, $his nipples pushing against the material.
 		<</if>>
 	<<case "a bunny outfit">>
 		$activeSlave.slaveName's
@@ -747,7 +747,20 @@
 		<<else>>
 			light chain that loops under $his breasts.
 		<</if>>
-	<<case "a hijab and abaya">>
+	<<case "a burqa">>
+		$activeSlave.slaveName's burqa
+		<<if $activeSlave.boobs > 12000>>
+			entirely conceals $his breasts, although the fabric struggles to ensure they are entirely covered.
+		<<elseif $activeSlave.boobs > 8000>>
+			entirely conceals $his breasts. It has been let out a great deal in order to cover the entirety of $his chest.
+		<<elseif $activeSlave.boobs > 4000>>
+			entirely conceals $his breasts, though it cannot conceal their absurd size.
+		<<elseif $activeSlave.boobs < 300>>
+			entirely conceals $his flat chest.
+		<<else>>
+			entirely conceals $his breasts.
+		<</if>>
+	<<case "a hijab and abaya" "a niqab and abaya">>
 		$activeSlave.slaveName's abaya
 		<<if $activeSlave.boobs > 12000>>
 			modestly covers $his breasts, although the fabric struggles to ensure they are entirely covered.
@@ -760,6 +773,32 @@
 		<<else>>
 			modestly covers $his breasts.
 		<</if>>
+	<<case "a hijab and blouse">>
+		$activeSlave.slaveName's two shirts
+		<<if $activeSlave.boobs > 12000>>
+			modestly cover $his breasts, although the fabrics struggle to ensure they are entirely covered.
+		<<elseif $activeSlave.boobs > 4000>>
+			modestly cover $his breasts. They have both been let out a great deal in order to cover the entirety of $his chest.
+		<<elseif $activeSlave.boobs > 2000>>
+			modestly cover $his breasts, though it cannot conceal their absurd size.
+		<<elseif $activeSlave.boobs < 300>>
+			modestly cover $his flat chest.
+		<<else>>
+			modestly cover $his breasts.
+		<</if>>
+	<<case "a burkini">>
+		$activeSlave.slaveName's burkini
+		<<if $activeSlave.boobs > 12000>>
+			modestly covers $his breasts, although it struggles to ensure they are entirely covered.
+		<<elseif $activeSlave.boobs > 4000>>
+			modestly covers $his breasts. It has been let out a great deal in order to cover the entirety of $his chest.
+		<<elseif $activeSlave.boobs > 2000>>
+			modestly covers $his breasts, though it cannot conceal their absurd size.
+		<<elseif $activeSlave.boobs < 300>>
+			modestly covers $his flat chest.
+		<<else>>
+			modestly covers $his breasts.
+		<</if>>
 	<<default>>
 	<</switch>>
 <</if>>
@@ -1847,7 +1886,7 @@ $His
 	dips seductively down toward the cleft between $his
 	<</if>>
 	buttocks.
-<<case "a hijab and abaya">>
+<<case "a hijab and abaya" "a niqab and abaya">>
 	$His abaya modestly covers $his
 	<<if $activeSlave.butt > 10>>
 	ass, but it does nothing to conceal its absurd size.
@@ -1858,6 +1897,39 @@ $His
 	<<else>>
 	butt.
 	<</if>>
+<<case "a hijab and blouse">>
+	$His skirt modestly covers $his
+	<<if $activeSlave.butt > 8>>
+	ass, but it does nothing to conceal its absurd size.
+	<<elseif $activeSlave.butt > 5>>
+	butt, though it cannot conceal its absurd size.
+	<<elseif $activeSlave.butt > 3>>
+	big butt.
+	<<else>>
+	butt.
+	<</if>>
+<<case "a burqa">>
+	$His burqa modestly covers $his
+	<<if $activeSlave.butt > 10>>
+	ass, but it does nothing to conceal its absurd size.
+	<<elseif $activeSlave.butt > 7>>
+	butt, though it cannot conceal its absurd size.
+	<<elseif $activeSlave.butt > 3>>
+	big butt.
+	<<else>>
+	butt.
+	<</if>>
+<<case "a burkini">>
+	$His
+	<<if $activeSlave.butt > 9>>
+	giant ass pushes up $his swimsuit's tunic.
+	<<elseif $activeSlave.butt > 6>>
+	large butt is accentuated by $his swimsuit.
+	<<elseif $activeSlave.butt > 3>>
+	big bottom is modestly covered by $his swimsuit.
+	<<else>>
+	rear is modestly covered by $his swimsuit.
+	<</if>>
 <<case "a long qipao">>
 	$His qipao modestly covers $his
 	<<if $activeSlave.butt > 10>>
@@ -2236,6 +2308,8 @@ $He's got a
 		There is a distinct bulge at the crotch of $activeSlave.slaveName's pants.
 	<<elseif $activeSlave.dick > 1>>
 		There is a modest bulge at the crotch of $activeSlave.slaveName's pants.
+	<<else>>
+		The crotch of $activeSlave.slaveName's pants is perfectly smooth.
 	<</if>>
 <<case "spats and a tank top">>
 	<<if $activeSlave.dick > 7>>
@@ -2428,6 +2502,21 @@ $He's got a
 	<<else>>
 		$his clit.
 	<</if>>
+<<case "a burkini">>
+	$activeSlave.slaveName's burkini is designed to modestly cover $his
+	<<if ($activeSlave.dick > 5) && ($activeSlave.vagina > -1)>>
+		dual genitalia, but the size of the bulge between $his legs shows how well that worked.
+	<<elseif $activeSlave.dick > 5>>
+		penis, but the size of the bulge between $his legs shows how well that worked.
+	<<elseif ($activeSlave.dick > 0) && ($activeSlave.vagina > -1)>>
+		dual genitalia, which it does.
+	<<elseif $activeSlave.dick > 0>>
+		penis, which it does.
+	<<elseif $activeSlave.vagina == -1>>
+		genitalia-free groin, which it does very easily.
+	<<else>>
+		pussy, which it does.
+	<</if>>
 <<case "a monokini">>
 	$activeSlave.slaveName's
 	<<if $activeSlave.dick > 3>>
@@ -2654,7 +2743,7 @@ $He's got a
 		$activeSlave.slaveName's uniform skirt gives no hint of the cock behind it.
 	<</if>>
 <<case "an apron">>
-	<<if $activeSlave.dick > 3>>
+	<<if $activeSlave.dick > 4>>
 		$activeSlave.slaveName's apron has a noticeable bulge in the front.
 	<<elseif ($activeSlave.dick > 0) && ($activeSlave.vagina > -1)>>
 		$activeSlave.slaveName's hermaphroditic genitalia are hidden in the front by $his apron.
@@ -2820,8 +2909,8 @@ $He's got a
 	<<elseif $activeSlave.vagina > -1>>
 		$activeSlave.slaveName's skirt is barely long enough to cover $his pussy.
 	<</if>>
-<<case "a hijab and abaya">>
-	<<if $activeSlave.dick > 3>>
+<<case "a hijab and abaya" "a niqab and abaya">>
+	<<if $activeSlave.dick > 4>>
 		When $he moves, something occasionally bulges the front of $his abaya.
 	<<elseif ($activeSlave.dick > 0) && ($activeSlave.vagina > -1)>>
 		$activeSlave.slaveName's abaya properly conceals $his hermaphroditic genitalia.
@@ -2832,6 +2921,28 @@ $He's got a
 	<<else>>
 		$activeSlave.slaveName's abaya properly conceals $his pussy.
 	<</if>>
+<<case "a burqa">>
+	<<if $activeSlave.dick > 6>>
+		When $he moves, something occasionally bulges the front of $his burqa.
+	<<elseif ($activeSlave.dick > 0) && ($activeSlave.vagina > -1)>>
+		$activeSlave.slaveName's burqa properly conceals $his hermaphroditic genitalia.
+	<<elseif $activeSlave.dick > 0>>
+		$activeSlave.slaveName's burqa properly conceals $his cock.
+	<<elseif $activeSlave.vagina == -1>>
+		$activeSlave.slaveName's burqa properly conceals $his featureless groin.
+	<<else>>
+		$activeSlave.slaveName's burqa properly conceals $his pussy.
+	<</if>>
+<<case "a hijab and blouse">>
+	<<if $activeSlave.dick > 6>>
+		There is an absurd bulge at the crotch of $activeSlave.slaveName's skirt.
+	<<elseif $activeSlave.dick > 4>>
+		There is a distinct bulge at the crotch of $activeSlave.slaveName's skirt.
+	<<elseif $activeSlave.dick > 2>>
+		There is a modest bulge at the crotch of $activeSlave.slaveName's skirt.
+	<<else>>
+		The crotch of $activeSlave.slaveName's skirt is perfectly smooth.
+	<</if>>
 <<case "a long qipao">>
 	<<if $activeSlave.dick > 3>>
 		When $he moves, something occasionally bulges the front of $his qipao.
@@ -6386,12 +6497,12 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's suit has no stomach to it as it's the only way to give $his monolithic implant-filled belly the space it demands.
+			$activeSlave.slaveName's suit has no stomach to it, as it's the only way to give $his monolithic implant-filled belly the space it demands.
 		<<else>>
 			<<if $activeSlave.preg > 34>>
 				$activeSlave.slaveName's suit is designed to carefully cradle and reinforce $his monolithic pregnancy creating an imposing, lumpy dome capped by $his popped navel. It visibly shifts and pulses as $his brood competes for space.
 			<<else>>
-				$activeSlave.slaveName's suit has no stomach to it as it's the only way to give $his monolithic pregnancy the space it requires to shift and bulge ominously.
+				$activeSlave.slaveName's suit has no stomach to it, as it's the only way to give $his monolithic pregnancy the space it requires to shift and bulge ominously.
 			<</if>>
 		<</if>>
 	<<elseif $activeSlave.belly >= 600000>>
@@ -6399,7 +6510,7 @@ $He has
 		<<elseif $activeSlave.bellyImplant > 0>>
 			$activeSlave.slaveName's titanic implant-filled belly is allowed to bulge out of an enormous hole in the suit.
 		<<else>>
-			$activeSlave.slaveName's titanic pregnant belly is allowed to bulge out of an enormous hole in the suit giving $his squirming occupants room to grow.
+			$activeSlave.slaveName's titanic pregnant belly is allowed to bulge out of an enormous hole in the suit, giving $his squirming occupants room to grow.
 		<</if>>
 	<<elseif $activeSlave.belly >= 450000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -10579,6 +10690,7 @@ $He has
 		//WIP//
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
 			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
 		<<else>>
@@ -10586,6 +10698,7 @@ $He has
 		<</if>>
 	<<elseif $activeSlave.belly >= 600000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
 			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
 		<<else>>
@@ -10593,6 +10706,7 @@ $He has
 		<</if>>
 	<<elseif $activeSlave.belly >= 450000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
 			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
 		<<else>>
@@ -10674,6 +10788,406 @@ $He has
 	<<elseif $activeSlave.muscles > 30>>
 		$activeSlave.slaveName's apron fully covers $his muscular abs.
 	<</if>>
+<<case "a hijab and abaya" "a niqab and abaya">>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 600000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 450000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 300000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his massive pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 120000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 30000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 190>>
+		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
+	<<elseif $activeSlave.belly >= 15000 || ($activeSlave.bellyAccessory == "a huge empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a huge empathy belly">>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge <<print $activeSlave.inflationType>>-filled belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+		<<else>>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 10000 || ($activeSlave.bellyAccessory == "a large empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
+			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 160>>
+		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
+	<<elseif $activeSlave.weight > 130>>
+		$activeSlave.slaveName's abaya is filled out by $his big fat belly.
+	<<elseif $activeSlave.belly >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a medium empathy belly">>
+			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya is filled out by $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is filled out by $his implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 95>>
+		$activeSlave.slaveName's abaya is filled out by $his fat belly.
+	<<elseif $activeSlave.belly >= 1500 || $activeSlave.bellyAccessory == "a small empathy belly">>
+		<<if $activeSlave.bellyAccessory == "a small empathy belly">>
+			$activeSlave.slaveName's abaya bulges with $his pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya bulges with $his implant-rounded belly.
+		<<else>>
+			$activeSlave.slaveName's abaya bulges with $his growing belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 30>>
+		$activeSlave.slaveName's abaya bulges slightly from $his chubby belly.
+	<<elseif $activeSlave.bellyPreg >= 100 || $activeSlave.bellyImplant >= 100>>
+		$activeSlave.slaveName's abaya is slightly rounded by $his belly.
+	<<elseif $activeSlave.muscles > 30>>
+		$activeSlave.slaveName's abaya fully covers $his muscular abs.
+	<</if>>
+<<case "a burqa">>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 600000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 450000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 300000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his massive pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 120000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 30000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 190>>
+		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
+	<<elseif $activeSlave.belly >= 15000 || ($activeSlave.bellyAccessory == "a huge empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a huge empathy belly">>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge <<print $activeSlave.inflationType>>-filled belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+		<<else>>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 10000 || ($activeSlave.bellyAccessory == "a large empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
+			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 160>>
+		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
+	<<elseif $activeSlave.weight > 130>>
+		$activeSlave.slaveName's abaya is filled out by $his big fat belly.
+	<<elseif $activeSlave.belly >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a medium empathy belly">>
+			There is a slight roundness to the middle of $activeSlave.slaveName's burqa, thanks to $his pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			There is a slight roundness to the middle of $activeSlave.slaveName's burqa, thanks to $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			There is a slight roundness to the middle of $activeSlave.slaveName's burqa, thanks to $his implant-filled belly.
+		<<else>>
+			There is a slight roundness to the middle of $activeSlave.slaveName's burqa, thanks to $his pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 95>>
+		$activeSlave.slaveName's abaya is filled out by $his fat belly.
+	<<elseif $activeSlave.belly >= 1500 || $activeSlave.bellyAccessory == "a small empathy belly">>
+		<<if $activeSlave.bellyAccessory == "a small empathy belly">>
+			$activeSlave.slaveName's abaya bulges with $his pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya bulges with $his implant-rounded belly.
+		<<else>>
+			$activeSlave.slaveName's abaya bulges with $his growing belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 30>>
+		$activeSlave.slaveName's abaya bulges slightly from $his chubby belly.
+	<<elseif $activeSlave.bellyPreg >= 100 || $activeSlave.bellyImplant >= 100>>
+		$activeSlave.slaveName's burqa totally conceals $his belly.
+	<<elseif $activeSlave.muscles > 30>>
+		$activeSlave.slaveName's burqa totally conceals $his abdominal muscles.
+	<</if>>
+<<case "a burkini">>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 600000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 450000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 300000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his massive pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 120000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 30000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 190>>
+		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
+	<<elseif $activeSlave.belly >= 15000 || ($activeSlave.bellyAccessory == "a huge empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a huge empathy belly">>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge <<print $activeSlave.inflationType>>-filled belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+		<<else>>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 10000 || ($activeSlave.bellyAccessory == "a large empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
+			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 160>>
+		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
+	<<elseif $activeSlave.weight > 130>>
+		$activeSlave.slaveName's abaya is filled out by $his big fat belly.
+	<<elseif $activeSlave.belly >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a medium empathy belly">>
+			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya is filled out by $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is filled out by $his implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 95>>
+		$activeSlave.slaveName's abaya is filled out by $his fat belly.
+	<<elseif $activeSlave.belly >= 1500 || $activeSlave.bellyAccessory == "a small empathy belly">>
+		<<if $activeSlave.bellyAccessory == "a small empathy belly">>
+			$activeSlave.slaveName's abaya bulges with $his pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya bulges with $his implant-rounded belly.
+		<<else>>
+			$activeSlave.slaveName's burkini bulges with $his growing belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 30>>
+		$activeSlave.slaveName's abaya bulges slightly from $his chubby belly.
+	<<elseif $activeSlave.bellyPreg >= 100 || $activeSlave.bellyImplant >= 100>>
+		$activeSlave.slaveName's abaya is slightly rounded by $his belly.
+	<<elseif $activeSlave.muscles > 30>>
+		$activeSlave.slaveName's abaya fully covers $his muscular abs.
+	<</if>>
+<<case "a hijab and blouse">>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 600000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 450000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 300000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his massive pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 120000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 30000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 190>>
+		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
+	<<elseif $activeSlave.belly >= 15000 || ($activeSlave.bellyAccessory == "a huge empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a huge empathy belly">>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge <<print $activeSlave.inflationType>>-filled belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+		<<else>>
+			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.belly >= 10000 || ($activeSlave.bellyAccessory == "a large empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
+			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 160>>
+		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
+	<<elseif $activeSlave.weight > 130>>
+		$activeSlave.slaveName's abaya is filled out by $his big fat belly.
+	<<elseif $activeSlave.belly >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
+		<<if $activeSlave.bellyAccessory == "a medium empathy belly">>
+			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya is filled out by $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya is filled out by $his implant-filled belly.
+		<<else>>
+			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 95>>
+		$activeSlave.slaveName's abaya is filled out by $his fat belly.
+	<<elseif $activeSlave.belly >= 1500 || $activeSlave.bellyAccessory == "a small empathy belly">>
+		<<if $activeSlave.bellyAccessory == "a small empathy belly">>
+			$activeSlave.slaveName's abaya bulges with $his pregnant belly.
+		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's abaya bulges with $his implant-rounded belly.
+		<<else>>
+			$activeSlave.slaveName's abaya bulges with $his growing belly.
+		<</if>>
+	<<elseif $activeSlave.weight > 30>>
+		$activeSlave.slaveName's abaya bulges slightly from $his chubby belly.
+	<<elseif $activeSlave.bellyPreg >= 100 || $activeSlave.bellyImplant >= 100>>
+		$activeSlave.slaveName's abaya is slightly rounded by $his belly.
+	<<elseif $activeSlave.muscles > 30>>
+		$activeSlave.slaveName's blouse and skirt fully cover $his muscular abs.
+	<</if>>
 <<case "attractive lingerie">>
 	<<if $activeSlave.belly >= 1000000>>
 		//WIP//
@@ -10771,6 +11285,7 @@ $He has
 		//WIP//
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's monolithic pregnant belly sticks far out of $his corset, which is just barely laced above it and straining to hold together under the ever increasing pressure.
 		<<elseif $activeSlave.bellyImplant > 0>>
 			$activeSlave.slaveName's monolithic implant-filled belly sticks far out of $his corset, which is just barely laced above it and straining to hold together from the sheer size of $him.
 		<<else>>
@@ -11024,36 +11539,37 @@ $He has
 			$activeSlave.slaveName's maid dress is almost conservative. It covers $his big pregnant belly completely, though it cannot hide $his popped navel, poking through the front.
 		<</if>>
 	<<elseif $activeSlave.weight > 160>>
-		$activeSlave.slaveName's maid dress is almost conservative, it covers $his hugely fat belly completely, but does nothing to hide how big and jiggly it is.
+		$activeSlave.slaveName's maid dress is almost conservative; it covers $his hugely fat belly completely, but does nothing to hide how big and jiggly it is.
 	<<elseif $activeSlave.weight > 130>>
-		$activeSlave.slaveName's maid dress is almost conservative, it covers $his big fat belly completely, but does nothing to hide how big and jiggly it is.
+		$activeSlave.slaveName's maid dress is almost conservative; it covers $his big fat belly completely, but does nothing to hide how big and jiggly it is.
 	<<elseif $activeSlave.belly >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a medium empathy belly">>
-			$activeSlave.slaveName's maid dress is almost conservative, it covers $his pregnant belly completely, but does nothing to hide just how large it is.
+			$activeSlave.slaveName's maid dress is almost conservative; it covers $his pregnant belly completely, but does nothing to hide just how large it is.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's maid dress is almost conservative, it covers $his jiggling <<print $activeSlave.inflationType>>-filled belly completely, but does nothing to hide its size and motion.
+			$activeSlave.slaveName's maid dress is almost conservative; it covers $his jiggling <<print $activeSlave.inflationType>>-filled belly completely, but does nothing to hide its size and motion.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's maid dress is almost conservative, it covers $his implant-filled belly completely, but does nothing to hide just how large it is.
+			$activeSlave.slaveName's maid dress is almost conservative; it covers $his implant-filled belly completely, but does nothing to hide just how large it is.
 		<<else>>
-			$activeSlave.slaveName's maid dress is almost conservative, it covers $his pregnant belly completely, but does nothing to hide just how large it has gotten.
+			$activeSlave.slaveName's maid dress is almost conservative; it covers $his pregnant belly completely, but does nothing to hide just how large it has gotten.
 		<</if>>
 	<<elseif $activeSlave.weight > 95>>
-		$activeSlave.slaveName's maid dress is almost conservative, it covers $his fat belly completely, but does nothing to hide how big it is.
+		$activeSlave.slaveName's maid dress is almost conservative; it covers $his fat belly completely, but does nothing to hide how big it is.
 	<<elseif $activeSlave.belly >= 1500 || $activeSlave.bellyAccessory == "a small empathy belly">>
 		<<if $activeSlave.bellyAccessory == "a small empathy belly">>
-			$activeSlave.slaveName's maid dress is almost conservative, it covers $his small belly completely.
+			$activeSlave.slaveName's maid dress is almost conservative; it covers $his small belly completely.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's maid dress is almost conservative, it covers $his <<print $activeSlave.inflationType>>-swollen belly completely.
+			$activeSlave.slaveName's maid dress is almost conservative; it covers $his <<print $activeSlave.inflationType>>-swollen belly completely.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's maid dress is almost conservative, it covers $his implant-rounded belly completely.
+			$activeSlave.slaveName's maid dress is almost conservative; it covers $his implant-rounded belly completely.
 		<<else>>
-			$activeSlave.slaveName's maid dress is almost conservative, it covers $his growing belly completely.
+			$activeSlave.slaveName's maid dress is almost conservative; it covers $his growing belly completely.
 		<</if>>
 	<<elseif $activeSlave.weight > 30>>
-		$activeSlave.slaveName's maid dress is almost conservative, it covers $his chubby belly completely.
-	/* no very early belly */
+		$activeSlave.slaveName's maid dress is almost conservative; it covers $his chubby belly completely.
+	<<elseif $activeSlave.bellyPreg >= 100 || $activeSlave.bellyImplant >= 100>>
+		$activeSlave.slaveName's maid dress is almost conservative; it covers $his growing belly completely.
 	<<elseif $activeSlave.muscles > 30>>
-		$activeSlave.slaveName's maid dress is almost conservative, it covers $his ripped abs completely.
+		$activeSlave.slaveName's maid dress is almost conservative; it covers $his ripped abs completely.
 	<</if>>
 <<case "a fallen nuns habit">>
 	<<if $activeSlave.belly >= 1000000>>
@@ -11617,28 +12133,6 @@ $He has
 	<<elseif $activeSlave.weight > 30>>
 		$activeSlave.slaveName's chubby belly is demurely covered by $his kimono.
 	<</if>>
-<<case "a hijab and abaya">>
-	<<if $activeSlave.bellyPreg >= 600000>>
-		$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
-	<<elseif $activeSlave.bellyPreg >= 300000>>
-		$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
-	<<elseif $activeSlave.weight > 190>>
-		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
-	<<elseif $activeSlave.bellyPreg >= 10000 || ($activeSlave.bellyAccessory == "a huge empathy belly") || ($activeSlave.bellyAccessory == "a large empathy belly")>>
-		$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
-	<<elseif $activeSlave.weight > 160>>
-		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
-	<<elseif $activeSlave.weight > 130>>
-		$activeSlave.slaveName's abaya is filled out by $his big fat belly.
-	<<elseif $activeSlave.bellyPreg >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
-		$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
-	<<elseif $activeSlave.weight > 95>>
-		$activeSlave.slaveName's abaya is filled out by $his fat belly.
-	<<elseif (($activeSlave.bellyPreg >= 1500) || ($activeSlave.bellyAccessory == "a small empathy belly"))>>
-		$activeSlave.slaveName's abaya bulges with $his growing belly.
-	<<elseif $activeSlave.weight > 30>>
-		$activeSlave.slaveName's abaya bulges from $his chubby belly.
-	<</if>>
 <<case "battledress">>
 	<<if $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's tank top rests atop $his titanic bulging pregnant belly leaving $him looking like someone who fucked half the country.
@@ -15811,7 +16305,7 @@ $He has
 <<case "a kimono">>
 	$activeSlave.slaveName's <<print $activeSlave.inflationType>>-swollen belly is demurely covered by $his kimono.
 <<case "a hijab and abaya">>
-	$activeSlave.slaveName's abaya is bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+	$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top covers the top of $his <<print $activeSlave.inflationType>>-swollen belly leaving $him looking like someone who had too much fun on shore-leave.
 <<case "a halter top dress">>
diff --git a/src/utility/descriptionWidgetsPiercings.tw b/src/utility/descriptionWidgetsPiercings.tw
index 0406d4e874f..db09f2e651e 100644
--- a/src/utility/descriptionWidgetsPiercings.tw
+++ b/src/utility/descriptionWidgetsPiercings.tw
@@ -19,7 +19,7 @@
 				$His earrings mimic tiny crowns of thorns.
 			<<case "a chattel habit">>
 				$He's wearing golden earrings in the shape of saintly nudes.
-			<<case "a hijab and abaya">>
+			<<case "a hijab and abaya" "a niqab and abaya">>
 				$He's wearing bronze earrings shaped like crescent moons.
 			<<case "a slutty qipao">>
 				$His golden earrings resemble Eastern-style dragons.
@@ -27,14 +27,18 @@
 				$He's wearing girly earrings.
 			<<case "a schoolgirl outfit">>
 				$He's wearing girlish earrings.
-			<<case "a monokini">>
+			<<case "a burkini" "a monokini">>
 				$He's wearing unobtrusive little stud earrings.
-			<<case "an apron">>
+			<<case "a mini dress" "an apron">>
 				$He's wearing shiny pearl earrings.
-			<<case "a cybersuit">>
+			<<case "a hijab and blouse" "conservative clothing">>
+				$He's wearing small unobtrusive hoop earrings.
+			<<case "a cybersuit" "a scalemail bikini">>
 				$He's wearing sharp and brutal-looking earrings.
 			<<case "a kimono">>
 				$He's wearing gorgeous enameled earrings made to look like tiny koi.
+			<<case "a burqa">>
+				$He's wearing cheap metal earrings with fake gems.
 			<<case "a slave gown" "a halter top dress" "a ball gown" "a maternity dress">>
 				$He's wearing lovely diamond earrings; the stones are cut in an alluring, feminine style.
 			<<case "slutty business attire">>
@@ -352,7 +356,7 @@ $He has a corset piercing, a ladder of steel rings running up each side of $his
 <<else>>
 <<switch $activeSlave.clothes>>
 
-<<case "conservative clothing" "slutty business attire" "nice business attire" "a schoolgirl outfit">>
+<<case "a hijab and blouse" "conservative clothing" "slutty business attire" "nice business attire" "a schoolgirl outfit">>
 	$his blouse hides them completely, but they're laced tightly, so $he's aware they're there.
 
 <<case "chains">>
@@ -367,7 +371,7 @@ $He has a corset piercing, a ladder of steel rings running up each side of $his
 <<case "a huipil">>
 	$his huipil hides them partially, so the leather straps that pull on $his's skin are clearly evident.
 
-<<case "a slutty qipao">>
+<<case "a long qipao" "a slutty qipao">>
 	$his qipao hides them completely, but they're laced tightly with silk cord, so $he's aware they're there.
 
 <<case "uncomfortable straps">>
@@ -398,9 +402,6 @@ $He has a corset piercing, a ladder of steel rings running up each side of $his
 <<case "a red army uniform">>
 	$his tunic hides them completely, but they're laced tightly, so $he's aware they're there.
 	
-<<case "a long qipao">>
-	$his dress hides them completely, but they're laced tightly, so $he's aware they're there.
-	
 <<case "battlearmor">>
 	$his armor hides them completely, but they're laced tightly, so $he's aware they're there.
 	
@@ -444,6 +445,9 @@ $He has a corset piercing, a ladder of steel rings running up each side of $his
 <<case "a penitent nuns habit">>
 	$his habit hides them completely, but they're laced tightly, so $he's aware they're there.
 	
+<<case "a burkini">>
+	$his swimsuit hides them completely, but they're laced tightly, so $he's aware they're there.
+	
 <<case "a monokini">>
 	the straps of $his swimsuit run on each side of these loops.
 	
@@ -513,8 +517,11 @@ $He has a corset piercing, a ladder of steel rings running up each side of $his
 <<case "a kimono">>
 	$his kimono hides them completely, but they're laced tightly, so $he's aware they're there.
 
-<<case "a hijab and abaya">>
+<<case "a hijab and abaya" "a niqab and abaya">>
 	$his abaya hides them completely, but they're laced tightly, so $he's aware they're there.
+	
+<<case "a burqa">>
+	$his burqa hides them completely, but they're laced tightly, so $he's aware they're there.
 
 <<case "battledress">>
 	they're laced together with paracord.
diff --git a/src/utility/descriptionWidgetsStyle.tw b/src/utility/descriptionWidgetsStyle.tw
index 3a9fcab4de3..9dbb2745f10 100644
--- a/src/utility/descriptionWidgetsStyle.tw
+++ b/src/utility/descriptionWidgetsStyle.tw
@@ -541,8 +541,26 @@ $activeSlave.slaveName is
 		pattern, and
 		<<footwearDescription>>
 	<</if>>
+	
+<<case "a burkini">>
+	consisting of a polyester tunic and
+	<<if ($activeSlave.amp == 1)>>
+		pants, which have been tailored for $his leglessness.
+	<<else>>
+		pants, and
+		<<footwearDescription>>
+	<</if>>
 
-<<case "a hijab and abaya">>
+<<case "a hijab and blouse">>
+	alongside a short-sleeved overshirt and a skirt that
+	<<if ($activeSlave.amp == 1)>>
+		dangles uselessly off $his limbless torso.
+	<<else>>
+		extends down to $his feet, and
+		<<footwearDescription>>
+	<</if>>
+	
+<<case "a hijab and abaya" "a niqab and abaya">>
 	which modestly covers $his entire
 	<<if ($activeSlave.amp == 1)>>
 		body.
@@ -550,6 +568,15 @@ $activeSlave.slaveName is
 		body, down to $his feet, which
 		<<footwearDescription>>
 	<</if>>
+	
+<<case "a burqa">>
+	which restrictingly covers $his entire
+	<<if ($activeSlave.amp == 1)>>
+		body.
+	<<else>>
+		body, down to $his feet, which
+		<<footwearDescription>>
+	<</if>>
 
 <<case "a military uniform">>
 	consisting of a shirt and tie, military
@@ -835,7 +862,7 @@ $His
 			cascades gorgeously down $his bare back.
 		<<case "a kimono" "a long qipao">>
 			cascades elegantly down $his back, kept sensibly in place by a set of ivory hairpins.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is not visible under $his modest head covering.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is long and loose, but is decorated with little black bows here and there.
@@ -875,7 +902,7 @@ $His
 			flows fashionably down $his bare back.
 		<<case "a kimono" "a long qipao">>
 			flows elegantly down $his back, kept sensibly in place by a set of ivory hairpins.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is not visible under $his modest head covering.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is decorated with a little black bow in back.
@@ -915,7 +942,7 @@ $His
 			follows the latest fashion.
 		<<case "a kimono" "a long qipao">>
 			is kept sensibly in place by a set of ivory hairpins.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is not visible under $his modest head covering.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is decorated with a little black bow in back.
@@ -953,7 +980,7 @@ $His
 			is gelled into a fashionable wave.
 		<<case "a ball gown">>
 			is gelled into a fashionable wave.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is not visible under $his modest head covering.
 		<<case "conservative clothing" "nice business attire">>
 			is parted on the side.
@@ -993,7 +1020,7 @@ $His
 			is piled up on $his head in a huge beehive, itself veiled.
 		<<case "a slave gown" "a halter top dress" "a ball gown">>
 			is piled up on $his head in a perfect 60's beehive.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is not visible under $his modest head covering, though it's obvious $he has a huge mass of hair restrained under there.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is back in a huge bun, and topped with a little maid's cap.
@@ -1032,7 +1059,7 @@ $His
 			is piled up on $his head in a beehive, pulling $his veil up a little.
 		<<case "a slave gown" "a ball gown" "a halter top dress">>
 			is piled up on $his head in a perfect 60's beehive.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is not visible under $his modest head covering.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is back in a severe bun, and topped with a little maid's cap.
@@ -1071,7 +1098,7 @@ $His
 			is piled on $his head, pulling $his veil up a little.
 		<<case "a slave gown" "a ball gown" "a halter top dress">>
 			is piled up on $his head in a perfect 60's 'do.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is not visible under $his modest head covering.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is back in a little bun, and topped with a little maid's cap.
@@ -1150,7 +1177,7 @@ $His
 			is gathered into secure tails and doubled up so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is gathered into floor-length tails by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and blouse" "a hijab and abaya" "a niqab and abaya">>
 			is in long tails, but they're hidden by $his modest garb.
 		<<default>>
 			is in twin tails that almost reach the ground.
@@ -1206,7 +1233,7 @@ $His
 			is gathered into secure tails so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is gathered into long tails by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in tails, but they're hidden by $his modest garb.
 		<<default>>
 			is in long twin braids.
@@ -1262,7 +1289,7 @@ $His
 			is gathered into short tails so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is gathered into short tails by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in tails, but they're hidden by $his modest garb.
 		<<default>>
 			is in short braids.
@@ -1322,7 +1349,7 @@ $His
 			is gathered into a ponytail and doubled up so $he can do business without it getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is gathered into a floor-length ponytail by a white cloth tie emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in a long ponytail, but it's hidden by $his modest garb.
 		<<default>>
 			is in a ponytail that almost reaches the ground.
@@ -1378,7 +1405,7 @@ $His
 			is gathered into a secure ponytail so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is gathered into a long ponytail by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in a long ponytail, but it's hidden by $his modest garb.
 		<<default>>
 			is in a long braid.
@@ -1434,7 +1461,7 @@ $His
 			is gathered into a short ponytail so $he can do business without it getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is gathered into a short ponytail by a white cloth tie emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in a ponytail, but it's hidden by $his modest garb.
 		<<default>>
 			is in a short ponytail.
@@ -1490,7 +1517,7 @@ $His
 			is gathered into secure braids and doubled up so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is gathered into floor-length braids by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in long braids, but they're hidden by $his modest garb.
 		<<default>>
 			is in braids that almost reach the ground.
@@ -1542,7 +1569,7 @@ $His
 			is tied into long braids and secured so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit">>
 			is tied into long braids and secured by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in braids, but they're hidden by $his modest garb.
 		<<default>>
 			is in long braids.
@@ -1594,7 +1621,7 @@ $His
 			is gathered into short braids so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is gathered into short braids by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in short braids, but they're hidden by $his modest garb.
 		<<default>>
 			is in short braids.
@@ -1650,7 +1677,7 @@ $His
 			is in dreadlocks and tied up so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is in floor-length dreadlocks, some in white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in long dreadlocks, barely hidden by $his modest garb.
 		<<default>>
 			is in dreadlocks that almost reach the ground.
@@ -1706,7 +1733,7 @@ $His
 			is in dreadlocks and tied so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is in dreadlocks, some with white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in dreadlocks, but they're hidden by $his modest garb.
 		<<default>>
 			is in dreadlocks.
@@ -1758,7 +1785,7 @@ $His
 			is in short dreadlocks and tied so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is in short dreadlocks, some in white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is in short dreadlocks, but they're hidden by $his modest garb.
 		<<default>>
 			is in short dreadlocks.
@@ -1814,7 +1841,7 @@ $His
 			is curled into long flowing locks and tied up so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is curled into long flowing locks, secured by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is curled into long flowing locks, barely hidden by $his modest garb.
 		<<default>>
 			is curled into long flowing locks that almost reach the ground.
@@ -1866,7 +1893,7 @@ $His
 			is curled into long locks and tied so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is curled into long locks, secured by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is curled into long locks, but they're hidden by $his modest garb.
 		<<default>>
 			is curled into long locks.
@@ -1918,7 +1945,7 @@ $His
 			is curled into short locks and tied so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is curled into short locks secured by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is curled into short locks, but they're hidden by $his modest garb.
 		<<default>>
 			is curled into short locks.
@@ -1974,7 +2001,7 @@ $His
 			is permed into long flowing curls and tied up so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is permed into long flowing curls, secured by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is permed, barely hidden by $his modest garb.
 		<<default>>
 			is permed, $his curls almost reach the ground.
@@ -2026,8 +2053,8 @@ $His
 			is permed and tied so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is permed, secured by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
-			is permed, $his long curls are hidden by $his modest garb.
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
+			is permed, $his long curls hidden by $his modest garb.
 		<<default>>
 			is permed.
 		<</switch>>
@@ -2078,7 +2105,7 @@ $His
 			is permed into short waves and tied so $he can do business without them getting in the way.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is permed into short waves secured by white cloth ties emblazoned with little red crosses.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is permed into short waves, but they're hidden by $his modest garb.
 		<<default>>
 			is permed into short waves.
@@ -2103,7 +2130,7 @@ $His
 			is in luxurious layered locks flowing gorgeously down $his bare back.
 		<<case "a kimono" "a long qipao">>
 			is in luxurious layered locks flowing elegantly down $his back, kept sensibly in place by a set of ivory hairpins.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is in luxurious layered locks but not visible under $his modest head covering.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is in luxurious layered locks flowing gorgeously down $his back, decorated with little black bows here and there.
@@ -2141,7 +2168,7 @@ $His
 			is in luxurious layered locks flowing gorgeously down $his bare back.
 		<<case "a kimono" "a long qipao">>
 			is in luxurious layered locks flowing elegantly down $his back, kept sensibly in place by a set of ivory hairpins.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is in luxurious layered locks flowing gorgeously but not visible under $his modest head covering.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is in luxurious layered locks, decorated with a little black bow in back.
@@ -2179,7 +2206,7 @@ $His
 			is in luxuriously styled short locks.
 		<<case "a kimono" "a long qipao">>
 			is in luxuriously styled short locks kept sensibly in place by a set of ivory hairpins.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is in luxuriously styled short locks but not visible under $his modest head covering.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is in luxuriously styled short locks decorated with a little black bow in back.
@@ -2211,7 +2238,7 @@ $His
 			fits under $his latex hood.
 		<<case "harem gauze">>
 			is in luxuriously styled short locks covered by a flimsy hairnet.
-		<<case "a hijab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya" "a penitent nuns habit" "a fallen nuns habit" "a chattel habit">>
 			is in luxuriously styled short locks but not visible under $his modest head covering.
 		<<case "a slutty nurse outfit" "a nice nurse outfit">>
 			is in luxuriously styled short locks secured by a traditional white nurse's headband, complete with red cross.
@@ -2253,7 +2280,7 @@ $His
 			is shaved into a strip that cascades magnificently down $his back, with scores of tiny pastel bows woven into it.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is shaved into a strip that cascades magnificently down $his back, with scores of tiny black bows woven into it.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is shaved into a strip that's hidden by $his head covering.
 		<<default>>
 			is shaved into a strip atop $his head that cascades magnificently down $his back.
@@ -2284,7 +2311,7 @@ $His
 			is shaved into a long braided strip with tiny pastel bows woven into it.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is shaved into a long braided strip with tiny black bows woven into it.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is shaved into a long braided strip, hidden by $his head covering.
 		<<default>>
 			is shaved into a long braided strip.
@@ -2315,7 +2342,7 @@ $His
 			is shaved into a strip down the middle of $his head with tiny pastel bows woven into it.
 		<<case "a slutty maid outfit" "a nice maid outfit">>
 			is shaved into a strip down the middle of $his head with tiny black bows woven into it.
-		<<case "a hijab and abaya">>
+		<<case "a burkini" "a burqa" "a hijab and abaya" "a hijab and blouse" "a niqab and abaya">>
 			is shaved into a strip down the middle of $his head, hidden by $his head covering.
 		<<default>>
 			is shaved into a strip.
@@ -2387,8 +2414,16 @@ $His
 			The upper half of $his face is covered by the hood of $his latex suit: though $he can see through eye-holes, these can easily be closed to blind $him.
 		<<case "harem gauze">>
 			$His harem outfit includes the traditional veil for $his face.
+		<<case "a burkini">>
+			Above $his shoulders, $his burkini leaves only $his face bare.
+		<<case "a hijab and blouse">>
+			Above the shoulders of $his blouse, $his hijab leaves only $his face bare.
 		<<case "a hijab and abaya">>
 			Above the shoulders of $his abaya, $his hijab leaves only $his face bare.
+		<<case "a niqab and abaya">>
+			Above the shoulders of $his abaya, $his niqab leaves only the area around $his eyes bare.
+		<<case "a burqa">>
+			$His burqa near totally covers $his face, aside from what can be seen behind the fabric mesh that covers $his eyes.
 		<<case "a chattel habit">>
 			A golden circlet crowns $his white cowl, securing $his habit to $his head.
 		<<case "a succubus outfit">>
@@ -2416,17 +2451,17 @@ $His
 				horn-rimmed glasses to improve $his schoolgirl look,
 			<<case "nice business attire">>
 				wire-frame glasses to accent $his business attire,
-			<<case "attractive lingerie" "attractive lingerie for a pregnant woman" "an apron">>
+			<<case "attractive lingerie" "attractive lingerie for a pregnant woman" "an apron" "a hijab and blouse">>
 				feminine glasses,
 			<<case "a succubus outfit">>
 				severe steel-frame glasses,
 			<<case "harem gauze" "slutty jewelry">>
 				glasses with golden wire frames,
-			<<case "a hijab and abaya" "a penitent nuns habit">>
+			<<case "a burqa" "a niqab and abaya" "a penitent nuns habit">>
 				cheap glasses,
 			<<case "a bunny outfit" "a monokini">>
 				girly retro glasses,
-			<<case "a slutty qipao" "a kimono" "a revealing huipil" "a slutty maid outfit" "a nice maid outfit">>
+			<<case "a hijab and abaya" "a huipil" "a kimono" "a long qipao" "a nice maid outfit" "a slutty qipao" "a slutty maid outfit">>
 				an old fashioned pair of horn rimmed glasses,
 			<<case "a fallen nuns habit" "a cheerleader outfit" "a slutty nurse outfit">>
 				a daring pair of horn rimmed glasses,
@@ -2434,6 +2469,8 @@ $His
 				a pair of girly pastel glasses,
 			<<case "a scalemail bikini">>
 				a pair of ancient-looking glasses,
+			<<case "a burkini">>
+				swim goggles,
 			<<default>>
 				simple wire-frame glasses,
 			<</switch>>
@@ -2587,7 +2624,7 @@ $His
 <<widget "footwearDescription">>
 <<if ($activeSlave.amp != 1)>>
 <<switch $activeSlave.clothes>>
-<<case "conservative clothing">>
+<<case "a hijab and blouse" "conservative clothing">>
 	<<switch $activeSlave.shoes>>
 	<<case "flats">>
 		a pair of comfortable sandals.
@@ -3118,6 +3155,22 @@ $His
 		nothing on $his feet, which are covered by the leotard.
 	<</switch>>
 
+<<case "a burkini">>
+	<<switch $activeSlave.shoes>>
+	<<case "flats">>
+		a pair of open-toed sandals.
+	<<case "boots">>
+		a pair of colorful rubber boots.
+	<<case "heels">>
+		a pair of waterproof platform heels.
+	<<case "pumps">>
+		a pair of colorful rubber pumps.
+	<<case "extreme heels">>
+		a pair of extreme yet swim-ready platform heels.
+	<<default>>
+		leaves $his feet bare.
+	<</switch>>
+	
 <<case "a monokini">>
 	<<switch $activeSlave.shoes>>
 	<<case "flats">>
@@ -3129,7 +3182,7 @@ $His
 	<<case "pumps">>
 		a pair of colorful pumps.
 	<<case "extreme heels">>
-		a pair dangerously tall platform heels.
+		a pair of dangerously tall platform heels.
 	<<default>>
 		leaves $his feet bare.
 	<</switch>>
@@ -3278,7 +3331,7 @@ $His
 		bare feet.
 	<</switch>>
 
-<<case "a hijab and abaya">>
+<<case "a burqa" "a hijab and abaya" "a niqab and abaya">>
 	<<switch $activeSlave.shoes>>
 	<<case "flats">>
 		sport a pair of simple black slippers.
@@ -3533,7 +3586,7 @@ $His
 		$His extreme corsetage is built into $his suit.
 	<</if>>
 
-<<case "conservative clothing">>
+<<case "a hijab and blouse" "conservative clothing">>
 	<<if $activeSlave.bellyAccessory == "a corset">>
 		$His sturdy corset is hidden by $his blouse.
 	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
@@ -3673,7 +3726,6 @@ $His
 		$His absurd corset is a dull color, and clashes with $his bikini pretty badly.
 	<</if>>
 
-
 <<case "a cheerleader outfit">>
 	<<if $activeSlave.bellyAccessory == "a corset">>
 		$His top incorporates a subtle corset.
@@ -3750,6 +3802,13 @@ $His
 	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
 		The leotard's middle is strongly reinforced to act as a merciless corset.
 	<</if>>
+	
+<<case "a burkini">>
+	<<if $activeSlave.bellyAccessory == "a corset">>
+		The swimsuit's middle is reinforced to act as a corset.
+	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
+		The swimsuit's middle is strongly reinforced to act as a merciless corset.
+	<</if>>
 
 <<case "a monokini">>
 	<<if $activeSlave.bellyAccessory == "a corset">>
@@ -3821,42 +3880,21 @@ $His
 		The handsome silk completely conceals $his absurd corsetage.
 	<</if>>
 
-<<case "a hijab and abaya">>
+<<case "a burqa" "a hijab and abaya" "a niqab and abaya">>
 	<<if $activeSlave.bellyAccessory == "a corset">>
-		$His corset is hidden along with everything else.
+		$His corset is properly hidden along with everything else.
 	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
-		$His absurd corsetage is hidden along with everything else.
+		$His absurd corsetage is properly hidden along with everything else.
 	<</if>>
 
-<<case "a military uniform">>
-	<<if $activeSlave.bellyAccessory == "a corset">>
-		$His tunic conceals $his corset.
-	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
-		$His tunic conceals $his extreme corsetage.
-	<</if>>
-
-<<case "a schutzstaffel uniform">>
-	<<if $activeSlave.bellyAccessory == "a corset">>
-		$His tunic conceals $his corset.
-	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
-		$His tunic conceals $his extreme corsetage.
-	<</if>>
-
-<<case "a slutty schutzstaffel uniform">>
+<<case "a military uniform" "a mounty outfit" "a red army uniform" "a schutzstaffel uniform" "a slutty schutzstaffel uniform">>
 	<<if $activeSlave.bellyAccessory == "a corset">>
 		$His tunic conceals $his corset.
 	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
 		$His tunic conceals $his extreme corsetage.
 	<</if>>
 	
-<<case "a red army uniform">>
-	<<if $activeSlave.bellyAccessory == "a corset">>
-		$His tunic conceals $his corset.
-	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
-		$His tunic conceals $his extreme corsetage.
-	<</if>>
-	
-<<case "a long qipao">>
+<<case "a biyelgee costume" "a dirndl" "a long qipao">>
 	<<if $activeSlave.bellyAccessory == "a corset">>
 		$His dress conceals $his corset.
 	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
@@ -3870,32 +3908,11 @@ $His
 		$His armor conceals $his extreme corsetage.
 	<</if>>
 	
-<<case "a mounty outfit">>
-	<<if $activeSlave.bellyAccessory == "a corset">>
-		$His tunic conceals $his corset.
-	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
-		$His tunic conceals $his extreme corsetage.
-	<</if>>
-	
-<<case "a dirndl">>
-	<<if $activeSlave.bellyAccessory == "a corset">>
-		$His dress conceals $his corset.
-	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
-		$His dress conceals $his extreme corsetage.
-	<</if>>
-	
 <<case "lederhosen">>
 	<<if $activeSlave.bellyAccessory == "a corset">>
-		$His tunic conceals $his corset.
-	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
-		$His tunic conceals $his extreme corsetage.
-	<</if>>
-	
-<<case "a biyelgee costume">>
-	<<if $activeSlave.bellyAccessory == "a corset">>
-		$His dress conceals $his corset.
+		$His corset is built into the suspenders of $his outfit.
 	<<elseif $activeSlave.bellyAccessory == "an extreme corset">>
-		$His dress conceals $his extreme corsetage.
+		$His extreme corsetage is built into the suspenders of $his outfit.
 	<</if>>
 	
 <<case "battledress">>
@@ -4090,7 +4107,7 @@ $His
 			<</if>>
 			asshole.
 		<</if>>
-	<<case "a monokini">>
+	<<case "a burkini" "a monokini">>
 		<<if ($activeSlave.vaginalAccessory == "anal chastity") || ($activeSlave.vaginalAccessory == "combined chastity") || ($activeSlave.dickAccessory == "anal chastity") || ($activeSlave.dickAccessory == "combined chastity")>>
 			$His anal chastity device is concealed by $his swimsuit.
 		<<else>>
@@ -4185,7 +4202,7 @@ $His
 		<<if ($activeSlave.vaginalAccessory == "anal chastity") || ($activeSlave.vaginalAccessory == "combined chastity") || ($activeSlave.dickAccessory == "anal chastity") || ($activeSlave.dickAccessory == "combined chastity")>>
 			$His uncovered butt shows off $his anal chastity belt clearly when $he bends over.
 		<<else>>
-			With $his butt uncovered, committing the sin of sodomy with this nun is as easy as bending $his over.
+			With $his butt uncovered, committing the sin of sodomy with this nun is as easy as bending $him over.
 		<</if>>
 	<<case "a chattel habit">>
 		<<if ($activeSlave.vaginalAccessory == "anal chastity") || ($activeSlave.vaginalAccessory == "combined chastity") || ($activeSlave.dickAccessory == "anal chastity") || ($activeSlave.dickAccessory == "combined chastity")>>
@@ -4270,13 +4287,31 @@ $His
 		<<else>>
 			doesn't even have to be lifted to fuck $his schoolgirl ass.
 		<</if>>
-	<<case "a hijab and abaya">>
+	<<case "a hijab and blouse">>
+		$His long skirt may be modest, but it's also loose and easy to lift, allowing access to
+		<<if ($activeSlave.vaginalAccessory == "anal chastity") || ($activeSlave.vaginalAccessory == "combined chastity") || ($activeSlave.dickAccessory == "anal chastity") || ($activeSlave.dickAccessory == "combined chastity")>>
+			$his anal chastity accessory.
+		<<else>>
+			$his anus.
+		<</if>>
+	<<case "a hijab and abaya" "a niqab and abaya">>
 		The abaya may be modest, but it's also loose and easy to lift, allowing access to
 		<<if ($activeSlave.vaginalAccessory == "anal chastity") || ($activeSlave.vaginalAccessory == "combined chastity") || ($activeSlave.dickAccessory == "anal chastity") || ($activeSlave.dickAccessory == "combined chastity")>>
 			$his anal chastity accessory.
 		<<else>>
 			$his anus.
 		<</if>>
+	<<case "a burqa">>
+		The burqa's heavy fabric makes it somewhat difficult to lift, which helps to conceal $his
+		<<if ($activeSlave.vaginalAccessory == "anal chastity") || ($activeSlave.vaginalAccessory == "combined chastity") || ($activeSlave.dickAccessory == "anal chastity") || ($activeSlave.dickAccessory == "combined chastity")>>
+			anal chastity accessory.
+		<<else>>
+			<<if $activeSlave.anus > 2>>
+				immorally used asshole.
+			<<else>>
+				naked asshole.
+			<</if>>
+		<</if>>
 	<<case "a slutty maid outfit">>
 		The short skirt of $his maid dress
 		<<if ($activeSlave.vaginalAccessory == "anal chastity") || ($activeSlave.vaginalAccessory == "combined chastity") || ($activeSlave.dickAccessory == "anal chastity") || ($activeSlave.dickAccessory == "combined chastity")>>
-- 
GitLab


From fb66a1158be044012540f0b4d59507e7ce162e87 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 14:56:49 -0700
Subject: [PATCH 173/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 435 ++++++++++++++++++++++---
 1 file changed, 398 insertions(+), 37 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 0b81ea3e98b..61f0fe39f51 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -6172,7 +6172,12 @@ $He has
 <<switch $activeSlave.bellyAccessory>>
 <<case "an extreme corset">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's unfathomable, room filling implant-filled belly makes a mockery of $his corset; it holds on only with custom ultra-long lacing and, even then, is more plastered to her back than wrapped around her stomach.
+		<<else>>
+			$activeSlave.slaveName's unfathomable, room filling pregnancy makes a mockery of $his corset; despite this, even the light pressure applied to it by the failing lacings of the garment has $his packed-tight womb on the brink of rupturing. $His brood squirms as much as they possibly can under the pressure.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -6268,7 +6273,12 @@ $He has
 	<</if>>
 <<case "a corset">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's corset looks ridiculous on $his unfathomably huge, room filling implant-swollen belly. It floats on top of $his belly, looking more like the bottom half of a mini coat than the garment it was originally intended to be. 
+		<<else>>
+			$activeSlave.slaveName's corset looks ridiculous on $his unfathomable, room filling pregnancy. It floats on top of $his belly, nears useless, bobbling up and down as $his innumerable, agitated brood kick and squirm.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -6382,7 +6392,16 @@ $He has
 <<switch $activeSlave.clothes>>
 <<case "a Fuckdoll suit">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's suit has no stomach to it as it's the only way to give $his unfathomably huge, room filling implant-swollen belly the space it demands.
+		<<else>>
+			<<if $activeSlave.preg > 34>>
+				The front of $activeSlave.slaveName's suit is made of a clear, stretchy plastic that is stretched thin as it reinforces $his unfathomably huge, room filling pregnancy. A hole at the very front of the suit allows $his popped navel to bulge through. The movement of $his countless children is clear to see.
+			<<else>>
+				$activeSlave.slaveName's suit has no stomach to it as it's the only way to give $his monolithic pregnancy the space it requires to shift and bulge ominously.
+			<</if>>
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -6516,7 +6535,34 @@ $He has
 	<</if>>
 <<case "conservative clothing">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			<<if ($activeSlave.boobs > 24000)>>
+				$activeSlave.slaveName's immense breasts keep $his oversized sweater far from $his unfathomable, room filling, implant-swollen belly but do little to hide its imposing mass as it lewdly distends between them.
+			<<elseif ($activeSlave.boobs > 12000)>>
+				$activeSlave.slaveName's unfathomable, room filling, implant-swollen belly adds even more strain to $his struggling oversized sweater as it lewdly distends between $his tits.
+			<<elseif ($activeSlave.boobs > 8000)>>
+				$activeSlave.slaveName's unfathomable, room filling, implant-swollen belly lewdly parts $his poorly covered breasts, allowing the bulging mass the room it demands.
+			<<elseif ($activeSlave.boobs > 4000)>>
+				$activeSlave.slaveName's sweater rests atop $his unfathomable, room filling, implant-swollen belly, allowing the bulging mass the room it demands.
+			<<else>>
+				$activeSlave.slaveName's blouse rests atop $his unfathomable, room filling, implant-swollen belly, allowing the bulging mass the room it demands.
+			<</if>>
+			$He's left $his pants unfastened as there is no chance of $him managing to reach them.
+		<<else>>
+			<<if ($activeSlave.boobs > 24000)>>
+				$activeSlave.slaveName's immense breasts keep $his oversized sweater far from $his unfathomably huge, room filling pregnant belly but do little to hide its imposing mass as it lewdly distends between them.
+			<<elseif ($activeSlave.boobs > 12000)>>
+				$activeSlave.slaveName's unfathomably huge, room filling pregnant belly adds even more strain to $his struggling oversized sweater as it lewdly distends between $his tits. Every motion $his brood makes threaten to displaces $his breasts.
+			<<elseif ($activeSlave.boobs > 8000)>>
+				$activeSlave.slaveName's unfathomably huge, room filling pregnant belly lewdly parts $his poorly covered breasts, allowing the bulging mass the room it desperately seeks.
+			<<elseif ($activeSlave.boobs > 4000)>>
+				$activeSlave.slaveName's sweater rests atop $his unfathomably huge, room filling pregnant belly, allowing the bulging mass the room it desperately seeks.
+			<<else>>
+				$activeSlave.slaveName's blouse rests atop $his unfathomably huge, room filling pregnant belly, allowing the bulging mass the room it desperately seeks.
+			<</if>>
+			$He's left $his pants unfastened as $his womb has consumed so much space that $He has no hope of ever doing up the button and, regardless, even the light touch of the fabric against $his belly feels nearly intolerable due to the pressure.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -6983,7 +7029,12 @@ $He has
 	<</if>>
 <<case "chains">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's unfathomably huge, room filling, implant-swollen belly is wrapped with tight chains. Despite how tightly they’re pulled together, they fail to sink into the firm globe of her belly at all, shifting over it and agitating $his flesh with each of $his movements.
+		<<else>>
+			$activeSlave.slaveName's unfathomably huge, room filling pregnant belly is wrapped with tight chains. It bulges so extremely that the outlines of entire infants can be seen pressed up to either side of the chains, sometimes overlapping them so that flesh rubs up against flesh; every motion inside $him is excruciating.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -7089,7 +7140,12 @@ $He has
 	<</if>>
 <<case "Western clothing">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's flannel shirt can't close over $his unfathomably huge, room filling, implant-swollen belly, so $he has left the bottom buttons open, giving $his stomach room to massively jut out from $his body. $He has become so wide the remaining buttons no longer hold together at all and $he now has to hold the outfit together by wrapping a large strip of fabric around $his outfit and over the line between $his belly and slowly distorting ribcage. In addition, $he's left $his chaps unfastened to give $his overfilled middle more space.
+		<<else>>
+			$activeSlave.slaveName's flannel shirt can't close over $his unfathomably huge, room filling pregnant belly, so $he has left the bottom buttons open giving $his stomach room to massively jut out from $his body. $He has become so wide the remaining buttons no longer hold together at all and $he now has to hold the outfit together by wrapping a large strip of fabric around $his outfit and over the line between $his belly and slowly distorting ribcage. In addition, $he's left $his chaps unfastened to give $his overfilled womb more space.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -7188,7 +7244,12 @@ $He has
 	<</if>>
 <<case "body oil">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's unfathomably huge, room filling, implant-swollen belly is covered in a sheen of special oil meant to prevent stretch marks.
+		<<else>>
+			$activeSlave.slaveName's unfathomably huge, room filling pregnant belly is covered in a sheen of special oil meant to prevent stretch marks.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -7280,7 +7341,12 @@ $He has
 	<</if>>
 <<case "a toga">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's toga bares $his middle to allow $his unfathomably huge, room filling, implant-swollen belly the room it demands.
+		<<else>>
+			$activeSlave.slaveName's toga bares $his middle to allow $his unfathomably huge, room filling pregnant belly the room it desperately needs. $His brood appreciates the freedom.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -7377,7 +7443,12 @@ $He has
 	<</if>>
 <<case "a huipil">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's huipil meekly rests atop $his unfathomably huge, room filling, implant-swollen belly, its role completely usurped by the colossal mass.
+		<<else>>
+			$activeSlave.slaveName's huipil meekly rests atop $his unfathomably huge, room filling pregnant belly, its role completely usurped by the colossal gravidity.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11332,7 +11403,17 @@ $He has
 		$activeSlave.slaveName's string bikini clings to $his ripped abs.
 	<</if>>
 <<case "a scalemail bikini">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly hides much of $his scalemail bikini.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant belly scrapes against $his scalemail bikini.
@@ -11354,7 +11435,17 @@ $He has
 		$activeSlave.slaveName's chubby belly hangs underneath $his bikini.
 	<</if>>
 <<case "clubslut netting">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly has burst through $his clubslut netting.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant belly has burst through $his clubslut netting.
@@ -11376,7 +11467,17 @@ $He has
 		$activeSlave.slaveName's clubslut netting clings to $his chubby belly, gently forcing pudge through the mesh.
 	<</if>>
 <<case "a cheerleader outfit">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's cheerleader top rests atop $his titanic bulging pregnant belly clearly displaying that this cheerleader has fucked the entire school.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's cheerleader top rests atop $his massive pregnant belly clearly displaying that this cheerleader is a massive slut.
@@ -11398,7 +11499,17 @@ $He has
 		$activeSlave.slaveName's cheerleader top frequently rides up $his chubby belly, letting it hang loose and hide the waist of $his skirt.
 	<</if>>
 <<case "cutoffs and a t-shirt">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's exposed midriff fully exposes $his titanic bulging pregnant belly
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's exposed midriff fully exposes $his massive pregnant belly
@@ -11420,7 +11531,17 @@ $He has
 		$activeSlave.slaveName's chubby belly is left free to hang over the waist of $his jeans.
 	<</if>>
 <<case "a slutty outfit">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly really shows how big of a slut $he is.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant belly really shows how big of a slut $he is.
@@ -11442,7 +11563,17 @@ $He has
 		$activeSlave.slaveName's chubby belly is allowed to openly jiggle, making $him look particularly slutty.
 	<</if>>
 <<case "a slave gown">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's slave gown is carefully tailored, giving $him a sensual motherly look as it carefully caresses $his titanic bulging pregnant belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's slave gown is carefully tailored, giving $him a sensual motherly look as it carefully caresses $his massive pregnant belly.
@@ -11464,7 +11595,17 @@ $He has
 		$activeSlave.slaveName's slave gown is carefully tailored, accentuating and hugging every curve of $his chubby belly.
 	<</if>>
 <<case "slutty business attire">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant stomach hangs out the front of $his suit jacket and blouse as there is no way $he could ever come close to closing them.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant stomach hangs out the front of $his suit jacket and blouse as there is no way $he could ever come close to closing them.
@@ -11486,7 +11627,17 @@ $He has
 		$activeSlave.slaveName's chubby belly fills out $his suit jacket and blouse. It peeks out from under their bottom slightly.
 	<</if>>
 <<case "nice business attire">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them.
@@ -11508,7 +11659,17 @@ $He has
 		$activeSlave.slaveName's chubby belly fills out $his tailored blouse and jacket.
 	<</if>>
 <<case "harem gauze">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's harem girl outfit sensually accentuates $his titanic bulging pregnancy.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's harem girl outfit sensually accentuates $his massive pregnancy.
@@ -11530,7 +11691,17 @@ $He has
 		$activeSlave.slaveName's harem girl outfit sensually accentuates $his chubby belly.
 	<</if>>
 <<case "a comfortable bodysuit">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's bodysuit tightly clings to $his titanic bulging pregnant belly, displaying $his popped navel and all the movement $his squirming babies make.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's bodysuit tightly clings to $his massive pregnant belly, displaying $his popped navel and any movement $his babies make.
@@ -11552,7 +11723,17 @@ $He has
 		$activeSlave.slaveName's bodysuit tightly clings to $his chubby belly, displaying every fold and roll in it.
 	<</if>>
 <<case "a slutty nurse outfit">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's jacket fails to even come close to closing over $his titanic bulging pregnant belly leaving $him with only the button below $his breasts done.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's jacket fails to even come close to closing over $his massive pregnant belly leaving $him with only the button below $his breasts done.
@@ -11574,7 +11755,17 @@ $He has
 		$activeSlave.slaveName's jacket bulges with $his chubby belly, which can be seen peeking out from underneath as it hangs over $his waist of $his pants.
 	<</if>>
 <<case "a schoolgirl outfit">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's blouse rests atop $his titanic bulging pregnant belly, showing off the result of $his promiscuity.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's blouse rests atop $his massive pregnant belly, leaving $his looking particularly slutty.
@@ -11596,6 +11787,16 @@ $He has
 		$activeSlave.slaveName's blouse bulges with $his chubby belly. It peeks out from the bottom as it hangs over the waist of $his skirt.
 	<</if>>
 <<case "a kimono">>
+	<<elseif $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
 	<<if $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly parts the front of $his kimono leaving it gracefully hanging to its sides.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11618,7 +11819,17 @@ $He has
 		$activeSlave.slaveName's chubby belly is demurely covered by $his kimono.
 	<</if>>
 <<case "a hijab and abaya">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
@@ -11640,7 +11851,17 @@ $He has
 		$activeSlave.slaveName's abaya bulges from $his chubby belly.
 	<</if>>
 <<case "battledress">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's tank top rests atop $his titanic bulging pregnant belly leaving $him looking like someone who fucked half the country.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's tank top rests atop $his massive pregnant belly leaving $his looking like someone who fucked all the locals.
@@ -11662,7 +11883,17 @@ $He has
 		$activeSlave.slaveName's tank top covers the top of $his chubby belly leaving $his looking like someone who had has been lazy lately.
 	<</if>>
 <<case "a halter top dress">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's beautiful halter top dress has been torn open by $his titanic bulging pregnant belly. $His squirming belly hangs out the hole it made.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's beautiful halter top dress is strained by $his massive pregnant belly. $His popped navel prominently pokes through the front of $his dress as its seams strain to hold together.
@@ -11684,7 +11915,17 @@ $He has
 		$activeSlave.slaveName's beautiful halter top dress is filled by $his chubby belly. Every crease, fold and roll is clearly visible within it.
 	<</if>>
 <<case "a ball gown">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's fabulous silken ball gown has been retailored to expose $his titanic bulging pregnant belly while still maintaining its beauty.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's fabulous silken ball gown, while tailored, strains to contain $his massive pregnant belly.
@@ -11706,7 +11947,17 @@ $He has
 		$activeSlave.slaveName's fabulous silken ball gown is tailored to draw attention to $his chubby belly.
 	<</if>>
 <<case "slutty jewelry">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's bangles include a long thin chain that constantly gets shifted around by $his squirming babies.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's bangles include a long thin chain that rests above $his popped navel.
@@ -11728,7 +11979,17 @@ $He has
 		$activeSlave.slaveName's bangles include a long thin chain that rests across $his chubby belly, just over $his forming rolls.
 	<</if>>
 <<case "a leotard">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's tight leotard shows off every kick and movement within $his titanic bulging pregnant belly. $His squirming belly protrudes from the various rips and tears that have begun appearing in the fabric.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's tight leotard shows off every kick and movement within $his massive pregnant belly. The material tightly clings to $his popped navel and strains to hold together.
@@ -11750,7 +12011,17 @@ $He has
 		$activeSlave.slaveName's tight leotard clings to $his chubby belly, clearly displaying every fold and roll.
 	<</if>>
 <<case "a cybersuit">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's tight bodysuit shows off every kick and movement within $his titanic bulging pregnant belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's tight bodysuit shows off every kick and movement within $his massive pregnant belly.
@@ -11772,7 +12043,17 @@ $He has
 		$activeSlave.slaveName's tight bodysuit clings to $his chubby belly, clearly displaying every fold and roll.
 	<</if>>
 <<case "a chattel habit">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		The strip of cloth running down $his front is forced to one side by $his titanic bulging pregnant belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		The strip of cloth running down $his front is parted to one side by $his massive pregnant belly.
@@ -11794,7 +12075,17 @@ $He has
 		The strip of cloth running down $his front is pushed out by $his chubby belly.
 	<</if>>
 <<case "a bunny outfit">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's teddy has burst trying to contain $his titanic bulging pregnant belly leaving it hanging out the hole it made.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's teddy has burst trying to contain $his massive pregnant belly leaving it hanging out the hole it made.
@@ -11816,7 +12107,17 @@ $He has
 		$activeSlave.slaveName's teddy is stretched by $his chubby belly. It does nothing to hide $his folds and rolls.
 	<</if>>
 <<case "attractive lingerie for a pregnant woman">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly completely hides $his silken panties. $His silken vest sensually frames $his overfilled squirming belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant belly completely hides $his silken panties. $His silken vest sensually frames $his overfilled belly.
@@ -11838,7 +12139,17 @@ $He has
 		$activeSlave.slaveName's chubby belly rests above $his silken panties, barely hanging over the top of them. $His silken vest sensually frames $his soft stomach.
 	<</if>>
 <<case "a maternity dress">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly strains $his dress. $His dress is specially tailored to be modest yet draw attention to $his abnormal pregnancy.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant belly fills $his loose dress. $His dress is specially tailored to be modest yet draw attention to $his full pregnancy.
@@ -11860,7 +12171,17 @@ $He has
 		$activeSlave.slaveName's chubby belly is noticeable under $his loose dress. $His dress is specially tailored to be modest yet draw attention to $his pudgy belly.
 	<</if>>
 <<case "stretch pants and a crop-top">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly takes full advantage of $his exposed midriff to hang freely.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant belly takes full advantage of $his exposed midriff to hang freely.
@@ -11882,7 +12203,17 @@ $He has
 		$activeSlave.slaveName's chubby belly takes full advantage of $his exposed midriff to hang freely and obscure the top of $his stretch pants.
 	<</if>>
 <<case "spats and a tank top">>
-	<<if $activeSlave.boobs > 1200>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.boobs > 1200>>
 		$activeSlave.slaveName's top is currently prevented from trying to cover $his
 		<<if $activeSlave.bellyPreg >= 600000>>
 			titanic, bulging pregnancy
@@ -11907,7 +12238,17 @@ $He has
 		<</if>>
 		by $his big tits, leaving it completely exposed to view.
 	<<else>>
-		<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+		<<elseif $activeSlave.bellyPreg >= 600000>>
 			$activeSlave.slaveName's top cannot even attempt to cover $his titanic, bulging pregnancy, and can only rest atop it.
 		<<elseif $activeSlave.bellyPreg >= 300000>>
 			$activeSlave.slaveName's top cannot even attempt to cover $his massive pregnancy, only resting atop it.
@@ -11945,7 +12286,17 @@ $He has
 	<</if>>
 <</if>>
 <<if $arcologies[0].FSRepopulationFocus != "unset">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		Your breeding focused society finds $his titanic bulging pregnant belly the epitome of fashion.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		Your breeding focused society finds $his massive pregnant belly extremely fashionable.
@@ -11959,7 +12310,17 @@ $He has
 		Your breeding focused society finds a developing pregnancy very fashionable.
 	<</if>>
 <<elseif $arcologies[0].FSRestart != "unset">>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            //WIP//
+		<<else>>
+            //WIP//
+		<</if>>
+
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		Your eugenics obsessed society sees $his titanic bulging pregnant belly as the epitome of degeneracy.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		Your eugenics obsessed society views $his massive pregnant belly as complete degeneracy.
-- 
GitLab


From def33ca45386b9805a06aabe804a296b2c349668 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 15:29:27 -0700
Subject: [PATCH 174/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 37 +++++++++++++++++++-------
 1 file changed, 27 insertions(+), 10 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 61f0fe39f51..90c5509cc4f 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -12215,7 +12215,16 @@ $He has
 
 	<<elseif $activeSlave.boobs > 1200>>
 		$activeSlave.slaveName's top is currently prevented from trying to cover $his
-		<<if $activeSlave.bellyPreg >= 600000>>
+	<<if $activeSlave.belly >= 1000000>>
+		//WIP//
+	<<elseif $activeSlave.belly >= 750000>>
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            monolithic implant-filled belly
+		<<else>>
+            monolithic pregnant belly
+		<</if>>
+		<<elseif $activeSlave.bellyPreg >= 600000>>
 			titanic, bulging pregnancy
 		<<elseif $activeSlave.bellyPreg >= 300000>>
 			massive pregnancy
@@ -12287,15 +12296,19 @@ $He has
 <</if>>
 <<if $arcologies[0].FSRepopulationFocus != "unset">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+		    Your breeding focused society finds $his unfathomably huge, room filling, implant-swollen belly near the pinacle of fashion despite her inability to have children.
+   		<<else>>
+	    	Your breeding focused society finds $his unfathomably huge, room filling pregnant belly the perfect realization of the fashionable ideal.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
-		<<else>>
-            //WIP//
+		    Your breeding focused society finds $his monolithic implant-filled belly highly fashionable despite her inability to have children.
+   		<<else>>
+	    	Your breeding focused society finds $his monolithic pregnant belly near to the perfect realization of the fashionable ideal.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		Your breeding focused society finds $his titanic bulging pregnant belly the epitome of fashion.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -12311,15 +12324,19 @@ $He has
 	<</if>>
 <<elseif $arcologies[0].FSRestart != "unset">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+            Your eugenics obsessed society sees $his unfathomably huge, room filling, implant-swollen belly as equally unfathomably degenerate.
+		<<else>>
+            Your eugenics obsessed society sees $his unfathomably huge, room filling pregnant belly the perfect antithesis of the fashionable ideal.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+            Your eugenics obsessed society sees $his monolithic implant-filled belly as absolutely degenerate.
 		<<else>>
-            //WIP//
+            Your eugenics obsessed society sees $his monolithic pregnant belly as a near perfect antithesis of the fashionable ideal.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		Your eugenics obsessed society sees $his titanic bulging pregnant belly as the epitome of degeneracy.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
-- 
GitLab


From c4ace6295bf9891ff2d8fbccc95cf869ae6e18d4 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 16:23:47 -0700
Subject: [PATCH 175/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 65 +++++++++++---------------
 1 file changed, 26 insertions(+), 39 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 90c5509cc4f..5d68351cc45 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -11408,11 +11408,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+		$activeSlave.slaveName's scalemail bikini has nearly disappeared behind $his monolithic, implant-filled belly
 		<<else>>
-            //WIP//
+		$activeSlave.slaveName's scalemail bikini has nearly disappeared behind $his monolithic bulging pregnant belly.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly hides much of $his scalemail bikini.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11440,11 +11439,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+		$activeSlave.slaveName's monolithic, implant-filled belly has been protruding through $his exploded clubslut netting since for some time.
 		<<else>>
-            //WIP//
+		$activeSlave.slaveName's monolithic pregnant belly has been protruding through $his exploded clubslut netting since for some time.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly has burst through $his clubslut netting.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11472,11 +11470,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		$activeSlave.slaveName's cheerleader top rests atop $his monolithic, implant-filled belly, giving the impression that $he is pregnant with the rest of her entire squad.
 		<<else>>
-            //WIP//
+    		$activeSlave.slaveName's cheerleader top rests atop $his monolithic pregnant belly, giving the impression that $he is pregnant with the rest of her entire squad.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's cheerleader top rests atop $his titanic bulging pregnant belly clearly displaying that this cheerleader has fucked the entire school.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11504,11 +11501,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	$activeSlave.slaveName's exposed midriff fully exposes $his monolithic, implant-filled belly. The button for $his cutoffs have exploded, though the size of $his belly makes it impossible to tell.  
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's exposed midriff fully exposes $his monolithic pregnant belly. The button for $his cutoffs have exploded, though the size of $his belly makes it impossible to tell.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's exposed midriff fully exposes $his titanic bulging pregnant belly
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11536,11 +11532,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+            $activeSlave.slaveName's monolithic, implant-filled belly really shows how big of a slut $he is.
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's monolithic pregnant belly really shows how big of a slut $he is.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly really shows how big of a slut $he is.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11568,11 +11563,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+		$activeSlave.slaveName's slave gown is carefully tailored using a huge quantity of material. When not worn, it looks more like a couch cover than something meant to be worn by a human being. On the slave, it gives $him a sensual motherly look as it carefully caresses $his monolithic, implant-filled belly.
 		<<else>>
-            //WIP//
+		$activeSlave.slaveName's slave gown is carefully tailored using a huge quantity of material. When not worn, it looks more like a couch cover than something meant to be worn by a human being. On the slave, it gives $him a sensual motherly look as it carefully caresses $his monolithic pregnant belly.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's slave gown is carefully tailored, giving $him a sensual motherly look as it carefully caresses $his titanic bulging pregnant belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11600,11 +11594,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+		$activeSlave.slaveName's monolithic, implant-filled stomach hangs out the front of $his suit jacket and blouse as there is no way $he could ever come close to closing them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
 		<<else>>
-            //WIP//
+		$activeSlave.slaveName's monolithic pregnant stomach hangs out the front of $his suit jacket and blouse as there is no way $he could ever come close to closing them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant stomach hangs out the front of $his suit jacket and blouse as there is no way $he could ever come close to closing them.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11632,11 +11625,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		$activeSlave.slaveName's monolithic pregnant belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
 		<<else>>
-            //WIP//
+    		$activeSlave.slaveName's monolithic pregnant belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11664,11 +11656,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		$activeSlave.slaveName's harem girl outfit has been specially tailored to drape over $his monolithic, implant-filled belly and accentuate its size and shape.
 		<<else>>
-            //WIP//
+    		$activeSlave.slaveName's harem girl outfit has been specially tailored to drape over $his monolithic pregnancy and accentuate its size and the movement of $his many unborn children.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's harem girl outfit sensually accentuates $his titanic bulging pregnancy.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11696,11 +11687,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		$activeSlave.slaveName's bodysuit somehow manages to barely stretch over $his monolithic, implant-filled belly, pulled smooth over $his pressure flattened navel.
 		<<else>>
-            //WIP//
+    		$activeSlave.slaveName's bodysuit somehow manages to barely stretch over $his monolithic pregnant belly, pulled smooth over $his pressure flattened navel and all the movement of $his many squirming children.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's bodysuit tightly clings to $his titanic bulging pregnant belly, displaying $his popped navel and all the movement $his squirming babies make.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11728,11 +11718,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		$activeSlave.slaveName's jacket fails to even come close to closing over $his monolithic, implant-filled belly, requiring $him to hold $his nurse's jacket together over his breasts with a length of red silk ribbon.
 		<<else>>
-            //WIP//
+    		$activeSlave.slaveName's jacket fails to even come close to closing over $his monolithic pregnant belly, requiring $him to hold $his nurse's jacket together over his breasts with a length of red silk ribbon.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's jacket fails to even come close to closing over $his titanic bulging pregnant belly leaving $him with only the button below $his breasts done.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11760,11 +11749,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	$activeSlave.slaveName's blouse rests atop $his monolithic, implant-filled belly.
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's blouse rests atop $his monolithic bulging pregnant belly, showing off the staggering result of $his promiscuity.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's blouse rests atop $his titanic bulging pregnant belly, showing off the result of $his promiscuity.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11792,11 +11780,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		$activeSlave.slaveName's monolithic, implant-filled belly is so enormous that there is no way for $his obi to ever wrap around it to tie $his kimono. As a result, $he leaves $his kimono open. It pools around $her when she rests atop her belly’s incredible mass.
 		<<else>>
-            //WIP//
+    		$activeSlave.slaveName's monolithic pregnant belly is so enormous that there is no way for $his obi to ever wrap around it to tie $his kimono. As a result, $he leaves $his kimono open. It pools around $her when she rests atop her belly’s incredible mass.
 		<</if>>
-
 	<<if $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly parts the front of $his kimono leaving it gracefully hanging to its sides.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
-- 
GitLab


From 1d1c123039c6e1d7468b32e57804b767b52fdca8 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 16:45:13 -0700
Subject: [PATCH 176/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 30 +++++++++++---------------
 1 file changed, 12 insertions(+), 18 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 5d68351cc45..a489102cef4 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -11811,11 +11811,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	The front of $activeSlave.slaveName's abaya  looks like it has exploded. $his monolithic, implant-filled belly bulges out of the hole.
 		<<else>>
-            //WIP//
+	    	The front of $activeSlave.slaveName's abaya  looks like it has exploded. $his monolithic pregnant belly bulges out of the hole.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11843,11 +11842,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		$activeSlave.slaveName's tank top rests atop $his monolithic, implant-filled belly, leaving $him looking, falsely, like someone preparing to give birth to a regiment of soldiers.
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's tank top rests atop $his monolithic pregnant belly, leaving $him looking like someone preparing to give birth to a regiment of soldiers.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's tank top rests atop $his titanic bulging pregnant belly leaving $him looking like someone who fucked half the country.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11875,11 +11873,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	$activeSlave.slaveName's beautiful halter top dress has been torn open by $his monolithic, implant-filled belly. $His squirming belly hangs out the hole it made.
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's beautiful halter top dress has been torn open by $his monolithic pregnant belly. $His squirming belly hangs out the hole it made.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's beautiful halter top dress has been torn open by $his titanic bulging pregnant belly. $His squirming belly hangs out the hole it made.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11907,11 +11904,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	$activeSlave.slaveName's fabulous silken ball gown has been retailored to expose $his monolithic, implant-filled belly while still maintaining its beauty.
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's fabulous silken ball gown has been retailored to expose $his monolithic pregnant belly while still maintaining its beauty.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's fabulous silken ball gown has been retailored to expose $his titanic bulging pregnant belly while still maintaining its beauty.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11939,11 +11935,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	$activeSlave.slaveName's bangles are linked by a long golden chain to a ring around $his popped out belly button. The chain tinkles metalically as it shifts with $his movements.
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's bangles are linked by a long golden chain to a ring around $his popped out belly button. The chain tinkles metalically as it shifts with the motion of $his squirming brood.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's bangles include a long thin chain that constantly gets shifted around by $his squirming babies.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -11971,11 +11966,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+  		    $activeSlave.slaveName's tight leotard has exploded at the front, showing off $his monolithic, implant-filled belly. 
 		<<else>>
-            //WIP//
+		    $activeSlave.slaveName's tight leotard has exploded at the front, showing off every kick and movement within $his monolithic pregnant belly. 
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's tight leotard shows off every kick and movement within $his titanic bulging pregnant belly. $His squirming belly protrudes from the various rips and tears that have begun appearing in the fabric.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
-- 
GitLab


From e91d8b64f3ca9fd1dd0d8105529650819f1f64fb Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 17:52:02 -0700
Subject: [PATCH 177/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 81 ++++++++++++--------------
 1 file changed, 36 insertions(+), 45 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index a489102cef4..3e9b32cf46e 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -11997,11 +11997,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	$activeSlave.slaveName's tight bodysuit has been altered to allow $his monolithic, implant-filled belly to swell out from it unconstrained.
 		<<else>>
-            //WIP//
+    		$activeSlave.slaveName's tight bodysuit has been altered to allow $his monolithic pregnant belly to swell out from it unconstrained.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's tight bodysuit shows off every kick and movement within $his titanic bulging pregnant belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -12029,11 +12028,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		The strip of cloth designed to run down $his front looks tiny as it rests atop $his monolithic, implant-filled belly.
 		<<else>>
-            //WIP//
+    		The strip of cloth designed to run down $his front looks tiny as it rests atop $his monolithic pregnant belly.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		The strip of cloth running down $his front is forced to one side by $his titanic bulging pregnant belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -12061,11 +12059,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+		    $activeSlave.slaveName's teddy has burst trying to contain $his monolithic, implant-filled belly, leaving it hanging out the hole it made.
 		<<else>>
-            //WIP//
+		    $activeSlave.slaveName's teddy has burst trying to contain $his monolithic pregnant belly, leaving it hanging out the hole it made.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's teddy has burst trying to contain $his titanic bulging pregnant belly leaving it hanging out the hole it made.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -12093,11 +12090,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+    		$activeSlave.slaveName's monolithic, implant-filled belly completely hides $his silken panties. $His silken vest sensually frames $his brood-filled squirming belly.
 		<<else>>
-            //WIP//
+    		$activeSlave.slaveName's monolithic pregnant belly completely hides $his silken panties. $His silken vest sensually frames $his brood-filled squirming belly.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly completely hides $his silken panties. $His silken vest sensually frames $his overfilled squirming belly.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -12125,11 +12121,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	$activeSlave.slaveName's monolithic, implant-filled belly is so large that $his dress, despite being designed to flatter pregnancies, is inadequate to contain it due to sheer size. The dress bunches up as it rests atop $his belly.
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's monolithic pregnant belly is so large that $his dress, despite being designed to flatter pregnancies, is inadequate to contain it due to sheer size. The dress bunches up as it rests atop $his belly.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly strains $his dress. $His dress is specially tailored to be modest yet draw attention to $his abnormal pregnancy.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -12157,11 +12152,10 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
+	    	$activeSlave.slaveName's monolithic, implant-filled belly takes full advantage of $his exposed midriff to hang freely.
 		<<else>>
-            //WIP//
+	    	$activeSlave.slaveName's monolithic pregnant belly takes full advantage of $his exposed midriff to hang freely.
 		<</if>>
-
 	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly takes full advantage of $his exposed midriff to hang freely.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -12184,27 +12178,21 @@ $He has
 		$activeSlave.slaveName's chubby belly takes full advantage of $his exposed midriff to hang freely and obscure the top of $his stretch pants.
 	<</if>>
 <<case "spats and a tank top">>
-	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
-	<<elseif $activeSlave.belly >= 750000>>
-		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
-		<<else>>
-            //WIP//
-		<</if>>
-
 	<<elseif $activeSlave.boobs > 1200>>
 		$activeSlave.slaveName's top is currently prevented from trying to cover $his
-	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
-	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-		<<elseif $activeSlave.bellyImplant > 0>>
-            monolithic implant-filled belly
-		<<else>>
-            monolithic pregnant belly
-		<</if>>
+       	<<elseif $activeSlave.belly >= 1000000>>
+		    <<if $activeSlave.bellyImplant > 0>>
+                unfathomably huge, room filling, implant-swollen belly
+		    <<else>>
+                unfathomably huge, room filling pregnant belly
+		    <</if>>
+	    <<elseif $activeSlave.belly >= 750000>>
+		    <<if $activeSlave.bellyImplant > 0>>
+                monolithic implant-filled belly
+		    <<else>>
+                monolithic pregnant belly
+		    <</if>>
 		<<elseif $activeSlave.bellyPreg >= 600000>>
 			titanic, bulging pregnancy
 		<<elseif $activeSlave.bellyPreg >= 300000>>
@@ -12228,16 +12216,19 @@ $He has
 		<</if>>
 		by $his big tits, leaving it completely exposed to view.
 	<<else>>
-	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
-	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-		<<elseif $activeSlave.bellyImplant > 0>>
-            //WIP//
-		<<else>>
-            //WIP//
-		<</if>>
-
+    	<<elseif $activeSlave.belly >= 1000000>>
+    		<<if $activeSlave.bellyImplant > 0>>
+                unfathomably huge, room filling implant-swollen belly
+	    	<<else>>
+                unfathomably huge, room filling pregnant belly
+		    <</if>>
+	    <<elseif $activeSlave.belly >= 750000>>
+    		<<if $activeSlave.bellyImplant > 0>>
+                monolithic, implant-filled belly
+	    	<<else>>
+                monolithic pregnant belly
+		    <</if>>
 		<<elseif $activeSlave.bellyPreg >= 600000>>
 			$activeSlave.slaveName's top cannot even attempt to cover $his titanic, bulging pregnancy, and can only rest atop it.
 		<<elseif $activeSlave.bellyPreg >= 300000>>
-- 
GitLab


From af3909ee9e10d5d611d88ee743efbf445a5ca5d4 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 18:27:47 -0700
Subject: [PATCH 178/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 3e9b32cf46e..bada6b6e51f 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -11775,7 +11775,7 @@ $He has
 		$activeSlave.slaveName's blouse bulges with $his chubby belly. It peeks out from the bottom as it hangs over the waist of $his skirt.
 	<</if>>
 <<case "a kimono">>
-	<<elseif $activeSlave.belly >= 1000000>>
+	<<if $activeSlave.belly >= 1000000>>
 		//WIP//
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -11784,7 +11784,7 @@ $He has
 		<<else>>
     		$activeSlave.slaveName's monolithic pregnant belly is so enormous that there is no way for $his obi to ever wrap around it to tie $his kimono. As a result, $he leaves $his kimono open. It pools around $her when she rests atop her belly’s incredible mass.
 		<</if>>
-	<<if $activeSlave.bellyPreg >= 600000>>
+	<<elseif $activeSlave.bellyPreg >= 600000>>
 		$activeSlave.slaveName's titanic bulging pregnant belly parts the front of $his kimono leaving it gracefully hanging to its sides.
 	<<elseif $activeSlave.bellyPreg >= 300000>>
 		$activeSlave.slaveName's massive pregnant belly parts the front of $his kimono leaving it gracefully covering its sides.
@@ -12180,15 +12180,16 @@ $He has
 <<case "spats and a tank top">>
 	<<elseif $activeSlave.boobs > 1200>>
 		$activeSlave.slaveName's top is currently prevented from trying to cover $his
-		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-       	<<elseif $activeSlave.belly >= 1000000>>
-		    <<if $activeSlave.bellyImplant > 0>>
+       	<<if $activeSlave.belly >= 1000000>>
+            <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		    <<elseif $activeSlave.bellyImplant > 0>>
                 unfathomably huge, room filling, implant-swollen belly
 		    <<else>>
                 unfathomably huge, room filling pregnant belly
 		    <</if>>
 	    <<elseif $activeSlave.belly >= 750000>>
-		    <<if $activeSlave.bellyImplant > 0>>
+		    <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		    <<elseif $activeSlave.bellyImplant > 0>>
                 monolithic implant-filled belly
 		    <<else>>
                 monolithic pregnant belly
@@ -12216,15 +12217,16 @@ $He has
 		<</if>>
 		by $his big tits, leaving it completely exposed to view.
 	<<else>>
-		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-    	<<elseif $activeSlave.belly >= 1000000>>
-    		<<if $activeSlave.bellyImplant > 0>>
+    	<<if $activeSlave.belly >= 1000000>>
+            <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+    		<<elseif $activeSlave.bellyImplant > 0>>
                 unfathomably huge, room filling implant-swollen belly
 	    	<<else>>
                 unfathomably huge, room filling pregnant belly
 		    <</if>>
 	    <<elseif $activeSlave.belly >= 750000>>
-    		<<if $activeSlave.bellyImplant > 0>>
+            <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+    		<<elseif $activeSlave.bellyImplant > 0>>
                 monolithic, implant-filled belly
 	    	<<else>>
                 monolithic pregnant belly
-- 
GitLab


From aa1888c24bb141fbce0632141be973f1386a75eb Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 19:02:35 -0700
Subject: [PATCH 179/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index bada6b6e51f..287c11d19f9 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -6277,7 +6277,7 @@ $He has
 		<<elseif $activeSlave.bellyImplant > 0>>
 			$activeSlave.slaveName's corset looks ridiculous on $his unfathomably huge, room filling implant-swollen belly. It floats on top of $his belly, looking more like the bottom half of a mini coat than the garment it was originally intended to be. 
 		<<else>>
-			$activeSlave.slaveName's corset looks ridiculous on $his unfathomable, room filling pregnancy. It floats on top of $his belly, nears useless, bobbling up and down as $his innumerable, agitated brood kick and squirm.
+			$activeSlave.slaveName's corset looks ridiculous on $his unfathomable, room filling pregnancy. It floats on top of $his belly, near useless, bobbling up and down as $his innumerable, agitated brood kick and squirm.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -11224,7 +11224,7 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's monolithic pregnant belly stretches $his habit to the limit and looks absolutely blasphemous. The coarse cloth aggravates $his straining, very sensitive skin.
+			$activeSlave.slaveName's monolithic, implant-filled belly stretches $his habit to the limit and looks absolutely blasphemous. The coarse cloth aggravates $his straining, very sensitive skin.
 		<<else>>
 			$activeSlave.slaveName's monolithic pregnant belly stretches $his habit to the limit and looks absolutely blasphemous. The coarse cloth aggravates $his straining, very sensitive skin; doubly so, as $his distress causes $his babies to squirm as much as they can in $his cramped womb.
 		<</if>>
@@ -12178,7 +12178,7 @@ $He has
 		$activeSlave.slaveName's chubby belly takes full advantage of $his exposed midriff to hang freely and obscure the top of $his stretch pants.
 	<</if>>
 <<case "spats and a tank top">>
-	<<elseif $activeSlave.boobs > 1200>>
+	<<if $activeSlave.boobs > 1200>>
 		$activeSlave.slaveName's top is currently prevented from trying to cover $his
        	<<if $activeSlave.belly >= 1000000>>
             <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -12452,6 +12452,8 @@ $He has
 				<<else>>
 					$He cannot get to $his feet unaided, and tries to stay seated as much as $he can.
 				<</if>>
+			<<elseif $activeSlave.belly >= 750000>>
+                It dwarfs $his torso, making $him a vestigial accessory to $his belly. 
 			<<else>>
 				It is easily as large as $his torso, making $him at least half belly.
 			<</if>>
-- 
GitLab


From c939c798ccddfe4c511da78552485990406260bd Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 19:46:54 -0700
Subject: [PATCH 180/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 287c11d19f9..5650b988cbb 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -11625,7 +11625,7 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-    		$activeSlave.slaveName's monolithic pregnant belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
+    		$activeSlave.slaveName's monolithic implant-filled belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
 		<<else>>
     		$activeSlave.slaveName's monolithic pregnant belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
 		<</if>>
-- 
GitLab


From f0374844cd855b83c83cd4198ce0ebac77b04ac5 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Wed, 1 Aug 2018 20:02:03 -0700
Subject: [PATCH 181/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 5650b988cbb..178ef9a882d 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -12090,7 +12090,7 @@ $He has
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-    		$activeSlave.slaveName's monolithic, implant-filled belly completely hides $his silken panties. $His silken vest sensually frames $his brood-filled squirming belly.
+    		$activeSlave.slaveName's monolithic, implant-filled belly completely hides $his silken panties. $His silken vest sensually frames $his belly.
 		<<else>>
     		$activeSlave.slaveName's monolithic pregnant belly completely hides $his silken panties. $His silken vest sensually frames $his brood-filled squirming belly.
 		<</if>>
-- 
GitLab


From 844bcaa9c7b5d4a39edf03fae410f9608c9916f8 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Thu, 2 Aug 2018 16:09:48 -0400
Subject: [PATCH 182/189] fixes

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt |  6 ++
 devNotes/twine JS.txt                        |  4 +-
 src/SecExp/riotControlCenter.tw              |  4 +-
 src/endWeek/saChoosesOwnClothes.tw           |  2 +-
 src/js/vignettes.tw                          |  2 +-
 src/pregmod/huskSlaveSwapWorkaround.tw       | 10 +--
 src/pregmod/saPorn.tw                        | 64 ++++++++++----------
 src/uncategorized/RESS.tw                    |  6 +-
 src/uncategorized/neighborsDevelopment.tw    |  2 +-
 src/uncategorized/sellSlave.tw               | 10 +--
 src/uncategorized/slaveSold.tw               |  2 +-
 11 files changed, 59 insertions(+), 53 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 1ed6779c005..9e1ca4fae5b 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,12 @@
 
 0.10.7.1-0.5.x
 
+8/02/2018
+
+	15
+	-fixes and typo corrections
+	-tweaked cyber-economic warfare to hinge more on the target's prosperity
+
 8/01/2018
 
 	14
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 090fae2f1d0..656ab3ac052 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -9495,7 +9495,7 @@ window.saChoosesOwnClothes = (function() {
 		he = pronouns.pronoun;
 		him = pronouns.object;
 		his = pronouns.possessive;
-		hers = pronouns.posessivePronoun;
+		hers = pronouns.possessivePronoun;
 		himself = pronouns.objectReflexive;
 		boy = pronouns.noun;
 		He = capFirstChar(he);
@@ -23336,7 +23336,7 @@ window.GetVignette = function GetVignette(slave) {
 	const he = pronouns.pronoun;
 	const him = pronouns.object;
 	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
+	const hers = pronouns.possessivePronoun;
 	const himself = pronouns.objectReflexive;
 	const boy = pronouns.noun;
 
diff --git a/src/SecExp/riotControlCenter.tw b/src/SecExp/riotControlCenter.tw
index 8f20d894ae7..3a132dd65f5 100644
--- a/src/SecExp/riotControlCenter.tw
+++ b/src/SecExp/riotControlCenter.tw
@@ -108,7 +108,7 @@ The riot control center opens its guarded doors to you. The great chamber inside
 				<<if $riotUpgrades.rapidUnitCost == 0>>
 					<<set $authority -= 1000 + 50 * $riotUpgrades.rapidUnit>>
 				<<else>>
-					<<set $reputation -= 1000 + 50 * $riotUpgrades.rapidUnit>>
+					<<set $rep -= 1000 + 50 * $riotUpgrades.rapidUnit>>
 				<</if>>
 				<<set _change = random(15) + random(1,2) * $riotUpgrades.rapidUnit>>
 				<<set $slaveProgress = Math.clamp($slaveProgress - _change,0,100)>>
@@ -122,7 +122,7 @@ The riot control center opens its guarded doors to you. The great chamber inside
 				<<if $riotUpgrades.rapidUnitCost == 0>>
 					<<set $authority -= 1000 + 50 * $riotUpgrades.rapidUnit>>
 				<<else>>
-					<<set $reputation -= 1000 + 50 * $riotUpgrades.rapidUnit>>
+					<<set $rep -= 1000 + 50 * $riotUpgrades.rapidUnit>>
 				<</if>>
 				<<set _change = random(15) + random(1,2) * $riotUpgrades.rapidUnit>>
 				<<set $citizenProgress = Math.clamp($citizenProgress - _change,0,100)>>
diff --git a/src/endWeek/saChoosesOwnClothes.tw b/src/endWeek/saChoosesOwnClothes.tw
index 6483534f975..349545d653d 100644
--- a/src/endWeek/saChoosesOwnClothes.tw
+++ b/src/endWeek/saChoosesOwnClothes.tw
@@ -24,7 +24,7 @@ window.saChoosesOwnClothes = (function() {
 		he = pronouns.pronoun;
 		him = pronouns.object;
 		his = pronouns.possessive;
-		hers = pronouns.posessivePronoun;
+		hers = pronouns.possessivePronoun;
 		himself = pronouns.objectReflexive;
 		boy = pronouns.noun;
 		He = capFirstChar(he);
diff --git a/src/js/vignettes.tw b/src/js/vignettes.tw
index 5dbbbc339ee..e38bafe1a37 100644
--- a/src/js/vignettes.tw
+++ b/src/js/vignettes.tw
@@ -8,7 +8,7 @@ window.GetVignette = function GetVignette(slave) {
 	const he = pronouns.pronoun;
 	const him = pronouns.object;
 	const his = pronouns.possessive;
-	const hers = pronouns.posessivePronoun;
+	const hers = pronouns.possessivePronoun;
 	const himself = pronouns.objectReflexive;
 	const boy = pronouns.noun;
 
diff --git a/src/pregmod/huskSlaveSwapWorkaround.tw b/src/pregmod/huskSlaveSwapWorkaround.tw
index 26fb5eebc94..6f4b902bb57 100644
--- a/src/pregmod/huskSlaveSwapWorkaround.tw
+++ b/src/pregmod/huskSlaveSwapWorkaround.tw
@@ -11,11 +11,11 @@ __Select an eligible slave:__
 <<for _i = 0; _i < $slaves.length; _i++>>
 	<<if isSlaveAvailable($slaves[_i])>>
 	<<if $slaves[_i].fuckdoll == 0>>
-	<<if $slaves[_i].amp >= 0)>>
-	<<if ($slaves[_i].indenture == -1)>>
-	<<if ($slaves[_i].breedingMark == 0 || $propOutcome == 0)>>
-	<<if ($slaves[_i].reservedChildren == 0)>>
-	<<if ($slaves[_i].ID != $activeSlave.ID)>>
+	<<if $slaves[_i].amp >= 0>>
+	<<if $slaves[_i].indenture == -1>>
+	<<if $slaves[_i].breedingMark == 0 || $propOutcome == 0>>
+	<<if $slaves[_i].reservedChildren == 0>>
+	<<if $slaves[_i].ID != $activeSlave.ID>>
 		<br><<print "[[$slaves[_i].slaveName|Husk Slave Swap][$swappingSlave = $slaves[" + _i + "], $cash -= 10000]]">>
 	<</if>>
 	<</if>>
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index b799617fc53..d6de895c701 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -1245,7 +1245,7 @@
 			<<if $slaves[$i].pornTypePreggo >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her swollen with child.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object swollen with child, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object swollen with child, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypePreggo*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypePreggo < 5000>>
@@ -1255,7 +1255,7 @@
 			<<if $slaves[$i].pornTypeBBW >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her thick, soft body.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive thick and soft body, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive thick and soft body, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeBBW*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeBBW < 5000>>
@@ -1265,7 +1265,7 @@
 			<<if $slaves[$i].pornTypeLoli >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her immature body.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive immature body, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive immature body, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeLoli*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeLoli < 5000>>
@@ -1275,7 +1275,7 @@
 			<<if $slaves[$i].pornTypeGainer >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how curvy she's gotten.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how curvy <<print $pronoun>>'s gotten, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how curvy <<print $pronoun>>'s gotten, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeGainer*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeGainer < 5000>>
@@ -1285,7 +1285,7 @@
 			<<if $slaves[$i].pornTypeStud >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her heavy dick.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive heavy dick, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive heavy dick, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeStud*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeStud < 5000>>
@@ -1295,7 +1295,7 @@
 			<<if $slaves[$i].pornTypeDeepThroat >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sounds she makes when being throatfucked.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sounds $pronoun makes when being throatfucked, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sounds $pronoun makes when being throatfucked, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeDeepThroat*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeDeepThroat < 5000>>
@@ -1305,7 +1305,7 @@
 			<<if $slaves[$i].pornTypeStruggleFuck >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish how perfectly she struggles during sex.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how perfectly $pronoun struggles during sex, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish how perfectly $pronoun struggles during sex, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeStruggleFuck*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeStruggleFuck < 5000>>
@@ -1315,7 +1315,7 @@
 			<<if $slaves[$i].pornTypePainal >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish watching her asshole pushed to its limit.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish watching $possessive asshole pushed to its limit, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish watching $possessive asshole pushed to its limit, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypePainal*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypePainal < 5000>>
@@ -1325,7 +1325,7 @@
 			<<if $slaves[$i].pornTypeTease >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her lewd striptease.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive lewd striptease, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive lewd striptease, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeTease*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeTease < 5000>>
@@ -1335,7 +1335,7 @@
 			<<if $slaves[$i].pornTypeRomantic >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the deep bond she shares with her partners.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the deep bond $pronoun shares with her partners, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeRomantic*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeRomantic < 5000>>
@@ -1345,7 +1345,7 @@
 			<<if $slaves[$i].pornTypePervert >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the depths of her pervesions.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the depths of $possessive pervesions, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypePervert*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypePervert < 5000>>
@@ -1355,7 +1355,7 @@
 			<<if $slaves[$i].pornTypeCaring >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her devotion to her partners' pleasure.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive devotion to $possessive partners' pleasure, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeCaring*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeCaring < 5000>>
@@ -1365,7 +1365,7 @@
 			<<if $slaves[$i].pornTypeUnflinching >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her willingness to do anything and everything.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive willingness to do anything and everything, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeUnflinching*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeUnflinching < 5000>>
@@ -1375,7 +1375,7 @@
 			<<if $slaves[$i].pornTypeSizeQueen >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her holes filled to their limits.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive holes filled to their limits, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeSizeQueen*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeSizeQueen < 5000>>
@@ -1385,7 +1385,7 @@
 			<<if $slaves[$i].pornTypeNeglectful >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her denying herself pleasure.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object denying <<print $object>>self pleasure, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object denying <<print $object>>self pleasure, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeNeglectful*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeNeglectful < 5000>>
@@ -1395,7 +1395,7 @@
 			<<if $slaves[$i].pornTypeCumAddict >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for cum.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for cum, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for cum, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeCumAddict*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeCumAddict < 5000>>
@@ -1405,7 +1405,7 @@
 			<<if $slaves[$i].pornTypeAnalAddict >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for a dick up her ass.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for a dick up $possessive ass, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for a dick up $possessive ass, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeAnalAddict*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeAnalAddict < 5000>>
@@ -1415,7 +1415,7 @@
 			<<if $slaves[$i].pornTypeAttentionWhore >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her doing anything for attention.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for attention, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object doing anything for attention, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeAttentionWhore*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeAttentionWhore < 5000>>
@@ -1425,7 +1425,7 @@
 			<<if $slaves[$i].pornTypeBreastGrowth >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her expanding bust.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive expanding bust, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive expanding bust, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeBreastGrowth*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeBreastGrowth < 5000>>
@@ -1435,7 +1435,7 @@
 			<<if $slaves[$i].pornTypeAbusive >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her abusing others.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object abusing others, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object abusing others, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeAbusive*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeAbusive < 5000>>
@@ -1445,7 +1445,7 @@
 			<<if $slaves[$i].pornTypeMalicious >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her getting off from the suffering she caused.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object getting off from the suffering $pronoun caused, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $object getting off from the suffering $pronoun caused, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeMalicious*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeMalicious < 5000>>
@@ -1455,7 +1455,7 @@
 			<<if $slaves[$i].pornTypeSelfHating >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her suffering.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive suffering, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive suffering, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeSelfHating*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeSelfHating < 5000>>
@@ -1465,7 +1465,7 @@
 			<<if $slaves[$i].pornTypeBreeder >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her obsession with having children.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive obsession with having children, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive obsession with having children, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeBreeder*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeBreeder < 5000>>
@@ -1475,7 +1475,7 @@
 			<<if $slaves[$i].pornTypeSub >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her submissiveness.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive submissiveness, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive submissiveness, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeSub*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeSub < 5000>>
@@ -1485,7 +1485,7 @@
 			<<if $slaves[$i].pornTypeCumSlut >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her desire for cum.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive desire for cum, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive desire for cum, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeCumSlut*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeCumSlut < 5000>>
@@ -1495,7 +1495,7 @@
 			<<if $slaves[$i].pornTypeAnal >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her rear.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive rear, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive rear, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeAnal*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeAnal < 5000>>
@@ -1505,7 +1505,7 @@
 			<<if $slaves[$i].pornTypeHumiliation >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her frequent humiliation.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive frequent humiliation, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive frequent humiliation, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeHumiliation*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeHumiliation < 5000>>
@@ -1515,7 +1515,7 @@
 			<<if $slaves[$i].pornTypeBoobs >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish the sight of her breasts.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive breasts, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish the sight of $possessive breasts, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeBoobs*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeBoobs < 5000>>
@@ -1525,7 +1525,7 @@
 			<<if $slaves[$i].pornTypeDom >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her dominance.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive dominance, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive dominance, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeDom*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeDom < 5000>>
@@ -1535,7 +1535,7 @@
 			<<if $slaves[$i].pornTypeSadist >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her sadism.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive sadism, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive sadism, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeSadist*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeSadist < 5000>>
@@ -1545,7 +1545,7 @@
 			<<if $slaves[$i].pornTypeMasochist >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her masochism.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive masochism, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive masochism, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypeMasochist*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypeMasochist < 5000>>
@@ -1555,7 +1555,7 @@
 			<<if $slaves[$i].pornTypePregnancy >= 50000>>
 				<<set $slaves[$i].pornPrestige = 2>>
 				<<set $slaves[$i].pornPrestigeDesc = "She is well known from its career in slave pornography. Her many fans relish her fondness for pregnancy.">>
-				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive fondness for pregnancy, so $pronoun is now prestigious to own $object.
+				@@.green;$pronounCap has gained a hold in $slaves[$i].pornFameType pornography!@@ $possessiveCap many fans relish $possessive fondness for pregnancy, so it is now prestigious to own $object.
 			<<elseif _topFame.value >= $slaves[$i].pornTypePregnancy*_swapPoint>>
 				<<set _fameSwap = 1>>
 			<<elseif $slaves[$i].pornTypePregnancy < 5000>>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index ac974ab833a..0e40e51267a 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -14840,14 +14840,14 @@ You tell her kindly that you understand, and that she'll be trained to address t
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
 	You inform $activeSlave.slaveName of your plans and tell her to get dressed appropriately. She meets you at the door absolutely naked<<if $activeSlave.bellyPreg >= 1500>>, her motherly body on full display<</if>>. She has half a question on her face, wondering whether this is going too far, but it vanishes when you <<if canSee($activeSlave)>>smile reassuringly at<<else>>compliment<</if>> her. You take her by the hand and lead her out onto the private balcony outside your office. It's a cloudless night, and the moon is full. You order the arcology to play a classic dance medley, and $activeSlave.slaveName becomes all innocence and grace, the perfect dance partner<<if $activeSlave.bellyPreg >= 10000>>, despite her heavy pregnancy<<elseif $activeSlave.belly >= 10000 || $activeSlave.weight > 130>>, despite her weight<</if>>. The only real consequence of her nudity is
-	<<if $activeSlave.breasts >= 300>>
+	<<if $activeSlave.boobs >= 300>>
 		the extra sway of her breasts,
 	<</if>>
 	<<if canPenetrate($activeSlave)>>
 		her visible erection, and
 	<<elseif ($activeSlave.clit > 0)>>
 		her visibly engorged clit and
-	<<elseif $activeSlave.breasts >= 300>>
+	<<elseif $activeSlave.boobs >= 300>>
 		and
 	<</if>>
 	<<if $activeSlave.nipples != "fuckable">>the hardness of her nipples<<else>>how swollen her nipples are<</if>> in the cool night when the dance brings you close. She enjoys herself immensely and in no time at all, she's meekly asking you to take her inside and dance with her on the bed. Naturally, you oblige.
@@ -14862,7 +14862,7 @@ You tell her kindly that you understand, and that she'll be trained to address t
 		<<= VaginalVCheck()>>
 	<<elseif canDoAnal($activeSlave)>>
 		<<= AnalVCheck()>>
-	<<elseif $activeSlave.breasts >= 1000>>
+	<<elseif $activeSlave.boobs >= 1000>>
 		<<set $activeSlave.mammaryCount++, $mammaryTotal++>>
 	<<else>>
 		<<set $activeSlave.oralCount++, $oralTotal++>>
diff --git a/src/uncategorized/neighborsDevelopment.tw b/src/uncategorized/neighborsDevelopment.tw
index 2df820584f3..ab9a451e6d6 100644
--- a/src/uncategorized/neighborsDevelopment.tw
+++ b/src/uncategorized/neighborsDevelopment.tw
@@ -503,7 +503,7 @@ has an estimated GSP of @@.yellowgreen;<<print cashFormat(Math.trunc((0.1*$arcol
 	<<elseif $PC.hacking >= 100>>
 		<<set _Catchtchance = 100>>
 	<</if>>
-	<<set $arcologies[$i].prosperity -= $arcologies[0].CyberEconomic*2, _WarSpoils = 10+Math.max((500*$arcologies[$i].prosperity*$arcologies[0].CyberEconomic),0)>>
+	<<set $arcologies[$i].prosperity -= $arcologies[0].CyberEconomic*2, _WarSpoils = 10+Math.max((100*$arcologies[$i].prosperity*$arcologies[0].CyberEconomic),0)>>
 	<<set $arcologies[$i].prosperity = Math.clamp($arcologies[$i].prosperity, 1, 300)>>
 	<<if random(0,100) >= _Catchchance-(10*$arcologies[0].CyberEconomic)>>
 		<<set $arcologies[0].prosperity -= $arcologies[0].CyberEconomic*3, $rep -= random(100,200), _redHanded = 1>>
diff --git a/src/uncategorized/sellSlave.tw b/src/uncategorized/sellSlave.tw
index 6556004ae05..843d383485e 100644
--- a/src/uncategorized/sellSlave.tw
+++ b/src/uncategorized/sellSlave.tw
@@ -355,12 +355,12 @@ A reputable slave appraiser arrives promptly to inspect her and certify her qual
 	<</if>>
 <</if>>
 
-<<if $activeSlave.fetishKnown == 1>>
-	<<if $activeSlave.fetish == "mindbroken">>
+<<if $activeSlave.fetish == "mindbroken">>
 	It's a shame she's mindbroken. From a price perspective.
-	<<elseif $activeSlave.fetish != "none">>
+<<elseif $activeSlave.fetish != "none" && $activeSlave.fetishKnown == 1>>
 	Her fetish is good for performance, of course, but it adds a little bonus to value, too.
-	<</if>>
+<<elseif $activeSlave.fetishKnown == 1>>
+	Her tastes are a tad plain, but at least it won't hurt her value.
 <<else>>
 	It's a pity there's no information on her fetishes. Without it, buyers tend to assume the worst.
 <</if>>
@@ -1808,7 +1808,7 @@ __Bids Received__
 			<<link "Accept bid">><<set $cash += 500*Math.trunc(($slaveCost*1.2)/500), $buyer = "peacekeepers">><<goto "Slave Sold">><</link>>
 		<</if>>
 	<<case "flesh balloons">>
-		<<if $activeSlave.breasts > 20000 && $activeSlave.butt > 10>>
+		<<if $activeSlave.boobs > 20000 && $activeSlave.butt > 10>>
 			<br>''<<print cashFormat(500*Math.trunc(($slaveCost*1.2)/500))>>'' from the sex slave buyer for General $peacekeepers.generalName's client state, which prefers $peacekeepers.tastes.
 			<<link "Accept bid">><<set $cash += 500*Math.trunc(($slaveCost*1.2)/500), $buyer = "peacekeepers">><<goto "Slave Sold">><</link>>
 		<</if>>
diff --git a/src/uncategorized/slaveSold.tw b/src/uncategorized/slaveSold.tw
index 44c81e12f65..67e50a12fcb 100644
--- a/src/uncategorized/slaveSold.tw
+++ b/src/uncategorized/slaveSold.tw
@@ -1075,7 +1075,7 @@
 			<<set _belly = bellyAdjective($activeSlave)>>
 			smiling as her _belly belly is used as the center of a large bukkake party. You can just barely make out the figure of someone taking her from behind beyond her immensity. There's a note attached, stating superfluously that her exotic feature makes her very popular. General $peacekeepers.generalName's buyer is going to be looking for more massive bellied girls in the future.
 			<<set $peacekeepers.tastes = "bellies with girls attached">>
-		<<elseif _influential && $activeSlave.breasts > 20000 && $activeSlave.butt > 10>>
+		<<elseif _influential && $activeSlave.boobs > 20000 && $activeSlave.butt > 10>>
 			standing obediently in a comfort station in one of their rear area facilities, while a huge group of muscular men tit fuck her near endless cleavage and another, smaller group use her gigantic asscheeks. There's a note attached, stating superfluously that her mind-blowing assets make her very popular. General $peacekeepers.generalName's buyer is going to be looking for more slaves with bountiful T&A in the future.
 			<<set $peacekeepers.tastes = "flesh balloons">>
 		<<else>>
-- 
GitLab


From 1a2c99488dfb76a620b5d8443d27c1b932044199 Mon Sep 17 00:00:00 2001
From: HiveBro <peopleofthehive@gmail.com>
Date: Thu, 2 Aug 2018 13:46:22 -0700
Subject: [PATCH 183/189] Update descriptionWidgetsFlesh.tw

---
 src/utility/descriptionWidgetsFlesh.tw | 178 ++++++++++++++++++-------
 1 file changed, 130 insertions(+), 48 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 178ef9a882d..91623571482 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -6174,9 +6174,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's unfathomable, room filling implant-filled belly makes a mockery of $his corset; it holds on only with custom ultra-long lacing and, even then, is more plastered to her back than wrapped around her stomach.
+			$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly makes a mockery of $his corset; it holds on only with custom lacing and, even then, is more plastered to her back than wrapped around her stomach.
 		<<else>>
-			$activeSlave.slaveName's unfathomable, room filling pregnancy makes a mockery of $his corset; despite this, even the light pressure applied to it by the failing lacings of the garment has $his packed-tight womb on the brink of rupturing. $His brood squirms as much as they possibly can under the pressure.
+			$activeSlave.slaveName's unfathomable, hyper-swollen pregnancy makes a mockery of $his corset; despite this, even the light pressure applied to it by the failing lacings of the garment has $his packed-tight womb on the brink of rupturing. $His brood squirms as much as they possibly can under the pressure.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -6275,9 +6275,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's corset looks ridiculous on $his unfathomably huge, room filling implant-swollen belly. It floats on top of $his belly, looking more like the bottom half of a mini coat than the garment it was originally intended to be. 
+			$activeSlave.slaveName's corset looks ridiculous on $his unfathomable, hyper-swollen, implant-filled belly. It floats on top of $his belly, looking more like the bottom half of a mini coat than the garment it was originally intended to be. 
 		<<else>>
-			$activeSlave.slaveName's corset looks ridiculous on $his unfathomable, room filling pregnancy. It floats on top of $his belly, near useless, bobbling up and down as $his innumerable, agitated brood kick and squirm.
+			$activeSlave.slaveName's corset looks ridiculous on $his unfathomable, hyper-swollen pregnancy. It floats on top of $his belly, near useless, bobbling up and down as $his innumerable brood kick and squirm.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -6394,10 +6394,10 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's suit has no stomach to it as it's the only way to give $his unfathomably huge, room filling implant-swollen belly the space it demands.
+			$activeSlave.slaveName's suit has no stomach to it as it's the only way to give $his unfathomable, hyper-swollen, implant-filled belly the space it demands.
 		<<else>>
 			<<if $activeSlave.preg > 34>>
-				The front of $activeSlave.slaveName's suit is made of a clear, stretchy plastic that is stretched thin as it reinforces $his unfathomably huge, room filling pregnancy. A hole at the very front of the suit allows $his popped navel to bulge through. The movement of $his countless children is clear to see.
+				The front of $activeSlave.slaveName's suit is made of a clear, stretchy plastic that is stretched thin as it reinforces $his unfathomable, hyper-swollen, pregnancy. A hole at the very front of the suit allows $his popped navel to bulge through. The movement of $his countless children is clear to see.
 			<<else>>
 				$activeSlave.slaveName's suit has no stomach to it as it's the only way to give $his monolithic pregnancy the space it requires to shift and bulge ominously.
 			<</if>>
@@ -6538,28 +6538,28 @@ $He has
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
 			<<if ($activeSlave.boobs > 24000)>>
-				$activeSlave.slaveName's immense breasts keep $his oversized sweater far from $his unfathomable, room filling, implant-swollen belly but do little to hide its imposing mass as it lewdly distends between them.
+				$activeSlave.slaveName's immense breasts keep $his oversized sweater far from $his unfathomable, hyper-swollen, implant-filled belly but do little to hide its imposing mass as it lewdly distends between them.
 			<<elseif ($activeSlave.boobs > 12000)>>
-				$activeSlave.slaveName's unfathomable, room filling, implant-swollen belly adds even more strain to $his struggling oversized sweater as it lewdly distends between $his tits.
+				$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly adds even more strain to $his struggling oversized sweater as it lewdly distends between $his tits.
 			<<elseif ($activeSlave.boobs > 8000)>>
-				$activeSlave.slaveName's unfathomable, room filling, implant-swollen belly lewdly parts $his poorly covered breasts, allowing the bulging mass the room it demands.
+				$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly lewdly parts $his poorly covered breasts, allowing the bulging mass the room it demands.
 			<<elseif ($activeSlave.boobs > 4000)>>
-				$activeSlave.slaveName's sweater rests atop $his unfathomable, room filling, implant-swollen belly, allowing the bulging mass the room it demands.
+				$activeSlave.slaveName's sweater rests atop $his unfathomable, hyper-swollen, implant-filled belly, allowing the bulging mass the room it demands.
 			<<else>>
-				$activeSlave.slaveName's blouse rests atop $his unfathomable, room filling, implant-swollen belly, allowing the bulging mass the room it demands.
+				$activeSlave.slaveName's blouse rests atop $his unfathomable, hyper-swollen, implant-filled belly, allowing the bulging mass the room it demands.
 			<</if>>
 			$He's left $his pants unfastened as there is no chance of $him managing to reach them.
 		<<else>>
 			<<if ($activeSlave.boobs > 24000)>>
-				$activeSlave.slaveName's immense breasts keep $his oversized sweater far from $his unfathomably huge, room filling pregnant belly but do little to hide its imposing mass as it lewdly distends between them.
+				$activeSlave.slaveName's immense breasts keep $his oversized sweater far from $his unfathomable, hyper-swollen pregnant belly but do little to hide its imposing mass as it lewdly distends between them.
 			<<elseif ($activeSlave.boobs > 12000)>>
-				$activeSlave.slaveName's unfathomably huge, room filling pregnant belly adds even more strain to $his struggling oversized sweater as it lewdly distends between $his tits. Every motion $his brood makes threaten to displaces $his breasts.
+				$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly adds even more strain to $his struggling oversized sweater as it lewdly distends between $his tits. Every motion $his brood makes threaten to displaces $his breasts.
 			<<elseif ($activeSlave.boobs > 8000)>>
-				$activeSlave.slaveName's unfathomably huge, room filling pregnant belly lewdly parts $his poorly covered breasts, allowing the bulging mass the room it desperately seeks.
+				$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly lewdly parts $his poorly covered breasts, allowing the bulging mass the room it desperately needs.
 			<<elseif ($activeSlave.boobs > 4000)>>
-				$activeSlave.slaveName's sweater rests atop $his unfathomably huge, room filling pregnant belly, allowing the bulging mass the room it desperately seeks.
+				$activeSlave.slaveName's sweater rests atop $his unfathomable, hyper-swollen pregnant belly, allowing the bulging mass the room it desperately needs.
 			<<else>>
-				$activeSlave.slaveName's blouse rests atop $his unfathomably huge, room filling pregnant belly, allowing the bulging mass the room it desperately seeks.
+				$activeSlave.slaveName's blouse rests atop $his unfathomable, hyper-swollen pregnant belly, allowing the bulging mass the room it desperately needs.
 			<</if>>
 			$He's left $his pants unfastened as $his womb has consumed so much space that $He has no hope of ever doing up the button and, regardless, even the light touch of the fabric against $his belly feels nearly intolerable due to the pressure.
 		<</if>>
@@ -7031,9 +7031,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's unfathomably huge, room filling, implant-swollen belly is wrapped with tight chains. Despite how tightly they’re pulled together, they fail to sink into the firm globe of her belly at all, shifting over it and agitating $his flesh with each of $his movements.
+			$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly is wrapped with tight chains. Despite how tightly they’re pulled together, they fail to sink into the firm globe of her belly at all, shifting over it and agitating $his flesh with each of $his movements.
 		<<else>>
-			$activeSlave.slaveName's unfathomably huge, room filling pregnant belly is wrapped with tight chains. It bulges so extremely that the outlines of entire infants can be seen pressed up to either side of the chains, sometimes overlapping them so that flesh rubs up against flesh; every motion inside $him is excruciating.
+			$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly is wrapped with tight chains. It bulges so extremely that the outlines of entire infants can be seen pressed up to either side of the chains, sometimes overlapping them so that flesh rubs up against flesh; every motion inside $him is excruciating.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -7142,9 +7142,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's flannel shirt can't close over $his unfathomably huge, room filling, implant-swollen belly, so $he has left the bottom buttons open, giving $his stomach room to massively jut out from $his body. $He has become so wide the remaining buttons no longer hold together at all and $he now has to hold the outfit together by wrapping a large strip of fabric around $his outfit and over the line between $his belly and slowly distorting ribcage. In addition, $he's left $his chaps unfastened to give $his overfilled middle more space.
+			$activeSlave.slaveName's flannel shirt can't close over $his unfathomable, hyper-swollen, implant-filled belly, so $he has left the bottom buttons open, giving $his stomach room to massively jut out from $his body. $He has become so wide the remaining buttons no longer hold together at all, and $he now has to hold the outfit together by wrapping a large strip of fabric around $his outfit and over the line between $his belly and slowly distorting ribcage. In addition, $he's left $his chaps unfastened to give $his overfilled middle more space.
 		<<else>>
-			$activeSlave.slaveName's flannel shirt can't close over $his unfathomably huge, room filling pregnant belly, so $he has left the bottom buttons open giving $his stomach room to massively jut out from $his body. $He has become so wide the remaining buttons no longer hold together at all and $he now has to hold the outfit together by wrapping a large strip of fabric around $his outfit and over the line between $his belly and slowly distorting ribcage. In addition, $he's left $his chaps unfastened to give $his overfilled womb more space.
+			$activeSlave.slaveName's flannel shirt can't close over $his unfathomable, hyper-swollen pregnant belly, so $he has left the bottom buttons open, giving $his stomach room to massively jut out from $his body. $He has become so wide the remaining buttons no longer hold together at all, and $he now has to hold the outfit together by wrapping a large strip of fabric around $his outfit and over the line between $his belly and slowly distorting ribcage. In addition, $he's left $his chaps unfastened to give $his overfilled womb more space.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -7246,9 +7246,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's unfathomably huge, room filling, implant-swollen belly is covered in a sheen of special oil meant to prevent stretch marks.
+			$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly is covered in a sheen of special oil meant to prevent stretch marks.
 		<<else>>
-			$activeSlave.slaveName's unfathomably huge, room filling pregnant belly is covered in a sheen of special oil meant to prevent stretch marks.
+			$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly is covered in a sheen of special oil meant to prevent stretch marks.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -7343,9 +7343,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's toga bares $his middle to allow $his unfathomably huge, room filling, implant-swollen belly the room it demands.
+			$activeSlave.slaveName's toga bares $his middle to allow $his unfathomable, hyper-swollen, implant-filled belly the room it demands.
 		<<else>>
-			$activeSlave.slaveName's toga bares $his middle to allow $his unfathomably huge, room filling pregnant belly the room it desperately needs. $His brood appreciates the freedom.
+			$activeSlave.slaveName's toga bares $his middle to allow $his unfathomable, hyper-swollen pregnant belly the room it desperately needs. $His brood appreciates the freedom.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -7445,9 +7445,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's huipil meekly rests atop $his unfathomably huge, room filling, implant-swollen belly, its role completely usurped by the colossal mass.
+			$activeSlave.slaveName's huipil meekly rests atop $his unfathomable, hyper-swollen, implant-filled belly, its role completely usurped by the colossal mass.
 		<<else>>
-			$activeSlave.slaveName's huipil meekly rests atop $his unfathomably huge, room filling pregnant belly, its role completely usurped by the colossal gravidity.
+			$activeSlave.slaveName's huipil meekly rests atop $his unfathomable, hyper-swollen pregnant belly, its role completely usurped by the colossal gravidity.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -7760,7 +7760,12 @@ $He has
 	<</if>>
 <<case "shibari ropes">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly is tightly bound with ropes; they stand no chance of sinking into the bloated orb, and can barely wrap around it.
+		<<else>>
+			$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly is tightly bound with ropes. It bulges angrily as they run between the forms of $his unborn children, and the ropes can barely wrap around it.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -9663,7 +9668,24 @@ $He has
 	<</if>>
 <<case "a nice nurse outfit">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			<<if ($activeSlave.boobs > 12000)>>
+				$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly parts $his uncovered breasts. In addition, $he's left $his trousers unfastened to give $his overfilled implant more room to hang tremendously.
+			<<elseif ($activeSlave.boobs > 4000)>>
+				$activeSlave.slaveName's oversized breasts keep $his scrub top far from $his unfathomable, hyper-swollen, implant-filled belly. In addition, $he's left $his trousers unfastened to give $his overfilled implant more room to hang tremendously.
+			<<else>>
+				$activeSlave.slaveName's scrub top rests meekly atop $his unfathomable, hyper-swollen, implant-filled belly. In addition, $he's left $his trousers unfastened to give $his overfilled implant more space to hang tremendously.
+			<</if>>
+		<<else>>
+			<<if ($activeSlave.boobs > 12000)>>
+				$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly parts $his uncovered breasts. In addition, $he's left $his trousers unfastened to give $his overfilled womb the room it desperately needs.
+			<<elseif ($activeSlave.boobs > 4000)>>
+				$activeSlave.slaveName's oversized breasts keep $his scrub top far from $his unfathomable, hyper-swollen pregnant belly. In addition, $he's left $his trousers unfastened to give $his overfilled womb the room it desperately needs.
+			<<else>>
+				$activeSlave.slaveName's scrub top rests meekly atop $his unfathomable, hyper-swollen pregnant belly. In addition, $he's left $his trousers unfastened to give $his overfilled womb the room it desperately needs.
+			<</if>>
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -10442,7 +10464,12 @@ $He has
 	<</if>>
 <<case "battlearmor">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+			Traditional battle armor would be useless on $activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly. Instead, $he wears armor more suited to protecting an industrial tanker truck rather than a human being, complete with an internal mechanical frame designed to draw the shock of physical blows away from $his dangerously pressurized implant and special hookups to optimize the value of mobility aids.
+		<<else>>
+			Traditional battle armor would be useless on $activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly. Instead, $he wears armor more suited to protecting an industrial tanker truck rather than a human being, complete with an internal mechanical frame designed to draw the shock of physical blows away from $his dangerously pressurized womb and innumerable brood of squirming children, as well as special hookups to optimize the value of mobility aids.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11466,7 +11493,12 @@ $He has
 	<</if>>
 <<case "a cheerleader outfit">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's cheerleader top rests atop $his unfathomable, hyper-swollen, implant-filled belly, giving the impression that $he is about to give birth to her entire school.
+		<<else>>
+    		$activeSlave.slaveName's cheerleader top rests atop $his unfathomable, hyper-swollen pregnant belly, giving the impression that $he is about to give birth to her entire school.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11559,7 +11591,12 @@ $He has
 	<</if>>
 <<case "a slave gown">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's slave gown is carefully tailored using a huge quantity of material. When not worn, it looks more like a circus tent than something meant to be worn by a human being. On the slave, it gives $him a sensual motherly look as it caresses $his unfathomable, hyper-swollen, implant-filled belly.
+		<<else>>
+    		$activeSlave.slaveName's slave gown is carefully tailored using a huge quantity of material. When not worn, it looks more like a circus tent than something meant to be worn by a human being. On the slave, it gives $him a sensual motherly look as it caresses $his unfathomable, hyper-swollen pregnant belly.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11590,7 +11627,12 @@ $He has
 	<</if>>
 <<case "slutty business attire">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled stomach hangs out the front of $his suit jacket and blouse as there is no way $he could ever come close to closing them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
+		<<else>>
+    		$activeSlave.slaveName's unfathomable, hyper-swollen pregnant stomach hangs out the front of $his suit jacket and blouse as there is no way $he could ever come close to closing them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11621,7 +11663,12 @@ $He has
 	<</if>>
 <<case "nice business attire">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's unfathomable, hyper-swollen, implant swollen belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
+		<<else>>
+    		$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly hangs out the front of $his specially tailored blouse and jacket as there is no way for $him to close them. The zipper on $his suit-pants has exploded, though this fact is hidden by $his belly.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11652,7 +11699,12 @@ $He has
 	<</if>>
 <<case "harem gauze">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's harem girl outfit, designed with enough sheer fabric to fill a shah’s palace, has been specially tailored to drape over $his unfathomable, hyper-swollen, implant-filled belly and accentuate its size and shape.
+		<<else>>
+    		$activeSlave.slaveName's harem girl outfit, designed with enough sheer fabric to fill a shah’s palace, has been specially tailored to drape over $his unfathomable, hyper-swollen pregnancy and accentuate its size and the oceanic movement as $his belly is rocked by the actions of $his brood of innumerable children.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11714,7 +11766,12 @@ $He has
 	<</if>>
 <<case "a slutty nurse outfit">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's jacket fails to even come close to closing over $his unfathomable, hyper-swollen, implant-filled belly, requiring $him to hold $his nurse's jacket together over his breasts with a length of red silk ribbon.
+		<<else>>
+    		$activeSlave.slaveName's jacket fails to even come close to closing over $his unfathomable, hyper-swollen pregnant belly, requiring $him to hold $his nurse's jacket together over his breasts with a length of red silk ribbon.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11745,7 +11802,12 @@ $He has
 	<</if>>
 <<case "a schoolgirl outfit">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+	    	$activeSlave.slaveName's blouse rests atop $his unfathomable, hyper-swollen, implant-filled belly.
+		<<else>>
+	    	$activeSlave.slaveName's blouse rests atop $his unfathomable, hyper-swollen pregnant belly, showing off the mind boggling result of $his promiscuity.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11776,7 +11838,12 @@ $He has
 	<</if>>
 <<case "a kimono">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly is so enormous that the largest obi in the world could never wrap around it. As a result, $he leaves $his kimono open. It pools around $her when she rests atop her belly’s incredible mass, causing her to resemble a geisha in repose due to her immobility.
+		<<else>>
+     		$activeSlave.slaveName's unfathomable, hyper-swollen pregnancy is so enormous that the largest obi in the world could never wrap around it. As a result, $he leaves $his kimono open. It pools around $her when she rests atop her belly’s incredible, brood swollen mass, causing her to resemble nothing more than a geisha in repose, rocking on an ocean of undulating flesh.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -11838,7 +11905,12 @@ $He has
 	<</if>>
 <<case "battledress">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's tank top rests atop $his unfathomable, hyper-swollen, implant-filled belly, leaving $him looking, falsely, like someone preparing to give birth to an army.
+		<<else>>
+	    	$activeSlave.slaveName's tank top rests atop $his unfathomable, hyper-swollen pregnant belly, leaving $him looking like someone preparing to give birth to an army.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -12086,7 +12158,12 @@ $He has
 	<</if>>
 <<case "attractive lingerie for a pregnant woman">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+    		$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly completely hides $his silken panties. $His silken vest sensually frames $his belly.
+		<<else>>
+    		$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly completely hides $his silken panties. $His silken vest sensually frames $his brood-filled squirming belly.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -12117,7 +12194,12 @@ $He has
 	<</if>>
 <<case "a maternity dress">>
 	<<if $activeSlave.belly >= 1000000>>
-		//WIP//
+		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+		<<elseif $activeSlave.bellyImplant > 0>>
+	    	$activeSlave.slaveName's unfathomable, hyper-swollen, implant-filled belly is so large that $his dress, despite being designed to flatter pregnancies, is inadequate to contain it due to sheer size. The dress bunches up as it rests atop $his belly.
+		<<else>>
+	    	$activeSlave.slaveName's unfathomable, hyper-swollen pregnant belly is so large that $his dress, despite being designed to flatter pregnancies, is inadequate to contain it due to sheer size. The dress bunches up as it rests atop $his squirming belly.
+		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
@@ -12183,9 +12265,9 @@ $He has
        	<<if $activeSlave.belly >= 1000000>>
             <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		    <<elseif $activeSlave.bellyImplant > 0>>
-                unfathomably huge, room filling, implant-swollen belly
+                unfathomable huge, hyper-swollen, implant-filled belly
 		    <<else>>
-                unfathomably huge, room filling pregnant belly
+                unfathomable, hyper-swollen pregnant belly
 		    <</if>>
 	    <<elseif $activeSlave.belly >= 750000>>
 		    <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -12220,9 +12302,9 @@ $He has
     	<<if $activeSlave.belly >= 1000000>>
             <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
     		<<elseif $activeSlave.bellyImplant > 0>>
-                unfathomably huge, room filling implant-swollen belly
+                unfathomable, hyper-swollen, implant-filled belly
 	    	<<else>>
-                unfathomably huge, room filling pregnant belly
+                unfathomable, hyper-swollen pregnant belly
 		    <</if>>
 	    <<elseif $activeSlave.belly >= 750000>>
             <<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -12272,9 +12354,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-		    Your breeding focused society finds $his unfathomably huge, room filling, implant-swollen belly near the pinacle of fashion despite her inability to have children.
+		    Your breeding focused society finds $his unfathomable, hyper-swollen, implant-filled belly near the pinacle of fashion despite her inability to have children.
    		<<else>>
-	    	Your breeding focused society finds $his unfathomably huge, room filling pregnant belly the perfect realization of the fashionable ideal.
+	    	Your breeding focused society finds $his unfathomable, hyper-swollen pregnant belly the perfect realization of the fashionable ideal.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
@@ -12300,9 +12382,9 @@ $He has
 	<<if $activeSlave.belly >= 1000000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
 		<<elseif $activeSlave.bellyImplant > 0>>
-            Your eugenics obsessed society sees $his unfathomably huge, room filling, implant-swollen belly as equally unfathomably degenerate.
+            Your eugenics obsessed society sees $his unfathomable, hyper-swollen, implant-filled belly as equally unfathomably degenerate.
 		<<else>>
-            Your eugenics obsessed society sees $his unfathomably huge, room filling pregnant belly the perfect antithesis of the fashionable ideal.
+            Your eugenics obsessed society sees $his unfathomable, hyper-swollen pregnant belly the perfect antithesis of the fashionable ideal.
 		<</if>>
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-- 
GitLab


From da5e388e64df3d63f20aa98402129409a308cfc3 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Thu, 2 Aug 2018 16:43:20 -0500
Subject: [PATCH 184/189] More Tests

---
 src/npc/databases/dSlavesDatabase.tw   |   4 +-
 src/utility/descriptionWidgetsFlesh.tw | 262 ++++++++++++++-----------
 2 files changed, 145 insertions(+), 121 deletions(-)

diff --git a/src/npc/databases/dSlavesDatabase.tw b/src/npc/databases/dSlavesDatabase.tw
index b016c0e0b12..b61cbccfc9b 100644
--- a/src/npc/databases/dSlavesDatabase.tw
+++ b/src/npc/databases/dSlavesDatabase.tw
@@ -381,7 +381,7 @@
 /*Increased height, reduced weight, reduced butt, fixed customdesc syntax -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "no name", _HS.birthName = "no name", _HS.origin = "A previous owner cultivated her desire to escape slavery for his own amusement.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 50, _HS.devotion = -100, _HS.weight = -20, _HS.race = "white", _HS.eyeColor = "blue", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "white", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.boobs = 300, _HS.nipplesPiercing = 1, _HS.butt = 3, _HS.vaginaLube = 1, _HS.clitPiercing = 3, _HS.clitSetting = "oral", _HS.anus = 2, _HS.ovaries = 1, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.intelligence = 3, _HS.intelligenceImplant = 1, _HS.attrXY = 40, _HS.fetish = "cumslut", _HS.fetishKnown = 1, _HS.customDesc = "She is fit and athletic.">>
+<<set _HS.slaveName = "No Name", _HS.birthName = "No Name", _HS.origin = "A previous owner cultivated her desire to escape slavery for his own amusement.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 50, _HS.devotion = -100, _HS.weight = -20, _HS.race = "white", _HS.eyeColor = "blue", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "white", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.boobs = 300, _HS.nipplesPiercing = 1, _HS.butt = 3, _HS.vaginaLube = 1, _HS.clitPiercing = 3, _HS.clitSetting = "oral", _HS.anus = 2, _HS.ovaries = 1, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.intelligence = 3, _HS.intelligenceImplant = 1, _HS.attrXY = 40, _HS.fetish = "cumslut", _HS.fetishKnown = 1, _HS.customDesc = "She is fit and athletic.">>
 <<set $heroSlaves.push(_HS)>>
 *//*hypno-anal/cum*/
 /*Reduced weight, changed eyes, corrected customdesc syntax, added origin, increased rebelliousness, changed clitsetting to oral. -BoneyM*/
@@ -561,7 +561,7 @@
 /*Tweaked smart piercing setting, corrected piercings -BoneyM*/
 
 <<set _HS = {}>>
-<<set _HS.slaveName = "fleshlight", _HS.birthName = "fleshlight", _HS.origin = "Nothing remains of the person she originally was, either mentally or physically.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 20, _HS.devotion = 60, _HS.eyeColor = "blue", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "tanned", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 800, _HS.boobsImplant = 600, _HS.butt = 5, _HS.buttImplant = 2, _HS.lips = 55, _HS.lipsImplant = 2, _HS.lipsTat = "permanent makeup", _HS.vagina = 2, _HS.vaginaLube = 1, _HS.anus = 2, _HS.ovaries = 1, _HS.makeup = 3, _HS.nails = 3, _HS.vaginalSkill = 35, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.shoes = "heels", _HS.attrXY = 40, _HS.fetish = "mindbroken", _HS.fetishKnown = 1, _HS.customDesc = "She has many surgical scars and something seems off about her.">>
+<<set _HS.slaveName = "Fleshlight", _HS.birthName = "Fleshlight", _HS.origin = "Nothing remains of the person she originally was, either mentally or physically.", _HS.ID = _i++, _HS.birthWeek = random(0,51), _HS.actualAge = 21, _HS.physicalAge = 21, _HS.visualAge = 21, _HS.ovaryAge = 21, _HS.health = 20, _HS.devotion = 60, _HS.eyeColor = "blue", _HS.hColor = "blonde", _HS.pubicHColor = "blonde", _HS.skin = "tanned", _HS.hStyle = "long", _HS.pubicHStyle = "waxed", _HS.waist = -55, _HS.boobs = 800, _HS.boobsImplant = 600, _HS.butt = 5, _HS.buttImplant = 2, _HS.lips = 55, _HS.lipsImplant = 2, _HS.lipsTat = "permanent makeup", _HS.vagina = 2, _HS.vaginaLube = 1, _HS.anus = 2, _HS.ovaries = 1, _HS.makeup = 3, _HS.nails = 3, _HS.vaginalSkill = 35, _HS.oralSkill = 35, _HS.analSkill = 35, _HS.shoes = "heels", _HS.attrXY = 40, _HS.fetish = "mindbroken", _HS.fetishKnown = 1, _HS.customDesc = "She has many surgical scars and something seems off about her.">>
 <<set $heroSlaves.push(_HS)>>
 /*heels*/
 /*Added origin, makeup and nails, changed eyes -BoneyM*/
diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 34d46424294..36da2067ec8 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -10584,9 +10584,9 @@ $He has
 		//WIP//
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's $His monolithic <<print $activeSlave.inflationType>>-filled belly protrudes from over the top of $his monokini, which has been fully pushed down by the mass.
+			$activeSlave.slaveName's monolithic <<print $activeSlave.inflationType>>-filled belly protrudes from over the top of $his monokini, which has been fully pushed down by the mass.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's $His monolithic implant-filled belly protrudes from over the top of $his monokini, which has been fully pushed down by the mass.
+			$activeSlave.slaveName's monolithic implant-filled belly protrudes from over the top of $his monokini, which has been fully pushed down by the mass.
 		<<else>>
 			$activeSlave.slaveName's monokini shows off every kick and movement within $his monolithic bulging pregnant belly. $His monolithic squirming belly protrudes from over the top of the swimsuit, which has been pushed down by the mass.
 		<</if>>
@@ -10793,67 +10793,73 @@ $He has
 		//WIP//
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's tent-like abaya is still strained from the sheer size of $his monolithic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
+			$activeSlave.slaveName's tent-like abaya is still strained from the sheer size of $his monolithic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic pregnant belly.
+			$activeSlave.slaveName's tent-like abaya is still strained from the sheer size of $his monolithic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 600000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya only manages to cover $his titanic <<print $activeSlave.inflationType>>-filled belly with major extensions to the material.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
+			$activeSlave.slaveName's abaya only manages to cover $his titanic implant-filled belly with major extensions to the material.
 		<<else>>
-			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
+			$activeSlave.slaveName's abaya only manages to cover $his titanic pregnant belly with major extensions to the material.
 		<</if>>
 	<<elseif $activeSlave.belly >= 450000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya drapes itself over the sides of $his gigantic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
+			$activeSlave.slaveName's abaya drapes itself over the sides of $his gigantic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
+			$activeSlave.slaveName's abaya drapes itself over the sides of $his gigantic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 300000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya has been severely lengthened to ensure that $his massive <<print $activeSlave.inflationType>>-filled belly is fully covered.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			
+			$activeSlave.slaveName's abaya has been severely lengthened to ensure that $his massive implant-filled belly is fully covered.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his massive pregnant belly.
+			$activeSlave.slaveName's abaya has been severely lengthened to ensure that $his massive pregnant belly is fully covered.
 		<</if>>
 	<<elseif $activeSlave.belly >= 120000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya has been severely widened to ensure that $his giant <<print $activeSlave.inflationType>>-filled belly is fully covered.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant implant-filled belly.
+			$activeSlave.slaveName's abaya has been severely widened to ensure that $his giant implant-filled belly is fully covered.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant pregnant belly.
+			$activeSlave.slaveName's abaya has been severely widened to ensure that $his giant pregnant belly is fully covered.
 		<</if>>
 	<<elseif $activeSlave.belly >= 30000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's abaya list completely taut on $his titanic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+			$activeSlave.slaveName's abaya list completely taut on $his titanic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic pregnant belly.
+			$activeSlave.slaveName's abaya list completely taut on $his titanic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 190>>
 		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
 	<<elseif $activeSlave.belly >= 15000 || ($activeSlave.bellyAccessory == "a huge empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a huge empathy belly">>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+			$activeSlave.slaveName's abaya is straining to contain $his huge pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge <<print $activeSlave.inflationType>>-filled belly.
+			$activeSlave.slaveName's abaya is straining to contain $his huge <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+			$activeSlave.slaveName's abaya is straining to contain $his huge implant-filled belly.
 		<<else>>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+			$activeSlave.slaveName's abaya is straining to contain $his huge pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 10000 || ($activeSlave.bellyAccessory == "a large empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
-			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+			$activeSlave.slaveName's abaya is filled by $his pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+			$activeSlave.slaveName's abaya is filled by $his <<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+			$activeSlave.slaveName's abaya is filled by $his implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+			$activeSlave.slaveName's abaya is filled by $his pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 160>>
 		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
@@ -10893,72 +10899,78 @@ $He has
 		//WIP//
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's burqa has been stretched so thin by $his monolithic <<print $activeSlave.inflationType>>-swollen belly, it's now ironically much more comfortable to wear.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
+			$activeSlave.slaveName's burqa has been stretched so thin by $his monolithic implant-filled belly, it's now ironically much more comfortable to wear.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic pregnant belly.
+			$activeSlave.slaveName's burqa has been stretched so thin by $his monolithic pregnant belly, it's now ironically much more comfortable to wear.
 		<</if>>
 	<<elseif $activeSlave.belly >= 600000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's burqa is stretching itself thin to cover $his titanic <<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
+			$activeSlave.slaveName's burqa is stretching itself thin to cover $his titanic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
+			$activeSlave.slaveName's burqa is stretching itself thin to cover $his titanic bulging pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 450000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The heavy fabric of $activeSlave.slaveName's burqa is starting to chafe the sensitive skin of $his gigantic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
+			The heavy fabric of $activeSlave.slaveName's burqa is starting to chafe the sensitive skin of $his gigantic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
+			The heavy fabric of $activeSlave.slaveName's burqa is starting to chafe the sensitive skin of $his gigantic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 300000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's burqa has been given numerous extensions in order to properly cover $his massive <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			
+			$activeSlave.slaveName's burqa has been given numerous extensions in order to properly cover $his massive implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his massive pregnant belly.
+			$activeSlave.slaveName's burqa has been given numerous extensions in order to properly cover $his massive pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 120000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's burqa is straining to cover $his giant <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant implant-filled belly.
+			$activeSlave.slaveName's burqa is straining to cover $his giant implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant pregnant belly.
+			$activeSlave.slaveName's burqa is straining to cover $his giant pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 30000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The heavy fabric of $activeSlave.slaveName's burqa lies taut against $his titanic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+			The heavy fabric of $activeSlave.slaveName's burqa lies taut against $his titanic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic pregnant belly.
+			The heavy fabric of $activeSlave.slaveName's burqa lies taut against $his titanic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 190>>
-		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
+		$activeSlave.slaveName's burqa is greatly pushed out by $his massively fat belly.
 	<<elseif $activeSlave.belly >= 15000 || ($activeSlave.bellyAccessory == "a huge empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a huge empathy belly">>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+			$activeSlave.slaveName's burqa is filled out by $his huge pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge <<print $activeSlave.inflationType>>-filled belly.
+			$activeSlave.slaveName's burqa is filled out by $his huge <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+			$activeSlave.slaveName's burqa is filled out by $his huge implant-filled belly.
 		<<else>>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+			$activeSlave.slaveName's burqa is filled out by $his huge pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 10000 || ($activeSlave.bellyAccessory == "a large empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
-			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+			$activeSlave.slaveName's burqa is noticeably rounded out by $his big pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+			$activeSlave.slaveName's burqa is noticeably rounded out by $his hugely swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+			$activeSlave.slaveName's burqa is noticeably rounded out by $his huge implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+			$activeSlave.slaveName's burqa is noticeably rounded out by $his big pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 160>>
-		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
+		$activeSlave.slaveName's hugely fat belly pushes out $his burqa.
 	<<elseif $activeSlave.weight > 130>>
-		$activeSlave.slaveName's abaya is filled out by $his big fat belly.
+		$activeSlave.slaveName's big fat belly slightly pushes out $his burqa.
 	<<elseif $activeSlave.belly >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a medium empathy belly">>
 			There is a slight roundness to the middle of $activeSlave.slaveName's burqa, thanks to $his pregnant belly.
@@ -10970,19 +10982,19 @@ $He has
 			There is a slight roundness to the middle of $activeSlave.slaveName's burqa, thanks to $his pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 95>>
-		$activeSlave.slaveName's abaya is filled out by $his fat belly.
+		$activeSlave.slaveName's fat belly just manages to brush up against $his burqa.
 	<<elseif $activeSlave.belly >= 1500 || $activeSlave.bellyAccessory == "a small empathy belly">>
 		<<if $activeSlave.bellyAccessory == "a small empathy belly">>
 			$activeSlave.slaveName's abaya bulges with $his pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+			$activeSlave.slaveName's burqa shows no sign of $his <<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya bulges with $his implant-rounded belly.
+			$activeSlave.slaveName's burqa shows no sign of $his implant-rounded belly.
 		<<else>>
-			$activeSlave.slaveName's abaya bulges with $his growing belly.
+			$activeSlave.slaveName's burqa shows no sign of $his growing belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 30>>
-		$activeSlave.slaveName's abaya bulges slightly from $his chubby belly.
+		$activeSlave.slaveName's burqa totally conceals $his chubby belly.
 	<<elseif $activeSlave.bellyPreg >= 100 || $activeSlave.bellyImplant >= 100>>
 		$activeSlave.slaveName's burqa totally conceals $his belly.
 	<<elseif $activeSlave.muscles > 30>>
@@ -10993,198 +11005,210 @@ $He has
 		//WIP//
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The bottom of $activeSlave.slaveName's burkini's tunic lies taut across $his monolithic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
+			The bottom of $activeSlave.slaveName's burkini's tunic lies taut across $his monolithic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic pregnant belly.
+			The bottom of $activeSlave.slaveName's burkini's tunic lies taut across $his monolithic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 600000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's burkini's tunic has been lengthened a great deal just to cover most of $his titanic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
+			$activeSlave.slaveName's burkini's tunic has been lengthened a great deal just to cover most of $his titanic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
+			$activeSlave.slaveName's burkini's tunic has been lengthened a great deal just to cover most of $his titanic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 450000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The tunic $activeSlave.slaveName's burkini can't possibly cover the underside of $his gigantic <<print $activeSlave.inflationType>>-filled belly, so $his pants have been widened to pick up the slack.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
+			The tunic $activeSlave.slaveName's burkini can't possibly cover the underside of $his gigantic implant-filled belly, so $his pants have been widened to pick up the slack.
 		<<else>>
-			$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
+			The tunic $activeSlave.slaveName's burkini can't possibly cover the underside of $his gigantic pregnant belly, so $his pants have been widened to pick up the slack.
 		<</if>>
 	<<elseif $activeSlave.belly >= 300000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName burkini's tunic has been let out a great deal to cover $his massive <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			
+			$activeSlave.slaveName burkini's tunic has been let out a great deal to cover $his massive implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his massive pregnant belly.
+			$activeSlave.slaveName burkini's tunic has been let out a great deal to cover $his massive pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 120000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's burkini's pants have been extended to reach $his popped navel to ensure that $his giant <<print $activeSlave.inflationType>>-filled belly is fully covered.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant implant-filled belly.
+			$activeSlave.slaveName's burkini's pants have been extended to reach $his popped navel to ensure that $his giant implant-filled belly is fully covered.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant pregnant belly.
+			$activeSlave.slaveName's burkini's pants have been extended to reach $his popped navel to ensure that $his giant pregnant belly is fully covered.
 		<</if>>
 	<<elseif $activeSlave.belly >= 30000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			The bottom of $activeSlave.slaveName's burkini's tunic lies at crotch-level due to $his titanic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+			The bottom of $activeSlave.slaveName's burkini's tunic lies at crotch-level due to $his titanic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic pregnant belly.
+			The bottom of $activeSlave.slaveName's burkini's tunic lies at crotch-level due to $his titanic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 190>>
-		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
+		$activeSlave.slaveName's burkini is straining to contain $his massively fat belly.
 	<<elseif $activeSlave.belly >= 15000 || ($activeSlave.bellyAccessory == "a huge empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a huge empathy belly">>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+			The tunic of $activeSlave.slaveName's burkini is pushed up to just below $his crotch due to $his huge pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge <<print $activeSlave.inflationType>>-filled belly.
+			The tunic of $activeSlave.slaveName's burkini is pushed up to just below $his crotch due to $his huge <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+			The tunic of $activeSlave.slaveName's burkini is pushed up to just below $his crotch due to $his huge implant-filled belly.
 		<<else>>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+			The tunic of $activeSlave.slaveName's burkini is pushed up to just below $his crotch due to $his huge pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 10000 || ($activeSlave.bellyAccessory == "a large empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
-			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+			The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his big pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+			The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his hugely <<<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+			The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his huge implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+			The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his big pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 160>>
-		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
+		$activeSlave.slaveName's burkini is filled out by $his hugely fat belly.
 	<<elseif $activeSlave.weight > 130>>
-		$activeSlave.slaveName's abaya is filled out by $his big fat belly.
+		$activeSlave.slaveName's burkini is filled out by $his big fat belly.
 	<<elseif $activeSlave.belly >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a medium empathy belly">>
-			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+			$activeSlave.slaveName's burkini bulges significantly from $his pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya is filled out by $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+			$activeSlave.slaveName's burkini bulges significantly from $his jiggling <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is filled out by $his implant-filled belly.
+			$activeSlave.slaveName's burkini bulges significantly from $his implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+			$activeSlave.slaveName's burkini bulges significantly from $his pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 95>>
-		$activeSlave.slaveName's abaya is filled out by $his fat belly.
+		$activeSlave.slaveName's burkini bulges from $his fat belly.
 	<<elseif $activeSlave.belly >= 1500 || $activeSlave.bellyAccessory == "a small empathy belly">>
 		<<if $activeSlave.bellyAccessory == "a small empathy belly">>
-			$activeSlave.slaveName's abaya bulges with $his pregnant belly.
+			$activeSlave.slaveName's burkini gently bulges from $his pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+			$activeSlave.slaveName's burkini gently bulges from $his <<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya bulges with $his implant-rounded belly.
+			$activeSlave.slaveName's burkini gently bulges from $his implant-rounded belly.
 		<<else>>
-			$activeSlave.slaveName's burkini bulges with $his growing belly.
+			$activeSlave.slaveName's burkini gently bulges from $his growing belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 30>>
-		$activeSlave.slaveName's abaya bulges slightly from $his chubby belly.
+		$activeSlave.slaveName's burkini is slightly rounded by $his chubby belly.
 	<<elseif $activeSlave.bellyPreg >= 100 || $activeSlave.bellyImplant >= 100>>
-		$activeSlave.slaveName's abaya is slightly rounded by $his belly.
+		$activeSlave.slaveName's burkini is slightly rounded by $his belly.
 	<<elseif $activeSlave.muscles > 30>>
-		$activeSlave.slaveName's abaya fully covers $his muscular abs.
+		$activeSlave.slaveName's burkini barely shows the contours of $his abdominal muscles.
 	<</if>>
 <<case "a hijab and blouse">>
 	<<if $activeSlave.belly >= 1000000>>
 		//WIP//
 	<<elseif $activeSlave.belly >= 750000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his monolithic <<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic implant-filled belly.
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his monolithic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his monolithic pregnant belly.
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his monolithic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 600000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his titanic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic implant-filled belly.
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his titanic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic bulging pregnant belly.
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his titanic bulging pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 450000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his gigantic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his gigantic implant-filled belly.
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his gigantic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is straining to contain $his massive pregnant belly.
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his gigantic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 300000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his massive <<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his massive implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his massive pregnant belly.
+			$activeSlave.slaveName takes care to ensure $his skirt does not slide down $his massive pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 120000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			Thanks to $his giant <<print $activeSlave.inflationType>>-swollen belly, $activeSlave.slaveName's skirt rests comfortably on top of $his popped navel.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant implant-filled belly.
+			Thanks to $his giant implant-filled belly, $activeSlave.slaveName's skirt rests comfortably on top of $his popped navel.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his giant pregnant belly.
+			Thanks to $his giant pregnant belly $activeSlave.slaveName's skirt rests comfortably on top of $his popped navel.
 		<</if>>
 	<<elseif $activeSlave.belly >= 30000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
+			$activeSlave.slaveName's skirt has retrofitted with a large elastic band to accomodate $his titanic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+			$activeSlave.slaveName's skirt has retrofitted with a large elastic band to accomodate $his titanic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName has given up trying to tie $his apron's strings, allowing the frilly garment to idly rest upon $his titanic pregnant belly.
+			$activeSlave.slaveName's skirt has retrofitted with a large elastic band to accomodate $his titanic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 190>>
-		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
+		$activeSlave.slaveName's massively fat belly spills over the sides of $his skirt.
 	<<elseif $activeSlave.belly >= 15000 || ($activeSlave.bellyAccessory == "a huge empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a huge empathy belly">>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+			$activeSlave.slaveName's shirts are straining to contain $his huge pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge <<print $activeSlave.inflationType>>-filled belly.
+			$activeSlave.slaveName's shirts are straining to contain $his huge <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+			$activeSlave.slaveName's shirts are straining to contain $his huge implant-filled belly.
 		<<else>>
-			The strings of $activeSlave.slaveName's apron struggle to stay tied due to the size of $his huge pregnant belly.
+			$activeSlave.slaveName's shirts are straining to contain $his huge pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.belly >= 10000 || ($activeSlave.bellyAccessory == "a large empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
-			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+			$activeSlave.slaveName has trouble pulling $his skirt up to fit around $his big pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+			$activeSlave.slaveName has trouble pulling $his skirt up to fit around $his hugely swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+			$activeSlave.slaveName has trouble pulling $his skirt up to fit around $his huge implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is filled by $his big pregnant belly.
+			$activeSlave.slaveName has trouble pulling $his skirt up to fit around $his big pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 160>>
-		$activeSlave.slaveName's abaya is filled out by $his hugely fat belly.
+		$activeSlave.slaveName's hugely fat belly obscures the top of $his skirt.
 	<<elseif $activeSlave.weight > 130>>
-		$activeSlave.slaveName's abaya is filled out by $his big fat belly.
+		$activeSlave.slaveName's big fat belly nearly obscures the top of $his skirt.
 	<<elseif $activeSlave.belly >= 5000 || ($activeSlave.bellyAccessory == "a medium empathy belly")>>
 		<<if $activeSlave.bellyAccessory == "a medium empathy belly">>
-			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+			$activeSlave.slaveName's skirt is slightly pushed down by $his pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya is filled out by $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+			$activeSlave.slaveName's skirt is slightly pushed down by $his jiggling <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya is filled out by $his implant-filled belly.
+			$activeSlave.slaveName's skirt is slightly pushed down by $his implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya is filled out by $his pregnant belly.
+			$activeSlave.slaveName's skirt is slightly pushed down by $his pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 95>>
-		$activeSlave.slaveName's abaya is filled out by $his fat belly.
+		$activeSlave.slaveName's blouse and skirt are filled out by $his fat belly.
 	<<elseif $activeSlave.belly >= 1500 || $activeSlave.bellyAccessory == "a small empathy belly">>
 		<<if $activeSlave.bellyAccessory == "a small empathy belly">>
-			$activeSlave.slaveName's abaya bulges with $his pregnant belly.
+			$activeSlave.slaveName's blouse and skirt bulge from $his pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+			$activeSlave.slaveName's blouse and skirt bulge from $his <<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya bulges with $his implant-rounded belly.
+			$activeSlave.slaveName's blouse and skirt bulge from $his implant-rounded belly.
 		<<else>>
-			$activeSlave.slaveName's abaya bulges with $his growing belly.
+			$activeSlave.slaveName's blouse and skirt bulge from $his growing belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 30>>
-		$activeSlave.slaveName's abaya bulges slightly from $his chubby belly.
+		$activeSlave.slaveName's blouse and skirt bulge slightly from $his chubby belly.
 	<<elseif $activeSlave.bellyPreg >= 100 || $activeSlave.bellyImplant >= 100>>
-		$activeSlave.slaveName's abaya is slightly rounded by $his belly.
+		$activeSlave.slaveName's blouse and skirt are slightly rounded by $his belly.
 	<<elseif $activeSlave.muscles > 30>>
 		$activeSlave.slaveName's blouse and skirt fully cover $his muscular abs.
 	<</if>>
-- 
GitLab


From 552eff9c0810de3b88ce3f0e7385929d5a5bf8e1 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 2 Aug 2018 19:12:36 -0400
Subject: [PATCH 185/189] Spelling fixes

---
 devNotes/twine JS.txt                 | 2 +-
 src/js/rulesAutosurgery.tw            | 2 +-
 src/npc/fFeelings.tw                  | 8 ++++----
 src/pregmod/widgets/pregmodWidgets.tw | 4 ++--
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 656ab3ac052..e88861ec844 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -17621,7 +17621,7 @@ window.rulesAutosurgery = (function() {
 			slave.vasectomy = 1;
 			V.cash -= V.surgeryCost;
 		} else if (slave.balls > 0 && slave.vasectomy === 1 && thisSurgery.surgery_vasectomy === false) {
-			surgery.push("undo vasectomy");
+			surgeries.push("undo vasectomy");
 			V.surgeryType = "vasectomy undo";
 			if (V.PC.medicine >= 100)
 				slave.health -=5;
diff --git a/src/js/rulesAutosurgery.tw b/src/js/rulesAutosurgery.tw
index c7be2cda65a..1fca30407d8 100644
--- a/src/js/rulesAutosurgery.tw
+++ b/src/js/rulesAutosurgery.tw
@@ -509,7 +509,7 @@ window.rulesAutosurgery = (function() {
 			slave.vasectomy = 1;
 			V.cash -= V.surgeryCost;
 		} else if (slave.balls > 0 && slave.vasectomy === 1 && thisSurgery.surgery_vasectomy === false) {
-			surgery.push("undo vasectomy");
+			surgeries.push("undo vasectomy");
 			V.surgeryType = "vasectomy undo";
 			if (V.PC.medicine >= 100)
 				slave.health -=5;
diff --git a/src/npc/fFeelings.tw b/src/npc/fFeelings.tw
index 51aa204bd24..076accc7c90 100644
--- a/src/npc/fFeelings.tw
+++ b/src/npc/fFeelings.tw
@@ -1012,20 +1012,20 @@ My favorite part of my body i<<s>>
 		<<elseif ($activeSlave.actualAge + 14) < $slaves[_partner].actualAge>>
 			<<Sh>>e'<<s>> old enough to be my mother." $He looks down, blushing a little harder. "But I'm lucky, <<sh>>e'<<s>> <<s>>uch a hot MILF.
 		<<elseif ($activeSlave.actualAge - 14) > $slaves[_partner].actualAge>>
-			<<Sh>>e'<<s>> young enough to be my daughter." $He looks down, blushing a little harder. "But I love $slaves[_partner].posessive hot young body.
+			<<Sh>>e'<<s>> young enough to be my daughter." $He looks down, blushing a little harder. "But I love $slaves[_partner].possessive hot young body.
 		<</if>>
 		<<if (($activeSlave.actualAge - 5) > $slaves[_partner].actualAge) && (20 > $slaves[_partner].actualAge)>>
 			<<Sh>>e'<<s>> a little immature at time<<s>>, but having <<s>>e<<x>> with a teenager i<<s>> so awe<<s>>ome, it'<<s>> worth it.
 		<</if>>
 		<<if $slaves[_partner].amp != 0>>
 		<<if $slaves[_partner].amp == -1>>
-			I really do like $slaves[_partner].posessive P-Limb<<s>>. They're a little awkward, and kind of cold, but that'<<s>> ju<<s>>t how <<sh>>e i<<s>>.
+			I really do like $slaves[_partner].possessive P-Limb<<s>>. They're a little awkward, and kind of cold, but that'<<s>> ju<<s>>t how <<sh>>e i<<s>>.
 		<<elseif $slaves[_partner].amp == -2>>
 			And, um." $He giggles. "<<Sh>>e ha<<s>> vibe finger<<s>>. <<S>>o that'<<s>> awesome.
 		<<elseif $slaves[_partner].amp == -3>>
-			I really like $slaves[_partner].posessive P-Limb<<s>>. They're very pretty, but kind of cold. That'<<s>> ju<<s>>t how <<sh>>e i<<s>>.
+			I really like $slaves[_partner].possessive P-Limb<<s>>. They're very pretty, but kind of cold. That'<<s>> ju<<s>>t how <<sh>>e i<<s>>.
 		<<elseif $slaves[_partner].amp == -4>>
-			<<print capFirstChar($slaves[_partner].possessive)>> P-Limb<<s>> do <<s>>care me a little, <<s>>ometime<<s>>. Though of course <<sh>>e di<<s>>able<<s>> the weapon<<s>> when we're together." $He giggles. "Though I did get $slaves[_partner].object to extend $slaves[_partner].posessive blades on<<c>>e, so I could ki<<ss>> them for luck.
+			<<print capFirstChar($slaves[_partner].possessive)>> P-Limb<<s>> do <<s>>care me a little, <<s>>ometime<<s>>. Though of course <<sh>>e di<<s>>able<<s>> the weapon<<s>> when we're together." $He giggles. "Though I did get $slaves[_partner].object to extend $slaves[_partner].possessive blades on<<c>>e, so I could ki<<ss>> them for luck.
 		<<elseif $slaves[_partner].amp == -5>>
 			$His P-Limb<<s>> do look cool and I like how <<s>>trong they can make $slaves[_partner].object but they <<s>>care me a little, <<s>>ometime<<s>>. Though of cour<<s>>e $slaves[_partner].pronoun di<<s>>able<<s>> the weapon<<s>> when we're together." $He giggles. "<<Sh>>e ha<<s>> vibe finger<<s>>, <<s>>o that'<<s>> awe<<s>>ome.
 		<<else>>
diff --git a/src/pregmod/widgets/pregmodWidgets.tw b/src/pregmod/widgets/pregmodWidgets.tw
index 39987f8dba0..5b9fb013fb0 100644
--- a/src/pregmod/widgets/pregmodWidgets.tw
+++ b/src/pregmod/widgets/pregmodWidgets.tw
@@ -366,9 +366,9 @@
 
 	Pronouns are tricky to get right, and this widget should make it easier to use variables naturally in writing. There are two problems in english pronouns that matter here:
 
-	1. Her/her vs his/him. To solve this ambiguity, variables use male pronouns thoughout, although players will of course see the contents of the variable. "$He glared" can be printed as "She glared."
+	1. Her/her vs his/him. To solve this ambiguity, variables use male pronouns throughout, although players will of course see the contents of the variable. "$He glared" can be printed as "She glared."
 
-	2. Her/hers vs his/his. Here, the opposite problem. In this one case and this alone, where you would use "hers," (the posessive pronoun) the variable is female, since the distinction is only important there. I am very sorry for English.
+	2. Her/hers vs his/his. Here, the opposite problem. In this one case and this alone, where you would use "hers," (the possessive pronoun) the variable is female, since the distinction is only important there. I am very sorry for English.
 */
 
 	<<if $args[1] == 2>>
-- 
GitLab


From 78b8d2370fc272dfa4f2551b585e5c91e164f1c8 Mon Sep 17 00:00:00 2001
From: klorpa <30924131+klorpa@users.noreply.github.com>
Date: Thu, 2 Aug 2018 19:37:22 -0500
Subject: [PATCH 186/189] More More Tests

---
 src/utility/descriptionWidgetsFlesh.tw | 102 ++++++++++++++++++++-----
 1 file changed, 81 insertions(+), 21 deletions(-)

diff --git a/src/utility/descriptionWidgetsFlesh.tw b/src/utility/descriptionWidgetsFlesh.tw
index 36da2067ec8..53ac4983525 100644
--- a/src/utility/descriptionWidgetsFlesh.tw
+++ b/src/utility/descriptionWidgetsFlesh.tw
@@ -10833,11 +10833,11 @@ $He has
 		<</if>>
 	<<elseif $activeSlave.belly >= 30000>>
 		<<if $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			$activeSlave.slaveName's abaya list completely taut on $his titanic <<print $activeSlave.inflationType>>-filled belly.
+			$activeSlave.slaveName's abaya lies completely taut on $his titanic <<print $activeSlave.inflationType>>-filled belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
-			$activeSlave.slaveName's abaya list completely taut on $his titanic implant-filled belly.
+			$activeSlave.slaveName's abaya lies completely taut on $his titanic implant-filled belly.
 		<<else>>
-			$activeSlave.slaveName's abaya list completely taut on $his titanic pregnant belly.
+			$activeSlave.slaveName's abaya lies completely taut on $his titanic pregnant belly.
 		<</if>>
 	<<elseif $activeSlave.weight > 190>>
 		$activeSlave.slaveName's abaya is straining to contain $his massively fat belly.
@@ -11067,7 +11067,7 @@ $He has
 		<<if $activeSlave.bellyAccessory == "a large empathy belly">>
 			The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his big pregnant belly.
 		<<elseif $activeSlave.bellyFluid >= $activeSlave.bellyPreg && $activeSlave.bellyFluid >= $activeSlave.bellyImplant>>
-			The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his hugely <<<print $activeSlave.inflationType>>-swollen belly.
+			The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his hugely <<print $activeSlave.inflationType>>-swollen belly.
 		<<elseif $activeSlave.bellyImplant > 0>>
 			The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his huge implant-filled belly.
 		<<else>>
@@ -14459,8 +14459,14 @@ $He has
 	$activeSlave.slaveName's blouse rests atop $his titanic implant-filled belly, making $him look like the super promiscuous school slut.
 <<case "a kimono">>
 	$activeSlave.slaveName's titanic implant-filled belly parts the front of $his kimono leaving it gracefully hanging to its sides.
-<<case "a hijab and abaya">>
-	$activeSlave.slaveName's abaya has split down the sides trying to contain $his titanic implant-filled belly.
+<<case "a hijab and abaya" "a niqab and abaya">>
+	$activeSlave.slaveName's abaya lies completely taut on $his titanic implant-filled belly.
+<<case "a burqa">>
+	The heavy fabric of $activeSlave.slaveName's burqa lies taut against $his titanic implant-filled belly.
+<<case "a burkini">>
+	The bottom of $activeSlave.slaveName's burkini's tunic lies at crotch-level due to $his titanic implant-filled belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName's skirt has retrofitted with a large elastic band to accomodate $his titanic implant-filled belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top rests atop $his titanic implant-filled belly leaving $him looking like someone who fucked half the country.
 <<case "a halter top dress">>
@@ -14642,8 +14648,14 @@ $He has
 	$activeSlave.slaveName's blouse rests atop $his gigantic implant-filled belly, leaving $him looking particularly slutty.
 <<case "a kimono">>
 	$activeSlave.slaveName's gigantic implant-filled belly parts the front of $his kimono leaving it gracefully covering its sides.
-<<case "a hijab and abaya">>
-	$activeSlave.slaveName's abaya is straining to contain $his gigantic implant-filled belly.
+<<case "a hijab and abaya" "a niqab and abaya">>
+	$activeSlave.slaveName's abaya is straining to contain $his huge implant-filled belly.
+<<case "a burqa">>
+	$activeSlave.slaveName's burqa is filled out by $his huge implant-filled belly.
+<<case "a burkini">>
+	The tunic of $activeSlave.slaveName's burkini is pushed up to just below $his crotch due to $his huge implant-filled belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName's shirts are straining to contain $his huge implant-filled belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top rests atop $his gigantic implant-filled belly leaving $him looking like someone who fucked all the locals.
 <<case "a halter top dress">>
@@ -14823,8 +14835,14 @@ $He has
 	$activeSlave.slaveName's blouse rides up $his huge implant-filled belly, leaving $him looking particularly slutty.
 <<case "a kimono">>
 	$activeSlave.slaveName's huge implant-filled belly parts the front of $his kimono, leaving it gracefully covering its sides.
-<<case "a hijab and abaya">>
-	$activeSlave.slaveName's abaya is filled by $his huge implant-filled belly.
+<<case "a hijab and abaya" "a niqab and abaya">>
+	$activeSlave.slaveName's burqa is noticeably rounded out by $his huge implant-filled belly.
+<<case "a burqa">>
+	$activeSlave.slaveName's burqa is noticeably rounded out by $his huge implant-filled belly.
+<<case "a burkini">>
+	The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his huge implant-filled belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName has trouble pulling $his skirt up to fit around $his huge implant-filled belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top barely even covers the top of $his huge implant-filled belly, leaving $him looking like someone who had too much fun on shore leave.
 <<case "a halter top dress">>
@@ -15006,8 +15024,14 @@ $He has
 	$activeSlave.slaveName's blouse rides up $his implant-filled belly, leaving $his looking particularly slutty.
 <<case "a kimono">>
 	$activeSlave.slaveName's implant-filled belly is demurely covered by $his kimono.
-<<case "a hijab and abaya">>
+<<case "a hijab and abaya" "a niqab and abaya">>
 	$activeSlave.slaveName's abaya is filled out by $his implant-filled belly.
+<<case "a burqa">>
+	There is a slight roundness to the middle of $activeSlave.slaveName's burqa, thanks to $his implant-filled belly.
+<<case "a burkini">>
+	$activeSlave.slaveName's burkini bulges significantly from $his implant-filled belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName's skirt is slightly pushed down by $his implant-filled belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top rides up $his implant-filled belly leaving $him looking like someone who had too much fun on shore-leave.
 <<case "a halter top dress">>
@@ -15190,8 +15214,14 @@ $He has
 	$activeSlave.slaveName's blouse rides up $his fat belly, leaving it hanging loose and covering $his skirt.
 <<case "a kimono">>
 	$activeSlave.slaveName's fat belly is demurely covered by $his kimono.
-<<case "a hijab and abaya">>
+<<case "a hijab and abaya" "a niqab and abaya">>
 	$activeSlave.slaveName's abaya is filled out by $his fat belly.
+<<case "a burqa">>
+	$activeSlave.slaveName's fat belly just manages to brush up against $his burqa.
+<<case "a burkini">>
+	$activeSlave.slaveName's burkini bulges from $his fat belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName's blouse and skirt are filled out by $his fat belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top rests atop $his fat belly, leaving everyone wondering how this recruit passed basic.
 <<case "a halter top dress">>
@@ -15373,8 +15403,14 @@ $He has
 	$activeSlave.slaveName's blouse bulges with $his implant-rounded belly. It peeks out from the bottom leaving $him looking particularly slutty.
 <<case "a kimono">>
 	$activeSlave.slaveName's implant-rounded belly is demurely covered by $his kimono.
-<<case "a hijab and abaya">>
+<<case "a hijab and abaya" "a niqab and abaya">>
 	$activeSlave.slaveName's abaya bulges with $his implant-rounded belly.
+<<case "a burqa">>
+	$activeSlave.slaveName's burqa shows no sign of $his implant-rounded belly.
+<<case "a burkini">>
+	$activeSlave.slaveName's burkini gently bulges from $his implant-rounded belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName's blouse and skirt bulge from $his implant-rounded belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top covers the top of $his implant-rounded belly leaving $him looking like someone who had too much fun on shore-leave.
 <<case "a halter top dress">>
@@ -15792,8 +15828,14 @@ $He has
 	$activeSlave.slaveName's blouse rides up $his hugely swollen belly, leaving $him looking particularly slutty.
 <<case "a kimono">>
 	$activeSlave.slaveName's hugely swollen belly parts the front of $his kimono, leaving it gracefully covering its sides.
-<<case "a hijab and abaya">>
-	$activeSlave.slaveName's abaya is filled by $his hugely swollen belly.
+<<case "a hijab and abaya" "a niqab and abaya">>
+	$activeSlave.slaveName's abaya is filled by $his <<print $activeSlave.inflationType>>-swollen belly.
+<<case "a burqa">>
+	$activeSlave.slaveName's burqa is noticeably rounded out by $his hugely swollen belly.
+<<case "a burkini">>
+	The tunic of $activeSlave.slaveName's burkini is slightly pushed up thanks to $his hugely <<print $activeSlave.inflationType>>-swollen belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName has trouble pulling $his skirt up to fit around $his hugely swollen belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top barely even covers the top of $his hugely swollen belly, leaving $him looking like someone who had too much fun on shore leave.
 <<case "a halter top dress">>
@@ -15969,8 +16011,14 @@ $He has
 	$activeSlave.slaveName's blouse rides up $his jiggling <<print $activeSlave.inflationType>>-filled belly, leaving $him looking particularly slutty.
 <<case "a kimono">>
 	$activeSlave.slaveName's jiggling <<print $activeSlave.inflationType>>-filled belly is demurely covered by $his kimono.
-<<case "a hijab and abaya">>
+<<case "a hijab and abaya" "a niqab and abaya">>
 	$activeSlave.slaveName's abaya is filled out by $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+<<case "a burqa">>
+	There is a slight roundness to the middle of $activeSlave.slaveName's burqa, thanks to $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+<<case "a burkini">>
+	$activeSlave.slaveName's burkini bulges significantly from $his jiggling <<print $activeSlave.inflationType>>-filled belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName's skirt is slightly pushed down by $his jiggling <<print $activeSlave.inflationType>>-filled belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top rides up $his jiggling <<print $activeSlave.inflationType>>-filled belly leaving $him looking like someone who had too much fun on shore-leave.
 <<case "a halter top dress">>
@@ -16148,8 +16196,14 @@ $He has
 	$activeSlave.slaveName's blouse rides up $his fat belly, leaving it hanging loose and covering $his skirt.
 <<case "a kimono">>
 	$activeSlave.slaveName's fat belly is demurely covered by $his kimono.
-<<case "a hijab and abaya">>
+<<case "a hijab and abaya" "a niqab and abaya">>
 	$activeSlave.slaveName's abaya is filled out by $his fat belly.
+<<case "a burqa">>
+	$activeSlave.slaveName's fat belly just manages to brush up against $his burqa.
+<<case "a burkini">>
+	$activeSlave.slaveName's burkini bulges from $his fat belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName's blouse and skirt are filled out by $his fat belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top rests atop $his fat belly, leaving everyone wondering how this recruit passed basic.
 <<case "a halter top dress">>
@@ -16176,7 +16230,7 @@ $He has
 	<<elseif ($activeSlave.boobs > 1200)>>
 		$activeSlave.slaveName's top is prevented from trying to cover $his fat belly by $his breasts.
 	<<else>>
-		$activeSlave.slaveName's top can't entirely cover $his fat belly, allowing it to hang loose and slightly obscur $his spats from view.
+		$activeSlave.slaveName's top can't entirely cover $his fat belly, allowing it to hang loose and slightly obscure $his spats from view.
 	<</if>>
 <<default>>
 <</switch>>
@@ -16328,8 +16382,14 @@ $He has
 	$activeSlave.slaveName's blouse bulges with $his <<print $activeSlave.inflationType>>-swollen belly. It peeks out from the bottom leaving $him looking particularly slutty.
 <<case "a kimono">>
 	$activeSlave.slaveName's <<print $activeSlave.inflationType>>-swollen belly is demurely covered by $his kimono.
-<<case "a hijab and abaya">>
-	$activeSlave.slaveName's abaya bulges with $his <<print $activeSlave.inflationType>>-swollen belly.
+<<case "a hijab and abaya" "a niqab and abaya">>
+	$activeSlave.slaveName's abaya is filled out by $his fat belly.
+<<case "a burqa">>
+	$activeSlave.slaveName's burqa shows no sign of $his <<print $activeSlave.inflationType>>-swollen belly.
+<<case "a burkini">>
+	$activeSlave.slaveName's burkini gently bulges from $his <<print $activeSlave.inflationType>>-swollen belly.
+<<case "a hijab and blouse">>
+	$activeSlave.slaveName's blouse and skirt bulge from $his <<print $activeSlave.inflationType>>-swollen belly.
 <<case "battledress">>
 	$activeSlave.slaveName's tank top covers the top of $his <<print $activeSlave.inflationType>>-swollen belly leaving $him looking like someone who had too much fun on shore-leave.
 <<case "a halter top dress">>
@@ -16356,7 +16416,7 @@ $He has
 	<<elseif ($activeSlave.boobs > 1200)>>
 		$activeSlave.slaveName's top is prevented from trying to cover $his <<print $activeSlave.inflationType>>-swollen belly by $his breasts.
 	<<else>>
-		$activeSlave.slaveName's top can't entirely cover $his <<print $activeSlave.inflationType>>-swollen belly, allowing it to hang loose and slightly obscur $his spats from view.
+		$activeSlave.slaveName's top can't entirely cover $his <<print $activeSlave.inflationType>>-swollen belly, allowing it to hang loose and slightly obscure $his spats from view.
 	<</if>>
 <<default>>
 <</switch>>
-- 
GitLab


From 6afce505f80c1b0e0fb1168c84d872d6a29fa1b4 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Thu, 2 Aug 2018 22:45:01 -0400
Subject: [PATCH 187/189] Move AutosurgerySwitch to the Autosurgery section

---
 devNotes/twine JS.txt           | 2 +-
 src/js/rulesAssistantOptions.tw | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index e88861ec844..4d790621d4a 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -14839,7 +14839,6 @@ window.rulesAssistantOptions = (function() {
 			this.appendChild(new ButtplugsVirginsList());
 			this.appendChild(new ButtplugsOtherList());
 			this.appendChild(new ImplantVolumeList());
-			this.appendChild(new AutosurgerySwitch());
 
 		}
 	}
@@ -14950,6 +14949,7 @@ window.rulesAssistantOptions = (function() {
 	class AutosurgerySection extends Section {
 		constructor() {
 			super("Autosurgery Settings", true);
+			this.appendChild(new AutosurgerySwitch());
 			this.appendChild(new VisionSurgeryList());
 			this.appendChild(new LactationSurgeryList());
 			if (V.seeDicks || V.makeDicks) {
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index 5e112444a39..d7f56dd7152 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -917,7 +917,6 @@ window.rulesAssistantOptions = (function() {
 			this.appendChild(new ButtplugsVirginsList());
 			this.appendChild(new ButtplugsOtherList());
 			this.appendChild(new ImplantVolumeList());
-			this.appendChild(new AutosurgerySwitch());
 
 		}
 	}
@@ -1028,6 +1027,7 @@ window.rulesAssistantOptions = (function() {
 	class AutosurgerySection extends Section {
 		constructor() {
 			super("Autosurgery Settings", true);
+			this.appendChild(new AutosurgerySwitch());
 			this.appendChild(new VisionSurgeryList());
 			this.appendChild(new LactationSurgeryList());
 			if (V.seeDicks || V.makeDicks) {
-- 
GitLab


From 3e323dc470433ce1242b2a91024d23504612c7c2 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 3 Aug 2018 02:18:17 -0400
Subject: [PATCH 188/189] cleaning

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt  |   7 +
 .../clothing hair and accessory passages.txt  |   5 +-
 devNotes/twine JS.txt                         |   2 +-
 src/pregmod/saPorn.tw                         | 214 +++++++++---------
 4 files changed, 119 insertions(+), 109 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 9e1ca4fae5b..336c385778e 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,6 +2,13 @@
 
 0.10.7.1-0.5.x
 
+8/03/2018
+
+	16
+	-fixes
+	-added "a niqab and abaya", "a hijab and blouse", "a burqa", and "a burkini" outfits
+	-anon's hpreg clothing descriptions
+
 8/02/2018
 
 	15
diff --git a/devNotes/clothing hair and accessory passages.txt b/devNotes/clothing hair and accessory passages.txt
index 5c9f6f319bc..4ee10eb051c 100644
--- a/devNotes/clothing hair and accessory passages.txt	
+++ b/devNotes/clothing hair and accessory passages.txt	
@@ -47,7 +47,7 @@ Clothes:
 
 	Possible:
 		artWidgets.tw
-		clothingSelectionJS.tw
+		saChoosesOwnClothes.tw
 		eventSelectionJS.tw
 		saLiveWithHG.tw
 		setupVars.tw
@@ -67,7 +67,6 @@ Shoes:
 	Possible:
 		saLongTermEffects.tw
 		saChoosesOwnClothes.tw
-		clothingSelectionJS.tw
 		eventSelectionJS.tw
 		RESS.tw
 		REFI.tw
@@ -99,7 +98,7 @@ Collars:
 		raWidgets.tw
 		artWidgets.tw
 		reStandardPunishment.tw
-		clothingSelectionJS.tw
+		saChoosesOwnClothes.tw
 		eventSelectionJS.tw
 		assayWidgets.tw
 		
\ No newline at end of file
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 4d790621d4a..7f2112a69b4 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -9978,7 +9978,7 @@ window.saChoosesOwnClothes = (function() {
 					wardrobeFS.push({text: "and decides to dress up like a young man's wet dream.", clothes: "a succubus outfit"});
 					wardrobeFS.push({text: `and decides to wear a skimpy bikini to make ${his} assets look even larger.`, clothes: "a string bikini"});
 					wardrobeFS.push({text: `and decides to throw together a slutty outfit that highlight ${his} assets.`, clothes: "a slutty outfit"});
-					wardrobeFS.push ({text: "and decides to wear a monokini that clings to the assets it actually does conceal.", clothes: "a monokini"});
+					wardrobeFS.push({text: `and decides to wear a monokini that clings to the assets it actually does conceal.`, clothes: "a monokini"});
 				} else if(V.arcologies[0].FSSlimnessEnthusiast > 0) {
 					if(slave.boobs < 300) {
 						wardrobeFS.push({text: `and wears a string bikini to show off just how flat ${he} is.`, clothes: "a string bikini"});
diff --git a/src/pregmod/saPorn.tw b/src/pregmod/saPorn.tw
index d6de895c701..c1848493dad 100644
--- a/src/pregmod/saPorn.tw
+++ b/src/pregmod/saPorn.tw
@@ -50,7 +50,11 @@
 	<<if $slaves[$i].pornPrestige > 1>>
 		$pronounCap is widely regarded in $slaves[$i].pornFameType porn, but with so many watchers, turn over is high.
 	<<elseif $slaves[$i].pornPrestige > 0>>
-		$pronounCap has a clear niche in <<print $object>>self in $slaves[$i].pornFameType porn, so there is a constant cycle of new arrivals and bored ex-watchers.
+		<<if $slaves[$i].pornFameType == "generic">>
+			$pronounCap has claimed a niche in slave porn, so there is a constant cycle of new arrivals and bored ex-watchers.
+		<<else>>
+			$pronounCap has claimed a niche for <<print $object>>self in $slaves[$i].pornFameType porn, so there is a constant cycle of new arrivals and bored ex-watchers.
+		<</if>>
 	<<else>>
 		$pronounCap is borderline unknown, so $pronoun tends to hold onto what little watchers $pronoun has.
 	<</if>>
@@ -91,7 +95,7 @@
 		$possessiveCap face chases off all but the most desperate viewers.
 	<</if>>
 	
-	<<if $PC.hacking > 0>>
+	<<if $PC.hacking > 10>>
 		With your hacking skills, you manage to tweak search algorithms to display $possessive content more often.
 	<<elseif $PC.hacking < 0>>
 		With your lack of skill with computers you manage to misidentify $possessive content, complicating searches.
@@ -112,11 +116,11 @@
 		<<if $slaves[$i].pornFocus == "neglectful" || $slaves[$i].pornFameType == "orgasm denial">>
 			$possessiveCap lack of interest in getting off <<print $object>>self, even when at the verge of climax, makes $object a hit with viewers that enjoy orgasm denial.
 			<<if $slaves[$i].pornTypeNeglectful > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeNeglectful < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Neglectful: (_oldPorn) to ($slaves[$i].pornTypeNeglectful).<</if>>
@@ -139,11 +143,11 @@
 		<<if $slaves[$i].pornFocus == "cum addict" || $slaves[$i].pornFameType == "bukkake">>
 			$possessiveCap complete obsession with cum makes $object a hit with viewers that enjoy bukkake and cum drinking.
 			<<if $slaves[$i].pornTypeCumAddict > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCumAddict < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Cum Addict: (_oldPorn) to ($slaves[$i].pornTypeCumAddict).<</if>>
@@ -166,11 +170,11 @@
 		<<if $slaves[$i].sexualFlaw == "anal addict" || $slaves[$i].pornFameType == "anal addiction">>
 			$possessiveCap complete obsession with taking things up $possessive ass makes $object a hit with viewers that enjoy hardcore anal.
 			<<if $slaves[$i].pornTypeAnalAddict > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAnalAddict < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Anal Addict: (_oldPorn) to ($slaves[$i].pornTypeAnalAddict).<</if>>
@@ -193,11 +197,11 @@
 		<<if $slaves[$i].pornFocus == "attention whore" || $slaves[$i].pornFameType == "exhibition">>
 			$possessiveCap complete obsession with being the center of attention makes $object a hit with viewers that savor $possessive frequent exhibitionism.
 			<<if $slaves[$i].pornTypeAttentionWhore > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAttentionWhore < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Attention Whore: (_oldPorn) to ($slaves[$i].pornTypeAttentionWhore).<</if>>
@@ -220,11 +224,11 @@
 		<<if $slaves[$i].pornFocus == "breast growth" || $slaves[$i].pornFameType == "breast expansion">>
 			$possessiveCap complete obsession with the ever increasing size of $possessive tits makes $object a hit with viewers that enjoy enormous knockers and breast expansion.
 			<<if $slaves[$i].pornTypeBreastGrowth > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBreastGrowth < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Breast Growth: (_oldPorn) to ($slaves[$i].pornTypeBreastGrowth).<</if>>
@@ -247,11 +251,11 @@
 		<<if $slaves[$i].pornFocus == "abusive" || $slaves[$i].pornFameType == "abuse">>
 			$possessiveCap wanton enjoyment of pleasure through force amuses viewers that enjoy rape and abuse.
 			<<if $slaves[$i].pornTypeAbusive > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAbusive < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Abusive: (_oldPorn) to ($slaves[$i].pornTypeAbusive).<</if>>
@@ -274,11 +278,11 @@
 		<<if $slaves[$i].pornFocus == "malicious" || $slaves[$i].pornFameType == "sexual torture">>
 			$possessiveCap sexual appetite of other's suffering makes $object a hit with viewers that enjoy sadism and violence.
 			<<if $slaves[$i].pornTypeMalicious > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeMalicious < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Malicious: (_oldPorn) to ($slaves[$i].pornTypeMalicious).<</if>>
@@ -301,11 +305,11 @@
 		<<if $slaves[$i].pornFocus == "self hating" || $slaves[$i].pornFameType == "self hating">>
 			$possessiveCap complete disregard for $possessive own wellbeing makes $object a hit with viewers that enjoy watching $object suffer.
 			<<if $slaves[$i].pornTypeSelfHating > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSelfHating < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Self Hating: (_oldPorn) to ($slaves[$i].pornTypeSelfHating).<</if>>
@@ -328,11 +332,11 @@
 		<<if $slaves[$i].pornFocus == "breeder" || $slaves[$i].pornFameType == "breeder">>
 			$possessiveCap complete obsession with getting and staying pregnant makes $object a hit with viewers with all manner of pregnancy fetish, but particularly resonates with those as focused on it as $pronoun is.
 			<<if $slaves[$i].pornTypeBreeder > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBreeder < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Breeder: (_oldPorn) to ($slaves[$i].pornTypeBreeder).<</if>>
@@ -357,11 +361,11 @@
 		<<if $slaves[$i].pornFocus == "submissive" || $slaves[$i].pornFameType == "submissive">>
 			With $possessive submissive streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeSub > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSub < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Submissive: (_oldPorn) to ($slaves[$i].pornTypeSub).<</if>>
@@ -384,11 +388,11 @@
 		<<if $slaves[$i].pornFocus == "cumslut" || $slaves[$i].pornFameType == "cum">>
 			With $possessive taste for cum, $pronoun has a clear advantage when it comes to ejaculate-based smut.
 			<<if $slaves[$i].pornTypeCumSlut > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCumSlut < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Cumslut: (_oldPorn) to ($slaves[$i].pornTypeCumSlut).<</if>>
@@ -411,11 +415,11 @@
 		<<if $slaves[$i].pornFocus == "buttslut" || $slaves[$i].pornFameType == "buttslut">>
 			With $possessive fetish for asses, $pronoun finds in the company of viewers that love rear ends.
 			<<if $slaves[$i].pornTypeAnal > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeAnal < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Buttslut: (_oldPorn) to ($slaves[$i].pornTypeAnal).<</if>>
@@ -438,11 +442,11 @@
 		<<if $slaves[$i].pornFocus == "humiliation" || $slaves[$i].pornFameType == "humiliating">>
 			With $possessive fetish for humiliation, $pronoun has a clear advantage when it comes to demeaning smut.
 			<<if $slaves[$i].pornTypeHumiliation > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeHumiliation < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Humiliation: (_oldPorn) to ($slaves[$i].pornTypeHumiliation).<</if>>
@@ -465,11 +469,11 @@
 		<<if $slaves[$i].pornFocus == "boobs" || $slaves[$i].pornFameType == "breast">>
 			With $possessive fetish for tits, $pronoun has a clear advantage when it comes to breast focused smut.
 			<<if $slaves[$i].pornTypeBoobs > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBoobs < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Boobs: (_oldPorn) to ($slaves[$i].pornTypeBoobs).<</if>>
@@ -492,11 +496,11 @@
 		<<if $slaves[$i].pornFocus == "dom" || $slaves[$i].pornFameType == "dominant">>
 			With $possessive dominant streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeDom > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeDom < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Dom: (_oldPorn) to ($slaves[$i].pornTypeDom).<</if>>
@@ -519,11 +523,11 @@
 		<<if $slaves[$i].pornFocus == "sadist" || $slaves[$i].pornFameType == "sadistic">>
 			With $possessive sadistic streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeSadist > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSadist < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Sadist: (_oldPorn) to ($slaves[$i].pornTypeSadist).<</if>>
@@ -546,11 +550,11 @@
 		<<if $slaves[$i].pornFocus == "masochist" || $slaves[$i].pornFameType == "masochistic">>
 			With $possessive masochistic streak, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypeMasochist > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeMasochist < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Masochist: (_oldPorn) to ($slaves[$i].pornTypeMasochist).<</if>>
@@ -573,11 +577,11 @@
 		<<if $slaves[$i].pornFocus == "pregnancy" || $slaves[$i].pornFameType == "pregnancy fetish">>
 			With $possessive fetish for all things pregnancy, $pronoun has a clear advantage when it comes to fetish smut.
 			<<if $slaves[$i].pornTypePregnancy > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePregnancy < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Pregnancy: (_oldPorn) to ($slaves[$i].pornTypePregnancy).<</if>>
@@ -603,11 +607,11 @@
 		<<if $slaves[$i].pornFocus == "fuckdoll" || $slaves[$i].pornFameType == "fuckdoll">>
 			$possessiveCap latex encased body attracts a variety of viewers with tastes ranging from bondage to dolls.
 			<<if $slaves[$i].pornTypeFuckdoll > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeFuckdoll < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Fuckdoll: (_oldPorn) to ($slaves[$i].pornTypeFuckdoll).<</if>>
@@ -630,11 +634,11 @@
 		<<if $slaves[$i].pornFocus == "rape" || $slaves[$i].pornFameType == "rape">>
 			$pronounCap is too unbroken for consensual sex, but $possessive viewers wouldn't want it any other way.
 			<<if $slaves[$i].pornTypeRape > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeRape < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Rape: (_oldPorn) to ($slaves[$i].pornTypeRape).<</if>>
@@ -657,11 +661,11 @@
 		<<if $slaves[$i].pornFocus == "preggo" || $slaves[$i].pornFameType == "preggo">>
 			$possessiveCap gravid swell may be a turn off to some, but the maiesiophiliacs love it.
 			<<if $slaves[$i].pornTypePreggo > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePreggo < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Preggo: (_oldPorn) to ($slaves[$i].pornTypePreggo).<</if>>
@@ -684,11 +688,11 @@
 		<<if $slaves[$i].pornFocus == "BBW" || $slaves[$i].pornFameType == "BBW">>
 			$possessiveCap weight gives $object a heavy allure to the chubby chasers and BBS lovers out there.
 			<<if $slaves[$i].pornTypeBBW > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeBBW < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>BBW: (_oldPorn) to ($slaves[$i].pornTypeBBW).<</if>>
@@ -711,11 +715,11 @@
 		<<if $slaves[$i].pornFocus == "loli" || $slaves[$i].pornFameType == "underage">>
 			$possessiveCap young age gives $object a dangerous edge and a number of careful viewers.
 			<<if $slaves[$i].pornTypeLoli > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeLoli < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Loli: (_oldPorn) to ($slaves[$i].pornTypeLoli).<</if>>
@@ -738,11 +742,11 @@
 		<<if $slaves[$i].pornFocus == "gainer" || $slaves[$i].pornFameType == "weight gain">>
 			$possessiveCap expanding waistline attracts those who enjoy seeing a girl pack on the pounds while stuffing $possessive face.
 			<<if $slaves[$i].pornTypeGainer > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeGainer < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Gainer: (_oldPorn) to ($slaves[$i].pornTypeGainer).<</if>>
@@ -765,11 +769,11 @@
 		<<if $slaves[$i].pornFocus == "stud" || $slaves[$i].pornFameType == "big dick">>
 			$possessiveCap powerful erection excites those who see it, especially when it is put to good use.
 			<<if $slaves[$i].pornTypeStud > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeStud < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Big Dick: (_oldPorn) to ($slaves[$i].pornTypeStud).<</if>>
@@ -802,11 +806,11 @@
 		<<if $slaves[$i].pornFocus == "gagfuck queen" || $slaves[$i].pornFameType == "deepthroat">>
 			$pronounCap impresses with just how much dick can slip down $possessive throat.
 			<<if $slaves[$i].pornTypeDeepThroat > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeDeepThroat < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Gagfuck Queen: (_oldPorn) to ($slaves[$i].pornTypeDeepThroat).<</if>>
@@ -828,11 +832,11 @@
 		<<if $slaves[$i].pornFocus == "strugglefuck queen" || $slaves[$i].pornFameType == "unwilling">>
 			$pronounCap impresses with $possessive ability to put up just the right amount of fight during sex.
 			<<if $slaves[$i].pornTypeStruggleFuck > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeStruggleFuck < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Strugglefuck Queen: (_oldPorn) to ($slaves[$i].pornTypeStruggleFuck).<</if>>
@@ -854,11 +858,11 @@
 		<<if $slaves[$i].pornFocus == "painal queen" || $slaves[$i].pornFameType == "hardcore anal">>
 			$pronounCap impresses with $possessive ability to push $possessive anus to its limit.
 			<<if $slaves[$i].pornTypePainal > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePainal < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Painal Queen: (_oldPorn) to ($slaves[$i].pornTypePainal).<</if>>
@@ -880,11 +884,11 @@
 		<<if $slaves[$i].pornFocus == "tease" || $slaves[$i].pornFameType == "softcore">>
 			$possessiveCap tantalizes viewers with $possessive suggestive moves.
 			<<if $slaves[$i].pornTypeTease > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeTease < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Tease: (_oldPorn) to ($slaves[$i].pornTypeTease).<</if>>
@@ -906,11 +910,11 @@
 		<<if $slaves[$i].pornFocus == "romantic" || $slaves[$i].pornFameType == "romantic">>
 			$possessiveCap draws viewers in with $possessive genuine pleasure.
 			<<if $slaves[$i].pornTypeRomantic > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeRomantic < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Romantic: (_oldPorn) to ($slaves[$i].pornTypeRomantic).<</if>>
@@ -930,13 +934,13 @@
 		<<set $slaves[$i].pornTypePervert = Math.clamp($slaves[$i].pornTypePervert, 0, 100000)>>
 
 		<<if $slaves[$i].pornFocus == "perverted" || $slaves[$i].pornFameType == "really perverted">>
-			$possessiveCap perverted tastes shocks and allures viewers in ways they didn't even realize.
+			$possessiveCap perverted tastes shock and allure viewers in ways they didn't even realize.
 			<<if $slaves[$i].pornTypePervert > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypePervert < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Perverted: (_oldPorn) to ($slaves[$i].pornTypePervert).<</if>>
@@ -958,11 +962,11 @@
 		<<if $slaves[$i].pornFocus == "caring" || $slaves[$i].pornFameType == "voyeur">>
 			$possessiveCap sincere devotion to $possessive partner's pleasure draws in viewers with an interest in watching couples fuck.
 			<<if $slaves[$i].pornTypeCaring > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeCaring < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Caring: (_oldPorn) to ($slaves[$i].pornTypeCaring).<</if>>
@@ -984,11 +988,11 @@
 		<<if $slaves[$i].pornFocus == "unflinching" || $slaves[$i].pornFameType == "unspeakable">>
 			$possessiveCap willingness to do anything catches the attention of those who enjoy acts that should never be mentioned to others.
 			<<if $slaves[$i].pornTypeUnflinching > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeUnflinching < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Unflinching: (_oldPorn) to ($slaves[$i].pornTypeUnflinching).<</if>>
@@ -1010,11 +1014,11 @@
 		<<if $slaves[$i].pornFocus == "size queen" || $slaves[$i].pornFameType == "huge insertion">>
 			$possessiveCap intent on taking the largest things possible into her holes draws in viewers with an interest for huge insertions.
 			<<if $slaves[$i].pornTypeSizeQueen > _oldPorn>>
-				viewership @@.green;increased@@ this week.
+				Viewership @@.green;increased@@ this week.
 			<<elseif $slaves[$i].pornTypeSizeQueen < _oldPorn>>
-				viewership @@.red;declined@@ this week.
+				Viewership @@.red;declined@@ this week.
 			<<else>>
-				viewership @@.yellow;was stable@@ this week.
+				Viewership @@.yellow;was stable@@ this week.
 			<</if>>
 		<</if>>
 		<<if $cheatMode == 1>>Size Queen: (_oldPorn) to ($slaves[$i].pornTypeSizeQueen).<</if>>
-- 
GitLab


From 12c47287635457b05119768bb8a98762c8269a2a Mon Sep 17 00:00:00 2001
From: x <okp57855@psoxs.com>
Date: Sat, 4 Aug 2018 19:28:57 +1200
Subject: [PATCH 189/189] Minor clean up

---
 src/uncategorized/longSlaveDescription.tw | 4 ++--
 src/uncategorized/masterSuite.tw          | 2 +-
 src/uncategorized/policies.tw             | 8 ++++----
 src/uncategorized/remoteSurgery.tw        | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/uncategorized/longSlaveDescription.tw b/src/uncategorized/longSlaveDescription.tw
index d38bdd2b72f..1ddaed2d555 100644
--- a/src/uncategorized/longSlaveDescription.tw
+++ b/src/uncategorized/longSlaveDescription.tw
@@ -505,9 +505,9 @@ $He comes to you for an inspection
 	<</if>>
 
 	<<if ($activeSlave.lactation > 0) && ($activeSlave.milk < 20)>>
-		$He has given a small quantity of milk<<if ($activeSlave.cum > 0)>> and about $activeSlave.cum deciliters of cum<</if>>.
+		$He has given a small quantity of milk<<if ($activeSlave.cum > 0)>> and about <<print commaNum($activeSlave.cum)>> deciliters of cum<</if>>.
 	<<elseif ($activeSlave.milk > 1)>>
-		$He has given about $activeSlave.milk liters of milk<<if ($activeSlave.cum > 0)>> and about $activeSlave.cum deciliters of cum<</if>>.
+		$He has given about <<print commaNum($activeSlave.milk)>> liters of milk<<if ($activeSlave.cum > 0)>> and about <<print commaNum($activeSlave.cum)>> deciliters of cum<</if>>.
 	<</if>>
 
 	<<if ($activeSlave.birthsTotal != 0)>>
diff --git a/src/uncategorized/masterSuite.tw b/src/uncategorized/masterSuite.tw
index 80b3291e3a1..563f60d2dde 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 _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][$cash -= _Tmult1, $masterSuiteUpgradeLuxury = 2]] //Costs <<print cashFormat(_Tmult1)>>; will encourage fucktoys to fuck each other//
 
 <<elseif $masterSuiteUpgradeLuxury == 2>>
 
diff --git a/src/uncategorized/policies.tw b/src/uncategorized/policies.tw
index 0828b87042d..42ac44d7370 100644
--- a/src/uncategorized/policies.tw
+++ b/src/uncategorized/policies.tw
@@ -135,13 +135,13 @@
 <</if>>
 
 <<if $SexMilestoneRetirement == 1>>
-	<br>''Sexual Milestone Retirement:'' slaves will be rewarded with their freedom once they have been fucked $retirementSex times.
+	<br>''Sexual Milestone Retirement:'' slaves will be rewarded with their freedom once they have been fucked <<print commaNum($retirementSex)>> times.
 	[[Repeal|Policies][$SexMilestoneRetirement = 0]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;Set a new retirement requirement: <<textbox "$retirementSex" $retirementSex "Policies">>
 <</if>>
 
 <<if $MilkMilestoneRetirement == 1>>
-	<br>''Productive Cow Retirement:'' slaves will be rewarded with their freedom once they have given $retirementMilk liters of milk.
+	<br>''Productive Cow Retirement:'' slaves will be rewarded with their freedom once they have given <<print commaNum($retirementMilk)>> liters of milk.
 	[[Repeal|Policies][$MilkMilestoneRetirement = 0]]
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;Set a new retirement requirement: <<textbox "$retirementMilk" $retirementMilk "Policies">>
 <</if>>
@@ -852,11 +852,11 @@
 
 <<if $CitizenRetirement == 1>>
 <<if $SexMilestoneRetirement == 0>>
-	<br>''Sexual Milestone Retirement:'' slaves will be rewarded with their freedom once they have been fucked $retirementSex times.
+	<br>''Sexual Milestone Retirement:'' slaves will be rewarded with their freedom once they have been fucked <<print commaNum($retirementSex)>> times.
 	[[Implement|Policies][$SexMilestoneRetirement = 1, $cash -=5000, $rep -= 1000]]
 <</if>>
 <<if $MilkMilestoneRetirement == 0>>
-	<br>''Productive Cow Retirement:'' slaves will be rewarded with their freedom once they have given $retirementMilk liters of milk.
+	<br>''Productive Cow Retirement:'' slaves will be rewarded with their freedom once they have given <<print commaNum($retirementMilk)>> liters of milk.
 	[[Implement|Policies][$MilkMilestoneRetirement = 1, $cash -=5000, $rep -= 1000]]
 <</if>>
 <<if $BirthsMilestoneRetirement == 0>>
diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index cd2b63cb3da..f20e47583fd 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -149,7 +149,7 @@ $possessiveCap $activeSlave.faceShape face is
 			<</if>>*/
 		<</if>>
 		<<if ($cyberMod == 1) && ($stockpile.ocularImplant > 0) && ($activeSlave.origEye != "implant")>>
-			<<if ($activeSlave.eyes != -3)>> | <</if>>
+			<<if ($activeSlave.eyes != -3)>> <</if>>
 			 | [[Give her ocular implants|Surgery Degradation][$activeSlave.origEye = "implant", $stockpile.ocularImplant--,$cash -= $surgeryCost, $activeSlave.health -= 20,$surgeryType = "ocular implant"]]
 		<</if>>
 	<</if>>
-- 
GitLab